material-inspired-component-library 5.0.0 → 5.0.1

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 (98) hide show
  1. package/README.md +10 -0
  2. package/components/alert/index.scss +4 -4
  3. package/components/appbar/index.scss +3 -2
  4. package/components/badge/index.scss +2 -2
  5. package/components/bottomsheet/index.scss +6 -5
  6. package/components/button/index.scss +20 -20
  7. package/components/card/index.scss +10 -9
  8. package/components/checkbox/index.scss +11 -11
  9. package/components/datepicker/index.scss +435 -0
  10. package/components/datepicker/index.ts +600 -0
  11. package/components/dialog/README.md +6 -6
  12. package/components/dialog/index.scss +23 -17
  13. package/components/divider/index.scss +2 -0
  14. package/components/iconbutton/index.scss +18 -17
  15. package/components/list/index.scss +10 -10
  16. package/components/menu/index.scss +2 -1
  17. package/components/navigationrail/index.scss +10 -9
  18. package/components/radio/README.md +0 -1
  19. package/components/radio/index.scss +11 -11
  20. package/components/select/index.scss +2 -1
  21. package/components/sidesheet/index.scss +3 -1
  22. package/components/slider/index.scss +7 -7
  23. package/components/stepper/index.scss +5 -4
  24. package/components/switch/README.md +0 -1
  25. package/components/switch/index.scss +21 -21
  26. package/components/textfield/index.scss +6 -5
  27. package/components/textfield/index.ts +7 -6
  28. package/components/timepicker/index.scss +9 -8
  29. package/components/timepicker/index.ts +12 -12
  30. package/dist/alert.css +1 -1
  31. package/dist/appbar.css +1 -1
  32. package/dist/badge.css +1 -1
  33. package/dist/bottomsheet.css +1 -1
  34. package/dist/button.css +1 -1
  35. package/dist/card.css +1 -1
  36. package/dist/checkbox.css +1 -1
  37. package/dist/components/datepicker/index.d.ts +6 -0
  38. package/dist/datepicker.css +1 -0
  39. package/dist/datepicker.js +1 -0
  40. package/dist/dialog.css +1 -1
  41. package/dist/divider.css +1 -1
  42. package/dist/foundations.css +1 -0
  43. package/dist/foundations.js +1 -0
  44. package/dist/iconbutton.css +1 -1
  45. package/dist/layout.css +1 -1
  46. package/dist/list.css +1 -1
  47. package/dist/menu.css +1 -1
  48. package/dist/micl.css +1 -1
  49. package/dist/micl.js +1 -1
  50. package/dist/navigationrail.css +1 -1
  51. package/dist/radio.css +1 -1
  52. package/dist/scrollbar.css +1 -0
  53. package/dist/scrollbar.js +1 -0
  54. package/dist/select.css +1 -1
  55. package/dist/sidesheet.css +1 -1
  56. package/dist/slider.css +1 -1
  57. package/dist/stepper.css +1 -1
  58. package/dist/switch.css +1 -1
  59. package/dist/textfield.css +1 -1
  60. package/dist/timepicker.css +1 -1
  61. package/docs/accordion.html +3 -1
  62. package/docs/alert.html +3 -1
  63. package/docs/bottomsheet.html +3 -1
  64. package/docs/button.html +3 -1
  65. package/docs/card.html +3 -1
  66. package/docs/checkbox.html +3 -1
  67. package/docs/datepicker.html +151 -0
  68. package/docs/dialog.html +23 -9
  69. package/docs/divider.html +3 -1
  70. package/docs/docs.js +43 -0
  71. package/docs/iconbutton.html +1 -1
  72. package/docs/index.html +3 -1
  73. package/docs/list.html +3 -1
  74. package/docs/menu.html +3 -1
  75. package/docs/micl.css +1 -1
  76. package/docs/micl.js +1 -1
  77. package/docs/navigationrail.html +3 -1
  78. package/docs/radio.html +3 -1
  79. package/docs/select.html +3 -1
  80. package/docs/sidesheet.html +3 -1
  81. package/docs/slider.html +1 -1
  82. package/docs/stepper.html +3 -1
  83. package/docs/switch.html +3 -1
  84. package/docs/textfield.html +3 -1
  85. package/docs/timepicker.html +4 -2
  86. package/foundations/index.scss +102 -0
  87. package/foundations/layout/index.scss +0 -52
  88. package/foundations/scrollbar/index.scss +46 -0
  89. package/intl.d.ts +9 -0
  90. package/micl.ts +18 -8
  91. package/package.json +2 -1
  92. package/styles/README.md +17 -8
  93. package/styles/motion.scss +3 -0
  94. package/styles/shapes.scss +23 -18
  95. package/styles/statelayer.scss +4 -0
  96. package/styles/typography.scss +2 -2
  97. package/styles.scss +3 -26
  98. package/tsconfig.json +2 -2
@@ -19,7 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
- @use '../../foundations/layout';
22
+ @use '../../foundations';
23
23
  @use '../../styles/elevation';
24
24
  @use '../../styles/motion';
25
25
  @use '../../styles/shapes';
@@ -55,6 +55,7 @@ dialog.micl-dialog {
55
55
  transform: translate(calc(var(--md-sys-dialog-dir-factor, 1) * -50%), -50%) scale(50%);
56
56
  padding: 0;
57
57
  margin: 0;
58
+ outline: none;
58
59
  border: none;
59
60
  border-radius: var(--md-sys-shape-corner-extra-large);
60
61
  background-color: var(--md-sys-color-surface-container-high);
@@ -134,14 +135,24 @@ dialog.micl-dialog {
134
135
  display var(--md-sys-dialog-motion-duration) linear allow-discrete;
135
136
  }
136
137
  &[open]::backdrop {
137
- background-color: rgba(0, 0, 0, 0.2);
138
+ background-color: rgba(0, 0, 0, var(--md-sys-state-backdrop-opacity, 32%));
138
139
 
139
140
  @starting-style {
140
141
  background-color: rgba(0, 0, 0, 0);
141
142
  }
142
143
  }
144
+
145
+ &.micl-dialog--docked {
146
+ position-anchor: auto;
147
+ inset-block: anchor(end) auto;
148
+ inset-inline: anchor(start) auto;
149
+ transform: none;
150
+ transition: none;
151
+ position-try-fallbacks: flip-block;
152
+ }
153
+
143
154
  // &:hover {
144
- // --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
155
+ // --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
145
156
  // }
146
157
 
147
158
  .micl-dialog__headline {
@@ -158,9 +169,9 @@ dialog.micl-dialog {
158
169
  align-items: center;
159
170
  }
160
171
  .micl-dialog__icon {
161
- inline-size: var(--md-sys-layout-icon-size, 24px);
162
- block-size: var(--md-sys-layout-icon-size, 24px);
163
- font-size: var(--md-sys-layout-icon-size, 24px);
172
+ inline-size: var(--md-sys-icon-size, 24px);
173
+ block-size: var(--md-sys-icon-size, 24px);
174
+ font-size: var(--md-sys-icon-size, 24px);
164
175
  color: var(--md-sys-color-secondary);
165
176
  }
166
177
  h1, h2, h3, h4, h5, h6, .micl-heading {
@@ -170,9 +181,6 @@ dialog.micl-dialog {
170
181
  margin: 0;
171
182
  color: var(--md-sys-color-on-surface);
172
183
  }
173
- button {
174
- display: none;
175
- }
176
184
  .micl-dialog__subhead {
177
185
  @include typography.title-medium;
178
186
 
@@ -222,7 +230,7 @@ dialog.micl-dialog.micl-dialog--fullscreen {
222
230
  timeline-scope: --headlineTimeline;
223
231
 
224
232
  // &:hover {
225
- // --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
233
+ // --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
226
234
  // }
227
235
  .micl-dialog__headline {
228
236
  block-size: 56px;
@@ -249,13 +257,6 @@ dialog.micl-dialog.micl-dialog--fullscreen {
249
257
  .micl-dialog__icon {
250
258
  display:none;
251
259
  }
252
- button {
253
- display: block;
254
-
255
- &.micl-button {
256
- margin-inline-end: 16px;
257
- }
258
- }
259
260
  }
260
261
  .micl-dialog__content {
261
262
  scroll-timeline: --headlineTimeline block;
@@ -266,6 +267,11 @@ dialog.micl-dialog.micl-dialog--fullscreen {
266
267
  opacity: 0;
267
268
  }
268
269
  }
270
+ @media (min-width: 561px) {
271
+ .micl-dialog__fullscreen {
272
+ display: none;
273
+ }
274
+ }
269
275
  }
270
276
 
271
277
  @media (max-width: 560px) {
@@ -19,6 +19,8 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
23
+
22
24
  :root {
23
25
  --md-sys-divider-thickness: 1px;
24
26
  --md-sys-divider-inset-margin: 16px;
@@ -19,7 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
- @use '../../foundations/layout';
22
+ @use '../../foundations';
23
23
  @use '../../styles/elevation';
24
24
  @use '../../styles/motion';
25
25
  @use '../../styles/shapes';
@@ -53,6 +53,7 @@ button.micl-iconbutton-outlined-xl {
53
53
  --md-sys-iconbutton-motion-duration-reverse: #{motion.$md-sys-motion-expressive-fast-spatial-duration};
54
54
  --micl-ripple: 1;
55
55
 
56
+ align-items: center;
56
57
  padding: 0;
57
58
  border: none;
58
59
  border-radius: var(--md-sys-shape-corner-full);
@@ -74,13 +75,13 @@ button.micl-iconbutton-outlined-xl {
74
75
 
75
76
  &:disabled {
76
77
  background-color: rgb(from var(--md-sys-color-on-surface) r g b / 10%);
77
- color: rgb(from var(--md-sys-color-on-surface) r g b / 38%);
78
+ color: rgb(from var(--md-sys-color-on-surface) r g b / var(--md-sys-state-disabled-state-layer-opacity, 38%));
78
79
  box-shadow: var(--md-sys-elevation-level0);
79
80
  cursor: default;
80
81
  }
81
82
  &:not(:disabled) {
82
83
  &:focus-visible {
83
- outline: var(--md-sys-state-focus-indicator-thickness) solid var(--md-sys-color-secondary);
84
+ outline: var(--md-sys-state-focus-indicator-thickness, 3px) solid var(--md-sys-color-secondary);
84
85
  outline-offset: 3px;
85
86
  }
86
87
  &:active {
@@ -154,7 +155,7 @@ button.micl-iconbutton-outlined-s {
154
155
  inline-size: var(--micl-width);
155
156
  min-inline-size: var(--micl-width);
156
157
  block-size: var(--micl-height);
157
- font-size: var(--md-sys-layout-icon-size, 24px);
158
+ font-size: var(--md-sys-icon-size, 24px);
158
159
 
159
160
  &::before {
160
161
  content: "";
@@ -201,7 +202,7 @@ button.micl-iconbutton-outlined-m {
201
202
  inline-size: var(--micl-width);
202
203
  min-inline-size: var(--micl-width);
203
204
  block-size: var(--micl-height);
204
- font-size: var(--md-sys-layout-icon-size, 24px);
205
+ font-size: var(--md-sys-icon-size, 24px);
205
206
 
206
207
  &.micl-button--toggle.micl-button--selected {
207
208
  border-radius: var(--md-sys-shape-corner-large);
@@ -322,13 +323,13 @@ button.micl-iconbutton-standard-xl {
322
323
  color: var(--md-sys-color-primary);
323
324
  }
324
325
  &:hover {
325
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
326
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
326
327
  }
327
328
  &:focus-visible {
328
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
329
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
329
330
  }
330
331
  &:active {
331
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
332
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
332
333
  }
333
334
  }
334
335
  }
@@ -352,13 +353,13 @@ button.micl-iconbutton-filled-xl {
352
353
  color: var(--md-sys-color-on-surface-variant);
353
354
  }
354
355
  &:hover {
355
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
356
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
356
357
  }
357
358
  &:focus-visible {
358
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
359
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
359
360
  }
360
361
  &:active {
361
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
362
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
362
363
  }
363
364
  }
364
365
  }
@@ -381,13 +382,13 @@ button.micl-iconbutton-tonal-xl {
381
382
  color: var(--md-sys-color-on-secondary);
382
383
  }
383
384
  &:hover {
384
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
385
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
385
386
  }
386
387
  &:focus-visible {
387
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
388
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
388
389
  }
389
390
  &:active {
390
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
391
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
391
392
  }
392
393
  }
393
394
  }
@@ -427,13 +428,13 @@ button.micl-iconbutton-outlined-xl {
427
428
  color: var(--md-sys-color-inverse-on-surface);
428
429
  }
429
430
  &:hover {
430
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
431
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
431
432
  }
432
433
  &:focus-visible {
433
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
434
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
434
435
  }
435
436
  &:active {
436
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
437
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
437
438
  }
438
439
  }
439
440
  }
@@ -19,7 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
- @use '../../foundations/layout';
22
+ @use '../../foundations';
23
23
  @use '../../styles/motion';
24
24
  @use '../../styles/shapes';
25
25
  @use '../../styles/statelayer';
@@ -100,24 +100,24 @@ select {
100
100
  cursor: pointer;
101
101
 
102
102
  &:hover {
103
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
103
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
104
104
 
105
105
  .micl-list-item__icon {
106
106
  font-variation-settings: 'FILL' 1;
107
107
  }
108
108
  }
109
109
  &:focus-visible {
110
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
110
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
111
111
 
112
- outline: var(--md-sys-state-focus-indicator-thickness) solid var(--md-sys-color-secondary);
113
- outline-offset: var(--md-sys-state-focus-indicator-inner-offset);
112
+ outline: var(--md-sys-state-focus-indicator-thickness, 3px) solid var(--md-sys-color-secondary);
113
+ outline-offset: var(--md-sys-state-focus-indicator-inner-offset, -3px);
114
114
 
115
115
  .micl-list-item__icon {
116
116
  font-variation-settings: 'FILL' 1;
117
117
  }
118
118
  }
119
119
  &:active {
120
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
120
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
121
121
 
122
122
  background-size: 0%, 100%;
123
123
  transition: background-size 0ms;
@@ -184,11 +184,11 @@ select {
184
184
  .micl-list-item__text,
185
185
  .micl-list-item__text::after,
186
186
  .micl-list-item__trailing-text {
187
- color: rgb(from var(--md-sys-color-on-surface) r g b / 38%);
187
+ color: rgb(from var(--md-sys-color-on-surface) r g b / var(--md-sys-state-disabled-state-layer-opacity, 38%));
188
188
  }
189
189
  .micl-list-item__image,
190
190
  .micl-list-item__thumbnail {
191
- opacity: 38%;
191
+ opacity: var(--md-sys-state-disabled-state-layer-opacity, 38%);
192
192
  }
193
193
  a, button, label {
194
194
  pointer-events: none;
@@ -323,8 +323,8 @@ select {
323
323
  }
324
324
 
325
325
  .micl-list-item__icon {
326
- min-inline-size: var(--md-sys-layout-icon-size, 24px);
327
- font-size: var(--md-sys-layout-icon-size, 24px);
326
+ min-inline-size: var(--md-sys-icon-size, 24px);
327
+ font-size: var(--md-sys-icon-size, 24px);
328
328
  font-variation-settings: 'FILL' 0;
329
329
  color: var(--md-sys-color-on-surface-variant);
330
330
  transition: font-variation-settings var(--md-sys-list-motion-duration) linear;
@@ -19,6 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
22
23
  @use '../../styles/elevation';
23
24
  @use '../../styles/motion';
24
25
  @use '../../styles/shapes';
@@ -69,7 +70,7 @@
69
70
  transform: scaleY(0);
70
71
  }
71
72
  &::backdrop {
72
- background-color: rgba(0, 0, 0, 0.2);
73
+ background-color: rgba(0, 0, 0, var(--md-sys-state-backdrop-opacity, 32%));
73
74
 
74
75
  @starting-style {
75
76
  background-color: rgba(0, 0, 0, 0);
@@ -19,6 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
22
23
  @use '../../foundations/layout';
23
24
  @use '../../styles/elevation';
24
25
  @use '../../styles/motion';
@@ -119,8 +120,8 @@
119
120
  &> .micl-navigationrail__icon {
120
121
  --micl-ripple: 1;
121
122
 
122
- font-size: var(--md-sys-layout-icon-size, 24px);
123
- inline-size: var(--md-sys-layout-icon-size, 24px);
123
+ font-size: var(--md-sys-icon-size, 24px);
124
+ inline-size: var(--md-sys-icon-size, 24px);
124
125
  margin: 0;
125
126
  padding-block: 4px;
126
127
  padding-inline: 16px;
@@ -188,15 +189,15 @@ nav.micl-navigationrail:has(> .micl-navigationrail__headline .micl-button--toggl
188
189
  background-color: transparent;
189
190
  }
190
191
  &:hover {
191
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
192
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
192
193
  }
193
194
  &:focus-visible {
194
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
195
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
195
196
  }
196
197
  &:active {
197
198
  background-size: 0%, 100%;
198
199
  transition: background-size 0ms;
199
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
200
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
200
201
  }
201
202
  &> .micl-navigationrail__text {
202
203
  @include typography.label-large;
@@ -273,17 +274,17 @@ nav.micl-navigationrail:has(> .micl-navigationrail__headline .micl-button--toggl
273
274
  &> .micl-navigationrail__content > label.micl-navigationrail__item {
274
275
  &:hover {
275
276
  &> .micl-navigationrail__icon {
276
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
277
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
277
278
  }
278
279
  }
279
280
  &:focus-visible {
280
281
  &> .micl-navigationrail__icon {
281
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
282
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
282
283
  }
283
284
  }
284
285
  &:active {
285
286
  &> .micl-navigationrail__icon {
286
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
287
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
287
288
 
288
289
  background-size: 0%, 100%;
289
290
  transition:
@@ -346,7 +347,7 @@ nav.micl-navigationrail[popover] {
346
347
  display var(--md-sys-navigationrail-motion-duration) linear allow-discrete;
347
348
 
348
349
  &::backdrop {
349
- background-color: rgba(0, 0, 0, 0.2);
350
+ background-color: rgba(0, 0, 0, var(--md-sys-state-backdrop-opacity, 32%));
350
351
 
351
352
  @starting-style {
352
353
  background-color: rgba(0, 0, 0, 0);
@@ -43,7 +43,6 @@ You can customize the appearance of the Radio Button component by overriding its
43
43
  | ------------- | ------------- | ----------- |
44
44
  | --md-sys-radio-border-width | 2px | Controls the thickness of the radio button's border |
45
45
  | --md-sys-radio-container-size | 20px | Defines the diameter of the radio button itself |
46
- | --md-sys-radio-state-layer-size | 40px | Sets the size of the interactive area that indicates the component's current state (e.g., hover, focus, press) |
47
46
 
48
47
  **Example: Changing the size of the radio button**
49
48
 
@@ -19,6 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
22
23
  @use '../../styles/motion';
23
24
  @use '../../styles/shapes';
24
25
  @use '../../styles/statelayer';
@@ -26,7 +27,6 @@
26
27
  :root {
27
28
  --md-sys-radio-border-width: 2px;
28
29
  --md-sys-radio-container-size: 20px;
29
- --md-sys-radio-state-layer-size: 40px;
30
30
  }
31
31
 
32
32
  input[type=radio].micl-radio {
@@ -37,12 +37,12 @@ input[type=radio].micl-radio {
37
37
  appearance: none;
38
38
  box-sizing: border-box;
39
39
  position: relative;
40
- inline-size: var(--md-sys-target-size);
41
- min-inline-size: var(--md-sys-target-size);
42
- block-size: var(--md-sys-target-size);
43
- min-block-size: var(--md-sys-target-size);
40
+ inline-size: var(--md-sys-target-size, 48px);
41
+ min-inline-size: var(--md-sys-target-size, 48px);
42
+ block-size: var(--md-sys-target-size, 48px);
43
+ min-block-size: var(--md-sys-target-size, 48px);
44
44
  margin: 0;
45
- border: calc((var(--md-sys-target-size) - var(--md-sys-radio-state-layer-size)) / 2) solid transparent;
45
+ border: calc((var(--md-sys-target-size, 48px) - var(--md-sys-state-layer-size, 40px)) / 2) solid transparent;
46
46
  background-clip: content-box;
47
47
  background-color: transparent;
48
48
  -webkit-tap-highlight-color: transparent;
@@ -102,22 +102,22 @@ input[type=radio].micl-radio {
102
102
  }
103
103
  }
104
104
  &:hover {
105
- --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity);
105
+ --statelayer-opacity: var(--md-sys-state-hover-state-layer-opacity, 8%);
106
106
  }
107
107
  &:focus-visible {
108
- --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity);
108
+ --statelayer-opacity: var(--md-sys-state-focus-state-layer-opacity, 10%);
109
109
 
110
- outline: var(--md-sys-state-focus-indicator-thickness) solid var(--md-sys-color-secondary);
110
+ outline: var(--md-sys-state-focus-indicator-thickness, 3px) solid var(--md-sys-color-secondary);
111
111
  }
112
112
  &:active {
113
- --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity);
113
+ --statelayer-opacity: var(--md-sys-state-pressed-state-layer-opacity, 10%);
114
114
 
115
115
  background-size: 0%, 100%;
116
116
  transition: background-size 0ms;
117
117
  }
118
118
  }
119
119
  &:disabled {
120
- opacity: 38%;
120
+ opacity: var(--md-sys-state-disabled-state-layer-opacity, 38%);
121
121
 
122
122
  &::after {
123
123
  border-color: var(--md-sys-color-on-surface);
@@ -19,6 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
22
23
  @use '../../styles/elevation';
23
24
  @use '../../styles/motion';
24
25
  @use '../../styles/shapes';
@@ -114,7 +115,7 @@
114
115
  }
115
116
  }
116
117
  &:focus-visible {
117
- outline-offset: calc(-1 * var(--md-sys-state-focus-indicator-thickness));
118
+ outline-offset: calc(-1 * var(--md-sys-state-focus-indicator-thickness, 3px));
118
119
  z-index: 1;
119
120
  }
120
121
 
@@ -19,6 +19,8 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
+ @use '../../foundations';
23
+ @use '../../foundations/layout';
22
24
  @use '../../styles/elevation';
23
25
  @use '../../styles/motion';
24
26
  @use '../../styles/shapes';
@@ -140,7 +142,7 @@ dialog.micl-sidesheet {
140
142
  transition: background-color var(--md-sys-sidesheet-motion-duration-reverse) linear;
141
143
  }
142
144
  &[open]::backdrop {
143
- background-color: rgba(0, 0, 0, 0.2);
145
+ background-color: rgba(0, 0, 0, var(--md-sys-state-backdrop-opacity, 32%));
144
146
  transition: background-color var(--md-sys-sidesheet-motion-duration) linear;
145
147
 
146
148
  @starting-style {
@@ -19,7 +19,7 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
- @use '../../foundations/layout';
22
+ @use '../../foundations';
23
23
  @use '../../styles/motion';
24
24
  @use '../../styles/shapes';
25
25
  @use '../../styles/statelayer';
@@ -41,7 +41,7 @@
41
41
  @mixin slider-track-disabled() {
42
42
  background-image: linear-gradient(
43
43
  var(--md-sys-slider-track-direction),
44
- color-mix(in srgb, var(--md-sys-color-on-surface) 38%, transparent) calc(100% * (var(--md-sys-slider-value) - var(--md-sys-slider-min)) / (var(--md-sys-slider-max) - var(--md-sys-slider-min))),
44
+ color-mix(in srgb, var(--md-sys-color-on-surface) var(--md-sys-state-disabled-state-layer-opacity, 38%), transparent) calc(100% * (var(--md-sys-slider-value) - var(--md-sys-slider-min)) / (var(--md-sys-slider-max) - var(--md-sys-slider-min))),
45
45
  transparent calc(100% * (var(--md-sys-slider-value) - var(--md-sys-slider-min)) / (var(--md-sys-slider-max) - var(--md-sys-slider-min))),
46
46
  color-mix(in srgb, var(--md-sys-color-on-surface) 12%, transparent) calc(100% * (var(--md-sys-slider-value) - var(--md-sys-slider-min)) / (var(--md-sys-slider-max) - var(--md-sys-slider-min))),
47
47
  color-mix(in srgb, var(--md-sys-color-on-surface) 12%, transparent) 100%,
@@ -79,8 +79,8 @@
79
79
  var(--md-sys-slider-track-direction),
80
80
  transparent 0px,
81
81
  transparent var(--md-sys-slider-thumb-space),
82
- color-mix(in srgb, var(--md-sys-color-on-surface) 38%, var(--md-sys-color-surface)) var(--md-sys-slider-thumb-space),
83
- color-mix(in srgb, var(--md-sys-color-on-surface) 38%, var(--md-sys-color-surface)) 10px,
82
+ color-mix(in srgb, var(--md-sys-color-on-surface) var(--md-sys-state-disabled-state-layer-opacity, 38%), var(--md-sys-color-surface)) var(--md-sys-slider-thumb-space),
83
+ color-mix(in srgb, var(--md-sys-color-on-surface) var(--md-sys-state-disabled-state-layer-opacity, 38%), var(--md-sys-color-surface)) 10px,
84
84
  transparent 10px,
85
85
  transparent 16px
86
86
  );
@@ -223,10 +223,10 @@ input[type=range].micl-slider-xl {
223
223
  }
224
224
  &:focus-visible {
225
225
  &::-webkit-slider-thumb {
226
- outline: var(--md-sys-state-focus-indicator-thickness) solid var(--md-sys-color-secondary);
226
+ outline: var(--md-sys-state-focus-indicator-thickness, 3px) solid var(--md-sys-color-secondary);
227
227
  }
228
228
  &::-moz-range-thumb {
229
- outline: var(--md-sys-state-focus-indicator-thickness) solid var(--md-sys-color-secondary);
229
+ outline: var(--md-sys-state-focus-indicator-thickness, 3px) solid var(--md-sys-color-secondary);
230
230
  }
231
231
  }
232
232
  &:active {
@@ -273,7 +273,7 @@ input[type=range].micl-slider-xl {
273
273
  grid-area: slider-icon;
274
274
  inset: 0;
275
275
  margin: 6px;
276
- font-size: var(--md-sys-layout-icon-size, 24px);
276
+ font-size: var(--md-sys-icon-size, 24px);
277
277
  color: var(--md-sys-color-on-primary);
278
278
  z-index: 1;
279
279
  }
@@ -19,8 +19,9 @@
19
19
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
20
  // SOFTWARE.
21
21
 
22
- @use '../../foundations/layout';
22
+ @use '../../foundations';
23
23
  @use '../../styles/motion';
24
+ @use '../../styles/statelayer';
24
25
 
25
26
  :root {
26
27
  --md-sys-stepper-counter-style: decimal;
@@ -38,7 +39,7 @@ body {
38
39
  box-sizing: border-box;
39
40
  display: flex;
40
41
  flex-direction: column;
41
- row-gap: var(--md-sys-layout-padding-xl, 24px);
42
+ row-gap: var(--md-sys-padding-xl, 24px);
42
43
  margin: 0;
43
44
  background-color: inherit;
44
45
 
@@ -119,7 +120,7 @@ body {
119
120
  &>:last-child {
120
121
  display: flex;
121
122
  flex: 1 1 0;
122
- column-gap: var(--md-sys-layout-padding-xs, 8px)
123
+ column-gap: var(--md-sys-padding-xs, 8px)
123
124
  }
124
125
  &>:last-child {
125
126
  justify-content: flex-end;
@@ -139,7 +140,7 @@ body {
139
140
  text-align: center;
140
141
  background-color: var(--md-sys-color-on-surface);
141
142
  color: var(--md-sys-color-surface);
142
- opacity: 38%;
143
+ opacity: var(--md-sys-state-disabled-state-layer-opacity, 38%);
143
144
  counter-increment: dotnumber 1;
144
145
  }
145
146
  .micl-stepper__progress--done.micl-stepper__progress-dot,
@@ -59,7 +59,6 @@ You can customize the appearance of the Switch component by overriding its globa
59
59
  | --md-sys-switch-handle-selected-size | 24px | The diameter of the handle when the switch is "on" |
60
60
  | --md-sys-switch-handle-pressed-size | 28px | The diameter of the handle when the switch is pressed |
61
61
  | --md-sys-switch-outline-width | 2px | The width of the border |
62
- | --md-sys-switch-state-layer-size | 40px | Sets the size of the area that indicates the component's current state (e.g., hover, focus, press) |
63
62
  | --md-sys-switch-target-height | 32px | The height of the track |
64
63
  | --md-sys-switch-target-width | 52px | The width of the track |
65
64