@mhmo91/schmancy 0.4.71 → 0.4.73
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/context.md +2 -3
- package/ai/directives.md +1 -1
- package/ai/steps.md +187 -9
- package/dist/ai/context.md +2 -3
- package/dist/ai/directives.md +1 -1
- package/dist/ai/steps.md +187 -9
- package/dist/{animated-text-rE-SkQgz.cjs → animated-text-CPAqO_J3.cjs} +2 -2
- package/dist/{animated-text-rE-SkQgz.cjs.map → animated-text-CPAqO_J3.cjs.map} +1 -1
- package/dist/{animated-text-CBOMltQE.js → animated-text-Dj3HHUD4.js} +3 -3
- package/dist/{animated-text-CBOMltQE.js.map → animated-text-Dj3HHUD4.js.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.js +14 -13
- package/dist/{autocomplete-CuO8ztL4.cjs → autocomplete-B3ArCTZl.cjs} +2 -2
- package/dist/{autocomplete-CuO8ztL4.cjs.map → autocomplete-B3ArCTZl.cjs.map} +1 -1
- package/dist/{autocomplete-BAcf_l63.js → autocomplete-kJ7y028b.js} +3 -3
- package/dist/{autocomplete-BAcf_l63.js.map → autocomplete-kJ7y028b.js.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/{avatar-D3gNBale.js → avatar-DI5vtg3k.js} +70 -71
- package/dist/avatar-DI5vtg3k.js.map +1 -0
- package/dist/{avatar-N3BODeY1.cjs → avatar-r7OnlyPP.cjs} +3 -3
- package/dist/avatar-r7OnlyPP.cjs.map +1 -0
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-CWXlAq65.cjs → boat-COlWXsv8.cjs} +2 -2
- package/dist/{boat-CWXlAq65.cjs.map → boat-COlWXsv8.cjs.map} +1 -1
- package/dist/{boat-BQoWbDxu.js → boat-Cp8VgFWP.js} +2 -2
- package/dist/{boat-BQoWbDxu.js.map → boat-Cp8VgFWP.js.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-DBO-neG5.js → checkbox-Cbkcvj-3.js} +2 -2
- package/dist/{checkbox-DBO-neG5.js.map → checkbox-Cbkcvj-3.js.map} +1 -1
- package/dist/{checkbox-DIYmuPtk.cjs → checkbox-u355dDEB.cjs} +2 -2
- package/dist/{checkbox-DIYmuPtk.cjs.map → checkbox-u355dDEB.cjs.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-BYE5hQQr.cjs → chips-BFn88CJs.cjs} +2 -2
- package/dist/{chips-BYE5hQQr.cjs.map → chips-BFn88CJs.cjs.map} +1 -1
- package/dist/{chips-C_7proIN.js → chips-Y5nzkBJw.js} +3 -3
- package/dist/{chips-C_7proIN.js.map → chips-Y5nzkBJw.js.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +1 -1
- package/dist/code-highlight.cjs +1 -1
- package/dist/code-highlight.js +1 -1
- package/dist/{code-preview-CzcyBpl-.cjs → code-preview-CsQWYHL5.cjs} +3 -3
- package/dist/{code-preview-CzcyBpl-.cjs.map → code-preview-CsQWYHL5.cjs.map} +1 -1
- package/dist/{code-preview-CQ-EAz9F.js → code-preview-D2peRzvQ.js} +3 -3
- package/dist/{code-preview-CQ-EAz9F.js.map → code-preview-D2peRzvQ.js.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/{context-object-K_1gDFu-.cjs → context-object-bNADqf9U.cjs} +2 -2
- package/dist/{context-object-K_1gDFu-.cjs.map → context-object-bNADqf9U.cjs.map} +1 -1
- package/dist/{context-object-CDDP4bTk.js → context-object-u5gBaozZ.js} +46 -32
- package/dist/{context-object-CDDP4bTk.js.map → context-object-u5gBaozZ.js.map} +1 -1
- package/dist/{date-range-WqwMEh16.js → date-range-DnKu_v9b.js} +4 -4
- package/dist/{date-range-WqwMEh16.js.map → date-range-DnKu_v9b.js.map} +1 -1
- package/dist/{date-range-DCghMsV8.cjs → date-range-Ya1J9HQQ.cjs} +2 -2
- package/dist/{date-range-DCghMsV8.cjs.map → date-range-Ya1J9HQQ.cjs.map} +1 -1
- package/dist/{date-range-inline-Z0ASWN4I.cjs → date-range-inline-CXBrxoim.cjs} +2 -2
- package/dist/{date-range-inline-Z0ASWN4I.cjs.map → date-range-inline-CXBrxoim.cjs.map} +1 -1
- package/dist/{date-range-inline-JgIiOHQM.js → date-range-inline-Q5qz2lG_.js} +3 -3
- package/dist/{date-range-inline-JgIiOHQM.js.map → date-range-inline-Q5qz2lG_.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-LnWlFwkK.js → delay-DVqCtHik.js} +2 -2
- package/dist/delay-DVqCtHik.js.map +1 -0
- package/dist/{delay-Ew4cphs1.cjs → delay-Dl6B_yyv.cjs} +2 -2
- package/dist/delay-Dl6B_yyv.cjs.map +1 -0
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{details-C01m-iWQ.cjs → details-LZ_GGbW-.cjs} +2 -2
- package/dist/{details-C01m-iWQ.cjs.map → details-LZ_GGbW-.cjs.map} +1 -1
- package/dist/{details-BVEV0hUx.js → details-w1ooWiKA.js} +2 -2
- package/dist/{details-BVEV0hUx.js.map → details-w1ooWiKA.js.map} +1 -1
- package/dist/details.cjs +1 -1
- package/dist/details.js +1 -1
- package/dist/{dialog-content-B_w_iJyW.js → dialog-content-B7V_S6GR.js} +4 -4
- package/dist/{dialog-content-B_w_iJyW.js.map → dialog-content-B7V_S6GR.js.map} +1 -1
- package/dist/{dialog-content-BFmy9Sbo.cjs → dialog-content-VroTT22f.cjs} +2 -2
- package/dist/{dialog-content-BFmy9Sbo.cjs.map → dialog-content-VroTT22f.cjs.map} +1 -1
- package/dist/{dialog-service-DwJ_7FB3.js → dialog-service-Dpz_NIRP.js} +2 -2
- package/dist/dialog-service-Dpz_NIRP.js.map +1 -0
- package/dist/{dialog-service-DS-aEjlX.cjs → dialog-service-Wna1JO09.cjs} +2 -2
- package/dist/dialog-service-Wna1JO09.cjs.map +1 -0
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +2 -2
- package/dist/{divider-BWG6TAr2.cjs → divider-CegpMW-2.cjs} +2 -2
- package/dist/{divider-BWG6TAr2.cjs.map → divider-CegpMW-2.cjs.map} +1 -1
- package/dist/{divider-FkKYlJY3.js → divider-OuCqxcUB.js} +3 -3
- package/dist/{divider-FkKYlJY3.js.map → divider-OuCqxcUB.js.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{dropdown-content-BStJGihR.js → dropdown-content-BuKCBydD.js} +3 -3
- package/dist/{dropdown-content-BStJGihR.js.map → dropdown-content-BuKCBydD.js.map} +1 -1
- package/dist/{dropdown-content-m1aSF-Oh.cjs → dropdown-content-f0LuoUKR.cjs} +2 -2
- package/dist/{dropdown-content-m1aSF-Oh.cjs.map → dropdown-content-f0LuoUKR.cjs.map} +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/{email-recipients-CbZNnzoj.cjs → email-recipients-BlEtpbdr.cjs} +2 -2
- package/dist/{email-recipients-CbZNnzoj.cjs.map → email-recipients-BlEtpbdr.cjs.map} +1 -1
- package/dist/{email-recipients-CpghUhQ1.js → email-recipients-CvSwxcso.js} +7 -7
- package/dist/{email-recipients-CpghUhQ1.js.map → email-recipients-CvSwxcso.js.map} +1 -1
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/{flex-BNVtJlgu.cjs → flex-Cdv04m_E.cjs} +2 -2
- package/dist/{flex-BNVtJlgu.cjs.map → flex-Cdv04m_E.cjs.map} +1 -1
- package/dist/{flex-C6yj5Sxi.js → flex-HyTTaFX9.js} +2 -2
- package/dist/{flex-C6yj5Sxi.js.map → flex-HyTTaFX9.js.map} +1 -1
- package/dist/{form-C85Qev2L.js → form-BNTXCzQo.js} +2 -2
- package/dist/{form-C85Qev2L.js.map → form-BNTXCzQo.js.map} +1 -1
- package/dist/{form-ns7c4fcj.cjs → form-CXRNS-AS.cjs} +2 -2
- package/dist/{form-ns7c4fcj.cjs.map → form-CXRNS-AS.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{formField.mixin-CKb_MTS7.js → formField.mixin-MhetZTeW.js} +2 -2
- package/dist/{formField.mixin-CKb_MTS7.js.map → formField.mixin-MhetZTeW.js.map} +1 -1
- package/dist/{formField.mixin-B3CXBJKX.cjs → formField.mixin-zezhhNIA.cjs} +2 -2
- package/dist/{formField.mixin-B3CXBJKX.cjs.map → formField.mixin-zezhhNIA.cjs.map} +1 -1
- package/dist/{icon-DKPLcbdu.js → icon-C71zn7AW.js} +2 -2
- package/dist/{icon-DKPLcbdu.js.map → icon-C71zn7AW.js.map} +1 -1
- package/dist/{icon-button-DiRex-eZ.cjs → icon-button-CO8rMFUR.cjs} +2 -2
- package/dist/{icon-button-DiRex-eZ.cjs.map → icon-button-CO8rMFUR.cjs.map} +1 -1
- package/dist/{icon-button-CIkRej0r.js → icon-button-KoYGGW6a.js} +3 -3
- package/dist/{icon-button-CIkRej0r.js.map → icon-button-KoYGGW6a.js.map} +1 -1
- package/dist/{icon-DUstfLaC.cjs → icon-e6XggWlw.cjs} +2 -2
- package/dist/{icon-DUstfLaC.cjs.map → icon-e6XggWlw.cjs.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index-CCi1otmh.cjs +2 -0
- package/dist/{index-DyJ0oDpR.cjs.map → index-CCi1otmh.cjs.map} +1 -1
- package/dist/index-CW6PhEkx.js +17 -0
- package/dist/{index-CuY8m6ta.js.map → index-CW6PhEkx.js.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +216 -215
- package/dist/{input-B7MqsI2h.cjs → input-CFvMe_KR.cjs} +2 -2
- package/dist/{input-B7MqsI2h.cjs.map → input-CFvMe_KR.cjs.map} +1 -1
- package/dist/{input-DODcsAZu.js → input-LTpT28E4.js} +3 -3
- package/dist/{input-DODcsAZu.js.map → input-LTpT28E4.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-Cx6tpiFE.js → list-CAJJTrLl.js} +2 -2
- package/dist/{list-Cx6tpiFE.js.map → list-CAJJTrLl.js.map} +1 -1
- package/dist/{list-DxduK4sb.cjs → list-D2dyHYN9.cjs} +2 -2
- package/dist/{list-DxduK4sb.cjs.map → list-D2dyHYN9.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-B12Y4mEr.cjs → litElement.mixin-4iclDbF3.cjs} +2 -2
- package/dist/{litElement.mixin-B12Y4mEr.cjs.map → litElement.mixin-4iclDbF3.cjs.map} +1 -1
- package/dist/{litElement.mixin-BZ8iGvPl.js → litElement.mixin-SeAIQuRg.js} +2 -2
- package/dist/{litElement.mixin-BZ8iGvPl.js.map → litElement.mixin-SeAIQuRg.js.map} +1 -1
- package/dist/mailbox.cjs +1 -1
- package/dist/mailbox.js +1 -1
- package/dist/{map-sgCf8pYD.cjs → map-CMkosiu4.cjs} +2 -2
- package/dist/{map-sgCf8pYD.cjs.map → map-CMkosiu4.cjs.map} +1 -1
- package/dist/{map-dT8yp1iK.js → map-DwMX_LnY.js} +2 -2
- package/dist/{map-dT8yp1iK.js.map → map-DwMX_LnY.js.map} +1 -1
- package/dist/map.cjs +1 -1
- package/dist/map.js +1 -1
- package/dist/{media-CgH0D5rY.js → media-B98kFRvT.js} +2 -2
- package/dist/{media-CgH0D5rY.js.map → media-B98kFRvT.js.map} +1 -1
- package/dist/{media-CwjupDLj.cjs → media-DxbLFhc5.cjs} +2 -2
- package/dist/{media-CwjupDLj.cjs.map → media-DxbLFhc5.cjs.map} +1 -1
- package/dist/{menu-oZRtmhVd.js → menu-ChMwBut9.js} +3 -3
- package/dist/{menu-oZRtmhVd.js.map → menu-ChMwBut9.js.map} +1 -1
- package/dist/{menu-X25Q7tpY.cjs → menu-DTRbll_X.cjs} +2 -2
- package/dist/{menu-X25Q7tpY.cjs.map → menu-DTRbll_X.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-y0T4rXdS.js → notification-service-BiEAwrL6.js} +4 -4
- package/dist/notification-service-BiEAwrL6.js.map +1 -0
- package/dist/{notification-service-kLTt3JtW.cjs → notification-service-h3GuXar7.cjs} +2 -2
- package/dist/notification-service-h3GuXar7.cjs.map +1 -0
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +2 -2
- package/dist/{notify-BnjvURrc.js → notify-1NUgv3Qz.js} +2 -2
- package/dist/{notify-BnjvURrc.js.map → notify-1NUgv3Qz.js.map} +1 -1
- package/dist/{notify-EGStToeW.cjs → notify-CP9929J0.cjs} +2 -2
- package/dist/{notify-EGStToeW.cjs.map → notify-CP9929J0.cjs.map} +1 -1
- package/dist/{option-CD1NSUXu.js → option-DvEFWkrm.js} +2 -2
- package/dist/{option-CD1NSUXu.js.map → option-DvEFWkrm.js.map} +1 -1
- package/dist/{option-D4_WBCWz.cjs → option-VxlQIYFR.cjs} +2 -2
- package/dist/{option-D4_WBCWz.cjs.map → option-VxlQIYFR.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{payment-card-form-96Rw6cLf.cjs → payment-card-form-CAPM_YfT.cjs} +2 -2
- package/dist/{payment-card-form-96Rw6cLf.cjs.map → payment-card-form-CAPM_YfT.cjs.map} +1 -1
- package/dist/{payment-card-form-lWlhuDb3.js → payment-card-form-CEd08rns.js} +3 -3
- package/dist/{payment-card-form-lWlhuDb3.js.map → payment-card-form-CEd08rns.js.map} +1 -1
- package/dist/{progress-BkxGzGOm.cjs → progress-Bu8wtPRI.cjs} +2 -2
- package/dist/{progress-BkxGzGOm.cjs.map → progress-Bu8wtPRI.cjs.map} +1 -1
- package/dist/{progress-DGk9tC4y.js → progress-CL4SPk5b.js} +2 -2
- package/dist/{progress-DGk9tC4y.js.map → progress-CL4SPk5b.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{radio-button-DHM38A7h.js → radio-button-B087BeTl.js} +3 -3
- package/dist/{radio-button-DHM38A7h.js.map → radio-button-B087BeTl.js.map} +1 -1
- package/dist/{radio-button-w9ZxzEPa.cjs → radio-button-vz9nLR-m.cjs} +2 -2
- package/dist/{radio-button-w9ZxzEPa.cjs.map → radio-button-vz9nLR-m.cjs.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/route.component-D1xujH8n.js +343 -0
- package/dist/route.component-D1xujH8n.js.map +1 -0
- package/dist/route.component-ke_nkgvP.cjs +12 -0
- package/dist/route.component-ke_nkgvP.cjs.map +1 -0
- package/dist/rxjs-utils.cjs +1 -1
- package/dist/rxjs-utils.js +1 -1
- package/dist/{schmancy-steps-container-WYO4SOrb.js → schmancy-steps-container-CEvpeKIe.js} +12 -12
- package/dist/schmancy-steps-container-CEvpeKIe.js.map +1 -0
- package/dist/{schmancy-steps-container-CPSL_8H0.cjs → schmancy-steps-container-DvSClSo1.cjs} +6 -6
- package/dist/schmancy-steps-container-DvSClSo1.cjs.map +1 -0
- package/dist/{select-CxCcgqW_.cjs → select-4VXPMU8r.cjs} +2 -2
- package/dist/{select-CxCcgqW_.cjs.map → select-4VXPMU8r.cjs.map} +1 -1
- package/dist/{select-bDAzyQOZ.js → select-BoUYZPyl.js} +3 -3
- package/dist/{select-bDAzyQOZ.js.map → select-BoUYZPyl.js.map} +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{selector-hook-CIpuCUbr.js → selector-hook-ChImS_JT.js} +2 -2
- package/dist/{selector-hook-CIpuCUbr.js.map → selector-hook-ChImS_JT.js.map} +1 -1
- package/dist/{selector-hook-DB8RFC1y.cjs → selector-hook-cqmAutda.cjs} +2 -2
- package/dist/{selector-hook-DB8RFC1y.cjs.map → selector-hook-cqmAutda.cjs.map} +1 -1
- package/dist/{sheet-pO6PmiAf.js → sheet-C6djCmPV.js} +4 -4
- package/dist/{sheet-pO6PmiAf.js.map → sheet-C6djCmPV.js.map} +1 -1
- package/dist/{sheet-Bm0ukLXt.cjs → sheet-IfHxyIo_.cjs} +2 -2
- package/dist/{sheet-Bm0ukLXt.cjs.map → sheet-IfHxyIo_.cjs.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +2 -2
- package/dist/{sheet.service-DV9xNhS8.cjs → sheet.service-DR9KJfMa.cjs} +2 -2
- package/dist/sheet.service-DR9KJfMa.cjs.map +1 -0
- package/dist/{sheet.service-ieSXeqCj.js → sheet.service-DZGMoIHy.js} +2 -2
- package/dist/sheet.service-DZGMoIHy.js.map +1 -0
- package/dist/{slider-BwXXp74f.cjs → slider-BfNNQ6qI.cjs} +2 -2
- package/dist/{slider-BwXXp74f.cjs.map → slider-BfNNQ6qI.cjs.map} +1 -1
- package/dist/{slider-CxZGMYF-.js → slider-DERHNjqI.js} +3 -3
- package/dist/{slider-CxZGMYF-.js.map → slider-DERHNjqI.js.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-b3VWC6It.js → spinner-BOdUWwXq.js} +2 -2
- package/dist/{spinner-b3VWC6It.js.map → spinner-BOdUWwXq.js.map} +1 -1
- package/dist/{spinner-nN77H00p.cjs → spinner-Bip-lfsc.cjs} +2 -2
- package/dist/{spinner-nN77H00p.cjs.map → spinner-Bip-lfsc.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/store.cjs +1 -1
- package/dist/store.js +2 -2
- package/dist/{surface-Cm8zYK5d.cjs → surface--Nh6Q896.cjs} +2 -2
- package/dist/{surface-Cm8zYK5d.cjs.map → surface--Nh6Q896.cjs.map} +1 -1
- package/dist/{surface-C2WjztRc.js → surface-CyhVK7JG.js} +2 -2
- package/dist/{surface-C2WjztRc.js.map → surface-CyhVK7JG.js.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-Dp7npAuy.js → table-DnPQ0zCd.js} +2 -2
- package/dist/{table-Dp7npAuy.js.map → table-DnPQ0zCd.js.map} +1 -1
- package/dist/{table-BfhuaB9J.cjs → table-x9dbc3AY.cjs} +2 -2
- package/dist/{table-BfhuaB9J.cjs.map → table-x9dbc3AY.cjs.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-compatibility-CA-wWRoe.cjs → tabs-compatibility-D3HfZRKv.cjs} +2 -2
- package/dist/{tabs-compatibility-CA-wWRoe.cjs.map → tabs-compatibility-D3HfZRKv.cjs.map} +1 -1
- package/dist/{tabs-compatibility-U4cq8X3I.js → tabs-compatibility-Dazz1g0Q.js} +2 -2
- package/dist/{tabs-compatibility-U4cq8X3I.js.map → tabs-compatibility-Dazz1g0Q.js.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-Bwf86oi5.cjs +2 -0
- package/dist/{tailwind.mixin-BlZIIaOE.cjs.map → tailwind.mixin-Bwf86oi5.cjs.map} +1 -1
- package/dist/tailwind.mixin-kvywknTU.js +43 -0
- package/dist/{tailwind.mixin-D2DVHS9V.js.map → tailwind.mixin-kvywknTU.js.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-BRNj3tvi.js → textarea-bHJFDEva.js} +2 -2
- package/dist/{textarea-BRNj3tvi.js.map → textarea-bHJFDEva.js.map} +1 -1
- package/dist/{textarea-CxZKoXaU.cjs → textarea-xRo6a5-Y.cjs} +2 -2
- package/dist/{textarea-CxZKoXaU.cjs.map → textarea-xRo6a5-Y.cjs.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-N_Wt3bos.js → theme-button-BPFuZSBY.js} +2 -2
- package/dist/{theme-button-N_Wt3bos.js.map → theme-button-BPFuZSBY.js.map} +1 -1
- package/dist/{theme-button-MrIoOFEB.cjs → theme-button-lvD9uCTZ.cjs} +2 -2
- package/dist/{theme-button-MrIoOFEB.cjs.map → theme-button-lvD9uCTZ.cjs.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-6VfET_t-.js → theme.component-C-PfGTcN.js} +2 -2
- package/dist/{theme.component-6VfET_t-.js.map → theme.component-C-PfGTcN.js.map} +1 -1
- package/dist/{theme.component-B_EubPsq.cjs → theme.component-DkcM8QzH.cjs} +2 -2
- package/dist/{theme.component-B_EubPsq.cjs.map → theme.component-DkcM8QzH.cjs.map} +1 -1
- package/dist/theme.js +1 -1
- package/dist/{timezone-DR_4m9Cc.js → timezone-BDSbTYTk.js} +3 -3
- package/dist/{timezone-DR_4m9Cc.js.map → timezone-BDSbTYTk.js.map} +1 -1
- package/dist/{timezone-BVd9UEba.cjs → timezone-OLjylRB7.cjs} +2 -2
- package/dist/{timezone-BVd9UEba.cjs.map → timezone-OLjylRB7.cjs.map} +1 -1
- package/dist/{tooltip-BpPHc8Wr.js → tooltip-CWiU3SEA.js} +2 -2
- package/dist/{tooltip-BpPHc8Wr.js.map → tooltip-CWiU3SEA.js.map} +1 -1
- package/dist/{tooltip-DOQVLRaH.cjs → tooltip-iM0cfzsV.cjs} +2 -2
- package/dist/{tooltip-DOQVLRaH.cjs.map → tooltip-iM0cfzsV.cjs.map} +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/{tree-BANkyLn7.cjs → tree-CXIrKI2O.cjs} +2 -2
- package/dist/{tree-BANkyLn7.cjs.map → tree-CXIrKI2O.cjs.map} +1 -1
- package/dist/{tree-C5zu8wXc.js → tree-JUf2hHiW.js} +2 -2
- package/dist/{tree-C5zu8wXc.js.map → tree-JUf2hHiW.js.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-CdztqkoR.js → typewriter-DQuULTla.js} +4 -4
- package/dist/{typewriter-CdztqkoR.js.map → typewriter-DQuULTla.js.map} +1 -1
- package/dist/{typewriter-DS0D0UZM.cjs → typewriter-YW7NGa6H.cjs} +2 -2
- package/dist/{typewriter-DS0D0UZM.cjs.map → typewriter-YW7NGa6H.cjs.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-C8vZfuLF.cjs → typography-CkLztts5.cjs} +2 -2
- package/dist/{typography-C8vZfuLF.cjs.map → typography-CkLztts5.cjs.map} +1 -1
- package/dist/{typography-o9FJ6Lzo.js → typography-kXb173Io.js} +2 -2
- package/dist/{typography-o9FJ6Lzo.js.map → typography-kXb173Io.js.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/package.json +1 -1
- package/types/src/area/area.component.d.ts +25 -5
- package/types/src/area/index.d.ts +1 -0
- package/types/src/area/route.component.d.ts +43 -0
- package/types/src/area/route.test.d.ts +20 -0
- package/types/src/steps/schmancy-steps-container.d.ts +9 -0
- package/types/src/store/context-collection.d.ts +26 -2
- package/dist/area.component-C86pi_TT.js +0 -283
- package/dist/area.component-C86pi_TT.js.map +0 -1
- package/dist/area.component-nX_dCv4R.cjs +0 -8
- package/dist/area.component-nX_dCv4R.cjs.map +0 -1
- package/dist/avatar-D3gNBale.js.map +0 -1
- package/dist/avatar-N3BODeY1.cjs.map +0 -1
- package/dist/delay-Ew4cphs1.cjs.map +0 -1
- package/dist/delay-LnWlFwkK.js.map +0 -1
- package/dist/dialog-service-DS-aEjlX.cjs.map +0 -1
- package/dist/dialog-service-DwJ_7FB3.js.map +0 -1
- package/dist/index-CuY8m6ta.js +0 -19
- package/dist/index-DyJ0oDpR.cjs +0 -2
- package/dist/notification-service-kLTt3JtW.cjs.map +0 -1
- package/dist/notification-service-y0T4rXdS.js.map +0 -1
- package/dist/schmancy-steps-container-CPSL_8H0.cjs.map +0 -1
- package/dist/schmancy-steps-container-WYO4SOrb.js.map +0 -1
- package/dist/sheet.service-DV9xNhS8.cjs.map +0 -1
- package/dist/sheet.service-ieSXeqCj.js.map +0 -1
- package/dist/tailwind.mixin-BlZIIaOE.cjs +0 -2
- package/dist/tailwind.mixin-D2DVHS9V.js +0 -43
package/ai/context.md
CHANGED
|
@@ -28,7 +28,7 @@ A context is a reactive container that:
|
|
|
28
28
|
### Basic Syntax
|
|
29
29
|
|
|
30
30
|
```typescript
|
|
31
|
-
import { createContext } from '@mhmo91/schmancy
|
|
31
|
+
import { createContext } from '@mhmo91/schmancy'
|
|
32
32
|
|
|
33
33
|
export const contextName = createContext<Type>(
|
|
34
34
|
initialValue, // Default value
|
|
@@ -131,8 +131,7 @@ user: AuthUser | null | undefined
|
|
|
131
131
|
### Basic Component Integration
|
|
132
132
|
|
|
133
133
|
```typescript
|
|
134
|
-
import { $LitElement } from '@mhmo91/schmancy
|
|
135
|
-
import { select } from '@mhmo91/schmancy/context'
|
|
134
|
+
import { $LitElement, select } from '@mhmo91/schmancy'
|
|
136
135
|
import { userContext, productsContext } from './contexts'
|
|
137
136
|
|
|
138
137
|
@customElement('my-component')
|
package/ai/directives.md
CHANGED
package/ai/steps.md
CHANGED
|
@@ -192,19 +192,197 @@ schmancy-step[position="2"] {
|
|
|
192
192
|
}
|
|
193
193
|
```
|
|
194
194
|
|
|
195
|
-
## Programmatic Control
|
|
195
|
+
## Programmatic Control with Lit
|
|
196
196
|
|
|
197
|
+
Use reactive state properties and property binding for declarative step control:
|
|
198
|
+
|
|
199
|
+
```typescript
|
|
200
|
+
import { LitElement, html } from 'lit';
|
|
201
|
+
import { customElement, state } from 'lit/decorators.js';
|
|
202
|
+
|
|
203
|
+
@customElement('my-wizard')
|
|
204
|
+
export class MyWizard extends LitElement {
|
|
205
|
+
// Reactive state for current step
|
|
206
|
+
@state() private currentStep = 1;
|
|
207
|
+
|
|
208
|
+
// Navigation methods
|
|
209
|
+
goNext() {
|
|
210
|
+
this.currentStep++;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
goPrevious() {
|
|
214
|
+
if (this.currentStep > 1) {
|
|
215
|
+
this.currentStep--;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
goToStep(step: number) {
|
|
220
|
+
this.currentStep = step;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
render() {
|
|
224
|
+
return html`
|
|
225
|
+
<!-- Use dot syntax for reactive property binding -->
|
|
226
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
227
|
+
<schmancy-step position="1" title="First Step">
|
|
228
|
+
<p>Content for step 1</p>
|
|
229
|
+
</schmancy-step>
|
|
230
|
+
|
|
231
|
+
<schmancy-step position="2" title="Second Step">
|
|
232
|
+
<p>Content for step 2</p>
|
|
233
|
+
</schmancy-step>
|
|
234
|
+
|
|
235
|
+
<schmancy-step position="3" title="Final Step">
|
|
236
|
+
<p>Content for step 3</p>
|
|
237
|
+
</schmancy-step>
|
|
238
|
+
</schmancy-steps-container>
|
|
239
|
+
|
|
240
|
+
<!-- Navigation buttons -->
|
|
241
|
+
<div class="flex gap-4 mt-4">
|
|
242
|
+
<schmancy-button
|
|
243
|
+
@click=${() => this.goPrevious()}
|
|
244
|
+
?disabled=${this.currentStep === 1}>
|
|
245
|
+
Previous
|
|
246
|
+
</schmancy-button>
|
|
247
|
+
|
|
248
|
+
<schmancy-button
|
|
249
|
+
@click=${() => this.goNext()}
|
|
250
|
+
?disabled=${this.currentStep === 3}>
|
|
251
|
+
Next
|
|
252
|
+
</schmancy-button>
|
|
253
|
+
</div>
|
|
254
|
+
`;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
## Navigation Patterns
|
|
260
|
+
|
|
261
|
+
### Reactive State Binding
|
|
262
|
+
|
|
263
|
+
The steps component uses reactive property binding to manage navigation. Always use the `.currentStep` property binding with the dot syntax for proper reactivity:
|
|
264
|
+
|
|
265
|
+
```typescript
|
|
266
|
+
// ✅ CORRECT - Reactive property binding
|
|
267
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
268
|
+
|
|
269
|
+
// ❌ WRONG - Attribute binding (won't update reactively)
|
|
270
|
+
<schmancy-steps-container currentStep="${this.currentStep}">
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Button-Based Navigation
|
|
274
|
+
|
|
275
|
+
Navigation should be controlled through external buttons or logic, NOT by adding click handlers to step components:
|
|
276
|
+
|
|
277
|
+
```typescript
|
|
278
|
+
@customElement('checkout-flow')
|
|
279
|
+
export class CheckoutFlow extends LitElement {
|
|
280
|
+
@state() private currentStep = 1;
|
|
281
|
+
@state() private maxSteps = 4;
|
|
282
|
+
|
|
283
|
+
// Validation before navigation
|
|
284
|
+
async validateAndProceed() {
|
|
285
|
+
const isValid = await this.validateCurrentStep();
|
|
286
|
+
if (isValid && this.currentStep < this.maxSteps) {
|
|
287
|
+
this.currentStep++;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
render() {
|
|
292
|
+
return html`
|
|
293
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
294
|
+
<schmancy-step position="1" title="Cart">
|
|
295
|
+
<!-- Cart content -->
|
|
296
|
+
</schmancy-step>
|
|
297
|
+
|
|
298
|
+
<schmancy-step position="2" title="Shipping">
|
|
299
|
+
<!-- Shipping form -->
|
|
300
|
+
</schmancy-step>
|
|
301
|
+
|
|
302
|
+
<schmancy-step position="3" title="Payment">
|
|
303
|
+
<!-- Payment form -->
|
|
304
|
+
</schmancy-step>
|
|
305
|
+
|
|
306
|
+
<schmancy-step position="4" title="Confirm">
|
|
307
|
+
<!-- Order summary -->
|
|
308
|
+
</schmancy-step>
|
|
309
|
+
</schmancy-steps-container>
|
|
310
|
+
|
|
311
|
+
<!-- Navigation controls -->
|
|
312
|
+
<div class="flex justify-between mt-6">
|
|
313
|
+
<schmancy-button
|
|
314
|
+
variant="text"
|
|
315
|
+
@click=${() => this.currentStep--}
|
|
316
|
+
?disabled=${this.currentStep === 1}>
|
|
317
|
+
Back
|
|
318
|
+
</schmancy-button>
|
|
319
|
+
|
|
320
|
+
<schmancy-button
|
|
321
|
+
variant="filled"
|
|
322
|
+
@click=${() => this.validateAndProceed()}>
|
|
323
|
+
${this.currentStep === this.maxSteps ? 'Complete' : 'Continue'}
|
|
324
|
+
</schmancy-button>
|
|
325
|
+
</div>
|
|
326
|
+
`;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
### Programmatic Navigation Examples
|
|
332
|
+
|
|
333
|
+
```typescript
|
|
334
|
+
// Jump to specific step
|
|
335
|
+
handleSkipToReview() {
|
|
336
|
+
this.currentStep = 4;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// Reset to beginning
|
|
340
|
+
handleReset() {
|
|
341
|
+
this.currentStep = 1;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
// Navigate based on condition
|
|
345
|
+
handleConditionalNav() {
|
|
346
|
+
if (this.userType === 'premium') {
|
|
347
|
+
this.currentStep = 3; // Skip step 2 for premium users
|
|
348
|
+
} else {
|
|
349
|
+
this.currentStep = 2;
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
## Common Mistakes to Avoid
|
|
355
|
+
|
|
356
|
+
### ❌ Using querySelector
|
|
197
357
|
```javascript
|
|
198
|
-
//
|
|
199
|
-
const
|
|
358
|
+
// WRONG - Avoid imperative DOM queries
|
|
359
|
+
const container = this.shadowRoot.querySelector('schmancy-steps-container');
|
|
360
|
+
container.currentStep = 2;
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
### ❌ Adding Click Handlers to Steps
|
|
364
|
+
```html
|
|
365
|
+
<!-- WRONG - Steps handle their own click behavior internally -->
|
|
366
|
+
<schmancy-step @click=${() => this.goToStep(2)} position="2" title="Step 2">
|
|
367
|
+
```
|
|
200
368
|
|
|
201
|
-
|
|
202
|
-
|
|
369
|
+
### ❌ Using Attribute Binding Instead of Property Binding
|
|
370
|
+
```html
|
|
371
|
+
<!-- WRONG - Won't update reactively -->
|
|
372
|
+
<schmancy-steps-container currentStep="${this.currentStep}">
|
|
373
|
+
|
|
374
|
+
<!-- CORRECT - Use dot syntax for properties -->
|
|
375
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
### ❌ Directly Manipulating Step State
|
|
379
|
+
```javascript
|
|
380
|
+
// WRONG - Don't directly modify step properties
|
|
381
|
+
const step = this.shadowRoot.querySelector('schmancy-step[position="2"]');
|
|
382
|
+
step.completed = true;
|
|
203
383
|
|
|
204
|
-
//
|
|
205
|
-
|
|
206
|
-
console.log('Step changed to:', e.detail.step);
|
|
207
|
-
});
|
|
384
|
+
// CORRECT - Let the container manage step states
|
|
385
|
+
this.currentStep = 3; // This automatically marks step 2 as complete
|
|
208
386
|
```
|
|
209
387
|
|
|
210
388
|
## Best Practices
|
package/dist/ai/context.md
CHANGED
|
@@ -28,7 +28,7 @@ A context is a reactive container that:
|
|
|
28
28
|
### Basic Syntax
|
|
29
29
|
|
|
30
30
|
```typescript
|
|
31
|
-
import { createContext } from '@mhmo91/schmancy
|
|
31
|
+
import { createContext } from '@mhmo91/schmancy'
|
|
32
32
|
|
|
33
33
|
export const contextName = createContext<Type>(
|
|
34
34
|
initialValue, // Default value
|
|
@@ -131,8 +131,7 @@ user: AuthUser | null | undefined
|
|
|
131
131
|
### Basic Component Integration
|
|
132
132
|
|
|
133
133
|
```typescript
|
|
134
|
-
import { $LitElement } from '@mhmo91/schmancy
|
|
135
|
-
import { select } from '@mhmo91/schmancy/context'
|
|
134
|
+
import { $LitElement, select } from '@mhmo91/schmancy'
|
|
136
135
|
import { userContext, productsContext } from './contexts'
|
|
137
136
|
|
|
138
137
|
@customElement('my-component')
|
package/dist/ai/directives.md
CHANGED
package/dist/ai/steps.md
CHANGED
|
@@ -192,19 +192,197 @@ schmancy-step[position="2"] {
|
|
|
192
192
|
}
|
|
193
193
|
```
|
|
194
194
|
|
|
195
|
-
## Programmatic Control
|
|
195
|
+
## Programmatic Control with Lit
|
|
196
196
|
|
|
197
|
+
Use reactive state properties and property binding for declarative step control:
|
|
198
|
+
|
|
199
|
+
```typescript
|
|
200
|
+
import { LitElement, html } from 'lit';
|
|
201
|
+
import { customElement, state } from 'lit/decorators.js';
|
|
202
|
+
|
|
203
|
+
@customElement('my-wizard')
|
|
204
|
+
export class MyWizard extends LitElement {
|
|
205
|
+
// Reactive state for current step
|
|
206
|
+
@state() private currentStep = 1;
|
|
207
|
+
|
|
208
|
+
// Navigation methods
|
|
209
|
+
goNext() {
|
|
210
|
+
this.currentStep++;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
goPrevious() {
|
|
214
|
+
if (this.currentStep > 1) {
|
|
215
|
+
this.currentStep--;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
goToStep(step: number) {
|
|
220
|
+
this.currentStep = step;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
render() {
|
|
224
|
+
return html`
|
|
225
|
+
<!-- Use dot syntax for reactive property binding -->
|
|
226
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
227
|
+
<schmancy-step position="1" title="First Step">
|
|
228
|
+
<p>Content for step 1</p>
|
|
229
|
+
</schmancy-step>
|
|
230
|
+
|
|
231
|
+
<schmancy-step position="2" title="Second Step">
|
|
232
|
+
<p>Content for step 2</p>
|
|
233
|
+
</schmancy-step>
|
|
234
|
+
|
|
235
|
+
<schmancy-step position="3" title="Final Step">
|
|
236
|
+
<p>Content for step 3</p>
|
|
237
|
+
</schmancy-step>
|
|
238
|
+
</schmancy-steps-container>
|
|
239
|
+
|
|
240
|
+
<!-- Navigation buttons -->
|
|
241
|
+
<div class="flex gap-4 mt-4">
|
|
242
|
+
<schmancy-button
|
|
243
|
+
@click=${() => this.goPrevious()}
|
|
244
|
+
?disabled=${this.currentStep === 1}>
|
|
245
|
+
Previous
|
|
246
|
+
</schmancy-button>
|
|
247
|
+
|
|
248
|
+
<schmancy-button
|
|
249
|
+
@click=${() => this.goNext()}
|
|
250
|
+
?disabled=${this.currentStep === 3}>
|
|
251
|
+
Next
|
|
252
|
+
</schmancy-button>
|
|
253
|
+
</div>
|
|
254
|
+
`;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
## Navigation Patterns
|
|
260
|
+
|
|
261
|
+
### Reactive State Binding
|
|
262
|
+
|
|
263
|
+
The steps component uses reactive property binding to manage navigation. Always use the `.currentStep` property binding with the dot syntax for proper reactivity:
|
|
264
|
+
|
|
265
|
+
```typescript
|
|
266
|
+
// ✅ CORRECT - Reactive property binding
|
|
267
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
268
|
+
|
|
269
|
+
// ❌ WRONG - Attribute binding (won't update reactively)
|
|
270
|
+
<schmancy-steps-container currentStep="${this.currentStep}">
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Button-Based Navigation
|
|
274
|
+
|
|
275
|
+
Navigation should be controlled through external buttons or logic, NOT by adding click handlers to step components:
|
|
276
|
+
|
|
277
|
+
```typescript
|
|
278
|
+
@customElement('checkout-flow')
|
|
279
|
+
export class CheckoutFlow extends LitElement {
|
|
280
|
+
@state() private currentStep = 1;
|
|
281
|
+
@state() private maxSteps = 4;
|
|
282
|
+
|
|
283
|
+
// Validation before navigation
|
|
284
|
+
async validateAndProceed() {
|
|
285
|
+
const isValid = await this.validateCurrentStep();
|
|
286
|
+
if (isValid && this.currentStep < this.maxSteps) {
|
|
287
|
+
this.currentStep++;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
render() {
|
|
292
|
+
return html`
|
|
293
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
294
|
+
<schmancy-step position="1" title="Cart">
|
|
295
|
+
<!-- Cart content -->
|
|
296
|
+
</schmancy-step>
|
|
297
|
+
|
|
298
|
+
<schmancy-step position="2" title="Shipping">
|
|
299
|
+
<!-- Shipping form -->
|
|
300
|
+
</schmancy-step>
|
|
301
|
+
|
|
302
|
+
<schmancy-step position="3" title="Payment">
|
|
303
|
+
<!-- Payment form -->
|
|
304
|
+
</schmancy-step>
|
|
305
|
+
|
|
306
|
+
<schmancy-step position="4" title="Confirm">
|
|
307
|
+
<!-- Order summary -->
|
|
308
|
+
</schmancy-step>
|
|
309
|
+
</schmancy-steps-container>
|
|
310
|
+
|
|
311
|
+
<!-- Navigation controls -->
|
|
312
|
+
<div class="flex justify-between mt-6">
|
|
313
|
+
<schmancy-button
|
|
314
|
+
variant="text"
|
|
315
|
+
@click=${() => this.currentStep--}
|
|
316
|
+
?disabled=${this.currentStep === 1}>
|
|
317
|
+
Back
|
|
318
|
+
</schmancy-button>
|
|
319
|
+
|
|
320
|
+
<schmancy-button
|
|
321
|
+
variant="filled"
|
|
322
|
+
@click=${() => this.validateAndProceed()}>
|
|
323
|
+
${this.currentStep === this.maxSteps ? 'Complete' : 'Continue'}
|
|
324
|
+
</schmancy-button>
|
|
325
|
+
</div>
|
|
326
|
+
`;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
### Programmatic Navigation Examples
|
|
332
|
+
|
|
333
|
+
```typescript
|
|
334
|
+
// Jump to specific step
|
|
335
|
+
handleSkipToReview() {
|
|
336
|
+
this.currentStep = 4;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// Reset to beginning
|
|
340
|
+
handleReset() {
|
|
341
|
+
this.currentStep = 1;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
// Navigate based on condition
|
|
345
|
+
handleConditionalNav() {
|
|
346
|
+
if (this.userType === 'premium') {
|
|
347
|
+
this.currentStep = 3; // Skip step 2 for premium users
|
|
348
|
+
} else {
|
|
349
|
+
this.currentStep = 2;
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
## Common Mistakes to Avoid
|
|
355
|
+
|
|
356
|
+
### ❌ Using querySelector
|
|
197
357
|
```javascript
|
|
198
|
-
//
|
|
199
|
-
const
|
|
358
|
+
// WRONG - Avoid imperative DOM queries
|
|
359
|
+
const container = this.shadowRoot.querySelector('schmancy-steps-container');
|
|
360
|
+
container.currentStep = 2;
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
### ❌ Adding Click Handlers to Steps
|
|
364
|
+
```html
|
|
365
|
+
<!-- WRONG - Steps handle their own click behavior internally -->
|
|
366
|
+
<schmancy-step @click=${() => this.goToStep(2)} position="2" title="Step 2">
|
|
367
|
+
```
|
|
200
368
|
|
|
201
|
-
|
|
202
|
-
|
|
369
|
+
### ❌ Using Attribute Binding Instead of Property Binding
|
|
370
|
+
```html
|
|
371
|
+
<!-- WRONG - Won't update reactively -->
|
|
372
|
+
<schmancy-steps-container currentStep="${this.currentStep}">
|
|
373
|
+
|
|
374
|
+
<!-- CORRECT - Use dot syntax for properties -->
|
|
375
|
+
<schmancy-steps-container .currentStep=${this.currentStep}>
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
### ❌ Directly Manipulating Step State
|
|
379
|
+
```javascript
|
|
380
|
+
// WRONG - Don't directly modify step properties
|
|
381
|
+
const step = this.shadowRoot.querySelector('schmancy-step[position="2"]');
|
|
382
|
+
step.completed = true;
|
|
203
383
|
|
|
204
|
-
//
|
|
205
|
-
|
|
206
|
-
console.log('Step changed to:', e.detail.step);
|
|
207
|
-
});
|
|
384
|
+
// CORRECT - Let the container manage step states
|
|
385
|
+
this.currentStep = 3; // This automatically marks step 2 as complete
|
|
208
386
|
```
|
|
209
387
|
|
|
210
388
|
## Best Practices
|
|
@@ -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-4iclDbF3.cjs");require("./tailwind.mixin-Bwf86oi5.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-CPAqO_J3.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animated-text-rE-SkQgz.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-CPAqO_J3.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,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-SeAIQuRg.js";
|
|
5
|
+
import "./tailwind.mixin-kvywknTU.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-Dj3HHUD4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animated-text-CBOMltQE.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-Dj3HHUD4.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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"}
|
package/dist/animated-text.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./animated-text-
|
|
1
|
+
"use strict";require("./animated-text-CPAqO_J3.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-Dj3HHUD4.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("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./route.component-ke_nkgvP.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}),Object.defineProperty(exports,"SchmancyRoute",{enumerable:!0,get:()=>t.SchmancyRoute}),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
|