@noxlovette/material 0.9.2 → 0.9.4
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.
- package/claude-skill/material-design/references/motion-guide.md +7 -7
- package/dist/animation/TransitionPatterns.stories.svelte +2 -1
- package/dist/animation/containerTransform.js +3 -2
- package/dist/animation/presence.svelte.js +12 -1
- package/dist/animation/sharedAxisTransition.js +7 -5
- package/dist/animation/skeleton.d.ts +3 -2
- package/dist/animation/skeleton.js +27 -9
- package/dist/components/buttons/button-group/ButtonGroup.svelte +5 -3
- package/dist/components/buttons/connected/theme.d.ts +15 -15
- package/dist/components/buttons/connected/theme.js +20 -5
- package/dist/components/buttons/shapeMorph.js +12 -4
- package/dist/components/buttons/split-button/theme.d.ts +15 -15
- package/dist/components/buttons/split-button/theme.js +21 -15
- package/dist/components/buttons/theme.d.ts +40 -40
- package/dist/components/buttons/theme.js +29 -29
- package/dist/components/cards/theme.js +1 -1
- package/dist/components/chips/Chip.svelte +1 -1
- package/dist/components/chips/theme.js +1 -1
- package/dist/components/containers/bottom-sheet/theme.js +1 -1
- package/dist/components/containers/carousel/theme.js +1 -1
- package/dist/components/containers/context-menu/theme.js +2 -2
- package/dist/components/containers/dialogue/theme.js +1 -1
- package/dist/components/containers/list/theme.d.ts +3 -3
- package/dist/components/containers/list/theme.js +8 -8
- package/dist/components/containers/menu/theme.js +3 -3
- package/dist/components/date/theme.js +2 -2
- package/dist/components/forms/checkbox/theme.js +1 -1
- package/dist/components/forms/command/theme.js +1 -1
- package/dist/components/forms/search/theme.js +1 -1
- package/dist/components/forms/select/theme.js +2 -2
- package/dist/components/forms/slider/theme.js +7 -7
- package/dist/components/forms/textfield/theme.js +4 -4
- package/dist/components/forms/toggle-group/theme.js +2 -2
- package/dist/components/nav/appbar/theme.js +22 -6
- package/dist/components/nav/navbar/theme.js +1 -1
- package/dist/components/nav/tabs/theme.js +1 -1
- package/dist/components/snackbar/theme.js +1 -1
- package/dist/components/table/TableHeader.svelte +1 -1
- package/dist/components/toolbar/theme.js +2 -2
- package/dist/styles/components.css +7 -2
- package/dist/styles/icon.css +19 -0
- package/dist/styles/motion.css +17 -0
- package/dist/styles/rounding.css +4 -0
- package/dist/utils/icon/Icon.svelte +5 -5
- package/package.json +1 -1
|
@@ -59,24 +59,24 @@ export declare const buttonBase = "md-btn md-sys-state-focus-indicator relative
|
|
|
59
59
|
/** Button measurements per size: height, padding, icon-label gap, label type, shape and outline. */
|
|
60
60
|
export declare const buttonSizes: {
|
|
61
61
|
readonly xs: {
|
|
62
|
-
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:
|
|
63
|
-
readonly icon: "size-
|
|
62
|
+
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]";
|
|
63
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
64
64
|
};
|
|
65
65
|
readonly sm: {
|
|
66
|
-
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:
|
|
67
|
-
readonly icon: "size-
|
|
66
|
+
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]";
|
|
67
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
68
68
|
};
|
|
69
69
|
readonly md: {
|
|
70
|
-
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:
|
|
71
|
-
readonly icon: "size-
|
|
70
|
+
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]";
|
|
71
|
+
readonly icon: "size-(--text-icon-24) text-icon-24";
|
|
72
72
|
};
|
|
73
73
|
readonly lg: {
|
|
74
|
-
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:
|
|
75
|
-
readonly icon: "size-
|
|
74
|
+
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]";
|
|
75
|
+
readonly icon: "size-(--text-icon-32) text-icon-32";
|
|
76
76
|
};
|
|
77
77
|
readonly xl: {
|
|
78
|
-
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:
|
|
79
|
-
readonly icon: "size-
|
|
78
|
+
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]";
|
|
79
|
+
readonly icon: "size-(--text-icon-40) text-icon-40";
|
|
80
80
|
};
|
|
81
81
|
};
|
|
82
82
|
/** Resting elevation and hover lift per colour style (the text and outlined styles have none). */
|
|
@@ -103,24 +103,24 @@ export declare const button: import("tailwind-variants").TVReturnType<{
|
|
|
103
103
|
};
|
|
104
104
|
size: {
|
|
105
105
|
readonly xs: {
|
|
106
|
-
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:
|
|
107
|
-
readonly icon: "size-
|
|
106
|
+
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]";
|
|
107
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
108
108
|
};
|
|
109
109
|
readonly sm: {
|
|
110
|
-
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:
|
|
111
|
-
readonly icon: "size-
|
|
110
|
+
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]";
|
|
111
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
112
112
|
};
|
|
113
113
|
readonly md: {
|
|
114
|
-
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:
|
|
115
|
-
readonly icon: "size-
|
|
114
|
+
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]";
|
|
115
|
+
readonly icon: "size-(--text-icon-24) text-icon-24";
|
|
116
116
|
};
|
|
117
117
|
readonly lg: {
|
|
118
|
-
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:
|
|
119
|
-
readonly icon: "size-
|
|
118
|
+
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]";
|
|
119
|
+
readonly icon: "size-(--text-icon-32) text-icon-32";
|
|
120
120
|
};
|
|
121
121
|
readonly xl: {
|
|
122
|
-
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:
|
|
123
|
-
readonly icon: "size-
|
|
122
|
+
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]";
|
|
123
|
+
readonly icon: "size-(--text-icon-40) text-icon-40";
|
|
124
124
|
};
|
|
125
125
|
};
|
|
126
126
|
shape: {
|
|
@@ -155,24 +155,24 @@ export declare const button: import("tailwind-variants").TVReturnType<{
|
|
|
155
155
|
};
|
|
156
156
|
size: {
|
|
157
157
|
readonly xs: {
|
|
158
|
-
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:
|
|
159
|
-
readonly icon: "size-
|
|
158
|
+
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]";
|
|
159
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
160
160
|
};
|
|
161
161
|
readonly sm: {
|
|
162
|
-
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:
|
|
163
|
-
readonly icon: "size-
|
|
162
|
+
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]";
|
|
163
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
164
164
|
};
|
|
165
165
|
readonly md: {
|
|
166
|
-
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:
|
|
167
|
-
readonly icon: "size-
|
|
166
|
+
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]";
|
|
167
|
+
readonly icon: "size-(--text-icon-24) text-icon-24";
|
|
168
168
|
};
|
|
169
169
|
readonly lg: {
|
|
170
|
-
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:
|
|
171
|
-
readonly icon: "size-
|
|
170
|
+
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]";
|
|
171
|
+
readonly icon: "size-(--text-icon-32) text-icon-32";
|
|
172
172
|
};
|
|
173
173
|
readonly xl: {
|
|
174
|
-
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:
|
|
175
|
-
readonly icon: "size-
|
|
174
|
+
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]";
|
|
175
|
+
readonly icon: "size-(--text-icon-40) text-icon-40";
|
|
176
176
|
};
|
|
177
177
|
};
|
|
178
178
|
shape: {
|
|
@@ -207,24 +207,24 @@ export declare const button: import("tailwind-variants").TVReturnType<{
|
|
|
207
207
|
};
|
|
208
208
|
size: {
|
|
209
209
|
readonly xs: {
|
|
210
|
-
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:
|
|
211
|
-
readonly icon: "size-
|
|
210
|
+
readonly base: "md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]";
|
|
211
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
212
212
|
};
|
|
213
213
|
readonly sm: {
|
|
214
|
-
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:
|
|
215
|
-
readonly icon: "size-
|
|
214
|
+
readonly base: "md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]";
|
|
215
|
+
readonly icon: "size-(--text-icon-20) text-icon-20";
|
|
216
216
|
};
|
|
217
217
|
readonly md: {
|
|
218
|
-
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:
|
|
219
|
-
readonly icon: "size-
|
|
218
|
+
readonly base: "md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]";
|
|
219
|
+
readonly icon: "size-(--text-icon-24) text-icon-24";
|
|
220
220
|
};
|
|
221
221
|
readonly lg: {
|
|
222
|
-
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:
|
|
223
|
-
readonly icon: "size-
|
|
222
|
+
readonly base: "md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]";
|
|
223
|
+
readonly icon: "size-(--text-icon-32) text-icon-32";
|
|
224
224
|
};
|
|
225
225
|
readonly xl: {
|
|
226
|
-
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:
|
|
227
|
-
readonly icon: "size-
|
|
226
|
+
readonly base: "md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]";
|
|
227
|
+
readonly icon: "size-(--text-icon-40) text-icon-40";
|
|
228
228
|
};
|
|
229
229
|
};
|
|
230
230
|
shape: {
|
|
@@ -81,24 +81,24 @@ export const buttonBase = 'md-btn md-sys-state-focus-indicator relative inline-f
|
|
|
81
81
|
/** Button measurements per size: height, padding, icon-label gap, label type, shape and outline. */
|
|
82
82
|
export const buttonSizes = {
|
|
83
83
|
xs: {
|
|
84
|
-
base: 'md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:
|
|
85
|
-
icon: 'size-
|
|
84
|
+
base: 'md-sys-typescale-label-large h-spacing-400 gap-spacing-50 px-spacing-150 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]',
|
|
85
|
+
icon: 'size-(--text-icon-20) text-icon-20'
|
|
86
86
|
},
|
|
87
87
|
sm: {
|
|
88
|
-
base: 'md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:
|
|
89
|
-
icon: 'size-
|
|
88
|
+
base: 'md-sys-typescale-label-large h-spacing-500 gap-spacing-100 px-spacing-200 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]',
|
|
89
|
+
icon: 'size-(--text-icon-20) text-icon-20'
|
|
90
90
|
},
|
|
91
91
|
md: {
|
|
92
|
-
base: 'md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:
|
|
93
|
-
icon: 'size-
|
|
92
|
+
base: 'md-sys-typescale-title-medium h-spacing-700 gap-spacing-100 px-spacing-300 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]',
|
|
93
|
+
icon: 'size-(--text-icon-24) text-icon-24'
|
|
94
94
|
},
|
|
95
95
|
lg: {
|
|
96
|
-
base: 'md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:
|
|
97
|
-
icon: 'size-
|
|
96
|
+
base: 'md-sys-typescale-headline-small h-24 gap-spacing-150 px-spacing-600 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]',
|
|
97
|
+
icon: 'size-(--text-icon-32) text-icon-32'
|
|
98
98
|
},
|
|
99
99
|
xl: {
|
|
100
|
-
base: 'md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:
|
|
101
|
-
icon: 'size-
|
|
100
|
+
base: 'md-sys-typescale-headline-large h-34 gap-spacing-200 px-spacing-800 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]',
|
|
101
|
+
icon: 'size-(--text-icon-40) text-icon-40'
|
|
102
102
|
}
|
|
103
103
|
};
|
|
104
104
|
/** Resting elevation and hover lift per colour style (the text and outlined styles have none). */
|
|
@@ -157,24 +157,24 @@ export const buttonIcon = tv({
|
|
|
157
157
|
},
|
|
158
158
|
size: {
|
|
159
159
|
xs: {
|
|
160
|
-
base: 'h-spacing-400 [--btn-outline:1px] [--btn-pressed:
|
|
161
|
-
icon: 'size-
|
|
160
|
+
base: 'h-spacing-400 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg)] [--btn-square:var(--radius-md)]',
|
|
161
|
+
icon: 'size-(--text-icon-20) text-icon-20'
|
|
162
162
|
},
|
|
163
163
|
sm: {
|
|
164
|
-
base: 'h-spacing-500 [--btn-outline:1px] [--btn-pressed:
|
|
165
|
-
icon: 'size-
|
|
164
|
+
base: 'h-spacing-500 [--btn-outline:1px] [--btn-pressed:var(--radius-sm)] [--btn-round:var(--radius-lg-increased)] [--btn-square:var(--radius-md)]',
|
|
165
|
+
icon: 'size-(--text-icon-24) text-icon-24'
|
|
166
166
|
},
|
|
167
167
|
md: {
|
|
168
|
-
base: 'h-spacing-700 [--btn-outline:1px] [--btn-pressed:
|
|
169
|
-
icon: 'size-
|
|
168
|
+
base: 'h-spacing-700 [--btn-outline:1px] [--btn-pressed:var(--radius-md)] [--btn-round:var(--radius-xl)] [--btn-square:var(--radius-lg)]',
|
|
169
|
+
icon: 'size-(--text-icon-24) text-icon-24'
|
|
170
170
|
},
|
|
171
171
|
lg: {
|
|
172
|
-
base: 'h-24 [--btn-outline:2px] [--btn-pressed:
|
|
173
|
-
icon: 'size-
|
|
172
|
+
base: 'h-24 [--btn-outline:2px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--radius-xxl)] [--btn-square:var(--radius-xl)]',
|
|
173
|
+
icon: 'size-(--text-icon-32) text-icon-32'
|
|
174
174
|
},
|
|
175
175
|
xl: {
|
|
176
|
-
base: 'h-34 [--btn-outline:3px] [--btn-pressed:
|
|
177
|
-
icon: 'size-
|
|
176
|
+
base: 'h-34 [--btn-outline:3px] [--btn-pressed:var(--radius-lg)] [--btn-round:var(--md-comp-button-xl-round-corner)] [--btn-square:var(--radius-xl)]',
|
|
177
|
+
icon: 'size-(--text-icon-40) text-icon-40'
|
|
178
178
|
}
|
|
179
179
|
},
|
|
180
180
|
/** Container width: the icon plus the size's narrow, default or wide leading/trailing space. */
|
|
@@ -256,21 +256,21 @@ export const fab = tv({
|
|
|
256
256
|
/** Baseline small FAB. No longer recommended by M3; kept for dense layouts. */
|
|
257
257
|
small: {
|
|
258
258
|
base: 'h-spacing-500 rounded-xl px-spacing-100',
|
|
259
|
-
icon: 'size-
|
|
259
|
+
icon: 'size-(--text-icon-24) text-icon-24'
|
|
260
260
|
},
|
|
261
261
|
regular: {
|
|
262
262
|
base: 'md-sys-typescale-title-medium h-spacing-700 rounded-2xl px-spacing-200',
|
|
263
|
-
icon: 'size-
|
|
263
|
+
icon: 'size-(--text-icon-24) text-icon-24',
|
|
264
264
|
label: 'ps-spacing-100'
|
|
265
265
|
},
|
|
266
266
|
medium: {
|
|
267
|
-
base: 'md-sys-typescale-title-large h-20 rounded-
|
|
268
|
-
icon: 'size-
|
|
267
|
+
base: 'md-sys-typescale-title-large h-20 rounded-lg-increased px-[1.625rem]',
|
|
268
|
+
icon: 'size-(--text-icon-28) text-icon-28',
|
|
269
269
|
label: 'ps-spacing-150'
|
|
270
270
|
},
|
|
271
271
|
large: {
|
|
272
|
-
base: 'md-sys-typescale-headline-small h-24 rounded-
|
|
273
|
-
icon: 'size-
|
|
272
|
+
base: 'md-sys-typescale-headline-small h-24 rounded-xl px-[1.875rem]',
|
|
273
|
+
icon: 'size-(--text-icon-36) text-icon-36',
|
|
274
274
|
label: 'ps-spacing-200'
|
|
275
275
|
}
|
|
276
276
|
},
|
|
@@ -281,8 +281,8 @@ export const fab = tv({
|
|
|
281
281
|
*/
|
|
282
282
|
menuOpen: {
|
|
283
283
|
true: {
|
|
284
|
-
base: 'justify-center px-spacing-0 size-spacing-700 rounded-
|
|
285
|
-
icon: 'size-
|
|
284
|
+
base: 'justify-center px-spacing-0 size-spacing-700 rounded-xl',
|
|
285
|
+
icon: 'size-(--text-icon-20) text-icon-20',
|
|
286
286
|
labelTrack: 'grid-cols-[0fr]!'
|
|
287
287
|
},
|
|
288
288
|
false: {}
|
|
@@ -365,7 +365,7 @@ export const fabMenu = tv({
|
|
|
365
365
|
export const fabMenuItem = tv({
|
|
366
366
|
slots: {
|
|
367
367
|
base: 'md-btn md-sys-state-focus-indicator md-sys-typescale-title-medium relative inline-flex h-spacing-700 shrink-0 cursor-pointer items-center gap-spacing-100 rounded-full px-spacing-300 whitespace-nowrap select-none data-disabled:cursor-not-allowed data-disabled:bg-md-sys-color-on-surface/10 data-disabled:text-md-sys-color-on-surface/38',
|
|
368
|
-
icon: 'size-
|
|
368
|
+
icon: 'size-(--text-icon-24) shrink-0 text-icon-24'
|
|
369
369
|
},
|
|
370
370
|
variants: {
|
|
371
371
|
set: {
|
|
@@ -2,7 +2,7 @@ import { tv } from '../../utils/tv.js';
|
|
|
2
2
|
export const card = tv({
|
|
3
3
|
slots: {
|
|
4
4
|
base: 'relative flex flex-col rounded-lg disabled:opacity-[0.38] disabled:bg-md-sys-color-surface-variant state-layer before:rounded-lg transition-shadow md-sys-motion-effects',
|
|
5
|
-
icon: 'size-
|
|
5
|
+
icon: 'size-(--text-icon-24) text-icon-24 text-md-sys-color-primary'
|
|
6
6
|
},
|
|
7
7
|
variants: {
|
|
8
8
|
type: {
|
|
@@ -135,7 +135,7 @@ Chips help people enter information, make selections, filter content, or trigger
|
|
|
135
135
|
}}
|
|
136
136
|
aria-label={removeLabel}
|
|
137
137
|
>
|
|
138
|
-
<Icon size="sm" name="close" class="size-
|
|
138
|
+
<Icon size="sm" name="close" class="text-icon-18 size-(--text-icon-18)" />
|
|
139
139
|
<Layer />
|
|
140
140
|
</button>
|
|
141
141
|
{/if}
|
|
@@ -23,7 +23,7 @@ export const chip = tv({
|
|
|
23
23
|
// a 16% state layer.
|
|
24
24
|
base: 'in-data-dragged:shadow-elevation-4 in-data-dragged:before:bg-current/16 state-layer md-sys-state-focus-indicator relative inline-flex h-spacing-400 max-w-max shrink-0 items-center justify-center gap-spacing-100 rounded-sm border border-transparent px-spacing-200 md-sys-typescale-label-large select-none before:rounded-sm transition-[background-color,border-color,box-shadow] md-sys-motion-effects',
|
|
25
25
|
// 18dp is the chip spec's own icon size, between the 16 and 20 Icon presets.
|
|
26
|
-
icon: 'size-
|
|
26
|
+
icon: 'size-(--text-icon-18) shrink-0 text-icon-18',
|
|
27
27
|
avatar: 'size-spacing-300 shrink-0 overflow-hidden rounded-full',
|
|
28
28
|
// Static, so its Layer (state layer and hit area) spans the whole chip; the remove button is
|
|
29
29
|
// positioned and later in the DOM, so it stays on top.
|
|
@@ -18,7 +18,7 @@ export const bottomSheet = tv({
|
|
|
18
18
|
],
|
|
19
19
|
container: [
|
|
20
20
|
'bg-md-sys-color-surface-container-low text-md-sys-color-on-surface shadow-elevation-1',
|
|
21
|
-
'flex max-h-[inherit] flex-col rounded-t-
|
|
21
|
+
'flex max-h-[inherit] flex-col rounded-t-xl will-change-transform'
|
|
22
22
|
],
|
|
23
23
|
handleArea: 'flex h-spacing-600 shrink-0 cursor-grab touch-none justify-center active:cursor-grabbing',
|
|
24
24
|
handle: 'md-sys-state-focus-indicator flex h-spacing-600 w-spacing-600 items-center justify-center rounded-full outline-none',
|
|
@@ -13,7 +13,7 @@ export const carousel = tv({
|
|
|
13
13
|
snapPoint: 'pointer-events-none absolute top-spacing-0 h-px w-px snap-start',
|
|
14
14
|
viewport: 'sticky left-spacing-0 h-full overflow-clip',
|
|
15
15
|
item: [
|
|
16
|
-
'text-md-sys-color-on-surface bg-md-sys-color-surface relative block shrink-0 overflow-hidden rounded-
|
|
16
|
+
'text-md-sys-color-on-surface bg-md-sys-color-surface relative block shrink-0 overflow-hidden rounded-xl text-start',
|
|
17
17
|
'md-sys-state-focus-indicator transition-shadow md-sys-motion-effects'
|
|
18
18
|
],
|
|
19
19
|
content: 'h-full'
|
|
@@ -24,9 +24,9 @@ export const contextMenu = tv({
|
|
|
24
24
|
itemContent: 'flex flex-1 flex-col gap-spacing-25 min-w-spacing-0',
|
|
25
25
|
label: 'md-sys-typescale-body-large text-md-sys-color-on-surface',
|
|
26
26
|
helper: 'md-sys-typescale-body-medium text-md-sys-color-on-surface-variant',
|
|
27
|
-
icon: 'size-
|
|
27
|
+
icon: 'size-(--text-icon-20) text-icon-20 text-md-sys-color-on-surface-variant shrink-0',
|
|
28
28
|
separator: 'my-spacing-50 h-px bg-md-sys-color-outline-variant',
|
|
29
|
-
rightSlot: 'ml-auto size-
|
|
29
|
+
rightSlot: 'ml-auto size-(--text-icon-20) text-icon-20 shrink-0 text-md-sys-color-on-surface-variant'
|
|
30
30
|
},
|
|
31
31
|
variants: {
|
|
32
32
|
selected: {
|
|
@@ -2,7 +2,7 @@ import { tv } from '../../../utils/tv.js';
|
|
|
2
2
|
export const dialogue = tv({
|
|
3
3
|
slots: {
|
|
4
4
|
base: 'fixed inset-spacing-0 z-layer-modal bg-md-sys-color-scrim/32',
|
|
5
|
-
inner: 'fixed inset-spacing-0 z-layer-modal m-auto h-max w-full outline-none bg-md-sys-color-surface-container-high shadow-elevation-3 flex flex-col rounded-
|
|
5
|
+
inner: 'fixed inset-spacing-0 z-layer-modal m-auto h-max w-full outline-none bg-md-sys-color-surface-container-high shadow-elevation-3 flex flex-col rounded-xl p-spacing-300 gap-spacing-200',
|
|
6
6
|
headlineContainer: 'md-sys-typescale-headline-small text-md-sys-color-on-surface',
|
|
7
7
|
supportingTextContainer: 'md-sys-typescale-body-medium text-md-sys-color-on-surface-variant',
|
|
8
8
|
buttonContainer: 'mt-spacing-100 flex items-center justify-end gap-spacing-100'
|
|
@@ -4,17 +4,17 @@ export type ListMediaVariants = VariantProps<typeof listMedia>;
|
|
|
4
4
|
export declare const list: import("tailwind-variants").TVReturnType<{
|
|
5
5
|
variant: {
|
|
6
6
|
standard: "";
|
|
7
|
-
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:
|
|
7
|
+
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:var(--radius-lg)] [&>:last-child]:[--li-bottom:var(--radius-lg)]";
|
|
8
8
|
};
|
|
9
9
|
}, undefined, "flex w-full flex-col [--li-bottom:initial] [--li-top:initial]", {
|
|
10
10
|
variant: {
|
|
11
11
|
standard: "";
|
|
12
|
-
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:
|
|
12
|
+
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:var(--radius-lg)] [&>:last-child]:[--li-bottom:var(--radius-lg)]";
|
|
13
13
|
};
|
|
14
14
|
}, undefined, import("tailwind-variants").TVReturnTypeLike<{
|
|
15
15
|
variant: {
|
|
16
16
|
standard: "";
|
|
17
|
-
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:
|
|
17
|
+
segmented: "gap-spacing-25 [&>:first-child]:[--li-top:var(--radius-lg)] [&>:last-child]:[--li-bottom:var(--radius-lg)]";
|
|
18
18
|
};
|
|
19
19
|
}, undefined>>;
|
|
20
20
|
export declare const listItem: import("tailwind-variants").TVReturnType<{
|
|
@@ -19,7 +19,7 @@ export const list = tv({
|
|
|
19
19
|
variant: {
|
|
20
20
|
standard: '',
|
|
21
21
|
// 2dp between segments; outer corners 16dp (md.comp.list.container.shape).
|
|
22
|
-
segmented: 'gap-spacing-25 [&>:first-child]:[--li-top:
|
|
22
|
+
segmented: 'gap-spacing-25 [&>:first-child]:[--li-top:var(--radius-lg)] [&>:last-child]:[--li-bottom:var(--radius-lg)]'
|
|
23
23
|
}
|
|
24
24
|
},
|
|
25
25
|
defaultVariants: { variant: 'standard' }
|
|
@@ -28,7 +28,7 @@ export const listItem = tv({
|
|
|
28
28
|
slots: {
|
|
29
29
|
base: [
|
|
30
30
|
'relative isolate flex w-full min-w-spacing-0 gap-spacing-150 ps-spacing-200 pe-spacing-200 pt-spacing-125 pb-spacing-125 text-start',
|
|
31
|
-
'[--li-shape:
|
|
31
|
+
'[--li-shape:var(--radius-xs)] rounded-t-[var(--li-top,var(--li-shape))] rounded-b-[var(--li-bottom,var(--li-shape))]',
|
|
32
32
|
'transition-[border-radius,background-color,color] md-sys-motion-fast-spatial',
|
|
33
33
|
'text-md-sys-color-on-surface-variant'
|
|
34
34
|
],
|
|
@@ -69,17 +69,17 @@ export const listItem = tv({
|
|
|
69
69
|
true: {
|
|
70
70
|
base: [
|
|
71
71
|
'cursor-pointer outline-none',
|
|
72
|
-
'hover:[--li-shape:
|
|
73
|
-
'focus-visible:[--li-shape:
|
|
72
|
+
'hover:[--li-shape:var(--radius-md)]',
|
|
73
|
+
'focus-visible:[--li-shape:var(--radius-lg)]',
|
|
74
74
|
'focus-visible:outline-solid focus-visible:outline-3 focus-visible:-outline-offset-3 focus-visible:outline-md-sys-color-secondary',
|
|
75
|
-
'active:[--li-shape:
|
|
75
|
+
'active:[--li-shape:var(--radius-lg)]'
|
|
76
76
|
]
|
|
77
77
|
},
|
|
78
78
|
false: ''
|
|
79
79
|
},
|
|
80
80
|
selected: {
|
|
81
81
|
true: {
|
|
82
|
-
base: 'text-md-sys-color-on-secondary-container [--li-shape:
|
|
82
|
+
base: 'text-md-sys-color-on-secondary-container [--li-shape:var(--radius-lg)] hover:[--li-shape:var(--radius-lg)]',
|
|
83
83
|
leading: 'text-md-sys-color-on-secondary-container',
|
|
84
84
|
overline: 'text-md-sys-color-on-secondary-container',
|
|
85
85
|
headline: 'text-md-sys-color-on-secondary-container',
|
|
@@ -104,10 +104,10 @@ export const listItem = tv({
|
|
|
104
104
|
expanded: {
|
|
105
105
|
true: {
|
|
106
106
|
// The expanded group is one 16dp container: header on top, nested items below.
|
|
107
|
-
base: '[--li-top:
|
|
107
|
+
base: '[--li-top:var(--radius-lg)] [--li-bottom:var(--li-shape)]',
|
|
108
108
|
expandIcon: 'rotate-180 bg-md-sys-color-surface-container',
|
|
109
109
|
region: 'grid-rows-[1fr]',
|
|
110
|
-
nested: '[&>:last-child]:[--li-bottom:
|
|
110
|
+
nested: '[&>:last-child]:[--li-bottom:var(--radius-lg)]'
|
|
111
111
|
},
|
|
112
112
|
false: {
|
|
113
113
|
expandIcon: 'bg-md-sys-color-surface',
|
|
@@ -16,11 +16,11 @@ export const menu = tv({
|
|
|
16
16
|
focus-visible:outline-md-sys-color-primary
|
|
17
17
|
data-[disabled]:cursor-not-allowed data-[disabled]:opacity-38
|
|
18
18
|
`,
|
|
19
|
-
icon: 'text-md-sys-color-on-surface-variant size-
|
|
20
|
-
indicator: 'size-
|
|
19
|
+
icon: 'text-md-sys-color-on-surface-variant size-(--text-icon-20) text-icon-20 shrink-0',
|
|
20
|
+
indicator: 'size-(--text-icon-20) text-icon-20 shrink-0 text-md-sys-color-on-surface-variant',
|
|
21
21
|
itemContent: 'flex flex-1 flex-col gap-spacing-50 text-left min-w-spacing-0',
|
|
22
22
|
helper: 'md-sys-typescale-body-medium text-md-sys-color-on-surface-variant',
|
|
23
|
-
rightSlot: 'text-md-sys-color-on-surface-variant size-
|
|
23
|
+
rightSlot: 'text-md-sys-color-on-surface-variant size-(--text-icon-20) text-icon-20 shrink-0',
|
|
24
24
|
groupHeading: 'px-spacing-150 pt-spacing-100 pb-spacing-50 md-sys-typescale-label-medium text-md-sys-color-primary'
|
|
25
25
|
},
|
|
26
26
|
variants: {
|
|
@@ -15,7 +15,7 @@ export const dateRangeField = tv({
|
|
|
15
15
|
leadingIcon: `
|
|
16
16
|
text-md-sys-color-on-surface-variant size-spacing-300
|
|
17
17
|
group-focus-within:text-md-sys-color-primary
|
|
18
|
-
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-
|
|
18
|
+
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-icon-24
|
|
19
19
|
`,
|
|
20
20
|
trailingIcon: `
|
|
21
21
|
mr-spacing-50 shrink-0 text-md-sys-color-on-surface-variant
|
|
@@ -124,7 +124,7 @@ export const dateField = tv({
|
|
|
124
124
|
leadingIcon: `
|
|
125
125
|
text-md-sys-color-on-surface-variant size-spacing-300
|
|
126
126
|
group-focus-within:text-md-sys-color-primary
|
|
127
|
-
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-
|
|
127
|
+
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-icon-24
|
|
128
128
|
`,
|
|
129
129
|
trailingIcon: `
|
|
130
130
|
mr-spacing-50 shrink-0 text-md-sys-color-on-surface-variant
|
|
@@ -4,7 +4,7 @@ export const checkbox = tv({
|
|
|
4
4
|
root: 'group inline-flex size-spacing-500 shrink-0 select-none items-center justify-center cursor-pointer',
|
|
5
5
|
container: 'relative inline-flex size-[18px] shrink-0',
|
|
6
6
|
control: 'layer-container absolute -inset-[11px] rounded-full text-md-sys-color-on-surface-variant state-layer before:rounded-full group-focus-visible:outline group-focus-visible:outline-3 group-focus-visible:outline-offset-2 group-focus-visible:outline-md-sys-color-secondary transition-colors md-sys-motion-fast-effects',
|
|
7
|
-
box: 'absolute inset-[11px] rounded-
|
|
7
|
+
box: 'absolute inset-[11px] rounded-xs border-2 border-current bg-md-sys-color-surface transition-colors md-sys-motion-fast-effects',
|
|
8
8
|
checkIcon: 'pointer-events-none absolute inset-spacing-0 m-auto size-spacing-175 text-md-sys-color-on-primary opacity-0 scale-75',
|
|
9
9
|
indeterminateIcon: 'pointer-events-none absolute inset-spacing-0 m-auto block h-spacing-25 w-spacing-150 rounded-full bg-md-sys-color-on-primary opacity-0 scale-75',
|
|
10
10
|
label: 'md-sys-typescale-body-large leading-5 text-md-sys-color-on-surface cursor-pointer'
|
|
@@ -25,7 +25,7 @@ export const commandItem = tv({
|
|
|
25
25
|
slots: {
|
|
26
26
|
base: [
|
|
27
27
|
'cursor-default select-none outline-none',
|
|
28
|
-
'data-selected:[--li-shape:
|
|
28
|
+
'data-selected:[--li-shape:var(--radius-md)] data-selected:bg-md-sys-color-on-surface/10'
|
|
29
29
|
]
|
|
30
30
|
},
|
|
31
31
|
// The list's own surface fill is a variant, so it's replaced here, not in the base.
|
|
@@ -38,7 +38,7 @@ export const searchView = tv({
|
|
|
38
38
|
// keys are on gets the M3 focus indicator, drawn inside the item, and a focused item's shape.
|
|
39
39
|
// `outline-solid` is load-bearing: ListItem's `outline-none` sets --tw-outline-style to none,
|
|
40
40
|
// which `outline-3` reads, so without it the ring has a width and colour but no style.
|
|
41
|
-
results: 'min-h-spacing-0 overflow-y-auto overscroll-contain [&_[role=option]:not([aria-disabled=true])]:bg-transparent [&_[data-highlighted]]:outline-solid [&_[data-highlighted]]:outline-3 [&_[data-highlighted]]:-outline-offset-3 [&_[data-highlighted]]:outline-md-sys-color-secondary [&_[data-highlighted]]:[--li-shape:
|
|
41
|
+
results: 'min-h-spacing-0 overflow-y-auto overscroll-contain [&_[role=option]:not([aria-disabled=true])]:bg-transparent [&_[data-highlighted]]:outline-solid [&_[data-highlighted]]:outline-3 [&_[data-highlighted]]:-outline-offset-3 [&_[data-highlighted]]:outline-md-sys-color-secondary [&_[data-highlighted]]:[--li-shape:var(--radius-lg)]'
|
|
42
42
|
},
|
|
43
43
|
variants: {
|
|
44
44
|
hasTrailing: { true: '', false: { input: 'me-spacing-150' } }
|
|
@@ -22,12 +22,12 @@ export const select = tv({
|
|
|
22
22
|
leadingIcon: `
|
|
23
23
|
text-md-sys-color-on-surface-variant size-spacing-300
|
|
24
24
|
group-has-[[data-state=open]]:text-md-sys-color-primary
|
|
25
|
-
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-
|
|
25
|
+
group-data-[invalid]:text-md-sys-color-error ml-spacing-150 text-icon-24
|
|
26
26
|
`,
|
|
27
27
|
dropdownIcon: `
|
|
28
28
|
mr-spacing-150 text-md-sys-color-on-surface-variant size-spacing-300
|
|
29
29
|
group-data-[state=open]:text-md-sys-color-primary
|
|
30
|
-
group-data-[invalid]:text-md-sys-color-error z-20 text-
|
|
30
|
+
group-data-[invalid]:text-md-sys-color-error z-20 text-icon-24
|
|
31
31
|
transition-transform md-sys-motion-fast-spatial
|
|
32
32
|
group-data-[state=open]:rotate-180
|
|
33
33
|
`,
|
|
@@ -40,23 +40,23 @@ export const slider = tv({
|
|
|
40
40
|
s: { root: '[--track:1.5rem] [--handle:2.75rem] [--outer:var(--radius-sm)]' },
|
|
41
41
|
m: {
|
|
42
42
|
root: '[--track:2.5rem] [--handle:3.25rem] [--outer:var(--radius-md)]',
|
|
43
|
-
iconGlyph: 'size-
|
|
43
|
+
iconGlyph: 'size-(--text-icon-24) text-icon-24'
|
|
44
44
|
},
|
|
45
45
|
l: {
|
|
46
46
|
root: '[--track:3.5rem] [--handle:4.25rem] [--outer:var(--radius-lg)]',
|
|
47
|
-
iconGlyph: 'size-
|
|
47
|
+
iconGlyph: 'size-(--text-icon-24) text-icon-24'
|
|
48
48
|
},
|
|
49
49
|
xl: {
|
|
50
50
|
root: '[--track:6rem] [--handle:6.75rem] [--outer:var(--radius-xl)]',
|
|
51
|
-
iconGlyph: 'size-
|
|
51
|
+
iconGlyph: 'size-(--text-icon-32) text-icon-32'
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
54
|
vertical: {
|
|
55
55
|
false: {
|
|
56
56
|
root: 'h-[var(--handle)] w-full min-w-40',
|
|
57
57
|
track: 'top-1/2 h-[var(--track)] -translate-y-1/2',
|
|
58
|
-
activeTrack: 'left-spacing-0 rounded-l-
|
|
59
|
-
inactiveTrack: 'right-spacing-0 rounded-l-
|
|
58
|
+
activeTrack: 'left-spacing-0 rounded-l-(--outer) rounded-r-(--md-comp-slider-inner-corner)',
|
|
59
|
+
inactiveTrack: 'right-spacing-0 rounded-l-(--md-comp-slider-inner-corner) rounded-r-(--outer)',
|
|
60
60
|
stop: 'top-1/2 -translate-x-1/2 -translate-y-1/2',
|
|
61
61
|
icon: 'top-1/2 -translate-y-1/2',
|
|
62
62
|
handle: 'top-spacing-0 h-full -translate-x-1/2',
|
|
@@ -65,8 +65,8 @@ export const slider = tv({
|
|
|
65
65
|
true: {
|
|
66
66
|
root: 'h-full min-h-40 w-[var(--handle)]',
|
|
67
67
|
track: 'left-1/2 w-[var(--track)] -translate-x-1/2',
|
|
68
|
-
activeTrack: 'bottom-spacing-0 rounded-t-
|
|
69
|
-
inactiveTrack: 'top-spacing-0 rounded-t-
|
|
68
|
+
activeTrack: 'bottom-spacing-0 rounded-t-(--md-comp-slider-inner-corner) rounded-b-(--outer)',
|
|
69
|
+
inactiveTrack: 'top-spacing-0 rounded-t-(--outer) rounded-b-(--md-comp-slider-inner-corner)',
|
|
70
70
|
stop: 'left-1/2 -translate-x-1/2 translate-y-1/2',
|
|
71
71
|
icon: 'left-1/2 -translate-x-1/2',
|
|
72
72
|
handle: 'left-spacing-0 w-full translate-y-1/2',
|
|
@@ -30,14 +30,14 @@ export const textfield = tv({
|
|
|
30
30
|
transition-colors md-sys-motion-effects
|
|
31
31
|
`,
|
|
32
32
|
leadingIcon: `
|
|
33
|
-
text-md-sys-color-on-surface-variant size-
|
|
33
|
+
text-md-sys-color-on-surface-variant size-(--text-icon-24)
|
|
34
34
|
group-focus-within:text-md-sys-color-primary
|
|
35
|
-
ml-spacing-150 text-
|
|
35
|
+
ml-spacing-150 text-icon-24
|
|
36
36
|
`,
|
|
37
37
|
trailingIcon: `
|
|
38
|
-
mr-spacing-150 text-md-sys-color-on-surface-variant size-
|
|
38
|
+
mr-spacing-150 text-md-sys-color-on-surface-variant size-(--text-icon-24)
|
|
39
39
|
group-focus-within:text-md-sys-color-primary
|
|
40
|
-
z-20 text-
|
|
40
|
+
z-20 text-icon-24
|
|
41
41
|
`,
|
|
42
42
|
supportingText: `
|
|
43
43
|
px-spacing-200 pt-spacing-50 flex justify-between
|
|
@@ -14,7 +14,7 @@ export const toggleGroup = tv({
|
|
|
14
14
|
export const toggleGroupItem = tv({
|
|
15
15
|
slots: {
|
|
16
16
|
base: 'layer-container state-layer relative inline-flex min-w-spacing-600 flex-1 items-center justify-center gap-spacing-100 px-spacing-200 md-sys-typescale-label-large text-md-sys-color-on-surface outline-none transition-colors md-sys-motion-fast-effects disabled:cursor-not-allowed disabled:opacity-38 [&:not(:last-child)]:border-r [&:not(:last-child)]:border-md-sys-color-outline data-[state=on]:bg-md-sys-color-secondary-container data-[state=on]:text-md-sys-color-on-secondary-container',
|
|
17
|
-
checkIcon: 'size-
|
|
18
|
-
icon: 'size-
|
|
17
|
+
checkIcon: 'size-(--text-icon-18) text-icon-18',
|
|
18
|
+
icon: 'size-(--text-icon-18) text-icon-18'
|
|
19
19
|
}
|
|
20
20
|
});
|