@mhmo91/schmancy 0.4.54 → 0.4.56

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 (319) hide show
  1. package/ai/map.md +232 -0
  2. package/dist/ai/map.md +232 -0
  3. package/dist/{animated-text-DET7QrLu.js → animated-text-CLjHeM_c.js} +3 -3
  4. package/dist/{animated-text-DET7QrLu.js.map → animated-text-CLjHeM_c.js.map} +1 -1
  5. package/dist/{animated-text-DB1In3Jz.cjs → animated-text-Q1hfnAer.cjs} +2 -2
  6. package/dist/{animated-text-DB1In3Jz.cjs.map → animated-text-Q1hfnAer.cjs.map} +1 -1
  7. package/dist/animated-text.cjs +1 -1
  8. package/dist/animated-text.js +1 -1
  9. package/dist/area.cjs +1 -1
  10. package/dist/{area.component-RtyzU0st.js → area.component-B4kp0LKH.js} +10 -10
  11. package/dist/{area.component-RtyzU0st.js.map → area.component-B4kp0LKH.js.map} +1 -1
  12. package/dist/{area.component-D3jAVUFN.cjs → area.component-CNTVHafq.cjs} +2 -2
  13. package/dist/{area.component-D3jAVUFN.cjs.map → area.component-CNTVHafq.cjs.map} +1 -1
  14. package/dist/area.js +1 -1
  15. package/dist/{autocomplete-DiGyR9Vk.cjs → autocomplete-CP1NTObi.cjs} +2 -2
  16. package/dist/{autocomplete-DiGyR9Vk.cjs.map → autocomplete-CP1NTObi.cjs.map} +1 -1
  17. package/dist/{autocomplete-haCWPHWw.js → autocomplete-wG22PnTc.js} +3 -3
  18. package/dist/{autocomplete-haCWPHWw.js.map → autocomplete-wG22PnTc.js.map} +1 -1
  19. package/dist/autocomplete.cjs +1 -1
  20. package/dist/autocomplete.js +1 -1
  21. package/dist/{avatar-Lqxf7DeM.js → avatar-B2GUqK4L.js} +53 -51
  22. package/dist/{avatar-Lqxf7DeM.js.map → avatar-B2GUqK4L.js.map} +1 -1
  23. package/dist/{avatar-C5oN_3BW.cjs → avatar-BNBYKgXb.cjs} +2 -2
  24. package/dist/{avatar-C5oN_3BW.cjs.map → avatar-BNBYKgXb.cjs.map} +1 -1
  25. package/dist/badge.cjs +1 -1
  26. package/dist/badge.js +1 -1
  27. package/dist/{boat-BKn3-Scu.cjs → boat-BBtYRMGr.cjs} +2 -2
  28. package/dist/{boat-BKn3-Scu.cjs.map → boat-BBtYRMGr.cjs.map} +1 -1
  29. package/dist/{boat-BoXbNHrW.js → boat-CNjpHAl7.js} +2 -2
  30. package/dist/{boat-BoXbNHrW.js.map → boat-CNjpHAl7.js.map} +1 -1
  31. package/dist/boat.cjs +1 -1
  32. package/dist/boat.js +1 -1
  33. package/dist/busy.cjs +1 -1
  34. package/dist/busy.js +1 -1
  35. package/dist/button.cjs +1 -1
  36. package/dist/button.js +1 -1
  37. package/dist/card.cjs +1 -1
  38. package/dist/card.js +1 -1
  39. package/dist/{checkbox-DBYze801.js → checkbox-CdvtpBak.js} +2 -2
  40. package/dist/{checkbox-DBYze801.js.map → checkbox-CdvtpBak.js.map} +1 -1
  41. package/dist/{checkbox-CMzlYCIy.cjs → checkbox-DMDq4nrQ.cjs} +2 -2
  42. package/dist/{checkbox-CMzlYCIy.cjs.map → checkbox-DMDq4nrQ.cjs.map} +1 -1
  43. package/dist/checkbox.cjs +1 -1
  44. package/dist/checkbox.js +1 -1
  45. package/dist/{chips-fZJMvpt4.js → chips-CXfJzIKX.js} +3 -3
  46. package/dist/{chips-fZJMvpt4.js.map → chips-CXfJzIKX.js.map} +1 -1
  47. package/dist/{chips-DYvqKG33.cjs → chips-D_VM8pye.cjs} +2 -2
  48. package/dist/{chips-DYvqKG33.cjs.map → chips-D_VM8pye.cjs.map} +1 -1
  49. package/dist/chips.cjs +1 -1
  50. package/dist/chips.js +1 -1
  51. package/dist/{circular-progress-Cvgbz8b9.cjs → circular-progress-CToMz17U.cjs} +2 -2
  52. package/dist/{circular-progress-Cvgbz8b9.cjs.map → circular-progress-CToMz17U.cjs.map} +1 -1
  53. package/dist/{circular-progress-B_xy1hOi.js → circular-progress-fhXgEisi.js} +3 -3
  54. package/dist/{circular-progress-B_xy1hOi.js.map → circular-progress-fhXgEisi.js.map} +1 -1
  55. package/dist/circular-progress.cjs +1 -1
  56. package/dist/circular-progress.js +1 -1
  57. package/dist/code-highlight.cjs +1 -1
  58. package/dist/code-highlight.js +1 -1
  59. package/dist/{code-preview-KVgf-4eh.js → code-preview-B33GzCuh.js} +2 -2
  60. package/dist/{code-preview-KVgf-4eh.js.map → code-preview-B33GzCuh.js.map} +1 -1
  61. package/dist/{code-preview-oRESLXMA.cjs → code-preview-CjrMxvGf.cjs} +2 -2
  62. package/dist/{code-preview-oRESLXMA.cjs.map → code-preview-CjrMxvGf.cjs.map} +1 -1
  63. package/dist/components.cjs +1 -1
  64. package/dist/components.js +1 -1
  65. package/dist/content-drawer.cjs +1 -1
  66. package/dist/content-drawer.js +1 -1
  67. package/dist/{date-range-CgELB9-4.cjs → date-range-BsY35xa9.cjs} +2 -2
  68. package/dist/{date-range-CgELB9-4.cjs.map → date-range-BsY35xa9.cjs.map} +1 -1
  69. package/dist/{date-range-DJSnkdPw.js → date-range-cqxQG6E0.js} +4 -4
  70. package/dist/{date-range-DJSnkdPw.js.map → date-range-cqxQG6E0.js.map} +1 -1
  71. package/dist/{date-range-inline-CBV35jOW.js → date-range-inline-B4lf5rPQ.js} +3 -3
  72. package/dist/{date-range-inline-CBV35jOW.js.map → date-range-inline-B4lf5rPQ.js.map} +1 -1
  73. package/dist/{date-range-inline-rDLHIRGy.cjs → date-range-inline-CNjM63uj.cjs} +2 -2
  74. package/dist/{date-range-inline-rDLHIRGy.cjs.map → date-range-inline-CNjM63uj.cjs.map} +1 -1
  75. package/dist/date-range-inline.cjs +1 -1
  76. package/dist/date-range-inline.js +1 -1
  77. package/dist/date-range.cjs +1 -1
  78. package/dist/date-range.js +1 -1
  79. package/dist/{delay-CXo4mT0h.cjs → delay-CcdMOTSl.cjs} +2 -2
  80. package/dist/{delay-CXo4mT0h.cjs.map → delay-CcdMOTSl.cjs.map} +1 -1
  81. package/dist/{delay-D_nHncS4.js → delay-IwDr1j8v.js} +12 -12
  82. package/dist/{delay-D_nHncS4.js.map → delay-IwDr1j8v.js.map} +1 -1
  83. package/dist/delay.cjs +1 -1
  84. package/dist/delay.js +1 -1
  85. package/dist/details-BfPfuW55.cjs +62 -0
  86. package/dist/details-BfPfuW55.cjs.map +1 -0
  87. package/dist/details-DhWV9D0A.js +87 -0
  88. package/dist/details-DhWV9D0A.js.map +1 -0
  89. package/dist/details.cjs +2 -0
  90. package/dist/details.cjs.map +1 -0
  91. package/dist/details.js +5 -0
  92. package/dist/details.js.map +1 -0
  93. package/dist/{dialog-content-DucFIAvv.cjs → dialog-content-BdVi2eTC.cjs} +2 -2
  94. package/dist/{dialog-content-DucFIAvv.cjs.map → dialog-content-BdVi2eTC.cjs.map} +1 -1
  95. package/dist/{dialog-content-Ds7XlHu6.js → dialog-content-DICph7AS.js} +4 -4
  96. package/dist/{dialog-content-Ds7XlHu6.js.map → dialog-content-DICph7AS.js.map} +1 -1
  97. package/dist/{dialog-service-S1aHOhxt.js → dialog-service-CbRp40iS.js} +2 -2
  98. package/dist/{dialog-service-S1aHOhxt.js.map → dialog-service-CbRp40iS.js.map} +1 -1
  99. package/dist/{dialog-service-fqRlhoqP.cjs → dialog-service-CeF_iQ6v.cjs} +2 -2
  100. package/dist/{dialog-service-fqRlhoqP.cjs.map → dialog-service-CeF_iQ6v.cjs.map} +1 -1
  101. package/dist/dialog.cjs +1 -1
  102. package/dist/dialog.js +2 -2
  103. package/dist/{divider-0vcefMTl.js → divider-CjWffdoF.js} +3 -3
  104. package/dist/{divider-0vcefMTl.js.map → divider-CjWffdoF.js.map} +1 -1
  105. package/dist/{divider-BcNXmIjf.cjs → divider-yZhSudJH.cjs} +2 -2
  106. package/dist/{divider-BcNXmIjf.cjs.map → divider-yZhSudJH.cjs.map} +1 -1
  107. package/dist/divider.cjs +1 -1
  108. package/dist/divider.js +1 -1
  109. package/dist/{dropdown-content-BE4l5-bF.cjs → dropdown-content-Bfn0XEeT.cjs} +2 -2
  110. package/dist/{dropdown-content-BE4l5-bF.cjs.map → dropdown-content-Bfn0XEeT.cjs.map} +1 -1
  111. package/dist/{dropdown-content-Bki0sMG1.js → dropdown-content-DdmdUtwj.js} +3 -3
  112. package/dist/{dropdown-content-Bki0sMG1.js.map → dropdown-content-DdmdUtwj.js.map} +1 -1
  113. package/dist/dropdown.cjs +1 -1
  114. package/dist/dropdown.js +1 -1
  115. package/dist/extra.cjs +1 -1
  116. package/dist/extra.js +1 -1
  117. package/dist/{flex-CmpdU7KF.js → flex-CswRyQcd.js} +2 -2
  118. package/dist/{flex-CmpdU7KF.js.map → flex-CswRyQcd.js.map} +1 -1
  119. package/dist/{flex-CWfz0mT_.cjs → flex-DV4Ee5dx.cjs} +2 -2
  120. package/dist/{flex-CWfz0mT_.cjs.map → flex-DV4Ee5dx.cjs.map} +1 -1
  121. package/dist/{form-D9iJT7ye.cjs → form-BU1Igi_W.cjs} +2 -2
  122. package/dist/{form-D9iJT7ye.cjs.map → form-BU1Igi_W.cjs.map} +1 -1
  123. package/dist/{form-VirX921P.js → form-D_IoQKNn.js} +2 -2
  124. package/dist/{form-VirX921P.js.map → form-D_IoQKNn.js.map} +1 -1
  125. package/dist/form.cjs +1 -1
  126. package/dist/form.js +1 -1
  127. package/dist/{formField.mixin-DfFQjv2A.js → formField.mixin-C8I5ht-6.js} +2 -2
  128. package/dist/{formField.mixin-DfFQjv2A.js.map → formField.mixin-C8I5ht-6.js.map} +1 -1
  129. package/dist/{formField.mixin-D367avQx.cjs → formField.mixin-Cj6U-L1P.cjs} +2 -2
  130. package/dist/{formField.mixin-D367avQx.cjs.map → formField.mixin-Cj6U-L1P.cjs.map} +1 -1
  131. package/dist/{icon-iUti-uRG.js → icon-DIQ1yZJt.js} +2 -2
  132. package/dist/{icon-iUti-uRG.js.map → icon-DIQ1yZJt.js.map} +1 -1
  133. package/dist/{icon-CQ2TzXqr.cjs → icon-DTR5xLBE.cjs} +2 -2
  134. package/dist/{icon-CQ2TzXqr.cjs.map → icon-DTR5xLBE.cjs.map} +1 -1
  135. package/dist/{icon-button-Chfr85pI.cjs → icon-button-BkgBX10e.cjs} +2 -2
  136. package/dist/{icon-button-Chfr85pI.cjs.map → icon-button-BkgBX10e.cjs.map} +1 -1
  137. package/dist/{icon-button-ispbGg8V.js → icon-button-CJt7WRsT.js} +3 -3
  138. package/dist/{icon-button-ispbGg8V.js.map → icon-button-CJt7WRsT.js.map} +1 -1
  139. package/dist/icons.cjs +1 -1
  140. package/dist/icons.js +1 -1
  141. package/dist/index.cjs +1 -1
  142. package/dist/index.js +162 -158
  143. package/dist/index.js.map +1 -1
  144. package/dist/{input-BcWz0wTV.js → input-B7szijOK.js} +3 -3
  145. package/dist/{input-BcWz0wTV.js.map → input-B7szijOK.js.map} +1 -1
  146. package/dist/{input-DihdZVKl.cjs → input-DNrg9fyQ.cjs} +2 -2
  147. package/dist/{input-DihdZVKl.cjs.map → input-DNrg9fyQ.cjs.map} +1 -1
  148. package/dist/input.cjs +1 -1
  149. package/dist/input.js +1 -1
  150. package/dist/layout.cjs +1 -1
  151. package/dist/layout.js +1 -1
  152. package/dist/{list-CqKsOt3B.cjs → list-BPQMexX4.cjs} +2 -2
  153. package/dist/{list-CqKsOt3B.cjs.map → list-BPQMexX4.cjs.map} +1 -1
  154. package/dist/{list-qn9wVk0L.js → list-DQatYh3q.js} +2 -2
  155. package/dist/{list-qn9wVk0L.js.map → list-DQatYh3q.js.map} +1 -1
  156. package/dist/list.cjs +1 -1
  157. package/dist/list.js +1 -1
  158. package/dist/{litElement.mixin-sRUdAQbg.js → litElement.mixin-BuEn1yw0.js} +2 -2
  159. package/dist/{litElement.mixin-sRUdAQbg.js.map → litElement.mixin-BuEn1yw0.js.map} +1 -1
  160. package/dist/{litElement.mixin-rH8JULZZ.cjs → litElement.mixin-wcuhiwNu.cjs} +2 -2
  161. package/dist/{litElement.mixin-rH8JULZZ.cjs.map → litElement.mixin-wcuhiwNu.cjs.map} +1 -1
  162. package/dist/map-DsCefSkt.js +175 -0
  163. package/dist/map-DsCefSkt.js.map +1 -0
  164. package/dist/map-tpmHD8Pd.cjs +81 -0
  165. package/dist/map-tpmHD8Pd.cjs.map +1 -0
  166. package/dist/map.cjs +2 -0
  167. package/dist/map.cjs.map +1 -0
  168. package/dist/map.js +5 -0
  169. package/dist/map.js.map +1 -0
  170. package/dist/{media-DFXN_4aK.js → media-CnG3K4S_.js} +2 -2
  171. package/dist/{media-DFXN_4aK.js.map → media-CnG3K4S_.js.map} +1 -1
  172. package/dist/{media-elwvR06F.cjs → media-DYB4SLZh.cjs} +2 -2
  173. package/dist/{media-elwvR06F.cjs.map → media-DYB4SLZh.cjs.map} +1 -1
  174. package/dist/{menu-p4I5_Lw2.js → menu-D4rCY1Ps.js} +3 -3
  175. package/dist/{menu-p4I5_Lw2.js.map → menu-D4rCY1Ps.js.map} +1 -1
  176. package/dist/{menu-kDIe6tAV.cjs → menu-DHJ41YiK.cjs} +2 -2
  177. package/dist/{menu-kDIe6tAV.cjs.map → menu-DHJ41YiK.cjs.map} +1 -1
  178. package/dist/menu.cjs +1 -1
  179. package/dist/menu.js +1 -1
  180. package/dist/nav-drawer.cjs +1 -1
  181. package/dist/nav-drawer.js +1 -1
  182. package/dist/{notification-service-za0_fhhl.cjs → notification-service-CJ95tokn.cjs} +2 -2
  183. package/dist/{notification-service-za0_fhhl.cjs.map → notification-service-CJ95tokn.cjs.map} +1 -1
  184. package/dist/{notification-service-Rkjxrnsh.js → notification-service-DT1mqB8y.js} +4 -4
  185. package/dist/{notification-service-Rkjxrnsh.js.map → notification-service-DT1mqB8y.js.map} +1 -1
  186. package/dist/notification.cjs +1 -1
  187. package/dist/notification.js +2 -2
  188. package/dist/{notify-DWTupBbF.cjs → notify-CJKveO7A.cjs} +2 -2
  189. package/dist/{notify-DWTupBbF.cjs.map → notify-CJKveO7A.cjs.map} +1 -1
  190. package/dist/{notify-DlyqBWt7.js → notify-CWgEdHfi.js} +2 -2
  191. package/dist/{notify-DlyqBWt7.js.map → notify-CWgEdHfi.js.map} +1 -1
  192. package/dist/{option-B11dF4ts.js → option-D8m2Eyps.js} +2 -2
  193. package/dist/{option-B11dF4ts.js.map → option-D8m2Eyps.js.map} +1 -1
  194. package/dist/{option-BN0yfIJd.cjs → option-Dh2bfixl.cjs} +2 -2
  195. package/dist/{option-BN0yfIJd.cjs.map → option-Dh2bfixl.cjs.map} +1 -1
  196. package/dist/option.cjs +1 -1
  197. package/dist/option.js +1 -1
  198. package/dist/{payment-card-form-CB9JOaDJ.cjs → payment-card-form-C24Od0e4.cjs} +2 -2
  199. package/dist/{payment-card-form-CB9JOaDJ.cjs.map → payment-card-form-C24Od0e4.cjs.map} +1 -1
  200. package/dist/{payment-card-form-BSGwTH_I.js → payment-card-form-CC1BfZU7.js} +3 -3
  201. package/dist/{payment-card-form-BSGwTH_I.js.map → payment-card-form-CC1BfZU7.js.map} +1 -1
  202. package/dist/{progress-jqQTk6Au.js → progress-DbRYk_vN.js} +2 -2
  203. package/dist/{progress-jqQTk6Au.js.map → progress-DbRYk_vN.js.map} +1 -1
  204. package/dist/{progress-bdcY8y9X.cjs → progress-_-KrJL6P.cjs} +2 -2
  205. package/dist/{progress-bdcY8y9X.cjs.map → progress-_-KrJL6P.cjs.map} +1 -1
  206. package/dist/progress.cjs +1 -1
  207. package/dist/progress.js +1 -1
  208. package/dist/{radio-button-BJeYB3tM.js → radio-button-CSXQCDVF.js} +3 -3
  209. package/dist/{radio-button-BJeYB3tM.js.map → radio-button-CSXQCDVF.js.map} +1 -1
  210. package/dist/{radio-button-BoHXIxM8.cjs → radio-button-qhVXLMIU.cjs} +2 -2
  211. package/dist/{radio-button-BoHXIxM8.cjs.map → radio-button-qhVXLMIU.cjs.map} +1 -1
  212. package/dist/radio-group.cjs +1 -1
  213. package/dist/radio-group.js +1 -1
  214. package/dist/{schmancy-steps-container-CYO4MVUR.cjs → schmancy-steps-container-BNs57JEy.cjs} +2 -2
  215. package/dist/{schmancy-steps-container-CYO4MVUR.cjs.map → schmancy-steps-container-BNs57JEy.cjs.map} +1 -1
  216. package/dist/{schmancy-steps-container-DWnlpaKM.js → schmancy-steps-container-i0lIq4G9.js} +2 -2
  217. package/dist/{schmancy-steps-container-DWnlpaKM.js.map → schmancy-steps-container-i0lIq4G9.js.map} +1 -1
  218. package/dist/{select-BC8bdudP.cjs → select-C1Enzm_J.cjs} +2 -2
  219. package/dist/{select-BC8bdudP.cjs.map → select-C1Enzm_J.cjs.map} +1 -1
  220. package/dist/{select-p4o5Lul5.js → select-D4ZrbxJz.js} +3 -3
  221. package/dist/{select-p4o5Lul5.js.map → select-D4ZrbxJz.js.map} +1 -1
  222. package/dist/select.cjs +1 -1
  223. package/dist/select.js +1 -1
  224. package/dist/{sheet-BdQEBXGY.cjs → sheet-DZYHhdDu.cjs} +2 -2
  225. package/dist/{sheet-BdQEBXGY.cjs.map → sheet-DZYHhdDu.cjs.map} +1 -1
  226. package/dist/{sheet-CC3iD9_6.js → sheet-DoRbb5DN.js} +4 -4
  227. package/dist/{sheet-CC3iD9_6.js.map → sheet-DoRbb5DN.js.map} +1 -1
  228. package/dist/sheet.cjs +1 -1
  229. package/dist/sheet.js +1 -1
  230. package/dist/{slider--Jbq5q-X.js → slider-BbjYCp76.js} +3 -3
  231. package/dist/{slider--Jbq5q-X.js.map → slider-BbjYCp76.js.map} +1 -1
  232. package/dist/{slider-DMm-epbb.cjs → slider-CmIsBmgU.cjs} +2 -2
  233. package/dist/{slider-DMm-epbb.cjs.map → slider-CmIsBmgU.cjs.map} +1 -1
  234. package/dist/slider.cjs +1 -1
  235. package/dist/slider.js +1 -1
  236. package/dist/{spinner-DQJy8OCo.js → spinner-Dd0oPt1r.js} +2 -2
  237. package/dist/{spinner-DQJy8OCo.js.map → spinner-Dd0oPt1r.js.map} +1 -1
  238. package/dist/{spinner-CRZrT-_Q.cjs → spinner-lCgpt3QP.cjs} +2 -2
  239. package/dist/{spinner-CRZrT-_Q.cjs.map → spinner-lCgpt3QP.cjs.map} +1 -1
  240. package/dist/steps.cjs +1 -1
  241. package/dist/steps.js +1 -1
  242. package/dist/{surface-CWyGotlB.js → surface-Cif29fRD.js} +2 -2
  243. package/dist/{surface-CWyGotlB.js.map → surface-Cif29fRD.js.map} +1 -1
  244. package/dist/{surface-BoVJSFV9.cjs → surface-WsA8z_FS.cjs} +2 -2
  245. package/dist/{surface-BoVJSFV9.cjs.map → surface-WsA8z_FS.cjs.map} +1 -1
  246. package/dist/surface.cjs +1 -1
  247. package/dist/surface.js +1 -1
  248. package/dist/{table-BEQXD6kf.cjs → table-CmQsicMy.cjs} +2 -2
  249. package/dist/{table-BEQXD6kf.cjs.map → table-CmQsicMy.cjs.map} +1 -1
  250. package/dist/{table-BM7t3NMt.js → table-Vi66Jns6.js} +2 -2
  251. package/dist/{table-BM7t3NMt.js.map → table-Vi66Jns6.js.map} +1 -1
  252. package/dist/table.cjs +1 -1
  253. package/dist/table.js +1 -1
  254. package/dist/{tabs-compatibility-DeTNBDE1.cjs → tabs-compatibility-Cqev-DcY.cjs} +2 -2
  255. package/dist/{tabs-compatibility-DeTNBDE1.cjs.map → tabs-compatibility-Cqev-DcY.cjs.map} +1 -1
  256. package/dist/{tabs-compatibility-CeB6hC2j.js → tabs-compatibility-Js1MktRW.js} +2 -2
  257. package/dist/{tabs-compatibility-CeB6hC2j.js.map → tabs-compatibility-Js1MktRW.js.map} +1 -1
  258. package/dist/tabs.cjs +1 -1
  259. package/dist/tabs.js +1 -1
  260. package/dist/tailwind.mixin-Cl3yu0Cj.cjs +2 -0
  261. package/dist/{tailwind.mixin-Dq2ayAFp.cjs.map → tailwind.mixin-Cl3yu0Cj.cjs.map} +1 -1
  262. package/dist/tailwind.mixin-D4iX2lD7.js +43 -0
  263. package/dist/{tailwind.mixin-tQQ1rtff.js.map → tailwind.mixin-D4iX2lD7.js.map} +1 -1
  264. package/dist/teleport.cjs +1 -1
  265. package/dist/teleport.js +1 -1
  266. package/dist/{textarea-WHP4TrmY.js → textarea-CXSBrd0S.js} +2 -2
  267. package/dist/{textarea-WHP4TrmY.js.map → textarea-CXSBrd0S.js.map} +1 -1
  268. package/dist/{textarea-DocOI2oR.cjs → textarea-Dvd1VFKN.cjs} +2 -2
  269. package/dist/{textarea-DocOI2oR.cjs.map → textarea-Dvd1VFKN.cjs.map} +1 -1
  270. package/dist/textarea.cjs +1 -1
  271. package/dist/textarea.js +1 -1
  272. package/dist/{theme-button-CHUbJUKv.cjs → theme-button-A-aEIS5T.cjs} +2 -2
  273. package/dist/{theme-button-CHUbJUKv.cjs.map → theme-button-A-aEIS5T.cjs.map} +1 -1
  274. package/dist/{theme-button-B4_5yiEc.js → theme-button-CarTFeLZ.js} +2 -2
  275. package/dist/{theme-button-B4_5yiEc.js.map → theme-button-CarTFeLZ.js.map} +1 -1
  276. package/dist/theme-button.cjs +1 -1
  277. package/dist/theme-button.js +1 -1
  278. package/dist/theme.cjs +1 -1
  279. package/dist/{theme.component-CLHIqoT6.cjs → theme.component-BQvaBDDQ.cjs} +3 -3
  280. package/dist/{theme.component-CLHIqoT6.cjs.map → theme.component-BQvaBDDQ.cjs.map} +1 -1
  281. package/dist/{theme.component-90Bc4Zb3.js → theme.component-qwakcK7J.js} +2 -2
  282. package/dist/{theme.component-90Bc4Zb3.js.map → theme.component-qwakcK7J.js.map} +1 -1
  283. package/dist/theme.js +1 -1
  284. package/dist/{timezone-DB5BUvhB.js → timezone-Bq7SuRuQ.js} +3 -3
  285. package/dist/{timezone-DB5BUvhB.js.map → timezone-Bq7SuRuQ.js.map} +1 -1
  286. package/dist/{timezone-DvLRt3ML.cjs → timezone-_IxIvwMi.cjs} +2 -2
  287. package/dist/{timezone-DvLRt3ML.cjs.map → timezone-_IxIvwMi.cjs.map} +1 -1
  288. package/dist/{tooltip-CSWXlp7i.js → tooltip-B0m4YI0w.js} +2 -2
  289. package/dist/{tooltip-CSWXlp7i.js.map → tooltip-B0m4YI0w.js.map} +1 -1
  290. package/dist/{tooltip-CcuDiHHe.cjs → tooltip-v2tu65Gl.cjs} +2 -2
  291. package/dist/{tooltip-CcuDiHHe.cjs.map → tooltip-v2tu65Gl.cjs.map} +1 -1
  292. package/dist/tooltip.cjs +1 -1
  293. package/dist/tooltip.js +1 -1
  294. package/dist/{tree-CBb1YnBE.cjs → tree-V9u7LdtZ.cjs} +2 -2
  295. package/dist/{tree-CBb1YnBE.cjs.map → tree-V9u7LdtZ.cjs.map} +1 -1
  296. package/dist/{tree-CFZsnAVg.js → tree-tmP72oIY.js} +2 -2
  297. package/dist/{tree-CFZsnAVg.js.map → tree-tmP72oIY.js.map} +1 -1
  298. package/dist/tree.cjs +1 -1
  299. package/dist/tree.js +1 -1
  300. package/dist/{typewriter-DmeUdIXP.cjs → typewriter-BCN_KKDm.cjs} +2 -2
  301. package/dist/{typewriter-DmeUdIXP.cjs.map → typewriter-BCN_KKDm.cjs.map} +1 -1
  302. package/dist/{typewriter-CYozDVy4.js → typewriter-CxZkSMuN.js} +7 -7
  303. package/dist/{typewriter-CYozDVy4.js.map → typewriter-CxZkSMuN.js.map} +1 -1
  304. package/dist/typewriter.cjs +1 -1
  305. package/dist/typewriter.js +1 -1
  306. package/dist/{typography-VYWV4CaJ.js → typography-6mKlSjCG.js} +2 -2
  307. package/dist/{typography-VYWV4CaJ.js.map → typography-6mKlSjCG.js.map} +1 -1
  308. package/dist/{typography-Bl16hNlw.cjs → typography-DfJ5K2CM.cjs} +2 -2
  309. package/dist/{typography-Bl16hNlw.cjs.map → typography-DfJ5K2CM.cjs.map} +1 -1
  310. package/dist/typography.cjs +1 -1
  311. package/dist/typography.js +1 -1
  312. package/package.json +1 -1
  313. package/types/src/details/details.d.ts +14 -0
  314. package/types/src/details/index.d.ts +1 -0
  315. package/types/src/index.d.ts +2 -0
  316. package/types/src/map/index.d.ts +1 -0
  317. package/types/src/map/map.d.ts +129 -0
  318. package/dist/tailwind.mixin-Dq2ayAFp.cjs +0 -2
  319. package/dist/tailwind.mixin-tQQ1rtff.js +0 -43
package/ai/map.md ADDED
@@ -0,0 +1,232 @@
1
+ # Schmancy Map Component
2
+
3
+ The `schmancy-map` component provides an easy-to-use Google Maps integration with an intuitive API designed for both technical and non-technical users.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @mhmo91/schmancy
9
+ # or
10
+ yarn add @mhmo91/schmancy
11
+ ```
12
+
13
+ ## Import
14
+
15
+ ```javascript
16
+ import '@mhmo91/schmancy/map'
17
+ ```
18
+
19
+ ## API Reference
20
+
21
+ | Property | Type | Default | Description |
22
+ |----------|------|---------|-------------|
23
+ | `address` | `string` | `''` | Simple address string that automatically geocodes to display the location. Takes precedence over latitude/longitude if both are provided. |
24
+ | `latitude` | `number` | `undefined` | Latitude coordinate for precise location. Used when address is not provided. |
25
+ | `longitude` | `number` | `undefined` | Longitude coordinate for precise location. Used when address is not provided. |
26
+ | `zoom` | `number` | `15` | Map zoom level. Higher numbers show more detail (1-20). |
27
+ | `height` | `string` | `"400px"` | Height of the map with CSS unit (e.g., "400px", "50vh"). |
28
+ | `marker` | `boolean` | `true` | Whether to show a marker at the location. |
29
+ | `markerTitle` | `string` | `''` | Tooltip text for the location marker. |
30
+ | `type` | `'roadmap' \| 'satellite' \| 'hybrid' \| 'terrain'` | `'roadmap'` | Map display type. |
31
+ | `interactive` | `boolean` | `true` | Whether users can interact with the map (pan, zoom, click). |
32
+ | `controls` | `boolean` | `true` | Whether to show map controls (zoom buttons, fullscreen, etc.). |
33
+ | `apiKey` | `string` | `''` | Google Maps API key. Falls back to GOOGLE_MAPS_API_KEY environment variable. |
34
+
35
+ ## Basic Usage
36
+
37
+ ### Simple Address
38
+ The easiest way to display a map - just provide an address:
39
+
40
+ ```html
41
+ <schmancy-map address="Times Square, New York"></schmancy-map>
42
+ ```
43
+
44
+ ### Coordinates
45
+ For precise positioning, use latitude and longitude:
46
+
47
+ ```html
48
+ <schmancy-map
49
+ latitude="40.758"
50
+ longitude="-73.985"
51
+ zoom="17">
52
+ </schmancy-map>
53
+ ```
54
+
55
+ ### Custom Height
56
+ Adjust the map size:
57
+
58
+ ```html
59
+ <schmancy-map
60
+ address="Central Park, New York"
61
+ height="600px">
62
+ </schmancy-map>
63
+ ```
64
+
65
+ ## Map Types
66
+
67
+ ### Satellite View
68
+ ```html
69
+ <schmancy-map
70
+ address="Grand Canyon"
71
+ type="satellite"
72
+ height="500px">
73
+ </schmancy-map>
74
+ ```
75
+
76
+ ### Hybrid View
77
+ Combines satellite imagery with labels:
78
+
79
+ ```html
80
+ <schmancy-map
81
+ address="Mount Everest"
82
+ type="hybrid">
83
+ </schmancy-map>
84
+ ```
85
+
86
+ ### Terrain View
87
+ Shows topographical features:
88
+
89
+ ```html
90
+ <schmancy-map
91
+ address="Yellowstone National Park"
92
+ type="terrain">
93
+ </schmancy-map>
94
+ ```
95
+
96
+ ## Static Maps
97
+
98
+ For display-only maps without user interaction:
99
+
100
+ ```html
101
+ <schmancy-map
102
+ address="Eiffel Tower, Paris"
103
+ interactive="false"
104
+ controls="false">
105
+ </schmancy-map>
106
+ ```
107
+
108
+ ## Customization
109
+
110
+ ### Custom Marker
111
+ ```html
112
+ <schmancy-map
113
+ address="Statue of Liberty"
114
+ markerTitle="Welcome to Liberty Island">
115
+ </schmancy-map>
116
+ ```
117
+
118
+ ### No Marker
119
+ ```html
120
+ <schmancy-map
121
+ address="Pacific Ocean"
122
+ marker="false">
123
+ </schmancy-map>
124
+ ```
125
+
126
+ ### Different Zoom Levels
127
+ ```html
128
+ <!-- City view -->
129
+ <schmancy-map address="Tokyo" zoom="10"></schmancy-map>
130
+
131
+ <!-- Street view -->
132
+ <schmancy-map address="Tokyo Tower" zoom="18"></schmancy-map>
133
+ ```
134
+
135
+ ## API Key Setup
136
+
137
+ ### Environment Variable (Recommended)
138
+ Set `GOOGLE_MAPS_API_KEY` in your environment:
139
+
140
+ ```bash
141
+ GOOGLE_MAPS_API_KEY=your_api_key_here
142
+ ```
143
+
144
+ ### Direct Property
145
+ ```html
146
+ <schmancy-map
147
+ address="Sydney Opera House"
148
+ api-key="your_api_key_here">
149
+ </schmancy-map>
150
+ ```
151
+
152
+ ## Features
153
+
154
+ ### Automatic Geocoding
155
+ - Converts human-readable addresses to coordinates
156
+ - Handles various address formats
157
+ - Provides error feedback for invalid addresses
158
+
159
+ ### Responsive Design
160
+ - Adapts to container width
161
+ - Configurable height with CSS units
162
+ - Maintains aspect ratio on mobile
163
+
164
+ ### Loading States
165
+ - Shows spinner while loading
166
+ - Displays error messages for failed loads
167
+ - Graceful fallback when maps can't load
168
+
169
+ ### Performance
170
+ - Lazy loads Google Maps API
171
+ - Caches script loading across components
172
+ - Minimal bundle size impact
173
+
174
+ ## Error Handling
175
+
176
+ The component handles various error scenarios:
177
+
178
+ - **Invalid Address**: Shows error message with geocoding failure
179
+ - **Missing API Key**: Clear error message about required API key
180
+ - **Network Issues**: Graceful fallback with retry capability
181
+ - **Invalid Coordinates**: Validation of latitude/longitude ranges
182
+
183
+ ## Accessibility
184
+
185
+ - Proper ARIA labels for screen readers
186
+ - Keyboard navigation support (when interactive)
187
+ - High contrast error states
188
+ - Semantic HTML structure
189
+
190
+ ## Browser Support
191
+
192
+ - Modern browsers with ES2015+ support
193
+ - Google Maps API compatibility
194
+ - Progressive enhancement for older browsers
195
+
196
+ ## Examples in Real Applications
197
+
198
+ ### Store Locator
199
+ ```html
200
+ <schmancy-map
201
+ address="Apple Store, 5th Avenue, New York"
202
+ zoom="16"
203
+ marker-title="Apple Store - 5th Avenue">
204
+ </schmancy-map>
205
+ ```
206
+
207
+ ### Event Location
208
+ ```html
209
+ <schmancy-map
210
+ address="Madison Square Garden, New York"
211
+ height="300px"
212
+ interactive="false">
213
+ </schmancy-map>
214
+ ```
215
+
216
+ ### Property Listing
217
+ ```html
218
+ <schmancy-map
219
+ latitude="40.7831"
220
+ longitude="-73.9712"
221
+ zoom="15"
222
+ marker-title="Beautiful Apartment">
223
+ </schmancy-map>
224
+ ```
225
+
226
+ ## Best Practices
227
+
228
+ 1. **Use addresses for user-friendly input**: Most users understand addresses better than coordinates
229
+ 2. **Set appropriate zoom levels**: 10-12 for cities, 15-17 for neighborhoods, 18+ for buildings
230
+ 3. **Consider mobile users**: Use responsive heights like "50vh" for mobile-friendly maps
231
+ 4. **Provide meaningful marker titles**: Help users understand what the marker represents
232
+ 5. **Use static maps for display-only**: Disable interaction when the map is purely informational
package/dist/ai/map.md ADDED
@@ -0,0 +1,232 @@
1
+ # Schmancy Map Component
2
+
3
+ The `schmancy-map` component provides an easy-to-use Google Maps integration with an intuitive API designed for both technical and non-technical users.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @mhmo91/schmancy
9
+ # or
10
+ yarn add @mhmo91/schmancy
11
+ ```
12
+
13
+ ## Import
14
+
15
+ ```javascript
16
+ import '@mhmo91/schmancy/map'
17
+ ```
18
+
19
+ ## API Reference
20
+
21
+ | Property | Type | Default | Description |
22
+ |----------|------|---------|-------------|
23
+ | `address` | `string` | `''` | Simple address string that automatically geocodes to display the location. Takes precedence over latitude/longitude if both are provided. |
24
+ | `latitude` | `number` | `undefined` | Latitude coordinate for precise location. Used when address is not provided. |
25
+ | `longitude` | `number` | `undefined` | Longitude coordinate for precise location. Used when address is not provided. |
26
+ | `zoom` | `number` | `15` | Map zoom level. Higher numbers show more detail (1-20). |
27
+ | `height` | `string` | `"400px"` | Height of the map with CSS unit (e.g., "400px", "50vh"). |
28
+ | `marker` | `boolean` | `true` | Whether to show a marker at the location. |
29
+ | `markerTitle` | `string` | `''` | Tooltip text for the location marker. |
30
+ | `type` | `'roadmap' \| 'satellite' \| 'hybrid' \| 'terrain'` | `'roadmap'` | Map display type. |
31
+ | `interactive` | `boolean` | `true` | Whether users can interact with the map (pan, zoom, click). |
32
+ | `controls` | `boolean` | `true` | Whether to show map controls (zoom buttons, fullscreen, etc.). |
33
+ | `apiKey` | `string` | `''` | Google Maps API key. Falls back to GOOGLE_MAPS_API_KEY environment variable. |
34
+
35
+ ## Basic Usage
36
+
37
+ ### Simple Address
38
+ The easiest way to display a map - just provide an address:
39
+
40
+ ```html
41
+ <schmancy-map address="Times Square, New York"></schmancy-map>
42
+ ```
43
+
44
+ ### Coordinates
45
+ For precise positioning, use latitude and longitude:
46
+
47
+ ```html
48
+ <schmancy-map
49
+ latitude="40.758"
50
+ longitude="-73.985"
51
+ zoom="17">
52
+ </schmancy-map>
53
+ ```
54
+
55
+ ### Custom Height
56
+ Adjust the map size:
57
+
58
+ ```html
59
+ <schmancy-map
60
+ address="Central Park, New York"
61
+ height="600px">
62
+ </schmancy-map>
63
+ ```
64
+
65
+ ## Map Types
66
+
67
+ ### Satellite View
68
+ ```html
69
+ <schmancy-map
70
+ address="Grand Canyon"
71
+ type="satellite"
72
+ height="500px">
73
+ </schmancy-map>
74
+ ```
75
+
76
+ ### Hybrid View
77
+ Combines satellite imagery with labels:
78
+
79
+ ```html
80
+ <schmancy-map
81
+ address="Mount Everest"
82
+ type="hybrid">
83
+ </schmancy-map>
84
+ ```
85
+
86
+ ### Terrain View
87
+ Shows topographical features:
88
+
89
+ ```html
90
+ <schmancy-map
91
+ address="Yellowstone National Park"
92
+ type="terrain">
93
+ </schmancy-map>
94
+ ```
95
+
96
+ ## Static Maps
97
+
98
+ For display-only maps without user interaction:
99
+
100
+ ```html
101
+ <schmancy-map
102
+ address="Eiffel Tower, Paris"
103
+ interactive="false"
104
+ controls="false">
105
+ </schmancy-map>
106
+ ```
107
+
108
+ ## Customization
109
+
110
+ ### Custom Marker
111
+ ```html
112
+ <schmancy-map
113
+ address="Statue of Liberty"
114
+ markerTitle="Welcome to Liberty Island">
115
+ </schmancy-map>
116
+ ```
117
+
118
+ ### No Marker
119
+ ```html
120
+ <schmancy-map
121
+ address="Pacific Ocean"
122
+ marker="false">
123
+ </schmancy-map>
124
+ ```
125
+
126
+ ### Different Zoom Levels
127
+ ```html
128
+ <!-- City view -->
129
+ <schmancy-map address="Tokyo" zoom="10"></schmancy-map>
130
+
131
+ <!-- Street view -->
132
+ <schmancy-map address="Tokyo Tower" zoom="18"></schmancy-map>
133
+ ```
134
+
135
+ ## API Key Setup
136
+
137
+ ### Environment Variable (Recommended)
138
+ Set `GOOGLE_MAPS_API_KEY` in your environment:
139
+
140
+ ```bash
141
+ GOOGLE_MAPS_API_KEY=your_api_key_here
142
+ ```
143
+
144
+ ### Direct Property
145
+ ```html
146
+ <schmancy-map
147
+ address="Sydney Opera House"
148
+ api-key="your_api_key_here">
149
+ </schmancy-map>
150
+ ```
151
+
152
+ ## Features
153
+
154
+ ### Automatic Geocoding
155
+ - Converts human-readable addresses to coordinates
156
+ - Handles various address formats
157
+ - Provides error feedback for invalid addresses
158
+
159
+ ### Responsive Design
160
+ - Adapts to container width
161
+ - Configurable height with CSS units
162
+ - Maintains aspect ratio on mobile
163
+
164
+ ### Loading States
165
+ - Shows spinner while loading
166
+ - Displays error messages for failed loads
167
+ - Graceful fallback when maps can't load
168
+
169
+ ### Performance
170
+ - Lazy loads Google Maps API
171
+ - Caches script loading across components
172
+ - Minimal bundle size impact
173
+
174
+ ## Error Handling
175
+
176
+ The component handles various error scenarios:
177
+
178
+ - **Invalid Address**: Shows error message with geocoding failure
179
+ - **Missing API Key**: Clear error message about required API key
180
+ - **Network Issues**: Graceful fallback with retry capability
181
+ - **Invalid Coordinates**: Validation of latitude/longitude ranges
182
+
183
+ ## Accessibility
184
+
185
+ - Proper ARIA labels for screen readers
186
+ - Keyboard navigation support (when interactive)
187
+ - High contrast error states
188
+ - Semantic HTML structure
189
+
190
+ ## Browser Support
191
+
192
+ - Modern browsers with ES2015+ support
193
+ - Google Maps API compatibility
194
+ - Progressive enhancement for older browsers
195
+
196
+ ## Examples in Real Applications
197
+
198
+ ### Store Locator
199
+ ```html
200
+ <schmancy-map
201
+ address="Apple Store, 5th Avenue, New York"
202
+ zoom="16"
203
+ marker-title="Apple Store - 5th Avenue">
204
+ </schmancy-map>
205
+ ```
206
+
207
+ ### Event Location
208
+ ```html
209
+ <schmancy-map
210
+ address="Madison Square Garden, New York"
211
+ height="300px"
212
+ interactive="false">
213
+ </schmancy-map>
214
+ ```
215
+
216
+ ### Property Listing
217
+ ```html
218
+ <schmancy-map
219
+ latitude="40.7831"
220
+ longitude="-73.9712"
221
+ zoom="15"
222
+ marker-title="Beautiful Apartment">
223
+ </schmancy-map>
224
+ ```
225
+
226
+ ## Best Practices
227
+
228
+ 1. **Use addresses for user-friendly input**: Most users understand addresses better than coordinates
229
+ 2. **Set appropriate zoom levels**: 10-12 for cities, 15-17 for neighborhoods, 18+ for buildings
230
+ 3. **Consider mobile users**: Use responsive heights like "50vh" for mobile-friendly maps
231
+ 4. **Provide meaningful marker titles**: Help users understand what the marker represents
232
+ 5. **Use static maps for display-only**: Disable interaction when the map is purely informational
@@ -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-sRUdAQbg.js";
5
- import "./tailwind.mixin-tQQ1rtff.js";
4
+ import { $ as x } from "./litElement.mixin-BuEn1yw0.js";
5
+ import "./tailwind.mixin-D4iX2lD7.js";
6
6
  import { property as a, queryAssignedNodes as S, query as m, customElement as Z } from "lit/decorators.js";
7
7
  import { css as v, html as A } from "lit";
8
8
  var E = Object.defineProperty, O = Object.getOwnPropertyDescriptor, e = (r, s, n, i) => {
@@ -72,4 +72,4 @@ let t = class extends x(v`
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([S()], t.prototype, "defaultSlot", 2), e([m(".letters")], t.prototype, "letters", 2), e([m(".ml7")], t.prototype, "ml7", 2), t = e([Z("schmancy-animated-text")], t);
75
- //# sourceMappingURL=animated-text-DET7QrLu.js.map
75
+ //# sourceMappingURL=animated-text-CLjHeM_c.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-DET7QrLu.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","constructor","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","render","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"animated-text-CLjHeM_c.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","constructor","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","render","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-rH8JULZZ.cjs");require("./tailwind.mixin-Dq2ayAFp.cjs");const r=require("lit/decorators.js"),c=require("lit");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-wcuhiwNu.cjs");require("./tailwind.mixin-Cl3yu0Cj.cjs");const r=require("lit/decorators.js"),c=require("lit");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-DB1In3Jz.cjs.map
37
+ //# sourceMappingURL=animated-text-Q1hfnAer.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-text-DB1In3Jz.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","constructor","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","render","html","__decorateClass","property","type","prototype","Number","Boolean","queryAssignedNodes","query","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"animated-text-Q1hfnAer.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","constructor","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","render","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-DB1In3Jz.cjs");
1
+ "use strict";require("./animated-text-Q1hfnAer.cjs");
2
2
  //# sourceMappingURL=animated-text.cjs.map
@@ -1,2 +1,2 @@
1
- import "./animated-text-DET7QrLu.js";
1
+ import "./animated-text-CLjHeM_c.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-D3jAVUFN.cjs"),e=require("./utils-C9nzOWpR.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-CNTVHafq.cjs"),e=require("./utils-C9nzOWpR.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