@aloudata/aloudata-design 0.1.0-beta1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +16 -0
- package/.eslintrc.js +43 -0
- package/.fatherrc.ts +16 -0
- package/.prettierignore +7 -0
- package/.prettierrc.js +1 -0
- package/.stylelintrc.json +36 -0
- package/.umirc.ts +15 -0
- package/README.md +82 -0
- package/commitlint.config.js +21 -0
- package/docs/index.md +21 -0
- package/jest/setupTests.js +1 -0
- package/lib/Button/demo/Icon/index.d.ts +3 -0
- package/lib/Button/demo/Icon/index.js +82 -0
- package/lib/Button/demo/Icon/index.less +6 -0
- package/lib/Button/demo/basic/index.d.ts +4 -0
- package/lib/Button/demo/basic/index.js +73 -0
- package/lib/Button/demo/basic/index.less +7 -0
- package/lib/Button/demo/disable/index.d.ts +3 -0
- package/lib/Button/demo/disable/index.js +37 -0
- package/lib/Button/demo/disable/index.less +0 -0
- package/lib/Button/demo/href/index.d.ts +2 -0
- package/lib/Button/demo/href/index.js +30 -0
- package/lib/Button/demo/loading/index.d.ts +3 -0
- package/lib/Button/demo/loading/index.js +51 -0
- package/lib/Button/demo/loading/index.less +6 -0
- package/lib/Button/index.d.ts +50 -0
- package/lib/Button/index.js +124 -0
- package/lib/Button/style/index.d.ts +2 -0
- package/lib/Button/style/index.js +5 -0
- package/lib/Button/style/index.less +255 -0
- package/lib/Dropdown/Button.d.ts +69 -0
- package/lib/Dropdown/Button.js +52 -0
- package/lib/Dropdown/demo/basic/index.d.ts +4 -0
- package/lib/Dropdown/demo/basic/index.js +35 -0
- package/lib/Dropdown/demo/button/index.d.ts +3 -0
- package/lib/Dropdown/demo/button/index.js +182 -0
- package/lib/Dropdown/demo/button/index.less +9 -0
- package/lib/Dropdown/demo/placement/index.d.ts +2 -0
- package/lib/Dropdown/demo/placement/index.js +56 -0
- package/lib/Dropdown/demo/subMenu/index.d.ts +2 -0
- package/lib/Dropdown/demo/subMenu/index.js +59 -0
- package/lib/Dropdown/demo/trigger/index.d.ts +2 -0
- package/lib/Dropdown/demo/trigger/index.js +32 -0
- package/lib/Dropdown/index.d.ts +59 -0
- package/lib/Dropdown/index.js +47 -0
- package/lib/Dropdown/style/index.d.ts +2 -0
- package/lib/Dropdown/style/index.js +5 -0
- package/lib/Dropdown/style/index.less +40 -0
- package/lib/Icon/iconfont/demo.css +539 -0
- package/lib/Icon/iconfont/demo_index.html +628 -0
- package/lib/Icon/iconfont/iconfont.css +93 -0
- package/lib/Icon/iconfont/iconfont.js +48 -0
- package/lib/Icon/iconfont/iconfont.json +142 -0
- package/lib/Icon/iconfont/iconfont.ttf +0 -0
- package/lib/Icon/iconfont/iconfont.woff +0 -0
- package/lib/Icon/iconfont/iconfont.woff2 +0 -0
- package/lib/Icon/index.d.ts +11 -0
- package/lib/Icon/index.js +54 -0
- package/lib/Icon/index.less +32 -0
- package/lib/Input/components/Group/index.d.ts +15 -0
- package/lib/Input/components/Group/index.js +24 -0
- package/lib/Input/components/Password/index.d.ts +10 -0
- package/lib/Input/components/Password/index.js +33 -0
- package/lib/Input/components/TextArea/index.d.ts +52 -0
- package/lib/Input/components/TextArea/index.js +26 -0
- package/lib/Input/demo/allowClear/index.d.ts +3 -0
- package/lib/Input/demo/allowClear/index.js +25 -0
- package/lib/Input/demo/allowClear/index.less +0 -0
- package/lib/Input/demo/basic/index.d.ts +4 -0
- package/lib/Input/demo/basic/index.js +80 -0
- package/lib/Input/demo/basic/index.less +6 -0
- package/lib/Input/demo/gourp/index.d.ts +2 -0
- package/lib/Input/demo/gourp/index.js +81 -0
- package/lib/Input/demo/password/index.d.ts +3 -0
- package/lib/Input/demo/password/index.js +35 -0
- package/lib/Input/demo/password/index.less +0 -0
- package/lib/Input/demo/prefix/index.d.ts +3 -0
- package/lib/Input/demo/prefix/index.js +32 -0
- package/lib/Input/demo/prefix/index.less +0 -0
- package/lib/Input/demo/showCount/index.d.ts +3 -0
- package/lib/Input/demo/showCount/index.js +31 -0
- package/lib/Input/demo/showCount/index.less +0 -0
- package/lib/Input/demo/textArea/autoSize.d.ts +2 -0
- package/lib/Input/demo/textArea/autoSize.js +63 -0
- package/lib/Input/index.d.ts +65 -0
- package/lib/Input/index.js +63 -0
- package/lib/Input/style/index.d.ts +2 -0
- package/lib/Input/style/index.js +5 -0
- package/lib/Input/style/index.less +62 -0
- package/lib/Menu/Divider.d.ts +5 -0
- package/lib/Menu/Divider.js +28 -0
- package/lib/Menu/MenuItem.d.ts +17 -0
- package/lib/Menu/MenuItem.js +28 -0
- package/lib/Menu/SubMenu.d.ts +26 -0
- package/lib/Menu/SubMenu.js +44 -0
- package/lib/Menu/index.d.ts +20 -0
- package/lib/Menu/index.js +49 -0
- package/lib/Menu/style/index.d.ts +2 -0
- package/lib/Menu/style/index.js +5 -0
- package/lib/Menu/style/index.less +33 -0
- package/lib/Select/BaseSelect.d.ts +5 -0
- package/lib/Select/BaseSelect.js +433 -0
- package/lib/Select/OptionsList/OptGroup.d.ts +7 -0
- package/lib/Select/OptionsList/OptGroup.js +14 -0
- package/lib/Select/OptionsList/OptionItem.d.ts +35 -0
- package/lib/Select/OptionsList/OptionItem.js +185 -0
- package/lib/Select/OptionsList/Options.d.ts +7 -0
- package/lib/Select/OptionsList/Options.js +14 -0
- package/lib/Select/OptionsList/index.d.ts +4 -0
- package/lib/Select/OptionsList/index.js +207 -0
- package/lib/Select/Selector/index.d.ts +4 -0
- package/lib/Select/Selector/index.js +273 -0
- package/lib/Select/VirtualList.d.ts +5 -0
- package/lib/Select/VirtualList.js +42 -0
- package/lib/Select/demo/disabled/index.d.ts +2 -0
- package/lib/Select/demo/disabled/index.js +64 -0
- package/lib/Select/demo/multiple/index.d.ts +2 -0
- package/lib/Select/demo/multiple/index.js +154 -0
- package/lib/Select/demo/options/index.d.ts +2 -0
- package/lib/Select/demo/options/index.js +69 -0
- package/lib/Select/demo/single/index.d.ts +2 -0
- package/lib/Select/demo/single/index.js +99 -0
- package/lib/Select/hooks/useCacheOption.d.ts +9 -0
- package/lib/Select/hooks/useCacheOption.js +113 -0
- package/lib/Select/index.d.ts +12 -0
- package/lib/Select/index.js +34 -0
- package/lib/Select/interface.d.ts +221 -0
- package/lib/Select/interface.js +5 -0
- package/lib/Select/style/index.d.ts +2 -0
- package/lib/Select/style/index.js +5 -0
- package/lib/Select/style/index.less +539 -0
- package/lib/Select/utils.d.ts +21 -0
- package/lib/Select/utils.js +233 -0
- package/lib/Tabs/TabPane.d.ts +21 -0
- package/lib/Tabs/TabPane.js +24 -0
- package/lib/Tabs/demo/adaptHeight/index.d.ts +3 -0
- package/lib/Tabs/demo/adaptHeight/index.js +34 -0
- package/lib/Tabs/demo/adaptHeight/index.less +3 -0
- package/lib/Tabs/demo/basic/index.d.ts +4 -0
- package/lib/Tabs/demo/basic/index.js +67 -0
- package/lib/Tabs/demo/basic/index.less +5 -0
- package/lib/Tabs/demo/horizontalScroll/index.d.ts +3 -0
- package/lib/Tabs/demo/horizontalScroll/index.js +45 -0
- package/lib/Tabs/demo/horizontalScroll/index.less +3 -0
- package/lib/Tabs/index.d.ts +41 -0
- package/lib/Tabs/index.js +58 -0
- package/lib/Tabs/style/index.d.ts +2 -0
- package/lib/Tabs/style/index.js +5 -0
- package/lib/Tabs/style/index.less +61 -0
- package/lib/Tooltip/demo/basic/index.d.ts +2 -0
- package/lib/Tooltip/demo/basic/index.js +20 -0
- package/lib/Tooltip/demo/overflow/index.d.ts +2 -0
- package/lib/Tooltip/demo/overflow/index.js +20 -0
- package/lib/Tooltip/demo/placement/index.d.ts +6 -0
- package/lib/Tooltip/demo/placement/index.js +86 -0
- package/lib/Tooltip/demo/placement/index.less +7 -0
- package/lib/Tooltip/demo/trigger/index.d.ts +3 -0
- package/lib/Tooltip/demo/trigger/index.js +34 -0
- package/lib/Tooltip/demo/trigger/index.less +5 -0
- package/lib/Tooltip/index.d.ts +63 -0
- package/lib/Tooltip/index.js +44 -0
- package/lib/Tooltip/style/index.d.ts +2 -0
- package/lib/Tooltip/style/index.js +5 -0
- package/lib/Tooltip/style/index.less +14 -0
- package/lib/_utils/hooks/useControlledState.d.ts +2 -0
- package/lib/_utils/hooks/useControlledState.js +63 -0
- package/lib/_utils/hooks/usePrefixCls.d.ts +2 -0
- package/lib/_utils/hooks/usePrefixCls.js +27 -0
- package/lib/index.d.ts +8 -0
- package/lib/index.js +63 -0
- package/lib/style/index.d.ts +2 -0
- package/lib/style/index.js +5 -0
- package/lib/style/index.less +3 -0
- package/lib/style/mixins/index.less +0 -0
- package/lib/style/themes/default/index.less +36 -0
- package/lib/style/themes/default/themeColor.less +259 -0
- package/package.json +83 -0
- package/public/favicon.ico +0 -0
- package/src/Button/demo/Icon/index.less +6 -0
- package/src/Button/demo/Icon/index.tsx +41 -0
- package/src/Button/demo/basic/index.less +7 -0
- package/src/Button/demo/basic/index.tsx +26 -0
- package/src/Button/demo/disable/index.less +0 -0
- package/src/Button/demo/disable/index.tsx +16 -0
- package/src/Button/demo/href/index.tsx +14 -0
- package/src/Button/demo/loading/index.less +6 -0
- package/src/Button/demo/loading/index.tsx +21 -0
- package/src/Button/index.md +25 -0
- package/src/Button/index.test.tsx +58 -0
- package/src/Button/index.tsx +136 -0
- package/src/Button/style/index.less +255 -0
- package/src/Button/style/index.ts +2 -0
- package/src/Dropdown/Button.tsx +93 -0
- package/src/Dropdown/demo/basic/index.tsx +20 -0
- package/src/Dropdown/demo/button/index.less +9 -0
- package/src/Dropdown/demo/button/index.tsx +98 -0
- package/src/Dropdown/demo/placement/index.tsx +47 -0
- package/src/Dropdown/demo/subMenu/index.tsx +35 -0
- package/src/Dropdown/demo/trigger/index.tsx +19 -0
- package/src/Dropdown/index.md +35 -0
- package/src/Dropdown/index.test.tsx +185 -0
- package/src/Dropdown/index.tsx +71 -0
- package/src/Dropdown/style/index.less +40 -0
- package/src/Dropdown/style/index.ts +2 -0
- package/src/Icon/iconfont/demo.css +539 -0
- package/src/Icon/iconfont/demo_index.html +628 -0
- package/src/Icon/iconfont/iconfont.css +93 -0
- package/src/Icon/iconfont/iconfont.js +1 -0
- package/src/Icon/iconfont/iconfont.json +142 -0
- package/src/Icon/iconfont/iconfont.ttf +0 -0
- package/src/Icon/iconfont/iconfont.woff +0 -0
- package/src/Icon/iconfont/iconfont.woff2 +0 -0
- package/src/Icon/index.less +32 -0
- package/src/Icon/index.tsx +38 -0
- package/src/Input/components/Group/index.tsx +21 -0
- package/src/Input/components/Password/index.tsx +23 -0
- package/src/Input/components/TextArea/index.tsx +57 -0
- package/src/Input/demo/allowClear/index.less +0 -0
- package/src/Input/demo/allowClear/index.tsx +10 -0
- package/src/Input/demo/basic/index.less +6 -0
- package/src/Input/demo/basic/index.tsx +25 -0
- package/src/Input/demo/gourp/index.tsx +30 -0
- package/src/Input/demo/password/index.less +0 -0
- package/src/Input/demo/password/index.tsx +11 -0
- package/src/Input/demo/prefix/index.less +0 -0
- package/src/Input/demo/prefix/index.tsx +13 -0
- package/src/Input/demo/showCount/index.less +0 -0
- package/src/Input/demo/showCount/index.tsx +16 -0
- package/src/Input/demo/textArea/autoSize.tsx +21 -0
- package/src/Input/index.md +37 -0
- package/src/Input/index.test.tsx +78 -0
- package/src/Input/index.tsx +91 -0
- package/src/Input/style/index.less +62 -0
- package/src/Input/style/index.ts +2 -0
- package/src/Menu/Divider.tsx +12 -0
- package/src/Menu/MenuItem.tsx +24 -0
- package/src/Menu/SubMenu.tsx +37 -0
- package/src/Menu/index.md +36 -0
- package/src/Menu/index.test.tsx +144 -0
- package/src/Menu/index.tsx +27 -0
- package/src/Menu/style/index.less +33 -0
- package/src/Menu/style/index.ts +2 -0
- package/src/Select/BaseSelect.tsx +321 -0
- package/src/Select/OptionsList/OptGroup.tsx +9 -0
- package/src/Select/OptionsList/OptionItem.tsx +151 -0
- package/src/Select/OptionsList/Options.tsx +11 -0
- package/src/Select/OptionsList/index.tsx +169 -0
- package/src/Select/Selector/index.tsx +211 -0
- package/src/Select/VirtualList.tsx +36 -0
- package/src/Select/demo/disabled/index.tsx +44 -0
- package/src/Select/demo/multiple/index.tsx +77 -0
- package/src/Select/demo/options/index.tsx +63 -0
- package/src/Select/demo/single/index.tsx +50 -0
- package/src/Select/hooks/useCacheOption.ts +67 -0
- package/src/Select/index.md +72 -0
- package/src/Select/index.tsx +23 -0
- package/src/Select/interface.ts +231 -0
- package/src/Select/style/index.less +539 -0
- package/src/Select/style/index.ts +2 -0
- package/src/Select/utils.tsx +133 -0
- package/src/Tabs/TabPane.tsx +28 -0
- package/src/Tabs/demo/adaptHeight/index.less +3 -0
- package/src/Tabs/demo/adaptHeight/index.tsx +33 -0
- package/src/Tabs/demo/basic/index.less +5 -0
- package/src/Tabs/demo/basic/index.tsx +30 -0
- package/src/Tabs/demo/horizontalScroll/index.less +3 -0
- package/src/Tabs/demo/horizontalScroll/index.tsx +36 -0
- package/src/Tabs/index.md +30 -0
- package/src/Tabs/index.test.tsx +100 -0
- package/src/Tabs/index.tsx +64 -0
- package/src/Tabs/style/index.less +61 -0
- package/src/Tabs/style/index.ts +2 -0
- package/src/Tooltip/demo/basic/index.tsx +10 -0
- package/src/Tooltip/demo/overflow/index.tsx +10 -0
- package/src/Tooltip/demo/placement/index.less +7 -0
- package/src/Tooltip/demo/placement/index.tsx +60 -0
- package/src/Tooltip/demo/trigger/index.less +5 -0
- package/src/Tooltip/demo/trigger/index.tsx +22 -0
- package/src/Tooltip/index.md +28 -0
- package/src/Tooltip/index.test.tsx +152 -0
- package/src/Tooltip/index.tsx +113 -0
- package/src/Tooltip/style/index.less +14 -0
- package/src/Tooltip/style/index.ts +2 -0
- package/src/_utils/hooks/useControlledState.ts +39 -0
- package/src/_utils/hooks/usePrefixCls.ts +11 -0
- package/src/index.ts +8 -0
- package/src/style/index.less +3 -0
- package/src/style/index.ts +2 -0
- package/src/style/mixins/index.less +0 -0
- package/src/style/themes/default/index.less +36 -0
- package/src/style/themes/default/themeColor.less +259 -0
- package/tsconfig.json +13 -0
- package/typings.d.ts +3 -0
package/.editorconfig
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# http://editorconfig.org
|
|
2
|
+
root = true
|
|
3
|
+
|
|
4
|
+
[*]
|
|
5
|
+
indent_style = space
|
|
6
|
+
indent_size = 2
|
|
7
|
+
end_of_line = lf
|
|
8
|
+
charset = utf-8
|
|
9
|
+
trim_trailing_whitespace = true
|
|
10
|
+
insert_final_newline = true
|
|
11
|
+
|
|
12
|
+
[*.md]
|
|
13
|
+
trim_trailing_whitespace = false
|
|
14
|
+
|
|
15
|
+
[Makefile]
|
|
16
|
+
indent_style = tab
|
package/.eslintrc.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
extends: [
|
|
3
|
+
'@aloudata/eslint-config-base'
|
|
4
|
+
],
|
|
5
|
+
parserOptions: {
|
|
6
|
+
project: './tsconfig.json',
|
|
7
|
+
},
|
|
8
|
+
ignorePatterns: [
|
|
9
|
+
'**/*.less.d.ts',
|
|
10
|
+
'**/demo/*',
|
|
11
|
+
"**/iconfont.js",
|
|
12
|
+
"jest"
|
|
13
|
+
],
|
|
14
|
+
rules: {
|
|
15
|
+
'react/require-default-props': 'off',
|
|
16
|
+
'linebreak-style': 'off',
|
|
17
|
+
curly: ['error', 'all'],
|
|
18
|
+
'import/extensions': 'off',
|
|
19
|
+
'@typescript-eslint/type-annotation-spacing': ['error', { after: true }],
|
|
20
|
+
'@typescript-eslint/no-unsafe-member-access': ['error'],
|
|
21
|
+
// 'id-length': ['error', { properties: 'never', exceptions: ['i', 'j', 'e', '_'] }],
|
|
22
|
+
// 'react/jsx-key': ['error'],
|
|
23
|
+
'@typescript-eslint/naming-convention': [
|
|
24
|
+
'error',
|
|
25
|
+
{
|
|
26
|
+
selector: 'interface',
|
|
27
|
+
format: ['PascalCase'],
|
|
28
|
+
custom: {
|
|
29
|
+
regex: '^I[A-Z]',
|
|
30
|
+
match: true
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
selector: 'enum',
|
|
35
|
+
format: ['PascalCase'],
|
|
36
|
+
custom: {
|
|
37
|
+
regex: '^E[A-Z]',
|
|
38
|
+
match: true
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
}
|
|
43
|
+
};
|
package/.fatherrc.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
esm: 'babel', // 通过 babel 编译相关组件即可,而无需打包在一个文件中,实现在使用时可按需加载。
|
|
3
|
+
cjs: 'babel',
|
|
4
|
+
// lessInBabelMode: true, // less 转 css
|
|
5
|
+
// 打包的产物若需引入 antd ,则通过按需加载形式引入。
|
|
6
|
+
extraBabelPlugins: [
|
|
7
|
+
[
|
|
8
|
+
'babel-plugin-import',
|
|
9
|
+
{
|
|
10
|
+
libraryName: 'antd',
|
|
11
|
+
libraryDirectory: 'es',
|
|
12
|
+
style: true,
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
],
|
|
16
|
+
}
|
package/.prettierignore
ADDED
package/.prettierrc.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('@umijs/fabric').prettier;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "stylelint-config-standard",
|
|
3
|
+
"ignoreFiles": [
|
|
4
|
+
"src/style/**/*",
|
|
5
|
+
"**/*.tsx",
|
|
6
|
+
"**/*.js",
|
|
7
|
+
"**/*.ts",
|
|
8
|
+
"**/*.png",
|
|
9
|
+
"**/*.css",
|
|
10
|
+
"**/*.json",
|
|
11
|
+
"**/*.md",
|
|
12
|
+
"**/*.ttf",
|
|
13
|
+
"**/*.woff",
|
|
14
|
+
"**/*.woff2",
|
|
15
|
+
"**/*.html"
|
|
16
|
+
],
|
|
17
|
+
"overrides": [{
|
|
18
|
+
"files": ["**/*.less"],
|
|
19
|
+
"customSyntax": "postcss-less",
|
|
20
|
+
"rules": {
|
|
21
|
+
"no-missing-end-of-source-newline": null,
|
|
22
|
+
"no-empty-source": null,
|
|
23
|
+
"selector-pseudo-class-no-unknown": [
|
|
24
|
+
true,
|
|
25
|
+
{
|
|
26
|
+
"ignorePseudoClasses": ["global", "local"]
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"selector-class-pattern": ["^([a-z][a-zA-Z0-9]+)|(([a-z][a-z0-9]*)(-[a-z0-9]+)*$)$"],
|
|
30
|
+
"alpha-value-notation": null,
|
|
31
|
+
"color-function-notation": null,
|
|
32
|
+
"keyframes-name-pattern": "^[a-z][a-zA-Z0-9]+$",
|
|
33
|
+
"string-quotes": "single"
|
|
34
|
+
}
|
|
35
|
+
}]
|
|
36
|
+
}
|
package/.umirc.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { defineConfig } from 'dumi';
|
|
2
|
+
export default defineConfig({
|
|
3
|
+
// mode:'site',
|
|
4
|
+
title: 'design',
|
|
5
|
+
logo: 'https://cdn.aloudata.com/source/workstation_test/static/logo.8b20330e.svg',
|
|
6
|
+
outputPath: 'docs-dist',
|
|
7
|
+
apiParser:{
|
|
8
|
+
propFilter:{
|
|
9
|
+
skipNodeModules: true,
|
|
10
|
+
skipPropsWithoutDoc:true
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
// mode:'site'
|
|
14
|
+
// more config: https://d.umijs.org/config
|
|
15
|
+
});
|
package/README.md
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# design
|
|
2
|
+
|
|
3
|
+
## Getting Started
|
|
4
|
+
|
|
5
|
+
Install dependencies,
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
$ yarn i
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
开始 dev 环境开发,
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
$ yarn start
|
|
15
|
+
```
|
|
16
|
+
lint校验
|
|
17
|
+
```
|
|
18
|
+
npm run lint
|
|
19
|
+
```
|
|
20
|
+
打包组件库 通过 `father-build`,
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
$ npm run build
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
构建 doc 文档
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
$ npm run docs:build
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
测试命令
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
$ npm test
|
|
36
|
+
```
|
|
37
|
+
## 组件开发
|
|
38
|
+
```
|
|
39
|
+
// 基于antd组件开发新组件,必须需要额外antd的组件样式文件
|
|
40
|
+
// 非基于antd组件开发不需要引入这一条,下面以button为例:
|
|
41
|
+
@import '~antd/lib/button/style/index.less';
|
|
42
|
+
|
|
43
|
+
// 主题样式变量、mixin等
|
|
44
|
+
@import '~@/style/index.less';
|
|
45
|
+
|
|
46
|
+
// 自定义的样式
|
|
47
|
+
.ald-class {
|
|
48
|
+
...
|
|
49
|
+
}
|
|
50
|
+
···
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 覆盖antd组件的icon
|
|
54
|
+
|
|
55
|
+
在组件对应的 less 文件中
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
@import '~@/Icon/index.less';
|
|
59
|
+
|
|
60
|
+
// 找到antd组件的svg的父节点,覆盖其样式
|
|
61
|
+
.ant-icon-parent-node-class {
|
|
62
|
+
// \e691 是 iconfont 中图标对应的 Unicode 码
|
|
63
|
+
.ald-iconfont('\e691');
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### 更新iconfont文件
|
|
68
|
+
|
|
69
|
+
在 iconfont 网站上点击“下载至本地”按钮。解压为名为 download 的文件夹。
|
|
70
|
+
|
|
71
|
+
将 `src/Icon/iconfont` 文件夹中的所有内容替换成 download 文件夹的内容。
|
|
72
|
+
|
|
73
|
+
将 `src/Icon/index.less` 文件中的 `@font-face` 下的 `src` 属性的内容,替换成 `src/Icon/iconfont/iconfont.css` 文件中的 `@font-face` 下的 `src` 属性的内容。并将 `url(iconfont.woff` 和 `url(iconfont.ttf` 更改为 `url(./iconfont/iconfont.woff` 和 `url(./iconfont/iconfont.ttf`。
|
|
74
|
+
|
|
75
|
+
### link 到本地
|
|
76
|
+
|
|
77
|
+
link 到本地后,其它项目可以通过 link 本项目直接 import 使用
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
cd es
|
|
81
|
+
npm link
|
|
82
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const OFF_NUM = 0;
|
|
2
|
+
const ERROR_NUM = 2;
|
|
3
|
+
|
|
4
|
+
module.exports = {
|
|
5
|
+
extends: ['@commitlint/config-angular'],
|
|
6
|
+
rules: {
|
|
7
|
+
'type-enum': [ERROR_NUM, 'always', [
|
|
8
|
+
'feat', // 新功能(feature)
|
|
9
|
+
'fix', // 修补bug
|
|
10
|
+
'style', // 样式(不影响代码运行的变动)
|
|
11
|
+
'refactor', // 重构(即不是新增功能,也不是修改bug的代码变动)
|
|
12
|
+
'test', // 增加测试
|
|
13
|
+
'chore', // 构建过程或辅助工具的变动
|
|
14
|
+
'delete', // 删除内容
|
|
15
|
+
'doc', // 文档类修改
|
|
16
|
+
]],
|
|
17
|
+
'subject-full-stop': [OFF_NUM, 'never'],
|
|
18
|
+
'subject-case': [OFF_NUM, 'never']
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
};
|
package/docs/index.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
hero:
|
|
3
|
+
title: design
|
|
4
|
+
desc: design site example
|
|
5
|
+
actions:
|
|
6
|
+
- text: Getting Started
|
|
7
|
+
link: /components
|
|
8
|
+
features:
|
|
9
|
+
- icon: https://gw.alipayobjects.com/zos/bmw-prod/881dc458-f20b-407b-947a-95104b5ec82b/k79dm8ih_w144_h144.png
|
|
10
|
+
title: Feature 1
|
|
11
|
+
desc: Balabala
|
|
12
|
+
- icon: https://gw.alipayobjects.com/zos/bmw-prod/d60657df-0822-4631-9d7c-e7a869c2f21c/k79dmz3q_w126_h126.png
|
|
13
|
+
title: Feature 2
|
|
14
|
+
desc: Balabala
|
|
15
|
+
- icon: https://gw.alipayobjects.com/zos/bmw-prod/d1ee0c6f-5aed-4a45-a507-339a4bfe076c/k7bjsocq_w144_h144.png
|
|
16
|
+
title: Feature 3
|
|
17
|
+
desc: Balabala
|
|
18
|
+
footer: Open-source MIT Licensed | Copyright © 2020<br />Powered by [dumi](https://d.umijs.org)
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Hello design!
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
jest.mock('../src/Icon/iconfont/iconfont.js', () => {});
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _aloudataDesign = require("@aloudata/aloudata-design");
|
|
11
|
+
|
|
12
|
+
require("./index.less");
|
|
13
|
+
|
|
14
|
+
var _Icon = _interopRequireDefault(require("../../../Icon"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
var _default = function _default() {
|
|
19
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
20
|
+
className: "ald-button-demo"
|
|
21
|
+
}, /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
22
|
+
type: "primary",
|
|
23
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
24
|
+
type: "add",
|
|
25
|
+
size: 20
|
|
26
|
+
})
|
|
27
|
+
}, "Search"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
28
|
+
type: "secondary",
|
|
29
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
30
|
+
type: "add",
|
|
31
|
+
size: 20
|
|
32
|
+
})
|
|
33
|
+
}, "Search"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
34
|
+
type: "text",
|
|
35
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
36
|
+
type: "add",
|
|
37
|
+
size: 20
|
|
38
|
+
})
|
|
39
|
+
}, "Search"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
40
|
+
type: "danger",
|
|
41
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
42
|
+
type: "add",
|
|
43
|
+
size: 20
|
|
44
|
+
})
|
|
45
|
+
}, "Search"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
46
|
+
type: "link",
|
|
47
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
48
|
+
type: "add",
|
|
49
|
+
size: 20
|
|
50
|
+
})
|
|
51
|
+
}, "Search"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
52
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
53
|
+
type: "add",
|
|
54
|
+
size: 20
|
|
55
|
+
})
|
|
56
|
+
}), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
57
|
+
shape: 'circle',
|
|
58
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
59
|
+
type: "add",
|
|
60
|
+
size: 20
|
|
61
|
+
})
|
|
62
|
+
}), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
63
|
+
shape: 'circle'
|
|
64
|
+
}, "S"), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
65
|
+
size: 'small',
|
|
66
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
67
|
+
type: "add",
|
|
68
|
+
size: 20
|
|
69
|
+
})
|
|
70
|
+
}), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
71
|
+
shape: 'circle',
|
|
72
|
+
size: "large",
|
|
73
|
+
icon: /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
74
|
+
type: "add",
|
|
75
|
+
size: 20
|
|
76
|
+
})
|
|
77
|
+
}), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
78
|
+
shape: 'circle'
|
|
79
|
+
}, "M"));
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
exports.default = _default;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
require("antd/es/radio/style");
|
|
9
|
+
|
|
10
|
+
var _radio = _interopRequireDefault(require("antd/es/radio"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _aloudataDesign = require("@aloudata/aloudata-design");
|
|
15
|
+
|
|
16
|
+
require("../../style/index.less");
|
|
17
|
+
|
|
18
|
+
require("./index.less");
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
23
|
+
|
|
24
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
25
|
+
|
|
26
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
27
|
+
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
|
|
30
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
31
|
+
|
|
32
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
33
|
+
|
|
34
|
+
var _default = function _default() {
|
|
35
|
+
var _React$useState = _react.default.useState('default'),
|
|
36
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
37
|
+
size = _React$useState2[0],
|
|
38
|
+
setSize = _React$useState2[1];
|
|
39
|
+
|
|
40
|
+
var handleSizeChange = function handleSizeChange(e) {
|
|
41
|
+
setSize(e.target.value);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
45
|
+
className: 'ald-button-demo'
|
|
46
|
+
}, /*#__PURE__*/_react.default.createElement(_radio.default.Group, {
|
|
47
|
+
value: size,
|
|
48
|
+
onChange: handleSizeChange
|
|
49
|
+
}, /*#__PURE__*/_react.default.createElement(_radio.default.Button, {
|
|
50
|
+
value: "small"
|
|
51
|
+
}, "Small"), /*#__PURE__*/_react.default.createElement(_radio.default.Button, {
|
|
52
|
+
value: 'default'
|
|
53
|
+
}, "Default"), /*#__PURE__*/_react.default.createElement(_radio.default.Button, {
|
|
54
|
+
value: "large"
|
|
55
|
+
}, "Large")), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
56
|
+
type: "primary",
|
|
57
|
+
size: size
|
|
58
|
+
}, "Primary Button"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
59
|
+
type: "danger",
|
|
60
|
+
size: size
|
|
61
|
+
}, "danger Button"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
62
|
+
type: "secondary",
|
|
63
|
+
size: size
|
|
64
|
+
}, "secondary Button"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
65
|
+
type: "text",
|
|
66
|
+
size: size
|
|
67
|
+
}, "Text Button"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
68
|
+
type: "link",
|
|
69
|
+
size: size
|
|
70
|
+
}, "Link Button"));
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
exports.default = _default;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _aloudataDesign = require("@aloudata/aloudata-design");
|
|
11
|
+
|
|
12
|
+
require("./index.less");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
var _default = function _default() {
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
18
|
+
className: "ald-button-demo"
|
|
19
|
+
}, /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
20
|
+
type: "primary",
|
|
21
|
+
disabled: true
|
|
22
|
+
}, "primary disable"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
23
|
+
type: "secondary",
|
|
24
|
+
disabled: true
|
|
25
|
+
}, "secondary disable"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
26
|
+
type: "text",
|
|
27
|
+
disabled: true
|
|
28
|
+
}, "text disable"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
29
|
+
type: "danger",
|
|
30
|
+
disabled: true
|
|
31
|
+
}, "danger disable"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
32
|
+
type: "link",
|
|
33
|
+
disabled: true
|
|
34
|
+
}, "link disable"));
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
exports.default = _default;
|
|
File without changes
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _aloudataDesign = require("@aloudata/aloudata-design");
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
var _default = function _default() {
|
|
15
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
16
|
+
className: "ald-button-demo"
|
|
17
|
+
}, /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
18
|
+
href: "https://www.aloudata.com/"
|
|
19
|
+
}, "aloudata"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
20
|
+
href: "https://www.aloudata.com/",
|
|
21
|
+
target: "_blank"
|
|
22
|
+
}, "target _blank aloudata"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
23
|
+
href: "https://www.aloudata.com/",
|
|
24
|
+
target: "_self"
|
|
25
|
+
}, "target _self aloudata"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
26
|
+
target: "_blank"
|
|
27
|
+
}, " \u65E0href target _blank"));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
exports.default = _default;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _aloudataDesign = require("@aloudata/aloudata-design");
|
|
11
|
+
|
|
12
|
+
require("./index.less");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
17
|
+
|
|
18
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
19
|
+
|
|
20
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
21
|
+
|
|
22
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
23
|
+
|
|
24
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
25
|
+
|
|
26
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
27
|
+
|
|
28
|
+
var _default = function _default() {
|
|
29
|
+
var _React$useState = _react.default.useState(false),
|
|
30
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
31
|
+
loading = _React$useState2[0],
|
|
32
|
+
setLoading = _React$useState2[1];
|
|
33
|
+
|
|
34
|
+
var handleChange = function handleChange(e) {
|
|
35
|
+
setLoading(true);
|
|
36
|
+
setTimeout(setLoading.bind(false), 3000);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
40
|
+
className: "ald-button-demo"
|
|
41
|
+
}, /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
42
|
+
loading: true
|
|
43
|
+
}, "loading"), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
44
|
+
loading: true
|
|
45
|
+
}), /*#__PURE__*/_react.default.createElement(_aloudataDesign.Button, {
|
|
46
|
+
loading: loading,
|
|
47
|
+
onClick: handleChange
|
|
48
|
+
}, "\u70B9\u51FB\u63D0\u4EA4"));
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
exports.default = _default;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './style';
|
|
3
|
+
import type { ButtonProps as AntdButtonProps } from 'antd/lib/button';
|
|
4
|
+
export declare type ButtonType = 'primary' | 'secondary' | 'danger' | 'text' | 'link';
|
|
5
|
+
export declare type Size = 'small' | 'default' | 'large';
|
|
6
|
+
export interface IButtonProps extends Omit<AntdButtonProps, 'type' | 'size' | 'danger' | 'shape' | 'icon' | 'href' | 'target' | 'onClick' | 'loading'> {
|
|
7
|
+
/**
|
|
8
|
+
* @description 类型
|
|
9
|
+
* @type 'primary' | 'secondary' | 'danger' | 'text' | 'link'
|
|
10
|
+
* @default primary
|
|
11
|
+
*/
|
|
12
|
+
type?: ButtonType;
|
|
13
|
+
/**
|
|
14
|
+
* @description 尺寸
|
|
15
|
+
* @type 'small' | 'default' | 'large'
|
|
16
|
+
* @default large
|
|
17
|
+
*/
|
|
18
|
+
size?: Size;
|
|
19
|
+
/**
|
|
20
|
+
* @description 是否禁用
|
|
21
|
+
* @default false
|
|
22
|
+
*/
|
|
23
|
+
disabled?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* @description 设置按钮的图标组件
|
|
26
|
+
*/
|
|
27
|
+
icon?: React.ReactNode;
|
|
28
|
+
shape?: 'circle' | 'default';
|
|
29
|
+
/**
|
|
30
|
+
* @description 指定此属性,点击行为和a链接一致
|
|
31
|
+
*/
|
|
32
|
+
href?: string;
|
|
33
|
+
/**
|
|
34
|
+
* @description 相当于 a 链接的 target 属性,href 存在时生效
|
|
35
|
+
*/
|
|
36
|
+
target?: string;
|
|
37
|
+
/**
|
|
38
|
+
* @description 点击按钮时的回调
|
|
39
|
+
*/
|
|
40
|
+
onClick?: React.MouseEventHandler<HTMLElement>;
|
|
41
|
+
/**
|
|
42
|
+
* @description 设置按钮进入载入状态
|
|
43
|
+
* @default false
|
|
44
|
+
*/
|
|
45
|
+
loading?: boolean | {
|
|
46
|
+
delay?: number;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
declare function Button(props: IButtonProps): JSX.Element;
|
|
50
|
+
export default Button;
|