@noxlovette/material 0.5.1 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/bin/material-claude-skill.js +31 -0
  2. package/claude-skill/material-design/SKILL.md +68 -0
  3. package/claude-skill/material-design/references/accessibility-checklist.md +29 -0
  4. package/claude-skill/material-design/references/component-patterns.md +55 -0
  5. package/claude-skill/material-design/references/motion-guide.md +163 -0
  6. package/claude-skill/material-design/references/tokens-and-styles.md +68 -0
  7. package/dist/animation/Shapes.stories.svelte +10 -6
  8. package/dist/animation/TransitionPatterns.stories.svelte +30 -20
  9. package/dist/animation/containerTransform.d.ts +4 -2
  10. package/dist/animation/containerTransform.js +4 -2
  11. package/dist/animation/enterExit.js +5 -2
  12. package/dist/animation/skeleton.d.ts +1 -1
  13. package/dist/animation/skeleton.js +1 -1
  14. package/dist/components/badge/Badge.mdx +70 -0
  15. package/dist/components/badge/Badge.stories.svelte +38 -20
  16. package/dist/components/badge/Badge.svelte +12 -5
  17. package/dist/components/badge/theme.d.ts +30 -7
  18. package/dist/components/badge/theme.js +25 -5
  19. package/dist/components/badge/types.d.ts +18 -4
  20. package/dist/components/buttons/Button.mdx +85 -0
  21. package/dist/components/buttons/Button.stories.svelte +62 -27
  22. package/dist/components/buttons/Button.svelte +29 -25
  23. package/dist/components/buttons/Button.svelte.d.ts +11 -9
  24. package/dist/components/buttons/ButtonIcon.mdx +52 -0
  25. package/dist/components/buttons/ButtonIcon.stories.svelte +72 -48
  26. package/dist/components/buttons/ButtonIcon.svelte +58 -36
  27. package/dist/components/buttons/ButtonIcon.svelte.d.ts +9 -7
  28. package/dist/components/buttons/FAB.mdx +84 -0
  29. package/dist/components/buttons/FAB.stories.svelte +103 -24
  30. package/dist/components/buttons/FAB.stories.svelte.d.ts +2 -17
  31. package/dist/components/buttons/FAB.svelte +353 -29
  32. package/dist/components/buttons/FAB.svelte.d.ts +11 -6
  33. package/dist/components/buttons/FABMenu.svelte +27 -8
  34. package/dist/components/buttons/FABMenu.svelte.d.ts +7 -3
  35. package/dist/components/buttons/FABMenuItem.svelte +20 -16
  36. package/dist/components/buttons/FABMenuItem.svelte.d.ts +3 -3
  37. package/dist/components/buttons/Toggle.stories.svelte +31 -23
  38. package/dist/components/buttons/Toggle.stories.svelte.d.ts +2 -17
  39. package/dist/components/buttons/Toggle.svelte +28 -25
  40. package/dist/components/buttons/Toggle.svelte.d.ts +5 -5
  41. package/dist/components/buttons/button-group/ButtonGroup.mdx +39 -0
  42. package/dist/components/buttons/button-group/ButtonGroup.stories.svelte +62 -43
  43. package/dist/components/buttons/button-group/ButtonGroup.stories.svelte.d.ts +2 -17
  44. package/dist/components/buttons/button-group/ButtonGroup.svelte +102 -8
  45. package/dist/components/buttons/button-group/ButtonGroup.svelte.d.ts +6 -7
  46. package/dist/components/buttons/button-group/theme.d.ts +46 -16
  47. package/dist/components/buttons/button-group/theme.js +14 -9
  48. package/dist/components/buttons/button-group/types.d.ts +13 -7
  49. package/dist/components/buttons/connected/ConnectedButtonGroup.mdx +43 -0
  50. package/dist/components/buttons/connected/ConnectedButtonGroup.stories.svelte +56 -74
  51. package/dist/components/buttons/connected/ConnectedButtonGroup.stories.svelte.d.ts +2 -17
  52. package/dist/components/buttons/connected/ConnectedButtonGroup.svelte +16 -4
  53. package/dist/components/buttons/connected/ConnectedButtonGroup.svelte.d.ts +4 -4
  54. package/dist/components/buttons/connected/ConnectedButtonGroupItem.svelte +35 -8
  55. package/dist/components/buttons/connected/ConnectedButtonGroupItem.svelte.d.ts +2 -3
  56. package/dist/components/buttons/connected/theme.d.ts +34 -19
  57. package/dist/components/buttons/connected/theme.js +33 -10
  58. package/dist/components/buttons/connected/types.d.ts +36 -9
  59. package/dist/components/buttons/shapeMorph.d.ts +26 -0
  60. package/dist/components/buttons/shapeMorph.js +142 -0
  61. package/dist/components/buttons/split-button/SplitButton.mdx +48 -0
  62. package/dist/components/buttons/split-button/SplitButton.stories.svelte +9 -14
  63. package/dist/components/buttons/split-button/SplitButton.svelte +66 -49
  64. package/dist/components/buttons/split-button/SplitButton.svelte.d.ts +6 -11
  65. package/dist/components/buttons/split-button/theme.d.ts +111 -18
  66. package/dist/components/buttons/split-button/theme.js +75 -17
  67. package/dist/components/buttons/split-button/types.d.ts +24 -18
  68. package/dist/components/buttons/theme.d.ts +423 -231
  69. package/dist/components/buttons/theme.js +287 -381
  70. package/dist/components/buttons/types.d.ts +130 -125
  71. package/dist/components/cards/Card.mdx +44 -0
  72. package/dist/components/cards/Card.stories.svelte +11 -11
  73. package/dist/components/cards/theme.js +6 -6
  74. package/dist/components/chips/Chip.mdx +68 -0
  75. package/dist/components/chips/Chip.stories.svelte +4 -4
  76. package/dist/components/chips/theme.d.ts +1 -1
  77. package/dist/components/chips/theme.js +4 -4
  78. package/dist/components/containers/action-rail/ActionRail.stories.svelte +1 -0
  79. package/dist/components/containers/action-rail/theme.d.ts +1 -1
  80. package/dist/components/containers/action-rail/theme.js +2 -2
  81. package/dist/components/containers/app/theme.d.ts +1 -1
  82. package/dist/components/containers/app/theme.js +1 -1
  83. package/dist/components/containers/bottom-sheet/BottomSheet.mdx +64 -0
  84. package/dist/components/containers/bottom-sheet/BottomSheet.stories.svelte +108 -12
  85. package/dist/components/containers/bottom-sheet/BottomSheet.svelte +179 -109
  86. package/dist/components/containers/bottom-sheet/BottomSheet.svelte.d.ts +10 -5
  87. package/dist/components/containers/bottom-sheet/index.d.ts +1 -0
  88. package/dist/components/containers/bottom-sheet/index.js +1 -0
  89. package/dist/components/containers/bottom-sheet/theme.d.ts +45 -0
  90. package/dist/components/containers/bottom-sheet/theme.js +42 -0
  91. package/dist/components/containers/bottom-sheet/types.d.ts +37 -5
  92. package/dist/components/containers/carousel/Carousel.mdx +80 -0
  93. package/dist/components/containers/carousel/Carousel.stories.svelte +131 -0
  94. package/dist/components/containers/carousel/Carousel.stories.svelte.d.ts +4 -0
  95. package/dist/components/containers/carousel/Carousel.svelte +194 -0
  96. package/dist/components/containers/carousel/Carousel.svelte.d.ts +25 -0
  97. package/dist/components/containers/carousel/index.d.ts +3 -0
  98. package/dist/components/containers/{stack → carousel}/index.js +1 -2
  99. package/dist/components/containers/carousel/keylines.d.ts +32 -0
  100. package/dist/components/containers/carousel/keylines.js +88 -0
  101. package/dist/components/containers/carousel/theme.d.ts +162 -0
  102. package/dist/components/containers/carousel/theme.js +67 -0
  103. package/dist/components/containers/carousel/types.d.ts +52 -0
  104. package/dist/components/containers/context-menu/ContextMenu.stories.svelte +1 -0
  105. package/dist/components/containers/context-menu/ContextMenu.svelte +2 -2
  106. package/dist/components/containers/context-menu/ContextMenu.svelte.d.ts +1 -1
  107. package/dist/components/containers/context-menu/theme.d.ts +1 -1
  108. package/dist/components/containers/context-menu/theme.js +11 -11
  109. package/dist/components/containers/dialogue/Dialogue.mdx +65 -0
  110. package/dist/components/containers/dialogue/Dialogue.stories.svelte +4 -4
  111. package/dist/components/containers/dialogue/Dialogue.svelte +2 -2
  112. package/dist/components/containers/dialogue/theme.d.ts +1 -1
  113. package/dist/components/containers/dialogue/theme.js +4 -4
  114. package/dist/components/containers/dialogue/types.d.ts +1 -1
  115. package/dist/components/containers/divider/Divider.stories.svelte +2 -1
  116. package/dist/components/containers/divider/Divider.svelte +2 -2
  117. package/dist/components/containers/divider/theme.d.ts +7 -7
  118. package/dist/components/containers/divider/theme.js +3 -3
  119. package/dist/components/containers/index.d.ts +1 -1
  120. package/dist/components/containers/index.js +1 -1
  121. package/dist/components/containers/link-preview/theme.d.ts +1 -1
  122. package/dist/components/containers/link-preview/theme.js +3 -3
  123. package/dist/components/containers/list/List.svelte +18 -0
  124. package/dist/components/containers/list/List.svelte.d.ts +4 -0
  125. package/dist/components/containers/list/ListItem.mdx +100 -0
  126. package/dist/components/containers/list/ListItem.stories.svelte +177 -42
  127. package/dist/components/containers/list/ListItem.stories.svelte.d.ts +2 -17
  128. package/dist/components/containers/list/ListItem.svelte +92 -37
  129. package/dist/components/containers/list/ListItem.svelte.d.ts +1 -1
  130. package/dist/components/containers/list/context.d.ts +6 -0
  131. package/dist/components/containers/list/context.js +4 -0
  132. package/dist/components/containers/list/index.d.ts +1 -0
  133. package/dist/components/containers/list/index.js +1 -0
  134. package/dist/components/containers/list/theme.d.ts +487 -12
  135. package/dist/components/containers/list/theme.js +141 -14
  136. package/dist/components/containers/list/types.d.ts +39 -5
  137. package/dist/components/containers/menu/Menu.mdx +52 -0
  138. package/dist/components/containers/menu/Menu.stories.svelte +14 -14
  139. package/dist/components/containers/menu/Menu.svelte +2 -2
  140. package/dist/components/containers/menu/MenuGroup.svelte +1 -1
  141. package/dist/components/containers/menu/MenuGroup.svelte.d.ts +1 -1
  142. package/dist/components/containers/menu/MenuSub.svelte +1 -1
  143. package/dist/components/containers/menu/menu-item/MenuItem.svelte +1 -1
  144. package/dist/components/containers/menu/theme.d.ts +1 -1
  145. package/dist/components/containers/menu/theme.js +9 -9
  146. package/dist/components/containers/pane/DraggablePane.stories.svelte +4 -3
  147. package/dist/components/containers/pane/DraggablePane.svelte +2 -2
  148. package/dist/components/containers/pane/Pane.stories.svelte +11 -10
  149. package/dist/components/containers/pane/Pane.svelte +24 -2
  150. package/dist/components/containers/pane/PaneGrid.stories.svelte +19 -18
  151. package/dist/components/containers/pane/PaneGrid.svelte +3 -2
  152. package/dist/components/containers/pane/PaneGrid.svelte.d.ts +2 -1
  153. package/dist/components/containers/pane/PaneHandle.svelte +48 -2
  154. package/dist/components/containers/pane/PaneHandle.svelte.d.ts +4 -0
  155. package/dist/components/containers/pane/resizeStore.svelte.d.ts +10 -1
  156. package/dist/components/containers/pane/resizeStore.svelte.js +13 -2
  157. package/dist/components/containers/pane/theme.d.ts +1 -1
  158. package/dist/components/containers/pane/theme.js +131 -47
  159. package/dist/components/containers/pane/types.d.ts +3 -2
  160. package/dist/components/containers/popover/Popover.mdx +45 -0
  161. package/dist/components/containers/popover/Popover.stories.svelte +1 -1
  162. package/dist/components/containers/popover/Popover.svelte +1 -1
  163. package/dist/components/containers/popover/theme.d.ts +1 -1
  164. package/dist/components/containers/popover/theme.js +4 -4
  165. package/dist/components/containers/scroll-area/theme.js +3 -3
  166. package/dist/components/containers/side-sheet/SideSheet.mdx +71 -0
  167. package/dist/components/containers/side-sheet/SideSheet.stories.svelte +113 -17
  168. package/dist/components/containers/side-sheet/SideSheet.svelte +113 -66
  169. package/dist/components/containers/side-sheet/SideSheet.svelte.d.ts +8 -7
  170. package/dist/components/containers/side-sheet/index.d.ts +1 -0
  171. package/dist/components/containers/side-sheet/index.js +1 -0
  172. package/dist/components/containers/side-sheet/theme.d.ts +108 -0
  173. package/dist/components/containers/side-sheet/theme.js +72 -0
  174. package/dist/components/containers/side-sheet/types.d.ts +35 -7
  175. package/dist/components/date/DateField.stories.svelte +4 -3
  176. package/dist/components/date/DateField.svelte +11 -2
  177. package/dist/components/date/DateRangeField.stories.svelte +4 -3
  178. package/dist/components/date/DateRangeField.svelte +12 -3
  179. package/dist/components/date/theme.d.ts +8 -8
  180. package/dist/components/date/theme.js +32 -32
  181. package/dist/components/forms/checkbox/Checkbox.mdx +35 -0
  182. package/dist/components/forms/checkbox/Checkbox.stories.svelte +2 -2
  183. package/dist/components/forms/checkbox/Checkbox.svelte +1 -1
  184. package/dist/components/forms/checkbox/theme.d.ts +1 -1
  185. package/dist/components/forms/checkbox/theme.js +4 -4
  186. package/dist/components/forms/command/Command.stories.svelte +1 -0
  187. package/dist/components/forms/command/theme.d.ts +1 -1
  188. package/dist/components/forms/command/theme.js +10 -10
  189. package/dist/components/forms/pin/theme.d.ts +1 -1
  190. package/dist/components/forms/pin/theme.js +5 -5
  191. package/dist/components/forms/radio-group/RadioGroup.svelte +1 -1
  192. package/dist/components/forms/radio-group/theme.d.ts +1 -1
  193. package/dist/components/forms/radio-group/theme.js +6 -6
  194. package/dist/components/forms/search/Search.mdx +38 -0
  195. package/dist/components/forms/search/Search.stories.svelte +19 -9
  196. package/dist/components/forms/search/Search.svelte +40 -17
  197. package/dist/components/forms/search/Search.svelte.d.ts +2 -2
  198. package/dist/components/forms/search/theme.d.ts +46 -13
  199. package/dist/components/forms/search/theme.js +14 -9
  200. package/dist/components/forms/search/types.d.ts +18 -12
  201. package/dist/components/forms/select/Select.mdx +53 -0
  202. package/dist/components/forms/select/Select.stories.svelte +4 -4
  203. package/dist/components/forms/select/Select.svelte +12 -4
  204. package/dist/components/forms/select/SelectItem.svelte +1 -1
  205. package/dist/components/forms/select/theme.d.ts +1 -1
  206. package/dist/components/forms/select/theme.js +14 -14
  207. package/dist/components/forms/slider/Slider.mdx +85 -0
  208. package/dist/components/forms/slider/Slider.stories.svelte +7 -7
  209. package/dist/components/forms/slider/Slider.svelte +46 -28
  210. package/dist/components/forms/slider/theme.d.ts +15 -1
  211. package/dist/components/forms/slider/theme.js +29 -18
  212. package/dist/components/forms/slider/types.d.ts +3 -2
  213. package/dist/components/forms/switch/Switch.mdx +38 -0
  214. package/dist/components/forms/switch/Switch.stories.svelte +3 -3
  215. package/dist/components/forms/switch/theme.d.ts +1 -1
  216. package/dist/components/forms/switch/theme.js +7 -7
  217. package/dist/components/forms/textfield/Textfield.mdx +53 -0
  218. package/dist/components/forms/textfield/Textfield.stories.svelte +6 -6
  219. package/dist/components/forms/textfield/Textfield.svelte +1 -0
  220. package/dist/components/forms/textfield/theme.d.ts +1 -1
  221. package/dist/components/forms/textfield/theme.js +20 -20
  222. package/dist/components/forms/toggle-group/theme.d.ts +1 -1
  223. package/dist/components/forms/toggle-group/theme.js +3 -3
  224. package/dist/components/forms/tooltip/Tooltip.stories.svelte +1 -0
  225. package/dist/components/forms/tooltip/theme.d.ts +1 -1
  226. package/dist/components/forms/tooltip/theme.js +4 -4
  227. package/dist/components/misc/Avatar.stories.svelte +5 -4
  228. package/dist/components/misc/ThemeSettings.svelte +9 -9
  229. package/dist/components/misc/ThemeSwitcher.svelte +3 -3
  230. package/dist/components/misc/theme.js +5 -5
  231. package/dist/components/nav/appbar/AppBar.mdx +71 -0
  232. package/dist/components/nav/appbar/AppBar.stories.svelte +93 -3
  233. package/dist/components/nav/appbar/AppBar.stories.svelte.d.ts +2 -17
  234. package/dist/components/nav/appbar/AppBar.svelte +90 -37
  235. package/dist/components/nav/appbar/AppBar.svelte.d.ts +9 -2
  236. package/dist/components/nav/appbar/theme.d.ts +86 -19
  237. package/dist/components/nav/appbar/theme.js +160 -24
  238. package/dist/components/nav/appbar/types.d.ts +46 -9
  239. package/dist/components/nav/breadcrumb/Breadcrumb.stories.svelte +1 -0
  240. package/dist/components/nav/breadcrumb/theme.d.ts +1 -1
  241. package/dist/components/nav/breadcrumb/theme.js +6 -6
  242. package/dist/components/nav/navbar/Navbar.mdx +38 -0
  243. package/dist/components/nav/navbar/Navbar.svelte +1 -1
  244. package/dist/components/nav/navbar/NavbarItem.svelte +12 -9
  245. package/dist/components/nav/navbar/theme.d.ts +3 -3
  246. package/dist/components/nav/navbar/theme.js +7 -7
  247. package/dist/components/nav/rail/Rail.mdx +73 -0
  248. package/dist/components/nav/rail/Rail.stories.svelte +3 -7
  249. package/dist/components/nav/rail/Rail.svelte +5 -2
  250. package/dist/components/nav/rail/RailItem.svelte +12 -9
  251. package/dist/components/nav/rail/theme.d.ts +1 -1
  252. package/dist/components/nav/rail/theme.js +14 -14
  253. package/dist/components/nav/rail/types.d.ts +8 -1
  254. package/dist/components/nav/tabs/Tabs.mdx +62 -0
  255. package/dist/components/nav/tabs/Tabs.stories.svelte +1 -1
  256. package/dist/components/nav/tabs/theme.d.ts +1 -1
  257. package/dist/components/nav/tabs/theme.js +5 -5
  258. package/dist/components/pill/Pill.mdx +32 -0
  259. package/dist/components/pill/Pill.stories.svelte +1 -1
  260. package/dist/components/pill/theme.d.ts +2 -2
  261. package/dist/components/pill/theme.js +2 -2
  262. package/dist/components/progress/LinearProgress.svelte +2 -2
  263. package/dist/components/progress/Progress.mdx +50 -0
  264. package/dist/components/progress/Progress.stories.svelte +6 -6
  265. package/dist/components/snackbar/Snackbar.mdx +52 -0
  266. package/dist/components/snackbar/Snackbar.stories.svelte +5 -5
  267. package/dist/components/snackbar/Snackbar.svelte +1 -1
  268. package/dist/components/snackbar/theme.d.ts +4 -4
  269. package/dist/components/snackbar/theme.js +5 -5
  270. package/dist/components/table/Table.stories.svelte +1 -0
  271. package/dist/components/table/TableHeader.svelte +1 -1
  272. package/dist/components/table/theme.d.ts +1 -1
  273. package/dist/components/table/theme.js +4 -4
  274. package/dist/components/time/TimeField.stories.svelte +3 -2
  275. package/dist/components/time/TimeField.svelte +2 -2
  276. package/dist/components/time/TimepickerInput.svelte +1 -1
  277. package/dist/components/time/theme.d.ts +1 -1
  278. package/dist/components/time/theme.js +6 -6
  279. package/dist/components/toolbar/Toolbar.stories.svelte +1 -0
  280. package/dist/components/toolbar/Toolbar.svelte +1 -1
  281. package/dist/components/toolbar/Toolbar.svelte.d.ts +1 -1
  282. package/dist/components/toolbar/theme.d.ts +1 -1
  283. package/dist/components/toolbar/theme.js +15 -15
  284. package/dist/components/typography/Typography.mdx +67 -0
  285. package/dist/components/typography/body/Body.stories.svelte +2 -1
  286. package/dist/components/typography/body/theme.d.ts +16 -13
  287. package/dist/components/typography/body/theme.js +20 -5
  288. package/dist/components/typography/body/types.d.ts +2 -1
  289. package/dist/components/typography/display/Display.stories.svelte +2 -1
  290. package/dist/components/typography/display/theme.d.ts +16 -13
  291. package/dist/components/typography/display/theme.js +20 -5
  292. package/dist/components/typography/display/types.d.ts +2 -1
  293. package/dist/components/typography/headline/Headline.stories.svelte +2 -1
  294. package/dist/components/typography/headline/theme.d.ts +16 -13
  295. package/dist/components/typography/headline/theme.js +20 -5
  296. package/dist/components/typography/headline/types.d.ts +2 -1
  297. package/dist/components/typography/kbd/Kbd.stories.svelte +2 -1
  298. package/dist/components/typography/kbd/theme.d.ts +5 -5
  299. package/dist/components/typography/kbd/theme.js +3 -3
  300. package/dist/components/typography/label/Label.stories.svelte +2 -1
  301. package/dist/components/typography/label/theme.d.ts +15 -12
  302. package/dist/components/typography/label/theme.js +20 -5
  303. package/dist/components/typography/label/types.d.ts +2 -1
  304. package/dist/components/typography/title/Title.stories.svelte +2 -1
  305. package/dist/components/typography/title/theme.d.ts +16 -13
  306. package/dist/components/typography/title/theme.js +20 -5
  307. package/dist/components/typography/title/types.d.ts +2 -1
  308. package/dist/index.css +2 -0
  309. package/dist/styles/component.css +78 -175
  310. package/dist/styles/elevation.css +9 -0
  311. package/dist/styles/layers.css +33 -0
  312. package/dist/styles/spacing.css +29 -0
  313. package/dist/styles/typescale.css +635 -20
  314. package/dist/utils/Layer.svelte +1 -1
  315. package/dist/utils/icon/Icon.svelte +8 -6
  316. package/dist/utils/icon/theme.d.ts +1 -1
  317. package/dist/utils/icon/theme.js +1 -1
  318. package/dist/utils/tv.d.ts +6 -0
  319. package/dist/utils/tv.js +12 -0
  320. package/package.json +19 -15
  321. package/dist/components/containers/stack/HStack.svelte +0 -23
  322. package/dist/components/containers/stack/HStack.svelte.d.ts +0 -5
  323. package/dist/components/containers/stack/VStack.svelte +0 -23
  324. package/dist/components/containers/stack/VStack.svelte.d.ts +0 -5
  325. package/dist/components/containers/stack/index.d.ts +0 -4
  326. package/dist/components/containers/stack/theme.d.ts +0 -66
  327. package/dist/components/containers/stack/theme.js +0 -26
  328. package/dist/components/containers/stack/types.d.ts +0 -12
  329. /package/dist/components/containers/{stack → carousel}/types.js +0 -0
@@ -1,28 +1,31 @@
1
1
  export declare const label: import("tailwind-variants").TVReturnType<{
2
2
  emphasized: {
3
- true: "font-semibold";
3
+ true: "";
4
+ false: "";
4
5
  };
5
6
  size: {
6
- small: "md-sys-typescale-label-small";
7
- medium: "md-sys-typescale-label-medium";
8
- large: "md-sys-typescale-label-large";
7
+ small: "";
8
+ medium: "";
9
+ large: "";
9
10
  };
10
11
  }, undefined, "", {
11
12
  emphasized: {
12
- true: "font-semibold";
13
+ true: "";
14
+ false: "";
13
15
  };
14
16
  size: {
15
- small: "md-sys-typescale-label-small";
16
- medium: "md-sys-typescale-label-medium";
17
- large: "md-sys-typescale-label-large";
17
+ small: "";
18
+ medium: "";
19
+ large: "";
18
20
  };
19
21
  }, undefined, import("tailwind-variants").TVReturnTypeLike<{
20
22
  emphasized: {
21
- true: "font-semibold";
23
+ true: "";
24
+ false: "";
22
25
  };
23
26
  size: {
24
- small: "md-sys-typescale-label-small";
25
- medium: "md-sys-typescale-label-medium";
26
- large: "md-sys-typescale-label-large";
27
+ small: "";
28
+ medium: "";
29
+ large: "";
27
30
  };
28
31
  }, undefined>>;
@@ -1,14 +1,29 @@
1
- import { tv } from 'tailwind-variants';
1
+ import { tv } from '../../../utils/tv.js';
2
2
  export const label = tv({
3
3
  base: '',
4
4
  variants: {
5
+ // `emphasized` swaps in the M3 emphasized style of the same size (heavier weight, same
6
+ // metrics). The class is picked in compoundVariants so only one typescale class is ever set.
5
7
  emphasized: {
6
- true: 'font-semibold'
8
+ true: '',
9
+ false: ''
7
10
  },
8
11
  size: {
9
- small: 'md-sys-typescale-label-small',
10
- medium: 'md-sys-typescale-label-medium',
11
- large: 'md-sys-typescale-label-large'
12
+ small: '',
13
+ medium: '',
14
+ large: ''
12
15
  }
16
+ },
17
+ compoundVariants: [
18
+ { size: 'small', emphasized: false, class: 'md-sys-typescale-label-small' },
19
+ { size: 'small', emphasized: true, class: 'md-sys-typescale-emphasized-label-small' },
20
+ { size: 'medium', emphasized: false, class: 'md-sys-typescale-label-medium' },
21
+ { size: 'medium', emphasized: true, class: 'md-sys-typescale-emphasized-label-medium' },
22
+ { size: 'large', emphasized: false, class: 'md-sys-typescale-label-large' },
23
+ { size: 'large', emphasized: true, class: 'md-sys-typescale-emphasized-label-large' }
24
+ ],
25
+ defaultVariants: {
26
+ emphasized: false,
27
+ size: 'medium'
13
28
  }
14
29
  });
@@ -12,7 +12,8 @@ export type LabelProps = LabelVariants & HTMLAttributes<HTMLElement> & {
12
12
  */
13
13
  children: Snippet;
14
14
  /**
15
- * Whether to use the emphasized weight for the label text.
15
+ * Use the M3 emphasized style (`md-sys-typescale-emphasized-label-*`): same size, heavier weight.
16
+ * Use it for selected, active, or unread states, or for editorial emphasis.
16
17
  */
17
18
  emphasized?: boolean;
18
19
  /**
@@ -4,6 +4,7 @@
4
4
 
5
5
  const { Story } = defineMeta({
6
6
  title: 'Typography/Title',
7
+ tags: ['autodocs'],
7
8
  component: Title,
8
9
  argTypes: {
9
10
  size: {
@@ -22,7 +23,7 @@
22
23
  <Story name="Playground">Title text</Story>
23
24
 
24
25
  <Story name="Sizes" asChild>
25
- <div class="flex flex-col gap-4 p-6">
26
+ <div class="gap-spacing-200 p-spacing-300 flex flex-col">
26
27
  <Title size="small">Title small</Title>
27
28
  <Title size="medium">Title medium</Title>
28
29
  <Title size="large">Title large</Title>
@@ -1,30 +1,33 @@
1
- import { type VariantProps } from 'tailwind-variants';
1
+ import { type VariantProps } from '../../../utils/tv.js';
2
2
  export type TitleVariants = VariantProps<typeof title>;
3
3
  export declare const title: import("tailwind-variants").TVReturnType<{
4
4
  emphasized: {
5
- true: "font-semibold";
5
+ true: "";
6
+ false: "";
6
7
  };
7
8
  size: {
8
- small: "md-sys-typescale-title-small";
9
- medium: "md-sys-typescale-title-medium";
10
- large: "md-sys-typescale-title-large";
9
+ small: "";
10
+ medium: "";
11
+ large: "";
11
12
  };
12
13
  }, undefined, "", {
13
14
  emphasized: {
14
- true: "font-semibold";
15
+ true: "";
16
+ false: "";
15
17
  };
16
18
  size: {
17
- small: "md-sys-typescale-title-small";
18
- medium: "md-sys-typescale-title-medium";
19
- large: "md-sys-typescale-title-large";
19
+ small: "";
20
+ medium: "";
21
+ large: "";
20
22
  };
21
23
  }, undefined, import("tailwind-variants").TVReturnTypeLike<{
22
24
  emphasized: {
23
- true: "font-semibold";
25
+ true: "";
26
+ false: "";
24
27
  };
25
28
  size: {
26
- small: "md-sys-typescale-title-small";
27
- medium: "md-sys-typescale-title-medium";
28
- large: "md-sys-typescale-title-large";
29
+ small: "";
30
+ medium: "";
31
+ large: "";
29
32
  };
30
33
  }, undefined>>;
@@ -1,14 +1,29 @@
1
- import { tv } from 'tailwind-variants';
1
+ import { tv } from '../../../utils/tv.js';
2
2
  export const title = tv({
3
3
  base: '',
4
4
  variants: {
5
+ // `emphasized` swaps in the M3 emphasized style of the same size (heavier weight, same
6
+ // metrics). The class is picked in compoundVariants so only one typescale class is ever set.
5
7
  emphasized: {
6
- true: 'font-semibold'
8
+ true: '',
9
+ false: ''
7
10
  },
8
11
  size: {
9
- small: 'md-sys-typescale-title-small',
10
- medium: 'md-sys-typescale-title-medium',
11
- large: 'md-sys-typescale-title-large'
12
+ small: '',
13
+ medium: '',
14
+ large: ''
12
15
  }
16
+ },
17
+ compoundVariants: [
18
+ { size: 'small', emphasized: false, class: 'md-sys-typescale-title-small' },
19
+ { size: 'small', emphasized: true, class: 'md-sys-typescale-emphasized-title-small' },
20
+ { size: 'medium', emphasized: false, class: 'md-sys-typescale-title-medium' },
21
+ { size: 'medium', emphasized: true, class: 'md-sys-typescale-emphasized-title-medium' },
22
+ { size: 'large', emphasized: false, class: 'md-sys-typescale-title-large' },
23
+ { size: 'large', emphasized: true, class: 'md-sys-typescale-emphasized-title-large' }
24
+ ],
25
+ defaultVariants: {
26
+ emphasized: false,
27
+ size: 'medium'
13
28
  }
14
29
  });
@@ -10,7 +10,8 @@ export type TitleProps = TitleVariants & HTMLAttributes<HTMLElement> & {
10
10
  */
11
11
  children: Snippet;
12
12
  /**
13
- * Whether to use the emphasized weight for the title text.
13
+ * Use the M3 emphasized style (`md-sys-typescale-emphasized-title-*`): same size, heavier weight.
14
+ * Use it for selected, active, or unread states, or for editorial emphasis.
14
15
  */
15
16
  emphasized?: boolean;
16
17
  /**
package/dist/index.css CHANGED
@@ -1,6 +1,8 @@
1
1
  @import './styles/typescale.css';
2
+ @import './styles/spacing.css';
2
3
  @import './styles/motion.css';
3
4
  @import './styles/rounding.css';
4
5
  @import './styles/elevation.css';
6
+ @import './styles/layers.css';
5
7
  @import './styles/prose.css';
6
8
  @import './styles/component.css';
@@ -16,138 +16,100 @@
16
16
  var(--md-sys-motion-timing-function-effects-spring);
17
17
  }
18
18
 
19
- /* Shape morphs run on the fast spatial spring in both directions (press and release). */
20
- .md-btn-morph {
21
- border-radius: var(--btn-shape-override, var(--btn-shape, 9999px));
22
- transition: border-radius var(--md-sys-motion-duration-fast-spatial)
23
- var(--md-sys-motion-timing-function-fast-spatial);
24
-
25
- &::before {
26
- border-radius: inherit;
27
- transition: border-radius var(--md-sys-motion-duration-fast-spatial)
28
- var(--md-sys-motion-timing-function-fast-spatial);
29
- }
30
-
31
- &:active:not(:disabled) {
32
- border-radius: var(
33
- --btn-pressed-shape,
34
- var(--btn-shape-override, var(--btn-shape, 9999px))
35
- ) !important;
19
+ /*
20
+ * Every M3 button (Button, Toggle, ButtonIcon, SplitButton, ConnectedButtonGroup items, FAB).
21
+ * Colour, border and shadow settle on the effects spring. The ::after box is the 48dp minimum
22
+ * target that XS and S buttons need
23
+ * (https://m3.material.io/components/buttons/specs#target-areas); on larger buttons it is just
24
+ * the button.
25
+ */
26
+ .md-btn {
27
+ transition:
28
+ background-color var(--md-sys-motion-duration-effects-spring)
29
+ var(--md-sys-motion-timing-function-effects-spring),
30
+ color var(--md-sys-motion-duration-effects-spring)
31
+ var(--md-sys-motion-timing-function-effects-spring),
32
+ border-color var(--md-sys-motion-duration-effects-spring)
33
+ var(--md-sys-motion-timing-function-effects-spring),
34
+ box-shadow var(--md-sys-motion-duration-effects-spring)
35
+ var(--md-sys-motion-timing-function-effects-spring);
36
+
37
+ &::after {
38
+ content: '';
39
+ position: absolute;
40
+ top: 50%;
41
+ left: 50%;
42
+ width: max(100%, 48px);
43
+ height: max(100%, 48px);
44
+ translate: -50% -50%;
36
45
  }
37
46
  }
38
47
 
39
48
  /*
40
- * Standard button group (https://m3.material.io/components/button-groups/overview).
41
- * A plain flex row/column of otherwise-untouched Button/ButtonIcon/Toggle children.
42
- * `data-size` drives both the fixed gap between buttons and the padding-inline
43
- * "squeeze" below — pressing one button grows its own padding and shrinks its
44
- * immediate neighbors', which is the M3-specified adjacent-button interaction.
45
- * `:has()` scopes the shrink to only the pressed button's direct neighbors.
49
+ * Resting shape of Button, Toggle and ButtonIcon, for the first paint. Size classes set
50
+ * --btn-round (half the height), --btn-square and --btn-pressed; the shape variant points
51
+ * --btn-shape at round or square. Once mounted, buttons/shapeMorph.ts springs the corners
52
+ * between these on Motion (inline styles, which win over this rule).
46
53
  */
47
- .md-btn-group-standard {
48
- display: inline-flex;
49
- align-items: center;
50
- flex-wrap: nowrap;
51
- width: max-content;
52
-
53
- &[data-orientation='vertical'] {
54
- flex-direction: column;
55
- align-items: stretch;
56
- width: auto;
57
- }
58
-
59
- &[data-size='xs'] {
60
- --btn-group-gap: 1.125rem;
61
- --btn-group-base-px: 1rem;
62
- --btn-group-squeeze: 0.375rem;
63
- }
64
- &[data-size='sm'] {
65
- --btn-group-gap: 0.75rem;
66
- --btn-group-base-px: 1rem;
67
- --btn-group-squeeze: 0.375rem;
68
- }
69
- &[data-size='md'] {
70
- --btn-group-gap: 0.5rem;
71
- --btn-group-base-px: 1.5rem;
72
- --btn-group-squeeze: 0.5rem;
73
- }
74
- &[data-size='lg'] {
75
- --btn-group-gap: 0.5rem;
76
- --btn-group-base-px: 3rem;
77
- --btn-group-squeeze: 0.75rem;
78
- }
79
- &[data-size='xl'] {
80
- --btn-group-gap: 0.5rem;
81
- --btn-group-base-px: 4rem;
82
- --btn-group-squeeze: 1rem;
83
- }
84
-
85
- gap: var(--btn-group-gap, 0.5rem);
86
-
87
- > * {
88
- padding-inline: var(--btn-group-base-px, 1rem);
89
- transition:
90
- padding-inline var(--md-sys-motion-duration-fast-spatial)
91
- var(--md-sys-motion-timing-function-fast-spatial),
92
- border-radius var(--md-sys-motion-duration-fast-spatial)
93
- var(--md-sys-motion-timing-function-fast-spatial);
94
- }
95
-
96
- > *:active:not(:disabled) {
97
- padding-inline: calc(var(--btn-group-base-px, 1rem) + var(--btn-group-squeeze, 0.5rem));
98
- }
54
+ .md-btn-shape {
55
+ border-radius: var(--btn-shape, var(--btn-round, 9999px));
56
+ }
99
57
 
100
- > *:has(+ *:active:not(:disabled)),
101
- > *:active:not(:disabled) + * {
102
- padding-inline: max(
103
- 0px,
104
- calc(var(--btn-group-base-px, 1rem) - var(--btn-group-squeeze, 0.5rem))
105
- );
106
- }
58
+ /*
59
+ * Split button (https://m3.material.io/components/split-button/specs). Outer corners round;
60
+ * inner corners --split-inner at rest, --split-active while hovered, focused or pressed, and
61
+ * fully round on the trailing button while its menu is open. These rules give the first paint;
62
+ * once mounted, buttons/shapeMorph.ts springs the corners on Motion.
63
+ */
64
+ .md-btn-split-leading,
65
+ .md-btn-split-trailing {
66
+ --split-now: var(--split-inner);
67
+ }
68
+ .md-btn-split-trailing[data-state='open'] {
69
+ --split-now: var(--btn-round);
70
+ }
71
+ .md-btn-split-leading {
72
+ border-start-start-radius: var(--btn-round);
73
+ border-end-start-radius: var(--btn-round);
74
+ border-start-end-radius: var(--split-now);
75
+ border-end-end-radius: var(--split-now);
76
+ }
77
+ .md-btn-split-trailing {
78
+ border-start-start-radius: var(--split-now);
79
+ border-end-start-radius: var(--split-now);
80
+ border-start-end-radius: var(--btn-round);
81
+ border-end-end-radius: var(--btn-round);
107
82
  }
108
83
 
109
84
  /*
110
- * Connected button group item — replaces the deprecated segmented button.
111
- * `--cbg-inner` (per size) is the shared radius facing a neighbor; `--cbg-outer`
112
- * defaults to fully round and is only overridden (to equal --cbg-inner) for the
113
- * square shape, so the position rules below become no-ops in that case.
114
- * Selecting/pressing an item collapses all four of its own corners to
115
- * --cbg-inner ("round to square") without touching its neighbors' shape.
85
+ * Connected button group item (https://m3.material.io/components/button-groups/specs).
86
+ * Inner corners (facing a neighbour) are --cbg-inner, --cbg-pressed while pressed, and fully
87
+ * round while selected; outer corners are --cbg-outer. These rules give the first paint; once
88
+ * mounted, buttons/shapeMorph.ts springs the corners on Motion. Neighbours never change.
116
89
  */
117
90
  .md-btn-connected {
118
- border-radius: var(--cbg-inner, 9999px);
119
- transition:
120
- border-radius var(--md-sys-motion-duration-fast-spatial)
121
- var(--md-sys-motion-timing-function-fast-spatial),
122
- background-color var(--md-sys-motion-duration-fast-effects-spring)
123
- var(--md-sys-motion-timing-function-fast-effects-spring),
124
- color var(--md-sys-motion-duration-fast-effects-spring)
125
- var(--md-sys-motion-timing-function-fast-effects-spring);
91
+ --cbg-now: var(--cbg-inner);
92
+ border-radius: var(--cbg-now);
126
93
 
127
- &:only-child {
128
- border-radius: var(--cbg-outer, 9999px);
94
+ &[data-state='on'] {
95
+ --cbg-now: var(--btn-round);
129
96
  }
130
97
 
131
- &[data-orientation='horizontal']:first-child:not(:only-child) {
132
- border-top-left-radius: var(--cbg-outer, 9999px);
133
- border-bottom-left-radius: var(--cbg-outer, 9999px);
98
+ &[data-orientation='horizontal']:first-child {
99
+ border-start-start-radius: var(--cbg-outer);
100
+ border-end-start-radius: var(--cbg-outer);
134
101
  }
135
- &[data-orientation='horizontal']:last-child:not(:only-child) {
136
- border-top-right-radius: var(--cbg-outer, 9999px);
137
- border-bottom-right-radius: var(--cbg-outer, 9999px);
102
+ &[data-orientation='horizontal']:last-child {
103
+ border-start-end-radius: var(--cbg-outer);
104
+ border-end-end-radius: var(--cbg-outer);
138
105
  }
139
- &[data-orientation='vertical']:first-child:not(:only-child) {
140
- border-top-left-radius: var(--cbg-outer, 9999px);
141
- border-top-right-radius: var(--cbg-outer, 9999px);
106
+ &[data-orientation='vertical']:first-child {
107
+ border-start-start-radius: var(--cbg-outer);
108
+ border-start-end-radius: var(--cbg-outer);
142
109
  }
143
- &[data-orientation='vertical']:last-child:not(:only-child) {
144
- border-bottom-left-radius: var(--cbg-outer, 9999px);
145
- border-bottom-right-radius: var(--cbg-outer, 9999px);
146
- }
147
-
148
- &:active:not(:disabled),
149
- &[data-state='on'] {
150
- border-radius: var(--cbg-inner, 4px) !important;
110
+ &[data-orientation='vertical']:last-child {
111
+ border-end-start-radius: var(--cbg-outer);
112
+ border-end-end-radius: var(--cbg-outer);
151
113
  }
152
114
  }
153
115
 
@@ -165,65 +127,6 @@
165
127
  @apply bg-md-sys-color-error text-md-sys-color-on-error;
166
128
  }
167
129
 
168
- .md-component-button-tonal-primary {
169
- @apply bg-md-sys-color-primary-container text-md-sys-color-on-primary-container;
170
- }
171
- .md-component-button-tonal-secondary {
172
- @apply bg-md-sys-color-secondary-container text-md-sys-color-on-secondary-container;
173
- }
174
- .md-component-button-tonal-tertiary {
175
- @apply bg-md-sys-color-tertiary-container text-md-sys-color-on-tertiary-container;
176
- }
177
- .md-component-button-tonal-error {
178
- @apply bg-md-sys-color-error-container text-md-sys-color-on-error-container;
179
- }
180
-
181
- .md-component-button-outline-default {
182
- @apply text-md-sys-color-on-surface-variant outline-md-sys-color-outline-variant outline-2;
183
- }
184
- .md-component-button-outline-primary {
185
- @apply text-md-sys-color-primary outline-md-sys-color-primary outline;
186
- }
187
- .md-component-button-outline-secondary {
188
- @apply text-md-sys-color-secondary outline-md-sys-color-secondary outline;
189
- }
190
- .md-component-button-outline-tertiary {
191
- @apply text-md-sys-color-tertiary outline-md-sys-color-tertiary outline;
192
- }
193
- .md-component-button-outline-error {
194
- @apply text-md-sys-color-error outline-md-sys-color-error outline;
195
- }
196
-
197
- .md-component-button-text-primary {
198
- @apply text-md-sys-color-primary;
199
- }
200
- .md-component-button-text-secondary {
201
- @apply text-md-sys-color-secondary;
202
- }
203
- .md-component-button-text-tertiary {
204
- @apply text-md-sys-color-tertiary;
205
- }
206
- .md-component-button-text-error {
207
- @apply text-md-sys-color-error;
208
- }
209
-
210
- .md-component-button-elevated-default {
211
- @apply bg-md-sys-color-surface-container-low text-md-sys-color-primary shadow-elevation-1;
212
- }
213
-
214
- .md-component-button-elevated-primary {
215
- @apply bg-md-sys-color-surface-container-low text-md-sys-color-primary shadow-elevation-1;
216
- }
217
- .md-component-button-elevated-secondary {
218
- @apply bg-md-sys-color-surface-container-low text-md-sys-color-secondary shadow-elevation-1;
219
- }
220
- .md-component-button-elevated-tertiary {
221
- @apply bg-md-sys-color-surface-container-low text-md-sys-color-tertiary shadow-elevation-1;
222
- }
223
- .md-component-button-elevated-error {
224
- @apply bg-md-sys-color-surface-container-low text-md-sys-color-error shadow-elevation-1;
225
- }
226
-
227
130
  [class^='material-symbols-'],
228
131
  [class*=' material-symbols-'] {
229
132
  font-weight: normal;
@@ -267,7 +170,7 @@
267
170
  }
268
171
 
269
172
  @utility state-layer {
270
- @apply before:pointer-events-none before:absolute before:inset-0 before:content-[''];
173
+ @apply before:inset-spacing-0 before:pointer-events-none before:absolute before:content-[''];
271
174
  &::before {
272
175
  transition: background-color var(--md-sys-motion-duration-fast-effects-spring)
273
176
  var(--md-sys-motion-timing-function-fast-effects-spring);
@@ -43,3 +43,12 @@
43
43
  @utility shadow-elevation-5 {
44
44
  box-shadow: var(--md-sys-elevation-5);
45
45
  }
46
+
47
+ /* Elevation 3 as a filter, for surfaces whose shape is a clip-path (a box-shadow would be
48
+ clipped with it). drop-shadow has no spread, so the ambient layer is a little tighter. */
49
+ @utility drop-shadow-elevation-3 {
50
+ filter: drop-shadow(
51
+ 0px 1px 3px color-mix(in srgb, var(--color-md-sys-color-shadow) 30%, transparent)
52
+ )
53
+ drop-shadow(0px 4px 8px color-mix(in srgb, var(--color-md-sys-color-shadow) 15%, transparent));
54
+ }
@@ -0,0 +1,33 @@
1
+ /*
2
+ * Stacking layers for surfaces that float over the page. M3 defines no z-index tokens, so the
3
+ * library names its own: every fixed, sticky or portaled component takes one of these instead
4
+ * of a number, so their relative order is set here and nowhere else. Apply with
5
+ * `z-layer-<name>` (z-layer-modal); override the value on :root with `--z-layer-<name>`.
6
+ * Stacking inside one component (a slider thumb over its track) keeps plain z-10/z-20.
7
+ *
8
+ * Order, lowest first:
9
+ * bar Navbar, AppBar, ActionRail, docked Toolbar
10
+ * rail Rail and its tablet scrim (the expanded rail covers the bars)
11
+ * sheet standard (non-modal) BottomSheet
12
+ * fab fixed FABs such as ThemeSwitcher
13
+ * pane DraggablePane and its minimised pill, floating windows over app chrome
14
+ * modal Dialogue scrim and content, a FAB's container-transform surface
15
+ * snackbar stays readable while a dialog is open
16
+ * popup menus, selects, tooltips, popovers, date/time pickers, opened from any layer
17
+ * beneath, including a dialog or a pane
18
+ * Modal sheets are native <dialog>s in the top layer and sit above all of these.
19
+ */
20
+ @theme static {
21
+ --z-layer-bar: 30;
22
+ --z-layer-rail: 40;
23
+ --z-layer-sheet: 40;
24
+ --z-layer-fab: 50;
25
+ --z-layer-pane: 60;
26
+ --z-layer-modal: 70;
27
+ --z-layer-snackbar: 80;
28
+ --z-layer-popup: 90;
29
+ }
30
+
31
+ @utility z-layer-* {
32
+ z-index: --value(--z-layer-*);
33
+ }
@@ -0,0 +1,29 @@
1
+ /*
2
+ * M3 system spacing: https://m3.material.io/styles/spacing/tokens
3
+ * md.sys.measurement.space<N> = N/100 x the 8dp base (space100). Registered in Tailwind's
4
+ * spacing namespace, so every spacing utility takes them: mr-spacing-200 (16dp),
5
+ * gap-spacing-50 (4dp), p-spacing-300, size-spacing-600, -mt-spacing-100, and so on.
6
+ * The number is M3's token number, not Tailwind's 4px multiplier: spacing-200 is 16dp, the same
7
+ * as Tailwind's p-4. Tailwind's numeric scale stays available to consuming apps; the library's
8
+ * own spacing uses these tokens.
9
+ */
10
+ @theme {
11
+ --spacing-spacing-0: 0; /* md.sys.measurement.space0, 0dp */
12
+ --spacing-spacing-25: 0.125rem; /* md.sys.measurement.space25, 2dp */
13
+ --spacing-spacing-50: 0.25rem; /* md.sys.measurement.space50, 4dp */
14
+ --spacing-spacing-75: 0.375rem; /* md.sys.measurement.space75, 6dp */
15
+ --spacing-spacing-100: 0.5rem; /* md.sys.measurement.space100, 8dp */
16
+ --spacing-spacing-125: 0.625rem; /* md.sys.measurement.space125, 10dp */
17
+ --spacing-spacing-150: 0.75rem; /* md.sys.measurement.space150, 12dp */
18
+ --spacing-spacing-175: 0.875rem; /* md.sys.measurement.space175, 14dp */
19
+ --spacing-spacing-200: 1rem; /* md.sys.measurement.space200, 16dp */
20
+ --spacing-spacing-250: 1.25rem; /* md.sys.measurement.space250, 20dp */
21
+ --spacing-spacing-300: 1.5rem; /* md.sys.measurement.space300, 24dp */
22
+ --spacing-spacing-400: 2rem; /* md.sys.measurement.space400, 32dp */
23
+ --spacing-spacing-450: 2.25rem; /* md.sys.measurement.space450, 36dp */
24
+ --spacing-spacing-500: 2.5rem; /* md.sys.measurement.space500, 40dp */
25
+ --spacing-spacing-600: 3rem; /* md.sys.measurement.space600, 48dp */
26
+ --spacing-spacing-700: 3.5rem; /* md.sys.measurement.space700, 56dp */
27
+ --spacing-spacing-800: 4rem; /* md.sys.measurement.space800, 64dp */
28
+ --spacing-spacing-900: 4.5rem; /* md.sys.measurement.space900, 72dp */
29
+ }