iov-design 2.15.60 → 2.15.61

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 (234) hide show
  1. package/README.md +148 -148
  2. package/lib/alert.js +24 -105
  3. package/lib/aside.js +24 -34
  4. package/lib/autocomplete.js +36 -240
  5. package/lib/avatar.js +21 -20
  6. package/lib/backtop.js +27 -52
  7. package/lib/badge.js +30 -58
  8. package/lib/breadcrumb-item.js +24 -53
  9. package/lib/breadcrumb.js +24 -37
  10. package/lib/button-group.js +24 -29
  11. package/lib/button.js +38 -60
  12. package/lib/calendar.js +29 -146
  13. package/lib/card.js +24 -51
  14. package/lib/carousel-item.js +30 -68
  15. package/lib/carousel.js +27 -159
  16. package/lib/cascader-panel.js +41 -64
  17. package/lib/cascader.js +37 -470
  18. package/lib/checkbox-button.js +28 -164
  19. package/lib/checkbox-group.js +24 -37
  20. package/lib/checkbox.js +35 -189
  21. package/lib/col.js +1 -0
  22. package/lib/collapse-item.js +27 -125
  23. package/lib/collapse.js +24 -37
  24. package/lib/color-picker.js +104 -424
  25. package/lib/container.js +24 -34
  26. package/lib/date-picker.js +126 -1981
  27. package/lib/descriptions-item.js +1 -0
  28. package/lib/descriptions.js +1 -0
  29. package/lib/dialog.js +24 -137
  30. package/lib/divider.js +29 -64
  31. package/lib/drawer.js +24 -139
  32. package/lib/dropdown-item.js +27 -45
  33. package/lib/dropdown-menu.js +24 -51
  34. package/lib/dropdown.js +21 -20
  35. package/lib/empty.js +24 -61
  36. package/lib/footer.js +24 -34
  37. package/lib/form-item.js +42 -128
  38. package/lib/form.js +27 -40
  39. package/lib/header.js +24 -34
  40. package/lib/icon.js +24 -29
  41. package/lib/image.js +36 -220
  42. package/lib/index.js +1 -1
  43. package/lib/infinite-scroll.js +1 -0
  44. package/lib/input-number.js +30 -163
  45. package/lib/input.js +42 -274
  46. package/lib/iov-design.common.js +1635 -11132
  47. package/lib/link.js +31 -56
  48. package/lib/loading.js +24 -77
  49. package/lib/locale/format.js +10 -10
  50. package/lib/main.js +24 -29
  51. package/lib/menu-item-group.js +24 -40
  52. package/lib/menu-item.js +27 -83
  53. package/lib/menu.js +21 -20
  54. package/lib/message-box.js +24 -321
  55. package/lib/message.js +30 -82
  56. package/lib/mixins/migrating.js +20 -20
  57. package/lib/notification.js +24 -109
  58. package/lib/option-group.js +24 -50
  59. package/lib/option.js +27 -76
  60. package/lib/page-header.js +24 -56
  61. package/lib/pagination.js +24 -97
  62. package/lib/popconfirm.js +24 -97
  63. package/lib/popover.js +24 -89
  64. package/lib/progress.js +30 -133
  65. package/lib/radio-button.js +29 -111
  66. package/lib/radio-group.js +24 -39
  67. package/lib/radio.js +36 -152
  68. package/lib/rate.js +24 -94
  69. package/lib/result.js +72 -187
  70. package/lib/row.js +1 -0
  71. package/lib/scrollbar.js +1 -0
  72. package/lib/select.js +48 -637
  73. package/lib/skeleton-item.js +36 -68
  74. package/lib/skeleton.js +28 -70
  75. package/lib/slider.js +36 -267
  76. package/lib/spinner.js +24 -51
  77. package/lib/statistic.js +24 -76
  78. package/lib/step.js +29 -118
  79. package/lib/steps.js +27 -40
  80. package/lib/submenu.js +21 -20
  81. package/lib/switch.js +24 -130
  82. package/lib/tab-pane.js +24 -52
  83. package/lib/table-column.js +1 -0
  84. package/lib/table.js +93 -633
  85. package/lib/tabs.js +34 -49
  86. package/lib/tag.js +21 -20
  87. package/lib/theme-chalk/button.css +1 -1
  88. package/lib/theme-chalk/calendar.css +1 -1
  89. package/lib/theme-chalk/dropdown.css +1 -1
  90. package/lib/theme-chalk/index.css +1 -1
  91. package/lib/theme-chalk/link.css +1 -1
  92. package/lib/theme-chalk/message-box.css +1 -1
  93. package/lib/theme-chalk/transfer.css +1 -1
  94. package/lib/time-picker.js +58 -820
  95. package/lib/time-select.js +42 -303
  96. package/lib/timeline-item.js +29 -75
  97. package/lib/timeline.js +21 -20
  98. package/lib/tooltip.js +1 -0
  99. package/lib/transfer.js +36 -299
  100. package/lib/tree.js +54 -243
  101. package/lib/upload.js +86 -654
  102. package/lib/utils/clickoutside.js +7 -7
  103. package/lib/utils/vue-popper.js +7 -7
  104. package/package.json +154 -154
  105. package/packages/autocomplete/src/autocomplete-suggestions.vue +76 -76
  106. package/packages/autocomplete/src/autocomplete.vue +285 -285
  107. package/packages/button/src/button.vue +90 -90
  108. package/packages/calendar/src/date-table.vue +200 -200
  109. package/packages/calendar/src/main.vue +280 -280
  110. package/packages/carousel/src/item.vue +138 -138
  111. package/packages/carousel/src/main.vue +315 -315
  112. package/packages/cascader/src/cascader.vue +776 -776
  113. package/packages/cascader-panel/src/cascader-menu.vue +138 -138
  114. package/packages/cascader-panel/src/cascader-node.vue +246 -246
  115. package/packages/cascader-panel/src/cascader-panel.vue +391 -391
  116. package/packages/cascader-panel/src/node.js +166 -166
  117. package/packages/cascader-panel/src/store.js +58 -58
  118. package/packages/checkbox/src/checkbox-button.vue +199 -199
  119. package/packages/checkbox/src/checkbox-group.vue +49 -49
  120. package/packages/checkbox/src/checkbox.vue +225 -225
  121. package/packages/collapse/src/collapse-item.vue +114 -114
  122. package/packages/color-picker/src/components/picker-dropdown.vue +121 -121
  123. package/packages/color-picker/src/main.vue +188 -188
  124. package/packages/date-picker/src/basic/date-table.vue +441 -441
  125. package/packages/date-picker/src/basic/month-table.vue +269 -269
  126. package/packages/date-picker/src/basic/time-spinner.vue +304 -304
  127. package/packages/date-picker/src/basic/year-table.vue +111 -111
  128. package/packages/date-picker/src/panel/date-range.vue +680 -680
  129. package/packages/date-picker/src/panel/date.vue +609 -609
  130. package/packages/date-picker/src/panel/month-range.vue +289 -289
  131. package/packages/date-picker/src/panel/time-range.vue +248 -248
  132. package/packages/date-picker/src/panel/time-select.vue +178 -178
  133. package/packages/date-picker/src/panel/time.vue +186 -186
  134. package/packages/date-picker/src/picker.vue +967 -967
  135. package/packages/descriptions/src/index.js +180 -180
  136. package/packages/dialog/src/component.vue +262 -262
  137. package/packages/drawer/src/main.vue +205 -205
  138. package/packages/dropdown/src/dropdown-item.vue +37 -37
  139. package/packages/dropdown/src/dropdown-menu.vue +63 -63
  140. package/packages/dropdown/src/dropdown.vue +293 -293
  141. package/packages/empty/src/index.vue +70 -70
  142. package/packages/form/src/form-item.vue +324 -324
  143. package/packages/form/src/form.vue +182 -182
  144. package/packages/image/src/image-viewer.vue +330 -330
  145. package/packages/image/src/main.vue +249 -249
  146. package/packages/infinite-scroll/src/main.js +150 -150
  147. package/packages/input/src/input.vue +477 -477
  148. package/packages/input-number/src/input-number.vue +283 -283
  149. package/packages/loading/src/directive.js +133 -133
  150. package/packages/loading/src/index.js +106 -106
  151. package/packages/menu/src/menu-item.vue +112 -112
  152. package/packages/menu/src/menu.vue +325 -325
  153. package/packages/menu/src/submenu.vue +349 -349
  154. package/packages/message/src/main.js +91 -91
  155. package/packages/message-box/src/main.js +216 -216
  156. package/packages/message-box/src/main.vue +333 -333
  157. package/packages/notification/src/main.js +94 -94
  158. package/packages/page-header/src/main.vue +30 -30
  159. package/packages/pagination/src/pagination.js +390 -390
  160. package/packages/popconfirm/src/main.vue +104 -104
  161. package/packages/popover/src/main.vue +239 -239
  162. package/packages/radio/src/radio-button.vue +115 -115
  163. package/packages/radio/src/radio-group.vue +115 -115
  164. package/packages/radio/src/radio.vue +148 -148
  165. package/packages/rate/src/main.vue +348 -348
  166. package/packages/scrollbar/src/bar.js +92 -92
  167. package/packages/scrollbar/src/main.js +130 -130
  168. package/packages/select/src/option-group.vue +60 -60
  169. package/packages/select/src/option.vue +171 -171
  170. package/packages/select/src/select-dropdown.vue +74 -74
  171. package/packages/select/src/select.vue +979 -979
  172. package/packages/slider/src/button.vue +238 -238
  173. package/packages/slider/src/main.vue +427 -427
  174. package/packages/statistic/src/main.vue +204 -204
  175. package/packages/steps/src/steps.vue +68 -68
  176. package/packages/switch/src/component.vue +182 -182
  177. package/packages/table/src/config.js +153 -153
  178. package/packages/table/src/filter-panel.vue +194 -194
  179. package/packages/table/src/store/current.js +76 -76
  180. package/packages/table/src/store/helper.js +41 -41
  181. package/packages/table/src/store/index.js +147 -147
  182. package/packages/table/src/store/watcher.js +502 -502
  183. package/packages/table/src/table-body.js +469 -469
  184. package/packages/table/src/table-column.js +328 -328
  185. package/packages/table/src/table-header.js +571 -571
  186. package/packages/table/src/table-layout.js +249 -249
  187. package/packages/table/src/table-row.js +101 -101
  188. package/packages/table/src/table.vue +740 -740
  189. package/packages/table/src/util.js +273 -273
  190. package/packages/tabs/src/tab-bar.vue +57 -57
  191. package/packages/tabs/src/tab-nav.vue +294 -294
  192. package/packages/tabs/src/tabs.vue +201 -201
  193. package/packages/theme-chalk/src/button.scss +416 -416
  194. package/packages/theme-chalk/src/cascader.scss +252 -252
  195. package/packages/theme-chalk/src/checkbox.scss +419 -419
  196. package/packages/theme-chalk/src/common/var.scss +795 -795
  197. package/packages/theme-chalk/src/form.scss +201 -201
  198. package/packages/theme-chalk/src/input.scss +591 -591
  199. package/packages/theme-chalk/src/iovfont.scss +803 -803
  200. package/packages/theme-chalk/src/link.scss +8 -8
  201. package/packages/theme-chalk/src/message-box.scss +207 -207
  202. package/packages/theme-chalk/src/mixins/_button.scss +136 -136
  203. package/packages/theme-chalk/src/mixins/mixins.scss +190 -190
  204. package/packages/theme-chalk/src/radio-button.scss +115 -115
  205. package/packages/theme-chalk/src/select.scss +270 -270
  206. package/packages/theme-chalk/src/tabs.scss +755 -755
  207. package/packages/theme-chalk/src/upload.scss +568 -568
  208. package/packages/tooltip/src/main.js +242 -242
  209. package/packages/transfer/src/main.vue +231 -231
  210. package/packages/transfer/src/transfer-panel.vue +251 -251
  211. package/packages/tree/src/model/node.js +484 -484
  212. package/packages/tree/src/tree-node.vue +279 -279
  213. package/packages/tree/src/tree.vue +496 -496
  214. package/packages/upload/src/index.vue +420 -420
  215. package/packages/upload/src/upload-file.vue +98 -98
  216. package/packages/upload/src/upload-list.vue +115 -115
  217. package/packages/upload/src/upload-picture.vue +98 -98
  218. package/packages/upload/src/upload.vue +231 -231
  219. package/packages/upload/src/utils.js +31 -31
  220. package/src/directives/repeat-click.js +26 -26
  221. package/src/index.js +259 -259
  222. package/src/locale/format.js +46 -46
  223. package/src/locale/index.js +48 -48
  224. package/src/locale/lang/lo-LA.js +126 -126
  225. package/src/mixins/locale.js +9 -9
  226. package/src/mixins/migrating.js +54 -54
  227. package/src/transitions/collapse-transition.js +77 -77
  228. package/src/utils/clickoutside.js +76 -76
  229. package/src/utils/date-util.js +282 -282
  230. package/src/utils/popup/index.js +218 -218
  231. package/src/utils/popup/popup-manager.js +194 -194
  232. package/src/utils/util.js +245 -245
  233. package/src/utils/vdom.js +5 -5
  234. package/src/utils/vue-popper.js +198 -198
@@ -1,136 +1,136 @@
1
- @import "../common/var";
2
- @mixin button-plain($color, $background-color, $border-color, $color-hover, $background-color-hover, $border-color-hover, $color-active, $background-color-active, $border-color-active, $color-disabled, $background-color-disabled, $border-color-disabled) {
3
- background: $background-color;
4
- border-color: $border-color;
5
- color: $color;
6
-
7
- &:hover {
8
- background: $background-color-hover;
9
- border-color: $border-color-hover;
10
- color: $color-hover;
11
- }
12
-
13
- &:active,
14
- &.is-active {
15
- background: $background-color-active;
16
- border-color: $border-color-active;
17
- color: $color-active;
18
- outline: none;
19
- }
20
-
21
- &.is-disabled {
22
- &,
23
- &:hover,
24
- &:focus,
25
- &:active {
26
- background-color: $background-color-disabled;
27
- border-color: $border-color-disabled;
28
- color: $color-disabled;
29
- }
30
- }
31
- }
32
-
33
- @mixin button-variant($color, $background-color, $background-color-hover, $background-color-active, $background-color-disabled) {
34
- background-color: $background-color;
35
- border-color: $background-color;
36
- color: $color;
37
-
38
- &:hover {
39
- background: $background-color-hover;
40
- border-color: $background-color-hover;
41
- color: $color;
42
- }
43
-
44
- &:active,
45
- &.is-active {
46
- background: $background-color-active;
47
- border-color: $background-color-active;
48
- color: $color;
49
- outline: none;
50
- }
51
-
52
- &.is-disabled {
53
- &,
54
- &:hover,
55
- &:focus,
56
- &:active {
57
- background-color: $background-color-disabled;
58
- border-color: $background-color-disabled;
59
- color: $color;
60
- }
61
- }
62
- }
63
-
64
- @mixin button-size($height, $padding-horizontal, $font-size, $border-radius) {
65
- padding: 0 $padding-horizontal;
66
- height: $height;
67
- line-height: $height - 2px;
68
- font-size: $font-size;
69
- border-radius: $border-radius;
70
- &.is-round {
71
- padding: 0 $padding-horizontal;
72
- }
73
- }
74
-
75
- @mixin button-dashed($color, $background-color, $color-hover, $background-color-hover, $color-active, $background-color-active, $color-disabled, $background-color-disabled) {
76
- background: $background-color;
77
- border-color: $color;
78
- color: $color;
79
-
80
- &:hover {
81
- background: $background-color-hover;
82
- border-color: $color-hover;
83
- color: $color-hover;
84
- }
85
-
86
- &:active,
87
- &.is-active {
88
- background: $background-color-active;
89
- border-color: $color-active;
90
- color: $color-active;
91
- outline: none;
92
- }
93
-
94
- &.is-disabled {
95
- &,
96
- &:hover,
97
- &:focus,
98
- &:active {
99
- background-color: $background-color-disabled;
100
- border-color: $color-disabled;
101
- color: $color-disabled;
102
- }
103
- }
104
- }
105
-
106
-
107
- @mixin button-ghost($color, $color-hover, $color-active, $color-disabled) {
108
- background: none;
109
- border-color: $color;
110
- color: $color;
111
-
112
- &:hover {
113
- background: none;
114
- border-color: $color-hover;
115
- color: $color-hover;
116
- }
117
-
118
- &:active,
119
- &.is-active {
120
- background: none;
121
- border-color: $color-active;
122
- color: $color-active;
123
- outline: none;
124
- }
125
-
126
- &.is-disabled {
127
- &,
128
- &:hover,
129
- &:focus,
130
- &:active {
131
- background: none;
132
- border-color: $color-disabled;
133
- color: $color-disabled;
134
- }
135
- }
136
- }
1
+ @import "../common/var";
2
+ @mixin button-plain($color, $background-color, $border-color, $color-hover, $background-color-hover, $border-color-hover, $color-active, $background-color-active, $border-color-active, $color-disabled, $background-color-disabled, $border-color-disabled) {
3
+ background: $background-color;
4
+ border-color: $border-color;
5
+ color: $color;
6
+
7
+ &:hover {
8
+ background: $background-color-hover;
9
+ border-color: $border-color-hover;
10
+ color: $color-hover;
11
+ }
12
+
13
+ &:active,
14
+ &.is-active {
15
+ background: $background-color-active;
16
+ border-color: $border-color-active;
17
+ color: $color-active;
18
+ outline: none;
19
+ }
20
+
21
+ &.is-disabled {
22
+ &,
23
+ &:hover,
24
+ &:focus,
25
+ &:active {
26
+ background-color: $background-color-disabled;
27
+ border-color: $border-color-disabled;
28
+ color: $color-disabled;
29
+ }
30
+ }
31
+ }
32
+
33
+ @mixin button-variant($color, $background-color, $background-color-hover, $background-color-active, $background-color-disabled) {
34
+ background-color: $background-color;
35
+ border-color: $background-color;
36
+ color: $color;
37
+
38
+ &:hover {
39
+ background: $background-color-hover;
40
+ border-color: $background-color-hover;
41
+ color: $color;
42
+ }
43
+
44
+ &:active,
45
+ &.is-active {
46
+ background: $background-color-active;
47
+ border-color: $background-color-active;
48
+ color: $color;
49
+ outline: none;
50
+ }
51
+
52
+ &.is-disabled {
53
+ &,
54
+ &:hover,
55
+ &:focus,
56
+ &:active {
57
+ background-color: $background-color-disabled;
58
+ border-color: $background-color-disabled;
59
+ color: $color;
60
+ }
61
+ }
62
+ }
63
+
64
+ @mixin button-size($height, $padding-horizontal, $font-size, $border-radius) {
65
+ padding: 0 $padding-horizontal;
66
+ height: $height;
67
+ line-height: $height - 2px;
68
+ font-size: $font-size;
69
+ border-radius: $border-radius;
70
+ &.is-round {
71
+ padding: 0 $padding-horizontal;
72
+ }
73
+ }
74
+
75
+ @mixin button-dashed($color, $background-color, $color-hover, $background-color-hover, $color-active, $background-color-active, $color-disabled, $background-color-disabled) {
76
+ background: $background-color;
77
+ border-color: $color;
78
+ color: $color;
79
+
80
+ &:hover {
81
+ background: $background-color-hover;
82
+ border-color: $color-hover;
83
+ color: $color-hover;
84
+ }
85
+
86
+ &:active,
87
+ &.is-active {
88
+ background: $background-color-active;
89
+ border-color: $color-active;
90
+ color: $color-active;
91
+ outline: none;
92
+ }
93
+
94
+ &.is-disabled {
95
+ &,
96
+ &:hover,
97
+ &:focus,
98
+ &:active {
99
+ background-color: $background-color-disabled;
100
+ border-color: $color-disabled;
101
+ color: $color-disabled;
102
+ }
103
+ }
104
+ }
105
+
106
+
107
+ @mixin button-ghost($color, $color-hover, $color-active, $color-disabled) {
108
+ background: none;
109
+ border-color: $color;
110
+ color: $color;
111
+
112
+ &:hover {
113
+ background: none;
114
+ border-color: $color-hover;
115
+ color: $color-hover;
116
+ }
117
+
118
+ &:active,
119
+ &.is-active {
120
+ background: none;
121
+ border-color: $color-active;
122
+ color: $color-active;
123
+ outline: none;
124
+ }
125
+
126
+ &.is-disabled {
127
+ &,
128
+ &:hover,
129
+ &:focus,
130
+ &:active {
131
+ background: none;
132
+ border-color: $color-disabled;
133
+ color: $color-disabled;
134
+ }
135
+ }
136
+ }
@@ -1,190 +1,190 @@
1
- @import "function";
2
- @import "../common/var";
3
-
4
- /* Break-points
5
- -------------------------- */
6
- @mixin res($key, $map: $--breakpoints) {
7
- // 循环断点Map,如果存在则返回
8
- @if map-has-key($map, $key) {
9
- @media only screen and #{inspect(map-get($map, $key))} {
10
- @content;
11
- }
12
- } @else {
13
- @warn "Undefeined points: `#{$map}`";
14
- }
15
- }
16
-
17
- /* Scrollbar
18
- -------------------------- */
19
- @mixin scroll-bar {
20
- $--scrollbar-thumb-background: #b4bccc;
21
- $--scrollbar-track-background: #fff;
22
-
23
- &::-webkit-scrollbar {
24
- z-index: 11;
25
- width: 6px;
26
-
27
- &:horizontal {
28
- height: 6px;
29
- }
30
-
31
- &-thumb {
32
- border-radius: 5px;
33
- width: 6px;
34
- background: $--scrollbar-thumb-background;
35
- }
36
-
37
- &-corner {
38
- background: $--scrollbar-track-background;
39
- }
40
-
41
- &-track {
42
- background: $--scrollbar-track-background;
43
-
44
- &-piece {
45
- background: $--scrollbar-track-background;
46
- width: 6px;
47
- }
48
- }
49
- }
50
- }
51
-
52
- /* Placeholder
53
- -------------------------- */
54
- @mixin placeholder {
55
- &::-webkit-input-placeholder {
56
- @content
57
- }
58
-
59
- &::-moz-placeholder {
60
- @content
61
- }
62
-
63
- &:-ms-input-placeholder {
64
- @content
65
- }
66
- }
67
-
68
- /* BEM
69
- -------------------------- */
70
- @mixin b($block) {
71
- $B: $namespace+'-'+$block !global;
72
-
73
- .#{$B} {
74
- @content;
75
- }
76
- }
77
-
78
- @mixin e($element) {
79
- $E: $element !global;
80
- $selector: &;
81
- $currentSelector: "";
82
- @each $unit in $element {
83
- $currentSelector: #{$currentSelector + "." + $B + $element-separator + $unit + ","};
84
- }
85
-
86
- @if hitAllSpecialNestRule($selector) {
87
- @at-root {
88
- #{$selector} {
89
- #{$currentSelector} {
90
- @content;
91
- }
92
- }
93
- }
94
- } @else {
95
- @at-root {
96
- #{$currentSelector} {
97
- @content;
98
- }
99
- }
100
- }
101
- }
102
-
103
- @mixin m($modifier) {
104
- $selector: &;
105
- $currentSelector: "";
106
- @each $unit in $modifier {
107
- $currentSelector: #{$currentSelector + & + $modifier-separator + $unit + ","};
108
- }
109
-
110
- @at-root {
111
- #{$currentSelector} {
112
- @content;
113
- }
114
- }
115
- }
116
-
117
- @mixin configurable-m($modifier, $E-flag: false) {
118
- $selector: &;
119
- $interpolation: '';
120
-
121
- @if $E-flag {
122
- $interpolation: $element-separator + $E-flag;
123
- }
124
-
125
- @at-root {
126
- #{$selector} {
127
- .#{$B+$interpolation+$modifier-separator+$modifier} {
128
- @content;
129
- }
130
- }
131
- }
132
- }
133
-
134
- @mixin spec-selector($specSelector: '', $element: $E, $modifier: false, $block: $B) {
135
- $modifierCombo: '';
136
-
137
- @if $modifier {
138
- $modifierCombo: $modifier-separator + $modifier;
139
- }
140
-
141
- @at-root {
142
- #{&}#{$specSelector}.#{$block+$element-separator+$element+$modifierCombo} {
143
- @content
144
- }
145
- }
146
- }
147
-
148
- @mixin meb($modifier: false, $element: $E, $block: $B) {
149
- $selector: &;
150
- $modifierCombo: '';
151
-
152
- @if $modifier {
153
- $modifierCombo: $modifier-separator + $modifier;
154
- }
155
-
156
- @at-root {
157
- #{$selector} {
158
- .#{$block+$element-separator+$element+$modifierCombo} {
159
- @content
160
- }
161
- }
162
- }
163
- }
164
-
165
- @mixin when($state) {
166
- @at-root {
167
- &.#{$state-prefix + $state} {
168
- @content;
169
- }
170
- }
171
- }
172
-
173
- @mixin extend-rule($name) {
174
- @extend #{'%shared-'+$name};
175
- }
176
-
177
- @mixin share-rule($name) {
178
- $rule-name: '%shared-'+$name;
179
-
180
- @at-root #{$rule-name} {
181
- @content
182
- }
183
- }
184
-
185
- @mixin pseudo($pseudo) {
186
- @at-root #{&}#{':#{$pseudo}'} {
187
- @content
188
- }
189
- }
190
-
1
+ @import "function";
2
+ @import "../common/var";
3
+
4
+ /* Break-points
5
+ -------------------------- */
6
+ @mixin res($key, $map: $--breakpoints) {
7
+ // 循环断点Map,如果存在则返回
8
+ @if map-has-key($map, $key) {
9
+ @media only screen and #{inspect(map-get($map, $key))} {
10
+ @content;
11
+ }
12
+ } @else {
13
+ @warn "Undefeined points: `#{$map}`";
14
+ }
15
+ }
16
+
17
+ /* Scrollbar
18
+ -------------------------- */
19
+ @mixin scroll-bar {
20
+ $--scrollbar-thumb-background: #b4bccc;
21
+ $--scrollbar-track-background: #fff;
22
+
23
+ &::-webkit-scrollbar {
24
+ z-index: 11;
25
+ width: 6px;
26
+
27
+ &:horizontal {
28
+ height: 6px;
29
+ }
30
+
31
+ &-thumb {
32
+ border-radius: 5px;
33
+ width: 6px;
34
+ background: $--scrollbar-thumb-background;
35
+ }
36
+
37
+ &-corner {
38
+ background: $--scrollbar-track-background;
39
+ }
40
+
41
+ &-track {
42
+ background: $--scrollbar-track-background;
43
+
44
+ &-piece {
45
+ background: $--scrollbar-track-background;
46
+ width: 6px;
47
+ }
48
+ }
49
+ }
50
+ }
51
+
52
+ /* Placeholder
53
+ -------------------------- */
54
+ @mixin placeholder {
55
+ &::-webkit-input-placeholder {
56
+ @content
57
+ }
58
+
59
+ &::-moz-placeholder {
60
+ @content
61
+ }
62
+
63
+ &:-ms-input-placeholder {
64
+ @content
65
+ }
66
+ }
67
+
68
+ /* BEM
69
+ -------------------------- */
70
+ @mixin b($block) {
71
+ $B: $namespace+'-'+$block !global;
72
+
73
+ .#{$B} {
74
+ @content;
75
+ }
76
+ }
77
+
78
+ @mixin e($element) {
79
+ $E: $element !global;
80
+ $selector: &;
81
+ $currentSelector: "";
82
+ @each $unit in $element {
83
+ $currentSelector: #{$currentSelector + "." + $B + $element-separator + $unit + ","};
84
+ }
85
+
86
+ @if hitAllSpecialNestRule($selector) {
87
+ @at-root {
88
+ #{$selector} {
89
+ #{$currentSelector} {
90
+ @content;
91
+ }
92
+ }
93
+ }
94
+ } @else {
95
+ @at-root {
96
+ #{$currentSelector} {
97
+ @content;
98
+ }
99
+ }
100
+ }
101
+ }
102
+
103
+ @mixin m($modifier) {
104
+ $selector: &;
105
+ $currentSelector: "";
106
+ @each $unit in $modifier {
107
+ $currentSelector: #{$currentSelector + & + $modifier-separator + $unit + ","};
108
+ }
109
+
110
+ @at-root {
111
+ #{$currentSelector} {
112
+ @content;
113
+ }
114
+ }
115
+ }
116
+
117
+ @mixin configurable-m($modifier, $E-flag: false) {
118
+ $selector: &;
119
+ $interpolation: '';
120
+
121
+ @if $E-flag {
122
+ $interpolation: $element-separator + $E-flag;
123
+ }
124
+
125
+ @at-root {
126
+ #{$selector} {
127
+ .#{$B+$interpolation+$modifier-separator+$modifier} {
128
+ @content;
129
+ }
130
+ }
131
+ }
132
+ }
133
+
134
+ @mixin spec-selector($specSelector: '', $element: $E, $modifier: false, $block: $B) {
135
+ $modifierCombo: '';
136
+
137
+ @if $modifier {
138
+ $modifierCombo: $modifier-separator + $modifier;
139
+ }
140
+
141
+ @at-root {
142
+ #{&}#{$specSelector}.#{$block+$element-separator+$element+$modifierCombo} {
143
+ @content
144
+ }
145
+ }
146
+ }
147
+
148
+ @mixin meb($modifier: false, $element: $E, $block: $B) {
149
+ $selector: &;
150
+ $modifierCombo: '';
151
+
152
+ @if $modifier {
153
+ $modifierCombo: $modifier-separator + $modifier;
154
+ }
155
+
156
+ @at-root {
157
+ #{$selector} {
158
+ .#{$block+$element-separator+$element+$modifierCombo} {
159
+ @content
160
+ }
161
+ }
162
+ }
163
+ }
164
+
165
+ @mixin when($state) {
166
+ @at-root {
167
+ &.#{$state-prefix + $state} {
168
+ @content;
169
+ }
170
+ }
171
+ }
172
+
173
+ @mixin extend-rule($name) {
174
+ @extend #{'%shared-'+$name};
175
+ }
176
+
177
+ @mixin share-rule($name) {
178
+ $rule-name: '%shared-'+$name;
179
+
180
+ @at-root #{$rule-name} {
181
+ @content
182
+ }
183
+ }
184
+
185
+ @mixin pseudo($pseudo) {
186
+ @at-root #{&}#{':#{$pseudo}'} {
187
+ @content
188
+ }
189
+ }
190
+