Skip to content

Commit

Permalink
feat: add modal component
Browse files Browse the repository at this point in the history
  • Loading branch information
RobinYang11 committed Mar 16, 2023
1 parent c949f79 commit 3ce97a3
Show file tree
Hide file tree
Showing 36 changed files with 24,992 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@


/node_modules/

/examples/node_modules/
9 changes: 9 additions & 0 deletions babel.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@



module.exports = {
presets: [
'@babel/preset-env',
['@babel/preset-react', { runtime: 'automatic' }],
]
}
2 changes: 2 additions & 0 deletions dist/cjs/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions dist/cjs/index.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions dist/cjs/types/8d.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <reference types="react" />
interface props {
locale: string;
}
export default function _8d(config: props): (props: any) => JSX.Element;
export {};
1 change: 1 addition & 0 deletions dist/cjs/types/_test.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export {};
2 changes: 2 additions & 0 deletions dist/cjs/types/components/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export { default as Upload } from './upload';
export { default as Modal } from './modal/modal';
34 changes: 34 additions & 0 deletions dist/cjs/types/components/modal/modal.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import { ReactElement } from 'react';
type ModalProps = {
/**
* css class name
*/
className?: string;
children: ReactElement;
/**
* visible control
*/
visible?: boolean;
/**
* modal content width
*/
width?: number;
/**
* callback of mask clicked
*/
onClose?: Function;
/**
*
*/
dontDestroyOnClose?: boolean;
/**
* inline style
*/
style?: any;
/**
* framer-motion configaration please refer ## https://www.framer.com/motion/motion-config/
* */
motionConfig?: any;
};
export default function Modal(props: ModalProps): JSX.Element | null;
export {};
8 changes: 8 additions & 0 deletions dist/cjs/types/components/upload/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/// <reference types="react" />
interface IUploadProps {
url: string;
name: string;
onClick(): void;
}
export default function Upload(props: IUploadProps): JSX.Element;
export {};
1 change: 1 addition & 0 deletions dist/cjs/types/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from './components';
2 changes: 2 additions & 0 deletions dist/esm/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions dist/esm/index.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions dist/esm/types/8d.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/// <reference types="react" />
interface props {
locale: string;
}
export default function _8d(config: props): (props: any) => JSX.Element;
export {};
1 change: 1 addition & 0 deletions dist/esm/types/_test.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export {};
2 changes: 2 additions & 0 deletions dist/esm/types/components/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
export { default as Upload } from './upload';
export { default as Modal } from './modal/modal';
34 changes: 34 additions & 0 deletions dist/esm/types/components/modal/modal.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import { ReactElement } from 'react';
type ModalProps = {
/**
* css class name
*/
className?: string;
children: ReactElement;
/**
* visible control
*/
visible?: boolean;
/**
* modal content width
*/
width?: number;
/**
* callback of mask clicked
*/
onClose?: Function;
/**
*
*/
dontDestroyOnClose?: boolean;
/**
* inline style
*/
style?: any;
/**
* framer-motion configaration please refer ## https://www.framer.com/motion/motion-config/
* */
motionConfig?: any;
};
export default function Modal(props: ModalProps): JSX.Element | null;
export {};
8 changes: 8 additions & 0 deletions dist/esm/types/components/upload/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/// <reference types="react" />
interface IUploadProps {
url: string;
name: string;
onClick(): void;
}
export default function Upload(props: IUploadProps): JSX.Element;
export {};
1 change: 1 addition & 0 deletions dist/esm/types/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from './components';
44 changes: 44 additions & 0 deletions dist/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
/// <reference types="react" />
import { ReactElement } from 'react';

interface IUploadProps {
url: string;
name: string;
onClick(): void;
}
declare function Upload(props: IUploadProps): JSX.Element;

type ModalProps = {
/**
* css class name
*/
className?: string;
children: ReactElement;
/**
* visible control
*/
visible?: boolean;
/**
* modal content width
*/
width?: number;
/**
* callback of mask clicked
*/
onClose?: Function;
/**
*
*/
dontDestroyOnClose?: boolean;
/**
* inline style
*/
style?: any;
/**
* framer-motion configaration please refer ## https://www.framer.com/motion/motion-config/
* */
motionConfig?: any;
};
declare function Modal(props: ModalProps): JSX.Element | null;

export { Modal, Upload };
15 changes: 15 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>

<body>
<div id="app"></div>
</body>

</html>
13 changes: 13 additions & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@


module.exports = {
preset: 'ts-jest',
testEnvironment: 'jsdom',
moduleNameMapper: {
// 模块名称映射,以便在测试代码中导入模块时使用
// 这里将 CSS、图片等静态资源的导入映射为 'mocks/fileMock.js'
'\\.(css|less|sass|scss)$': 'identity-obj-proxy',
'\\.(gif|ttf|eot|svg)$': '<rootDir>/mocks/fileMock.js',
},
// setupFilesAfterEnv: ['@testing-library/jest-dom/extend-expect'],
};
2 changes: 2 additions & 0 deletions mock/fileMock.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

module.exports = 'test-file-stub';
Loading

0 comments on commit 3ce97a3

Please sign in to comment.