@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.
Files changed (122) hide show
  1. package/dist/index.js +113 -1
  2. package/metaData/components/action-sheet/api.md +94 -0
  3. package/metaData/components/action-sheet/style.md +57 -0
  4. package/metaData/components/avatar/api.md +49 -0
  5. package/metaData/components/avatar/style.md +147 -0
  6. package/metaData/components/badge/api.md +20 -0
  7. package/metaData/components/badge/style.md +74 -0
  8. package/metaData/components/button/api.md +37 -0
  9. package/metaData/components/button/style.md +151 -0
  10. package/metaData/components/carousel/api.md +81 -0
  11. package/metaData/components/carousel/style.md +208 -0
  12. package/metaData/components/cell/api.md +60 -0
  13. package/metaData/components/cell/style.md +123 -0
  14. package/metaData/components/checkbox/api.md +83 -0
  15. package/metaData/components/checkbox/style.md +62 -0
  16. package/metaData/components/circle-progress/api.md +32 -0
  17. package/metaData/components/circle-progress/style.md +52 -0
  18. package/metaData/components/collapse/api.md +66 -0
  19. package/metaData/components/collapse/style.md +53 -0
  20. package/metaData/components/context-provider/api.md +36 -0
  21. package/metaData/components/context-provider/style.md +1 -0
  22. package/metaData/components/count-down/api.md +32 -0
  23. package/metaData/components/count-down/style.md +7 -0
  24. package/metaData/components/date-picker/api.md +94 -0
  25. package/metaData/components/date-picker/style.md +27 -0
  26. package/metaData/components/dialog/api.md +192 -0
  27. package/metaData/components/dialog/style.md +271 -0
  28. package/metaData/components/divider/api.md +17 -0
  29. package/metaData/components/divider/style.md +68 -0
  30. package/metaData/components/dropdown/api.md +72 -0
  31. package/metaData/components/dropdown/style.md +108 -0
  32. package/metaData/components/dropdown-menu/api.md +83 -0
  33. package/metaData/components/dropdown-menu/style.md +60 -0
  34. package/metaData/components/ellipsis/api.md +25 -0
  35. package/metaData/components/ellipsis/style.md +31 -0
  36. package/metaData/components/form/api.md +82 -0
  37. package/metaData/components/form/style.md +105 -0
  38. package/metaData/components/grid/api.md +31 -0
  39. package/metaData/components/grid/style.md +109 -0
  40. package/metaData/components/icon/api.md +7 -0
  41. package/metaData/components/image/api.md +54 -0
  42. package/metaData/components/image/style.md +144 -0
  43. package/metaData/components/image-picker/api.md +108 -0
  44. package/metaData/components/image-picker/style.md +116 -0
  45. package/metaData/components/image-preview/api.md +111 -0
  46. package/metaData/components/image-preview/style.md +103 -0
  47. package/metaData/components/index-bar/api.md +75 -0
  48. package/metaData/components/index-bar/style.md +122 -0
  49. package/metaData/components/input/api.md +52 -0
  50. package/metaData/components/input/style.md +108 -0
  51. package/metaData/components/keyboard/api.md +65 -0
  52. package/metaData/components/keyboard/style.md +80 -0
  53. package/metaData/components/load-more/api.md +40 -0
  54. package/metaData/components/load-more/style.md +7 -0
  55. package/metaData/components/loading/api.md +26 -0
  56. package/metaData/components/loading/style.md +102 -0
  57. package/metaData/components/masking/api.md +85 -0
  58. package/metaData/components/masking/style.md +30 -0
  59. package/metaData/components/nav-bar/api.md +32 -0
  60. package/metaData/components/nav-bar/style.md +112 -0
  61. package/metaData/components/notice-bar/api.md +26 -0
  62. package/metaData/components/notice-bar/style.md +124 -0
  63. package/metaData/components/notify/api.md +73 -0
  64. package/metaData/components/notify/style.md +40 -0
  65. package/metaData/components/pagination/api.md +33 -0
  66. package/metaData/components/pagination/style.md +105 -0
  67. package/metaData/components/picker/api.md +81 -0
  68. package/metaData/components/picker/style.md +46 -0
  69. package/metaData/components/picker-view/api.md +49 -0
  70. package/metaData/components/picker-view/style.md +75 -0
  71. package/metaData/components/popover/api.md +136 -0
  72. package/metaData/components/popover/style.md +226 -0
  73. package/metaData/components/popup/api.md +93 -0
  74. package/metaData/components/popup/style.md +115 -0
  75. package/metaData/components/popup-swiper/api.md +100 -0
  76. package/metaData/components/popup-swiper/style.md +10 -0
  77. package/metaData/components/portal/api.md +6 -0
  78. package/metaData/components/portal/style.md +1 -0
  79. package/metaData/components/progress/api.md +34 -0
  80. package/metaData/components/progress/style.md +114 -0
  81. package/metaData/components/pull-refresh/api.md +29 -0
  82. package/metaData/components/pull-refresh/style.md +86 -0
  83. package/metaData/components/radio/api.md +81 -0
  84. package/metaData/components/radio/style.md +57 -0
  85. package/metaData/components/rate/api.md +25 -0
  86. package/metaData/components/rate/style.md +63 -0
  87. package/metaData/components/search-bar/api.md +89 -0
  88. package/metaData/components/search-bar/style.md +115 -0
  89. package/metaData/components/show-monitor/api.md +26 -0
  90. package/metaData/components/show-monitor/style.md +1 -0
  91. package/metaData/components/skeleton/api.md +93 -0
  92. package/metaData/components/skeleton/style.md +147 -0
  93. package/metaData/components/slider/api.md +34 -0
  94. package/metaData/components/slider/style.md +292 -0
  95. package/metaData/components/stepper/api.md +38 -0
  96. package/metaData/components/stepper/style.md +85 -0
  97. package/metaData/components/steps/api.md +49 -0
  98. package/metaData/components/steps/style.md +304 -0
  99. package/metaData/components/sticky/api.md +37 -0
  100. package/metaData/components/sticky/style.md +5 -0
  101. package/metaData/components/swipe-action/api.md +36 -0
  102. package/metaData/components/swipe-action/style.md +89 -0
  103. package/metaData/components/swipe-load/api.md +35 -0
  104. package/metaData/components/swipe-load/style.md +29 -0
  105. package/metaData/components/switch/api.md +30 -0
  106. package/metaData/components/switch/style.md +158 -0
  107. package/metaData/components/tab-bar/api.md +49 -0
  108. package/metaData/components/tab-bar/style.md +57 -0
  109. package/metaData/components/tabs/api.md +179 -0
  110. package/metaData/components/tabs/style.md +436 -0
  111. package/metaData/components/tag/api.md +72 -0
  112. package/metaData/components/tag/style.md +133 -0
  113. package/metaData/components/textarea/api.md +59 -0
  114. package/metaData/components/textarea/style.md +37 -0
  115. package/metaData/components/toast/api.md +82 -0
  116. package/metaData/components/toast/style.md +93 -0
  117. package/metaData/components/transition/api.md +11 -0
  118. package/metaData/components/transition/style.md +28 -0
  119. package/metaData/components/uploader/api.md +74 -0
  120. package/metaData/components/uploader/style.md +86 -0
  121. package/metaData/tokens.json +2358 -0
  122. package/package.json +1 -1
@@ -0,0 +1,93 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |direction|菜单滑出方向|"left" \| "right" \| "top" \| "bottom"|"bottom"|
6
+ |needBottomOffset|从底部滑出的菜单内容是否适配ipx底部|boolean|false|
7
+ |translateZ|\[即将废弃\] 开启translateZ强制提升|boolean|false|
8
+ |maskTransitionTimeout|菜单蒙层动画时长|number \| \{ appear?: number; enter?: number; exit?: number; \}|{ enter: 450, exit: 240 }|
9
+ |contentTransitionTimeout|菜单内容动画时长|number \| \{ appear?: number; enter?: number; exit?: number; \}|{ enter: 450, exit: 240 }|
10
+ |contentTransitionType|内容过渡动画类名|string|\`slide-from-${props.direction}\`|
11
+ |className|自定义类名|string|-|
12
+ |maskClass|自定义蒙层类名|string|-|
13
+ |maskStyle|自定义蒙层样式|CSSProperties|-|
14
+ |contentClass|自定义内容类名|string|-|
15
+ |contentStyle|自定义内容样式|CSSProperties|-|
16
+ |visible|是否展示菜单(受控)|boolean|必填|
17
+ |close|关闭菜单方法|(e: MouseEvent\<HTMLElement, MouseEvent\>) =\> void|必填|
18
+ |maskTransitionType|蒙层过渡动画类名|string|"fade"|
19
+ |contentTransitionVarType|内容过渡动画类名变量标识|string|-|
20
+ |children|菜单内部内容|ReactNode|-|
21
+ |maskClosable|点击蒙层是否关闭菜单|boolean|true|
22
+ |animatingClosable|执行进场动画时点击蒙层是否可关闭菜单|boolean|false|
23
+ |mountOnEnter|是否在打开菜单时再加载内容|boolean|true|
24
+ |unmountOnExit|是否在退出时卸载内容|boolean|true|
25
+ |orientationDirection|transform方向,用于通过transform模拟横屏的情况|"left" \| "right" \| "top" \| "bottom"|"top"|
26
+ |preventBodyScroll|弹窗打开时是否禁止body的滚动|boolean|true|
27
+ |initialBodyOverflow|页面初始 overflow 状态,即关闭弹窗时 overflow 应该还原的状态|string|第一个全屏组件(弹窗、toast等)打开时页面overflow值|
28
+ |gestureOutOfControl|是否禁用滚动容器手势判断,禁用后交给业务方自己判断|boolean|false|
29
+ |onClose|关闭后回调(动画执行完毕)|(scene?: string) =\> void|-|
30
+ |onOpen|打开后回调(动画执行完毕)|() =\> void|-|
31
+ |onMaskClick|点击蒙层回调,maskClosable=false时也会触发|() =\> void|-|
32
+ |onTouchMove|弹窗的touchmove回调|(e: TouchEvent, prevented: boolean, direction: "x" \| "y") =\> void|-|
33
+ |onPreventTouchMove|非滚动区域或滚动到顶部及底部时的触摸事件回调|(e: TouchEvent, direction: "x" \| "y") =\> void|-|
34
+ |getContainer|获取挂载容器|() =\> HTMLElement|-|
35
+ |getScrollContainer|内容内部滚动区域容器,在该容器中未滚动到顶部或底部时会释放滚动|() =\> HTMLElement \| HTMLElement\[\]|-|
36
+
37
+ > 引用/Refs
38
+
39
+ |参数|描述|类型|
40
+ |----------|-------------|------|
41
+ |dom|最外层元素 DOM|HTMLDivElement|
42
+ |mask|蒙层 DOM|HTMLDivElement|
43
+ |content|内容 DOM|HTMLDivElement|
44
+ |setCloseScene|在关闭弹窗前修改 onClose 的 scene 参数值|(scene: string) =\> void|
45
+
46
+ > 方法/Methods
47
+
48
+ |方法名|描述|类型|
49
+ |----------|-------------|------|
50
+ |open|打开弹出层|(config: PopupProps) =\> \{ close: () =\> void; update: (newConfig: PopupProps) =\> void; \}|
51
+
52
+ > DirectionType
53
+
54
+ ```
55
+ "left" | "right" | "top" | "bottom"
56
+ ```
57
+
58
+ > GlobalContextParams
59
+
60
+ |参数|描述|类型|默认值|
61
+ |----------|-------------|------|------|
62
+ |prefixCls|组件类名前缀|string|"arco"|
63
+ |system|手动控制当前所在系统,传入后将直接使用传入的值,ssr场景需指定系统初始值时适用|"" \| "pc" \| "android" \| "ios"|""|
64
+ |useDarkMode|是否监听系统原生的暗黑模式变化(prefers\-color\-scheme: dark)以判断是否切为暗黑模式|boolean|false|
65
+ |isDarkMode|是否处于暗黑模式,指定后以指定的值为准|boolean|false|
66
+ |darkModeSelector|当处于暗黑模式时,body上挂载的类名,为空值时不挂载类名|string|"arco-theme-dark"|
67
+ |theme|主题变量,传入后将在线替换css变量,需设置less变量 @use\-css\-vars: 1|Record\<string, string\>|-|
68
+ |locale|国际化语言包配置|ILocale|-|
69
+ |useRtl|是否使用Rtl模式|boolean|false|
70
+ |onDarkModeChange|当系统原生暗黑模式发生变化时触发,useDarkMode=true 时有效|(isDark: boolean) =\> void|-|
71
+ |createRoot|React19 修改了 createRoot 的引入路径,导致组件内部无法直接引入(低react版本会找不到模块)。因此使用 react 19 的用户需从外部传入 createRoot 方法|CreateRootFnType|-|
72
+
73
+ > ILocale
74
+
75
+ |参数|描述|类型|
76
+ |----------|-------------|------|
77
+ |locale|语言类型|string|
78
+ |LoadMore|-|\{ loadMoreText: string; loadingText: string; noDataText: string; failLoadText: string; prepareScrollText: string; prepareClickText: string; \}|
79
+ |Picker|-|\{ okText: string; cancelText: string; \}|
80
+ |Tag|-|\{ addTag: string; \}|
81
+ |Dialog|-|\{ okText: string; cancelText: string; \}|
82
+ |SwipeLoad|-|\{ normalText: string; activeText: string; \}|
83
+ |PullRefresh|-|\{ loadingText: string; pullingText: string; finishText: string; loosingText: string; \}|
84
+ |DropdownMenu|-|\{ select: string; \}|
85
+ |Pagination|-|\{ previousPage: string; nextPage: string; \}|
86
+ |Image|-|\{ loadError: string; \}|
87
+ |ImagePicker|-|\{ loadError: string; \}|
88
+ |SearchBar|-|\{ placeholder: string; cancelBtn: string; \}|
89
+ |Stepper|-|\{ minusButtonName: string; addButtonName: string; \}|
90
+ |Keyboard|-|\{ confirm: string; \}|
91
+ |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; \}|
92
+ |NavBar|-|\{ backBtnAriaLabel: string; \}|
93
+ |Uploader|-|\{ uploadBtn: string; retryUpload: string; \}|
@@ -0,0 +1,115 @@
1
+ @import '../../../style/mixin.less';
2
+
3
+ .set-popup-transform(@transform) {
4
+
5
+ &-enter,
6
+ &-exit-active,
7
+ &-exit-done {
8
+ transform: @transform;
9
+
10
+ &.translateZ {
11
+ transform: @transform translateZ(2PX);
12
+ }
13
+ }
14
+ }
15
+
16
+ .@{prefix}-popup {
17
+ .@{prefix}-slide-from {
18
+ &-left {
19
+ .set-popup-transform(translate(-100%, 0));
20
+ }
21
+
22
+ &-right {
23
+ .set-popup-transform(translate(100%, 0));
24
+ }
25
+
26
+ &-top {
27
+ .set-popup-transform(translate(0, -100%));
28
+ }
29
+
30
+ &-bottom {
31
+ .set-popup-transform(translate(0, 100%));
32
+ }
33
+ }
34
+
35
+ &-content,
36
+ &-mask {
37
+ &[class*="-enter-active"] {
38
+ &.translateZ {
39
+ transform: translateZ(2PX);
40
+ }
41
+
42
+ transform: translate(0, 0);
43
+ .use-var(transition, popup-enter-transition);
44
+ }
45
+ }
46
+
47
+ [class*="-exit-active"] {
48
+ .use-var(transition, popup-exit-transition);
49
+ }
50
+
51
+ &-content {
52
+ &[class*="-enter-active"] {
53
+ transition-duration: var(--builtin-transition-popup-slide-enter-duration, 450ms);
54
+ }
55
+ &[class*="-exit-active"] {
56
+ transition-duration: var(--builtin-transition-popup-slide-exit-duration, 240ms);
57
+ }
58
+ &.need-bottom-offset {
59
+ padding-bottom: constant(safe-area-inset-bottom);
60
+ padding-bottom: env(safe-area-inset-bottom);
61
+ }
62
+
63
+ &.left {
64
+ left: 0;
65
+ top: 0;
66
+ height: 100%;
67
+ }
68
+
69
+ &.top {
70
+ left: 0;
71
+ top: 0;
72
+ width: 100%;
73
+ }
74
+
75
+ &.right {
76
+ right: 0;
77
+ top: 0;
78
+ height: 100%;
79
+ }
80
+
81
+ &.bottom {
82
+ left: 0;
83
+ bottom: 0;
84
+ width: 100%;
85
+ }
86
+
87
+ &.translateZ {
88
+ transform: translateZ(2PX);
89
+ }
90
+
91
+ .use-var(background, popup-content-background);
92
+ position: fixed;
93
+ z-index: @full-screen-z-index+1;
94
+ }
95
+
96
+ &-mask {
97
+ &[class*="-enter-active"] {
98
+ transition-duration: var(--builtin-transition-fade-enter-duration, 450ms);
99
+ }
100
+ &[class*="-exit-active"] {
101
+ transition-duration: var(--builtin-transition-fade-exit-duration, 240ms);
102
+ }
103
+ &.translateZ {
104
+ transform: translateZ(1PX);
105
+ }
106
+
107
+ position: fixed;
108
+ width: 100%;
109
+ height: 100%;
110
+ left: 0;
111
+ top: 0;
112
+ z-index: @full-screen-z-index;
113
+ .use-var(background, popup-mask-background);
114
+ }
115
+ }
@@ -0,0 +1,100 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |percentToClose|滑动超过内容的百分之多少时关闭弹窗,范围为\[0, 1\],如果该属性和\`distanceToClose\`属性均设置,则实际计算结果更大的生效|number|0.3|
6
+ |distanceToClose|滑动超过多少px时关闭弹窗,如果该属性和\`percentToClose\`属性均设置,则实际计算结果更大的生效|number|10|
7
+ |speedToClose|手指从按下到抬起之间的滑动速度超过多少时关闭弹窗(单位为px/s),与滑动关闭距离阈值同时设置时,满足其中一个即生效|number|200|
8
+ |allowSwipeDirections|自定义可手势滑动退出的方向,可指定多个方向|DirectionType\[\]|direction 属性指定的方向性|
9
+ |exitDirection|固定弹窗退出方向,默认跟随手势滑动方向|"left" \| "right" \| "top" \| "bottom"|-|
10
+ |onTouchStart|内容面板 touchstart 事件,返回true时表示阻止本组件内部处理事件|(e: TouchEvent) =\> boolean \| void|-|
11
+ |onTouchMove|内容面板 touchmove 事件,返回true时表示阻止本组件内部处理事件|(e: TouchEvent, prevented: boolean, direction: "x" \| "y") =\> boolean \| void|-|
12
+ |onTouchEnd|内容面板 touchend / touchcancel 事件,返回true时表示阻止本组件内部处理事件|(e: TouchEvent) =\> boolean \| void|-|
13
+ |direction|菜单滑出方向|"left" \| "right" \| "top" \| "bottom"|"bottom"|
14
+ |needBottomOffset|从底部滑出的菜单内容是否适配ipx底部|boolean|false|
15
+ |translateZ|\[即将废弃\] 开启translateZ强制提升|boolean|false|
16
+ |maskTransitionTimeout|菜单蒙层动画时长|number \| \{ appear?: number; enter?: number; exit?: number; \}|{ enter: 450, exit: 240 }|
17
+ |contentTransitionTimeout|菜单内容动画时长|number \| \{ appear?: number; enter?: number; exit?: number; \}|{ enter: 450, exit: 240 }|
18
+ |contentTransitionType|内容过渡动画类名|string|\`slide-from-${props.direction}\`|
19
+ |className|自定义类名|string|-|
20
+ |maskClass|自定义蒙层类名|string|-|
21
+ |maskStyle|自定义蒙层样式|CSSProperties|-|
22
+ |contentClass|自定义内容类名|string|-|
23
+ |contentStyle|自定义内容样式|CSSProperties|-|
24
+ |visible|是否展示菜单(受控)|boolean|必填|
25
+ |close|关闭菜单方法|(e: MouseEvent\<HTMLElement, MouseEvent\>) =\> void|必填|
26
+ |maskTransitionType|蒙层过渡动画类名|string|"fade"|
27
+ |contentTransitionVarType|内容过渡动画类名变量标识|string|-|
28
+ |children|菜单内部内容|ReactNode|-|
29
+ |maskClosable|点击蒙层是否关闭菜单|boolean|true|
30
+ |animatingClosable|执行进场动画时点击蒙层是否可关闭菜单|boolean|false|
31
+ |mountOnEnter|是否在打开菜单时再加载内容|boolean|true|
32
+ |unmountOnExit|是否在退出时卸载内容|boolean|true|
33
+ |orientationDirection|transform方向,用于通过transform模拟横屏的情况|"left" \| "right" \| "top" \| "bottom"|"top"|
34
+ |preventBodyScroll|弹窗打开时是否禁止body的滚动|boolean|true|
35
+ |initialBodyOverflow|页面初始 overflow 状态,即关闭弹窗时 overflow 应该还原的状态|string|第一个全屏组件(弹窗、toast等)打开时页面overflow值|
36
+ |gestureOutOfControl|是否禁用滚动容器手势判断,禁用后交给业务方自己判断|boolean|false|
37
+ |onClose|关闭后回调(动画执行完毕)|(scene?: string) =\> void|-|
38
+ |onOpen|打开后回调(动画执行完毕)|() =\> void|-|
39
+ |onMaskClick|点击蒙层回调,maskClosable=false时也会触发|() =\> void|-|
40
+ |onPreventTouchMove|非滚动区域或滚动到顶部及底部时的触摸事件回调|(e: TouchEvent, direction: "x" \| "y") =\> void|-|
41
+ |getContainer|获取挂载容器|() =\> HTMLElement|-|
42
+ |getScrollContainer|内容内部滚动区域容器,在该容器中未滚动到顶部或底部时会释放滚动|() =\> HTMLElement \| HTMLElement\[\]|-|
43
+
44
+ > 引用/Refs
45
+
46
+ |参数|描述|类型|
47
+ |----------|-------------|------|
48
+ |dom|最外层元素 DOM|HTMLDivElement|
49
+ |mask|蒙层 DOM|HTMLDivElement|
50
+ |content|内容 DOM|HTMLDivElement|
51
+ |setCloseScene|在关闭弹窗前修改 onClose 的 scene 参数值|(scene: string) =\> void|
52
+
53
+ > 方法/Methods
54
+
55
+ |方法名|描述|类型|
56
+ |----------|-------------|------|
57
+ |open|打开弹出层|(config: string \| PopupSwiperProps) =\> \{ close: () =\> void; update: (newConfig: PopupSwiperProps) =\> void; \}|
58
+
59
+ > DirectionType
60
+
61
+ ```
62
+ "left" | "right" | "top" | "bottom"
63
+ ```
64
+
65
+ > GlobalContextParams
66
+
67
+ |参数|描述|类型|默认值|
68
+ |----------|-------------|------|------|
69
+ |prefixCls|组件类名前缀|string|"arco"|
70
+ |system|手动控制当前所在系统,传入后将直接使用传入的值,ssr场景需指定系统初始值时适用|"" \| "pc" \| "android" \| "ios"|""|
71
+ |useDarkMode|是否监听系统原生的暗黑模式变化(prefers\-color\-scheme: dark)以判断是否切为暗黑模式|boolean|false|
72
+ |isDarkMode|是否处于暗黑模式,指定后以指定的值为准|boolean|false|
73
+ |darkModeSelector|当处于暗黑模式时,body上挂载的类名,为空值时不挂载类名|string|"arco-theme-dark"|
74
+ |theme|主题变量,传入后将在线替换css变量,需设置less变量 @use\-css\-vars: 1|Record\<string, string\>|-|
75
+ |locale|国际化语言包配置|ILocale|-|
76
+ |useRtl|是否使用Rtl模式|boolean|false|
77
+ |onDarkModeChange|当系统原生暗黑模式发生变化时触发,useDarkMode=true 时有效|(isDark: boolean) =\> void|-|
78
+ |createRoot|React19 修改了 createRoot 的引入路径,导致组件内部无法直接引入(低react版本会找不到模块)。因此使用 react 19 的用户需从外部传入 createRoot 方法|CreateRootFnType|-|
79
+
80
+ > ILocale
81
+
82
+ |参数|描述|类型|
83
+ |----------|-------------|------|
84
+ |locale|语言类型|string|
85
+ |LoadMore|-|\{ loadMoreText: string; loadingText: string; noDataText: string; failLoadText: string; prepareScrollText: string; prepareClickText: string; \}|
86
+ |Picker|-|\{ okText: string; cancelText: string; \}|
87
+ |Tag|-|\{ addTag: string; \}|
88
+ |Dialog|-|\{ okText: string; cancelText: string; \}|
89
+ |SwipeLoad|-|\{ normalText: string; activeText: string; \}|
90
+ |PullRefresh|-|\{ loadingText: string; pullingText: string; finishText: string; loosingText: string; \}|
91
+ |DropdownMenu|-|\{ select: string; \}|
92
+ |Pagination|-|\{ previousPage: string; nextPage: string; \}|
93
+ |Image|-|\{ loadError: string; \}|
94
+ |ImagePicker|-|\{ loadError: string; \}|
95
+ |SearchBar|-|\{ placeholder: string; cancelBtn: string; \}|
96
+ |Stepper|-|\{ minusButtonName: string; addButtonName: string; \}|
97
+ |Keyboard|-|\{ confirm: string; \}|
98
+ |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; \}|
99
+ |NavBar|-|\{ backBtnAriaLabel: string; \}|
100
+ |Uploader|-|\{ uploadBtn: string; retryUpload: string; \}|
@@ -0,0 +1,10 @@
1
+ @import '../../../style/mixin.less';
2
+
3
+ .@{prefix}-popup-swiper {
4
+ &.has-trans .@{prefix}-popup {
5
+ &-mask,
6
+ &-content {
7
+ .use-var(transition, popup-exit-transition);
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,6 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |children|被挂载的内容|ReactNode|-|
6
+ |getContainer|容器获取函数|() =\> HTMLElement|() => document.body|
@@ -0,0 +1 @@
1
+ // 这里啥也没有,但是为了兼容 babel-plugin-import的统一引用,还是需要创建下文件
@@ -0,0 +1,34 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |className|自定义类名|string|-|
6
+ |style|自定义样式|CSSProperties|-|
7
+ |percentPosition|文字显示位置|"left" \| "innerLeft" \| "right" \| "follow"|"center"|
8
+ |showPercent|是否显示进度条内部文字|boolean|true|
9
+ |percentage|进度环百分比|number|必填|
10
+ |renderPercent|进度条内部文字显示(一个函数,返回ReactNode类型,回调参数为当前进度百分比)|(percentage: number) =\> ReactNode|-|
11
+ |trackColor|轨道颜色|string|-|
12
+ |progressColor|进度条颜色|string|-|
13
+ |disabled|是否置灰|boolean|false|
14
+ |trackStroke|轨道粗细|number|一般默认为4,percentPosition=innerLeft 时为18,mode=nav时为2|
15
+ |progressStroke|进度条粗细|number|继承 trackStroke 值|
16
+ |duration|每增加step步长所需的毫秒数|number|300|
17
+ |step|步长(增加步长,以step增长)|number|1|
18
+ |filleted|进度条是否两端圆角|boolean|true|
19
+ |mountedTransition|初始化percentage时是否以动画形式过渡到目的值|boolean|true|
20
+ |mountedBezier|初始化时动画的贝塞尔曲线|BezierType|[0.34, 0.69, 0.1, 1]|
21
+ |mode|模式可选为nav或者base模式|"nav" \| "base"|"base"|
22
+ |top|距离屏幕顶部的距离(只有当mode为"nav"才有效)|number|0|
23
+
24
+ > 引用/Refs
25
+
26
+ |参数|描述|类型|
27
+ |----------|-------------|------|
28
+ |dom|最外层元素 DOM|HTMLDivElement|
29
+
30
+ > PercentPosition
31
+
32
+ ```
33
+ "left" | "innerLeft" | "right" | "follow"
34
+ ```
@@ -0,0 +1,114 @@
1
+ @import "../../../style/mixin.less";
2
+
3
+ .@{prefix}-progress {
4
+
5
+ &.progress-fixed {
6
+ position: fixed;
7
+ width: 100%;
8
+ .set-prop-with-rtl(left, 0);
9
+ z-index: @full-screen-z-index + 1;;
10
+ }
11
+
12
+ .progress-wrapper {
13
+ position: relative;
14
+ width: 100%;
15
+ display: flex;
16
+ align-items: center;
17
+
18
+ .progress-track {
19
+ width: 100%;
20
+ display: flex;
21
+ align-items: center;
22
+ .use-var(background-color, progress-track-color);
23
+ .use-var(height, progress-track-height);
24
+
25
+ &.position-innerLeft {
26
+ .use-var(height, progress-inner-track-height);
27
+ }
28
+
29
+ &.nav-mode {
30
+ .use-var(background-color, progress-nav-track-color);
31
+ .use-var(height, progress-nav-track-height);
32
+ }
33
+ }
34
+
35
+ .progress-bar {
36
+ height: 100%;
37
+ position: relative;
38
+ .use-var(background-color, progress-primary-color);
39
+
40
+ .wrapper {
41
+ position: absolute;
42
+ .set-prop-with-rtl(right, 0);
43
+ top: 50%;
44
+ transform: translateY(-50%);
45
+ }
46
+ }
47
+
48
+ .filleted {
49
+ border-radius: 100PX;
50
+ }
51
+
52
+ .text {
53
+ .use-var(font-size, progress-text-font-size);
54
+ .use-var-with-rtl(margin-left, progress-text-gutter);
55
+ .use-var(color, progress-primary-color);
56
+ }
57
+
58
+ .text-left {
59
+ .set-prop-with-rtl(margin-left, 0);
60
+ .use-var-with-rtl(margin-right, progress-text-gutter);
61
+ }
62
+
63
+ .text-innerLeft {
64
+ position: absolute;
65
+ z-index: 1;
66
+ .use-var(color, progress-text-inner-color);
67
+ }
68
+
69
+ .text-center {
70
+ position: absolute;
71
+ left: 50%;
72
+ top: 50%;
73
+ z-index: 1;
74
+ transform: translate(-50%, -50%);
75
+ .use-var(color, progress-text-inner-color);
76
+ }
77
+
78
+ .text-follow {
79
+ display: flex;
80
+ justify-content: center;
81
+ align-items: center;
82
+ .use-var(width, progress-text-follow-width);
83
+ .use-var(height, progress-text-follow-height);
84
+ .use-var(border-radius, progress-text-follow-border-radius);
85
+ .use-var(font-size, progress-text-follow-font-size);
86
+ .use-var(color, progress-text-inner-color);
87
+ .use-var(background-color, progress-primary-color);
88
+ }
89
+
90
+ .track-color {
91
+ .use-var(background-color, progress-track-color); }
92
+
93
+ .color {
94
+ .use-var(stroke, progress-primary-color);
95
+ .use-var(color, progress-primary-color);
96
+ }
97
+
98
+ .bar-disabled {
99
+ .use-var(background-color, progress-disabled-color);
100
+ }
101
+
102
+ .text-disabled {
103
+ .use-var(color, progress-disabled-text-color);
104
+ }
105
+
106
+ .inner-disabled {
107
+ .use-var(color, progress-text-inner-color);
108
+
109
+ &.inner-block-disabled {
110
+ .use-var(background-color, progress-disabled-color);
111
+ }
112
+ }
113
+ }
114
+ }
@@ -0,0 +1,29 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |type|下拉刷新组件不同的实现方式,android \- 常规的外层容器 transform,ios \- 利用 ios scrollTop 负值实现下拉及回弹(性能优于transform),仅ios可用。指定该属性值后优先级高于 useIosOptimize|"ios" \| "android"|跟随系统|
6
+ |useIosOptimize|在 ios 上是否使用 scrollTop 负值实现下拉及回弹,而不是 transform,关闭后所有机型都使用 transform 的方式|boolean|false|
7
+ |children|子元素|ReactNode|必填|
8
+ |className|样式类名|string|-|
9
+ |style|自定义样式|CSSProperties|-|
10
+ |disabled|是否禁用|boolean|false|
11
+ |finishDelay|加载完成后,展示加载完成的时间(ms)|number|300|
12
+ |loosingText|下拉到可释放时的展示元素(type 为 ios 失效)|ReactNode|-|
13
+ |loadingText|加载中的展示元素|ReactNode|-|
14
+ |pullingText|下拉时的展示元素|ReactNode|-|
15
+ |finishText|加载完成的展示元素|ReactNode|-|
16
+ |initialText|初始状态还未下拉时的展示元素|ReactNode|pullingText属性值|
17
+ |dampRate|阻尼系数(type 为 ios 失效)|number|4|
18
+ |onRefresh|刷新触发事件|() =\> Promise\<void\>|-|
19
+ |useHideAsNestedScroll|惯性滑动时隐藏展示元素|boolean|true|
20
+ |loosingMinHeight|释放可刷线的最小距离(px)|number|loosingText 的高度|
21
+ |allowPullWhenNotTop|未滚到顶部时向下滑动也允许触发下拉刷新,可能影响ios回弹动画效果|boolean|false|
22
+
23
+ > 引用/Refs
24
+
25
+ |参数|描述|类型|
26
+ |----------|-------------|------|
27
+ |dom|最外层元素 DOM|HTMLDivElement|
28
+ |refresh|主动触发刷新,执行完成动画后异步返回|() =\> Promise\<void\>|
29
+ |updateIOSHeight|手动更新 IOS 容器自动高度|() =\> void|
@@ -0,0 +1,86 @@
1
+ @import "../../../style/mixin.less";
2
+
3
+ .@{prefix}-pull-refresh {
4
+ position: relative;
5
+ width: 100%;
6
+ height: 100%;
7
+ overflow-y: auto;
8
+ -webkit-overflow-scrolling: touch;
9
+
10
+ &::-webkit-scrollbar {
11
+ display: none;
12
+ }
13
+
14
+ &.is-disabled,
15
+ &-content,
16
+ &-content-wrapper {
17
+ .use-var(background, pull-refresh-content-background-color);
18
+ }
19
+
20
+ &-content {
21
+ min-height: 100%;
22
+ }
23
+
24
+ &.is-ios &-content-wrapper {
25
+ list-style-type: none;
26
+ padding: 0;
27
+ padding-bottom: 1PX;
28
+ margin: 0;
29
+ min-height: 100%;
30
+ box-sizing: content-box;
31
+ transform: translateZ(0);
32
+ }
33
+
34
+ &-label {
35
+ position: absolute;
36
+ display: flex;
37
+ width: 100%;
38
+ height: fit-content;
39
+ justify-content: center;
40
+ align-items: center;
41
+ z-index: -1;
42
+ .use-var(font-size, pull-refresh-label-font-size);
43
+ .use-var(background, pull-refresh-label-background-color);
44
+ }
45
+
46
+ &-label-wrapper {
47
+ position: absolute;
48
+ left: 0;
49
+ width: 100%;
50
+ overflow-y: auto;
51
+ }
52
+
53
+ &-place {
54
+ position: relative;
55
+ height: 100%;
56
+ }
57
+
58
+ &-label-text {
59
+ display: flex;
60
+ .rem(font-size, 14);
61
+ .rem(line-height, 44);
62
+ .use-var(color, pull-refresh-label-text-color);
63
+ .set-loading-color-var(pull-refresh-label-loading-color);
64
+ align-items: center;
65
+ .@{prefix}-loading + span {
66
+ .rem-with-rtl(margin-left, 10);
67
+ }
68
+ }
69
+
70
+ &.is-android &-label {
71
+ top: 0;
72
+ transform: translateY(-100%);
73
+ }
74
+
75
+ &.is-ios &-label {
76
+ position: absolute;
77
+ bottom: 0;
78
+ overflow-y: auto;
79
+ .rem(font-size, 14);
80
+
81
+ &-wrapper {
82
+ will-change: height;
83
+ z-index: -1;
84
+ }
85
+ }
86
+ }
@@ -0,0 +1,81 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |label|选项的文字说明,传入children时此属性无效|string|""|
6
+ |value|Checkbox的值|ValueType|必填|
7
+ |defaultCheck|默认选中状态|boolean|false|
8
+ |checked|是否选中,传值即为受控模式|boolean|-|
9
+ |onChange|复选框选中状态回调函数|(checked: boolean, value: ValueType, e: MouseEvent\<Element, MouseEvent\>) =\> void|() => {}|
10
+ |shape|图标的形状|"circle" \| "square"|'circle'|
11
+ |layout|排版样式(内联\|块级\|图标靠右两端对齐)|"inline" \| "block" \| "justify"|'inline'|
12
+ |disabled|是否禁用|boolean|false|
13
+ |icons|自定义图标合集,传 null 表示无图标|IconType|Default icon|
14
+ |isRadio|是否为Radio组件,不推荐使用,仅用于支持Radio组件|boolean|false|
15
+ |children|自定义组件内容|ReactNode|null|
16
+ |className|自定义类名|string|""|
17
+ |style|自定义样式|CSSProperties|{}|
18
+
19
+ > 引用/Refs
20
+
21
+ |参数|描述|类型|
22
+ |----------|-------------|------|
23
+ |dom|组件外层dom元素|HTMLDivElement|
24
+
25
+ > Radio.Group
26
+
27
+ 单选项组
28
+
29
+ |参数|描述|类型|默认值|
30
+ |----------|-------------|------|------|
31
+ |options|可选项, 传入children后此值无效|(RadioProps\<ValueType\> & RefAttributes\<RadioRef\>)\[\]|-|
32
+ |value|受控模式,选中的选项,传null表示取消选中|ValueType|-|
33
+ |defaultValue|默认选中项|ValueType|-|
34
+ |onChange|单选项组选中状态变化回调函数|(value: ValueType) =\> void|-|
35
+ |shape|图标的形状|"circle" \| "square"|'circle'|
36
+ |layout|排版样式(内联\|块级\|图标靠右两端对齐)|"inline" \| "block" \| "justify"|'inline'|
37
+ |disabled|是否禁用|boolean|false|
38
+ |icons|自定义图标合集,传 null 表示无图标|IconType|Default icon|
39
+ |isRadio|是否为Radio组件,不推荐使用,仅用于支持Radio组件|boolean|false|
40
+ |children|自定义组件内容|ReactNode|null|
41
+ |className|自定义类名|string|""|
42
+ |style|自定义样式|CSSProperties|{}|
43
+
44
+ > ValueType
45
+
46
+ ```
47
+ string | number
48
+ ```
49
+
50
+ > IconType
51
+
52
+ |参数|描述|类型|
53
+ |----------|-------------|------|
54
+ |normal|未选中|ReactNode|
55
+ |active|选中态|ReactNode|
56
+ |disabled|禁用态|ReactNode|
57
+ |activeDisabled|禁用选中态|ReactNode|
58
+
59
+ > RadioProps
60
+
61
+ |参数|描述|类型|默认值|
62
+ |----------|-------------|------|------|
63
+ |label|选项的文字说明,传入children时此属性无效|string|""|
64
+ |value|Checkbox的值|ValueType|必填|
65
+ |defaultCheck|默认选中状态|boolean|false|
66
+ |checked|是否选中,传值即为受控模式|boolean|-|
67
+ |onChange|复选框选中状态回调函数|(checked: boolean, value: ValueType, e: MouseEvent\<Element, MouseEvent\>) =\> void|() => {}|
68
+ |shape|图标的形状|"circle" \| "square"|'circle'|
69
+ |layout|排版样式(内联\|块级\|图标靠右两端对齐)|"inline" \| "block" \| "justify"|'inline'|
70
+ |disabled|是否禁用|boolean|false|
71
+ |icons|自定义图标合集,传 null 表示无图标|IconType|Default icon|
72
+ |isRadio|是否为Radio组件,不推荐使用,仅用于支持Radio组件|boolean|false|
73
+ |children|自定义组件内容|ReactNode|null|
74
+ |className|自定义类名|string|""|
75
+ |style|自定义样式|CSSProperties|{}|
76
+
77
+ > RadioGroupRef
78
+
79
+ |参数|描述|类型|
80
+ |----------|-------------|------|
81
+ |dom|组件外层dom元素|HTMLDivElement|