@material/web 2.4.2-nightly.2fe7e22.0 → 2.4.2-nightly.3758f46.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 (198) hide show
  1. package/button/internal/button.d.ts +0 -4
  2. package/button/internal/button.js.map +1 -1
  3. package/checkbox/internal/checkbox.d.ts +2 -2
  4. package/checkbox/internal/checkbox.js.map +1 -1
  5. package/chips/internal/chip.d.ts +2 -0
  6. package/icon/internal/icon.d.ts +1 -1
  7. package/icon/internal/icon.js +1 -1
  8. package/icon/internal/icon.js.map +1 -1
  9. package/iconbutton/internal/icon-button.d.ts +0 -4
  10. package/iconbutton/internal/icon-button.js.map +1 -1
  11. package/internal/aria/aria.d.ts +1 -1
  12. package/internal/events/dispatch-hooks.js +31 -35
  13. package/internal/events/dispatch-hooks.js.map +1 -1
  14. package/labs/behaviors/form-associated.d.ts +0 -22
  15. package/labs/behaviors/form-associated.js +0 -11
  16. package/labs/behaviors/form-associated.js.map +1 -1
  17. package/labs/gb/components/button/_button-tokens.scss +30 -30
  18. package/labs/gb/components/button/button.css +1 -1
  19. package/labs/gb/components/button/button.css.map +1 -1
  20. package/labs/gb/components/button/button.cssresult.js +1 -1
  21. package/labs/gb/components/button/button.cssresult.js.map +1 -1
  22. package/labs/gb/components/button/button.d.ts +1 -16
  23. package/labs/gb/components/button/button.js +10 -33
  24. package/labs/gb/components/button/button.js.map +1 -1
  25. package/labs/gb/components/button/button.scss +25 -25
  26. package/labs/gb/components/button/md-button.d.ts +1 -1
  27. package/labs/gb/components/button/md-button.js +9 -9
  28. package/labs/gb/components/button/md-button.js.map +1 -1
  29. package/labs/gb/components/card/card.d.ts +1 -11
  30. package/labs/gb/components/card/card.js +6 -13
  31. package/labs/gb/components/card/card.js.map +1 -1
  32. package/labs/gb/components/card/md-card.js +6 -6
  33. package/labs/gb/components/card/md-card.js.map +1 -1
  34. package/labs/gb/components/checkbox/checkbox.css +1 -1
  35. package/labs/gb/components/checkbox/checkbox.css.map +1 -1
  36. package/labs/gb/components/checkbox/checkbox.cssresult.js +1 -1
  37. package/labs/gb/components/checkbox/checkbox.cssresult.js.map +1 -1
  38. package/labs/gb/components/checkbox/checkbox.d.ts +1 -16
  39. package/labs/gb/components/checkbox/checkbox.js +8 -31
  40. package/labs/gb/components/checkbox/checkbox.js.map +1 -1
  41. package/labs/gb/components/checkbox/checkbox.scss +13 -13
  42. package/labs/gb/components/checkbox/md-checkbox.d.ts +4 -4
  43. package/labs/gb/components/checkbox/md-checkbox.js +10 -10
  44. package/labs/gb/components/checkbox/md-checkbox.js.map +1 -1
  45. package/labs/gb/components/divider/divider.d.ts +1 -11
  46. package/labs/gb/components/divider/divider.js +4 -11
  47. package/labs/gb/components/divider/divider.js.map +1 -1
  48. package/labs/gb/components/fab/fab.d.ts +1 -16
  49. package/labs/gb/components/fab/fab.js +8 -31
  50. package/labs/gb/components/fab/fab.js.map +1 -1
  51. package/labs/gb/components/fab/md-fab.js +4 -4
  52. package/labs/gb/components/fab/md-fab.js.map +1 -1
  53. package/labs/gb/components/focus/focus-ring.js +1 -1
  54. package/labs/gb/components/focus/focus-ring.js.map +1 -1
  55. package/labs/gb/components/iconbutton/_icon-button-tokens.scss +202 -0
  56. package/labs/gb/components/iconbutton/icon-button.css +4 -0
  57. package/labs/gb/components/iconbutton/icon-button.css.map +1 -0
  58. package/labs/gb/components/iconbutton/icon-button.cssresult.d.ts +3 -0
  59. package/labs/gb/components/iconbutton/icon-button.cssresult.js +14 -0
  60. package/labs/gb/components/iconbutton/icon-button.cssresult.js.map +1 -0
  61. package/labs/gb/components/iconbutton/icon-button.d.ts +97 -0
  62. package/labs/gb/components/iconbutton/icon-button.js +122 -0
  63. package/labs/gb/components/iconbutton/icon-button.js.map +1 -0
  64. package/labs/gb/components/iconbutton/icon-button.scss +153 -0
  65. package/labs/gb/components/iconbutton/md-icon-button.d.ts +73 -0
  66. package/labs/gb/components/iconbutton/md-icon-button.js +176 -0
  67. package/labs/gb/components/iconbutton/md-icon-button.js.map +1 -0
  68. package/labs/gb/components/list/_list-tokens.scss +102 -0
  69. package/labs/gb/components/list/list.css +4 -0
  70. package/labs/gb/components/list/list.css.map +1 -0
  71. package/labs/gb/components/list/list.cssresult.d.ts +3 -0
  72. package/labs/gb/components/list/list.cssresult.js +14 -0
  73. package/labs/gb/components/list/list.cssresult.js.map +1 -0
  74. package/labs/gb/components/list/list.d.ts +103 -0
  75. package/labs/gb/components/list/list.js +109 -0
  76. package/labs/gb/components/list/list.js.map +1 -0
  77. package/labs/gb/components/list/list.scss +212 -0
  78. package/labs/gb/components/list/md-list-item.d.ts +44 -0
  79. package/labs/gb/components/list/md-list-item.js +122 -0
  80. package/labs/gb/components/list/md-list-item.js.map +1 -0
  81. package/labs/gb/components/list/md-list.d.ts +26 -0
  82. package/labs/gb/components/list/md-list.js +51 -0
  83. package/labs/gb/components/list/md-list.js.map +1 -0
  84. package/labs/gb/components/menu/_menu-tokens.scss +128 -0
  85. package/labs/gb/components/menu/md-menu-group.d.ts +26 -0
  86. package/labs/gb/components/menu/md-menu-group.js +65 -0
  87. package/labs/gb/components/menu/md-menu-group.js.map +1 -0
  88. package/labs/gb/components/menu/md-menu-item.d.ts +30 -0
  89. package/labs/gb/components/menu/md-menu-item.js +165 -0
  90. package/labs/gb/components/menu/md-menu-item.js.map +1 -0
  91. package/labs/gb/components/menu/md-menu.d.ts +28 -0
  92. package/labs/gb/components/menu/md-menu.js +141 -0
  93. package/labs/gb/components/menu/md-menu.js.map +1 -0
  94. package/labs/gb/components/menu/menu.css +4 -0
  95. package/labs/gb/components/menu/menu.css.map +1 -0
  96. package/labs/gb/components/menu/menu.cssresult.d.ts +3 -0
  97. package/labs/gb/components/menu/menu.cssresult.js +14 -0
  98. package/labs/gb/components/menu/menu.cssresult.js.map +1 -0
  99. package/labs/gb/components/menu/menu.d.ts +117 -0
  100. package/labs/gb/components/menu/menu.js +107 -0
  101. package/labs/gb/components/menu/menu.js.map +1 -0
  102. package/labs/gb/components/menu/menu.scss +171 -0
  103. package/labs/gb/components/radio/md-radio.d.ts +4 -4
  104. package/labs/gb/components/radio/md-radio.js +11 -11
  105. package/labs/gb/components/radio/md-radio.js.map +1 -1
  106. package/labs/gb/components/radio/radio.css +1 -1
  107. package/labs/gb/components/radio/radio.css.map +1 -1
  108. package/labs/gb/components/radio/radio.cssresult.js +1 -1
  109. package/labs/gb/components/radio/radio.cssresult.js.map +1 -1
  110. package/labs/gb/components/radio/radio.d.ts +1 -14
  111. package/labs/gb/components/radio/radio.js +8 -23
  112. package/labs/gb/components/radio/radio.js.map +1 -1
  113. package/labs/gb/components/radio/radio.scss +4 -5
  114. package/labs/gb/components/ripple/ripple.d.ts +1 -10
  115. package/labs/gb/components/ripple/ripple.js +28 -32
  116. package/labs/gb/components/ripple/ripple.js.map +1 -1
  117. package/labs/gb/components/shared/directives.d.ts +93 -0
  118. package/labs/gb/components/shared/directives.js +111 -0
  119. package/labs/gb/components/shared/directives.js.map +1 -0
  120. package/labs/gb/components/shared/has-slotted.d.ts +10 -0
  121. package/labs/gb/components/shared/has-slotted.js +19 -0
  122. package/labs/gb/components/shared/has-slotted.js.map +1 -0
  123. package/labs/gb/components/shared/pseudo-classes.d.ts +7 -0
  124. package/labs/gb/components/shared/pseudo-classes.js +9 -0
  125. package/labs/gb/components/shared/pseudo-classes.js.map +1 -1
  126. package/labs/gb/components/splitbutton/_split-button-tokens.scss +135 -0
  127. package/labs/gb/components/splitbutton/md-split-button.d.ts +26 -0
  128. package/labs/gb/components/splitbutton/md-split-button.js +119 -0
  129. package/labs/gb/components/splitbutton/md-split-button.js.map +1 -0
  130. package/labs/gb/components/splitbutton/split-button.css +4 -0
  131. package/labs/gb/components/splitbutton/split-button.css.map +1 -0
  132. package/labs/gb/components/splitbutton/split-button.cssresult.d.ts +3 -0
  133. package/labs/gb/components/splitbutton/split-button.cssresult.js +14 -0
  134. package/labs/gb/components/splitbutton/split-button.cssresult.js.map +1 -0
  135. package/labs/gb/components/splitbutton/split-button.d.ts +47 -0
  136. package/labs/gb/components/splitbutton/split-button.js +46 -0
  137. package/labs/gb/components/splitbutton/split-button.js.map +1 -0
  138. package/labs/gb/components/splitbutton/split-button.scss +164 -0
  139. package/labs/gb/components/switch/_switch-tokens.scss +56 -0
  140. package/labs/gb/components/switch/md-switch.d.ts +66 -0
  141. package/labs/gb/components/switch/md-switch.js +162 -0
  142. package/labs/gb/components/switch/md-switch.js.map +1 -0
  143. package/labs/gb/components/switch/switch.css +4 -0
  144. package/labs/gb/components/switch/switch.css.map +1 -0
  145. package/labs/gb/components/switch/switch.cssresult.d.ts +3 -0
  146. package/labs/gb/components/switch/switch.cssresult.js +14 -0
  147. package/labs/gb/components/switch/switch.cssresult.js.map +1 -0
  148. package/labs/gb/components/switch/switch.d.ts +54 -0
  149. package/labs/gb/components/switch/switch.js +85 -0
  150. package/labs/gb/components/switch/switch.js.map +1 -0
  151. package/labs/gb/components/switch/switch.scss +109 -0
  152. package/labs/gb/styles/icon/md-icon.css +1 -1
  153. package/labs/gb/styles/icon/md-icon.css.map +1 -1
  154. package/labs/gb/styles/icon/md-icon.cssresult.js +1 -1
  155. package/labs/gb/styles/icon/md-icon.cssresult.js.map +1 -1
  156. package/labs/gb/styles/icon/md-icon.d.ts +20 -0
  157. package/labs/gb/styles/icon/md-icon.js +24 -0
  158. package/labs/gb/styles/icon/md-icon.js.map +1 -0
  159. package/labs/gb/styles/icon/md-icon.scss +2 -1
  160. package/labs/gb/styles/m3.css +5 -2
  161. package/labs/gb/styles/m3.css.map +1 -1
  162. package/labs/gb/styles/m3.cssresult.js +5 -2
  163. package/labs/gb/styles/m3.cssresult.js.map +1 -1
  164. package/labs/gb/styles/m3.scss +1 -0
  165. package/labs/gb/styles/space/md-space-tokens.css +4 -0
  166. package/labs/gb/styles/space/md-space-tokens.css.map +1 -0
  167. package/labs/gb/styles/space/md-space-tokens.cssresult.d.ts +3 -0
  168. package/labs/gb/styles/space/md-space-tokens.cssresult.js +14 -0
  169. package/labs/gb/styles/space/md-space-tokens.cssresult.js.map +1 -0
  170. package/labs/gb/styles/space/md-space-tokens.scss +28 -0
  171. package/labs/gb/styles/tailwind.css +4 -0
  172. package/labs/gb/styles/tailwind.css.map +1 -0
  173. package/labs/gb/styles/tailwind.cssresult.d.ts +3 -0
  174. package/labs/gb/styles/tailwind.cssresult.js +14 -0
  175. package/labs/gb/styles/tailwind.cssresult.js.map +1 -0
  176. package/labs/gb/styles/tailwind.scss +250 -0
  177. package/labs/gb/styles/typography/internal/_typography-tokens.scss +85 -16
  178. package/labs/gb/styles/typography/md-typography-tokens.css +1 -1
  179. package/labs/gb/styles/typography/md-typography-tokens.css.map +1 -1
  180. package/labs/gb/styles/typography/md-typography-tokens.cssresult.js +1 -1
  181. package/labs/gb/styles/typography/md-typography-tokens.cssresult.js.map +1 -1
  182. package/list/internal/listitem/list-item.d.ts +2 -0
  183. package/menu/internal/menuitem/menu-item.d.ts +2 -0
  184. package/package.json +7 -3
  185. package/radio/internal/radio.d.ts +0 -2
  186. package/radio/internal/radio.js.map +1 -1
  187. package/select/internal/select.d.ts +2 -2
  188. package/select/internal/select.js.map +1 -1
  189. package/select/internal/selectoption/select-option.d.ts +2 -0
  190. package/slider/internal/slider.d.ts +0 -2
  191. package/slider/internal/slider.js.map +1 -1
  192. package/switch/internal/_switch.scss +1 -0
  193. package/switch/internal/switch-styles.css +1 -1
  194. package/switch/internal/switch-styles.css.map +1 -1
  195. package/switch/internal/switch-styles.cssresult.js +1 -1
  196. package/switch/internal/switch-styles.cssresult.js.map +1 -1
  197. package/switch/internal/switch.d.ts +0 -2
  198. package/switch/internal/switch.js.map +1 -1
@@ -0,0 +1,250 @@
1
+ /*!
2
+ * Copyright 2026 Google LLC
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+
6
+ // stylelint-disable scss/at-rule-no-unknown -- Uses TailwindCSS at-rules.
7
+
8
+ // Cascade `md` layer between `base` reset styles and `utilities` for overrides.
9
+ @layer theme, base, md, components, utilities;
10
+ @theme inline {
11
+ // Color
12
+ #{'--color-*'}: initial; // Do not use Tailwind's default color utilities.
13
+ --color-primary: var(--md-sys-color-primary);
14
+ --color-on-primary: var(--md-sys-color-on-primary);
15
+ --color-primary-container: var(--md-sys-color-primary-container);
16
+ --color-on-primary-container: var(--md-sys-color-on-primary-container);
17
+ --color-primary-fixed: var(--md-sys-color-primary-fixed);
18
+ --color-primary-fixed-dim: var(--md-sys-color-primary-fixed-dim);
19
+ --color-on-primary-fixed: var(--md-sys-color-on-primary-fixed);
20
+ --color-on-primary-fixed-variant: var(
21
+ --md-sys-color-on-primary-fixed-variant
22
+ );
23
+ --color-secondary: var(--md-sys-color-secondary);
24
+ --color-on-secondary: var(--md-sys-color-on-secondary);
25
+ --color-secondary-container: var(--md-sys-color-secondary-container);
26
+ --color-on-secondary-container: var(--md-sys-color-on-secondary-container);
27
+ --color-secondary-fixed: var(--md-sys-color-secondary-fixed);
28
+ --color-secondary-fixed-dim: var(--md-sys-color-secondary-fixed-dim);
29
+ --color-on-secondary-fixed: var(--md-sys-color-on-secondary-fixed);
30
+ --color-on-secondary-fixed-variant: var(
31
+ --md-sys-color-on-secondary-fixed-variant
32
+ );
33
+ --color-tertiary: var(--md-sys-color-tertiary);
34
+ --color-on-tertiary: var(--md-sys-color-on-tertiary);
35
+ --color-tertiary-container: var(--md-sys-color-tertiary-container);
36
+ --color-on-tertiary-container: var(--md-sys-color-on-tertiary-container);
37
+ --color-tertiary-fixed: var(--md-sys-color-tertiary-fixed);
38
+ --color-tertiary-fixed-dim: var(--md-sys-color-tertiary-fixed-dim);
39
+ --color-on-tertiary-fixed: var(--md-sys-color-on-tertiary-fixed);
40
+ --color-on-tertiary-fixed-variant: var(
41
+ --md-sys-color-on-tertiary-fixed-variant
42
+ );
43
+ --color-error: var(--md-sys-color-error);
44
+ --color-on-error: var(--md-sys-color-on-error);
45
+ --color-error-container: var(--md-sys-color-error-container);
46
+ --color-on-error-container: var(--md-sys-color-on-error-container);
47
+ --color-surface: var(--md-sys-color-surface);
48
+ --color-surface-dim: var(--md-sys-color-surface-dim);
49
+ --color-surface-bright: var(--md-sys-color-surface-bright);
50
+ --color-surface-container-lowest: var(
51
+ --md-sys-color-surface-container-lowest
52
+ );
53
+ --color-surface-container-low: var(--md-sys-color-surface-container-low);
54
+ --color-surface-container: var(--md-sys-color-surface-container);
55
+ --color-surface-container-high: var(--md-sys-color-surface-container-high);
56
+ --color-surface-container-highest: var(
57
+ --md-sys-color-surface-container-highest
58
+ );
59
+ --color-on-surface: var(--md-sys-color-on-surface);
60
+ --color-on-surface-variant: var(--md-sys-color-on-surface-variant);
61
+ --color-outline: var(--md-sys-color-outline);
62
+ --color-outline-variant: var(--md-sys-color-outline-variant);
63
+ --color-inverse-surface: var(--md-sys-color-inverse-surface);
64
+ --color-inverse-on-surface: var(--md-sys-color-inverse-on-surface);
65
+ --color-inverse-primary: var(--md-sys-color-inverse-primary);
66
+ --color-scrim: var(--md-sys-color-scrim);
67
+ --color-shadow: var(--md-sys-color-shadow);
68
+
69
+ // Typography
70
+ #{'--font-*'}: initial; // Do not use Tailwind's default font utilities.
71
+ --font-brand: var(--md-ref-typeface-brand);
72
+ --font-plain: var(--md-ref-typeface-plain);
73
+ --font-weight-normal: var(--md-ref-typeface-weight-regular);
74
+ --font-weight-medium: var(--md-ref-typeface-weight-medium);
75
+ --font-weight-bold: var(--md-ref-typeface-weight-bold);
76
+ #{'--text-*'}: initial; // Do not use Tailwind's default text utilities.
77
+ #{'--tracking-*'}: initial;
78
+ #{'--leading-*'}: initial;
79
+ // Use the `typescale-<name>-<size>` utility to apply typography tokens.
80
+ --typescale-label-sm: var(--md-sys-typescale-label-sm);
81
+ --typescale-label-sm-tracking: var(--md-sys-typescale-label-sm-tracking);
82
+ --typescale-label-sm-axes: var(--md-sys-typescale-label-sm-axes);
83
+ --typescale-label-md: var(--md-sys-typescale-label-md);
84
+ --typescale-label-md-tracking: var(--md-sys-typescale-label-md-tracking);
85
+ --typescale-label-md-axes: var(--md-sys-typescale-label-md-axes);
86
+ --typescale-label-lg: var(--md-sys-typescale-label-lg);
87
+ --typescale-label-lg-tracking: var(--md-sys-typescale-label-lg-tracking);
88
+ --typescale-label-lg-axes: var(--md-sys-typescale-label-lg-axes);
89
+ --typescale-body-sm: var(--md-sys-typescale-body-sm);
90
+ --typescale-body-sm-tracking: var(--md-sys-typescale-body-sm-tracking);
91
+ --typescale-body-sm-axes: var(--md-sys-typescale-body-sm-axes);
92
+ --typescale-body-md: var(--md-sys-typescale-body-md);
93
+ --typescale-body-md-tracking: var(--md-sys-typescale-body-md-tracking);
94
+ --typescale-body-md-axes: var(--md-sys-typescale-body-md-axes);
95
+ --typescale-body-lg: var(--md-sys-typescale-body-lg);
96
+ --typescale-body-lg-tracking: var(--md-sys-typescale-body-lg-tracking);
97
+ --typescale-body-lg-axes: var(--md-sys-typescale-body-lg-axes);
98
+ --typescale-title-sm: var(--md-sys-typescale-title-sm);
99
+ --typescale-title-sm-tracking: var(--md-sys-typescale-title-sm-tracking);
100
+ --typescale-title-sm-axes: var(--md-sys-typescale-title-sm-axes);
101
+ --typescale-title-md: var(--md-sys-typescale-title-md);
102
+ --typescale-title-md-tracking: var(--md-sys-typescale-title-md-tracking);
103
+ --typescale-title-md-axes: var(--md-sys-typescale-title-md-axes);
104
+ --typescale-title-lg: var(--md-sys-typescale-title-lg);
105
+ --typescale-title-lg-tracking: var(--md-sys-typescale-title-lg-tracking);
106
+ --typescale-title-lg-axes: var(--md-sys-typescale-title-lg-axes);
107
+ --typescale-headline-sm: var(--md-sys-typescale-headline-sm);
108
+ --typescale-headline-sm-tracking: var(
109
+ --md-sys-typescale-headline-sm-tracking
110
+ );
111
+ --typescale-headline-sm-axes: var(--md-sys-typescale-headline-sm-axes);
112
+ --typescale-headline-md: var(--md-sys-typescale-headline-md);
113
+ --typescale-headline-md-tracking: var(
114
+ --md-sys-typescale-headline-md-tracking
115
+ );
116
+ --typescale-headline-md-axes: var(--md-sys-typescale-headline-md-axes);
117
+ --typescale-headline-lg: var(--md-sys-typescale-headline-lg);
118
+ --typescale-headline-lg-tracking: var(
119
+ --md-sys-typescale-headline-lg-tracking
120
+ );
121
+ --typescale-headline-lg-axes: var(--md-sys-typescale-headline-lg-axes);
122
+ --typescale-display-sm: var(--md-sys-typescale-display-sm);
123
+ --typescale-display-sm-tracking: var(--md-sys-typescale-display-sm-tracking);
124
+ --typescale-display-sm-axes: var(--md-sys-typescale-display-sm-axes);
125
+ --typescale-display-md: var(--md-sys-typescale-display-md);
126
+ --typescale-display-md-tracking: var(--md-sys-typescale-display-md-tracking);
127
+ --typescale-display-md-axes: var(--md-sys-typescale-display-md-axes);
128
+ --typescale-display-lg: var(--md-sys-typescale-display-lg);
129
+ --typescale-display-lg-tracking: var(--md-sys-typescale-display-lg-tracking);
130
+ --typescale-display-lg-axes: var(--md-sys-typescale-display-lg-axes);
131
+ --typescale-emphasized-label-sm: var(--md-sys-typescale-emphasized-label-sm);
132
+ --typescale-emphasized-label-sm-axes: var(
133
+ --md-sys-typescale-emphasized-label-sm-axes
134
+ );
135
+ --typescale-emphasized-label-md: var(--md-sys-typescale-emphasized-label-md);
136
+ --typescale-emphasized-label-md-axes: var(
137
+ --md-sys-typescale-emphasized-label-md-axes
138
+ );
139
+ --typescale-emphasized-label-lg: var(--md-sys-typescale-emphasized-label-lg);
140
+ --typescale-emphasized-label-lg-axes: var(
141
+ --md-sys-typescale-emphasized-label-lg-axes
142
+ );
143
+ --typescale-emphasized-body-sm: var(--md-sys-typescale-emphasized-body-sm);
144
+ --typescale-emphasized-body-sm-axes: var(
145
+ --md-sys-typescale-emphasized-body-sm-axes
146
+ );
147
+ --typescale-emphasized-body-md: var(--md-sys-typescale-emphasized-body-md);
148
+ --typescale-emphasized-body-md-axes: var(
149
+ --md-sys-typescale-emphasized-body-md-axes
150
+ );
151
+ --typescale-emphasized-body-lg: var(--md-sys-typescale-emphasized-body-lg);
152
+ --typescale-emphasized-body-lg-axes: var(
153
+ --md-sys-typescale-emphasized-body-lg-axes
154
+ );
155
+ --typescale-emphasized-title-sm: var(--md-sys-typescale-emphasized-title-sm);
156
+ --typescale-emphasized-title-sm-axes: var(
157
+ --md-sys-typescale-emphasized-title-sm-axes
158
+ );
159
+ --typescale-emphasized-title-md: var(--md-sys-typescale-emphasized-title-md);
160
+ --typescale-emphasized-title-md-axes: var(
161
+ --md-sys-typescale-emphasized-title-md-axes
162
+ );
163
+ --typescale-emphasized-title-lg: var(--md-sys-typescale-emphasized-title-lg);
164
+ --typescale-emphasized-title-lg-axes: var(
165
+ --md-sys-typescale-emphasized-title-lg-axes
166
+ );
167
+ --typescale-emphasized-headline-sm: var(
168
+ --md-sys-typescale-emphasized-headline-sm
169
+ );
170
+ --typescale-emphasized-headline-sm-axes: var(
171
+ --md-sys-typescale-emphasized-headline-sm-axes
172
+ );
173
+ --typescale-emphasized-headline-md: var(
174
+ --md-sys-typescale-emphasized-headline-md
175
+ );
176
+ --typescale-emphasized-headline-md-axes: var(
177
+ --md-sys-typescale-emphasized-headline-md-axes
178
+ );
179
+ --typescale-emphasized-headline-lg: var(
180
+ --md-sys-typescale-emphasized-headline-lg
181
+ );
182
+ --typescale-emphasized-headline-lg-axes: var(
183
+ --md-sys-typescale-emphasized-headline-lg-axes
184
+ );
185
+ --typescale-emphasized-display-sm: var(
186
+ --md-sys-typescale-emphasized-display-sm
187
+ );
188
+ --typescale-emphasized-display-sm-axes: var(
189
+ --md-sys-typescale-emphasized-display-sm-axes
190
+ );
191
+ --typescale-emphasized-display-md: var(
192
+ --md-sys-typescale-emphasized-display-md
193
+ );
194
+ --typescale-emphasized-display-md-axes: var(
195
+ --md-sys-typescale-emphasized-display-md-axes
196
+ );
197
+ --typescale-emphasized-display-lg: var(
198
+ --md-sys-typescale-emphasized-display-lg
199
+ );
200
+ --typescale-emphasized-display-lg-axes: var(
201
+ --md-sys-typescale-emphasized-display-lg-axes
202
+ );
203
+
204
+ // Shape
205
+ --radius-xs: var(--md-sys-shape-corner-xs);
206
+ --radius-sm: var(--md-sys-shape-corner-sm);
207
+ --radius-md: var(--md-sys-shape-corner-md);
208
+ --radius-lg: var(--md-sys-shape-corner-lg);
209
+ --radius-xl: var(--md-sys-shape-corner-lg-increased);
210
+ --radius-2xl: var(--md-sys-shape-corner-xl);
211
+ --radius-3xl: var(--md-sys-shape-corner-xl-increased);
212
+ --radius-4xl: var(--md-sys-shape-corner-xxl);
213
+
214
+ // Elevation
215
+ --shadow-2xs: initial; // Material does not have a 2xs shadow.
216
+ --shadow-xs: var(--md-sys-elevation-shadow-1);
217
+ --shadow-sm: var(--md-sys-elevation-shadow-2);
218
+ --shadow-md: var(--md-sys-elevation-shadow-3);
219
+ --shadow-lg: var(--md-sys-elevation-shadow-4);
220
+ --shadow-xl: var(--md-sys-elevation-shadow-5);
221
+ --shadow-2xl: initial; // Material does not have a 2xl shadow.
222
+
223
+ // Space
224
+ --spacing: var(--md-sys-space-unit);
225
+
226
+ // Breakpoints
227
+ --breakpoint-sm: 600px; // medium
228
+ --breakpoint-md: 840px; // expanded
229
+ --breakpoint-lg: 1200px; // large
230
+ --breakpoint-xl: 1600px; // extra-large
231
+ --breakpoint-2xl: initial; // Material does not have a 2xl breakpoint.
232
+ }
233
+
234
+ // Use the `typescale-<name>-<size>` utility to apply typography tokens.
235
+ @utility typescale-* {
236
+ font: #{'--value(--typescale-*)'};
237
+ letter-spacing: #{'--value(--typescale-*-tracking)'};
238
+ font-variation-settings: #{'--value(--typescale-*-axes)'};
239
+ }
240
+ @utility typescale-emphasized-* {
241
+ font: #{'--value(--typescale-emphasized-*)'};
242
+ letter-spacing: #{'--value(--typescale-*-tracking)'};
243
+ font-variation-settings: #{'--value(--typescale-emphasized-*-axes)'};
244
+ }
245
+
246
+ // Override Tailwind's default `display: list-item` utility, which clashes
247
+ // with the `.list-item` component class.
248
+ @utility list-item {
249
+ display: flex;
250
+ }
@@ -4,17 +4,24 @@
4
4
  //
5
5
 
6
6
  // go/keep-sorted start by_regex='(.+) prefix_order=sass:
7
+ @use 'sass:list';
7
8
  @use 'sass:map';
8
9
  @use 'sass:meta';
10
+ @use 'sass:string';
9
11
  @use '../../../../../sass/ext/map_ext';
10
12
  @use '../../../../../tokens/versions/latest/sass/md-ref-typeface';
11
13
  @use '../../../../../tokens/versions/latest/sass/md-sys-typescale';
14
+ @use '../../../../../tokens/versions/latest/sass/md-sys-typescale-emphasized';
15
+ @use '../../../../../tokens/versions/latest/sass/md-sys-typescale-emphasized-meta';
12
16
  @use '../../../../../tokens/versions/latest/sass/md-sys-typescale-meta';
13
17
  // go/keep-sorted end
14
18
 
15
19
  @mixin emit-custom-properties(
16
20
  $typescale-vars: meta.module-variables(md-sys-typescale),
17
21
  $typescale-meta: meta.module-variables(md-sys-typescale-meta),
22
+ $typescale-emphasized-vars: meta.module-variables(md-sys-typescale-emphasized),
23
+ $typescale-emphasized-meta:
24
+ meta.module-variables(md-sys-typescale-emphasized-meta),
18
25
  $typeface-vars:
19
26
  map.merge(
20
27
  meta.module-variables(md-ref-typeface),
@@ -55,26 +62,88 @@
55
62
  @each $scale in $scales {
56
63
  @each $long-size, $short-size in $sizes {
57
64
  $typescale: '#{$scale}-#{$long-size}';
58
- $weight: map_ext.get-strict(
59
- $typescale-meta,
60
- '#{$typescale}-weight--resolved'
61
- );
62
- $size: map_ext.get-strict($typescale-vars, '#{$typescale}-size');
63
- $line-height: map_ext.get-strict(
64
- $typescale-vars,
65
- '#{$typescale}-line-height'
65
+
66
+ $font: _font($typescale, $typescale-vars, $typescale-meta);
67
+ $tracking: map_ext.get-strict($typescale-vars, '#{$typescale}-tracking');
68
+ $axes: _axes($typescale, $typescale-vars);
69
+ $emphasized-font: _font(
70
+ $typescale,
71
+ $typescale-emphasized-vars,
72
+ $typescale-emphasized-meta
66
73
  );
67
- $font: map_ext.get-strict(
68
- $typescale-meta,
69
- '#{$typescale}-font--resolved'
74
+ $emphasized-axes: _axes-emphasized(
75
+ $typescale,
76
+ $typescale-emphasized-vars
70
77
  );
71
- $tracking: map_ext.get-strict($typescale-vars, '#{$typescale}-tracking');
72
78
 
73
- --md-sys-typescale-#{$scale}-#{$short-size}: #{$weight}
74
- #{$size} /
75
- #{$line-height}
76
- #{$font};
79
+ --md-sys-typescale-#{$scale}-#{$short-size}: #{$font};
77
80
  --md-sys-typescale-#{$scale}-#{$short-size}-tracking: #{$tracking};
81
+ --md-sys-typescale-#{$scale}-#{$short-size}-axes: #{$axes};
82
+ --md-sys-typescale-emphasized-#{$scale}-#{$short-size}: #{$emphasized-font};
83
+ --md-sys-typescale-emphasized-#{$scale}-#{$short-size}-axes: #{$emphasized-axes};
78
84
  }
79
85
  }
80
86
  }
87
+
88
+ /// Returns the `font` shorthand for a typescale from the provided token and
89
+ /// metadata variable maps.
90
+ @function _font($typescale, $vars, $meta) {
91
+ $weight: map_ext.get-strict($meta, '#{$typescale}-weight--resolved');
92
+ $size: map_ext.get-strict($vars, '#{$typescale}-size');
93
+ $line-height: map_ext.get-strict($vars, '#{$typescale}-line-height');
94
+ $family: map_ext.get-strict($meta, '#{$typescale}-font--resolved');
95
+ @return #{$weight} #{$size} / #{$line-height} #{$family};
96
+ }
97
+
98
+ /// Returns the `font-variation-settings` value for a typescale from the
99
+ /// provided token variable map. Returns `normal` if no axes are changed from
100
+ /// their default values.
101
+ @function _axes($typescale, $vars) {
102
+ $axes: ();
103
+ $axes: _append-axis($axes, map_ext.get-strict($vars, '#{$typescale}-rond'));
104
+ $axes: _append-axis($axes, map_ext.get-strict($vars, '#{$typescale}-grad'));
105
+ @if list.length($axes) == 0 {
106
+ @return normal;
107
+ }
108
+ @return $axes;
109
+ }
110
+
111
+ // TODO: Remove this function once emphasized tokens are fixed to use `'ROND' 100`
112
+ @function _axes-emphasized($typescale, $vars) {
113
+ $axes: ();
114
+ $axes: _append-axis($axes, ('ROND' 100));
115
+ $axes: _append-axis($axes, map_ext.get-strict($vars, '#{$typescale}-grad'));
116
+ @return $axes;
117
+ }
118
+
119
+ /// Appends a font axis to a list if it is not the default value for the axis.
120
+ @function _append-axis($axes, $axis) {
121
+ // Not all axes from Carbon are supported in gBreeze.
122
+ // - 'opsz': use `font-size`
123
+ // - 'slnt': use `font-style`
124
+ // - 'wdth': use `font-stretch`/`font-width`
125
+ // - 'wght': use `font-weight`
126
+ $default-axes: (
127
+ 'ROND': 0,
128
+ 'GRAD': 0,
129
+ // These axes are unused in Material, but included for Carbon completeness.
130
+ 'CRSV': 0,
131
+ 'FILL': 0,
132
+ 'HEXP': 0,
133
+ );
134
+ $axis-tag: list.nth($axis, 1);
135
+ $axis-value: list.nth($axis, 2);
136
+ @if not map.has-key($default-axes, $axis-tag) {
137
+ // Do not append unsupported axes.
138
+ @return $axes;
139
+ }
140
+ @if map.get($default-axes, $axis-tag) == $axis-value {
141
+ // Do not append axes with default values.
142
+ @return $axes;
143
+ }
144
+
145
+ // Manually add quotes since Sass removes them for custom property values,
146
+ // even with string.quote().
147
+ $axis: '"#{$axis-tag}" #{$axis-value}';
148
+ @return list.append($axes, $axis, $separator: comma);
149
+ }
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Copyright 2026 Google LLC
3
3
  * SPDX-License-Identifier: Apache-2.0
4
- */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem / 1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem / 2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem / 2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem / 2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem / 2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem / 3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem / 4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem}}/*# sourceMappingURL=md-typography-tokens.css.map */
4
+ */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-sm-axes: normal;--md-sys-typescale-emphasized-label-sm: var(--md-ref-typeface-weight-bold) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-sm-axes: "ROND" 100;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-md-axes: normal;--md-sys-typescale-emphasized-label-md: var(--md-ref-typeface-weight-bold) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-md-axes: "ROND" 100;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-label-lg-axes: normal;--md-sys-typescale-emphasized-label-lg: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-lg-axes: "ROND" 100;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-sm-axes: normal;--md-sys-typescale-emphasized-body-sm: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-sm-axes: "ROND" 100;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-md-axes: normal;--md-sys-typescale-emphasized-body-md: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-md-axes: "ROND" 100;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-body-lg-axes: normal;--md-sys-typescale-emphasized-body-lg: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-lg-axes: "ROND" 100;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-sm-axes: normal;--md-sys-typescale-emphasized-title-sm: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-sm-axes: "ROND" 100;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-md-axes: normal;--md-sys-typescale-emphasized-title-md: var(--md-ref-typeface-weight-bold) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-md-axes: "ROND" 100;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-title-lg-axes: normal;--md-sys-typescale-emphasized-title-lg: var(--md-ref-typeface-weight-medium) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-title-lg-axes: "ROND" 100;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-sm-axes: normal;--md-sys-typescale-emphasized-headline-sm: var(--md-ref-typeface-weight-medium) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-sm-axes: "ROND" 100;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-md-axes: normal;--md-sys-typescale-emphasized-headline-md: var(--md-ref-typeface-weight-medium) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-md-axes: "ROND" 100;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-headline-lg-axes: normal;--md-sys-typescale-emphasized-headline-lg: var(--md-ref-typeface-weight-medium) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-lg-axes: "ROND" 100;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-sm-axes: normal;--md-sys-typescale-emphasized-display-sm: var(--md-ref-typeface-weight-medium) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-sm-axes: "ROND" 100;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-md-axes: normal;--md-sys-typescale-emphasized-display-md: var(--md-ref-typeface-weight-medium) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-md-axes: "ROND" 100;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem;--md-sys-typescale-display-lg-axes: normal;--md-sys-typescale-emphasized-display-lg: var(--md-ref-typeface-weight-medium) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-lg-axes: "ROND" 100}}/*# sourceMappingURL=md-typography-tokens.css.map */
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["md-typography-tokens.scss","internal/_typography-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GASA,wBACE,MCsBA,sDACA,+EACA,sCAIA,qCAIA,mCA8BI,gHAIA,iDAJA,8GAIA,iDAJA,kHAIA,iDAJA,8GAIA,8CAJA,kHAIA,iDAJA,6GAIA,gDAJA,kHAIA,iDAJA,6GAIA,kDAJA,mHAIA,2CAJA,iHAIA,8CAJA,qHAIA,8CAJA,iHAIA,8CAJA,oHAIA,6CAJA,sHAIA,6CAJA,mHAIA","file":"md-typography-tokens.css"}
1
+ {"version":3,"sourceRoot":"","sources":["md-typography-tokens.scss","internal/_typography-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GASA,wBACE,MC6BA,sDACA,+EACA,sCAIA,qCAIA,mCA6BI,8GACA,iDACA,yCACA,uHACA,wDAJA,4GACA,iDACA,yCACA,qHACA,wDAJA,gHACA,iDACA,yCACA,yHACA,wDAJA,4GACA,8CACA,wCACA,sHACA,uDAJA,gHACA,iDACA,wCACA,0HACA,uDAJA,2GACA,gDACA,wCACA,qHACA,uDAJA,gHACA,iDACA,yCACA,yHACA,wDAJA,2GACA,kDACA,yCACA,oHACA,wDAJA,iHACA,2CACA,yCACA,2HACA,wDAJA,+GACA,8CACA,4CACA,yHACA,2DAJA,mHACA,8CACA,4CACA,6HACA,2DAJA,+GACA,8CACA,4CACA,yHACA,2DAJA,kHACA,6CACA,2CACA,4HACA,0DAJA,oHACA,6CACA,2CACA,8HACA,0DAJA,iHACA,qDACA,2CACA,2HACA","file":"md-typography-tokens.css"}
@@ -8,7 +8,7 @@ import { css } from 'lit';
8
8
  export const styles = css `/*!
9
9
  * Copyright 2026 Google LLC
10
10
  * SPDX-License-Identifier: Apache-2.0
11
- */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem / 1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem / 2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem / 2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem / 2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem / 2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem / 3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem / 4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem}}
11
+ */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-sm-axes: normal;--md-sys-typescale-emphasized-label-sm: var(--md-ref-typeface-weight-bold) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-sm-axes: "ROND" 100;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-md-axes: normal;--md-sys-typescale-emphasized-label-md: var(--md-ref-typeface-weight-bold) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-md-axes: "ROND" 100;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-label-lg-axes: normal;--md-sys-typescale-emphasized-label-lg: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-lg-axes: "ROND" 100;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-sm-axes: normal;--md-sys-typescale-emphasized-body-sm: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-sm-axes: "ROND" 100;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-md-axes: normal;--md-sys-typescale-emphasized-body-md: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-md-axes: "ROND" 100;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-body-lg-axes: normal;--md-sys-typescale-emphasized-body-lg: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-lg-axes: "ROND" 100;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-sm-axes: normal;--md-sys-typescale-emphasized-title-sm: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-sm-axes: "ROND" 100;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-md-axes: normal;--md-sys-typescale-emphasized-title-md: var(--md-ref-typeface-weight-bold) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-md-axes: "ROND" 100;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-title-lg-axes: normal;--md-sys-typescale-emphasized-title-lg: var(--md-ref-typeface-weight-medium) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-title-lg-axes: "ROND" 100;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-sm-axes: normal;--md-sys-typescale-emphasized-headline-sm: var(--md-ref-typeface-weight-medium) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-sm-axes: "ROND" 100;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-md-axes: normal;--md-sys-typescale-emphasized-headline-md: var(--md-ref-typeface-weight-medium) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-md-axes: "ROND" 100;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-headline-lg-axes: normal;--md-sys-typescale-emphasized-headline-lg: var(--md-ref-typeface-weight-medium) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-lg-axes: "ROND" 100;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-sm-axes: normal;--md-sys-typescale-emphasized-display-sm: var(--md-ref-typeface-weight-medium) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-sm-axes: "ROND" 100;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-md-axes: normal;--md-sys-typescale-emphasized-display-md: var(--md-ref-typeface-weight-medium) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-md-axes: "ROND" 100;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem;--md-sys-typescale-display-lg-axes: normal;--md-sys-typescale-emphasized-display-lg: var(--md-ref-typeface-weight-medium) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-lg-axes: "ROND" 100}}
12
12
  `;
13
13
  export default styles.styleSheet;
14
14
  //# sourceMappingURL=md-typography-tokens.cssresult.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"md-typography-tokens.cssresult.js","sourceRoot":"","sources":["md-typography-tokens.cssresult.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iFAAiF;AACjF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;CAIxB,CAAC;AACF,eAAe,MAAM,CAAC,UAAW,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/gb/styles/typography/md-typography-tokens.css.\nimport {css} from 'lit';\nexport const styles = css`/*!\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem / 1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem / 1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem / 1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem / 1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem / 2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem / 2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem / 2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem / 2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem / 3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem / 4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem}}\n`;\nexport default styles.styleSheet!;\n"]}
1
+ {"version":3,"file":"md-typography-tokens.cssresult.js","sourceRoot":"","sources":["md-typography-tokens.cssresult.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iFAAiF;AACjF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;CAIxB,CAAC;AACF,eAAe,MAAM,CAAC,UAAW,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/gb/styles/typography/md-typography-tokens.css.\nimport {css} from 'lit';\nexport const styles = css`/*!\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */@layer md.sys.typescale{:root{--md-ref-typeface-brand: var(--md-ref-typeface-plain);--md-ref-typeface-plain: Roboto Flex, Roboto, Noto Sans, system-ui, sans-serif;--md-ref-typeface-weight-regular: 400;--md-ref-typeface-weight-medium: 500;--md-ref-typeface-weight-bold: 700;--md-sys-typescale-label-sm: var(--md-ref-typeface-weight-medium) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-sm-tracking: 0.03125rem;--md-sys-typescale-label-sm-axes: normal;--md-sys-typescale-emphasized-label-sm: var(--md-ref-typeface-weight-bold) 0.6875rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-sm-axes: \"ROND\" 100;--md-sys-typescale-label-md: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-label-md-tracking: 0.03125rem;--md-sys-typescale-label-md-axes: normal;--md-sys-typescale-emphasized-label-md: var(--md-ref-typeface-weight-bold) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-md-axes: \"ROND\" 100;--md-sys-typescale-label-lg: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-label-lg-tracking: 0.00625rem;--md-sys-typescale-label-lg-axes: normal;--md-sys-typescale-emphasized-label-lg: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-label-lg-axes: \"ROND\" 100;--md-sys-typescale-body-sm: var(--md-ref-typeface-weight-regular) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-body-sm-tracking: 0.025rem;--md-sys-typescale-body-sm-axes: normal;--md-sys-typescale-emphasized-body-sm: var(--md-ref-typeface-weight-medium) 0.75rem/1rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-sm-axes: \"ROND\" 100;--md-sys-typescale-body-md: var(--md-ref-typeface-weight-regular) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-body-md-tracking: 0.015625rem;--md-sys-typescale-body-md-axes: normal;--md-sys-typescale-emphasized-body-md: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-md-axes: \"ROND\" 100;--md-sys-typescale-body-lg: var(--md-ref-typeface-weight-regular) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-body-lg-tracking: 0.03125rem;--md-sys-typescale-body-lg-axes: normal;--md-sys-typescale-emphasized-body-lg: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-body-lg-axes: \"ROND\" 100;--md-sys-typescale-title-sm: var(--md-ref-typeface-weight-medium) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-title-sm-tracking: 0.00625rem;--md-sys-typescale-title-sm-axes: normal;--md-sys-typescale-emphasized-title-sm: var(--md-ref-typeface-weight-bold) 0.875rem/1.25rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-sm-axes: \"ROND\" 100;--md-sys-typescale-title-md: var(--md-ref-typeface-weight-medium) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-title-md-tracking: 0.009375rem;--md-sys-typescale-title-md-axes: normal;--md-sys-typescale-emphasized-title-md: var(--md-ref-typeface-weight-bold) 1rem/1.5rem var(--md-ref-typeface-plain);--md-sys-typescale-emphasized-title-md-axes: \"ROND\" 100;--md-sys-typescale-title-lg: var(--md-ref-typeface-weight-regular) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-title-lg-tracking: 0rem;--md-sys-typescale-title-lg-axes: normal;--md-sys-typescale-emphasized-title-lg: var(--md-ref-typeface-weight-medium) 1.375rem/1.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-title-lg-axes: \"ROND\" 100;--md-sys-typescale-headline-sm: var(--md-ref-typeface-weight-regular) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-sm-tracking: 0rem;--md-sys-typescale-headline-sm-axes: normal;--md-sys-typescale-emphasized-headline-sm: var(--md-ref-typeface-weight-medium) 1.5rem/2rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-sm-axes: \"ROND\" 100;--md-sys-typescale-headline-md: var(--md-ref-typeface-weight-regular) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-md-tracking: 0rem;--md-sys-typescale-headline-md-axes: normal;--md-sys-typescale-emphasized-headline-md: var(--md-ref-typeface-weight-medium) 1.75rem/2.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-md-axes: \"ROND\" 100;--md-sys-typescale-headline-lg: var(--md-ref-typeface-weight-regular) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-headline-lg-tracking: 0rem;--md-sys-typescale-headline-lg-axes: normal;--md-sys-typescale-emphasized-headline-lg: var(--md-ref-typeface-weight-medium) 2rem/2.5rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-headline-lg-axes: \"ROND\" 100;--md-sys-typescale-display-sm: var(--md-ref-typeface-weight-regular) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-display-sm-tracking: 0rem;--md-sys-typescale-display-sm-axes: normal;--md-sys-typescale-emphasized-display-sm: var(--md-ref-typeface-weight-medium) 2.25rem/2.75rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-sm-axes: \"ROND\" 100;--md-sys-typescale-display-md: var(--md-ref-typeface-weight-regular) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-display-md-tracking: 0rem;--md-sys-typescale-display-md-axes: normal;--md-sys-typescale-emphasized-display-md: var(--md-ref-typeface-weight-medium) 2.8125rem/3.25rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-md-axes: \"ROND\" 100;--md-sys-typescale-display-lg: var(--md-ref-typeface-weight-regular) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-display-lg-tracking: -0.015625rem;--md-sys-typescale-display-lg-axes: normal;--md-sys-typescale-emphasized-display-lg: var(--md-ref-typeface-weight-medium) 3.5625rem/4rem var(--md-ref-typeface-brand);--md-sys-typescale-emphasized-display-lg-axes: \"ROND\" 100}}\n`;\nexport default styles.styleSheet!;\n"]}
@@ -22,6 +22,8 @@ export declare class ListItemEl extends listItemBaseClass implements ListItem {
22
22
  /** @nocollapse */
23
23
  static shadowRootOptions: {
24
24
  delegatesFocus: boolean;
25
+ clonable?: boolean;
26
+ customElementRegistry?: CustomElementRegistry;
25
27
  mode: ShadowRootMode;
26
28
  serializable?: boolean;
27
29
  slotAssignment?: SlotAssignmentMode;
@@ -18,6 +18,8 @@ export declare class MenuItemEl extends menuItemBaseClass implements MenuItem {
18
18
  /** @nocollapse */
19
19
  static shadowRootOptions: {
20
20
  delegatesFocus: boolean;
21
+ clonable?: boolean;
22
+ customElementRegistry?: CustomElementRegistry;
21
23
  mode: ShadowRootMode;
22
24
  serializable?: boolean;
23
25
  slotAssignment?: SlotAssignmentMode;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@material/web",
3
- "version": "2.4.2-nightly.2fe7e22.0",
3
+ "version": "2.4.2-nightly.3758f46.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -58,11 +58,12 @@
58
58
  "catalog"
59
59
  ],
60
60
  "dependencies": {
61
+ "@lit/context": "^1.1.6",
61
62
  "lit": "^2.8.0 || ^3.0.0",
62
63
  "tslib": "^2.4.0"
63
64
  },
64
65
  "devDependencies": {
65
- "@lit-labs/analyzer": "^0.12.1",
66
+ "@lit-labs/analyzer": "^0.14.0",
66
67
  "@rollup/plugin-multi-entry": "^6.0.1",
67
68
  "@rollup/plugin-node-resolve": "^15.2.3",
68
69
  "@rollup/plugin-terser": "^0.4.4",
@@ -76,7 +77,7 @@
76
77
  "rollup": "^2.79.1",
77
78
  "sass": "^1.93.2",
78
79
  "sass-true": "^6.1.0",
79
- "typescript": "5.8.2",
80
+ "typescript": "5.9.2",
80
81
  "web-test-runner-jasmine": "^0.0.6",
81
82
  "wireit": "^0.14.12"
82
83
  },
@@ -100,6 +101,7 @@
100
101
  "**/*.ts",
101
102
  "!**/*.d.ts",
102
103
  "!**/*.cssresult.ts",
104
+ "!labs/gb/**",
103
105
  "!catalog/",
104
106
  "!scripts/"
105
107
  ],
@@ -111,6 +113,7 @@
111
113
  "!web-test-runner.config.js",
112
114
  "!commitlint.config.js",
113
115
  "!types/",
116
+ "!labs/gb/**",
114
117
  "!catalog/",
115
118
  "!scripts/"
116
119
  ],
@@ -148,6 +151,7 @@
148
151
  "**/*.cssresult.ts",
149
152
  "!catalog/"
150
153
  ],
154
+ "clean": "if-file-deleted",
151
155
  "dependencies": [
152
156
  "build:scripts",
153
157
  "build:sass"
@@ -43,8 +43,6 @@ export declare class Radio extends radioBaseClass {
43
43
  protected updated(): void;
44
44
  private handleClick;
45
45
  private handleKeydown;
46
- disabled: boolean;
47
- name: string;
48
46
  [getFormValue](): string;
49
47
  [getFormState](): string;
50
48
  formResetCallback(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"radio.js","sourceRoot":"","sources":["radio.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;AAEH,OAAO,8BAA8B,CAAC;AACtC,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAC,MAAM,KAAK,CAAC;AAC/C,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAErD,OAAO,EAAC,iBAAiB,EAAC,MAAM,gDAAgD,CAAC;AACjF,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,SAAS,EACT,qBAAqB,GACtB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAC,cAAc,EAAC,MAAM,mCAAmC,CAAC;AACjE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,mBAAmB,GACpB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAC,cAAc,EAAC,MAAM,oDAAoD,CAAC;AAElF,OAAO,EAAC,yBAAyB,EAAC,MAAM,kCAAkC,CAAC;AAE3E,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAClC,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,wCAAwC;AACxC,MAAM,cAAc,GAAG,yBAAyB,CAC9C,mBAAmB,CAAC,qBAAqB,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CACvE,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,OAAO,KAAM,SAAQ,cAAc;IAKvC;;OAEG;IAEH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,CAAC,OAAgB;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;QAChC,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,CAAC;IACjD,CAAC;IAkBD;QACE,KAAK,EAAE,CAAC;QAvCV,yEAAyE;QACzE,uEAAuE;QACtD,WAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC;QAoB9C,QAAS,GAAG,KAAK,CAAC;QAElB;;;WAGG;QACwB,aAAQ,GAAG,KAAK,CAAC;QAE5C;;WAEG;QACS,UAAK,GAAG,IAAI,CAAC;QAGR,wBAAmB,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAIzE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC;YAC/B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAEkB,MAAM;QACvB,MAAM,OAAO,GAAG,EAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAC,CAAC;QAC1C,OAAO,IAAI,CAAA;8BACe,QAAQ,CAAC,OAAO,CAAC;;;qBAG1B,IAAI;sBACH,IAAI,CAAC,QAAQ;oDACiB,IAAI;;sBAElC,IAAI,CAAC,MAAM;;;;;;;;;yBASR,IAAI,CAAC,MAAM;;;;;;KAM/B,CAAC;IACJ,CAAC;IAEkB,OAAO;QACxB,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAY;QACpC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,2DAA2D;QAC3D,MAAM,CAAC,CAAC;QACR,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;QAED,yDAAyD;QACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,CAChB,IAAI,UAAU,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CACzD,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,KAAoB;QAC9C,2DAA2D;QAC3D,MAAM,CAAC,CAAC;QACR,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAMQ,OA/FR,OAAO,EA+FE,YAAY,EAAC;QACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1C,CAAC;IAEQ,CAAC,YAAY,CAAC;QACrB,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAEQ,iBAAiB;QACxB,0EAA0E;QAC1E,mDAAmD;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAEQ,wBAAwB,CAAC,KAAa;QAC7C,IAAI,CAAC,OAAO,GAAG,KAAK,KAAK,MAAM,CAAC;IAClC,CAAC;IAEQ,CAAC,eAAe,CAAC;QACxB,OAAO,IAAI,cAAc,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,sEAAsE;gBACtE,2DAA2D;gBAC3D,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;YAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAA+B,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC;IAEQ,CAAC,iBAAiB,CAAC;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF;AA9IC;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;oCAGzB;AAkB0B;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;uCAAkB;AAKhC;IAAX,QAAQ,EAAE;oCAAc;AAEa;IAArC,KAAK,CAAC,YAAY,CAAC;wCAA0C","sourcesContent":["/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../focus/md-focus-ring.js';\nimport '../../ripple/ripple.js';\n\nimport {html, isServer, LitElement} from 'lit';\nimport {property, query} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\n\nimport {isActivationClick} from '../../internal/events/form-label-activation.js';\nimport {\n createValidator,\n getValidityAnchor,\n mixinConstraintValidation,\n} from '../../labs/behaviors/constraint-validation.js';\nimport {\n internals,\n mixinElementInternals,\n} from '../../labs/behaviors/element-internals.js';\nimport {mixinFocusable} from '../../labs/behaviors/focusable.js';\nimport {\n getFormState,\n getFormValue,\n mixinFormAssociated,\n} from '../../labs/behaviors/form-associated.js';\nimport {RadioValidator} from '../../labs/behaviors/validators/radio-validator.js';\n\nimport {SingleSelectionController} from './single-selection-controller.js';\n\nconst CHECKED = Symbol('checked');\nlet maskId = 0;\n\n// Separate variable needed for closure.\nconst radioBaseClass = mixinConstraintValidation(\n mixinFormAssociated(mixinElementInternals(mixinFocusable(LitElement))),\n);\n\n/**\n * A radio component.\n *\n * @fires input {InputEvent} Dispatched when the value changes from user\n * interaction. --bubbles\n * @fires change {Event} Dispatched when the value changes from user\n * interaction. --bubbles --composed\n */\nexport class Radio extends radioBaseClass {\n // Unique maskId is required because of a Safari bug that fail to persist\n // reference to the mask. This should be removed once the bug is fixed.\n private readonly maskId = `cutout${++maskId}`;\n\n /**\n * Whether or not the radio is selected.\n */\n @property({type: Boolean})\n get checked() {\n return this[CHECKED];\n }\n set checked(checked: boolean) {\n const wasChecked = this.checked;\n if (wasChecked === checked) {\n return;\n }\n\n this[CHECKED] = checked;\n this.requestUpdate('checked', wasChecked);\n this.selectionController.handleCheckedChange();\n }\n\n [CHECKED] = false;\n\n /**\n * Whether or not the radio is required. If any radio is required in a group,\n * all radios are implicitly required.\n */\n @property({type: Boolean}) required = false;\n\n /**\n * The element value to use in form submission when checked.\n */\n @property() value = 'on';\n\n @query('.container') private readonly container!: HTMLElement;\n private readonly selectionController = new SingleSelectionController(this);\n\n constructor() {\n super();\n this.addController(this.selectionController);\n if (!isServer) {\n this[internals].role = 'radio';\n this.addEventListener('click', this.handleClick.bind(this));\n this.addEventListener('keydown', this.handleKeydown.bind(this));\n }\n }\n\n protected override render() {\n const classes = {'checked': this.checked};\n return html`\n <div class=\"container ${classMap(classes)}\" aria-hidden=\"true\">\n <md-ripple\n part=\"ripple\"\n .control=${this}\n ?disabled=${this.disabled}></md-ripple>\n <md-focus-ring part=\"focus-ring\" .control=${this}></md-focus-ring>\n <svg class=\"icon\" viewBox=\"0 0 20 20\">\n <mask id=\"${this.maskId}\">\n <rect width=\"100%\" height=\"100%\" fill=\"white\" />\n <circle cx=\"10\" cy=\"10\" r=\"8\" fill=\"black\" />\n </mask>\n <circle\n class=\"outer circle\"\n cx=\"10\"\n cy=\"10\"\n r=\"10\"\n mask=\"url(#${this.maskId})\" />\n <circle class=\"inner circle\" cx=\"10\" cy=\"10\" r=\"5\" />\n </svg>\n\n <div class=\"touch-target\"></div>\n </div>\n `;\n }\n\n protected override updated() {\n this[internals].ariaChecked = String(this.checked);\n }\n\n private async handleClick(event: Event) {\n if (this.disabled) {\n return;\n }\n\n // allow event to propagate to user code after a microtask.\n await 0;\n if (event.defaultPrevented) {\n return;\n }\n\n if (isActivationClick(event)) {\n this.focus();\n }\n\n // Per spec, clicking on a radio input always selects it.\n this.checked = true;\n this.dispatchEvent(new Event('change', {bubbles: true}));\n this.dispatchEvent(\n new InputEvent('input', {bubbles: true, composed: true}),\n );\n }\n\n private async handleKeydown(event: KeyboardEvent) {\n // allow event to propagate to user code after a microtask.\n await 0;\n if (event.key !== ' ' || event.defaultPrevented) {\n return;\n }\n\n this.click();\n }\n\n // Writable mixin properties for lit-html binding, needed for lit-analyzer\n declare disabled: boolean;\n declare name: string;\n\n override [getFormValue]() {\n return this.checked ? this.value : null;\n }\n\n override [getFormState]() {\n return String(this.checked);\n }\n\n override formResetCallback() {\n // The checked property does not reflect, so the original attribute set by\n // the user is used to determine the default value.\n this.checked = this.hasAttribute('checked');\n }\n\n override formStateRestoreCallback(state: string) {\n this.checked = state === 'true';\n }\n\n override [createValidator]() {\n return new RadioValidator(() => {\n if (!this.selectionController) {\n // Validation runs on superclass construction, so selection controller\n // might not actually be ready until this class constructs.\n return [this];\n }\n\n return this.selectionController.controls as [Radio, ...Radio[]];\n });\n }\n\n override [getValidityAnchor]() {\n return this.container;\n }\n}\n"]}
1
+ {"version":3,"file":"radio.js","sourceRoot":"","sources":["radio.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport '../../focus/md-focus-ring.js';\nimport '../../ripple/ripple.js';\n\nimport {html, isServer, LitElement} from 'lit';\nimport {property, query} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\n\nimport {isActivationClick} from '../../internal/events/form-label-activation.js';\nimport {\n createValidator,\n getValidityAnchor,\n mixinConstraintValidation,\n} from '../../labs/behaviors/constraint-validation.js';\nimport {\n internals,\n mixinElementInternals,\n} from '../../labs/behaviors/element-internals.js';\nimport {mixinFocusable} from '../../labs/behaviors/focusable.js';\nimport {\n getFormState,\n getFormValue,\n mixinFormAssociated,\n} from '../../labs/behaviors/form-associated.js';\nimport {RadioValidator} from '../../labs/behaviors/validators/radio-validator.js';\n\nimport {SingleSelectionController} from './single-selection-controller.js';\n\nconst CHECKED = Symbol('checked');\nlet maskId = 0;\n\n// Separate variable needed for closure.\nconst radioBaseClass = mixinConstraintValidation(\n mixinFormAssociated(mixinElementInternals(mixinFocusable(LitElement))),\n);\n\n/**\n * A radio component.\n *\n * @fires input {InputEvent} Dispatched when the value changes from user\n * interaction. --bubbles\n * @fires change {Event} Dispatched when the value changes from user\n * interaction. --bubbles --composed\n */\nexport class Radio extends radioBaseClass {\n // Unique maskId is required because of a Safari bug that fail to persist\n // reference to the mask. This should be removed once the bug is fixed.\n private readonly maskId = `cutout${++maskId}`;\n\n /**\n * Whether or not the radio is selected.\n */\n @property({type: Boolean})\n get checked() {\n return this[CHECKED];\n }\n set checked(checked: boolean) {\n const wasChecked = this.checked;\n if (wasChecked === checked) {\n return;\n }\n\n this[CHECKED] = checked;\n this.requestUpdate('checked', wasChecked);\n this.selectionController.handleCheckedChange();\n }\n\n [CHECKED] = false;\n\n /**\n * Whether or not the radio is required. If any radio is required in a group,\n * all radios are implicitly required.\n */\n @property({type: Boolean}) required = false;\n\n /**\n * The element value to use in form submission when checked.\n */\n @property() value = 'on';\n\n @query('.container') private readonly container!: HTMLElement;\n private readonly selectionController = new SingleSelectionController(this);\n\n constructor() {\n super();\n this.addController(this.selectionController);\n if (!isServer) {\n this[internals].role = 'radio';\n this.addEventListener('click', this.handleClick.bind(this));\n this.addEventListener('keydown', this.handleKeydown.bind(this));\n }\n }\n\n protected override render() {\n const classes = {'checked': this.checked};\n return html`\n <div class=\"container ${classMap(classes)}\" aria-hidden=\"true\">\n <md-ripple\n part=\"ripple\"\n .control=${this}\n ?disabled=${this.disabled}></md-ripple>\n <md-focus-ring part=\"focus-ring\" .control=${this}></md-focus-ring>\n <svg class=\"icon\" viewBox=\"0 0 20 20\">\n <mask id=\"${this.maskId}\">\n <rect width=\"100%\" height=\"100%\" fill=\"white\" />\n <circle cx=\"10\" cy=\"10\" r=\"8\" fill=\"black\" />\n </mask>\n <circle\n class=\"outer circle\"\n cx=\"10\"\n cy=\"10\"\n r=\"10\"\n mask=\"url(#${this.maskId})\" />\n <circle class=\"inner circle\" cx=\"10\" cy=\"10\" r=\"5\" />\n </svg>\n\n <div class=\"touch-target\"></div>\n </div>\n `;\n }\n\n protected override updated() {\n this[internals].ariaChecked = String(this.checked);\n }\n\n private async handleClick(event: Event) {\n if (this.disabled) {\n return;\n }\n\n // allow event to propagate to user code after a microtask.\n await 0;\n if (event.defaultPrevented) {\n return;\n }\n\n if (isActivationClick(event)) {\n this.focus();\n }\n\n // Per spec, clicking on a radio input always selects it.\n this.checked = true;\n this.dispatchEvent(new Event('change', {bubbles: true}));\n this.dispatchEvent(\n new InputEvent('input', {bubbles: true, composed: true}),\n );\n }\n\n private async handleKeydown(event: KeyboardEvent) {\n // allow event to propagate to user code after a microtask.\n await 0;\n if (event.key !== ' ' || event.defaultPrevented) {\n return;\n }\n\n this.click();\n }\n\n override [getFormValue]() {\n return this.checked ? this.value : null;\n }\n\n override [getFormState]() {\n return String(this.checked);\n }\n\n override formResetCallback() {\n // The checked property does not reflect, so the original attribute set by\n // the user is used to determine the default value.\n this.checked = this.hasAttribute('checked');\n }\n\n override formStateRestoreCallback(state: string) {\n this.checked = state === 'true';\n }\n\n override [createValidator]() {\n return new RadioValidator(() => {\n if (!this.selectionController) {\n // Validation runs on superclass construction, so selection controller\n // might not actually be ready until this class constructs.\n return [this];\n }\n\n return this.selectionController.controls as [Radio, ...Radio[]];\n });\n }\n\n override [getValidityAnchor]() {\n return this.container;\n }\n}\n"]}
@@ -32,6 +32,8 @@ export declare abstract class Select extends selectBaseClass {
32
32
  /** @nocollapse */
33
33
  static shadowRootOptions: {
34
34
  delegatesFocus: boolean;
35
+ clonable?: boolean;
36
+ customElementRegistry?: CustomElementRegistry;
35
37
  mode: ShadowRootMode;
36
38
  serializable?: boolean;
37
39
  slotAssignment?: SlotAssignmentMode;
@@ -256,8 +258,6 @@ export declare abstract class Select extends selectBaseClass {
256
258
  */
257
259
  private dispatchInteractionEvents;
258
260
  private getErrorText;
259
- disabled: boolean;
260
- name: string;
261
261
  [getFormValue](): string;
262
262
  formResetCallback(): void;
263
263
  formStateRestoreCallback(state: string): void;