@agilekit/ui 0.0.514-alpha.0 → 0.1.0-alpha.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 (202) hide show
  1. package/README.md +42 -42
  2. package/lib/index.js +1 -1
  3. package/lib/index.js.LICENSE.txt +0 -8
  4. package/lib/src/Theme.d.ts +5 -3
  5. package/lib/src/components/Badge/Badge.d.ts +1 -1
  6. package/lib/src/components/Box/Box.d.ts +1 -1
  7. package/lib/src/components/Breadcrumb/Breadcrumb.d.ts +1 -1
  8. package/lib/src/components/Card/Card.d.ts +1 -1
  9. package/lib/src/components/ChoiceItem/ChoiceItem.d.ts +1 -1
  10. package/lib/src/components/DataTable/DataTable.d.ts +1 -1
  11. package/lib/src/components/FormSectionTitle/FormSectionTitle.d.ts +1 -1
  12. package/lib/src/components/Gallery/Gallery.d.ts +1 -1
  13. package/lib/src/components/Gallery/components/ImageWithFallback/ImageWithFallback.d.ts +1 -1
  14. package/lib/src/components/Gallery/components/Lightbox/Lightbox.d.ts +2 -2
  15. package/lib/src/components/Grid/components/Row/Row.d.ts +1 -1
  16. package/lib/src/components/Link/Link.d.ts +1 -1
  17. package/lib/src/components/PaymentProcessing/PaymentProcessing.d.ts +2 -2
  18. package/lib/src/components/Popover/Popover.d.ts +1 -1
  19. package/lib/src/components/Slider/Slider.d.ts +2 -2
  20. package/lib/src/components/Switch/Switch.d.ts +1 -1
  21. package/lib/src/components/TableList/TableList.d.ts +1 -1
  22. package/lib/src/components/TableList/components/Cell/Cell.d.ts +1 -1
  23. package/lib/src/components/TableList/components/ColumnHeader/ColumnHeader.d.ts +1 -1
  24. package/lib/src/components/TextField/TextField.styles.d.ts +4 -3
  25. package/lib/src/index.d.ts +5 -3
  26. package/package.json +160 -162
  27. package/src/assets/fonts/fontello/README.txt +75 -75
  28. package/src/assets/fonts/fontello/config.json +933 -933
  29. package/src/assets/fonts/fontello/css/animation.css +85 -85
  30. package/src/assets/fonts/fontello/css/fontello-codes.css +66 -66
  31. package/src/assets/fonts/fontello/css/fontello-embedded.css +119 -119
  32. package/src/assets/fonts/fontello/css/fontello-ie7-codes.css +66 -66
  33. package/src/assets/fonts/fontello/css/fontello-ie7.css +77 -77
  34. package/src/assets/fonts/fontello/css/fontello.css +122 -122
  35. package/src/assets/fonts/fontello/demo.html +402 -402
  36. package/src/assets/fonts/fontello/font/fontello.eot +0 -0
  37. package/src/assets/fonts/fontello/font/fontello.svg +141 -141
  38. package/src/assets/fonts/fontello/font/fontello.ttf +0 -0
  39. package/src/assets/fonts/fontello/font/fontello.woff +0 -0
  40. package/src/assets/fonts/fontello/font/fontello.woff2 +0 -0
  41. package/src/assets/fonts/svg/Icon/ic-chat.svg +12 -12
  42. package/src/assets/fonts/svg/Icon/ic-dollar.svg +13 -13
  43. package/src/assets/fonts/svg/Icon/ic-invoice.svg +15 -15
  44. package/src/assets/fonts/svg/Icon/ic-menu.svg +8 -8
  45. package/src/assets/fonts/svg/ic-activity.svg +8 -8
  46. package/src/assets/fonts/svg/ic-arrow-long-right.svg +48 -48
  47. package/src/assets/fonts/svg/ic-arrows.svg +9 -9
  48. package/src/assets/fonts/svg/ic-atm-card.svg +9 -9
  49. package/src/assets/fonts/svg/ic-bank-solid.svg +10 -10
  50. package/src/assets/fonts/svg/ic-bell.svg +10 -10
  51. package/src/assets/fonts/svg/ic-briefcase.svg +9 -9
  52. package/src/assets/fonts/svg/ic-calendar-alt.svg +15 -15
  53. package/src/assets/fonts/svg/ic-check-alt.svg +26 -26
  54. package/src/assets/fonts/svg/ic-check.svg +10 -10
  55. package/src/assets/fonts/svg/ic-circle-solid.svg +7 -7
  56. package/src/assets/fonts/svg/ic-circle.svg +7 -7
  57. package/src/assets/fonts/svg/ic-close.svg +9 -9
  58. package/src/assets/fonts/svg/ic-cog-solid.svg +14 -14
  59. package/src/assets/fonts/svg/ic-credit-card-solid.svg +7 -7
  60. package/src/assets/fonts/svg/ic-credit-card.svg +7 -7
  61. package/src/assets/fonts/svg/ic-database.svg +9 -9
  62. package/src/assets/fonts/svg/ic-desktop.svg +9 -9
  63. package/src/assets/fonts/svg/ic-dollar-solid.svg +10 -10
  64. package/src/assets/fonts/svg/ic-exclamation.svg +10 -10
  65. package/src/assets/fonts/svg/ic-globe.svg +9 -9
  66. package/src/assets/fonts/svg/ic-grid-solid.svg +9 -9
  67. package/src/assets/fonts/svg/ic-hash.svg +10 -10
  68. package/src/assets/fonts/svg/ic-help-circle.svg +11 -11
  69. package/src/assets/fonts/svg/ic-info.svg +10 -10
  70. package/src/assets/fonts/svg/ic-keyhole-square.svg +9 -9
  71. package/src/assets/fonts/svg/ic-lock.svg +8 -8
  72. package/src/assets/fonts/svg/ic-log-in.svg +9 -9
  73. package/src/assets/fonts/svg/ic-log-out.svg +9 -9
  74. package/src/assets/fonts/svg/ic-mail.svg +8 -8
  75. package/src/assets/fonts/svg/ic-map-pin.svg +8 -8
  76. package/src/assets/fonts/svg/ic-menu.svg +8 -8
  77. package/src/assets/fonts/svg/ic-minus.svg +6 -6
  78. package/src/assets/fonts/svg/ic-mobile-android.svg +9 -9
  79. package/src/assets/fonts/svg/ic-more.svg +27 -27
  80. package/src/assets/fonts/svg/ic-pen.svg +9 -9
  81. package/src/assets/fonts/svg/ic-phone.svg +13 -13
  82. package/src/assets/fonts/svg/ic-plus.svg +10 -10
  83. package/src/assets/fonts/svg/ic-question.svg +8 -8
  84. package/src/assets/fonts/svg/ic-search.svg +8 -8
  85. package/src/assets/fonts/svg/ic-settings.svg +27 -27
  86. package/src/assets/fonts/svg/ic-shield.svg +8 -8
  87. package/src/assets/fonts/svg/ic-shopping-cart.svg +9 -9
  88. package/src/assets/fonts/svg/ic-slash-solid.svg +7 -7
  89. package/src/assets/fonts/svg/ic-slash.svg +9 -9
  90. package/src/assets/fonts/svg/ic-sliders.svg +12 -12
  91. package/src/assets/fonts/svg/ic-store.svg +11 -11
  92. package/src/assets/fonts/svg/ic-tablet.svg +10 -10
  93. package/src/assets/fonts/svg/ic-user-circle.svg +10 -10
  94. package/src/assets/fonts/svg/ic-users.svg +21 -21
  95. package/src/assets/fonts/svg/ic-x-alt.svg +8 -8
  96. package/src/assets/styles/global/bootstrap/_alert.scss +51 -51
  97. package/src/assets/styles/global/bootstrap/_badge.scss +53 -53
  98. package/src/assets/styles/global/bootstrap/_breadcrumb.scss +41 -41
  99. package/src/assets/styles/global/bootstrap/_button-group.scss +163 -163
  100. package/src/assets/styles/global/bootstrap/_buttons.scss +140 -140
  101. package/src/assets/styles/global/bootstrap/_card.scss +311 -311
  102. package/src/assets/styles/global/bootstrap/_carousel.scss +199 -199
  103. package/src/assets/styles/global/bootstrap/_close.scss +44 -44
  104. package/src/assets/styles/global/bootstrap/_code.scss +48 -48
  105. package/src/assets/styles/global/bootstrap/_custom-forms.scss +508 -508
  106. package/src/assets/styles/global/bootstrap/_dropdown.scss +191 -191
  107. package/src/assets/styles/global/bootstrap/_forms.scss +335 -335
  108. package/src/assets/styles/global/bootstrap/_functions.scss +87 -87
  109. package/src/assets/styles/global/bootstrap/_grid.scss +52 -52
  110. package/src/assets/styles/global/bootstrap/_images.scss +42 -42
  111. package/src/assets/styles/global/bootstrap/_input-group.scss +193 -193
  112. package/src/assets/styles/global/bootstrap/_jumbotron.scss +18 -18
  113. package/src/assets/styles/global/bootstrap/_list-group.scss +121 -121
  114. package/src/assets/styles/global/bootstrap/_media.scss +8 -8
  115. package/src/assets/styles/global/bootstrap/_mixins.scss +41 -41
  116. package/src/assets/styles/global/bootstrap/_modal.scss +186 -186
  117. package/src/assets/styles/global/bootstrap/_nav.scss +120 -120
  118. package/src/assets/styles/global/bootstrap/_navbar.scss +299 -299
  119. package/src/assets/styles/global/bootstrap/_pagination.scss +78 -78
  120. package/src/assets/styles/global/bootstrap/_popover.scss +185 -185
  121. package/src/assets/styles/global/bootstrap/_print.scss +141 -141
  122. package/src/assets/styles/global/bootstrap/_progress.scss +34 -34
  123. package/src/assets/styles/global/bootstrap/_reboot.scss +462 -462
  124. package/src/assets/styles/global/bootstrap/_root.scss +19 -19
  125. package/src/assets/styles/global/bootstrap/_spinners.scss +53 -53
  126. package/src/assets/styles/global/bootstrap/_tables.scss +187 -187
  127. package/src/assets/styles/global/bootstrap/_toasts.scss +43 -43
  128. package/src/assets/styles/global/bootstrap/_tooltip.scss +117 -117
  129. package/src/assets/styles/global/bootstrap/_transitions.scss +22 -22
  130. package/src/assets/styles/global/bootstrap/_type.scss +125 -125
  131. package/src/assets/styles/global/bootstrap/_utilities.scss +16 -16
  132. package/src/assets/styles/global/bootstrap/_variables.scss +1088 -1088
  133. package/src/assets/styles/global/bootstrap/bootstrap-grid.scss +29 -29
  134. package/src/assets/styles/global/bootstrap/bootstrap-reboot.scss +12 -12
  135. package/src/assets/styles/global/bootstrap/bootstrap.scss +44 -44
  136. package/src/assets/styles/global/bootstrap/mixins/_alert.scss +13 -13
  137. package/src/assets/styles/global/bootstrap/mixins/_background-variant.scss +21 -21
  138. package/src/assets/styles/global/bootstrap/mixins/_badge.scss +11 -11
  139. package/src/assets/styles/global/bootstrap/mixins/_border-radius.scss +35 -35
  140. package/src/assets/styles/global/bootstrap/mixins/_box-shadow.scss +5 -5
  141. package/src/assets/styles/global/bootstrap/mixins/_breakpoints.scss +123 -123
  142. package/src/assets/styles/global/bootstrap/mixins/_buttons.scss +111 -111
  143. package/src/assets/styles/global/bootstrap/mixins/_caret.scss +62 -62
  144. package/src/assets/styles/global/bootstrap/mixins/_clearfix.scss +7 -7
  145. package/src/assets/styles/global/bootstrap/mixins/_float.scss +11 -11
  146. package/src/assets/styles/global/bootstrap/mixins/_forms.scss +198 -198
  147. package/src/assets/styles/global/bootstrap/mixins/_gradients.scss +45 -45
  148. package/src/assets/styles/global/bootstrap/mixins/_grid-framework.scss +66 -66
  149. package/src/assets/styles/global/bootstrap/mixins/_grid.scss +51 -51
  150. package/src/assets/styles/global/bootstrap/mixins/_hover.scss +37 -37
  151. package/src/assets/styles/global/bootstrap/mixins/_image.scss +36 -36
  152. package/src/assets/styles/global/bootstrap/mixins/_list-group.scss +21 -21
  153. package/src/assets/styles/global/bootstrap/mixins/_lists.scss +7 -7
  154. package/src/assets/styles/global/bootstrap/mixins/_nav-divider.scss +10 -10
  155. package/src/assets/styles/global/bootstrap/mixins/_pagination.scss +22 -22
  156. package/src/assets/styles/global/bootstrap/mixins/_reset-text.scss +17 -17
  157. package/src/assets/styles/global/bootstrap/mixins/_resize.scss +6 -6
  158. package/src/assets/styles/global/bootstrap/mixins/_screen-reader.scss +33 -33
  159. package/src/assets/styles/global/bootstrap/mixins/_size.scss +6 -6
  160. package/src/assets/styles/global/bootstrap/mixins/_table-row.scss +39 -39
  161. package/src/assets/styles/global/bootstrap/mixins/_text-emphasis.scss +14 -14
  162. package/src/assets/styles/global/bootstrap/mixins/_text-hide.scss +13 -13
  163. package/src/assets/styles/global/bootstrap/mixins/_text-truncate.scss +8 -8
  164. package/src/assets/styles/global/bootstrap/mixins/_transition.scss +16 -16
  165. package/src/assets/styles/global/bootstrap/mixins/_visibility.scss +7 -7
  166. package/src/assets/styles/global/bootstrap/utilities/_align.scss +8 -8
  167. package/src/assets/styles/global/bootstrap/utilities/_background.scss +19 -19
  168. package/src/assets/styles/global/bootstrap/utilities/_borders.scss +63 -63
  169. package/src/assets/styles/global/bootstrap/utilities/_clearfix.scss +3 -3
  170. package/src/assets/styles/global/bootstrap/utilities/_display.scss +38 -38
  171. package/src/assets/styles/global/bootstrap/utilities/_embed.scss +40 -40
  172. package/src/assets/styles/global/bootstrap/utilities/_flex.scss +51 -51
  173. package/src/assets/styles/global/bootstrap/utilities/_float.scss +9 -9
  174. package/src/assets/styles/global/bootstrap/utilities/_overflow.scss +5 -5
  175. package/src/assets/styles/global/bootstrap/utilities/_position.scss +32 -32
  176. package/src/assets/styles/global/bootstrap/utilities/_screenreaders.scss +11 -11
  177. package/src/assets/styles/global/bootstrap/utilities/_shadows.scss +6 -6
  178. package/src/assets/styles/global/bootstrap/utilities/_sizing.scss +20 -20
  179. package/src/assets/styles/global/bootstrap/utilities/_spacing.scss +73 -73
  180. package/src/assets/styles/global/bootstrap/utilities/_text.scss +67 -67
  181. package/src/assets/styles/global/bootstrap/utilities/_visibility.scss +11 -11
  182. package/src/assets/styles/global/core/card.scss +6 -6
  183. package/src/assets/styles/global/core/color.scss +76 -76
  184. package/src/assets/styles/global/core/status.scss +17 -17
  185. package/src/assets/styles/global/styles.scss +24 -24
  186. package/src/assets/styles/global/vendors/ant-design-grid.scss +5046 -5046
  187. package/src/assets/styles/shared/elements/scrollbar.scss +30 -30
  188. package/src/assets/styles/shared/settings/breakpoints.scss +10 -10
  189. package/src/assets/styles/shared/settings/colors.scss +110 -110
  190. package/src/assets/styles/shared/settings/depth.scss +14 -14
  191. package/src/assets/styles/shared/settings/layout.scss +10 -10
  192. package/src/assets/styles/shared/settings/typography.scss +9 -9
  193. package/src/assets/styles/shared/shared.scss +8 -8
  194. package/src/assets/styles/shared/tools/respond-to.scss +32 -32
  195. package/src/components/utils/breakpoints.ts +14 -14
  196. package/src/components/utils/browser.ts +10 -10
  197. package/src/components/utils/findParentBySelector.ts +17 -17
  198. package/src/components/utils/idGenerator.ts +4 -4
  199. package/src/components/utils/index.ts +4 -4
  200. package/src/components/utils/setNativeValue.ts +13 -13
  201. package/lib/src/components/Breadcrumb/Breadcrumb.styles.d.ts +0 -2
  202. package/lib/src/components/Loader/Loader.styles.d.ts +0 -2
@@ -1,508 +1,508 @@
1
- @use "sass:math";
2
- // Embedded icons from Open Iconic.
3
- // Released under MIT and copyright 2014 Waybury.
4
- // https://useiconic.com/open
5
-
6
-
7
- // Checkboxes and radios
8
- //
9
- // Base class takes care of all the key behavioral aspects.
10
-
11
- .custom-control {
12
- position: relative;
13
- display: block;
14
- min-height: $font-size-base * $line-height-base;
15
- padding-left: $custom-control-gutter + $custom-control-indicator-size;
16
- }
17
-
18
- .custom-control-inline {
19
- display: inline-flex;
20
- margin-right: $custom-control-spacer-x;
21
- }
22
-
23
- .custom-control-input {
24
- position: absolute;
25
- z-index: -1; // Put the input behind the label so it doesn't overlay text
26
- opacity: 0;
27
-
28
- &:checked ~ .custom-control-label::before {
29
- color: $custom-control-indicator-checked-color;
30
- border-color: $custom-control-indicator-checked-border-color;
31
- @include gradient-bg($custom-control-indicator-checked-bg);
32
- @include box-shadow($custom-control-indicator-checked-box-shadow);
33
- }
34
-
35
- &:focus ~ .custom-control-label::before {
36
- // the mixin is not used here to make sure there is feedback
37
- @if $enable-shadows {
38
- box-shadow: $input-box-shadow, $input-focus-box-shadow;
39
- } @else {
40
- box-shadow: $custom-control-indicator-focus-box-shadow;
41
- }
42
- }
43
-
44
- &:focus:not(:checked) ~ .custom-control-label::before {
45
- border-color: $custom-control-indicator-focus-border-color;
46
- }
47
-
48
- &:not(:disabled):active ~ .custom-control-label::before {
49
- color: $custom-control-indicator-active-color;
50
- background-color: $custom-control-indicator-active-bg;
51
- border-color: $custom-control-indicator-active-border-color;
52
- @include box-shadow($custom-control-indicator-active-box-shadow);
53
- }
54
-
55
- &:disabled {
56
- ~ .custom-control-label {
57
- color: $custom-control-label-disabled-color;
58
-
59
- &::before {
60
- background-color: $custom-control-indicator-disabled-bg;
61
- }
62
- }
63
- }
64
- }
65
-
66
- // Custom control indicators
67
- //
68
- // Build the custom controls out of pseudo-elements.
69
-
70
- .custom-control-label {
71
- position: relative;
72
- margin-bottom: 0;
73
- vertical-align: top;
74
-
75
- // Background-color and (when enabled) gradient
76
- &::before {
77
- position: absolute;
78
- top: math.div(($font-size-base * $line-height-base - $custom-control-indicator-size), 2);
79
- left: -($custom-control-gutter + $custom-control-indicator-size);
80
- display: block;
81
- width: $custom-control-indicator-size;
82
- height: $custom-control-indicator-size;
83
- pointer-events: none;
84
- content: "";
85
- background-color: $custom-control-indicator-bg;
86
- border: $custom-control-indicator-border-color solid $custom-control-indicator-border-width;
87
- @include box-shadow($custom-control-indicator-box-shadow);
88
- }
89
-
90
- // Foreground (icon)
91
- &::after {
92
- position: absolute;
93
- top: math.div(($font-size-base * $line-height-base - $custom-control-indicator-size), 2);
94
- left: -($custom-control-gutter + $custom-control-indicator-size);
95
- display: block;
96
- width: $custom-control-indicator-size;
97
- height: $custom-control-indicator-size;
98
- content: "";
99
- background-repeat: no-repeat;
100
- background-position: center center;
101
- background-size: $custom-control-indicator-bg-size;
102
- }
103
- }
104
-
105
-
106
- // Checkboxes
107
- //
108
- // Tweak just a few things for checkboxes.
109
-
110
- .custom-checkbox {
111
- .custom-control-label::before {
112
- @include border-radius($custom-checkbox-indicator-border-radius);
113
- }
114
-
115
- .custom-control-input:checked ~ .custom-control-label {
116
- &::after {
117
- background-image: $custom-checkbox-indicator-icon-checked;
118
- }
119
- }
120
-
121
- .custom-control-input:indeterminate ~ .custom-control-label {
122
- &::before {
123
- border-color: $custom-checkbox-indicator-indeterminate-border-color;
124
- @include gradient-bg($custom-checkbox-indicator-indeterminate-bg);
125
- @include box-shadow($custom-checkbox-indicator-indeterminate-box-shadow);
126
- }
127
- &::after {
128
- background-image: $custom-checkbox-indicator-icon-indeterminate;
129
- }
130
- }
131
-
132
- .custom-control-input:disabled {
133
- &:checked ~ .custom-control-label::before {
134
- background-color: $custom-control-indicator-checked-disabled-bg;
135
- }
136
- &:indeterminate ~ .custom-control-label::before {
137
- background-color: $custom-control-indicator-checked-disabled-bg;
138
- }
139
- }
140
- }
141
-
142
- // Radios
143
- //
144
- // Tweak just a few things for radios.
145
-
146
- .custom-radio {
147
- .custom-control-label::before {
148
- border-radius: $custom-radio-indicator-border-radius;
149
- }
150
-
151
- .custom-control-input:checked ~ .custom-control-label {
152
- &::after {
153
- background-image: $custom-radio-indicator-icon-checked;
154
- }
155
- }
156
-
157
- .custom-control-input:disabled {
158
- &:checked ~ .custom-control-label::before {
159
- background-color: $custom-control-indicator-checked-disabled-bg;
160
- }
161
- }
162
- }
163
-
164
-
165
- // switches
166
- //
167
- // Tweak a few things for switches
168
-
169
- .custom-switch {
170
- padding-left: $custom-switch-width + $custom-control-gutter;
171
-
172
- .custom-control-label {
173
- &::before {
174
- left: -($custom-switch-width + $custom-control-gutter);
175
- width: $custom-switch-width;
176
- pointer-events: all;
177
- border-radius: $custom-switch-indicator-border-radius;
178
- }
179
-
180
- &::after {
181
- top: math.div((4 * $line-height-base - $custom-control-indicator-size), 2) + 40 * 2;
182
- left: calc(#{-($custom-switch-width + $custom-control-gutter)} + #{$custom-control-indicator-border-width * 2});
183
- width: $custom-switch-indicator-size;
184
- height: $custom-switch-indicator-size;
185
- background-color: $custom-control-indicator-border-color;
186
- border-radius: $custom-switch-indicator-border-radius;
187
- @include transition(transform .15s ease-in-out, $custom-forms-transition);
188
- }
189
- }
190
-
191
- .custom-control-input:checked ~ .custom-control-label {
192
- &::after {
193
- background-color: $custom-control-indicator-bg;
194
- transform: translateX($custom-switch-width - $custom-control-indicator-size);
195
- }
196
- }
197
-
198
- .custom-control-input:disabled {
199
- &:checked ~ .custom-control-label::before {
200
- background-color: $custom-control-indicator-checked-disabled-bg;
201
- }
202
- }
203
- }
204
-
205
-
206
- // Select
207
- //
208
- // Replaces the browser default select with a custom one, mostly pulled from
209
- // https://primer.github.io/.
210
- //
211
-
212
- .custom-select {
213
- display: inline-block;
214
- width: 100%;
215
- height: $custom-select-height;
216
- padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
217
- font-weight: $custom-select-font-weight;
218
- line-height: $custom-select-line-height;
219
- color: $custom-select-color;
220
- vertical-align: middle;
221
- background: $custom-select-background;
222
- background-color: $custom-select-bg;
223
- border: $custom-select-border-width solid $custom-select-border-color;
224
- @if $enable-rounded {
225
- border-radius: $custom-select-border-radius;
226
- } @else {
227
- border-radius: 0;
228
- }
229
- @include box-shadow($custom-select-box-shadow);
230
- appearance: none;
231
-
232
- &:focus {
233
- border-color: $custom-select-focus-border-color;
234
- outline: 0;
235
- @if $enable-shadows {
236
- box-shadow: $custom-select-box-shadow, $custom-select-focus-box-shadow;
237
- } @else {
238
- box-shadow: $custom-select-focus-box-shadow;
239
- }
240
-
241
- &::-ms-value {
242
- // For visual consistency with other platforms/browsers,
243
- // suppress the default white text on blue background highlight given to
244
- // the selected option text when the (still closed) <select> receives focus
245
- // in IE and (under certain conditions) Edge.
246
- // See https://github.com/twbs/bootstrap/issues/19398.
247
- color: $input-color;
248
- background-color: $input-bg;
249
- }
250
- }
251
-
252
- &[multiple],
253
- &[size]:not([size="1"]) {
254
- height: auto;
255
- padding-right: $custom-select-padding-x;
256
- background-image: none;
257
- }
258
-
259
- &:disabled {
260
- color: $custom-select-disabled-color;
261
- background-color: $custom-select-disabled-bg;
262
- }
263
-
264
- // Hides the default caret in IE11
265
- &::-ms-expand {
266
- opacity: 0;
267
- }
268
- }
269
-
270
- .custom-select-sm {
271
- height: $custom-select-height-sm;
272
- padding-top: $custom-select-padding-y-sm;
273
- padding-bottom: $custom-select-padding-y-sm;
274
- padding-left: $custom-select-padding-x-sm;
275
- font-size: $custom-select-font-size-sm;
276
- }
277
-
278
- .custom-select-lg {
279
- height: $custom-select-height-lg;
280
- padding-top: $custom-select-padding-y-lg;
281
- padding-bottom: $custom-select-padding-y-lg;
282
- padding-left: $custom-select-padding-x-lg;
283
- font-size: $custom-select-font-size-lg;
284
- }
285
-
286
-
287
- // File
288
- //
289
- // Custom file input.
290
-
291
- .custom-file {
292
- position: relative;
293
- display: inline-block;
294
- width: 100%;
295
- height: $custom-file-height;
296
- margin-bottom: 0;
297
- }
298
-
299
- .custom-file-input {
300
- position: relative;
301
- z-index: 2;
302
- width: 100%;
303
- height: $custom-file-height;
304
- margin: 0;
305
- opacity: 0;
306
-
307
- &:focus ~ .custom-file-label {
308
- border-color: $custom-file-focus-border-color;
309
- box-shadow: $custom-file-focus-box-shadow;
310
- }
311
-
312
- &:disabled ~ .custom-file-label {
313
- background-color: $custom-file-disabled-bg;
314
- }
315
-
316
- @each $lang, $value in $custom-file-text {
317
- &:lang(#{$lang}) ~ .custom-file-label::after {
318
- content: $value;
319
- }
320
- }
321
-
322
- ~ .custom-file-label[data-browse]::after {
323
- content: attr(data-browse);
324
- }
325
- }
326
-
327
- .custom-file-label {
328
- position: absolute;
329
- top: 0;
330
- right: 0;
331
- left: 0;
332
- z-index: 1;
333
- height: $custom-file-height;
334
- padding: $custom-file-padding-y $custom-file-padding-x;
335
- font-weight: $custom-file-font-weight;
336
- line-height: $custom-file-line-height;
337
- color: $custom-file-color;
338
- background-color: $custom-file-bg;
339
- border: $custom-file-border-width solid $custom-file-border-color;
340
- @include border-radius($custom-file-border-radius);
341
- @include box-shadow($custom-file-box-shadow);
342
-
343
- &::after {
344
- position: absolute;
345
- top: 0;
346
- right: 0;
347
- bottom: 0;
348
- z-index: 3;
349
- display: block;
350
- height: $custom-file-height-inner;
351
- padding: $custom-file-padding-y $custom-file-padding-x;
352
- line-height: $custom-file-line-height;
353
- color: $custom-file-button-color;
354
- content: "Browse";
355
- @include gradient-bg($custom-file-button-bg);
356
- border-left: inherit;
357
- @include border-radius(0 $custom-file-border-radius $custom-file-border-radius 0);
358
- }
359
- }
360
-
361
- // Range
362
- //
363
- // Style range inputs the same across browsers. Vendor-specific rules for pseudo
364
- // elements cannot be mixed. As such, there are no shared styles for focus or
365
- // active states on prefixed selectors.
366
-
367
- .custom-range {
368
- width: 100%;
369
- height: calc(#{$custom-range-thumb-height} + #{$custom-range-thumb-focus-box-shadow-width * 2});
370
- padding: 0; // Need to reset padding
371
- background-color: transparent;
372
- appearance: none;
373
-
374
- &:focus {
375
- outline: none;
376
-
377
- // Pseudo-elements must be split across multiple rulesets to have an effect.
378
- // No box-shadow() mixin for focus accessibility.
379
- &::-webkit-slider-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
380
- &::-moz-range-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
381
- &::-ms-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
382
- }
383
-
384
- &::-moz-focus-outer {
385
- border: 0;
386
- }
387
-
388
- &::-webkit-slider-thumb {
389
- width: $custom-range-thumb-width;
390
- height: $custom-range-thumb-height;
391
- margin-top: math.div(($custom-range-track-height - $custom-range-thumb-height), 2); // Webkit specific
392
- @include gradient-bg($custom-range-thumb-bg);
393
- border: $custom-range-thumb-border;
394
- @include border-radius($custom-range-thumb-border-radius);
395
- @include box-shadow($custom-range-thumb-box-shadow);
396
- @include transition($custom-forms-transition);
397
- appearance: none;
398
-
399
- &:active {
400
- @include gradient-bg($custom-range-thumb-active-bg);
401
- }
402
- }
403
-
404
- &::-webkit-slider-runnable-track {
405
- width: $custom-range-track-width;
406
- height: $custom-range-track-height;
407
- color: transparent; // Why?
408
- cursor: $custom-range-track-cursor;
409
- background-color: $custom-range-track-bg;
410
- border-color: transparent;
411
- @include border-radius($custom-range-track-border-radius);
412
- @include box-shadow($custom-range-track-box-shadow);
413
- }
414
-
415
- &::-moz-range-thumb {
416
- width: $custom-range-thumb-width;
417
- height: $custom-range-thumb-height;
418
- @include gradient-bg($custom-range-thumb-bg);
419
- border: $custom-range-thumb-border;
420
- @include border-radius($custom-range-thumb-border-radius);
421
- @include box-shadow($custom-range-thumb-box-shadow);
422
- @include transition($custom-forms-transition);
423
- appearance: none;
424
-
425
- &:active {
426
- @include gradient-bg($custom-range-thumb-active-bg);
427
- }
428
- }
429
-
430
- &::-moz-range-track {
431
- width: $custom-range-track-width;
432
- height: $custom-range-track-height;
433
- color: transparent;
434
- cursor: $custom-range-track-cursor;
435
- background-color: $custom-range-track-bg;
436
- border-color: transparent; // Firefox specific?
437
- @include border-radius($custom-range-track-border-radius);
438
- @include box-shadow($custom-range-track-box-shadow);
439
- }
440
-
441
- &::-ms-thumb {
442
- width: $custom-range-thumb-width;
443
- height: $custom-range-thumb-height;
444
- margin-top: 0; // Edge specific
445
- margin-right: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
446
- margin-left: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
447
- @include gradient-bg($custom-range-thumb-bg);
448
- border: $custom-range-thumb-border;
449
- @include border-radius($custom-range-thumb-border-radius);
450
- @include box-shadow($custom-range-thumb-box-shadow);
451
- @include transition($custom-forms-transition);
452
- appearance: none;
453
-
454
- &:active {
455
- @include gradient-bg($custom-range-thumb-active-bg);
456
- }
457
- }
458
-
459
- &::-ms-track {
460
- width: $custom-range-track-width;
461
- height: $custom-range-track-height;
462
- color: transparent;
463
- cursor: $custom-range-track-cursor;
464
- background-color: transparent;
465
- border-color: transparent;
466
- border-width: math.div($custom-range-thumb-height, 2);
467
- @include box-shadow($custom-range-track-box-shadow);
468
- }
469
-
470
- &::-ms-fill-lower {
471
- background-color: $custom-range-track-bg;
472
- @include border-radius($custom-range-track-border-radius);
473
- }
474
-
475
- &::-ms-fill-upper {
476
- margin-right: 15px; // arbitrary?
477
- background-color: $custom-range-track-bg;
478
- @include border-radius($custom-range-track-border-radius);
479
- }
480
-
481
- &:disabled {
482
- &::-webkit-slider-thumb {
483
- background-color: $custom-range-thumb-disabled-bg;
484
- }
485
-
486
- &::-webkit-slider-runnable-track {
487
- cursor: default;
488
- }
489
-
490
- &::-moz-range-thumb {
491
- background-color: $custom-range-thumb-disabled-bg;
492
- }
493
-
494
- &::-moz-range-track {
495
- cursor: default;
496
- }
497
-
498
- &::-ms-thumb {
499
- background-color: $custom-range-thumb-disabled-bg;
500
- }
501
- }
502
- }
503
-
504
- .custom-control-label::before,
505
- .custom-file-label,
506
- .custom-select {
507
- @include transition($custom-forms-transition);
508
- }
1
+ @use "sass:math";
2
+ // Embedded icons from Open Iconic.
3
+ // Released under MIT and copyright 2014 Waybury.
4
+ // https://useiconic.com/open
5
+
6
+
7
+ // Checkboxes and radios
8
+ //
9
+ // Base class takes care of all the key behavioral aspects.
10
+
11
+ .custom-control {
12
+ position: relative;
13
+ display: block;
14
+ min-height: $font-size-base * $line-height-base;
15
+ padding-left: $custom-control-gutter + $custom-control-indicator-size;
16
+ }
17
+
18
+ .custom-control-inline {
19
+ display: inline-flex;
20
+ margin-right: $custom-control-spacer-x;
21
+ }
22
+
23
+ .custom-control-input {
24
+ position: absolute;
25
+ z-index: -1; // Put the input behind the label so it doesn't overlay text
26
+ opacity: 0;
27
+
28
+ &:checked ~ .custom-control-label::before {
29
+ color: $custom-control-indicator-checked-color;
30
+ border-color: $custom-control-indicator-checked-border-color;
31
+ @include gradient-bg($custom-control-indicator-checked-bg);
32
+ @include box-shadow($custom-control-indicator-checked-box-shadow);
33
+ }
34
+
35
+ &:focus ~ .custom-control-label::before {
36
+ // the mixin is not used here to make sure there is feedback
37
+ @if $enable-shadows {
38
+ box-shadow: $input-box-shadow, $input-focus-box-shadow;
39
+ } @else {
40
+ box-shadow: $custom-control-indicator-focus-box-shadow;
41
+ }
42
+ }
43
+
44
+ &:focus:not(:checked) ~ .custom-control-label::before {
45
+ border-color: $custom-control-indicator-focus-border-color;
46
+ }
47
+
48
+ &:not(:disabled):active ~ .custom-control-label::before {
49
+ color: $custom-control-indicator-active-color;
50
+ background-color: $custom-control-indicator-active-bg;
51
+ border-color: $custom-control-indicator-active-border-color;
52
+ @include box-shadow($custom-control-indicator-active-box-shadow);
53
+ }
54
+
55
+ &:disabled {
56
+ ~ .custom-control-label {
57
+ color: $custom-control-label-disabled-color;
58
+
59
+ &::before {
60
+ background-color: $custom-control-indicator-disabled-bg;
61
+ }
62
+ }
63
+ }
64
+ }
65
+
66
+ // Custom control indicators
67
+ //
68
+ // Build the custom controls out of pseudo-elements.
69
+
70
+ .custom-control-label {
71
+ position: relative;
72
+ margin-bottom: 0;
73
+ vertical-align: top;
74
+
75
+ // Background-color and (when enabled) gradient
76
+ &::before {
77
+ position: absolute;
78
+ top: math.div(($font-size-base * $line-height-base - $custom-control-indicator-size), 2);
79
+ left: -($custom-control-gutter + $custom-control-indicator-size);
80
+ display: block;
81
+ width: $custom-control-indicator-size;
82
+ height: $custom-control-indicator-size;
83
+ pointer-events: none;
84
+ content: "";
85
+ background-color: $custom-control-indicator-bg;
86
+ border: $custom-control-indicator-border-color solid $custom-control-indicator-border-width;
87
+ @include box-shadow($custom-control-indicator-box-shadow);
88
+ }
89
+
90
+ // Foreground (icon)
91
+ &::after {
92
+ position: absolute;
93
+ top: math.div(($font-size-base * $line-height-base - $custom-control-indicator-size), 2);
94
+ left: -($custom-control-gutter + $custom-control-indicator-size);
95
+ display: block;
96
+ width: $custom-control-indicator-size;
97
+ height: $custom-control-indicator-size;
98
+ content: "";
99
+ background-repeat: no-repeat;
100
+ background-position: center center;
101
+ background-size: $custom-control-indicator-bg-size;
102
+ }
103
+ }
104
+
105
+
106
+ // Checkboxes
107
+ //
108
+ // Tweak just a few things for checkboxes.
109
+
110
+ .custom-checkbox {
111
+ .custom-control-label::before {
112
+ @include border-radius($custom-checkbox-indicator-border-radius);
113
+ }
114
+
115
+ .custom-control-input:checked ~ .custom-control-label {
116
+ &::after {
117
+ background-image: $custom-checkbox-indicator-icon-checked;
118
+ }
119
+ }
120
+
121
+ .custom-control-input:indeterminate ~ .custom-control-label {
122
+ &::before {
123
+ border-color: $custom-checkbox-indicator-indeterminate-border-color;
124
+ @include gradient-bg($custom-checkbox-indicator-indeterminate-bg);
125
+ @include box-shadow($custom-checkbox-indicator-indeterminate-box-shadow);
126
+ }
127
+ &::after {
128
+ background-image: $custom-checkbox-indicator-icon-indeterminate;
129
+ }
130
+ }
131
+
132
+ .custom-control-input:disabled {
133
+ &:checked ~ .custom-control-label::before {
134
+ background-color: $custom-control-indicator-checked-disabled-bg;
135
+ }
136
+ &:indeterminate ~ .custom-control-label::before {
137
+ background-color: $custom-control-indicator-checked-disabled-bg;
138
+ }
139
+ }
140
+ }
141
+
142
+ // Radios
143
+ //
144
+ // Tweak just a few things for radios.
145
+
146
+ .custom-radio {
147
+ .custom-control-label::before {
148
+ border-radius: $custom-radio-indicator-border-radius;
149
+ }
150
+
151
+ .custom-control-input:checked ~ .custom-control-label {
152
+ &::after {
153
+ background-image: $custom-radio-indicator-icon-checked;
154
+ }
155
+ }
156
+
157
+ .custom-control-input:disabled {
158
+ &:checked ~ .custom-control-label::before {
159
+ background-color: $custom-control-indicator-checked-disabled-bg;
160
+ }
161
+ }
162
+ }
163
+
164
+
165
+ // switches
166
+ //
167
+ // Tweak a few things for switches
168
+
169
+ .custom-switch {
170
+ padding-left: $custom-switch-width + $custom-control-gutter;
171
+
172
+ .custom-control-label {
173
+ &::before {
174
+ left: -($custom-switch-width + $custom-control-gutter);
175
+ width: $custom-switch-width;
176
+ pointer-events: all;
177
+ border-radius: $custom-switch-indicator-border-radius;
178
+ }
179
+
180
+ &::after {
181
+ top: math.div((4 * $line-height-base - $custom-control-indicator-size), 2) + 40 * 2;
182
+ left: calc(#{-($custom-switch-width + $custom-control-gutter)} + #{$custom-control-indicator-border-width * 2});
183
+ width: $custom-switch-indicator-size;
184
+ height: $custom-switch-indicator-size;
185
+ background-color: $custom-control-indicator-border-color;
186
+ border-radius: $custom-switch-indicator-border-radius;
187
+ @include transition(transform .15s ease-in-out, $custom-forms-transition);
188
+ }
189
+ }
190
+
191
+ .custom-control-input:checked ~ .custom-control-label {
192
+ &::after {
193
+ background-color: $custom-control-indicator-bg;
194
+ transform: translateX($custom-switch-width - $custom-control-indicator-size);
195
+ }
196
+ }
197
+
198
+ .custom-control-input:disabled {
199
+ &:checked ~ .custom-control-label::before {
200
+ background-color: $custom-control-indicator-checked-disabled-bg;
201
+ }
202
+ }
203
+ }
204
+
205
+
206
+ // Select
207
+ //
208
+ // Replaces the browser default select with a custom one, mostly pulled from
209
+ // https://primer.github.io/.
210
+ //
211
+
212
+ .custom-select {
213
+ display: inline-block;
214
+ width: 100%;
215
+ height: $custom-select-height;
216
+ padding: $custom-select-padding-y ($custom-select-padding-x + $custom-select-indicator-padding) $custom-select-padding-y $custom-select-padding-x;
217
+ font-weight: $custom-select-font-weight;
218
+ line-height: $custom-select-line-height;
219
+ color: $custom-select-color;
220
+ vertical-align: middle;
221
+ background: $custom-select-background;
222
+ background-color: $custom-select-bg;
223
+ border: $custom-select-border-width solid $custom-select-border-color;
224
+ @if $enable-rounded {
225
+ border-radius: $custom-select-border-radius;
226
+ } @else {
227
+ border-radius: 0;
228
+ }
229
+ @include box-shadow($custom-select-box-shadow);
230
+ appearance: none;
231
+
232
+ &:focus {
233
+ border-color: $custom-select-focus-border-color;
234
+ outline: 0;
235
+ @if $enable-shadows {
236
+ box-shadow: $custom-select-box-shadow, $custom-select-focus-box-shadow;
237
+ } @else {
238
+ box-shadow: $custom-select-focus-box-shadow;
239
+ }
240
+
241
+ &::-ms-value {
242
+ // For visual consistency with other platforms/browsers,
243
+ // suppress the default white text on blue background highlight given to
244
+ // the selected option text when the (still closed) <select> receives focus
245
+ // in IE and (under certain conditions) Edge.
246
+ // See https://github.com/twbs/bootstrap/issues/19398.
247
+ color: $input-color;
248
+ background-color: $input-bg;
249
+ }
250
+ }
251
+
252
+ &[multiple],
253
+ &[size]:not([size="1"]) {
254
+ height: auto;
255
+ padding-right: $custom-select-padding-x;
256
+ background-image: none;
257
+ }
258
+
259
+ &:disabled {
260
+ color: $custom-select-disabled-color;
261
+ background-color: $custom-select-disabled-bg;
262
+ }
263
+
264
+ // Hides the default caret in IE11
265
+ &::-ms-expand {
266
+ opacity: 0;
267
+ }
268
+ }
269
+
270
+ .custom-select-sm {
271
+ height: $custom-select-height-sm;
272
+ padding-top: $custom-select-padding-y-sm;
273
+ padding-bottom: $custom-select-padding-y-sm;
274
+ padding-left: $custom-select-padding-x-sm;
275
+ font-size: $custom-select-font-size-sm;
276
+ }
277
+
278
+ .custom-select-lg {
279
+ height: $custom-select-height-lg;
280
+ padding-top: $custom-select-padding-y-lg;
281
+ padding-bottom: $custom-select-padding-y-lg;
282
+ padding-left: $custom-select-padding-x-lg;
283
+ font-size: $custom-select-font-size-lg;
284
+ }
285
+
286
+
287
+ // File
288
+ //
289
+ // Custom file input.
290
+
291
+ .custom-file {
292
+ position: relative;
293
+ display: inline-block;
294
+ width: 100%;
295
+ height: $custom-file-height;
296
+ margin-bottom: 0;
297
+ }
298
+
299
+ .custom-file-input {
300
+ position: relative;
301
+ z-index: 2;
302
+ width: 100%;
303
+ height: $custom-file-height;
304
+ margin: 0;
305
+ opacity: 0;
306
+
307
+ &:focus ~ .custom-file-label {
308
+ border-color: $custom-file-focus-border-color;
309
+ box-shadow: $custom-file-focus-box-shadow;
310
+ }
311
+
312
+ &:disabled ~ .custom-file-label {
313
+ background-color: $custom-file-disabled-bg;
314
+ }
315
+
316
+ @each $lang, $value in $custom-file-text {
317
+ &:lang(#{$lang}) ~ .custom-file-label::after {
318
+ content: $value;
319
+ }
320
+ }
321
+
322
+ ~ .custom-file-label[data-browse]::after {
323
+ content: attr(data-browse);
324
+ }
325
+ }
326
+
327
+ .custom-file-label {
328
+ position: absolute;
329
+ top: 0;
330
+ right: 0;
331
+ left: 0;
332
+ z-index: 1;
333
+ height: $custom-file-height;
334
+ padding: $custom-file-padding-y $custom-file-padding-x;
335
+ font-weight: $custom-file-font-weight;
336
+ line-height: $custom-file-line-height;
337
+ color: $custom-file-color;
338
+ background-color: $custom-file-bg;
339
+ border: $custom-file-border-width solid $custom-file-border-color;
340
+ @include border-radius($custom-file-border-radius);
341
+ @include box-shadow($custom-file-box-shadow);
342
+
343
+ &::after {
344
+ position: absolute;
345
+ top: 0;
346
+ right: 0;
347
+ bottom: 0;
348
+ z-index: 3;
349
+ display: block;
350
+ height: $custom-file-height-inner;
351
+ padding: $custom-file-padding-y $custom-file-padding-x;
352
+ line-height: $custom-file-line-height;
353
+ color: $custom-file-button-color;
354
+ content: "Browse";
355
+ @include gradient-bg($custom-file-button-bg);
356
+ border-left: inherit;
357
+ @include border-radius(0 $custom-file-border-radius $custom-file-border-radius 0);
358
+ }
359
+ }
360
+
361
+ // Range
362
+ //
363
+ // Style range inputs the same across browsers. Vendor-specific rules for pseudo
364
+ // elements cannot be mixed. As such, there are no shared styles for focus or
365
+ // active states on prefixed selectors.
366
+
367
+ .custom-range {
368
+ width: 100%;
369
+ height: calc(#{$custom-range-thumb-height} + #{$custom-range-thumb-focus-box-shadow-width * 2});
370
+ padding: 0; // Need to reset padding
371
+ background-color: transparent;
372
+ appearance: none;
373
+
374
+ &:focus {
375
+ outline: none;
376
+
377
+ // Pseudo-elements must be split across multiple rulesets to have an effect.
378
+ // No box-shadow() mixin for focus accessibility.
379
+ &::-webkit-slider-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
380
+ &::-moz-range-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
381
+ &::-ms-thumb { box-shadow: $custom-range-thumb-focus-box-shadow; }
382
+ }
383
+
384
+ &::-moz-focus-outer {
385
+ border: 0;
386
+ }
387
+
388
+ &::-webkit-slider-thumb {
389
+ width: $custom-range-thumb-width;
390
+ height: $custom-range-thumb-height;
391
+ margin-top: math.div(($custom-range-track-height - $custom-range-thumb-height), 2); // Webkit specific
392
+ @include gradient-bg($custom-range-thumb-bg);
393
+ border: $custom-range-thumb-border;
394
+ @include border-radius($custom-range-thumb-border-radius);
395
+ @include box-shadow($custom-range-thumb-box-shadow);
396
+ @include transition($custom-forms-transition);
397
+ appearance: none;
398
+
399
+ &:active {
400
+ @include gradient-bg($custom-range-thumb-active-bg);
401
+ }
402
+ }
403
+
404
+ &::-webkit-slider-runnable-track {
405
+ width: $custom-range-track-width;
406
+ height: $custom-range-track-height;
407
+ color: transparent; // Why?
408
+ cursor: $custom-range-track-cursor;
409
+ background-color: $custom-range-track-bg;
410
+ border-color: transparent;
411
+ @include border-radius($custom-range-track-border-radius);
412
+ @include box-shadow($custom-range-track-box-shadow);
413
+ }
414
+
415
+ &::-moz-range-thumb {
416
+ width: $custom-range-thumb-width;
417
+ height: $custom-range-thumb-height;
418
+ @include gradient-bg($custom-range-thumb-bg);
419
+ border: $custom-range-thumb-border;
420
+ @include border-radius($custom-range-thumb-border-radius);
421
+ @include box-shadow($custom-range-thumb-box-shadow);
422
+ @include transition($custom-forms-transition);
423
+ appearance: none;
424
+
425
+ &:active {
426
+ @include gradient-bg($custom-range-thumb-active-bg);
427
+ }
428
+ }
429
+
430
+ &::-moz-range-track {
431
+ width: $custom-range-track-width;
432
+ height: $custom-range-track-height;
433
+ color: transparent;
434
+ cursor: $custom-range-track-cursor;
435
+ background-color: $custom-range-track-bg;
436
+ border-color: transparent; // Firefox specific?
437
+ @include border-radius($custom-range-track-border-radius);
438
+ @include box-shadow($custom-range-track-box-shadow);
439
+ }
440
+
441
+ &::-ms-thumb {
442
+ width: $custom-range-thumb-width;
443
+ height: $custom-range-thumb-height;
444
+ margin-top: 0; // Edge specific
445
+ margin-right: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
446
+ margin-left: $custom-range-thumb-focus-box-shadow-width; // Workaround that overflowed box-shadow is hidden.
447
+ @include gradient-bg($custom-range-thumb-bg);
448
+ border: $custom-range-thumb-border;
449
+ @include border-radius($custom-range-thumb-border-radius);
450
+ @include box-shadow($custom-range-thumb-box-shadow);
451
+ @include transition($custom-forms-transition);
452
+ appearance: none;
453
+
454
+ &:active {
455
+ @include gradient-bg($custom-range-thumb-active-bg);
456
+ }
457
+ }
458
+
459
+ &::-ms-track {
460
+ width: $custom-range-track-width;
461
+ height: $custom-range-track-height;
462
+ color: transparent;
463
+ cursor: $custom-range-track-cursor;
464
+ background-color: transparent;
465
+ border-color: transparent;
466
+ border-width: math.div($custom-range-thumb-height, 2);
467
+ @include box-shadow($custom-range-track-box-shadow);
468
+ }
469
+
470
+ &::-ms-fill-lower {
471
+ background-color: $custom-range-track-bg;
472
+ @include border-radius($custom-range-track-border-radius);
473
+ }
474
+
475
+ &::-ms-fill-upper {
476
+ margin-right: 15px; // arbitrary?
477
+ background-color: $custom-range-track-bg;
478
+ @include border-radius($custom-range-track-border-radius);
479
+ }
480
+
481
+ &:disabled {
482
+ &::-webkit-slider-thumb {
483
+ background-color: $custom-range-thumb-disabled-bg;
484
+ }
485
+
486
+ &::-webkit-slider-runnable-track {
487
+ cursor: default;
488
+ }
489
+
490
+ &::-moz-range-thumb {
491
+ background-color: $custom-range-thumb-disabled-bg;
492
+ }
493
+
494
+ &::-moz-range-track {
495
+ cursor: default;
496
+ }
497
+
498
+ &::-ms-thumb {
499
+ background-color: $custom-range-thumb-disabled-bg;
500
+ }
501
+ }
502
+ }
503
+
504
+ .custom-control-label::before,
505
+ .custom-file-label,
506
+ .custom-select {
507
+ @include transition($custom-forms-transition);
508
+ }