@mhmo91/schmancy 0.10.34 → 0.10.36

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 (414) hide show
  1. package/custom-elements.json +1144 -1101
  2. package/dist/SchmancyElement-BBzRWB1w.cjs +2 -0
  3. package/dist/SchmancyElement-BBzRWB1w.cjs.map +1 -0
  4. package/dist/SchmancyElement-C3CpdNsi.js +284 -0
  5. package/dist/SchmancyElement-C3CpdNsi.js.map +1 -0
  6. package/dist/agent/schmancy.agent.js +3414 -3263
  7. package/dist/agent/schmancy.agent.js.map +1 -1
  8. package/dist/agent/schmancy.manifest.json +335 -276
  9. package/dist/{area-DviXdbDx.js → area-BA96mwFY.js} +2 -2
  10. package/dist/{area-DviXdbDx.js.map → area-BA96mwFY.js.map} +1 -1
  11. package/dist/{area-CTSTgjlx.cjs → area-DtyQDdOF.cjs} +1 -1
  12. package/dist/{area-CTSTgjlx.cjs.map → area-DtyQDdOF.cjs.map} +1 -1
  13. package/dist/area.cjs +1 -1
  14. package/dist/area.js +1 -1
  15. package/dist/{audio-Q9oB_cQR.cjs → audio-B_jT9Xr7.cjs} +1 -1
  16. package/dist/{audio-Q9oB_cQR.cjs.map → audio-B_jT9Xr7.cjs.map} +1 -1
  17. package/dist/{audio-DFYoaw0M.js → audio-D52h1jAT.js} +1 -1
  18. package/dist/{audio-DFYoaw0M.js.map → audio-D52h1jAT.js.map} +1 -1
  19. package/dist/audio.cjs +1 -1
  20. package/dist/audio.js +2 -2
  21. package/dist/{autocomplete-DmLXJr7C.cjs → autocomplete-Bts5Jwwr.cjs} +1 -1
  22. package/dist/{autocomplete-DmLXJr7C.cjs.map → autocomplete-Bts5Jwwr.cjs.map} +1 -1
  23. package/dist/{autocomplete-BDvuma6D.js → autocomplete-CI4QJXAN.js} +3 -3
  24. package/dist/{autocomplete-BDvuma6D.js.map → autocomplete-CI4QJXAN.js.map} +1 -1
  25. package/dist/autocomplete.cjs +1 -1
  26. package/dist/autocomplete.js +1 -1
  27. package/dist/avatar.cjs +1 -1
  28. package/dist/avatar.js +3 -3
  29. package/dist/badge.cjs +1 -1
  30. package/dist/badge.js +1 -1
  31. package/dist/boat-I4B1UNMc.cjs +34 -0
  32. package/dist/boat-I4B1UNMc.cjs.map +1 -0
  33. package/dist/boat-_N1x5U_3.js +191 -0
  34. package/dist/boat-_N1x5U_3.js.map +1 -0
  35. package/dist/boat.cjs +1 -1
  36. package/dist/boat.js +1 -1
  37. package/dist/breadcrumb.cjs +1 -1
  38. package/dist/breadcrumb.js +2 -2
  39. package/dist/{busy-CgzZbGfx.cjs → busy-BIUonyPk.cjs} +1 -1
  40. package/dist/{busy-CgzZbGfx.cjs.map → busy-BIUonyPk.cjs.map} +1 -1
  41. package/dist/{busy-DgQ4ux5N.js → busy-CCB3qKnh.js} +2 -2
  42. package/dist/{busy-DgQ4ux5N.js.map → busy-CCB3qKnh.js.map} +1 -1
  43. package/dist/busy.cjs +1 -1
  44. package/dist/busy.js +1 -1
  45. package/dist/{button-qbN1muQ0.js → button-C89bPnHt.js} +2 -2
  46. package/dist/{button-qbN1muQ0.js.map → button-C89bPnHt.js.map} +1 -1
  47. package/dist/{button-DFvR1iXX.cjs → button-CkwQH-g3.cjs} +1 -1
  48. package/dist/{button-DFvR1iXX.cjs.map → button-CkwQH-g3.cjs.map} +1 -1
  49. package/dist/button.cjs +4 -4
  50. package/dist/button.cjs.map +1 -1
  51. package/dist/button.js +16 -22
  52. package/dist/button.js.map +1 -1
  53. package/dist/{card-D_GlwZ5q.cjs → card-BO93_oxQ.cjs} +1 -1
  54. package/dist/{card-D_GlwZ5q.cjs.map → card-BO93_oxQ.cjs.map} +1 -1
  55. package/dist/{card-DAbr-7Vy.js → card-CFsCgJKZ.js} +2 -2
  56. package/dist/{card-DAbr-7Vy.js.map → card-CFsCgJKZ.js.map} +1 -1
  57. package/dist/card.cjs +1 -1
  58. package/dist/card.js +1 -1
  59. package/dist/{checkbox-BNORaxMF.js → checkbox-Bh7q0djq.js} +2 -2
  60. package/dist/{checkbox-BNORaxMF.js.map → checkbox-Bh7q0djq.js.map} +1 -1
  61. package/dist/{checkbox-BUY_uc_r.cjs → checkbox-CFUBUFtW.cjs} +1 -1
  62. package/dist/{checkbox-BUY_uc_r.cjs.map → checkbox-CFUBUFtW.cjs.map} +1 -1
  63. package/dist/checkbox.cjs +1 -1
  64. package/dist/checkbox.js +1 -1
  65. package/dist/{chips-Dg6Lk6BT.js → chips-6YaoRmeG.js} +145 -122
  66. package/dist/chips-6YaoRmeG.js.map +1 -0
  67. package/dist/{chips-CXZ4dJCK.cjs → chips-BfzpsyV1.cjs} +44 -33
  68. package/dist/chips-BfzpsyV1.cjs.map +1 -0
  69. package/dist/chips.cjs +1 -1
  70. package/dist/chips.js +2 -2
  71. package/dist/connectivity.cjs +1 -1
  72. package/dist/connectivity.js +3 -3
  73. package/dist/content-drawer.cjs +1 -1
  74. package/dist/content-drawer.js +1 -1
  75. package/dist/{date-range-BU6WX7d5.js → date-range-CEo_Kjqw.js} +129 -137
  76. package/dist/date-range-CEo_Kjqw.js.map +1 -0
  77. package/dist/{date-range-C-_be3_E.cjs → date-range-N-A249O9.cjs} +25 -19
  78. package/dist/date-range-N-A249O9.cjs.map +1 -0
  79. package/dist/{date-range-inline-7o7xtVIu.js → date-range-inline-BwialV9j.js} +2 -2
  80. package/dist/{date-range-inline-7o7xtVIu.js.map → date-range-inline-BwialV9j.js.map} +1 -1
  81. package/dist/{date-range-inline-DJtUmHKF.cjs → date-range-inline-DFopysWF.cjs} +1 -1
  82. package/dist/{date-range-inline-DJtUmHKF.cjs.map → date-range-inline-DFopysWF.cjs.map} +1 -1
  83. package/dist/date-range-inline.cjs +1 -1
  84. package/dist/date-range-inline.js +1 -1
  85. package/dist/date-range.cjs +1 -1
  86. package/dist/date-range.js +1 -1
  87. package/dist/delay.cjs +1 -1
  88. package/dist/delay.js +2 -2
  89. package/dist/{details-Bs0MyyvF.cjs → details-BLRPV8sY.cjs} +1 -1
  90. package/dist/{details-Bs0MyyvF.cjs.map → details-BLRPV8sY.cjs.map} +1 -1
  91. package/dist/{details-EfbDPVEo.js → details-GtpfI2hA.js} +2 -2
  92. package/dist/{details-EfbDPVEo.js.map → details-GtpfI2hA.js.map} +1 -1
  93. package/dist/details.cjs +1 -1
  94. package/dist/details.js +1 -1
  95. package/dist/{directives-zi1Mm2er.js → directives-C2dXgpCY.js} +13 -6
  96. package/dist/directives-C2dXgpCY.js.map +1 -0
  97. package/dist/{directives-fLwDj6b0.cjs → directives-CvYGSW_a.cjs} +2 -2
  98. package/dist/directives-CvYGSW_a.cjs.map +1 -0
  99. package/dist/directives.cjs +1 -1
  100. package/dist/directives.js +2 -2
  101. package/dist/{divider-CEPfrIwe.js → divider-D0pGX2VB.js} +2 -2
  102. package/dist/{divider-CEPfrIwe.js.map → divider-D0pGX2VB.js.map} +1 -1
  103. package/dist/{divider-CdIsWZrM.cjs → divider-rNsWCvMi.cjs} +1 -1
  104. package/dist/{divider-CdIsWZrM.cjs.map → divider-rNsWCvMi.cjs.map} +1 -1
  105. package/dist/divider.cjs +1 -1
  106. package/dist/divider.js +1 -1
  107. package/dist/dropdown.cjs +1 -1
  108. package/dist/dropdown.js +2 -2
  109. package/dist/{expand-g1vqqUp1.js → expand-FcKAzJta.js} +3 -3
  110. package/dist/{expand-g1vqqUp1.js.map → expand-FcKAzJta.js.map} +1 -1
  111. package/dist/{expand--at1k3qo.cjs → expand-tffQHGbZ.cjs} +1 -1
  112. package/dist/{expand--at1k3qo.cjs.map → expand-tffQHGbZ.cjs.map} +1 -1
  113. package/dist/expand.cjs +1 -1
  114. package/dist/expand.js +1 -1
  115. package/dist/fab.cjs +77 -0
  116. package/dist/fab.cjs.map +1 -0
  117. package/dist/fab.js +151 -0
  118. package/dist/fab.js.map +1 -0
  119. package/dist/{float-P9HukAm-.cjs → float-CDjgxWyy.cjs} +1 -1
  120. package/dist/{float-P9HukAm-.cjs.map → float-CDjgxWyy.cjs.map} +1 -1
  121. package/dist/{float-DxVzgI9o.js → float-CQ1WEp3M.js} +2 -2
  122. package/dist/{float-DxVzgI9o.js.map → float-CQ1WEp3M.js.map} +1 -1
  123. package/dist/float.cjs +1 -1
  124. package/dist/float.js +1 -1
  125. package/dist/{form-CqLaozHp.js → form-H24puioV.js} +3 -3
  126. package/dist/{form-CqLaozHp.js.map → form-H24puioV.js.map} +1 -1
  127. package/dist/{form-ByYhXe1p.cjs → form-VYhbbir3.cjs} +1 -1
  128. package/dist/{form-ByYhXe1p.cjs.map → form-VYhbbir3.cjs.map} +1 -1
  129. package/dist/form.cjs +6 -6
  130. package/dist/form.cjs.map +1 -1
  131. package/dist/form.js +25 -23
  132. package/dist/form.js.map +1 -1
  133. package/dist/handover/agent-runtime-followups.md +1 -1
  134. package/dist/handover/agent-runtime-v1.md +3 -3
  135. package/dist/{icons-DYtiRU5V.cjs → icons-B_a1HStW.cjs} +1 -1
  136. package/dist/{icons-DYtiRU5V.cjs.map → icons-B_a1HStW.cjs.map} +1 -1
  137. package/dist/{icons-CkphcMp6.js → icons-DBxfN91B.js} +2 -2
  138. package/dist/{icons-CkphcMp6.js.map → icons-DBxfN91B.js.map} +1 -1
  139. package/dist/icons.cjs +1 -1
  140. package/dist/icons.js +1 -1
  141. package/dist/{iframe-CjqJksl8.js → iframe-BDVElN8z.js} +2 -2
  142. package/dist/{iframe-CjqJksl8.js.map → iframe-BDVElN8z.js.map} +1 -1
  143. package/dist/{iframe-C3trkP8q.cjs → iframe-CG-z9qev.cjs} +1 -1
  144. package/dist/{iframe-C3trkP8q.cjs.map → iframe-CG-z9qev.cjs.map} +1 -1
  145. package/dist/iframe.cjs +1 -1
  146. package/dist/iframe.js +1 -1
  147. package/dist/index.cjs +1 -1
  148. package/dist/index.js +57 -56
  149. package/dist/{input-DuavpwNL.cjs → input-B14Nn6xD.cjs} +1 -1
  150. package/dist/{input-DuavpwNL.cjs.map → input-B14Nn6xD.cjs.map} +1 -1
  151. package/dist/{input-CG51zDVh.js → input-Bt_o4sYo.js} +2 -2
  152. package/dist/{input-CG51zDVh.js.map → input-Bt_o4sYo.js.map} +1 -1
  153. package/dist/{input-chip-C6Lq1927.js → input-chip-DEqO0DXc.js} +2 -2
  154. package/dist/input-chip-DEqO0DXc.js.map +1 -0
  155. package/dist/{input-chip-57tgNXKT.cjs → input-chip-ugYu9Fn9.cjs} +1 -1
  156. package/dist/input-chip-ugYu9Fn9.cjs.map +1 -0
  157. package/dist/input.cjs +1 -1
  158. package/dist/input.js +1 -1
  159. package/dist/json.cjs +1 -1
  160. package/dist/json.js +3 -3
  161. package/dist/kbd.cjs +1 -1
  162. package/dist/kbd.js +2 -2
  163. package/dist/{layout-D4IOwx7p.js → layout-BJ_43VrH.js} +1 -1
  164. package/dist/{layout-D4IOwx7p.js.map → layout-BJ_43VrH.js.map} +1 -1
  165. package/dist/{layout-6ipbiWTl.cjs → layout-DF9ZaQ-b.cjs} +1 -1
  166. package/dist/{layout-6ipbiWTl.cjs.map → layout-DF9ZaQ-b.cjs.map} +1 -1
  167. package/dist/layout.cjs +1 -1
  168. package/dist/layout.js +2 -2
  169. package/dist/{lightbox-H8pVWGMX.cjs → lightbox-B47Zoqv-.cjs} +1 -1
  170. package/dist/{lightbox-H8pVWGMX.cjs.map → lightbox-B47Zoqv-.cjs.map} +1 -1
  171. package/dist/{lightbox-CsyO2XSr.js → lightbox-ZmuoBBFT.js} +2 -2
  172. package/dist/{lightbox-CsyO2XSr.js.map → lightbox-ZmuoBBFT.js.map} +1 -1
  173. package/dist/lightbox.cjs +1 -1
  174. package/dist/lightbox.js +1 -1
  175. package/dist/{list-BAwH0pQW.js → list-C47xzld_.js} +2 -2
  176. package/dist/{list-BAwH0pQW.js.map → list-C47xzld_.js.map} +1 -1
  177. package/dist/{list-Bs9m8kw7.cjs → list-CaSWrlG2.cjs} +1 -1
  178. package/dist/{list-Bs9m8kw7.cjs.map → list-CaSWrlG2.cjs.map} +1 -1
  179. package/dist/list.cjs +1 -1
  180. package/dist/list.js +1 -1
  181. package/dist/{menu-tQVARVaC.js → menu-8RObM6Ie.js} +3 -3
  182. package/dist/{menu-tQVARVaC.js.map → menu-8RObM6Ie.js.map} +1 -1
  183. package/dist/{menu-BMcGzj1h.cjs → menu-Jpsy85SX.cjs} +1 -1
  184. package/dist/{menu-BMcGzj1h.cjs.map → menu-Jpsy85SX.cjs.map} +1 -1
  185. package/dist/menu.cjs +1 -1
  186. package/dist/menu.js +1 -1
  187. package/dist/{mixins-CGXSzZc7.cjs → mixins-DPdzC9ZH.cjs} +1 -1
  188. package/dist/{mixins-CGXSzZc7.cjs.map → mixins-DPdzC9ZH.cjs.map} +1 -1
  189. package/dist/{mixins-Bp0wIHg2.js → mixins-DTzfFVyv.js} +1 -1
  190. package/dist/{mixins-Bp0wIHg2.js.map → mixins-DTzfFVyv.js.map} +1 -1
  191. package/dist/mixins.cjs +1 -1
  192. package/dist/mixins.js +2 -2
  193. package/dist/nav-drawer.cjs +1 -1
  194. package/dist/nav-drawer.js +1 -1
  195. package/dist/navigation-bar.cjs +1 -1
  196. package/dist/navigation-bar.js +1 -1
  197. package/dist/navigation-rail.cjs +1 -1
  198. package/dist/navigation-rail.js +2 -2
  199. package/dist/{notification-D1tX2nx5.js → notification-Ccktcj9H.js} +4 -4
  200. package/dist/{notification-D1tX2nx5.js.map → notification-Ccktcj9H.js.map} +1 -1
  201. package/dist/{notification-Bz00zdpV.cjs → notification-DSkB-sn0.cjs} +1 -1
  202. package/dist/{notification-Bz00zdpV.cjs.map → notification-DSkB-sn0.cjs.map} +1 -1
  203. package/dist/notification.cjs +1 -1
  204. package/dist/notification.js +1 -1
  205. package/dist/{option-BnybLEDO.cjs → option-0aNiVB3Q.cjs} +1 -1
  206. package/dist/{option-BnybLEDO.cjs.map → option-0aNiVB3Q.cjs.map} +1 -1
  207. package/dist/{option-BpGV8Apj.js → option-CkMxwBqU.js} +2 -2
  208. package/dist/{option-BpGV8Apj.js.map → option-CkMxwBqU.js.map} +1 -1
  209. package/dist/option.cjs +1 -1
  210. package/dist/option.js +1 -1
  211. package/dist/{overlay-UQR2Dy3u.cjs → overlay-BS-ta-zq.cjs} +5 -5
  212. package/dist/overlay-BS-ta-zq.cjs.map +1 -0
  213. package/dist/{overlay-BpNhd74N.js → overlay-H3Wt_dgQ.js} +108 -108
  214. package/dist/overlay-H3Wt_dgQ.js.map +1 -0
  215. package/dist/overlay.cjs +1 -1
  216. package/dist/{overlay.confirm-body-CVDtVk5X.cjs → overlay.confirm-body-CR9xaqOE.cjs} +1 -1
  217. package/dist/{overlay.confirm-body-CVDtVk5X.cjs.map → overlay.confirm-body-CR9xaqOE.cjs.map} +1 -1
  218. package/dist/{overlay.confirm-body-BHcXu5Wk.js → overlay.confirm-body-Dxn_wNm3.js} +6 -6
  219. package/dist/{overlay.confirm-body-BHcXu5Wk.js.map → overlay.confirm-body-Dxn_wNm3.js.map} +1 -1
  220. package/dist/overlay.js +3 -3
  221. package/dist/{overlay.service-DTE6NwIM.js → overlay.service-C46kOtUi.js} +2 -2
  222. package/dist/{overlay.service-DTE6NwIM.js.map → overlay.service-C46kOtUi.js.map} +1 -1
  223. package/dist/{overlay.service-C8RsQzgM.cjs → overlay.service-DEj3rfRr.cjs} +1 -1
  224. package/dist/{overlay.service-C8RsQzgM.cjs.map → overlay.service-DEj3rfRr.cjs.map} +1 -1
  225. package/dist/{progress-CAKsxp29.js → progress-BK7gSq8j.js} +2 -2
  226. package/dist/{progress-CAKsxp29.js.map → progress-BK7gSq8j.js.map} +1 -1
  227. package/dist/{progress-gbIALDRs.cjs → progress-zs18GR6C.cjs} +1 -1
  228. package/dist/{progress-gbIALDRs.cjs.map → progress-zs18GR6C.cjs.map} +1 -1
  229. package/dist/progress.cjs +1 -1
  230. package/dist/progress.js +1 -1
  231. package/dist/{radio-group-otyvZvUk.js → radio-group-1HCpzRUB.js} +2 -2
  232. package/dist/{radio-group-otyvZvUk.js.map → radio-group-1HCpzRUB.js.map} +1 -1
  233. package/dist/{radio-group-CfJ5DtI4.cjs → radio-group-DbYlyPc-.cjs} +1 -1
  234. package/dist/{radio-group-CfJ5DtI4.cjs.map → radio-group-DbYlyPc-.cjs.map} +1 -1
  235. package/dist/radio-group.cjs +1 -1
  236. package/dist/radio-group.js +1 -1
  237. package/dist/range.cjs +1 -1
  238. package/dist/range.js +2 -2
  239. package/dist/{select-81jniVTs.cjs → select-B-SSmUDe.cjs} +1 -1
  240. package/dist/{select-81jniVTs.cjs.map → select-B-SSmUDe.cjs.map} +1 -1
  241. package/dist/{select-9vXx1fhr.js → select-CEyhNtZ2.js} +3 -3
  242. package/dist/{select-9vXx1fhr.js.map → select-CEyhNtZ2.js.map} +1 -1
  243. package/dist/select.cjs +1 -1
  244. package/dist/select.js +1 -1
  245. package/dist/skeleton.cjs +1 -1
  246. package/dist/skeleton.js +2 -2
  247. package/dist/skills/INDEX.md +1 -1
  248. package/dist/skills/SKILL.md +6 -7
  249. package/dist/skills/boat.md +21 -15
  250. package/dist/skills/fab.md +75 -0
  251. package/dist/skills/schmancy/INDEX.md +1 -1
  252. package/dist/skills/schmancy/SKILL.md +6 -7
  253. package/dist/skills/schmancy/boat.md +21 -15
  254. package/dist/skills/schmancy/fab.md +75 -0
  255. package/dist/skills/schmancy/theme.md +1 -1
  256. package/dist/skills/theme.md +1 -1
  257. package/dist/slider.cjs +1 -1
  258. package/dist/slider.js +2 -2
  259. package/dist/{sound.service-D3ZSq1Kj.js → sound.service-DO4SmUUT.js} +1 -1
  260. package/dist/{sound.service-D3ZSq1Kj.js.map → sound.service-DO4SmUUT.js.map} +1 -1
  261. package/dist/{sound.service-CmIw63aM.cjs → sound.service-G_8GV_6L.cjs} +1 -1
  262. package/dist/{sound.service-CmIw63aM.cjs.map → sound.service-G_8GV_6L.cjs.map} +1 -1
  263. package/dist/{splash-screen-BOjrmGLk.js → splash-screen-B1mM4_xz.js} +2 -2
  264. package/dist/{splash-screen-BOjrmGLk.js.map → splash-screen-B1mM4_xz.js.map} +1 -1
  265. package/dist/{splash-screen-C5KAWXvA.cjs → splash-screen-cbz4bxjB.cjs} +1 -1
  266. package/dist/{splash-screen-C5KAWXvA.cjs.map → splash-screen-cbz4bxjB.cjs.map} +1 -1
  267. package/dist/splash-screen.cjs +1 -1
  268. package/dist/splash-screen.js +1 -1
  269. package/dist/{src-Bm1vop0l.cjs → src-czeiuT1m.cjs} +1 -1
  270. package/dist/{src-Bm1vop0l.cjs.map → src-czeiuT1m.cjs.map} +1 -1
  271. package/dist/{src-DoOhMBtI.js → src-tncsWsTY.js} +36 -35
  272. package/dist/{src-DoOhMBtI.js.map → src-tncsWsTY.js.map} +1 -1
  273. package/dist/{state-Cex3rmx2.cjs → state-Cx0aoL5e.cjs} +1 -1
  274. package/dist/{state-Cex3rmx2.cjs.map → state-Cx0aoL5e.cjs.map} +1 -1
  275. package/dist/{state-CWBRTSvE.js → state-DJDp3N7J.js} +1 -1
  276. package/dist/{state-CWBRTSvE.js.map → state-DJDp3N7J.js.map} +1 -1
  277. package/dist/state.cjs +1 -1
  278. package/dist/state.js +2 -2
  279. package/dist/steps.cjs +1 -1
  280. package/dist/steps.js +2 -2
  281. package/dist/{surface-PfiejLuw.cjs → surface-C3cxTcJD.cjs} +1 -1
  282. package/dist/{surface-PfiejLuw.cjs.map → surface-C3cxTcJD.cjs.map} +1 -1
  283. package/dist/{surface-9S5scTsD.js → surface-CYBl8_a3.js} +2 -2
  284. package/dist/{surface-9S5scTsD.js.map → surface-CYBl8_a3.js.map} +1 -1
  285. package/dist/surface.cjs +1 -1
  286. package/dist/surface.js +1 -1
  287. package/dist/switch.cjs +1 -1
  288. package/dist/switch.js +2 -2
  289. package/dist/table.cjs +1 -1
  290. package/dist/table.js +2 -2
  291. package/dist/{tabs-BBOjAmgG.js → tabs-DHy93Q3N.js} +2 -2
  292. package/dist/{tabs-BBOjAmgG.js.map → tabs-DHy93Q3N.js.map} +1 -1
  293. package/dist/{tabs-uYvb1P06.cjs → tabs-ORQ_Zd43.cjs} +1 -1
  294. package/dist/{tabs-uYvb1P06.cjs.map → tabs-ORQ_Zd43.cjs.map} +1 -1
  295. package/dist/tabs.cjs +1 -1
  296. package/dist/tabs.js +1 -1
  297. package/dist/teleport.cjs +1 -1
  298. package/dist/teleport.js +1 -1
  299. package/dist/{textarea-YPHX4g7Y.cjs → textarea-CEUaDURR.cjs} +1 -1
  300. package/dist/{textarea-YPHX4g7Y.cjs.map → textarea-CEUaDURR.cjs.map} +1 -1
  301. package/dist/{textarea-QzSj8Dkl.js → textarea-DHIMt-ly.js} +2 -2
  302. package/dist/{textarea-QzSj8Dkl.js.map → textarea-DHIMt-ly.js.map} +1 -1
  303. package/dist/textarea.cjs +1 -1
  304. package/dist/textarea.js +1 -1
  305. package/dist/theme-CJpjkqHr.cjs +181 -0
  306. package/dist/{theme-iKUaS9JB.cjs.map → theme-CJpjkqHr.cjs.map} +1 -1
  307. package/dist/{theme-C2Mp-VGt.js → theme-CgI9PRco.js} +6 -5
  308. package/dist/{theme-C2Mp-VGt.js.map → theme-CgI9PRco.js.map} +1 -1
  309. package/dist/{theme-button-CJmhxfMe.cjs → theme-button--FuBkuVr.cjs} +1 -1
  310. package/dist/{theme-button-CJmhxfMe.cjs.map → theme-button--FuBkuVr.cjs.map} +1 -1
  311. package/dist/{theme-button-DGWAXhzd.js → theme-button-D-FXb3oO.js} +2 -2
  312. package/dist/{theme-button-DGWAXhzd.js.map → theme-button-D-FXb3oO.js.map} +1 -1
  313. package/dist/theme-button.cjs +1 -1
  314. package/dist/theme-button.js +1 -1
  315. package/dist/theme.cjs +1 -1
  316. package/dist/theme.js +3 -3
  317. package/dist/{theme.service-hc4N-1Oz.js → theme.service-BfTK1Wtl.js} +1 -1
  318. package/dist/{theme.service-hc4N-1Oz.js.map → theme.service-BfTK1Wtl.js.map} +1 -1
  319. package/dist/{theme.service-p61RsJBF.cjs → theme.service-Dg7LO0Qz.cjs} +1 -1
  320. package/dist/{theme.service-p61RsJBF.cjs.map → theme.service-Dg7LO0Qz.cjs.map} +1 -1
  321. package/dist/tree.cjs +1 -1
  322. package/dist/tree.js +2 -2
  323. package/dist/{typography-DwV0sqht.js → typography-BEGLfHwz.js} +2 -2
  324. package/dist/{typography-DwV0sqht.js.map → typography-BEGLfHwz.js.map} +1 -1
  325. package/dist/{typography-Bdt8RlX2.cjs → typography-CxA3sx9B.cjs} +1 -1
  326. package/dist/{typography-Bdt8RlX2.cjs.map → typography-CxA3sx9B.cjs.map} +1 -1
  327. package/dist/typography.cjs +1 -1
  328. package/dist/typography.js +1 -1
  329. package/dist/visually-hidden.cjs +1 -1
  330. package/dist/visually-hidden.js +2 -2
  331. package/dist/{window-n4jN60B_.js → window-B_n4P9az.js} +3 -3
  332. package/dist/{window-n4jN60B_.js.map → window-B_n4P9az.js.map} +1 -1
  333. package/dist/{window-D2WfvNng.cjs → window-Vl1u1-EG.cjs} +1 -1
  334. package/dist/{window-D2WfvNng.cjs.map → window-Vl1u1-EG.cjs.map} +1 -1
  335. package/dist/window.cjs +1 -1
  336. package/dist/window.js +1 -1
  337. package/package.json +1 -1
  338. package/skills/schmancy/INDEX.md +1 -1
  339. package/skills/schmancy/SKILL.md +6 -7
  340. package/skills/schmancy/boat.md +21 -15
  341. package/skills/schmancy/fab.md +75 -0
  342. package/skills/schmancy/theme.md +1 -1
  343. package/src/CLAUDE.md +22 -16
  344. package/src/boat/boat.test.ts +130 -0
  345. package/src/boat/boat.ts +192 -186
  346. package/src/button/icon-button.ts +18 -30
  347. package/src/chips/assist-chip.ts +2 -263
  348. package/src/chips/chips.ts +2 -259
  349. package/src/chips/filter-chip.ts +2 -255
  350. package/src/chips/index.ts +2 -5
  351. package/src/chips/input-chip.ts +2 -413
  352. package/src/chips/suggestion-chip.ts +2 -266
  353. package/src/directives/fill.ts +28 -5
  354. package/src/fab/fab.test.ts +101 -0
  355. package/src/fab/fab.ts +226 -0
  356. package/src/fab/index.ts +1 -0
  357. package/src/form/fields/chips/assist-chip.ts +263 -0
  358. package/src/form/fields/chips/chips.ts +234 -0
  359. package/src/form/fields/chips/filter-chip.ts +255 -0
  360. package/src/form/fields/chips/index.ts +5 -0
  361. package/src/form/fields/chips/input-chip.ts +413 -0
  362. package/src/form/fields/chips/suggestion-chip.ts +266 -0
  363. package/src/form/fields/date-range/date-range.test.ts +44 -0
  364. package/src/form/fields/date-range/date-range.ts +103 -97
  365. package/src/form/fields/index.ts +1 -0
  366. package/src/index.ts +2 -1
  367. package/src/overlay/overlay.animations.ts +2 -3
  368. package/src/overlay/overlay.component.ts +8 -4
  369. package/src/overlay/overlay.types.ts +14 -2
  370. package/src/theme/theme.component.ts +1 -0
  371. package/src/theme/theme.style.css +3 -0
  372. package/types/src/boat/boat.d.ts +40 -25
  373. package/types/src/boat/boat.test.d.ts +2 -0
  374. package/types/src/button/icon-button.d.ts +3 -2
  375. package/types/src/chips/assist-chip.d.ts +1 -47
  376. package/types/src/chips/chips.d.ts +1 -43
  377. package/types/src/chips/filter-chip.d.ts +1 -67
  378. package/types/src/chips/index.d.ts +1 -5
  379. package/types/src/chips/input-chip.d.ts +1 -82
  380. package/types/src/chips/suggestion-chip.d.ts +1 -52
  381. package/types/src/fab/fab.d.ts +80 -0
  382. package/types/src/fab/fab.test.d.ts +2 -0
  383. package/types/src/fab/index.d.ts +1 -0
  384. package/types/src/form/fields/chips/assist-chip.d.ts +47 -0
  385. package/types/src/form/fields/chips/chips.d.ts +35 -0
  386. package/types/src/form/fields/chips/filter-chip.d.ts +67 -0
  387. package/types/src/form/fields/chips/index.d.ts +5 -0
  388. package/types/src/form/fields/chips/input-chip.d.ts +82 -0
  389. package/types/src/form/fields/chips/suggestion-chip.d.ts +52 -0
  390. package/types/src/form/fields/date-range/date-range.d.ts +5 -10
  391. package/types/src/form/fields/index.d.ts +1 -0
  392. package/types/src/index.d.ts +2 -1
  393. package/types/src/overlay/overlay.component.d.ts +1 -0
  394. package/types/src/overlay/overlay.types.d.ts +12 -2
  395. package/types/src/theme/theme.component.d.ts +1 -0
  396. package/dist/SchmancyElement-CA0Wqt8m.js +0 -284
  397. package/dist/SchmancyElement-CA0Wqt8m.js.map +0 -1
  398. package/dist/SchmancyElement-CYIif26I.cjs +0 -2
  399. package/dist/SchmancyElement-CYIif26I.cjs.map +0 -1
  400. package/dist/boat-BgpWcLnV.cjs +0 -38
  401. package/dist/boat-BgpWcLnV.cjs.map +0 -1
  402. package/dist/boat-Y5UMiJCV.js +0 -216
  403. package/dist/boat-Y5UMiJCV.js.map +0 -1
  404. package/dist/chips-CXZ4dJCK.cjs.map +0 -1
  405. package/dist/chips-Dg6Lk6BT.js.map +0 -1
  406. package/dist/date-range-BU6WX7d5.js.map +0 -1
  407. package/dist/date-range-C-_be3_E.cjs.map +0 -1
  408. package/dist/directives-fLwDj6b0.cjs.map +0 -1
  409. package/dist/directives-zi1Mm2er.js.map +0 -1
  410. package/dist/input-chip-57tgNXKT.cjs.map +0 -1
  411. package/dist/input-chip-C6Lq1927.js.map +0 -1
  412. package/dist/overlay-BpNhd74N.js.map +0 -1
  413. package/dist/overlay-UQR2Dy3u.cjs.map +0 -1
  414. package/dist/theme-iKUaS9JB.cjs +0 -181
@@ -1,263 +1,2 @@
1
- import { SchmancyElement } from '@mixins/index'
2
- import { css, html, LitElement } from 'lit'
3
- import { customElement, property, state } from 'lit/decorators.js'
4
- import { classMap } from 'lit/directives/class-map.js'
5
- import { BehaviorSubject, combineLatest } from 'rxjs'
6
- import { takeUntil } from 'rxjs/operators'
7
-
8
- /**
9
- * Assist chip component - prompts user actions like opening calendar events or sharing content
10
- * Pure Schmancy implementation with Tailwind CSS and RxJS state management
11
- */
12
- @customElement('schmancy-assist-chip')
13
- export class SchmancyAssistChip extends SchmancyElement {
14
- static styles = [css`
15
- :host {
16
- display: inline-block;
17
- outline: none;
18
- width: fit-content;
19
- min-width: fit-content;
20
- }
21
-
22
- :host([disabled]) {
23
- pointer-events: none;
24
- }
25
-
26
- .ripple {
27
- position: absolute;
28
- border-radius: 50%;
29
- transform: scale(0);
30
- animation: ripple 600ms linear;
31
- background-color: rgba(0, 0, 0, 0.08);
32
- pointer-events: none;
33
- }
34
-
35
- @keyframes ripple {
36
- to {
37
- transform: scale(4);
38
- opacity: 0;
39
- }
40
- }
41
-
42
- /* State layer for M3 hover/focus/pressed states */
43
- .state-layer {
44
- position: absolute;
45
- inset: 0;
46
- border-radius: inherit;
47
- pointer-events: none;
48
- background-color: currentColor;
49
- opacity: 0;
50
- transition: opacity 200ms ease;
51
- }
52
-
53
- :host(:not([disabled])) button:hover .state-layer {
54
- opacity: 0.08;
55
- }
56
-
57
- :host(:not([disabled])) button:focus-visible .state-layer {
58
- opacity: 0.1;
59
- }
60
-
61
- :host(:not([disabled])) button:active .state-layer {
62
- opacity: 0.1;
63
- }
64
- `];
65
- /** Value identifier for the chip */
66
- @property({ reflect: true }) value = ''
67
-
68
- /** Optional icon name (Material Symbols) */
69
- @property({ reflect: true }) icon = ''
70
-
71
- /** Optional href for navigation */
72
- @property({ reflect: true }) href = ''
73
-
74
- /** Target for navigation (e.g., '_blank') */
75
- @property({ reflect: true }) target = ''
76
-
77
- /** Disable the chip */
78
- @property({ type: Boolean, reflect: true }) disabled = false
79
-
80
- /** Elevated style variant - true by default per M3 spec for assist chips */
81
- @property({ type: Boolean, reflect: true }) elevated = true
82
-
83
- // RxJS state streams
84
- private hover$ = new BehaviorSubject<boolean>(false)
85
- private pressed$ = new BehaviorSubject<boolean>(false)
86
- private focused$ = new BehaviorSubject<boolean>(false)
87
-
88
- // UI state - only ripples needed for rendering
89
- @state() private ripples: Array<{ x: number; y: number; id: number }> = []
90
-
91
- protected static shadowRootOptions = { ...LitElement.shadowRootOptions, delegatesFocus: true }
92
-
93
- private nextRippleId = 0
94
-
95
- connectedCallback() {
96
- super.connectedCallback()
97
-
98
- // Stream management for future extensions
99
- // Currently, states are handled directly in event handlers
100
- // This pipeline can be extended for more complex state interactions
101
- combineLatest([
102
- this.hover$,
103
- this.pressed$,
104
- this.focused$
105
- ]).pipe(
106
- // States are managed through event handlers directly
107
- // This pipeline is kept for potential future state combinations
108
- takeUntil(this.disconnecting)
109
- ).subscribe()
110
- }
111
-
112
- private handleClick = (e: MouseEvent) => {
113
- if (this.disabled) return
114
-
115
- // Add ripple effect
116
- const button = this.shadowRoot?.querySelector('button')
117
- if (button) {
118
- const rect = button.getBoundingClientRect()
119
- const x = e.clientX - rect.left
120
- const y = e.clientY - rect.top
121
- const id = this.nextRippleId++
122
-
123
- this.ripples = [...this.ripples, { x, y, id }]
124
-
125
- // Remove ripple after animation
126
- setTimeout(() => {
127
- this.ripples = this.ripples.filter(r => r.id !== id)
128
- }, 600)
129
- }
130
-
131
- // Navigate if href is provided
132
- if (this.href) {
133
- if (this.target === '_blank') {
134
- window.open(this.href, '_blank')
135
- } else {
136
- window.location.href = this.href
137
- }
138
- }
139
-
140
- // Dispatch action event
141
- this.dispatchEvent(new CustomEvent('action', {
142
- detail: { value: this.value },
143
- bubbles: true,
144
- composed: true
145
- }))
146
- }
147
-
148
- private handleKeyDown = (e: KeyboardEvent) => {
149
- if (this.disabled) return
150
-
151
- if (e.key === 'Enter' || e.key === ' ') {
152
- e.preventDefault()
153
- this.pressed$.next(true)
154
-
155
- // Simulate click
156
- const clickEvent = new MouseEvent('click', {
157
- bubbles: true,
158
- cancelable: true,
159
- clientX: 0,
160
- clientY: 0
161
- })
162
- this.handleClick(clickEvent)
163
-
164
- setTimeout(() => this.pressed$.next(false), 100)
165
- }
166
- }
167
-
168
- private handleFocus = () => {
169
- this.focused$.next(true)
170
- }
171
-
172
- private handleBlur = () => {
173
- this.focused$.next(false)
174
- }
175
-
176
- render() {
177
- const hasIcon = !!this.icon;
178
-
179
- const classes = {
180
- 'relative': true,
181
- 'inline-flex': true,
182
- 'items-center': true,
183
- 'gap-2': true,
184
- 'h-8': true, // M3: 32px height
185
- 'min-h-[32px]': true,
186
- 'rounded-full': true,
187
- 'cursor-pointer': !this.disabled,
188
- 'transition-all': true,
189
- 'duration-200': true,
190
- 'select-none': true,
191
- 'overflow-hidden': true,
192
-
193
- // M3 Padding: 8px with icon, 16px without (leading), 16px trailing
194
- 'pl-2': hasIcon, // 8px with icon
195
- 'pl-4': !hasIcon, // 16px without icon
196
- 'pr-4': true, // 16px trailing
197
-
198
- // M3 Colors - assist chips are elevated by default
199
- 'bg-surface-containerLow': true,
200
- 'text-surface-onVariant': true,
201
-
202
- // M3: Assist chips elevated by default (shadow-1)
203
- 'shadow-sm': this.elevated && !this.disabled, // shadow-1 for elevation
204
- 'hover:shadow-md': this.elevated && !this.disabled, // elevated on hover
205
-
206
- // Focus state
207
- 'focus-visible:outline': !this.disabled,
208
- 'focus-visible:outline-2': !this.disabled,
209
- 'focus-visible:outline-primary': !this.disabled,
210
- 'focus-visible:outline-offset-2': !this.disabled,
211
-
212
- // Disabled
213
- 'opacity-38': this.disabled, // M3 disabled opacity
214
- 'cursor-not-allowed': this.disabled
215
- }
216
-
217
- return html`
218
- <button
219
- type="button"
220
- class=${classMap(classes)}
221
- ?disabled=${this.disabled}
222
- @click=${this.handleClick}
223
- @keydown=${this.handleKeyDown}
224
- @mouseenter=${() => this.hover$.next(true)}
225
- @mouseleave=${() => this.hover$.next(false)}
226
- @mousedown=${() => this.pressed$.next(true)}
227
- @mouseup=${() => this.pressed$.next(false)}
228
- @focus=${this.handleFocus}
229
- @blur=${this.handleBlur}
230
- tabindex=${this.disabled ? '-1' : '0'}
231
- role="button"
232
- aria-disabled=${this.disabled}
233
- aria-label=${this.value}
234
- >
235
- ${this.icon ? html`
236
- <schmancy-icon class="text-[18px] shrink-0">${this.icon}</schmancy-icon>
237
- ` : ''}
238
- <span class="text-sm font-medium leading-5">
239
- <slot></slot>
240
- </span>
241
-
242
- <!-- Ripple effects -->
243
- ${this.ripples.map(ripple => html`
244
- <span
245
- class="ripple"
246
- style="left: ${ripple.x}px; top: ${ripple.y}px;"
247
- ></span>
248
- `)}
249
-
250
- <!-- State layer for M3 hover/focus/pressed states -->
251
- <div class="state-layer"></div>
252
- </button>
253
- `
254
- }
255
- }
256
-
257
- declare global {
258
- interface HTMLElementTagNameMap {
259
- 'schmancy-assist-chip': SchmancyAssistChip
260
- }
261
- }
262
-
263
- export type AssistChipActionEvent = { value: string }
1
+ // Moved to src/form/fields/chips/ this is a backward-compat re-export shim.
2
+ export * from '../form/fields/chips/assist-chip';
@@ -1,259 +1,2 @@
1
- import { SchmancyElement } from '@mixins/index'
2
- import { css, html, PropertyValues } from 'lit'
3
- import { customElement, property, queryAssignedElements } from 'lit/decorators.js'
4
- import { BehaviorSubject, combineLatest } from 'rxjs'
5
- import { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators'
6
- import { fullWidth } from '../directives/layout'
7
- import type { FilterChipChangeEvent as SchmancyChipChangeEvent } from './filter-chip'
8
- import { SchmancyFilterChip as SchmancyChip } from './filter-chip'
9
-
10
- @customElement('schmancy-chips')
11
- export default class SchmancyChips extends SchmancyElement {
12
- static styles = [css`
13
- :host{
14
- display:block;
15
- height:fit-content;
16
- width:fit-content;
17
- }
18
-
19
- `]
20
-
21
-
22
- // RxJS state streams - initialized with undefined to detect if properties were set
23
- private value$ = new BehaviorSubject<string>('')
24
- private values$ = new BehaviorSubject<string[]>([])
25
-
26
- // Track if properties were initialized from attributes/properties
27
- private _value: string = ''
28
- private _values: string[] = []
29
- private _multi: boolean = false
30
-
31
- // Track if properties have been explicitly set
32
- private _valueSet: boolean = false
33
- private _valuesSet: boolean = false
34
-
35
- /**
36
- * @deprecated Use .values for multi-selection or .value for single-selection instead.
37
- * The mode is now automatically determined based on which property is used.
38
- */
39
- @property({
40
- type: Boolean,
41
- reflect: true,
42
- })
43
- get multi(): boolean {
44
- return this._multi
45
- }
46
- set multi(value: boolean) {
47
- this._multi = value
48
- // Note: We don't update any BehaviorSubject here as mode is now computed
49
- }
50
-
51
- /**
52
- * Automatically determines the selection mode based on which properties are in use
53
- */
54
- private get mode(): 'multi' | 'single' | 'none' {
55
- // Check if values array is being used (explicitly set)
56
- if (this._valuesSet) {
57
- return 'multi'
58
- }
59
- // Check if value string is being used (explicitly set)
60
- if (this._valueSet) {
61
- return 'single'
62
- }
63
- // Check if either property has been set via attributes
64
- if (this.hasAttribute('values')) {
65
- return 'multi'
66
- }
67
- if (this.hasAttribute('value')) {
68
- return 'single'
69
- }
70
- // Fallback to deprecated multi prop for backward compatibility
71
- if (this._multi === true) {
72
- return 'multi'
73
- }
74
- // Default to none (no selection management)
75
- return 'none'
76
- }
77
-
78
- @property({
79
- type: Array,
80
- reflect: true,
81
- })
82
- get values(): string[] {
83
- return this._values
84
- }
85
- set values(value: string[]) {
86
- this._values = value || []
87
- this._valuesSet = true // Mark that values has been explicitly set
88
- this.values$.next(this._values)
89
- }
90
-
91
- @property({
92
- type: String,
93
- reflect: true,
94
- })
95
- get value(): string {
96
- return this._value
97
- }
98
- set value(value: string) {
99
- this._value = value || ''
100
- this._valueSet = true // Mark that value has been explicitly set
101
- this.value$.next(this._value)
102
- }
103
-
104
- @queryAssignedElements({
105
- selector:
106
- 'schmancy-chip, schmancy-filter-chip, schmancy-assist-chip, schmancy-input-chip, schmancy-suggestion-chip',
107
- flatten: true,
108
- })
109
- chips!: (SchmancyChip | HTMLElement)[]
110
-
111
- @property({
112
- type: Boolean,
113
- reflect: true,
114
- })
115
- wrap: boolean = false
116
-
117
- @property({
118
- type: Boolean,
119
- reflect: true,
120
- })
121
- required: boolean = false
122
-
123
- @property({
124
- type: String,
125
- reflect: true,
126
- })
127
- justify: 'start' | 'center' | 'end' = 'start'
128
-
129
- connectedCallback() {
130
- super.connectedCallback()
131
-
132
- // Initialize BehaviorSubjects with current property values
133
- // This ensures properties set before connectedCallback are respected
134
- this.value$.next(this._value)
135
- this.values$.next(this._values)
136
-
137
- // Set up reactive pipeline for state synchronization
138
- combineLatest([
139
- this.value$.pipe(distinctUntilChanged()),
140
- this.values$.pipe(
141
- distinctUntilChanged((prev, curr) => prev.length === curr.length && prev.every((v, i) => v === curr[i])),
142
- ),
143
- ])
144
- .pipe(
145
- debounceTime(0), // Ensure DOM is ready
146
- takeUntil(this.disconnecting),
147
- )
148
- .subscribe(([value, values]) => {
149
- // Reactively update chip states based on container state and auto-detected mode
150
- this.updateChipStates(this.mode, value, values)
151
- })
152
- }
153
-
154
- private updateChipStates(mode: 'multi' | 'single' | 'none', value: string, values: string[]) {
155
- if (!this.chips) return
156
-
157
- // If mode is 'none', don't manage selection state
158
- if (mode === 'none') return
159
-
160
- this.chips.forEach(chip => {
161
- if ('value' in chip && 'selected' in chip) {
162
- const filterChip = chip as SchmancyChip
163
- if (mode === 'multi') {
164
- // In multi mode: only select if values array explicitly includes this chip's value
165
- filterChip.selected = values.length > 0 && values.includes(filterChip.value)
166
- } else if (mode === 'single') {
167
- // In single mode: only select if value is non-empty AND matches this chip's value
168
- // This prevents chips from being selected when value is empty string
169
- filterChip.selected = value !== '' && value === filterChip.value
170
- }
171
- }
172
- })
173
- }
174
-
175
- async change(e: CustomEvent<SchmancyChipChangeEvent>) {
176
- e.preventDefault()
177
- e.stopPropagation()
178
-
179
- // If mode is 'none', don't handle selection changes
180
- if (this.mode === 'none') return
181
-
182
- const { value, selected } = e.detail
183
-
184
- // Update the reactive streams and internal tracking, which will trigger state synchronization
185
- if (this.mode === 'multi') {
186
- if (selected) {
187
- // Add value if not already present
188
- if (!this._values.includes(value)) {
189
- this._values = [...this._values, value]
190
- this.values$.next(this._values)
191
- }
192
- } else {
193
- // Remove value
194
- this._values = this._values.filter(v => v !== value)
195
- this.values$.next(this._values)
196
- }
197
- } else if (this.mode === 'single') {
198
- if (selected) {
199
- this._value = value
200
- } else if (!this.required) {
201
- // Allow deselection if not required
202
- this._value = ''
203
- } else {
204
- // Required mode - ignore deselection
205
- return
206
- }
207
- this.value$.next(this._value)
208
- }
209
-
210
- // Request update to trigger re-render and property reflection
211
- this.requestUpdate()
212
-
213
- // Dispatch change event with appropriate detail based on mode
214
- this.dispatchEvent(
215
- new CustomEvent<SchmancyChipsChangeEvent>('change', {
216
- detail: this.mode === 'multi' ? this._values : this._value,
217
- bubbles: true,
218
- }),
219
- )
220
- }
221
-
222
- protected firstUpdated(_changedProperties: PropertyValues): void {
223
- super.firstUpdated(_changedProperties)
224
- // Initial state synchronization will happen through the reactive pipeline
225
- // Force an initial update to ensure chips are synchronized
226
- this.updateChipStates(this.mode, this._value, this._values)
227
- }
228
-
229
- protected render(): unknown {
230
- const classes = {
231
- 'flex flex-nowrap justify-center gap-2': true,
232
- 'flex-wrap': this.wrap,
233
- 'justify-center': this.justify === 'center',
234
- }
235
- return html`
236
- <schmancy-scroll
237
- hide
238
- .direction=${this.wrap ? 'vertical' : 'horizontal'}
239
- class="${this.classMap(classes)}"
240
- ${fullWidth()}
241
- @change=${this.change}
242
- >
243
- <slot
244
- @slotchange=${() => {
245
- // When slot changes, trigger state update through reactive pipeline
246
- this.updateChipStates(this.mode, this._value, this._values)
247
- }}
248
- ></slot>
249
- </schmancy-scroll>
250
- `
251
- }
252
- }
253
-
254
- declare global {
255
- interface HTMLElementTagNameMap {
256
- 'schmancy-chips': SchmancyChips
257
- }
258
- }
259
- export type SchmancyChipsChangeEvent = string | Array<string>
1
+ // Moved to src/form/fields/chips/ this is a backward-compat re-export shim.
2
+ export * from '../form/fields/chips/chips';