@francofantomius/material-components 1.1.1 → 1.2.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 (380) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +2 -1
  3. package/custom-elements.json +1049 -300
  4. package/dist/chunks/{account-menu-Dau0UHTl.js → account-menu-Bo7NghIm.js} +181 -223
  5. package/dist/chunks/{account-menu-Dau0UHTl.js.map → account-menu-Bo7NghIm.js.map} +1 -1
  6. package/dist/chunks/app-drawer-DjKSuatE.js +855 -0
  7. package/dist/chunks/{app-drawer-Du1ePzxZ.js.map → app-drawer-DjKSuatE.js.map} +1 -1
  8. package/dist/chunks/{badge-G4EjcMoy.js → badge-sZzNelZz.js} +30 -34
  9. package/dist/chunks/{badge-G4EjcMoy.js.map → badge-sZzNelZz.js.map} +1 -1
  10. package/dist/chunks/{bottom-sheet-q79BBYAj.js → bottom-sheet-BGgbUmKd.js} +98 -109
  11. package/dist/chunks/{bottom-sheet-q79BBYAj.js.map → bottom-sheet-BGgbUmKd.js.map} +1 -1
  12. package/dist/chunks/{button-D2vn7kJ8.js → button-DeQQlYds.js} +62 -72
  13. package/dist/chunks/{button-D2vn7kJ8.js.map → button-DeQQlYds.js.map} +1 -1
  14. package/dist/chunks/button-group-R2jN8FXK.js +136 -0
  15. package/dist/chunks/{button-group-CNqvJx1n.js.map → button-group-R2jN8FXK.js.map} +1 -1
  16. package/dist/chunks/{card-DVffdPpv.js → card-CVhWizDF.js} +45 -50
  17. package/dist/chunks/{card-DVffdPpv.js.map → card-CVhWizDF.js.map} +1 -1
  18. package/dist/chunks/{carousel-item-BG6kjjjk.js → carousel-item-DNp2zhP9.js} +62 -73
  19. package/dist/chunks/{carousel-item-BG6kjjjk.js.map → carousel-item-DNp2zhP9.js.map} +1 -1
  20. package/dist/chunks/{checkbox-BqlboAHd.js → checkbox-CsqUHVOF.js} +59 -64
  21. package/dist/chunks/{checkbox-BqlboAHd.js.map → checkbox-CsqUHVOF.js.map} +1 -1
  22. package/dist/chunks/{chip-CI1ZINnr.js → chip-B5c-I8bj.js} +56 -63
  23. package/dist/chunks/{chip-CI1ZINnr.js.map → chip-B5c-I8bj.js.map} +1 -1
  24. package/dist/chunks/code-CM6hIZNx.js +1531 -0
  25. package/dist/chunks/{code-C5UFBkCh.js.map → code-CM6hIZNx.js.map} +1 -1
  26. package/dist/chunks/date-picker-B15_rR0f.js +774 -0
  27. package/dist/chunks/date-picker-B15_rR0f.js.map +1 -0
  28. package/dist/chunks/decorate-DknOJ8FJ.js +40 -0
  29. package/dist/chunks/{decorate-DXuynaiA.js.map → decorate-DknOJ8FJ.js.map} +1 -1
  30. package/dist/chunks/{dialog-DGVEE5m_.js → dialog-Czknf8dl.js} +47 -52
  31. package/dist/chunks/{dialog-DGVEE5m_.js.map → dialog-Czknf8dl.js.map} +1 -1
  32. package/dist/chunks/divider-DIyCOosa.js +78 -0
  33. package/dist/chunks/{divider-DNepwoZv.js.map → divider-DIyCOosa.js.map} +1 -1
  34. package/dist/chunks/{fab-C9j3WBHE.js → fab-aZC0-lHo.js} +38 -44
  35. package/dist/chunks/{fab-C9j3WBHE.js.map → fab-aZC0-lHo.js.map} +1 -1
  36. package/dist/chunks/{fab-menu.css-3pu930sZ.js → fab-menu.css-BdVg1k4c.js} +5 -6
  37. package/dist/chunks/{fab-menu.css-3pu930sZ.js.map → fab-menu.css-BdVg1k4c.js.map} +1 -1
  38. package/dist/chunks/focus-ring-K6SY_mIm.js +69 -0
  39. package/dist/chunks/{focus-ring-CuiJuM-y.js.map → focus-ring-K6SY_mIm.js.map} +1 -1
  40. package/dist/chunks/form-associated-Do5uXckv.js +69 -0
  41. package/dist/chunks/{form-associated-Cty_ZaS9.js.map → form-associated-Do5uXckv.js.map} +1 -1
  42. package/dist/chunks/icon-FvKeXi61.js +59 -0
  43. package/dist/chunks/{icon-DrNqcNEL.js.map → icon-FvKeXi61.js.map} +1 -1
  44. package/dist/chunks/{icon-button-BQz73GLa.js → icon-button-CulnCZpZ.js} +58 -67
  45. package/dist/chunks/{icon-button-BQz73GLa.js.map → icon-button-CulnCZpZ.js.map} +1 -1
  46. package/dist/chunks/{list-D8olR7oZ.js → list-D7yrbJRL.js} +64 -72
  47. package/dist/chunks/{list-D8olR7oZ.js.map → list-D7yrbJRL.js.map} +1 -1
  48. package/dist/chunks/{loading-indicator-CvWnZr9o.js → loading-indicator-D9AyxNQh.js} +41 -46
  49. package/dist/chunks/{loading-indicator-CvWnZr9o.js.map → loading-indicator-D9AyxNQh.js.map} +1 -1
  50. package/dist/chunks/{menu-item-BBSp5Cqc.js → menu-item-C3entPo7.js} +77 -91
  51. package/dist/chunks/{menu-item-BBSp5Cqc.js.map → menu-item-C3entPo7.js.map} +1 -1
  52. package/dist/chunks/{navigation-bar-item-C9DfOEzg.js → navigation-bar-item-CWHCQeNw.js} +98 -115
  53. package/dist/chunks/{navigation-bar-item-C9DfOEzg.js.map → navigation-bar-item-CWHCQeNw.js.map} +1 -1
  54. package/dist/chunks/{navigation-drawer-CKl44Ef5.js → navigation-drawer-pGer0t4z.js} +116 -138
  55. package/dist/chunks/{navigation-drawer-CKl44Ef5.js.map → navigation-drawer-pGer0t4z.js.map} +1 -1
  56. package/dist/chunks/{navigation-rail-item-6pdhNHJK.js → navigation-rail-item-CWvGjLjC.js} +70 -86
  57. package/dist/chunks/{navigation-rail-item-6pdhNHJK.js.map → navigation-rail-item-CWvGjLjC.js.map} +1 -1
  58. package/dist/chunks/{player-C4ydiIpr.js → player-dT08kxeG.js} +423 -466
  59. package/dist/chunks/{player-C4ydiIpr.js.map → player-dT08kxeG.js.map} +1 -1
  60. package/dist/chunks/{progress-LQmLMDjX.js → progress-etZuX_VD.js} +46 -53
  61. package/dist/chunks/{progress-LQmLMDjX.js.map → progress-etZuX_VD.js.map} +1 -1
  62. package/dist/chunks/radio-jPCwykIa.js +197 -0
  63. package/dist/chunks/{radio-Bily78NT.js.map → radio-jPCwykIa.js.map} +1 -1
  64. package/dist/chunks/ripple-CBOKeVfm.js +132 -0
  65. package/dist/chunks/{ripple-squbKHhj.js.map → ripple-CBOKeVfm.js.map} +1 -1
  66. package/dist/chunks/{search-bar-fUD0qU2P.js → search-bar-B6xxVT7u.js} +244 -203
  67. package/dist/chunks/search-bar-B6xxVT7u.js.map +1 -0
  68. package/dist/chunks/segmented-button-Fon9kOHV.js +253 -0
  69. package/dist/chunks/{segmented-button-B0BvGSQ7.js.map → segmented-button-Fon9kOHV.js.map} +1 -1
  70. package/dist/chunks/{side-sheet-S2w081AK.js → side-sheet-sQ8qGKVm.js} +73 -81
  71. package/dist/chunks/{side-sheet-S2w081AK.js.map → side-sheet-sQ8qGKVm.js.map} +1 -1
  72. package/dist/chunks/slider-OIyEcUU9.js +448 -0
  73. package/dist/chunks/slider-OIyEcUU9.js.map +1 -0
  74. package/dist/chunks/{snackbar-Wsz3BzEY.js → snackbar-Yi6fF9vM.js} +57 -62
  75. package/dist/chunks/{snackbar-Wsz3BzEY.js.map → snackbar-Yi6fF9vM.js.map} +1 -1
  76. package/dist/chunks/{split-button-DUfjukQY.js → split-button-CLjVJe3I.js} +155 -172
  77. package/dist/chunks/{split-button-DUfjukQY.js.map → split-button-CLjVJe3I.js.map} +1 -1
  78. package/dist/chunks/{switch-DdukrvXb.js → switch-mtu6AVEh.js} +54 -57
  79. package/dist/chunks/{switch-DdukrvXb.js.map → switch-mtu6AVEh.js.map} +1 -1
  80. package/dist/chunks/table-C5rCvdFc.js +724 -0
  81. package/dist/chunks/{table-CqHnneAj.js.map → table-C5rCvdFc.js.map} +1 -1
  82. package/dist/chunks/tabs-C0mtURlT.js +182 -0
  83. package/dist/chunks/{tabs-BfOtoeir.js.map → tabs-C0mtURlT.js.map} +1 -1
  84. package/dist/chunks/{text-field-hN6-2HQy.js → text-field-MifFD7uk.js} +92 -110
  85. package/dist/chunks/{text-field-hN6-2HQy.js.map → text-field-MifFD7uk.js.map} +1 -1
  86. package/dist/chunks/time-picker-JTcLcJuz.js +810 -0
  87. package/dist/chunks/time-picker-JTcLcJuz.js.map +1 -0
  88. package/dist/chunks/{toolbar-DXVQbQKJ.js → toolbar-CsxKc2Yd.js} +48 -55
  89. package/dist/chunks/{toolbar-DXVQbQKJ.js.map → toolbar-CsxKc2Yd.js.map} +1 -1
  90. package/dist/chunks/tooltip-Ds3lNowS.js +380 -0
  91. package/dist/chunks/{tooltip-CE7JMHMu.js.map → tooltip-Ds3lNowS.js.map} +1 -1
  92. package/dist/chunks/{top-app-bar-Dgbp6CFv.js → top-app-bar-TrnjKzOX.js} +52 -53
  93. package/dist/chunks/top-app-bar-TrnjKzOX.js.map +1 -0
  94. package/dist/components/account-menu/account-menu.js +2 -8
  95. package/dist/components/app-drawer/app-drawer.js +2 -9
  96. package/dist/components/badge/badge.js +2 -4
  97. package/dist/components/bottom-sheet/bottom-sheet.js +2 -4
  98. package/dist/components/button/button.js +2 -4
  99. package/dist/components/button-group/button-group.js +2 -4
  100. package/dist/components/card/card.js +2 -4
  101. package/dist/components/carousel/carousel-item.js +2 -4
  102. package/dist/components/carousel/carousel.js +214 -232
  103. package/dist/components/carousel/carousel.js.map +1 -1
  104. package/dist/components/checkbox/checkbox.js +2 -4
  105. package/dist/components/chip/chip.js +2 -5
  106. package/dist/components/code/code.js +2 -5
  107. package/dist/components/date-picker/date-picker.js +2 -4
  108. package/dist/components/dialog/dialog.js +2 -4
  109. package/dist/components/divider/divider.js +2 -4
  110. package/dist/components/fab/fab.js +2 -4
  111. package/dist/components/fab-menu/fab-menu-item.js +53 -61
  112. package/dist/components/fab-menu/fab-menu-item.js.map +1 -1
  113. package/dist/components/fab-menu/fab-menu.js +98 -111
  114. package/dist/components/fab-menu/fab-menu.js.map +1 -1
  115. package/dist/components/icon/icon.js +2 -4
  116. package/dist/components/icon-button/icon-button.js +2 -4
  117. package/dist/components/list/list.js +2 -5
  118. package/dist/components/loading-indicator/loading-indicator.js +2 -4
  119. package/dist/components/menu/menu-item.js +2 -4
  120. package/dist/components/menu/menu.js +165 -183
  121. package/dist/components/menu/menu.js.map +1 -1
  122. package/dist/components/navigation-bar/navigation-bar-item.js +2 -5
  123. package/dist/components/navigation-bar/navigation-bar.js +131 -143
  124. package/dist/components/navigation-bar/navigation-bar.js.map +1 -1
  125. package/dist/components/navigation-drawer/navigation-drawer.js +2 -8
  126. package/dist/components/navigation-rail/navigation-rail-item.js +2 -5
  127. package/dist/components/navigation-rail/navigation-rail.js +92 -102
  128. package/dist/components/navigation-rail/navigation-rail.js.map +1 -1
  129. package/dist/components/player/player.js +2 -7
  130. package/dist/components/progress/progress.js +2 -5
  131. package/dist/components/radio/radio.js +2 -5
  132. package/dist/components/search-bar/search-bar.js +2 -5
  133. package/dist/components/segmented-button/segmented-button.js +2 -5
  134. package/dist/components/side-sheet/side-sheet.js +2 -4
  135. package/dist/components/slider/slider.js +2 -4
  136. package/dist/components/snackbar/snackbar.js +2 -4
  137. package/dist/components/split-button/split-button.js +2 -4
  138. package/dist/components/switch/switch.js +2 -4
  139. package/dist/components/table/table.js +2 -13
  140. package/dist/components/tabs/tabs.js +2 -5
  141. package/dist/components/text-field/text-field.js +2 -4
  142. package/dist/components/time-picker/time-picker.js +2 -4
  143. package/dist/components/toolbar/toolbar.js +2 -4
  144. package/dist/components/tooltip/tooltip.js +2 -4
  145. package/dist/components/top-app-bar/top-app-bar.js +2 -5
  146. package/dist/index.js +52 -150
  147. package/dist/internal/focus-ring/focus-ring.js +2 -4
  148. package/dist/internal/ripple/ripple.js +2 -4
  149. package/dist/tokens/index.js +468 -314
  150. package/dist/tokens/index.js.map +1 -1
  151. package/llms.txt +74 -8
  152. package/package.json +2 -14
  153. package/dist/chunks/app-drawer-Du1ePzxZ.js +0 -903
  154. package/dist/chunks/button-group-CNqvJx1n.js +0 -143
  155. package/dist/chunks/code-C5UFBkCh.js +0 -1830
  156. package/dist/chunks/date-picker-DJeHi4w-.js +0 -777
  157. package/dist/chunks/date-picker-DJeHi4w-.js.map +0 -1
  158. package/dist/chunks/decorate-DXuynaiA.js +0 -39
  159. package/dist/chunks/divider-DNepwoZv.js +0 -82
  160. package/dist/chunks/focus-ring-CuiJuM-y.js +0 -71
  161. package/dist/chunks/form-associated-Cty_ZaS9.js +0 -73
  162. package/dist/chunks/icon-DrNqcNEL.js +0 -62
  163. package/dist/chunks/radio-Bily78NT.js +0 -205
  164. package/dist/chunks/ripple-squbKHhj.js +0 -135
  165. package/dist/chunks/search-bar-fUD0qU2P.js.map +0 -1
  166. package/dist/chunks/segmented-button-B0BvGSQ7.js +0 -265
  167. package/dist/chunks/slider-D-mnO8yQ.js +0 -450
  168. package/dist/chunks/slider-D-mnO8yQ.js.map +0 -1
  169. package/dist/chunks/table-CqHnneAj.js +0 -773
  170. package/dist/chunks/tabs-BfOtoeir.js +0 -191
  171. package/dist/chunks/time-picker-CZnb2sWz.js +0 -785
  172. package/dist/chunks/time-picker-CZnb2sWz.js.map +0 -1
  173. package/dist/chunks/tooltip-CE7JMHMu.js +0 -398
  174. package/dist/chunks/top-app-bar-Dgbp6CFv.js.map +0 -1
  175. package/dist/components/account-menu/account-menu.css.d.ts +0 -3
  176. package/dist/components/account-menu/account-menu.css.d.ts.map +0 -1
  177. package/dist/components/account-menu/account-menu.d.ts +0 -111
  178. package/dist/components/account-menu/account-menu.d.ts.map +0 -1
  179. package/dist/components/app-drawer/app-drawer.css.d.ts +0 -3
  180. package/dist/components/app-drawer/app-drawer.css.d.ts.map +0 -1
  181. package/dist/components/app-drawer/app-drawer.d.ts +0 -173
  182. package/dist/components/app-drawer/app-drawer.d.ts.map +0 -1
  183. package/dist/components/badge/badge.css.d.ts +0 -2
  184. package/dist/components/badge/badge.css.d.ts.map +0 -1
  185. package/dist/components/badge/badge.d.ts +0 -16
  186. package/dist/components/badge/badge.d.ts.map +0 -1
  187. package/dist/components/bottom-sheet/bottom-sheet.css.d.ts +0 -2
  188. package/dist/components/bottom-sheet/bottom-sheet.css.d.ts.map +0 -1
  189. package/dist/components/bottom-sheet/bottom-sheet.d.ts +0 -69
  190. package/dist/components/bottom-sheet/bottom-sheet.d.ts.map +0 -1
  191. package/dist/components/button/button.css.d.ts +0 -2
  192. package/dist/components/button/button.css.d.ts.map +0 -1
  193. package/dist/components/button/button.d.ts +0 -25
  194. package/dist/components/button/button.d.ts.map +0 -1
  195. package/dist/components/button-group/button-group.css.d.ts +0 -2
  196. package/dist/components/button-group/button-group.css.d.ts.map +0 -1
  197. package/dist/components/button-group/button-group.d.ts +0 -28
  198. package/dist/components/button-group/button-group.d.ts.map +0 -1
  199. package/dist/components/card/card.css.d.ts +0 -2
  200. package/dist/components/card/card.css.d.ts.map +0 -1
  201. package/dist/components/card/card.d.ts +0 -18
  202. package/dist/components/card/card.d.ts.map +0 -1
  203. package/dist/components/carousel/carousel-item.d.ts +0 -33
  204. package/dist/components/carousel/carousel-item.d.ts.map +0 -1
  205. package/dist/components/carousel/carousel.css.d.ts +0 -3
  206. package/dist/components/carousel/carousel.css.d.ts.map +0 -1
  207. package/dist/components/carousel/carousel.d.ts +0 -81
  208. package/dist/components/carousel/carousel.d.ts.map +0 -1
  209. package/dist/components/checkbox/checkbox.css.d.ts +0 -2
  210. package/dist/components/checkbox/checkbox.css.d.ts.map +0 -1
  211. package/dist/components/checkbox/checkbox.d.ts +0 -24
  212. package/dist/components/checkbox/checkbox.d.ts.map +0 -1
  213. package/dist/components/chip/chip.css.d.ts +0 -3
  214. package/dist/components/chip/chip.css.d.ts.map +0 -1
  215. package/dist/components/chip/chip.d.ts +0 -27
  216. package/dist/components/chip/chip.d.ts.map +0 -1
  217. package/dist/components/code/code.css.d.ts +0 -2
  218. package/dist/components/code/code.css.d.ts.map +0 -1
  219. package/dist/components/code/code.d.ts +0 -106
  220. package/dist/components/code/code.d.ts.map +0 -1
  221. package/dist/components/code/highlighter.d.ts +0 -8
  222. package/dist/components/code/highlighter.d.ts.map +0 -1
  223. package/dist/components/code/linter.d.ts +0 -44
  224. package/dist/components/code/linter.d.ts.map +0 -1
  225. package/dist/components/date-picker/date-picker.css.d.ts +0 -2
  226. package/dist/components/date-picker/date-picker.css.d.ts.map +0 -1
  227. package/dist/components/date-picker/date-picker.d.ts +0 -59
  228. package/dist/components/date-picker/date-picker.d.ts.map +0 -1
  229. package/dist/components/dialog/dialog.css.d.ts +0 -2
  230. package/dist/components/dialog/dialog.css.d.ts.map +0 -1
  231. package/dist/components/dialog/dialog.d.ts +0 -22
  232. package/dist/components/dialog/dialog.d.ts.map +0 -1
  233. package/dist/components/divider/divider.css.d.ts +0 -2
  234. package/dist/components/divider/divider.css.d.ts.map +0 -1
  235. package/dist/components/divider/divider.d.ts +0 -16
  236. package/dist/components/divider/divider.d.ts.map +0 -1
  237. package/dist/components/fab/fab.css.d.ts +0 -2
  238. package/dist/components/fab/fab.css.d.ts.map +0 -1
  239. package/dist/components/fab/fab.d.ts +0 -19
  240. package/dist/components/fab/fab.d.ts.map +0 -1
  241. package/dist/components/fab-menu/fab-menu-item.d.ts +0 -35
  242. package/dist/components/fab-menu/fab-menu-item.d.ts.map +0 -1
  243. package/dist/components/fab-menu/fab-menu.css.d.ts +0 -3
  244. package/dist/components/fab-menu/fab-menu.css.d.ts.map +0 -1
  245. package/dist/components/fab-menu/fab-menu.d.ts +0 -72
  246. package/dist/components/fab-menu/fab-menu.d.ts.map +0 -1
  247. package/dist/components/icon/icon.css.d.ts +0 -2
  248. package/dist/components/icon/icon.css.d.ts.map +0 -1
  249. package/dist/components/icon/icon.d.ts +0 -15
  250. package/dist/components/icon/icon.d.ts.map +0 -1
  251. package/dist/components/icon-button/icon-button.css.d.ts +0 -2
  252. package/dist/components/icon-button/icon-button.css.d.ts.map +0 -1
  253. package/dist/components/icon-button/icon-button.d.ts +0 -22
  254. package/dist/components/icon-button/icon-button.d.ts.map +0 -1
  255. package/dist/components/list/list.css.d.ts +0 -3
  256. package/dist/components/list/list.css.d.ts.map +0 -1
  257. package/dist/components/list/list.d.ts +0 -25
  258. package/dist/components/list/list.d.ts.map +0 -1
  259. package/dist/components/loading-indicator/loading-indicator.css.d.ts +0 -2
  260. package/dist/components/loading-indicator/loading-indicator.css.d.ts.map +0 -1
  261. package/dist/components/loading-indicator/loading-indicator.d.ts +0 -48
  262. package/dist/components/loading-indicator/loading-indicator.d.ts.map +0 -1
  263. package/dist/components/menu/menu-item.d.ts +0 -41
  264. package/dist/components/menu/menu-item.d.ts.map +0 -1
  265. package/dist/components/menu/menu.css.d.ts +0 -3
  266. package/dist/components/menu/menu.css.d.ts.map +0 -1
  267. package/dist/components/menu/menu.d.ts +0 -91
  268. package/dist/components/menu/menu.d.ts.map +0 -1
  269. package/dist/components/navigation-bar/navigation-bar-item.d.ts +0 -49
  270. package/dist/components/navigation-bar/navigation-bar-item.d.ts.map +0 -1
  271. package/dist/components/navigation-bar/navigation-bar.css.d.ts +0 -3
  272. package/dist/components/navigation-bar/navigation-bar.css.d.ts.map +0 -1
  273. package/dist/components/navigation-bar/navigation-bar.d.ts +0 -50
  274. package/dist/components/navigation-bar/navigation-bar.d.ts.map +0 -1
  275. package/dist/components/navigation-drawer/navigation-drawer.css.d.ts +0 -3
  276. package/dist/components/navigation-drawer/navigation-drawer.css.d.ts.map +0 -1
  277. package/dist/components/navigation-drawer/navigation-drawer.d.ts +0 -76
  278. package/dist/components/navigation-drawer/navigation-drawer.d.ts.map +0 -1
  279. package/dist/components/navigation-rail/navigation-rail-item.d.ts +0 -36
  280. package/dist/components/navigation-rail/navigation-rail-item.d.ts.map +0 -1
  281. package/dist/components/navigation-rail/navigation-rail.css.d.ts +0 -3
  282. package/dist/components/navigation-rail/navigation-rail.css.d.ts.map +0 -1
  283. package/dist/components/navigation-rail/navigation-rail.d.ts +0 -43
  284. package/dist/components/navigation-rail/navigation-rail.d.ts.map +0 -1
  285. package/dist/components/player/player.css.d.ts +0 -2
  286. package/dist/components/player/player.css.d.ts.map +0 -1
  287. package/dist/components/player/player.d.ts +0 -99
  288. package/dist/components/player/player.d.ts.map +0 -1
  289. package/dist/components/progress/progress.css.d.ts +0 -2
  290. package/dist/components/progress/progress.css.d.ts.map +0 -1
  291. package/dist/components/progress/progress.d.ts +0 -21
  292. package/dist/components/progress/progress.d.ts.map +0 -1
  293. package/dist/components/radio/radio.css.d.ts +0 -3
  294. package/dist/components/radio/radio.css.d.ts.map +0 -1
  295. package/dist/components/radio/radio.d.ts +0 -38
  296. package/dist/components/radio/radio.d.ts.map +0 -1
  297. package/dist/components/search-bar/search-bar.css.d.ts +0 -2
  298. package/dist/components/search-bar/search-bar.css.d.ts.map +0 -1
  299. package/dist/components/search-bar/search-bar.d.ts +0 -81
  300. package/dist/components/search-bar/search-bar.d.ts.map +0 -1
  301. package/dist/components/segmented-button/segmented-button.css.d.ts +0 -3
  302. package/dist/components/segmented-button/segmented-button.css.d.ts.map +0 -1
  303. package/dist/components/segmented-button/segmented-button.d.ts +0 -40
  304. package/dist/components/segmented-button/segmented-button.d.ts.map +0 -1
  305. package/dist/components/side-sheet/side-sheet.css.d.ts +0 -2
  306. package/dist/components/side-sheet/side-sheet.css.d.ts.map +0 -1
  307. package/dist/components/side-sheet/side-sheet.d.ts +0 -57
  308. package/dist/components/side-sheet/side-sheet.d.ts.map +0 -1
  309. package/dist/components/slider/slider.css.d.ts +0 -2
  310. package/dist/components/slider/slider.css.d.ts.map +0 -1
  311. package/dist/components/slider/slider.d.ts +0 -51
  312. package/dist/components/slider/slider.d.ts.map +0 -1
  313. package/dist/components/snackbar/snackbar.css.d.ts +0 -2
  314. package/dist/components/snackbar/snackbar.css.d.ts.map +0 -1
  315. package/dist/components/snackbar/snackbar.d.ts +0 -24
  316. package/dist/components/snackbar/snackbar.d.ts.map +0 -1
  317. package/dist/components/split-button/split-button.css.d.ts +0 -2
  318. package/dist/components/split-button/split-button.css.d.ts.map +0 -1
  319. package/dist/components/split-button/split-button.d.ts +0 -89
  320. package/dist/components/split-button/split-button.d.ts.map +0 -1
  321. package/dist/components/switch/switch.css.d.ts +0 -2
  322. package/dist/components/switch/switch.css.d.ts.map +0 -1
  323. package/dist/components/switch/switch.d.ts +0 -22
  324. package/dist/components/switch/switch.d.ts.map +0 -1
  325. package/dist/components/table/table.css.d.ts +0 -8
  326. package/dist/components/table/table.css.d.ts.map +0 -1
  327. package/dist/components/table/table.d.ts +0 -158
  328. package/dist/components/table/table.d.ts.map +0 -1
  329. package/dist/components/tabs/tabs.css.d.ts +0 -3
  330. package/dist/components/tabs/tabs.css.d.ts.map +0 -1
  331. package/dist/components/tabs/tabs.d.ts +0 -33
  332. package/dist/components/tabs/tabs.d.ts.map +0 -1
  333. package/dist/components/text-field/text-field.css.d.ts +0 -2
  334. package/dist/components/text-field/text-field.css.d.ts.map +0 -1
  335. package/dist/components/text-field/text-field.d.ts +0 -40
  336. package/dist/components/text-field/text-field.d.ts.map +0 -1
  337. package/dist/components/time-picker/time-picker.css.d.ts +0 -2
  338. package/dist/components/time-picker/time-picker.css.d.ts.map +0 -1
  339. package/dist/components/time-picker/time-picker.d.ts +0 -87
  340. package/dist/components/time-picker/time-picker.d.ts.map +0 -1
  341. package/dist/components/toolbar/toolbar.css.d.ts +0 -2
  342. package/dist/components/toolbar/toolbar.css.d.ts.map +0 -1
  343. package/dist/components/toolbar/toolbar.d.ts +0 -53
  344. package/dist/components/toolbar/toolbar.d.ts.map +0 -1
  345. package/dist/components/tooltip/tooltip.css.d.ts +0 -2
  346. package/dist/components/tooltip/tooltip.css.d.ts.map +0 -1
  347. package/dist/components/tooltip/tooltip.d.ts +0 -89
  348. package/dist/components/tooltip/tooltip.d.ts.map +0 -1
  349. package/dist/components/top-app-bar/top-app-bar.css.d.ts +0 -2
  350. package/dist/components/top-app-bar/top-app-bar.css.d.ts.map +0 -1
  351. package/dist/components/top-app-bar/top-app-bar.d.ts +0 -29
  352. package/dist/components/top-app-bar/top-app-bar.d.ts.map +0 -1
  353. package/dist/index.d.ts +0 -52
  354. package/dist/index.d.ts.map +0 -1
  355. package/dist/internal/base-component.d.ts +0 -13
  356. package/dist/internal/base-component.d.ts.map +0 -1
  357. package/dist/internal/focus-ring/focus-ring.css.d.ts +0 -2
  358. package/dist/internal/focus-ring/focus-ring.css.d.ts.map +0 -1
  359. package/dist/internal/focus-ring/focus-ring.d.ts +0 -18
  360. package/dist/internal/focus-ring/focus-ring.d.ts.map +0 -1
  361. package/dist/internal/form-associated.d.ts +0 -26
  362. package/dist/internal/form-associated.d.ts.map +0 -1
  363. package/dist/internal/ripple/ripple.css.d.ts +0 -2
  364. package/dist/internal/ripple/ripple.css.d.ts.map +0 -1
  365. package/dist/internal/ripple/ripple.d.ts +0 -23
  366. package/dist/internal/ripple/ripple.d.ts.map +0 -1
  367. package/dist/tokens/colors.d.ts +0 -42
  368. package/dist/tokens/colors.d.ts.map +0 -1
  369. package/dist/tokens/elevation.d.ts +0 -9
  370. package/dist/tokens/elevation.d.ts.map +0 -1
  371. package/dist/tokens/index.d.ts +0 -7
  372. package/dist/tokens/index.d.ts.map +0 -1
  373. package/dist/tokens/motion.d.ts +0 -21
  374. package/dist/tokens/motion.d.ts.map +0 -1
  375. package/dist/tokens/shape.d.ts +0 -10
  376. package/dist/tokens/shape.d.ts.map +0 -1
  377. package/dist/tokens/theme.css.d.ts +0 -4
  378. package/dist/tokens/theme.css.d.ts.map +0 -1
  379. package/dist/tokens/typography.d.ts +0 -101
  380. package/dist/tokens/typography.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/tokens/colors.ts","../../src/tokens/typography.ts","../../src/tokens/elevation.ts","../../src/tokens/shape.ts","../../src/tokens/motion.ts","../../src/tokens/theme.css.ts"],"sourcesContent":["export interface M3ColorScheme {\n primary: string;\n onPrimary: string;\n primaryContainer: string;\n onPrimaryContainer: string;\n secondary: string;\n onSecondary: string;\n secondaryContainer: string;\n onSecondaryContainer: string;\n tertiary: string;\n onTertiary: string;\n tertiaryContainer: string;\n onTertiaryContainer: string;\n error: string;\n onError: string;\n errorContainer: string;\n onErrorContainer: string;\n background: string;\n onBackground: string;\n surface: string;\n onSurface: string;\n surfaceVariant: string;\n onSurfaceVariant: string;\n outline: string;\n outlineVariant: string;\n shadow: string;\n scrim: string;\n inverseSurface: string;\n inverseOnSurface: string;\n inversePrimary: string;\n surfaceDim: string;\n surfaceBright: string;\n surfaceContainerLowest: string;\n surfaceContainerLow: string;\n surfaceContainer: string;\n surfaceContainerHigh: string;\n surfaceContainerHighest: string;\n}\n\nexport const lightColorScheme: M3ColorScheme = {\n primary: '#6750A4',\n onPrimary: '#FFFFFF',\n primaryContainer: '#EADDFF',\n onPrimaryContainer: '#21005D',\n secondary: '#625B71',\n onSecondary: '#FFFFFF',\n secondaryContainer: '#E8DEF8',\n onSecondaryContainer: '#1D192B',\n tertiary: '#7D5260',\n onTertiary: '#FFFFFF',\n tertiaryContainer: '#FFD8E4',\n onTertiaryContainer: '#31111D',\n error: '#B3261E',\n onError: '#FFFFFF',\n errorContainer: '#F9DEDC',\n onErrorContainer: '#410E0B',\n background: '#FEF7FF',\n onBackground: '#1D1B20',\n surface: '#FEF7FF',\n onSurface: '#1D1B20',\n surfaceVariant: '#E7E0EC',\n onSurfaceVariant: '#49454F',\n outline: '#79747E',\n outlineVariant: '#CAC4D0',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#313033',\n inverseOnSurface: '#F4EFF4',\n inversePrimary: '#D0BCFF',\n surfaceDim: '#DED8E1',\n surfaceBright: '#FEF7FF',\n surfaceContainerLowest: '#FFFFFF',\n surfaceContainerLow: '#F7F2FA',\n surfaceContainer: '#F3EDF7',\n surfaceContainerHigh: '#ECE6F0',\n surfaceContainerHighest: '#E6E0E9',\n};\n\nexport const darkColorScheme: M3ColorScheme = {\n primary: '#D0BCFF',\n onPrimary: '#381E72',\n primaryContainer: '#4F378B',\n onPrimaryContainer: '#EADDFF',\n secondary: '#CCC2DC',\n onSecondary: '#332D41',\n secondaryContainer: '#4A4458',\n onSecondaryContainer: '#E8DEF8',\n tertiary: '#EFB8C8',\n onTertiary: '#492532',\n tertiaryContainer: '#633B48',\n onTertiaryContainer: '#FFD8E4',\n error: '#F2B8B5',\n onError: '#601410',\n errorContainer: '#8C1D18',\n onErrorContainer: '#F9DEDC',\n background: '#141218',\n onBackground: '#E6E0E9',\n surface: '#141218',\n onSurface: '#E6E0E9',\n surfaceVariant: '#49454F',\n onSurfaceVariant: '#CAC4D0',\n outline: '#938F99',\n outlineVariant: '#49454F',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#E6E0E9',\n inverseOnSurface: '#313033',\n inversePrimary: '#6750A4',\n surfaceDim: '#141218',\n surfaceBright: '#3B383E',\n surfaceContainerLowest: '#0F0D13',\n surfaceContainerLow: '#1D1B20',\n surfaceContainer: '#211F26',\n surfaceContainerHigh: '#2B2930',\n surfaceContainerHighest: '#36343B',\n};\n\nexport function colorSchemeToCssVariables(scheme: Partial<M3ColorScheme>): Record<string, string> {\n const vars: Record<string, string> = {};\n for (const [key, value] of Object.entries(scheme)) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n vars[`--md-sys-color-${kebab}`] = value;\n }\n return vars;\n}\n\n","export interface M3TypographyStyle {\n fontFamily: string;\n weight: number | string;\n size: string;\n lineHeight: string;\n letterSpacing: string;\n}\n\nexport const typographyTokens = {\n fontFamily: \"'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif\",\n displayLarge: { size: '57px', lineHeight: '64px', letterSpacing: '-0.25px', weight: 400 },\n displayMedium: { size: '45px', lineHeight: '52px', letterSpacing: '0px', weight: 400 },\n displaySmall: { size: '36px', lineHeight: '44px', letterSpacing: '0px', weight: 400 },\n headlineLarge: { size: '32px', lineHeight: '40px', letterSpacing: '0px', weight: 400 },\n headlineMedium: { size: '28px', lineHeight: '36px', letterSpacing: '0px', weight: 400 },\n headlineSmall: { size: '24px', lineHeight: '32px', letterSpacing: '0px', weight: 400 },\n titleLarge: { size: '22px', lineHeight: '28px', letterSpacing: '0px', weight: 400 },\n titleMedium: { size: '16px', lineHeight: '24px', letterSpacing: '0.15px', weight: 500 },\n titleSmall: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n bodyLarge: { size: '16px', lineHeight: '24px', letterSpacing: '0.5px', weight: 400 },\n bodyMedium: { size: '14px', lineHeight: '20px', letterSpacing: '0.25px', weight: 400 },\n bodySmall: { size: '12px', lineHeight: '16px', letterSpacing: '0.4px', weight: 400 },\n labelLarge: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n labelMedium: { size: '12px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n labelSmall: { size: '11px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n};\n\n","export const elevationTokens = {\n level0: 'none',\n level1: '0px 1px 3px 1px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level2: '0px 2px 6px 2px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level3: '0px 1px 3px 0px rgba(0, 0, 0, 0.30), 0px 4px 8px 3px rgba(0, 0, 0, 0.15)',\n level4: '0px 2px 3px 0px rgba(0, 0, 0, 0.30), 0px 6px 10px 4px rgba(0, 0, 0, 0.15)',\n level5: '0px 4px 4px 0px rgba(0, 0, 0, 0.30), 0px 8px 12px 6px rgba(0, 0, 0, 0.15)',\n};\n\n","export const shapeTokens = {\n cornerNone: '0px',\n cornerExtraSmall: '4px',\n cornerSmall: '8px',\n cornerMedium: '12px',\n cornerLarge: '16px',\n cornerExtraLarge: '28px',\n cornerFull: '9999px',\n};\n\n","export const motionTokens = {\n easingStandard: 'cubic-bezier(0.2, 0, 0, 1)',\n easingStandardDecelerate: 'cubic-bezier(0, 0, 0, 1)',\n easingStandardAccelerate: 'cubic-bezier(0.3, 0, 1, 1)',\n easingEmphasized: 'cubic-bezier(0.2, 0, 0, 1)',\n easingEmphasizedDecelerate: 'cubic-bezier(0.05, 0.7, 0.1, 1)',\n easingEmphasizedAccelerate: 'cubic-bezier(0.3, 0, 0.8, 0.15)',\n \n durationShort1: '50ms',\n durationShort2: '100ms',\n durationShort3: '150ms',\n durationShort4: '200ms',\n durationMedium1: '250ms',\n durationMedium2: '300ms',\n durationMedium3: '350ms',\n durationMedium4: '400ms',\n durationLong1: '450ms',\n durationLong2: '500ms',\n durationLong3: '550ms',\n durationLong4: '600ms',\n};\n\n","import { css } from 'lit';\nimport { lightColorScheme, darkColorScheme, M3ColorScheme } from './colors.js';\nimport { typographyTokens } from './typography.js';\nimport { elevationTokens } from './elevation.js';\nimport { shapeTokens } from './shape.js';\nimport { motionTokens } from './motion.js';\n\nexport const themeStyles = css`\n :root, :host {\n /* Color Tokens - Default Light */\n --md-sys-color-primary: ${css([lightColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([lightColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([lightColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([lightColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([lightColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([lightColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([lightColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([lightColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([lightColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([lightColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([lightColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([lightColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([lightColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([lightColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([lightColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([lightColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([lightColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([lightColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([lightColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([lightColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([lightColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([lightColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([lightColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([lightColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([lightColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([lightColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([lightColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([lightColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([lightColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([lightColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([lightColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([lightColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-scrim: ${css([lightColorScheme.scrim] as unknown as TemplateStringsArray)};\n\n /* Typography */\n --md-sys-typescale-font-family: ${css([typographyTokens.fontFamily] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-size: ${css([typographyTokens.bodyLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-line-height: ${css([typographyTokens.bodyLarge.lineHeight] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-medium-size: ${css([typographyTokens.bodyMedium.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-label-large-size: ${css([typographyTokens.labelLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-title-medium-size: ${css([typographyTokens.titleMedium.size] as unknown as TemplateStringsArray)};\n\n /* Elevation */\n --md-sys-elevation-level0: ${css([elevationTokens.level0] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level1: ${css([elevationTokens.level1] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level2: ${css([elevationTokens.level2] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level3: ${css([elevationTokens.level3] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level4: ${css([elevationTokens.level4] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level5: ${css([elevationTokens.level5] as unknown as TemplateStringsArray)};\n\n /* Shape */\n --md-sys-shape-corner-none: ${css([shapeTokens.cornerNone] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-small: ${css([shapeTokens.cornerExtraSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-small: ${css([shapeTokens.cornerSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-medium: ${css([shapeTokens.cornerMedium] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-large: ${css([shapeTokens.cornerLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-large: ${css([shapeTokens.cornerExtraLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-full: ${css([shapeTokens.cornerFull] as unknown as TemplateStringsArray)};\n\n /* Motion */\n --md-sys-motion-easing-standard: ${css([motionTokens.easingStandard] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-short: ${css([motionTokens.durationShort2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-medium: ${css([motionTokens.durationMedium2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-long: ${css([motionTokens.durationLong2] as unknown as TemplateStringsArray)};\n\n /* State Layer Opacities */\n --md-sys-state-hover-opacity: 0.08;\n --md-sys-state-focus-opacity: 0.12;\n --md-sys-state-pressed-opacity: 0.12;\n --md-sys-state-dragged-opacity: 0.16;\n }\n\n [data-theme='dark'] {\n --md-sys-color-primary: ${css([darkColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([darkColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([darkColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([darkColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([darkColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([darkColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([darkColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([darkColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([darkColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([darkColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([darkColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([darkColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([darkColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([darkColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([darkColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([darkColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([darkColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([darkColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([darkColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([darkColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([darkColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([darkColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([darkColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([darkColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([darkColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([darkColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([darkColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([darkColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([darkColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([darkColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([darkColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([darkColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-scrim: ${css([darkColorScheme.scrim] as unknown as TemplateStringsArray)};\n }\n`;\n\nexport function applyTheme(\n theme: Partial<M3ColorScheme>,\n target: HTMLElement = document.documentElement\n): void {\n for (const [key, value] of Object.entries(theme)) {\n if (value) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n target.style.setProperty(`--md-sys-color-${kebab}`, value);\n }\n }\n}\n\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/tokens/palette-generator.ts","../../src/tokens/colors.ts","../../src/tokens/typography.ts","../../src/tokens/elevation.ts","../../src/tokens/shape.ts","../../src/tokens/motion.ts","../../src/tokens/theme.css.ts"],"sourcesContent":["import type { M3ColorScheme } from './colors.js';\nimport { colorSchemeToCssVariables } from './colors.js';\n\n\n/**\n * Converts a hex color string (#RGB or #RRGGBB) to HSL values [h, s, l].\n * h in [0, 360], s in [0, 100], l in [0, 100].\n */\nexport function hexToHsl(hex: string): [number, number, number] {\n let c = hex.replace('#', '').trim();\n if (c.length === 3) {\n c = c.split('').map(x => x + x).join('');\n }\n const num = parseInt(c, 16);\n if (isNaN(num)) {\n return [0, 0, 0];\n }\n const r = ((num >> 16) & 255) / 255;\n const g = ((num >> 8) & 255) / 255;\n const b = (num & 255) / 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n let h = 0;\n let s = 0;\n const l = (max + min) / 2;\n\n if (max !== min) {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n\n return [Math.round(h * 360), Math.round(s * 100), Math.round(l * 100)];\n}\n\n/**\n * Converts HSL values to a hex color string (#RRGGBB).\n */\nexport function hslToHex(h: number, s: number, l: number): string {\n const normS = Math.max(0, Math.min(100, s)) / 100;\n const normL = Math.max(0, Math.min(100, l)) / 100;\n const a = normS * Math.min(normL, 1 - normL);\n const f = (n: number) => {\n const k = (n + (h % 360) / 30) % 12;\n const color = normL - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);\n return Math.round(255 * color).toString(16).padStart(2, '0');\n };\n return `#${f(0)}${f(8)}${f(4)}`.toUpperCase();\n}\n\n/**\n * Converts a hex color string to RGB values [r, g, b].\n */\nexport function hexToRgb(hex: string): [number, number, number] {\n let c = hex.replace('#', '').trim();\n if (c.length === 3) {\n c = c.split('').map(x => x + x).join('');\n }\n const num = parseInt(c, 16);\n if (isNaN(num)) return [0, 0, 0];\n return [(num >> 16) & 255, (num >> 8) & 255, num & 255];\n}\n\n/**\n * Normalizes a hex color string to #RRGGBB uppercase format.\n */\nexport function normalizeHex(hex: string): string {\n let c = hex.replace('#', '').trim();\n if (c.length === 3) {\n c = c.split('').map(x => x + x).join('');\n }\n return `#${c.padStart(6, '0').slice(0, 6)}`.toUpperCase();\n}\n\n/**\n * Automatically derives a full 37-token M3 color scheme (light or dark) from a seed hex color.\n */\nexport function generateColorScheme(sourceColorHex: string, isDark: boolean): M3ColorScheme {\n const normalizedHex = normalizeHex(sourceColorHex);\n const [h, s] = hexToHsl(normalizedHex);\n\n if (isDark) {\n return {\n primary: hslToHex(h, Math.max(s, 60), 80),\n onPrimary: hslToHex(h, Math.max(s, 70), 20),\n primaryContainer: hslToHex(h, Math.max(s, 60), 32),\n onPrimaryContainer: hslToHex(h, Math.max(s, 60), 90),\n secondary: hslToHex((h + 10) % 360, 25, 75),\n onSecondary: hslToHex((h + 10) % 360, 30, 20),\n secondaryContainer: hslToHex((h + 10) % 360, 30, 32),\n onSecondaryContainer: hslToHex((h + 10) % 360, 35, 92),\n tertiary: hslToHex((h + 60) % 360, 40, 80),\n onTertiary: hslToHex((h + 60) % 360, 45, 20),\n tertiaryContainer: hslToHex((h + 60) % 360, 45, 32),\n onTertiaryContainer: hslToHex((h + 60) % 360, 50, 92),\n error: '#F2B8B5',\n onError: '#601410',\n errorContainer: '#8C1D18',\n onErrorContainer: '#F9DEDC',\n background: '#141218',\n onBackground: '#E6E0E9',\n surface: '#141218',\n onSurface: '#E6E0E9',\n surfaceVariant: '#49454F',\n onSurfaceVariant: '#CAC4D0',\n outline: '#938F99',\n outlineVariant: '#49454F',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#E6E0E9',\n inverseOnSurface: '#313033',\n inversePrimary: normalizedHex,\n surfaceDim: '#141218',\n surfaceBright: '#3B383E',\n surfaceContainerLowest: '#0F0D13',\n surfaceContainerLow: '#1D1B20',\n surfaceContainer: '#211F26',\n surfaceContainerHigh: '#2B2930',\n surfaceContainerHighest: '#36343B',\n };\n }\n\n return {\n primary: normalizedHex,\n onPrimary: '#FFFFFF',\n primaryContainer: hslToHex(h, Math.max(s, 55), 90),\n onPrimaryContainer: hslToHex(h, Math.max(s, 70), 16),\n secondary: hslToHex((h + 10) % 360, 25, 42),\n onSecondary: '#FFFFFF',\n secondaryContainer: hslToHex((h + 10) % 360, 35, 92),\n onSecondaryContainer: hslToHex((h + 10) % 360, 40, 16),\n tertiary: hslToHex((h + 60) % 360, 40, 42),\n onTertiary: '#FFFFFF',\n tertiaryContainer: hslToHex((h + 60) % 360, 50, 92),\n onTertiaryContainer: hslToHex((h + 60) % 360, 55, 16),\n error: '#B3261E',\n onError: '#FFFFFF',\n errorContainer: '#F9DEDC',\n onErrorContainer: '#410E0B',\n background: hslToHex(h, 15, 99),\n onBackground: '#1D1B20',\n surface: hslToHex(h, 15, 99),\n onSurface: '#1D1B20',\n surfaceVariant: hslToHex(h, 15, 92),\n onSurfaceVariant: '#49454F',\n outline: '#79747E',\n outlineVariant: '#CAC4D0',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#313033',\n inverseOnSurface: '#F4EFF4',\n inversePrimary: hslToHex(h, Math.max(s, 60), 80),\n surfaceDim: hslToHex(h, 10, 88),\n surfaceBright: hslToHex(h, 15, 99),\n surfaceContainerLowest: '#FFFFFF',\n surfaceContainerLow: hslToHex(h, 12, 97),\n surfaceContainer: hslToHex(h, 12, 95),\n surfaceContainerHigh: hslToHex(h, 12, 92),\n surfaceContainerHighest: hslToHex(h, 12, 90),\n };\n}\n\nexport interface GeneratedTheme {\n sourceColor: string;\n light: M3ColorScheme;\n dark: M3ColorScheme;\n schemes: {\n light: M3ColorScheme;\n dark: M3ColorScheme;\n };\n cssVariables: {\n light: Record<string, string>;\n dark: Record<string, string>;\n };\n cssText: string;\n apply: (options?: { dark?: boolean; target?: HTMLElement }) => void;\n}\n\n/**\n * Automatically derives full M3 light and dark CSS variable palettes from a single seed color.\n *\n * @param sourceColorHex - Seed hex color (e.g. '#6750A4' or '#006A6A')\n * @returns Complete M3 theme including light/dark color schemes, CSS variable records, and cssText stylesheet.\n */\nexport function generateTheme(sourceColorHex: string): GeneratedTheme {\n const normalizedSource = normalizeHex(sourceColorHex);\n const lightScheme = generateColorScheme(normalizedSource, false);\n const darkScheme = generateColorScheme(normalizedSource, true);\n\n const lightVariables = colorSchemeToCssVariables(lightScheme);\n const darkVariables = colorSchemeToCssVariables(darkScheme);\n\n const formatVariables = (vars: Record<string, string>, indent = ' ') =>\n Object.entries(vars)\n .map(([key, value]) => `${indent}${key}: ${value};`)\n .join('\\n');\n\n const cssText = `:root, :host {\\n${formatVariables(lightVariables)}\\n}\\n\\n[data-theme='dark'] {\\n${formatVariables(darkVariables)}\\n}`;\n\n return {\n sourceColor: normalizedSource,\n light: lightScheme,\n dark: darkScheme,\n schemes: {\n light: lightScheme,\n dark: darkScheme,\n },\n cssVariables: {\n light: lightVariables,\n dark: darkVariables,\n },\n cssText,\n apply(options?: { dark?: boolean; target?: HTMLElement }) {\n const target = options?.target ?? (typeof document !== 'undefined' ? document.documentElement : undefined);\n if (!target) return;\n const isDark = options?.dark ?? target.getAttribute('data-theme') === 'dark';\n const scheme = isDark ? darkScheme : lightScheme;\n for (const [key, value] of Object.entries(scheme)) {\n if (value) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n target.style.setProperty(`--md-sys-color-${kebab}`, value);\n }\n }\n },\n };\n}\n","export interface M3ColorScheme {\n primary: string;\n onPrimary: string;\n primaryContainer: string;\n onPrimaryContainer: string;\n secondary: string;\n onSecondary: string;\n secondaryContainer: string;\n onSecondaryContainer: string;\n tertiary: string;\n onTertiary: string;\n tertiaryContainer: string;\n onTertiaryContainer: string;\n error: string;\n onError: string;\n errorContainer: string;\n onErrorContainer: string;\n background: string;\n onBackground: string;\n surface: string;\n onSurface: string;\n surfaceVariant: string;\n onSurfaceVariant: string;\n outline: string;\n outlineVariant: string;\n shadow: string;\n scrim: string;\n inverseSurface: string;\n inverseOnSurface: string;\n inversePrimary: string;\n surfaceDim: string;\n surfaceBright: string;\n surfaceContainerLowest: string;\n surfaceContainerLow: string;\n surfaceContainer: string;\n surfaceContainerHigh: string;\n surfaceContainerHighest: string;\n}\n\nexport const lightColorScheme: M3ColorScheme = {\n primary: '#6750A4',\n onPrimary: '#FFFFFF',\n primaryContainer: '#EADDFF',\n onPrimaryContainer: '#21005D',\n secondary: '#625B71',\n onSecondary: '#FFFFFF',\n secondaryContainer: '#E8DEF8',\n onSecondaryContainer: '#1D192B',\n tertiary: '#7D5260',\n onTertiary: '#FFFFFF',\n tertiaryContainer: '#FFD8E4',\n onTertiaryContainer: '#31111D',\n error: '#B3261E',\n onError: '#FFFFFF',\n errorContainer: '#F9DEDC',\n onErrorContainer: '#410E0B',\n background: '#FEF7FF',\n onBackground: '#1D1B20',\n surface: '#FEF7FF',\n onSurface: '#1D1B20',\n surfaceVariant: '#E7E0EC',\n onSurfaceVariant: '#49454F',\n outline: '#79747E',\n outlineVariant: '#CAC4D0',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#313033',\n inverseOnSurface: '#F4EFF4',\n inversePrimary: '#D0BCFF',\n surfaceDim: '#DED8E1',\n surfaceBright: '#FEF7FF',\n surfaceContainerLowest: '#FFFFFF',\n surfaceContainerLow: '#F7F2FA',\n surfaceContainer: '#F3EDF7',\n surfaceContainerHigh: '#ECE6F0',\n surfaceContainerHighest: '#E6E0E9',\n};\n\nexport const darkColorScheme: M3ColorScheme = {\n primary: '#D0BCFF',\n onPrimary: '#381E72',\n primaryContainer: '#4F378B',\n onPrimaryContainer: '#EADDFF',\n secondary: '#CCC2DC',\n onSecondary: '#332D41',\n secondaryContainer: '#4A4458',\n onSecondaryContainer: '#E8DEF8',\n tertiary: '#EFB8C8',\n onTertiary: '#492532',\n tertiaryContainer: '#633B48',\n onTertiaryContainer: '#FFD8E4',\n error: '#F2B8B5',\n onError: '#601410',\n errorContainer: '#8C1D18',\n onErrorContainer: '#F9DEDC',\n background: '#141218',\n onBackground: '#E6E0E9',\n surface: '#141218',\n onSurface: '#E6E0E9',\n surfaceVariant: '#49454F',\n onSurfaceVariant: '#CAC4D0',\n outline: '#938F99',\n outlineVariant: '#49454F',\n shadow: '#000000',\n scrim: 'rgba(0, 0, 0, 0.32)',\n inverseSurface: '#E6E0E9',\n inverseOnSurface: '#313033',\n inversePrimary: '#6750A4',\n surfaceDim: '#141218',\n surfaceBright: '#3B383E',\n surfaceContainerLowest: '#0F0D13',\n surfaceContainerLow: '#1D1B20',\n surfaceContainer: '#211F26',\n surfaceContainerHigh: '#2B2930',\n surfaceContainerHighest: '#36343B',\n};\n\nexport function colorSchemeToCssVariables(scheme: Partial<M3ColorScheme>): Record<string, string> {\n const vars: Record<string, string> = {};\n for (const [key, value] of Object.entries(scheme)) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n vars[`--md-sys-color-${kebab}`] = value;\n }\n return vars;\n}\n\nexport * from './palette-generator.js';\n\n\n","export interface M3TypographyStyle {\n fontFamily: string;\n weight: number | string;\n size: string;\n lineHeight: string;\n letterSpacing: string;\n}\n\nexport const typographyTokens = {\n fontFamily: \"'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif\",\n displayLarge: { size: '57px', lineHeight: '64px', letterSpacing: '-0.25px', weight: 400 },\n displayMedium: { size: '45px', lineHeight: '52px', letterSpacing: '0px', weight: 400 },\n displaySmall: { size: '36px', lineHeight: '44px', letterSpacing: '0px', weight: 400 },\n headlineLarge: { size: '32px', lineHeight: '40px', letterSpacing: '0px', weight: 400 },\n headlineMedium: { size: '28px', lineHeight: '36px', letterSpacing: '0px', weight: 400 },\n headlineSmall: { size: '24px', lineHeight: '32px', letterSpacing: '0px', weight: 400 },\n titleLarge: { size: '22px', lineHeight: '28px', letterSpacing: '0px', weight: 400 },\n titleMedium: { size: '16px', lineHeight: '24px', letterSpacing: '0.15px', weight: 500 },\n titleSmall: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n bodyLarge: { size: '16px', lineHeight: '24px', letterSpacing: '0.5px', weight: 400 },\n bodyMedium: { size: '14px', lineHeight: '20px', letterSpacing: '0.25px', weight: 400 },\n bodySmall: { size: '12px', lineHeight: '16px', letterSpacing: '0.4px', weight: 400 },\n labelLarge: { size: '14px', lineHeight: '20px', letterSpacing: '0.1px', weight: 500 },\n labelMedium: { size: '12px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n labelSmall: { size: '11px', lineHeight: '16px', letterSpacing: '0.5px', weight: 500 },\n};\n\n","export const elevationTokens = {\n level0: 'none',\n level1: '0px 1px 3px 1px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level2: '0px 2px 6px 2px rgba(0, 0, 0, 0.15), 0px 1px 2px 0px rgba(0, 0, 0, 0.30)',\n level3: '0px 1px 3px 0px rgba(0, 0, 0, 0.30), 0px 4px 8px 3px rgba(0, 0, 0, 0.15)',\n level4: '0px 2px 3px 0px rgba(0, 0, 0, 0.30), 0px 6px 10px 4px rgba(0, 0, 0, 0.15)',\n level5: '0px 4px 4px 0px rgba(0, 0, 0, 0.30), 0px 8px 12px 6px rgba(0, 0, 0, 0.15)',\n};\n\n","export const shapeTokens = {\n cornerNone: '0px',\n cornerExtraSmall: '4px',\n cornerSmall: '8px',\n cornerMedium: '12px',\n cornerLarge: '16px',\n cornerExtraLarge: '28px',\n cornerFull: '9999px',\n};\n\n","export const motionTokens = {\n easingStandard: 'cubic-bezier(0.2, 0, 0, 1)',\n easingStandardDecelerate: 'cubic-bezier(0, 0, 0, 1)',\n easingStandardAccelerate: 'cubic-bezier(0.3, 0, 1, 1)',\n easingEmphasized: 'cubic-bezier(0.2, 0, 0, 1)',\n easingEmphasizedDecelerate: 'cubic-bezier(0.05, 0.7, 0.1, 1)',\n easingEmphasizedAccelerate: 'cubic-bezier(0.3, 0, 0.8, 0.15)',\n \n durationShort1: '50ms',\n durationShort2: '100ms',\n durationShort3: '150ms',\n durationShort4: '200ms',\n durationMedium1: '250ms',\n durationMedium2: '300ms',\n durationMedium3: '350ms',\n durationMedium4: '400ms',\n durationLong1: '450ms',\n durationLong2: '500ms',\n durationLong3: '550ms',\n durationLong4: '600ms',\n};\n\n","import { css } from 'lit';\nimport { lightColorScheme, darkColorScheme, M3ColorScheme } from './colors.js';\nimport { typographyTokens } from './typography.js';\nimport { elevationTokens } from './elevation.js';\nimport { shapeTokens } from './shape.js';\nimport { motionTokens } from './motion.js';\n\nexport const themeStyles = css`\n :root, :host {\n /* Color Tokens - Default Light */\n --md-sys-color-primary: ${css([lightColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([lightColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([lightColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([lightColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([lightColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([lightColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([lightColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([lightColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([lightColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([lightColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([lightColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([lightColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([lightColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([lightColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([lightColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([lightColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([lightColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([lightColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([lightColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([lightColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([lightColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([lightColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([lightColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([lightColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([lightColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([lightColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([lightColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([lightColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([lightColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([lightColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([lightColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([lightColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-scrim: ${css([lightColorScheme.scrim] as unknown as TemplateStringsArray)};\n\n /* Typography */\n --md-sys-typescale-font-family: ${css([typographyTokens.fontFamily] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-size: ${css([typographyTokens.bodyLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-large-line-height: ${css([typographyTokens.bodyLarge.lineHeight] as unknown as TemplateStringsArray)};\n --md-sys-typescale-body-medium-size: ${css([typographyTokens.bodyMedium.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-label-large-size: ${css([typographyTokens.labelLarge.size] as unknown as TemplateStringsArray)};\n --md-sys-typescale-title-medium-size: ${css([typographyTokens.titleMedium.size] as unknown as TemplateStringsArray)};\n\n /* Elevation */\n --md-sys-elevation-level0: ${css([elevationTokens.level0] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level1: ${css([elevationTokens.level1] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level2: ${css([elevationTokens.level2] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level3: ${css([elevationTokens.level3] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level4: ${css([elevationTokens.level4] as unknown as TemplateStringsArray)};\n --md-sys-elevation-level5: ${css([elevationTokens.level5] as unknown as TemplateStringsArray)};\n\n /* Shape */\n --md-sys-shape-corner-none: ${css([shapeTokens.cornerNone] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-small: ${css([shapeTokens.cornerExtraSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-small: ${css([shapeTokens.cornerSmall] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-medium: ${css([shapeTokens.cornerMedium] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-large: ${css([shapeTokens.cornerLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-extra-large: ${css([shapeTokens.cornerExtraLarge] as unknown as TemplateStringsArray)};\n --md-sys-shape-corner-full: ${css([shapeTokens.cornerFull] as unknown as TemplateStringsArray)};\n\n /* Motion */\n --md-sys-motion-easing-standard: ${css([motionTokens.easingStandard] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-short: ${css([motionTokens.durationShort2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-medium: ${css([motionTokens.durationMedium2] as unknown as TemplateStringsArray)};\n --md-sys-motion-duration-long: ${css([motionTokens.durationLong2] as unknown as TemplateStringsArray)};\n\n /* State Layer Opacities */\n --md-sys-state-hover-opacity: 0.08;\n --md-sys-state-focus-opacity: 0.12;\n --md-sys-state-pressed-opacity: 0.12;\n --md-sys-state-dragged-opacity: 0.16;\n }\n\n [data-theme='dark'] {\n --md-sys-color-primary: ${css([darkColorScheme.primary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary: ${css([darkColorScheme.onPrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-primary-container: ${css([darkColorScheme.primaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-primary-container: ${css([darkColorScheme.onPrimaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary: ${css([darkColorScheme.secondary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary: ${css([darkColorScheme.onSecondary] as unknown as TemplateStringsArray)};\n --md-sys-color-secondary-container: ${css([darkColorScheme.secondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-secondary-container: ${css([darkColorScheme.onSecondaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary: ${css([darkColorScheme.tertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary: ${css([darkColorScheme.onTertiary] as unknown as TemplateStringsArray)};\n --md-sys-color-tertiary-container: ${css([darkColorScheme.tertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-tertiary-container: ${css([darkColorScheme.onTertiaryContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-error: ${css([darkColorScheme.error] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error: ${css([darkColorScheme.onError] as unknown as TemplateStringsArray)};\n --md-sys-color-error-container: ${css([darkColorScheme.errorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-on-error-container: ${css([darkColorScheme.onErrorContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-background: ${css([darkColorScheme.background] as unknown as TemplateStringsArray)};\n --md-sys-color-on-background: ${css([darkColorScheme.onBackground] as unknown as TemplateStringsArray)};\n --md-sys-color-surface: ${css([darkColorScheme.surface] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface: ${css([darkColorScheme.onSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-variant: ${css([darkColorScheme.surfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-on-surface-variant: ${css([darkColorScheme.onSurfaceVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-outline: ${css([darkColorScheme.outline] as unknown as TemplateStringsArray)};\n --md-sys-color-outline-variant: ${css([darkColorScheme.outlineVariant] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-lowest: ${css([darkColorScheme.surfaceContainerLowest] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-low: ${css([darkColorScheme.surfaceContainerLow] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container: ${css([darkColorScheme.surfaceContainer] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-high: ${css([darkColorScheme.surfaceContainerHigh] as unknown as TemplateStringsArray)};\n --md-sys-color-surface-container-highest: ${css([darkColorScheme.surfaceContainerHighest] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-surface: ${css([darkColorScheme.inverseSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-on-surface: ${css([darkColorScheme.inverseOnSurface] as unknown as TemplateStringsArray)};\n --md-sys-color-inverse-primary: ${css([darkColorScheme.inversePrimary] as unknown as TemplateStringsArray)};\n --md-sys-color-scrim: ${css([darkColorScheme.scrim] as unknown as TemplateStringsArray)};\n }\n`;\n\nexport function applyTheme(\n theme: Partial<M3ColorScheme>,\n target: HTMLElement = document.documentElement\n): void {\n for (const [key, value] of Object.entries(theme)) {\n if (value) {\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n target.style.setProperty(`--md-sys-color-${kebab}`, value);\n }\n }\n}\n\n"],"mappings":"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"}
package/llms.txt CHANGED
@@ -162,18 +162,36 @@ Configure tokens globally on `:root` or scope them to a container. Dark mode can
162
162
 
163
163
  ### TypeScript Theme Helper API
164
164
 
165
- The `@francofantomius/material-components/theme` module provides utilities for dynamic runtime palette assignment:
165
+ The `@francofantomius/material-components/theme` module provides utilities for dynamic runtime palette assignment and automatic theme generation:
166
166
 
167
167
  ```typescript
168
- import { applyTheme, darkColorScheme, lightColorScheme } from '@francofantomius/material-components/theme';
169
-
170
- // Switch to Dark Color Scheme
168
+ import {
169
+ generateTheme,
170
+ generateColorScheme,
171
+ applyTheme,
172
+ darkColorScheme,
173
+ lightColorScheme,
174
+ } from '@francofantomius/material-components/theme';
175
+
176
+ // 1. Automatically derive complete M3 light and dark themes from any single seed color:
177
+ const theme = generateTheme('#006A6A');
178
+
179
+ // Apply to document (or any element) with light or dark mode:
180
+ theme.apply(); // applies light or dark based on data-theme attribute
181
+ theme.apply({ dark: true }); // forces dark mode
182
+ theme.apply({ target: myContainer }); // scopes theme to container element
183
+
184
+ // Access generated 37-token schemes and CSS variables:
185
+ console.log(theme.light.primary); // e.g. '#006A6A'
186
+ console.log(theme.dark.primary);
187
+ console.log(theme.cssVariables.light); // { '--md-sys-color-primary': '#006A6A', ... }
188
+ console.log(theme.cssText); // Ready-to-inject CSS string
189
+
190
+ // 2. Predefined color schemes:
171
191
  applyTheme(darkColorScheme);
172
-
173
- // Switch back to Light Color Scheme
174
192
  applyTheme(lightColorScheme);
175
193
 
176
- // Apply Custom Brand Colors
194
+ // 3. Custom brand color overrides:
177
195
  applyTheme({
178
196
  primary: '#006A60',
179
197
  onPrimary: '#FFFFFF',
@@ -186,7 +204,7 @@ applyTheme({
186
204
 
187
205
  ## Form Integration (FACE)
188
206
 
189
- Form controls (`<md-text-field>`, `<md-checkbox>`, `<md-switch>`, `<md-radio>`) are Form-Associated Custom Elements. They automatically participate in standard HTML forms and `FormData`.
207
+ Form controls (`<md-text-field>`, `<md-checkbox>`, `<md-switch>`, `<md-radio>`, `<md-slider>`, `<md-date-picker>`, `<md-time-picker>`) are Form-Associated Custom Elements (FACE). They automatically participate in standard HTML forms, `FormData`, constraint validation (`required`, `min`, `max`, `checkValidity()`, `reportValidity()`), and form resets without manual JavaScript syncing.
190
208
 
191
209
  ### HTML Form Example
192
210
 
@@ -206,6 +224,41 @@ Form controls (`<md-text-field>`, `<md-checkbox>`, `<md-switch>`, `<md-radio>`)
206
224
  required
207
225
  ></md-text-field>
208
226
 
227
+ <!-- Slider input participating in form submission -->
228
+ <md-slider
229
+ name="budget"
230
+ min="0"
231
+ max="1000"
232
+ step="50"
233
+ value="250"
234
+ labeled
235
+ ></md-slider>
236
+
237
+ <!-- Dual-thumb range slider submitting two form values -->
238
+ <md-slider
239
+ range
240
+ name-start="min_price"
241
+ name-end="max_price"
242
+ value-start="100"
243
+ value-end="500"
244
+ ></md-slider>
245
+
246
+ <!-- Date picker participating in form submission -->
247
+ <md-date-picker
248
+ name="event_date"
249
+ label="Event Date"
250
+ required
251
+ ></md-date-picker>
252
+
253
+ <!-- Time picker with constraint validation -->
254
+ <md-time-picker
255
+ name="arrival_time"
256
+ format="24h"
257
+ min="08:00"
258
+ max="18:00"
259
+ required
260
+ ></md-time-picker>
261
+
209
262
  <md-checkbox name="newsletter" checked>
210
263
  Receive monthly newsletter
211
264
  </md-checkbox>
@@ -219,6 +272,7 @@ Form controls (`<md-text-field>`, `<md-checkbox>`, `<md-switch>`, `<md-radio>`)
219
272
  <md-button type="submit" variant="filled">Submit Form</md-button>
220
273
  </div>
221
274
  </form>
275
+
222
276
  ```
223
277
 
224
278
  ### JavaScript Handling
@@ -841,6 +895,8 @@ const isEnabled = ref(true);
841
895
  | `leading-icon` | `string` | `''` | Leading Material Symbols icon name |
842
896
  | `trailing-icon` | `string` | `''` | Trailing Material Symbols icon name |
843
897
  | `disabled` | `boolean` | `false` | Disables user interaction |
898
+ | `required` | `boolean` | `false` | Form validation required constraint |
899
+ | `error` | `boolean` | `false` | Applies error visual styling |
844
900
  | `name` | `string` | `''` | HTML form input name |
845
901
  | `name-start` | `string` | `''` | HTML form input name for start value (range mode) |
846
902
  | `name-end` | `string` | `''` | HTML form input name for end value (range mode) |
@@ -907,6 +963,8 @@ const isEnabled = ref(true);
907
963
  | :--- | :--- | :--- | :--- |
908
964
  | `value` | `string` | `''` | Current query value in the search bar |
909
965
  | `placeholder` | `string` | `'Search'` | Placeholder label for the input |
966
+ | `size` | `'small' \| 'compact' \| 'medium' \| 'large'` | `'medium'` | Visual size variant (use `'small'` or `'compact'` for 40px navbar/toolbar sizing) |
967
+ | `compact` | `boolean` | `false` | Shorthand boolean attribute for compact / small navbar sizing |
910
968
  | `active` | `boolean` | `false` | Controls whether search view is expanded and showing suggestions |
911
969
  | `suggestions` | `Array<string \| SearchSuggestion>` | `[]` | List of search suggestions with labels, supporting text, and icons |
912
970
  | `leading-icon` | `string` | `'search'` | Leading icon displayed when inactive |
@@ -970,9 +1028,14 @@ const isEnabled = ref(true);
970
1028
  | `headline` | `string` | `'Select time'` | Header headline text |
971
1029
  | `auto-switch-to-minute` | `boolean` | `true` | Automatically transitions active field from hour to minute on dial |
972
1030
  | `disabled` | `boolean` | `false` | Disables user interaction |
1031
+ | `min` | `string` | `''` | Minimum time constraint (e.g. `'09:00'` or `'09:00 AM'`) |
1032
+ | `max` | `string` | `''` | Maximum time constraint (e.g. `'17:00'` or `'05:00 PM'`) |
1033
+ | `error` | `boolean` | `false` | Applies error visual styling |
1034
+ | `error-text` | `string` | `''` | Validation error message |
973
1035
  | `name` | `string` | `''` | HTML form input name (FACE) |
974
1036
  | `required` | `boolean` | `false` | Form validation required constraint |
975
1037
 
1038
+
976
1039
  ##### Methods
977
1040
  - `showModal()`: Opens the time picker as a modal dialog.
978
1041
  - `show()`: Opens the time picker.
@@ -1034,6 +1097,9 @@ const isEnabled = ref(true);
1034
1097
  | `error-text` | `string` | `''` | Validation error message |
1035
1098
  | `supporting-text` | `string` | `''` | Helper text below the date picker |
1036
1099
  | `name` | `string` | `''` | HTML form input name (FACE) |
1100
+ | `name-start` | `string` | `''` | HTML form input name for start date (range mode) |
1101
+ | `name-end` | `string` | `''` | HTML form input name for end date (range mode) |
1102
+
1037
1103
 
1038
1104
  ##### Methods
1039
1105
  - `showModal()`: Opens the date picker as a modal dialog overlay.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@francofantomius/material-components",
3
- "version": "1.1.1",
3
+ "version": "1.2.0",
4
4
  "description": "Reusable, accessible, and lightweight Material Design 3 Web Components built with Lit.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -291,9 +291,8 @@
291
291
  },
292
292
  "scripts": {
293
293
  "dev": "vite",
294
- "build": "tsc && vite build && node docs/generate.js && vite build --config vite.docs.config.ts && npm run analyze",
294
+ "build": "tsc && vite build && npm run analyze",
295
295
  "clean": "git clean -fdX",
296
- "preview": "vite preview --config vite.docs.config.ts",
297
296
  "typecheck": "tsc --noEmit",
298
297
  "test": "vitest run",
299
298
  "test:watch": "vitest",
@@ -316,21 +315,10 @@
316
315
  },
317
316
  "devDependencies": {
318
317
  "@custom-elements-manifest/analyzer": "^0.10.4",
319
- "@typescript/typescript6": "^6.0.2",
320
318
  "esbuild": "^0.28.2",
321
319
  "happy-dom": "^20.11.6",
322
320
  "typescript": "^7.0.2",
323
321
  "vite": "^8.2.2",
324
- "vite-plugin-dts": "^5.0.3",
325
322
  "vitest": "^4.1.11"
326
- },
327
- "allowScripts": {
328
- "esbuild": true,
329
- "happy-dom": true,
330
- "typescript": true,
331
- "vite": true,
332
- "vite-plugin-dts": true,
333
- "vitest": true,
334
- "rs-module-lexer@2.8.0": true
335
323
  }
336
324
  }