@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
@@ -0,0 +1,810 @@
1
+ import { t as e } from "./decorate-DknOJ8FJ.js";
2
+ import { t } from "./form-associated-Do5uXckv.js";
3
+ import "./icon-FvKeXi61.js";
4
+ import "./button-DeQQlYds.js";
5
+ import "./icon-button-CulnCZpZ.js";
6
+ import { css as n, html as r, nothing as i } from "lit";
7
+ import { customElement as a, property as o, query as s, state as c } from "lit/decorators.js";
8
+ //#region src/components/time-picker/time-picker.css.ts
9
+ var l = n`
10
+ :host {
11
+ display: inline-block;
12
+ color: var(--md-sys-color-on-surface, #1d1b20);
13
+ font-family: var(--md-sys-typescale-font-family, 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif);
14
+ user-select: none;
15
+ box-sizing: border-box;
16
+ }
17
+
18
+ :host([hidden]) {
19
+ display: none !important;
20
+ }
21
+
22
+ :host([modal]) {
23
+ position: fixed;
24
+ top: 0;
25
+ left: 0;
26
+ width: 100vw;
27
+ height: 100vh;
28
+ z-index: 1000;
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: center;
32
+ pointer-events: none;
33
+ }
34
+
35
+ :host([modal][open]) {
36
+ pointer-events: auto;
37
+ }
38
+
39
+ :host([modal]:not([open])) {
40
+ display: none;
41
+ }
42
+
43
+ /* Scrim Backdrop for Modal */
44
+ .scrim {
45
+ position: fixed;
46
+ top: 0;
47
+ left: 0;
48
+ width: 100%;
49
+ height: 100%;
50
+ background-color: rgba(0, 0, 0, 0.32);
51
+ z-index: -1;
52
+ opacity: 0;
53
+ transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1);
54
+ }
55
+
56
+ :host([modal][open]) .scrim {
57
+ opacity: 1;
58
+ }
59
+
60
+ /* Picker Container / Surface */
61
+ .picker-surface {
62
+ background-color: var(--md-sys-color-surface-container-high, #ece6f0);
63
+ color: var(--md-sys-color-on-surface, #1d1b20);
64
+ border-radius: var(--md-sys-shape-corner-extra-large, 28px);
65
+ padding: 24px;
66
+ display: flex;
67
+ flex-direction: column;
68
+ align-items: center;
69
+ box-shadow: var(--md-sys-elevation-3, 0 4px 8px 3px rgba(0, 0, 0, 0.15), 0 1px 3px 0 rgba(0, 0, 0, 0.3));
70
+ max-width: 360px;
71
+ width: 100%;
72
+ box-sizing: border-box;
73
+ position: relative;
74
+ }
75
+
76
+ :host(:not([modal])) .picker-surface {
77
+ box-shadow: var(--md-sys-elevation-1, 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px 0 rgba(0, 0, 0, 0.3));
78
+ border: 1px solid var(--md-sys-color-outline-variant, #cac4d0);
79
+ background-color: var(--md-sys-color-surface, #fef7ff);
80
+ }
81
+
82
+ /* Headline / Header */
83
+ .header {
84
+ width: 100%;
85
+ margin-bottom: 20px;
86
+ display: flex;
87
+ align-items: center;
88
+ justify-content: space-between;
89
+ }
90
+
91
+ .headline {
92
+ font-size: 14px;
93
+ font-weight: 500;
94
+ letter-spacing: 0.1px;
95
+ line-height: 20px;
96
+ color: var(--md-sys-color-on-surface-variant, #49454f);
97
+ margin: 0;
98
+ }
99
+
100
+ /* Time Display Input / Cards Row */
101
+ .time-display-row {
102
+ display: flex;
103
+ align-items: center;
104
+ justify-content: center;
105
+ gap: 8px;
106
+ margin-bottom: 24px;
107
+ width: 100%;
108
+ }
109
+
110
+ .time-card-wrapper {
111
+ display: flex;
112
+ flex-direction: column;
113
+ align-items: center;
114
+ gap: 4px;
115
+ }
116
+
117
+ .time-card {
118
+ width: 96px;
119
+ height: 72px;
120
+ background-color: var(--md-sys-color-surface-container-highest, #e6e0e9);
121
+ color: var(--md-sys-color-on-surface, #1d1b20);
122
+ border-radius: var(--md-sys-shape-corner-medium, 8px);
123
+ display: flex;
124
+ align-items: center;
125
+ justify-content: center;
126
+ font-size: 45px;
127
+ font-weight: 400;
128
+ line-height: 52px;
129
+ cursor: pointer;
130
+ border: 2px solid transparent;
131
+ transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
132
+ box-sizing: border-box;
133
+ position: relative;
134
+ outline: none;
135
+ }
136
+
137
+ .time-card:focus-visible {
138
+ border-color: var(--md-sys-color-primary, #6750a4);
139
+ }
140
+
141
+ .time-card.active {
142
+ background-color: var(--md-sys-color-primary-container, #eaddff);
143
+ color: var(--md-sys-color-on-primary-container, #21005d);
144
+ border-color: var(--md-sys-color-primary, #6750a4);
145
+ }
146
+
147
+ .time-input {
148
+ width: 100%;
149
+ height: 100%;
150
+ background: transparent;
151
+ border: none;
152
+ outline: none;
153
+ text-align: center;
154
+ font-size: 45px;
155
+ font-weight: 400;
156
+ line-height: 52px;
157
+ color: inherit;
158
+ font-family: inherit;
159
+ padding: 0;
160
+ box-sizing: border-box;
161
+ }
162
+
163
+ .time-card-label {
164
+ font-size: 12px;
165
+ font-weight: 400;
166
+ color: var(--md-sys-color-on-surface-variant, #49454f);
167
+ text-transform: capitalize;
168
+ }
169
+
170
+ .time-separator {
171
+ font-size: 45px;
172
+ font-weight: 400;
173
+ line-height: 52px;
174
+ color: var(--md-sys-color-on-surface, #1d1b20);
175
+ margin: 0 2px;
176
+ display: flex;
177
+ align-items: center;
178
+ justify-content: center;
179
+ padding-bottom: 20px;
180
+ }
181
+
182
+ /* Period Toggle (AM / PM) */
183
+ .period-toggle {
184
+ display: flex;
185
+ flex-direction: column;
186
+ border: 1px solid var(--md-sys-color-outline, #79747e);
187
+ border-radius: var(--md-sys-shape-corner-medium, 8px);
188
+ overflow: hidden;
189
+ height: 72px;
190
+ width: 48px;
191
+ margin-left: 4px;
192
+ box-sizing: border-box;
193
+ }
194
+
195
+ .period-button {
196
+ flex: 1;
197
+ display: flex;
198
+ align-items: center;
199
+ justify-content: center;
200
+ background: transparent;
201
+ border: none;
202
+ font-size: 14px;
203
+ font-weight: 500;
204
+ color: var(--md-sys-color-on-surface-variant, #49454f);
205
+ cursor: pointer;
206
+ outline: none;
207
+ transition: background-color 0.15s, color 0.15s;
208
+ user-select: none;
209
+ }
210
+
211
+ .period-button:first-child {
212
+ border-bottom: 1px solid var(--md-sys-color-outline, #79747e);
213
+ }
214
+
215
+ .period-button.selected {
216
+ background-color: var(--md-sys-color-tertiary-container, #ffd8e4);
217
+ color: var(--md-sys-color-on-tertiary-container, #31111d);
218
+ }
219
+
220
+ .period-button:focus-visible {
221
+ background-color: var(--md-sys-color-surface-container-highest, #e6e0e9);
222
+ }
223
+
224
+ /* Clock Dial Surface */
225
+ .dial-container {
226
+ width: 256px;
227
+ height: 256px;
228
+ border-radius: 50%;
229
+ background-color: var(--md-sys-color-surface-container-highest, #e6e0e9);
230
+ position: relative;
231
+ display: flex;
232
+ align-items: center;
233
+ justify-content: center;
234
+ touch-action: none;
235
+ cursor: pointer;
236
+ margin: 8px 0;
237
+ }
238
+
239
+ .dial-center-pin {
240
+ width: 8px;
241
+ height: 8px;
242
+ border-radius: 50%;
243
+ background-color: var(--md-sys-color-primary, #6750a4);
244
+ position: absolute;
245
+ top: 50%;
246
+ left: 50%;
247
+ transform: translate(-50%, -50%);
248
+ z-index: 3;
249
+ pointer-events: none;
250
+ }
251
+
252
+ .dial-hand {
253
+ position: absolute;
254
+ bottom: 50%;
255
+ left: 50%;
256
+ width: 2px;
257
+ background-color: var(--md-sys-color-primary, #6750a4);
258
+ transform-origin: bottom center;
259
+ z-index: 2;
260
+ pointer-events: none;
261
+ transition: height 0.15s cubic-bezier(0.2, 0, 0, 1);
262
+ }
263
+
264
+ .dial-selector-head {
265
+ position: absolute;
266
+ top: -24px;
267
+ left: -23px;
268
+ width: 48px;
269
+ height: 48px;
270
+ border-radius: 50%;
271
+ background-color: var(--md-sys-color-primary, #6750a4);
272
+ display: flex;
273
+ align-items: center;
274
+ justify-content: center;
275
+ box-sizing: border-box;
276
+ }
277
+
278
+ .dial-inner-dot {
279
+ width: 6px;
280
+ height: 6px;
281
+ border-radius: 50%;
282
+ background-color: var(--md-sys-color-on-primary, #ffffff);
283
+ }
284
+
285
+ .dial-number {
286
+ position: absolute;
287
+ width: 40px;
288
+ height: 40px;
289
+ border-radius: 50%;
290
+ display: flex;
291
+ align-items: center;
292
+ justify-content: center;
293
+ font-size: 16px;
294
+ font-weight: 500;
295
+ color: var(--md-sys-color-on-surface, #1d1b20);
296
+ transform: translate(-50%, -50%);
297
+ z-index: 4;
298
+ pointer-events: none;
299
+ transition: color 0.15s ease;
300
+ }
301
+
302
+ .dial-number.small {
303
+ font-size: 13px;
304
+ color: var(--md-sys-color-on-surface-variant, #49454f);
305
+ }
306
+
307
+ .dial-number.selected {
308
+ color: var(--md-sys-color-on-primary, #ffffff);
309
+ }
310
+
311
+ /* Actions Row */
312
+ .actions-row {
313
+ width: 100%;
314
+ display: flex;
315
+ align-items: center;
316
+ justify-content: space-between;
317
+ margin-top: 16px;
318
+ }
319
+
320
+ .mode-switch-btn {
321
+ background: transparent;
322
+ border: none;
323
+ color: var(--md-sys-color-on-surface-variant, #49454f);
324
+ cursor: pointer;
325
+ padding: 8px;
326
+ border-radius: 50%;
327
+ display: flex;
328
+ align-items: center;
329
+ justify-content: center;
330
+ outline: none;
331
+ transition: background-color 0.15s;
332
+ }
333
+
334
+ .mode-switch-btn:hover {
335
+ background-color: rgba(0, 0, 0, 0.06);
336
+ }
337
+
338
+ .mode-switch-btn:focus-visible {
339
+ background-color: rgba(0, 0, 0, 0.12);
340
+ }
341
+
342
+ .dialog-buttons {
343
+ display: flex;
344
+ align-items: center;
345
+ gap: 8px;
346
+ }
347
+
348
+ /* Disabled state */
349
+ :host([disabled]) {
350
+ pointer-events: none;
351
+ opacity: 0.38;
352
+ }
353
+ `, u = class extends t {
354
+ constructor(...e) {
355
+ super(...e), this.value = "", this.format = "12h", this.view = "dial", this.modal = !1, this.open = !1, this.headline = "Select time", this.returnValue = "", this.autoSwitchToMinute = !0, this.cancelLabel = "Cancel", this.confirmLabel = "OK", this.min = "", this.max = "", this.error = !1, this.errorText = "", this.activeField = "hour", this.selectedHour = 12, this.selectedMinute = 0, this.selectedPeriod = "AM", this.isDragging = !1, this.initialValue = "", this.handleDialPointerDown = (e) => {
356
+ this.disabled || (this.isDragging = !0, e.currentTarget.setPointerCapture(e.pointerId), this.updateDialFromPointer(e));
357
+ }, this.handleDialPointerMove = (e) => {
358
+ !this.isDragging || this.disabled || this.updateDialFromPointer(e);
359
+ }, this.handleDialPointerUp = (e) => {
360
+ !this.isDragging || this.disabled || (this.isDragging = !1, this.updateDialFromPointer(e), this.syncFormValue(), this.emitEvent("change", {
361
+ value: this.value,
362
+ hour: this.selectedHour,
363
+ minute: this.selectedMinute,
364
+ period: this.selectedPeriod,
365
+ formatted24: this.getFormatted24(),
366
+ formatted12: this.getFormatted12()
367
+ }), this.activeField === "hour" && this.autoSwitchToMinute && (this.activeField = "minute"));
368
+ }, this.handleHourInput = (e) => {
369
+ let t = e.target, n = parseInt(t.value, 10);
370
+ isNaN(n) || (n = this.format === "24h" ? Math.min(23, Math.max(0, n)) : Math.min(12, Math.max(1, n)), this.selectedHour = n, this.syncFormValue(), this.notifyInput(), t.value.length >= 2 && this.minuteInputElement && (this.minuteInputElement.focus(), this.minuteInputElement.select()));
371
+ }, this.handleMinuteInput = (e) => {
372
+ let t = e.target, n = parseInt(t.value, 10);
373
+ isNaN(n) || (n = Math.min(59, Math.max(0, n)), this.selectedMinute = n, this.syncFormValue(), this.notifyInput());
374
+ }, this.handleHourBlur = () => {
375
+ this.hourInputElement && (this.hourInputElement.value = this.selectedHour.toString().padStart(2, "0")), this.syncFormValue(), this.emitEvent("change", {
376
+ value: this.value,
377
+ hour: this.selectedHour,
378
+ minute: this.selectedMinute,
379
+ period: this.selectedPeriod
380
+ });
381
+ }, this.handleMinuteBlur = () => {
382
+ this.minuteInputElement && (this.minuteInputElement.value = this.selectedMinute.toString().padStart(2, "0")), this.syncFormValue(), this.emitEvent("change", {
383
+ value: this.value,
384
+ hour: this.selectedHour,
385
+ minute: this.selectedMinute,
386
+ period: this.selectedPeriod
387
+ });
388
+ };
389
+ }
390
+ static {
391
+ this.styles = [t.styles, l];
392
+ }
393
+ connectedCallback() {
394
+ super.connectedCallback(), this.initialValue = this.value, this.parseValue(this.value), this.syncFormValue(), this.validateInput();
395
+ }
396
+ willUpdate(e) {
397
+ super.willUpdate(e), e.has("value") && (this.value ? (this.parseValue(this.value), this.syncFormValue()) : this.setFormValue(null)), (e.has("value") || e.has("name") || e.has("disabled") || e.has("required") || e.has("min") || e.has("max") || e.has("format")) && (this.disabled ? this.setFormValue(null) : this.setFormValue(this.value || null), this.validateInput());
398
+ }
399
+ parseValue(e) {
400
+ if (!e || typeof e != "string") {
401
+ let e = /* @__PURE__ */ new Date(), t = e.getHours(), n = e.getMinutes(), r = "AM";
402
+ this.format === "12h" && (r = t >= 12 ? "PM" : "AM", t = t % 12 || 12), this.selectedHour = t, this.selectedMinute = n, this.selectedPeriod = r;
403
+ return;
404
+ }
405
+ let t = e.trim(), n = t.match(/^(\d{1,2}):(\d{2})\s*(AM|PM)$/i), r = t.match(/^(\d{1,2}):(\d{2})$/);
406
+ if (n) {
407
+ let e = parseInt(n[1], 10), t = Math.min(59, Math.max(0, parseInt(n[2], 10))), r = n[3].toUpperCase();
408
+ this.format === "24h" ? (r === "PM" && e < 12 && (e += 12), r === "AM" && e === 12 && (e = 0)) : e = Math.min(12, Math.max(1, e)), this.selectedHour = e, this.selectedMinute = t, this.selectedPeriod = r;
409
+ } else if (r) {
410
+ let e = parseInt(r[1], 10), t = Math.min(59, Math.max(0, parseInt(r[2], 10)));
411
+ if (this.format === "12h") {
412
+ let t = e >= 12 ? "PM" : "AM";
413
+ e = e % 12 || 12, this.selectedPeriod = t;
414
+ } else e = Math.min(23, Math.max(0, e));
415
+ this.selectedHour = e, this.selectedMinute = t;
416
+ }
417
+ }
418
+ getFormattedTime() {
419
+ let e = this.selectedMinute.toString().padStart(2, "0");
420
+ return this.format === "24h" ? `${this.selectedHour.toString().padStart(2, "0")}:${e}` : `${this.selectedHour.toString().padStart(2, "0")}:${e} ${this.selectedPeriod}`;
421
+ }
422
+ getFormatted24() {
423
+ let e = this.selectedMinute.toString().padStart(2, "0"), t = this.selectedHour;
424
+ return this.format === "12h" && (this.selectedPeriod === "PM" && t < 12 && (t += 12), this.selectedPeriod === "AM" && t === 12 && (t = 0)), `${t.toString().padStart(2, "0")}:${e}`;
425
+ }
426
+ getFormatted12() {
427
+ let e = this.selectedMinute.toString().padStart(2, "0"), t = this.selectedHour, n = this.selectedPeriod;
428
+ return this.format === "24h" && (n = t >= 12 ? "PM" : "AM", t = t % 12 || 12), `${t.toString().padStart(2, "0")}:${e} ${n}`;
429
+ }
430
+ syncFormValue() {
431
+ let e = this.getFormattedTime();
432
+ this.value = e, this.disabled ? this.setFormValue(null) : this.setFormValue(e || null);
433
+ }
434
+ timeToMinutes(e) {
435
+ if (!e || typeof e != "string") return null;
436
+ let t = e.trim(), n = t.match(/^(\d{1,2}):(\d{2})\s*(AM|PM)$/i), r = t.match(/^(\d{1,2}):(\d{2})$/);
437
+ if (n) {
438
+ let e = parseInt(n[1], 10), t = parseInt(n[2], 10), r = n[3].toUpperCase();
439
+ return r === "PM" && e < 12 && (e += 12), r === "AM" && e === 12 && (e = 0), e * 60 + t;
440
+ }
441
+ if (r) {
442
+ let e = parseInt(r[1], 10), t = parseInt(r[2], 10);
443
+ return e * 60 + t;
444
+ }
445
+ return null;
446
+ }
447
+ validateInput() {
448
+ if (this.disabled) {
449
+ this.setValidity({}), this.errorText || (this.error = !1);
450
+ return;
451
+ }
452
+ if (this.required && !this.value) {
453
+ this.setValidity({ valueMissing: !0 }, this.errorText || "A time is required"), this.error = !0;
454
+ return;
455
+ }
456
+ let e = this.timeToMinutes(this.getFormatted24());
457
+ if (this.min && e !== null) {
458
+ let t = this.timeToMinutes(this.min);
459
+ if (t !== null && e < t) {
460
+ this.setValidity({ rangeUnderflow: !0 }, this.errorText || `Time must be at or after ${this.min}`), this.error = !0;
461
+ return;
462
+ }
463
+ }
464
+ if (this.max && e !== null) {
465
+ let t = this.timeToMinutes(this.max);
466
+ if (t !== null && e > t) {
467
+ this.setValidity({ rangeOverflow: !0 }, this.errorText || `Time must be at or before ${this.max}`), this.error = !0;
468
+ return;
469
+ }
470
+ }
471
+ this.setValidity({}), this.errorText || (this.error = !1);
472
+ }
473
+ formDisabledCallback(e) {
474
+ this.disabled = e, this.syncFormValue(), this.validateInput();
475
+ }
476
+ formResetCallback() {
477
+ this.value = this.initialValue, this.parseValue(this.initialValue), this.syncFormValue(), this.activeField = "hour", this.validateInput();
478
+ }
479
+ reset() {
480
+ this.formResetCallback();
481
+ }
482
+ showModal() {
483
+ this.modal = !0, this.open = !0, this.emitEvent("open");
484
+ }
485
+ show() {
486
+ this.open = !0, this.emitEvent("open");
487
+ }
488
+ close(e) {
489
+ e !== void 0 && (this.returnValue = e), this.open = !1, this.emitEvent("close", { returnValue: this.returnValue });
490
+ }
491
+ confirm() {
492
+ this.syncFormValue();
493
+ let e = {
494
+ value: this.value,
495
+ hour: this.selectedHour,
496
+ minute: this.selectedMinute,
497
+ period: this.selectedPeriod,
498
+ formatted24: this.getFormatted24(),
499
+ formatted12: this.getFormatted12()
500
+ };
501
+ this.emitEvent("change", e), this.emitEvent("confirm", e), this.modal && this.close("confirm");
502
+ }
503
+ cancel() {
504
+ this.emitEvent("cancel"), this.modal && this.close("cancel");
505
+ }
506
+ toggleView() {
507
+ this.view = this.view === "dial" ? "input" : "dial";
508
+ }
509
+ setField(e) {
510
+ this.activeField = e;
511
+ }
512
+ setPeriod(e) {
513
+ this.selectedPeriod !== e && (this.selectedPeriod = e, this.syncFormValue(), this.notifyInput());
514
+ }
515
+ notifyInput() {
516
+ this.emitEvent("input", {
517
+ value: this.getFormattedTime(),
518
+ hour: this.selectedHour,
519
+ minute: this.selectedMinute,
520
+ period: this.selectedPeriod,
521
+ formatted24: this.getFormatted24(),
522
+ formatted12: this.getFormatted12()
523
+ });
524
+ }
525
+ updateDialFromPointer(e) {
526
+ if (!this.dialContainer) return;
527
+ let t = this.dialContainer.getBoundingClientRect(), n = t.left + t.width / 2, r = t.top + t.height / 2, i = e.clientX - n, a = e.clientY - r, o = 180 / Math.PI * Math.atan2(a, i) + 90;
528
+ o < 0 && (o += 360);
529
+ let s = Math.hypot(i, a);
530
+ if (this.activeField === "hour") {
531
+ if (this.format === "24h") {
532
+ let e = s < 80, t = Math.round(o / 30) % 12;
533
+ t === 0 && (t = 12), this.selectedHour = e ? t : t === 12 ? 0 : t + 12;
534
+ } else {
535
+ let e = Math.round(o / 30) % 12;
536
+ e === 0 && (e = 12), this.selectedHour = e;
537
+ }
538
+ } else {
539
+ let e = Math.round(o / 6) % 60;
540
+ this.selectedMinute = e;
541
+ }
542
+ this.notifyInput();
543
+ }
544
+ renderDialHand() {
545
+ let e = 0, t = 96;
546
+ this.activeField === "hour" ? this.format === "24h" ? this.selectedHour >= 1 && this.selectedHour <= 12 ? (e = this.selectedHour % 12 * 30, t = 64) : (e = (this.selectedHour === 0 ? 12 : this.selectedHour - 12) % 12 * 30, t = 98) : (e = this.selectedHour % 12 * 30, t = 96) : (e = this.selectedMinute * 6, t = 96);
547
+ let n = this.activeField === "minute" && this.selectedMinute % 5 != 0;
548
+ return r`
549
+ <div
550
+ class="dial-hand"
551
+ style="transform: rotate(${e}deg); height: ${t}px;"
552
+ >
553
+ <div class="dial-selector-head">
554
+ ${n ? r`<div class="dial-inner-dot"></div>` : i}
555
+ </div>
556
+ </div>
557
+ `;
558
+ }
559
+ renderDialNumbers() {
560
+ let e = [];
561
+ if (this.activeField === "hour") {
562
+ if (this.format === "24h") {
563
+ let t = [
564
+ 12,
565
+ 1,
566
+ 2,
567
+ 3,
568
+ 4,
569
+ 5,
570
+ 6,
571
+ 7,
572
+ 8,
573
+ 9,
574
+ 10,
575
+ 11
576
+ ];
577
+ for (let n = 0; n < 12; n++) {
578
+ let i = t[n] === 12 ? 0 : t[n] + 12, a = i.toString().padStart(2, "0"), o = (n * 30 - 90) * (Math.PI / 180), s = 128 + 98 * Math.cos(o), c = 128 + 98 * Math.sin(o), l = this.selectedHour === i;
579
+ e.push(r`
580
+ <span
581
+ class="dial-number small ${l ? "selected" : ""}"
582
+ style="left: ${s}px; top: ${c}px;"
583
+ >
584
+ ${a}
585
+ </span>
586
+ `);
587
+ }
588
+ let n = [
589
+ 12,
590
+ 1,
591
+ 2,
592
+ 3,
593
+ 4,
594
+ 5,
595
+ 6,
596
+ 7,
597
+ 8,
598
+ 9,
599
+ 10,
600
+ 11
601
+ ];
602
+ for (let t = 0; t < 12; t++) {
603
+ let i = n[t], a = i.toString(), o = (t * 30 - 90) * (Math.PI / 180), s = 128 + 64 * Math.cos(o), c = 128 + 64 * Math.sin(o), l = this.selectedHour === i;
604
+ e.push(r`
605
+ <span
606
+ class="dial-number ${l ? "selected" : ""}"
607
+ style="left: ${s}px; top: ${c}px;"
608
+ >
609
+ ${a}
610
+ </span>
611
+ `);
612
+ }
613
+ } else {
614
+ let t = [
615
+ 12,
616
+ 1,
617
+ 2,
618
+ 3,
619
+ 4,
620
+ 5,
621
+ 6,
622
+ 7,
623
+ 8,
624
+ 9,
625
+ 10,
626
+ 11
627
+ ];
628
+ for (let n = 0; n < 12; n++) {
629
+ let i = t[n], a = (n * 30 - 90) * (Math.PI / 180), o = 128 + 96 * Math.cos(a), s = 128 + 96 * Math.sin(a), c = this.selectedHour === i;
630
+ e.push(r`
631
+ <span
632
+ class="dial-number ${c ? "selected" : ""}"
633
+ style="left: ${o}px; top: ${s}px;"
634
+ >
635
+ ${i}
636
+ </span>
637
+ `);
638
+ }
639
+ }
640
+ } else for (let t = 0; t < 12; t++) {
641
+ let n = t * 5, i = n.toString().padStart(2, "0"), a = (t * 30 - 90) * (Math.PI / 180), o = 128 + 96 * Math.cos(a), s = 128 + 96 * Math.sin(a), c = this.selectedMinute === n;
642
+ e.push(r`
643
+ <span
644
+ class="dial-number ${c ? "selected" : ""}"
645
+ style="left: ${o}px; top: ${s}px;"
646
+ >
647
+ ${i}
648
+ </span>
649
+ `);
650
+ }
651
+ return e;
652
+ }
653
+ render() {
654
+ let e = this.selectedHour.toString().padStart(2, "0"), t = this.selectedMinute.toString().padStart(2, "0");
655
+ return r`
656
+ ${this.modal ? r`<div class="scrim" @click=${this.cancel}></div>` : i}
657
+
658
+ <div class="picker-surface" role="dialog" aria-modal=${this.modal ? "true" : "false"}>
659
+ <div class="header">
660
+ <h2 class="headline">${this.headline}</h2>
661
+ </div>
662
+
663
+ <div class="time-display-row">
664
+ <div class="time-card-wrapper">
665
+ ${this.view === "input" ? r`
666
+ <div class="time-card ${this.activeField === "hour" ? "active" : ""}">
667
+ <input
668
+ id="hour-input"
669
+ class="time-input"
670
+ type="text"
671
+ inputmode="numeric"
672
+ maxlength="2"
673
+ .value=${e}
674
+ ?disabled=${this.disabled}
675
+ @input=${this.handleHourInput}
676
+ @blur=${this.handleHourBlur}
677
+ @focus=${() => this.setField("hour")}
678
+ aria-label="Hour"
679
+ />
680
+ </div>
681
+ ` : r`
682
+ <button
683
+ type="button"
684
+ class="time-card ${this.activeField === "hour" ? "active" : ""}"
685
+ ?disabled=${this.disabled}
686
+ @click=${() => this.setField("hour")}
687
+ aria-label="Select hour"
688
+ >
689
+ ${e}
690
+ </button>
691
+ `}
692
+ ${this.view === "input" ? r`<span class="time-card-label">Hour</span>` : i}
693
+ </div>
694
+
695
+ <span class="time-separator" aria-hidden="true">:</span>
696
+
697
+ <div class="time-card-wrapper">
698
+ ${this.view === "input" ? r`
699
+ <div class="time-card ${this.activeField === "minute" ? "active" : ""}">
700
+ <input
701
+ id="minute-input"
702
+ class="time-input"
703
+ type="text"
704
+ inputmode="numeric"
705
+ maxlength="2"
706
+ .value=${t}
707
+ ?disabled=${this.disabled}
708
+ @input=${this.handleMinuteInput}
709
+ @blur=${this.handleMinuteBlur}
710
+ @focus=${() => this.setField("minute")}
711
+ aria-label="Minute"
712
+ />
713
+ </div>
714
+ ` : r`
715
+ <button
716
+ type="button"
717
+ class="time-card ${this.activeField === "minute" ? "active" : ""}"
718
+ ?disabled=${this.disabled}
719
+ @click=${() => this.setField("minute")}
720
+ aria-label="Select minute"
721
+ >
722
+ ${t}
723
+ </button>
724
+ `}
725
+ ${this.view === "input" ? r`<span class="time-card-label">Minute</span>` : i}
726
+ </div>
727
+
728
+ ${this.format === "12h" ? r`
729
+ <div class="period-toggle" role="group" aria-label="Period selector">
730
+ <button
731
+ type="button"
732
+ class="period-button ${this.selectedPeriod === "AM" ? "selected" : ""}"
733
+ @click=${() => this.setPeriod("AM")}
734
+ aria-pressed=${this.selectedPeriod === "AM"}
735
+ >
736
+ AM
737
+ </button>
738
+ <button
739
+ type="button"
740
+ class="period-button ${this.selectedPeriod === "PM" ? "selected" : ""}"
741
+ @click=${() => this.setPeriod("PM")}
742
+ aria-pressed=${this.selectedPeriod === "PM"}
743
+ >
744
+ PM
745
+ </button>
746
+ </div>
747
+ ` : i}
748
+ </div>
749
+
750
+ ${this.view === "dial" ? r`
751
+ <div
752
+ class="dial-container"
753
+ @pointerdown=${this.handleDialPointerDown}
754
+ @pointermove=${this.handleDialPointerMove}
755
+ @pointerup=${this.handleDialPointerUp}
756
+ >
757
+ <div class="dial-center-pin"></div>
758
+ ${this.renderDialHand()}
759
+ ${this.renderDialNumbers()}
760
+ </div>
761
+ ` : i}
762
+
763
+ <div class="actions-row">
764
+ <button
765
+ type="button"
766
+ class="mode-switch-btn"
767
+ aria-label=${this.view === "dial" ? "Switch to text input" : "Switch to clock dial"}
768
+ @click=${this.toggleView}
769
+ >
770
+ <md-icon name=${this.view === "dial" ? "keyboard" : "schedule"}></md-icon>
771
+ </button>
772
+
773
+ <div class="dialog-buttons">
774
+ <md-button variant="text" @click=${this.cancel}>${this.cancelLabel}</md-button>
775
+ <md-button variant="text" @click=${this.confirm}>${this.confirmLabel}</md-button>
776
+ </div>
777
+ </div>
778
+ </div>
779
+ `;
780
+ }
781
+ };
782
+ e([o({ type: String })], u.prototype, "value", void 0), e([o({ type: String })], u.prototype, "format", void 0), e([o({ type: String })], u.prototype, "view", void 0), e([o({
783
+ type: Boolean,
784
+ reflect: !0
785
+ })], u.prototype, "modal", void 0), e([o({
786
+ type: Boolean,
787
+ reflect: !0
788
+ })], u.prototype, "open", void 0), e([o({ type: String })], u.prototype, "headline", void 0), e([o({
789
+ type: String,
790
+ attribute: "return-value"
791
+ })], u.prototype, "returnValue", void 0), e([o({
792
+ type: Boolean,
793
+ attribute: "auto-switch-to-minute"
794
+ })], u.prototype, "autoSwitchToMinute", void 0), e([o({
795
+ type: String,
796
+ attribute: "cancel-label"
797
+ })], u.prototype, "cancelLabel", void 0), e([o({
798
+ type: String,
799
+ attribute: "confirm-label"
800
+ })], u.prototype, "confirmLabel", void 0), e([o({ type: String })], u.prototype, "min", void 0), e([o({ type: String })], u.prototype, "max", void 0), e([o({
801
+ type: Boolean,
802
+ reflect: !0
803
+ })], u.prototype, "error", void 0), e([o({
804
+ type: String,
805
+ attribute: "error-text"
806
+ })], u.prototype, "errorText", void 0), e([c()], u.prototype, "activeField", void 0), e([c()], u.prototype, "selectedHour", void 0), e([c()], u.prototype, "selectedMinute", void 0), e([c()], u.prototype, "selectedPeriod", void 0), e([c()], u.prototype, "isDragging", void 0), e([s(".dial-container")], u.prototype, "dialContainer", void 0), e([s("#hour-input")], u.prototype, "hourInputElement", void 0), e([s("#minute-input")], u.prototype, "minuteInputElement", void 0), u = e([a("md-time-picker")], u);
807
+ //#endregion
808
+ export { u as t };
809
+
810
+ //# sourceMappingURL=time-picker-JTcLcJuz.js.map