@mhmo91/schmancy 0.4.71 → 0.4.73

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 (357) hide show
  1. package/ai/context.md +2 -3
  2. package/ai/directives.md +1 -1
  3. package/ai/steps.md +187 -9
  4. package/dist/ai/context.md +2 -3
  5. package/dist/ai/directives.md +1 -1
  6. package/dist/ai/steps.md +187 -9
  7. package/dist/{animated-text-rE-SkQgz.cjs → animated-text-CPAqO_J3.cjs} +2 -2
  8. package/dist/{animated-text-rE-SkQgz.cjs.map → animated-text-CPAqO_J3.cjs.map} +1 -1
  9. package/dist/{animated-text-CBOMltQE.js → animated-text-Dj3HHUD4.js} +3 -3
  10. package/dist/{animated-text-CBOMltQE.js.map → animated-text-Dj3HHUD4.js.map} +1 -1
  11. package/dist/animated-text.cjs +1 -1
  12. package/dist/animated-text.js +1 -1
  13. package/dist/area.cjs +1 -1
  14. package/dist/area.js +14 -13
  15. package/dist/{autocomplete-CuO8ztL4.cjs → autocomplete-B3ArCTZl.cjs} +2 -2
  16. package/dist/{autocomplete-CuO8ztL4.cjs.map → autocomplete-B3ArCTZl.cjs.map} +1 -1
  17. package/dist/{autocomplete-BAcf_l63.js → autocomplete-kJ7y028b.js} +3 -3
  18. package/dist/{autocomplete-BAcf_l63.js.map → autocomplete-kJ7y028b.js.map} +1 -1
  19. package/dist/autocomplete.cjs +1 -1
  20. package/dist/autocomplete.js +1 -1
  21. package/dist/{avatar-D3gNBale.js → avatar-DI5vtg3k.js} +70 -71
  22. package/dist/avatar-DI5vtg3k.js.map +1 -0
  23. package/dist/{avatar-N3BODeY1.cjs → avatar-r7OnlyPP.cjs} +3 -3
  24. package/dist/avatar-r7OnlyPP.cjs.map +1 -0
  25. package/dist/badge.cjs +1 -1
  26. package/dist/badge.js +1 -1
  27. package/dist/{boat-CWXlAq65.cjs → boat-COlWXsv8.cjs} +2 -2
  28. package/dist/{boat-CWXlAq65.cjs.map → boat-COlWXsv8.cjs.map} +1 -1
  29. package/dist/{boat-BQoWbDxu.js → boat-Cp8VgFWP.js} +2 -2
  30. package/dist/{boat-BQoWbDxu.js.map → boat-Cp8VgFWP.js.map} +1 -1
  31. package/dist/boat.cjs +1 -1
  32. package/dist/boat.js +1 -1
  33. package/dist/busy.cjs +1 -1
  34. package/dist/busy.js +1 -1
  35. package/dist/button.cjs +1 -1
  36. package/dist/button.js +1 -1
  37. package/dist/card.cjs +1 -1
  38. package/dist/card.js +1 -1
  39. package/dist/{checkbox-DBO-neG5.js → checkbox-Cbkcvj-3.js} +2 -2
  40. package/dist/{checkbox-DBO-neG5.js.map → checkbox-Cbkcvj-3.js.map} +1 -1
  41. package/dist/{checkbox-DIYmuPtk.cjs → checkbox-u355dDEB.cjs} +2 -2
  42. package/dist/{checkbox-DIYmuPtk.cjs.map → checkbox-u355dDEB.cjs.map} +1 -1
  43. package/dist/checkbox.cjs +1 -1
  44. package/dist/checkbox.js +1 -1
  45. package/dist/{chips-BYE5hQQr.cjs → chips-BFn88CJs.cjs} +2 -2
  46. package/dist/{chips-BYE5hQQr.cjs.map → chips-BFn88CJs.cjs.map} +1 -1
  47. package/dist/{chips-C_7proIN.js → chips-Y5nzkBJw.js} +3 -3
  48. package/dist/{chips-C_7proIN.js.map → chips-Y5nzkBJw.js.map} +1 -1
  49. package/dist/chips.cjs +1 -1
  50. package/dist/chips.js +1 -1
  51. package/dist/code-highlight.cjs +1 -1
  52. package/dist/code-highlight.js +1 -1
  53. package/dist/{code-preview-CzcyBpl-.cjs → code-preview-CsQWYHL5.cjs} +3 -3
  54. package/dist/{code-preview-CzcyBpl-.cjs.map → code-preview-CsQWYHL5.cjs.map} +1 -1
  55. package/dist/{code-preview-CQ-EAz9F.js → code-preview-D2peRzvQ.js} +3 -3
  56. package/dist/{code-preview-CQ-EAz9F.js.map → code-preview-D2peRzvQ.js.map} +1 -1
  57. package/dist/components.cjs +1 -1
  58. package/dist/components.js +1 -1
  59. package/dist/content-drawer.cjs +1 -1
  60. package/dist/content-drawer.js +1 -1
  61. package/dist/{context-object-K_1gDFu-.cjs → context-object-bNADqf9U.cjs} +2 -2
  62. package/dist/{context-object-K_1gDFu-.cjs.map → context-object-bNADqf9U.cjs.map} +1 -1
  63. package/dist/{context-object-CDDP4bTk.js → context-object-u5gBaozZ.js} +46 -32
  64. package/dist/{context-object-CDDP4bTk.js.map → context-object-u5gBaozZ.js.map} +1 -1
  65. package/dist/{date-range-WqwMEh16.js → date-range-DnKu_v9b.js} +4 -4
  66. package/dist/{date-range-WqwMEh16.js.map → date-range-DnKu_v9b.js.map} +1 -1
  67. package/dist/{date-range-DCghMsV8.cjs → date-range-Ya1J9HQQ.cjs} +2 -2
  68. package/dist/{date-range-DCghMsV8.cjs.map → date-range-Ya1J9HQQ.cjs.map} +1 -1
  69. package/dist/{date-range-inline-Z0ASWN4I.cjs → date-range-inline-CXBrxoim.cjs} +2 -2
  70. package/dist/{date-range-inline-Z0ASWN4I.cjs.map → date-range-inline-CXBrxoim.cjs.map} +1 -1
  71. package/dist/{date-range-inline-JgIiOHQM.js → date-range-inline-Q5qz2lG_.js} +3 -3
  72. package/dist/{date-range-inline-JgIiOHQM.js.map → date-range-inline-Q5qz2lG_.js.map} +1 -1
  73. package/dist/date-range-inline.cjs +1 -1
  74. package/dist/date-range-inline.js +1 -1
  75. package/dist/date-range.cjs +1 -1
  76. package/dist/date-range.js +1 -1
  77. package/dist/{delay-LnWlFwkK.js → delay-DVqCtHik.js} +2 -2
  78. package/dist/delay-DVqCtHik.js.map +1 -0
  79. package/dist/{delay-Ew4cphs1.cjs → delay-Dl6B_yyv.cjs} +2 -2
  80. package/dist/delay-Dl6B_yyv.cjs.map +1 -0
  81. package/dist/delay.cjs +1 -1
  82. package/dist/delay.js +1 -1
  83. package/dist/{details-C01m-iWQ.cjs → details-LZ_GGbW-.cjs} +2 -2
  84. package/dist/{details-C01m-iWQ.cjs.map → details-LZ_GGbW-.cjs.map} +1 -1
  85. package/dist/{details-BVEV0hUx.js → details-w1ooWiKA.js} +2 -2
  86. package/dist/{details-BVEV0hUx.js.map → details-w1ooWiKA.js.map} +1 -1
  87. package/dist/details.cjs +1 -1
  88. package/dist/details.js +1 -1
  89. package/dist/{dialog-content-B_w_iJyW.js → dialog-content-B7V_S6GR.js} +4 -4
  90. package/dist/{dialog-content-B_w_iJyW.js.map → dialog-content-B7V_S6GR.js.map} +1 -1
  91. package/dist/{dialog-content-BFmy9Sbo.cjs → dialog-content-VroTT22f.cjs} +2 -2
  92. package/dist/{dialog-content-BFmy9Sbo.cjs.map → dialog-content-VroTT22f.cjs.map} +1 -1
  93. package/dist/{dialog-service-DwJ_7FB3.js → dialog-service-Dpz_NIRP.js} +2 -2
  94. package/dist/dialog-service-Dpz_NIRP.js.map +1 -0
  95. package/dist/{dialog-service-DS-aEjlX.cjs → dialog-service-Wna1JO09.cjs} +2 -2
  96. package/dist/dialog-service-Wna1JO09.cjs.map +1 -0
  97. package/dist/dialog.cjs +1 -1
  98. package/dist/dialog.js +2 -2
  99. package/dist/{divider-BWG6TAr2.cjs → divider-CegpMW-2.cjs} +2 -2
  100. package/dist/{divider-BWG6TAr2.cjs.map → divider-CegpMW-2.cjs.map} +1 -1
  101. package/dist/{divider-FkKYlJY3.js → divider-OuCqxcUB.js} +3 -3
  102. package/dist/{divider-FkKYlJY3.js.map → divider-OuCqxcUB.js.map} +1 -1
  103. package/dist/divider.cjs +1 -1
  104. package/dist/divider.js +1 -1
  105. package/dist/{dropdown-content-BStJGihR.js → dropdown-content-BuKCBydD.js} +3 -3
  106. package/dist/{dropdown-content-BStJGihR.js.map → dropdown-content-BuKCBydD.js.map} +1 -1
  107. package/dist/{dropdown-content-m1aSF-Oh.cjs → dropdown-content-f0LuoUKR.cjs} +2 -2
  108. package/dist/{dropdown-content-m1aSF-Oh.cjs.map → dropdown-content-f0LuoUKR.cjs.map} +1 -1
  109. package/dist/dropdown.cjs +1 -1
  110. package/dist/dropdown.js +1 -1
  111. package/dist/{email-recipients-CbZNnzoj.cjs → email-recipients-BlEtpbdr.cjs} +2 -2
  112. package/dist/{email-recipients-CbZNnzoj.cjs.map → email-recipients-BlEtpbdr.cjs.map} +1 -1
  113. package/dist/{email-recipients-CpghUhQ1.js → email-recipients-CvSwxcso.js} +7 -7
  114. package/dist/{email-recipients-CpghUhQ1.js.map → email-recipients-CvSwxcso.js.map} +1 -1
  115. package/dist/extra.cjs +1 -1
  116. package/dist/extra.js +1 -1
  117. package/dist/{flex-BNVtJlgu.cjs → flex-Cdv04m_E.cjs} +2 -2
  118. package/dist/{flex-BNVtJlgu.cjs.map → flex-Cdv04m_E.cjs.map} +1 -1
  119. package/dist/{flex-C6yj5Sxi.js → flex-HyTTaFX9.js} +2 -2
  120. package/dist/{flex-C6yj5Sxi.js.map → flex-HyTTaFX9.js.map} +1 -1
  121. package/dist/{form-C85Qev2L.js → form-BNTXCzQo.js} +2 -2
  122. package/dist/{form-C85Qev2L.js.map → form-BNTXCzQo.js.map} +1 -1
  123. package/dist/{form-ns7c4fcj.cjs → form-CXRNS-AS.cjs} +2 -2
  124. package/dist/{form-ns7c4fcj.cjs.map → form-CXRNS-AS.cjs.map} +1 -1
  125. package/dist/form.cjs +1 -1
  126. package/dist/form.js +1 -1
  127. package/dist/{formField.mixin-CKb_MTS7.js → formField.mixin-MhetZTeW.js} +2 -2
  128. package/dist/{formField.mixin-CKb_MTS7.js.map → formField.mixin-MhetZTeW.js.map} +1 -1
  129. package/dist/{formField.mixin-B3CXBJKX.cjs → formField.mixin-zezhhNIA.cjs} +2 -2
  130. package/dist/{formField.mixin-B3CXBJKX.cjs.map → formField.mixin-zezhhNIA.cjs.map} +1 -1
  131. package/dist/{icon-DKPLcbdu.js → icon-C71zn7AW.js} +2 -2
  132. package/dist/{icon-DKPLcbdu.js.map → icon-C71zn7AW.js.map} +1 -1
  133. package/dist/{icon-button-DiRex-eZ.cjs → icon-button-CO8rMFUR.cjs} +2 -2
  134. package/dist/{icon-button-DiRex-eZ.cjs.map → icon-button-CO8rMFUR.cjs.map} +1 -1
  135. package/dist/{icon-button-CIkRej0r.js → icon-button-KoYGGW6a.js} +3 -3
  136. package/dist/{icon-button-CIkRej0r.js.map → icon-button-KoYGGW6a.js.map} +1 -1
  137. package/dist/{icon-DUstfLaC.cjs → icon-e6XggWlw.cjs} +2 -2
  138. package/dist/{icon-DUstfLaC.cjs.map → icon-e6XggWlw.cjs.map} +1 -1
  139. package/dist/icons.cjs +1 -1
  140. package/dist/icons.js +1 -1
  141. package/dist/index-CCi1otmh.cjs +2 -0
  142. package/dist/{index-DyJ0oDpR.cjs.map → index-CCi1otmh.cjs.map} +1 -1
  143. package/dist/index-CW6PhEkx.js +17 -0
  144. package/dist/{index-CuY8m6ta.js.map → index-CW6PhEkx.js.map} +1 -1
  145. package/dist/index.cjs +1 -1
  146. package/dist/index.js +216 -215
  147. package/dist/{input-B7MqsI2h.cjs → input-CFvMe_KR.cjs} +2 -2
  148. package/dist/{input-B7MqsI2h.cjs.map → input-CFvMe_KR.cjs.map} +1 -1
  149. package/dist/{input-DODcsAZu.js → input-LTpT28E4.js} +3 -3
  150. package/dist/{input-DODcsAZu.js.map → input-LTpT28E4.js.map} +1 -1
  151. package/dist/input.cjs +1 -1
  152. package/dist/input.js +1 -1
  153. package/dist/layout.cjs +1 -1
  154. package/dist/layout.js +1 -1
  155. package/dist/{list-Cx6tpiFE.js → list-CAJJTrLl.js} +2 -2
  156. package/dist/{list-Cx6tpiFE.js.map → list-CAJJTrLl.js.map} +1 -1
  157. package/dist/{list-DxduK4sb.cjs → list-D2dyHYN9.cjs} +2 -2
  158. package/dist/{list-DxduK4sb.cjs.map → list-D2dyHYN9.cjs.map} +1 -1
  159. package/dist/list.cjs +1 -1
  160. package/dist/list.js +1 -1
  161. package/dist/{litElement.mixin-B12Y4mEr.cjs → litElement.mixin-4iclDbF3.cjs} +2 -2
  162. package/dist/{litElement.mixin-B12Y4mEr.cjs.map → litElement.mixin-4iclDbF3.cjs.map} +1 -1
  163. package/dist/{litElement.mixin-BZ8iGvPl.js → litElement.mixin-SeAIQuRg.js} +2 -2
  164. package/dist/{litElement.mixin-BZ8iGvPl.js.map → litElement.mixin-SeAIQuRg.js.map} +1 -1
  165. package/dist/mailbox.cjs +1 -1
  166. package/dist/mailbox.js +1 -1
  167. package/dist/{map-sgCf8pYD.cjs → map-CMkosiu4.cjs} +2 -2
  168. package/dist/{map-sgCf8pYD.cjs.map → map-CMkosiu4.cjs.map} +1 -1
  169. package/dist/{map-dT8yp1iK.js → map-DwMX_LnY.js} +2 -2
  170. package/dist/{map-dT8yp1iK.js.map → map-DwMX_LnY.js.map} +1 -1
  171. package/dist/map.cjs +1 -1
  172. package/dist/map.js +1 -1
  173. package/dist/{media-CgH0D5rY.js → media-B98kFRvT.js} +2 -2
  174. package/dist/{media-CgH0D5rY.js.map → media-B98kFRvT.js.map} +1 -1
  175. package/dist/{media-CwjupDLj.cjs → media-DxbLFhc5.cjs} +2 -2
  176. package/dist/{media-CwjupDLj.cjs.map → media-DxbLFhc5.cjs.map} +1 -1
  177. package/dist/{menu-oZRtmhVd.js → menu-ChMwBut9.js} +3 -3
  178. package/dist/{menu-oZRtmhVd.js.map → menu-ChMwBut9.js.map} +1 -1
  179. package/dist/{menu-X25Q7tpY.cjs → menu-DTRbll_X.cjs} +2 -2
  180. package/dist/{menu-X25Q7tpY.cjs.map → menu-DTRbll_X.cjs.map} +1 -1
  181. package/dist/menu.cjs +1 -1
  182. package/dist/menu.js +1 -1
  183. package/dist/nav-drawer.cjs +1 -1
  184. package/dist/nav-drawer.js +1 -1
  185. package/dist/{notification-service-y0T4rXdS.js → notification-service-BiEAwrL6.js} +4 -4
  186. package/dist/notification-service-BiEAwrL6.js.map +1 -0
  187. package/dist/{notification-service-kLTt3JtW.cjs → notification-service-h3GuXar7.cjs} +2 -2
  188. package/dist/notification-service-h3GuXar7.cjs.map +1 -0
  189. package/dist/notification.cjs +1 -1
  190. package/dist/notification.js +2 -2
  191. package/dist/{notify-BnjvURrc.js → notify-1NUgv3Qz.js} +2 -2
  192. package/dist/{notify-BnjvURrc.js.map → notify-1NUgv3Qz.js.map} +1 -1
  193. package/dist/{notify-EGStToeW.cjs → notify-CP9929J0.cjs} +2 -2
  194. package/dist/{notify-EGStToeW.cjs.map → notify-CP9929J0.cjs.map} +1 -1
  195. package/dist/{option-CD1NSUXu.js → option-DvEFWkrm.js} +2 -2
  196. package/dist/{option-CD1NSUXu.js.map → option-DvEFWkrm.js.map} +1 -1
  197. package/dist/{option-D4_WBCWz.cjs → option-VxlQIYFR.cjs} +2 -2
  198. package/dist/{option-D4_WBCWz.cjs.map → option-VxlQIYFR.cjs.map} +1 -1
  199. package/dist/option.cjs +1 -1
  200. package/dist/option.js +1 -1
  201. package/dist/{payment-card-form-96Rw6cLf.cjs → payment-card-form-CAPM_YfT.cjs} +2 -2
  202. package/dist/{payment-card-form-96Rw6cLf.cjs.map → payment-card-form-CAPM_YfT.cjs.map} +1 -1
  203. package/dist/{payment-card-form-lWlhuDb3.js → payment-card-form-CEd08rns.js} +3 -3
  204. package/dist/{payment-card-form-lWlhuDb3.js.map → payment-card-form-CEd08rns.js.map} +1 -1
  205. package/dist/{progress-BkxGzGOm.cjs → progress-Bu8wtPRI.cjs} +2 -2
  206. package/dist/{progress-BkxGzGOm.cjs.map → progress-Bu8wtPRI.cjs.map} +1 -1
  207. package/dist/{progress-DGk9tC4y.js → progress-CL4SPk5b.js} +2 -2
  208. package/dist/{progress-DGk9tC4y.js.map → progress-CL4SPk5b.js.map} +1 -1
  209. package/dist/progress.cjs +1 -1
  210. package/dist/progress.js +1 -1
  211. package/dist/{radio-button-DHM38A7h.js → radio-button-B087BeTl.js} +3 -3
  212. package/dist/{radio-button-DHM38A7h.js.map → radio-button-B087BeTl.js.map} +1 -1
  213. package/dist/{radio-button-w9ZxzEPa.cjs → radio-button-vz9nLR-m.cjs} +2 -2
  214. package/dist/{radio-button-w9ZxzEPa.cjs.map → radio-button-vz9nLR-m.cjs.map} +1 -1
  215. package/dist/radio-group.cjs +1 -1
  216. package/dist/radio-group.js +1 -1
  217. package/dist/route.component-D1xujH8n.js +343 -0
  218. package/dist/route.component-D1xujH8n.js.map +1 -0
  219. package/dist/route.component-ke_nkgvP.cjs +12 -0
  220. package/dist/route.component-ke_nkgvP.cjs.map +1 -0
  221. package/dist/rxjs-utils.cjs +1 -1
  222. package/dist/rxjs-utils.js +1 -1
  223. package/dist/{schmancy-steps-container-WYO4SOrb.js → schmancy-steps-container-CEvpeKIe.js} +12 -12
  224. package/dist/schmancy-steps-container-CEvpeKIe.js.map +1 -0
  225. package/dist/{schmancy-steps-container-CPSL_8H0.cjs → schmancy-steps-container-DvSClSo1.cjs} +6 -6
  226. package/dist/schmancy-steps-container-DvSClSo1.cjs.map +1 -0
  227. package/dist/{select-CxCcgqW_.cjs → select-4VXPMU8r.cjs} +2 -2
  228. package/dist/{select-CxCcgqW_.cjs.map → select-4VXPMU8r.cjs.map} +1 -1
  229. package/dist/{select-bDAzyQOZ.js → select-BoUYZPyl.js} +3 -3
  230. package/dist/{select-bDAzyQOZ.js.map → select-BoUYZPyl.js.map} +1 -1
  231. package/dist/select.cjs +1 -1
  232. package/dist/select.js +1 -1
  233. package/dist/{selector-hook-CIpuCUbr.js → selector-hook-ChImS_JT.js} +2 -2
  234. package/dist/{selector-hook-CIpuCUbr.js.map → selector-hook-ChImS_JT.js.map} +1 -1
  235. package/dist/{selector-hook-DB8RFC1y.cjs → selector-hook-cqmAutda.cjs} +2 -2
  236. package/dist/{selector-hook-DB8RFC1y.cjs.map → selector-hook-cqmAutda.cjs.map} +1 -1
  237. package/dist/{sheet-pO6PmiAf.js → sheet-C6djCmPV.js} +4 -4
  238. package/dist/{sheet-pO6PmiAf.js.map → sheet-C6djCmPV.js.map} +1 -1
  239. package/dist/{sheet-Bm0ukLXt.cjs → sheet-IfHxyIo_.cjs} +2 -2
  240. package/dist/{sheet-Bm0ukLXt.cjs.map → sheet-IfHxyIo_.cjs.map} +1 -1
  241. package/dist/sheet.cjs +1 -1
  242. package/dist/sheet.js +2 -2
  243. package/dist/{sheet.service-DV9xNhS8.cjs → sheet.service-DR9KJfMa.cjs} +2 -2
  244. package/dist/sheet.service-DR9KJfMa.cjs.map +1 -0
  245. package/dist/{sheet.service-ieSXeqCj.js → sheet.service-DZGMoIHy.js} +2 -2
  246. package/dist/sheet.service-DZGMoIHy.js.map +1 -0
  247. package/dist/{slider-BwXXp74f.cjs → slider-BfNNQ6qI.cjs} +2 -2
  248. package/dist/{slider-BwXXp74f.cjs.map → slider-BfNNQ6qI.cjs.map} +1 -1
  249. package/dist/{slider-CxZGMYF-.js → slider-DERHNjqI.js} +3 -3
  250. package/dist/{slider-CxZGMYF-.js.map → slider-DERHNjqI.js.map} +1 -1
  251. package/dist/slider.cjs +1 -1
  252. package/dist/slider.js +1 -1
  253. package/dist/{spinner-b3VWC6It.js → spinner-BOdUWwXq.js} +2 -2
  254. package/dist/{spinner-b3VWC6It.js.map → spinner-BOdUWwXq.js.map} +1 -1
  255. package/dist/{spinner-nN77H00p.cjs → spinner-Bip-lfsc.cjs} +2 -2
  256. package/dist/{spinner-nN77H00p.cjs.map → spinner-Bip-lfsc.cjs.map} +1 -1
  257. package/dist/steps.cjs +1 -1
  258. package/dist/steps.js +1 -1
  259. package/dist/store.cjs +1 -1
  260. package/dist/store.js +2 -2
  261. package/dist/{surface-Cm8zYK5d.cjs → surface--Nh6Q896.cjs} +2 -2
  262. package/dist/{surface-Cm8zYK5d.cjs.map → surface--Nh6Q896.cjs.map} +1 -1
  263. package/dist/{surface-C2WjztRc.js → surface-CyhVK7JG.js} +2 -2
  264. package/dist/{surface-C2WjztRc.js.map → surface-CyhVK7JG.js.map} +1 -1
  265. package/dist/surface.cjs +1 -1
  266. package/dist/surface.js +1 -1
  267. package/dist/{table-Dp7npAuy.js → table-DnPQ0zCd.js} +2 -2
  268. package/dist/{table-Dp7npAuy.js.map → table-DnPQ0zCd.js.map} +1 -1
  269. package/dist/{table-BfhuaB9J.cjs → table-x9dbc3AY.cjs} +2 -2
  270. package/dist/{table-BfhuaB9J.cjs.map → table-x9dbc3AY.cjs.map} +1 -1
  271. package/dist/table.cjs +1 -1
  272. package/dist/table.js +1 -1
  273. package/dist/{tabs-compatibility-CA-wWRoe.cjs → tabs-compatibility-D3HfZRKv.cjs} +2 -2
  274. package/dist/{tabs-compatibility-CA-wWRoe.cjs.map → tabs-compatibility-D3HfZRKv.cjs.map} +1 -1
  275. package/dist/{tabs-compatibility-U4cq8X3I.js → tabs-compatibility-Dazz1g0Q.js} +2 -2
  276. package/dist/{tabs-compatibility-U4cq8X3I.js.map → tabs-compatibility-Dazz1g0Q.js.map} +1 -1
  277. package/dist/tabs.cjs +1 -1
  278. package/dist/tabs.js +1 -1
  279. package/dist/tailwind.mixin-Bwf86oi5.cjs +2 -0
  280. package/dist/{tailwind.mixin-BlZIIaOE.cjs.map → tailwind.mixin-Bwf86oi5.cjs.map} +1 -1
  281. package/dist/tailwind.mixin-kvywknTU.js +43 -0
  282. package/dist/{tailwind.mixin-D2DVHS9V.js.map → tailwind.mixin-kvywknTU.js.map} +1 -1
  283. package/dist/teleport.cjs +1 -1
  284. package/dist/teleport.js +1 -1
  285. package/dist/{textarea-BRNj3tvi.js → textarea-bHJFDEva.js} +2 -2
  286. package/dist/{textarea-BRNj3tvi.js.map → textarea-bHJFDEva.js.map} +1 -1
  287. package/dist/{textarea-CxZKoXaU.cjs → textarea-xRo6a5-Y.cjs} +2 -2
  288. package/dist/{textarea-CxZKoXaU.cjs.map → textarea-xRo6a5-Y.cjs.map} +1 -1
  289. package/dist/textarea.cjs +1 -1
  290. package/dist/textarea.js +1 -1
  291. package/dist/{theme-button-N_Wt3bos.js → theme-button-BPFuZSBY.js} +2 -2
  292. package/dist/{theme-button-N_Wt3bos.js.map → theme-button-BPFuZSBY.js.map} +1 -1
  293. package/dist/{theme-button-MrIoOFEB.cjs → theme-button-lvD9uCTZ.cjs} +2 -2
  294. package/dist/{theme-button-MrIoOFEB.cjs.map → theme-button-lvD9uCTZ.cjs.map} +1 -1
  295. package/dist/theme-button.cjs +1 -1
  296. package/dist/theme-button.js +1 -1
  297. package/dist/theme.cjs +1 -1
  298. package/dist/{theme.component-6VfET_t-.js → theme.component-C-PfGTcN.js} +2 -2
  299. package/dist/{theme.component-6VfET_t-.js.map → theme.component-C-PfGTcN.js.map} +1 -1
  300. package/dist/{theme.component-B_EubPsq.cjs → theme.component-DkcM8QzH.cjs} +2 -2
  301. package/dist/{theme.component-B_EubPsq.cjs.map → theme.component-DkcM8QzH.cjs.map} +1 -1
  302. package/dist/theme.js +1 -1
  303. package/dist/{timezone-DR_4m9Cc.js → timezone-BDSbTYTk.js} +3 -3
  304. package/dist/{timezone-DR_4m9Cc.js.map → timezone-BDSbTYTk.js.map} +1 -1
  305. package/dist/{timezone-BVd9UEba.cjs → timezone-OLjylRB7.cjs} +2 -2
  306. package/dist/{timezone-BVd9UEba.cjs.map → timezone-OLjylRB7.cjs.map} +1 -1
  307. package/dist/{tooltip-BpPHc8Wr.js → tooltip-CWiU3SEA.js} +2 -2
  308. package/dist/{tooltip-BpPHc8Wr.js.map → tooltip-CWiU3SEA.js.map} +1 -1
  309. package/dist/{tooltip-DOQVLRaH.cjs → tooltip-iM0cfzsV.cjs} +2 -2
  310. package/dist/{tooltip-DOQVLRaH.cjs.map → tooltip-iM0cfzsV.cjs.map} +1 -1
  311. package/dist/tooltip.cjs +1 -1
  312. package/dist/tooltip.js +1 -1
  313. package/dist/{tree-BANkyLn7.cjs → tree-CXIrKI2O.cjs} +2 -2
  314. package/dist/{tree-BANkyLn7.cjs.map → tree-CXIrKI2O.cjs.map} +1 -1
  315. package/dist/{tree-C5zu8wXc.js → tree-JUf2hHiW.js} +2 -2
  316. package/dist/{tree-C5zu8wXc.js.map → tree-JUf2hHiW.js.map} +1 -1
  317. package/dist/tree.cjs +1 -1
  318. package/dist/tree.js +1 -1
  319. package/dist/{typewriter-CdztqkoR.js → typewriter-DQuULTla.js} +4 -4
  320. package/dist/{typewriter-CdztqkoR.js.map → typewriter-DQuULTla.js.map} +1 -1
  321. package/dist/{typewriter-DS0D0UZM.cjs → typewriter-YW7NGa6H.cjs} +2 -2
  322. package/dist/{typewriter-DS0D0UZM.cjs.map → typewriter-YW7NGa6H.cjs.map} +1 -1
  323. package/dist/typewriter.cjs +1 -1
  324. package/dist/typewriter.js +1 -1
  325. package/dist/{typography-C8vZfuLF.cjs → typography-CkLztts5.cjs} +2 -2
  326. package/dist/{typography-C8vZfuLF.cjs.map → typography-CkLztts5.cjs.map} +1 -1
  327. package/dist/{typography-o9FJ6Lzo.js → typography-kXb173Io.js} +2 -2
  328. package/dist/{typography-o9FJ6Lzo.js.map → typography-kXb173Io.js.map} +1 -1
  329. package/dist/typography.cjs +1 -1
  330. package/dist/typography.js +1 -1
  331. package/package.json +1 -1
  332. package/types/src/area/area.component.d.ts +25 -5
  333. package/types/src/area/index.d.ts +1 -0
  334. package/types/src/area/route.component.d.ts +43 -0
  335. package/types/src/area/route.test.d.ts +20 -0
  336. package/types/src/steps/schmancy-steps-container.d.ts +9 -0
  337. package/types/src/store/context-collection.d.ts +26 -2
  338. package/dist/area.component-C86pi_TT.js +0 -283
  339. package/dist/area.component-C86pi_TT.js.map +0 -1
  340. package/dist/area.component-nX_dCv4R.cjs +0 -8
  341. package/dist/area.component-nX_dCv4R.cjs.map +0 -1
  342. package/dist/avatar-D3gNBale.js.map +0 -1
  343. package/dist/avatar-N3BODeY1.cjs.map +0 -1
  344. package/dist/delay-Ew4cphs1.cjs.map +0 -1
  345. package/dist/delay-LnWlFwkK.js.map +0 -1
  346. package/dist/dialog-service-DS-aEjlX.cjs.map +0 -1
  347. package/dist/dialog-service-DwJ_7FB3.js.map +0 -1
  348. package/dist/index-CuY8m6ta.js +0 -19
  349. package/dist/index-DyJ0oDpR.cjs +0 -2
  350. package/dist/notification-service-kLTt3JtW.cjs.map +0 -1
  351. package/dist/notification-service-y0T4rXdS.js.map +0 -1
  352. package/dist/schmancy-steps-container-CPSL_8H0.cjs.map +0 -1
  353. package/dist/schmancy-steps-container-WYO4SOrb.js.map +0 -1
  354. package/dist/sheet.service-DV9xNhS8.cjs.map +0 -1
  355. package/dist/sheet.service-ieSXeqCj.js.map +0 -1
  356. package/dist/tailwind.mixin-BlZIIaOE.cjs +0 -2
  357. package/dist/tailwind.mixin-D2DVHS9V.js +0 -43
@@ -1 +1 @@
1
- {"version":3,"file":"progress-DGk9tC4y.js","sources":["../src/progress/progress.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { styleMap } from 'lit/directives/style-map.js'\n\n@customElement('schmancy-progress')\nexport default class SchmancyProgress extends TailwindElement(css`\n :host {\n display: block;\n }\n\n @keyframes indeterminate {\n 0% {\n left: -30%;\n }\n 100% {\n left: 100%;\n }\n }\n\n .indeterminate-animation {\n animation: indeterminate 1.5s infinite ease-in-out;\n }\n`) {\n @property({ type: Number, reflect: true })\n value = 0\n\n @property({ type: Number, reflect: true })\n max = 100\n\n @property({ type: Boolean, reflect: true })\n indeterminate = false\n\n @property({ type: String, reflect: true })\n size: 'sm' | 'md' | 'lg' = 'md'\n\n @property({ type: String, reflect: true })\n color: 'primary' | 'secondary' | 'tertiary' | 'error' | 'success' = 'primary'\n\n @property({ type: Boolean, reflect: true })\n glass = false\n\n private get percentage(): number {\n if (this.indeterminate) return 0\n return Math.min(100, Math.max(0, (this.value / this.max) * 100))\n }\n\n protected render() {\n const containerClasses = {\n 'w-full': true,\n 'relative': true,\n 'overflow-hidden': true,\n 'rounded-full': true,\n 'h-0.5': this.size === 'sm',\n 'h-1': this.size === 'md',\n 'h-2': this.size === 'lg',\n // Glass effect background\n 'backdrop-blur-xl': this.glass,\n 'backdrop-saturate-150': this.glass,\n 'bg-surface-container/20': this.glass && !this.indeterminate,\n 'bg-surface-container': !this.glass,\n 'shadow-[inset_0_1px_2px_0_rgba(0,0,0,0.1)]': this.glass,\n 'border': this.glass,\n 'border-outline/20': this.glass\n }\n\n const barClasses = {\n 'h-full': true,\n 'rounded-full': true,\n 'transition-all': true,\n 'duration-300': true,\n 'ease-in-out': true,\n 'relative': true,\n 'bg-primary-default': this.color === 'primary' && !this.glass,\n 'bg-secondary-default': this.color === 'secondary' && !this.glass,\n 'bg-tertiary-default': this.color === 'tertiary' && !this.glass,\n 'bg-error-default': this.color === 'error' && !this.glass,\n 'bg-success-default': this.color === 'success' && !this.glass,\n 'w-[30%]': this.indeterminate,\n 'absolute': this.indeterminate,\n 'indeterminate-animation': this.indeterminate\n }\n\n const barStyles = this.indeterminate \n ? {} \n : { width: `${this.percentage}%` }\n\n // Glass effect bar classes\n const glassBarClasses = {\n 'backdrop-blur-sm': this.glass,\n 'shadow-[0_0_20px_rgba(0,0,0,0.1)]': this.glass,\n // Use semi-transparent background colors for glass effect\n 'bg-primary-default/70': this.glass && this.color === 'primary',\n 'bg-secondary-default/70': this.glass && this.color === 'secondary',\n 'bg-tertiary-default/70': this.glass && this.color === 'tertiary',\n 'bg-error-default/70': this.glass && this.color === 'error',\n 'bg-success-default/70': this.glass && this.color === 'success',\n }\n\n return html`\n <div class=\"${classMap(containerClasses)}\">\n <div \n class=\"${classMap({...barClasses, ...glassBarClasses})}\"\n style=\"${styleMap(barStyles)}\"\n role=\"progressbar\"\n aria-valuenow=\"${this.value}\"\n aria-valuemin=\"0\"\n aria-valuemax=\"${this.max}\"\n >\n ${this.glass ? html`\n <!-- Glass shine effect -->\n <div class=\"absolute inset-0 bg-gradient-to-b from-surface-on/20 to-transparent rounded-full\"></div>\n ` : ''}\n </div>\n </div>\n `\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'schmancy-progress': SchmancyProgress\n }\n}"],"names":["SchmancyProgress","TailwindElement","css","constructor","super","arguments","this","value","max","indeterminate","size","color","glass","percentage","Math","min","render","containerClasses","relative","border","barClasses","absolute","barStyles","width","glassBarClasses","html","classMap","styleMap","__decorateClass","property","type","Number","reflect","prototype","Boolean","String","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"progress-CL4SPk5b.js","sources":["../src/progress/progress.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { styleMap } from 'lit/directives/style-map.js'\n\n@customElement('schmancy-progress')\nexport default class SchmancyProgress extends TailwindElement(css`\n :host {\n display: block;\n }\n\n @keyframes indeterminate {\n 0% {\n left: -30%;\n }\n 100% {\n left: 100%;\n }\n }\n\n .indeterminate-animation {\n animation: indeterminate 1.5s infinite ease-in-out;\n }\n`) {\n @property({ type: Number, reflect: true })\n value = 0\n\n @property({ type: Number, reflect: true })\n max = 100\n\n @property({ type: Boolean, reflect: true })\n indeterminate = false\n\n @property({ type: String, reflect: true })\n size: 'sm' | 'md' | 'lg' = 'md'\n\n @property({ type: String, reflect: true })\n color: 'primary' | 'secondary' | 'tertiary' | 'error' | 'success' = 'primary'\n\n @property({ type: Boolean, reflect: true })\n glass = false\n\n private get percentage(): number {\n if (this.indeterminate) return 0\n return Math.min(100, Math.max(0, (this.value / this.max) * 100))\n }\n\n protected render() {\n const containerClasses = {\n 'w-full': true,\n 'relative': true,\n 'overflow-hidden': true,\n 'rounded-full': true,\n 'h-0.5': this.size === 'sm',\n 'h-1': this.size === 'md',\n 'h-2': this.size === 'lg',\n // Glass effect background\n 'backdrop-blur-xl': this.glass,\n 'backdrop-saturate-150': this.glass,\n 'bg-surface-container/20': this.glass && !this.indeterminate,\n 'bg-surface-container': !this.glass,\n 'shadow-[inset_0_1px_2px_0_rgba(0,0,0,0.1)]': this.glass,\n 'border': this.glass,\n 'border-outline/20': this.glass\n }\n\n const barClasses = {\n 'h-full': true,\n 'rounded-full': true,\n 'transition-all': true,\n 'duration-300': true,\n 'ease-in-out': true,\n 'relative': true,\n 'bg-primary-default': this.color === 'primary' && !this.glass,\n 'bg-secondary-default': this.color === 'secondary' && !this.glass,\n 'bg-tertiary-default': this.color === 'tertiary' && !this.glass,\n 'bg-error-default': this.color === 'error' && !this.glass,\n 'bg-success-default': this.color === 'success' && !this.glass,\n 'w-[30%]': this.indeterminate,\n 'absolute': this.indeterminate,\n 'indeterminate-animation': this.indeterminate\n }\n\n const barStyles = this.indeterminate \n ? {} \n : { width: `${this.percentage}%` }\n\n // Glass effect bar classes\n const glassBarClasses = {\n 'backdrop-blur-sm': this.glass,\n 'shadow-[0_0_20px_rgba(0,0,0,0.1)]': this.glass,\n // Use semi-transparent background colors for glass effect\n 'bg-primary-default/70': this.glass && this.color === 'primary',\n 'bg-secondary-default/70': this.glass && this.color === 'secondary',\n 'bg-tertiary-default/70': this.glass && this.color === 'tertiary',\n 'bg-error-default/70': this.glass && this.color === 'error',\n 'bg-success-default/70': this.glass && this.color === 'success',\n }\n\n return html`\n <div class=\"${classMap(containerClasses)}\">\n <div \n class=\"${classMap({...barClasses, ...glassBarClasses})}\"\n style=\"${styleMap(barStyles)}\"\n role=\"progressbar\"\n aria-valuenow=\"${this.value}\"\n aria-valuemin=\"0\"\n aria-valuemax=\"${this.max}\"\n >\n ${this.glass ? html`\n <!-- Glass shine effect -->\n <div class=\"absolute inset-0 bg-gradient-to-b from-surface-on/20 to-transparent rounded-full\"></div>\n ` : ''}\n </div>\n </div>\n `\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'schmancy-progress': SchmancyProgress\n }\n}"],"names":["SchmancyProgress","TailwindElement","css","constructor","super","arguments","this","value","max","indeterminate","size","color","glass","percentage","Math","min","render","containerClasses","relative","border","barClasses","absolute","barStyles","width","glassBarClasses","html","classMap","styleMap","__decorateClass","property","type","Number","reflect","prototype","Boolean","String","customElement"],"mappings":";;;;;;;;;;AAOA,IAAqBA,IAArB,cAA8CC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAA9D,cAAAC;AAAAC,aAAAC,SAAAA,GAmBEC,KAAAC,QAAQ,GAGRD,KAAAE,MAAM,KAGNF,KAAAG,oBAGAH,KAAAI,OAA2B,MAG3BJ,KAAAK,QAAoE,WAGpEL,KAAAM;EAAQ;AAAA,EAER,iBAAYC;AACV,WAAIP,KAAKG,gBAAsB,IACxBK,KAAKC,IAAI,KAAKD,KAAKN,IAAI,GAAIF,KAAKC,QAAQD,KAAKE,MAAO,GAAA,CAAA;AAAA,EAC7D;AAAA,EAEU,SAAAQ;AACR,UAAMC,IAAmB,EACvB,UAAA,IACAC,UAAAA,IACA,uBACA,gBAAA,IACA,SAASZ,KAAKI,SAAS,MACvB,OAAOJ,KAAKI,SAAS,MACrB,OAAOJ,KAAKI,SAAS,MAErB,oBAAoBJ,KAAKM,OACzB,yBAAyBN,KAAKM,OAC9B,2BAA2BN,KAAKM,UAAUN,KAAKG,eAC/C,yBAAyBH,KAAKM,OAC9B,8CAA8CN,KAAKM,OACnDO,QAAUb,KAAKM,OACf,qBAAqBN,KAAKM,MAAAA,GAGtBQ,IAAa,EACjB,UAAA,IACA,gBAAA,IACA,kBAAA,IACA,gBAAA,IACA,mBACAF,UAAAA,IACA,sBAAsBZ,KAAKK,UAAU,aAAVA,CAAwBL,KAAKM,OACxD,wBAAwBN,KAAKK,UAAU,eAAVA,CAA0BL,KAAKM,OAC5D,uBAAuBN,KAAKK,UAAU,cAAVA,CAAyBL,KAAKM,OAC1D,oBAAoBN,KAAKK,UAAU,WAAVA,CAAsBL,KAAKM,OACpD,sBAAsBN,KAAKK,UAAU,aAAVA,CAAwBL,KAAKM,OACxD,WAAWN,KAAKG,eAChBY,UAAYf,KAAKG,eACjB,2BAA2BH,KAAKG,iBAG5Ba,IAAYhB,KAAKG,gBACnB,KACA,EAAEc,OAAO,GAAGjB,KAAKO,UAAAA,IAAAA,GAGfW,IAAkB,EACtB,oBAAoBlB,KAAKM,OACzB,qCAAqCN,KAAKM,OAE1C,yBAAyBN,KAAKM,SAASN,KAAKK,UAAU,WACtD,2BAA2BL,KAAKM,SAASN,KAAKK,UAAU,aACxD,0BAA0BL,KAAKM,SAASN,KAAKK,UAAU,YACvD,uBAAuBL,KAAKM,SAASN,KAAKK,UAAU,SACpD,yBAAyBL,KAAKM,SAASN,KAAKK,UAAU,UAAVA;AAG9C,WAAOc;AAAAA,oBACSC,EAAST,CAAAA,CAAAA;AAAAA;AAAAA,mBAEVS,EAAS,KAAIN,GAAAA,GAAeI,EAAAA,CAAAA,CAAAA;AAAAA,mBAC5BG,EAASL,CAAAA,CAAAA;AAAAA;AAAAA,2BAEDhB,KAAKC,KAAAA;AAAAA;AAAAA,2BAELD,KAAKE,GAAAA;AAAAA;AAAAA,YAEpBF,KAAKM,QAAQa;AAAAA;AAAAA;AAAAA,cAGX,EAAA;AAAA;AAAA;AAAA;AAAA,EAIZ;AAAA;AA3FAG,EAAA,CADCC,EAAS,EAAEC,MAAMC,QAAQC,SAAAA,GAAS,CAAA,CAAA,GAlBhBhC,EAmBnBiC,WAAA,SAAA,CAAA,GAGAL,EAAA,CADCC,EAAS,EAAEC,MAAMC,QAAQC,SAAAA,GAAS,CAAA,CAAA,GArBhBhC,EAsBnBiC,WAAA,OAAA,CAAA,GAGAL,EAAA,CADCC,EAAS,EAAEC,MAAMI,SAASF,YAAS,CAAA,CAAA,GAxBjBhC,EAyBnBiC,WAAA,iBAAA,IAGAL,EAAA,CADCC,EAAS,EAAEC,MAAMK,QAAQH,SAAAA,GAAS,CAAA,CAAA,GA3BhBhC,EA4BnBiC,WAAA,QAAA,CAAA,GAGAL,EAAA,CADCC,EAAS,EAAEC,MAAMK,QAAQH,SAAAA,QA9BPhC,EA+BnBiC,WAAA,SAAA,CAAA,GAGAL,EAAA,CADCC,EAAS,EAAEC,MAAMI,SAASF,SAAAA,GAAS,CAAA,CAAA,GAjCjBhC,EAkCnBiC,WAAA,SAAA,CAAA,GAlCmBjC,IAArB4B,EAAA,CADCQ,EAAc,mBAAA,CAAA,GACMpC,CAAAA;"}
package/dist/progress.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";require("./progress-BkxGzGOm.cjs");
1
+ "use strict";require("./progress-Bu8wtPRI.cjs");
2
2
  //# sourceMappingURL=progress.cjs.map
package/dist/progress.js CHANGED
@@ -1,2 +1,2 @@
1
- import "./progress-DGk9tC4y.js";
1
+ import "./progress-CL4SPk5b.js";
2
2
  //# sourceMappingURL=progress.js.map
@@ -3,8 +3,8 @@ import { property as a, customElement as p } from "lit/decorators.js";
3
3
  import { Subject as v } from "rxjs";
4
4
  import "lit/directives/class-map.js";
5
5
  import "lit/directives/style-map.js";
6
- import { T as m } from "./tailwind.mixin-D2DVHS9V.js";
7
- import { F as b } from "./formField.mixin-CKb_MTS7.js";
6
+ import { T as m } from "./tailwind.mixin-kvywknTU.js";
7
+ import { F as b } from "./formField.mixin-MhetZTeW.js";
8
8
  import { when as y } from "lit/directives/when.js";
9
9
  var f = Object.defineProperty, k = Object.getOwnPropertyDescriptor, c = (e, t, l, s) => {
10
10
  for (var r, i = s > 1 ? void 0 : s ? k(t, l) : t, o = e.length - 1; o >= 0; o--) (r = e[o]) && (i = (s ? r(t, l, i) : r(i)) || i);
@@ -111,4 +111,4 @@ export {
111
111
  n as R,
112
112
  d as a
113
113
  };
114
- //# sourceMappingURL=radio-button-DHM38A7h.js.map
114
+ //# sourceMappingURL=radio-button-B087BeTl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-button-DHM38A7h.js","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\t\t\n\t\t// Listen for radio button clicks from children\n\t\tthis.addEventListener('radio-button-click', ((e: CustomEvent) => {\n\t\t\tthis.selection$.next(e.detail.value)\n\t\t}) as EventListener)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.selection$?.unsubscribe()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Find parent radio-group if exists\n\t\tthis.addEventListener('click', this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.removeEventListener('click', this.handleClick)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","subscribe","emitChange","updateChildRadioButtons","addEventListener","e","next","detail","disconnectedCallback","unsubscribe","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","removeEventListener","closest","event","CustomEvent","bubbles","composed","dispatchEvent","render","reflect"],"mappings":"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"}
1
+ {"version":3,"file":"radio-button-B087BeTl.js","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\t\t\n\t\t// Listen for radio button clicks from children\n\t\tthis.addEventListener('radio-button-click', ((e: CustomEvent) => {\n\t\t\tthis.selection$.next(e.detail.value)\n\t\t}) as EventListener)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.selection$?.unsubscribe()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Find parent radio-group if exists\n\t\tthis.addEventListener('click', this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.removeEventListener('click', this.handleClick)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","subscribe","emitChange","updateChildRadioButtons","addEventListener","e","next","detail","disconnectedCallback","unsubscribe","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","removeEventListener","closest","event","CustomEvent","bubbles","composed","dispatchEvent","render","reflect"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";const c=require("lit"),r=require("lit/decorators.js"),h=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const u=require("./tailwind.mixin-BlZIIaOE.cjs"),p=require("./formField.mixin-B3CXBJKX.cjs"),b=require("lit/directives/when.js");var m=Object.defineProperty,v=Object.getOwnPropertyDescriptor,n=(e,t,l,o)=>{for(var a,i=o>1?void 0:o?v(t,l):t,s=e.length-1;s>=0;s--)(a=e[s])&&(i=(o?a(t,l,i):a(i))||i);return o&&i&&m(t,l,i),i};exports.RadioGroup=class extends p.FormFieldMixin(u.TailwindElement(":host{display:inherit;position:inherit}")){constructor(){super(...arguments),this.label="",this.name="",this.value="",this.options=[],this.required=!1,this.selection$=new h.Subject}connectedCallback(){super.connectedCallback(),this.selection$.subscribe(e=>{this.value=e,this.emitChange({value:e}),this.updateChildRadioButtons()}),this.addEventListener("radio-button-click",e=>{this.selection$.next(e.detail.value)})}disconnectedCallback(){super.disconnectedCallback(),this.selection$?.unsubscribe()}handleSelection(e){this.selection$.next(e)}updateChildRadioButtons(){this.querySelectorAll("schmancy-radio-button").forEach(e=>{e.getAttribute("value")===this.value?e.setAttribute("checked",""):e.removeAttribute("checked")})}updated(e){super.updated(e),e.has("value")&&this.updateChildRadioButtons()}render(){const e=this.childElementCount>0;return c.html`
1
+ "use strict";const c=require("lit"),r=require("lit/decorators.js"),h=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const u=require("./tailwind.mixin-Bwf86oi5.cjs"),p=require("./formField.mixin-zezhhNIA.cjs"),b=require("lit/directives/when.js");var m=Object.defineProperty,v=Object.getOwnPropertyDescriptor,n=(e,t,l,o)=>{for(var a,i=o>1?void 0:o?v(t,l):t,s=e.length-1;s>=0;s--)(a=e[s])&&(i=(o?a(t,l,i):a(i))||i);return o&&i&&m(t,l,i),i};exports.RadioGroup=class extends p.FormFieldMixin(u.TailwindElement(":host{display:inherit;position:inherit}")){constructor(){super(...arguments),this.label="",this.name="",this.value="",this.options=[],this.required=!1,this.selection$=new h.Subject}connectedCallback(){super.connectedCallback(),this.selection$.subscribe(e=>{this.value=e,this.emitChange({value:e}),this.updateChildRadioButtons()}),this.addEventListener("radio-button-click",e=>{this.selection$.next(e.detail.value)})}disconnectedCallback(){super.disconnectedCallback(),this.selection$?.unsubscribe()}handleSelection(e){this.selection$.next(e)}updateChildRadioButtons(){this.querySelectorAll("schmancy-radio-button").forEach(e=>{e.getAttribute("value")===this.value?e.setAttribute("checked",""):e.removeAttribute("checked")})}updated(e){super.updated(e),e.has("value")&&this.updateChildRadioButtons()}render(){const e=this.childElementCount>0;return c.html`
2
2
  <div class="grid gap-4">
3
3
  ${b.when(this.label,()=>c.html` <label class="text-base font-semibold text-surface-on">${this.label}</label> `)}
4
4
 
@@ -38,4 +38,4 @@
38
38
  </div>
39
39
  </label>
40
40
  `}},d([r.property({type:String})],exports.RadioButton.prototype,"value",2),d([r.property({type:Boolean,reflect:!0})],exports.RadioButton.prototype,"checked",2),d([r.property({type:Boolean})],exports.RadioButton.prototype,"disabled",2),d([r.property({type:String})],exports.RadioButton.prototype,"name",2),exports.RadioButton=d([r.customElement("schmancy-radio-button")],exports.RadioButton);
41
- //# sourceMappingURL=radio-button-w9ZxzEPa.cjs.map
41
+ //# sourceMappingURL=radio-button-vz9nLR-m.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"radio-button-w9ZxzEPa.cjs","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\t\t\n\t\t// Listen for radio button clicks from children\n\t\tthis.addEventListener('radio-button-click', ((e: CustomEvent) => {\n\t\t\tthis.selection$.next(e.detail.value)\n\t\t}) as EventListener)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.selection$?.unsubscribe()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Find parent radio-group if exists\n\t\tthis.addEventListener('click', this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.removeEventListener('click', this.handleClick)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","subscribe","emitChange","updateChildRadioButtons","addEventListener","e","next","detail","disconnectedCallback","unsubscribe","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","removeEventListener","closest","event","CustomEvent","bubbles","composed","dispatchEvent","render","reflect"],"mappings":"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"}
1
+ {"version":3,"file":"radio-button-vz9nLR-m.cjs","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\t\t\n\t\t// Listen for radio button clicks from children\n\t\tthis.addEventListener('radio-button-click', ((e: CustomEvent) => {\n\t\t\tthis.selection$.next(e.detail.value)\n\t\t}) as EventListener)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.selection$?.unsubscribe()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Find parent radio-group if exists\n\t\tthis.addEventListener('click', this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.removeEventListener('click', this.handleClick)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","subscribe","emitChange","updateChildRadioButtons","addEventListener","e","next","detail","disconnectedCallback","unsubscribe","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","removeEventListener","closest","event","CustomEvent","bubbles","composed","dispatchEvent","render","reflect"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./radio-button-w9ZxzEPa.cjs");Object.defineProperty(exports,"RadioButton",{enumerable:!0,get:()=>e.RadioButton}),Object.defineProperty(exports,"RadioGroup",{enumerable:!0,get:()=>e.RadioGroup});
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./radio-button-vz9nLR-m.cjs");Object.defineProperty(exports,"RadioButton",{enumerable:!0,get:()=>e.RadioButton}),Object.defineProperty(exports,"RadioGroup",{enumerable:!0,get:()=>e.RadioGroup});
2
2
  //# sourceMappingURL=radio-group.cjs.map
@@ -1,4 +1,4 @@
1
- import { a as r, R as t } from "./radio-button-DHM38A7h.js";
1
+ import { a as r, R as t } from "./radio-button-B087BeTl.js";
2
2
  export {
3
3
  r as RadioButton,
4
4
  t as RadioGroup
@@ -0,0 +1,343 @@
1
+ import { Subject as q, ReplaySubject as v, distinctUntilChanged as l, shareReplay as P, skip as L, map as c, filter as f, catchError as u, EMPTY as p, zip as I, fromEvent as N, of as m, bufferTime as B, tap as M, timeout as T, from as x, switchMap as O, startWith as F, combineLatest as A, take as D, merge as _, takeUntil as z } from "rxjs";
2
+ import "lit/directives/class-map.js";
3
+ import "lit/directives/style-map.js";
4
+ import { $ as U } from "./litElement.mixin-SeAIQuRg.js";
5
+ import "./tailwind.mixin-kvywknTU.js";
6
+ import { property as w, queryAssignedElements as Q, customElement as $ } from "lit/decorators.js";
7
+ import { css as H, html as k } from "lit";
8
+ const J = new q(), Y = "FINDING_MORTIES", W = "HERE_RICKY", C = /* @__PURE__ */ new WeakMap();
9
+ class b {
10
+ constructor() {
11
+ this.prettyURL = !1, this.mode = "HISTORY", this.request = new v(1), this.current = /* @__PURE__ */ new Map(), this.$current = new v(1), this.enableHistoryMode = !0, this.findingMortiesEvent = new CustomEvent(Y), this.disposed = !1, this.isProcessingPopstate = !1, this.$current.next(this.current), this.$current.subscribe((t) => {
12
+ this.disposed || t.forEach((e, r) => {
13
+ this.getOrCreateAreaSubject(r).next(e);
14
+ });
15
+ }), this.initializeFromBrowserState();
16
+ }
17
+ get areaSubjects() {
18
+ let t = C.get(this);
19
+ return t || (t = /* @__PURE__ */ new Map(), C.set(this, t)), t;
20
+ }
21
+ initializeFromBrowserState() {
22
+ try {
23
+ const t = history.state;
24
+ t && t.schmancyAreas && (Object.entries(t.schmancyAreas).forEach(([e, r]) => {
25
+ this.current.set(e, r);
26
+ }), this.$current.next(this.current));
27
+ } catch {
28
+ }
29
+ }
30
+ getOrCreateAreaSubject(t) {
31
+ let e = this.areaSubjects.get(t);
32
+ if (!e || e.closed) {
33
+ e = new v(1), this.areaSubjects.set(t, e);
34
+ const r = this.current.get(t);
35
+ r && e.next({ ...r, state: r.state || {}, params: r.params || {}, props: r.props || {} });
36
+ }
37
+ return e;
38
+ }
39
+ on(t, e = !1) {
40
+ if (!t) throw new Error("Area name is required");
41
+ const r = this.getOrCreateAreaSubject(t).asObservable().pipe(l((o, s) => o.component === s.component && JSON.stringify(o.state) === JSON.stringify(s.state) && JSON.stringify(o.params) === JSON.stringify(s.params)), P(1));
42
+ return e ? r.pipe(L(1)) : r;
43
+ }
44
+ all(t = !1) {
45
+ const e = this.$current.asObservable().pipe(P(1));
46
+ return t ? e.pipe(L(1)) : e;
47
+ }
48
+ getState(t) {
49
+ if (!t) throw new Error("Area name is required");
50
+ return this.on(t).pipe(c((e) => e.state), f((e) => e != null), l((e, r) => JSON.stringify(e) === JSON.stringify(r)), c((e) => e), u((e) => p));
51
+ }
52
+ params(t) {
53
+ if (!t) throw new Error("Area name is required");
54
+ return this.on(t).pipe(c((e) => e.params), f((e) => e != null), l((e, r) => JSON.stringify(e) === JSON.stringify(r)), c((e) => e), u((e) => p));
55
+ }
56
+ param(t, e) {
57
+ if (!t || !e) throw new Error("Area name and key are required");
58
+ return this.params(t).pipe(c((r) => r[e]), f((r) => r !== void 0), l(), c((r) => r), u((r) => p));
59
+ }
60
+ props(t) {
61
+ if (!t) throw new Error("Area name is required");
62
+ return this.on(t).pipe(c((e) => e.props), f((e) => e != null), l((e, r) => JSON.stringify(e) === JSON.stringify(r)), c((e) => e), u((e) => p));
63
+ }
64
+ prop(t, e) {
65
+ if (!t || !e) throw new Error("Area name and key are required");
66
+ return this.props(t).pipe(c((r) => r[e]), f((r) => r !== void 0), l(), c((r) => r), u((r) => p));
67
+ }
68
+ find() {
69
+ return I([N(window, W).pipe(c((t) => t.detail), B(0)), m(1).pipe(M(() => window.dispatchEvent(this.findingMortiesEvent)))]).pipe(c(([t]) => t), T(1), u(() => p));
70
+ }
71
+ push(t) {
72
+ if (!t.area) throw new Error("Area is required for route action");
73
+ if (this.isProcessingPopstate) return;
74
+ const e = { ...t, state: t.state || {}, params: t.params || {}, props: t.props || {}, _source: "programmatic" };
75
+ this.enableHistoryMode && J.next(e), this.request.next(e), this.dispatchAreaEvent(e.area, e);
76
+ }
77
+ _updateFromBrowser(t) {
78
+ const e = { ...t, state: t.state || {}, params: t.params || {}, props: t.props || {}, _source: "browser" };
79
+ this.isProcessingPopstate = !0, this.request.next(e), this.isProcessingPopstate = !1;
80
+ }
81
+ _updateBrowserHistory(t, e, r, o) {
82
+ if (this.enableHistoryMode) try {
83
+ const s = history.state || {}, a = s.schmancyAreas || {}, i = { component: e.component, area: e.area };
84
+ e.state && Object.keys(e.state).length > 0 && (i.state = e.state), e.params && Object.keys(e.params).length > 0 && (i.params = e.params), e.props && Object.keys(e.props).length > 0 && (i.props = e.props), a[t] = i;
85
+ const h = { ...s, schmancyAreas: a }, d = this.createCleanURL(a, o);
86
+ r === "replace" || r === "pop" ? history.replaceState(h, "", d) : r !== "push" && r || history.pushState(h, "", d);
87
+ } catch {
88
+ }
89
+ }
90
+ createCleanURL(t, e) {
91
+ let r = "";
92
+ if (e !== !0) {
93
+ const o = new URLSearchParams(location.search);
94
+ Array.isArray(e) && e.forEach((s) => o.delete(s)), r = o.toString(), r = r ? `?${r}` : "";
95
+ }
96
+ if (this.prettyURL) {
97
+ const o = t.main;
98
+ if (o) {
99
+ let s = `/${o.component}`;
100
+ const a = new URLSearchParams(r);
101
+ o.params && Object.entries(o.params).forEach(([h, d]) => {
102
+ typeof d != "string" && typeof d != "number" || a.set(h, String(d));
103
+ });
104
+ const i = a.toString();
105
+ return s + (i ? `?${i}` : "");
106
+ }
107
+ }
108
+ try {
109
+ const o = {};
110
+ return Object.entries(t).forEach(([s, a]) => {
111
+ const i = { component: a.component };
112
+ a.state && Object.keys(a.state).length > 0 && (i.state = a.state), a.params && Object.keys(a.params).length > 0 && (i.params = a.params), a.props && Object.keys(a.props).length > 0 && (i.props = a.props), o[s] = i;
113
+ }), `/${encodeURIComponent(JSON.stringify(o))}${r}`;
114
+ } catch {
115
+ return location.pathname;
116
+ }
117
+ }
118
+ restoreFromBrowserState(t) {
119
+ try {
120
+ if (t && t.schmancyAreas) return t.schmancyAreas;
121
+ } catch {
122
+ }
123
+ return this.parseStateFromURL();
124
+ }
125
+ parseStateFromURL() {
126
+ const t = location.pathname.split("/").pop();
127
+ if (!t) return {};
128
+ try {
129
+ const e = decodeURIComponent(t), r = JSON.parse(e);
130
+ if (typeof r == "object" && r !== null) return r;
131
+ } catch {
132
+ }
133
+ return {};
134
+ }
135
+ dispatchAreaEvent(t, e) {
136
+ const r = new CustomEvent(`schmancy-area-${t}-changed`, { detail: { area: t, component: e.component, state: e.state, params: e.params, props: e.props, historyStrategy: e.historyStrategy }, bubbles: !0, composed: !0 });
137
+ window.dispatchEvent(r);
138
+ }
139
+ pop(t) {
140
+ if (!t) throw new Error("Area name is required");
141
+ const e = this.areaSubjects.get(t);
142
+ if (e && !e.closed && e.next({ component: null, state: {}, area: t, params: {}, props: {} }), this.request.next({ area: t, component: null, state: {}, params: {}, props: {}, historyStrategy: "silent", _source: "programmatic" }), this.current.delete(t), this.$current.next(this.current), this.enableHistoryMode) try {
143
+ const r = history.state || {}, o = { ...r.schmancyAreas || {} };
144
+ delete o[t];
145
+ const s = { ...r, schmancyAreas: o }, a = this.createCleanURL(o);
146
+ history.replaceState(s, "", a);
147
+ } catch {
148
+ }
149
+ }
150
+ clear() {
151
+ this.areaSubjects.forEach((t) => t.complete()), this.areaSubjects.clear(), this.current.clear(), this.$current.next(this.current), this.enableHistoryMode && history.replaceState({ schmancyAreas: {} }, "", `/${location.search}`);
152
+ }
153
+ dispose() {
154
+ this.disposed || (this.disposed = !0, this.areaSubjects.forEach((t) => t.complete()), this.areaSubjects.clear(), this.request.complete(), this.$current.complete(), J.complete(), this.current.clear(), C.delete(this));
155
+ }
156
+ static getInstance() {
157
+ return b.instance || (b.instance = new b()), b.instance;
158
+ }
159
+ get state() {
160
+ try {
161
+ const t = history.state;
162
+ if (t && t.schmancyAreas) return t.schmancyAreas;
163
+ } catch {
164
+ }
165
+ return this.parseStateFromURL();
166
+ }
167
+ hasArea(t) {
168
+ return this.current.has(t);
169
+ }
170
+ getActiveAreas() {
171
+ return Array.from(this.current.keys());
172
+ }
173
+ getRoute(t) {
174
+ return this.current.get(t);
175
+ }
176
+ }
177
+ const y = b.getInstance();
178
+ typeof window < "u" && window.addEventListener("unload", () => {
179
+ y.dispose();
180
+ });
181
+ var S = ((n) => (n.push = "push", n.replace = "replace", n.pop = "pop", n.silent = "silent", n))(S || {}), G = Object.defineProperty, K = Object.getOwnPropertyDescriptor, j = (n, t, e, r) => {
182
+ for (var o, s = r > 1 ? void 0 : r ? K(t, e) : t, a = n.length - 1; a >= 0; a--) (o = n[a]) && (s = (r ? o(t, e, s) : o(s)) || s);
183
+ return r && s && G(t, e, s), s;
184
+ };
185
+ let E = class extends U(H`
186
+ :host {
187
+ position: relative;
188
+ display: block;
189
+ inset: 0;
190
+ }
191
+ `) {
192
+ resolveRoute(n, t, e = S.silent, r = []) {
193
+ switch (n) {
194
+ case "initial":
195
+ case "popstate": {
196
+ if (n === "popstate" && t && typeof t == "object" && "state" in t) {
197
+ const s = t, a = s.state?.schmancyAreas?.[this.name];
198
+ if (a) return m({ area: this.name, component: a.component, state: a.state || {}, params: a.params || {}, historyStrategy: S.silent });
199
+ }
200
+ const o = typeof t == "string" ? t : location.pathname;
201
+ return this.matchSegmentToRoute(o, e, r);
202
+ }
203
+ case "navigation":
204
+ return t && typeof t == "object" && "component" in t ? m(t) : p;
205
+ default:
206
+ return p;
207
+ }
208
+ }
209
+ matchSegmentToRoute(n, t, e) {
210
+ const r = n.split("/").pop() || "";
211
+ let o = !1;
212
+ if (r && (r.includes("{") || r.includes("%7B"))) try {
213
+ const s = decodeURIComponent(r), a = JSON.parse(s);
214
+ return o = !0, a[this.name] ? m({ area: this.name, component: a[this.name].component, state: a[this.name].state || {}, params: a[this.name].params || {}, historyStrategy: t }) : p;
215
+ } catch {
216
+ o = !1;
217
+ }
218
+ if (e && e.length > 0) {
219
+ const s = n.split("/").filter(Boolean)[0] || "";
220
+ for (const a of e)
221
+ if (a.when === s) return a.guard ? x(Promise.resolve(a.guard())).pipe(O((i) => i === !0 ? m({ area: this.name, component: a.component, state: {}, params: {}, historyStrategy: t }) : i === !1 ? p : typeof i == "string" ? this.matchSegmentToRoute(i, t, e) : typeof i == "object" && i.redirect ? this.matchSegmentToRoute(i.redirect, t, e) : p), u((i) => p)) : m({ area: this.name, component: a.component, state: {}, params: {}, historyStrategy: t });
222
+ }
223
+ return this.default && !o && (!this.shadowRoot?.children[0] || n === "/" || n === "") ? m({ area: this.name, component: this.default, state: {}, params: {}, historyStrategy: t }) : p;
224
+ }
225
+ async resolveComponent(n) {
226
+ if (!n || n === "") return { element: null };
227
+ if (typeof n == "string") try {
228
+ return { element: document.createElement(n) };
229
+ } catch {
230
+ return this.default && typeof this.default == "string" ? { element: document.createElement(this.default) } : { element: null };
231
+ }
232
+ if (n instanceof HTMLElement) return { element: n };
233
+ if (typeof n == "function" && !("then" in n)) try {
234
+ return { element: new n() };
235
+ } catch {
236
+ return { element: null };
237
+ }
238
+ if (typeof n == "function") try {
239
+ const t = (await n()).default;
240
+ return { element: new t() };
241
+ } catch {
242
+ return { element: null };
243
+ }
244
+ if (n instanceof Promise) try {
245
+ const t = (await n).default;
246
+ return { element: new t() };
247
+ } catch {
248
+ return { element: null };
249
+ }
250
+ return { element: null };
251
+ }
252
+ firstUpdated() {
253
+ if (!this.name) throw new Error("Area name is required");
254
+ this.routingSubscription?.unsubscribe();
255
+ const n = this.shadowRoot?.querySelector("slot"), t = n ? N(n, "slotchange").pipe(F(null), c(() => this.routes || [])) : m([]), e = A([m(location.pathname), t]).pipe(D(1), O(([s, a]) => this.resolveRoute("initial", s, S.silent, a))), r = A([y.request.pipe(f(({ area: s }) => s === this.name)), t]).pipe(O(([s, a]) => this.resolveRoute("navigation", s, S.silent, a))), o = A([N(window, "popstate"), t]).pipe(O(([s, a]) => this.resolveRoute("popstate", s, S.silent, a)));
256
+ this.routingSubscription = _(e, r, o).pipe(f((s) => s.component !== void 0), l((s, a) => this.isSameRoute(s, a)), O((s) => x(this.resolveComponent(s.component)).pipe(c((a) => ({ ...a, route: s })))), c(({ element: s, route: a }) => (s && (a.params && Object.entries(a.params).forEach(([i, h]) => {
257
+ s[i] = h;
258
+ }), a.props && Object.entries(a.props).forEach(([i, h]) => {
259
+ s[i] = h;
260
+ }), a.state && (s.state = a.state)), { element: s, route: a })), M(({ element: s, route: a }) => {
261
+ this.updateDOM(s), s && this.updateInternalState(a, s), this.updateBrowserHistory(a, s);
262
+ }), u((s) => p), z(this.disconnecting)).subscribe({ error: (s) => {
263
+ } });
264
+ }
265
+ isSameRoute(n, t) {
266
+ if (n.component === null && t.component === null) return !0;
267
+ if (n.component === null || t.component === null) return !1;
268
+ let e = "", r = "";
269
+ typeof n.component == "function" ? e = n.component.name || n.component.toString() : typeof n.component == "string" ? e = n.component : n.component instanceof HTMLElement && (e = n.component.tagName.toLowerCase()), typeof t.component == "function" ? r = t.component.name || t.component.toString() : typeof t.component == "string" ? r = t.component : t.component instanceof HTMLElement && (r = t.component.tagName.toLowerCase());
270
+ const o = (h) => h?.replaceAll("-", "").toLowerCase(), s = o(e) === o(r), a = JSON.stringify(n.params || {}) === JSON.stringify(t.params || {}), i = JSON.stringify(n.state || {}) === JSON.stringify(t.state || {});
271
+ return s && a && i;
272
+ }
273
+ updateDOM(n) {
274
+ const t = this.shadowRoot?.children[0], e = !!t;
275
+ t && t.remove(), n && (this.shadowRoot?.append(n), this.shadowRoot?.contains(n) && (n.animate([{ opacity: 0 }, { opacity: 1 }], { duration: e ? 150 : 100, easing: "cubic-bezier(0.25, 0.8, 0.25, 1)", fill: "forwards" }).onfinish = () => {
276
+ n.style.opacity = "1";
277
+ }));
278
+ }
279
+ updateInternalState(n, t) {
280
+ if (!t) return;
281
+ const e = { component: t.tagName.toLowerCase(), state: n.state || {}, area: this.name, params: n.params || {} };
282
+ y.current.set(this.name, e), y.$current.next(y.current);
283
+ }
284
+ updateBrowserHistory(n, t) {
285
+ if (!y.enableHistoryMode || !t) return;
286
+ const e = { component: t.tagName.toLowerCase(), state: n.state || {}, area: this.name, params: n.params || {} };
287
+ y._updateBrowserHistory(this.name, e, n.historyStrategy, n.clearQueryParams);
288
+ }
289
+ newPath(n, t) {
290
+ const e = location.pathname.split("/").pop();
291
+ let r = {};
292
+ try {
293
+ r = e ? JSON.parse(decodeURIComponent(e)) : {};
294
+ } catch {
295
+ r = {};
296
+ }
297
+ t.state = t.state ?? {};
298
+ const o = t.clearQueryParams ? this.queryParamClear(t.clearQueryParams) : document.location.search;
299
+ return encodeURIComponent(JSON.stringify({ ...r, [this.name]: { component: n.toLowerCase(), state: t.state, params: t.params } })).concat(`${o}`);
300
+ }
301
+ queryParamClear(n) {
302
+ if (!n) return "";
303
+ const t = new URLSearchParams(location.search);
304
+ return n === !0 ? "" : (n.forEach((e) => t.delete(e)), t.toString() === "" ? "" : `?${t.toString()}`);
305
+ }
306
+ disconnectedCallback() {
307
+ super.disconnectedCallback(), this.routingSubscription && (this.routingSubscription.unsubscribe(), this.routingSubscription = void 0);
308
+ }
309
+ render() {
310
+ return k` <slot> </slot> `;
311
+ }
312
+ };
313
+ j([w()], E.prototype, "name", 2), j([w()], E.prototype, "default", 2), j([Q({ selector: "schmancy-route" })], E.prototype, "routes", 2), E = j([$("schmancy-area")], E);
314
+ var V = Object.defineProperty, X = Object.getOwnPropertyDescriptor, R = (n, t, e, r) => {
315
+ for (var o, s = r > 1 ? void 0 : r ? X(t, e) : t, a = n.length - 1; a >= 0; a--) (o = n[a]) && (s = (r ? o(t, e, s) : o(s)) || s);
316
+ return r && s && V(t, e, s), s;
317
+ };
318
+ let g = class extends U(H`
319
+ :host {
320
+ display: none;
321
+ }
322
+ `) {
323
+ constructor() {
324
+ super(...arguments), this.exact = !1;
325
+ }
326
+ getConfig() {
327
+ return { when: this.when, component: this.component, exact: this.exact, guard: this.guard };
328
+ }
329
+ render() {
330
+ return k``;
331
+ }
332
+ };
333
+ R([w({ type: String })], g.prototype, "when", 2), R([w({ type: Object })], g.prototype, "component", 2), R([w({ type: Boolean })], g.prototype, "exact", 2), R([w({ type: Object })], g.prototype, "guard", 2), g = R([$("schmancy-route")], g);
334
+ export {
335
+ Y as F,
336
+ W as H,
337
+ E as S,
338
+ g as a,
339
+ y as b,
340
+ S as c,
341
+ J as r
342
+ };
343
+ //# sourceMappingURL=route.component-D1xujH8n.js.map