@mhmo91/schmancy 0.2.199 → 0.2.201

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 (292) hide show
  1. package/ai/boat.md +118 -0
  2. package/dist/_commonjsHelpers-Dw9sPFZy.js +7 -0
  3. package/dist/_commonjsHelpers-Dw9sPFZy.js.map +1 -0
  4. package/dist/_commonjsHelpers-k2hpEU-q.cjs +2 -0
  5. package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +1 -0
  6. package/dist/ai/boat.md +118 -0
  7. package/dist/{animated-text-Cb07SP6h.js → animated-text-Dr60iE4v.js} +3 -3
  8. package/dist/{animated-text-Cb07SP6h.js.map → animated-text-Dr60iE4v.js.map} +1 -1
  9. package/dist/{animated-text-DML1qmmR.cjs → animated-text-IaaGcNeD.cjs} +2 -2
  10. package/dist/{animated-text-DML1qmmR.cjs.map → animated-text-IaaGcNeD.cjs.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.component-Psgv50Lq.cjs → area.component-C2dpnyWJ.cjs} +2 -2
  15. package/dist/{area.component-Psgv50Lq.cjs.map → area.component-C2dpnyWJ.cjs.map} +1 -1
  16. package/dist/{area.component-CdFovqHE.js → area.component-FmOhHylt.js} +3 -3
  17. package/dist/{area.component-CdFovqHE.js.map → area.component-FmOhHylt.js.map} +1 -1
  18. package/dist/area.js +1 -1
  19. package/dist/{autocomplete-B4F-i4IH.cjs → autocomplete-Bw-YykAE.cjs} +2 -2
  20. package/dist/{autocomplete-B4F-i4IH.cjs.map → autocomplete-Bw-YykAE.cjs.map} +1 -1
  21. package/dist/{autocomplete-87RcHRRv.js → autocomplete-D1_1Gh-W.js} +3 -3
  22. package/dist/{autocomplete-87RcHRRv.js.map → autocomplete-D1_1Gh-W.js.map} +1 -1
  23. package/dist/autocomplete.cjs +1 -1
  24. package/dist/autocomplete.js +1 -1
  25. package/dist/{avatar-DI6tP5aD.cjs → avatar-CkolR0PQ.cjs} +2 -2
  26. package/dist/{avatar-DI6tP5aD.cjs.map → avatar-CkolR0PQ.cjs.map} +1 -1
  27. package/dist/{avatar-Dx-kdZaM.js → avatar-DWQCLmQc.js} +47 -45
  28. package/dist/{avatar-Dx-kdZaM.js.map → avatar-DWQCLmQc.js.map} +1 -1
  29. package/dist/badge.cjs +1 -1
  30. package/dist/badge.js +1 -1
  31. package/dist/boat-BOprkgg-.cjs +64 -0
  32. package/dist/boat-BOprkgg-.cjs.map +1 -0
  33. package/dist/boat-C6361uOb.js +95 -0
  34. package/dist/boat-C6361uOb.js.map +1 -0
  35. package/dist/boat.cjs +2 -0
  36. package/dist/boat.cjs.map +1 -0
  37. package/dist/boat.js +5 -0
  38. package/dist/boat.js.map +1 -0
  39. package/dist/busy.cjs +1 -1
  40. package/dist/busy.js +1 -1
  41. package/dist/button.cjs +1 -1
  42. package/dist/button.js +1 -1
  43. package/dist/card.cjs +1 -1
  44. package/dist/card.js +1 -1
  45. package/dist/{checkbox-Cntlr_eV.js → checkbox-CTo4qcmS.js} +6 -6
  46. package/dist/{checkbox-Cntlr_eV.js.map → checkbox-CTo4qcmS.js.map} +1 -1
  47. package/dist/{checkbox-C80YxaCN.cjs → checkbox-DtU97oO6.cjs} +2 -2
  48. package/dist/{checkbox-C80YxaCN.cjs.map → checkbox-DtU97oO6.cjs.map} +1 -1
  49. package/dist/checkbox.cjs +1 -1
  50. package/dist/checkbox.js +1 -1
  51. package/dist/{chips-CI-fsAqX.cjs → chips-CwwieBdF.cjs} +2 -2
  52. package/dist/{chips-CI-fsAqX.cjs.map → chips-CwwieBdF.cjs.map} +1 -1
  53. package/dist/{chips-vMtInVGX.js → chips-DMvV4T1B.js} +3 -3
  54. package/dist/{chips-vMtInVGX.js.map → chips-DMvV4T1B.js.map} +1 -1
  55. package/dist/chips.cjs +1 -1
  56. package/dist/chips.js +1 -1
  57. package/dist/{circular-progress-8LR4RVjD.js → circular-progress-B4TOfd8J.js} +3 -3
  58. package/dist/{circular-progress-8LR4RVjD.js.map → circular-progress-B4TOfd8J.js.map} +1 -1
  59. package/dist/{circular-progress-CSWSAcU6.cjs → circular-progress-D3Jt291j.cjs} +2 -2
  60. package/dist/{circular-progress-CSWSAcU6.cjs.map → circular-progress-D3Jt291j.cjs.map} +1 -1
  61. package/dist/circular-progress.cjs +1 -1
  62. package/dist/circular-progress.js +1 -1
  63. package/dist/code-highlight.cjs +2 -0
  64. package/dist/code-highlight.cjs.map +1 -0
  65. package/dist/code-highlight.js +7 -0
  66. package/dist/code-highlight.js.map +1 -0
  67. package/dist/code-preview-BWAcgpVl.cjs +133 -0
  68. package/dist/code-preview-BWAcgpVl.cjs.map +1 -0
  69. package/dist/code-preview-CGtqgdc7.js +876 -0
  70. package/dist/code-preview-CGtqgdc7.js.map +1 -0
  71. package/dist/components.cjs +1 -1
  72. package/dist/components.js +1 -1
  73. package/dist/content-drawer.cjs +1 -1
  74. package/dist/content-drawer.js +1 -1
  75. package/dist/{date-range-ChsdVWRV.js → date-range-BPWHcYDO.js} +62 -64
  76. package/dist/{date-range-ChsdVWRV.js.map → date-range-BPWHcYDO.js.map} +1 -1
  77. package/dist/date-range-CrCwkBhk.cjs +121 -0
  78. package/dist/{date-range-BkVCslGl.cjs.map → date-range-CrCwkBhk.cjs.map} +1 -1
  79. package/dist/date-range.cjs +1 -1
  80. package/dist/date-range.js +1 -1
  81. package/dist/{delay-DJMIbnvL.js → delay-BRK6QqCQ.js} +11 -11
  82. package/dist/{delay-DJMIbnvL.js.map → delay-BRK6QqCQ.js.map} +1 -1
  83. package/dist/{delay-D6UmIwSa.cjs → delay-DBEPTzJx.cjs} +2 -2
  84. package/dist/{delay-D6UmIwSa.cjs.map → delay-DBEPTzJx.cjs.map} +1 -1
  85. package/dist/delay.cjs +1 -1
  86. package/dist/delay.js +1 -1
  87. package/dist/{dialog-content-CWvxqVsr.js → dialog-content-3jFhSjfz.js} +3 -3
  88. package/dist/{dialog-content-CWvxqVsr.js.map → dialog-content-3jFhSjfz.js.map} +1 -1
  89. package/dist/{dialog-content-Cw1Al_Re.cjs → dialog-content-DTW-jlGG.cjs} +2 -2
  90. package/dist/{dialog-content-Cw1Al_Re.cjs.map → dialog-content-DTW-jlGG.cjs.map} +1 -1
  91. package/dist/dialog.cjs +1 -1
  92. package/dist/dialog.js +1 -1
  93. package/dist/{divider-Cp6EXlTN.cjs → divider-CUiOCxcv.cjs} +2 -2
  94. package/dist/{divider-Cp6EXlTN.cjs.map → divider-CUiOCxcv.cjs.map} +1 -1
  95. package/dist/{divider-BGo7hglJ.js → divider-DLedYg2o.js} +3 -3
  96. package/dist/{divider-BGo7hglJ.js.map → divider-DLedYg2o.js.map} +1 -1
  97. package/dist/divider.cjs +1 -1
  98. package/dist/divider.js +1 -1
  99. package/dist/{dropdown-content-CTWWDRgy.js → dropdown-content-CHcK5vDp.js} +3 -3
  100. package/dist/{dropdown-content-CTWWDRgy.js.map → dropdown-content-CHcK5vDp.js.map} +1 -1
  101. package/dist/{dropdown-content-CmCumNjC.cjs → dropdown-content-rLIDGVfK.cjs} +2 -2
  102. package/dist/{dropdown-content-CmCumNjC.cjs.map → dropdown-content-rLIDGVfK.cjs.map} +1 -1
  103. package/dist/dropdown.cjs +1 -1
  104. package/dist/dropdown.js +1 -1
  105. package/dist/extra.cjs +1 -1
  106. package/dist/extra.js +1 -1
  107. package/dist/{flex-CKtJkkxU.js → flex-DDmzufXs.js} +2 -2
  108. package/dist/{flex-CKtJkkxU.js.map → flex-DDmzufXs.js.map} +1 -1
  109. package/dist/{flex-Dyfn6mxF.cjs → flex-aKz0Ms65.cjs} +2 -2
  110. package/dist/{flex-Dyfn6mxF.cjs.map → flex-aKz0Ms65.cjs.map} +1 -1
  111. package/dist/{form-BbQRONBu.cjs → form-BfeOUZjw.cjs} +2 -2
  112. package/dist/{form-BbQRONBu.cjs.map → form-BfeOUZjw.cjs.map} +1 -1
  113. package/dist/{form-BZdw3XUt.js → form-CWCw7gLZ.js} +2 -2
  114. package/dist/{form-BZdw3XUt.js.map → form-CWCw7gLZ.js.map} +1 -1
  115. package/dist/form.cjs +1 -1
  116. package/dist/form.js +1 -1
  117. package/dist/{icon-CNkK3oMH.cjs → icon-DOMq_VrC.cjs} +2 -2
  118. package/dist/icon-DOMq_VrC.cjs.map +1 -0
  119. package/dist/{icon-PZTHZSsC.js → icon-DfDdy5YY.js} +2 -3
  120. package/dist/icon-DfDdy5YY.js.map +1 -0
  121. package/dist/{icon-button-L6UzTqIn.cjs → icon-button-BWO3kLWC.cjs} +2 -2
  122. package/dist/{icon-button-L6UzTqIn.cjs.map → icon-button-BWO3kLWC.cjs.map} +1 -1
  123. package/dist/{icon-button-5_uidIo2.js → icon-button-Cq0E6Y7I.js} +3 -3
  124. package/dist/{icon-button-5_uidIo2.js.map → icon-button-Cq0E6Y7I.js.map} +1 -1
  125. package/dist/icons.cjs +1 -1
  126. package/dist/icons.js +1 -1
  127. package/dist/index.cjs +1 -1
  128. package/dist/index.js +162 -156
  129. package/dist/index.js.map +1 -1
  130. package/dist/{input-GETorvfT.cjs → input-BBi8YkYi.cjs} +2 -2
  131. package/dist/{input-GETorvfT.cjs.map → input-BBi8YkYi.cjs.map} +1 -1
  132. package/dist/{input-cvO-mD1t.js → input-DVdHjbNu.js} +2 -2
  133. package/dist/{input-cvO-mD1t.js.map → input-DVdHjbNu.js.map} +1 -1
  134. package/dist/input.cjs +1 -1
  135. package/dist/input.js +1 -1
  136. package/dist/layout.cjs +1 -1
  137. package/dist/layout.js +1 -1
  138. package/dist/{list-BPQwn2ZD.cjs → list-Bh9W7eBM.cjs} +2 -2
  139. package/dist/{list-BPQwn2ZD.cjs.map → list-Bh9W7eBM.cjs.map} +1 -1
  140. package/dist/{list-CjVW-XS-.js → list-ByACnM5l.js} +2 -2
  141. package/dist/{list-CjVW-XS-.js.map → list-ByACnM5l.js.map} +1 -1
  142. package/dist/list.cjs +1 -1
  143. package/dist/list.js +1 -1
  144. package/dist/{litElement.mixin-BKgKxczr.js → litElement.mixin-BHvj00po.js} +2 -2
  145. package/dist/{litElement.mixin-BKgKxczr.js.map → litElement.mixin-BHvj00po.js.map} +1 -1
  146. package/dist/{litElement.mixin-0pIFA8ru.cjs → litElement.mixin-Bk1VBCai.cjs} +2 -2
  147. package/dist/{litElement.mixin-0pIFA8ru.cjs.map → litElement.mixin-Bk1VBCai.cjs.map} +1 -1
  148. package/dist/{menu-Bj9xX6Hn.js → menu-B0W8bS5x.js} +3 -3
  149. package/dist/{menu-Bj9xX6Hn.js.map → menu-B0W8bS5x.js.map} +1 -1
  150. package/dist/{menu-BpjaKAXC.cjs → menu-BIrEM0LW.cjs} +2 -2
  151. package/dist/{menu-BpjaKAXC.cjs.map → menu-BIrEM0LW.cjs.map} +1 -1
  152. package/dist/menu.cjs +1 -1
  153. package/dist/menu.js +1 -1
  154. package/dist/nav-drawer.cjs +1 -1
  155. package/dist/nav-drawer.js +1 -1
  156. package/dist/{notification-service-ITb5rmvM.js → notification-service-C8rKbKf8.js} +3 -3
  157. package/dist/{notification-service-ITb5rmvM.js.map → notification-service-C8rKbKf8.js.map} +1 -1
  158. package/dist/{notification-service-BFAKagab.cjs → notification-service-DID_WpGV.cjs} +2 -2
  159. package/dist/{notification-service-BFAKagab.cjs.map → notification-service-DID_WpGV.cjs.map} +1 -1
  160. package/dist/notification.cjs +1 -1
  161. package/dist/notification.js +1 -1
  162. package/dist/{option-vszqrPbH.cjs → option-BlDPqrw1.cjs} +2 -2
  163. package/dist/{option-vszqrPbH.cjs.map → option-BlDPqrw1.cjs.map} +1 -1
  164. package/dist/{option-_DZj4_on.js → option-Cz1zyVde.js} +2 -2
  165. package/dist/{option-_DZj4_on.js.map → option-Cz1zyVde.js.map} +1 -1
  166. package/dist/option.cjs +1 -1
  167. package/dist/option.js +1 -1
  168. package/dist/{payment-card-form-CxhMa60Q.js → payment-card-form-CL8RwARO.js} +3 -3
  169. package/dist/{payment-card-form-CxhMa60Q.js.map → payment-card-form-CL8RwARO.js.map} +1 -1
  170. package/dist/{payment-card-form-DgFUnANa.cjs → payment-card-form-Ct3M1hzR.cjs} +2 -2
  171. package/dist/{payment-card-form-DgFUnANa.cjs.map → payment-card-form-Ct3M1hzR.cjs.map} +1 -1
  172. package/dist/{radio-button-ChM1WZDg.cjs → radio-button-BHeHYYA3.cjs} +2 -2
  173. package/dist/{radio-button-ChM1WZDg.cjs.map → radio-button-BHeHYYA3.cjs.map} +1 -1
  174. package/dist/{radio-button-svaVfPn8.js → radio-button-CzA6BGJT.js} +2 -2
  175. package/dist/{radio-button-svaVfPn8.js.map → radio-button-CzA6BGJT.js.map} +1 -1
  176. package/dist/radio-group.cjs +1 -1
  177. package/dist/radio-group.js +1 -1
  178. package/dist/{schmancy-steps-container-9fHGNLHd.js → schmancy-steps-container-CTgSYtS0.js} +2 -2
  179. package/dist/{schmancy-steps-container-9fHGNLHd.js.map → schmancy-steps-container-CTgSYtS0.js.map} +1 -1
  180. package/dist/{schmancy-steps-container-C_-PFkRy.cjs → schmancy-steps-container-Cl_oWCxT.cjs} +2 -2
  181. package/dist/{schmancy-steps-container-C_-PFkRy.cjs.map → schmancy-steps-container-Cl_oWCxT.cjs.map} +1 -1
  182. package/dist/{select-DEd1YJF0.cjs → select-BerRDrTL.cjs} +2 -2
  183. package/dist/{select-DEd1YJF0.cjs.map → select-BerRDrTL.cjs.map} +1 -1
  184. package/dist/{select-CWulYSxd.js → select-DAMjx78G.js} +3 -3
  185. package/dist/{select-CWulYSxd.js.map → select-DAMjx78G.js.map} +1 -1
  186. package/dist/select.cjs +1 -1
  187. package/dist/select.js +1 -1
  188. package/dist/{sheet-C2f1XwT3.js → sheet-CrGvhxN3.js} +3 -3
  189. package/dist/{sheet-C2f1XwT3.js.map → sheet-CrGvhxN3.js.map} +1 -1
  190. package/dist/{sheet-BhKQmvCN.cjs → sheet-YHSlWQRv.cjs} +2 -2
  191. package/dist/{sheet-BhKQmvCN.cjs.map → sheet-YHSlWQRv.cjs.map} +1 -1
  192. package/dist/sheet.cjs +1 -1
  193. package/dist/sheet.js +1 -1
  194. package/dist/{slider-CmJGqDDU.js → slider-BMijf5Js.js} +3 -3
  195. package/dist/{slider-CmJGqDDU.js.map → slider-BMijf5Js.js.map} +1 -1
  196. package/dist/{slider-CetPyN3J.cjs → slider-CiRA-NEX.cjs} +2 -2
  197. package/dist/{slider-CetPyN3J.cjs.map → slider-CiRA-NEX.cjs.map} +1 -1
  198. package/dist/slider.cjs +1 -1
  199. package/dist/slider.js +1 -1
  200. package/dist/{spinner-CmJk8fIO.js → spinner-FEk-Ttf7.js} +3 -3
  201. package/dist/{spinner-CmJk8fIO.js.map → spinner-FEk-Ttf7.js.map} +1 -1
  202. package/dist/{spinner-CLfAy0cd.cjs → spinner-uFgJCTW9.cjs} +2 -2
  203. package/dist/{spinner-CLfAy0cd.cjs.map → spinner-uFgJCTW9.cjs.map} +1 -1
  204. package/dist/steps.cjs +1 -1
  205. package/dist/steps.js +1 -1
  206. package/dist/{surface-ChxX03-I.cjs → surface-AwNWjIdg.cjs} +2 -2
  207. package/dist/{surface-ChxX03-I.cjs.map → surface-AwNWjIdg.cjs.map} +1 -1
  208. package/dist/{surface-BnlEKr-d.js → surface-BVF_3RnX.js} +2 -2
  209. package/dist/{surface-BnlEKr-d.js.map → surface-BVF_3RnX.js.map} +1 -1
  210. package/dist/surface.cjs +1 -1
  211. package/dist/surface.js +1 -1
  212. package/dist/{table-CZJ14ZEI.js → table-CSCZMivU.js} +2 -2
  213. package/dist/{table-CZJ14ZEI.js.map → table-CSCZMivU.js.map} +1 -1
  214. package/dist/{table-CzD7rJ5o.cjs → table-D6sHLyxt.cjs} +2 -2
  215. package/dist/{table-CzD7rJ5o.cjs.map → table-D6sHLyxt.cjs.map} +1 -1
  216. package/dist/table.cjs +1 -1
  217. package/dist/table.js +1 -1
  218. package/dist/{tabs-compatibility-BviE0FdA.cjs → tabs-compatibility-Dlij_WIx.cjs} +2 -2
  219. package/dist/{tabs-compatibility-BviE0FdA.cjs.map → tabs-compatibility-Dlij_WIx.cjs.map} +1 -1
  220. package/dist/{tabs-compatibility-DHkghYmL.js → tabs-compatibility-tx3PViNI.js} +2 -2
  221. package/dist/{tabs-compatibility-DHkghYmL.js.map → tabs-compatibility-tx3PViNI.js.map} +1 -1
  222. package/dist/tabs.cjs +1 -1
  223. package/dist/tabs.js +1 -1
  224. package/dist/tailwind.mixin-C3BFeflA.js +43 -0
  225. package/dist/{tailwind.mixin-k9HTphsu.js.map → tailwind.mixin-C3BFeflA.js.map} +1 -1
  226. package/dist/tailwind.mixin-Xs0QJUOE.cjs +2 -0
  227. package/dist/{tailwind.mixin-DFxMrwgk.cjs.map → tailwind.mixin-Xs0QJUOE.cjs.map} +1 -1
  228. package/dist/teleport.cjs +1 -1
  229. package/dist/teleport.js +1 -1
  230. package/dist/{textarea-kTwx4MAh.js → textarea-Cam1Bejh.js} +2 -2
  231. package/dist/{textarea-kTwx4MAh.js.map → textarea-Cam1Bejh.js.map} +1 -1
  232. package/dist/{textarea-qNzKErHX.cjs → textarea-qDsdI_sm.cjs} +2 -2
  233. package/dist/{textarea-qNzKErHX.cjs.map → textarea-qDsdI_sm.cjs.map} +1 -1
  234. package/dist/textarea.cjs +1 -1
  235. package/dist/textarea.js +1 -1
  236. package/dist/{theme-button-Dt3WQdd4.cjs → theme-button-B3jMXzi4.cjs} +2 -2
  237. package/dist/{theme-button-Dt3WQdd4.cjs.map → theme-button-B3jMXzi4.cjs.map} +1 -1
  238. package/dist/{theme-button-CCwPpArv.js → theme-button-delusSKh.js} +2 -2
  239. package/dist/{theme-button-CCwPpArv.js.map → theme-button-delusSKh.js.map} +1 -1
  240. package/dist/theme-button.cjs +1 -1
  241. package/dist/theme-button.js +1 -1
  242. package/dist/theme.cjs +1 -1
  243. package/dist/{theme.component-Drq675ta.cjs → theme.component-C9jqo1WB.cjs} +2 -2
  244. package/dist/{theme.component-Drq675ta.cjs.map → theme.component-C9jqo1WB.cjs.map} +1 -1
  245. package/dist/{theme.component-CJHr6wNa.js → theme.component-D3rDl8K0.js} +2 -2
  246. package/dist/{theme.component-CJHr6wNa.js.map → theme.component-D3rDl8K0.js.map} +1 -1
  247. package/dist/theme.js +1 -1
  248. package/dist/{timezone-oZ1r5Z54.cjs → timezone-B9QDIwnj.cjs} +2 -2
  249. package/dist/{timezone-oZ1r5Z54.cjs.map → timezone-B9QDIwnj.cjs.map} +1 -1
  250. package/dist/{timezone-B53HOn4a.js → timezone-rultNrNC.js} +3 -3
  251. package/dist/{timezone-B53HOn4a.js.map → timezone-rultNrNC.js.map} +1 -1
  252. package/dist/{tooltip-Bfcu9uoC.js → tooltip-CmBYAmna.js} +2 -2
  253. package/dist/{tooltip-Bfcu9uoC.js.map → tooltip-CmBYAmna.js.map} +1 -1
  254. package/dist/{tooltip-DrLzz4rf.cjs → tooltip-DLqcf-Co.cjs} +2 -2
  255. package/dist/{tooltip-DrLzz4rf.cjs.map → tooltip-DLqcf-Co.cjs.map} +1 -1
  256. package/dist/tooltip.cjs +1 -1
  257. package/dist/tooltip.js +1 -1
  258. package/dist/{tree-n0KxiiWX.js → tree-Bqxzo_84.js} +2 -2
  259. package/dist/{tree-n0KxiiWX.js.map → tree-Bqxzo_84.js.map} +1 -1
  260. package/dist/{tree-Buf-0IQD.cjs → tree-DTO2h6VT.cjs} +2 -2
  261. package/dist/{tree-Buf-0IQD.cjs.map → tree-DTO2h6VT.cjs.map} +1 -1
  262. package/dist/tree.cjs +1 -1
  263. package/dist/tree.js +1 -1
  264. package/dist/{typewriter-W7Rj384X.js → typewriter-BHnCxd9O.js} +16 -16
  265. package/dist/{typewriter-W7Rj384X.js.map → typewriter-BHnCxd9O.js.map} +1 -1
  266. package/dist/{typewriter-DSUU_7wv.cjs → typewriter-Bw0LLuVh.cjs} +2 -2
  267. package/dist/{typewriter-DSUU_7wv.cjs.map → typewriter-Bw0LLuVh.cjs.map} +1 -1
  268. package/dist/typewriter.cjs +1 -1
  269. package/dist/typewriter.js +1 -1
  270. package/dist/typography-BLd8VN8Q.cjs +10 -0
  271. package/dist/typography-BLd8VN8Q.cjs.map +1 -0
  272. package/dist/typography-ClEPUgIN.js +37 -0
  273. package/dist/typography-ClEPUgIN.js.map +1 -0
  274. package/dist/typography.cjs +1 -1
  275. package/dist/typography.js +1 -1
  276. package/package.json +2 -1
  277. package/types/src/boat/boat.d.ts +12 -0
  278. package/types/src/boat/index.d.ts +1 -0
  279. package/types/src/code-highlight/code-highlight.d.ts +39 -0
  280. package/types/src/code-highlight/code-preview.d.ts +25 -0
  281. package/types/src/code-highlight/index.d.ts +3 -0
  282. package/types/src/icons/icon.d.ts +1 -1
  283. package/types/src/index.d.ts +2 -0
  284. package/dist/date-range-BkVCslGl.cjs +0 -121
  285. package/dist/icon-CNkK3oMH.cjs.map +0 -1
  286. package/dist/icon-PZTHZSsC.js.map +0 -1
  287. package/dist/tailwind.mixin-DFxMrwgk.cjs +0 -2
  288. package/dist/tailwind.mixin-k9HTphsu.js +0 -43
  289. package/dist/typography-DaN7dGA2.cjs +0 -6
  290. package/dist/typography-DaN7dGA2.cjs.map +0 -1
  291. package/dist/typography-XkeTnrP9.js +0 -29
  292. package/dist/typography-XkeTnrP9.js.map +0 -1
package/ai/boat.md ADDED
@@ -0,0 +1,118 @@
1
+ # Boat Component
2
+
3
+ ## Overview
4
+ The boat component is a bottom sheet that slides up from the bottom of the screen. It can be in one of three states: hidden, minimized, or expanded. This component is perfect for displaying additional content or actions while keeping the main interface accessible.
5
+
6
+ ## Properties
7
+
8
+ | Property | Type | Default | Description |
9
+ |----------|------|---------|-------------|
10
+ | `state` | `'hidden' \| 'minimized' \| 'expanded'` | `'hidden'` | The current state of the boat component |
11
+
12
+ ## Events
13
+
14
+ | Event | Detail | Description |
15
+ |-------|--------|-------------|
16
+ | `change` | `'hidden' \| 'minimized' \| 'expanded'` | Fired when the state changes |
17
+
18
+ ## Slots
19
+
20
+ | Slot | Description |
21
+ |------|-------------|
22
+ | `header` | Content to display in the header area (visible in both minimized and expanded states) |
23
+ | Default | Main content displayed when the boat is expanded |
24
+
25
+ ## Usage
26
+
27
+ ### Basic Example
28
+ ```html
29
+ <schmancy-boat state="minimized">
30
+ <schmancy-typography slot="header" variant="title">
31
+ Boat Title
32
+ </schmancy-typography>
33
+
34
+ <schmancy-flex direction="column" gap="md" class="p-4">
35
+ <schmancy-typography>
36
+ This is the main content of the boat component.
37
+ </schmancy-typography>
38
+ </schmancy-flex>
39
+ </schmancy-boat>
40
+ ```
41
+
42
+ ### With Icon in Header
43
+ ```html
44
+ <schmancy-boat state="minimized" @change="${(e) => console.log(e.detail)}">
45
+ <schmancy-flex slot="header" gap="sm" content="center">
46
+ <schmancy-icon>info</schmancy-icon>
47
+ <schmancy-typography variant="title">Settings</schmancy-typography>
48
+ </schmancy-flex>
49
+
50
+ <schmancy-flex direction="column" gap="md" class="p-4">
51
+ <!-- Settings content -->
52
+ </schmancy-flex>
53
+ </schmancy-boat>
54
+ ```
55
+
56
+ ### Controlling State
57
+ ```typescript
58
+ // Get reference to boat
59
+ const boat = document.querySelector('schmancy-boat');
60
+
61
+ // Show minimized
62
+ boat.state = 'minimized';
63
+
64
+ // Show expanded
65
+ boat.state = 'expanded';
66
+
67
+ // Hide
68
+ boat.state = 'hidden';
69
+
70
+ // Listen for state changes
71
+ boat.addEventListener('change', (e) => {
72
+ console.log('New state:', e.detail);
73
+ });
74
+ ```
75
+
76
+ ## Features
77
+
78
+ - **Three States**: Hidden (completely off-screen), minimized (shows only header), and expanded (shows all content)
79
+ - **Smooth Transitions**: Animated transitions between states using CSS transforms
80
+ - **Responsive Design**: Different widths on various screen sizes:
81
+ - Mobile: 100% width
82
+ - Tablet: 70% width
83
+ - Desktop: 60% width
84
+ - Large screens: 40% width
85
+ - **Fixed Positioning**: Always appears at the bottom-right of the viewport
86
+ - **Overflow Handling**: Content scrolls when it exceeds 80vh max height
87
+ - **Sticky Header**: Header remains visible when scrolling through content
88
+
89
+ ## CSS Classes
90
+
91
+ The component uses internal CSS classes for styling:
92
+ - `.translate-y-full`: Positions the boat completely off-screen (hidden state)
93
+ - `.translate-y-full-minus-64`: Shows only the header (minimized state)
94
+ - `.translate-y-0`: Shows the entire boat (expanded state)
95
+
96
+ ## Use Cases
97
+
98
+ - **Chat Interfaces**: Keep a chat window accessible while browsing
99
+ - **Media Players**: Minimize music/video controls while using other features
100
+ - **Quick Settings**: Provide easy access to frequently used settings
101
+ - **Notifications**: Show important information that users can minimize
102
+ - **Form Wizards**: Multi-step forms that can be minimized during the process
103
+ - **Help/Support**: Keep help documentation accessible while working
104
+
105
+ ## Accessibility
106
+
107
+ - The component uses semantic HTML structure
108
+ - State changes are announced via events
109
+ - Keyboard navigation is supported through the button controls
110
+ - Focus management is handled automatically
111
+
112
+ ## Best Practices
113
+
114
+ 1. **Header Content**: Keep header content concise and descriptive
115
+ 2. **State Management**: Store the boat state in your application state if persistence is needed
116
+ 3. **Content Height**: Design content to work well within the max-height constraint
117
+ 4. **Mobile Considerations**: Test thoroughly on mobile devices where the boat takes full width
118
+ 5. **Z-Index**: The component uses `z-[100]` - ensure this works with your app's z-index hierarchy
@@ -0,0 +1,7 @@
1
+ function t(e) {
2
+ return e && e.t && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
3
+ }
4
+ export {
5
+ t as g
6
+ };
7
+ //# sourceMappingURL=_commonjsHelpers-Dw9sPFZy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-Dw9sPFZy.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";exports.getDefaultExportFromCjs=function(t){return t&&t.t&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t};
2
+ //# sourceMappingURL=_commonjsHelpers-k2hpEU-q.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-k2hpEU-q.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,118 @@
1
+ # Boat Component
2
+
3
+ ## Overview
4
+ The boat component is a bottom sheet that slides up from the bottom of the screen. It can be in one of three states: hidden, minimized, or expanded. This component is perfect for displaying additional content or actions while keeping the main interface accessible.
5
+
6
+ ## Properties
7
+
8
+ | Property | Type | Default | Description |
9
+ |----------|------|---------|-------------|
10
+ | `state` | `'hidden' \| 'minimized' \| 'expanded'` | `'hidden'` | The current state of the boat component |
11
+
12
+ ## Events
13
+
14
+ | Event | Detail | Description |
15
+ |-------|--------|-------------|
16
+ | `change` | `'hidden' \| 'minimized' \| 'expanded'` | Fired when the state changes |
17
+
18
+ ## Slots
19
+
20
+ | Slot | Description |
21
+ |------|-------------|
22
+ | `header` | Content to display in the header area (visible in both minimized and expanded states) |
23
+ | Default | Main content displayed when the boat is expanded |
24
+
25
+ ## Usage
26
+
27
+ ### Basic Example
28
+ ```html
29
+ <schmancy-boat state="minimized">
30
+ <schmancy-typography slot="header" variant="title">
31
+ Boat Title
32
+ </schmancy-typography>
33
+
34
+ <schmancy-flex direction="column" gap="md" class="p-4">
35
+ <schmancy-typography>
36
+ This is the main content of the boat component.
37
+ </schmancy-typography>
38
+ </schmancy-flex>
39
+ </schmancy-boat>
40
+ ```
41
+
42
+ ### With Icon in Header
43
+ ```html
44
+ <schmancy-boat state="minimized" @change="${(e) => console.log(e.detail)}">
45
+ <schmancy-flex slot="header" gap="sm" content="center">
46
+ <schmancy-icon>info</schmancy-icon>
47
+ <schmancy-typography variant="title">Settings</schmancy-typography>
48
+ </schmancy-flex>
49
+
50
+ <schmancy-flex direction="column" gap="md" class="p-4">
51
+ <!-- Settings content -->
52
+ </schmancy-flex>
53
+ </schmancy-boat>
54
+ ```
55
+
56
+ ### Controlling State
57
+ ```typescript
58
+ // Get reference to boat
59
+ const boat = document.querySelector('schmancy-boat');
60
+
61
+ // Show minimized
62
+ boat.state = 'minimized';
63
+
64
+ // Show expanded
65
+ boat.state = 'expanded';
66
+
67
+ // Hide
68
+ boat.state = 'hidden';
69
+
70
+ // Listen for state changes
71
+ boat.addEventListener('change', (e) => {
72
+ console.log('New state:', e.detail);
73
+ });
74
+ ```
75
+
76
+ ## Features
77
+
78
+ - **Three States**: Hidden (completely off-screen), minimized (shows only header), and expanded (shows all content)
79
+ - **Smooth Transitions**: Animated transitions between states using CSS transforms
80
+ - **Responsive Design**: Different widths on various screen sizes:
81
+ - Mobile: 100% width
82
+ - Tablet: 70% width
83
+ - Desktop: 60% width
84
+ - Large screens: 40% width
85
+ - **Fixed Positioning**: Always appears at the bottom-right of the viewport
86
+ - **Overflow Handling**: Content scrolls when it exceeds 80vh max height
87
+ - **Sticky Header**: Header remains visible when scrolling through content
88
+
89
+ ## CSS Classes
90
+
91
+ The component uses internal CSS classes for styling:
92
+ - `.translate-y-full`: Positions the boat completely off-screen (hidden state)
93
+ - `.translate-y-full-minus-64`: Shows only the header (minimized state)
94
+ - `.translate-y-0`: Shows the entire boat (expanded state)
95
+
96
+ ## Use Cases
97
+
98
+ - **Chat Interfaces**: Keep a chat window accessible while browsing
99
+ - **Media Players**: Minimize music/video controls while using other features
100
+ - **Quick Settings**: Provide easy access to frequently used settings
101
+ - **Notifications**: Show important information that users can minimize
102
+ - **Form Wizards**: Multi-step forms that can be minimized during the process
103
+ - **Help/Support**: Keep help documentation accessible while working
104
+
105
+ ## Accessibility
106
+
107
+ - The component uses semantic HTML structure
108
+ - State changes are announced via events
109
+ - Keyboard navigation is supported through the button controls
110
+ - Focus management is handled automatically
111
+
112
+ ## Best Practices
113
+
114
+ 1. **Header Content**: Keep header content concise and descriptive
115
+ 2. **State Management**: Store the boat state in your application state if persistence is needed
116
+ 3. **Content Height**: Design content to work well within the max-height constraint
117
+ 4. **Mobile Considerations**: Test thoroughly on mobile devices where the boat takes full width
118
+ 5. **Z-Index**: The component uses `z-[100]` - ensure this works with your app's z-index hierarchy
@@ -1,8 +1,8 @@
1
1
  import { concat as u, interval as g, startWith as y, filter as h, take as d, fromEvent as f, throttleTime as w, map as b, distinctUntilChanged as $, tap as c } from "rxjs";
2
2
  import "lit/directives/class-map.js";
3
3
  import "lit/directives/style-map.js";
4
- import { $ as x } from "./litElement.mixin-BKgKxczr.js";
5
- import "./tailwind.mixin-k9HTphsu.js";
4
+ import { $ as x } from "./litElement.mixin-BHvj00po.js";
5
+ import "./tailwind.mixin-C3BFeflA.js";
6
6
  import { css as S, html as Z } from "lit";
7
7
  import { property as a, queryAssignedNodes as v, query as m, customElement as A } from "lit/decorators.js";
8
8
  var E = Object.defineProperty, O = Object.getOwnPropertyDescriptor, e = (r, s, n, i) => {
@@ -72,4 +72,4 @@ let t = class extends x(S`
72
72
  }
73
73
  };
74
74
  e([a({ type: String })], t.prototype, "ease", 2), e([a({ type: Number })], t.prototype, "delay", 2), e([a({ type: Number })], t.prototype, "stagger", 2), e([a({ type: Number })], t.prototype, "duration", 2), e([a({ type: Array })], t.prototype, "scale", 2), e([a({ type: Array })], t.prototype, "opacity", 2), e([a({ type: Array })], t.prototype, "translateX", 2), e([a({ type: Array })], t.prototype, "translateY", 2), e([a({ type: Array })], t.prototype, "translateZ", 2), e([a({ type: Array })], t.prototype, "rotateZ", 2), e([a({ type: Boolean })], t.prototype, "resetOnScroll", 2), e([v()], t.prototype, "defaultSlot", 2), e([m(".letters")], t.prototype, "letters", 2), e([m(".ml7")], t.prototype, "ml7", 2), t = e([A("schmancy-animated-text")], t);
75
- //# sourceMappingURL=animated-text-Cb07SP6h.js.map
75
+ //# sourceMappingURL=animated-text-Dr60iE4v.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-Cb07SP6h.js","sources":["../src/animated-text/animated-text.ts"],"sourcesContent":["// Removed: import { createTimeline, stagger } from '@packages/anime-beta-master'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedNodes } from 'lit/decorators.js'\nimport {\n\tconcat,\n\tdistinctUntilChanged,\n\tfilter,\n\tfromEvent,\n\tinterval,\n\tmap,\n\tstartWith,\n\ttake,\n\ttap,\n\tthrottleTime,\n} from 'rxjs'\n\n/**\n * @element schmancy-animated-text\n * Inspired by https://tobiasahlin.com/moving-letters/#1\n */\n@customElement('schmancy-animated-text')\nexport default class SchmancyAnimatedText extends $LitElement(css`\n\t:host {\n\t\tfont-family: inherit;\n\t\tdisplay: block;\n\t}\n\t.ml7 {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n\t.ml7 .text-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t}\n\t.ml7 .letter {\n\t\ttransform-origin: 0 100%;\n\t\tdisplay: inline-block;\n\t\topacity: 0;\n\t}\n`) {\n\t@property({ type: String }) ease = 'outExpo' // not a built-in string for Web Animations\n\t@property({ type: Number }) delay = 0\n\t@property({ type: Number }) stagger = 50\n\t@property({ type: Number }) duration = 750\n\t@property({ type: Array }) scale = [0, 1]\n\t@property({ type: Array }) opacity = [0, 1]\n\t@property({ type: Array }) translateX = ['0.55em', '0em']\n\t@property({ type: Array }) translateY = ['1.1em', '0em']\n\t@property({ type: Array }) translateZ = [0, 0]\n\t@property({ type: Array }) rotateZ = [180, 0]\n\t@property({ type: Boolean }) resetOnScroll = true\n\n\t@queryAssignedNodes() defaultSlot!: HTMLElement[]\n\t@query('.letters') letters!: HTMLElement\n\t@query('.ml7') ml7!: HTMLElement\n\n\t// Function to check if an element is in the viewport\n\tisInViewport(element: HTMLElement) {\n\t\tconst rect = element.getBoundingClientRect()\n\t\treturn (\n\t\t\trect.top >= 0 &&\n\t\t\trect.left >= 0 &&\n\t\t\trect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n\t\t\trect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t\t)\n\t}\n\n\tasync firstUpdated() {\n\t\t// Split the text into <span class=\"letter\"> ... </span> elements\n\t\tthis.letters.innerHTML = this.defaultSlot[0].textContent!.replace(/\\S/g, `<span class=\"letter\">$&</span>`)\n\n\t\t// Observe viewport + initial readiness\n\t\tconcat(\n\t\t\t// 1) Wait until the element is rendered (width/height > 0)\n\t\t\tinterval(10).pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\tfilter(() => {\n\t\t\t\t\tconst rect = this.getBoundingClientRect()\n\t\t\t\t\treturn rect.width > 0 && rect.height > 0\n\t\t\t\t}),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\t// 2) Then handle scroll events, throttled\n\t\t\tfromEvent(window, 'scroll').pipe(\n\t\t\t\tthrottleTime(0, undefined, {\n\t\t\t\t\tleading: true,\n\t\t\t\t\ttrailing: true,\n\t\t\t\t}),\n\t\t\t\tstartWith(true),\n\t\t\t\tmap(() => this.isInViewport(this)),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttap(inViewport => {\n\t\t\t\t\t// If leaving viewport and `resetOnScroll` is true, reset letters to opacity 0\n\t\t\t\t\tif (!inViewport && this.resetOnScroll) {\n\t\t\t\t\t\tArray.from(this.letters.children).forEach((letter: HTMLElement) => {\n\t\t\t\t\t\t\tletter.style.opacity = '0'\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\tfilter(isInViewport => isInViewport),\n\t\t\t\t// If resetOnScroll = false, animate only the first time inView. If true, repeat.\n\t\t\t\tthis.resetOnScroll ? tap() : take(1),\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\t// Animate letters with the native Web Animations API\n\t\t\t\t\t\tconst letters = this.shadowRoot!.querySelectorAll<HTMLElement>('.ml7 .letter')\n\n\t\t\t\t\t\tletters.forEach((letter, i) => {\n\t\t\t\t\t\t\t// Combine all transforms into one CSS transform string\n\t\t\t\t\t\t\t// From\n\t\t\t\t\t\t\tconst fromTransform = `\n translate3d(${this.translateX[0]}, ${this.translateY[0]}, ${this.translateZ[0]}px)\n rotateZ(${this.rotateZ[0]}deg)\n scale(${this.scale[0]})\n `\n\t\t\t\t\t\t\t// To\n\t\t\t\t\t\t\tconst toTransform = `\n translate3d(${this.translateX[1]}, ${this.translateY[1]}, ${this.translateZ[1]}px)\n rotateZ(${this.rotateZ[1]}deg)\n scale(${this.scale[1]})\n `\n\t\t\t\t\t\t\t// Approximate `outExpo` or pick a standard easing (like 'ease-out'):\n\t\t\t\t\t\t\t// outExpo often approximated by cubic-bezier(0.19, 1, 0.22, 1)\n\t\t\t\t\t\t\tconst easingMap: Record<string, string> = {\n\t\t\t\t\t\t\t\toutExpo: 'cubic-bezier(0.19, 1, 0.22, 1)',\n\t\t\t\t\t\t\t\t// add more if you want\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst keyframes: Keyframe[] = [\n\t\t\t\t\t\t\t\t{ transform: fromTransform, opacity: String(this.opacity[0]) },\n\t\t\t\t\t\t\t\t{ transform: toTransform, opacity: String(this.opacity[1]) },\n\t\t\t\t\t\t\t]\n\n\t\t\t\t\t\t\tletter.animate(keyframes, {\n\t\t\t\t\t\t\t\tduration: this.duration,\n\t\t\t\t\t\t\t\teasing: easingMap[this.ease] || 'ease-out',\n\t\t\t\t\t\t\t\tdelay: this.delay + i * this.stagger, // staggered start\n\t\t\t\t\t\t\t\tfill: 'forwards', // so the letters remain visible\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t).subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<span class=\"ml7\">\n\t\t\t\t<span class=\"text-wrapper\">\n\t\t\t\t\t<span class=\"letters\">\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-animated-text': SchmancyAnimatedText\n\t}\n}\n"],"names":["SchmancyAnimatedText","$LitElement","css","super","arguments","this","ease","delay","stagger","duration","scale","opacity","translateX","translateY","translateZ","rotateZ","resetOnScroll","element","rect","getBoundingClientRect","top","left","bottom","window","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","firstUpdated","letters","innerHTML","defaultSlot","textContent","replace","concat","interval","pipe","startWith","filter","width","height","take","fromEvent","throttleTime","leading","trailing","map","isInViewport","distinctUntilChanged","tap","inViewport","Array","from","children","forEach","letter","style","next","shadowRoot","querySelectorAll","i","fromTransform","toTransform","keyframes","transform","String","animate","easing","outExpo","fill","subscribe","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"animated-text-Dr60iE4v.js","sources":["../src/animated-text/animated-text.ts"],"sourcesContent":["// Removed: import { createTimeline, stagger } from '@packages/anime-beta-master'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedNodes } from 'lit/decorators.js'\nimport {\n\tconcat,\n\tdistinctUntilChanged,\n\tfilter,\n\tfromEvent,\n\tinterval,\n\tmap,\n\tstartWith,\n\ttake,\n\ttap,\n\tthrottleTime,\n} from 'rxjs'\n\n/**\n * @element schmancy-animated-text\n * Inspired by https://tobiasahlin.com/moving-letters/#1\n */\n@customElement('schmancy-animated-text')\nexport default class SchmancyAnimatedText extends $LitElement(css`\n\t:host {\n\t\tfont-family: inherit;\n\t\tdisplay: block;\n\t}\n\t.ml7 {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n\t.ml7 .text-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t}\n\t.ml7 .letter {\n\t\ttransform-origin: 0 100%;\n\t\tdisplay: inline-block;\n\t\topacity: 0;\n\t}\n`) {\n\t@property({ type: String }) ease = 'outExpo' // not a built-in string for Web Animations\n\t@property({ type: Number }) delay = 0\n\t@property({ type: Number }) stagger = 50\n\t@property({ type: Number }) duration = 750\n\t@property({ type: Array }) scale = [0, 1]\n\t@property({ type: Array }) opacity = [0, 1]\n\t@property({ type: Array }) translateX = ['0.55em', '0em']\n\t@property({ type: Array }) translateY = ['1.1em', '0em']\n\t@property({ type: Array }) translateZ = [0, 0]\n\t@property({ type: Array }) rotateZ = [180, 0]\n\t@property({ type: Boolean }) resetOnScroll = true\n\n\t@queryAssignedNodes() defaultSlot!: HTMLElement[]\n\t@query('.letters') letters!: HTMLElement\n\t@query('.ml7') ml7!: HTMLElement\n\n\t// Function to check if an element is in the viewport\n\tisInViewport(element: HTMLElement) {\n\t\tconst rect = element.getBoundingClientRect()\n\t\treturn (\n\t\t\trect.top >= 0 &&\n\t\t\trect.left >= 0 &&\n\t\t\trect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n\t\t\trect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t\t)\n\t}\n\n\tasync firstUpdated() {\n\t\t// Split the text into <span class=\"letter\"> ... </span> elements\n\t\tthis.letters.innerHTML = this.defaultSlot[0].textContent!.replace(/\\S/g, `<span class=\"letter\">$&</span>`)\n\n\t\t// Observe viewport + initial readiness\n\t\tconcat(\n\t\t\t// 1) Wait until the element is rendered (width/height > 0)\n\t\t\tinterval(10).pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\tfilter(() => {\n\t\t\t\t\tconst rect = this.getBoundingClientRect()\n\t\t\t\t\treturn rect.width > 0 && rect.height > 0\n\t\t\t\t}),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\t// 2) Then handle scroll events, throttled\n\t\t\tfromEvent(window, 'scroll').pipe(\n\t\t\t\tthrottleTime(0, undefined, {\n\t\t\t\t\tleading: true,\n\t\t\t\t\ttrailing: true,\n\t\t\t\t}),\n\t\t\t\tstartWith(true),\n\t\t\t\tmap(() => this.isInViewport(this)),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttap(inViewport => {\n\t\t\t\t\t// If leaving viewport and `resetOnScroll` is true, reset letters to opacity 0\n\t\t\t\t\tif (!inViewport && this.resetOnScroll) {\n\t\t\t\t\t\tArray.from(this.letters.children).forEach((letter: HTMLElement) => {\n\t\t\t\t\t\t\tletter.style.opacity = '0'\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\tfilter(isInViewport => isInViewport),\n\t\t\t\t// If resetOnScroll = false, animate only the first time inView. If true, repeat.\n\t\t\t\tthis.resetOnScroll ? tap() : take(1),\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\t// Animate letters with the native Web Animations API\n\t\t\t\t\t\tconst letters = this.shadowRoot!.querySelectorAll<HTMLElement>('.ml7 .letter')\n\n\t\t\t\t\t\tletters.forEach((letter, i) => {\n\t\t\t\t\t\t\t// Combine all transforms into one CSS transform string\n\t\t\t\t\t\t\t// From\n\t\t\t\t\t\t\tconst fromTransform = `\n translate3d(${this.translateX[0]}, ${this.translateY[0]}, ${this.translateZ[0]}px)\n rotateZ(${this.rotateZ[0]}deg)\n scale(${this.scale[0]})\n `\n\t\t\t\t\t\t\t// To\n\t\t\t\t\t\t\tconst toTransform = `\n translate3d(${this.translateX[1]}, ${this.translateY[1]}, ${this.translateZ[1]}px)\n rotateZ(${this.rotateZ[1]}deg)\n scale(${this.scale[1]})\n `\n\t\t\t\t\t\t\t// Approximate `outExpo` or pick a standard easing (like 'ease-out'):\n\t\t\t\t\t\t\t// outExpo often approximated by cubic-bezier(0.19, 1, 0.22, 1)\n\t\t\t\t\t\t\tconst easingMap: Record<string, string> = {\n\t\t\t\t\t\t\t\toutExpo: 'cubic-bezier(0.19, 1, 0.22, 1)',\n\t\t\t\t\t\t\t\t// add more if you want\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst keyframes: Keyframe[] = [\n\t\t\t\t\t\t\t\t{ transform: fromTransform, opacity: String(this.opacity[0]) },\n\t\t\t\t\t\t\t\t{ transform: toTransform, opacity: String(this.opacity[1]) },\n\t\t\t\t\t\t\t]\n\n\t\t\t\t\t\t\tletter.animate(keyframes, {\n\t\t\t\t\t\t\t\tduration: this.duration,\n\t\t\t\t\t\t\t\teasing: easingMap[this.ease] || 'ease-out',\n\t\t\t\t\t\t\t\tdelay: this.delay + i * this.stagger, // staggered start\n\t\t\t\t\t\t\t\tfill: 'forwards', // so the letters remain visible\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t).subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<span class=\"ml7\">\n\t\t\t\t<span class=\"text-wrapper\">\n\t\t\t\t\t<span class=\"letters\">\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-animated-text': SchmancyAnimatedText\n\t}\n}\n"],"names":["SchmancyAnimatedText","$LitElement","css","super","arguments","this","ease","delay","stagger","duration","scale","opacity","translateX","translateY","translateZ","rotateZ","resetOnScroll","element","rect","getBoundingClientRect","top","left","bottom","window","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","firstUpdated","letters","innerHTML","defaultSlot","textContent","replace","concat","interval","pipe","startWith","filter","width","height","take","fromEvent","throttleTime","leading","trailing","map","isInViewport","distinctUntilChanged","tap","inViewport","Array","from","children","forEach","letter","style","next","shadowRoot","querySelectorAll","i","fromTransform","toTransform","keyframes","transform","String","animate","easing","outExpo","fill","subscribe","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const h=require("./litElement.mixin-0pIFA8ru.cjs");require("./tailwind.mixin-DFxMrwgk.cjs");const c=require("lit"),r=require("lit/decorators.js");var d=Object.defineProperty,u=Object.getOwnPropertyDescriptor,s=(i,a,p,n)=>{for(var l,o=n>1?void 0:n?u(a,p):a,y=i.length-1;y>=0;y--)(l=i[y])&&(o=(n?l(a,p,o):l(o))||o);return n&&o&&d(a,p,o),o};let t=class extends h.$LitElement(c.css`
1
+ "use strict";const e=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const h=require("./litElement.mixin-Bk1VBCai.cjs");require("./tailwind.mixin-Xs0QJUOE.cjs");const c=require("lit"),r=require("lit/decorators.js");var d=Object.defineProperty,u=Object.getOwnPropertyDescriptor,s=(i,a,p,n)=>{for(var l,o=n>1?void 0:n?u(a,p):a,y=i.length-1;y>=0;y--)(l=i[y])&&(o=(n?l(a,p,o):l(o))||o);return n&&o&&d(a,p,o),o};let t=class extends h.$LitElement(c.css`
2
2
  :host {
3
3
  font-family: inherit;
4
4
  display: block;
@@ -34,4 +34,4 @@
34
34
  </span>
35
35
  </span>
36
36
  `}};s([r.property({type:String})],t.prototype,"ease",2),s([r.property({type:Number})],t.prototype,"delay",2),s([r.property({type:Number})],t.prototype,"stagger",2),s([r.property({type:Number})],t.prototype,"duration",2),s([r.property({type:Array})],t.prototype,"scale",2),s([r.property({type:Array})],t.prototype,"opacity",2),s([r.property({type:Array})],t.prototype,"translateX",2),s([r.property({type:Array})],t.prototype,"translateY",2),s([r.property({type:Array})],t.prototype,"translateZ",2),s([r.property({type:Array})],t.prototype,"rotateZ",2),s([r.property({type:Boolean})],t.prototype,"resetOnScroll",2),s([r.queryAssignedNodes()],t.prototype,"defaultSlot",2),s([r.query(".letters")],t.prototype,"letters",2),s([r.query(".ml7")],t.prototype,"ml7",2),t=s([r.customElement("schmancy-animated-text")],t);
37
- //# sourceMappingURL=animated-text-DML1qmmR.cjs.map
37
+ //# sourceMappingURL=animated-text-IaaGcNeD.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-DML1qmmR.cjs","sources":["../src/animated-text/animated-text.ts"],"sourcesContent":["// Removed: import { createTimeline, stagger } from '@packages/anime-beta-master'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedNodes } from 'lit/decorators.js'\nimport {\n\tconcat,\n\tdistinctUntilChanged,\n\tfilter,\n\tfromEvent,\n\tinterval,\n\tmap,\n\tstartWith,\n\ttake,\n\ttap,\n\tthrottleTime,\n} from 'rxjs'\n\n/**\n * @element schmancy-animated-text\n * Inspired by https://tobiasahlin.com/moving-letters/#1\n */\n@customElement('schmancy-animated-text')\nexport default class SchmancyAnimatedText extends $LitElement(css`\n\t:host {\n\t\tfont-family: inherit;\n\t\tdisplay: block;\n\t}\n\t.ml7 {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n\t.ml7 .text-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t}\n\t.ml7 .letter {\n\t\ttransform-origin: 0 100%;\n\t\tdisplay: inline-block;\n\t\topacity: 0;\n\t}\n`) {\n\t@property({ type: String }) ease = 'outExpo' // not a built-in string for Web Animations\n\t@property({ type: Number }) delay = 0\n\t@property({ type: Number }) stagger = 50\n\t@property({ type: Number }) duration = 750\n\t@property({ type: Array }) scale = [0, 1]\n\t@property({ type: Array }) opacity = [0, 1]\n\t@property({ type: Array }) translateX = ['0.55em', '0em']\n\t@property({ type: Array }) translateY = ['1.1em', '0em']\n\t@property({ type: Array }) translateZ = [0, 0]\n\t@property({ type: Array }) rotateZ = [180, 0]\n\t@property({ type: Boolean }) resetOnScroll = true\n\n\t@queryAssignedNodes() defaultSlot!: HTMLElement[]\n\t@query('.letters') letters!: HTMLElement\n\t@query('.ml7') ml7!: HTMLElement\n\n\t// Function to check if an element is in the viewport\n\tisInViewport(element: HTMLElement) {\n\t\tconst rect = element.getBoundingClientRect()\n\t\treturn (\n\t\t\trect.top >= 0 &&\n\t\t\trect.left >= 0 &&\n\t\t\trect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n\t\t\trect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t\t)\n\t}\n\n\tasync firstUpdated() {\n\t\t// Split the text into <span class=\"letter\"> ... </span> elements\n\t\tthis.letters.innerHTML = this.defaultSlot[0].textContent!.replace(/\\S/g, `<span class=\"letter\">$&</span>`)\n\n\t\t// Observe viewport + initial readiness\n\t\tconcat(\n\t\t\t// 1) Wait until the element is rendered (width/height > 0)\n\t\t\tinterval(10).pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\tfilter(() => {\n\t\t\t\t\tconst rect = this.getBoundingClientRect()\n\t\t\t\t\treturn rect.width > 0 && rect.height > 0\n\t\t\t\t}),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\t// 2) Then handle scroll events, throttled\n\t\t\tfromEvent(window, 'scroll').pipe(\n\t\t\t\tthrottleTime(0, undefined, {\n\t\t\t\t\tleading: true,\n\t\t\t\t\ttrailing: true,\n\t\t\t\t}),\n\t\t\t\tstartWith(true),\n\t\t\t\tmap(() => this.isInViewport(this)),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttap(inViewport => {\n\t\t\t\t\t// If leaving viewport and `resetOnScroll` is true, reset letters to opacity 0\n\t\t\t\t\tif (!inViewport && this.resetOnScroll) {\n\t\t\t\t\t\tArray.from(this.letters.children).forEach((letter: HTMLElement) => {\n\t\t\t\t\t\t\tletter.style.opacity = '0'\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\tfilter(isInViewport => isInViewport),\n\t\t\t\t// If resetOnScroll = false, animate only the first time inView. If true, repeat.\n\t\t\t\tthis.resetOnScroll ? tap() : take(1),\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\t// Animate letters with the native Web Animations API\n\t\t\t\t\t\tconst letters = this.shadowRoot!.querySelectorAll<HTMLElement>('.ml7 .letter')\n\n\t\t\t\t\t\tletters.forEach((letter, i) => {\n\t\t\t\t\t\t\t// Combine all transforms into one CSS transform string\n\t\t\t\t\t\t\t// From\n\t\t\t\t\t\t\tconst fromTransform = `\n translate3d(${this.translateX[0]}, ${this.translateY[0]}, ${this.translateZ[0]}px)\n rotateZ(${this.rotateZ[0]}deg)\n scale(${this.scale[0]})\n `\n\t\t\t\t\t\t\t// To\n\t\t\t\t\t\t\tconst toTransform = `\n translate3d(${this.translateX[1]}, ${this.translateY[1]}, ${this.translateZ[1]}px)\n rotateZ(${this.rotateZ[1]}deg)\n scale(${this.scale[1]})\n `\n\t\t\t\t\t\t\t// Approximate `outExpo` or pick a standard easing (like 'ease-out'):\n\t\t\t\t\t\t\t// outExpo often approximated by cubic-bezier(0.19, 1, 0.22, 1)\n\t\t\t\t\t\t\tconst easingMap: Record<string, string> = {\n\t\t\t\t\t\t\t\toutExpo: 'cubic-bezier(0.19, 1, 0.22, 1)',\n\t\t\t\t\t\t\t\t// add more if you want\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst keyframes: Keyframe[] = [\n\t\t\t\t\t\t\t\t{ transform: fromTransform, opacity: String(this.opacity[0]) },\n\t\t\t\t\t\t\t\t{ transform: toTransform, opacity: String(this.opacity[1]) },\n\t\t\t\t\t\t\t]\n\n\t\t\t\t\t\t\tletter.animate(keyframes, {\n\t\t\t\t\t\t\t\tduration: this.duration,\n\t\t\t\t\t\t\t\teasing: easingMap[this.ease] || 'ease-out',\n\t\t\t\t\t\t\t\tdelay: this.delay + i * this.stagger, // staggered start\n\t\t\t\t\t\t\t\tfill: 'forwards', // so the letters remain visible\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t).subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<span class=\"ml7\">\n\t\t\t\t<span class=\"text-wrapper\">\n\t\t\t\t\t<span class=\"letters\">\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-animated-text': SchmancyAnimatedText\n\t}\n}\n"],"names":["SchmancyAnimatedText","$LitElement","css","super","arguments","this","ease","delay","stagger","duration","scale","opacity","translateX","translateY","translateZ","rotateZ","resetOnScroll","element","rect","getBoundingClientRect","top","left","bottom","window","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","firstUpdated","letters","innerHTML","defaultSlot","textContent","replace","concat","interval","pipe","startWith","filter","width","height","take","fromEvent","throttleTime","leading","trailing","map","isInViewport","distinctUntilChanged","tap","inViewport","Array","from","children","forEach","letter","style","next","shadowRoot","querySelectorAll","i","fromTransform","toTransform","keyframes","transform","String","animate","easing","outExpo","fill","subscribe","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"animated-text-IaaGcNeD.cjs","sources":["../src/animated-text/animated-text.ts"],"sourcesContent":["// Removed: import { createTimeline, stagger } from '@packages/anime-beta-master'\nimport { $LitElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property, query, queryAssignedNodes } from 'lit/decorators.js'\nimport {\n\tconcat,\n\tdistinctUntilChanged,\n\tfilter,\n\tfromEvent,\n\tinterval,\n\tmap,\n\tstartWith,\n\ttake,\n\ttap,\n\tthrottleTime,\n} from 'rxjs'\n\n/**\n * @element schmancy-animated-text\n * Inspired by https://tobiasahlin.com/moving-letters/#1\n */\n@customElement('schmancy-animated-text')\nexport default class SchmancyAnimatedText extends $LitElement(css`\n\t:host {\n\t\tfont-family: inherit;\n\t\tdisplay: block;\n\t}\n\t.ml7 {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t}\n\t.ml7 .text-wrapper {\n\t\tposition: relative;\n\t\tdisplay: inline-block;\n\t\toverflow: hidden;\n\t}\n\t.ml7 .letter {\n\t\ttransform-origin: 0 100%;\n\t\tdisplay: inline-block;\n\t\topacity: 0;\n\t}\n`) {\n\t@property({ type: String }) ease = 'outExpo' // not a built-in string for Web Animations\n\t@property({ type: Number }) delay = 0\n\t@property({ type: Number }) stagger = 50\n\t@property({ type: Number }) duration = 750\n\t@property({ type: Array }) scale = [0, 1]\n\t@property({ type: Array }) opacity = [0, 1]\n\t@property({ type: Array }) translateX = ['0.55em', '0em']\n\t@property({ type: Array }) translateY = ['1.1em', '0em']\n\t@property({ type: Array }) translateZ = [0, 0]\n\t@property({ type: Array }) rotateZ = [180, 0]\n\t@property({ type: Boolean }) resetOnScroll = true\n\n\t@queryAssignedNodes() defaultSlot!: HTMLElement[]\n\t@query('.letters') letters!: HTMLElement\n\t@query('.ml7') ml7!: HTMLElement\n\n\t// Function to check if an element is in the viewport\n\tisInViewport(element: HTMLElement) {\n\t\tconst rect = element.getBoundingClientRect()\n\t\treturn (\n\t\t\trect.top >= 0 &&\n\t\t\trect.left >= 0 &&\n\t\t\trect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n\t\t\trect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t\t)\n\t}\n\n\tasync firstUpdated() {\n\t\t// Split the text into <span class=\"letter\"> ... </span> elements\n\t\tthis.letters.innerHTML = this.defaultSlot[0].textContent!.replace(/\\S/g, `<span class=\"letter\">$&</span>`)\n\n\t\t// Observe viewport + initial readiness\n\t\tconcat(\n\t\t\t// 1) Wait until the element is rendered (width/height > 0)\n\t\t\tinterval(10).pipe(\n\t\t\t\tstartWith(true),\n\t\t\t\tfilter(() => {\n\t\t\t\t\tconst rect = this.getBoundingClientRect()\n\t\t\t\t\treturn rect.width > 0 && rect.height > 0\n\t\t\t\t}),\n\t\t\t\ttake(1),\n\t\t\t),\n\t\t\t// 2) Then handle scroll events, throttled\n\t\t\tfromEvent(window, 'scroll').pipe(\n\t\t\t\tthrottleTime(0, undefined, {\n\t\t\t\t\tleading: true,\n\t\t\t\t\ttrailing: true,\n\t\t\t\t}),\n\t\t\t\tstartWith(true),\n\t\t\t\tmap(() => this.isInViewport(this)),\n\t\t\t\tdistinctUntilChanged(),\n\t\t\t\ttap(inViewport => {\n\t\t\t\t\t// If leaving viewport and `resetOnScroll` is true, reset letters to opacity 0\n\t\t\t\t\tif (!inViewport && this.resetOnScroll) {\n\t\t\t\t\t\tArray.from(this.letters.children).forEach((letter: HTMLElement) => {\n\t\t\t\t\t\t\tletter.style.opacity = '0'\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\tfilter(isInViewport => isInViewport),\n\t\t\t\t// If resetOnScroll = false, animate only the first time inView. If true, repeat.\n\t\t\t\tthis.resetOnScroll ? tap() : take(1),\n\t\t\t\ttap({\n\t\t\t\t\tnext: () => {\n\t\t\t\t\t\t// Animate letters with the native Web Animations API\n\t\t\t\t\t\tconst letters = this.shadowRoot!.querySelectorAll<HTMLElement>('.ml7 .letter')\n\n\t\t\t\t\t\tletters.forEach((letter, i) => {\n\t\t\t\t\t\t\t// Combine all transforms into one CSS transform string\n\t\t\t\t\t\t\t// From\n\t\t\t\t\t\t\tconst fromTransform = `\n translate3d(${this.translateX[0]}, ${this.translateY[0]}, ${this.translateZ[0]}px)\n rotateZ(${this.rotateZ[0]}deg)\n scale(${this.scale[0]})\n `\n\t\t\t\t\t\t\t// To\n\t\t\t\t\t\t\tconst toTransform = `\n translate3d(${this.translateX[1]}, ${this.translateY[1]}, ${this.translateZ[1]}px)\n rotateZ(${this.rotateZ[1]}deg)\n scale(${this.scale[1]})\n `\n\t\t\t\t\t\t\t// Approximate `outExpo` or pick a standard easing (like 'ease-out'):\n\t\t\t\t\t\t\t// outExpo often approximated by cubic-bezier(0.19, 1, 0.22, 1)\n\t\t\t\t\t\t\tconst easingMap: Record<string, string> = {\n\t\t\t\t\t\t\t\toutExpo: 'cubic-bezier(0.19, 1, 0.22, 1)',\n\t\t\t\t\t\t\t\t// add more if you want\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst keyframes: Keyframe[] = [\n\t\t\t\t\t\t\t\t{ transform: fromTransform, opacity: String(this.opacity[0]) },\n\t\t\t\t\t\t\t\t{ transform: toTransform, opacity: String(this.opacity[1]) },\n\t\t\t\t\t\t\t]\n\n\t\t\t\t\t\t\tletter.animate(keyframes, {\n\t\t\t\t\t\t\t\tduration: this.duration,\n\t\t\t\t\t\t\t\teasing: easingMap[this.ease] || 'ease-out',\n\t\t\t\t\t\t\t\tdelay: this.delay + i * this.stagger, // staggered start\n\t\t\t\t\t\t\t\tfill: 'forwards', // so the letters remain visible\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t).subscribe()\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<span class=\"ml7\">\n\t\t\t\t<span class=\"text-wrapper\">\n\t\t\t\t\t<span class=\"letters\">\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</span>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-animated-text': SchmancyAnimatedText\n\t}\n}\n"],"names":["SchmancyAnimatedText","$LitElement","css","super","arguments","this","ease","delay","stagger","duration","scale","opacity","translateX","translateY","translateZ","rotateZ","resetOnScroll","element","rect","getBoundingClientRect","top","left","bottom","window","innerHeight","document","documentElement","clientHeight","right","innerWidth","clientWidth","firstUpdated","letters","innerHTML","defaultSlot","textContent","replace","concat","interval","pipe","startWith","filter","width","height","take","fromEvent","throttleTime","leading","trailing","map","isInViewport","distinctUntilChanged","tap","inViewport","Array","from","children","forEach","letter","style","next","shadowRoot","querySelectorAll","i","fromTransform","toTransform","keyframes","transform","String","animate","easing","outExpo","fill","subscribe","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";require("./animated-text-DML1qmmR.cjs");
1
+ "use strict";require("./animated-text-IaaGcNeD.cjs");
2
2
  //# sourceMappingURL=animated-text.cjs.map
@@ -1,2 +1,2 @@
1
- import "./animated-text-Cb07SP6h.js";
1
+ import "./animated-text-Dr60iE4v.js";
2
2
  //# sourceMappingURL=animated-text.js.map
package/dist/area.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./area.component-Psgv50Lq.cjs"),e=require("./utils-BqFGvnN9.cjs");exports.FINDING_MORTIES=t.FINDING_MORTIES,exports.HERE_RICKY=t.HERE_RICKY,exports.HISTORY_STRATEGY=t.HISTORY_STRATEGY,Object.defineProperty(exports,"SchmancyArea",{enumerable:!0,get:()=>t.SchmancyArea}),exports.area=t.area,exports.routerHistory=t.routerHistory,exports.buildQueryString=e.buildQueryString,exports.compareActiveRoutes=e.compareActiveRoutes,exports.compareCustomElementConstructors=e.compareCustomElementConstructors,exports.compareRouteActions=e.compareRouteActions,exports.createRouteCacheKey=e.createRouteCacheKey,exports.debounce=e.debounce,exports.decodeRouteState=e.decodeRouteState,exports.deepMerge=e.deepMerge,exports.encodeRouteState=e.encodeRouteState,exports.extractQueryParams=e.extractQueryParams,exports.getTagName=e.getTagName,exports.isObject=e.isObject,exports.normalizeTagName=e.normalizeTagName,exports.sanitizeRouteState=e.sanitizeRouteState;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./area.component-C2dpnyWJ.cjs"),e=require("./utils-BqFGvnN9.cjs");exports.FINDING_MORTIES=t.FINDING_MORTIES,exports.HERE_RICKY=t.HERE_RICKY,exports.HISTORY_STRATEGY=t.HISTORY_STRATEGY,Object.defineProperty(exports,"SchmancyArea",{enumerable:!0,get:()=>t.SchmancyArea}),exports.area=t.area,exports.routerHistory=t.routerHistory,exports.buildQueryString=e.buildQueryString,exports.compareActiveRoutes=e.compareActiveRoutes,exports.compareCustomElementConstructors=e.compareCustomElementConstructors,exports.compareRouteActions=e.compareRouteActions,exports.createRouteCacheKey=e.createRouteCacheKey,exports.debounce=e.debounce,exports.decodeRouteState=e.decodeRouteState,exports.deepMerge=e.deepMerge,exports.encodeRouteState=e.encodeRouteState,exports.extractQueryParams=e.extractQueryParams,exports.getTagName=e.getTagName,exports.isObject=e.isObject,exports.normalizeTagName=e.normalizeTagName,exports.sanitizeRouteState=e.sanitizeRouteState;
2
2
  //# sourceMappingURL=area.cjs.map
@@ -1,8 +1,8 @@
1
- "use strict";const r=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const S=require("./litElement.mixin-0pIFA8ru.cjs");require("./tailwind.mixin-DFxMrwgk.cjs");const f=require("lit"),m=require("lit/decorators.js"),w=require("./index-DyJ0oDpR.cjs"),d=new r.Subject,y="FINDING_MORTIES",g="HERE_RICKY",u=new WeakMap;class c{constructor(){this.prettyURL=!1,this.mode="HISTORY",this.request=new r.ReplaySubject(1),this.current=new Map,this.$current=new r.ReplaySubject(1),this.enableHistoryMode=!0,this.findingMortiesEvent=new CustomEvent(y),this.disposed=!1,this.$current.next(this.current),this.$current.subscribe(e=>{this.disposed||e.forEach((t,n)=>{this.getOrCreateAreaSubject(n).next(t)})})}get areaSubjects(){let e=u.get(this);return e||(e=new Map,u.set(this,e)),e}getOrCreateAreaSubject(e){let t=this.areaSubjects.get(e);if(!t||t.closed){t=new r.ReplaySubject(1),this.areaSubjects.set(e,t);const n=this.current.get(e);n&&t.next({...n,state:n.state||{},params:n.params||{}})}return t}on(e,t=!1){if(!e)throw new Error("Area name is required");const n=this.getOrCreateAreaSubject(e).asObservable().pipe(r.distinctUntilChanged((s,i)=>s.component===i.component&&JSON.stringify(s.state)===JSON.stringify(i.state)&&JSON.stringify(s.params)===JSON.stringify(i.params)),r.shareReplay(1));return t?n.pipe(r.skip(1)):n}all(e=!1){const t=this.$current.asObservable().pipe(r.shareReplay(1));return e?t.pipe(r.skip(1)):t}getState(e){if(!e)throw new Error("Area name is required");return this.on(e).pipe(r.map(t=>t.state),r.filter(t=>t!=null),r.distinctUntilChanged((t,n)=>JSON.stringify(t)===JSON.stringify(n)),r.map(t=>t),r.catchError(t=>r.EMPTY))}params(e){if(!e)throw new Error("Area name is required");return this.on(e).pipe(r.map(t=>t.params),r.filter(t=>t!=null),r.distinctUntilChanged((t,n)=>JSON.stringify(t)===JSON.stringify(n)),r.map(t=>t),r.catchError(t=>r.EMPTY))}param(e,t){if(!e||!t)throw new Error("Area name and key are required");return this.params(e).pipe(r.map(n=>n[t]),r.filter(n=>n!==void 0),r.distinctUntilChanged(),r.map(n=>n),r.catchError(n=>r.EMPTY))}find(){return r.zip([r.fromEvent(window,g).pipe(r.map(e=>e.detail),r.bufferTime(0)),r.of(1).pipe(r.tap(()=>window.dispatchEvent(this.findingMortiesEvent)))]).pipe(r.map(([e])=>e),r.timeout(1),r.catchError(()=>r.EMPTY))}push(e){if(!e.area)throw new Error("Area is required for route action");const t={...e,state:e.state||{},params:e.params||{}};this.enableHistoryMode&&d.next(t),this.request.next(t),this.dispatchAreaEvent(t.area,t)}dispatchAreaEvent(e,t){const n=new CustomEvent(`schmancy-area-${e}-changed`,{detail:{area:e,component:t.component,state:t.state,params:t.params,historyStrategy:t.historyStrategy},bubbles:!0,composed:!0});window.dispatchEvent(n)}pop(e){if(!e)throw new Error("Area name is required");const t={...this.state};delete t[e];const n=encodeURIComponent(JSON.stringify(t));history.replaceState(null,"",`/${n}${location.search}`),this.current.delete(e),this.$current.next(this.current);const s=this.areaSubjects.get(e);s&&(s.complete(),this.areaSubjects.delete(e))}clear(){this.areaSubjects.forEach(e=>e.complete()),this.areaSubjects.clear(),this.current.clear(),this.$current.next(this.current),history.replaceState(null,"",`/${location.search}`)}dispose(){this.disposed||(this.disposed=!0,this.areaSubjects.forEach(e=>e.complete()),this.areaSubjects.clear(),this.request.complete(),this.$current.complete(),d.complete(),this.current.clear(),u.delete(this))}static getInstance(){return c.instance||(c.instance=new c),c.instance}get state(){const e=location.pathname.split("/").pop();if(!e)return{};try{const t=decodeURIComponent(e),n=JSON.parse(t);if(typeof n=="object"&&n!==null)return n}catch{}return{}}hasArea(e){return this.current.has(e)}getActiveAreas(){return Array.from(this.current.keys())}getRoute(e){return this.current.get(e)}}const o=c.getInstance();typeof window<"u"&&window.addEventListener("unload",()=>{o.dispose()});var p=(a=>(a.push="push",a.replace="replace",a.pop="pop",a.silent="silent",a))(p||{}),E=Object.defineProperty,b=Object.getOwnPropertyDescriptor,l=(a,e,t,n)=>{for(var s,i=n>1?void 0:n?b(e,t):e,h=a.length-1;h>=0;h--)(s=a[h])&&(i=(n?s(e,t,i):s(i))||i);return n&&i&&E(e,t,i),i};exports.SchmancyArea=class extends S.$LitElement(f.css`
1
+ "use strict";const r=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const S=require("./litElement.mixin-Bk1VBCai.cjs");require("./tailwind.mixin-Xs0QJUOE.cjs");const f=require("lit"),m=require("lit/decorators.js"),w=require("./index-DyJ0oDpR.cjs"),d=new r.Subject,y="FINDING_MORTIES",g="HERE_RICKY",u=new WeakMap;class c{constructor(){this.prettyURL=!1,this.mode="HISTORY",this.request=new r.ReplaySubject(1),this.current=new Map,this.$current=new r.ReplaySubject(1),this.enableHistoryMode=!0,this.findingMortiesEvent=new CustomEvent(y),this.disposed=!1,this.$current.next(this.current),this.$current.subscribe(e=>{this.disposed||e.forEach((t,n)=>{this.getOrCreateAreaSubject(n).next(t)})})}get areaSubjects(){let e=u.get(this);return e||(e=new Map,u.set(this,e)),e}getOrCreateAreaSubject(e){let t=this.areaSubjects.get(e);if(!t||t.closed){t=new r.ReplaySubject(1),this.areaSubjects.set(e,t);const n=this.current.get(e);n&&t.next({...n,state:n.state||{},params:n.params||{}})}return t}on(e,t=!1){if(!e)throw new Error("Area name is required");const n=this.getOrCreateAreaSubject(e).asObservable().pipe(r.distinctUntilChanged((s,i)=>s.component===i.component&&JSON.stringify(s.state)===JSON.stringify(i.state)&&JSON.stringify(s.params)===JSON.stringify(i.params)),r.shareReplay(1));return t?n.pipe(r.skip(1)):n}all(e=!1){const t=this.$current.asObservable().pipe(r.shareReplay(1));return e?t.pipe(r.skip(1)):t}getState(e){if(!e)throw new Error("Area name is required");return this.on(e).pipe(r.map(t=>t.state),r.filter(t=>t!=null),r.distinctUntilChanged((t,n)=>JSON.stringify(t)===JSON.stringify(n)),r.map(t=>t),r.catchError(t=>r.EMPTY))}params(e){if(!e)throw new Error("Area name is required");return this.on(e).pipe(r.map(t=>t.params),r.filter(t=>t!=null),r.distinctUntilChanged((t,n)=>JSON.stringify(t)===JSON.stringify(n)),r.map(t=>t),r.catchError(t=>r.EMPTY))}param(e,t){if(!e||!t)throw new Error("Area name and key are required");return this.params(e).pipe(r.map(n=>n[t]),r.filter(n=>n!==void 0),r.distinctUntilChanged(),r.map(n=>n),r.catchError(n=>r.EMPTY))}find(){return r.zip([r.fromEvent(window,g).pipe(r.map(e=>e.detail),r.bufferTime(0)),r.of(1).pipe(r.tap(()=>window.dispatchEvent(this.findingMortiesEvent)))]).pipe(r.map(([e])=>e),r.timeout(1),r.catchError(()=>r.EMPTY))}push(e){if(!e.area)throw new Error("Area is required for route action");const t={...e,state:e.state||{},params:e.params||{}};this.enableHistoryMode&&d.next(t),this.request.next(t),this.dispatchAreaEvent(t.area,t)}dispatchAreaEvent(e,t){const n=new CustomEvent(`schmancy-area-${e}-changed`,{detail:{area:e,component:t.component,state:t.state,params:t.params,historyStrategy:t.historyStrategy},bubbles:!0,composed:!0});window.dispatchEvent(n)}pop(e){if(!e)throw new Error("Area name is required");const t={...this.state};delete t[e];const n=encodeURIComponent(JSON.stringify(t));history.replaceState(null,"",`/${n}${location.search}`),this.current.delete(e),this.$current.next(this.current);const s=this.areaSubjects.get(e);s&&(s.complete(),this.areaSubjects.delete(e))}clear(){this.areaSubjects.forEach(e=>e.complete()),this.areaSubjects.clear(),this.current.clear(),this.$current.next(this.current),history.replaceState(null,"",`/${location.search}`)}dispose(){this.disposed||(this.disposed=!0,this.areaSubjects.forEach(e=>e.complete()),this.areaSubjects.clear(),this.request.complete(),this.$current.complete(),d.complete(),this.current.clear(),u.delete(this))}static getInstance(){return c.instance||(c.instance=new c),c.instance}get state(){const e=location.pathname.split("/").pop();if(!e)return{};try{const t=decodeURIComponent(e),n=JSON.parse(t);if(typeof n=="object"&&n!==null)return n}catch{}return{}}hasArea(e){return this.current.has(e)}getActiveAreas(){return Array.from(this.current.keys())}getRoute(e){return this.current.get(e)}}const o=c.getInstance();typeof window<"u"&&window.addEventListener("unload",()=>{o.dispose()});var p=(a=>(a.push="push",a.replace="replace",a.pop="pop",a.silent="silent",a))(p||{}),E=Object.defineProperty,b=Object.getOwnPropertyDescriptor,l=(a,e,t,n)=>{for(var s,i=n>1?void 0:n?b(e,t):e,h=a.length-1;h>=0;h--)(s=a[h])&&(i=(n?s(e,t,i):s(i))||i);return n&&i&&E(e,t,i),i};exports.SchmancyArea=class extends S.$LitElement(f.css`
2
2
  :host {
3
3
  position: relative;
4
4
  display: block;
5
5
  inset: 0;
6
6
  }
7
7
  `){getComponentFromPathname(a,e){return r.of(a).pipe(r.map(t=>t.split("/").pop()??""),r.map(t=>{try{return JSON.parse(decodeURIComponent(t))}catch{return{}}}),r.map(t=>t[this.name]),r.map(t=>!t&&this.default?{component:this.default,state:void 0}:t),r.filter(t=>w.libExports.isPresent(t)),r.map(t=>({area:this.name,component:t.component??this.default,state:t.state,historyStrategy:e})),r.map(t=>t),r.catchError(()=>this.default?r.of({area:this.name,component:this.default,historyStrategy:e}):r.EMPTY))}firstUpdated(){if(!this.name)throw new Error("Area name or default component not set");r.merge(r.of(location.pathname).pipe(r.switchMap(a=>this.getComponentFromPathname(a,p.silent)),r.map(a=>a),r.take(1)),o.request.pipe(r.filter(({area:a})=>a===this.name)),r.fromEvent(window,"popstate").pipe(r.map(a=>a.target.location.pathname),r.switchMap(a=>this.getComponentFromPathname(a,p.silent)),r.map(a=>a))).pipe(r.filter(a=>!!a.component),r.takeUntil(this.disconnecting),r.distinctUntilChanged((a,e)=>{let t,n;if(typeof a.component=="function"||(typeof a.component=="string"&&(t=a.component),typeof e.component=="function"))return!1;typeof e.component=="string"&&(n=e.component);const s=(n==null?void 0:n.replaceAll("-","").toLowerCase())===(t==null?void 0:t.replaceAll("-","").toLowerCase()),i=JSON.stringify(a.params||{})===JSON.stringify(e.params||{});return s&&i})).pipe(r.switchMap(a=>{const e=a.component;return e instanceof Promise?r.from(e).pipe(r.map(t=>{var n;return{component:((n=t.exports)==null?void 0:n.default)||t.default,route:a}}),r.catchError(()=>r.EMPTY)):r.of({component:e,route:a})}),r.map(({component:a,route:e})=>{let t;return t=typeof a=="string"?document.createElement(a):a instanceof HTMLElement?a:typeof a=="function"?new a:a,e.params&&Object.entries(e.params).forEach(([n,s])=>{t[n]=s}),e.state&&(t.state=e.state),{component:t,route:e}}),r.map(({component:a,route:e})=>{var s,i;const t=(s=this.shadowRoot)==null?void 0:s.children[0],n=!!t;return t==null||t.remove(),a.classList.add("opacity-0"),(i=this.shadowRoot)==null||i.append(a),a.animate([{opacity:0},{opacity:1}],{duration:n?150:100,easing:"cubic-bezier(0.25, 0.8, 0.25, 1)",fill:"forwards"}),{component:a,route:e}}),r.tap(({component:a,route:e})=>{e.historyStrategy===void 0||e.historyStrategy==="push"?history.pushState(e.state,"",this.newPath(a.tagName,e)):e.historyStrategy&&["replace","pop"].includes(e.historyStrategy)&&history.replaceState(e.state,"",this.newPath(a.tagName,e)),o.current.set(this.name,{component:a.tagName,state:e.state||{},area:this.name,params:e.params||{}}),o.$current.next(o.current)}),r.takeUntil(this.disconnecting)).subscribe()}newPath(a,e){const t=location.pathname.split("/").pop();let n={};try{n=t?JSON.parse(decodeURIComponent(t)):{}}catch{n={}}e.state=e.state??{};const s=e.clearQueryParams?this.queryParamClear(e.clearQueryParams):document.location.search;return encodeURIComponent(JSON.stringify({...n,[this.name]:{component:a.toLowerCase(),state:e.state,params:e.params}})).concat(`${s}`)}queryParamClear(a){if(!a)return"";const e=new URLSearchParams(location.search);return a.forEach(t=>e.delete(t)),e.toString()===""?"":`?${e.toString()}`}checkForTeleportationRequests(){return r.fromEvent(window,"FLIP_REQUEST").pipe(r.map(a=>a.detail),r.bufferTime(0),r.tap(()=>{this.dispatchEvent(new CustomEvent("FLIP_STARTED"))}),r.takeUntil(this.disconnecting),r.timeout(0),r.catchError(()=>r.of(null)))}disconnectedCallback(){super.disconnectedCallback(),this.disconnecting.next(!0),this.disconnecting.complete()}render(){return f.html` <slot> </slot> `}},l([m.property()],exports.SchmancyArea.prototype,"name",2),l([m.property()],exports.SchmancyArea.prototype,"default",2),exports.SchmancyArea=l([m.customElement("schmancy-area")],exports.SchmancyArea),exports.FINDING_MORTIES=y,exports.HERE_RICKY=g,exports.HISTORY_STRATEGY=p,exports.area=o,exports.routerHistory=d;
8
- //# sourceMappingURL=area.component-Psgv50Lq.cjs.map
8
+ //# sourceMappingURL=area.component-C2dpnyWJ.cjs.map