vdesign-ui 0.1.9 → 0.1.11

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 (165) hide show
  1. package/dist/components/actionbar/actionbar-cell/index.vue +34 -0
  2. package/dist/components/actionbar/index.js +8 -0
  3. package/dist/components/actionbar/index.vue +39 -0
  4. package/dist/components/actionbar/style.less +48 -0
  5. package/dist/components/actions-cell/actions/index.js +7 -0
  6. package/dist/components/actions-cell/actions/index.vue +67 -0
  7. package/dist/components/actions-cell/actions/style.less +75 -0
  8. package/dist/components/actions-cell/index.js +7 -0
  9. package/dist/components/actions-cell/index.vue +94 -0
  10. package/dist/components/actions-cell/style.less +39 -0
  11. package/dist/components/activityviews/index.js +8 -0
  12. package/dist/components/activityviews/index.vue +110 -0
  13. package/dist/components/activityviews/style.less +146 -0
  14. package/dist/components/badge/index.js +8 -0
  15. package/dist/components/badge/index.vue +49 -0
  16. package/dist/components/badge/style.less +66 -0
  17. package/dist/components/button/index.js +8 -0
  18. package/dist/components/button/index.vue +89 -0
  19. package/dist/components/button/style.less +563 -0
  20. package/dist/components/calendar/end.png +0 -0
  21. package/dist/components/calendar/index-element.vue +84 -0
  22. package/dist/components/calendar/index.js +8 -0
  23. package/dist/components/calendar/index.vue +52 -0
  24. package/dist/components/calendar/start.png +0 -0
  25. package/dist/components/calendar/style.less +167 -0
  26. package/dist/components/checkbox/assist.js +34 -0
  27. package/dist/components/checkbox/checkbox-group/index.js +8 -0
  28. package/dist/components/checkbox/checkbox-group/index.vue +69 -0
  29. package/dist/components/checkbox/index.js +8 -0
  30. package/dist/components/checkbox/index.vue +184 -0
  31. package/dist/components/checkbox/style.less +289 -0
  32. package/dist/components/common/state/index.vue +80 -0
  33. package/dist/components/data-list/index.js +10 -0
  34. package/dist/components/data-list/index.vue +19 -0
  35. package/dist/components/data-list/style.less +624 -0
  36. package/dist/components/datetime-picker/index.js +8 -0
  37. package/dist/components/datetime-picker/index.vue +37 -0
  38. package/dist/components/datetime-picker/style.less +25 -0
  39. package/dist/components/dialog/index copy.vue +112 -0
  40. package/dist/components/dialog/index.js +8 -0
  41. package/dist/components/dialog/index.vue +111 -0
  42. package/dist/components/dialog/style.less +122 -0
  43. package/dist/components/divider/index.js +8 -0
  44. package/dist/components/divider/index.vue +54 -0
  45. package/dist/components/divider/style.less +92 -0
  46. package/dist/components/dropdown/index.js +8 -0
  47. package/dist/components/dropdown/index.vue +210 -0
  48. package/dist/components/dropdown/style.less +402 -0
  49. package/dist/components/empty/empty-404.png +0 -0
  50. package/dist/components/empty/empty-img.png +0 -0
  51. package/dist/components/empty/empty-network.png +0 -0
  52. package/dist/components/empty/index.js +8 -0
  53. package/dist/components/empty/index.vue +65 -0
  54. package/dist/components/empty/style.less +53 -0
  55. package/dist/components/footer/index.js +7 -0
  56. package/dist/components/footer/index.vue +29 -0
  57. package/dist/components/footer/style.less +22 -0
  58. package/dist/components/footnav/footnav-item/index.js +7 -0
  59. package/dist/components/footnav/footnav-item/index.vue +75 -0
  60. package/dist/components/footnav/footnav-item/style.less +38 -0
  61. package/dist/components/footnav/index.js +7 -0
  62. package/dist/components/footnav/index.vue +82 -0
  63. package/dist/components/footnav/style.less +22 -0
  64. package/dist/components/form/index.js +7 -0
  65. package/dist/components/form/index.vue +12 -0
  66. package/dist/components/headnav/index.js +7 -0
  67. package/dist/components/headnav/index.vue +139 -0
  68. package/dist/components/headnav/style.less +232 -0
  69. package/dist/components/icon/font/iconfont.css +817 -0
  70. package/dist/components/icon/font/iconfont.js +2 -0
  71. package/dist/components/icon/index.js +9 -0
  72. package/dist/components/icon/index.vue +46 -0
  73. package/dist/components/icon/style.less +44 -0
  74. package/dist/components/input/calcTextareaHeight.js +266 -0
  75. package/dist/components/input/index.js +8 -0
  76. package/dist/components/input/index.vue +334 -0
  77. package/dist/components/input/password/index.js +8 -0
  78. package/dist/components/input/password/index.vue +60 -0
  79. package/dist/components/input/search/index.js +8 -0
  80. package/dist/components/input/search/index.vue +64 -0
  81. package/dist/components/input/stepper/index.js +8 -0
  82. package/dist/components/input/stepper/index.vue +136 -0
  83. package/dist/components/input/style.less +482 -0
  84. package/dist/components/list/index.js +8 -0
  85. package/dist/components/list/index.vue +159 -0
  86. package/dist/components/list/style.less +290 -0
  87. package/dist/components/loading/index.js +7 -0
  88. package/dist/components/loading/index.vue +53 -0
  89. package/dist/components/loading/loading.png +0 -0
  90. package/dist/components/loading/refresh.png +0 -0
  91. package/dist/components/loading/style.less +48 -0
  92. package/dist/components/mixins/clickoutside.js +81 -0
  93. package/dist/components/mixins/dom.js +41 -0
  94. package/dist/components/mixins/languageMixin.js +38 -0
  95. package/dist/components/mixins/outlineConfigPlugin.js +40 -0
  96. package/dist/components/mixins/router-link.js +23 -0
  97. package/dist/components/noticebar/index.js +8 -0
  98. package/dist/components/noticebar/index.vue +246 -0
  99. package/dist/components/noticebar/style.less +309 -0
  100. package/dist/components/overlay/index.js +8 -0
  101. package/dist/components/overlay/index.vue +161 -0
  102. package/dist/components/overlay/style.less +23 -0
  103. package/dist/components/pagebreak/index.js +7 -0
  104. package/dist/components/pagebreak/index.vue +60 -0
  105. package/dist/components/pagebreak/style.less +43 -0
  106. package/dist/components/popover/index.js +8 -0
  107. package/dist/components/popover/index.vue +99 -0
  108. package/dist/components/popover/style.less +349 -0
  109. package/dist/components/popover/vue-popover.vue +314 -0
  110. package/dist/components/radio/assist.js +34 -0
  111. package/dist/components/radio/index.js +8 -0
  112. package/dist/components/radio/index.vue +159 -0
  113. package/dist/components/radio/radio-group/index.vue +70 -0
  114. package/dist/components/radio/style.less +297 -0
  115. package/dist/components/result/completed.png +0 -0
  116. package/dist/components/result/error.png +0 -0
  117. package/dist/components/result/index.js +8 -0
  118. package/dist/components/result/index.vue +47 -0
  119. package/dist/components/result/style.less +42 -0
  120. package/dist/components/result/wait.png +0 -0
  121. package/dist/components/selector/index.js +8 -0
  122. package/dist/components/selector/index.vue +124 -0
  123. package/dist/components/selector/style.less +474 -0
  124. package/dist/components/skeleton/index.js +7 -0
  125. package/dist/components/skeleton/index.vue +134 -0
  126. package/dist/components/skeleton/style.less +192 -0
  127. package/dist/components/slider/draggable.js +49 -0
  128. package/dist/components/slider/index.js +7 -0
  129. package/dist/components/slider/index.vue +173 -0
  130. package/dist/components/slider/style.less +95 -0
  131. package/dist/components/slider/utils.js +60 -0
  132. package/dist/components/step/index.js +7 -0
  133. package/dist/components/step/index.vue +48 -0
  134. package/dist/components/step/style.less +59 -0
  135. package/dist/components/step-item/index.js +7 -0
  136. package/dist/components/step-item/index.vue +89 -0
  137. package/dist/components/step-item/style.less +361 -0
  138. package/dist/components/style/index.vue +42 -0
  139. package/dist/components/switch/index.js +8 -0
  140. package/dist/components/switch/index.vue +72 -0
  141. package/dist/components/switch/style.less +54 -0
  142. package/dist/components/tabs/index.js +8 -0
  143. package/dist/components/tabs/index.vue +185 -0
  144. package/dist/components/tabs/style.less +383 -0
  145. package/dist/components/tabs/tab/index.vue +52 -0
  146. package/dist/components/tag/index.js +7 -0
  147. package/dist/components/tag/index.vue +50 -0
  148. package/dist/components/tag/style.less +211 -0
  149. package/dist/components/title/index.js +8 -0
  150. package/dist/components/title/index.vue +92 -0
  151. package/dist/components/title/style.less +188 -0
  152. package/dist/components/toast/index.js +80 -0
  153. package/dist/components/toast/index.vue +44 -0
  154. package/dist/components/toast/style.less +55 -0
  155. package/dist/components/transition/index.js +8 -0
  156. package/dist/components/transition/index.vue +13 -0
  157. package/dist/components/transition/style.less +208 -0
  158. package/dist/components/upload/index.js +7 -0
  159. package/dist/components/upload/index.vue +224 -0
  160. package/dist/components/upload/style.less +156 -0
  161. package/dist/vdesign-ui.common.js +182 -238
  162. package/dist/vdesign-ui.css +1 -1
  163. package/dist/vdesign-ui.umd.js +182 -238
  164. package/dist/vdesign-ui.umd.min.js +3 -3
  165. package/package.json +1 -1
@@ -0,0 +1,482 @@
1
+ @input-prefix-cls: vd-input;
2
+ @search-prefix-cls: vd-search;
3
+ @stepper-prefix-cls: vd-stepper;
4
+ @password-prefix-cls: vd-password;
5
+
6
+
7
+
8
+ .@{input-prefix-cls} {
9
+ input {
10
+ outline: 0 none;
11
+ border: 0;
12
+ text-decoration: none;
13
+ }
14
+ &__control {
15
+ flex: 1;
16
+ width: 100%;
17
+ min-width: 0;
18
+ margin: 0;
19
+ padding: 0;
20
+ background-color: transparent;
21
+ caret-color: var(--color-input-cursor);
22
+ color: var(--color-input-text-active);
23
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
24
+ font-weight: var(--en-single-f-d-s-fontWeight);
25
+ }
26
+
27
+ &--active {
28
+ &.vd-hairline--bottom {
29
+ &::after {
30
+ border-color: var(--color-input-form-border-active) !important;
31
+ border-bottom-width: 2px;
32
+ }
33
+ }
34
+ }
35
+
36
+ &--error {
37
+ background-color: var(--color-input-form-bg-wrong) !important;
38
+
39
+ .@{input-prefix-cls}-form__append {
40
+ color: var(--color-input-form-border-wrong);
41
+ }
42
+
43
+ &::after {
44
+ border: 0 solid var(--color-input-form-border-wrong);
45
+ border-bottom-width: 2px;
46
+ }
47
+
48
+ &.vd-hairline--bottom {
49
+ &::after {
50
+ border-color: var(--color-input-form-border-wrong) !important;
51
+ border-bottom-width: 2px;
52
+ }
53
+ }
54
+ }
55
+
56
+ display: flex;
57
+ align-items: center;
58
+ position: relative;
59
+ padding-inline-start: calc(var(--spacing-input-max_text-padding_y) * 1px);
60
+ padding-inline-end: calc(var(--spacing-input-max_text-padding_y) * 1px);
61
+ height: calc(var(--height-input-bg) * 1px);
62
+
63
+ &.vd-hairline--bottom {
64
+ &::after {
65
+ border-color: var(--color-input-form-border-default);
66
+ }
67
+ }
68
+
69
+ .@{input-prefix-cls}-textarea {
70
+ &__control {
71
+ outline: 0 none;
72
+ border: 0;
73
+ text-decoration: none;
74
+ resize: none;
75
+ line-height: 20px;
76
+ }
77
+ }
78
+
79
+ input::-webkit-input-placeholder,
80
+ textarea::-webkit-input-placeholder {
81
+ font-size: calc(var(--en-single-f-d-r-fontSize) * 1px);
82
+ font-weight: var(--en-single-f-d-r-fontWeight);
83
+ color: var(--color-input-text-default);
84
+ }
85
+
86
+ &--disabled {
87
+ .@{input-prefix-cls}__control {
88
+ color: var(--color-input-text-disable);
89
+ }
90
+ }
91
+
92
+
93
+ &-textarea {
94
+ height: auto;
95
+ display: block;
96
+ background-color: var(--color-input-textarea-bg-default);
97
+ border-radius: calc(var(--radius-input-bg) * 1px);
98
+ min-height: calc(var(--height-input-textarea) * 1px);
99
+ padding-inline-start: calc(var(--spacing-input-textarea-padding_y) * 1px);
100
+ padding-inline-end: calc(var(--spacing-input-textarea-padding_y) * 1px);
101
+ padding-block-start: calc(var(--spacing-input-textarea-padding_x) * 1px);
102
+ padding-block-end: calc(var(--spacing-input-textarea-padding_x) * 1px);
103
+
104
+ .@{input-prefix-cls}__word-limit {
105
+ text-align: end;
106
+ color: var(--color-input-text-default);
107
+ font-size: calc(var(--en-single-f-b-r-fontSize) * 1px);
108
+ font-weight: var(--en-single-f-b-r-fontWeight);
109
+ margin-block-start: calc(var(--spacing-input-textarea_text-margin_down) * 1px);
110
+
111
+ &--error {
112
+ color: var(--color-input-text-wrong);
113
+ }
114
+ }
115
+
116
+ }
117
+
118
+
119
+ &-form {
120
+ padding-inline-start: 0;
121
+ padding-inline-end: 0;
122
+ height: calc(var(--height-input-form_text) * 1px);
123
+
124
+ &__prefix {
125
+ position: relative;
126
+ color: var(--color-input-text-active);
127
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
128
+ font-weight: var(--en-single-f-d-s-fontWeight);
129
+ margin-inline-end: calc(var(--spacing-input-form_divider-margin_y) * 1px);
130
+ padding-inline-end: calc(var(--spacing-input-form_divider-margin_y) * 1px);
131
+ }
132
+
133
+ &__right {
134
+ display: inline-flex;
135
+ align-items: center;
136
+
137
+ .@{input-prefix-cls}__word-limit {
138
+ text-align: end;
139
+ color: var(--color-input-text-default);
140
+ font-size: calc(var(--en-single-f-b-r-fontSize) * 1px);
141
+ font-weight: var(--en-single-f-b-r-fontWeight);
142
+ margin-block-start: 0;
143
+
144
+ &--error {
145
+ color: var(--color-input-text-wrong);
146
+ }
147
+ }
148
+ }
149
+
150
+ &__suffix {
151
+ margin-inline-start: calc(var(--spacing-input-suffix_icon-margin_y) * 1px);
152
+ margin-inline-end: calc(var(--spacing-input-suffix_icon-margin_y) * 1px);
153
+ color: var(--color-input-text-active);
154
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
155
+ font-weight: var(--en-single-f-d-s-fontWeight);
156
+
157
+ .vd-iconfont {
158
+ vertical-align: middle;
159
+ color: rgba(0, 0, 0, 0.3);
160
+ font-size: calc(var(--icon-input-clean) * 1px);
161
+ }
162
+ }
163
+
164
+ &__append {
165
+ color: var(--color-input-text-default);
166
+ font-size: calc(var(--en-single-f-b-r-fontSize) * 1px);
167
+ font-weight: var(--en-single-f-b-r-fontWeight);
168
+ }
169
+
170
+ &__password {
171
+ display: flex;
172
+ align-items: center;
173
+ color: var(--color-input-text-active);
174
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
175
+ font-weight: var(--en-single-f-d-s-fontWeight);
176
+
177
+ &--close {
178
+ margin-inline-start: calc(var(--spacing-input-suffix_icon-margin_y) * 1px);
179
+
180
+ .vd-iconfont {
181
+ color: rgba(0, 0, 0, 0.5);
182
+ font-size: calc(var(--icon-input-clean) * 1px);
183
+ }
184
+ }
185
+
186
+ &--password {
187
+ color: rgba(0, 0, 0, 0.5);
188
+ margin-inline-start: calc(var(--spacing-input-form_suffix_icon-margin_y) * 1px);
189
+ margin-inline-end: calc(var(--spacing-input-suffix_icon-margin_y) * 1px);
190
+ font-size: calc(var(--icon-input-form_suffix) * 1px);
191
+ }
192
+ }
193
+ }
194
+
195
+ &--bigsize {
196
+ height: calc(var(--height-input-form_number_text) * 1px);
197
+
198
+ .@{input-prefix-cls}__control {
199
+ font-size: calc(var(--en-single-f-g-b-fontSize) * 1px);
200
+ font-weight: var(--en-single-f-g-b-fontWeight);
201
+ }
202
+ }
203
+
204
+ &-textarea--warning {
205
+ &::after {
206
+ display: none;
207
+ }
208
+
209
+ .@{input-prefix-cls}__word-limit {
210
+ color: var(--color-input-form_counter-warning);
211
+ }
212
+ }
213
+
214
+ &-inputarea {
215
+ display: flex;
216
+ border-radius: 0;
217
+ }
218
+
219
+ }
220
+
221
+ .@{search-prefix-cls} {
222
+ input {
223
+ outline: 0 none;
224
+ border: 0;
225
+ text-decoration: none;
226
+ }
227
+ height: calc(var(--height-input-search_content) * 1px);
228
+ display: flex;
229
+ align-items: center;
230
+ padding-inline-start: calc(var(--spacing-input-search_textarea-padding_y) * 1px);
231
+ padding-inline-end: calc(var(--spacing-input-search_textarea-padding_y) * 1px);
232
+
233
+
234
+ &-content {
235
+ flex: 1;
236
+ display: flex;
237
+ align-items: center;
238
+ background-color: rgba(0, 0, 0, 0.05);
239
+ padding-inline-start: calc(var(--spacing-input-textarea-padding_y) * 1px);
240
+ padding-inline-end: calc(var(--spacing-input-textarea-padding_y) * 1px);
241
+ border-radius: calc(var(--radius-input-bg) * 1px);
242
+
243
+ .@{search-prefix-cls} {
244
+
245
+ &__control {
246
+ width: 100%;
247
+ caret-color: var(--color-input-cursor);
248
+ background-color: transparent;
249
+ height: calc(var(--height-input-search_bg) * 1px);
250
+ color: var(--color-input-text-active);
251
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
252
+ font-weight: var(--en-single-f-d-s-fontWeight);
253
+
254
+
255
+ &::-webkit-input-placeholder {
256
+ color: var(--color-input-text-default);
257
+ font-size: calc(var(--en-single-f-d-r-fontSize) * 1px);
258
+ font-weight: var(--en-single-f-d-r-fontWeight);
259
+ }
260
+ }
261
+
262
+
263
+ }
264
+ }
265
+
266
+ &__prefix {
267
+ display: flex;
268
+
269
+ .vd-iconfont {
270
+ vertical-align: middle;
271
+ color: rgba(0, 0, 0, 0.3);
272
+ font-size: calc(var(--icon-input-search) * 1px);
273
+ }
274
+ }
275
+
276
+ &__suffix {
277
+ margin-inline-start: calc(var(--spacing-input-suffix_icon-margin_y) * 1px);
278
+ color: var(--color-input-text-active);
279
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
280
+ font-weight: var(--en-single-f-d-s-fontWeight);
281
+
282
+ .vd-iconfont {
283
+ vertical-align: middle;
284
+ color: rgba(0, 0, 0, 0.3);
285
+ font-size: calc(var(--icon-input-clean) * 1px);
286
+ }
287
+ }
288
+
289
+ &__action {
290
+ margin-inline-start: calc(var(--spacing-input-search_cancel-margin_left) * 1px);
291
+ display: flex;
292
+
293
+ }
294
+
295
+ }
296
+
297
+ .@{stepper-prefix-cls} {
298
+ input {
299
+ outline: 0 none;
300
+ border: 0;
301
+ text-decoration: none;
302
+ }
303
+ display: flex;
304
+ align-items: center;
305
+ background-color: var(--color-input-trade-bg);
306
+ height: calc(var(--height-input-bg) * 1px);
307
+ padding-inline-start: calc(var(--spacing-input-trade-padding_y) * 1px);
308
+ padding-inline-end: calc(var(--spacing-input-trade-padding_y) * 1px);
309
+ border-radius: calc(var(--radius-input-trade_bg) * 1px);
310
+
311
+ &-input {
312
+ width: 100%;
313
+ padding: 0;
314
+ caret-color: var(--color-input-cursor);
315
+ background-color: transparent;
316
+ color: var(--color-input-text-active);
317
+ font-size: calc(var(--en-single-f-d-s-fontSize) * 1px);
318
+ font-weight: var(--en-single-f-d-s-fontWeight);
319
+ // margin-inline-start: calc(var(--spacing-input-trade_number_input-margin_left) * 1px);
320
+ margin-inline-end: calc(var(--spacing-input-trade_number_input-margin_left) * 1px);
321
+
322
+ &::-webkit-input-placeholder {
323
+ color: var(--color-input-text-default);
324
+ font-size: calc(var(--en-single-f-d-r-fontSize) * 1px);
325
+ font-weight: var(--en-single-f-d-r-fontWeight);
326
+ }
327
+
328
+ }
329
+
330
+ .@{stepper-prefix-cls}__minus {
331
+ padding-inline-start: 0;
332
+ padding-inline-end: calc(var(--spacing-input-trade_number_divider-margin_y) * 1px);
333
+ background-color: transparent;
334
+
335
+ .vd-iconfont {
336
+ color: rgba(0, 0, 0, 0.5);
337
+ font-size: calc(var(--icon-input-trade_number_input_icon) * 1px);
338
+ }
339
+ }
340
+
341
+ .@{stepper-prefix-cls}__plus {
342
+ padding-inline-start: calc(var(--spacing-input-trade_number_divider-margin_y) * 1px);
343
+ padding-inline-end: 0;
344
+ // padding-inline-end: calc(var(--spacing-input-trade_number_divider-margin_y) * 1px);
345
+ background-color: transparent;
346
+
347
+ .vd-iconfont {
348
+ color: rgba(0, 0, 0, 0.5);
349
+ font-size: calc(var(--icon-input-trade_number_input_icon) * 1px);
350
+ }
351
+ }
352
+
353
+ &--center {
354
+ text-align: center;
355
+
356
+ .@{stepper-prefix-cls} {
357
+ &-input {
358
+ text-align: center;
359
+ margin-inline-start: calc(var(--spacing-input-trade_number_input-margin_left) * 1px);
360
+ }
361
+ }
362
+
363
+ }
364
+
365
+ &--disabled {
366
+ .@{stepper-prefix-cls} {
367
+ color: var(--color-input-text-disable);
368
+ }
369
+
370
+ .vd-iconfont {
371
+ opacity: var(--opacity-30);
372
+ }
373
+ }
374
+
375
+
376
+ &--gray {
377
+ background-color: var(--divider-color-default-1);
378
+ border-radius: calc(var(--radius-input-bg) * 1px);
379
+
380
+ }
381
+
382
+ input[type="number"]::-webkit-inner-spin-button,
383
+ input[type="number"]::-webkit-outer-spin-button {
384
+ -webkit-appearance: none;
385
+ margin: 0;
386
+ }
387
+ }
388
+
389
+ .@{password-prefix-cls} {
390
+ input {
391
+ outline: 0 none;
392
+ border: 0;
393
+ text-decoration: none;
394
+ }
395
+ direction: ltr;
396
+ position: relative;
397
+ margin: 0 calc(var(--spacing-input-code-padding_y) * 1px);
398
+ -webkit-user-select: none;
399
+ user-select: none;
400
+
401
+ &__security {
402
+ display: flex;
403
+ align-items: center;
404
+ width: 100%;
405
+ cursor: pointer;
406
+ height: calc(var(--height-input-code) * 1px);
407
+
408
+ }
409
+
410
+ &__item {
411
+ position: relative;
412
+ flex-shrink: 0;
413
+ display: flex;
414
+ align-items: center;
415
+ justify-content: center;
416
+ color: var(--color-input-text-active);
417
+ font-size: calc(var(--en-single-f-f-b-fontSize) * 1px);
418
+ font-weight: var(--en-single-f-f-b-fontWeight);
419
+ width: calc(var(--width-input-code_number) * 1px);
420
+ height: calc(var(--height-input-code_number) * 1px);
421
+ margin-inline-end: calc(var(--spacing-input-code_number-margin_right) * 1px);
422
+
423
+ &:last-child {
424
+ margin-inline-end: 0;
425
+ }
426
+
427
+ &::after {
428
+ content: '';
429
+ position: absolute;
430
+ left: 50%;
431
+ bottom: ~"calc(var(--spacing-input-code_number-margin_bottom) * -1px)";
432
+ transform: translateX(-50%);
433
+ background-color: var(--color-input-form-border-default);
434
+ width: calc(var(--width-input-code_number_line) * 1px);
435
+ height: calc(var(--height-input-code_number_line) * 1px);
436
+ }
437
+
438
+ &.is-filled {
439
+ &::after {
440
+ background-color: var(--color-input-form-border-active);
441
+ }
442
+ }
443
+
444
+ .mask-icon {
445
+ visibility: visible;
446
+ position: absolute;
447
+ top: 50%;
448
+ left: 50%;
449
+ width: 16px;
450
+ height: 16px;
451
+ background-color: #000;
452
+ border-radius: 100%;
453
+ -webkit-transform: translate(-50%, -50%);
454
+ transform: translate(-50%, -50%);
455
+ }
456
+ }
457
+
458
+ &__input {
459
+ opacity: 0;
460
+ position: absolute;
461
+ z-index: 1;
462
+ left: 0;
463
+ right: 0;
464
+ top: 0;
465
+ bottom: 0;
466
+ }
467
+ }
468
+
469
+ .vd-textarea-auto {
470
+ height: auto;
471
+ min-height: auto;
472
+ }
473
+
474
+
475
+ [lang='ar']{
476
+ .@{input-prefix-cls} {
477
+ &__word-limit{
478
+ display: flex;
479
+ }
480
+ }
481
+
482
+ }
@@ -0,0 +1,8 @@
1
+ import List from './index.vue';
2
+ import './style.less';
3
+
4
+ List.install = function (Vue) {
5
+ Vue.component(List.name, List);
6
+ };
7
+
8
+ export default List;
@@ -0,0 +1,159 @@
1
+ <template>
2
+ <div class="vd-list" :class="wrapClasses" @click="toggleActiveSelect">
3
+ <div class="vd-list--left" :class="listLeftClasses">
4
+ <vd-icon v-if="leftCusIcon" :name="leftCusIcon" :svg="leftCusSvg" :class="leftCusIconClasses"
5
+ :style="{ 'fontSize': fontSize + 'px' }"></vd-icon>
6
+ <div v-if="extraSlot">
7
+ <slot></slot>
8
+ </div>
9
+ <div class="vd-list-content" :class="contentClasses">
10
+ <vd-icon v-if="leftIcon" :name="leftIcon" :svg="leftSvg" :class="leftIconClasses"></vd-icon>
11
+ <span class="vd-list-inner__title vd-multi-ellipsis--l2" :class="innerTitleClasses">{{ title }}</span>
12
+ <vd-icon v-if="rightIcon" :name="rightIcon" :svg="rightSvg" :class="rightIconClasses"></vd-icon>
13
+ <p class="vd-title__subtext vd-multi-ellipsis--l2" :class="subTextClasses" v-if="subText">{{ subText }}
14
+ </p>
15
+ </div>
16
+ </div>
17
+ <div class="vd-list--right" v-if="guideText || arrowNext || activeSelect || $slots.default">
18
+ <vd-icon class="vd-list__icon--extra" v-if="cusIcon" :name="cusIcon" :svg="cusSvg"></vd-icon>
19
+ <slot name="badge">
20
+ <vd-badge is-dot v-if="badge" class="vd-list-common__badge"></vd-badge>
21
+ </slot>
22
+ <!-- </span> -->
23
+ <span v-if="guideText" :class="textRightClasses">
24
+ <p>{{ guideText }}</p>
25
+ <p v-if="mulText" class="vd-list__multext">{{ mulText }}</p>
26
+ </span>
27
+ <span v-if="arrowNext" class="vd-list-arrow" @click="$emit('back')">
28
+ <vd-icon :name="arrowNext"></vd-icon>
29
+ </span>
30
+ <!-- <span v-if="activeSelect" class="vd-list-check__select"> -->
31
+ <vd-icon v-if="activeSelect" class="vd-list-check__select" name="icon_btn_singleslt"
32
+ color="#1BC47D"></vd-icon>
33
+ <!-- </span> -->
34
+
35
+ <span v-if="curSlot" class="vd-list__switch">
36
+ <slot></slot>
37
+ </span>
38
+ </div>
39
+ </div>
40
+ </template>
41
+ <script>
42
+ const prefixCls = 'vd-list';
43
+
44
+ export default {
45
+ name: 'vd-list',
46
+ props: {
47
+ title: String,
48
+ leftIcon:String,
49
+ rightIcon:String,
50
+ cusIcon: String,
51
+ leftCusIcon: String,
52
+ arrow: Boolean,
53
+ subText: String,
54
+ guideText: String,
55
+ mulText: String,
56
+ activeSelect: Boolean,
57
+ type: String,
58
+ leftSvg: Boolean,
59
+ rightSvg: Boolean,
60
+ cusSvg: Boolean,
61
+ leftCusSvg: Boolean,
62
+ arrowNext: String,
63
+ badge: Boolean,
64
+ curSlot: Boolean,
65
+ divider: Boolean,
66
+ extraSlot: Boolean,
67
+ fontSize: {
68
+ type: [String, Number],
69
+ },
70
+ },
71
+ data() {
72
+ return {
73
+ name: ""
74
+ };
75
+ },
76
+ computed: {
77
+ wrapClasses() {
78
+ return [
79
+ {
80
+ [`${prefixCls}-${this.type}`]: this.type,
81
+ [`${prefixCls}-${this.type}--active`]: this.activeSelect,
82
+ [`${prefixCls}-${this.type}-double`]: this.subText,
83
+ 'vd-hairline--bottom': this.divider,
84
+ }
85
+ ];
86
+ },
87
+ leftIconClasses() {
88
+ return [
89
+ {
90
+ [`${prefixCls}-${this.type}__icon--left`]: this.type
91
+ }
92
+ ];
93
+ },
94
+ leftCusIconClasses() {
95
+ return [
96
+ {
97
+ [`${prefixCls}-${this.type}__icon--leftcus`]: this.type
98
+ }
99
+ ];
100
+ },
101
+ listLeftClasses() {
102
+ return [
103
+ {
104
+ [`${prefixCls}-common--left`]: this.type
105
+ }
106
+ ];
107
+ },
108
+ contentClasses() {
109
+ return [
110
+ {
111
+ [`${prefixCls}-content-${this.type}`]: this.type
112
+ }
113
+ ];
114
+ },
115
+ innerTitleClasses() {
116
+ return [
117
+ {
118
+ [`${prefixCls}-${this.type}__title`]: this.type
119
+ }
120
+ ];
121
+ },
122
+ subTextClasses() {
123
+ return [
124
+ {
125
+ [`${prefixCls}-${this.type}__subtext`]: this.type
126
+ }
127
+ ];
128
+ },
129
+ rightIconClasses() {
130
+ return [
131
+ {
132
+ [`${prefixCls}-${this.type}__icon--right`]: this.type
133
+ }
134
+ ]
135
+ },
136
+ textRightClasses() {
137
+ return [
138
+ {
139
+ [`${prefixCls}-${this.type}__text--right`]: this.type
140
+ }
141
+ ]
142
+ },
143
+ },
144
+ mounted() {
145
+ },
146
+ methods: {
147
+ toggleActiveSelect() {
148
+ this.$emit('toggle-active', !this.activeSelect);
149
+ }
150
+ },
151
+ watch: {
152
+
153
+ }
154
+ };
155
+ </script>
156
+
157
+ <style lang="less">
158
+ @import './style.less';
159
+ </style>