@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,151 @@
1
+ @import '../../../style/mixin.less';
2
+
3
+ @size-map: huge, large, medium, small, mini;
4
+
5
+ .button-has-border(@color) {
6
+ .use-var(border, @color, 1PX solid);
7
+ &.half-border {
8
+ border-width: 0;
9
+ .hairline-var(@color);
10
+ }
11
+ }
12
+
13
+ .button-has-border-value(@value) {
14
+ border: 1PX solid @value;
15
+ &.half-border {
16
+ border-width: 0;
17
+ .hairline(@value);
18
+ }
19
+ }
20
+
21
+ .button-no-border() {
22
+ border-width: 0;
23
+ box-shadow: none;
24
+ }
25
+
26
+ .button-text-size(@font-size) {
27
+ .@{prefix}-button-icon,
28
+ i,
29
+ .@{prefix}-button-text,
30
+ svg {
31
+ .use-var(font-size, @font-size);
32
+ }
33
+ }
34
+
35
+ .button-size-height(@height) {
36
+ .use-var(height, @height);
37
+ &-is-round {
38
+ .use-var(border-radius, @height);
39
+ }
40
+ &-is-square {
41
+ .rem(border-radius, 0);
42
+ }
43
+ }
44
+
45
+ .@{prefix}-button {
46
+ cursor: pointer;
47
+ text-align: center;
48
+ line-height: 1.2;
49
+ font-size: 0;
50
+ display: block;
51
+ width: 100%;
52
+ box-sizing: border-box;
53
+ .use-var(line-height, button-line-height);
54
+ .use-var(border-radius, button-radius);
55
+ .noselect();
56
+
57
+ &&-inline {
58
+ width: auto;
59
+ display: inline-block;
60
+ }
61
+
62
+ &&-type-primary {
63
+ .use-var(background, button-primary-background);
64
+ .use-var(color, button-primary-text-color);
65
+ &-disabled {
66
+ .use-var(background, button-primary-disabled-background);
67
+ .use-var(color, button-primary-disabled-text-color)
68
+ }
69
+ &-active {
70
+ .use-var(background, button-primary-clicked-background);
71
+ }
72
+ }
73
+ &-type-primary {
74
+ .set-loading-color-var(button-primary-text-color);
75
+ }
76
+
77
+ &&-type-default {
78
+ .use-var(background, button-default-background);
79
+ .use-var(color, button-default-text-color);
80
+ &-disabled {
81
+ .use-var(background, button-default-disabled-background);
82
+ .use-var(color, button-default-disabled-text-color)
83
+ }
84
+ &-active {
85
+ .use-var(background, button-default-clicked-background);
86
+ }
87
+ }
88
+ &-type-default {
89
+ .set-loading-color-var(button-default-text-color);
90
+ }
91
+
92
+ &&-type-ghost {
93
+ .use-var(background, button-ghost-background);
94
+ .use-var(color, button-ghost-text-color);
95
+ &-disabled {
96
+ .use-var(background, button-ghost-disabled-background);
97
+ .use-var(color, button-ghost-disabled-text-color)
98
+ }
99
+ &-active {
100
+ .use-var(background, button-ghost-clicked-background);
101
+ }
102
+ }
103
+ &-type-ghost {
104
+ .set-loading-color-var(button-ghost-text-color);
105
+ }
106
+
107
+ &&-type-ghost {
108
+ .button-has-border-value(currentColor);
109
+ }
110
+
111
+ .set-button-size(length(@size-map));
112
+
113
+ &-text-android {
114
+ .rem(padding-top, 2);
115
+ }
116
+
117
+ &-icon {
118
+ vertical-align: middle;
119
+ display: inline-flex;
120
+ align-items: center;
121
+ justify-content: center;
122
+ }
123
+ &-text {
124
+ display: inline-block;
125
+ vertical-align: middle;
126
+ }
127
+ &-text-has-icon {
128
+ .use-var-with-rtl(margin-left, button-icon-text-gutter);
129
+ }
130
+
131
+ &-loading-icon {
132
+ display: inline-block;
133
+ vertical-align: middle;
134
+ }
135
+
136
+ &.has-custom-border {
137
+ border: 1PX solid;
138
+ }
139
+ }
140
+
141
+ .set-button-size(@index) when (@index > 0) {
142
+ @size: extract(@size-map, @index);
143
+
144
+ &&-size-@{size} {
145
+ .use-var(padding, "button-@{size}-padding");
146
+ .button-size-height("button-@{size}-height");
147
+ .button-text-size("button-@{size}-text-size");
148
+ }
149
+
150
+ .set-button-size(@index - 1);
151
+ }
@@ -0,0 +1,81 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |className|样式类名|string|-|
6
+ |wrapStyle|最外层容器自定义样式|CSSProperties|-|
7
+ |style|内层轮播容器自定义样式|CSSProperties|-|
8
+ |children|轮播内部内容|ReactNode|-|
9
+ |list|轮播图片列表,省略子元素的简写,传入图片url数组,也可通过\`text\`指定图片底部的蒙层文字内容|CarouselListItem\[\]|-|
10
+ |animateDuration|自动切换轮播滑块时,动画的执行时间(ms)|number|500|
11
+ |animateDurationSlide|手动切换轮播滑块时,当手指释放后,动画的执行时间(ms)|number|300|
12
+ |loop|是否开启循环轮播,当指定轮播滑块宽度时该属性不生效|boolean|true|
13
+ |autoPlay|是否开启自动播放|boolean|true|
14
+ |autoPlayDirection|自动播放方向|"normal" \| "reverse"|"normal"|
15
+ |swipeable|是否响应手势滑动|boolean|true|
16
+ |stayDuration|开启自动播放时,每一个滑块的停留时间(ms)|number|4000|
17
+ |boxWidth|指定容器宽度,默认为基于父容器100%|ReactText|-|
18
+ |boxHeight|指定容器高度,默认为自适应高度;当设置\`vertical=true\`时,该属性为必填|ReactText|-|
19
+ |baseBoxWidth|指定初始容器宽度,常用于ssr首屏初始化,水平轮播时可用|number|-|
20
+ |baseBoxHeight|指定初始容器宽度,常用于ssr首屏初始化,垂直轮播时可用|number|-|
21
+ |width|指定轮播滑块宽度,为0或不传时为默认的父容器宽度|number|0|
22
+ |height|指定轮播滑块高度,如不指定则为自适应高度|number|-|
23
+ |initialIndex|默认选中的滑块索引|number|0|
24
+ |renderIndicator|自定义轮播索引|(currentIndex: number, total: number, lastIndex: number) =\> ReactNode|-|
25
+ |indicatorPos|轮播索引位置|"start" \| "center" \| "end"|"center"|
26
+ |indicatorVerticalPos|垂直轮播索引横向位置|"left" \| "right"|"left"|
27
+ |indicatorOutside|轮播索引是否放轮播图外面|boolean|-|
28
+ |showIndicator|是否展示轮播索引|boolean|true|
29
+ |hideSingleIndicator|children 只有一个时隐藏轮播索引|boolean|true|
30
+ |indicatorType|轮播索引样式类型|"square" \| "circle"|"square"|
31
+ |indicatorClass|轮播索引类名|string|-|
32
+ |indicatorInverse|轮播索引是否反色,默认根据索引是否放在外面决定|boolean|-|
33
+ |spaceBetween|子元素间距|number|0|
34
+ |offsetBetween|前后两端露出距离,设置值时不能循环轮播|number \| \{ left?: number; right?: number; \}|0|
35
+ |currentIndex|手动控制当前展示元素|number|-|
36
+ |autoHeight|容器高度自适应|boolean|false|
37
+ |percentToChange|滑动切换距离阈值(宽度比例),范围为\[0, 1\],如果该属性和\`distanceToChange\`属性均设置,则实际计算结果更大的生效|number|0.3|
38
+ |distanceToChange|滑动切换距离阈值(固定px宽度),如果该属性和\`percentToChange\`属性均设置,则实际计算结果更大的生效|number|10|
39
+ |speedToChange|滑动切换速度阈值(手指从按下到抬起之间的滑动速度,单位为px/s),与滑动切换距离阈值同时设置时,满足其中一个即生效|number|200|
40
+ |vertical|是否垂直轮播,设置后\`boxHeight\`属性必填|boolean|-|
41
+ |lazyloadCount|只加载当前页相邻的n个内容,为0时会销毁所有相邻内容,不传则加载所有内容|number|-|
42
+ |stopTouchThreshold|触发onTouchStopped的最小阈值|number|0|
43
+ |bounceWhenNoLoop|当不可循环时,是否开启滑动到最前或最后时的回弹效果|boolean|false|
44
+ |bounceDampRate|当开启最前或最后时的回弹效果时的阻尼系数|number|3|
45
+ |inactiveScale|非active的滑块的大小比例,\[0, 1\]的小数,设置后切换时将有放大效果|number|-|
46
+ |stopPropagation|触摸事件是否需要 stopPropagation|boolean|true|
47
+ |fakeItem|是否需要fake首尾item,用于offsetBetween不等于0时循环轮播的衔接|boolean|false|
48
+ |allowEndBlank|滑动到最后时是否允许留白,仅在loop=false且设置了width时有效|boolean|false|
49
+ |iOSVisibleOptimize|在iOS下是否需要在切屏时做DOM强刷优化,用于修复iOS息屏时自动播放的蜜汁渲染问题|boolean|true|
50
+ |renderExtra|在轮播图内部渲染额外元素,该元素不随轮播滑动,但处于手指可交互热区|(currentIndex: number) =\> ReactNode|-|
51
+ |distanceProcessor|自定义手指滑动跟手的距离计算方式,posDis表示touchmove的距离,wrapSize表示容器在滑动方向的尺寸,childSize表示滑块在滑动方向的尺寸|(posDis: number, wrapSize: number, childSize: number) =\> number|(posDis, wrapSize, childSize) => childSize * (posDis / wrapSize)|
52
+ |getInnerScrollContainer|组件内部的滚动容器,用于豁免滑动事件响应|() =\> HTMLElement \| HTMLElement\[\]|-|
53
+ |onTouchStopped|当轮播不支持循环且滑到最前面或最后面,还想再滑动时触发|(direction: 1 \| \-1) =\> void|-|
54
+ |onChange|轮播滑块切换时触发|(index: number) =\> void|-|
55
+ |onAfterChange|轮播滑块切换,动画完成后触发|(index: number, oldIndex: number) =\> void|-|
56
+ |onTouchStart|轮播内容touchstart事件|(e: TouchEvent, total: number, index: number) =\> boolean \| void|-|
57
+ |onTouchMove|轮播内容touchmove事件|(e: TouchEvent, total: number, index: number) =\> boolean \| void|-|
58
+ |onTouchEnd|轮播内容touchend / touchcancel事件|(e: TouchEvent, total: number, index: number) =\> boolean \| void|-|
59
+ |onTransitionStart|轮播切换动画开始时回调|() =\> void|-|
60
+ |onTransitionEnd|轮播切换动画结束时回调|() =\> void|-|
61
+ |onDistanceChange|轮播左右滑动时回调,用于监听滑动距离以做滑动同步交互|(distance: number, wrapSize: number, activeIndex: number) =\> void|-|
62
+ |onPageVisibleChange|自定义页面展示隐藏监听,默认在document监听visibilitychange事件,返回function用于在组件卸载时移除监听|(updateWhenVisible: () =\> void, updateWhenInvisible: () =\> void) =\> () =\> void|-|
63
+
64
+ > 引用/Refs
65
+
66
+ |参数|描述|类型|
67
+ |----------|-------------|------|
68
+ |dom|最外层元素 DOM|HTMLDivElement|
69
+ |wrap|轮播图子项包裹容器 DOM,承载了 touch 相关事件|HTMLDivElement|
70
+ |items|轮播图每个子项的 DOM|HTMLDivElement\[\]|
71
+ |noLoop|在某些条件下内部会禁用循环轮播,这里表示循环是否被禁用|boolean|
72
+ |updateData|手动重新计算布局|() =\> void|
73
+ |changeIndex|手动更新当前选中索引,rightNow 表示是否立刻跳转到目标索引,否则执行过渡动画到目标索引|(newIndex: number, rightNow?: boolean, direction?: "left" \| "right") =\> void|
74
+
75
+ > CarouselListItem
76
+
77
+ |参数|描述|类型|
78
+ |----------|-------------|------|
79
+ |src|图片链接|string|
80
+ |text|图片底部固定的文字|ReactNode|
81
+ |onClick|点击图片回调|(e: MouseEvent\<HTMLImageElement, MouseEvent\>) =\> void|
@@ -0,0 +1,208 @@
1
+ @import "../../../style/mixin.less";
2
+
3
+ .@{prefix}-carousel {
4
+
5
+ &-wrap {
6
+ position: relative;
7
+ font-size: 0;
8
+ width: 100%;
9
+ }
10
+ position: relative;
11
+ width: 100%;
12
+ overflow: hidden;
13
+ transition: height .3s;
14
+ box-sizing: content-box;
15
+
16
+ &.wrap-placeholder {
17
+ display: none;
18
+ }
19
+
20
+ &-inner {
21
+ overflow: visible;
22
+
23
+ &:not(.vertical) {
24
+ white-space: nowrap;
25
+ }
26
+
27
+ &.auto,
28
+ &.auto &-item-inner {
29
+ .use-var(transition-timing-function, carousel-auto-transition);
30
+ }
31
+
32
+ &.slide,
33
+ &.slide &-item-inner {
34
+ .use-var(transition-timing-function, carousel-slide-transition);
35
+ }
36
+ }
37
+
38
+ &-item {
39
+ width: 100%;
40
+ height: 100%;
41
+ display: inline-block;
42
+ vertical-align: top;
43
+ white-space: normal;
44
+ position: relative;
45
+
46
+ &.ssr-float {
47
+ max-height: 0;
48
+ overflow: visible;
49
+ }
50
+
51
+ &.vertical > *,
52
+ &.vertical &-inner > * {
53
+ height: 100%;
54
+ }
55
+
56
+ & > img,
57
+ &-inner > img,
58
+ .carousel-item-img {
59
+ width: 100%;
60
+ height: 100%;
61
+ object-fit: cover;
62
+ object-position: center;
63
+ }
64
+
65
+ .carousel-item-text {
66
+ position: absolute;
67
+ bottom: 0;
68
+ left: 0;
69
+ width: 100%;
70
+ display: flex;
71
+ align-items: center;
72
+ box-sizing: border-box;
73
+ .use-var(padding, carousel-item-text-padding);
74
+ .use-var(font-size, carousel-item-text-font-size);
75
+ .use-var(height, carousel-item-text-height);
76
+ .use-var(color, carousel-item-text-color);
77
+ .use-var(background, carousel-item-text-background);
78
+ }
79
+
80
+ &-inner {
81
+ width: 100%;
82
+ height: 100%;
83
+ }
84
+
85
+ &-inner {
86
+ width: 100%;
87
+ height: 100%;
88
+ }
89
+ }
90
+
91
+ &-indicator {
92
+ position: absolute;
93
+ .use-var(bottom, carousel-indicator-position);
94
+ z-index: 1;
95
+ will-change: transform;
96
+ box-sizing: border-box;
97
+
98
+ &.pos-start {
99
+ .use-var-with-rtl(left, carousel-indicator-safe-padding);
100
+ .set-value-with-rtl(text-align, left);
101
+ }
102
+
103
+ &.pos-center {
104
+ left: 50%;
105
+ transform: translate3d(-50%, 0, 0);
106
+ text-align: center;
107
+ }
108
+
109
+ &.pos-end {
110
+ .use-var-with-rtl(right, carousel-indicator-safe-padding);
111
+ .set-value-with-rtl(text-align, right);
112
+ }
113
+
114
+ &-vertical {
115
+
116
+ .indicator {
117
+ display: block;
118
+ box-sizing: border-box;
119
+ .use-var(height, carousel-square-indicator-width);
120
+ .use-var(width, carousel-square-indicator-height);
121
+
122
+ &:not(:last-of-type) {
123
+ margin: 0;
124
+ .use-var(margin-bottom, carousel-square-indicator-gutter);
125
+ }
126
+
127
+ &.type-circle:not(:last-of-type) {
128
+ margin: 0;
129
+ .use-var(margin-bottom, carousel-circle-indicator-gutter);
130
+ }
131
+ }
132
+
133
+ &.pos-start {
134
+ .use-var(top, carousel-indicator-safe-padding);
135
+ }
136
+
137
+ &.pos-center {
138
+ bottom: 50%;
139
+ transform: translate3d(0, 50%, 0);
140
+ }
141
+
142
+ &.pos-end {
143
+ .use-var(bottom, carousel-indicator-safe-padding);
144
+ }
145
+
146
+ &.ver-pos-left {
147
+ left: auto;
148
+ right: auto;
149
+ .use-var-with-rtl(left, carousel-indicator-position);
150
+ }
151
+
152
+ &.ver-pos-right {
153
+ left: auto;
154
+ right: auto;
155
+ .use-var-with-rtl(right, carousel-indicator-position);
156
+ }
157
+ }
158
+
159
+ &.inverse {
160
+
161
+ .indicator {
162
+ .use-var(background-color, carousel-indicator-inverse-background);
163
+
164
+ &.active {
165
+ .use-var(background-color, carousel-indicator-active-inverse-background);
166
+ }
167
+ }
168
+ }
169
+
170
+ &.outside {
171
+ position: relative;
172
+ left: 0;
173
+ transform: none;
174
+ bottom: 0;
175
+ .use-var(padding, carousel-indicator-outside-padding);
176
+ }
177
+
178
+ .indicator {
179
+ transition: all .2s;
180
+ .use-var(background-color, carousel-indicator-background);
181
+
182
+ &.active {
183
+ .use-var(background-color, carousel-indicator-active-background);
184
+ }
185
+ }
186
+
187
+ &-horizontal .indicator {
188
+ display: inline-block;
189
+ .use-var(width, carousel-square-indicator-width);
190
+ .use-var(height, carousel-square-indicator-height);
191
+
192
+ &:not(:last-of-type) {
193
+ .use-var-with-rtl(margin-right, carousel-square-indicator-gutter);
194
+ }
195
+ }
196
+
197
+ .circle-indicator,
198
+ .indicator.type-circle {
199
+ .use-var(width, carousel-circle-indicator-size);
200
+ .use-var(height, carousel-circle-indicator-size);
201
+ border-radius: 50%;
202
+
203
+ &:not(:last-of-type) {
204
+ .use-var-with-rtl(margin-right, carousel-circle-indicator-gutter);
205
+ }
206
+ }
207
+ }
208
+ }
@@ -0,0 +1,60 @@
1
+ > 属性/Props
2
+
3
+ |参数|描述|类型|默认值|
4
+ |----------|-------------|------|------|
5
+ |style|自定义样式|CSSProperties|-|
6
+ |className|自定义类名|string|-|
7
+ |icon|单元格左侧图标|ReactNode|-|
8
+ |label|标签名|ReactNode|-|
9
+ |desc|描述|ReactNode|-|
10
+ |text|主体文字,如果有标签名则靠右,否则靠左|string|-|
11
+ |children|主体内容,如果有标签名则靠右,否则靠左|ReactNode|-|
12
+ |showArrow|是否展示右侧箭头|boolean|-|
13
+ |arrow|右侧箭头内容|ReactNode|-|
14
+ |prepend|单元格前缀内容,在单元格上方|ReactNode|-|
15
+ |append|单元格后缀内容,在单元格下方|ReactNode|-|
16
+ |bordered|是否有外边框|boolean|true|
17
+ |onClick|点击单元格事件回调|(e: MouseEvent\<HTMLDivElement, MouseEvent\>) =\> void|-|
18
+
19
+ > 引用/Refs
20
+
21
+ |参数|描述|类型|
22
+ |----------|-------------|------|
23
+ |dom|最外层元素 DOM|HTMLDivElement|
24
+
25
+ > Cell.Group
26
+
27
+ |参数|描述|类型|默认值|
28
+ |----------|-------------|------|------|
29
+ |style|自定义样式|CSSProperties|-|
30
+ |className|自定义类名|string|-|
31
+ |header|自定义头部内容|ReactNode|-|
32
+ |footer|自定义尾部内容|ReactNode|-|
33
+ |bordered|是否有外边框|boolean|true|
34
+ |options|单元格配置,优先级高于children|(CellProps & RefAttributes\<CellRef\>)\[\]|-|
35
+ |children|内部单元格|ReactNode|-|
36
+ |onClick|点击单元格组回调|(e: MouseEvent\<HTMLDivElement, MouseEvent\>) =\> void|-|
37
+
38
+ > CellProps
39
+
40
+ |参数|描述|类型|默认值|
41
+ |----------|-------------|------|------|
42
+ |style|自定义样式|CSSProperties|-|
43
+ |className|自定义类名|string|-|
44
+ |icon|单元格左侧图标|ReactNode|-|
45
+ |label|标签名|ReactNode|-|
46
+ |desc|描述|ReactNode|-|
47
+ |text|主体文字,如果有标签名则靠右,否则靠左|string|-|
48
+ |children|主体内容,如果有标签名则靠右,否则靠左|ReactNode|-|
49
+ |showArrow|是否展示右侧箭头|boolean|-|
50
+ |arrow|右侧箭头内容|ReactNode|-|
51
+ |prepend|单元格前缀内容,在单元格上方|ReactNode|-|
52
+ |append|单元格后缀内容,在单元格下方|ReactNode|-|
53
+ |bordered|是否有外边框|boolean|true|
54
+ |onClick|点击单元格事件回调|(e: MouseEvent\<HTMLDivElement, MouseEvent\>) =\> void|-|
55
+
56
+ > CellGroupRef
57
+
58
+ |参数|描述|类型|
59
+ |----------|-------------|------|
60
+ |dom|最外层元素 DOM|HTMLDivElement|
@@ -0,0 +1,123 @@
1
+ @import "../../../style/mixin.less";
2
+
3
+ .@{prefix}-cell {
4
+ .use-var(color, cell-text-color);
5
+ .use-var(font-size, cell-font-size);
6
+ .use-var(margin-left, cell-horizontal-padding);
7
+ .use-var(padding-right, cell-horizontal-padding);
8
+
9
+ &:not(:first-of-type).bordered {
10
+ .onepx-border-var(top, line-color);
11
+ }
12
+
13
+ &.without-group {
14
+ .use-var(background-color, cell-background-color);
15
+ .use-var(padding-left, cell-horizontal-padding);
16
+ margin-left: 0;
17
+
18
+ &.bordered {
19
+ .onepx-border-var(top, line-color);
20
+ .onepx-border-var(bottom, line-color);
21
+ }
22
+ }
23
+
24
+ &-inner {
25
+ display: flex;
26
+ align-items: center;
27
+ .use-var(height, cell-item-height);
28
+
29
+ &.has-desc {
30
+ .use-var(height, cell-item-has-desc-height);
31
+ }
32
+ }
33
+
34
+ .cell-label {
35
+ .use-var(color, cell-label-color);
36
+ .use-var-with-rtl(margin-right, cell-label-gutter);
37
+
38
+ .cell-title {
39
+ .use-var(font-size, cell-title-font-size);
40
+ .use-var(font-weight, cell-title-font-weight);
41
+ }
42
+ }
43
+
44
+ .cell-desc {
45
+ .use-var(color, cell-desc-color);
46
+ .use-var(font-size, cell-desc-font-size);
47
+ .use-var(margin-top, cell-desc-margin-top);
48
+ }
49
+
50
+ .cell-content {
51
+ flex: 1;
52
+ display: flex;
53
+ align-items: center;
54
+ height: 100%;
55
+
56
+ &.has-label {
57
+ justify-content: flex-end;
58
+ }
59
+
60
+ .cell-text {
61
+ width: 100%;
62
+ .set-value-with-rtl(text-align, right);
63
+ .use-var(font-size, cell-content-font-size);
64
+ .text-overflow(2);
65
+ }
66
+ }
67
+
68
+ .cell-label-icon {
69
+ .use-var-with-rtl(margin-right, cell-label-icon-gutter);
70
+ font-size: 0;
71
+ .@{prefix}-icon {
72
+ line-height: initial;
73
+ .use-var(font-size, cell-label-icon-font-size);
74
+ .use-var(color, cell-label-icon-color);
75
+ }
76
+ }
77
+
78
+ .cell-arrow-icon {
79
+ .style-with-rtl({
80
+ transform: scale(-1);
81
+ });
82
+ .use-var-with-rtl(margin-left, cell-arrow-gutter);
83
+ font-size: 0;
84
+ .@{prefix}-icon {
85
+ .use-var(font-size, cell-arrow-font-size);
86
+ .use-var(color, cell-arrow-color);
87
+ }
88
+
89
+ .arrow-icon-svg {
90
+ .rem(width, 8);
91
+
92
+ path {
93
+ .use-var(fill, cell-arrow-color);
94
+ }
95
+ }
96
+ }
97
+
98
+ .@{prefix}-input-wrap {
99
+ .set-prop-with-rtl(padding-left, 0, {
100
+ .use-var(padding-left, input-horizontal-padding);
101
+ });
102
+ }
103
+ }
104
+
105
+ .@{prefix}-cell-group {
106
+
107
+ .cell-group-header,
108
+ .cell-group-footer {
109
+ .use-var(color, cell-text-color);
110
+ .use-var(font-size, cell-extra-font-size);
111
+ .use-var(line-height, cell-extra-line-height);
112
+ .use-var(padding, cell-extra-padding);
113
+ }
114
+
115
+ .cell-group-body {
116
+ .use-var(background-color, cell-background-color);
117
+
118
+ &.bordered {
119
+ .onepx-border-var(top, line-color);
120
+ .onepx-border-var(bottom, line-color);
121
+ }
122
+ }
123
+ }