@mhmo91/schmancy 0.9.5 → 0.9.6

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 (608) hide show
  1. package/custom-elements.json +493 -718
  2. package/dist/{animation-CO_Csq84.cjs.map → animation-Bcwh107v.cjs.map} +1 -1
  3. package/dist/{animation-BK-8BwY8.js.map → animation-CXKSuUoE.js.map} +1 -1
  4. package/dist/{area-CRoGqD_u.js → area-BARjKpE9.js} +2 -2
  5. package/dist/{area-CRoGqD_u.js.map → area-BARjKpE9.js.map} +1 -1
  6. package/dist/{area-JPykB7A9.cjs → area-D9b9dHQr.cjs} +3 -3
  7. package/dist/{area-JPykB7A9.cjs.map → area-D9b9dHQr.cjs.map} +1 -1
  8. package/dist/area.cjs +1 -1
  9. package/dist/area.js +1 -1
  10. package/dist/{audio-kz8UgPTO.js → audio-C7TzWI8M.js} +1 -1
  11. package/dist/audio-C7TzWI8M.js.map +1 -0
  12. package/dist/{audio-DtYYgzYD.cjs → audio-DUVz7Ars.cjs} +1 -1
  13. package/dist/audio-DUVz7Ars.cjs.map +1 -0
  14. package/dist/audio.cjs +1 -1
  15. package/dist/audio.js +2 -2
  16. package/dist/autocomplete-AI2CCJmK.cjs +115 -0
  17. package/dist/autocomplete-AI2CCJmK.cjs.map +1 -0
  18. package/dist/{autocomplete-BllPQwr8.js → autocomplete-DOimwVMP.js} +48 -22
  19. package/dist/autocomplete-DOimwVMP.js.map +1 -0
  20. package/dist/autocomplete.cjs +1 -1
  21. package/dist/autocomplete.js +1 -1
  22. package/dist/badge.cjs +1 -1
  23. package/dist/badge.js +1 -1
  24. package/dist/{boat-DYEAZ8Qj.cjs → boat-Bk4u-LzT.cjs} +2 -2
  25. package/dist/{boat-DYEAZ8Qj.cjs.map → boat-Bk4u-LzT.cjs.map} +1 -1
  26. package/dist/{boat-BDTQ-du9.js → boat-DrghVeWK.js} +5 -5
  27. package/dist/{boat-BDTQ-du9.js.map → boat-DrghVeWK.js.map} +1 -1
  28. package/dist/boat.cjs +1 -1
  29. package/dist/boat.js +1 -1
  30. package/dist/breadcrumb.cjs +34 -0
  31. package/dist/breadcrumb.cjs.map +1 -0
  32. package/dist/breadcrumb.js +73 -0
  33. package/dist/breadcrumb.js.map +1 -0
  34. package/dist/{busy-ChDAeaKF.js → busy-BmFfwyz_.js} +7 -6
  35. package/dist/{busy-ChDAeaKF.js.map → busy-BmFfwyz_.js.map} +1 -1
  36. package/dist/{busy-Dj7Xn0Z0.cjs → busy-c_q_F8O0.cjs} +8 -8
  37. package/dist/{busy-Dj7Xn0Z0.cjs.map → busy-c_q_F8O0.cjs.map} +1 -1
  38. package/dist/busy.cjs +1 -1
  39. package/dist/busy.js +1 -1
  40. package/dist/button.cjs +4 -4
  41. package/dist/button.cjs.map +1 -1
  42. package/dist/button.js +25 -6
  43. package/dist/button.js.map +1 -1
  44. package/dist/{card-DZFPRPqs.js → card-BADJHUMA.js} +16 -15
  45. package/dist/{card-DZFPRPqs.js.map → card-BADJHUMA.js.map} +1 -1
  46. package/dist/{card-BvPWVEJX.cjs → card-C_E944_Z.cjs} +10 -10
  47. package/dist/{card-BvPWVEJX.cjs.map → card-C_E944_Z.cjs.map} +1 -1
  48. package/dist/card.cjs +1 -1
  49. package/dist/card.js +1 -1
  50. package/dist/charts.cjs +3 -3
  51. package/dist/charts.cjs.map +1 -1
  52. package/dist/charts.js +2 -2
  53. package/dist/{checkbox-GSSjqo6w.js → checkbox-D7rvCrGk.js} +28 -9
  54. package/dist/{checkbox-GSSjqo6w.js.map → checkbox-D7rvCrGk.js.map} +1 -1
  55. package/dist/{checkbox-BC_37rsG.cjs → checkbox-ZqDoCagB.cjs} +10 -10
  56. package/dist/{checkbox-BC_37rsG.cjs.map → checkbox-ZqDoCagB.cjs.map} +1 -1
  57. package/dist/checkbox.cjs +1 -1
  58. package/dist/checkbox.js +1 -1
  59. package/dist/{chips-B19XS8Xc.cjs → chips-Cux635Qs.cjs} +18 -18
  60. package/dist/chips-Cux635Qs.cjs.map +1 -0
  61. package/dist/{chips-B9oAEfE_.js → chips-vdzIsesI.js} +37 -27
  62. package/dist/chips-vdzIsesI.js.map +1 -0
  63. package/dist/chips.cjs +1 -1
  64. package/dist/chips.js +2 -2
  65. package/dist/{code-highlight-fSLrlgOb.cjs → code-highlight-C9lKek2p.cjs} +11 -11
  66. package/dist/{code-highlight-fSLrlgOb.cjs.map → code-highlight-C9lKek2p.cjs.map} +1 -1
  67. package/dist/{code-highlight-DCk5lJY-.js → code-highlight-D6yruol6.js} +6 -5
  68. package/dist/{code-highlight-DCk5lJY-.js.map → code-highlight-D6yruol6.js.map} +1 -1
  69. package/dist/code-highlight.cjs +1 -1
  70. package/dist/code-highlight.js +1 -1
  71. package/dist/components-ByRyEzz5.cjs +73 -0
  72. package/dist/{components-CyD6a7gQ.cjs.map → components-ByRyEzz5.cjs.map} +1 -1
  73. package/dist/{components-COsM6sJZ.js → components-DSvPKR9Q.js} +2 -2
  74. package/dist/{components-COsM6sJZ.js.map → components-DSvPKR9Q.js.map} +1 -1
  75. package/dist/components.cjs +1 -1
  76. package/dist/components.js +1 -1
  77. package/dist/connectivity.cjs +7 -7
  78. package/dist/connectivity.cjs.map +1 -1
  79. package/dist/connectivity.js +5 -4
  80. package/dist/connectivity.js.map +1 -1
  81. package/dist/content-drawer.cjs +1 -1
  82. package/dist/content-drawer.js +1 -1
  83. package/dist/{cursor-glow-DtSy_PJd.cjs → cursor-glow-82y5h3E4.cjs} +1 -1
  84. package/dist/{cursor-glow-DtSy_PJd.cjs.map → cursor-glow-82y5h3E4.cjs.map} +1 -1
  85. package/dist/{cursor-glow-Ah7VXSj7.js → cursor-glow-C2YRrB8Z.js} +1 -1
  86. package/dist/{cursor-glow-Ah7VXSj7.js.map → cursor-glow-C2YRrB8Z.js.map} +1 -1
  87. package/dist/{date-range-ZAaQB22I.cjs → date-range-DJsavigf.cjs} +3 -3
  88. package/dist/date-range-DJsavigf.cjs.map +1 -0
  89. package/dist/{date-range-inline-Bl8qbiQF.js → date-range-inline-B87TDYI6.js} +1 -1
  90. package/dist/{date-range-inline-Bl8qbiQF.js.map → date-range-inline-B87TDYI6.js.map} +1 -1
  91. package/dist/date-range-inline-De-M0VmL.cjs +43 -0
  92. package/dist/{date-range-inline-m7nLjOMI.cjs.map → date-range-inline-De-M0VmL.cjs.map} +1 -1
  93. package/dist/date-range-inline.cjs +1 -1
  94. package/dist/date-range-inline.js +1 -1
  95. package/dist/{date-range-Sfyco9-n.js → date-range-tEX2Jx2j.js} +4 -4
  96. package/dist/date-range-tEX2Jx2j.js.map +1 -0
  97. package/dist/date-range.cjs +1 -1
  98. package/dist/date-range.js +1 -1
  99. package/dist/delay-BvVdfhAR.cjs +9 -0
  100. package/dist/{delay-7boauN6N.cjs.map → delay-BvVdfhAR.cjs.map} +1 -1
  101. package/dist/{delay-CgX6m0HN.js → delay-CZw37zps.js} +9 -8
  102. package/dist/{delay-CgX6m0HN.js.map → delay-CZw37zps.js.map} +1 -1
  103. package/dist/delay.cjs +1 -1
  104. package/dist/delay.js +1 -1
  105. package/dist/{details-BHnk8l4q.cjs → details-Bhz8_whd.cjs} +9 -9
  106. package/dist/{details-BHnk8l4q.cjs.map → details-Bhz8_whd.cjs.map} +1 -1
  107. package/dist/{details-BPkUg8Cq.js → details-D7VTnLOh.js} +16 -15
  108. package/dist/{details-BPkUg8Cq.js.map → details-D7VTnLOh.js.map} +1 -1
  109. package/dist/details.cjs +1 -1
  110. package/dist/details.js +1 -1
  111. package/dist/{dialog-service-NZEvyEK-.js → dialog-service-ClFrOWf4.js} +2 -2
  112. package/dist/{dialog-service-NZEvyEK-.js.map → dialog-service-ClFrOWf4.js.map} +1 -1
  113. package/dist/{dialog-service-VnW4gkmE.cjs → dialog-service-DcuAavp2.cjs} +1 -1
  114. package/dist/{dialog-service-VnW4gkmE.cjs.map → dialog-service-DcuAavp2.cjs.map} +1 -1
  115. package/dist/dialog.cjs +18 -11
  116. package/dist/dialog.cjs.map +1 -1
  117. package/dist/dialog.js +66 -43
  118. package/dist/dialog.js.map +1 -1
  119. package/dist/directives.cjs +1 -1
  120. package/dist/directives.js +5 -5
  121. package/dist/{divider-_khrhrZo.cjs → divider-S0bHwCCS.cjs} +2 -2
  122. package/dist/{divider-_khrhrZo.cjs.map → divider-S0bHwCCS.cjs.map} +1 -1
  123. package/dist/{divider-CW9a7MMj.js → divider-zS232JDr.js} +2 -2
  124. package/dist/{divider-CW9a7MMj.js.map → divider-zS232JDr.js.map} +1 -1
  125. package/dist/divider.cjs +1 -1
  126. package/dist/divider.js +1 -1
  127. package/dist/dropdown.cjs +4 -4
  128. package/dist/dropdown.cjs.map +1 -1
  129. package/dist/dropdown.js +8 -7
  130. package/dist/dropdown.js.map +1 -1
  131. package/dist/{expand-iQ7EOMP7.js → expand-BXt9SqAF.js} +13 -12
  132. package/dist/{expand-iQ7EOMP7.js.map → expand-BXt9SqAF.js.map} +1 -1
  133. package/dist/{expand-Cp7-PH8b.cjs → expand-Dr7TFXpl.cjs} +18 -18
  134. package/dist/{expand-Cp7-PH8b.cjs.map → expand-Dr7TFXpl.cjs.map} +1 -1
  135. package/dist/expand.cjs +1 -1
  136. package/dist/expand.js +1 -1
  137. package/dist/{extra-IKAiJJhv.cjs → extra-BmZTXAp0.cjs} +3 -3
  138. package/dist/{extra-IKAiJJhv.cjs.map → extra-BmZTXAp0.cjs.map} +1 -1
  139. package/dist/{extra-wEpvEFbK.js → extra-COYhsOyZ.js} +2 -2
  140. package/dist/{extra-wEpvEFbK.js.map → extra-COYhsOyZ.js.map} +1 -1
  141. package/dist/extra.cjs +1 -1
  142. package/dist/extra.js +1 -1
  143. package/dist/float-CSRW-Rrd.cjs +1 -0
  144. package/dist/{float-D5rNC82i.cjs.map → float-CSRW-Rrd.cjs.map} +1 -1
  145. package/dist/{float-BQ_urmMs.js → float-DCXafWh6.js} +2 -2
  146. package/dist/{float-BQ_urmMs.js.map → float-DCXafWh6.js.map} +1 -1
  147. package/dist/float.cjs +1 -1
  148. package/dist/float.js +1 -1
  149. package/dist/{flow-CUj0fDT_.js.map → flow-CqgDEIqK.js.map} +1 -1
  150. package/dist/{flow-Bbwn6dRN.cjs.map → flow-DSu4PLt1.cjs.map} +1 -1
  151. package/dist/form-CAY9GSCd.cjs +1 -0
  152. package/dist/form-CAY9GSCd.cjs.map +1 -0
  153. package/dist/form-D2cJ58TB.js +68 -0
  154. package/dist/form-D2cJ58TB.js.map +1 -0
  155. package/dist/form.cjs +1 -1
  156. package/dist/form.js +2 -1
  157. package/dist/{hashContent-DaeGmY-p.cjs.map → hashContent-kKvXKFa9.cjs.map} +1 -1
  158. package/dist/{hashContent-DYM21p6t.js.map → hashContent-nD2uWwi2.js.map} +1 -1
  159. package/dist/{icons-BDqiGXrO.js → icons-BbaI9Zf-.js} +9 -8
  160. package/dist/icons-BbaI9Zf-.js.map +1 -0
  161. package/dist/{icons-B57_93VV.cjs → icons-DPUeLS_Y.cjs} +3 -3
  162. package/dist/icons-DPUeLS_Y.cjs.map +1 -0
  163. package/dist/icons.cjs +1 -1
  164. package/dist/icons.js +1 -1
  165. package/dist/{iframe-WnWPIrBG.js → iframe-CEDOvkql.js} +5 -4
  166. package/dist/{iframe-WnWPIrBG.js.map → iframe-CEDOvkql.js.map} +1 -1
  167. package/dist/{iframe-DNHL3GIk.cjs → iframe-Ct50FYXq.cjs} +3 -3
  168. package/dist/{iframe-DNHL3GIk.cjs.map → iframe-Ct50FYXq.cjs.map} +1 -1
  169. package/dist/iframe.cjs +1 -1
  170. package/dist/iframe.js +1 -1
  171. package/dist/index.cjs +1 -1
  172. package/dist/index.js +65 -59
  173. package/dist/{input-BiSrTcrR.cjs → input-DMjpf6V8.cjs} +2 -2
  174. package/dist/{input-BiSrTcrR.cjs.map → input-DMjpf6V8.cjs.map} +1 -1
  175. package/dist/{input-VaXHFrRn.js → input-Ri72dn5t.js} +1 -1
  176. package/dist/{input-VaXHFrRn.js.map → input-Ri72dn5t.js.map} +1 -1
  177. package/dist/{input-chip-Dy-AiP55.cjs → input-chip-BhjGVpc3.cjs} +9 -9
  178. package/dist/input-chip-BhjGVpc3.cjs.map +1 -0
  179. package/dist/{input-chip-QejNcRnS.js → input-chip-CI4__N8w.js} +13 -9
  180. package/dist/input-chip-CI4__N8w.js.map +1 -0
  181. package/dist/input.cjs +1 -1
  182. package/dist/input.js +1 -1
  183. package/dist/{intersection-CZpaIHeT.cjs.map → intersection-D1v1UCVv.cjs.map} +1 -1
  184. package/dist/{intersection-BPLpqYEd.js.map → intersection-LfEsy29T.js.map} +1 -1
  185. package/dist/json.cjs +3 -3
  186. package/dist/json.cjs.map +1 -1
  187. package/dist/json.js +5 -4
  188. package/dist/json.js.map +1 -1
  189. package/dist/kbd.cjs +28 -0
  190. package/dist/kbd.cjs.map +1 -0
  191. package/dist/kbd.js +45 -0
  192. package/dist/kbd.js.map +1 -0
  193. package/dist/{layout-yxSlLybo.js → layout-BE2ld1IY.js} +1 -1
  194. package/dist/{layout-yxSlLybo.js.map → layout-BE2ld1IY.js.map} +1 -1
  195. package/dist/layout-D7xOqMkJ.cjs +17 -0
  196. package/dist/{layout-DNYG3phx.cjs.map → layout-D7xOqMkJ.cjs.map} +1 -1
  197. package/dist/{layout-4C-6_cre.cjs → layout-PZCF3kwl.cjs} +1 -1
  198. package/dist/{layout-4C-6_cre.cjs.map → layout-PZCF3kwl.cjs.map} +1 -1
  199. package/dist/{layout-CnsXeCAy.js → layout-uAQpJN31.js} +20 -19
  200. package/dist/{layout-CnsXeCAy.js.map → layout-uAQpJN31.js.map} +1 -1
  201. package/dist/layout.cjs +1 -1
  202. package/dist/layout.js +2 -2
  203. package/dist/{lightbox-BrI1Z31s.js → lightbox-C0OEHns9.js} +10 -9
  204. package/dist/{lightbox-BrI1Z31s.js.map → lightbox-C0OEHns9.js.map} +1 -1
  205. package/dist/{lightbox-CmACf0t5.cjs → lightbox-cXRnvHMN.cjs} +20 -20
  206. package/dist/{lightbox-CmACf0t5.cjs.map → lightbox-cXRnvHMN.cjs.map} +1 -1
  207. package/dist/lightbox.cjs +1 -1
  208. package/dist/lightbox.js +1 -1
  209. package/dist/{list-swIL9VDv.cjs → list-CmJ5h35b.cjs} +5 -5
  210. package/dist/{list-swIL9VDv.cjs.map → list-CmJ5h35b.cjs.map} +1 -1
  211. package/dist/{list-Cm-jjXxM.js → list-d1mHar5p.js} +14 -13
  212. package/dist/{list-Cm-jjXxM.js.map → list-d1mHar5p.js.map} +1 -1
  213. package/dist/list.cjs +1 -1
  214. package/dist/list.js +1 -1
  215. package/dist/{litElement.mixin-3llHwB-8.cjs → litElement.mixin-Bj2q1yPw.cjs} +1 -1
  216. package/dist/{litElement.mixin-3llHwB-8.cjs.map → litElement.mixin-Bj2q1yPw.cjs.map} +1 -1
  217. package/dist/{litElement.mixin-6jJYHCrZ.js → litElement.mixin-CncaUoxz.js} +1 -1
  218. package/dist/{litElement.mixin-6jJYHCrZ.js.map → litElement.mixin-CncaUoxz.js.map} +1 -1
  219. package/dist/{magnetic-BZGFxAWG.js → magnetic-Dj52WplI.js} +2 -2
  220. package/dist/{magnetic-BZGFxAWG.js.map → magnetic-Dj52WplI.js.map} +1 -1
  221. package/dist/{magnetic-Dux4QwO4.cjs → magnetic-aBBnj_vk.cjs} +1 -1
  222. package/dist/{magnetic-Dux4QwO4.cjs.map → magnetic-aBBnj_vk.cjs.map} +1 -1
  223. package/dist/{mailbox-D6LkQcN5.cjs → mailbox-BmChskZc.cjs} +59 -59
  224. package/dist/{mailbox-D6LkQcN5.cjs.map → mailbox-BmChskZc.cjs.map} +1 -1
  225. package/dist/{mailbox-BuvsVaAQ.js → mailbox-C4-E93be.js} +13 -12
  226. package/dist/{mailbox-BuvsVaAQ.js.map → mailbox-C4-E93be.js.map} +1 -1
  227. package/dist/mailbox.cjs +1 -1
  228. package/dist/mailbox.js +1 -1
  229. package/dist/{map-CQiKAxC3.js → map-DHyYLhvy.js} +6 -5
  230. package/dist/{map-CQiKAxC3.js.map → map-DHyYLhvy.js.map} +1 -1
  231. package/dist/{map-D5NN4VET.cjs → map-DYEvlNl0.cjs} +7 -7
  232. package/dist/{map-D5NN4VET.cjs.map → map-DYEvlNl0.cjs.map} +1 -1
  233. package/dist/map.cjs +1 -1
  234. package/dist/map.js +1 -1
  235. package/dist/{menu-CkgMO9K5.cjs → menu-BlPTI6H9.cjs} +3 -3
  236. package/dist/{menu-CkgMO9K5.cjs.map → menu-BlPTI6H9.cjs.map} +1 -1
  237. package/dist/{menu-C1x04YZw.js → menu-DFDBADp4.js} +3 -3
  238. package/dist/{menu-C1x04YZw.js.map → menu-DFDBADp4.js.map} +1 -1
  239. package/dist/menu.cjs +1 -1
  240. package/dist/menu.js +1 -1
  241. package/dist/mixins.cjs +1 -1
  242. package/dist/mixins.cjs.map +1 -1
  243. package/dist/mixins.js +43 -15
  244. package/dist/mixins.js.map +1 -1
  245. package/dist/nav-drawer.cjs +1 -1
  246. package/dist/nav-drawer.js +1 -1
  247. package/dist/navigation-bar.cjs +1 -1
  248. package/dist/navigation-bar.js +1 -1
  249. package/dist/navigation-rail.cjs +3 -3
  250. package/dist/navigation-rail.cjs.map +1 -1
  251. package/dist/navigation-rail.js +2 -2
  252. package/dist/{notification-BnBgxjF-.js → notification-DGpv8g2H.js} +4 -4
  253. package/dist/{notification-BnBgxjF-.js.map → notification-DGpv8g2H.js.map} +1 -1
  254. package/dist/notification-DKVWYhqs.cjs +23 -0
  255. package/dist/{notification-CZFEhWxc.cjs.map → notification-DKVWYhqs.cjs.map} +1 -1
  256. package/dist/notification.cjs +1 -1
  257. package/dist/notification.js +1 -1
  258. package/dist/{option-DBO8xZwd.js → option-BD2eh458.js} +6 -5
  259. package/dist/{option-DBO8xZwd.js.map → option-BD2eh458.js.map} +1 -1
  260. package/dist/{option-BrxCVwSx.cjs → option-LtSDy2xf.cjs} +5 -5
  261. package/dist/{option-BrxCVwSx.cjs.map → option-LtSDy2xf.cjs.map} +1 -1
  262. package/dist/option.cjs +1 -1
  263. package/dist/option.js +1 -1
  264. package/dist/{overlay-stack-DQey9Qph.cjs.map → overlay-stack-CEYGD9T1.cjs.map} +1 -1
  265. package/dist/{overlay-stack-DT1SdaGW.js.map → overlay-stack-Ca4EK2Mu.js.map} +1 -1
  266. package/dist/page.cjs +2 -2
  267. package/dist/page.cjs.map +1 -1
  268. package/dist/page.js +5 -5
  269. package/dist/{progress-Db2e4_Zd.cjs → progress-B5ChDPbB.cjs} +2 -2
  270. package/dist/{progress-Db2e4_Zd.cjs.map → progress-B5ChDPbB.cjs.map} +1 -1
  271. package/dist/{progress-DeiHxXo7.js → progress-CE1Pk2hi.js} +2 -2
  272. package/dist/{progress-DeiHxXo7.js.map → progress-CE1Pk2hi.js.map} +1 -1
  273. package/dist/progress.cjs +1 -1
  274. package/dist/progress.js +1 -1
  275. package/dist/{provide-DHnhQtCH.cjs → provide-BZ9lq_Be.cjs} +1 -1
  276. package/dist/{provide-DHnhQtCH.cjs.map → provide-BZ9lq_Be.cjs.map} +1 -1
  277. package/dist/{provide-C1aQhxYo.js → provide-jn1Fj1vv.js} +1 -1
  278. package/dist/{provide-C1aQhxYo.js.map → provide-jn1Fj1vv.js.map} +1 -1
  279. package/dist/qr-scanner.cjs +2 -2
  280. package/dist/qr-scanner.cjs.map +1 -1
  281. package/dist/qr-scanner.js +2 -2
  282. package/dist/radio-group-Cd9pZ2MR.cjs +40 -0
  283. package/dist/{radio-group-Cspwd-Vw.cjs.map → radio-group-Cd9pZ2MR.cjs.map} +1 -1
  284. package/dist/{radio-group-zSO0AkJf.js → radio-group-CyRHgIF3.js} +7 -6
  285. package/dist/{radio-group-zSO0AkJf.js.map → radio-group-CyRHgIF3.js.map} +1 -1
  286. package/dist/radio-group.cjs +1 -1
  287. package/dist/radio-group.js +1 -1
  288. package/dist/range.cjs +4 -4
  289. package/dist/range.cjs.map +1 -1
  290. package/dist/range.js +4 -3
  291. package/dist/range.js.map +1 -1
  292. package/dist/{reduced-motion-D-L12p7G.js.map → reduced-motion-B83yZbcO.js.map} +1 -1
  293. package/dist/{reduced-motion-Ds05GPyz.cjs.map → reduced-motion-DR32yKEO.cjs.map} +1 -1
  294. package/dist/{rxjs-utils-BSjmI9-Q.js.map → rxjs-utils-Bldch1RO.js.map} +1 -1
  295. package/dist/{rxjs-utils-DCsfzeap.cjs.map → rxjs-utils-hAgKC7vk.cjs.map} +1 -1
  296. package/dist/rxjs-utils.cjs +1 -1
  297. package/dist/rxjs-utils.js +1 -1
  298. package/dist/{scroll-QMCmbbDv.cjs → scroll-C_iNOi7E.cjs} +2 -2
  299. package/dist/{scroll-QMCmbbDv.cjs.map → scroll-C_iNOi7E.cjs.map} +1 -1
  300. package/dist/{scroll-cBDzye64.js → scroll-DoliwpRu.js} +7 -6
  301. package/dist/{scroll-cBDzye64.js.map → scroll-DoliwpRu.js.map} +1 -1
  302. package/dist/{search-C4dFHYbX.js.map → search-BlGJ6uJv.js.map} +1 -1
  303. package/dist/{search-Ds8tt7Et.cjs.map → search-C8eAOzBm.cjs.map} +1 -1
  304. package/dist/{select-Ct37l3lg.cjs → select-CWWuZ2iJ.cjs} +2 -2
  305. package/dist/{select-Ct37l3lg.cjs.map → select-CWWuZ2iJ.cjs.map} +1 -1
  306. package/dist/{select-c6HbWvKP.js → select-_vHPXi30.js} +3 -3
  307. package/dist/{select-c6HbWvKP.js.map → select-_vHPXi30.js.map} +1 -1
  308. package/dist/select.cjs +1 -1
  309. package/dist/select.js +1 -1
  310. package/dist/{sheet-BMXcUiIm.js → sheet-i1KtxGIj.js} +5 -5
  311. package/dist/{sheet-BMXcUiIm.js.map → sheet-i1KtxGIj.js.map} +1 -1
  312. package/dist/{sheet-CQec-bCV.cjs → sheet-r0oEYIdi.cjs} +2 -2
  313. package/dist/{sheet-CQec-bCV.cjs.map → sheet-r0oEYIdi.cjs.map} +1 -1
  314. package/dist/sheet.cjs +1 -1
  315. package/dist/sheet.js +2 -2
  316. package/dist/{sheet.service-Dumvr1HT.cjs → sheet.service-Cr13Oo6G.cjs} +1 -1
  317. package/dist/{sheet.service-Dumvr1HT.cjs.map → sheet.service-Cr13Oo6G.cjs.map} +1 -1
  318. package/dist/{sheet.service-BcPV3Du4.js → sheet.service-DUO5_kmI.js} +3 -3
  319. package/dist/{sheet.service-BcPV3Du4.js.map → sheet.service-DUO5_kmI.js.map} +1 -1
  320. package/dist/skeleton.cjs +33 -0
  321. package/dist/skeleton.cjs.map +1 -0
  322. package/dist/skeleton.js +58 -0
  323. package/dist/skeleton.js.map +1 -0
  324. package/dist/skills/INDEX.md +7 -6
  325. package/dist/skills/breadcrumb.md +53 -0
  326. package/dist/skills/kbd.md +40 -0
  327. package/dist/skills/schmancy/INDEX.md +7 -6
  328. package/dist/skills/schmancy/breadcrumb.md +53 -0
  329. package/dist/skills/schmancy/kbd.md +40 -0
  330. package/dist/skills/schmancy/skeleton.md +40 -0
  331. package/dist/skills/schmancy/splash-screen.md +60 -0
  332. package/dist/skills/schmancy/switch.md +58 -0
  333. package/dist/skills/schmancy/tooltip.md +1 -1
  334. package/dist/skills/schmancy/visually-hidden.md +41 -0
  335. package/dist/skills/skeleton.md +40 -0
  336. package/dist/skills/splash-screen.md +60 -0
  337. package/dist/skills/switch.md +58 -0
  338. package/dist/skills/tooltip.md +1 -1
  339. package/dist/skills/visually-hidden.md +41 -0
  340. package/dist/slider.cjs +3 -3
  341. package/dist/slider.cjs.map +1 -1
  342. package/dist/slider.js +2 -2
  343. package/dist/{sound.service-Bu3EQLv2.cjs → sound.service-BjSoGjmT.cjs} +1 -1
  344. package/dist/{sound.service-Bu3EQLv2.cjs.map → sound.service-BjSoGjmT.cjs.map} +1 -1
  345. package/dist/{sound.service-m3BrSfuH.js → sound.service-cdkw3Wkv.js} +1 -1
  346. package/dist/{sound.service-m3BrSfuH.js.map → sound.service-cdkw3Wkv.js.map} +1 -1
  347. package/dist/splash-screen-CquyPP1C.cjs +41 -0
  348. package/dist/splash-screen-CquyPP1C.cjs.map +1 -0
  349. package/dist/splash-screen-CvucPkpD.js +83 -0
  350. package/dist/splash-screen-CvucPkpD.js.map +1 -0
  351. package/dist/splash-screen.cjs +1 -0
  352. package/dist/splash-screen.js +1 -0
  353. package/dist/src-Bemk2C2P.cjs +269 -0
  354. package/dist/{src-BtQVyqMy.cjs.map → src-Bemk2C2P.cjs.map} +1 -1
  355. package/dist/{src-BLngW2bl.js → src-f5a3W9Mj.js} +98 -91
  356. package/dist/{src-BLngW2bl.js.map → src-f5a3W9Mj.js.map} +1 -1
  357. package/dist/steps.cjs +10 -10
  358. package/dist/steps.cjs.map +1 -1
  359. package/dist/steps.js +10 -9
  360. package/dist/steps.js.map +1 -1
  361. package/dist/{store-DYqDLAvT.js.map → store-Bmj6rvZY.js.map} +1 -1
  362. package/dist/{store-CorvD3bT.cjs.map → store-CO4nJyGj.cjs.map} +1 -1
  363. package/dist/store.cjs +1 -1
  364. package/dist/store.js +1 -1
  365. package/dist/surface-CDufon40.cjs +7 -0
  366. package/dist/{surface-BjKZoJxK.cjs.map → surface-CDufon40.cjs.map} +1 -1
  367. package/dist/surface-CkEYJCae.js +22 -0
  368. package/dist/{surface-pK8hME5c.js.map → surface-CkEYJCae.js.map} +1 -1
  369. package/dist/surface.cjs +1 -1
  370. package/dist/surface.js +1 -1
  371. package/dist/{surface.mixin-C5sDI1-_.cjs → surface.mixin-CSKqQH-0.cjs} +2 -2
  372. package/dist/{surface.mixin-C5sDI1-_.cjs.map → surface.mixin-CSKqQH-0.cjs.map} +1 -1
  373. package/dist/{surface.mixin-CBNRpJum.js → surface.mixin-DqMwoddO.js} +1 -1
  374. package/dist/{surface.mixin-CBNRpJum.js.map → surface.mixin-DqMwoddO.js.map} +1 -1
  375. package/dist/switch.cjs +69 -0
  376. package/dist/switch.cjs.map +1 -0
  377. package/dist/switch.js +132 -0
  378. package/dist/switch.js.map +1 -0
  379. package/dist/{table-CiqgZzSd.cjs → table-DWc1mkpj.cjs} +3 -3
  380. package/dist/{table-CiqgZzSd.cjs.map → table-DWc1mkpj.cjs.map} +1 -1
  381. package/dist/{table-BXIHX9h4.js → table-P6VGG7NK.js} +4 -4
  382. package/dist/{table-BXIHX9h4.js.map → table-P6VGG7NK.js.map} +1 -1
  383. package/dist/table.cjs +1 -1
  384. package/dist/table.js +1 -1
  385. package/dist/{tabs-nbV5eblZ.js → tabs-CjGjGrqY.js} +13 -12
  386. package/dist/{tabs-nbV5eblZ.js.map → tabs-CjGjGrqY.js.map} +1 -1
  387. package/dist/{tabs-CKa-W4qA.cjs → tabs-DGJEKuhC.cjs} +4 -4
  388. package/dist/{tabs-CKa-W4qA.cjs.map → tabs-DGJEKuhC.cjs.map} +1 -1
  389. package/dist/tabs.cjs +1 -1
  390. package/dist/tabs.js +1 -1
  391. package/dist/{tailwind.mixin-BF1Huas7.cjs → tailwind.mixin-Cpa-VnnX.cjs} +2 -2
  392. package/dist/tailwind.mixin-Cpa-VnnX.cjs.map +1 -0
  393. package/dist/{tailwind.mixin-BCJOOX1_.js → tailwind.mixin-DufHBjmb.js} +57 -63
  394. package/dist/tailwind.mixin-DufHBjmb.js.map +1 -0
  395. package/dist/teleport.cjs +1 -1
  396. package/dist/teleport.js +1 -1
  397. package/dist/{textarea-D7q8exMg.js → textarea-DZT_Ofp5.js} +42 -28
  398. package/dist/textarea-DZT_Ofp5.js.map +1 -0
  399. package/dist/textarea-jmTOXrzl.cjs +39 -0
  400. package/dist/textarea-jmTOXrzl.cjs.map +1 -0
  401. package/dist/textarea.cjs +1 -1
  402. package/dist/textarea.js +1 -1
  403. package/dist/theme-CCKqaksQ.cjs +181 -0
  404. package/dist/{theme-Da4SPq9X.cjs.map → theme-CCKqaksQ.cjs.map} +1 -1
  405. package/dist/{theme-_VPV6Bxh.js → theme-CEc32pAv.js} +13 -12
  406. package/dist/{theme-_VPV6Bxh.js.map → theme-CEc32pAv.js.map} +1 -1
  407. package/dist/theme-button-BsJcv-Zv.cjs +8 -0
  408. package/dist/{theme-button-Ci8VQ7KW.cjs.map → theme-button-BsJcv-Zv.cjs.map} +1 -1
  409. package/dist/{theme-button--sX8A-m1.js → theme-button-dOiAvdKU.js} +4 -3
  410. package/dist/{theme-button--sX8A-m1.js.map → theme-button-dOiAvdKU.js.map} +1 -1
  411. package/dist/theme-button.cjs +1 -1
  412. package/dist/theme-button.js +1 -1
  413. package/dist/theme.cjs +1 -1
  414. package/dist/{theme.events-Cv7N4Toe.js.map → theme.events-Bw3mYjUA.js.map} +1 -1
  415. package/dist/{theme.events-DM4H5F2d.cjs.map → theme.events-EznKK2Y0.cjs.map} +1 -1
  416. package/dist/{theme.interface-Da23QAYb.cjs.map → theme.interface-CM26m9te.cjs.map} +1 -1
  417. package/dist/{theme.interface-CXloMUCw.js.map → theme.interface-FAUIgbIq.js.map} +1 -1
  418. package/dist/theme.js +5 -5
  419. package/dist/{theme.service-C_tjlqgy.cjs → theme.service-ETiKUwVy.cjs} +1 -1
  420. package/dist/{theme.service-C_tjlqgy.cjs.map → theme.service-ETiKUwVy.cjs.map} +1 -1
  421. package/dist/{theme.service-D9lEas89.js → theme.service-_qP5WvB9.js} +2 -2
  422. package/dist/{theme.service-D9lEas89.js.map → theme.service-_qP5WvB9.js.map} +1 -1
  423. package/dist/tooltip.cjs +1 -6
  424. package/dist/tooltip.cjs.map +1 -1
  425. package/dist/tooltip.js +51 -135
  426. package/dist/tooltip.js.map +1 -1
  427. package/dist/tree.cjs +14 -5
  428. package/dist/tree.cjs.map +1 -1
  429. package/dist/tree.js +28 -6
  430. package/dist/tree.js.map +1 -1
  431. package/dist/tslib.es6-Bd-92OW3.cjs +1 -0
  432. package/dist/{tslib.es6-D7BIeDVB.cjs.map → tslib.es6-Bd-92OW3.cjs.map} +1 -1
  433. package/dist/tslib.es6-CI1onEZb.js +7 -0
  434. package/dist/{tslib.es6-ErZEp3OO.js.map → tslib.es6-CI1onEZb.js.map} +1 -1
  435. package/dist/typewriter-ByIL2Mh-.cjs +123 -0
  436. package/dist/{typewriter-B2TnHPjw.cjs.map → typewriter-ByIL2Mh-.cjs.map} +1 -1
  437. package/dist/{typewriter-BrZNa8T-.js → typewriter-vOQ3bDLb.js} +8 -7
  438. package/dist/{typewriter-BrZNa8T-.js.map → typewriter-vOQ3bDLb.js.map} +1 -1
  439. package/dist/typewriter.cjs +1 -1
  440. package/dist/typewriter.js +1 -1
  441. package/dist/typography.cjs +4 -4
  442. package/dist/typography.cjs.map +1 -1
  443. package/dist/typography.js +10 -9
  444. package/dist/typography.js.map +1 -1
  445. package/dist/{utils-CoU7M2YS.js → utils-Cq0m3LYo.js} +3 -3
  446. package/dist/{utils-CoU7M2YS.js.map → utils-Cq0m3LYo.js.map} +1 -1
  447. package/dist/{utils-BcaKtQuA.cjs → utils-D2kE-6zc.cjs} +1 -1
  448. package/dist/{utils-BcaKtQuA.cjs.map → utils-D2kE-6zc.cjs.map} +1 -1
  449. package/dist/utils.cjs +1 -1
  450. package/dist/utils.js +5 -5
  451. package/dist/visually-hidden.cjs +13 -0
  452. package/dist/visually-hidden.cjs.map +1 -0
  453. package/dist/visually-hidden.js +24 -0
  454. package/dist/visually-hidden.js.map +1 -0
  455. package/dist/{window-Uii13x_r.cjs → window-BS7ZQjgH.cjs} +2 -2
  456. package/dist/window-BS7ZQjgH.cjs.map +1 -0
  457. package/dist/{window-CM1ycigo.js → window-WnAihpsA.js} +7 -7
  458. package/dist/window-WnAihpsA.js.map +1 -0
  459. package/dist/window.cjs +1 -1
  460. package/dist/window.js +1 -1
  461. package/mixins/formField.mixin.ts +96 -69
  462. package/mixins/tailwind.css +11 -0
  463. package/package.json +17 -26
  464. package/skills/schmancy/INDEX.md +7 -6
  465. package/skills/schmancy/breadcrumb.md +53 -0
  466. package/skills/schmancy/kbd.md +40 -0
  467. package/skills/schmancy/skeleton.md +40 -0
  468. package/skills/schmancy/splash-screen.md +60 -0
  469. package/skills/schmancy/switch.md +58 -0
  470. package/skills/schmancy/tooltip.md +1 -1
  471. package/skills/schmancy/visually-hidden.md +41 -0
  472. package/src/audio/emotional-sounds.ts +2 -4
  473. package/src/autocomplete/autocomplete.ts +52 -2
  474. package/src/breadcrumb/breadcrumb.ts +109 -0
  475. package/src/breadcrumb/index.ts +1 -0
  476. package/src/button/button.ts +40 -0
  477. package/src/button/icon-button.ts +2 -1
  478. package/src/checkbox/checkbox.test.ts +113 -0
  479. package/src/checkbox/checkbox.ts +41 -1
  480. package/src/chips/filter-chip.ts +15 -0
  481. package/src/chips/input-chip.ts +7 -0
  482. package/src/date-range/date-range-helpers.ts +0 -71
  483. package/src/dialog/dialog-base.mixin.ts +11 -0
  484. package/src/dialog/dialog.component.ts +28 -8
  485. package/src/dropdown/dropdown-content.ts +3 -1
  486. package/src/form/form.test.ts +137 -0
  487. package/src/form/form.ts +142 -158
  488. package/src/form/index.ts +2 -2
  489. package/src/icons/icon.ts +1 -0
  490. package/src/index.ts +6 -0
  491. package/src/kbd/index.ts +1 -0
  492. package/src/kbd/kbd.ts +59 -0
  493. package/src/skeleton/index.ts +1 -0
  494. package/src/skeleton/skeleton.ts +78 -0
  495. package/src/splash-screen/index.ts +1 -0
  496. package/src/splash-screen/splash-screen.ts +154 -0
  497. package/src/switch/index.ts +1 -0
  498. package/src/switch/switch.test.ts +93 -0
  499. package/src/switch/switch.ts +180 -0
  500. package/src/test-utils/a11y.ts +35 -0
  501. package/src/textarea/textarea.ts +32 -2
  502. package/src/tooltip/index.ts +1 -2
  503. package/src/tree/tree.ts +27 -2
  504. package/src/visually-hidden/index.ts +1 -0
  505. package/src/visually-hidden/visually-hidden.ts +39 -0
  506. package/src/window/window-position.ts +1 -74
  507. package/types/mixins/formField.mixin.d.ts +15 -8
  508. package/types/src/audio/emotional-sounds.d.ts +0 -2
  509. package/types/src/autocomplete/autocomplete.d.ts +7 -0
  510. package/types/src/breadcrumb/breadcrumb.d.ts +38 -0
  511. package/types/src/breadcrumb/index.d.ts +1 -0
  512. package/types/src/button/button.d.ts +7 -0
  513. package/types/src/button/icon-button.d.ts +2 -1
  514. package/types/src/checkbox/checkbox.d.ts +6 -0
  515. package/types/src/checkbox/checkbox.test.d.ts +1 -0
  516. package/types/src/chips/filter-chip.d.ts +3 -0
  517. package/types/src/chips/input-chip.d.ts +1 -0
  518. package/types/src/date-range/date-range-helpers.d.ts +0 -12
  519. package/types/src/dialog/dialog.component.d.ts +6 -0
  520. package/types/src/dropdown/dropdown-content.d.ts +3 -1
  521. package/types/src/form/form-v2.d.ts +12 -63
  522. package/types/src/form/form.d.ts +58 -40
  523. package/types/src/form/form.test.d.ts +4 -0
  524. package/types/src/form/index.d.ts +1 -1
  525. package/types/src/icons/icon.d.ts +1 -0
  526. package/types/src/index.d.ts +6 -0
  527. package/types/src/kbd/index.d.ts +1 -0
  528. package/types/src/kbd/kbd.d.ts +25 -0
  529. package/types/src/skeleton/index.d.ts +1 -0
  530. package/types/src/skeleton/skeleton.d.ts +27 -0
  531. package/types/src/splash-screen/index.d.ts +1 -0
  532. package/types/src/splash-screen/splash-screen.d.ts +60 -0
  533. package/types/src/switch/index.d.ts +1 -0
  534. package/types/src/switch/switch.d.ts +54 -0
  535. package/types/src/switch/switch.test.d.ts +1 -0
  536. package/types/src/test-utils/a11y.d.ts +11 -0
  537. package/types/src/textarea/textarea.d.ts +5 -1
  538. package/types/src/tooltip/index.d.ts +0 -1
  539. package/types/src/tree/tree.d.ts +5 -0
  540. package/types/src/visually-hidden/index.d.ts +1 -0
  541. package/types/src/visually-hidden/visually-hidden.d.ts +21 -0
  542. package/types/src/window/window-position.d.ts +1 -35
  543. package/dist/audio-DtYYgzYD.cjs.map +0 -1
  544. package/dist/audio-kz8UgPTO.js.map +0 -1
  545. package/dist/autocomplete-5rVhbieU.cjs +0 -111
  546. package/dist/autocomplete-5rVhbieU.cjs.map +0 -1
  547. package/dist/autocomplete-BllPQwr8.js.map +0 -1
  548. package/dist/chips-B19XS8Xc.cjs.map +0 -1
  549. package/dist/chips-B9oAEfE_.js.map +0 -1
  550. package/dist/components-CyD6a7gQ.cjs +0 -73
  551. package/dist/date-range-Sfyco9-n.js.map +0 -1
  552. package/dist/date-range-ZAaQB22I.cjs.map +0 -1
  553. package/dist/date-range-inline-m7nLjOMI.cjs +0 -43
  554. package/dist/delay-7boauN6N.cjs +0 -9
  555. package/dist/float-D5rNC82i.cjs +0 -1
  556. package/dist/form-BqN1AGFj.cjs +0 -1
  557. package/dist/form-BqN1AGFj.cjs.map +0 -1
  558. package/dist/form-CajC5HnO.js +0 -270
  559. package/dist/form-CajC5HnO.js.map +0 -1
  560. package/dist/icons-B57_93VV.cjs.map +0 -1
  561. package/dist/icons-BDqiGXrO.js.map +0 -1
  562. package/dist/input-chip-Dy-AiP55.cjs.map +0 -1
  563. package/dist/input-chip-QejNcRnS.js.map +0 -1
  564. package/dist/layout-DNYG3phx.cjs +0 -17
  565. package/dist/notification-CZFEhWxc.cjs +0 -23
  566. package/dist/radio-group-Cspwd-Vw.cjs +0 -40
  567. package/dist/src-BtQVyqMy.cjs +0 -269
  568. package/dist/surface-BjKZoJxK.cjs +0 -7
  569. package/dist/surface-pK8hME5c.js +0 -21
  570. package/dist/tailwind.mixin-BCJOOX1_.js.map +0 -1
  571. package/dist/tailwind.mixin-BF1Huas7.cjs.map +0 -1
  572. package/dist/textarea-Cp1ZE60O.cjs +0 -35
  573. package/dist/textarea-Cp1ZE60O.cjs.map +0 -1
  574. package/dist/textarea-D7q8exMg.js.map +0 -1
  575. package/dist/theme-Da4SPq9X.cjs +0 -181
  576. package/dist/theme-button-Ci8VQ7KW.cjs +0 -8
  577. package/dist/typewriter-B2TnHPjw.cjs +0 -123
  578. package/dist/window-CM1ycigo.js.map +0 -1
  579. package/dist/window-Uii13x_r.cjs.map +0 -1
  580. package/src/form/form-v2.ts +0 -268
  581. package/src/layout/v2/grid.ts +0 -93
  582. package/src/notification/outlet.ts +0 -16
  583. package/src/store/immer-integration.ts +0 -99
  584. package/src/tooltip/tooltip.ts +0 -216
  585. /package/dist/{animation-CO_Csq84.cjs → animation-Bcwh107v.cjs} +0 -0
  586. /package/dist/{animation-BK-8BwY8.js → animation-CXKSuUoE.js} +0 -0
  587. /package/dist/{tslib.es6-ErZEp3OO.js → decorate-D_utPUsC.js} +0 -0
  588. /package/dist/{tslib.es6-D7BIeDVB.cjs → decorate-F9CuyeHg.cjs} +0 -0
  589. /package/dist/{flow-CUj0fDT_.js → flow-CqgDEIqK.js} +0 -0
  590. /package/dist/{flow-Bbwn6dRN.cjs → flow-DSu4PLt1.cjs} +0 -0
  591. /package/dist/{hashContent-DaeGmY-p.cjs → hashContent-kKvXKFa9.cjs} +0 -0
  592. /package/dist/{hashContent-DYM21p6t.js → hashContent-nD2uWwi2.js} +0 -0
  593. /package/dist/{intersection-CZpaIHeT.cjs → intersection-D1v1UCVv.cjs} +0 -0
  594. /package/dist/{intersection-BPLpqYEd.js → intersection-LfEsy29T.js} +0 -0
  595. /package/dist/{overlay-stack-DQey9Qph.cjs → overlay-stack-CEYGD9T1.cjs} +0 -0
  596. /package/dist/{overlay-stack-DT1SdaGW.js → overlay-stack-Ca4EK2Mu.js} +0 -0
  597. /package/dist/{reduced-motion-D-L12p7G.js → reduced-motion-B83yZbcO.js} +0 -0
  598. /package/dist/{reduced-motion-Ds05GPyz.cjs → reduced-motion-DR32yKEO.cjs} +0 -0
  599. /package/dist/{rxjs-utils-BSjmI9-Q.js → rxjs-utils-Bldch1RO.js} +0 -0
  600. /package/dist/{rxjs-utils-DCsfzeap.cjs → rxjs-utils-hAgKC7vk.cjs} +0 -0
  601. /package/dist/{search-C4dFHYbX.js → search-BlGJ6uJv.js} +0 -0
  602. /package/dist/{search-Ds8tt7Et.cjs → search-C8eAOzBm.cjs} +0 -0
  603. /package/dist/{store-DYqDLAvT.js → store-Bmj6rvZY.js} +0 -0
  604. /package/dist/{store-CorvD3bT.cjs → store-CO4nJyGj.cjs} +0 -0
  605. /package/dist/{theme.events-Cv7N4Toe.js → theme.events-Bw3mYjUA.js} +0 -0
  606. /package/dist/{theme.events-DM4H5F2d.cjs → theme.events-EznKK2Y0.cjs} +0 -0
  607. /package/dist/{theme.interface-Da23QAYb.cjs → theme.interface-CM26m9te.cjs} +0 -0
  608. /package/dist/{theme.interface-CXloMUCw.js → theme.interface-FAUIgbIq.js} +0 -0
@@ -0,0 +1,93 @@
1
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest'
2
+ import { expectNoA11yViolations } from '../test-utils/a11y'
3
+ import './switch'
4
+
5
+ describe('schmancy-switch', () => {
6
+ let host: HTMLDivElement
7
+
8
+ beforeEach(() => {
9
+ host = document.createElement('div')
10
+ document.body.appendChild(host)
11
+ })
12
+
13
+ afterEach(() => {
14
+ host.remove()
15
+ })
16
+
17
+ const nextUpdate = () => new Promise(r => requestAnimationFrame(() => r(null)))
18
+
19
+ it('is form-associated and contributes when checked', async () => {
20
+ host.innerHTML = `
21
+ <form>
22
+ <schmancy-switch name="notify" value="yes"></schmancy-switch>
23
+ </form>
24
+ `
25
+ const form = host.querySelector('form') as HTMLFormElement
26
+ const sw = host.querySelector('schmancy-switch') as HTMLElement & { checked: boolean }
27
+ sw.checked = true
28
+ await nextUpdate()
29
+ await nextUpdate()
30
+ expect(new FormData(form).get('notify')).toBe('yes')
31
+ })
32
+
33
+ it('omits from FormData when unchecked', async () => {
34
+ host.innerHTML = `<form><schmancy-switch name="notify"></schmancy-switch></form>`
35
+ const form = host.querySelector('form') as HTMLFormElement
36
+ await nextUpdate()
37
+ expect(new FormData(form).get('notify')).toBeNull()
38
+ })
39
+
40
+ it('fires change on toggle and broadcasts :state(checked)', async () => {
41
+ host.innerHTML = `<schmancy-switch></schmancy-switch>`
42
+ const sw = host.querySelector('schmancy-switch') as HTMLElement & {
43
+ checked: boolean
44
+ updateComplete: Promise<boolean>
45
+ }
46
+ await sw.updateComplete
47
+ let detail: { value: boolean } | undefined
48
+ sw.addEventListener('change', (e: Event) => {
49
+ detail = (e as CustomEvent).detail
50
+ })
51
+ const btn = sw.shadowRoot!.querySelector('button') as HTMLButtonElement
52
+ btn.click()
53
+ await nextUpdate()
54
+ await nextUpdate()
55
+ expect(detail).toEqual({ value: true })
56
+ expect(sw.matches(':state(checked)')).toBe(true)
57
+ })
58
+
59
+ it('exposes role="switch" with aria-checked', async () => {
60
+ host.innerHTML = `<schmancy-switch></schmancy-switch>`
61
+ const sw = host.querySelector('schmancy-switch') as HTMLElement & {
62
+ updateComplete: Promise<boolean>
63
+ }
64
+ await sw.updateComplete
65
+ const btn = sw.shadowRoot!.querySelector('button') as HTMLButtonElement
66
+ expect(btn.getAttribute('role')).toBe('switch')
67
+ expect(btn.getAttribute('aria-checked')).toBe('false')
68
+ })
69
+
70
+ it('has no axe-core a11y violations', async () => {
71
+ host.innerHTML = `<schmancy-switch label="Notifications"></schmancy-switch>`
72
+ const sw = host.querySelector('schmancy-switch') as HTMLElement & {
73
+ updateComplete: Promise<boolean>
74
+ }
75
+ await sw.updateComplete
76
+ await expectNoA11yViolations(host)
77
+ })
78
+
79
+ it('fails validation when required and unchecked', async () => {
80
+ host.innerHTML = `<form><schmancy-switch name="agree" required></schmancy-switch></form>`
81
+ const form = host.querySelector('form') as HTMLFormElement
82
+ const sw = host.querySelector('schmancy-switch') as HTMLElement & {
83
+ checked: boolean
84
+ checkValidity(): boolean
85
+ }
86
+ await nextUpdate()
87
+ expect(form.checkValidity()).toBe(false)
88
+ sw.checked = true
89
+ await nextUpdate()
90
+ await nextUpdate()
91
+ expect(form.checkValidity()).toBe(true)
92
+ })
93
+ })
@@ -0,0 +1,180 @@
1
+ import { TailwindElement } from '@mixins/index'
2
+ import { css, html, LitElement, nothing } from 'lit'
3
+ import { customElement, property } from 'lit/decorators.js'
4
+
5
+ export type SchmancySwitchChangeEvent = CustomEvent<{ value: boolean }>
6
+
7
+ /**
8
+ * Binary on/off control. Form-associated, keyboard-accessible, semantically a
9
+ * switch (ARIA role="switch"). Distinct from `schmancy-checkbox`: a switch
10
+ * represents an immediate state change, a checkbox represents a selection in
11
+ * a form to be submitted.
12
+ *
13
+ * @element schmancy-switch
14
+ * @fires change - `CustomEvent<{ value: boolean }>` when the state changes.
15
+ * @attr checked - Initial checked state (also reflected via `value`).
16
+ * @attr disabled - Disables interaction.
17
+ * @attr required - Requires the switch to be on for form validity.
18
+ * @attr name - Form field name for submission.
19
+ * @csspart track - The background track.
20
+ * @csspart thumb - The moving thumb.
21
+ */
22
+ @customElement('schmancy-switch')
23
+ export class SchmancySwitch extends TailwindElement(css`
24
+ :host {
25
+ display: inline-block;
26
+ }
27
+ :host([disabled]) {
28
+ opacity: 0.38;
29
+ pointer-events: none;
30
+ }
31
+ button {
32
+ appearance: none;
33
+ background: none;
34
+ border: 0;
35
+ padding: 0;
36
+ cursor: pointer;
37
+ font: inherit;
38
+ }
39
+ .track {
40
+ width: 2.25rem;
41
+ height: 1.25rem;
42
+ border-radius: 999px;
43
+ background: var(--schmancy-sys-color-surface-containerHighest, #e0e0e0);
44
+ border: 1px solid var(--schmancy-sys-color-outline, #79747e);
45
+ position: relative;
46
+ transition: background 150ms ease, border-color 150ms ease;
47
+ }
48
+ :host(:state(checked)) .track {
49
+ background: var(--schmancy-sys-color-primary-default, #6750a4);
50
+ border-color: var(--schmancy-sys-color-primary-default, #6750a4);
51
+ }
52
+ .thumb {
53
+ position: absolute;
54
+ top: 50%;
55
+ left: 0.125rem;
56
+ width: 0.75rem;
57
+ height: 0.75rem;
58
+ border-radius: 999px;
59
+ background: var(--schmancy-sys-color-outline, #79747e);
60
+ transform: translateY(-50%);
61
+ transition: transform 150ms ease, background 150ms ease, width 150ms ease, height 150ms ease;
62
+ }
63
+ :host(:state(checked)) .thumb {
64
+ transform: translate(1rem, -50%);
65
+ width: 1rem;
66
+ height: 1rem;
67
+ background: var(--schmancy-sys-color-primary-on, #ffffff);
68
+ }
69
+ button:focus-visible .track {
70
+ outline: 2px solid var(--schmancy-sys-color-primary-default, #6750a4);
71
+ outline-offset: 2px;
72
+ }
73
+ @media (prefers-reduced-motion: reduce) {
74
+ .track, .thumb { transition: none; }
75
+ }
76
+ `) {
77
+ static formAssociated = true
78
+ private internals: ElementInternals | undefined
79
+
80
+ @property({ type: Boolean, reflect: true }) checked = false
81
+ @property({ type: Boolean, reflect: true }) disabled = false
82
+ @property({ type: Boolean, reflect: true }) required = false
83
+ @property({ type: String }) name = ''
84
+ @property({ type: String }) value = 'on'
85
+ @property({ type: String }) label = ''
86
+
87
+ protected static shadowRootOptions = {
88
+ ...LitElement.shadowRootOptions,
89
+ delegatesFocus: true,
90
+ }
91
+
92
+ constructor() {
93
+ super()
94
+ try {
95
+ this.internals = this.attachInternals()
96
+ } catch {
97
+ this.internals = undefined
98
+ }
99
+ }
100
+
101
+ get form(): HTMLFormElement | null {
102
+ return this.internals?.form ?? null
103
+ }
104
+
105
+ protected updated(changed: Map<string, unknown>) {
106
+ super.updated?.(changed)
107
+ if (changed.has('checked') || changed.has('value') || changed.has('name')) {
108
+ this.internals?.setFormValue(this.checked ? this.value : null)
109
+ if (this.checked) this.internals?.states.add('checked')
110
+ else this.internals?.states.delete('checked')
111
+ }
112
+ if (changed.has('required') || changed.has('checked')) {
113
+ if (this.required && !this.checked) {
114
+ this.internals?.setValidity({ valueMissing: true }, 'This switch is required.')
115
+ } else {
116
+ this.internals?.setValidity({})
117
+ }
118
+ }
119
+ }
120
+
121
+ formResetCallback() {
122
+ this.checked = this.hasAttribute('checked')
123
+ }
124
+
125
+ formDisabledCallback(disabled: boolean) {
126
+ this.disabled = disabled
127
+ }
128
+
129
+ public checkValidity(): boolean {
130
+ return this.internals?.checkValidity() ?? true
131
+ }
132
+
133
+ public reportValidity(): boolean {
134
+ return this.internals?.reportValidity() ?? true
135
+ }
136
+
137
+ private _toggle = () => {
138
+ if (this.disabled) return
139
+ this.checked = !this.checked
140
+ this.dispatchEvent(
141
+ new CustomEvent('change', {
142
+ detail: { value: this.checked },
143
+ bubbles: true,
144
+ composed: true,
145
+ }),
146
+ )
147
+ }
148
+
149
+ private _onKeydown = (e: KeyboardEvent) => {
150
+ if (e.key === ' ' || e.key === 'Enter') {
151
+ e.preventDefault()
152
+ this._toggle()
153
+ }
154
+ }
155
+
156
+ render() {
157
+ return html`
158
+ <button
159
+ type="button"
160
+ role="switch"
161
+ aria-checked=${this.checked ? 'true' : 'false'}
162
+ aria-label=${this.label || nothing}
163
+ aria-required=${this.required ? 'true' : 'false'}
164
+ ?disabled=${this.disabled}
165
+ @click=${this._toggle}
166
+ @keydown=${this._onKeydown}
167
+ >
168
+ <span part="track" class="track">
169
+ <span part="thumb" class="thumb"></span>
170
+ </span>
171
+ </button>
172
+ `
173
+ }
174
+ }
175
+
176
+ declare global {
177
+ interface HTMLElementTagNameMap {
178
+ 'schmancy-switch': SchmancySwitch
179
+ }
180
+ }
@@ -0,0 +1,35 @@
1
+ import axe, { type ElementContext, type RunOptions, type Result } from 'axe-core'
2
+ import { expect } from 'vitest'
3
+
4
+ /**
5
+ * Run axe-core on the given element (or document) and assert no violations.
6
+ * Throws a readable failure with a summary of violations so test output is
7
+ * immediately actionable.
8
+ *
9
+ * Keep the axe rule set minimal and appropriate for component tests — the
10
+ * defaults include many rules that only make sense at the page level (e.g.
11
+ * `region`, `landmark-one-main`). Override via `options.rules` when needed.
12
+ */
13
+ export async function expectNoA11yViolations(
14
+ context: ElementContext = document.body,
15
+ options: RunOptions = {
16
+ // Exclude page-level rules that don't apply to a component-in-isolation.
17
+ rules: {
18
+ region: { enabled: false },
19
+ 'landmark-one-main': { enabled: false },
20
+ 'page-has-heading-one': { enabled: false },
21
+ 'html-has-lang': { enabled: false },
22
+ 'document-title': { enabled: false },
23
+ bypass: { enabled: false },
24
+ },
25
+ },
26
+ ): Promise<Result[]> {
27
+ const results = await axe.run(context, options)
28
+ if (results.violations.length > 0) {
29
+ const summary = results.violations
30
+ .map(v => ` • ${v.id} (${v.impact}): ${v.help}\n ${v.helpUrl}`)
31
+ .join('\n')
32
+ expect.fail(`axe-core found ${results.violations.length} a11y violation(s):\n${summary}`)
33
+ }
34
+ return results.violations
35
+ }
@@ -1,4 +1,4 @@
1
- import { LitElement, html } from 'lit'
1
+ import { LitElement, html, nothing, type PropertyValues } from 'lit'
2
2
  import { customElement, property, query } from 'lit/decorators.js'
3
3
  import { ifDefined } from 'lit/directives/if-defined.js'
4
4
  import { createRef, ref } from 'lit/directives/ref.js'
@@ -30,6 +30,8 @@ export default class SchmancyTextarea extends TailwindElement(style) {
30
30
  internals: ElementInternals | undefined
31
31
  textareaRef = createRef<HTMLTextAreaElement>()
32
32
 
33
+ private readonly _a11yId = `schmancy-textarea-${Math.random().toString(36).slice(2, 10)}`
34
+
33
35
  /**
34
36
  * The label of the control.
35
37
  * @attr
@@ -179,6 +181,29 @@ export default class SchmancyTextarea extends TailwindElement(style) {
179
181
  }
180
182
  }
181
183
 
184
+ protected willUpdate(changed: PropertyValues): void {
185
+ super.willUpdate?.(changed)
186
+ if (changed.has('value') || changed.has('name')) {
187
+ this.internals?.setFormValue(this.value ?? '')
188
+ }
189
+ if (changed.has('required') || changed.has('value')) {
190
+ if (this.required && !this.value) {
191
+ this.internals?.setValidity({ valueMissing: true }, 'Please fill out this field.')
192
+ } else {
193
+ this.internals?.setValidity({})
194
+ }
195
+ }
196
+ }
197
+
198
+ formResetCallback(): void {
199
+ this.value = this.getAttribute('value') ?? ''
200
+ this.error = false
201
+ }
202
+
203
+ formDisabledCallback(disabled: boolean): void {
204
+ this.disabled = disabled
205
+ }
206
+
182
207
  firstUpdated() {
183
208
  if (this.autofocus) {
184
209
  this.focus()
@@ -375,6 +400,7 @@ export default class SchmancyTextarea extends TailwindElement(style) {
375
400
  'w-full min-w-0': true,
376
401
  'flex flex-col h-full': this.fillHeight,
377
402
  }
403
+ const hintId = `${this._a11yId}-hint`
378
404
  return html`
379
405
  <div class="${this.classMap(containerClasses)}">
380
406
  ${when(
@@ -404,12 +430,16 @@ export default class SchmancyTextarea extends TailwindElement(style) {
404
430
  rows=${ifDefined(this.rows)}
405
431
  wrap=${ifDefined(this.wrap)}
406
432
  dirname=${ifDefined(this.dirname)}
433
+ aria-invalid=${this.error ? 'true' : 'false'}
434
+ aria-required=${this.required ? 'true' : 'false'}
435
+ aria-describedby=${this.hint ? hintId : nothing}
436
+ aria-label=${!this.label && this.placeholder ? this.placeholder : nothing}
407
437
  ></textarea>
408
438
 
409
439
  ${when(
410
440
  this.hint,
411
441
  () => html`
412
- <div class="mt-1 text-sm ${this.error ? 'text-error-default' : 'text-surface-onVariant'}">
442
+ <div id=${hintId} class="mt-1 text-sm ${this.error ? 'text-error-default' : 'text-surface-onVariant'}">
413
443
  ${this.hint}
414
444
  </div>
415
445
  `,
@@ -1,2 +1 @@
1
- export * from './tooltip.directive';
2
- export * from './tooltip';
1
+ export * from './tooltip.directive'
package/src/tree/tree.ts CHANGED
@@ -34,6 +34,22 @@ export class SchmancyTree extends TailwindElement(css`
34
34
  // Since it's actually a <schmancy-button>, use HTMLElement or a custom type
35
35
  @query('#chevron') chevron!: HTMLElement
36
36
 
37
+ private readonly _a11yId = `schmancy-tree-${Math.random().toString(36).slice(2, 10)}`
38
+ private get _contentId() { return `${this._a11yId}-content` }
39
+
40
+ /** ElementInternals — broadcasts `:state(open)` for consumer CSS. */
41
+ private readonly _internals: ElementInternals | undefined = (() => {
42
+ try { return this.attachInternals() } catch { return undefined }
43
+ })()
44
+
45
+ updated(changed: Map<string, unknown>) {
46
+ super.updated?.(changed)
47
+ if (changed.has('open')) {
48
+ if (this.open) this._internals?.states.add('open')
49
+ else this._internals?.states.delete('open')
50
+ }
51
+ }
52
+
37
53
  firstUpdated() {
38
54
  // Hide or show the slot initially based on `open`
39
55
  if (!this.open) {
@@ -116,11 +132,20 @@ export class SchmancyTree extends TailwindElement(css`
116
132
 
117
133
  <!-- The chevron or arrow symbol -->
118
134
  <!-- Stop propagation on the schmancy-button itself just to avoid double triggers -->
119
- <schmancy-button slot="trailing" id="chevron" @click=${(e: Event) => e.stopPropagation()}> ⌅ </schmancy-button>
135
+ <schmancy-button
136
+ slot="trailing"
137
+ id="chevron"
138
+ aria-expanded=${this.open ? 'true' : 'false'}
139
+ aria-controls=${this._contentId}
140
+ aria-label=${this.open ? 'Collapse' : 'Expand'}
141
+ @click=${(e: Event) => e.stopPropagation()}
142
+ >
143
+
144
+ </schmancy-button>
120
145
  </div>
121
146
 
122
147
  <!-- The default slot: tree children -->
123
- <slot></slot>
148
+ <slot id=${this._contentId}></slot>
124
149
  `
125
150
  }
126
151
  }
@@ -0,0 +1 @@
1
+ export * from './visually-hidden'
@@ -0,0 +1,39 @@
1
+ import { TailwindElement } from '@mixins/index'
2
+ import { css, html } from 'lit'
3
+ import { customElement } from 'lit/decorators.js'
4
+
5
+ /**
6
+ * Hides content visually while keeping it in the accessibility tree. Use for
7
+ * screen-reader-only labels, supplemental descriptions, and live-region text
8
+ * that sighted users don't need to see.
9
+ *
10
+ * Uses the WCAG-recommended clip pattern rather than `display: none` or
11
+ * `visibility: hidden` so assistive tech still reads the content.
12
+ *
13
+ * @element schmancy-visually-hidden
14
+ * @slot - Content hidden from sighted users but exposed to assistive tech.
15
+ */
16
+ @customElement('schmancy-visually-hidden')
17
+ export class SchmancyVisuallyHidden extends TailwindElement(css`
18
+ :host {
19
+ position: absolute;
20
+ width: 1px;
21
+ height: 1px;
22
+ padding: 0;
23
+ margin: -1px;
24
+ overflow: hidden;
25
+ clip: rect(0, 0, 0, 0);
26
+ white-space: nowrap;
27
+ border-width: 0;
28
+ }
29
+ `) {
30
+ render() {
31
+ return html`<slot></slot>`
32
+ }
33
+ }
34
+
35
+ declare global {
36
+ interface HTMLElementTagNameMap {
37
+ 'schmancy-visually-hidden': SchmancyVisuallyHidden
38
+ }
39
+ }
@@ -11,10 +11,9 @@
11
11
  * // → { left: 144, top: 444, width: 360, height: 500 } (cascaded away from conflict)
12
12
  */
13
13
 
14
- import type { WindowBounds, WindowRecord, SnapCorner } from './window-registry.js'
14
+ import type { WindowBounds, WindowRecord } from './window-registry.js'
15
15
 
16
16
  const HEAD_HEIGHT = 44
17
- const EDGE_GAP = 16
18
17
  const CASCADE_OFFSET = HEAD_HEIGHT
19
18
  const MAX_CASCADE_ATTEMPTS = 10
20
19
 
@@ -48,41 +47,6 @@ export function resolveOverlap(
48
47
  return clampToViewport(bounds, viewport)
49
48
  }
50
49
 
51
- /**
52
- * Snap window bounds to a corner with standard edge gap.
53
- */
54
- export function snapToCorner(
55
- bounds: WindowBounds,
56
- corner: SnapCorner,
57
- viewport: { width: number; height: number },
58
- bottomOffset: number,
59
- ): WindowBounds {
60
- const isRight = corner.includes('right')
61
- const isBottom = corner.includes('bottom')
62
-
63
- return {
64
- width: bounds.width,
65
- height: bounds.height,
66
- left: isRight ? viewport.width - bounds.width - EDGE_GAP : EDGE_GAP,
67
- top: isBottom ? viewport.height - bounds.height - EDGE_GAP - bottomOffset : EDGE_GAP,
68
- }
69
- }
70
-
71
- /**
72
- * Place a window flush beside a neighbor.
73
- */
74
- export function snapToNeighbor(
75
- bounds: WindowBounds,
76
- neighbor: WindowBounds,
77
- side: 'left' | 'right',
78
- ): WindowBounds {
79
- return {
80
- ...bounds,
81
- left: side === 'right' ? neighbor.left + neighbor.width + EDGE_GAP : neighbor.left - bounds.width - EDGE_GAP,
82
- top: neighbor.top,
83
- }
84
- }
85
-
86
50
  /**
87
51
  * Clamp bounds so the window stays fully within the viewport.
88
52
  */
@@ -97,40 +61,3 @@ export function clampToViewport(
97
61
  top: Math.max(0, Math.min(bounds.top, viewport.height - bounds.height)),
98
62
  }
99
63
  }
100
-
101
- /**
102
- * Convert corner-relative offset (used by the old float) to absolute viewport bounds.
103
- */
104
- export function cornerOffsetToAbsolute(
105
- corner: SnapCorner,
106
- offset: { x: number; y: number },
107
- size: { width: number; height: number },
108
- viewport: { width: number; height: number },
109
- bottomOffset: number,
110
- ): WindowBounds {
111
- const isRight = corner.includes('right')
112
- const isBottom = corner.includes('bottom')
113
- return {
114
- width: size.width,
115
- height: size.height,
116
- left: isRight ? viewport.width - offset.x - size.width : offset.x,
117
- top: isBottom ? viewport.height - offset.y - size.height - bottomOffset : offset.y,
118
- }
119
- }
120
-
121
- /**
122
- * Convert absolute viewport bounds back to corner-relative offset.
123
- */
124
- export function absoluteToCornerOffset(
125
- corner: SnapCorner,
126
- bounds: WindowBounds,
127
- viewport: { width: number; height: number },
128
- bottomOffset: number,
129
- ): { x: number; y: number } {
130
- const isRight = corner.includes('right')
131
- const isBottom = corner.includes('bottom')
132
- return {
133
- x: isRight ? viewport.width - bounds.left - bounds.width : bounds.left,
134
- y: isBottom ? viewport.height - bounds.top - bounds.height - bottomOffset : bounds.top,
135
- }
136
- }
@@ -2,6 +2,12 @@ import { CSSResult, LitElement } from 'lit';
2
2
  import { IBaseMixin } from './baseElement';
3
3
  import { Constructor } from './constructor';
4
4
  import { ITailwindElementMixin } from './tailwind.mixin';
5
+ /**
6
+ * Cross-realm brand used by `<schmancy-form>` to discover form fields by
7
+ * inheritance rather than tag-name allowlists. `Symbol.for` puts the symbol in
8
+ * the global registry so detection works across module realms/bundles.
9
+ */
10
+ export declare const SCHMANCY_FORM_FIELD: unique symbol;
5
11
  /**
6
12
  * Interface defining the properties and methods that the FormFieldMixin adds.
7
13
  */
@@ -20,11 +26,19 @@ export interface IFormFieldMixin extends Element {
20
26
  checkValidity(): boolean;
21
27
  reportValidity(): boolean;
22
28
  setCustomValidity(message: string): void;
29
+ toFormEntries(): Array<[string, FormDataEntryValue]>;
30
+ resetForm(): void;
23
31
  emitChange(detail: any): void;
24
32
  }
33
+ /** Predicate used by `<schmancy-form>` to detect mixin descendants. */
34
+ export declare function isSchmancyFormField(el: unknown): el is IFormFieldMixin;
25
35
  /**
26
36
  * A mixin that adds form field capabilities to a LitElement class.
27
- * This provides common form field properties, validation, and form association.
37
+ * Components that extend this mixin are automatically discovered and
38
+ * collected by `<schmancy-form>` — no tag-name registration needed.
39
+ *
40
+ * Subclasses may override `toFormEntries()` to contribute multiple
41
+ * name/value pairs to FormData (e.g. date-range, tag-input).
28
42
  *
29
43
  * @example
30
44
  * ```ts
@@ -37,12 +51,5 @@ export declare function FormFieldMixin<T extends Constructor<LitElement>>(superC
37
51
  /**
38
52
  * A convenience function that composes FormFieldMixin with TailwindElement
39
53
  * to create a base class for Schmancy form components.
40
- *
41
- * @example
42
- * ```ts
43
- * class MyInput extends SchmancyFormField(css`...`) {
44
- * // Your component code here
45
- * }
46
- * ```
47
54
  */
48
55
  export declare function SchmancyFormField<T extends CSSResult>(componentStyle?: T): Constructor<IFormFieldMixin> & Constructor<ITailwindElementMixin> & Constructor<LitElement> & Constructor<IBaseMixin>;
@@ -41,8 +41,6 @@ export type ConnectedFeeling = 'connected' | 'accepted' | 'included' | 'belongin
41
41
  export type MixedFeeling = 'conflicted' | 'confused' | 'ambivalent' | 'nostalgic' | 'guilty' | 'embarrassed' | 'surprised' | 'shocked' | 'awestruck' | 'skeptical';
42
42
  /** All feelings */
43
43
  export type Feeling = HappyFeeling | SadFeeling | AnxiousFeeling | AngryFeeling | TiredFeeling | CalmFeeling | ConnectedFeeling | MixedFeeling;
44
- /** Feeling category */
45
- export type FeelingCategory = 'happy' | 'sad' | 'anxious' | 'angry' | 'tired' | 'calm' | 'connected' | 'mixed';
46
44
  /**
47
45
  * Emotional Sound Generator
48
46
  * Creates soft, beautiful sounds using Web Audio API
@@ -17,6 +17,12 @@ declare const SchmancyAutocomplete_base: CustomElementConstructor & import("@mix
17
17
  * @prop {string[]} values - Selected values (multi-select mode)
18
18
  */
19
19
  export default class SchmancyAutocomplete extends SchmancyAutocomplete_base {
20
+ static formAssociated: boolean;
21
+ internals: ElementInternals | undefined;
22
+ constructor();
23
+ get form(): HTMLFormElement | null;
24
+ formResetCallback(): void;
25
+ formDisabledCallback(disabled: boolean): void;
20
26
  _valueSet: boolean;
21
27
  _valuesSet: boolean;
22
28
  required: boolean;
@@ -32,6 +38,7 @@ export default class SchmancyAutocomplete extends SchmancyAutocomplete_base {
32
38
  similarityThreshold: number;
33
39
  error: boolean;
34
40
  validationMessage: string;
41
+ private readonly _a11yId;
35
42
  get values(): string[];
36
43
  set values(vals: string[]);
37
44
  get value(): string;
@@ -0,0 +1,38 @@
1
+ declare const SchmancyBreadcrumb_base: import("@mixins/index").Constructor<CustomElementConstructor> & import("@mixins/index").Constructor<import("@mixins/index").ITailwindElementMixin> & import("@mixins/index").Constructor<import("lit").LitElement> & import("@mixins/index").Constructor<import("@mixins/index").IBaseMixin>;
2
+ /**
3
+ * Breadcrumb navigation container. Wraps a list of `schmancy-breadcrumb-item`
4
+ * elements with the correct ARIA landmark and semantics.
5
+ *
6
+ * @element schmancy-breadcrumb
7
+ * @slot - Default slot for `<schmancy-breadcrumb-item>` children.
8
+ * @attr separator - Character or string rendered between items. Default `/`.
9
+ * @csspart separator - The separator element.
10
+ */
11
+ export declare class SchmancyBreadcrumb extends SchmancyBreadcrumb_base {
12
+ separator: string;
13
+ connectedCallback(): void;
14
+ render(): import("lit-html").TemplateResult<1>;
15
+ private _insertSeparators;
16
+ }
17
+ declare const SchmancyBreadcrumbItem_base: import("@mixins/index").Constructor<CustomElementConstructor> & import("@mixins/index").Constructor<import("@mixins/index").ITailwindElementMixin> & import("@mixins/index").Constructor<import("lit").LitElement> & import("@mixins/index").Constructor<import("@mixins/index").IBaseMixin>;
18
+ /**
19
+ * Individual breadcrumb item. Renders as a link when `href` is provided,
20
+ * otherwise as a plain span (represents the current page).
21
+ *
22
+ * @element schmancy-breadcrumb-item
23
+ * @slot - Label content.
24
+ * @attr href - If set, renders as an anchor.
25
+ * @attr current - Marks as `aria-current="page"`.
26
+ */
27
+ export declare class SchmancyBreadcrumbItem extends SchmancyBreadcrumbItem_base {
28
+ href: string;
29
+ current: boolean;
30
+ render(): import("lit-html").TemplateResult<1>;
31
+ }
32
+ declare global {
33
+ interface HTMLElementTagNameMap {
34
+ 'schmancy-breadcrumb': SchmancyBreadcrumb;
35
+ 'schmancy-breadcrumb-item': SchmancyBreadcrumbItem;
36
+ }
37
+ }
38
+ export {};
@@ -0,0 +1 @@
1
+ export * from './breadcrumb';