m3-svelte 5.15.5 → 6.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 (73) hide show
  1. package/package/buttons/Button.svelte +107 -131
  2. package/package/buttons/ConnectedButtons.svelte +1 -1
  3. package/package/buttons/FAB.svelte +21 -20
  4. package/package/buttons/SplitButton.svelte +20 -19
  5. package/package/containers/BottomSheet.svelte +7 -7
  6. package/package/containers/Card.svelte +12 -12
  7. package/package/containers/Dialog.svelte +21 -44
  8. package/package/containers/Dialog.svelte.d.ts +0 -8
  9. package/package/containers/ListItem.svelte +19 -11
  10. package/package/containers/Menu.svelte +3 -3
  11. package/package/containers/MenuItem.svelte +7 -6
  12. package/package/containers/Snackbar.svelte +37 -45
  13. package/package/containers/Snackbar.svelte.d.ts +4 -17
  14. package/package/containers/SnackbarItem.svelte +6 -6
  15. package/package/containers/StandardSideSheet.svelte +5 -2
  16. package/package/forms/Checkbox.svelte +12 -12
  17. package/package/forms/Chip.svelte +22 -18
  18. package/package/forms/CircularProgress.svelte +3 -3
  19. package/package/forms/CircularProgressEstimate.svelte +2 -2
  20. package/package/forms/DateField.svelte +18 -18
  21. package/package/forms/DateFieldOutlined.svelte +27 -27
  22. package/package/forms/DatePickerDocked.svelte +2 -2
  23. package/package/forms/LinearProgress.svelte +5 -5
  24. package/package/forms/LinearProgressEstimate.svelte +4 -4
  25. package/package/forms/LoadingIndicator.svelte +4 -4
  26. package/package/forms/RadioAnim1.svelte +9 -9
  27. package/package/forms/RadioAnim2.svelte +9 -9
  28. package/package/forms/RadioAnim3.svelte +9 -9
  29. package/package/forms/Select.svelte +31 -35
  30. package/package/forms/SelectOutlined.svelte +32 -36
  31. package/package/forms/Slider.svelte +29 -30
  32. package/package/forms/Switch.svelte +27 -28
  33. package/package/forms/TextField.svelte +23 -29
  34. package/package/forms/TextFieldMultiline.svelte +23 -29
  35. package/package/forms/TextFieldOutlined.svelte +23 -29
  36. package/package/forms/TextFieldOutlinedMultiline.svelte +23 -29
  37. package/package/forms/WavyLinearProgress.svelte +2 -7
  38. package/package/forms/WavyLinearProgressEstimate.svelte +2 -7
  39. package/package/forms/_picker/CalendarPicker.svelte +3 -2
  40. package/package/forms/_picker/FocusPicker.svelte +3 -7
  41. package/package/forms/_picker/Header.svelte +6 -5
  42. package/package/forms/_picker/Item.svelte +9 -8
  43. package/package/index.d.ts +4 -8
  44. package/package/index.js +4 -7
  45. package/package/{utils → misc}/Divider.svelte +1 -1
  46. package/package/misc/Icon.svelte +0 -4
  47. package/package/misc/Layer.svelte +1 -1
  48. package/package/{utils → misc}/badge.js +8 -5
  49. package/package/misc/recommended-styles.css +9 -9
  50. package/package/misc/styles.css +160 -227
  51. package/package/misc/tailwind-styles.css +106 -104
  52. package/package/misc/utils.js +2 -4
  53. package/package/nav/NavCMLX.svelte +35 -29
  54. package/package/nav/NavCMLX.svelte.d.ts +1 -1
  55. package/package/nav/NavCMLXItem.svelte +119 -208
  56. package/package/nav/NavCMLXItem.svelte.d.ts +4 -7
  57. package/package/nav/Tabs.svelte +13 -10
  58. package/package/nav/TabsLink.svelte +13 -10
  59. package/package/nav/VariableTabs.svelte +12 -9
  60. package/package/nav/VariableTabsLink.svelte +12 -9
  61. package/package.json +16 -13
  62. package/package/containers/NewSnackbar.svelte +0 -113
  63. package/package/containers/NewSnackbar.svelte.d.ts +0 -7
  64. package/package/forms/CircularProgressIndeterminate.svelte +0 -62
  65. package/package/forms/CircularProgressIndeterminate.svelte.d.ts +0 -5
  66. package/package/forms/LinearProgressIndeterminate.svelte +0 -57
  67. package/package/forms/LinearProgressIndeterminate.svelte.d.ts +0 -5
  68. package/package/forms/SliderTicks.svelte +0 -12
  69. package/package/forms/SliderTicks.svelte.d.ts +0 -18
  70. /package/package/{utils → misc}/ChipChooser.svelte +0 -0
  71. /package/package/{utils → misc}/ChipChooser.svelte.d.ts +0 -0
  72. /package/package/{utils → misc}/Divider.svelte.d.ts +0 -0
  73. /package/package/{utils → misc}/badge.d.ts +0 -0
@@ -70,8 +70,8 @@
70
70
  <style>
71
71
  @layer tokens {
72
72
  :root {
73
- --m3-switch-track-shape: var(--m3-util-rounding-full);
74
- --m3-switch-handle-shape: var(--m3-util-rounding-full);
73
+ --m3-switch-track-shape: var(--m3-shape-full);
74
+ --m3-switch-handle-shape: var(--m3-shape-full);
75
75
  }
76
76
  }
77
77
  .m3-container {
@@ -87,10 +87,10 @@
87
87
  margin: 0;
88
88
  border-radius: var(--m3-switch-track-shape);
89
89
 
90
- background-color: rgb(var(--m3-scheme-surface-container-highest));
91
- border: solid 0.125rem rgb(var(--m3-scheme-outline));
90
+ background-color: var(--m3c-surface-container-highest);
91
+ border: solid 0.125rem var(--m3c-outline);
92
92
  cursor: pointer;
93
- transition: var(--m3-util-easing);
93
+ transition: var(--m3-easing);
94
94
  }
95
95
  .handle {
96
96
  position: absolute;
@@ -98,11 +98,10 @@
98
98
  height: 1rem;
99
99
  border-radius: var(--m3-switch-handle-shape);
100
100
 
101
- background-color: rgb(var(--m3-scheme-outline));
102
- /* Fallback for those without on on primary */
103
- color: rgb(var(--m3-scheme-on-on-primary, var(--m3-scheme-on-primary-container)));
101
+ background-color: var(--m3c-outline);
102
+ color: var(--m3c-on-on-primary);
104
103
  cursor: pointer;
105
- transition: var(--m3-util-easing-fast-spatial);
104
+ transition: var(--m3-easing-fast-spatial);
106
105
 
107
106
  left: 0.5rem;
108
107
  top: 50%;
@@ -116,13 +115,13 @@
116
115
  height: 1rem;
117
116
  opacity: 0;
118
117
  transition:
119
- opacity var(--m3-util-easing-fast-spatial),
120
- scale var(--m3-util-easing-fast-spatial);
118
+ opacity var(--m3-easing-fast-spatial),
119
+ scale var(--m3-easing-fast-spatial);
121
120
  }
122
121
  input:not(:checked) + :global(.handle:has(:nth-child(2))) {
123
122
  scale: 1.5;
124
123
  > :global(svg) {
125
- color: rgb(var(--m3-scheme-surface-container-highest));
124
+ color: var(--m3c-surface-container-highest);
126
125
  scale: 0.667;
127
126
  opacity: 1;
128
127
  }
@@ -137,10 +136,10 @@
137
136
  position: absolute;
138
137
  width: 3rem;
139
138
  height: 3rem;
140
- border-radius: var(--m3-util-rounding-full);
139
+ border-radius: var(--m3-shape-full);
141
140
 
142
141
  cursor: pointer;
143
- transition: var(--m3-util-easing-fast);
142
+ transition: var(--m3-easing-fast);
144
143
 
145
144
  left: 1rem;
146
145
  top: 50%;
@@ -152,26 +151,26 @@
152
151
 
153
152
  .m3-container:hover > input:not(:checked):not(:disabled) + .handle,
154
153
  .m3-container:active > input:not(:checked):not(:disabled) + .handle {
155
- background-color: rgb(var(--m3-scheme-on-surface-variant));
154
+ background-color: var(--m3c-on-surface-variant);
156
155
  }
157
156
  .m3-container:hover > input:enabled:checked + .handle,
158
157
  .m3-container > input:enabled:checked:is(:global(:active, :focus-visible)) + .handle {
159
- background-color: rgb(var(--m3-scheme-primary-container));
160
- color: rgb(var(--m3-scheme-on-primary-container));
158
+ background-color: var(--m3c-primary-container);
159
+ color: var(--m3c-on-primary-container);
161
160
  }
162
161
  .m3-container:hover > input ~ .hover {
163
- background-color: rgb(var(--m3-scheme-on-surface) / 0.08);
162
+ background-color: --translucent(var(--m3c-on-surface), 0.08);
164
163
  }
165
164
  .m3-container:hover > input:checked ~ .hover {
166
- background-color: rgb(var(--m3-scheme-primary) / 0.08);
165
+ background-color: --translucent(var(--m3c-primary), 0.08);
167
166
  }
168
167
 
169
168
  input:checked {
170
- background-color: rgb(var(--m3-scheme-primary));
171
- border-color: rgb(var(--m3-scheme-primary));
169
+ background-color: var(--m3c-primary);
170
+ border-color: var(--m3c-primary);
172
171
  }
173
172
  input:checked + .handle {
174
- background-color: rgb(var(--m3-scheme-on-primary));
173
+ background-color: var(--m3c-on-primary);
175
174
  scale: 1.5;
176
175
  left: 1.75rem;
177
176
  }
@@ -190,23 +189,23 @@
190
189
  }
191
190
 
192
191
  input:disabled {
193
- background-color: rgb(var(--m3-scheme-surface-container-highest) / 0.12);
194
- border-color: rgb(var(--m3-scheme-outline) / 0.12);
192
+ background-color: --translucent(var(--m3c-surface-container-highest), 0.12);
193
+ border-color: --translucent(var(--m3c-outline), 0.12);
195
194
  cursor: auto;
196
195
  }
197
196
  input:disabled:checked {
198
- background-color: rgb(var(--m3-scheme-on-surface) / 0.12);
197
+ background-color: --translucent(var(--m3c-on-surface), 0.12);
199
198
  border-color: transparent;
200
199
  }
201
200
  input:disabled + .handle {
202
- background-color: rgb(var(--m3-scheme-on-surface) / 0.38);
201
+ background-color: --translucent(var(--m3c-on-surface), 0.38);
203
202
  cursor: auto;
204
203
  }
205
204
  input:disabled:checked + .handle {
206
- background-color: rgb(var(--m3-scheme-surface));
205
+ background-color: var(--m3c-surface);
207
206
  }
208
207
  input:disabled:checked + .handle > :global(svg) {
209
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
208
+ color: --translucent(var(--m3c-on-surface), 0.38);
210
209
  }
211
210
  input:disabled ~ .hover {
212
211
  display: none;
@@ -35,7 +35,7 @@
35
35
  class:error
36
36
  >
37
37
  <input
38
- class="focus-none m3-font-body-large"
38
+ class="focus-none"
39
39
  placeholder=" "
40
40
  bind:value
41
41
  onkeydown={(e) => e.key == "Enter" && enter?.()}
@@ -43,10 +43,8 @@
43
43
  {disabled}
44
44
  {required}
45
45
  {...extra}
46
- defaultValue={extra.defaultValue}
47
46
  />
48
- <!-- TODO/deprecated: once https://github.com/sveltejs/svelte/pull/16481 is finished, remove the defaultvalue thing -->
49
- <label class="m3-font-body-large" for={id}>{label}</label>
47
+ <label for={id}>{label}</label>
50
48
  <div class="layer"></div>
51
49
  {#if leadingIcon}
52
50
  <Icon icon={leadingIcon} class="leading" />
@@ -63,11 +61,7 @@
63
61
  <style>
64
62
  @layer tokens {
65
63
  :root {
66
- /* "textfield" is deprecated */
67
- --m3-field-filled-shape: var(
68
- --m3-textfield-filled-shape,
69
- var(--m3-util-rounding-extra-small)
70
- );
64
+ --m3-field-filled-shape: var(--m3-shape-extra-small);
71
65
  }
72
66
  }
73
67
 
@@ -75,10 +69,11 @@
75
69
  display: inline-flex;
76
70
  position: relative;
77
71
  align-items: center;
78
- height: calc(3.5rem + var(--m3-util-density-term));
72
+ height: --m3-density(3.5rem);
79
73
  min-width: 15rem;
80
74
  }
81
75
  input {
76
+ @apply --m3-body-large;
82
77
  position: absolute;
83
78
  inset: 0;
84
79
  width: 100%;
@@ -87,30 +82,29 @@
87
82
  outline: none;
88
83
  padding: 1.5rem 1rem 0.5rem 1rem;
89
84
  border-radius: var(--m3-field-filled-shape) var(--m3-field-filled-shape) 0 0;
90
- background-color: rgb(var(--m3-scheme-surface-container-highest));
91
- color: rgb(var(--m3-scheme-on-surface));
85
+ background-color: var(--m3c-surface-container-highest);
86
+ color: var(--m3c-on-surface);
92
87
  }
93
88
  label {
89
+ @apply --m3-body-large;
94
90
  position: absolute;
95
91
  inset-inline-start: 1rem;
96
92
  top: 50%;
97
93
  translate: 0 -50%;
98
- color: rgb(var(--error, var(--m3-scheme-on-surface-variant)));
94
+ color: var(--error, var(--m3c-on-surface-variant));
99
95
  &:is(input:hover ~ label) {
100
- color: rgb(var(--error, var(--m3-scheme-on-surface)));
96
+ color: var(--error, var(--m3c-on-surface));
101
97
  }
102
98
  &:is(input:focus ~ label) {
103
- color: rgb(var(--error, var(--m3-scheme-primary)));
99
+ color: var(--error, var(--m3c-primary));
104
100
  }
105
101
  &:is(input:disabled ~ label) {
106
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
102
+ color: --translucent(var(--m3c-on-surface), 0.38);
107
103
  }
108
104
  &:is(input:focus ~ label, input:not(:placeholder-shown) ~ label) {
105
+ @apply --m3-body-small;
109
106
  top: 0.5rem;
110
107
  translate: 0 0;
111
- font-size: var(--m3-font-body-small-size);
112
- line-height: var(--m3-font-body-small-height);
113
- letter-spacing: var(--m3-font-body-small-tracking);
114
108
  }
115
109
  pointer-events: none;
116
110
  transition:
@@ -128,7 +122,7 @@
128
122
  pointer-events: none;
129
123
  transition: all 100ms;
130
124
  &:is(input:enabled:hover ~ .layer) {
131
- background-color: rgb(var(--m3-scheme-on-surface) / 0.08);
125
+ background-color: --translucent(var(--m3c-on-surface), 0.08);
132
126
  }
133
127
  }
134
128
  .layer::after {
@@ -139,13 +133,13 @@
139
133
  bottom: 0;
140
134
 
141
135
  height: 1px;
142
- background-color: rgb(var(--error, var(--m3-scheme-on-surface-variant)));
136
+ background-color: var(--error, var(--m3c-on-surface-variant));
143
137
  transition: all 100ms;
144
138
  }
145
139
  .m3-container :global(svg) {
146
140
  width: 1.5rem;
147
141
  height: 1.5rem;
148
- color: rgb(var(--m3-scheme-on-surface-variant));
142
+ color: var(--m3c-on-surface-variant);
149
143
  pointer-events: none;
150
144
  }
151
145
  .m3-container > :global(.leading) {
@@ -171,7 +165,7 @@
171
165
 
172
166
  input:focus ~ .layer::after {
173
167
  height: 0.125rem;
174
- background-color: rgb(var(--error, var(--m3-scheme-primary)));
168
+ background-color: var(--error, var(--m3c-primary));
175
169
  }
176
170
 
177
171
  .leading-icon > input {
@@ -184,21 +178,21 @@
184
178
  padding-inline-end: 3.25rem;
185
179
  }
186
180
  .error {
187
- --error: var(--m3-scheme-error);
181
+ --error: var(--m3c-error);
188
182
  }
189
183
  .error > input:hover ~ label,
190
184
  .error > input:hover ~ .layer {
191
- --error: var(--m3-scheme-on-error-container);
185
+ --error: var(--m3c-on-error-container);
192
186
  }
193
187
  input:disabled {
194
- background-color: rgb(var(--m3-scheme-on-surface) / 0.04);
195
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
188
+ background-color: --translucent(var(--m3c-on-surface), 0.04);
189
+ color: --translucent(var(--m3c-on-surface), 0.38);
196
190
  }
197
191
  input:disabled ~ .layer::after {
198
- background-color: rgb(var(--m3-scheme-on-surface) / 0.38);
192
+ background-color: --translucent(var(--m3c-on-surface), 0.38);
199
193
  }
200
194
  input:disabled ~ :global(svg) {
201
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
195
+ color: --translucent(var(--m3c-on-surface), 0.38);
202
196
  }
203
197
 
204
198
  .m3-container {
@@ -38,17 +38,15 @@
38
38
 
39
39
  <div class="m3-container" class:leading-icon={leadingIcon} class:error use:resize>
40
40
  <textarea
41
- class="focus-none m3-font-body-large"
41
+ class="focus-none"
42
42
  placeholder=" "
43
43
  bind:value
44
44
  {id}
45
45
  {disabled}
46
46
  {required}
47
47
  {...extra}
48
- defaultValue={extra.defaultValue}
49
48
  ></textarea>
50
- <!-- TODO/deprecated: once https://github.com/sveltejs/svelte/pull/16481 is finished, remove the defaultvalue thing -->
51
- <label class="m3-font-body-large" for={id}>{label}</label>
49
+ <label for={id}>{label}</label>
52
50
  <div class="layer"></div>
53
51
  {#if leadingIcon}
54
52
  <Icon icon={leadingIcon} />
@@ -58,21 +56,18 @@
58
56
  <style>
59
57
  @layer tokens {
60
58
  :root {
61
- /* "textfield" is deprecated */
62
- --m3-field-filled-shape: var(
63
- --m3-textfield-filled-shape,
64
- var(--m3-util-rounding-extra-small)
65
- );
59
+ --m3-field-filled-shape: var(--m3-shape-extra-small);
66
60
  }
67
61
  }
68
62
  .m3-container {
69
63
  display: inline-flex;
70
64
  position: relative;
71
65
  align-items: center;
72
- min-height: calc(5rem + var(--m3-util-density-term));
66
+ min-height: --m3-density(5rem);
73
67
  min-width: 15rem;
74
68
  }
75
69
  textarea {
70
+ @apply --m3-body-large;
76
71
  position: absolute;
77
72
  inset: 0;
78
73
  width: 100%;
@@ -81,31 +76,30 @@
81
76
  outline: none;
82
77
  padding: 1.5rem 1rem 0.5rem 1rem;
83
78
  border-radius: var(--m3-field-filled-shape) var(--m3-field-filled-shape) 0 0;
84
- background-color: rgb(var(--m3-scheme-surface-container-highest));
85
- color: rgb(var(--m3-scheme-on-surface));
79
+ background-color: var(--m3c-surface-container-highest);
80
+ color: var(--m3c-on-surface);
86
81
  resize: none;
87
82
  }
88
83
  label {
84
+ @apply --m3-body-large;
89
85
  position: absolute;
90
86
  inset-inline-start: 1rem;
91
87
  top: 50%;
92
88
  translate: 0 -50%;
93
- color: rgb(var(--error, var(--m3-scheme-on-surface-variant)));
89
+ color: var(--error, var(--m3c-on-surface-variant));
94
90
  &:is(textarea:hover ~ label) {
95
- color: rgb(var(--error, var(--m3-scheme-on-surface)));
91
+ color: var(--error, var(--m3c-on-surface));
96
92
  }
97
93
  &:is(textarea:focus ~ label) {
98
- color: rgb(var(--error, var(--m3-scheme-primary)));
94
+ color: var(--error, var(--m3c-primary));
99
95
  }
100
96
  &:is(textarea:disabled ~ label) {
101
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
97
+ color: --translucent(var(--m3c-on-surface), 0.38);
102
98
  }
103
99
  &:is(textarea:focus ~ label, textarea:not(:placeholder-shown) ~ label) {
100
+ @apply --m3-body-small;
104
101
  top: 0.5rem;
105
102
  translate: 0 0;
106
- font-size: var(--m3-font-body-small-size);
107
- line-height: var(--m3-font-body-small-height);
108
- letter-spacing: var(--m3-font-body-small-tracking);
109
103
  }
110
104
  pointer-events: none;
111
105
  transition:
@@ -123,7 +117,7 @@
123
117
  pointer-events: none;
124
118
  transition: all 100ms;
125
119
  &:is(textarea:enabled:hover ~ .layer) {
126
- background-color: rgb(var(--m3-scheme-on-surface) / 0.08);
120
+ background-color: --translucent(var(--m3c-on-surface), 0.08);
127
121
  }
128
122
  }
129
123
  .layer::after {
@@ -134,7 +128,7 @@
134
128
  bottom: 0;
135
129
 
136
130
  height: 1px;
137
- background-color: rgb(var(--error, var(--m3-scheme-on-surface-variant)));
131
+ background-color: var(--error, var(--m3c-on-surface-variant));
138
132
  transition: all 100ms;
139
133
  }
140
134
  .m3-container > :global(svg) {
@@ -142,13 +136,13 @@
142
136
  width: 1.5rem;
143
137
  height: 1.5rem;
144
138
  margin-inline-start: 0.75rem;
145
- color: rgb(var(--m3-scheme-on-surface-variant));
139
+ color: var(--m3c-on-surface-variant);
146
140
  pointer-events: none;
147
141
  }
148
142
 
149
143
  textarea:focus ~ .layer::after {
150
144
  height: 0.125rem;
151
- background-color: rgb(var(--error, var(--m3-scheme-primary)));
145
+ background-color: var(--error, var(--m3c-primary));
152
146
  }
153
147
 
154
148
  .leading-icon > textarea {
@@ -158,21 +152,21 @@
158
152
  inset-inline-start: 3.25rem;
159
153
  }
160
154
  .error {
161
- --error: var(--m3-scheme-error);
155
+ --error: var(--m3c-error);
162
156
  }
163
157
  .error > textarea:hover ~ label,
164
158
  .error > textarea:hover ~ .layer {
165
- --error: var(--m3-scheme-on-error-container);
159
+ --error: var(--m3c-on-error-container);
166
160
  }
167
161
  textarea:disabled {
168
- background-color: rgb(var(--m3-scheme-on-surface) / 0.04);
169
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
162
+ background-color: --translucent(var(--m3c-on-surface), 0.04);
163
+ color: --translucent(var(--m3c-on-surface), 0.38);
170
164
  }
171
165
  textarea:disabled ~ .layer::after {
172
- background-color: rgb(var(--m3-scheme-on-surface) / 0.38);
166
+ background-color: --translucent(var(--m3c-on-surface), 0.38);
173
167
  }
174
168
  textarea:disabled ~ :global(svg) {
175
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
169
+ color: --translucent(var(--m3c-on-surface), 0.38);
176
170
  }
177
171
 
178
172
  .m3-container {
@@ -35,7 +35,7 @@
35
35
  class:error
36
36
  >
37
37
  <input
38
- class="focus-none m3-font-body-large"
38
+ class="focus-none"
39
39
  placeholder=" "
40
40
  bind:value
41
41
  onkeydown={(e) => e.key == "Enter" && enter?.()}
@@ -43,11 +43,9 @@
43
43
  {disabled}
44
44
  {required}
45
45
  {...extra}
46
- defaultValue={extra.defaultValue}
47
46
  />
48
- <!-- TODO/deprecated: once https://github.com/sveltejs/svelte/pull/16481 is finished, remove the defaultvalue thing -->
49
47
  <div class="layer"></div>
50
- <label class="m3-font-body-large" for={id}>{label}</label>
48
+ <label for={id}>{label}</label>
51
49
  {#if leadingIcon}
52
50
  <Icon icon={leadingIcon} class="leading" />
53
51
  {/if}
@@ -63,25 +61,22 @@
63
61
  <style>
64
62
  /*
65
63
  want to customize the label's background?
66
- do this: <TextFieldOutlined --m3-util-background="rgb(var(--m3-scheme-surface-container))" />
64
+ do this: <TextFieldOutlined --m3v-background="var(--m3c-surface-container)" />
67
65
  */
68
66
  @layer tokens {
69
67
  :root {
70
- /* "textfield" is deprecated */
71
- --m3-field-outlined-shape: var(
72
- --m3-textfield-outlined-shape,
73
- var(--m3-util-rounding-extra-small)
74
- );
68
+ --m3-field-outlined-shape: var(--m3-shape-extra-small);
75
69
  }
76
70
  }
77
71
  .m3-container {
78
72
  display: inline-flex;
79
73
  position: relative;
80
74
  align-items: center;
81
- height: calc(3.5rem + var(--m3-util-density-term));
75
+ height: --m3-density(3.5rem);
82
76
  min-width: 15rem;
83
77
  }
84
78
  input {
79
+ @apply --m3-body-large;
85
80
  position: absolute;
86
81
  inset: 0;
87
82
  width: 100%;
@@ -91,30 +86,29 @@
91
86
  padding: 1rem;
92
87
  border-radius: var(--m3-field-outlined-shape);
93
88
  background-color: transparent;
94
- color: rgb(var(--m3-scheme-on-surface));
89
+ color: var(--m3c-on-surface);
95
90
  }
96
91
  label {
92
+ @apply --m3-body-large;
97
93
  position: absolute;
98
94
  inset-inline-start: 0.75rem;
99
95
  top: 50%;
100
96
  translate: 0 -50%;
101
- color: rgb(var(--error, var(--m3-scheme-on-surface-variant)));
102
- background-color: var(--m3-util-background, rgb(var(--m3-scheme-surface)));
97
+ color: var(--error, var(--m3c-on-surface-variant));
98
+ background-color: var(--m3v-background);
103
99
  padding: 0 0.25rem;
104
100
  &:is(input:hover ~ label) {
105
- color: rgb(var(--error, var(--m3-scheme-on-surface)));
101
+ color: var(--error, var(--m3c-on-surface));
106
102
  }
107
103
  &:is(input:enabled:focus ~ label) {
108
- color: rgb(var(--error, var(--m3-scheme-primary)));
104
+ color: var(--error, var(--m3c-primary));
109
105
  }
110
106
  &:is(input:disabled ~ label) {
111
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
107
+ color: --translucent(var(--m3c-on-surface), 0.38);
112
108
  }
113
109
  &:is(input:focus ~ label, input:not(:placeholder-shown) ~ label) {
110
+ @apply --m3-body-small;
114
111
  top: 0;
115
- font-size: var(--m3-font-body-small-size);
116
- line-height: var(--m3-font-body-small-height);
117
- letter-spacing: var(--m3-font-body-small-tracking);
118
112
  }
119
113
  pointer-events: none;
120
114
  transition:
@@ -127,22 +121,22 @@
127
121
  .layer {
128
122
  position: absolute;
129
123
  inset: 0;
130
- border: 1px solid rgb(var(--error, var(--m3-scheme-outline)));
124
+ border: 1px solid var(--error, var(--m3c-outline));
131
125
  border-radius: var(--m3-field-outlined-shape);
132
126
  pointer-events: none;
133
127
  transition: all 100ms;
134
128
  &:is(input:enabled:hover ~ .layer) {
135
- border-color: rgb(var(--error, var(--m3-scheme-on-surface)));
129
+ border-color: var(--error, var(--m3c-on-surface));
136
130
  }
137
131
  &:is(input:enabled:focus ~ .layer) {
138
- border-color: rgb(var(--error, var(--m3-scheme-primary)));
132
+ border-color: var(--error, var(--m3c-primary));
139
133
  border-width: 0.125rem;
140
134
  }
141
135
  }
142
136
  .m3-container :global(svg) {
143
137
  width: 1.5rem;
144
138
  height: 1.5rem;
145
- color: rgb(var(--m3-scheme-on-surface-variant));
139
+ color: var(--m3c-on-surface-variant);
146
140
  pointer-events: none;
147
141
  }
148
142
  .m3-container > :global(.leading) {
@@ -177,21 +171,21 @@
177
171
  }
178
172
 
179
173
  .error {
180
- --error: var(--m3-scheme-error);
174
+ --error: var(--m3c-error);
181
175
  }
182
176
  .error > input:hover ~ label,
183
177
  .error > input:hover ~ .layer {
184
- --error: var(--m3-scheme-on-error-container);
178
+ --error: var(--m3c-on-error-container);
185
179
  }
186
180
 
187
181
  input:disabled {
188
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
182
+ color: --translucent(var(--m3c-on-surface), 0.38);
189
183
  }
190
184
  input:disabled ~ .layer {
191
- border-color: rgb(var(--m3-scheme-on-surface) / 0.38);
185
+ border-color: --translucent(var(--m3c-on-surface), 0.38);
192
186
  }
193
187
  input:disabled ~ :global(svg) {
194
- color: rgb(var(--m3-scheme-on-surface) / 0.38);
188
+ color: --translucent(var(--m3c-on-surface), 0.38);
195
189
  }
196
190
 
197
191
  .m3-container {