@mhmo91/schmancy 0.3.1 → 0.3.3

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 (282) hide show
  1. package/ai/boat.md +6 -6
  2. package/ai/index.md +1 -1
  3. package/ai/layout.md +161 -140
  4. package/dist/ai/boat.md +6 -6
  5. package/dist/ai/index.md +1 -1
  6. package/dist/ai/layout.md +161 -140
  7. package/dist/{animated-text-GWb1KFIg.js → animated-text-Bd3rsLJs.js} +3 -3
  8. package/dist/{animated-text-GWb1KFIg.js.map → animated-text-Bd3rsLJs.js.map} +1 -1
  9. package/dist/{animated-text-CwhCnj-Z.cjs → animated-text-DgW2DQuG.cjs} +2 -2
  10. package/dist/{animated-text-CwhCnj-Z.cjs.map → animated-text-DgW2DQuG.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-BArN-q7n.js → area.component-CU8UnNll.js} +3 -3
  15. package/dist/{area.component-BArN-q7n.js.map → area.component-CU8UnNll.js.map} +1 -1
  16. package/dist/{area.component-6ZFpx2Be.cjs → area.component-CjdNUfp9.cjs} +2 -2
  17. package/dist/{area.component-6ZFpx2Be.cjs.map → area.component-CjdNUfp9.cjs.map} +1 -1
  18. package/dist/area.js +1 -1
  19. package/dist/{autocomplete-Lrf6Xs9H.cjs → autocomplete-BHegwiIm.cjs} +2 -2
  20. package/dist/{autocomplete-Lrf6Xs9H.cjs.map → autocomplete-BHegwiIm.cjs.map} +1 -1
  21. package/dist/{autocomplete-CY5UhcZ0.js → autocomplete-BrVxvVKr.js} +3 -3
  22. package/dist/{autocomplete-CY5UhcZ0.js.map → autocomplete-BrVxvVKr.js.map} +1 -1
  23. package/dist/autocomplete.cjs +1 -1
  24. package/dist/autocomplete.js +1 -1
  25. package/dist/{avatar-DO2e262N.cjs → avatar-BhN3BVmX.cjs} +2 -2
  26. package/dist/{avatar-DO2e262N.cjs.map → avatar-BhN3BVmX.cjs.map} +1 -1
  27. package/dist/{avatar-BMCu6edd.js → avatar-C2zfmT6Z.js} +43 -43
  28. package/dist/{avatar-BMCu6edd.js.map → avatar-C2zfmT6Z.js.map} +1 -1
  29. package/dist/badge.cjs +1 -1
  30. package/dist/badge.js +1 -1
  31. package/dist/{boat-CJ9Tg8fB.cjs → boat-2HKCdLed.cjs} +2 -2
  32. package/dist/{boat-CJ9Tg8fB.cjs.map → boat-2HKCdLed.cjs.map} +1 -1
  33. package/dist/{boat-BB6LmYdx.js → boat-BpfW38tw.js} +3 -3
  34. package/dist/{boat-BB6LmYdx.js.map → boat-BpfW38tw.js.map} +1 -1
  35. package/dist/boat.cjs +1 -1
  36. package/dist/boat.js +1 -1
  37. package/dist/busy.cjs +1 -1
  38. package/dist/busy.js +1 -1
  39. package/dist/button.cjs +1 -1
  40. package/dist/button.js +1 -1
  41. package/dist/card.cjs +1 -1
  42. package/dist/card.js +1 -1
  43. package/dist/{checkbox-B7DRyBjt.cjs → checkbox-CO07CGjl.cjs} +2 -2
  44. package/dist/{checkbox-B7DRyBjt.cjs.map → checkbox-CO07CGjl.cjs.map} +1 -1
  45. package/dist/{checkbox-BuOkiA0j.js → checkbox-EbICeHvO.js} +2 -2
  46. package/dist/{checkbox-BuOkiA0j.js.map → checkbox-EbICeHvO.js.map} +1 -1
  47. package/dist/checkbox.cjs +1 -1
  48. package/dist/checkbox.js +1 -1
  49. package/dist/{chips-DyoQtkqC.js → chips-BKtX1ZF2.js} +3 -3
  50. package/dist/{chips-DyoQtkqC.js.map → chips-BKtX1ZF2.js.map} +1 -1
  51. package/dist/{chips-w7_Vv_P1.cjs → chips-BOq8cZqL.cjs} +2 -2
  52. package/dist/{chips-w7_Vv_P1.cjs.map → chips-BOq8cZqL.cjs.map} +1 -1
  53. package/dist/chips.cjs +1 -1
  54. package/dist/chips.js +1 -1
  55. package/dist/{circular-progress-B7VSuyu1.js → circular-progress-3XVhGWQV.js} +3 -3
  56. package/dist/{circular-progress-B7VSuyu1.js.map → circular-progress-3XVhGWQV.js.map} +1 -1
  57. package/dist/{circular-progress-BT_cAg-m.cjs → circular-progress-By_vh9T3.cjs} +2 -2
  58. package/dist/{circular-progress-BT_cAg-m.cjs.map → circular-progress-By_vh9T3.cjs.map} +1 -1
  59. package/dist/circular-progress.cjs +1 -1
  60. package/dist/circular-progress.js +1 -1
  61. package/dist/code-highlight.cjs +1 -1
  62. package/dist/code-highlight.js +1 -1
  63. package/dist/{code-preview-WdmERMCO.js → code-preview-CiVDWZR5.js} +407 -364
  64. package/dist/{code-preview-WdmERMCO.js.map → code-preview-CiVDWZR5.js.map} +1 -1
  65. package/dist/code-preview-D1m21gCB.cjs +185 -0
  66. package/dist/{code-preview-BsEGjZB8.cjs.map → code-preview-D1m21gCB.cjs.map} +1 -1
  67. package/dist/components.cjs +1 -1
  68. package/dist/components.js +1 -1
  69. package/dist/content-drawer.cjs +1 -1
  70. package/dist/content-drawer.js +1 -1
  71. package/dist/{date-range-ooOpxbeQ.cjs → date-range-DTpAltuE.cjs} +2 -2
  72. package/dist/{date-range-ooOpxbeQ.cjs.map → date-range-DTpAltuE.cjs.map} +1 -1
  73. package/dist/{date-range-DtrUQ__m.js → date-range-I6DQ7lwF.js} +3 -3
  74. package/dist/{date-range-DtrUQ__m.js.map → date-range-I6DQ7lwF.js.map} +1 -1
  75. package/dist/date-range.cjs +1 -1
  76. package/dist/date-range.js +1 -1
  77. package/dist/{delay-Bi7N7rfi.cjs → delay-3P5Bjyfl.cjs} +2 -2
  78. package/dist/{delay-Bi7N7rfi.cjs.map → delay-3P5Bjyfl.cjs.map} +1 -1
  79. package/dist/{delay-CpadwhcQ.js → delay-DPiGrSKB.js} +2 -2
  80. package/dist/{delay-CpadwhcQ.js.map → delay-DPiGrSKB.js.map} +1 -1
  81. package/dist/delay.cjs +1 -1
  82. package/dist/delay.js +1 -1
  83. package/dist/{dialog-content-DHu6t4FZ.js → dialog-content-Bt6wH4ui.js} +3 -3
  84. package/dist/{dialog-content-DHu6t4FZ.js.map → dialog-content-Bt6wH4ui.js.map} +1 -1
  85. package/dist/{dialog-content-C-hz1uOo.cjs → dialog-content-Dv9hKlSq.cjs} +2 -2
  86. package/dist/{dialog-content-C-hz1uOo.cjs.map → dialog-content-Dv9hKlSq.cjs.map} +1 -1
  87. package/dist/dialog.cjs +1 -1
  88. package/dist/dialog.js +1 -1
  89. package/dist/{divider-_-MZUPzR.js → divider-B9xXTgZN.js} +3 -3
  90. package/dist/{divider-_-MZUPzR.js.map → divider-B9xXTgZN.js.map} +1 -1
  91. package/dist/{divider-CMaphWTG.cjs → divider-ByyMbbYx.cjs} +2 -2
  92. package/dist/{divider-CMaphWTG.cjs.map → divider-ByyMbbYx.cjs.map} +1 -1
  93. package/dist/divider.cjs +1 -1
  94. package/dist/divider.js +1 -1
  95. package/dist/{dropdown-content-TrKH6CPO.cjs → dropdown-content-C3GWpPBy.cjs} +2 -2
  96. package/dist/{dropdown-content-TrKH6CPO.cjs.map → dropdown-content-C3GWpPBy.cjs.map} +1 -1
  97. package/dist/{dropdown-content-DMhWEC5P.js → dropdown-content-vEvXWt_m.js} +3 -3
  98. package/dist/{dropdown-content-DMhWEC5P.js.map → dropdown-content-vEvXWt_m.js.map} +1 -1
  99. package/dist/dropdown.cjs +1 -1
  100. package/dist/dropdown.js +1 -1
  101. package/dist/extra.cjs +1 -1
  102. package/dist/extra.js +1 -1
  103. package/dist/{flex-CaC7hDYr.cjs → flex-BCLL4F9G.cjs} +2 -2
  104. package/dist/flex-BCLL4F9G.cjs.map +1 -0
  105. package/dist/{flex-Dr8l_bpn.js → flex-CM2plTnS.js} +2 -2
  106. package/dist/flex-CM2plTnS.js.map +1 -0
  107. package/dist/{form-DXe2MLM6.cjs → form-CAF0euT-.cjs} +2 -2
  108. package/dist/{form-DXe2MLM6.cjs.map → form-CAF0euT-.cjs.map} +1 -1
  109. package/dist/{form-CWRGjc2L.js → form-TYgVfN5V.js} +2 -2
  110. package/dist/{form-CWRGjc2L.js.map → form-TYgVfN5V.js.map} +1 -1
  111. package/dist/form.cjs +1 -1
  112. package/dist/form.js +1 -1
  113. package/dist/{icon-Cpm7fcMG.cjs → icon-BfNj3hF_.cjs} +2 -2
  114. package/dist/{icon-Cpm7fcMG.cjs.map → icon-BfNj3hF_.cjs.map} +1 -1
  115. package/dist/{icon-BhA1UDKp.js → icon-DyP6UK-M.js} +2 -2
  116. package/dist/{icon-BhA1UDKp.js.map → icon-DyP6UK-M.js.map} +1 -1
  117. package/dist/{icon-button-DuaFGduO.cjs → icon-button-C1_Q6BIo.cjs} +2 -2
  118. package/dist/{icon-button-DuaFGduO.cjs.map → icon-button-C1_Q6BIo.cjs.map} +1 -1
  119. package/dist/{icon-button-DRJRp7NW.js → icon-button-D6wuhOIL.js} +3 -3
  120. package/dist/{icon-button-DRJRp7NW.js.map → icon-button-D6wuhOIL.js.map} +1 -1
  121. package/dist/icons.cjs +1 -1
  122. package/dist/icons.js +1 -1
  123. package/dist/index.cjs +1 -1
  124. package/dist/index.js +41 -41
  125. package/dist/{input-Cm1CnbuH.cjs → input-CYeF5NKp.cjs} +2 -2
  126. package/dist/{input-Cm1CnbuH.cjs.map → input-CYeF5NKp.cjs.map} +1 -1
  127. package/dist/{input-D8ZNzDHV.js → input-qU80f6at.js} +2 -2
  128. package/dist/{input-D8ZNzDHV.js.map → input-qU80f6at.js.map} +1 -1
  129. package/dist/input.cjs +1 -1
  130. package/dist/input.js +1 -1
  131. package/dist/layout.cjs +1 -1
  132. package/dist/layout.js +1 -1
  133. package/dist/{list-DGcdO8kB.cjs → list-DRfm5GoN.cjs} +2 -2
  134. package/dist/{list-DGcdO8kB.cjs.map → list-DRfm5GoN.cjs.map} +1 -1
  135. package/dist/{list-oTKIr7PQ.js → list-DTjKdEH7.js} +2 -2
  136. package/dist/{list-oTKIr7PQ.js.map → list-DTjKdEH7.js.map} +1 -1
  137. package/dist/list.cjs +1 -1
  138. package/dist/list.js +1 -1
  139. package/dist/{litElement.mixin-DgPgTgtr.js → litElement.mixin-_JOzinzX.js} +2 -2
  140. package/dist/{litElement.mixin-DgPgTgtr.js.map → litElement.mixin-_JOzinzX.js.map} +1 -1
  141. package/dist/{litElement.mixin-9Gop8K6U.cjs → litElement.mixin-wITTIH5B.cjs} +2 -2
  142. package/dist/{litElement.mixin-9Gop8K6U.cjs.map → litElement.mixin-wITTIH5B.cjs.map} +1 -1
  143. package/dist/{menu-DENXkCTG.js → menu-BWlmvpzL.js} +3 -3
  144. package/dist/{menu-DENXkCTG.js.map → menu-BWlmvpzL.js.map} +1 -1
  145. package/dist/{menu-DrqS9xPK.cjs → menu-DBwUuoHK.cjs} +2 -2
  146. package/dist/{menu-DrqS9xPK.cjs.map → menu-DBwUuoHK.cjs.map} +1 -1
  147. package/dist/menu.cjs +1 -1
  148. package/dist/menu.js +1 -1
  149. package/dist/nav-drawer.cjs +1 -1
  150. package/dist/nav-drawer.js +1 -1
  151. package/dist/{notification-service-DL1fq8hm.cjs → notification-service-BdQ0LnCR.cjs} +2 -2
  152. package/dist/{notification-service-DL1fq8hm.cjs.map → notification-service-BdQ0LnCR.cjs.map} +1 -1
  153. package/dist/{notification-service-B9B2SOMf.js → notification-service-CTvp72RJ.js} +3 -3
  154. package/dist/{notification-service-B9B2SOMf.js.map → notification-service-CTvp72RJ.js.map} +1 -1
  155. package/dist/notification.cjs +1 -1
  156. package/dist/notification.js +1 -1
  157. package/dist/{option-x_gU_P71.cjs → option-CvHLVjDZ.cjs} +2 -2
  158. package/dist/{option-x_gU_P71.cjs.map → option-CvHLVjDZ.cjs.map} +1 -1
  159. package/dist/{option-D7hTrzgh.js → option-CwMxqwog.js} +2 -2
  160. package/dist/{option-D7hTrzgh.js.map → option-CwMxqwog.js.map} +1 -1
  161. package/dist/option.cjs +1 -1
  162. package/dist/option.js +1 -1
  163. package/dist/{payment-card-form-AFtDtRfH.cjs → payment-card-form-Do9X2R3c.cjs} +2 -2
  164. package/dist/{payment-card-form-AFtDtRfH.cjs.map → payment-card-form-Do9X2R3c.cjs.map} +1 -1
  165. package/dist/{payment-card-form-D3hyDbdZ.js → payment-card-form-T9CxpmFq.js} +3 -3
  166. package/dist/{payment-card-form-D3hyDbdZ.js.map → payment-card-form-T9CxpmFq.js.map} +1 -1
  167. package/dist/{radio-button-DaLz4Z3S.cjs → radio-button-BwnqFF61.cjs} +2 -2
  168. package/dist/{radio-button-DaLz4Z3S.cjs.map → radio-button-BwnqFF61.cjs.map} +1 -1
  169. package/dist/{radio-button-ncZSGkqc.js → radio-button-DlYGoRGV.js} +2 -2
  170. package/dist/{radio-button-ncZSGkqc.js.map → radio-button-DlYGoRGV.js.map} +1 -1
  171. package/dist/radio-group.cjs +1 -1
  172. package/dist/radio-group.js +1 -1
  173. package/dist/{schmancy-steps-container-BMHLfmfG.js → schmancy-steps-container-CircxoUg.js} +2 -2
  174. package/dist/{schmancy-steps-container-BMHLfmfG.js.map → schmancy-steps-container-CircxoUg.js.map} +1 -1
  175. package/dist/{schmancy-steps-container-Oj0-kdzs.cjs → schmancy-steps-container-n8M5N6Ny.cjs} +2 -2
  176. package/dist/{schmancy-steps-container-Oj0-kdzs.cjs.map → schmancy-steps-container-n8M5N6Ny.cjs.map} +1 -1
  177. package/dist/{select-kgqACG9u.cjs → select-BUpVOffr.cjs} +2 -2
  178. package/dist/{select-kgqACG9u.cjs.map → select-BUpVOffr.cjs.map} +1 -1
  179. package/dist/{select-CNfzjQc7.js → select-CZxy4aLz.js} +3 -3
  180. package/dist/{select-CNfzjQc7.js.map → select-CZxy4aLz.js.map} +1 -1
  181. package/dist/select.cjs +1 -1
  182. package/dist/select.js +1 -1
  183. package/dist/{sheet-8KVbmBT0.cjs → sheet-C_yWh1Lq.cjs} +2 -2
  184. package/dist/{sheet-8KVbmBT0.cjs.map → sheet-C_yWh1Lq.cjs.map} +1 -1
  185. package/dist/{sheet-CWGztMJM.js → sheet-Du6Heozy.js} +3 -3
  186. package/dist/{sheet-CWGztMJM.js.map → sheet-Du6Heozy.js.map} +1 -1
  187. package/dist/sheet.cjs +1 -1
  188. package/dist/sheet.js +1 -1
  189. package/dist/{slider-BpGbCj5P.js → slider-BUYRt3Jr.js} +3 -3
  190. package/dist/{slider-BpGbCj5P.js.map → slider-BUYRt3Jr.js.map} +1 -1
  191. package/dist/{slider-BTJK0M8p.cjs → slider-mAQ1m-p-.cjs} +2 -2
  192. package/dist/{slider-BTJK0M8p.cjs.map → slider-mAQ1m-p-.cjs.map} +1 -1
  193. package/dist/slider.cjs +1 -1
  194. package/dist/slider.js +1 -1
  195. package/dist/{spinner-CZEpYGDr.js → spinner-C0BhuVQ7.js} +3 -3
  196. package/dist/{spinner-CZEpYGDr.js.map → spinner-C0BhuVQ7.js.map} +1 -1
  197. package/dist/{spinner-o6SsnYml.cjs → spinner-Cl9aDOKe.cjs} +2 -2
  198. package/dist/{spinner-o6SsnYml.cjs.map → spinner-Cl9aDOKe.cjs.map} +1 -1
  199. package/dist/steps.cjs +1 -1
  200. package/dist/steps.js +1 -1
  201. package/dist/{surface-CULbYLWK.js → surface-B92ldOHj.js} +2 -2
  202. package/dist/{surface-CULbYLWK.js.map → surface-B92ldOHj.js.map} +1 -1
  203. package/dist/{surface-v1R6gg3O.cjs → surface-CPlFZxyL.cjs} +2 -2
  204. package/dist/{surface-v1R6gg3O.cjs.map → surface-CPlFZxyL.cjs.map} +1 -1
  205. package/dist/surface.cjs +1 -1
  206. package/dist/surface.js +1 -1
  207. package/dist/{table-C-bANOR2.cjs → table-C6ei99v9.cjs} +2 -2
  208. package/dist/{table-C-bANOR2.cjs.map → table-C6ei99v9.cjs.map} +1 -1
  209. package/dist/{table-DiyvbCo7.js → table-CHUZ7fA2.js} +2 -2
  210. package/dist/{table-DiyvbCo7.js.map → table-CHUZ7fA2.js.map} +1 -1
  211. package/dist/table.cjs +1 -1
  212. package/dist/table.js +1 -1
  213. package/dist/{tabs-compatibility-H_ztF6ET.cjs → tabs-compatibility-BvPyuFBg.cjs} +2 -2
  214. package/dist/{tabs-compatibility-H_ztF6ET.cjs.map → tabs-compatibility-BvPyuFBg.cjs.map} +1 -1
  215. package/dist/{tabs-compatibility-gBgyoF-Q.js → tabs-compatibility-gxIh5AEJ.js} +2 -2
  216. package/dist/{tabs-compatibility-gBgyoF-Q.js.map → tabs-compatibility-gxIh5AEJ.js.map} +1 -1
  217. package/dist/tabs.cjs +1 -1
  218. package/dist/tabs.js +1 -1
  219. package/dist/tailwind.mixin-410noD6d.js +43 -0
  220. package/dist/{tailwind.mixin-CBugs0NU.js.map → tailwind.mixin-410noD6d.js.map} +1 -1
  221. package/dist/tailwind.mixin-CVwT3arh.cjs +2 -0
  222. package/dist/{tailwind.mixin-by-9p2wJ.cjs.map → tailwind.mixin-CVwT3arh.cjs.map} +1 -1
  223. package/dist/teleport.cjs +1 -1
  224. package/dist/teleport.js +1 -1
  225. package/dist/{textarea-uDNXN7E5.cjs → textarea-DILQEma0.cjs} +2 -2
  226. package/dist/{textarea-uDNXN7E5.cjs.map → textarea-DILQEma0.cjs.map} +1 -1
  227. package/dist/{textarea-B1qCCWUj.js → textarea-g0WFvdSE.js} +2 -2
  228. package/dist/{textarea-B1qCCWUj.js.map → textarea-g0WFvdSE.js.map} +1 -1
  229. package/dist/textarea.cjs +1 -1
  230. package/dist/textarea.js +1 -1
  231. package/dist/{theme-button-Bb5gE3fO.js → theme-button-BMnRNiv-.js} +2 -2
  232. package/dist/{theme-button-Bb5gE3fO.js.map → theme-button-BMnRNiv-.js.map} +1 -1
  233. package/dist/{theme-button-GGwBDTFe.cjs → theme-button-BpOsDZZm.cjs} +2 -2
  234. package/dist/{theme-button-GGwBDTFe.cjs.map → theme-button-BpOsDZZm.cjs.map} +1 -1
  235. package/dist/theme-button.cjs +1 -1
  236. package/dist/theme-button.js +1 -1
  237. package/dist/theme.cjs +1 -1
  238. package/dist/{theme.component-C3Az3LCn.js → theme.component-BamqpWkH.js} +2 -2
  239. package/dist/{theme.component-C3Az3LCn.js.map → theme.component-BamqpWkH.js.map} +1 -1
  240. package/dist/{theme.component-Du-mYia7.cjs → theme.component-DaeNFfKX.cjs} +2 -2
  241. package/dist/{theme.component-Du-mYia7.cjs.map → theme.component-DaeNFfKX.cjs.map} +1 -1
  242. package/dist/theme.js +1 -1
  243. package/dist/{timezone-8fpYlPih.js → timezone-BRUaHb9f.js} +3 -3
  244. package/dist/{timezone-8fpYlPih.js.map → timezone-BRUaHb9f.js.map} +1 -1
  245. package/dist/{timezone-BNXuXIk_.cjs → timezone-Bo6f4JAz.cjs} +2 -2
  246. package/dist/{timezone-BNXuXIk_.cjs.map → timezone-Bo6f4JAz.cjs.map} +1 -1
  247. package/dist/{tooltip-boMvd7Px.js → tooltip-BAIFXAvm.js} +2 -2
  248. package/dist/{tooltip-boMvd7Px.js.map → tooltip-BAIFXAvm.js.map} +1 -1
  249. package/dist/{tooltip-B9PrX-ud.cjs → tooltip-Cdk5FVq0.cjs} +2 -2
  250. package/dist/{tooltip-B9PrX-ud.cjs.map → tooltip-Cdk5FVq0.cjs.map} +1 -1
  251. package/dist/tooltip.cjs +1 -1
  252. package/dist/tooltip.js +1 -1
  253. package/dist/{tree-DuMRYuUP.js → tree-CW1cqb3H.js} +2 -2
  254. package/dist/{tree-DuMRYuUP.js.map → tree-CW1cqb3H.js.map} +1 -1
  255. package/dist/{tree-DLxiFxTm.cjs → tree-CXf7ucSK.cjs} +2 -2
  256. package/dist/{tree-DLxiFxTm.cjs.map → tree-CXf7ucSK.cjs.map} +1 -1
  257. package/dist/tree.cjs +1 -1
  258. package/dist/tree.js +1 -1
  259. package/dist/{typewriter-DFlhNtuC.js → typewriter-DAemjpmH.js} +4 -4
  260. package/dist/{typewriter-DFlhNtuC.js.map → typewriter-DAemjpmH.js.map} +1 -1
  261. package/dist/{typewriter-D2BteuUE.cjs → typewriter-DWChIcCl.cjs} +2 -2
  262. package/dist/{typewriter-D2BteuUE.cjs.map → typewriter-DWChIcCl.cjs.map} +1 -1
  263. package/dist/typewriter.cjs +1 -1
  264. package/dist/typewriter.js +1 -1
  265. package/dist/{typography-B08MvG9M.cjs → typography-Cdamb7lz.cjs} +2 -2
  266. package/dist/{typography-B08MvG9M.cjs.map → typography-Cdamb7lz.cjs.map} +1 -1
  267. package/dist/{typography-BMNXy5E7.js → typography-j1HmQzWs.js} +2 -2
  268. package/dist/{typography-BMNXy5E7.js.map → typography-j1HmQzWs.js.map} +1 -1
  269. package/dist/typography.cjs +1 -1
  270. package/dist/typography.js +1 -1
  271. package/package.json +1 -1
  272. package/types/src/code-highlight/code-highlight.d.ts +3 -2
  273. package/types/src/code-highlight/code-preview.d.ts +5 -0
  274. package/types/src/layout/flex/flex.d.ts +10 -0
  275. package/types/src/layout/grid/grid.d.ts +10 -0
  276. package/types/src/layout/layout.d.ts +10 -0
  277. package/types/src/layout/v2/flex.d.ts +9 -0
  278. package/dist/code-preview-BsEGjZB8.cjs +0 -160
  279. package/dist/flex-CaC7hDYr.cjs.map +0 -1
  280. package/dist/flex-Dr8l_bpn.js.map +0 -1
  281. package/dist/tailwind.mixin-CBugs0NU.js +0 -43
  282. package/dist/tailwind.mixin-by-9p2wJ.cjs +0 -2
package/dist/ai/layout.md CHANGED
@@ -1,166 +1,187 @@
1
1
  # Schmancy Layout - AI Reference
2
2
 
3
- ```js
4
- // Grid Layout
5
- <schmancy-grid
6
- columns="3" // Number of columns or template
7
- rows="auto" // Number of rows or template
8
- gap="16px" // Gap between items
9
- column-gap="16px" // Column-specific gap
10
- row-gap="16px" // Row-specific gap
11
- justify-items="start|center|end|stretch"
12
- align-items="start|center|end|stretch"
13
- justify-content="start|center|end|space-between|space-around|space-evenly"
14
- align-content="start|center|end|space-between|space-around|space-evenly">
15
-
3
+ ## ⚠️ DEPRECATION NOTICE
4
+
5
+ The following layout components are **deprecated** and will be removed in a future version:
6
+ - `<schmancy-grid>` - Use Tailwind CSS grid classes instead
7
+ - `<schmancy-flex>` - Use Tailwind CSS flex classes instead
8
+ - `<sch-flex>` - Use Tailwind CSS flex classes instead
9
+ - Layout base class - Use Tailwind utilities directly
10
+
11
+ ### Migration Guide
12
+
13
+ ```html
14
+ <!-- OLD (deprecated) -->
15
+ <schmancy-grid columns="3" gap="16px">
16
16
  <div>Item 1</div>
17
17
  <div>Item 2</div>
18
18
  <div>Item 3</div>
19
19
  </schmancy-grid>
20
20
 
21
- // Advanced grid with template
22
- <schmancy-grid
23
- columns="repeat(12, 1fr)"
24
- rows="auto auto 1fr"
25
- template-areas="
26
- 'header header header header'
27
- 'sidebar content content content'
28
- 'footer footer footer footer'
29
- ">
30
- <div style="grid-area: header">Header</div>
31
- <div style="grid-area: sidebar">Sidebar</div>
32
- <div style="grid-area: content">Content</div>
33
- <div style="grid-area: footer">Footer</div>
34
- </schmancy-grid>
35
-
36
- // Flex Layout
37
- <schmancy-flex
38
- direction="row|column|row-reverse|column-reverse"
39
- wrap="nowrap|wrap|wrap-reverse"
40
- justify-content="start|center|end|space-between|space-around|space-evenly"
41
- align-items="start|center|end|stretch|baseline"
42
- align-content="start|center|end|space-between|space-around|space-evenly"
43
- gap="16px" // Gap between items
44
- column-gap="16px" // Column-specific gap
45
- row-gap="16px"> // Row-specific gap
46
-
21
+ <!-- NEW (recommended) -->
22
+ <div class="grid grid-cols-3 gap-4">
47
23
  <div>Item 1</div>
48
24
  <div>Item 2</div>
49
- <div style="flex: 1">Flexible Item</div>
25
+ <div>Item 3</div>
26
+ </div>
27
+
28
+ <!-- OLD (deprecated) -->
29
+ <schmancy-flex direction="row" gap="16px" justify-content="space-between">
30
+ <div>Left</div>
31
+ <div>Right</div>
50
32
  </schmancy-flex>
51
33
 
52
- // Responsive layouts (using attributes)
53
- <schmancy-grid
54
- columns="1"
55
- columns-md="2"
56
- columns-lg="3"
57
- columns-xl="4"
58
- gap="8px"
59
- gap-md="16px"
60
- gap-lg="24px">
61
-
62
- <!-- Content -->
63
- </schmancy-grid>
34
+ <!-- NEW (recommended) -->
35
+ <div class="flex flex-row gap-4 justify-between">
36
+ <div>Left</div>
37
+ <div>Right</div>
38
+ </div>
39
+ ```
64
40
 
65
- <schmancy-flex
66
- direction="column"
67
- direction-md="row"
68
- align-items="center"
69
- justify-content-md="space-between">
70
-
71
- <!-- Content -->
72
- </schmancy-flex>
41
+ ## Modern Layout Approach with Tailwind CSS
73
42
 
74
- // Scroll Container
75
- <schmancy-scroll
76
- direction="vertical|horizontal|both"
77
- scrollbar="auto|always|hover|none">
78
-
79
- <!-- Scrollable content -->
80
- </schmancy-scroll>
43
+ Instead of using deprecated layout components, use Tailwind CSS utilities directly:
81
44
 
82
- // Layout v2 Components (enhanced versions)
83
- <schmancy-flex-v2
84
- display="flex|inline-flex"
85
- direction="row|column"
86
- wrap="nowrap|wrap|wrap-reverse"
87
- justify="flex-start|flex-end|center|space-between|space-around|space-evenly"
88
- items="flex-start|flex-end|center|stretch|baseline"
89
- content="flex-start|flex-end|center|space-between|space-around|space-evenly"
90
- gap="none|xs|sm|md|lg|xl">
91
-
92
- <!-- Content -->
93
- </schmancy-flex-v2>
94
-
95
- <schmancy-grid-v2
96
- display="grid|inline-grid"
97
- template-columns="1fr 1fr|repeat(3, 1fr)"
98
- template-rows="auto|1fr auto"
99
- template-areas="'header header' 'sidebar content' 'footer footer'"
100
- gap="none|xs|sm|md|lg|xl"
101
- justify-content="start|end|center|stretch|space-around|space-between|space-evenly"
102
- align-content="start|end|center|stretch|space-around|space-between|space-evenly"
103
- justify-items="start|end|center|stretch"
104
- align-items="start|end|center|stretch">
105
-
106
- <!-- Content -->
107
- </schmancy-grid-v2>
108
-
109
- // Examples
110
- // Responsive grid layout
111
- <schmancy-grid
112
- columns="1"
113
- columns-md="2"
114
- columns-lg="4"
115
- gap="16px">
45
+ ### Grid Layouts
46
+ ```html
47
+ <!-- Basic grid -->
48
+ <div class="grid grid-cols-3 gap-4">
49
+ <div>Item 1</div>
50
+ <div>Item 2</div>
51
+ <div>Item 3</div>
52
+ </div>
53
+
54
+ <!-- Responsive grid -->
55
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4">
116
56
  <div>Card 1</div>
117
57
  <div>Card 2</div>
118
58
  <div>Card 3</div>
119
59
  <div>Card 4</div>
120
- </schmancy-grid>
60
+ </div>
61
+
62
+ <!-- Grid with template areas -->
63
+ <div class="grid grid-rows-[auto_1fr_auto] grid-cols-[250px_1fr] h-screen">
64
+ <header class="col-span-2">Header</header>
65
+ <aside>Sidebar</aside>
66
+ <main>Content</main>
67
+ <footer class="col-span-2">Footer</footer>
68
+ </div>
69
+ ```
121
70
 
122
- // Flex layout for a form
123
- <schmancy-flex
124
- direction="column"
125
- gap="16px">
126
- <h2>Contact Form</h2>
71
+ ### Flex Layouts
72
+ ```html
73
+ <!-- Basic flex -->
74
+ <div class="flex gap-4">
75
+ <div>Item 1</div>
76
+ <div>Item 2</div>
77
+ <div class="flex-1">Flexible Item</div>
78
+ </div>
79
+
80
+ <!-- Column direction with alignment -->
81
+ <div class="flex flex-col items-center gap-4">
82
+ <h2>Title</h2>
83
+ <p>Content</p>
84
+ <button>Action</button>
85
+ </div>
86
+
87
+ <!-- Responsive flex -->
88
+ <div class="flex flex-col md:flex-row items-center md:justify-between gap-4">
89
+ <div>Logo</div>
90
+ <nav class="flex gap-2">
91
+ <a href="#">Link 1</a>
92
+ <a href="#">Link 2</a>
93
+ </nav>
94
+ </div>
95
+ ```
96
+
97
+ ### Common Layout Patterns
98
+
99
+ ```html
100
+ <!-- Form layout -->
101
+ <form class="flex flex-col gap-4 max-w-md mx-auto">
102
+ <h2 class="text-2xl font-bold">Contact Form</h2>
127
103
  <schmancy-input label="Name"></schmancy-input>
128
104
  <schmancy-input label="Email"></schmancy-input>
129
105
  <schmancy-textarea label="Message"></schmancy-textarea>
130
106
 
131
- <schmancy-flex
132
- direction="row"
133
- justify-content="end"
134
- gap="8px">
135
- <schmancy-button kind="secondary">Cancel</schmancy-button>
136
- <schmancy-button kind="primary">Submit</schmancy-button>
137
- </schmancy-flex>
138
- </schmancy-flex>
139
-
140
- // App layout with header, sidebar and content
141
- <schmancy-grid
142
- style="height: 100vh"
143
- template-areas="
144
- 'header header'
145
- 'sidebar content'
146
- "
147
- template-rows="64px 1fr"
148
- template-columns="250px 1fr">
149
-
150
- <div style="grid-area: header">
151
- <schmancy-appbar>App Title</schmancy-appbar>
107
+ <div class="flex gap-2 justify-end">
108
+ <schmancy-button variant="outlined">Cancel</schmancy-button>
109
+ <schmancy-button variant="filled">Submit</schmancy-button>
152
110
  </div>
153
-
154
- <div style="grid-area: sidebar">
155
- <schmancy-list>
156
- <schmancy-list-item>Dashboard</schmancy-list-item>
157
- <schmancy-list-item>Settings</schmancy-list-item>
158
- <schmancy-list-item>Profile</schmancy-list-item>
159
- </schmancy-list>
111
+ </form>
112
+
113
+ <!-- App layout -->
114
+ <div class="grid grid-rows-[auto_1fr] h-screen">
115
+ <header class="border-b">
116
+ <!-- Navigation -->
117
+ </header>
118
+ <div class="grid grid-cols-[250px_1fr]">
119
+ <aside class="border-r">
120
+ <!-- Sidebar -->
121
+ </aside>
122
+ <main class="overflow-auto p-4">
123
+ <!-- Content -->
124
+ </main>
160
125
  </div>
161
-
162
- <schmancy-scroll style="grid-area: content">
163
- <!-- Main content -->
164
- </schmancy-scroll>
165
- </schmancy-grid>
126
+ </div>
127
+
128
+ <!-- Card grid -->
129
+ <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 p-6">
130
+ <schmancy-card>Card 1</schmancy-card>
131
+ <schmancy-card>Card 2</schmancy-card>
132
+ <schmancy-card>Card 3</schmancy-card>
133
+ </div>
134
+ ```
135
+
136
+ ### Useful Tailwind Classes
137
+
138
+ #### Grid
139
+ - `grid` - Display grid
140
+ - `grid-cols-{n}` - Number of columns
141
+ - `grid-rows-{n}` - Number of rows
142
+ - `gap-{size}` - Gap between items
143
+ - `col-span-{n}` - Column span
144
+ - `row-span-{n}` - Row span
145
+ - `place-items-{align}` - Align items
146
+ - `place-content-{align}` - Align content
147
+
148
+ #### Flex
149
+ - `flex` - Display flex
150
+ - `flex-row` / `flex-col` - Direction
151
+ - `flex-wrap` / `flex-nowrap` - Wrapping
152
+ - `items-{align}` - Align items
153
+ - `justify-{align}` - Justify content
154
+ - `gap-{size}` - Gap between items
155
+ - `flex-1` / `flex-none` - Flex grow/shrink
156
+
157
+ #### Spacing
158
+ - `p-{size}` - Padding
159
+ - `m-{size}` - Margin
160
+ - `space-x-{size}` - Horizontal spacing
161
+ - `space-y-{size}` - Vertical spacing
162
+
163
+ #### Sizing
164
+ - `w-{size}` - Width
165
+ - `h-{size}` - Height
166
+ - `min-w-{size}` - Min width
167
+ - `max-w-{size}` - Max width
168
+ - `min-h-{size}` - Min height
169
+ - `max-h-{size}` - Max height
170
+
171
+ ## Non-Deprecated Components
172
+
173
+ ### Scroll Container (if available)
174
+ ```html
175
+ <schmancy-scroll
176
+ direction="vertical|horizontal|both"
177
+ scrollbar="auto|always|hover|none">
178
+ <!-- Scrollable content -->
179
+ </schmancy-scroll>
180
+ ```
181
+
182
+ For most cases, use Tailwind's overflow utilities instead:
183
+ ```html
184
+ <div class="overflow-auto h-64">
185
+ <!-- Scrollable content -->
186
+ </div>
166
187
  ```
@@ -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-DgPgTgtr.js";
5
- import "./tailwind.mixin-CBugs0NU.js";
4
+ import { $ as x } from "./litElement.mixin-_JOzinzX.js";
5
+ import "./tailwind.mixin-410noD6d.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-GWb1KFIg.js.map
75
+ //# sourceMappingURL=animated-text-Bd3rsLJs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-GWb1KFIg.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-Bd3rsLJs.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-9Gop8K6U.cjs");require("./tailwind.mixin-by-9p2wJ.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-wITTIH5B.cjs");require("./tailwind.mixin-CVwT3arh.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-CwhCnj-Z.cjs.map
37
+ //# sourceMappingURL=animated-text-DgW2DQuG.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-CwhCnj-Z.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-DgW2DQuG.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-CwhCnj-Z.cjs");
1
+ "use strict";require("./animated-text-DgW2DQuG.cjs");
2
2
  //# sourceMappingURL=animated-text.cjs.map
@@ -1,2 +1,2 @@
1
- import "./animated-text-GWb1KFIg.js";
1
+ import "./animated-text-Bd3rsLJs.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-6ZFpx2Be.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-CjdNUfp9.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
1
  import { Subject as U, ReplaySubject as A, distinctUntilChanged as S, shareReplay as P, skip as R, map as i, filter as l, catchError as y, EMPTY as d, zip as J, fromEvent as $, of as m, bufferTime as L, tap as g, timeout as M, merge as q, switchMap as b, take as F, takeUntil as j, from as H } 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-DgPgTgtr.js";
5
- import "./tailwind.mixin-CBugs0NU.js";
4
+ import { $ as x } from "./litElement.mixin-_JOzinzX.js";
5
+ import "./tailwind.mixin-410noD6d.js";
6
6
  import { css as k, html as I } from "lit";
7
7
  import { property as v, customElement as B } from "lit/decorators.js";
8
8
  import { l as T } from "./index-CuY8m6ta.js";
@@ -277,4 +277,4 @@ export {
277
277
  u as b,
278
278
  N as r
279
279
  };
280
- //# sourceMappingURL=area.component-BArN-q7n.js.map
280
+ //# sourceMappingURL=area.component-CU8UnNll.js.map