@expressivecss/expressive 0.9.0 → 0.10.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 (188) hide show
  1. package/CHANGELOG.md +174 -1
  2. package/README.md +178 -25
  3. package/dist/css/expressive.css +365 -1222
  4. package/dist/css/expressive.css.map +1 -1
  5. package/dist/css/expressive.min.css +1 -1
  6. package/dist/css/expressive.min.css.map +1 -1
  7. package/dist/fonts/material-symbols-outlined.woff2 +0 -0
  8. package/dist/fonts/material-symbols-rounded.woff2 +0 -0
  9. package/dist/fonts/material-symbols-sharp.woff2 +0 -0
  10. package/dist/js/chunks/chunk-7MM4VJJO.mjs +509 -0
  11. package/dist/js/chunks/chunk-7MM4VJJO.mjs.map +7 -0
  12. package/dist/js/chunks/chunk-7UXHSYIA.mjs +183 -0
  13. package/dist/js/chunks/chunk-7UXHSYIA.mjs.map +7 -0
  14. package/dist/js/chunks/chunk-A3BJA7V4.mjs +28 -0
  15. package/dist/js/chunks/chunk-A3BJA7V4.mjs.map +7 -0
  16. package/dist/js/chunks/chunk-AOGFNMXS.mjs +691 -0
  17. package/dist/js/chunks/chunk-AOGFNMXS.mjs.map +7 -0
  18. package/dist/js/chunks/chunk-D4UZ4HFN.mjs +560 -0
  19. package/dist/js/chunks/chunk-D4UZ4HFN.mjs.map +7 -0
  20. package/dist/js/chunks/chunk-EP3CVKB5.mjs +88 -0
  21. package/dist/js/chunks/chunk-EP3CVKB5.mjs.map +7 -0
  22. package/dist/js/chunks/chunk-G576EP5O.mjs +459 -0
  23. package/dist/js/chunks/chunk-G576EP5O.mjs.map +7 -0
  24. package/dist/js/chunks/chunk-GY2Z5CJ2.mjs +320 -0
  25. package/dist/js/chunks/chunk-GY2Z5CJ2.mjs.map +7 -0
  26. package/dist/js/chunks/chunk-JKNPQQWY.mjs +191 -0
  27. package/dist/js/chunks/chunk-JKNPQQWY.mjs.map +7 -0
  28. package/dist/js/chunks/chunk-JNPIWFJT.mjs +365 -0
  29. package/dist/js/chunks/chunk-JNPIWFJT.mjs.map +7 -0
  30. package/dist/js/chunks/chunk-JODJAGFS.mjs +267 -0
  31. package/dist/js/chunks/chunk-JODJAGFS.mjs.map +7 -0
  32. package/dist/js/chunks/chunk-JR24UB4X.mjs +100 -0
  33. package/dist/js/chunks/chunk-JR24UB4X.mjs.map +7 -0
  34. package/dist/js/chunks/chunk-KR44BSYQ.mjs +55 -0
  35. package/dist/js/chunks/chunk-KR44BSYQ.mjs.map +7 -0
  36. package/dist/js/chunks/chunk-LZVBJ33S.mjs +102 -0
  37. package/dist/js/chunks/chunk-LZVBJ33S.mjs.map +7 -0
  38. package/dist/js/chunks/chunk-MISGHDUU.mjs +326 -0
  39. package/dist/js/chunks/chunk-MISGHDUU.mjs.map +7 -0
  40. package/dist/js/chunks/chunk-N3UHGN3N.mjs +175 -0
  41. package/dist/js/chunks/chunk-N3UHGN3N.mjs.map +7 -0
  42. package/dist/js/chunks/chunk-PB5L3EXF.mjs +7 -0
  43. package/dist/js/chunks/chunk-PB5L3EXF.mjs.map +7 -0
  44. package/dist/js/chunks/chunk-PIIAEYAJ.mjs +85 -0
  45. package/dist/js/chunks/chunk-PIIAEYAJ.mjs.map +7 -0
  46. package/dist/js/chunks/chunk-QSQ24FYT.mjs +59 -0
  47. package/dist/js/chunks/chunk-QSQ24FYT.mjs.map +7 -0
  48. package/dist/js/chunks/chunk-QYCYP443.mjs +1111 -0
  49. package/dist/js/chunks/chunk-QYCYP443.mjs.map +7 -0
  50. package/dist/js/chunks/chunk-SLFNPY5M.mjs +78 -0
  51. package/dist/js/chunks/chunk-SLFNPY5M.mjs.map +7 -0
  52. package/dist/js/chunks/chunk-TK6PX2GC.mjs +663 -0
  53. package/dist/js/chunks/chunk-TK6PX2GC.mjs.map +7 -0
  54. package/dist/js/chunks/chunk-TYM6U5DY.mjs +76 -0
  55. package/dist/js/chunks/chunk-TYM6U5DY.mjs.map +7 -0
  56. package/dist/js/chunks/chunk-TZZ24ZQS.mjs +154 -0
  57. package/dist/js/chunks/chunk-TZZ24ZQS.mjs.map +7 -0
  58. package/dist/js/chunks/chunk-VAS6JQ6P.mjs +94 -0
  59. package/dist/js/chunks/chunk-VAS6JQ6P.mjs.map +7 -0
  60. package/dist/js/chunks/chunk-WWPAPHMA.mjs +1 -0
  61. package/dist/js/chunks/chunk-WWPAPHMA.mjs.map +7 -0
  62. package/dist/js/chunks/chunk-XDB3G6RL.mjs +114 -0
  63. package/dist/js/chunks/chunk-XDB3G6RL.mjs.map +7 -0
  64. package/dist/js/chunks/chunk-XO5WX3TK.mjs +226 -0
  65. package/dist/js/chunks/chunk-XO5WX3TK.mjs.map +7 -0
  66. package/dist/js/chunks/chunk-YFXEJ7GR.mjs +286 -0
  67. package/dist/js/chunks/chunk-YFXEJ7GR.mjs.map +7 -0
  68. package/dist/js/chunks/chunk-ZIZVUWRL.mjs +120 -0
  69. package/dist/js/chunks/chunk-ZIZVUWRL.mjs.map +7 -0
  70. package/dist/js/chunks/chunk-ZZBZI2XN.mjs +338 -0
  71. package/dist/js/chunks/chunk-ZZBZI2XN.mjs.map +7 -0
  72. package/dist/js/expressive.cjs +801 -761
  73. package/dist/js/expressive.cjs.map +4 -4
  74. package/dist/js/expressive.js +801 -761
  75. package/dist/js/expressive.js.map +4 -4
  76. package/dist/js/expressive.min.js +11 -15
  77. package/dist/js/expressive.min.js.map +4 -4
  78. package/dist/js/expressive.mjs +83 -7443
  79. package/dist/js/expressive.mjs.map +4 -4
  80. package/dist/js/internal/behaviors/bottomSheets.mjs +9 -0
  81. package/dist/js/internal/behaviors/bottomSheets.mjs.map +7 -0
  82. package/dist/js/internal/behaviors/dialogs.mjs +8 -0
  83. package/dist/js/internal/behaviors/dialogs.mjs.map +7 -0
  84. package/dist/js/internal/behaviors/forms.mjs +8 -0
  85. package/dist/js/internal/behaviors/forms.mjs.map +7 -0
  86. package/dist/js/internal/behaviors/sheetDrag.mjs +8 -0
  87. package/dist/js/internal/behaviors/sheetDrag.mjs.map +7 -0
  88. package/dist/js/internal/behaviors/sideSheets.mjs +9 -0
  89. package/dist/js/internal/behaviors/sideSheets.mjs.map +7 -0
  90. package/dist/js/internal/components/appBar.mjs +8 -0
  91. package/dist/js/internal/components/appBar.mjs.map +7 -0
  92. package/dist/js/internal/components/autocomplete.mjs +10 -0
  93. package/dist/js/internal/components/autocomplete.mjs.map +7 -0
  94. package/dist/js/internal/components/buttonGroup.mjs +8 -0
  95. package/dist/js/internal/components/buttonGroup.mjs.map +7 -0
  96. package/dist/js/internal/components/buttons.mjs +9 -0
  97. package/dist/js/internal/components/buttons.mjs.map +7 -0
  98. package/dist/js/internal/components/cards.mjs +13 -0
  99. package/dist/js/internal/components/cards.mjs.map +7 -0
  100. package/dist/js/internal/components/carousel.mjs +9 -0
  101. package/dist/js/internal/components/carousel.mjs.map +7 -0
  102. package/dist/js/internal/components/characterCounter.mjs +8 -0
  103. package/dist/js/internal/components/characterCounter.mjs.map +7 -0
  104. package/dist/js/internal/components/chips.mjs +11 -0
  105. package/dist/js/internal/components/chips.mjs.map +7 -0
  106. package/dist/js/internal/components/datepicker.mjs +12 -0
  107. package/dist/js/internal/components/datepicker.mjs.map +7 -0
  108. package/dist/js/internal/components/expandingCard.mjs +11 -0
  109. package/dist/js/internal/components/expandingCard.mjs.map +7 -0
  110. package/dist/js/internal/components/index.mjs +88 -0
  111. package/dist/js/internal/components/index.mjs.map +7 -0
  112. package/dist/js/internal/components/lightbox.mjs +9 -0
  113. package/dist/js/internal/components/lightbox.mjs.map +7 -0
  114. package/dist/js/internal/components/menu.mjs +9 -0
  115. package/dist/js/internal/components/menu.mjs.map +7 -0
  116. package/dist/js/internal/components/navigationRail.mjs +8 -0
  117. package/dist/js/internal/components/navigationRail.mjs.map +7 -0
  118. package/dist/js/internal/components/registry.mjs +33 -0
  119. package/dist/js/internal/components/registry.mjs.map +7 -0
  120. package/dist/js/internal/components/scrollspy.mjs +8 -0
  121. package/dist/js/internal/components/scrollspy.mjs.map +7 -0
  122. package/dist/js/internal/components/select.mjs +10 -0
  123. package/dist/js/internal/components/select.mjs.map +7 -0
  124. package/dist/js/internal/components/slider.mjs +9 -0
  125. package/dist/js/internal/components/slider.mjs.map +7 -0
  126. package/dist/js/internal/components/snackbar.mjs +8 -0
  127. package/dist/js/internal/components/snackbar.mjs.map +7 -0
  128. package/dist/js/internal/components/tabs.mjs +10 -0
  129. package/dist/js/internal/components/tabs.mjs.map +7 -0
  130. package/dist/js/internal/components/timepicker.mjs +10 -0
  131. package/dist/js/internal/components/timepicker.mjs.map +7 -0
  132. package/dist/js/internal/components/tooltip.mjs +9 -0
  133. package/dist/js/internal/components/tooltip.mjs.map +7 -0
  134. package/dist/js/internal/core/component.mjs +7 -0
  135. package/dist/js/internal/core/component.mjs.map +7 -0
  136. package/dist/js/internal/core/utils.mjs +7 -0
  137. package/dist/js/internal/core/utils.mjs.map +7 -0
  138. package/dist/js/internal/plugins/dockedDisplayPlugin.mjs +8 -0
  139. package/dist/js/internal/plugins/dockedDisplayPlugin.mjs.map +7 -0
  140. package/dist/js/modular.mjs +113 -0
  141. package/dist/js/modular.mjs.map +7 -0
  142. package/dist/types/behaviors/sheetDrag.d.ts +1 -1
  143. package/dist/types/components/appBar.d.ts +1 -1
  144. package/dist/types/components/autocomplete.d.ts +9 -0
  145. package/dist/types/components/buttons.d.ts +4 -39
  146. package/dist/types/components/carousel.d.ts +10 -1
  147. package/dist/types/components/chips.d.ts +1 -0
  148. package/dist/types/components/datepicker.d.ts +11 -0
  149. package/dist/types/components/index.d.ts +0 -2
  150. package/dist/types/components/lightbox.d.ts +12 -0
  151. package/dist/types/components/menu.d.ts +3 -0
  152. package/dist/types/components/registry.d.ts +0 -4
  153. package/dist/types/components/select.d.ts +4 -0
  154. package/dist/types/components/slider.d.ts +2 -1
  155. package/dist/types/components/snackbar.d.ts +4 -2
  156. package/dist/types/components/tabs.d.ts +2 -1
  157. package/dist/types/components/timepicker.d.ts +5 -3
  158. package/dist/types/components/tooltip.d.ts +5 -3
  159. package/dist/types/index.d.ts +1 -8
  160. package/dist/types/modular.d.ts +28 -0
  161. package/package.json +16 -4
  162. package/src/sass/README.md +8 -0
  163. package/src/sass/components/_badges.scss +1 -6
  164. package/src/sass/components/_button-groups.scss +5 -1
  165. package/src/sass/components/_buttons.scss +8 -287
  166. package/src/sass/components/_chips.scss +17 -2
  167. package/src/sass/components/_dialog.scss +9 -4
  168. package/src/sass/components/_fab-menu.scss +11 -9
  169. package/src/sass/components/_icon-buttons.scss +0 -5
  170. package/src/sass/components/_index.scss +0 -5
  171. package/src/sass/components/_menu.scss +2 -2
  172. package/src/sass/components/_navigation-rail.scss +1 -1
  173. package/src/sass/components/_panes.scss +50 -78
  174. package/src/sass/components/_progress.scss +73 -13
  175. package/src/sass/components/_scrim.scss +4 -4
  176. package/src/sass/components/_side-sheet.scss +22 -12
  177. package/src/sass/components/_toolbar.scss +1 -4
  178. package/src/sass/components/_tooltip.scss +20 -2
  179. package/src/sass/components/forms/_input-fields.scss +5 -1
  180. package/src/sass/components/forms/_select.scss +1 -0
  181. package/src/sass/components/forms/_slider.scss +81 -25
  182. package/src/sass/custom.scss +38 -0
  183. package/dist/types/components/navigationDrawer.d.ts +0 -110
  184. package/src/sass/components/_banners.scss +0 -298
  185. package/src/sass/components/_bottom-app-bar.scss +0 -180
  186. package/src/sass/components/_floating-sheet.scss +0 -86
  187. package/src/sass/components/_navigation-drawer.scss +0 -476
  188. package/src/sass/components/_segmented-buttons.scss +0 -188
@@ -103,6 +103,11 @@ input[type="range"] {
103
103
  --md-comp-slider-icon-size: 32px;
104
104
  }
105
105
 
106
+ :is(#{$_host}):dir(rtl),
107
+ input[type="range"]:dir(rtl) {
108
+ --md-comp-slider-gradient: to left;
109
+ }
110
+
106
111
  :is(#{$_host}).vertical {
107
112
  --md-comp-slider-gradient: to top;
108
113
  --md-comp-slider-stop-at-start: 50% var(--md-comp-slider-stop-inset);
@@ -187,7 +192,7 @@ input[type="range"] {
187
192
  max(
188
193
  0%,
189
194
  calc(
190
- var(--md-comp-slider-active-fraction) - var(--md-comp-slider-gap) -
195
+ var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
191
196
  var(--md-comp-slider-handle-width) / 2
192
197
  )
193
198
  ),
@@ -195,7 +200,7 @@ input[type="range"] {
195
200
  max(
196
201
  0%,
197
202
  calc(
198
- var(--md-comp-slider-active-fraction) - var(--md-comp-slider-gap) -
203
+ var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
199
204
  var(--md-comp-slider-handle-width) / 2
200
205
  )
201
206
  ),
@@ -203,7 +208,7 @@ input[type="range"] {
203
208
  min(
204
209
  100%,
205
210
  calc(
206
- var(--md-comp-slider-active-fraction) + var(--md-comp-slider-gap) +
211
+ var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
207
212
  var(--md-comp-slider-handle-width) / 2
208
213
  )
209
214
  ),
@@ -211,7 +216,7 @@ input[type="range"] {
211
216
  min(
212
217
  100%,
213
218
  calc(
214
- var(--md-comp-slider-active-fraction) + var(--md-comp-slider-gap) +
219
+ var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
215
220
  var(--md-comp-slider-handle-width) / 2
216
221
  )
217
222
  )
@@ -236,7 +241,7 @@ input[type="range"] {
236
241
  max(
237
242
  0%,
238
243
  calc(
239
- min(50%, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
244
+ min(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) - var(--md-comp-slider-gap) -
240
245
  var(--md-comp-slider-handle-width) / 2
241
246
  )
242
247
  ),
@@ -244,7 +249,7 @@ input[type="range"] {
244
249
  max(
245
250
  0%,
246
251
  calc(
247
- min(50%, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
252
+ min(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) - var(--md-comp-slider-gap) -
248
253
  var(--md-comp-slider-handle-width) / 2
249
254
  )
250
255
  ),
@@ -252,7 +257,7 @@ input[type="range"] {
252
257
  min(
253
258
  100%,
254
259
  calc(
255
- min(50%, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
260
+ min(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) + var(--md-comp-slider-gap) +
256
261
  var(--md-comp-slider-handle-width) / 2
257
262
  )
258
263
  ),
@@ -260,7 +265,7 @@ input[type="range"] {
260
265
  min(
261
266
  100%,
262
267
  calc(
263
- min(50%, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
268
+ min(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) + var(--md-comp-slider-gap) +
264
269
  var(--md-comp-slider-handle-width) / 2
265
270
  )
266
271
  ),
@@ -268,7 +273,7 @@ input[type="range"] {
268
273
  max(
269
274
  0%,
270
275
  calc(
271
- max(50%, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
276
+ max(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) - var(--md-comp-slider-gap) -
272
277
  var(--md-comp-slider-handle-width) / 2
273
278
  )
274
279
  ),
@@ -276,7 +281,7 @@ input[type="range"] {
276
281
  max(
277
282
  0%,
278
283
  calc(
279
- max(50%, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
284
+ max(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) - var(--md-comp-slider-gap) -
280
285
  var(--md-comp-slider-handle-width) / 2
281
286
  )
282
287
  ),
@@ -284,7 +289,7 @@ input[type="range"] {
284
289
  min(
285
290
  100%,
286
291
  calc(
287
- max(50%, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
292
+ max(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) + var(--md-comp-slider-gap) +
288
293
  var(--md-comp-slider-handle-width) / 2
289
294
  )
290
295
  ),
@@ -292,7 +297,7 @@ input[type="range"] {
292
297
  min(
293
298
  100%,
294
299
  calc(
295
- max(50%, var(--md-comp-slider-active-fraction)) + var(--md-comp-slider-gap) +
300
+ max(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) + var(--md-comp-slider-gap) +
296
301
  var(--md-comp-slider-handle-width) / 2
297
302
  )
298
303
  )
@@ -317,7 +322,7 @@ input[type="range"] {
317
322
  max(
318
323
  0%,
319
324
  calc(
320
- var(--md-comp-slider-start-fraction) - var(--md-comp-slider-gap) -
325
+ var(--md-comp-slider-start-position, var(--md-comp-slider-start-fraction)) - var(--md-comp-slider-gap) -
321
326
  var(--md-comp-slider-handle-width) / 2
322
327
  )
323
328
  ),
@@ -325,7 +330,7 @@ input[type="range"] {
325
330
  max(
326
331
  0%,
327
332
  calc(
328
- var(--md-comp-slider-start-fraction) - var(--md-comp-slider-gap) -
333
+ var(--md-comp-slider-start-position, var(--md-comp-slider-start-fraction)) - var(--md-comp-slider-gap) -
329
334
  var(--md-comp-slider-handle-width) / 2
330
335
  )
331
336
  ),
@@ -333,7 +338,7 @@ input[type="range"] {
333
338
  min(
334
339
  100%,
335
340
  calc(
336
- var(--md-comp-slider-start-fraction) + var(--md-comp-slider-gap) +
341
+ var(--md-comp-slider-start-position, var(--md-comp-slider-start-fraction)) + var(--md-comp-slider-gap) +
337
342
  var(--md-comp-slider-handle-width) / 2
338
343
  )
339
344
  ),
@@ -341,7 +346,7 @@ input[type="range"] {
341
346
  min(
342
347
  100%,
343
348
  calc(
344
- var(--md-comp-slider-start-fraction) + var(--md-comp-slider-gap) +
349
+ var(--md-comp-slider-start-position, var(--md-comp-slider-start-fraction)) + var(--md-comp-slider-gap) +
345
350
  var(--md-comp-slider-handle-width) / 2
346
351
  )
347
352
  ),
@@ -349,7 +354,7 @@ input[type="range"] {
349
354
  max(
350
355
  0%,
351
356
  calc(
352
- var(--md-comp-slider-end-fraction) - var(--md-comp-slider-gap) -
357
+ var(--md-comp-slider-end-position, var(--md-comp-slider-end-fraction)) - var(--md-comp-slider-gap) -
353
358
  var(--md-comp-slider-handle-width) / 2
354
359
  )
355
360
  ),
@@ -357,7 +362,7 @@ input[type="range"] {
357
362
  max(
358
363
  0%,
359
364
  calc(
360
- var(--md-comp-slider-end-fraction) - var(--md-comp-slider-gap) -
365
+ var(--md-comp-slider-end-position, var(--md-comp-slider-end-fraction)) - var(--md-comp-slider-gap) -
361
366
  var(--md-comp-slider-handle-width) / 2
362
367
  )
363
368
  ),
@@ -365,7 +370,7 @@ input[type="range"] {
365
370
  min(
366
371
  100%,
367
372
  calc(
368
- var(--md-comp-slider-end-fraction) + var(--md-comp-slider-gap) +
373
+ var(--md-comp-slider-end-position, var(--md-comp-slider-end-fraction)) + var(--md-comp-slider-gap) +
369
374
  var(--md-comp-slider-handle-width) / 2
370
375
  )
371
376
  ),
@@ -373,7 +378,7 @@ input[type="range"] {
373
378
  min(
374
379
  100%,
375
380
  calc(
376
- var(--md-comp-slider-end-fraction) + var(--md-comp-slider-gap) +
381
+ var(--md-comp-slider-end-position, var(--md-comp-slider-end-fraction)) + var(--md-comp-slider-gap) +
377
382
  var(--md-comp-slider-handle-width) / 2
378
383
  )
379
384
  )
@@ -498,6 +503,7 @@ input[type="range"]:active:not(:disabled)::-moz-range-thumb {
498
503
 
499
504
  // Dual-handle range. Two inputs share one host; the host paints the track.
500
505
  :is(#{$_host}):has(> [type="range"] ~ [type="range"]) {
506
+ --slider-split: calc((var(--md-comp-slider-start-fraction) + var(--md-comp-slider-end-fraction)) / 2);
501
507
  display: grid;
502
508
  align-items: center;
503
509
  min-height: var(--md-comp-slider-handle-height);
@@ -511,12 +517,25 @@ input[type="range"]:active:not(:disabled)::-moz-range-thumb {
511
517
  @include range-track-fill-dual;
512
518
  }
513
519
 
520
+ > [type="range"]:first-of-type {
521
+ clip-path: inset(-24px calc(100% - var(--slider-split)) -24px -8px);
522
+ }
523
+
524
+ &:dir(rtl) > [type="range"] {
525
+ clip-path: inset(-24px var(--slider-split) -24px -8px);
526
+ }
527
+
528
+ &:dir(rtl) > [type="range"]:first-of-type {
529
+ clip-path: inset(-24px -8px -24px calc(100% - var(--slider-split)));
530
+ }
531
+
514
532
  > [type="range"] {
515
533
  grid-area: 1 / 1;
516
534
  width: 100%;
517
535
  margin: 0;
518
536
  background: none;
519
- pointer-events: none;
537
+ pointer-events: auto;
538
+ clip-path: inset(-24px -8px -24px var(--slider-split));
520
539
  }
521
540
 
522
541
  > [type="range"]::-webkit-slider-runnable-track {
@@ -546,10 +565,23 @@ input[type="range"]:active:not(:disabled)::-moz-range-thumb {
546
565
 
547
566
  :is(#{$_host}).vertical:has(> [type="range"] ~ [type="range"])::before {
548
567
  width: var(--md-comp-slider-track-height);
549
- height: 200px;
568
+ height: 100%;
550
569
  justify-self: center;
551
570
  }
552
571
 
572
+ :is(#{$_host}).vertical:has(> [type="range"] ~ [type="range"]) {
573
+ width: var(--md-comp-slider-handle-height);
574
+
575
+ > [type="range"] {
576
+ width: var(--md-comp-slider-handle-height);
577
+ clip-path: inset(-8px -24px var(--slider-split) -24px);
578
+ }
579
+
580
+ > [type="range"]:first-of-type {
581
+ clip-path: inset(calc(100% - var(--slider-split)) -24px -8px -24px);
582
+ }
583
+ }
584
+
553
585
  // Discrete stops. Dots along the active track; JS sets --stop-count.
554
586
  :is(#{$_host}).stops::after {
555
587
  content: "";
@@ -560,7 +592,7 @@ input[type="range"]:active:not(:disabled)::-moz-range-thumb {
560
592
  width: max(
561
593
  0px,
562
594
  calc(
563
- var(--md-comp-slider-active-fraction) - var(--md-comp-slider-gap) -
595
+ var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
564
596
  var(--md-comp-slider-handle-width) / 2
565
597
  )
566
598
  );
@@ -578,11 +610,11 @@ input[type="range"]:active:not(:disabled)::-moz-range-thumb {
578
610
  }
579
611
 
580
612
  :is(#{$_host}).stops.centered::after {
581
- left: min(50%, var(--md-comp-slider-active-fraction));
613
+ left: min(50%, var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction)));
582
614
  width: max(
583
615
  0%,
584
616
  calc(
585
- abs(50% - var(--md-comp-slider-active-fraction)) - var(--md-comp-slider-gap) -
617
+ abs(50% - var(--md-comp-slider-active-position, var(--md-comp-slider-active-fraction))) - var(--md-comp-slider-gap) -
586
618
  var(--md-comp-slider-handle-width) / 2
587
619
  )
588
620
  );
@@ -632,3 +664,27 @@ input[type="range"] + .thumb {
632
664
  transform: translate(calc(100% + 4px), -50%) scale(1);
633
665
  }
634
666
  }
667
+
668
+ @media (forced-colors: active) {
669
+ :is(#{$_host}), input[type="range"] {
670
+ --md-comp-slider-active-track-color: Highlight;
671
+ --md-comp-slider-inactive-track-color: GrayText;
672
+ --md-comp-slider-handle-color: CanvasText;
673
+ --md-comp-slider-stop-color: CanvasText;
674
+ }
675
+
676
+ input[type="range"],
677
+ :is(#{$_host})::before {
678
+ forced-color-adjust: none;
679
+ }
680
+
681
+ input[type="range"]:focus-visible {
682
+ outline: 2px solid Highlight;
683
+ outline-offset: 4px;
684
+ }
685
+
686
+ input[type="range"]:disabled {
687
+ --md-comp-slider-handle-color: GrayText;
688
+ opacity: 1;
689
+ }
690
+ }
@@ -0,0 +1,38 @@
1
+ @charset "UTF-8";
2
+ @use "sass:meta";
3
+ @forward "abstracts";
4
+
5
+ $components: null !default;
6
+ $utilities: null !default;
7
+
8
+ @include meta.load-css("base/fonts");
9
+
10
+ @layer tokens, base, components, utilities;
11
+
12
+ @layer tokens {
13
+ @include meta.load-css("tokens");
14
+ }
15
+
16
+ @layer base {
17
+ @include meta.load-css("base");
18
+ }
19
+
20
+ @layer components {
21
+ @if $components == null {
22
+ @include meta.load-css("components");
23
+ } @else {
24
+ @each $component in $components {
25
+ @include meta.load-css("components/#{$component}");
26
+ }
27
+ }
28
+ }
29
+
30
+ @layer utilities {
31
+ @if $utilities == null {
32
+ @include meta.load-css("utilities");
33
+ } @else {
34
+ @each $utility in $utilities {
35
+ @include meta.load-css("utilities/#{$utility}");
36
+ }
37
+ }
38
+ }
@@ -1,110 +0,0 @@
1
- import { Component, BaseOptions, InitElements, InitElement, Openable } from '../core/component';
2
- export interface NavigationDrawerOptions extends BaseOptions {
3
- /**
4
- * Side of screen on which NavigationDrawer appears.
5
- * @default 'left'
6
- */
7
- edge: 'left' | 'right';
8
- /**
9
- * Allow swipe gestures to open/close NavigationDrawer.
10
- * @default true
11
- */
12
- draggable: boolean;
13
- /**
14
- * Width of the area where you can start dragging.
15
- * @default '10px'
16
- */
17
- dragTargetWidth: string;
18
- /**
19
- * Function called when sidenav starts entering.
20
- */
21
- onOpenStart: (elem: HTMLElement) => void;
22
- /**
23
- * Function called when sidenav finishes entering.
24
- */
25
- onOpenEnd: (elem: HTMLElement) => void;
26
- /**
27
- * Function called when sidenav starts exiting.
28
- */
29
- onCloseStart: (elem: HTMLElement) => void;
30
- /**
31
- * Function called when sidenav finishes exiting.
32
- */
33
- onCloseEnd: (elem: HTMLElement) => void;
34
- }
35
- /**
36
- * Navigation drawer. Overlay is a modal <dialog>; fixed is a breakpoint.
37
- * JS opens/closes, handles the trigger, and writes --md-comp-nav-drawer-shift
38
- * while dragging. CSS owns the slide, the scrim, and the Expanded+ dock.
39
- */
40
- export declare class NavigationDrawer extends Component<NavigationDrawerOptions> implements Openable {
41
- id: string;
42
- /** Describes open/close state of the overlay drawer. */
43
- isOpen: boolean;
44
- /** Whether the drawer is docked (`navigation-drawer-fixed`). */
45
- isFixed: boolean;
46
- /** Describes if NavigationDrawer is being dragged. */
47
- isDragged: boolean;
48
- static _sidenavs: NavigationDrawer[];
49
- dragTarget: HTMLElement | null;
50
- private _dialog;
51
- private _createdDialog;
52
- private _closing;
53
- private _mql;
54
- private _startingXpos;
55
- private _xPos;
56
- private _width;
57
- private _initialScrollTop;
58
- private _verticallyScrolling;
59
- private percentOpen;
60
- constructor(el: HTMLElement, options: Partial<NavigationDrawerOptions>);
61
- static get defaults(): NavigationDrawerOptions;
62
- /**
63
- * Initializes instance of NavigationDrawer.
64
- * @param el HTML element.
65
- * @param options Component options.
66
- */
67
- static init(el: HTMLElement, options?: Partial<NavigationDrawerOptions>): NavigationDrawer;
68
- /**
69
- * Initializes instances of NavigationDrawer.
70
- * @param els HTML elements.
71
- * @param options Component options.
72
- */
73
- static init(els: InitElements<InitElement>, options?: Partial<NavigationDrawerOptions>): NavigationDrawer[];
74
- static getInstance(el: HTMLElement): NavigationDrawer;
75
- destroy(): void;
76
- /**
77
- * Opens the overlay drawer. No-op while the sidenav is docked
78
- * (navigation-drawer-fixed at the Expanded breakpoint).
79
- */
80
- open: () => void;
81
- /**
82
- * Closes the overlay drawer. No-op while the sidenav is docked.
83
- */
84
- close: () => void;
85
- private _beginClose;
86
- private _finishClose;
87
- private _onDialogClose;
88
- private _onBreakpointChange;
89
- private _setupDialog;
90
- private _unwrapDialog;
91
- private _createDragTarget;
92
- private _removeDragTarget;
93
- private _setupClasses;
94
- private _setupEventHandlers;
95
- private _removeEventHandlers;
96
- private static _handleTriggerClick;
97
- private _handleCloseTriggerClick;
98
- private _isDraggable;
99
- private _isCurrentlyFixed;
100
- private _startDrag;
101
- private _dragMoveUpdate;
102
- private _rawDelta;
103
- private _applyShift;
104
- private _clearShift;
105
- private _handleDragTargetDrag;
106
- private _handleDragTargetRelease;
107
- private _handleCloseDrag;
108
- private _handleCloseRelease;
109
- private _syncTriggers;
110
- }