@mhmo91/schmancy 0.10.41 → 0.10.43

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 (764) hide show
  1. package/custom-elements.json +291 -179
  2. package/dist/SchmancyElement-CeKrBW2j.cjs +2 -0
  3. package/dist/SchmancyElement-CeKrBW2j.cjs.map +1 -0
  4. package/dist/SchmancyElement-Ob9yGkiG.js +286 -0
  5. package/dist/SchmancyElement-Ob9yGkiG.js.map +1 -0
  6. package/dist/agent/schmancy.agent.js +4057 -4082
  7. package/dist/agent/schmancy.agent.js.map +1 -1
  8. package/dist/agent/schmancy.manifest.json +225 -94
  9. package/dist/animation-CCOIW4wJ.cjs.map +1 -1
  10. package/dist/animation-DCznELuT.js.map +1 -1
  11. package/dist/area-CbajcnmJ.cjs +21 -0
  12. package/dist/area-CbajcnmJ.cjs.map +1 -0
  13. package/dist/{area-BiM7V2ns.js → area-MxLAyWgV.js} +22 -22
  14. package/dist/area-MxLAyWgV.js.map +1 -0
  15. package/dist/area.cjs +1 -1
  16. package/dist/area.js +1 -1
  17. package/dist/{audio-CxO_j__6.js → audio-B_0PGwYC.js} +1 -1
  18. package/dist/audio-B_0PGwYC.js.map +1 -0
  19. package/dist/{audio-xXFfMPCS.cjs → audio-CpwrIaw-.cjs} +1 -1
  20. package/dist/audio-CpwrIaw-.cjs.map +1 -0
  21. package/dist/audio.cjs +1 -1
  22. package/dist/audio.js +2 -2
  23. package/dist/autocomplete-CILzaDB7.cjs +115 -0
  24. package/dist/autocomplete-CILzaDB7.cjs.map +1 -0
  25. package/dist/{autocomplete-DUBY9RtH.js → autocomplete-DV9RxCun.js} +113 -113
  26. package/dist/autocomplete-DV9RxCun.js.map +1 -0
  27. package/dist/autocomplete.cjs +1 -1
  28. package/dist/autocomplete.js +1 -1
  29. package/dist/avatar.cjs +1 -1
  30. package/dist/avatar.cjs.map +1 -1
  31. package/dist/avatar.js +4 -4
  32. package/dist/avatar.js.map +1 -1
  33. package/dist/badge.cjs +1 -1
  34. package/dist/badge.js +1 -1
  35. package/dist/{boat-ScvAima3.js → boat-DoZGgQ0P.js} +6 -8
  36. package/dist/{boat-ScvAima3.js.map → boat-DoZGgQ0P.js.map} +1 -1
  37. package/dist/{boat-BIYaPAHp.cjs → boat-sg0cWO8a.cjs} +3 -5
  38. package/dist/{boat-BIYaPAHp.cjs.map → boat-sg0cWO8a.cjs.map} +1 -1
  39. package/dist/boat.cjs +1 -1
  40. package/dist/boat.js +1 -1
  41. package/dist/breadcrumb.cjs +32 -31
  42. package/dist/breadcrumb.cjs.map +1 -1
  43. package/dist/breadcrumb.js +33 -32
  44. package/dist/breadcrumb.js.map +1 -1
  45. package/dist/busy-Brs-TDh9.cjs +133 -0
  46. package/dist/busy-Brs-TDh9.cjs.map +1 -0
  47. package/dist/busy-g4LoQmhB.js +172 -0
  48. package/dist/busy-g4LoQmhB.js.map +1 -0
  49. package/dist/busy.cjs +1 -1
  50. package/dist/busy.js +1 -1
  51. package/dist/{button-BTpxQ1Kd.cjs → button-Cml67Y_d.cjs} +41 -32
  52. package/dist/button-Cml67Y_d.cjs.map +1 -0
  53. package/dist/{button-D7QHfYf4.js → button-DWANpZfD.js} +43 -34
  54. package/dist/button-DWANpZfD.js.map +1 -0
  55. package/dist/button.cjs +40 -33
  56. package/dist/button.cjs.map +1 -1
  57. package/dist/button.js +42 -35
  58. package/dist/button.js.map +1 -1
  59. package/dist/calendar-2dJrw9pR.cjs +58 -0
  60. package/dist/calendar-2dJrw9pR.cjs.map +1 -0
  61. package/dist/calendar-kCe5LaBa.js +434 -0
  62. package/dist/calendar-kCe5LaBa.js.map +1 -0
  63. package/dist/calendar.cjs +1 -0
  64. package/dist/calendar.js +2 -0
  65. package/dist/{card-DCdtJ5Dy.js → card-CS_hYJbz.js} +136 -136
  66. package/dist/card-CS_hYJbz.js.map +1 -0
  67. package/dist/card-d0KhTnx5.cjs +177 -0
  68. package/dist/card-d0KhTnx5.cjs.map +1 -0
  69. package/dist/card.cjs +1 -1
  70. package/dist/card.js +1 -1
  71. package/dist/{checkbox-DVtyPk7l.js → checkbox-Bjp7kWuE.js} +2 -2
  72. package/dist/{checkbox-DVtyPk7l.js.map → checkbox-Bjp7kWuE.js.map} +1 -1
  73. package/dist/{checkbox-CYGOVPP-.cjs → checkbox-DZ2Wrz7Y.cjs} +1 -1
  74. package/dist/{checkbox-CYGOVPP-.cjs.map → checkbox-DZ2Wrz7Y.cjs.map} +1 -1
  75. package/dist/checkbox.cjs +1 -1
  76. package/dist/checkbox.js +1 -1
  77. package/dist/{chips-DVes-BSz.cjs → chips-BHBVkxsa.cjs} +142 -153
  78. package/dist/chips-BHBVkxsa.cjs.map +1 -0
  79. package/dist/{chips-C5bpgWyf.js → chips-DACeW7YL.js} +127 -138
  80. package/dist/chips-DACeW7YL.js.map +1 -0
  81. package/dist/chips.cjs +1 -1
  82. package/dist/chips.js +2 -2
  83. package/dist/connectivity.cjs +54 -38
  84. package/dist/connectivity.cjs.map +1 -1
  85. package/dist/connectivity.js +56 -40
  86. package/dist/connectivity.js.map +1 -1
  87. package/dist/content-drawer.cjs +1 -1
  88. package/dist/content-drawer.js +1 -1
  89. package/dist/cursor-glow-Ah7VXSj7.js.map +1 -1
  90. package/dist/cursor-glow-Bulq-38P.cjs.map +1 -1
  91. package/dist/date-range-CVAWMdar.cjs +138 -0
  92. package/dist/date-range-CVAWMdar.cjs.map +1 -0
  93. package/dist/date-range-D2NZU5Yg.js +433 -0
  94. package/dist/date-range-D2NZU5Yg.js.map +1 -0
  95. package/dist/{date-range-inline-Dx4Reboo.cjs → date-range-inline-CGM0SPK9.cjs} +2 -4
  96. package/dist/date-range-inline-CGM0SPK9.cjs.map +1 -0
  97. package/dist/{date-range-inline-DPqY9YYf.js → date-range-inline-D6Ozerzw.js} +3 -5
  98. package/dist/date-range-inline-D6Ozerzw.js.map +1 -0
  99. package/dist/date-range-inline.cjs +1 -1
  100. package/dist/date-range-inline.js +1 -1
  101. package/dist/date-range.cjs +1 -1
  102. package/dist/date-range.js +2 -2
  103. package/dist/dayjs.min-CvRZTfam.cjs +1 -0
  104. package/dist/dayjs.min-CvRZTfam.cjs.map +1 -0
  105. package/dist/dayjs.min-DnELezPs.js +296 -0
  106. package/dist/dayjs.min-DnELezPs.js.map +1 -0
  107. package/dist/delay.cjs +1 -1
  108. package/dist/delay.js +3 -3
  109. package/dist/{details-BnleHmYe.js → details-Ct1_GwKr.js} +104 -92
  110. package/dist/details-Ct1_GwKr.js.map +1 -0
  111. package/dist/{details-Bx2jSJxG.cjs → details-D4fVOaj4.cjs} +109 -97
  112. package/dist/details-D4fVOaj4.cjs.map +1 -0
  113. package/dist/details.cjs +1 -1
  114. package/dist/details.js +1 -1
  115. package/dist/{directives-CYf2fAdA.cjs → directives-B2VxfwRL.cjs} +1 -1
  116. package/dist/directives-B2VxfwRL.cjs.map +1 -0
  117. package/dist/{directives-d1rEbW1A.js → directives-Dj8jlv-Q.js} +3 -3
  118. package/dist/directives-Dj8jlv-Q.js.map +1 -0
  119. package/dist/directives.cjs +1 -1
  120. package/dist/directives.js +2 -2
  121. package/dist/discovery.service-CIa3Eeuk.cjs.map +1 -1
  122. package/dist/discovery.service-DZFxtRwW.js.map +1 -1
  123. package/dist/divider-B3v33OnX.cjs +57 -0
  124. package/dist/divider-B3v33OnX.cjs.map +1 -0
  125. package/dist/divider-BJHW3q11.js +89 -0
  126. package/dist/divider-BJHW3q11.js.map +1 -0
  127. package/dist/divider.cjs +1 -1
  128. package/dist/divider.js +1 -1
  129. package/dist/dropdown.cjs +40 -40
  130. package/dist/dropdown.cjs.map +1 -1
  131. package/dist/dropdown.js +41 -41
  132. package/dist/dropdown.js.map +1 -1
  133. package/dist/{expand-DNrWuG_-.js → expand-BT8mOu8Q.js} +103 -97
  134. package/dist/expand-BT8mOu8Q.js.map +1 -0
  135. package/dist/expand-D0YdR9nR.cjs +147 -0
  136. package/dist/expand-D0YdR9nR.cjs.map +1 -0
  137. package/dist/expand.cjs +1 -1
  138. package/dist/expand.js +1 -1
  139. package/dist/fab.cjs +1 -1
  140. package/dist/fab.cjs.map +1 -1
  141. package/dist/fab.js +2 -2
  142. package/dist/fab.js.map +1 -1
  143. package/dist/{float-V7VQKTb8.cjs → float-BPQlDyai.cjs} +1 -1
  144. package/dist/{float-V7VQKTb8.cjs.map → float-BPQlDyai.cjs.map} +1 -1
  145. package/dist/{float-C_CMle0q.js → float-BQcxj3i_.js} +2 -2
  146. package/dist/{float-C_CMle0q.js.map → float-BQcxj3i_.js.map} +1 -1
  147. package/dist/float.cjs +1 -1
  148. package/dist/float.js +1 -1
  149. package/dist/{form-DaaAQd2A.cjs → form-CoWFnClb.cjs} +8 -13
  150. package/dist/form-CoWFnClb.cjs.map +1 -0
  151. package/dist/{form-CMgYSZ3y.js → form-hC2LvCHX.js} +10 -15
  152. package/dist/form-hC2LvCHX.js.map +1 -0
  153. package/dist/form.cjs +12 -13
  154. package/dist/form.cjs.map +1 -1
  155. package/dist/form.js +23 -24
  156. package/dist/form.js.map +1 -1
  157. package/dist/gravity-6pL6CfIr.cjs.map +1 -1
  158. package/dist/gravity-sVK3zGBF.js.map +1 -1
  159. package/dist/handover/agent-runtime-followups.md +1 -1
  160. package/dist/handover/agent-runtime-v1.md +3 -3
  161. package/dist/{hashContent-iRZJJWtE.cjs.map → hashContent--s09Ed_g.cjs.map} +1 -1
  162. package/dist/{hashContent-BqU6v1Xr.js.map → hashContent-CAvrQ56N.js.map} +1 -1
  163. package/dist/icons-BeGKDZ-k.cjs +22 -0
  164. package/dist/icons-BeGKDZ-k.cjs.map +1 -0
  165. package/dist/{icons-mbpHO_73.js → icons-DEJnIxml.js} +20 -22
  166. package/dist/icons-DEJnIxml.js.map +1 -0
  167. package/dist/icons.cjs +1 -1
  168. package/dist/icons.js +1 -1
  169. package/dist/{iframe-88SN5JPu.cjs → iframe-BkSukM9C.cjs} +9 -9
  170. package/dist/iframe-BkSukM9C.cjs.map +1 -0
  171. package/dist/{iframe-U3P1DnQv.js → iframe-V3S-bwEY.js} +10 -10
  172. package/dist/iframe-V3S-bwEY.js.map +1 -0
  173. package/dist/iframe.cjs +1 -1
  174. package/dist/iframe.js +1 -1
  175. package/dist/index.cjs +1 -1
  176. package/dist/index.js +61 -60
  177. package/dist/{input-CPWvGjE4.js → input-CPFCSQld.js} +3 -10
  178. package/dist/input-CPFCSQld.js.map +1 -0
  179. package/dist/{input-BY4Korc5.cjs → input-DSfwfhhj.cjs} +2 -9
  180. package/dist/input-DSfwfhhj.cjs.map +1 -0
  181. package/dist/input-chip-BUuFJUky.cjs +129 -0
  182. package/dist/input-chip-BUuFJUky.cjs.map +1 -0
  183. package/dist/{input-chip-CCZ3i3Sf.js → input-chip-C3a1fwKB.js} +87 -104
  184. package/dist/input-chip-C3a1fwKB.js.map +1 -0
  185. package/dist/input.cjs +1 -1
  186. package/dist/input.js +1 -1
  187. package/dist/json.cjs +5 -1
  188. package/dist/json.cjs.map +1 -1
  189. package/dist/json.js +8 -4
  190. package/dist/json.js.map +1 -1
  191. package/dist/kbd.cjs +28 -28
  192. package/dist/kbd.cjs.map +1 -1
  193. package/dist/kbd.js +29 -29
  194. package/dist/kbd.js.map +1 -1
  195. package/dist/{layout-BhfC26Ks.cjs → layout-CdyHy_oX.cjs} +1 -1
  196. package/dist/layout-CdyHy_oX.cjs.map +1 -0
  197. package/dist/{layout-DC0Npqu7.js → layout-k6fOkpif.js} +1 -1
  198. package/dist/layout-k6fOkpif.js.map +1 -0
  199. package/dist/layout.cjs +26 -26
  200. package/dist/layout.cjs.map +1 -1
  201. package/dist/layout.js +27 -27
  202. package/dist/layout.js.map +1 -1
  203. package/dist/lazy-BaAiIUru.js.map +1 -1
  204. package/dist/lazy-C-7a4FAe.cjs.map +1 -1
  205. package/dist/{lightbox-BSwWvDQc.js → lightbox-DIG0VLOK.js} +8 -14
  206. package/dist/lightbox-DIG0VLOK.js.map +1 -0
  207. package/dist/{lightbox-KrZQH9w9.cjs → lightbox-E5rgd-hu.cjs} +7 -13
  208. package/dist/lightbox-E5rgd-hu.cjs.map +1 -0
  209. package/dist/lightbox.cjs +1 -1
  210. package/dist/lightbox.js +1 -1
  211. package/dist/list-BRz0rDSH.cjs +47 -0
  212. package/dist/list-BRz0rDSH.cjs.map +1 -0
  213. package/dist/{list-BwGtAAfi.js → list-NrOYDPBo.js} +48 -34
  214. package/dist/list-NrOYDPBo.js.map +1 -0
  215. package/dist/list.cjs +1 -1
  216. package/dist/list.js +1 -1
  217. package/dist/magnetic-DKtc4umC.cjs.map +1 -1
  218. package/dist/magnetic-DaOOv5Dz.js.map +1 -1
  219. package/dist/{menu-DX8d96x-.js → menu-B1Ei9SVj.js} +12 -12
  220. package/dist/menu-B1Ei9SVj.js.map +1 -0
  221. package/dist/{menu-jT_yAk5V.cjs → menu-Duvl66Nl.cjs} +10 -10
  222. package/dist/menu-Duvl66Nl.cjs.map +1 -0
  223. package/dist/menu.cjs +1 -1
  224. package/dist/menu.js +1 -1
  225. package/dist/{mixins-XGVIOvKt.cjs → mixins-Cjn20BQH.cjs} +42 -170
  226. package/dist/mixins-Cjn20BQH.cjs.map +1 -0
  227. package/dist/{mixins-COeG4DiX.js → mixins-q4KAL8Xr.js} +43 -177
  228. package/dist/mixins-q4KAL8Xr.js.map +1 -0
  229. package/dist/mixins.cjs +1 -1
  230. package/dist/mixins.js +2 -2
  231. package/dist/nav-drawer.cjs +1 -1
  232. package/dist/nav-drawer.js +1 -1
  233. package/dist/navigation-bar.cjs +1 -1
  234. package/dist/navigation-bar.js +1 -1
  235. package/dist/navigation-rail.cjs +2 -4
  236. package/dist/navigation-rail.cjs.map +1 -1
  237. package/dist/navigation-rail.js +3 -5
  238. package/dist/navigation-rail.js.map +1 -1
  239. package/dist/{notification-CAJVpLne.js → notification-COhUhUCr.js} +5 -7
  240. package/dist/notification-COhUhUCr.js.map +1 -0
  241. package/dist/{notification-DO3VXceY.cjs → notification-DsdA_MJe.cjs} +2 -4
  242. package/dist/notification-DsdA_MJe.cjs.map +1 -0
  243. package/dist/notification.cjs +1 -1
  244. package/dist/notification.js +1 -1
  245. package/dist/{option-JISY0wZJ.js → option-BIzgTbXz.js} +20 -20
  246. package/dist/option-BIzgTbXz.js.map +1 -0
  247. package/dist/option-C5hhqR2z.cjs +43 -0
  248. package/dist/option-C5hhqR2z.cjs.map +1 -0
  249. package/dist/option.cjs +1 -1
  250. package/dist/option.js +1 -1
  251. package/dist/{overlay-B1jVf-ge.cjs → overlay-BzgF8P7i.cjs} +48 -41
  252. package/dist/overlay-BzgF8P7i.cjs.map +1 -0
  253. package/dist/{overlay-CT-tMHDX.js → overlay-LoRRemny.js} +52 -45
  254. package/dist/overlay-LoRRemny.js.map +1 -0
  255. package/dist/overlay-stack-Bdr9lOqi.cjs.map +1 -1
  256. package/dist/overlay-stack-D2rgxQLh.js.map +1 -1
  257. package/dist/overlay.cjs +1 -1
  258. package/dist/{overlay.confirm-body-Dn-Zgogx.js → overlay.confirm-body-D0b1MoCw.js} +30 -45
  259. package/dist/overlay.confirm-body-D0b1MoCw.js.map +1 -0
  260. package/dist/{overlay.confirm-body-mYDYoJL8.cjs → overlay.confirm-body-DCneq73Z.cjs} +22 -37
  261. package/dist/overlay.confirm-body-DCneq73Z.cjs.map +1 -0
  262. package/dist/overlay.js +3 -3
  263. package/dist/{overlay.service-yqTOyLlr.js → overlay.service-BuUeti6X.js} +2 -2
  264. package/dist/overlay.service-BuUeti6X.js.map +1 -0
  265. package/dist/{overlay.service-BQmva9GY.cjs → overlay.service-MMTiW2T3.cjs} +1 -1
  266. package/dist/overlay.service-MMTiW2T3.cjs.map +1 -0
  267. package/dist/{progress-CGWozq_n.js → progress-D7n3SKAO.js} +50 -50
  268. package/dist/progress-D7n3SKAO.js.map +1 -0
  269. package/dist/progress-DsCnFsH5.cjs +51 -0
  270. package/dist/progress-DsCnFsH5.cjs.map +1 -0
  271. package/dist/progress.cjs +1 -1
  272. package/dist/progress.js +1 -1
  273. package/dist/{radio-group-DoSX5D2V.cjs → radio-group-CaAjg9UV.cjs} +1 -1
  274. package/dist/radio-group-CaAjg9UV.cjs.map +1 -0
  275. package/dist/{radio-group-CXkq6qAF.js → radio-group-Drpl6Pl8.js} +2 -2
  276. package/dist/radio-group-Drpl6Pl8.js.map +1 -0
  277. package/dist/radio-group.cjs +1 -1
  278. package/dist/radio-group.js +1 -1
  279. package/dist/range.cjs +4 -2
  280. package/dist/range.cjs.map +1 -1
  281. package/dist/range.js +5 -3
  282. package/dist/range.js.map +1 -1
  283. package/dist/reduced-motion-D-L12p7G.js.map +1 -1
  284. package/dist/reduced-motion-Ds-HjMzn.cjs.map +1 -1
  285. package/dist/{rxjs-utils-Csnks202.cjs.map → rxjs-utils-4P2v57ke.cjs.map} +1 -1
  286. package/dist/{rxjs-utils-d-ivVN84.js.map → rxjs-utils-JMFdgQSl.js.map} +1 -1
  287. package/dist/rxjs-utils.cjs +1 -1
  288. package/dist/rxjs-utils.js +1 -1
  289. package/dist/search-DPKoC-dT.cjs.map +1 -1
  290. package/dist/search-MvIBA93K.js.map +1 -1
  291. package/dist/{select-CU90i50_.js → select-CTXkrrVZ.js} +13 -13
  292. package/dist/select-CTXkrrVZ.js.map +1 -0
  293. package/dist/select-DcLcpPCh.cjs +56 -0
  294. package/dist/select-DcLcpPCh.cjs.map +1 -0
  295. package/dist/select.cjs +1 -1
  296. package/dist/select.js +1 -1
  297. package/dist/skeleton.cjs +37 -33
  298. package/dist/skeleton.cjs.map +1 -1
  299. package/dist/skeleton.js +38 -34
  300. package/dist/skeleton.js.map +1 -1
  301. package/dist/skills/schmancy/surface.md +79 -39
  302. package/dist/skills/surface.md +79 -39
  303. package/dist/slider.cjs +31 -31
  304. package/dist/slider.cjs.map +1 -1
  305. package/dist/slider.js +32 -32
  306. package/dist/slider.js.map +1 -1
  307. package/dist/{sound.service-m8WjOhjn.js → sound.service-AJwuk3yr.js} +1 -1
  308. package/dist/sound.service-AJwuk3yr.js.map +1 -0
  309. package/dist/{sound.service-Qhr8nCeG.cjs → sound.service-CVsxhQkX.cjs} +1 -1
  310. package/dist/sound.service-CVsxhQkX.cjs.map +1 -0
  311. package/dist/{splash-screen-Cs3dbPN3.js → splash-screen-DANfqvlo.js} +23 -26
  312. package/dist/splash-screen-DANfqvlo.js.map +1 -0
  313. package/dist/splash-screen-K74cgU6S.cjs +38 -0
  314. package/dist/splash-screen-K74cgU6S.cjs.map +1 -0
  315. package/dist/splash-screen.cjs +1 -1
  316. package/dist/splash-screen.js +1 -1
  317. package/dist/{src-CCVbLLgC.js → src-DAtcPmCb.js} +295 -389
  318. package/dist/src-DAtcPmCb.js.map +1 -0
  319. package/dist/src-DuRvYagm.cjs +237 -0
  320. package/dist/src-DuRvYagm.cjs.map +1 -0
  321. package/dist/{state--x58-AuK.cjs → state-BWQiqN6I.cjs} +1 -1
  322. package/dist/state-BWQiqN6I.cjs.map +1 -0
  323. package/dist/{state-QSwQ61sA.js → state-DBA_gzJO.js} +1 -1
  324. package/dist/state-DBA_gzJO.js.map +1 -0
  325. package/dist/state.cjs +1 -1
  326. package/dist/state.js +2 -2
  327. package/dist/steps.cjs +20 -12
  328. package/dist/steps.cjs.map +1 -1
  329. package/dist/steps.js +21 -13
  330. package/dist/steps.js.map +1 -1
  331. package/dist/surface-COBvWWFb.cjs +7 -0
  332. package/dist/surface-COBvWWFb.cjs.map +1 -0
  333. package/dist/{surface-cqMsHJHM.js → surface-DXk1X1tL.js} +9 -9
  334. package/dist/surface-DXk1X1tL.js.map +1 -0
  335. package/dist/surface.cjs +1 -1
  336. package/dist/surface.js +1 -1
  337. package/dist/switch.cjs +13 -4
  338. package/dist/switch.cjs.map +1 -1
  339. package/dist/switch.js +14 -5
  340. package/dist/switch.js.map +1 -1
  341. package/dist/table.cjs +4 -10
  342. package/dist/table.cjs.map +1 -1
  343. package/dist/table.js +5 -11
  344. package/dist/table.js.map +1 -1
  345. package/dist/{tabs-Ib0Mh__1.js → tabs-BYhFWnsx.js} +7 -7
  346. package/dist/tabs-BYhFWnsx.js.map +1 -0
  347. package/dist/{tabs-Dk9UDWpq.cjs → tabs-CJwB0fr0.cjs} +6 -6
  348. package/dist/tabs-CJwB0fr0.cjs.map +1 -0
  349. package/dist/tabs.cjs +1 -1
  350. package/dist/tabs.js +1 -1
  351. package/dist/teleport.cjs +1 -1
  352. package/dist/teleport.js +1 -1
  353. package/dist/{textarea-CcRsw08B.js → textarea-BjDx1w2g.js} +37 -41
  354. package/dist/textarea-BjDx1w2g.js.map +1 -0
  355. package/dist/{textarea-Cntd9tfV.cjs → textarea-CGgznhd6.cjs} +36 -40
  356. package/dist/textarea-CGgznhd6.cjs.map +1 -0
  357. package/dist/textarea.cjs +1 -1
  358. package/dist/textarea.js +1 -1
  359. package/dist/{theme-wwFbvp5e.cjs → theme-BVul7lHS.cjs} +6 -6
  360. package/dist/{theme-wwFbvp5e.cjs.map → theme-BVul7lHS.cjs.map} +1 -1
  361. package/dist/{theme-CKYXG0le.js → theme-Dvm5J8nh.js} +11 -11
  362. package/dist/{theme-CKYXG0le.js.map → theme-Dvm5J8nh.js.map} +1 -1
  363. package/dist/{theme-button-iLqT56KA.js → theme-button-Bko5ohFP.js} +2 -2
  364. package/dist/{theme-button-iLqT56KA.js.map → theme-button-Bko5ohFP.js.map} +1 -1
  365. package/dist/{theme-button-DE9Lrl7m.cjs → theme-button-YLY7zR1c.cjs} +1 -1
  366. package/dist/{theme-button-DE9Lrl7m.cjs.map → theme-button-YLY7zR1c.cjs.map} +1 -1
  367. package/dist/theme-button.cjs +1 -1
  368. package/dist/theme-button.js +1 -1
  369. package/dist/theme.cjs +1 -1
  370. package/dist/{theme.interface-CSt7JUBD.cjs.map → theme.interface-B-qxDsZQ.cjs.map} +1 -1
  371. package/dist/{theme.interface-odQEpZZH.js.map → theme.interface-B7caS5cg.js.map} +1 -1
  372. package/dist/theme.js +4 -4
  373. package/dist/{theme.service-5RjyR7Sy.js → theme.service-D94nm7Bf.js} +1 -1
  374. package/dist/theme.service-D94nm7Bf.js.map +1 -0
  375. package/dist/{theme.service-DA6KY52G.cjs → theme.service-h2fXQq7x.cjs} +1 -1
  376. package/dist/theme.service-h2fXQq7x.cjs.map +1 -0
  377. package/dist/tooltip.cjs.map +1 -1
  378. package/dist/tooltip.js.map +1 -1
  379. package/dist/tree.cjs +14 -14
  380. package/dist/tree.cjs.map +1 -1
  381. package/dist/tree.js +15 -15
  382. package/dist/tree.js.map +1 -1
  383. package/dist/types.cjs +1 -1
  384. package/dist/types.cjs.map +1 -1
  385. package/dist/types.js +19 -2
  386. package/dist/types.js.map +1 -1
  387. package/dist/typewriter.cjs.map +1 -1
  388. package/dist/typewriter.js.map +1 -1
  389. package/dist/typography-ByF2k5yW.js +358 -0
  390. package/dist/typography-ByF2k5yW.js.map +1 -0
  391. package/dist/typography-Cfav17it.cjs +282 -0
  392. package/dist/typography-Cfav17it.cjs.map +1 -0
  393. package/dist/typography.cjs +1 -1
  394. package/dist/typography.js +1 -1
  395. package/dist/utils-DIXndz6Q.cjs.map +1 -0
  396. package/dist/utils-dSPH7Oh9.js.map +1 -0
  397. package/dist/utils.cjs +1 -1
  398. package/dist/utils.js +1 -1
  399. package/dist/visually-hidden.cjs +13 -13
  400. package/dist/visually-hidden.cjs.map +1 -1
  401. package/dist/visually-hidden.js +14 -14
  402. package/dist/visually-hidden.js.map +1 -1
  403. package/dist/window-Br1OmpL-.cjs +67 -0
  404. package/dist/window-Br1OmpL-.cjs.map +1 -0
  405. package/dist/{window-Db5ZYY6t.js → window-CCmN4but.js} +28 -20
  406. package/dist/window-CCmN4but.js.map +1 -0
  407. package/dist/window.cjs +1 -1
  408. package/dist/window.js +1 -1
  409. package/package.json +1 -1
  410. package/skills/schmancy/surface.md +79 -39
  411. package/src/area/area.component.ts +249 -163
  412. package/src/area/area.service.test.ts +994 -1006
  413. package/src/area/area.service.ts +76 -72
  414. package/src/area/index.ts +7 -7
  415. package/src/area/lazy.ts +39 -42
  416. package/src/area/route.component.ts +54 -52
  417. package/src/area/router.types.ts +7 -7
  418. package/src/audio/emotional-sounds.ts +880 -801
  419. package/src/audio/sound.service.ts +26 -5
  420. package/src/avatar/avatar.ts +4 -4
  421. package/src/badge/badge.ts +60 -209
  422. package/src/badge/index.ts +1 -1
  423. package/src/boat/boat.ts +2 -4
  424. package/src/breadcrumb/breadcrumb.ts +37 -32
  425. package/src/busy/busy.ts +15 -12
  426. package/src/busy/index.ts +2 -2
  427. package/src/busy/spinner.ts +132 -119
  428. package/src/button/button.test.ts +5 -1
  429. package/src/button/button.ts +113 -72
  430. package/src/button/icon-button.ts +64 -46
  431. package/src/button/index.ts +2 -2
  432. package/src/calendar/calendar.test.ts +504 -0
  433. package/src/calendar/calendar.ts +587 -0
  434. package/src/calendar/index.ts +2 -0
  435. package/src/card/actions.ts +11 -9
  436. package/src/card/card.ts +79 -77
  437. package/src/card/content.ts +8 -6
  438. package/src/card/index.ts +4 -4
  439. package/src/card/media.ts +50 -50
  440. package/src/chips/assist-chip.ts +1 -1
  441. package/src/chips/chips.ts +1 -1
  442. package/src/chips/filter-chip.ts +1 -1
  443. package/src/chips/index.ts +1 -1
  444. package/src/chips/input-chip.ts +1 -1
  445. package/src/chips/suggestion-chip.ts +1 -1
  446. package/src/connectivity/connectivity-status.ts +91 -65
  447. package/src/content-drawer/drawer.service.ts +47 -36
  448. package/src/content-drawer/drawer.ts +31 -18
  449. package/src/content-drawer/index.ts +5 -5
  450. package/src/content-drawer/main.ts +9 -7
  451. package/src/content-drawer/sheet.ts +8 -6
  452. package/src/date-range-inline/date-range-inline.ts +523 -522
  453. package/src/date-range-inline/index.ts +2 -2
  454. package/src/delay/index.ts +1 -1
  455. package/src/details/details.ts +119 -105
  456. package/src/details/index.ts +1 -1
  457. package/src/directives/ai-badge.ts +1 -5
  458. package/src/directives/animate-text.ts +43 -31
  459. package/src/directives/art/effects/howl.ts +1 -4
  460. package/src/directives/art/effects/samwa.ts +11 -5
  461. package/src/directives/art/effects/snow.ts +1 -2
  462. package/src/directives/battery.ts +21 -12
  463. package/src/directives/confirm-click.ts +9 -17
  464. package/src/directives/cursor-glow.ts +1 -1
  465. package/src/directives/cycle-text.ts +7 -21
  466. package/src/directives/drag.ts +50 -45
  467. package/src/directives/fyi.ts +1 -6
  468. package/src/directives/gravity.ts +10 -8
  469. package/src/directives/hummingbird.ts +256 -107
  470. package/src/directives/index.ts +29 -29
  471. package/src/directives/intersect.ts +11 -11
  472. package/src/directives/layout.ts +25 -36
  473. package/src/directives/liquid.ts +4 -10
  474. package/src/directives/living-border.ts +7 -5
  475. package/src/directives/long-press.ts +2 -1
  476. package/src/directives/magnetic.ts +7 -6
  477. package/src/directives/nebula.ts +34 -28
  478. package/src/directives/overflow-within.ts +18 -20
  479. package/src/directives/reduced-motion.ts +9 -9
  480. package/src/directives/reveal.ts +193 -195
  481. package/src/directives/ripple.ts +9 -7
  482. package/src/directives/urgent.ts +3 -1
  483. package/src/directives/working-snake.ts +1 -1
  484. package/src/discovery/discovery.service.ts +198 -210
  485. package/src/discovery/index.ts +1 -1
  486. package/src/divider/divider.ts +49 -47
  487. package/src/divider/index.ts +1 -1
  488. package/src/dropdown/dropdown-content.ts +42 -40
  489. package/src/dropdown/index.ts +2 -2
  490. package/src/expand/expand-root.component.ts +70 -61
  491. package/src/expand/expand.component.ts +48 -43
  492. package/src/fab/fab.test.ts +1 -2
  493. package/src/fab/fab.ts +2 -4
  494. package/src/form/fields/autocomplete/autocomplete.scss +6 -2
  495. package/src/form/fields/autocomplete/autocomplete.ts +712 -724
  496. package/src/form/fields/autocomplete/index.ts +1 -1
  497. package/src/form/fields/checkbox/checkbox.ts +1 -4
  498. package/src/form/fields/chips/assist-chip.ts +69 -72
  499. package/src/form/fields/chips/chips.ts +14 -15
  500. package/src/form/fields/chips/filter-chip.ts +36 -32
  501. package/src/form/fields/chips/index.ts +5 -5
  502. package/src/form/fields/chips/input-chip.ts +130 -142
  503. package/src/form/fields/chips/suggestion-chip.ts +69 -72
  504. package/src/form/fields/date-range/date-range-dialog.ts +141 -194
  505. package/src/form/fields/date-range/date-range-helpers.ts +63 -64
  506. package/src/form/fields/date-range/date-range.test.ts +359 -122
  507. package/src/form/fields/date-range/date-range.ts +319 -395
  508. package/src/form/fields/date-range/index.ts +2 -2
  509. package/src/form/fields/input/index.ts +8 -8
  510. package/src/form/fields/input/input.scss +30 -26
  511. package/src/form/fields/input/input.test.ts +4 -1
  512. package/src/form/fields/input/input.ts +4 -20
  513. package/src/form/fields/radio-group/index.ts +2 -2
  514. package/src/form/fields/radio-group/radio-button.ts +8 -8
  515. package/src/form/fields/radio-group/radio-group.ts +4 -1
  516. package/src/form/fields/range/range.ts +3 -1
  517. package/src/form/fields/select/index.ts +2 -2
  518. package/src/form/fields/select/select.ts +51 -45
  519. package/src/form/fields/switch/switch.ts +13 -7
  520. package/src/form/fields/textarea/index.ts +1 -1
  521. package/src/form/fields/textarea/textarea.ts +44 -49
  522. package/src/form/form-summary.ts +15 -14
  523. package/src/form/form.test.ts +0 -1
  524. package/src/form/form.ts +11 -23
  525. package/src/icons/icon.ts +25 -25
  526. package/src/icons/index.ts +1 -1
  527. package/src/iframe/iframe.ts +11 -9
  528. package/src/index.ts +1 -0
  529. package/src/json/json.ts +9 -2
  530. package/src/kbd/kbd.ts +30 -28
  531. package/src/layout/scroll/index.ts +1 -1
  532. package/src/layout/scroll/scroll.ts +54 -54
  533. package/src/lightbox/lightbox-service.ts +27 -18
  534. package/src/lightbox/lightbox.directive.ts +2 -1
  535. package/src/lightbox/lightbox.ts +21 -38
  536. package/src/list/index.ts +3 -3
  537. package/src/list/list-item.ts +32 -26
  538. package/src/list/list.ts +13 -8
  539. package/src/menu/index.ts +2 -2
  540. package/src/menu/menu-item.ts +7 -5
  541. package/src/menu/menu.ts +8 -6
  542. package/src/nav-drawer/appbar.ts +9 -7
  543. package/src/nav-drawer/content.ts +10 -8
  544. package/src/nav-drawer/drawer.ts +29 -25
  545. package/src/nav-drawer/index.ts +6 -6
  546. package/src/navigation-bar/index.ts +2 -2
  547. package/src/navigation-bar/navigation-bar-item.ts +127 -118
  548. package/src/navigation-bar/navigation-bar.ts +103 -91
  549. package/src/navigation-rail/index.ts +2 -2
  550. package/src/navigation-rail/navigation-rail.ts +21 -22
  551. package/src/notification/index.ts +6 -6
  552. package/src/notification/notification-service.ts +1 -2
  553. package/src/notification/notification.scss +5 -1
  554. package/src/notification/notification.ts +1 -3
  555. package/src/notification/notify.ts +204 -207
  556. package/src/option/index.ts +1 -1
  557. package/src/option/option.ts +26 -25
  558. package/src/overlay/overlay.animations.ts +4 -14
  559. package/src/overlay/overlay.component.ts +110 -131
  560. package/src/overlay/overlay.confirm-body.ts +26 -48
  561. package/src/overlay/overlay.gestures.ts +8 -10
  562. package/src/overlay/overlay.layout.ts +1 -4
  563. package/src/overlay/overlay.positioning.ts +4 -15
  564. package/src/overlay/overlay.service.ts +9 -24
  565. package/src/overlay/overlay.stack.test.ts +4 -1
  566. package/src/overlay/overlay.stack.ts +4 -4
  567. package/src/overlay/overlay.types.ts +11 -20
  568. package/src/progress/index.ts +1 -1
  569. package/src/progress/progress.ts +135 -133
  570. package/src/rxjs-utils/index.ts +6 -6
  571. package/src/rxjs-utils/waitForElement.ts +20 -20
  572. package/src/rxjs-utils/waitForElementAll.ts +21 -21
  573. package/src/rxjs-utils/waitForElements.ts +27 -27
  574. package/src/rxjs-utils/waitForElementsAll.ts +27 -29
  575. package/src/rxjs-utils/waitUntil.ts +7 -12
  576. package/src/skeleton/skeleton.ts +39 -33
  577. package/src/slider/index.ts +2 -2
  578. package/src/slider/slide.ts +14 -12
  579. package/src/slider/slider.ts +24 -22
  580. package/src/splash-screen/index.ts +1 -1
  581. package/src/splash-screen/splash-screen.ts +26 -27
  582. package/src/state/active-host.ts +4 -5
  583. package/src/state/index.ts +34 -53
  584. package/src/state/persist.ts +14 -11
  585. package/src/state/schmancy-context.ts +88 -88
  586. package/src/state/state.test-d.ts +3 -13
  587. package/src/state/state.test.ts +1 -4
  588. package/src/steps/index.ts +3 -3
  589. package/src/steps/schmancy-step.ts +41 -31
  590. package/src/steps/schmancy-steps.ts +7 -5
  591. package/src/surface/index.ts +1 -1
  592. package/src/surface/surface.styles.ts +55 -191
  593. package/src/surface/surface.ts +18 -16
  594. package/src/table/index.ts +2 -2
  595. package/src/table/row.ts +1 -4
  596. package/src/table/table.ts +2 -5
  597. package/src/tabs/index.ts +2 -2
  598. package/src/tabs/tabs-group.ts +8 -6
  599. package/src/teleport/index.ts +2 -2
  600. package/src/test-utils/a11y.ts +1 -3
  601. package/src/theme/index.ts +17 -17
  602. package/src/theme/theme-audio-player.ts +18 -16
  603. package/src/theme/theme-controller-boat.ts +1 -1
  604. package/src/theme/theme-controller.ts +36 -32
  605. package/src/theme/theme.component.ts +5 -9
  606. package/src/theme/theme.events.ts +1 -1
  607. package/src/theme/theme.format.ts +7 -7
  608. package/src/theme/theme.service.ts +453 -468
  609. package/src/theme/theme.style.css +78 -23
  610. package/src/theme-button/index.ts +1 -1
  611. package/src/tooltip/tooltip.directive.ts +1 -1
  612. package/src/tree/index.ts +1 -1
  613. package/src/tree/tree.ts +24 -16
  614. package/src/types/surface.ts +38 -44
  615. package/src/typewriter/typewriter.directive.ts +30 -39
  616. package/src/typography/typography.ts +289 -269
  617. package/src/utils/animation.ts +2 -8
  618. package/src/utils/index.ts +6 -6
  619. package/src/utils/number.ts +480 -517
  620. package/src/utils/overlay-stack.ts +1 -3
  621. package/src/utils/search.ts +5 -9
  622. package/src/visually-hidden/visually-hidden.ts +15 -13
  623. package/src/window/window-manager.ts +6 -1
  624. package/src/window/window-position.ts +7 -5
  625. package/src/window/window.ts +146 -114
  626. package/types/mixins/surface.mixin.d.ts +8 -14
  627. package/types/src/badge/badge.d.ts +15 -48
  628. package/types/src/calendar/calendar.d.ts +108 -0
  629. package/types/src/calendar/calendar.test.d.ts +1 -0
  630. package/types/src/calendar/index.d.ts +2 -0
  631. package/types/src/directives/cursor-glow.d.ts +1 -1
  632. package/types/src/directives/hummingbird.d.ts +3 -3
  633. package/types/src/form/fields/date-range/date-range-dialog.d.ts +24 -28
  634. package/types/src/form/fields/date-range/date-range.d.ts +35 -66
  635. package/types/src/form/fields/date-range/date-range.test.d.ts +1 -0
  636. package/types/src/form/fields/date-range/index.d.ts +1 -1
  637. package/types/src/index.d.ts +1 -0
  638. package/types/src/surface/surface.d.ts +9 -7
  639. package/types/src/surface/surface.styles.d.ts +15 -20
  640. package/types/src/types/surface.d.ts +17 -22
  641. package/types/src/utils/number.d.ts +1 -1
  642. package/types/src/window/window.d.ts +0 -1
  643. package/dist/SchmancyElement-D9WA9FP9.cjs +0 -2
  644. package/dist/SchmancyElement-D9WA9FP9.cjs.map +0 -1
  645. package/dist/SchmancyElement-OWgz9ePG.js +0 -286
  646. package/dist/SchmancyElement-OWgz9ePG.js.map +0 -1
  647. package/dist/area-BiM7V2ns.js.map +0 -1
  648. package/dist/area-C7XjCoet.cjs +0 -21
  649. package/dist/area-C7XjCoet.cjs.map +0 -1
  650. package/dist/audio-CxO_j__6.js.map +0 -1
  651. package/dist/audio-xXFfMPCS.cjs.map +0 -1
  652. package/dist/autocomplete-DD7Hd59N.cjs +0 -115
  653. package/dist/autocomplete-DD7Hd59N.cjs.map +0 -1
  654. package/dist/autocomplete-DUBY9RtH.js.map +0 -1
  655. package/dist/busy-BjsO3y2A.js +0 -173
  656. package/dist/busy-BjsO3y2A.js.map +0 -1
  657. package/dist/busy-UbCGkTAi.cjs +0 -134
  658. package/dist/busy-UbCGkTAi.cjs.map +0 -1
  659. package/dist/button-BTpxQ1Kd.cjs.map +0 -1
  660. package/dist/button-D7QHfYf4.js.map +0 -1
  661. package/dist/card-DCdtJ5Dy.js.map +0 -1
  662. package/dist/card-rprhCYIC.cjs +0 -177
  663. package/dist/card-rprhCYIC.cjs.map +0 -1
  664. package/dist/chips-C5bpgWyf.js.map +0 -1
  665. package/dist/chips-DVes-BSz.cjs.map +0 -1
  666. package/dist/date-range-DDUuBlJ6.cjs +0 -142
  667. package/dist/date-range-DDUuBlJ6.cjs.map +0 -1
  668. package/dist/date-range-IPlbrhwW.js +0 -966
  669. package/dist/date-range-IPlbrhwW.js.map +0 -1
  670. package/dist/date-range-inline-DPqY9YYf.js.map +0 -1
  671. package/dist/date-range-inline-Dx4Reboo.cjs.map +0 -1
  672. package/dist/details-BnleHmYe.js.map +0 -1
  673. package/dist/details-Bx2jSJxG.cjs.map +0 -1
  674. package/dist/directives-CYf2fAdA.cjs.map +0 -1
  675. package/dist/directives-d1rEbW1A.js.map +0 -1
  676. package/dist/divider-CimQJVr3.cjs +0 -57
  677. package/dist/divider-CimQJVr3.cjs.map +0 -1
  678. package/dist/divider-Cr-rx3vA.js +0 -89
  679. package/dist/divider-Cr-rx3vA.js.map +0 -1
  680. package/dist/expand-DNrWuG_-.js.map +0 -1
  681. package/dist/expand-_cp8oBjp.cjs +0 -141
  682. package/dist/expand-_cp8oBjp.cjs.map +0 -1
  683. package/dist/form-CMgYSZ3y.js.map +0 -1
  684. package/dist/form-DaaAQd2A.cjs.map +0 -1
  685. package/dist/icons-C2RkSXjP.cjs +0 -24
  686. package/dist/icons-C2RkSXjP.cjs.map +0 -1
  687. package/dist/icons-mbpHO_73.js.map +0 -1
  688. package/dist/iframe-88SN5JPu.cjs.map +0 -1
  689. package/dist/iframe-U3P1DnQv.js.map +0 -1
  690. package/dist/input-BY4Korc5.cjs.map +0 -1
  691. package/dist/input-CPWvGjE4.js.map +0 -1
  692. package/dist/input-chip-CCZ3i3Sf.js.map +0 -1
  693. package/dist/input-chip-kytMdbaM.cjs +0 -146
  694. package/dist/input-chip-kytMdbaM.cjs.map +0 -1
  695. package/dist/layout-BhfC26Ks.cjs.map +0 -1
  696. package/dist/layout-DC0Npqu7.js.map +0 -1
  697. package/dist/lightbox-BSwWvDQc.js.map +0 -1
  698. package/dist/lightbox-KrZQH9w9.cjs.map +0 -1
  699. package/dist/list-BwGtAAfi.js.map +0 -1
  700. package/dist/list-DIs02A3d.cjs +0 -40
  701. package/dist/list-DIs02A3d.cjs.map +0 -1
  702. package/dist/menu-DX8d96x-.js.map +0 -1
  703. package/dist/menu-jT_yAk5V.cjs.map +0 -1
  704. package/dist/mixins-COeG4DiX.js.map +0 -1
  705. package/dist/mixins-XGVIOvKt.cjs.map +0 -1
  706. package/dist/notification-CAJVpLne.js.map +0 -1
  707. package/dist/notification-DO3VXceY.cjs.map +0 -1
  708. package/dist/option-BNo1Zs-l.cjs +0 -43
  709. package/dist/option-BNo1Zs-l.cjs.map +0 -1
  710. package/dist/option-JISY0wZJ.js.map +0 -1
  711. package/dist/overlay-B1jVf-ge.cjs.map +0 -1
  712. package/dist/overlay-CT-tMHDX.js.map +0 -1
  713. package/dist/overlay.confirm-body-Dn-Zgogx.js.map +0 -1
  714. package/dist/overlay.confirm-body-mYDYoJL8.cjs.map +0 -1
  715. package/dist/overlay.service-BQmva9GY.cjs.map +0 -1
  716. package/dist/overlay.service-yqTOyLlr.js.map +0 -1
  717. package/dist/progress-CGWozq_n.js.map +0 -1
  718. package/dist/progress-DOVJhsR0.cjs +0 -51
  719. package/dist/progress-DOVJhsR0.cjs.map +0 -1
  720. package/dist/radio-group-CXkq6qAF.js.map +0 -1
  721. package/dist/radio-group-DoSX5D2V.cjs.map +0 -1
  722. package/dist/select-CObZenqg.cjs +0 -56
  723. package/dist/select-CObZenqg.cjs.map +0 -1
  724. package/dist/select-CU90i50_.js.map +0 -1
  725. package/dist/sound.service-Qhr8nCeG.cjs.map +0 -1
  726. package/dist/sound.service-m8WjOhjn.js.map +0 -1
  727. package/dist/splash-screen-Ca6Ew8p6.cjs +0 -41
  728. package/dist/splash-screen-Ca6Ew8p6.cjs.map +0 -1
  729. package/dist/splash-screen-Cs3dbPN3.js.map +0 -1
  730. package/dist/src-CCVbLLgC.js.map +0 -1
  731. package/dist/src-CpftzdZV.cjs +0 -264
  732. package/dist/src-CpftzdZV.cjs.map +0 -1
  733. package/dist/state--x58-AuK.cjs.map +0 -1
  734. package/dist/state-QSwQ61sA.js.map +0 -1
  735. package/dist/surface-bTjOiq8n.cjs +0 -7
  736. package/dist/surface-bTjOiq8n.cjs.map +0 -1
  737. package/dist/surface-cqMsHJHM.js.map +0 -1
  738. package/dist/tabs-Dk9UDWpq.cjs.map +0 -1
  739. package/dist/tabs-Ib0Mh__1.js.map +0 -1
  740. package/dist/textarea-CcRsw08B.js.map +0 -1
  741. package/dist/textarea-Cntd9tfV.cjs.map +0 -1
  742. package/dist/theme.service-5RjyR7Sy.js.map +0 -1
  743. package/dist/theme.service-DA6KY52G.cjs.map +0 -1
  744. package/dist/typography-DeEYdMhW.js +0 -358
  745. package/dist/typography-DeEYdMhW.js.map +0 -1
  746. package/dist/typography-Tm7wSaB2.cjs +0 -282
  747. package/dist/typography-Tm7wSaB2.cjs.map +0 -1
  748. package/dist/utils-DTa3QHxk.cjs.map +0 -1
  749. package/dist/utils-H8wNknWC.js.map +0 -1
  750. package/dist/window-Db5ZYY6t.js.map +0 -1
  751. package/dist/window-oQqx5xqQ.cjs +0 -59
  752. package/dist/window-oQqx5xqQ.cjs.map +0 -1
  753. package/src/form/fields/date-range/date-range-presets.ts +0 -220
  754. package/src/form/fields/date-range/date-utils.ts +0 -58
  755. package/types/src/form/fields/date-range/date-range-presets.d.ts +0 -18
  756. package/types/src/form/fields/date-range/date-utils.d.ts +0 -15
  757. /package/dist/{hashContent-iRZJJWtE.cjs → hashContent--s09Ed_g.cjs} +0 -0
  758. /package/dist/{hashContent-BqU6v1Xr.js → hashContent-CAvrQ56N.js} +0 -0
  759. /package/dist/{rxjs-utils-Csnks202.cjs → rxjs-utils-4P2v57ke.cjs} +0 -0
  760. /package/dist/{rxjs-utils-d-ivVN84.js → rxjs-utils-JMFdgQSl.js} +0 -0
  761. /package/dist/{theme.interface-CSt7JUBD.cjs → theme.interface-B-qxDsZQ.cjs} +0 -0
  762. /package/dist/{theme.interface-odQEpZZH.js → theme.interface-B7caS5cg.js} +0 -0
  763. /package/dist/{utils-DTa3QHxk.cjs → utils-DIXndz6Q.cjs} +0 -0
  764. /package/dist/{utils-H8wNknWC.js → utils-dSPH7Oh9.js} +0 -0
@@ -0,0 +1,133 @@
1
+ require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-CeKrBW2j.cjs`);require(`./mixins-Cjn20BQH.cjs`);let t=require(`lit/decorators.js`),n=require(`lit`);var r=class extends e.t{static{this.styles=[n.css`
2
+ :host {
3
+ display: inline;
4
+ position: absolute;
5
+ inset: 0;
6
+ pointer-events: all;
7
+ z-index: 50;
8
+ }
9
+ `]}render(){return n.html`
10
+ <!-- Clean overlay with subtle backdrop -->
11
+ <div
12
+ class="absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]"
13
+ >
14
+ <!-- Content container with clean surface -->
15
+ <div class="relative flex items-center justify-center p-4">
16
+ <!-- Content slot -->
17
+ <div class="relative z-10">
18
+ <slot>
19
+ <!-- Default spinner if no content provided -->
20
+ <schmancy-spinner></schmancy-spinner>
21
+ </slot>
22
+ </div>
23
+ </div>
24
+ </div>
25
+ `}};r=e.u([(0,t.customElement)(`schmancy-busy`)],r);var i=class extends e.t{constructor(...e){super(...e),this.size=`md`,this.glass=!1}static{this.styles=[n.css`
26
+ :host {
27
+ display: inline-block;
28
+ color: inherit; /* Inherit from parent by default */
29
+ }
30
+
31
+ /* Explicit color options when needed */
32
+ :host([color='primary']) {
33
+ color: var(--schmancy-sys-color-primary-default);
34
+ }
35
+
36
+ :host([color='on-primary']) {
37
+ color: var(--schmancy-sys-color-primary-on);
38
+ }
39
+
40
+ :host([color='secondary']) {
41
+ color: var(--schmancy-sys-color-secondary-default);
42
+ }
43
+
44
+ :host([color='on-secondary']) {
45
+ color: var(--schmancy-sys-color-secondary-on);
46
+ }
47
+
48
+ :host([color='tertiary']) {
49
+ color: var(--schmancy-sys-color-tertiary-default);
50
+ }
51
+
52
+ :host([color='on-tertiary']) {
53
+ color: var(--schmancy-sys-color-tertiary-on);
54
+ }
55
+
56
+ :host([color='error']) {
57
+ color: var(--schmancy-sys-color-error-default);
58
+ }
59
+
60
+ :host([color='on-error']) {
61
+ color: var(--schmancy-sys-color-error-on);
62
+ }
63
+
64
+ :host([color='success']) {
65
+ color: var(--schmancy-sys-color-success-default);
66
+ }
67
+
68
+ :host([color='on-success']) {
69
+ color: var(--schmancy-sys-color-success-on);
70
+ }
71
+
72
+ :host([color='surface']) {
73
+ color: var(--schmancy-sys-color-surface-default);
74
+ }
75
+
76
+ :host([color='on-surface']) {
77
+ color: var(--schmancy-sys-color-surface-on);
78
+ }
79
+
80
+ :host([color='surface-variant']) {
81
+ color: var(--schmancy-sys-color-surface-variant-default);
82
+ }
83
+
84
+ :host([color='on-surface-variant']) {
85
+ color: var(--schmancy-sys-color-surface-onVariant);
86
+ }
87
+
88
+ .spinner {
89
+ animation: spin 1s linear infinite;
90
+ animation-direction: reverse;
91
+ }
92
+
93
+ @keyframes spin {
94
+ from {
95
+ transform: rotate(0deg);
96
+ }
97
+ to {
98
+ transform: rotate(360deg);
99
+ }
100
+ }
101
+ `]}render(){let e={xxs:12,xs:16,sm:20,md:24,lg:32},t;t=typeof this.size==`string`&&this.size in e?e[this.size]:typeof this.size!=`number`||isNaN(this.size)?24:4*this.size;let r={width:`${t}px`,height:`${t}px`};return this.glass?n.html`
102
+ <div class="spinner relative" style=${this.styleMap(r)}>
103
+ <!-- Glass container with Apple-style effect -->
104
+ <div
105
+ class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
106
+ bg-surface-container/20
107
+ shadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]
108
+ border border-outline-variant/30"
109
+ ></div>
110
+
111
+ <!-- Spinner SVG -->
112
+ <svg
113
+ fill="none"
114
+ viewBox="0 0 16 16"
115
+ aria-hidden="true"
116
+ role="img"
117
+ style="width: 100%; height: 100%;"
118
+ class="relative z-10"
119
+ >
120
+ <path opacity=".7" d="M8 15A7 7 0 108 1a7 7 0 000 14v0z" stroke="currentColor" stroke-width="2"></path>
121
+ <path d="M15 8a7 7 0 01-7 7" stroke="currentColor" stroke-width="2"></path>
122
+ <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor" opacity="0.8"></path>
123
+ </svg>
124
+ </div>
125
+ `:n.html`
126
+ <div class="spinner" style=${this.styleMap(r)}>
127
+ <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
128
+ <path opacity=".5" d="M8 15A7 7 0 108 1a7 7 0 000 14v0z" stroke="currentColor" stroke-width="2"></path>
129
+ <path d="M15 8a7 7 0 01-7 7" stroke="currentColor" stroke-width="2"></path>
130
+ <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor"></path>
131
+ </svg>
132
+ </div>
133
+ `}};e.u([(0,t.property)({type:String,reflect:!0})],i.prototype,`color`,void 0),e.u([(0,t.property)()],i.prototype,`size`,void 0),e.u([(0,t.property)({type:Boolean})],i.prototype,`glass`,void 0),i=e.u([(0,t.customElement)(`schmancy-spinner`)],i);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"busy-Brs-TDh9.cjs","names":[],"sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends SchmancyElement {\n\tstatic styles = [\n\t\tcss`\n\t\t\t:host {\n\t\t\t\tdisplay: inline;\n\t\t\t\tposition: absolute;\n\t\t\t\tinset: 0;\n\t\t\t\tpointer-events: all;\n\t\t\t\tz-index: 50;\n\t\t\t}\n\t\t`,\n\t]\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div\n\t\t\t\tclass=\"absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]\"\n\t\t\t>\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends SchmancyElement {\n\tstatic styles = [\n\t\tcss`\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tcolor: inherit; /* Inherit from parent by default */\n\t\t\t}\n\n\t\t\t/* Explicit color options when needed */\n\t\t\t:host([color='primary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-primary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-primary-on);\n\t\t\t}\n\n\t\t\t:host([color='secondary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-secondary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-secondary-on);\n\t\t\t}\n\n\t\t\t:host([color='tertiary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-tertiary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-tertiary-on);\n\t\t\t}\n\n\t\t\t:host([color='error']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-error-default);\n\t\t\t}\n\n\t\t\t:host([color='on-error']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-error-on);\n\t\t\t}\n\n\t\t\t:host([color='success']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-success-default);\n\t\t\t}\n\n\t\t\t:host([color='on-success']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-success-on);\n\t\t\t}\n\n\t\t\t:host([color='surface']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-default);\n\t\t\t}\n\n\t\t\t:host([color='on-surface']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\t\t}\n\n\t\t\t:host([color='surface-variant']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-variant-default);\n\t\t\t}\n\n\t\t\t:host([color='on-surface-variant']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-onVariant);\n\t\t\t}\n\n\t\t\t.spinner {\n\t\t\t\tanimation: spin 1s linear infinite;\n\t\t\t\tanimation-direction: reverse;\n\t\t\t}\n\n\t\t\t@keyframes spin {\n\t\t\t\tfrom {\n\t\t\t\t\ttransform: rotate(0deg);\n\t\t\t\t}\n\t\t\t\tto {\n\t\t\t\t\ttransform: rotate(360deg);\n\t\t\t\t}\n\t\t\t}\n\t\t`,\n\t]\n\t@property({ type: String, reflect: true })\n\tcolor?:\n\t\t| 'primary'\n\t\t| 'on-primary'\n\t\t| 'secondary'\n\t\t| 'on-secondary'\n\t\t| 'tertiary'\n\t\t| 'on-tertiary'\n\t\t| 'error'\n\t\t| 'on-error'\n\t\t| 'success'\n\t\t| 'on-success'\n\t\t| 'surface'\n\t\t| 'on-surface'\n\t\t| 'surface-variant'\n\t\t| 'on-surface-variant'\n\n\t/**\n\t * Size of the spinner - M3 aligned tokens or numeric Tailwind units\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Numeric: Tailwind units where each unit = 4px (e.g., 6 = 24px)\n\t */\n\t@property() size: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | number = 'md'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\t// M3 aligned token sizes (fit inside buttons of same token)\n\t\tconst tokenSizes: Record<string, number> = {\n\t\t\txxs: 12, // fits in 24px button (ultra-compact)\n\t\t\txs: 16, // fits in 32px button\n\t\t\tsm: 20, // fits in 40px button\n\t\t\tmd: 24, // fits in 48px button (default)\n\t\t\tlg: 32, // fits in 56px button\n\t\t}\n\n\t\t// Support both token and numeric sizes for backward compatibility\n\t\tlet sizeInPx: number\n\t\tif (typeof this.size === 'string' && this.size in tokenSizes) {\n\t\t\tsizeInPx = tokenSizes[this.size]\n\t\t} else if (typeof this.size === 'number' && !isNaN(this.size)) {\n\t\t\t// Legacy numeric: Tailwind units (each unit = 4px)\n\t\t\tsizeInPx = this.size * 4\n\t\t} else {\n\t\t\tsizeInPx = 24 // fallback to md\n\t\t}\n\n\t\tconst style = {\n\t\t\twidth: `${sizeInPx}px`,\n\t\t\theight: `${sizeInPx}px`,\n\t\t}\n\n\t\treturn this.glass\n\t\t\t? html`\n\t\t\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150\n\t\t\t\t\t\t\tbg-surface-container/20\n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-outline-variant/30\"\n\t\t\t\t\t\t></div>\n\n\t\t\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\tstyle=\"width: 100%; height: 100%;\"\n\t\t\t\t\t\t\tclass=\"relative z-10\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<path opacity=\".7\" d=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\" opacity=\"0.8\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t`\n\t\t\t: html`\n\t\t\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t\t\t<path opacity=\".5\" d=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"mappings":"uKAKe,IAAA,EAAA,cAA2B,EAAA,CAAA,CAAA,OAAA,KAAA,OACzB,CACf,EAAA,GAAG;;;;;;;;KAUJ,QAAA,CACC,MAAO,GAAA,IAAI;;;;;;;;;;;;;;;;GAiBZ,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eA/Bc,eAAA,CAAA,EAAe,CAAA,ECCf,IAAA,EAAA,cAA8B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,KAsGmB,KAAA,KAAA,MAAA,CACjB,CAAA,CAAA,OAAA,KAAA,OAtG9B,CACf,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAuGJ,QAAA,CAEC,IAAM,EAAqC,CAC1C,IAAK,GACL,GAAI,GACJ,GAAI,GACJ,GAAI,GACJ,GAAI,EAAA,EAID,EAEH,EADwB,OAAd,KAAK,MAAS,UAAY,KAAK,QAAQ,EACtC,EAAW,KAAK,MACI,OAAd,KAAK,MAAS,UAAa,MAAM,KAAK,IAAA,EAI5C,GAFY,EAAZ,KAAK,KAKjB,IAAM,EAAQ,CACb,MAAO,GAAG,EAAA,IACV,OAAQ,GAAG,EAAA,GAAA,EAGZ,OAAO,KAAK,MACT,EAAA,IAAI;2CACkC,KAAK,SAAS,CAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;MAwBpD,EAAA,IAAI;kCACyB,KAAK,SAAS,CAAA,EAAA;;;;;;;KAQ/C,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAtFU,CAAE,KAAM,OAAQ,QAAA,CAAS,CAAA,CAAA,CAAA,EAAM,EAAA,UAAA,QAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAsB/B,EAAA,UAAA,OAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UACA,CAAE,KAAM,OAAA,CAAA,CAAA,EAAS,EAAA,UAAA,QAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eAxGb,kBAAA,CAAA,EAAkB,CAAA"}
@@ -0,0 +1,172 @@
1
+ import { t as e, u as t } from "./SchmancyElement-Ob9yGkiG.js";
2
+ import "./mixins-q4KAL8Xr.js";
3
+ import { customElement as n, property as r } from "lit/decorators.js";
4
+ import { css as i, html as a } from "lit";
5
+ var o = class extends e {
6
+ static {
7
+ this.styles = [i`
8
+ :host {
9
+ display: inline;
10
+ position: absolute;
11
+ inset: 0;
12
+ pointer-events: all;
13
+ z-index: 50;
14
+ }
15
+ `];
16
+ }
17
+ render() {
18
+ return a`
19
+ <!-- Clean overlay with subtle backdrop -->
20
+ <div
21
+ class="absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]"
22
+ >
23
+ <!-- Content container with clean surface -->
24
+ <div class="relative flex items-center justify-center p-4">
25
+ <!-- Content slot -->
26
+ <div class="relative z-10">
27
+ <slot>
28
+ <!-- Default spinner if no content provided -->
29
+ <schmancy-spinner></schmancy-spinner>
30
+ </slot>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ `;
35
+ }
36
+ };
37
+ o = t([n("schmancy-busy")], o);
38
+ var s = class extends e {
39
+ constructor(...e) {
40
+ super(...e), this.size = "md", this.glass = !1;
41
+ }
42
+ static {
43
+ this.styles = [i`
44
+ :host {
45
+ display: inline-block;
46
+ color: inherit; /* Inherit from parent by default */
47
+ }
48
+
49
+ /* Explicit color options when needed */
50
+ :host([color='primary']) {
51
+ color: var(--schmancy-sys-color-primary-default);
52
+ }
53
+
54
+ :host([color='on-primary']) {
55
+ color: var(--schmancy-sys-color-primary-on);
56
+ }
57
+
58
+ :host([color='secondary']) {
59
+ color: var(--schmancy-sys-color-secondary-default);
60
+ }
61
+
62
+ :host([color='on-secondary']) {
63
+ color: var(--schmancy-sys-color-secondary-on);
64
+ }
65
+
66
+ :host([color='tertiary']) {
67
+ color: var(--schmancy-sys-color-tertiary-default);
68
+ }
69
+
70
+ :host([color='on-tertiary']) {
71
+ color: var(--schmancy-sys-color-tertiary-on);
72
+ }
73
+
74
+ :host([color='error']) {
75
+ color: var(--schmancy-sys-color-error-default);
76
+ }
77
+
78
+ :host([color='on-error']) {
79
+ color: var(--schmancy-sys-color-error-on);
80
+ }
81
+
82
+ :host([color='success']) {
83
+ color: var(--schmancy-sys-color-success-default);
84
+ }
85
+
86
+ :host([color='on-success']) {
87
+ color: var(--schmancy-sys-color-success-on);
88
+ }
89
+
90
+ :host([color='surface']) {
91
+ color: var(--schmancy-sys-color-surface-default);
92
+ }
93
+
94
+ :host([color='on-surface']) {
95
+ color: var(--schmancy-sys-color-surface-on);
96
+ }
97
+
98
+ :host([color='surface-variant']) {
99
+ color: var(--schmancy-sys-color-surface-variant-default);
100
+ }
101
+
102
+ :host([color='on-surface-variant']) {
103
+ color: var(--schmancy-sys-color-surface-onVariant);
104
+ }
105
+
106
+ .spinner {
107
+ animation: spin 1s linear infinite;
108
+ animation-direction: reverse;
109
+ }
110
+
111
+ @keyframes spin {
112
+ from {
113
+ transform: rotate(0deg);
114
+ }
115
+ to {
116
+ transform: rotate(360deg);
117
+ }
118
+ }
119
+ `];
120
+ }
121
+ render() {
122
+ let e = {
123
+ xxs: 12,
124
+ xs: 16,
125
+ sm: 20,
126
+ md: 24,
127
+ lg: 32
128
+ }, t;
129
+ t = typeof this.size == "string" && this.size in e ? e[this.size] : typeof this.size != "number" || isNaN(this.size) ? 24 : 4 * this.size;
130
+ let n = {
131
+ width: `${t}px`,
132
+ height: `${t}px`
133
+ };
134
+ return this.glass ? a`
135
+ <div class="spinner relative" style=${this.styleMap(n)}>
136
+ <!-- Glass container with Apple-style effect -->
137
+ <div
138
+ class="absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150
139
+ bg-surface-container/20
140
+ shadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]
141
+ border border-outline-variant/30"
142
+ ></div>
143
+
144
+ <!-- Spinner SVG -->
145
+ <svg
146
+ fill="none"
147
+ viewBox="0 0 16 16"
148
+ aria-hidden="true"
149
+ role="img"
150
+ style="width: 100%; height: 100%;"
151
+ class="relative z-10"
152
+ >
153
+ <path opacity=".7" d="M8 15A7 7 0 108 1a7 7 0 000 14v0z" stroke="currentColor" stroke-width="2"></path>
154
+ <path d="M15 8a7 7 0 01-7 7" stroke="currentColor" stroke-width="2"></path>
155
+ <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor" opacity="0.8"></path>
156
+ </svg>
157
+ </div>
158
+ ` : a`
159
+ <div class="spinner" style=${this.styleMap(n)}>
160
+ <svg fill="none" viewBox="0 0 16 16" aria-hidden="true" role="img" style="width: 100%; height: 100%;">
161
+ <path opacity=".5" d="M8 15A7 7 0 108 1a7 7 0 000 14v0z" stroke="currentColor" stroke-width="2"></path>
162
+ <path d="M15 8a7 7 0 01-7 7" stroke="currentColor" stroke-width="2"></path>
163
+ <path d="M8 12a4 4 0 100-8 4 4 0 000 8z" fill="currentColor"></path>
164
+ </svg>
165
+ </div>
166
+ `;
167
+ }
168
+ };
169
+ t([r({
170
+ type: String,
171
+ reflect: !0
172
+ })], s.prototype, "color", void 0), t([r()], s.prototype, "size", void 0), t([r({ type: Boolean })], s.prototype, "glass", void 0), s = t([n("schmancy-spinner")], s);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"busy-g4LoQmhB.js","names":[],"sources":["../src/busy/busy.ts","../src/busy/spinner.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\n@customElement('schmancy-busy')\nexport default class SchmancyBusy extends SchmancyElement {\n\tstatic styles = [\n\t\tcss`\n\t\t\t:host {\n\t\t\t\tdisplay: inline;\n\t\t\t\tposition: absolute;\n\t\t\t\tinset: 0;\n\t\t\t\tpointer-events: all;\n\t\t\t\tz-index: 50;\n\t\t\t}\n\t\t`,\n\t]\n\tprotected render(): unknown {\n\t\treturn html`\n\t\t\t<!-- Clean overlay with subtle backdrop -->\n\t\t\t<div\n\t\t\t\tclass=\"absolute inset-0 flex items-center justify-center bg-surface-container/10 backdrop-blur-xs rounded-[inherit]\"\n\t\t\t>\n\t\t\t\t<!-- Content container with clean surface -->\n\t\t\t\t<div class=\"relative flex items-center justify-center p-4\">\n\t\t\t\t\t<!-- Content slot -->\n\t\t\t\t\t<div class=\"relative z-10\">\n\t\t\t\t\t\t<slot>\n\t\t\t\t\t\t\t<!-- Default spinner if no content provided -->\n\t\t\t\t\t\t\t<schmancy-spinner></schmancy-spinner>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-busy': SchmancyBusy\n\t}\n}\n","import { SchmancyElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n@customElement('schmancy-spinner')\nexport default class SchmnacySpinner extends SchmancyElement {\n\tstatic styles = [\n\t\tcss`\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tcolor: inherit; /* Inherit from parent by default */\n\t\t\t}\n\n\t\t\t/* Explicit color options when needed */\n\t\t\t:host([color='primary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-primary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-primary-on);\n\t\t\t}\n\n\t\t\t:host([color='secondary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-secondary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-secondary-on);\n\t\t\t}\n\n\t\t\t:host([color='tertiary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t\t\t}\n\n\t\t\t:host([color='on-tertiary']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-tertiary-on);\n\t\t\t}\n\n\t\t\t:host([color='error']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-error-default);\n\t\t\t}\n\n\t\t\t:host([color='on-error']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-error-on);\n\t\t\t}\n\n\t\t\t:host([color='success']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-success-default);\n\t\t\t}\n\n\t\t\t:host([color='on-success']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-success-on);\n\t\t\t}\n\n\t\t\t:host([color='surface']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-default);\n\t\t\t}\n\n\t\t\t:host([color='on-surface']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\t\t}\n\n\t\t\t:host([color='surface-variant']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-variant-default);\n\t\t\t}\n\n\t\t\t:host([color='on-surface-variant']) {\n\t\t\t\tcolor: var(--schmancy-sys-color-surface-onVariant);\n\t\t\t}\n\n\t\t\t.spinner {\n\t\t\t\tanimation: spin 1s linear infinite;\n\t\t\t\tanimation-direction: reverse;\n\t\t\t}\n\n\t\t\t@keyframes spin {\n\t\t\t\tfrom {\n\t\t\t\t\ttransform: rotate(0deg);\n\t\t\t\t}\n\t\t\t\tto {\n\t\t\t\t\ttransform: rotate(360deg);\n\t\t\t\t}\n\t\t\t}\n\t\t`,\n\t]\n\t@property({ type: String, reflect: true })\n\tcolor?:\n\t\t| 'primary'\n\t\t| 'on-primary'\n\t\t| 'secondary'\n\t\t| 'on-secondary'\n\t\t| 'tertiary'\n\t\t| 'on-tertiary'\n\t\t| 'error'\n\t\t| 'on-error'\n\t\t| 'success'\n\t\t| 'on-success'\n\t\t| 'surface'\n\t\t| 'on-surface'\n\t\t| 'surface-variant'\n\t\t| 'on-surface-variant'\n\n\t/**\n\t * Size of the spinner - M3 aligned tokens or numeric Tailwind units\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Numeric: Tailwind units where each unit = 4px (e.g., 6 = 24px)\n\t */\n\t@property() size: 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | number = 'md'\n\t@property({ type: Boolean }) glass: boolean = false\n\n\tprotected render(): unknown {\n\t\t// M3 aligned token sizes (fit inside buttons of same token)\n\t\tconst tokenSizes: Record<string, number> = {\n\t\t\txxs: 12, // fits in 24px button (ultra-compact)\n\t\t\txs: 16, // fits in 32px button\n\t\t\tsm: 20, // fits in 40px button\n\t\t\tmd: 24, // fits in 48px button (default)\n\t\t\tlg: 32, // fits in 56px button\n\t\t}\n\n\t\t// Support both token and numeric sizes for backward compatibility\n\t\tlet sizeInPx: number\n\t\tif (typeof this.size === 'string' && this.size in tokenSizes) {\n\t\t\tsizeInPx = tokenSizes[this.size]\n\t\t} else if (typeof this.size === 'number' && !isNaN(this.size)) {\n\t\t\t// Legacy numeric: Tailwind units (each unit = 4px)\n\t\t\tsizeInPx = this.size * 4\n\t\t} else {\n\t\t\tsizeInPx = 24 // fallback to md\n\t\t}\n\n\t\tconst style = {\n\t\t\twidth: `${sizeInPx}px`,\n\t\t\theight: `${sizeInPx}px`,\n\t\t}\n\n\t\treturn this.glass\n\t\t\t? html`\n\t\t\t\t\t<div class=\"spinner relative\" style=${this.styleMap(style)}>\n\t\t\t\t\t\t<!-- Glass container with Apple-style effect -->\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"absolute inset-0 rounded-full backdrop-blur-xl backdrop-saturate-150\n\t\t\t\t\t\t\tbg-surface-container/20\n\t\t\t\t\t\t\tshadow-[inset_0_1px_1px_0_rgba(255,255,255,0.2)]\n\t\t\t\t\t\t\tborder border-outline-variant/30\"\n\t\t\t\t\t\t></div>\n\n\t\t\t\t\t\t<!-- Spinner SVG -->\n\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\tstyle=\"width: 100%; height: 100%;\"\n\t\t\t\t\t\t\tclass=\"relative z-10\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<path opacity=\".7\" d=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\" opacity=\"0.8\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t`\n\t\t\t: html`\n\t\t\t\t\t<div class=\"spinner\" style=${this.styleMap(style)}>\n\t\t\t\t\t\t<svg fill=\"none\" viewBox=\"0 0 16 16\" aria-hidden=\"true\" role=\"img\" style=\"width: 100%; height: 100%;\">\n\t\t\t\t\t\t\t<path opacity=\".5\" d=\"M8 15A7 7 0 108 1a7 7 0 000 14v0z\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M15 8a7 7 0 01-7 7\" stroke=\"currentColor\" stroke-width=\"2\"></path>\n\t\t\t\t\t\t\t<path d=\"M8 12a4 4 0 100-8 4 4 0 000 8z\" fill=\"currentColor\"></path>\n\t\t\t\t\t\t</svg>\n\t\t\t\t\t</div>\n\t\t\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-spinner': SchmnacySpinner\n\t}\n}\n"],"mappings":";;;;AAKe,IAAA,IAAA,cAA2B,EAAA;CAAA;EAAA,KAAA,SACzB,CACf,CAAG;;;;;;;;;;CAUJ,SAAA;EACC,OAAO,CAAI;;;;;;;;;;;;;;;;;CAiBZ;AAAA;AAAA,IAAA,EAAA,CA/BA,EAAc,eAAA,CAAA,GAAe,CAAA;ACCf,IAAA,IAAA,cAA8B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,OAsGmB,MAAA,KAAA,QAAA,CACjB;CAAA;CAAA;EAAA,KAAA,SAtG9B,CACf,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuGJ,SAAA;EAEC,IAAM,IAAqC;GAC1C,KAAK;GACL,IAAI;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;EAAA,GAID;EAEH,IADwB,OAAd,KAAK,QAAS,YAAY,KAAK,QAAQ,IACtC,EAAW,KAAK,QACI,OAAd,KAAK,QAAS,YAAa,MAAM,KAAK,IAAA,IAI5C,KAFY,IAAZ,KAAK;EAKjB,IAAM,IAAQ;GACb,OAAO,GAAG,EAAA;GACV,QAAQ,GAAG,EAAA;EAAA;EAGZ,OAAO,KAAK,QACT,CAAI;2CACkC,KAAK,SAAS,CAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;QAwBpD,CAAI;kCACyB,KAAK,SAAS,CAAA,EAAA;;;;;;;;CAQ/C;AAAA;AAAA,EAAA,CAtFC,EAAS;CAAE,MAAM;CAAQ,SAAA,CAAS;AAAA,CAAA,CAAA,GAAM,EAAA,WAAA,SAAA,KAAA,CAAA,GAAA,EAAA,CAsBxC,EAAA,CAAA,GAAS,EAAA,WAAA,QAAA,KAAA,CAAA,GAAA,EAAA,CACT,EAAS,EAAE,MAAM,QAAA,CAAA,CAAA,GAAS,EAAA,WAAA,SAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CAxG3B,EAAc,kBAAA,CAAA,GAAkB,CAAA"}
package/dist/busy.cjs CHANGED
@@ -1 +1 @@
1
- require(`./busy-UbCGkTAi.cjs`);
1
+ require(`./busy-Brs-TDh9.cjs`);
package/dist/busy.js CHANGED
@@ -1 +1 @@
1
- import "./busy-BjsO3y2A.js";
1
+ import "./busy-g4LoQmhB.js";
@@ -1,35 +1,44 @@
1
- require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-D9WA9FP9.cjs`);require(`./mixins-XGVIOvKt.cjs`);const t=require(`./magnetic-DKtc4umC.cjs`);let n=require(`@lit/context`),r=require(`lit/decorators.js`),i=require(`lit`),a=require(`lit/directives/if-defined.js`),o=require(`lit/directives/when.js`);var s=(0,n.createContext)(`schmancy-button-size`),c=class extends e.t{static{this.styles=[i.css`:host{
2
- display: inline-flex;
3
- flex-shrink: 0;
4
- overflow: hidden;
5
- position: relative;
6
- touch-action: manipulation;
7
- border-radius: 1rem;
8
- transition:
9
- box-shadow 300ms cubic-bezier(0.34, 1.56, 0.64, 1),
10
- transform 200ms cubic-bezier(0.34, 1.56, 0.64, 1);
11
- }
12
- :host([width="full"]) {
13
- display: flex;
14
- width: 100%;
15
- }
16
- :host(:hover:not([disabled])) {
17
- box-shadow: 0 4px 16px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);
18
- }
19
- :host(:active:not([disabled])) {
20
- transform: scale(0.97);
21
- box-shadow: 0 1px 4px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 10%, transparent);
22
- transition-duration: 100ms;
23
- }
24
- @media (prefers-reduced-motion: reduce) {
25
- :host { transition: none; }
26
- :host(:hover:not([disabled])) { box-shadow: none; }
27
- :host(:active:not([disabled])) { transform: none; box-shadow: none; }
28
- }
29
- :host *,
30
- * {
31
- touch-action: manipulation;
32
- }`]}static{this.shadowRootOptions={...i.LitElement.shadowRootOptions,mode:`open`,delegatesFocus:!0}}static{this.formAssociated=!0}constructor(){super(),this.variant=`text`,this.width=`auto`,this.size=`md`,this.type=`button`,this.disabled=!1;try{this.internals=this.attachInternals()}catch{this.internals=void 0}this.addEventListener(`click`,e=>{if(this.disabled)return e.preventDefault(),void e.stopImmediatePropagation();let t=this.internals?.form;t&&(this.type===`submit`?(e.preventDefault(),t.requestSubmit()):this.type===`reset`&&(e.preventDefault(),t.reset()))})}get form(){return this.internals?.form??null}formDisabledCallback(e){this.disabled=e}connectedCallback(){if(super.connectedCallback(),this.type!==`submit`)return;let e=this.closest(`schmancy-form`);if(!e)return;let t=()=>{e.getAttribute(`aria-busy`)===`true`?(this.setAttribute(`aria-busy`,`true`),this.internals?.states.add(`submitting`)):(this.removeAttribute(`aria-busy`),this.internals?.states.delete(`submitting`))};t(),this.formBusyObserver=new MutationObserver(t),this.formBusyObserver.observe(e,{attributes:!0,attributeFilter:[`aria-busy`]})}disconnectedCallback(){this.formBusyObserver?.disconnect(),this.formBusyObserver=void 0,super.disconnectedCallback()}#e;set ariaLabel(e){let t=this.#e;this.#e=e,this.hasAttribute(`aria-label`)&&this.removeAttribute(`aria-label`),this.requestUpdate(`ariaLabel`,t)}get ariaLabel(){return this.#e}focus(e){this.nativeElement.focus(e)}blur(){this.nativeElement.blur()}get effectiveColor(){return this.color?this.color:(this.variant===`tonal`?`filled tonal`:this.variant)===`filled tonal`?`secondary`:`primary`}get imgClasses(){return[{xxs:`w-3 h-3`,xs:`w-4 h-4`,sm:`w-5 h-5`,md:`w-6 h-6`,lg:`w-7 h-7`}[this.size],`object-contain`]}firstUpdated(){this.prefixImgs?.forEach(e=>{e.classList.add(...this.imgClasses),e.hasAttribute(`alt`)||e.setAttribute(`alt`,``)}),this.suffixImgs?.forEach(e=>{e.classList.add(...this.imgClasses),e.hasAttribute(`alt`)||e.setAttribute(`alt`,``)})}click(){this.dispatchEvent(new Event(`click`,{bubbles:!0,composed:!0}))}preventDefault(e){e.preventDefault(),e.stopPropagation()}render(){let e=this.variant===`tonal`?`filled tonal`:this.variant,n={"z-0 transition-all duration-200 relative rounded-2xl flex justify-center items-center outline-secondary-default focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 outline-hidden flex-1 overflow-hidden":!0,"h-6":this.size===`xxs`,"h-8":this.size===`xs`,"h-10":this.size===`sm`,"h-12":this.size===`md`,"h-14":this.size===`lg`,"py-1 px-2":this.size===`xxs`,"py-2 px-4":this.size===`xs`,"py-2.5 px-5":this.size===`sm`,"py-3 px-6":this.size===`md`,"py-4 px-7":this.size===`lg`,"text-[10px] font-medium leading-3":this.size===`xxs`,"text-xs font-medium leading-4":this.size===`xs`,"text-sm font-medium leading-5":this.size===`sm`||this.size===`md`,"text-base font-medium leading-6":this.size===`lg`,"tracking-[0.1px]":!0,"gap-0.5":this.size===`xxs`,"gap-1":this.size===`xs`,"gap-1.5":this.size===`sm`,"gap-2":this.size===`md`,"gap-2.5":this.size===`lg`,"cursor-pointer":!this.disabled,"opacity-[0.38]":this.disabled,"hover:shadow-sm":!this.disabled&&e===`elevated`,"w-full tex-center":this.width===`full`,"bg-surface-low shadow-xs":e===`elevated`,"bg-transparent border-1 border-solid":e===`outlined`,"border-outline":e===`outlined`&&this.effectiveColor===`primary`,"border-success-default":e===`outlined`&&this.effectiveColor===`success`,"border-error-default":e===`outlined`&&this.effectiveColor===`error`,"border-warning-default":e===`outlined`&&this.effectiveColor===`warning`,"border-info-default":e===`outlined`&&this.effectiveColor===`info`,"border-secondary-default":e===`outlined`&&this.effectiveColor===`secondary`,"border-outline-variant":e===`outlined`&&this.effectiveColor===`neutral`,"bg-primary-default":e===`filled`&&this.effectiveColor===`primary`,"bg-secondary-default":e===`filled`&&this.effectiveColor===`secondary`,"bg-success-default":e===`filled`&&this.effectiveColor===`success`,"bg-error-default":e===`filled`&&this.effectiveColor===`error`,"bg-warning-default":e===`filled`&&this.effectiveColor===`warning`,"bg-info-default":e===`filled`&&this.effectiveColor===`info`,"bg-surface-containerHighest":e===`filled`&&this.effectiveColor===`neutral`,"text-primary-on":e===`filled`&&this.effectiveColor===`primary`,"text-secondary-on":e===`filled`&&this.effectiveColor===`secondary`,"text-success-on":e===`filled`&&this.effectiveColor===`success`,"text-error-on":e===`filled`&&this.effectiveColor===`error`,"text-warning-on":e===`filled`&&this.effectiveColor===`warning`,"text-info-on":e===`filled`&&this.effectiveColor===`info`,"text-surface-on":e===`filled`&&this.effectiveColor===`neutral`,"bg-primary-container":e===`filled tonal`&&this.effectiveColor===`primary`,"bg-secondary-container":e===`filled tonal`&&this.effectiveColor===`secondary`,"bg-success-container":e===`filled tonal`&&this.effectiveColor===`success`,"bg-error-container":e===`filled tonal`&&this.effectiveColor===`error`,"bg-warning-container":e===`filled tonal`&&this.effectiveColor===`warning`,"bg-info-container":e===`filled tonal`&&this.effectiveColor===`info`,"bg-surface-containerLow":e===`filled tonal`&&this.effectiveColor===`neutral`,"text-primary-onContainer":e===`filled tonal`&&this.effectiveColor===`primary`,"text-secondary-onContainer":e===`filled tonal`&&this.effectiveColor===`secondary`,"text-success-onContainer":e===`filled tonal`&&this.effectiveColor===`success`,"text-error-onContainer":e===`filled tonal`&&this.effectiveColor===`error`,"text-warning-onContainer":e===`filled tonal`&&this.effectiveColor===`warning`,"text-info-onContainer":e===`filled tonal`&&this.effectiveColor===`info`,"text-primary-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`primary`,"text-secondary-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`secondary`,"text-success-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`success`,"text-error-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`error`,"text-warning-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`warning`,"text-info-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`info`,"text-surface-onVariant":(e===`text`||e===`elevated`||e===`outlined`||e===`filled tonal`)&&this.effectiveColor===`neutral`},r={"absolute inset-0 hover:opacity-[0.08] z-0 rounded-2xl":!0,"focus-visible:opacity-[0.10]":!0,"active:opacity-[0.10]":!0,"hover:bg-primary-on":e===`filled`&&this.effectiveColor===`primary`,"hover:bg-secondary-on":e===`filled`&&this.effectiveColor===`secondary`,"hover:bg-success-on":e===`filled`&&this.effectiveColor===`success`,"hover:bg-error-on":e===`filled`&&this.effectiveColor===`error`,"hover:bg-warning-on":e===`filled`&&this.effectiveColor===`warning`,"hover:bg-info-on":e===`filled`&&this.effectiveColor===`info`,"hover:bg-surface-on":e===`filled`&&this.effectiveColor===`neutral`,"hover:bg-primary-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`primary`,"hover:bg-secondary-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`secondary`,"hover:bg-success-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`success`,"hover:bg-error-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`error`,"hover:bg-warning-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`warning`,"hover:bg-info-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`info`,"hover:bg-surface-onVariant":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`neutral`,"hover:bg-primary-container":e===`filled tonal`&&this.effectiveColor===`primary`,"hover:bg-secondary-container":e===`filled tonal`&&this.effectiveColor===`secondary`,"hover:bg-success-container":e===`filled tonal`&&this.effectiveColor===`success`,"hover:bg-error-container":e===`filled tonal`&&this.effectiveColor===`error`,"hover:bg-warning-container":e===`filled tonal`&&this.effectiveColor===`warning`,"hover:bg-info-container":e===`filled tonal`&&this.effectiveColor===`info`,"hover:bg-surface-containerLow":e===`filled tonal`&&this.effectiveColor===`neutral`};return this.href?i.html`
1
+ require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-CeKrBW2j.cjs`);require(`./mixins-Cjn20BQH.cjs`);const t=require(`./magnetic-DKtc4umC.cjs`);let n=require(`@lit/context`),r=require(`lit/decorators.js`),i=require(`lit`),a=require(`lit/directives/if-defined.js`),o=require(`lit/directives/when.js`);var s=(0,n.createContext)(`schmancy-button-size`),c=class extends e.t{static{this.styles=[i.css`
2
+ :host {
3
+ display: inline-flex;
4
+ flex-shrink: 0;
5
+ overflow: hidden;
6
+ position: relative;
7
+ touch-action: manipulation;
8
+ border-radius: 1rem;
9
+ transition:
10
+ box-shadow 300ms cubic-bezier(0.34, 1.56, 0.64, 1),
11
+ transform 200ms cubic-bezier(0.34, 1.56, 0.64, 1);
12
+ }
13
+ :host([width='full']) {
14
+ display: flex;
15
+ width: 100%;
16
+ }
17
+ :host(:hover:not([disabled])) {
18
+ box-shadow: 0 4px 16px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);
19
+ }
20
+ :host(:active:not([disabled])) {
21
+ transform: scale(0.97);
22
+ box-shadow: 0 1px 4px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 10%, transparent);
23
+ transition-duration: 100ms;
24
+ }
25
+ @media (prefers-reduced-motion: reduce) {
26
+ :host {
27
+ transition: none;
28
+ }
29
+ :host(:hover:not([disabled])) {
30
+ box-shadow: none;
31
+ }
32
+ :host(:active:not([disabled])) {
33
+ transform: none;
34
+ box-shadow: none;
35
+ }
36
+ }
37
+ :host *,
38
+ * {
39
+ touch-action: manipulation;
40
+ }
41
+ `]}static{this.shadowRootOptions={...i.LitElement.shadowRootOptions,mode:`open`,delegatesFocus:!0}}static{this.formAssociated=!0}constructor(){super(),this.variant=`text`,this.width=`auto`,this.size=`md`,this.type=`button`,this.disabled=!1;try{this.internals=this.attachInternals()}catch{this.internals=void 0}this.addEventListener(`click`,e=>{if(this.disabled)return e.preventDefault(),void e.stopImmediatePropagation();let t=this.internals?.form;t&&(this.type===`submit`?(e.preventDefault(),t.requestSubmit()):this.type===`reset`&&(e.preventDefault(),t.reset()))})}get form(){return this.internals?.form??null}formDisabledCallback(e){this.disabled=e}connectedCallback(){if(super.connectedCallback(),this.type!==`submit`)return;let e=this.closest(`schmancy-form`);if(!e)return;let t=()=>{e.getAttribute(`aria-busy`)===`true`?(this.setAttribute(`aria-busy`,`true`),this.internals?.states.add(`submitting`)):(this.removeAttribute(`aria-busy`),this.internals?.states.delete(`submitting`))};t(),this.formBusyObserver=new MutationObserver(t),this.formBusyObserver.observe(e,{attributes:!0,attributeFilter:[`aria-busy`]})}disconnectedCallback(){this.formBusyObserver?.disconnect(),this.formBusyObserver=void 0,super.disconnectedCallback()}#e;set ariaLabel(e){let t=this.#e;this.#e=e,this.hasAttribute(`aria-label`)&&this.removeAttribute(`aria-label`),this.requestUpdate(`ariaLabel`,t)}get ariaLabel(){return this.#e}focus(e){this.nativeElement.focus(e)}blur(){this.nativeElement.blur()}get effectiveColor(){return this.color?this.color:(this.variant===`tonal`?`filled tonal`:this.variant)===`filled tonal`?`secondary`:`primary`}get imgClasses(){return[{xxs:`w-3 h-3`,xs:`w-4 h-4`,sm:`w-5 h-5`,md:`w-6 h-6`,lg:`w-7 h-7`}[this.size],`object-contain`]}firstUpdated(){this.prefixImgs?.forEach(e=>{e.classList.add(...this.imgClasses),e.hasAttribute(`alt`)||e.setAttribute(`alt`,``)}),this.suffixImgs?.forEach(e=>{e.classList.add(...this.imgClasses),e.hasAttribute(`alt`)||e.setAttribute(`alt`,``)})}click(){this.dispatchEvent(new Event(`click`,{bubbles:!0,composed:!0}))}preventDefault(e){e.preventDefault(),e.stopPropagation()}render(){let e=this.variant===`tonal`?`filled tonal`:this.variant,n={"z-0 transition-all duration-200 relative rounded-2xl flex justify-center items-center outline-secondary-default focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 outline-hidden flex-1 overflow-hidden":!0,"h-6":this.size===`xxs`,"h-8":this.size===`xs`,"h-10":this.size===`sm`,"h-12":this.size===`md`,"h-14":this.size===`lg`,"py-1 px-2":this.size===`xxs`,"py-2 px-4":this.size===`xs`,"py-2.5 px-5":this.size===`sm`,"py-3 px-6":this.size===`md`,"py-4 px-7":this.size===`lg`,"text-[10px] font-medium leading-3":this.size===`xxs`,"text-xs font-medium leading-4":this.size===`xs`,"text-sm font-medium leading-5":this.size===`sm`||this.size===`md`,"text-base font-medium leading-6":this.size===`lg`,"tracking-[0.1px]":!0,"gap-0.5":this.size===`xxs`,"gap-1":this.size===`xs`,"gap-1.5":this.size===`sm`,"gap-2":this.size===`md`,"gap-2.5":this.size===`lg`,"cursor-pointer":!this.disabled,"opacity-[0.38]":this.disabled,"hover:shadow-sm":!this.disabled&&e===`elevated`,"w-full tex-center":this.width===`full`,"bg-surface-low shadow-xs":e===`elevated`,"bg-transparent border-1 border-solid":e===`outlined`,"border-outline":e===`outlined`&&this.effectiveColor===`primary`,"border-success-default":e===`outlined`&&this.effectiveColor===`success`,"border-error-default":e===`outlined`&&this.effectiveColor===`error`,"border-warning-default":e===`outlined`&&this.effectiveColor===`warning`,"border-info-default":e===`outlined`&&this.effectiveColor===`info`,"border-secondary-default":e===`outlined`&&this.effectiveColor===`secondary`,"border-outline-variant":e===`outlined`&&this.effectiveColor===`neutral`,"bg-primary-default":e===`filled`&&this.effectiveColor===`primary`,"bg-secondary-default":e===`filled`&&this.effectiveColor===`secondary`,"bg-success-default":e===`filled`&&this.effectiveColor===`success`,"bg-error-default":e===`filled`&&this.effectiveColor===`error`,"bg-warning-default":e===`filled`&&this.effectiveColor===`warning`,"bg-info-default":e===`filled`&&this.effectiveColor===`info`,"bg-surface-containerHighest":e===`filled`&&this.effectiveColor===`neutral`,"text-primary-on":e===`filled`&&this.effectiveColor===`primary`,"text-secondary-on":e===`filled`&&this.effectiveColor===`secondary`,"text-success-on":e===`filled`&&this.effectiveColor===`success`,"text-error-on":e===`filled`&&this.effectiveColor===`error`,"text-warning-on":e===`filled`&&this.effectiveColor===`warning`,"text-info-on":e===`filled`&&this.effectiveColor===`info`,"text-surface-on":e===`filled`&&this.effectiveColor===`neutral`,"bg-primary-container":e===`filled tonal`&&this.effectiveColor===`primary`,"bg-secondary-container":e===`filled tonal`&&this.effectiveColor===`secondary`,"bg-success-container":e===`filled tonal`&&this.effectiveColor===`success`,"bg-error-container":e===`filled tonal`&&this.effectiveColor===`error`,"bg-warning-container":e===`filled tonal`&&this.effectiveColor===`warning`,"bg-info-container":e===`filled tonal`&&this.effectiveColor===`info`,"bg-surface-containerLow":e===`filled tonal`&&this.effectiveColor===`neutral`,"text-primary-onContainer":e===`filled tonal`&&this.effectiveColor===`primary`,"text-secondary-onContainer":e===`filled tonal`&&this.effectiveColor===`secondary`,"text-success-onContainer":e===`filled tonal`&&this.effectiveColor===`success`,"text-error-onContainer":e===`filled tonal`&&this.effectiveColor===`error`,"text-warning-onContainer":e===`filled tonal`&&this.effectiveColor===`warning`,"text-info-onContainer":e===`filled tonal`&&this.effectiveColor===`info`,"text-primary-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`primary`,"text-secondary-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`secondary`,"text-success-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`success`,"text-error-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`error`,"text-warning-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`warning`,"text-info-default":(e===`text`||e===`elevated`||e===`outlined`)&&this.effectiveColor===`info`,"text-surface-onVariant":(e===`text`||e===`elevated`||e===`outlined`||e===`filled tonal`)&&this.effectiveColor===`neutral`},r={"absolute inset-0 hover:opacity-[0.08] z-0 rounded-2xl":!0,"focus-visible:opacity-[0.10]":!0,"active:opacity-[0.10]":!0,"hover:bg-primary-on":e===`filled`&&this.effectiveColor===`primary`,"hover:bg-secondary-on":e===`filled`&&this.effectiveColor===`secondary`,"hover:bg-success-on":e===`filled`&&this.effectiveColor===`success`,"hover:bg-error-on":e===`filled`&&this.effectiveColor===`error`,"hover:bg-warning-on":e===`filled`&&this.effectiveColor===`warning`,"hover:bg-info-on":e===`filled`&&this.effectiveColor===`info`,"hover:bg-surface-on":e===`filled`&&this.effectiveColor===`neutral`,"hover:bg-primary-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`primary`,"hover:bg-secondary-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`secondary`,"hover:bg-success-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`success`,"hover:bg-error-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`error`,"hover:bg-warning-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`warning`,"hover:bg-info-default":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`info`,"hover:bg-surface-onVariant":(e===`outlined`||e===`elevated`||e===`text`)&&this.effectiveColor===`neutral`,"hover:bg-primary-container":e===`filled tonal`&&this.effectiveColor===`primary`,"hover:bg-secondary-container":e===`filled tonal`&&this.effectiveColor===`secondary`,"hover:bg-success-container":e===`filled tonal`&&this.effectiveColor===`success`,"hover:bg-error-container":e===`filled tonal`&&this.effectiveColor===`error`,"hover:bg-warning-container":e===`filled tonal`&&this.effectiveColor===`warning`,"hover:bg-info-container":e===`filled tonal`&&this.effectiveColor===`info`,"hover:bg-surface-containerLow":e===`filled tonal`&&this.effectiveColor===`neutral`};return this.href?i.html`
33
42
  <a
34
43
  ${t.t({strength:3,radius:60})}
35
44
  part="base"
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-Cml67Y_d.cjs","names":["#ariaLabel"],"sources":["../src/button/context.ts","../src/button/button.ts"],"sourcesContent":["import { createContext } from '@lit/context'\n\nexport type SchmancyButtonSize = 'xxs' | 'xs' | 'sm' | 'md' | 'lg'\n\n/**\n * Provided by `<schmancy-button>` to its descendants so children\n * (e.g. `<schmancy-icon>`) can auto-size against the enclosing button.\n */\nexport const SchmancyButtonSizeContext = createContext<SchmancyButtonSize>('schmancy-button-size')\n","import { provide } from '@lit/context'\nimport { SchmancyElement } from '@mixins/index'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, queryAssignedElements } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport { when } from 'lit/directives/when.js'\nimport { magnetic } from '../directives/magnetic'\nimport { SchmancyButtonSizeContext, type SchmancyButtonSize } from './context'\n\nexport interface SchmancyButtonEventMap {\n\tSchmancyFocus: CustomEvent<void>\n\tSchmancyBlur: CustomEvent<void>\n}\n\nexport type ButtonVariant = 'elevated' | 'filled' | 'filled tonal' | 'tonal' | 'outlined' | 'text'\nexport type ButtonColor = 'primary' | 'secondary' | 'success' | 'error' | 'warning' | 'info' | 'neutral'\n\n/**\n * A button component.\n * @element schmancy-button\n * @slot - The default slot.\n * @slot prefix - The prefix slot.\n * @slot suffix - The suffix slot.\n * @csspart base - The underlying native `<button>` (or `<a>` when `href` is set).\n */\n@customElement('schmancy-button')\nexport class SchmancyButton extends SchmancyElement {\n\tstatic styles = [\n\t\tcss`\n\t\t\t:host {\n\t\t\t\tdisplay: inline-flex;\n\t\t\t\tflex-shrink: 0;\n\t\t\t\toverflow: hidden;\n\t\t\t\tposition: relative;\n\t\t\t\ttouch-action: manipulation;\n\t\t\t\tborder-radius: 1rem;\n\t\t\t\ttransition:\n\t\t\t\t\tbox-shadow 300ms cubic-bezier(0.34, 1.56, 0.64, 1),\n\t\t\t\t\ttransform 200ms cubic-bezier(0.34, 1.56, 0.64, 1);\n\t\t\t}\n\t\t\t:host([width='full']) {\n\t\t\t\tdisplay: flex;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\t:host(:hover:not([disabled])) {\n\t\t\t\tbox-shadow: 0 4px 16px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t\t\t}\n\t\t\t:host(:active:not([disabled])) {\n\t\t\t\ttransform: scale(0.97);\n\t\t\t\tbox-shadow: 0 1px 4px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 10%, transparent);\n\t\t\t\ttransition-duration: 100ms;\n\t\t\t}\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\t:host {\n\t\t\t\t\ttransition: none;\n\t\t\t\t}\n\t\t\t\t:host(:hover:not([disabled])) {\n\t\t\t\t\tbox-shadow: none;\n\t\t\t\t}\n\t\t\t\t:host(:active:not([disabled])) {\n\t\t\t\t\ttransform: none;\n\t\t\t\t\tbox-shadow: none;\n\t\t\t\t}\n\t\t\t}\n\t\t\t:host *,\n\t\t\t* {\n\t\t\t\ttouch-action: manipulation;\n\t\t\t}\n\t\t`,\n\t]\n\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tmode: 'open',\n\t\tdelegatesFocus: true,\n\t}\n\n\tstatic formAssociated = true\n\tprivate internals: ElementInternals | undefined\n\t/**\n\t * When this button is `type=\"submit\"` and lives inside a <schmancy-form>,\n\t * the observer mirrors the form's `aria-busy` attribute onto this button\n\t * while a submit is in flight. Stays focusable; disabled buttons drop from\n\t * the tab order and are unreachable to AT (WCAG 2.2 AA).\n\t */\n\tprivate formBusyObserver?: MutationObserver\n\n\tconstructor() {\n\t\tsuper()\n\t\ttry {\n\t\t\tthis.internals = this.attachInternals()\n\t\t} catch {\n\t\t\tthis.internals = undefined\n\t\t}\n\t\t// Translate clicks into native form semantics so the button works\n\t\t// inside any <form>, not just inside <schmancy-form>.\n\t\tthis.addEventListener('click', (e: MouseEvent) => {\n\t\t\tif (this.disabled) {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopImmediatePropagation()\n\t\t\t\treturn\n\t\t\t}\n\t\t\tconst form = this.internals?.form\n\t\t\tif (!form) return\n\t\t\tif (this.type === 'submit') {\n\t\t\t\te.preventDefault()\n\t\t\t\tform.requestSubmit()\n\t\t\t} else if (this.type === 'reset') {\n\t\t\t\te.preventDefault()\n\t\t\t\tform.reset()\n\t\t\t}\n\t\t})\n\t}\n\n\t/** Associated form, when placed inside a <form>. */\n\tget form(): HTMLFormElement | null {\n\t\treturn this.internals?.form ?? null\n\t}\n\n\tformDisabledCallback(disabled: boolean): void {\n\t\tthis.disabled = disabled\n\t}\n\n\toverride connectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\t// Mirror the closest <schmancy-form>'s aria-busy onto this submit button\n\t\t// so the user gets a visible busy state during async submit handlers.\n\t\t// Schmancy-form sets aria-busy=\"true\" while status === 'submitting'.\n\t\tif (this.type !== 'submit') return\n\t\tconst form = this.closest('schmancy-form') as HTMLElement | null\n\t\tif (!form) return\n\t\tconst sync = () => {\n\t\t\tconst busy = form.getAttribute('aria-busy') === 'true'\n\t\t\tif (busy) {\n\t\t\t\tthis.setAttribute('aria-busy', 'true')\n\t\t\t\tthis.internals?.states.add('submitting')\n\t\t\t} else {\n\t\t\t\tthis.removeAttribute('aria-busy')\n\t\t\t\tthis.internals?.states.delete('submitting')\n\t\t\t}\n\t\t}\n\t\tsync()\n\t\tthis.formBusyObserver = new MutationObserver(sync)\n\t\tthis.formBusyObserver.observe(form, { attributes: true, attributeFilter: ['aria-busy'] })\n\t}\n\n\toverride disconnectedCallback(): void {\n\t\tthis.formBusyObserver?.disconnect()\n\t\tthis.formBusyObserver = undefined\n\t\tsuper.disconnectedCallback()\n\t}\n\n\t@query('[part=\"base\"]', true)\n\tprivate nativeElement!: HTMLElement\n\n\t#ariaLabel!: string\n\n\t/**\n\t * The variant of the button.\n\t * @attr\n\t * @default 'text'\n\t * @public\n\t */\n\t@property({ reflect: true, type: String })\n\tpublic variant: ButtonVariant = 'text'\n\n\t/**\n\t * The color of the button.\n\t * @attr\n\t * @default Depends on variant: 'primary' for filled/elevated/outlined/text, 'secondary' for tonal\n\t * @public\n\t */\n\t@property({ reflect: true, type: String })\n\tpublic color?: ButtonColor\n\n\t/**\n\t * The width of the button.\n\t * @attr\n\t * @type {'full' | 'auto'}\n\t * @default 'auto'\n\t * @public\n\t */\n\t@property({ reflect: true })\n\tpublic width: 'full' | 'auto' = 'auto'\n\n\t/**\n\t * The size of the button.\n\t * Provided as `SchmancyButtonSizeContext` to descendant elements so children\n\t * (e.g. `<schmancy-icon>`) can auto-size against the enclosing button.\n\t * @attr\n\t * @type {'xxs' | 'xs' | 'sm' | 'md' | 'lg'}\n\t * @default 'md'\n\t * @public\n\t */\n\t@provide({ context: SchmancyButtonSizeContext })\n\t@property({ type: String })\n\tpublic size: SchmancyButtonSize = 'md'\n\n\t/**\n\t * The type of the button.\n\t * Defaults to 'button' (preventing accidental form submissions).\n\t * @attr\n\t */\n\t@property({ reflect: true, type: String })\n\tpublic type: 'button' | 'reset' | 'submit' = 'button'\n\n\t/**\n\t * The URL the button points to.\n\t * If provided, the component will render as an anchor element.\n\t * @attr\n\t */\n\t@property()\n\tpublic href?: string\n\n\t/**\n\t * Determines whether the button is disabled.\n\t * @attr\n\t */\n\t@property({ type: Boolean, reflect: true })\n\tpublic disabled = false\n\n\tpublic override set ariaLabel(value: string) {\n\t\tconst oldVal = this.#ariaLabel\n\t\tthis.#ariaLabel = value\n\n\t\tif (this.hasAttribute('aria-label')) {\n\t\t\tthis.removeAttribute('aria-label')\n\t\t}\n\t\tthis.requestUpdate('ariaLabel', oldVal)\n\t}\n\n\t@property({ attribute: 'aria-label' })\n\tpublic override get ariaLabel() {\n\t\treturn this.#ariaLabel\n\t}\n\n\t@queryAssignedElements({\n\t\tslot: 'prefix',\n\t\tflatten: true,\n\t\tselector: 'img',\n\t})\n\tprivate prefixImgs!: HTMLImageElement[]\n\n\t@queryAssignedElements({\n\t\tslot: 'suffix',\n\t\tflatten: true,\n\t\tselector: 'img',\n\t})\n\tprivate suffixImgs!: HTMLImageElement[]\n\n\t/** Sets focus in the button. */\n\tpublic override focus(options?: FocusOptions) {\n\t\tthis.nativeElement.focus(options)\n\t}\n\n\t/** Removes focus from the button. */\n\tpublic override blur() {\n\t\tthis.nativeElement.blur()\n\t}\n\n\t/**\n\t * Get the effective color based on variant if not explicitly set\n\t * M3 spec: filled = primary, tonal = secondary, others = primary\n\t */\n\tprotected get effectiveColor(): ButtonColor {\n\t\tif (this.color) return this.color\n\n\t\t// Map 'tonal' to 'filled tonal' for checking\n\t\tconst effectiveVariant = this.variant === 'tonal' ? 'filled tonal' : this.variant\n\n\t\t// M3 defaults: tonal uses secondary, others use primary\n\t\treturn effectiveVariant === 'filled tonal' ? 'secondary' : 'primary'\n\t}\n\n\tprotected get imgClasses(): string[] {\n\t\t// M3 spec: icon sizes scale with button size\n\t\tconst sizeMap = {\n\t\t\txxs: 'w-3 h-3', // 12px for 24px button (ultra-compact)\n\t\t\txs: 'w-4 h-4', // 16px for 32px button (M3 dense)\n\t\t\tsm: 'w-5 h-5', // 20px for 40px button (M3 default)\n\t\t\tmd: 'w-6 h-6', // 24px for 48px button (M3 large)\n\t\t\tlg: 'w-7 h-7', // 28px for 56px button (M3 extra large)\n\t\t}\n\t\treturn [sizeMap[this.size], 'object-contain']\n\t}\n\n\tfirstUpdated() {\n\t\t// Add image classes and ensure decorative images have an empty alt.\n\t\tthis.prefixImgs?.forEach(img => {\n\t\t\timg.classList.add(...this.imgClasses)\n\t\t\tif (!img.hasAttribute('alt')) {\n\t\t\t\timg.setAttribute('alt', '')\n\t\t\t}\n\t\t})\n\t\tthis.suffixImgs?.forEach(img => {\n\t\t\timg.classList.add(...this.imgClasses)\n\t\t\tif (!img.hasAttribute('alt')) {\n\t\t\t\timg.setAttribute('alt', '')\n\t\t\t}\n\t\t})\n\t}\n\n\tclick(): void {\n\t\tthis.dispatchEvent(new Event('click', { bubbles: true, composed: true }))\n\t}\n\n\t// Prevent default behavior when the component is disabled.\n\tprivate preventDefault(event: Event) {\n\t\tevent.preventDefault()\n\t\tevent.stopPropagation()\n\t}\n\n\trender() {\n\t\t// Map 'tonal' variant to 'filled tonal' for backwards compatibility\n\t\tconst effectiveVariant = this.variant === 'tonal' ? 'filled tonal' : this.variant\n\n\t\t// Compute classes for the interactive element.\n\t\tconst classes = {\n\t\t\t'z-0 transition-all duration-200 relative rounded-2xl flex justify-center items-center outline-secondary-default focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 outline-hidden flex-1 overflow-hidden': true,\n\t\t\t// Height - M3 spec: 24dp (xxs) → 32dp (dense) → 40dp (default) → 48dp (large) → 56dp (XL)\n\t\t\t'h-6': this.size === 'xxs', // 24px - Ultra-compact\n\t\t\t'h-8': this.size === 'xs', // 32px - M3 dense/compact\n\t\t\t'h-10': this.size === 'sm', // 40px - M3 default\n\t\t\t'h-12': this.size === 'md', // 48px - M3 large\n\t\t\t'h-14': this.size === 'lg', // 56px - M3 extra large\n\t\t\t// Padding - M3 spec: horizontal padding 24dp default, scaled proportionally\n\t\t\t'py-1 px-2': this.size === 'xxs', // 4px/8px for 24px height\n\t\t\t'py-2 px-4': this.size === 'xs', // 8px/16px for 32px height\n\t\t\t'py-2.5 px-5': this.size === 'sm', // 10px/20px for 40px height\n\t\t\t'py-3 px-6': this.size === 'md', // 12px/24px for 48px height (M3 default)\n\t\t\t'py-4 px-7': this.size === 'lg', // 16px/28px for 56px height\n\t\t\t// Typography - M3 spec: label-large (14px) default, scaled\n\t\t\t'text-[10px] font-medium leading-3': this.size === 'xxs', // 10px\n\t\t\t'text-xs font-medium leading-4': this.size === 'xs', // 12px\n\t\t\t'text-sm font-medium leading-5': this.size === 'sm' || this.size === 'md', // 14px - M3 label-large\n\t\t\t'text-base font-medium leading-6': this.size === 'lg', // 16px\n\t\t\t// Letter spacing - M3 spec\n\t\t\t'tracking-[0.1px]': true,\n\t\t\t// Gap - Scaled with size\n\t\t\t'gap-0.5': this.size === 'xxs', // 2px\n\t\t\t'gap-1': this.size === 'xs', // 4px\n\t\t\t'gap-1.5': this.size === 'sm', // 6px\n\t\t\t'gap-2': this.size === 'md', // 8px\n\t\t\t'gap-2.5': this.size === 'lg', // 10px\n\t\t\t'cursor-pointer': !this.disabled,\n\t\t\t'opacity-[0.38]': this.disabled,\n\t\t\t'hover:shadow-sm': !this.disabled && effectiveVariant === 'elevated',\n\t\t\t'w-full tex-center': this.width === 'full',\n\t\t\t// Elevated variant\n\t\t\t'bg-surface-low shadow-xs': effectiveVariant === 'elevated',\n\t\t\t// Outlined variant\n\t\t\t'bg-transparent border-1 border-solid': effectiveVariant === 'outlined',\n\t\t\t'border-outline': effectiveVariant === 'outlined' && this.effectiveColor === 'primary',\n\t\t\t'border-success-default': effectiveVariant === 'outlined' && this.effectiveColor === 'success',\n\t\t\t'border-error-default': effectiveVariant === 'outlined' && this.effectiveColor === 'error',\n\t\t\t'border-warning-default': effectiveVariant === 'outlined' && this.effectiveColor === 'warning',\n\t\t\t'border-info-default': effectiveVariant === 'outlined' && this.effectiveColor === 'info',\n\t\t\t'border-secondary-default': effectiveVariant === 'outlined' && this.effectiveColor === 'secondary',\n\t\t\t'border-outline-variant': effectiveVariant === 'outlined' && this.effectiveColor === 'neutral',\n\t\t\t// Filled variant - background colors\n\t\t\t'bg-primary-default': effectiveVariant === 'filled' && this.effectiveColor === 'primary',\n\t\t\t'bg-secondary-default': effectiveVariant === 'filled' && this.effectiveColor === 'secondary',\n\t\t\t'bg-success-default': effectiveVariant === 'filled' && this.effectiveColor === 'success',\n\t\t\t'bg-error-default': effectiveVariant === 'filled' && this.effectiveColor === 'error',\n\t\t\t'bg-warning-default': effectiveVariant === 'filled' && this.effectiveColor === 'warning',\n\t\t\t'bg-info-default': effectiveVariant === 'filled' && this.effectiveColor === 'info',\n\t\t\t'bg-surface-containerHighest': effectiveVariant === 'filled' && this.effectiveColor === 'neutral',\n\t\t\t// Filled variant - text colors\n\t\t\t'text-primary-on': effectiveVariant === 'filled' && this.effectiveColor === 'primary',\n\t\t\t'text-secondary-on': effectiveVariant === 'filled' && this.effectiveColor === 'secondary',\n\t\t\t'text-success-on': effectiveVariant === 'filled' && this.effectiveColor === 'success',\n\t\t\t'text-error-on': effectiveVariant === 'filled' && this.effectiveColor === 'error',\n\t\t\t'text-warning-on': effectiveVariant === 'filled' && this.effectiveColor === 'warning',\n\t\t\t'text-info-on': effectiveVariant === 'filled' && this.effectiveColor === 'info',\n\t\t\t'text-surface-on': effectiveVariant === 'filled' && this.effectiveColor === 'neutral',\n\t\t\t// Filled tonal variant - background colors\n\t\t\t'bg-primary-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'primary',\n\t\t\t'bg-secondary-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'secondary',\n\t\t\t'bg-success-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'success',\n\t\t\t'bg-error-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'error',\n\t\t\t'bg-warning-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'warning',\n\t\t\t'bg-info-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'info',\n\t\t\t'bg-surface-containerLow': effectiveVariant === 'filled tonal' && this.effectiveColor === 'neutral',\n\t\t\t// Filled tonal variant - text colors\n\t\t\t'text-primary-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'primary',\n\t\t\t'text-secondary-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'secondary',\n\t\t\t'text-success-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'success',\n\t\t\t'text-error-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'error',\n\t\t\t'text-warning-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'warning',\n\t\t\t'text-info-onContainer': effectiveVariant === 'filled tonal' && this.effectiveColor === 'info',\n\t\t\t// Text and elevated variants - text colors\n\t\t\t'text-primary-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'primary',\n\t\t\t'text-secondary-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'secondary',\n\t\t\t'text-success-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'success',\n\t\t\t'text-error-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'error',\n\t\t\t'text-warning-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'warning',\n\t\t\t'text-info-default':\n\t\t\t\t(effectiveVariant === 'text' || effectiveVariant === 'elevated' || effectiveVariant === 'outlined') &&\n\t\t\t\tthis.effectiveColor === 'info',\n\t\t\t'text-surface-onVariant':\n\t\t\t\t(effectiveVariant === 'text' ||\n\t\t\t\t\teffectiveVariant === 'elevated' ||\n\t\t\t\t\teffectiveVariant === 'outlined' ||\n\t\t\t\t\teffectiveVariant === 'filled tonal') &&\n\t\t\t\tthis.effectiveColor === 'neutral',\n\t\t}\n\n\t\tconst stateLayerClasses = {\n\t\t\t'absolute inset-0 hover:opacity-[0.08] z-0 rounded-2xl': true,\n\t\t\t// M3 focus and pressed states\n\t\t\t'focus-visible:opacity-[0.10]': true, // M3 focus state\n\t\t\t'active:opacity-[0.10]': true, // M3 pressed state\n\t\t\t// Filled variant hover\n\t\t\t'hover:bg-primary-on': effectiveVariant === 'filled' && this.effectiveColor === 'primary',\n\t\t\t'hover:bg-secondary-on': effectiveVariant === 'filled' && this.effectiveColor === 'secondary',\n\t\t\t'hover:bg-success-on': effectiveVariant === 'filled' && this.effectiveColor === 'success',\n\t\t\t'hover:bg-error-on': effectiveVariant === 'filled' && this.effectiveColor === 'error',\n\t\t\t'hover:bg-warning-on': effectiveVariant === 'filled' && this.effectiveColor === 'warning',\n\t\t\t'hover:bg-info-on': effectiveVariant === 'filled' && this.effectiveColor === 'info',\n\t\t\t'hover:bg-surface-on': effectiveVariant === 'filled' && this.effectiveColor === 'neutral',\n\t\t\t// Outlined, elevated, text variants hover\n\t\t\t'hover:bg-primary-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'primary',\n\t\t\t'hover:bg-secondary-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'secondary',\n\t\t\t'hover:bg-success-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'success',\n\t\t\t'hover:bg-error-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'error',\n\t\t\t'hover:bg-warning-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'warning',\n\t\t\t'hover:bg-info-default':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'info',\n\t\t\t'hover:bg-surface-onVariant':\n\t\t\t\t(effectiveVariant === 'outlined' || effectiveVariant === 'elevated' || effectiveVariant === 'text') &&\n\t\t\t\tthis.effectiveColor === 'neutral',\n\t\t\t// Filled tonal hover\n\t\t\t'hover:bg-primary-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'primary',\n\t\t\t'hover:bg-secondary-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'secondary',\n\t\t\t'hover:bg-success-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'success',\n\t\t\t'hover:bg-error-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'error',\n\t\t\t'hover:bg-warning-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'warning',\n\t\t\t'hover:bg-info-container': effectiveVariant === 'filled tonal' && this.effectiveColor === 'info',\n\t\t\t'hover:bg-surface-containerLow': effectiveVariant === 'filled tonal' && this.effectiveColor === 'neutral',\n\t\t}\n\n\t\t// If href is provided, render an anchor element.\n\t\tif (this.href) {\n\t\t\treturn html`\n\t\t\t\t<a\n\t\t\t\t\t${magnetic({ strength: 3, radius: 60 })}\n\t\t\t\t\tpart=\"base\"\n\t\t\t\t\thref=${ifDefined(this.disabled ? undefined : this.href)}\n\t\t\t\t\taria-label=${ifDefined(this.ariaLabel)}\n\t\t\t\t\tclass=\"${this.classMap(classes)}\"\n\t\t\t\t\ttabindex=${this.disabled ? '-1' : '0'}\n\t\t\t\t\taria-disabled=${this.disabled}\n\t\t\t\t\t@click=${this.disabled ? this.preventDefault : undefined}\n\t\t\t\t>\n\t\t\t\t\t${when(!this.disabled, () => html`<div class=\"${this.classMap(stateLayerClasses)}\"></div>`)}\n\t\t\t\t\t<slot name=\"prefix\"></slot>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t\t<slot name=\"suffix\"></slot>\n\t\t\t\t</a>\n\t\t\t`\n\t\t}\n\n\t\t// Otherwise, render a native button element.\n\t\treturn html`\n\t\t\t<button\n\t\t\t\t${magnetic({ strength: 3, radius: 60 })}\n\t\t\t\tpart=\"base\"\n\t\t\t\taria-label=${ifDefined(this.ariaLabel)}\n\t\t\t\t?disabled=${this.disabled}\n\t\t\t\tclass=\"${this.classMap(classes)}\"\n\t\t\t\ttype=${ifDefined(this.type)}\n\t\t\t\ttabindex=${ifDefined(this.disabled ? '-1' : undefined)}\n\t\t\t>\n\t\t\t\t${when(!this.disabled, () => html`<div class=\"${this.classMap(stateLayerClasses)}\"></div>`)}\n\t\t\t\t<slot name=\"prefix\"></slot>\n\t\t\t\t<slot></slot>\n\t\t\t\t<slot name=\"suffix\"></slot>\n\t\t\t</button>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-button': SchmancyButton\n\t}\n}\n"],"mappings":"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"}