amis 1.6.5-beta.3 → 1.8.0-beta.0

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 (238) hide show
  1. package/lib/Schema.d.ts +3 -2
  2. package/lib/Schema.js +0 -1
  3. package/lib/Schema.js.map +2 -2
  4. package/lib/components/Alert2.js +4 -2
  5. package/lib/components/Alert2.js.map +2 -2
  6. package/lib/components/AssociatedSelection.d.ts +84 -84
  7. package/lib/components/Avatar.d.ts +20 -20
  8. package/lib/components/Breadcrumb.d.ts +130 -0
  9. package/lib/components/Breadcrumb.js +161 -0
  10. package/lib/components/Breadcrumb.js.map +13 -0
  11. package/lib/components/Card.d.ts +20 -20
  12. package/lib/components/ChainedSelection.d.ts +84 -84
  13. package/lib/components/CityArea.js +3 -0
  14. package/lib/components/CityArea.js.map +2 -2
  15. package/lib/components/Collapse.d.ts +20 -20
  16. package/lib/components/CollapseGroup.d.ts +20 -20
  17. package/lib/components/DatePicker.d.ts +84 -84
  18. package/lib/components/DateRangePicker.d.ts +2 -2
  19. package/lib/components/DateRangePicker.js +36 -45
  20. package/lib/components/DateRangePicker.js.map +2 -2
  21. package/lib/components/GroupedSelection.d.ts +84 -84
  22. package/lib/components/Layout.d.ts +21 -21
  23. package/lib/components/ListGroup.d.ts +21 -21
  24. package/lib/components/PopUp.js +2 -1
  25. package/lib/components/PopUp.js.map +2 -2
  26. package/lib/components/Radios.d.ts +21 -21
  27. package/lib/components/Range.js.map +2 -2
  28. package/lib/components/Selection.d.ts +84 -84
  29. package/lib/components/TableSelection.d.ts +84 -84
  30. package/lib/components/Tabs.d.ts +52 -23
  31. package/lib/components/Tabs.js +198 -46
  32. package/lib/components/Tabs.js.map +2 -2
  33. package/lib/components/TooltipWrapper.d.ts +21 -20
  34. package/lib/components/TooltipWrapper.js +2 -2
  35. package/lib/components/TooltipWrapper.js.map +2 -2
  36. package/lib/components/Transfer.d.ts +84 -84
  37. package/lib/components/TransferDropDown.d.ts +84 -84
  38. package/lib/components/Tree.d.ts +84 -84
  39. package/lib/components/TreeSelection.d.ts +84 -84
  40. package/lib/components/calendar/Calendar.js +5 -0
  41. package/lib/components/calendar/Calendar.js.map +2 -2
  42. package/lib/components/calendar/DaysView.js.map +1 -1
  43. package/lib/components/icons.js +8 -0
  44. package/lib/components/icons.js.map +2 -2
  45. package/lib/components/index.d.ts +2 -1
  46. package/lib/components/index.js +4 -2
  47. package/lib/components/index.js.map +2 -2
  48. package/lib/icons/cloud-upload.js +17 -0
  49. package/lib/icons/image.js +7 -0
  50. package/lib/icons/refresh.js +9 -0
  51. package/lib/icons/trash.js +10 -0
  52. package/lib/icons/upload.js +3 -8
  53. package/lib/index.d.ts +1 -0
  54. package/lib/index.js +2 -1
  55. package/lib/index.js.map +2 -2
  56. package/lib/locale/en-US.js +3 -1
  57. package/lib/locale/en-US.js.map +2 -2
  58. package/lib/locale/zh-CN.js +4 -2
  59. package/lib/locale/zh-CN.js.map +2 -2
  60. package/lib/renderers/Action.d.ts +1 -1
  61. package/lib/renderers/Action.js.map +2 -2
  62. package/lib/renderers/Breadcrumb.d.ts +41 -6
  63. package/lib/renderers/Breadcrumb.js +23 -19
  64. package/lib/renderers/Breadcrumb.js.map +2 -2
  65. package/lib/renderers/ButtonGroup.d.ts +2 -2
  66. package/lib/renderers/ButtonGroup.js.map +1 -1
  67. package/lib/renderers/Form/ChainedSelect.d.ts +4 -1
  68. package/lib/renderers/Form/ChainedSelect.js +83 -34
  69. package/lib/renderers/Form/ChainedSelect.js.map +2 -2
  70. package/lib/renderers/Form/Checkbox.d.ts +3 -0
  71. package/lib/renderers/Form/Checkbox.js +38 -1
  72. package/lib/renderers/Form/Checkbox.js.map +2 -2
  73. package/lib/renderers/Form/Combo.d.ts +4 -3
  74. package/lib/renderers/Form/Combo.js +81 -32
  75. package/lib/renderers/Form/Combo.js.map +2 -2
  76. package/lib/renderers/Form/DiffEditor.d.ts +1 -1
  77. package/lib/renderers/Form/InputCity.d.ts +84 -84
  78. package/lib/renderers/Form/InputCity.js +4 -1
  79. package/lib/renderers/Form/InputCity.js.map +2 -2
  80. package/lib/renderers/Form/InputColor.js +3 -1
  81. package/lib/renderers/Form/InputColor.js.map +2 -2
  82. package/lib/renderers/Form/InputDate.js +3 -1
  83. package/lib/renderers/Form/InputDate.js.map +2 -2
  84. package/lib/renderers/Form/InputDateRange.js +3 -1
  85. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  86. package/lib/renderers/Form/InputExcel.d.ts +4 -0
  87. package/lib/renderers/Form/InputExcel.js +33 -6
  88. package/lib/renderers/Form/InputExcel.js.map +2 -2
  89. package/lib/renderers/Form/InputFile.d.ts +8 -1
  90. package/lib/renderers/Form/InputFile.js +71 -42
  91. package/lib/renderers/Form/InputFile.js.map +2 -2
  92. package/lib/renderers/Form/InputImage.d.ts +4 -1
  93. package/lib/renderers/Form/InputImage.js +21 -9
  94. package/lib/renderers/Form/InputImage.js.map +2 -2
  95. package/lib/renderers/Form/InputRange.d.ts +27 -9
  96. package/lib/renderers/Form/InputRange.js +88 -23
  97. package/lib/renderers/Form/InputRange.js.map +2 -2
  98. package/lib/renderers/Form/InputSubForm.js +2 -1
  99. package/lib/renderers/Form/InputSubForm.js.map +2 -2
  100. package/lib/renderers/Form/InputTag.js +2 -1
  101. package/lib/renderers/Form/InputTag.js.map +2 -2
  102. package/lib/renderers/Form/MatrixCheckboxes.js +2 -1
  103. package/lib/renderers/Form/MatrixCheckboxes.js.map +2 -2
  104. package/lib/renderers/Form/NestedSelect.d.ts +9 -6
  105. package/lib/renderers/Form/NestedSelect.js +247 -130
  106. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  107. package/lib/renderers/Form/Options.js +2 -1
  108. package/lib/renderers/Form/Options.js.map +2 -2
  109. package/lib/renderers/Form/Radios.js +2 -1
  110. package/lib/renderers/Form/Radios.js.map +2 -2
  111. package/lib/renderers/Form/Select.js +6 -3
  112. package/lib/renderers/Form/Select.js.map +2 -2
  113. package/lib/renderers/Form/Switch.d.ts +7 -6
  114. package/lib/renderers/Form/Switch.js +4 -1
  115. package/lib/renderers/Form/Switch.js.map +2 -2
  116. package/lib/renderers/Log.js +2 -1
  117. package/lib/renderers/Log.js.map +2 -2
  118. package/lib/renderers/PopOver.js +1 -1
  119. package/lib/renderers/PopOver.js.map +2 -2
  120. package/lib/renderers/Tabs.d.ts +58 -5
  121. package/lib/renderers/Tabs.js +170 -58
  122. package/lib/renderers/Tabs.js.map +2 -2
  123. package/lib/renderers/TooltipWrapper.d.ts +104 -0
  124. package/lib/renderers/TooltipWrapper.js +59 -0
  125. package/lib/renderers/TooltipWrapper.js.map +13 -0
  126. package/lib/renderers/Video.d.ts +6 -0
  127. package/lib/renderers/Video.js +13 -6
  128. package/lib/renderers/Video.js.map +2 -2
  129. package/lib/store/form.js +4 -13
  130. package/lib/store/form.js.map +2 -2
  131. package/lib/store/table.js +1 -1
  132. package/lib/store/table.js.map +2 -2
  133. package/lib/themes/ang-ie11.css +742 -160
  134. package/lib/themes/ang.css +793 -163
  135. package/lib/themes/ang.css.map +1 -1
  136. package/lib/themes/antd-ie11.css +757 -175
  137. package/lib/themes/antd.css +793 -163
  138. package/lib/themes/antd.css.map +1 -1
  139. package/lib/themes/cxd-ie11.css +1249 -667
  140. package/lib/themes/cxd.css +970 -321
  141. package/lib/themes/cxd.css.map +1 -1
  142. package/lib/themes/dark-ie11.css +742 -160
  143. package/lib/themes/dark.css +793 -163
  144. package/lib/themes/dark.css.map +1 -1
  145. package/lib/themes/default-ie11.css +1249 -667
  146. package/lib/themes/default.css +970 -321
  147. package/lib/themes/default.css.map +1 -1
  148. package/package.json +1 -1
  149. package/schema.json +16012 -736
  150. package/scss/_properties.scss +56 -2
  151. package/scss/components/_alert.scss +1 -1
  152. package/scss/components/_breadcrumb.scss +90 -1
  153. package/scss/components/_button-group.scss +15 -0
  154. package/scss/components/_city-area.scss +2 -0
  155. package/scss/components/_popup.scss +13 -3
  156. package/scss/components/_tabs.scss +629 -132
  157. package/scss/components/_tooltip.scss +72 -0
  158. package/scss/components/form/_file.scss +82 -24
  159. package/scss/components/form/_image.scss +30 -25
  160. package/scss/components/form/_number.scss +2 -0
  161. package/scss/components/form/_switch.scss +1 -3
  162. package/scss/themes/_cxd-colors.scss +47 -47
  163. package/scss/themes/_cxd-variables.scss +20 -0
  164. package/sdk/ang-ie11.css +879 -196
  165. package/sdk/ang.css +931 -200
  166. package/sdk/antd-ie11.css +951 -268
  167. package/sdk/antd.css +931 -200
  168. package/sdk/barcode.js +51 -51
  169. package/sdk/charts.js +14 -14
  170. package/sdk/codemirror.js +7 -7
  171. package/sdk/color-picker.js +65 -65
  172. package/sdk/cropperjs.js +2 -2
  173. package/sdk/cxd-ie11.css +1386 -703
  174. package/sdk/cxd.css +1107 -357
  175. package/sdk/dark-ie11.css +879 -196
  176. package/sdk/dark.css +931 -200
  177. package/sdk/exceljs.js +1 -1
  178. package/sdk/markdown.js +69 -69
  179. package/sdk/papaparse.js +1 -1
  180. package/sdk/renderers/Form/CityDB.js +1 -1
  181. package/sdk/rest.js +17 -17
  182. package/sdk/rich-text.js +62 -62
  183. package/sdk/sdk-ie11.css +1386 -703
  184. package/sdk/sdk.css +1107 -357
  185. package/sdk/sdk.js +1260 -1248
  186. package/sdk/thirds/hls.js/hls.js +1 -1
  187. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  188. package/sdk/tinymce.js +57 -57
  189. package/src/Schema.ts +5 -2
  190. package/src/components/Alert2.tsx +9 -3
  191. package/src/components/Breadcrumb.tsx +294 -0
  192. package/src/components/CityArea.tsx +3 -0
  193. package/src/components/DateRangePicker.tsx +40 -68
  194. package/src/components/PopUp.tsx +6 -5
  195. package/src/components/Range.tsx +7 -1
  196. package/src/components/Tabs.tsx +300 -54
  197. package/src/components/TooltipWrapper.tsx +4 -1
  198. package/src/components/calendar/Calendar.tsx +5 -0
  199. package/src/components/calendar/DaysView.tsx +2 -2
  200. package/src/components/icons.tsx +8 -0
  201. package/src/components/index.tsx +2 -0
  202. package/src/icons/cloud-upload.svg +22 -0
  203. package/src/icons/image.svg +1 -0
  204. package/src/icons/refresh.svg +7 -0
  205. package/src/icons/trash.svg +8 -0
  206. package/src/icons/upload.svg +4 -9
  207. package/src/index.tsx +1 -0
  208. package/src/locale/en-US.ts +3 -1
  209. package/src/locale/zh-CN.ts +4 -2
  210. package/src/renderers/Action.tsx +2 -1
  211. package/src/renderers/Breadcrumb.tsx +89 -45
  212. package/src/renderers/ButtonGroup.tsx +2 -2
  213. package/src/renderers/Form/ChainedSelect.tsx +56 -12
  214. package/src/renderers/Form/Checkbox.tsx +30 -1
  215. package/src/renderers/Form/Combo.tsx +84 -26
  216. package/src/renderers/Form/InputCity.tsx +13 -1
  217. package/src/renderers/Form/InputColor.tsx +2 -0
  218. package/src/renderers/Form/InputDate.tsx +2 -0
  219. package/src/renderers/Form/InputDateRange.tsx +2 -0
  220. package/src/renderers/Form/InputExcel.tsx +27 -5
  221. package/src/renderers/Form/InputFile.tsx +167 -115
  222. package/src/renderers/Form/InputImage.tsx +61 -35
  223. package/src/renderers/Form/InputRange.tsx +95 -40
  224. package/src/renderers/Form/InputSubForm.tsx +2 -1
  225. package/src/renderers/Form/InputTag.tsx +3 -1
  226. package/src/renderers/Form/MatrixCheckboxes.tsx +3 -1
  227. package/src/renderers/Form/NestedSelect.tsx +75 -26
  228. package/src/renderers/Form/Options.tsx +3 -1
  229. package/src/renderers/Form/Radios.tsx +3 -1
  230. package/src/renderers/Form/Select.tsx +6 -2
  231. package/src/renderers/Form/Switch.tsx +16 -9
  232. package/src/renderers/Log.tsx +2 -1
  233. package/src/renderers/PopOver.tsx +1 -1
  234. package/src/renderers/Tabs.tsx +254 -93
  235. package/src/renderers/TooltipWrapper.tsx +219 -0
  236. package/src/renderers/Video.tsx +21 -6
  237. package/src/store/form.ts +0 -9
  238. package/src/store/table.ts +1 -1
@@ -1,65 +1,158 @@
1
1
  .#{$ns}Tabs {
2
- &-linksContainer {
2
+ &-drag-tip {
3
+ display: none;
4
+ }
5
+
6
+ &-linksWrapper {
7
+ display: flex;
8
+ align-items: center;
9
+ justify-content: flex-start;
10
+ border-bottom: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
11
+ }
12
+
13
+ &-linksContainer-wrapper {
3
14
  position: relative;
15
+ display: flex;
16
+ align-items: center;
17
+ justify-content: flex-start;
4
18
 
5
- &-arrow {
6
- height: 100%;
19
+ .#{$ns}Tabs-addable {
7
20
  display: flex;
21
+ margin-left: var(--Tabs-add-margin);
8
22
  align-items: center;
9
- top: 0;
23
+ justify-content: flex-start;
24
+ padding: var(--Tabs--line-addPadding);
25
+ white-space: nowrap;
10
26
  cursor: pointer;
11
- position: absolute;
12
- .iconfont {
13
- font-size: var(--Remark-icon-fontSize);
14
- }
15
- &:hover {
16
- color: var(--icon-onHover-color);
27
+
28
+ &-icon {
29
+ width: var(--Tabs-add-icon-size);
30
+ height: var(--Tabs-add-icon-size);
31
+ padding: var(--Tabs-add-icon-padding);
32
+ margin-right: var(--Tabs-add-icon-margin);
17
33
  }
18
- }
19
- &-arrow--left {
20
- left: 4px;
21
- }
22
- &-arrow--right {
23
- right: 4px;
24
- }
25
- &-arrow--disabled {
26
- .iconfont {
27
- cursor: not-allowed;
28
- color: var(--Number-handler-onDisabled-color);
34
+
35
+ span {
36
+ margin-left: 4px;
37
+ line-height: 1;
29
38
  }
39
+
30
40
  &:hover {
31
- color: var(--Number-handler-onDisabled-color);
41
+ color: var(--primary);
42
+ fill: var(--primary);
32
43
  }
33
44
  }
34
- &-main {
35
- overflow-y: auto;
36
- scrollbar-width: none;
37
- width: 100%;
38
- &::-webkit-scrollbar {
39
- display: none;
45
+
46
+ .#{$ns}Tabs-linksContainer {
47
+ flex-grow: 1;
48
+
49
+ position: relative;
50
+ display: flex;
51
+ align-items: center;
52
+ overflow: hidden;
53
+
54
+ // &--overflow {
55
+ // flex: 1;
56
+
57
+ // .#{$ns}Tabs-links {
58
+ // max-width: 0;
59
+ // }
60
+ // }
61
+
62
+ &-arrow {
63
+ margin: var(--Tabs--line-addPadding);
64
+ width: 16px;
65
+ height: 100%;
66
+ display: flex;
67
+ align-items: center;
68
+ cursor: pointer;
69
+ box-sizing: content-box;
70
+
71
+ .iconfont {
72
+ font-size: var(--Remark-icon-fontSize);
73
+ }
74
+ &:hover {
75
+ color: var(--icon-onHover-color);
76
+ }
77
+
78
+ &--left {
79
+ padding-right: 16px;
80
+ }
81
+
82
+ &--right {
83
+ padding-left: 16px;
84
+ }
85
+
86
+ &--disabled {
87
+ .iconfont {
88
+ cursor: not-allowed;
89
+ color: var(--Number-handler-onDisabled-color);
90
+ }
91
+
92
+ &:hover {
93
+ color: var(--Number-handler-onDisabled-color);
94
+ }
95
+ }
40
96
  }
41
- > .#{$ns}Tabs-links {
42
- white-space: nowrap;
43
- min-width: 100%;
44
- display: inline-block;
97
+
98
+ &-main {
99
+ position: relative;
100
+
101
+ overflow-y: auto;
102
+ scrollbar-width: none;
103
+ width: 100%;
104
+ &::-webkit-scrollbar {
105
+ display: none;
106
+ }
107
+
108
+ .#{$ns}Tabs-links {
109
+ // position: relative;
110
+ min-width: 100%;
111
+ max-width: 0;
112
+ height: 100%;
113
+ overflow-x: hidden;
114
+
115
+ .#{$ns}Tabs-links-drag {
116
+ position: absolute;
117
+ height: 100%;
118
+ top: 0;
119
+ box-shadow: 0 0 0 1px red;
120
+ }
121
+ }
45
122
  }
46
123
  }
47
124
  }
48
- .#{$ns}Tabs-linksContainer--overflow {
49
- padding: 0 20px;
50
- }
125
+
51
126
  &-links {
127
+ display: flex;
52
128
  margin: 0;
53
129
  padding: 0;
54
- border-bottom: var(--Tabs-borderWidth) solid var(--Tabs-borderColor);
55
130
  list-style: none;
56
131
  user-select: none;
57
132
  @include clearfix();
58
133
 
59
134
  > .#{$ns}Tabs-link {
60
- margin-bottom: calc(var(--Tabs-borderWidth) * -1);
61
- display: inline-block;
62
135
  position: relative;
136
+ flex: none;
137
+ display: flex;
138
+ max-width: var(--Tabs-link-maxWidth);
139
+ overflow: hidden;
140
+
141
+ .#{$ns}Tabs-link-edit {
142
+ max-width: var(--Tabs-link-maxWidth);
143
+ border: none;
144
+ outline: none;
145
+ }
146
+
147
+ .#{$ns}Tabs-link-close {
148
+ margin: var(--Tabs-close-marginTop) 0 0 var(--Tabs-close-margin);
149
+ fill: var(--Tabs-gray-color);
150
+ cursor: pointer;
151
+
152
+ .#{$ns}Tabs-link-close-icon {
153
+ width: var(--Tabs-close-size);
154
+ }
155
+ }
63
156
 
64
157
  > a:first-child {
65
158
  font-size: var(--Tabs-linkFontSize);
@@ -73,6 +166,10 @@
73
166
  text-decoration: none;
74
167
  cursor: pointer;
75
168
  display: block;
169
+
170
+ text-overflow: ellipsis;
171
+ overflow: hidden;
172
+ white-space: nowrap;
76
173
  }
77
174
 
78
175
  > .#{$ns}Combo-toolbarBtn {
@@ -89,7 +186,6 @@
89
186
 
90
187
  &:hover > a:first-child,
91
188
  > a:first-child:focus {
92
- border-color: var(--Tabs-onHover-borderColor);
93
189
  text-decoration: none;
94
190
  }
95
191
 
@@ -98,7 +194,8 @@
98
194
  cursor: not-allowed;
99
195
 
100
196
  > a:first-child {
101
- color: var(--Tabs-onDisabled-color);
197
+ // color: var(--Tabs-onDisabled-color);
198
+ color: var(--Tabs-link-disabled-color);
102
199
  background: transparent;
103
200
  border-color: transparent;
104
201
  pointer-events: none;
@@ -119,7 +216,7 @@
119
216
  background: var(--Tabs-content-bg);
120
217
  border-style: solid;
121
218
  border-width: 0 var(--Tabs-borderWidth) var(--Tabs-borderWidth);
122
- border-color: var(--Tabs-borderColor);
219
+ border-color: var(--Tabs--simple-split-color);
123
220
  }
124
221
 
125
222
  &-pane {
@@ -138,27 +235,63 @@
138
235
  }
139
236
 
140
237
  &--line {
238
+ > .#{$ns}Tabs-linksContainer-wrapper {
239
+ border-bottom: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
240
+
241
+ &--toolbar {
242
+ .#{$ns}Tabs-link {
243
+ padding-top: 10px;
244
+ }
245
+
246
+ .#{$ns}Tabs-addable {
247
+ padding: 0;
248
+ }
249
+
250
+ .#{$ns}Tabs-linksContainer-arrow {
251
+ margin: 0;
252
+ }
253
+ }
254
+ }
255
+
141
256
  > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-arrow {
142
257
  top: -4px;
143
258
  }
144
259
 
145
- > .#{$ns}Tabs-links, > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
260
+ > .#{$ns}Tabs-linksWrapper > .#{$ns}Tabs-links,
261
+ > .#{$ns}Tabs-linksContainer-wrapper > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
146
262
  border-bottom-color: var(--Tabs--line-borderColor);
147
263
 
148
264
  > li {
265
+ padding-left: var(--Tabs--line-padding);
266
+ padding-right: var(--Tabs--line-padding);
267
+
268
+ &:first-of-type {
269
+ padding-left: 0;
270
+ }
271
+
272
+ &:last-of-type {
273
+ padding-right: 0;
274
+ }
275
+
149
276
  > a:first-child {
150
277
  border-width: 0 0 var(--Tabs--line-borderWidth) 0;
151
278
  padding: var(--Tabs--line-linkPadding);
152
- margin: var(--Tabs--line-linkMargin);
279
+ }
153
280
 
154
- &:hover,
155
- &:focus {
281
+ &:hover {
282
+ a:first-child {
156
283
  color: var(--primary);
157
284
  background: transparent;
158
285
  border-color: transparent;
159
286
  }
287
+
288
+ .#{$ns}Tabs-link-close {
289
+ fill: var(--primary);
290
+ }
160
291
  }
161
292
 
293
+
294
+
162
295
  &:last-child {
163
296
  > a {
164
297
  margin: 0;
@@ -188,35 +321,64 @@
188
321
  > .#{$ns}Tabs-linksContainer {
189
322
  background: var(--Tabs--card-bg);
190
323
  }
191
- > .#{$ns}Tabs-links, > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
192
- padding: var(--Tabs--card-padding);
324
+
325
+ > .#{$ns}Tabs-linksContainer-wrapper {
193
326
  background: var(--Tabs--card-bg);
194
- border-top: px2rem(1px) solid var(--Tabs--card-borderTopColor);
195
327
 
196
- > li {
197
- &.is-active {
198
- > a:first-child,
199
- > a:first-child:hover,
200
- > a:first-child:focus {
201
- border-color: var(--Tabs--card-onActive-borderColor);
202
- color: var(--primary);
203
- border-bottom-color: var(--Tabs--card-onActive-bg);
204
- background: var(--Tabs--card-onActive-bg);
205
- }
328
+ > .#{$ns}Tabs-addable {
329
+ margin-left: 0;
330
+ padding: 0;
331
+ padding-top: var(--Tabs--card-add-gap-top);
332
+ margin-right: var(--Tabs--card-add-gap);
333
+ }
334
+
335
+ > .#{$ns}Tabs-linksContainer {
336
+ .#{$ns}Tabs-addable {
337
+ padding: 0;
206
338
  }
207
339
 
208
- > a:first-child {
209
- padding: var(--Tabs--card-linkPadding);
210
- margin: var(--Tabs--card-linkMargin);
340
+ > .#{$ns}Tabs-linksContainer-arrow {
341
+ padding: var(--Tabs--card-arrow-gap) var(--Tabs--card-add-gap) 0;
342
+ margin-bottom: 0;
343
+ }
211
344
 
212
- &:hover,
213
- &:focus {
214
- color: #666;
215
- background: var(--Tabs--card-onActive-bg);
216
- border-bottom-color: transparent;
345
+ > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
346
+ padding: var(--Tabs--card-padding);
347
+ border-top: px2rem(1px) solid var(--Tabs--card-borderTopColor);
348
+
349
+ > li {
350
+ padding: var(--Tabs--card-linkPadding);
351
+ margin: var(--Tabs--card-linkMargin);
352
+ border-top-left-radius: var(--Tabs-borderRadius);
353
+ border-top-right-radius: var(--Tabs-borderRadius);
354
+ cursor: pointer;
355
+
356
+ &.is-active {
357
+ border-color: var(--Tabs--card-onActive-borderColor);
358
+ color: var(--primary);
359
+ border-bottom-color: var(--Tabs--card-onActive-bg);
360
+ background: var(--Tabs--card-onActive-bg);
361
+ }
362
+
363
+ &:hover,
364
+ &:focus {
365
+ // color: #666;
366
+ background: var(--Tabs--card-onActive-bg);
367
+ border-bottom-color: transparent;
368
+ }
369
+
370
+ > a:first-child {
371
+ padding: 0;
372
+ border: none;
373
+ }
217
374
  }
218
375
  }
219
376
  }
377
+
378
+ > .#{$ns}Tabs-toolbar {
379
+ padding: var(--Tabs--card-padding);
380
+ margin: 0;
381
+ }
220
382
  }
221
383
 
222
384
  > .#{$ns}Tabs-content {
@@ -225,62 +387,121 @@
225
387
  }
226
388
 
227
389
  &--radio {
228
- > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-arrow {
229
- top: -4px;
230
- }
231
- > .#{$ns}Tabs-links, > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
232
- border: 0;
390
+ > .#{$ns}Tabs-linksContainer-wrapper {
233
391
  margin-bottom: px2rem(10px);
234
392
 
235
- > li {
236
- margin: 0;
393
+ .#{$ns}Tabs-addable {
394
+ padding: 0;
395
+ }
237
396
 
238
- > a:first-child {
239
- border-width: px2rem(1px);
240
- border-color: var(--Tabs-borderColor);
241
- font-size: var(--fontSizeSm);
242
- text-align: center;
243
- margin: 0;
244
- padding: 0 px2rem(10px);
245
- min-width: 68px;
246
- height: px2rem(30px);
247
- line-height: px2rem(30px);
248
- border-radius: 0;
249
- background: var(--Tabs--radio-bg);
397
+ > .#{$ns}Tabs-linksContainer {
398
+ > .#{$ns}Tabs-linksContainer-arrow {
399
+ margin-bottom: 0;
400
+ }
250
401
 
251
- &:hover,
252
- &:focus {
253
- color: var(--primary);
402
+ > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
403
+ border: 0;
404
+
405
+ > li {
406
+ margin: 0;
407
+ align-items: center;
408
+
409
+ border-width: px2rem(1px);
410
+ border-color: var(--Tabs--simple-split-color);
411
+ text-align: center;
412
+ margin: 0;
413
+ padding: 0 px2rem(10px);
414
+ min-width: 68px;
415
+ height: px2rem(30px);
416
+ background: var(--Tabs--radio-bg);
417
+ border-style: solid;
418
+
419
+ &:hover,
420
+ &:focus {
421
+ color: var(--primary);
422
+ }
423
+
424
+ > a:first-child {
425
+ padding: 0;
426
+ border-radius: 0;
427
+ line-height: px2rem(30px);
428
+ font-size: var(--fontSizeSm);
429
+ border: none;
430
+ }
431
+
432
+ &.is-active {
433
+ background: var(--primary);
434
+ border-color: var(--primary);
435
+ position: relative;
436
+ z-index: 1;
437
+
438
+ > a:first-child {
439
+ background: var(--primary);
440
+ color: var(--Tabs--radio-bg);
441
+ }
442
+
443
+ > .#{$ns}Tabs-link-close {
444
+ fill: var(--Tabs--radio-bg);
445
+ }
446
+ }
254
447
  }
255
- }
256
448
 
257
- &.is-active {
258
- > a:first-child,
259
- > a:first-child:hover,
260
- > a:first-child:focus {
261
- color: var(--Tabs--radio-bg);
262
- background: var(--primary);
263
- border-color: var(--primary);
264
- position: relative;
265
- z-index: 1;
449
+ > li + li {
450
+ margin-left: -1px;
266
451
  }
267
452
  }
268
453
  }
269
-
270
- > li + li {
271
- margin-left: -1px;
272
- }
273
454
  }
274
455
 
275
456
  > .#{$ns}Tabs-content {
276
- border-top: var(--Tabs-borderWidth) solid var(--Tabs-borderColor);
457
+ border-top: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
277
458
  }
278
459
  }
279
460
 
280
461
  // todo 第一个选中,有一像素的空隙待修复。
281
462
  // 不带眼镜应该看不出来。
282
463
  &--tiled {
283
- > .#{$ns}Tabs-links, > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
464
+ > .#{$ns}Tabs-linksContainer-wrapper {
465
+ align-items: stretch;
466
+ border-bottom: none;
467
+
468
+ > .#{$ns}Tabs-linksContainer {
469
+ flex: 1;
470
+ align-items: stretch;
471
+
472
+ > .#{$ns}Tabs-linksContainer-arrow {
473
+ margin-bottom: 0;
474
+ padding: 0 10px;
475
+ height: auto;
476
+ align-items: center;
477
+ justify-content: center;
478
+ border-width: var(--Tabs-borderWidth);
479
+ border-style: solid;
480
+ border-color: var(--Tabs--simple-split-color);
481
+ }
482
+
483
+ &.#{$ns}Tabs-linksContainer--overflow > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links > .#{$ns}Tabs-link {
484
+ &:first-of-type {
485
+ border-left-width: 0;
486
+ }
487
+ &:last-of-type {
488
+ border-right-width: 0;
489
+ }
490
+ }
491
+ }
492
+
493
+ .#{$ns}Tabs-addable {
494
+ padding: 0 var(--Tabs--tiled-add-gap);
495
+ margin-left: 0;
496
+ white-space: nowrap;
497
+ border-style: solid;
498
+ border-color: var(--Tabs--simple-split-color);
499
+ border-width: var(--Tabs-borderWidth);
500
+ border-left-width: 0;
501
+ }
502
+ }
503
+
504
+ > .#{$ns}Tabs-linksContainer-wrapper > .#{$ns}Tabs-linksContainer > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
284
505
  width: 100%;
285
506
  display: flex;
286
507
  flex-direction: row;
@@ -288,36 +509,38 @@
288
509
  border-bottom: 0;
289
510
 
290
511
  > li {
512
+ max-width: unset;
291
513
  flex-grow: 1;
292
514
  text-align: center;
293
515
  margin: 0 0 0 calc(var(--Tabs-borderWidth) * -1);
516
+ border-style: solid;
517
+ border-color: var(--Tabs--simple-split-color);
518
+ border-width: var(--Tabs-borderWidth);
519
+ padding: var(--Tabs-linkPadding);
520
+ cursor: pointer;
521
+
522
+ &:hover,
523
+ &:focus {
524
+ position: relative;
525
+ z-index: 1;
526
+ border-color: var(--Tabs-onActive-borderColor);
527
+ color: var(--primary);
528
+ }
294
529
 
295
530
  > a:first-child {
296
531
  margin: 0;
297
532
  border-radius: 0;
298
- border-style: solid;
299
- border-color: var(--Tabs-borderColor);
300
- border-width: var(--Tabs-borderWidth);
301
-
302
- &:hover,
303
- &:focus {
304
- position: relative;
305
- z-index: 1;
306
- border-color: var(--Tabs-onActive-borderColor);
307
- color: var(--primary);
308
- }
533
+ padding: 0;
534
+ flex: 1;
535
+ border: none;
309
536
  }
310
537
 
311
538
  &.is-active {
312
- > a:first-child,
313
- > a:first-child:hover,
314
- > a:first-child:focus {
315
- cursor: default;
316
- color: var(--primary);
317
- border-color: var(--Tabs-borderColor);
318
- border-top-color: var(--primary);
319
- border-bottom-color: transparent;
320
- }
539
+ cursor: default;
540
+ color: var(--primary);
541
+ border-color: var(--Tabs--simple-split-color);
542
+ border-top-color: var(--primary);
543
+ border-bottom-color: transparent;
321
544
  }
322
545
  }
323
546
  }
@@ -326,15 +549,19 @@
326
549
  &--vertical {
327
550
  display: flex;
328
551
  min-height: px2rem(200px);
329
- border: var(--Tabs-borderWidth) solid var(--Tabs-borderColor);
552
+ border: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
330
553
  border-radius: 0;
331
554
 
332
- > .#{$ns}Tabs-links {
333
- width: var(--Tabs--vertical-width);
555
+ > .#{$ns}Tabs-linksWrapper {
556
+ flex-direction: column;
334
557
  background: var(--Tabs--vertical-onActive-container-bg);
558
+ }
559
+
560
+ > .#{$ns}Tabs-linksWrapper > .#{$ns}Tabs-links {
561
+ width: var(--Tabs--vertical-width);
335
562
  border: none;
336
563
  border-right: var(--Tabs--vertical-onActive-container-borderRight);
337
- padding-bottom: px2rem(60px);
564
+ flex-direction: column;
338
565
 
339
566
  > li {
340
567
  margin: 0 0 0 -1px;
@@ -375,9 +602,95 @@
375
602
  }
376
603
  }
377
604
 
605
+ &--sidebar {
606
+ display: flex;
607
+ height: 100%;
608
+
609
+ &.sidebar--left {
610
+ flex-direction: row;
611
+
612
+ > .#{$ns}Tabs-content {
613
+ border-right: none;
614
+ }
615
+ }
616
+ &.sidebar--right {
617
+ flex-direction: row-reverse;
618
+
619
+ > .#{$ns}Tabs-content {
620
+ border-left: none;
621
+ }
622
+ }
623
+
624
+ > .#{$ns}Tabs-linksWrapper {
625
+ flex: 0 0 var(--Tabs--sidebar-sideWidth);
626
+ align-items: flex-start;
627
+ border: none;
628
+ }
629
+
630
+ > .#{$ns}Tabs-linksWrapper > .#{$ns}Tabs-links {
631
+ position: relative;
632
+ margin: 0;
633
+ padding-top: var(--Tabs--sidebar-sidePadding);
634
+ flex-grow: 1;
635
+ border: none;
636
+ flex-direction: column;
637
+ border: 0;
638
+
639
+ > li {
640
+ display: flex;
641
+ margin: var(--Tabs--sidebar-sideMargin);
642
+ padding: 0;
643
+ flex-direction: column;
644
+ justify-content: flex-start;
645
+ align-items: center;
646
+ border: 0;
647
+
648
+ > a:first-child {
649
+ padding: 0;
650
+ border: 0;
651
+ margin: 0;
652
+ display: flex;
653
+ flex-direction: column;
654
+ align-items: center;
655
+ color: var(--Tabs-gray-color);
656
+
657
+ .#{$ns}Icon {
658
+ font-size: var(--Tabs--sidebar-iconSize);
659
+ height: var(--Tabs--sidebar-iconSize);
660
+ margin-bottom: var(--Tabs--sidebar-iconMargin);
661
+ }
662
+ }
663
+ &.is-active > a:first-child,
664
+ > a:first-child:hover,
665
+ > a:first-child:focus {
666
+ color: var(--Tabs--sidebar-iconColor)
667
+ }
668
+ }
669
+ }
670
+
671
+ > .#{$ns}Tabs-content {
672
+ flex-grow: 1;
673
+ border-bottom: none;
674
+
675
+ > .#{$ns}Tabs-pane {
676
+ height: 100%;
677
+ }
678
+ }
679
+ }
680
+
378
681
  &--chrome {
379
- > .#{$ns}Tabs-links {
682
+ > .#{$ns}Tabs-linksWrapper {
380
683
  background: var(--Tabs--chrome-bg);
684
+ border-bottom: none;
685
+
686
+ > .#{$ns}Tabs-addable {
687
+ margin-left: 0;
688
+ padding: 0;
689
+ padding-top: 10px;
690
+ }
691
+ }
692
+
693
+ > .#{$ns}Tabs-linksWrapper > .#{$ns}Tabs-links {
381
694
  border-bottom: 0;
382
695
  padding: 0 px2rem(10px);
383
696
  padding-top: px2rem(8px);
@@ -391,6 +704,7 @@
391
704
  padding: px2rem(7px) px2rem(20px) px2rem(6px);
392
705
  cursor: pointer;
393
706
  flex: 1;
707
+ overflow: inherit;
394
708
 
395
709
  > a:first-child {
396
710
  background: none;
@@ -399,6 +713,7 @@
399
713
  z-index: 5;
400
714
  overflow: hidden;
401
715
  padding: 0;
716
+ text-overflow: unset;
402
717
  }
403
718
 
404
719
  &.is-active {
@@ -473,9 +788,191 @@
473
788
  }
474
789
  }
475
790
 
791
+ &--simple {
792
+ & > .#{$ns}Tabs-linksContainer-wrapper {
793
+ border-bottom: none;
794
+
795
+ .#{$ns}Tabs-addable {
796
+ padding: 0;
797
+ }
798
+
799
+ & > .#{$ns}Tabs-linksContainer {
800
+ > .#{$ns}Tabs-linksContainer-arrow {
801
+ margin-bottom: 0;
802
+ }
803
+
804
+ > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links {
805
+ border: none;
806
+
807
+ & > li {
808
+ position: relative;
809
+ border: none;
810
+ padding: var(--Tabs--simple-split-size);
811
+
812
+ &::after {
813
+ content: '';
814
+ position: absolute;
815
+ top: 50%;
816
+ right: 0;
817
+ width: var(--Tabs--simple-split-width);
818
+ height: var(--Tabs-add-icon-size);
819
+ transform: translateY(-50%);
820
+ background-color: var(--Tabs--simple-split-color);
821
+ }
822
+
823
+ & > .#{$ns}Tabs-link-close {
824
+ padding-top: var(--Tabs--simple-split-width);
825
+ cursor: pointer;
826
+ }
827
+
828
+ &:last-of-type::after {
829
+ content: none;
830
+ }
831
+
832
+ &.is-active,
833
+ &:hover {
834
+ > a:first-child,
835
+ > a:first-child:hover,
836
+ > a:first-child:focus {
837
+ color: var(--Tabs--line-onHover-color);
838
+ border: none;
839
+ }
840
+ }
841
+
842
+ &:hover .#{$ns}Tabs-link-close {
843
+ fill: var(--primary);
844
+ }
845
+
846
+ & > a:first-child {
847
+ padding: 0;
848
+
849
+ &,
850
+ &:hover,
851
+ &:focus {
852
+ border: none;
853
+ }
854
+ }
855
+ }
856
+ }
857
+ }
858
+ }
859
+
860
+ > .#{$ns}Tabs-content {
861
+ border: none;
862
+ }
863
+ }
864
+
865
+ &--strong {
866
+ & > .#{$ns}Tabs-linksContainer-wrapper {
867
+ align-items: stretch;
868
+ border-bottom: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
869
+
870
+ .#{$ns}Tabs-addable {
871
+ width: var(--Tabs--strong-add-size);
872
+ margin-left: var(--Tabs--card-arrow-gap);
873
+ padding: 0;
874
+ margin-bottom: calc(var(--Tabs-borderWidth) * -1);
875
+ align-items: center;
876
+ justify-content: center;
877
+ font-size: 0;
878
+ border: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
879
+ border-top-left-radius: var(--Tabs-borderRadius);
880
+ border-top-right-radius: var(--Tabs-borderRadius);
881
+ flex: none;
882
+
883
+ > .#{$ns}Tabs-addable-icon {
884
+ margin-right: 0;
885
+ }
886
+
887
+ &:hover {
888
+ color: var(--Tabs--line-onHover-color);
889
+ }
890
+ }
891
+
892
+ > .#{$ns}Tabs-linksContainer {
893
+ margin-bottom: calc(var(--Tabs-borderWidth) * -1);
894
+
895
+ &.#{$ns}Tabs-linksContainer--overflow > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links > .#{$ns}Tabs-link {
896
+ &:first-of-type {
897
+ border-left-width: 0;
898
+ border-top-left-radius:0;
899
+ }
900
+
901
+ &:last-of-type {
902
+ border-right-width: 0;
903
+ border-top-right-radius:0;
904
+ }
905
+ }
906
+
907
+ .#{$ns}Tabs-linksContainer-arrow {
908
+ width: var(--Tabs--strong-arrow-size);
909
+ margin-bottom: 0;
910
+ padding: 0;
911
+ justify-content: center;
912
+ border: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
913
+ border-top-right-radius: var(--Tabs-borderRadius);
914
+ box-sizing: border-box;
915
+
916
+ &--left {
917
+ padding-right: 0;
918
+ border-right-width: 0;
919
+ border-top-left-radius: var(--Tabs-borderRadius);
920
+ }
921
+
922
+ &--right {
923
+ padding-left: 0;
924
+ border-left-width: 0;
925
+ border-top-right-radius: var(--Tabs-borderRadius);
926
+ }
927
+ }
928
+
929
+ > .#{$ns}Tabs-linksContainer-main > .#{$ns}Tabs-links > .#{$ns}Tabs-link {
930
+ margin-right: var(--Tabs--card-arrow-gap);
931
+ padding: var(--Tabs--card-arrow-gap) var(--Tabs--card-add-gap);
932
+ background: var(--Tabs-onActive-bg);
933
+ border-top-left-radius: var(--Tabs-borderRadius);
934
+ border-top-right-radius: var(--Tabs-borderRadius);
935
+ border: var(--Tabs-borderWidth) solid var(--Tabs--simple-split-color);
936
+ cursor: pointer;
937
+
938
+ &.is-active {
939
+ border-bottom-color: var(--Tabs-onActive-bg);
940
+ }
941
+
942
+ &.is-active,
943
+ &:hover {
944
+ > a:first-child,
945
+ > a:first-child:hover,
946
+ > a:first-child:focus {
947
+ color: var(--Tabs--line-onHover-color);
948
+ }
949
+ }
950
+
951
+ &:hover .#{$ns}Tabs-link-close {
952
+ fill: var(--primary);
953
+ }
954
+
955
+ &:last-of-type {
956
+ margin-right: 0;
957
+ }
958
+
959
+ & > a:first-child {
960
+ padding: 0;
961
+ margin: 0;
962
+ border: none;
963
+ }
964
+ }
965
+ }
966
+ }
967
+ }
968
+
476
969
  &-toolbar {
477
- display: inline-block;
478
- float: right;
479
- padding-top: var(--gap-xs);
970
+ // display: inline-block;
971
+ // float: right;
972
+ // padding-top: var(--gap-xs);
973
+ margin-left: var(--gap-base);
974
+ display: flex;
975
+ flex-direction: row;
976
+ align-items: center;
480
977
  }
481
978
  }