@mhmo91/schmancy 0.4.53 → 0.4.55
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.
- package/ai/map.md +232 -0
- package/ai/notification.md +158 -45
- package/dist/ai/map.md +232 -0
- package/dist/ai/notification.md +158 -45
- package/dist/{animated-text-D26Fv13t.js → animated-text-Bns9oiIU.js} +3 -3
- package/dist/{animated-text-D26Fv13t.js.map → animated-text-Bns9oiIU.js.map} +1 -1
- package/dist/{animated-text-CtXY3MHV.cjs → animated-text-CHUcj2G2.cjs} +2 -2
- package/dist/{animated-text-CtXY3MHV.cjs.map → animated-text-CHUcj2G2.cjs.map} +1 -1
- package/dist/animated-text.cjs +1 -1
- package/dist/animated-text.js +1 -1
- package/dist/area.cjs +1 -1
- package/dist/{area.component-BCcq9Nb7.js → area.component-Aur5h5TN.js} +10 -10
- package/dist/{area.component-BCcq9Nb7.js.map → area.component-Aur5h5TN.js.map} +1 -1
- package/dist/{area.component-DQ_erV9e.cjs → area.component-BTZcyqR5.cjs} +2 -2
- package/dist/{area.component-DQ_erV9e.cjs.map → area.component-BTZcyqR5.cjs.map} +1 -1
- package/dist/area.js +1 -1
- package/dist/{autocomplete-CkycjWy4.js → autocomplete-BhjrqWor.js} +3 -3
- package/dist/{autocomplete-CkycjWy4.js.map → autocomplete-BhjrqWor.js.map} +1 -1
- package/dist/{autocomplete-CrhgxhFI.cjs → autocomplete-CleoNM85.cjs} +2 -2
- package/dist/{autocomplete-CrhgxhFI.cjs.map → autocomplete-CleoNM85.cjs.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/{avatar-nwqyt3uc.cjs → avatar-DoUVCqad.cjs} +2 -2
- package/dist/{avatar-nwqyt3uc.cjs.map → avatar-DoUVCqad.cjs.map} +1 -1
- package/dist/{avatar-BXx1oJMG.js → avatar-j733KoCV.js} +53 -51
- package/dist/{avatar-BXx1oJMG.js.map → avatar-j733KoCV.js.map} +1 -1
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-C_BvtlNQ.js → boat-CIA-nk8V.js} +2 -2
- package/dist/{boat-C_BvtlNQ.js.map → boat-CIA-nk8V.js.map} +1 -1
- package/dist/{boat-B_xZilsk.cjs → boat-DU_GhEJ2.cjs} +2 -2
- package/dist/{boat-B_xZilsk.cjs.map → boat-DU_GhEJ2.cjs.map} +1 -1
- package/dist/boat.cjs +1 -1
- package/dist/boat.js +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.js +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{checkbox-c3DzDvWH.js → checkbox-BCTABF4s.js} +6 -6
- package/dist/{checkbox-c3DzDvWH.js.map → checkbox-BCTABF4s.js.map} +1 -1
- package/dist/{checkbox-BAuVXvYL.cjs → checkbox-DblOhLz_.cjs} +2 -2
- package/dist/{checkbox-BAuVXvYL.cjs.map → checkbox-DblOhLz_.cjs.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-Dn8RpKCE.js → chips-BbMM2s8r.js} +3 -3
- package/dist/{chips-Dn8RpKCE.js.map → chips-BbMM2s8r.js.map} +1 -1
- package/dist/{chips-Dg2otqDI.cjs → chips-LAtr3to0.cjs} +2 -2
- package/dist/{chips-Dg2otqDI.cjs.map → chips-LAtr3to0.cjs.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +1 -1
- package/dist/{circular-progress-DZUJU-z3.cjs → circular-progress-BKwcIgEZ.cjs} +2 -2
- package/dist/{circular-progress-DZUJU-z3.cjs.map → circular-progress-BKwcIgEZ.cjs.map} +1 -1
- package/dist/{circular-progress-B1RjFzcp.js → circular-progress-DtAG2JJn.js} +3 -3
- package/dist/{circular-progress-B1RjFzcp.js.map → circular-progress-DtAG2JJn.js.map} +1 -1
- package/dist/circular-progress.cjs +1 -1
- package/dist/circular-progress.js +1 -1
- package/dist/code-highlight.cjs +1 -1
- package/dist/code-highlight.js +1 -1
- package/dist/{code-preview-JlSLKkKg.js → code-preview-BgwAlMc_.js} +2 -2
- package/dist/{code-preview-JlSLKkKg.js.map → code-preview-BgwAlMc_.js.map} +1 -1
- package/dist/{code-preview-CYHNaPek.cjs → code-preview-Bn6-jpNm.cjs} +2 -2
- package/dist/{code-preview-CYHNaPek.cjs.map → code-preview-Bn6-jpNm.cjs.map} +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.js +1 -1
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/{date-range-8o_f5N7V.js → date-range-CBfV-vU_.js} +4 -4
- package/dist/{date-range-8o_f5N7V.js.map → date-range-CBfV-vU_.js.map} +1 -1
- package/dist/{date-range-9NUFmKqd.cjs → date-range-CNsf8eFb.cjs} +2 -2
- package/dist/{date-range-9NUFmKqd.cjs.map → date-range-CNsf8eFb.cjs.map} +1 -1
- package/dist/{date-range-inline-Czq1wHs1.cjs → date-range-inline-ECHd558D.cjs} +2 -2
- package/dist/{date-range-inline-Czq1wHs1.cjs.map → date-range-inline-ECHd558D.cjs.map} +1 -1
- package/dist/{date-range-inline-B_K4YPtB.js → date-range-inline-VA3xdfyl.js} +3 -3
- package/dist/{date-range-inline-B_K4YPtB.js.map → date-range-inline-VA3xdfyl.js.map} +1 -1
- package/dist/date-range-inline.cjs +1 -1
- package/dist/date-range-inline.js +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-DtVBjjLV.js → delay-B_3yscDy.js} +2 -2
- package/dist/{delay-DtVBjjLV.js.map → delay-B_3yscDy.js.map} +1 -1
- package/dist/{delay-FgtrEHdo.cjs → delay-DtUJwLKe.cjs} +2 -2
- package/dist/{delay-FgtrEHdo.cjs.map → delay-DtUJwLKe.cjs.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/details-Bkt6fV0b.js +134 -0
- package/dist/details-Bkt6fV0b.js.map +1 -0
- package/dist/details-X-ciBYba.cjs +109 -0
- package/dist/details-X-ciBYba.cjs.map +1 -0
- package/dist/details.cjs +2 -0
- package/dist/details.cjs.map +1 -0
- package/dist/details.js +5 -0
- package/dist/details.js.map +1 -0
- package/dist/{dialog-content-C_paCOeM.js → dialog-content-Y4RvMloi.js} +4 -4
- package/dist/{dialog-content-C_paCOeM.js.map → dialog-content-Y4RvMloi.js.map} +1 -1
- package/dist/{dialog-content-tGl9B67L.cjs → dialog-content-puP-JDoT.cjs} +2 -2
- package/dist/{dialog-content-tGl9B67L.cjs.map → dialog-content-puP-JDoT.cjs.map} +1 -1
- package/dist/{dialog-service-JNWTLfAy.cjs → dialog-service-BCfRtG2U.cjs} +2 -2
- package/dist/{dialog-service-JNWTLfAy.cjs.map → dialog-service-BCfRtG2U.cjs.map} +1 -1
- package/dist/{dialog-service-DZv4KB89.js → dialog-service-CY9yBEhe.js} +2 -2
- package/dist/{dialog-service-DZv4KB89.js.map → dialog-service-CY9yBEhe.js.map} +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +2 -2
- package/dist/{divider-Dn26vIou.js → divider-BZq3k_da.js} +3 -3
- package/dist/{divider-Dn26vIou.js.map → divider-BZq3k_da.js.map} +1 -1
- package/dist/{divider-2yg9r1tF.cjs → divider-t1KWAOnw.cjs} +2 -2
- package/dist/{divider-2yg9r1tF.cjs.map → divider-t1KWAOnw.cjs.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{dropdown-content-DJ4CA3ug.cjs → dropdown-content-D834SoZi.cjs} +2 -2
- package/dist/{dropdown-content-DJ4CA3ug.cjs.map → dropdown-content-D834SoZi.cjs.map} +1 -1
- package/dist/{dropdown-content-DNJhJCdV.js → dropdown-content-JvpnX2RS.js} +3 -3
- package/dist/{dropdown-content-DNJhJCdV.js.map → dropdown-content-JvpnX2RS.js.map} +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/{flex-DV2W2Zgu.js → flex-CAsda_Fe.js} +2 -2
- package/dist/{flex-DV2W2Zgu.js.map → flex-CAsda_Fe.js.map} +1 -1
- package/dist/{flex-DWnX0ZPR.cjs → flex-LjqLwPhI.cjs} +2 -2
- package/dist/{flex-DWnX0ZPR.cjs.map → flex-LjqLwPhI.cjs.map} +1 -1
- package/dist/{form-Dpokur4M.cjs → form-CpIQ4L1j.cjs} +2 -2
- package/dist/{form-Dpokur4M.cjs.map → form-CpIQ4L1j.cjs.map} +1 -1
- package/dist/{form-Cots2cbN.js → form-czxHWLos.js} +2 -2
- package/dist/{form-Cots2cbN.js.map → form-czxHWLos.js.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{formField.mixin-ySoLTrgX.cjs → formField.mixin-BD-_Rnyy.cjs} +2 -2
- package/dist/{formField.mixin-ySoLTrgX.cjs.map → formField.mixin-BD-_Rnyy.cjs.map} +1 -1
- package/dist/{formField.mixin-DdTDdv9g.js → formField.mixin-bSNupTkm.js} +2 -2
- package/dist/{formField.mixin-DdTDdv9g.js.map → formField.mixin-bSNupTkm.js.map} +1 -1
- package/dist/{icon-BZxC9aoA.js → icon-B8LhF-rS.js} +2 -2
- package/dist/{icon-BZxC9aoA.js.map → icon-B8LhF-rS.js.map} +1 -1
- package/dist/{icon-mhchC8Qw.cjs → icon-DgnS9IuB.cjs} +2 -2
- package/dist/{icon-mhchC8Qw.cjs.map → icon-DgnS9IuB.cjs.map} +1 -1
- package/dist/{icon-button-DbvjV5zJ.cjs → icon-button-CK0UyXcE.cjs} +2 -2
- package/dist/{icon-button-DbvjV5zJ.cjs.map → icon-button-CK0UyXcE.cjs.map} +1 -1
- package/dist/{icon-button-BGvSPuE-.js → icon-button-DdvdiQga.js} +3 -3
- package/dist/{icon-button-BGvSPuE-.js.map → icon-button-DdvdiQga.js.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +166 -159
- package/dist/index.js.map +1 -1
- package/dist/{input-DzNoI9qU.cjs → input-DJKVCqiL.cjs} +2 -2
- package/dist/{input-DzNoI9qU.cjs.map → input-DJKVCqiL.cjs.map} +1 -1
- package/dist/{input-Cpo-ws8k.js → input-rNxC53BQ.js} +3 -3
- package/dist/{input-Cpo-ws8k.js.map → input-rNxC53BQ.js.map} +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +1 -1
- package/dist/{list-BTyoQ42F.js → list-ccMISKKN.js} +2 -2
- package/dist/{list-BTyoQ42F.js.map → list-ccMISKKN.js.map} +1 -1
- package/dist/{list-DRbkWHho.cjs → list-e54Aokyk.cjs} +2 -2
- package/dist/{list-DRbkWHho.cjs.map → list-e54Aokyk.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-BH9PTyUD.js → litElement.mixin-BMewYv9c.js} +2 -2
- package/dist/{litElement.mixin-BH9PTyUD.js.map → litElement.mixin-BMewYv9c.js.map} +1 -1
- package/dist/{litElement.mixin-B01R2oT7.cjs → litElement.mixin-Brn_lsa3.cjs} +2 -2
- package/dist/{litElement.mixin-B01R2oT7.cjs.map → litElement.mixin-Brn_lsa3.cjs.map} +1 -1
- package/dist/map-CsuRRLbB.js +175 -0
- package/dist/map-CsuRRLbB.js.map +1 -0
- package/dist/map-D3nhiTCn.cjs +81 -0
- package/dist/map-D3nhiTCn.cjs.map +1 -0
- package/dist/map.cjs +2 -0
- package/dist/map.cjs.map +1 -0
- package/dist/map.js +5 -0
- package/dist/map.js.map +1 -0
- package/dist/{media-BO-aZBTp.js → media-BtAS-xyw.js} +2 -2
- package/dist/{media-BO-aZBTp.js.map → media-BtAS-xyw.js.map} +1 -1
- package/dist/{media-CIuTybvD.cjs → media-Dd0PTrZ3.cjs} +2 -2
- package/dist/{media-CIuTybvD.cjs.map → media-Dd0PTrZ3.cjs.map} +1 -1
- package/dist/{menu-DWCDQvGY.js → menu-CAhuu8Ei.js} +3 -3
- package/dist/{menu-DWCDQvGY.js.map → menu-CAhuu8Ei.js.map} +1 -1
- package/dist/{menu-DEbZxoXr.cjs → menu-CFqp1aH7.cjs} +2 -2
- package/dist/{menu-DEbZxoXr.cjs.map → menu-CFqp1aH7.cjs.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/{notification-service-L_h9_d4v.js → notification-service-Byz67oln.js} +142 -113
- package/dist/notification-service-Byz67oln.js.map +1 -0
- package/dist/notification-service-KWQfnc6d.cjs +143 -0
- package/dist/notification-service-KWQfnc6d.cjs.map +1 -0
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +7 -4
- package/dist/notification.js.map +1 -1
- package/dist/notify-BIdXyvMf.js +35 -0
- package/dist/notify-BIdXyvMf.js.map +1 -0
- package/dist/notify-DDzsX0lt.cjs +2 -0
- package/dist/notify-DDzsX0lt.cjs.map +1 -0
- package/dist/number-B7aCRYnH.cjs.map +1 -1
- package/dist/number-BhTiptLA.js.map +1 -1
- package/dist/{option-vRGeXw_u.js → option-BCg6S7Jj.js} +2 -2
- package/dist/{option-vRGeXw_u.js.map → option-BCg6S7Jj.js.map} +1 -1
- package/dist/{option-BPmOG_Hw.cjs → option-DarGe_f3.cjs} +2 -2
- package/dist/{option-BPmOG_Hw.cjs.map → option-DarGe_f3.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{payment-card-form-Cs5bP5Di.js → payment-card-form-C1W2DPu4.js} +3 -3
- package/dist/{payment-card-form-Cs5bP5Di.js.map → payment-card-form-C1W2DPu4.js.map} +1 -1
- package/dist/{payment-card-form-ccF9dfGC.cjs → payment-card-form-CW3KC9QK.cjs} +2 -2
- package/dist/{payment-card-form-ccF9dfGC.cjs.map → payment-card-form-CW3KC9QK.cjs.map} +1 -1
- package/dist/{progress-BqZ7yHQe.cjs → progress-B-ZZ40CK.cjs} +2 -2
- package/dist/{progress-BqZ7yHQe.cjs.map → progress-B-ZZ40CK.cjs.map} +1 -1
- package/dist/{progress-DM_jha7D.js → progress-BSJSsYj7.js} +2 -2
- package/dist/{progress-DM_jha7D.js.map → progress-BSJSsYj7.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{radio-button-WmbuT_YW.cjs → radio-button-CsIIrM_C.cjs} +2 -2
- package/dist/{radio-button-WmbuT_YW.cjs.map → radio-button-CsIIrM_C.cjs.map} +1 -1
- package/dist/{radio-button-YDzqdRA-.js → radio-button-DX4XSjAy.js} +3 -3
- package/dist/{radio-button-YDzqdRA-.js.map → radio-button-DX4XSjAy.js.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/{schmancy-steps-container-CoARMXfB.js → schmancy-steps-container-8RdoKtdK.js} +2 -2
- package/dist/{schmancy-steps-container-CoARMXfB.js.map → schmancy-steps-container-8RdoKtdK.js.map} +1 -1
- package/dist/{schmancy-steps-container-CjAsrjKf.cjs → schmancy-steps-container-DADzK9o0.cjs} +2 -2
- package/dist/{schmancy-steps-container-CjAsrjKf.cjs.map → schmancy-steps-container-DADzK9o0.cjs.map} +1 -1
- package/dist/{select-rwocpGs2.js → select-C-KLPYEJ.js} +3 -3
- package/dist/{select-rwocpGs2.js.map → select-C-KLPYEJ.js.map} +1 -1
- package/dist/{select-CPnSionr.cjs → select-CF9aojhZ.cjs} +2 -2
- package/dist/{select-CPnSionr.cjs.map → select-CF9aojhZ.cjs.map} +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{sheet-Cw2qLdzN.js → sheet-BQ2PhU-0.js} +4 -4
- package/dist/{sheet-Cw2qLdzN.js.map → sheet-BQ2PhU-0.js.map} +1 -1
- package/dist/{sheet-eCDoMdHF.cjs → sheet-CzCiJ3yC.cjs} +2 -2
- package/dist/{sheet-eCDoMdHF.cjs.map → sheet-CzCiJ3yC.cjs.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{slider-C7Z1bPq7.js → slider-Bo0_X0Xt.js} +3 -3
- package/dist/{slider-C7Z1bPq7.js.map → slider-Bo0_X0Xt.js.map} +1 -1
- package/dist/{slider-DBNoXRWS.cjs → slider-C4fwo5P3.cjs} +2 -2
- package/dist/{slider-DBNoXRWS.cjs.map → slider-C4fwo5P3.cjs.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-CbA-FXRK.js → spinner-CKnK4QHu.js} +2 -2
- package/dist/{spinner-CbA-FXRK.js.map → spinner-CKnK4QHu.js.map} +1 -1
- package/dist/{spinner-CV62BBoF.cjs → spinner-DMoZTIMe.cjs} +2 -2
- package/dist/{spinner-CV62BBoF.cjs.map → spinner-DMoZTIMe.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/{surface-By8o7nWa.js → surface-BEaRxAZt.js} +2 -2
- package/dist/{surface-By8o7nWa.js.map → surface-BEaRxAZt.js.map} +1 -1
- package/dist/{surface-ClfeUI6q.cjs → surface-Bcy2LzAX.cjs} +2 -2
- package/dist/{surface-ClfeUI6q.cjs.map → surface-Bcy2LzAX.cjs.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-Rqnb4AJl.cjs → table-9AyLMNRe.cjs} +2 -2
- package/dist/{table-Rqnb4AJl.cjs.map → table-9AyLMNRe.cjs.map} +1 -1
- package/dist/{table-CvMo5lOi.js → table-MzCzXjAC.js} +2 -2
- package/dist/{table-CvMo5lOi.js.map → table-MzCzXjAC.js.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-compatibility-BEXurIiZ.js → tabs-compatibility-D5xv33oo.js} +2 -2
- package/dist/{tabs-compatibility-BEXurIiZ.js.map → tabs-compatibility-D5xv33oo.js.map} +1 -1
- package/dist/{tabs-compatibility-B1bE7hSG.cjs → tabs-compatibility-N1qxOCYJ.cjs} +2 -2
- package/dist/{tabs-compatibility-B1bE7hSG.cjs.map → tabs-compatibility-N1qxOCYJ.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-BTGoGfEI.js +43 -0
- package/dist/{tailwind.mixin-CaIkmP6j.js.map → tailwind.mixin-BTGoGfEI.js.map} +1 -1
- package/dist/tailwind.mixin-KC3Nl9kj.cjs +2 -0
- package/dist/{tailwind.mixin-DVKI3qb9.cjs.map → tailwind.mixin-KC3Nl9kj.cjs.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-DM3lgEUp.js → textarea-BHGIbEBY.js} +2 -2
- package/dist/{textarea-DM3lgEUp.js.map → textarea-BHGIbEBY.js.map} +1 -1
- package/dist/{textarea-Dlnyyrbq.cjs → textarea-DUBjaAfu.cjs} +2 -2
- package/dist/{textarea-Dlnyyrbq.cjs.map → textarea-DUBjaAfu.cjs.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-Cao8AH8r.cjs → theme-button-C2-L23sJ.cjs} +2 -2
- package/dist/{theme-button-Cao8AH8r.cjs.map → theme-button-C2-L23sJ.cjs.map} +1 -1
- package/dist/{theme-button-C4JWRMiC.js → theme-button-FU1OUOBA.js} +2 -2
- package/dist/{theme-button-C4JWRMiC.js.map → theme-button-FU1OUOBA.js.map} +1 -1
- package/dist/theme-button.cjs +1 -1
- package/dist/theme-button.js +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/{theme.component-RtV3l-Ns.cjs → theme.component-BQr3n0fE.cjs} +3 -3
- package/dist/{theme.component-RtV3l-Ns.cjs.map → theme.component-BQr3n0fE.cjs.map} +1 -1
- package/dist/{theme.component-ColRTbY5.js → theme.component-BYGB9dTb.js} +2 -2
- package/dist/{theme.component-ColRTbY5.js.map → theme.component-BYGB9dTb.js.map} +1 -1
- package/dist/theme.js +1 -1
- package/dist/{timezone-Cvsd--fr.js → timezone-BgX3qSF-.js} +3 -3
- package/dist/{timezone-Cvsd--fr.js.map → timezone-BgX3qSF-.js.map} +1 -1
- package/dist/{timezone-UBBApQoU.cjs → timezone-DexhNs9f.cjs} +2 -2
- package/dist/{timezone-UBBApQoU.cjs.map → timezone-DexhNs9f.cjs.map} +1 -1
- package/dist/{tooltip-nwQwCEgl.js → tooltip-CkGy17kd.js} +2 -2
- package/dist/{tooltip-nwQwCEgl.js.map → tooltip-CkGy17kd.js.map} +1 -1
- package/dist/{tooltip-WpE4e-fO.cjs → tooltip-xj7RGLlB.cjs} +2 -2
- package/dist/{tooltip-WpE4e-fO.cjs.map → tooltip-xj7RGLlB.cjs.map} +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/{tree-BDmB7KmQ.js → tree-BeU8nzGP.js} +2 -2
- package/dist/{tree-BDmB7KmQ.js.map → tree-BeU8nzGP.js.map} +1 -1
- package/dist/{tree-Dn0t7MUR.cjs → tree-DSpkwuOO.cjs} +2 -2
- package/dist/{tree-Dn0t7MUR.cjs.map → tree-DSpkwuOO.cjs.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-Fq4uV6Gm.cjs → typewriter-Bn7fe4nG.cjs} +2 -2
- package/dist/{typewriter-Fq4uV6Gm.cjs.map → typewriter-Bn7fe4nG.cjs.map} +1 -1
- package/dist/{typewriter-CXadCi-4.js → typewriter-CbONIeGA.js} +7 -7
- package/dist/{typewriter-CXadCi-4.js.map → typewriter-CbONIeGA.js.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-BhCrqK_b.cjs → typography-CJ5-RiNW.cjs} +2 -2
- package/dist/{typography-BhCrqK_b.cjs.map → typography-CJ5-RiNW.cjs.map} +1 -1
- package/dist/{typography-DYCOngD7.js → typography-D1m-mdd7.js} +2 -2
- package/dist/{typography-DYCOngD7.js.map → typography-D1m-mdd7.js.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/package.json +1 -1
- package/types/src/details/details.d.ts +14 -0
- package/types/src/details/index.d.ts +1 -0
- package/types/src/index.d.ts +2 -0
- package/types/src/map/index.d.ts +1 -0
- package/types/src/map/map.d.ts +129 -0
- package/types/src/notification/index.d.ts +2 -0
- package/types/src/notification/notification-container.d.ts +3 -0
- package/types/src/notification/notification-service.d.ts +19 -0
- package/types/src/notification/notification.d.ts +2 -0
- package/types/src/notification/notify.d.ts +100 -0
- package/types/src/utils/number.d.ts +2 -0
- package/dist/notification-service-B6nHqzq5.cjs +0 -141
- package/dist/notification-service-B6nHqzq5.cjs.map +0 -1
- package/dist/notification-service-L_h9_d4v.js.map +0 -1
- package/dist/tailwind.mixin-CaIkmP6j.js +0 -43
- package/dist/tailwind.mixin-DVKI3qb9.cjs +0 -2
package/dist/ai/notification.md
CHANGED
|
@@ -1,79 +1,192 @@
|
|
|
1
1
|
# Schmancy Notification - AI Reference
|
|
2
2
|
|
|
3
|
+
## Core Notification Service
|
|
4
|
+
|
|
3
5
|
```js
|
|
4
|
-
|
|
5
|
-
import { $notification } from '@mhmo91/schmancy';
|
|
6
|
+
import { $notify } from '@mhmo91/schmancy'
|
|
6
7
|
|
|
7
8
|
// Display notification methods
|
|
8
|
-
$
|
|
9
|
-
$
|
|
10
|
-
$
|
|
11
|
-
$
|
|
9
|
+
$notify.info(message?, options?) -> string // Returns notification ID
|
|
10
|
+
$notify.success(message?, options?) -> string
|
|
11
|
+
$notify.warning(message?, options?) -> string
|
|
12
|
+
$notify.error(message?, options?) -> string
|
|
12
13
|
|
|
13
14
|
// Custom notification
|
|
14
|
-
$
|
|
15
|
+
$notify.show({
|
|
15
16
|
message: string,
|
|
16
17
|
type?: 'info'|'success'|'warning'|'error',
|
|
17
18
|
title?: string,
|
|
18
|
-
duration?: number, // milliseconds, default 1000
|
|
19
|
+
duration?: number, // milliseconds, default 1000
|
|
19
20
|
closable?: boolean, // default true
|
|
20
21
|
playSound?: boolean, // default true
|
|
22
|
+
showProgress?: boolean, // show progress bar
|
|
21
23
|
id?: string // custom ID
|
|
22
|
-
}) -> string
|
|
24
|
+
}) -> string
|
|
25
|
+
|
|
26
|
+
// Dismiss notifications
|
|
27
|
+
$notify.dismiss(id?) // Dismisses specific notification or latest if no ID
|
|
28
|
+
|
|
29
|
+
// Update notification content
|
|
30
|
+
$notify.update(id, options) // Update existing notification
|
|
31
|
+
|
|
32
|
+
// Persistent notification
|
|
33
|
+
$notify.persistent(message, options) // Won't auto-dismiss (duration: 0)
|
|
34
|
+
|
|
35
|
+
// Custom duration
|
|
36
|
+
$notify.customDuration(message, duration, options)
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## API Integration with notify()
|
|
40
|
+
|
|
41
|
+
The `notify()` operator wraps observables with automatic notification lifecycle management.
|
|
42
|
+
|
|
43
|
+
```js
|
|
44
|
+
import { notify } from '@mhmo91/schmancy'
|
|
45
|
+
|
|
46
|
+
// Basic usage - minimal configuration
|
|
47
|
+
someApiCall().pipe(
|
|
48
|
+
notify({
|
|
49
|
+
loadingMessage: 'Loading data...',
|
|
50
|
+
successMessage: 'Data loaded!',
|
|
51
|
+
errorMessage: 'Failed to load'
|
|
52
|
+
})
|
|
53
|
+
).subscribe()
|
|
54
|
+
|
|
55
|
+
// With custom durations
|
|
56
|
+
saveData().pipe(
|
|
57
|
+
notify({
|
|
58
|
+
loadingMessage: 'Saving...',
|
|
59
|
+
successMessage: 'Saved!',
|
|
60
|
+
successDuration: 5000, // Success stays 5 seconds
|
|
61
|
+
errorMessage: 'Save failed',
|
|
62
|
+
errorDuration: 0 // Error is persistent
|
|
63
|
+
})
|
|
64
|
+
).subscribe()
|
|
65
|
+
|
|
66
|
+
// Full configuration
|
|
67
|
+
uploadFile().pipe(
|
|
68
|
+
notify({
|
|
69
|
+
// Loading state
|
|
70
|
+
loadingMessage: 'Uploading file...',
|
|
71
|
+
loadingType: 'info',
|
|
72
|
+
|
|
73
|
+
// Success state
|
|
74
|
+
successMessage: 'Upload complete!',
|
|
75
|
+
successType: 'success',
|
|
76
|
+
successDuration: 3000,
|
|
77
|
+
|
|
78
|
+
// Error state
|
|
79
|
+
errorMessage: (err) => `Upload failed: ${err.message}`,
|
|
80
|
+
errorType: 'error',
|
|
81
|
+
errorDuration: 10000,
|
|
82
|
+
|
|
83
|
+
// Options
|
|
84
|
+
autoDismissLoading: true
|
|
85
|
+
})
|
|
86
|
+
).subscribe()
|
|
87
|
+
|
|
88
|
+
// With progress tracking
|
|
89
|
+
// Automatically detects { progress: number } or { loaded, total } in emissions
|
|
90
|
+
fileUpload().pipe(
|
|
91
|
+
notify({
|
|
92
|
+
loadingMessage: 'Uploading...', // Updates to "Uploading... (50%)"
|
|
93
|
+
successMessage: 'Upload complete!',
|
|
94
|
+
errorMessage: 'Upload failed'
|
|
95
|
+
})
|
|
96
|
+
).subscribe()
|
|
97
|
+
```
|
|
23
98
|
|
|
24
|
-
|
|
99
|
+
### notify() Options
|
|
100
|
+
|
|
101
|
+
| Option | Type | Description |
|
|
102
|
+
|--------|------|-------------|
|
|
103
|
+
| `loadingMessage` | string | Message during loading |
|
|
104
|
+
| `loadingType` | NotificationType | Type for loading notification |
|
|
105
|
+
| `successMessage` | string | Message on success |
|
|
106
|
+
| `successType` | NotificationType | Type for success notification |
|
|
107
|
+
| `successDuration` | number | Duration for success (ms, 0 = persistent) |
|
|
108
|
+
| `errorMessage` | string \| (err) => string | Message on error |
|
|
109
|
+
| `errorType` | NotificationType | Type for error notification |
|
|
110
|
+
| `errorDuration` | number | Duration for error (ms, 0 = persistent) |
|
|
111
|
+
| `autoDismissLoading` | boolean | Auto-dismiss loading on complete |
|
|
112
|
+
|
|
113
|
+
## Components
|
|
114
|
+
|
|
115
|
+
### Notification Container
|
|
116
|
+
|
|
117
|
+
```html
|
|
25
118
|
<sch-notification-container
|
|
26
119
|
position="top-right|top-left|bottom-right|bottom-left|top-center|bottom-center"
|
|
27
|
-
max-visible-notifications="2"
|
|
28
|
-
play-sound="true|false"
|
|
29
|
-
audio-volume="0.1">
|
|
120
|
+
max-visible-notifications="2"
|
|
121
|
+
play-sound="true|false"
|
|
122
|
+
audio-volume="0.1">
|
|
30
123
|
</sch-notification-container>
|
|
124
|
+
```
|
|
31
125
|
|
|
32
|
-
|
|
126
|
+
### Individual Notification (used internally)
|
|
127
|
+
|
|
128
|
+
```html
|
|
33
129
|
<sch-notification
|
|
34
130
|
title="Title"
|
|
35
131
|
message="Message text"
|
|
36
132
|
type="info|success|warning|error"
|
|
37
|
-
duration="5000"
|
|
133
|
+
duration="5000"
|
|
38
134
|
closable="true"
|
|
39
135
|
play-sound="true"
|
|
40
|
-
|
|
136
|
+
show-progress="false"
|
|
137
|
+
@close>
|
|
41
138
|
</sch-notification>
|
|
139
|
+
```
|
|
42
140
|
|
|
43
|
-
|
|
44
|
-
// Basic usage
|
|
45
|
-
$notification.success("Operation completed successfully");
|
|
141
|
+
## Examples
|
|
46
142
|
|
|
47
|
-
|
|
48
|
-
|
|
143
|
+
```js
|
|
144
|
+
// Basic notifications
|
|
145
|
+
$notify.success("Operation completed")
|
|
146
|
+
$notify.error("Failed to save", { duration: 5000 })
|
|
147
|
+
$notify.info() // Just icon, no message
|
|
49
148
|
|
|
50
|
-
//
|
|
51
|
-
$
|
|
52
|
-
|
|
53
|
-
duration: 10000,
|
|
54
|
-
closable: true
|
|
55
|
-
});
|
|
149
|
+
// Persistent notification
|
|
150
|
+
const id = $notify.persistent("Processing...")
|
|
151
|
+
// Later: $notify.dismiss(id)
|
|
56
152
|
|
|
57
|
-
//
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
//
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
//
|
|
153
|
+
// API with loading state
|
|
154
|
+
fetchData().pipe(
|
|
155
|
+
notify({
|
|
156
|
+
loadingMessage: 'Fetching...',
|
|
157
|
+
successMessage: 'Data loaded!',
|
|
158
|
+
errorMessage: 'Failed'
|
|
159
|
+
})
|
|
160
|
+
).subscribe()
|
|
161
|
+
|
|
162
|
+
// File upload with progress
|
|
163
|
+
upload(file).pipe(
|
|
164
|
+
notify({
|
|
165
|
+
loadingMessage: 'Uploading file...',
|
|
166
|
+
successMessage: 'Upload complete!',
|
|
167
|
+
successDuration: 3000,
|
|
168
|
+
errorMessage: (err) => `Upload failed: ${err.message}`,
|
|
169
|
+
errorDuration: 0 // Persistent error
|
|
170
|
+
})
|
|
171
|
+
).subscribe()
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
## Setup
|
|
175
|
+
|
|
176
|
+
Add the notification container once in your app layout:
|
|
177
|
+
|
|
178
|
+
```html
|
|
74
179
|
<sch-notification-container
|
|
75
180
|
position="top-right"
|
|
76
181
|
max-visible-notifications="3"
|
|
77
182
|
play-sound="true">
|
|
78
183
|
</sch-notification-container>
|
|
79
|
-
```
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Progress Indication
|
|
187
|
+
|
|
188
|
+
- Notifications automatically show a progress bar when `duration > 0` (countdown)
|
|
189
|
+
- When using `notify()` operator, shows indeterminate progress during loading
|
|
190
|
+
- Detects progress in observable emissions:
|
|
191
|
+
- `{ progress: 50 }` - Shows "Loading... (50%)"
|
|
192
|
+
- `{ loaded: 500, total: 1000 }` - Shows "Loading... (50%)"
|
|
@@ -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-
|
|
5
|
-
import "./tailwind.mixin-
|
|
4
|
+
import { $ as x } from "./litElement.mixin-BMewYv9c.js";
|
|
5
|
+
import "./tailwind.mixin-BTGoGfEI.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-
|
|
75
|
+
//# sourceMappingURL=animated-text-Bns9oiIU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animated-text-D26Fv13t.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-Bns9oiIU.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":";;;;;;;;;;;AAsBA,IAAqBA,IAArB,cAAkDC,EAAYC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;EAA9D,cAAAC;AAAAC,UAAAA,GAAAC,SAAAA,GAoB6BC,KAAAC,OAAO,WACPD,KAAAE,QAAQ,GACRF,KAAAG,UAAU,IACVH,KAAAI,WAAW,KACZJ,KAAAK,QAAQ,CAAC,GAAG,CAAA,GACZL,KAAAM,UAAU,CAAC,GAAG,CAAA,GACdN,KAAAO,aAAa,CAAC,UAAU,QACxBP,KAAAQ,aAAa,CAAC,SAAS,KAAA,GACvBR,KAAAS,aAAa,CAAC,GAAG,CAAA,GACjBT,KAAAU,UAAU,CAAC,KAAK,CAAA,GACdV,KAAAW,gBAAAA;AAAAA,EAAgB;AAAA,EAO7C,aAAaC,GAAAA;AACZ,UAAMC,IAAOD,EAAQE,sBAAAA;AACrB,WACCD,EAAKE,OAAO,KACZF,EAAKG,QAAQ,KACbH,EAAKI,WAAWC,OAAOC,eAAeC,SAASC,gBAAgBC,iBAC/DT,EAAKU,UAAUL,OAAOM,cAAcJ,SAASC,gBAAgBI;AAAAA,EAE/D;AAAA,EAEA,MAAA,eAAMC;AAEL1B,SAAK2B,QAAQC,YAAY5B,KAAK6B,YAAY,CAAA,EAAGC,YAAaC,QAAQ,OAAO,gCAAA,GAGzEC,EAECC,EAAS,EAAA,EAAIC,KACZC,EAAAA,EAAU,GACVC,EAAO,MAAA;AACN,YAAMvB,IAAOb,KAAKc,sBAAAA;AAClB,aAAOD,EAAKwB,QAAQ,KAAKxB,EAAKyB,SAAS;AAAA,IAAA,CAAA,GAExCC,EAAK,CAAA,CAAA,GAGNC,EAAUtB,QAAQ,QAAA,EAAUgB,KAC3BO,EAAa,GAAA,QAAc,EAC1BC,SAAAA,IACAC,UAAAA,GAAU,CAAA,GAEXR,IAAU,GACVS,EAAI,MAAM5C,KAAK6C,aAAa7C,IAAAA,CAAAA,GAC5B8C,EAAAA,GACAC,EAAIC,CAAAA,MAAAA;AAAAA,OAEEA,KAAchD,KAAKW,iBACvBsC,MAAMC,KAAKlD,KAAK2B,QAAQwB,QAAAA,EAAUC,QAASC,CAAAA,MAAAA;AAC1CA,QAAAA,EAAOC,MAAMhD,UAAU;AAAA,MAAA,CAAA;AAAA,IAAA,CAAA,GAI1B8B,SAAuBS,CAAAA,GAEvB7C,KAAKW,gBAAgBoC,EAAAA,IAAQR,EAAK,CAAA,GAClCQ,EAAI,EACHQ,MAAM,MAAA;AAEWvD,WAAKwD,WAAYC,iBAA8B,cAAA,EAEvDL,QAAQ,CAACC,GAAQK,MAAAA;AAGxB,cAAMC,IAAgB;AAAA,8BACC3D,KAAKO,WAAW,CAAA,CAAA,KAAOP,KAAKQ,WAAW,CAAA,CAAA,KAAOR,KAAKS,WAAW,CAAA,CAAA;AAAA,0BAClET,KAAKU,QAAQ,CAAA,CAAA;AAAA,wBACfV,KAAKK,MAAM,CAAA,CAAA;AAAA,iBAGtBuD,IAAc;AAAA,8BACG5D,KAAKO,WAAW,CAAA,CAAA,KAAOP,KAAKQ,WAAW,CAAA,CAAA,KAAOR,KAAKS,WAAW,CAAA,CAAA;AAAA,0BAClET,KAAKU,QAAQ,CAAA,CAAA;AAAA,wBACfV,KAAKK,MAAM,CAAA,CAAA;AAAA,iBAQtBwD,IAAwB,CAC7B,EAAEC,WAAWH,GAAerD,SAASyD,OAAO/D,KAAKM,QAAQ,CAAA,CAAA,EAAA,GACzD,EAAEwD,WAAWF,GAAatD,SAASyD,OAAO/D,KAAKM,QAAQ,CAAA,CAAA,EAAA,CAAA;AAGxD+C,QAAAA,EAAOW,QAAQH,GAAW,EACzBzD,UAAUJ,KAAKI,UACf6D,QAXyC,EACzCC,SAAS,iCAAA,EAUSlE,KAAKC,IAAAA,KAAS,YAChCC,OAAOF,KAAKE,QAAQwD,IAAI1D,KAAKG,SAC7BgE,MAAM,WAAA,CAAA;AAAA,MAAA,CAAA;AAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAMVC,UAAAA;AAAAA,EACH;AAAA,EAEA,SAAAC;AACC,WAAOC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,EASR;AAAA;AAnH4BC,EAAA,CAA3BC,EAAS,EAAEC,MAAMV,OAAAA,CAAAA,CAAAA,GApBErE,EAoBQgF,WAAA,QAAA,CAAA,GACAH,EAAA,CAA3BC,EAAS,EAAEC,MAAME,OAAAA,CAAAA,CAAAA,GArBEjF,EAqBQgF,WAAA,SAAA,CAAA,GACAH,EAAA,CAA3BC,EAAS,EAAEC,MAAME,OAAAA,CAAAA,CAAAA,GAtBEjF,EAsBQgF,WAAA,WAAA,CAAA,GACAH,EAAA,CAA3BC,EAAS,EAAEC,MAAME,OAAAA,CAAAA,CAAAA,GAvBEjF,EAuBQgF,WAAA,YAAA,CAAA,GACDH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,MAAAA,CAAAA,CAAAA,GAxBEvD,EAwBOgF,WAAA,SAAA,CAAA,GACAH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,MAAAA,CAAAA,CAAAA,GAzBEvD,EAyBOgF,WAAA,WAAA,CAAA,GACAH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,WA1BEvD,EA0BOgF,WAAA,cAAA,CAAA,GACAH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,MAAAA,CAAAA,CAAAA,GA3BEvD,EA2BOgF,WAAA,cAAA,CAAA,GACAH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,MAAAA,CAAAA,CAAAA,GA5BEvD,EA4BOgF,WAAA,cAAA,CAAA,GACAH,EAAA,CAA1BC,EAAS,EAAEC,MAAMxB,MAAAA,CAAAA,CAAAA,GA7BEvD,EA6BOgF,WAAA,WAAA,CAAA,GACEH,EAAA,CAA5BC,EAAS,EAAEC,MAAMG,QAAAA,CAAAA,CAAAA,GA9BElF,EA8BSgF,WAAA,iBAAA,IAEPH,EAAA,CAArBM,EAAAA,CAAAA,GAhCmBnF,EAgCEgF,WAAA,eAAA,CAAA,GACHH,EAAA,CAAlBO,EAAM,UAAA,CAAA,GAjCapF,EAiCDgF,WAAA,WAAA,CAAA,GACJH,EAAA,CAAdO,EAAM,MAAA,CAAA,GAlCapF,EAkCLgF,WAAA,OAAA,CAAA,GAlCKhF,IAArB6E,EAAA,CADCQ,EAAc,wBAAA,CAAA,GACMrF,CAAAA;"}
|
|
@@ -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-
|
|
1
|
+
"use strict";const e=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const h=require("./litElement.mixin-Brn_lsa3.cjs");require("./tailwind.mixin-KC3Nl9kj.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-
|
|
37
|
+
//# sourceMappingURL=animated-text-CHUcj2G2.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animated-text-CtXY3MHV.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-CHUcj2G2.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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"}
|
package/dist/animated-text.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./animated-text-
|
|
1
|
+
"use strict";require("./animated-text-CHUcj2G2.cjs");
|
|
2
2
|
//# sourceMappingURL=animated-text.cjs.map
|
package/dist/animated-text.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./animated-text-
|
|
1
|
+
import "./animated-text-Bns9oiIU.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-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./area.component-BTZcyqR5.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
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Subject as J, ReplaySubject as A, distinctUntilChanged as y, shareReplay as C, skip as P, map as i, filter as h, catchError as c, EMPTY as m, zip as U, fromEvent as $, of as u, bufferTime as L, tap as S, timeout as M, merge as q, switchMap as b, take as k, takeUntil as R, from as F } from "rxjs";
|
|
2
2
|
import "lit/directives/class-map.js";
|
|
3
3
|
import "lit/directives/style-map.js";
|
|
4
|
-
import { $ as H } from "./litElement.mixin-
|
|
5
|
-
import "./tailwind.mixin-
|
|
4
|
+
import { $ as H } from "./litElement.mixin-BMewYv9c.js";
|
|
5
|
+
import "./tailwind.mixin-BTGoGfEI.js";
|
|
6
6
|
import { property as v, customElement as x } from "lit/decorators.js";
|
|
7
7
|
import { css as I, html as B } from "lit";
|
|
8
8
|
import { l as T } from "./index-CuY8m6ta.js";
|
|
9
|
-
const N = new J(),
|
|
9
|
+
const N = new J(), z = "FINDING_MORTIES", D = "HERE_RICKY", E = /* @__PURE__ */ new WeakMap();
|
|
10
10
|
class w {
|
|
11
11
|
constructor() {
|
|
12
|
-
this.prettyURL = !1, this.mode = "HISTORY", this.request = new A(1), this.current = /* @__PURE__ */ new Map(), this.$current = new A(1), this.enableHistoryMode = !0, this.findingMortiesEvent = new CustomEvent(
|
|
12
|
+
this.prettyURL = !1, this.mode = "HISTORY", this.request = new A(1), this.current = /* @__PURE__ */ new Map(), this.$current = new A(1), this.enableHistoryMode = !0, this.findingMortiesEvent = new CustomEvent(z), this.disposed = !1, this.isProcessingPopstate = !1, this.$current.next(this.current), this.$current.subscribe((t) => {
|
|
13
13
|
this.disposed || t.forEach((e, s) => {
|
|
14
14
|
this.getOrCreateAreaSubject(s).next(e);
|
|
15
15
|
});
|
|
@@ -67,7 +67,7 @@ class w {
|
|
|
67
67
|
return this.props(t).pipe(i((s) => s[e]), h((s) => s !== void 0), y(), i((s) => s), c((s) => m));
|
|
68
68
|
}
|
|
69
69
|
find() {
|
|
70
|
-
return U([$(window,
|
|
70
|
+
return U([$(window, D).pipe(i((t) => t.detail), L(0)), u(1).pipe(S(() => window.dispatchEvent(this.findingMortiesEvent)))]).pipe(i(([t]) => t), M(1), c(() => m));
|
|
71
71
|
}
|
|
72
72
|
push(t) {
|
|
73
73
|
if (!t.area) throw new Error("Area is required for route action");
|
|
@@ -178,9 +178,9 @@ const l = w.getInstance();
|
|
|
178
178
|
typeof window < "u" && window.addEventListener("unload", () => {
|
|
179
179
|
l.dispose();
|
|
180
180
|
});
|
|
181
|
-
var d = ((r) => (r.push = "push", r.replace = "replace", r.pop = "pop", r.silent = "silent", r))(d || {}),
|
|
181
|
+
var d = ((r) => (r.push = "push", r.replace = "replace", r.pop = "pop", r.silent = "silent", r))(d || {}), _ = Object.defineProperty, Q = Object.getOwnPropertyDescriptor, j = (r, t, e, s) => {
|
|
182
182
|
for (var a, n = s > 1 ? void 0 : s ? Q(t, e) : t, o = r.length - 1; o >= 0; o--) (a = r[o]) && (n = (s ? a(t, e, n) : a(n)) || n);
|
|
183
|
-
return s && n &&
|
|
183
|
+
return s && n && _(t, e, n), n;
|
|
184
184
|
};
|
|
185
185
|
let O = class extends H(I`
|
|
186
186
|
:host {
|
|
@@ -273,11 +273,11 @@ let O = class extends H(I`
|
|
|
273
273
|
};
|
|
274
274
|
j([v()], O.prototype, "name", 2), j([v()], O.prototype, "default", 2), O = j([x("schmancy-area")], O);
|
|
275
275
|
export {
|
|
276
|
-
|
|
277
|
-
|
|
276
|
+
z as F,
|
|
277
|
+
D as H,
|
|
278
278
|
O as S,
|
|
279
279
|
l as a,
|
|
280
280
|
d as b,
|
|
281
281
|
N as r
|
|
282
282
|
};
|
|
283
|
-
//# sourceMappingURL=area.component-
|
|
283
|
+
//# sourceMappingURL=area.component-Aur5h5TN.js.map
|