@fjyueke/arco-mcp 1.0.0 → 1.0.2
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/dist/index.js +113 -1
- package/metaData/components/action-sheet/api.md +94 -0
- package/metaData/components/action-sheet/style.md +57 -0
- package/metaData/components/avatar/api.md +49 -0
- package/metaData/components/avatar/style.md +147 -0
- package/metaData/components/badge/api.md +20 -0
- package/metaData/components/badge/style.md +74 -0
- package/metaData/components/button/api.md +37 -0
- package/metaData/components/button/style.md +151 -0
- package/metaData/components/carousel/api.md +81 -0
- package/metaData/components/carousel/style.md +208 -0
- package/metaData/components/cell/api.md +60 -0
- package/metaData/components/cell/style.md +123 -0
- package/metaData/components/checkbox/api.md +83 -0
- package/metaData/components/checkbox/style.md +62 -0
- package/metaData/components/circle-progress/api.md +32 -0
- package/metaData/components/circle-progress/style.md +52 -0
- package/metaData/components/collapse/api.md +66 -0
- package/metaData/components/collapse/style.md +53 -0
- package/metaData/components/context-provider/api.md +36 -0
- package/metaData/components/context-provider/style.md +1 -0
- package/metaData/components/count-down/api.md +32 -0
- package/metaData/components/count-down/style.md +7 -0
- package/metaData/components/date-picker/api.md +94 -0
- package/metaData/components/date-picker/style.md +27 -0
- package/metaData/components/dialog/api.md +192 -0
- package/metaData/components/dialog/style.md +271 -0
- package/metaData/components/divider/api.md +17 -0
- package/metaData/components/divider/style.md +68 -0
- package/metaData/components/dropdown/api.md +72 -0
- package/metaData/components/dropdown/style.md +108 -0
- package/metaData/components/dropdown-menu/api.md +83 -0
- package/metaData/components/dropdown-menu/style.md +60 -0
- package/metaData/components/ellipsis/api.md +25 -0
- package/metaData/components/ellipsis/style.md +31 -0
- package/metaData/components/form/api.md +82 -0
- package/metaData/components/form/style.md +105 -0
- package/metaData/components/grid/api.md +31 -0
- package/metaData/components/grid/style.md +109 -0
- package/metaData/components/icon/api.md +7 -0
- package/metaData/components/image/api.md +54 -0
- package/metaData/components/image/style.md +144 -0
- package/metaData/components/image-picker/api.md +108 -0
- package/metaData/components/image-picker/style.md +116 -0
- package/metaData/components/image-preview/api.md +111 -0
- package/metaData/components/image-preview/style.md +103 -0
- package/metaData/components/index-bar/api.md +75 -0
- package/metaData/components/index-bar/style.md +122 -0
- package/metaData/components/input/api.md +52 -0
- package/metaData/components/input/style.md +108 -0
- package/metaData/components/keyboard/api.md +65 -0
- package/metaData/components/keyboard/style.md +80 -0
- package/metaData/components/load-more/api.md +40 -0
- package/metaData/components/load-more/style.md +7 -0
- package/metaData/components/loading/api.md +26 -0
- package/metaData/components/loading/style.md +102 -0
- package/metaData/components/masking/api.md +85 -0
- package/metaData/components/masking/style.md +30 -0
- package/metaData/components/nav-bar/api.md +32 -0
- package/metaData/components/nav-bar/style.md +112 -0
- package/metaData/components/notice-bar/api.md +26 -0
- package/metaData/components/notice-bar/style.md +124 -0
- package/metaData/components/notify/api.md +73 -0
- package/metaData/components/notify/style.md +40 -0
- package/metaData/components/pagination/api.md +33 -0
- package/metaData/components/pagination/style.md +105 -0
- package/metaData/components/picker/api.md +81 -0
- package/metaData/components/picker/style.md +46 -0
- package/metaData/components/picker-view/api.md +49 -0
- package/metaData/components/picker-view/style.md +75 -0
- package/metaData/components/popover/api.md +136 -0
- package/metaData/components/popover/style.md +226 -0
- package/metaData/components/popup/api.md +93 -0
- package/metaData/components/popup/style.md +115 -0
- package/metaData/components/popup-swiper/api.md +100 -0
- package/metaData/components/popup-swiper/style.md +10 -0
- package/metaData/components/portal/api.md +6 -0
- package/metaData/components/portal/style.md +1 -0
- package/metaData/components/progress/api.md +34 -0
- package/metaData/components/progress/style.md +114 -0
- package/metaData/components/pull-refresh/api.md +29 -0
- package/metaData/components/pull-refresh/style.md +86 -0
- package/metaData/components/radio/api.md +81 -0
- package/metaData/components/radio/style.md +57 -0
- package/metaData/components/rate/api.md +25 -0
- package/metaData/components/rate/style.md +63 -0
- package/metaData/components/search-bar/api.md +89 -0
- package/metaData/components/search-bar/style.md +115 -0
- package/metaData/components/show-monitor/api.md +26 -0
- package/metaData/components/show-monitor/style.md +1 -0
- package/metaData/components/skeleton/api.md +93 -0
- package/metaData/components/skeleton/style.md +147 -0
- package/metaData/components/slider/api.md +34 -0
- package/metaData/components/slider/style.md +292 -0
- package/metaData/components/stepper/api.md +38 -0
- package/metaData/components/stepper/style.md +85 -0
- package/metaData/components/steps/api.md +49 -0
- package/metaData/components/steps/style.md +304 -0
- package/metaData/components/sticky/api.md +37 -0
- package/metaData/components/sticky/style.md +5 -0
- package/metaData/components/swipe-action/api.md +36 -0
- package/metaData/components/swipe-action/style.md +89 -0
- package/metaData/components/swipe-load/api.md +35 -0
- package/metaData/components/swipe-load/style.md +29 -0
- package/metaData/components/switch/api.md +30 -0
- package/metaData/components/switch/style.md +158 -0
- package/metaData/components/tab-bar/api.md +49 -0
- package/metaData/components/tab-bar/style.md +57 -0
- package/metaData/components/tabs/api.md +179 -0
- package/metaData/components/tabs/style.md +436 -0
- package/metaData/components/tag/api.md +72 -0
- package/metaData/components/tag/style.md +133 -0
- package/metaData/components/textarea/api.md +59 -0
- package/metaData/components/textarea/style.md +37 -0
- package/metaData/components/toast/api.md +82 -0
- package/metaData/components/toast/style.md +93 -0
- package/metaData/components/transition/api.md +11 -0
- package/metaData/components/transition/style.md +28 -0
- package/metaData/components/uploader/api.md +74 -0
- package/metaData/components/uploader/style.md +86 -0
- package/metaData/tokens.json +2358 -0
- package/package.json +1 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
@import "../../../style/mixin.less";
|
|
2
|
+
|
|
3
|
+
.@{prefix}-textarea {
|
|
4
|
+
display: inline-block;
|
|
5
|
+
width: 100%;
|
|
6
|
+
height: 100%;
|
|
7
|
+
resize: none;
|
|
8
|
+
.use-var(font-size, textarea-font-size);
|
|
9
|
+
.use-var(line-height, textarea-line-height);
|
|
10
|
+
.use-var(caret-color, input-caret-color);
|
|
11
|
+
|
|
12
|
+
&::placeholder {
|
|
13
|
+
.use-var(color, input-placeholder-color);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&.fake-textarea {
|
|
17
|
+
position: fixed;
|
|
18
|
+
bottom: 100%;
|
|
19
|
+
left: 0;
|
|
20
|
+
visibility: hidden;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.@{prefix}-input-container {
|
|
25
|
+
|
|
26
|
+
.statistic-text {
|
|
27
|
+
position: absolute;
|
|
28
|
+
.rem(bottom, 16);
|
|
29
|
+
.rem(right, 16);
|
|
30
|
+
.use-var(font-size, textarea-statistic-font-size);
|
|
31
|
+
.use-var(color, textarea-statistic-color);
|
|
32
|
+
|
|
33
|
+
&.exceed {
|
|
34
|
+
.use-var(color, danger-color);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
> 属性/Props
|
|
2
|
+
|
|
3
|
+
|参数|描述|类型|默认值|
|
|
4
|
+
|----------|-------------|------|------|
|
|
5
|
+
|className|自定义类名|string|-|
|
|
6
|
+
|content|提示内容|ReactNode|-|
|
|
7
|
+
|duration|自动关闭的延时(单位: ms),设置为0则不会自动关闭|number|3000|
|
|
8
|
+
|icon|自定义图标|ReactNode|-|
|
|
9
|
+
|layout|内容排列布局|"vertical" \| "horizontal"|"vertical"|
|
|
10
|
+
|transitionDuration|打开关闭动画执行时长(单位: ms)|number|300|
|
|
11
|
+
|close|关闭函数|() =\> void|-|
|
|
12
|
+
|onClose|关闭后的回调函数|() =\> void|-|
|
|
13
|
+
|loading|是否为加载态|boolean|-|
|
|
14
|
+
|loadingIcon|加载图标,传入Icon组件type属性或node|ReactNode|-|
|
|
15
|
+
|loadingInner|加载图标内部元素,仅在 loading 为 true 时生效|string|-|
|
|
16
|
+
|disableBodyTouch|是否禁止toast以外区域的交互|boolean|false|
|
|
17
|
+
|visible|是否显示toast|boolean|false|
|
|
18
|
+
|getContainer|获取挂载容器|() =\> HTMLElement|-|
|
|
19
|
+
|type|toast展示信息类型,不同类型对应不同图标,info表示纯文字信息无图标|"info" \| "success" \| "error" \| "warn"|"info"|
|
|
20
|
+
|direction|toast出现位置|"center" \| "top" \| "bottom"|"center"|
|
|
21
|
+
|typeIconMap|自定义不同类型对应的不同图标|Partial\<Record\<ToastType, ReactNode\>\>|-|
|
|
22
|
+
|initialBodyOverflow|页面初始 overflow 状态,即关闭toast时 overflow 应该还原的状态|string|第一个全屏组件(弹窗、toast等)打开时页面overflow值|
|
|
23
|
+
|
|
24
|
+
> 引用/Refs
|
|
25
|
+
|
|
26
|
+
|参数|描述|类型|
|
|
27
|
+
|----------|-------------|------|
|
|
28
|
+
|dom|最外层元素 DOM|HTMLDivElement|
|
|
29
|
+
|
|
30
|
+
> 方法/Methods
|
|
31
|
+
|
|
32
|
+
|方法名|描述|类型|
|
|
33
|
+
|----------|-------------|------|
|
|
34
|
+
|toast|展示常规提示框|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
35
|
+
|info|展示常规提示框,同 Toast\.toast|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
36
|
+
|success|展示成功提示框(含成功icon)|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
37
|
+
|error|展示错误提示框(含错误icon)|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
38
|
+
|loading|展示加载中提示框(含加载中icon)|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
39
|
+
|warn|展示警告提示框(含警告icon)|(config: string \| ToastProps) =\> \{ update: (config: ToastProps) =\> void; close: () =\> void \}|
|
|
40
|
+
|
|
41
|
+
> ToastType
|
|
42
|
+
|
|
43
|
+
```
|
|
44
|
+
"success" | "error" | "warn"
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
> GlobalContextParams
|
|
48
|
+
|
|
49
|
+
|参数|描述|类型|默认值|
|
|
50
|
+
|----------|-------------|------|------|
|
|
51
|
+
|prefixCls|组件类名前缀|string|"arco"|
|
|
52
|
+
|system|手动控制当前所在系统,传入后将直接使用传入的值,ssr场景需指定系统初始值时适用|"" \| "pc" \| "android" \| "ios"|""|
|
|
53
|
+
|useDarkMode|是否监听系统原生的暗黑模式变化(prefers\-color\-scheme: dark)以判断是否切为暗黑模式|boolean|false|
|
|
54
|
+
|isDarkMode|是否处于暗黑模式,指定后以指定的值为准|boolean|false|
|
|
55
|
+
|darkModeSelector|当处于暗黑模式时,body上挂载的类名,为空值时不挂载类名|string|"arco-theme-dark"|
|
|
56
|
+
|theme|主题变量,传入后将在线替换css变量,需设置less变量 @use\-css\-vars: 1|Record\<string, string\>|-|
|
|
57
|
+
|locale|国际化语言包配置|ILocale|-|
|
|
58
|
+
|useRtl|是否使用Rtl模式|boolean|false|
|
|
59
|
+
|onDarkModeChange|当系统原生暗黑模式发生变化时触发,useDarkMode=true 时有效|(isDark: boolean) =\> void|-|
|
|
60
|
+
|createRoot|React19 修改了 createRoot 的引入路径,导致组件内部无法直接引入(低react版本会找不到模块)。因此使用 react 19 的用户需从外部传入 createRoot 方法|CreateRootFnType|-|
|
|
61
|
+
|
|
62
|
+
> ILocale
|
|
63
|
+
|
|
64
|
+
|参数|描述|类型|
|
|
65
|
+
|----------|-------------|------|
|
|
66
|
+
|locale|语言类型|string|
|
|
67
|
+
|LoadMore|-|\{ loadMoreText: string; loadingText: string; noDataText: string; failLoadText: string; prepareScrollText: string; prepareClickText: string; \}|
|
|
68
|
+
|Picker|-|\{ okText: string; cancelText: string; \}|
|
|
69
|
+
|Tag|-|\{ addTag: string; \}|
|
|
70
|
+
|Dialog|-|\{ okText: string; cancelText: string; \}|
|
|
71
|
+
|SwipeLoad|-|\{ normalText: string; activeText: string; \}|
|
|
72
|
+
|PullRefresh|-|\{ loadingText: string; pullingText: string; finishText: string; loosingText: string; \}|
|
|
73
|
+
|DropdownMenu|-|\{ select: string; \}|
|
|
74
|
+
|Pagination|-|\{ previousPage: string; nextPage: string; \}|
|
|
75
|
+
|Image|-|\{ loadError: string; \}|
|
|
76
|
+
|ImagePicker|-|\{ loadError: string; \}|
|
|
77
|
+
|SearchBar|-|\{ placeholder: string; cancelBtn: string; \}|
|
|
78
|
+
|Stepper|-|\{ minusButtonName: string; addButtonName: string; \}|
|
|
79
|
+
|Keyboard|-|\{ confirm: string; \}|
|
|
80
|
+
|Form|-|\{ required: string; type: \{ email: string; url: string; string: string; number: string; array: string; object: string; boolean: string; \}; number: \{ min: string; max: string; equal: string; range: string; positive: string; negative: string; \}; \.\.\. 4 more \.\.\.; pickerDefaultHint: string; \}|
|
|
81
|
+
|NavBar|-|\{ backBtnAriaLabel: string; \}|
|
|
82
|
+
|Uploader|-|\{ uploadBtn: string; retryUpload: string; \}|
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
@import "../../../style/mixin.less";
|
|
2
|
+
|
|
3
|
+
.@{prefix}-toast {
|
|
4
|
+
|
|
5
|
+
&-wrapper {
|
|
6
|
+
.full-screen();
|
|
7
|
+
z-index: @full-screen-z-index + 1;
|
|
8
|
+
display: flex;
|
|
9
|
+
justify-content: center;
|
|
10
|
+
.use-var(padding, toast-safe-padding);
|
|
11
|
+
|
|
12
|
+
&.no-event {
|
|
13
|
+
pointer-events: none;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&.from-center {
|
|
17
|
+
align-items: center;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&.from-top {
|
|
21
|
+
align-items: flex-start;
|
|
22
|
+
.use-var(padding-top, toast-from-top-position);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&.from-bottom {
|
|
26
|
+
align-items: flex-end;
|
|
27
|
+
.use-var(padding-bottom, toast-from-bottom-position);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&-inner {
|
|
32
|
+
.use-var(background, toast-background);
|
|
33
|
+
.use-var(color, toast-text-color);
|
|
34
|
+
.use-var(font-size, toast-font-size);
|
|
35
|
+
.use-var(line-height, toast-line-height);
|
|
36
|
+
.use-var(border-radius, toast-border-radius);
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
justify-content: center;
|
|
41
|
+
pointer-events: initial;
|
|
42
|
+
|
|
43
|
+
&.horizontal {
|
|
44
|
+
flex-direction: row;
|
|
45
|
+
.use-var(padding, toast-horizontal-padding);
|
|
46
|
+
.@{prefix}-icon {
|
|
47
|
+
flex: 0 0 auto;
|
|
48
|
+
.use-var(font-size, toast-horizontal-icon-size);
|
|
49
|
+
}
|
|
50
|
+
.@{prefix}-toast-loading-wrapper + .@{prefix}-toast-content,
|
|
51
|
+
.@{prefix}-icon + .@{prefix}-toast-content {
|
|
52
|
+
.use-var(margin-left, toast-horizontal-icon-content-gutter);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&.vertical {
|
|
57
|
+
.use-var(padding, toast-vertical-padding);
|
|
58
|
+
.@{prefix}-icon {
|
|
59
|
+
.use-var(font-size, toast-vertical-icon-size);
|
|
60
|
+
}
|
|
61
|
+
.@{prefix}-toast-loading-wrapper + .@{prefix}-toast-content,
|
|
62
|
+
.@{prefix}-icon + .@{prefix}-toast-content {
|
|
63
|
+
.use-var(margin-top, toast-vertical-icon-content-gutter);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
.@{prefix}-loading {
|
|
67
|
+
.set-loading-color-var(mask-content-color);
|
|
68
|
+
|
|
69
|
+
&.arc .arc-bg {
|
|
70
|
+
.use-var(stroke, toast-loading-arc-background-color);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
&-loading-wrapper {
|
|
76
|
+
display: flex;
|
|
77
|
+
position: relative;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
&-loading-inner {
|
|
81
|
+
position: absolute;
|
|
82
|
+
top: 50%;
|
|
83
|
+
left: 50%;
|
|
84
|
+
transform: translate(-50%, -50%);
|
|
85
|
+
.use-var(font-size, toast-loading-inner-font-size);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
&-content {
|
|
89
|
+
width: 100%;
|
|
90
|
+
text-align: center;
|
|
91
|
+
white-space: pre-line;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
> 属性/Props
|
|
2
|
+
|
|
3
|
+
|参数|描述|类型|默认值|
|
|
4
|
+
|----------|-------------|------|------|
|
|
5
|
+
|children|待执行动画内容|ReactNode|-|
|
|
6
|
+
|type|待执行动画css类名|string|必填|
|
|
7
|
+
|in|内容是否可见|boolean|必填|
|
|
8
|
+
|timeout|执行动画时间|number \| \{ appear?: number; enter?: number; exit?: number; \}|必填|
|
|
9
|
+
|mountOnEnter|是否在打开时再加载内容|boolean|true|
|
|
10
|
+
|unmountOnExit|是否在退出时卸载内容|boolean|true|
|
|
11
|
+
|transitionVarType|动画时长变量标识|string|type 属性值|
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
@import "../../../style/mixin.less";
|
|
2
|
+
|
|
3
|
+
.@{prefix}-fade {
|
|
4
|
+
|
|
5
|
+
&-enter {
|
|
6
|
+
opacity: 0;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
&-enter-active {
|
|
10
|
+
opacity: 1;
|
|
11
|
+
transition-property: opacity;
|
|
12
|
+
.use-transition-var(builtin-transition-fade-enter-duration, transition-fade-duration);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&-exit {
|
|
16
|
+
opacity: 1;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&-exit-active {
|
|
20
|
+
opacity: 0;
|
|
21
|
+
transition-property: opacity;
|
|
22
|
+
.use-transition-var(builtin-transition-fade-exit-duration, transition-fade-duration);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
&-exit-done {
|
|
26
|
+
display: none;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
> 属性/Props
|
|
2
|
+
|
|
3
|
+
|参数|描述|类型|默认值|
|
|
4
|
+
|----------|-------------|------|------|
|
|
5
|
+
|className|自定义类名|string|-|
|
|
6
|
+
|style|自定义样式|CSSProperties|-|
|
|
7
|
+
|accept|可以选择的文件类型|string|undefined|
|
|
8
|
+
|multiple|是否支持多选|boolean|-|
|
|
9
|
+
|capture|文件选取模式 File selection mode \[capture MDN\](https://developer\.mozilla\.org/en\-US/docs/Web/HTML/Attributes/capture)|string \| boolean|-|
|
|
10
|
+
|hideStatus|是否隐藏文件上传状态|boolean|false|
|
|
11
|
+
|alwaysShowSelect|是否总是展示选择Icon,默认情况下当文件数量超出limit值时会自动隐藏选择Icon|boolean|false|
|
|
12
|
+
|disabled|禁用选择和删除图片|boolean|-|
|
|
13
|
+
|renderDeleteArea|自定义删除区域|(fileItem: FileItem, index: number) =\> ReactNode|-|
|
|
14
|
+
|renderLoadedArea|自定义上传成功区域|(fileItem: FileItem, index: number) =\> ReactNode|-|
|
|
15
|
+
|renderLoadingArea|自定义上传中区域|(fileItem: FileItem, index: number) =\> ReactNode|-|
|
|
16
|
+
|renderErrorArea|自定义上传失败区域|(fileItem: FileItem, index: number) =\> ReactNode|-|
|
|
17
|
+
|renderFileIndexArea|自定义文件索引区域|(fileItem: FileItem, index: number) =\> ReactNode|-|
|
|
18
|
+
|renderUploadArea|自定义上传按钮区域|() =\> ReactNode|-|
|
|
19
|
+
|renderFileList|自定义上传文件列表展示|(methods: FileListMethods) =\> ReactNode|-|
|
|
20
|
+
|upload|上传方法|(file: CommonFileItem) =\> Promise\<CommonFileItem\>|-|
|
|
21
|
+
|onChange|已选文件列表发生变化|(fileList: CommonFileItem\[\]) =\> void|-|
|
|
22
|
+
|maxSize|文件大小限制,单位为K|number|-|
|
|
23
|
+
|onMaxSizeExceed|文件超过限制大小|(file: File) =\> void|-|
|
|
24
|
+
|limit|最多选择文件数,超出数量自动隐藏上传按钮,0表示不做限制|number|0|
|
|
25
|
+
|onLimitExceed|选择文件数超过限制|(files: File\[\]) =\> void|-|
|
|
26
|
+
|files|已选择文件列表|CommonFileItem\[\]|必填|
|
|
27
|
+
|onDeleteClick|删除点击事件|(index: number) =\> void|-|
|
|
28
|
+
|onUploadClick|上传文件点击事件|() =\> void|-|
|
|
29
|
+
|selectAdapter|文件选择适配器|() =\> Promise\<SelectCallback\>|-|
|
|
30
|
+
|onClick|文件点击|(e: MouseEvent\<HTMLElement, MouseEvent\>, file: CommonFileItem, index: number) =\> void|-|
|
|
31
|
+
|onLongPress|文件长按事件|(e: TouchEvent\<HTMLElement\>, file: CommonFileItem, index: number) =\> void|-|
|
|
32
|
+
|
|
33
|
+
> 引用/Refs
|
|
34
|
+
|
|
35
|
+
|参数|描述|类型|
|
|
36
|
+
|----------|-------------|------|
|
|
37
|
+
|dom|最外层 DOM 元素|HTMLDivElement|
|
|
38
|
+
|
|
39
|
+
> FileItem
|
|
40
|
+
|
|
41
|
+
|参数|描述|类型|默认值|
|
|
42
|
+
|----------|-------------|------|------|
|
|
43
|
+
|file|文件|File|必填|
|
|
44
|
+
|url|文件地址|string|-|
|
|
45
|
+
|status|文件状态|"loaded" \| "loading" \| "error"|以文件自身加载状态而定|
|
|
46
|
+
|
|
47
|
+
> FileListMethods
|
|
48
|
+
|
|
49
|
+
|参数|描述|类型|
|
|
50
|
+
|----------|-------------|------|
|
|
51
|
+
|retryUpload|重新上传|(index: number) =\> void|
|
|
52
|
+
|deleteFile|删除文件|(index: number) =\> void|
|
|
53
|
+
|
|
54
|
+
> CommonFileItem
|
|
55
|
+
|
|
56
|
+
|参数|描述|类型|默认值|
|
|
57
|
+
|----------|-------------|------|------|
|
|
58
|
+
|url|文件地址|string|-|
|
|
59
|
+
|file|文件|File|-|
|
|
60
|
+
|status|文件状态|"loaded" \| "loading" \| "error"|以文件自身加载状态而定|
|
|
61
|
+
|
|
62
|
+
> SelectCallback
|
|
63
|
+
|
|
64
|
+
|参数|描述|类型|
|
|
65
|
+
|----------|-------------|------|
|
|
66
|
+
|files|文件列表|AdapterFile\[\]|
|
|
67
|
+
|
|
68
|
+
> AdapterFile
|
|
69
|
+
|
|
70
|
+
|参数|描述|类型|
|
|
71
|
+
|----------|-------------|------|
|
|
72
|
+
|url|文件 url|string|
|
|
73
|
+
|size|文件大小|number|
|
|
74
|
+
|name|文件名|string|
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
@import '../../../style/mixin.less';
|
|
2
|
+
|
|
3
|
+
.@{prefix}-uploader {
|
|
4
|
+
&-container {
|
|
5
|
+
display: flex;
|
|
6
|
+
flex-wrap: wrap;
|
|
7
|
+
}
|
|
8
|
+
&-add {
|
|
9
|
+
position: relative;
|
|
10
|
+
input {
|
|
11
|
+
position: absolute;
|
|
12
|
+
opacity: 0;
|
|
13
|
+
left: 0;
|
|
14
|
+
top: 0;
|
|
15
|
+
width: 100%;
|
|
16
|
+
height: 100%;
|
|
17
|
+
display: none;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
&-list {
|
|
21
|
+
width: 100%;
|
|
22
|
+
&-item {
|
|
23
|
+
display: flex;
|
|
24
|
+
align-items: center;
|
|
25
|
+
.use-var(height, uploader-item-height);
|
|
26
|
+
.use-var(margin-top, uploader-item-margin-top);
|
|
27
|
+
&-container {
|
|
28
|
+
flex: 1;
|
|
29
|
+
display: flex;
|
|
30
|
+
align-items: center;
|
|
31
|
+
height: 100%;
|
|
32
|
+
.use-var(border-radius, uploader-item-border-radius);
|
|
33
|
+
.use-var(background-color, uploader-item-background-color);
|
|
34
|
+
.use-var(padding, uploader-item-padding);
|
|
35
|
+
}
|
|
36
|
+
&-wrapper {
|
|
37
|
+
display: flex;
|
|
38
|
+
flex: 1;
|
|
39
|
+
align-items: center;
|
|
40
|
+
}
|
|
41
|
+
&-file {
|
|
42
|
+
display: flex;
|
|
43
|
+
.use-var(font-size, uploader-file-icon-font-size);
|
|
44
|
+
.use-var-with-rtl(margin-right, uploader-file-icon-margin-right);
|
|
45
|
+
&-icon {
|
|
46
|
+
.use-var(color, uploader-file-icon-color);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
&-text {
|
|
50
|
+
font-weight: 400;
|
|
51
|
+
.use-var(font-size, uploader-item-text-font-size);
|
|
52
|
+
.use-var(color, uploader-item-text-color);
|
|
53
|
+
&-error {
|
|
54
|
+
.use-var(color, uploader-item-text-error-color);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
&-loaded {
|
|
58
|
+
display: flex;
|
|
59
|
+
.use-var(font-size, uploader-loaded-icon-font-size);
|
|
60
|
+
.use-var(color, uploader-loaded-icon-color);
|
|
61
|
+
}
|
|
62
|
+
&-error {
|
|
63
|
+
font-weight: 400;
|
|
64
|
+
.use-var(font-size, uploader-error-text-font-size);
|
|
65
|
+
.use-var(color, uploader-error-text-color);
|
|
66
|
+
}
|
|
67
|
+
&-delete {
|
|
68
|
+
display: flex;
|
|
69
|
+
height: 100%;
|
|
70
|
+
align-items: center;
|
|
71
|
+
.use-var-with-rtl(padding-left, uploader-delete-icon-padding-left);
|
|
72
|
+
.use-var(font-size, uploader-delete-icon-font-size);
|
|
73
|
+
&-icon {
|
|
74
|
+
.use-var(color, uploader-delete-icon-color);
|
|
75
|
+
&-disabled {
|
|
76
|
+
.use-var(color, uploader-disabled-delete-icon-color);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.@{prefix}-uploader-disabled {
|
|
85
|
+
pointer-events: none;
|
|
86
|
+
}
|