@mhmo91/schmancy 0.4.91 → 0.4.93
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/area.md +181 -968
- package/dist/ai/area.md +181 -968
- package/dist/{animated-text-xlSXYbRY.cjs → animated-text-Dqrad7cv.cjs} +2 -2
- package/dist/{animated-text-xlSXYbRY.cjs.map → animated-text-Dqrad7cv.cjs.map} +1 -1
- package/dist/{animated-text-CE25uxIq.js → animated-text-mNos9Gw8.js} +3 -3
- package/dist/{animated-text-CE25uxIq.js.map → animated-text-mNos9Gw8.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 +1 -1
- package/dist/{autocomplete-BrcVARei.js → autocomplete-CMxXFeC_.js} +35 -35
- package/dist/autocomplete-CMxXFeC_.js.map +1 -0
- package/dist/{autocomplete-BJKuzyUg.cjs → autocomplete-CzYbBt-K.cjs} +6 -6
- package/dist/autocomplete-CzYbBt-K.cjs.map +1 -0
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/{avatar-CH6xAiaz.cjs → avatar-CGGPvamo.cjs} +21 -69
- package/dist/avatar-CGGPvamo.cjs.map +1 -0
- package/dist/{avatar-2XjX7xHh.js → avatar-CH-EctMv.js} +156 -203
- package/dist/avatar-CH-EctMv.js.map +1 -0
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-pedGlD9G.cjs → boat-feSRWu7P.cjs} +2 -2
- package/dist/{boat-pedGlD9G.cjs.map → boat-feSRWu7P.cjs.map} +1 -1
- package/dist/{boat-DjkboEvz.js → boat-xekVVZab.js} +2 -2
- package/dist/{boat-DjkboEvz.js.map → boat-xekVVZab.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-tC2o2KPO.js → checkbox-DTfIF2XH.js} +2 -2
- package/dist/{checkbox-tC2o2KPO.js.map → checkbox-DTfIF2XH.js.map} +1 -1
- package/dist/{checkbox-BFsHGpGO.cjs → checkbox-DwBANLb6.cjs} +2 -2
- package/dist/{checkbox-BFsHGpGO.cjs.map → checkbox-DwBANLb6.cjs.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-CaQfMLUC.js → chips-7TbOS1By.js} +56 -67
- package/dist/{chips-CaQfMLUC.js.map → chips-7TbOS1By.js.map} +1 -1
- package/dist/{chips-BUDd-Se_.cjs → chips-DORDPg5b.cjs} +10 -21
- package/dist/{chips-BUDd-Se_.cjs.map → chips-DORDPg5b.cjs.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-dFXCzXKx.js → code-preview-DWDE2pUe.js} +2 -2
- package/dist/{code-preview-dFXCzXKx.js.map → code-preview-DWDE2pUe.js.map} +1 -1
- package/dist/{code-preview-DpoxEUM7.cjs → code-preview-DqFuxCjV.cjs} +2 -2
- package/dist/{code-preview-DpoxEUM7.cjs.map → code-preview-DqFuxCjV.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-BMlo50YP.cjs → date-range-DwdO0vNv.cjs} +2 -2
- package/dist/{date-range-BMlo50YP.cjs.map → date-range-DwdO0vNv.cjs.map} +1 -1
- package/dist/{date-range-inline-FIDbZiar.cjs → date-range-inline-B1WaAPY6.cjs} +2 -2
- package/dist/{date-range-inline-FIDbZiar.cjs.map → date-range-inline-B1WaAPY6.cjs.map} +1 -1
- package/dist/{date-range-inline-BX0qnRUj.js → date-range-inline-yYh4Uw-k.js} +3 -3
- package/dist/{date-range-inline-BX0qnRUj.js.map → date-range-inline-yYh4Uw-k.js.map} +1 -1
- package/dist/date-range-inline.cjs +1 -1
- package/dist/date-range-inline.js +1 -1
- package/dist/{date-range-DDr3pL_X.js → date-range-s2EHTGQM.js} +4 -4
- package/dist/{date-range-DDr3pL_X.js.map → date-range-s2EHTGQM.js.map} +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-CGWe8yFV.js → delay-D19Mpit_.js} +2 -2
- package/dist/{delay-CGWe8yFV.js.map → delay-D19Mpit_.js.map} +1 -1
- package/dist/{delay-xtpIck-Z.cjs → delay-l2gPaJoH.cjs} +2 -2
- package/dist/{delay-xtpIck-Z.cjs.map → delay-l2gPaJoH.cjs.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{details-DcxMoj1H.js → details-CEu4oDP7.js} +2 -2
- package/dist/{details-DcxMoj1H.js.map → details-CEu4oDP7.js.map} +1 -1
- package/dist/{details-4QmeW0uP.cjs → details-LNuoItTO.cjs} +2 -2
- package/dist/{details-4QmeW0uP.cjs.map → details-LNuoItTO.cjs.map} +1 -1
- package/dist/details.cjs +1 -1
- package/dist/details.js +1 -1
- package/dist/{dialog-content-CusT_84B.cjs → dialog-content-6wVlm9RL.cjs} +2 -2
- package/dist/{dialog-content-CusT_84B.cjs.map → dialog-content-6wVlm9RL.cjs.map} +1 -1
- package/dist/{dialog-content-BfaVybIp.js → dialog-content-CQ3Xi4_b.js} +4 -4
- package/dist/{dialog-content-BfaVybIp.js.map → dialog-content-CQ3Xi4_b.js.map} +1 -1
- package/dist/dialog-service-CgJH8clD.cjs +2 -0
- package/dist/dialog-service-CgJH8clD.cjs.map +1 -0
- package/dist/{dialog-service-DwhuICgc.js → dialog-service-PQ9ssbsY.js} +53 -47
- package/dist/dialog-service-PQ9ssbsY.js.map +1 -0
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +2 -2
- package/dist/directives.cjs +1 -1
- package/dist/directives.js +6 -4
- package/dist/directives.js.map +1 -1
- package/dist/divider-5OCZNBJ7.js +22 -0
- package/dist/divider-5OCZNBJ7.js.map +1 -0
- package/dist/divider-auzbAyaR.cjs +2 -0
- package/dist/divider-auzbAyaR.cjs.map +1 -0
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{dropdown-content-CDAX41cX.cjs → dropdown-content-BI541LSK.cjs} +5 -10
- package/dist/dropdown-content-BI541LSK.cjs.map +1 -0
- package/dist/{dropdown-content-DA6wal4A.js → dropdown-content-BLZviV1z.js} +40 -41
- package/dist/dropdown-content-BLZviV1z.js.map +1 -0
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/{email-recipients-OBogh7Uo.cjs → email-recipients-DizBUcJ2.cjs} +24 -24
- package/dist/email-recipients-DizBUcJ2.cjs.map +1 -0
- package/dist/{email-recipients-BFhkzOzI.js → email-recipients-JeGKXcBj.js} +141 -144
- package/dist/email-recipients-JeGKXcBj.js.map +1 -0
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/{flex-B7tsIv60.cjs → flex-BN7HdoGW.cjs} +2 -2
- package/dist/{flex-B7tsIv60.cjs.map → flex-BN7HdoGW.cjs.map} +1 -1
- package/dist/{flex-C2ER0I8V.js → flex-ro_7y02P.js} +2 -2
- package/dist/{flex-C2ER0I8V.js.map → flex-ro_7y02P.js.map} +1 -1
- package/dist/{form-Bkg6Q_f5.js → form-BqGTSZpr.js} +11 -23
- package/dist/form-BqGTSZpr.js.map +1 -0
- package/dist/form-DT6f2KNH.cjs +2 -0
- package/dist/form-DT6f2KNH.cjs.map +1 -0
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{formField.mixin-Bp77n7z6.cjs → formField.mixin-CSy0dZ7Q.cjs} +2 -2
- package/dist/{formField.mixin-Bp77n7z6.cjs.map → formField.mixin-CSy0dZ7Q.cjs.map} +1 -1
- package/dist/{formField.mixin-as1q6J0T.js → formField.mixin-DtegNyKv.js} +2 -2
- package/dist/{formField.mixin-as1q6J0T.js.map → formField.mixin-DtegNyKv.js.map} +1 -1
- package/dist/{icon-CLzd6U7v.js → icon-CSxxuGxN.js} +2 -2
- package/dist/{icon-CLzd6U7v.js.map → icon-CSxxuGxN.js.map} +1 -1
- package/dist/{icon-BYd5Gta6.cjs → icon-GaL2G_1M.cjs} +2 -2
- package/dist/{icon-BYd5Gta6.cjs.map → icon-GaL2G_1M.cjs.map} +1 -1
- package/dist/{icon-button-U9gN6pT3.js → icon-button-B0jLowAy.js} +5 -5
- package/dist/icon-button-B0jLowAy.js.map +1 -0
- package/dist/{icon-button-DNg0mA1P.cjs → icon-button-DkvwZOHF.cjs} +4 -4
- package/dist/icon-button-DkvwZOHF.cjs.map +1 -0
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +162 -160
- package/dist/index.js.map +1 -1
- package/dist/{input-CX1jyK-P.js → input-D0c-WhDi.js} +40 -44
- package/dist/input-D0c-WhDi.js.map +1 -0
- package/dist/input-fPWOjQgP.cjs +51 -0
- package/dist/input-fPWOjQgP.cjs.map +1 -0
- 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/lazy-DObpkuL6.cjs.map +1 -1
- package/dist/lazy-E2LCDm7n.js.map +1 -1
- package/dist/{list-BMR8QRo0.js → list-3Ity7MFT.js} +2 -2
- package/dist/{list-BMR8QRo0.js.map → list-3Ity7MFT.js.map} +1 -1
- package/dist/{list-DZPMOfrH.cjs → list-CbXXjBUM.cjs} +2 -2
- package/dist/{list-DZPMOfrH.cjs.map → list-CbXXjBUM.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-De6F4bUs.cjs → litElement.mixin-DFG5Ckp7.cjs} +2 -2
- package/dist/{litElement.mixin-De6F4bUs.cjs.map → litElement.mixin-DFG5Ckp7.cjs.map} +1 -1
- package/dist/{litElement.mixin-C9e4ffot.js → litElement.mixin-Efwm8boA.js} +2 -2
- package/dist/{litElement.mixin-C9e4ffot.js.map → litElement.mixin-Efwm8boA.js.map} +1 -1
- package/dist/mailbox.cjs +1 -1
- package/dist/mailbox.js +1 -1
- package/dist/{map-E2MqAGzQ.js → map-BCQwFMpm.js} +2 -2
- package/dist/{map-E2MqAGzQ.js.map → map-BCQwFMpm.js.map} +1 -1
- package/dist/{map-ORYWFuxx.cjs → map-DeRVVjHa.cjs} +2 -2
- package/dist/{map-ORYWFuxx.cjs.map → map-DeRVVjHa.cjs.map} +1 -1
- package/dist/map.cjs +1 -1
- package/dist/map.js +1 -1
- package/dist/media-CL9LNHic.cjs +226 -0
- package/dist/media-CL9LNHic.cjs.map +1 -0
- package/dist/media-nVQjNoX7.js +307 -0
- package/dist/media-nVQjNoX7.js.map +1 -0
- package/dist/{menu-Cm1jwIsB.js → menu-CusvB2dY.js} +3 -3
- package/dist/{menu-Cm1jwIsB.js.map → menu-CusvB2dY.js.map} +1 -1
- package/dist/{menu-DJuRr_aL.cjs → menu-Delwe6al.cjs} +2 -2
- package/dist/{menu-DJuRr_aL.cjs.map → menu-Delwe6al.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-CTlTTCbP.cjs → notification-service-BwcUY8O5.cjs} +7 -7
- package/dist/notification-service-BwcUY8O5.cjs.map +1 -0
- package/dist/{notification-service-CiE9ITno.js → notification-service-DiTgelcm.js} +65 -60
- package/dist/notification-service-DiTgelcm.js.map +1 -0
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +2 -2
- package/dist/{notify-Da9oU7Jf.cjs → notify-C81e8flx.cjs} +2 -2
- package/dist/{notify-Da9oU7Jf.cjs.map → notify-C81e8flx.cjs.map} +1 -1
- package/dist/{notify-DA2N7Zvr.js → notify-JNbirYT5.js} +2 -2
- package/dist/{notify-DA2N7Zvr.js.map → notify-JNbirYT5.js.map} +1 -1
- package/dist/{option-D8BWjBZV.cjs → option-D4XcuvRK.cjs} +5 -5
- package/dist/option-D4XcuvRK.cjs.map +1 -0
- package/dist/{option-svgZq3Hw.js → option-dihFw6qv.js} +12 -12
- package/dist/option-dihFw6qv.js.map +1 -0
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{payment-card-form-18_ZqMt5.cjs → payment-card-form-CIm57Nfa.cjs} +2 -2
- package/dist/{payment-card-form-18_ZqMt5.cjs.map → payment-card-form-CIm57Nfa.cjs.map} +1 -1
- package/dist/{payment-card-form-BU57CRS3.js → payment-card-form-pDuTrWgZ.js} +3 -3
- package/dist/{payment-card-form-BU57CRS3.js.map → payment-card-form-pDuTrWgZ.js.map} +1 -1
- package/dist/{progress-B3-p0pjn.cjs → progress-BETtTl0y.cjs} +2 -2
- package/dist/{progress-B3-p0pjn.cjs.map → progress-BETtTl0y.cjs.map} +1 -1
- package/dist/{progress-y5p1ltND.js → progress-C4o_zWvg.js} +2 -2
- package/dist/{progress-y5p1ltND.js.map → progress-C4o_zWvg.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{radio-button-DINgMpZS.js → radio-button-DaSKbB-Z.js} +27 -27
- package/dist/radio-button-DaSKbB-Z.js.map +1 -0
- package/dist/radio-button-h6y0tWJQ.cjs +41 -0
- package/dist/radio-button-h6y0tWJQ.cjs.map +1 -0
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/{ripple-BumgqsDT.js → ripple-Cy-nvO8W.js} +24 -22
- package/dist/ripple-Cy-nvO8W.js.map +1 -0
- package/dist/ripple-DqQrvaTe.cjs +16 -0
- package/dist/ripple-DqQrvaTe.cjs.map +1 -0
- package/dist/route.component-BaefEO15.js +320 -0
- package/dist/route.component-BaefEO15.js.map +1 -0
- package/dist/route.component-DzBfI9eE.cjs +12 -0
- package/dist/route.component-DzBfI9eE.cjs.map +1 -0
- package/dist/{schmancy-steps-container-DLHL9mKo.cjs → schmancy-steps-container-DpM5Kvt3.cjs} +2 -2
- package/dist/{schmancy-steps-container-DLHL9mKo.cjs.map → schmancy-steps-container-DpM5Kvt3.cjs.map} +1 -1
- package/dist/{schmancy-steps-container-Dhq8V1Jy.js → schmancy-steps-container-uRaJiCZE.js} +2 -2
- package/dist/{schmancy-steps-container-Dhq8V1Jy.js.map → schmancy-steps-container-uRaJiCZE.js.map} +1 -1
- package/dist/select-ClFVeWZA.cjs +57 -0
- package/dist/select-ClFVeWZA.cjs.map +1 -0
- package/dist/{select-DXcdeHjY.js → select-uQ5xnOKn.js} +17 -16
- package/dist/select-uQ5xnOKn.js.map +1 -0
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{sheet-BJ_P15Uh.cjs → sheet-CEcMgg-2.cjs} +2 -2
- package/dist/{sheet-BJ_P15Uh.cjs.map → sheet-CEcMgg-2.cjs.map} +1 -1
- package/dist/{sheet-DFY331sa.js → sheet-CvvdxIUZ.js} +3 -3
- package/dist/{sheet-DFY331sa.js.map → sheet-CvvdxIUZ.js.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{slider-6VTsJJth.js → slider-DyxIZ-hn.js} +3 -3
- package/dist/{slider-6VTsJJth.js.map → slider-DyxIZ-hn.js.map} +1 -1
- package/dist/{slider-C8YC6MCP.cjs → slider-T8sYw1p-.cjs} +2 -2
- package/dist/{slider-C8YC6MCP.cjs.map → slider-T8sYw1p-.cjs.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-B4DEcQwc.js → spinner-D9fC8P3H.js} +2 -2
- package/dist/{spinner-B4DEcQwc.js.map → spinner-D9fC8P3H.js.map} +1 -1
- package/dist/{spinner-BCCCQMeS.cjs → spinner-DJviKuwJ.cjs} +2 -2
- package/dist/{spinner-BCCCQMeS.cjs.map → spinner-DJviKuwJ.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/{surface-CrfGHJEt.cjs → surface-B_SGQ1f7.cjs} +2 -2
- package/dist/{surface-CrfGHJEt.cjs.map → surface-B_SGQ1f7.cjs.map} +1 -1
- package/dist/{surface-B9w3VOkr.js → surface-CUyYCpFl.js} +2 -2
- package/dist/{surface-B9w3VOkr.js.map → surface-CUyYCpFl.js.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-ClOXrs2P.cjs → table-C-sWuoAy.cjs} +2 -2
- package/dist/{table-ClOXrs2P.cjs.map → table-C-sWuoAy.cjs.map} +1 -1
- package/dist/{table-pJ6NI0tm.js → table-D7p7a-Ag.js} +2 -2
- package/dist/{table-pJ6NI0tm.js.map → table-D7p7a-Ag.js.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-compatibility-Cv0h7xqj.js → tabs-compatibility-Dn8bSEvA.js} +2 -2
- package/dist/{tabs-compatibility-Cv0h7xqj.js.map → tabs-compatibility-Dn8bSEvA.js.map} +1 -1
- package/dist/{tabs-compatibility-BgtRf8jN.cjs → tabs-compatibility-XoF2vpv5.cjs} +2 -2
- package/dist/{tabs-compatibility-BgtRf8jN.cjs.map → tabs-compatibility-XoF2vpv5.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-C13RR5x6.js +43 -0
- package/dist/{tailwind.mixin-CUBQFucF.js.map → tailwind.mixin-C13RR5x6.js.map} +1 -1
- package/dist/tailwind.mixin-O9jmUJ7m.cjs +2 -0
- package/dist/{tailwind.mixin-tQzjJi1o.cjs.map → tailwind.mixin-O9jmUJ7m.cjs.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/textarea-9rSwC34M.cjs +44 -0
- package/dist/{textarea-DsfpxxrR.cjs.map → textarea-9rSwC34M.cjs.map} +1 -1
- package/dist/{textarea-VzUmYJ8k.js → textarea-Dsqg9ted.js} +4 -3
- package/dist/{textarea-VzUmYJ8k.js.map → textarea-Dsqg9ted.js.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-Cc8uLdST.cjs → theme-button-BTH2A59w.cjs} +2 -2
- package/dist/{theme-button-Cc8uLdST.cjs.map → theme-button-BTH2A59w.cjs.map} +1 -1
- package/dist/{theme-button-Dv0mFIy1.js → theme-button-pfkAwkvY.js} +2 -2
- package/dist/{theme-button-Dv0mFIy1.js.map → theme-button-pfkAwkvY.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-CBQMtIWn.cjs → theme.component-BvoZuM2h.cjs} +3 -3
- package/dist/{theme.component-CBQMtIWn.cjs.map → theme.component-BvoZuM2h.cjs.map} +1 -1
- package/dist/{theme.component-BJkqP8OJ.js → theme.component-C3G_OrjE.js} +66 -66
- package/dist/{theme.component-BJkqP8OJ.js.map → theme.component-C3G_OrjE.js.map} +1 -1
- package/dist/theme.js +1 -1
- package/dist/{timezone-Cidrq38O.cjs → timezone-BKBME7Gq.cjs} +2 -2
- package/dist/{timezone-Cidrq38O.cjs.map → timezone-BKBME7Gq.cjs.map} +1 -1
- package/dist/{timezone-s8dLt1Tp.js → timezone-mQeoU0_O.js} +3 -3
- package/dist/{timezone-s8dLt1Tp.js.map → timezone-mQeoU0_O.js.map} +1 -1
- package/dist/tooltip-Bcun7m0S.cjs +7 -0
- package/dist/tooltip-Bcun7m0S.cjs.map +1 -0
- package/dist/{tooltip-CbKaR_7c.js → tooltip-Doh_evJW.js} +55 -55
- package/dist/tooltip-Doh_evJW.js.map +1 -0
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/{tree-BncfGRKE.cjs → tree-DpKb9Q-1.cjs} +2 -2
- package/dist/{tree-BncfGRKE.cjs.map → tree-DpKb9Q-1.cjs.map} +1 -1
- package/dist/{tree-BalOrz7r.js → tree-cl3PdPTy.js} +2 -2
- package/dist/{tree-BalOrz7r.js.map → tree-cl3PdPTy.js.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-C3nBx8M1.cjs → typewriter-QSd_xI9j.cjs} +3 -15
- package/dist/typewriter-QSd_xI9j.cjs.map +1 -0
- package/dist/{typewriter-CdsU7g5m.js → typewriter-peuqmq9f.js} +64 -76
- package/dist/typewriter-peuqmq9f.js.map +1 -0
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-D-unaqtW.js → typography-BkuzOZ0g.js} +2 -2
- package/dist/{typography-D-unaqtW.js.map → typography-BkuzOZ0g.js.map} +1 -1
- package/dist/{typography-C2kzFuZS.cjs → typography-BoI8HgTE.cjs} +2 -2
- package/dist/{typography-C2kzFuZS.cjs.map → typography-BoI8HgTE.cjs.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 +8 -3
- package/types/src/area/area.service.d.ts +1 -0
- package/types/src/area/route.component.d.ts +4 -5
- package/types/src/area/utils.d.ts +2 -1
- package/types/src/card/card.d.ts +55 -3
- package/types/src/directives/guard.d.ts +1 -0
- package/types/src/directives/index.d.ts +1 -0
- package/types/src/directives/ripple.d.ts +2 -1
- package/types/src/dropdown/dropdown-component.d.ts +1 -0
- package/types/src/form/form-v2.d.ts +0 -1
- package/types/src/form/form.d.ts +0 -1
- package/types/src/mailbox/email-editor.d.ts +1 -2
- package/types/src/notification/notification-audio.d.ts +9 -0
- package/types/src/notification/notification-container.d.ts +1 -0
- package/dist/autocomplete-BJKuzyUg.cjs.map +0 -1
- package/dist/autocomplete-BrcVARei.js.map +0 -1
- package/dist/avatar-2XjX7xHh.js.map +0 -1
- package/dist/avatar-CH6xAiaz.cjs.map +0 -1
- package/dist/dialog-service-DwhuICgc.js.map +0 -1
- package/dist/dialog-service-juvsgc5X.cjs +0 -2
- package/dist/dialog-service-juvsgc5X.cjs.map +0 -1
- package/dist/divider-BHA8zjDr.js +0 -103
- package/dist/divider-BHA8zjDr.js.map +0 -1
- package/dist/divider-C-kmaW3d.cjs +0 -83
- package/dist/divider-C-kmaW3d.cjs.map +0 -1
- package/dist/dropdown-content-CDAX41cX.cjs.map +0 -1
- package/dist/dropdown-content-DA6wal4A.js.map +0 -1
- package/dist/email-recipients-BFhkzOzI.js.map +0 -1
- package/dist/email-recipients-OBogh7Uo.cjs.map +0 -1
- package/dist/form-Bkg6Q_f5.js.map +0 -1
- package/dist/form-yJc1T0GI.cjs +0 -14
- package/dist/form-yJc1T0GI.cjs.map +0 -1
- package/dist/icon-button-DNg0mA1P.cjs.map +0 -1
- package/dist/icon-button-U9gN6pT3.js.map +0 -1
- package/dist/input-CX1jyK-P.js.map +0 -1
- package/dist/input-DYp4wudB.cjs +0 -51
- package/dist/input-DYp4wudB.cjs.map +0 -1
- package/dist/media-BmSmYaBR.cjs +0 -100
- package/dist/media-BmSmYaBR.cjs.map +0 -1
- package/dist/media-CRKWL-3S.js +0 -151
- package/dist/media-CRKWL-3S.js.map +0 -1
- package/dist/notification-service-CTlTTCbP.cjs.map +0 -1
- package/dist/notification-service-CiE9ITno.js.map +0 -1
- package/dist/option-D8BWjBZV.cjs.map +0 -1
- package/dist/option-svgZq3Hw.js.map +0 -1
- package/dist/radio-button-DINgMpZS.js.map +0 -1
- package/dist/radio-button-Yzy01Adt.cjs +0 -41
- package/dist/radio-button-Yzy01Adt.cjs.map +0 -1
- package/dist/ripple-BumgqsDT.js.map +0 -1
- package/dist/ripple-C2BHbhcS.cjs +0 -16
- package/dist/ripple-C2BHbhcS.cjs.map +0 -1
- package/dist/route.component-C_OoXIgy.cjs +0 -12
- package/dist/route.component-C_OoXIgy.cjs.map +0 -1
- package/dist/route.component-Cfz1lAvS.js +0 -321
- package/dist/route.component-Cfz1lAvS.js.map +0 -1
- package/dist/select-DXcdeHjY.js.map +0 -1
- package/dist/select-JFsojOGZ.cjs +0 -57
- package/dist/select-JFsojOGZ.cjs.map +0 -1
- package/dist/tailwind.mixin-CUBQFucF.js +0 -43
- package/dist/tailwind.mixin-tQzjJi1o.cjs +0 -2
- package/dist/textarea-DsfpxxrR.cjs +0 -44
- package/dist/tooltip-CKhGU64R.cjs +0 -7
- package/dist/tooltip-CKhGU64R.cjs.map +0 -1
- package/dist/tooltip-CbKaR_7c.js.map +0 -1
- package/dist/typewriter-C3nBx8M1.cjs.map +0 -1
- package/dist/typewriter-CdsU7g5m.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-
|
|
1
|
+
{"version":3,"file":"progress-C4o_zWvg.js","sources":["../src/progress/progress.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { styleMap } from 'lit/directives/style-map.js'\n\n@customElement('schmancy-progress')\nexport default class SchmancyProgress extends TailwindElement(css`\n :host {\n display: block;\n }\n\n @keyframes indeterminate {\n 0% {\n left: -30%;\n }\n 100% {\n left: 100%;\n }\n }\n\n .indeterminate-animation {\n animation: indeterminate 1.5s infinite ease-in-out;\n }\n`) {\n @property({ type: Number, reflect: true })\n value = 0\n\n @property({ type: Number, reflect: true })\n max = 100\n\n @property({ type: Boolean, reflect: true })\n indeterminate = false\n\n @property({ type: String, reflect: true })\n size: 'sm' | 'md' | 'lg' = 'md'\n\n @property({ type: String, reflect: true })\n color: 'primary' | 'secondary' | 'tertiary' | 'error' | 'success' = 'primary'\n\n @property({ type: Boolean, reflect: true })\n glass = false\n\n private get percentage(): number {\n if (this.indeterminate) return 0\n return Math.min(100, Math.max(0, (this.value / this.max) * 100))\n }\n\n protected render() {\n const containerClasses = {\n 'w-full': true,\n 'relative': true,\n 'overflow-hidden': true,\n 'rounded-full': true,\n 'h-0.5': this.size === 'sm',\n 'h-1': this.size === 'md',\n 'h-2': this.size === 'lg',\n // Glass effect background\n 'backdrop-blur-xl': this.glass,\n 'backdrop-saturate-150': this.glass,\n 'bg-surface-container/20': this.glass && !this.indeterminate,\n 'bg-surface-container': !this.glass,\n 'shadow-[inset_0_1px_2px_0_rgba(0,0,0,0.1)]': this.glass,\n 'border': this.glass,\n 'border-outline/20': this.glass\n }\n\n const barClasses = {\n 'h-full': true,\n 'rounded-full': true,\n 'transition-all': true,\n 'duration-300': true,\n 'ease-in-out': true,\n 'relative': true,\n 'bg-primary-default': this.color === 'primary' && !this.glass,\n 'bg-secondary-default': this.color === 'secondary' && !this.glass,\n 'bg-tertiary-default': this.color === 'tertiary' && !this.glass,\n 'bg-error-default': this.color === 'error' && !this.glass,\n 'bg-success-default': this.color === 'success' && !this.glass,\n 'w-[30%]': this.indeterminate,\n 'absolute': this.indeterminate,\n 'indeterminate-animation': this.indeterminate\n }\n\n const barStyles = this.indeterminate \n ? {} \n : { width: `${this.percentage}%` }\n\n // Glass effect bar classes\n const glassBarClasses = {\n 'backdrop-blur-sm': this.glass,\n 'shadow-[0_0_20px_rgba(0,0,0,0.1)]': this.glass,\n // Use semi-transparent background colors for glass effect\n 'bg-primary-default/70': this.glass && this.color === 'primary',\n 'bg-secondary-default/70': this.glass && this.color === 'secondary',\n 'bg-tertiary-default/70': this.glass && this.color === 'tertiary',\n 'bg-error-default/70': this.glass && this.color === 'error',\n 'bg-success-default/70': this.glass && this.color === 'success',\n }\n\n return html`\n <div class=\"${classMap(containerClasses)}\">\n <div \n class=\"${classMap({...barClasses, ...glassBarClasses})}\"\n style=\"${styleMap(barStyles)}\"\n role=\"progressbar\"\n aria-valuenow=\"${this.value}\"\n aria-valuemin=\"0\"\n aria-valuemax=\"${this.max}\"\n >\n ${this.glass ? html`\n <!-- Glass shine effect -->\n <div class=\"absolute inset-0 bg-gradient-to-b from-surface-on/20 to-transparent rounded-full\"></div>\n ` : ''}\n </div>\n </div>\n `\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'schmancy-progress': SchmancyProgress\n }\n}"],"names":["SchmancyProgress","TailwindElement","css","constructor","super","arguments","this","value","max","indeterminate","size","color","glass","percentage","Math","min","render","containerClasses","relative","border","barClasses","absolute","barStyles","width","glassBarClasses","html","classMap","styleMap","__decorateClass","property","type","Number","reflect","prototype","Boolean","String","customElement"],"mappings":"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"}
|
package/dist/progress.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";require("./progress-
|
|
1
|
+
"use strict";require("./progress-BETtTl0y.cjs");
|
|
2
2
|
//# sourceMappingURL=progress.cjs.map
|
package/dist/progress.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./progress-
|
|
1
|
+
import "./progress-C4o_zWvg.js";
|
|
2
2
|
//# sourceMappingURL=progress.js.map
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { html as
|
|
2
|
-
import { property as a, customElement as
|
|
3
|
-
import { Subject as
|
|
1
|
+
import { html as u } from "lit";
|
|
2
|
+
import { property as a, customElement as m } from "lit/decorators.js";
|
|
3
|
+
import { Subject as f, takeUntil as h, fromEvent as b } from "rxjs";
|
|
4
4
|
import "lit/directives/class-map.js";
|
|
5
5
|
import "lit/directives/style-map.js";
|
|
6
|
-
import { F as
|
|
7
|
-
import { T as
|
|
8
|
-
import { when as
|
|
9
|
-
var
|
|
10
|
-
for (var
|
|
11
|
-
return s && i &&
|
|
6
|
+
import { F as v } from "./formField.mixin-DtegNyKv.js";
|
|
7
|
+
import { T as y } from "./tailwind.mixin-C13RR5x6.js";
|
|
8
|
+
import { when as g } from "lit/directives/when.js";
|
|
9
|
+
var k = Object.defineProperty, $ = Object.getOwnPropertyDescriptor, c = (e, t, l, s) => {
|
|
10
|
+
for (var o, i = s > 1 ? void 0 : s ? $(t, l) : t, r = e.length - 1; r >= 0; r--) (o = e[r]) && (i = (s ? o(t, l, i) : o(i)) || i);
|
|
11
|
+
return s && i && k(t, l, i), i;
|
|
12
12
|
};
|
|
13
|
-
let n = class extends
|
|
13
|
+
let n = class extends v(y(":host{display:inherit;position:inherit}")) {
|
|
14
14
|
constructor() {
|
|
15
|
-
super(...arguments), this.label = "", this.name = "", this.value = "", this.options = [], this.required = !1, this.selection$ = new
|
|
15
|
+
super(...arguments), this.label = "", this.name = "", this.value = "", this.options = [], this.required = !1, this.selection$ = new f();
|
|
16
16
|
}
|
|
17
17
|
connectedCallback() {
|
|
18
|
-
super.connectedCallback(), this.selection$.subscribe((e) => {
|
|
18
|
+
super.connectedCallback(), this.selection$.pipe(h(this.disconnecting)).subscribe((e) => {
|
|
19
19
|
this.value = e, this.emitChange({ value: e }), this.updateChildRadioButtons();
|
|
20
|
-
}), this
|
|
20
|
+
}), b(this, "radio-button-click").pipe(h(this.disconnecting)).subscribe((e) => {
|
|
21
21
|
this.selection$.next(e.detail.value);
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
disconnectedCallback() {
|
|
25
|
-
super.disconnectedCallback(), this.selection$?.
|
|
25
|
+
super.disconnectedCallback(), this.selection$?.complete();
|
|
26
26
|
}
|
|
27
27
|
handleSelection(e) {
|
|
28
28
|
this.selection$.next(e);
|
|
@@ -37,11 +37,11 @@ let n = class extends m(b(":host{display:inherit;position:inherit}")) {
|
|
|
37
37
|
}
|
|
38
38
|
render() {
|
|
39
39
|
const e = this.childElementCount > 0;
|
|
40
|
-
return
|
|
40
|
+
return u`
|
|
41
41
|
<div class="grid gap-4">
|
|
42
|
-
${
|
|
42
|
+
${g(this.label, () => u` <label class="text-base font-semibold text-surface-on">${this.label}</label> `)}
|
|
43
43
|
|
|
44
|
-
${e ?
|
|
44
|
+
${e ? u`<slot></slot>` : this.options?.map((t) => u`
|
|
45
45
|
<div class="flex items-center">
|
|
46
46
|
<input
|
|
47
47
|
.required=${this.required}
|
|
@@ -62,20 +62,20 @@ let n = class extends m(b(":host{display:inherit;position:inherit}")) {
|
|
|
62
62
|
`;
|
|
63
63
|
}
|
|
64
64
|
};
|
|
65
|
-
c([a({ type: String })], n.prototype, "label", 2), c([a({ type: String })], n.prototype, "name", 2), c([a({ type: String })], n.prototype, "value", 2), c([a({ type: Array })], n.prototype, "options", 2), c([a({ type: Boolean })], n.prototype, "required", 2), n = c([
|
|
66
|
-
var
|
|
67
|
-
for (var
|
|
68
|
-
return s && i &&
|
|
65
|
+
c([a({ type: String })], n.prototype, "label", 2), c([a({ type: String })], n.prototype, "name", 2), c([a({ type: String })], n.prototype, "value", 2), c([a({ type: Array })], n.prototype, "options", 2), c([a({ type: Boolean })], n.prototype, "required", 2), n = c([m("schmancy-radio-group")], n);
|
|
66
|
+
var C = Object.defineProperty, x = Object.getOwnPropertyDescriptor, p = (e, t, l, s) => {
|
|
67
|
+
for (var o, i = s > 1 ? void 0 : s ? x(t, l) : t, r = e.length - 1; r >= 0; r--) (o = e[r]) && (i = (s ? o(t, l, i) : o(i)) || i);
|
|
68
|
+
return s && i && C(t, l, i), i;
|
|
69
69
|
};
|
|
70
|
-
let d = class extends
|
|
70
|
+
let d = class extends v(y()) {
|
|
71
71
|
constructor() {
|
|
72
72
|
super(...arguments), this.value = "", this.checked = !1, this.disabled = !1, this.name = "";
|
|
73
73
|
}
|
|
74
74
|
connectedCallback() {
|
|
75
|
-
super.connectedCallback(), this
|
|
75
|
+
super.connectedCallback(), b(this, "click").pipe(h(this.disconnecting)).subscribe(this.handleClick);
|
|
76
76
|
}
|
|
77
77
|
disconnectedCallback() {
|
|
78
|
-
super.disconnectedCallback()
|
|
78
|
+
super.disconnectedCallback();
|
|
79
79
|
}
|
|
80
80
|
handleClick() {
|
|
81
81
|
if (!this.disabled)
|
|
@@ -85,7 +85,7 @@ let d = class extends m(b()) {
|
|
|
85
85
|
} else this.checked = !0, this.emitChange({ value: this.value });
|
|
86
86
|
}
|
|
87
87
|
render() {
|
|
88
|
-
return
|
|
88
|
+
return u`
|
|
89
89
|
<label class="relative flex items-start cursor-pointer">
|
|
90
90
|
<div class="flex items-center h-6">
|
|
91
91
|
<input
|
|
@@ -106,9 +106,9 @@ let d = class extends m(b()) {
|
|
|
106
106
|
`;
|
|
107
107
|
}
|
|
108
108
|
};
|
|
109
|
-
|
|
109
|
+
p([a({ type: String })], d.prototype, "value", 2), p([a({ type: Boolean, reflect: !0 })], d.prototype, "checked", 2), p([a({ type: Boolean })], d.prototype, "disabled", 2), p([a({ type: String })], d.prototype, "name", 2), d = p([m("schmancy-radio-button")], d);
|
|
110
110
|
export {
|
|
111
111
|
n as R,
|
|
112
112
|
d as a
|
|
113
113
|
};
|
|
114
|
-
//# sourceMappingURL=radio-button-
|
|
114
|
+
//# sourceMappingURL=radio-button-DaSKbB-Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-button-DaSKbB-Z.js","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject, fromEvent, takeUntil } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.pipe(takeUntil(this.disconnecting)).subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\n\t\t// Listen for radio button clicks from children\n\t\tfromEvent<CustomEvent>(this, 'radio-button-click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe((e: CustomEvent) => {\n\t\t\t\tthis.selection$.next(e.detail.value)\n\t\t\t})\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\t// Subscriptions are automatically cleaned up via takeUntil(this.disconnecting)\n\t\tthis.selection$?.complete()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\nimport { fromEvent, takeUntil } from 'rxjs'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Listen for click events\n\t\tfromEvent<MouseEvent>(this, 'click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\t// Event listeners are automatically cleaned up via takeUntil(this.disconnecting)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","pipe","takeUntil","disconnecting","subscribe","emitChange","updateChildRadioButtons","fromEvent","e","next","detail","disconnectedCallback","complete","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","render","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","closest","event","CustomEvent","bubbles","composed","dispatchEvent","reflect"],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";const u=require("lit"),o=require("lit/decorators.js"),c=require("rxjs");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const p=require("./formField.mixin-CSy0dZ7Q.cjs"),h=require("./tailwind.mixin-O9jmUJ7m.cjs"),b=require("lit/directives/when.js");var m=Object.defineProperty,v=Object.getOwnPropertyDescriptor,n=(e,t,l,r)=>{for(var s,i=r>1?void 0:r?v(t,l):t,a=e.length-1;a>=0;a--)(s=e[a])&&(i=(r?s(t,l,i):s(i))||i);return r&&i&&m(t,l,i),i};exports.RadioGroup=class extends p.FormFieldMixin(h.TailwindElement(":host{display:inherit;position:inherit}")){constructor(){super(...arguments),this.label="",this.name="",this.value="",this.options=[],this.required=!1,this.selection$=new c.Subject}connectedCallback(){super.connectedCallback(),this.selection$.pipe(c.takeUntil(this.disconnecting)).subscribe(e=>{this.value=e,this.emitChange({value:e}),this.updateChildRadioButtons()}),c.fromEvent(this,"radio-button-click").pipe(c.takeUntil(this.disconnecting)).subscribe(e=>{this.selection$.next(e.detail.value)})}disconnectedCallback(){super.disconnectedCallback(),this.selection$?.complete()}handleSelection(e){this.selection$.next(e)}updateChildRadioButtons(){this.querySelectorAll("schmancy-radio-button").forEach(e=>{e.getAttribute("value")===this.value?e.setAttribute("checked",""):e.removeAttribute("checked")})}updated(e){super.updated(e),e.has("value")&&this.updateChildRadioButtons()}render(){const e=this.childElementCount>0;return u.html`
|
|
2
|
+
<div class="grid gap-4">
|
|
3
|
+
${b.when(this.label,()=>u.html` <label class="text-base font-semibold text-surface-on">${this.label}</label> `)}
|
|
4
|
+
|
|
5
|
+
${e?u.html`<slot></slot>`:this.options?.map(t=>u.html`
|
|
6
|
+
<div class="flex items-center">
|
|
7
|
+
<input
|
|
8
|
+
.required=${this.required}
|
|
9
|
+
id=${t.value}
|
|
10
|
+
class="h-4 w-4 border-outline text-primary-default focus:ring-primary-default"
|
|
11
|
+
type="radio"
|
|
12
|
+
name=${this.name}
|
|
13
|
+
.value=${t.value}
|
|
14
|
+
.checked=${t.value===this.value}
|
|
15
|
+
@change=${()=>this.handleSelection(t.value)}
|
|
16
|
+
/>
|
|
17
|
+
<label for=${t.value} class="ml-3 block text-sm font-medium leading-6 text-surface-on">
|
|
18
|
+
${t.label||t.value}
|
|
19
|
+
</label>
|
|
20
|
+
</div>
|
|
21
|
+
`)}
|
|
22
|
+
</div>
|
|
23
|
+
`}},n([o.property({type:String})],exports.RadioGroup.prototype,"label",2),n([o.property({type:String})],exports.RadioGroup.prototype,"name",2),n([o.property({type:String})],exports.RadioGroup.prototype,"value",2),n([o.property({type:Array})],exports.RadioGroup.prototype,"options",2),n([o.property({type:Boolean})],exports.RadioGroup.prototype,"required",2),exports.RadioGroup=n([o.customElement("schmancy-radio-group")],exports.RadioGroup);var y=Object.defineProperty,g=Object.getOwnPropertyDescriptor,d=(e,t,l,r)=>{for(var s,i=r>1?void 0:r?g(t,l):t,a=e.length-1;a>=0;a--)(s=e[a])&&(i=(r?s(t,l,i):s(i))||i);return r&&i&&y(t,l,i),i};exports.RadioButton=class extends p.FormFieldMixin(h.TailwindElement()){constructor(){super(...arguments),this.value="",this.checked=!1,this.disabled=!1,this.name=""}connectedCallback(){super.connectedCallback(),c.fromEvent(this,"click").pipe(c.takeUntil(this.disconnecting)).subscribe(this.handleClick)}disconnectedCallback(){super.disconnectedCallback()}handleClick(){if(!this.disabled)if(this.closest("schmancy-radio-group")){const e=new CustomEvent("radio-button-click",{detail:{value:this.value},bubbles:!0,composed:!0});this.dispatchEvent(e)}else this.checked=!0,this.emitChange({value:this.value})}render(){return u.html`
|
|
24
|
+
<label class="relative flex items-start cursor-pointer">
|
|
25
|
+
<div class="flex items-center h-6">
|
|
26
|
+
<input
|
|
27
|
+
type="radio"
|
|
28
|
+
class="h-4 w-4 text-primary-default focus:ring-primary-container border-outline"
|
|
29
|
+
.value=${this.value}
|
|
30
|
+
.checked=${this.checked}
|
|
31
|
+
.disabled=${this.disabled}
|
|
32
|
+
.name=${this.name}
|
|
33
|
+
@change=${()=>{}}
|
|
34
|
+
/>
|
|
35
|
+
</div>
|
|
36
|
+
<div class="ml-3">
|
|
37
|
+
<slot name="label"></slot>
|
|
38
|
+
</div>
|
|
39
|
+
</label>
|
|
40
|
+
`}},d([o.property({type:String})],exports.RadioButton.prototype,"value",2),d([o.property({type:Boolean,reflect:!0})],exports.RadioButton.prototype,"checked",2),d([o.property({type:Boolean})],exports.RadioButton.prototype,"disabled",2),d([o.property({type:String})],exports.RadioButton.prototype,"name",2),exports.RadioButton=d([o.customElement("schmancy-radio-button")],exports.RadioButton);
|
|
41
|
+
//# sourceMappingURL=radio-button-h6y0tWJQ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"radio-button-h6y0tWJQ.cjs","sources":["../src/radio-group/radio-group.ts","../src/radio-group/radio-button.ts"],"sourcesContent":["import { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { Subject, fromEvent, takeUntil } from 'rxjs'\nimport style from './radio-group.scss?inline'\nimport { TailwindElement } from '@mixins/index'\nimport { when } from 'lit/directives/when.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\n\nexport type SchmancyRadioGroupOption = {\n\tlabel: string\n\tvalue: string\n}\nexport type SchmancyRadioGroupChangeEvent = CustomEvent<{\n\tvalue: string\n}>\n@customElement('schmancy-radio-group')\nexport class RadioGroup extends FormFieldMixin(TailwindElement(style)) {\n\t@property({ type: String }) override label = ''\n\t@property({ type: String }) override name = ''\n\t@property({ type: String }) override value = ''\n\t@property({ type: Array }) options: SchmancyRadioGroupOption[] = []\n\t@property({ type: Boolean }) override required: boolean = false\n\tprivate selection$ = new Subject<string>()\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\tthis.selection$.pipe(takeUntil(this.disconnecting)).subscribe(value => {\n\t\t\tthis.value = value\n\t\t\tthis.emitChange({ value })\n\t\t\t// Update all child radio buttons\n\t\t\tthis.updateChildRadioButtons()\n\t\t})\n\n\t\t// Listen for radio button clicks from children\n\t\tfromEvent<CustomEvent>(this, 'radio-button-click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe((e: CustomEvent) => {\n\t\t\t\tthis.selection$.next(e.detail.value)\n\t\t\t})\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\t// Subscriptions are automatically cleaned up via takeUntil(this.disconnecting)\n\t\tthis.selection$?.complete()\n\t}\n\t\n\tprivate handleSelection(value: string) {\n\t\tthis.selection$.next(value)\n\t}\n\t\n\tprivate updateChildRadioButtons() {\n\t\t// Update child radio buttons checked state\n\t\tconst radioButtons = this.querySelectorAll('schmancy-radio-button')\n\t\tradioButtons.forEach(button => {\n\t\t\tconst buttonValue = button.getAttribute('value')\n\t\t\tif (buttonValue === this.value) {\n\t\t\t\tbutton.setAttribute('checked', '')\n\t\t\t} else {\n\t\t\t\tbutton.removeAttribute('checked')\n\t\t\t}\n\t\t})\n\t}\n\t\n\t// For backwards compatibility with direct option setting\n\tupdated(changedProperties: Map<string, any>) {\n\t\tsuper.updated(changedProperties)\n\t\tif (changedProperties.has('value')) {\n\t\t\tthis.updateChildRadioButtons()\n\t\t}\n\t}\n\n\trender() {\n\t\t// Check if we have any slotted radio buttons\n\t\tconst hasSlottedContent = this.childElementCount > 0\n\t\t\n\t\treturn html`\n\t\t\t<div class=\"grid gap-4\">\n\t\t\t\t${when(this.label, () => html` <label class=\"text-base font-semibold text-surface-on\">${this.label}</label> `)}\n\t\t\t\t\n\t\t\t\t${hasSlottedContent ? \n\t\t\t\t\thtml`<slot></slot>` :\n\t\t\t\t\tthis.options?.map(option => html`\n\t\t\t\t\t\t<div class=\"flex items-center\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t.required=${this.required}\n\t\t\t\t\t\t\t\tid=${option.value}\n\t\t\t\t\t\t\t\tclass=\"h-4 w-4 border-outline text-primary-default focus:ring-primary-default\"\n\t\t\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\t\t\tname=${this.name}\n\t\t\t\t\t\t\t\t.value=${option.value}\n\t\t\t\t\t\t\t\t.checked=${option.value === this.value}\n\t\t\t\t\t\t\t\t@change=${() => this.handleSelection(option.value)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<label for=${option.value} class=\"ml-3 block text-sm font-medium leading-6 text-surface-on\">\n\t\t\t\t\t\t\t\t${option.label || option.value}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t`)\n\t\t\t\t}\n\t\t\t</div>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-group': RadioGroup\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { FormFieldMixin } from '../../mixins/formField.mixin'\nimport { fromEvent, takeUntil } from 'rxjs'\n\n@customElement('schmancy-radio-button')\nexport class RadioButton extends FormFieldMixin(TailwindElement()) {\n\t@property({ type: String }) override value = ''\n\t@property({ type: Boolean, reflect: true }) checked = false\n\t@property({ type: Boolean }) override disabled = false\n\t@property({ type: String }) override name = ''\n\n\tconnectedCallback() {\n\t\tsuper.connectedCallback()\n\t\t// Listen for click events\n\t\tfromEvent<MouseEvent>(this, 'click')\n\t\t\t.pipe(takeUntil(this.disconnecting))\n\t\t\t.subscribe(this.handleClick)\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\t// Event listeners are automatically cleaned up via takeUntil(this.disconnecting)\n\t}\n\n\tprivate handleClick() {\n\t\tif (this.disabled) return\n\n\t\t// Find parent radio-group if exists\n\t\tconst radioGroup = this.closest('schmancy-radio-group')\n\t\tif (radioGroup) {\n\t\t\t// Let the radio-group handle the change\n\t\t\tconst event = new CustomEvent('radio-button-click', {\n\t\t\t\tdetail: { value: this.value },\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t})\n\t\t\tthis.dispatchEvent(event)\n\t\t} else {\n\t\t\t// Standalone usage\n\t\t\tthis.checked = true\n\t\t\tthis.emitChange({ value: this.value })\n\t\t}\n\t}\n\n\trender() {\n\t\treturn html`\n\t\t\t<label class=\"relative flex items-start cursor-pointer\">\n\t\t\t\t<div class=\"flex items-center h-6\">\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"radio\"\n\t\t\t\t\t\tclass=\"h-4 w-4 text-primary-default focus:ring-primary-container border-outline\"\n\t\t\t\t\t\t.value=${this.value}\n\t\t\t\t\t\t.checked=${this.checked}\n\t\t\t\t\t\t.disabled=${this.disabled}\n\t\t\t\t\t\t.name=${this.name}\n\t\t\t\t\t\t@change=${() => {}}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"ml-3\">\n\t\t\t\t\t<slot name=\"label\"></slot>\n\t\t\t\t</div>\n\t\t\t</label>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-radio-button': RadioButton\n\t}\n}\n"],"names":["RadioGroup","FormFieldMixin","TailwindElement","constructor","super","arguments","this","label","name","value","options","required","selection$","Subject","connectedCallback","pipe","takeUntil","disconnecting","subscribe","emitChange","updateChildRadioButtons","fromEvent","e","next","detail","disconnectedCallback","complete","querySelectorAll","forEach","button","getAttribute","setAttribute","removeAttribute","changedProperties","updated","has","render","hasSlottedContent","childElementCount","html","when","map","option","handleSelection","__decorateClass","property","type","String","prototype","Array","Boolean","customElement","RadioButton","checked","disabled","handleClick","closest","event","CustomEvent","bubbles","composed","dispatchEvent","reflect"],"mappings":"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"}
|
package/dist/radio-group.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./radio-button-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./radio-button-h6y0tWJQ.cjs");Object.defineProperty(exports,"RadioButton",{enumerable:!0,get:()=>e.RadioButton}),Object.defineProperty(exports,"RadioGroup",{enumerable:!0,get:()=>e.RadioGroup});
|
|
2
2
|
//# sourceMappingURL=radio-group.cjs.map
|
package/dist/radio-group.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { nothing as
|
|
2
|
-
import { directive as
|
|
3
|
-
import { Subject as a, fromEvent as
|
|
4
|
-
import { AsyncDirective as
|
|
5
|
-
const x =
|
|
1
|
+
import { nothing as h } from "lit";
|
|
2
|
+
import { directive as i, Directive as u, PartType as r } from "lit/directive.js";
|
|
3
|
+
import { Subject as a, fromEvent as p, debounceTime as m, startWith as g, takeUntil as f } from "rxjs";
|
|
4
|
+
import { AsyncDirective as d } from "lit/async-directive.js";
|
|
5
|
+
const x = i(class extends u {
|
|
6
6
|
constructor(e) {
|
|
7
7
|
super(e), this.config = {};
|
|
8
8
|
}
|
|
@@ -12,15 +12,15 @@ const x = s(class extends h {
|
|
|
12
12
|
this.config = t, this.config.bgColor && (n.style.backgroundColor = this.config.bgColor), this.config.color && (n.style.color = this.config.color);
|
|
13
13
|
}
|
|
14
14
|
render(e) {
|
|
15
|
-
return this.config = e,
|
|
15
|
+
return this.config = e, h;
|
|
16
16
|
}
|
|
17
|
-
}),
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
}), s = new a();
|
|
18
|
+
p(window, "resize").pipe(m(10), g(window)).subscribe({ next: () => {
|
|
19
|
+
s.next(window);
|
|
20
20
|
} });
|
|
21
|
-
const v =
|
|
21
|
+
const v = i(class extends d {
|
|
22
22
|
constructor(e) {
|
|
23
|
-
super(e), this.disconnecting = new a(),
|
|
23
|
+
super(e), this.disconnecting = new a(), s.pipe(f(this.disconnecting)).subscribe(() => {
|
|
24
24
|
this.element.style.setProperty("height", `${window.innerHeight}px`), setTimeout(() => {
|
|
25
25
|
this.element.style.setProperty("height", `${window.innerHeight}px`);
|
|
26
26
|
});
|
|
@@ -30,21 +30,23 @@ const v = s(class extends p {
|
|
|
30
30
|
}
|
|
31
31
|
update(e) {
|
|
32
32
|
if (e.type !== r.ELEMENT) throw new Error("The `ripple` directive can only be used on elements");
|
|
33
|
-
this.element = e.element,
|
|
33
|
+
this.element = e.element, s.next(window);
|
|
34
34
|
}
|
|
35
35
|
disconnected() {
|
|
36
36
|
this.disconnecting.next(!0);
|
|
37
37
|
}
|
|
38
38
|
reconnected() {
|
|
39
39
|
}
|
|
40
|
-
}), T =
|
|
41
|
-
|
|
40
|
+
}), T = i(class extends d {
|
|
41
|
+
constructor() {
|
|
42
|
+
super(...arguments), this.addRippleEffect = (e) => {
|
|
43
|
+
const t = e.target, n = document.createElement("span"), o = Math.max(t.clientWidth, t.clientHeight), c = o / 2;
|
|
44
|
+
n.style.width = n.style.height = `${o}px`, n.style.left = e.clientX - t.getBoundingClientRect().left - c + "px", n.style.top = e.clientY - t.getBoundingClientRect().top - c + "px", n.classList.add("ripple");
|
|
45
|
+
const l = t.getElementsByClassName("ripple")[0];
|
|
46
|
+
l && l.remove(), t.appendChild(n);
|
|
47
|
+
};
|
|
42
48
|
}
|
|
43
|
-
|
|
44
|
-
const t = e.target, n = document.createElement("span"), o = Math.max(t.clientWidth, t.clientHeight), c = o / 2;
|
|
45
|
-
n.style.width = n.style.height = `${o}px`, n.style.left = e.clientX - t.getBoundingClientRect().left - c + "px", n.style.top = e.clientY - t.getBoundingClientRect().top - c + "px", n.classList.add("ripple");
|
|
46
|
-
const l = t.getElementsByClassName("ripple")[0];
|
|
47
|
-
l && l.remove(), t.appendChild(n);
|
|
49
|
+
render() {
|
|
48
50
|
}
|
|
49
51
|
update(e) {
|
|
50
52
|
if (e.type !== r.ELEMENT) throw new Error("The `ripple` directive can only be used on elements");
|
|
@@ -64,10 +66,10 @@ const v = s(class extends p {
|
|
|
64
66
|
opacity: 0;
|
|
65
67
|
}
|
|
66
68
|
}
|
|
67
|
-
`), this.element.append(t), this.
|
|
69
|
+
`), this.element.append(t), this.subscription?.unsubscribe(), this.subscription = p(this.element, "click").subscribe(this.addRippleEffect);
|
|
68
70
|
}
|
|
69
71
|
disconnected() {
|
|
70
|
-
this.
|
|
72
|
+
this.subscription?.unsubscribe();
|
|
71
73
|
}
|
|
72
74
|
});
|
|
73
75
|
export {
|
|
@@ -75,4 +77,4 @@ export {
|
|
|
75
77
|
v as f,
|
|
76
78
|
T as r
|
|
77
79
|
};
|
|
78
|
-
//# sourceMappingURL=ripple-
|
|
80
|
+
//# sourceMappingURL=ripple-Cy-nvO8W.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ripple-Cy-nvO8W.js","sources":["../src/directives/color.ts","../src/directives/height.ts","../src/directives/ripple.ts"],"sourcesContent":["// color.ts\nimport { Part, nothing } from 'lit'\nimport { Directive, PartInfo, PartType, directive } from 'lit/directive.js'\n\nexport type ColorConfig = {\n\tbgColor?: string\n\tcolor?: string\n}\n\nclass ColorDirective extends Directive {\n\tprivate config: ColorConfig\n\n\tconstructor(partInfo: PartInfo) {\n\t\tsuper(partInfo)\n\t\tthis.config = {}\n\t}\n\n\tupdate(part: Part, [config]: [ColorConfig]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `classMap` directive must be used in the `class` attribute')\n\t\t}\n\t\tconst element = part.element as HTMLElement\n\t\tthis.config = config\n\t\tif (this.config.bgColor) {\n\t\t\telement.style.backgroundColor = this.config.bgColor\n\t\t}\n\n\t\tif (this.config.color) {\n\t\t\telement.style.color = this.config.color\n\t\t}\n\t}\n\n\trender(config: ColorConfig): unknown {\n\t\tthis.config = config\n\t\treturn nothing\n\t}\n}\n\nconst color = directive(ColorDirective)\n\nexport { color }\n","import { Subject, debounceTime, fromEvent, startWith, takeUntil } from 'rxjs'\n\nconst $SchmancyResize = new Subject<Window>()\nfromEvent<Event>(window, 'resize')\n\t.pipe(\n\t\tdebounceTime(10), // Adjust the debounce time as needed\n\t\tstartWith(window),\n\t)\n\t.subscribe({\n\t\tnext: () => {\n\t\t\t$SchmancyResize.next(window)\n\t\t},\n\t})\n\nimport { directive, PartInfo, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { LitElement } from 'lit'\n\nclass FullHeight extends AsyncDirective {\n\telement: HTMLElement & LitElement\n\tdisconnecting = new Subject<boolean>()\n\trender() {\n\t\treturn\n\t}\n\n\tconstructor(_partInfo: PartInfo) {\n\t\tsuper(_partInfo)\n\t\t$SchmancyResize.pipe(takeUntil(this.disconnecting)).subscribe(() => {\n\t\t\tthis.element.style.setProperty('height', `${window.innerHeight}px`)\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.element.style.setProperty('height', `${window.innerHeight}px`)\n\t\t\t})\n\t\t})\n\t}\n\n\tupdate(part) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `ripple` directive can only be used on elements')\n\t\t}\n\t\tthis.element = part.element\n\t\t$SchmancyResize.next(window)\n\t}\n\n\tdisconnected() {\n\t\tthis.disconnecting.next(true)\n\t}\n\n\treconnected() {}\n}\n\nexport const fullHeight = directive(FullHeight)\n","import { directive, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { fromEvent, Subscription } from 'rxjs'\n\nconst rippleStyle = `.ripple {\n position: absolute;\n border-radius: 50%;\n background: var(--schmancy-sys-color-surface-high);\n transform: scale(0);\n animation: ripple 600ms linear;\n}\n\n@keyframes ripple {\n to {\n transform: scale(4);\n opacity: 0;\n }\n}\n`\nclass RippleDirective extends AsyncDirective {\n\telement: HTMLElement\n\tprivate subscription?: Subscription\n\n\trender() {\n\t\treturn\n\t}\n\n\taddRippleEffect = (event: MouseEvent) => {\n\t\tconst element = event.target as HTMLElement\n\t\tconst circle = document.createElement('span')\n\t\tconst diameter = Math.max(element.clientWidth, element.clientHeight)\n\t\tconst radius = diameter / 2\n\t\tcircle.style.width = circle.style.height = `${diameter}px`\n\t\tcircle.style.left = `${event.clientX - element.getBoundingClientRect().left - radius}px`\n\t\tcircle.style.top = `${event.clientY - element.getBoundingClientRect().top - radius}px`\n\t\tcircle.classList.add('ripple')\n\n\t\tconst ripple = element.getElementsByClassName('ripple')[0]\n\t\tif (ripple) {\n\t\t\tripple.remove()\n\t\t}\n\n\t\telement.appendChild(circle)\n\t}\n\n\tupdate(part: any) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `ripple` directive can only be used on elements')\n\t\t}\n\n\t\tthis.element = part.element\n\t\tconst style = document.createElement('style')\n\t\tstyle.append(rippleStyle)\n\t\tthis.element.append(style)\n\n\t\t// Clean up existing subscription\n\t\tthis.subscription?.unsubscribe()\n\n\t\t// Create new subscription\n\t\tthis.subscription = fromEvent<MouseEvent>(this.element, 'click').subscribe(this.addRippleEffect)\n\t}\n\n\tdisconnected() {\n\t\tthis.subscription?.unsubscribe()\n\t}\n}\n\nexport const ripple = directive(RippleDirective)\n"],"names":["color","directive","Directive","partInfo","super","this","config","part","type","PartType","ELEMENT","Error","element","bgColor","style","backgroundColor","nothing","$SchmancyResize","Subject","fromEvent","window","pipe","debounceTime","startWith","subscribe","next","fullHeight","AsyncDirective","_partInfo","disconnecting","takeUntil","setProperty","innerHeight","setTimeout","render","disconnected","reconnected","ripple","constructor","arguments","addRippleEffect","event","target","circle","document","createElement","diameter","Math","max","clientWidth","clientHeight","radius","width","height","left","clientX","getBoundingClientRect","top","clientY","classList","add","getElementsByClassName","remove","appendChild","append","subscription","unsubscribe"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";const a=require("lit"),s=require("lit/directive.js"),i=require("rxjs"),d=require("lit/async-directive.js");class h extends s.Directive{constructor(e){super(e),this.config={}}update(e,[t]){if(e.type!==s.PartType.ELEMENT)throw new Error("The `classMap` directive must be used in the `class` attribute");const n=e.element;this.config=t,this.config.bgColor&&(n.style.backgroundColor=this.config.bgColor),this.config.color&&(n.style.color=this.config.color)}render(e){return this.config=e,a.nothing}}const u=s.directive(h),r=new i.Subject;i.fromEvent(window,"resize").pipe(i.debounceTime(10),i.startWith(window)).subscribe({next:()=>{r.next(window)}});class m extends d.AsyncDirective{constructor(e){super(e),this.disconnecting=new i.Subject,r.pipe(i.takeUntil(this.disconnecting)).subscribe(()=>{this.element.style.setProperty("height",`${window.innerHeight}px`),setTimeout(()=>{this.element.style.setProperty("height",`${window.innerHeight}px`)})})}render(){}update(e){if(e.type!==s.PartType.ELEMENT)throw new Error("The `ripple` directive can only be used on elements");this.element=e.element,r.next(window)}disconnected(){this.disconnecting.next(!0)}reconnected(){}}const g=s.directive(m);class b extends d.AsyncDirective{constructor(){super(...arguments),this.addRippleEffect=e=>{const t=e.target,n=document.createElement("span"),o=Math.max(t.clientWidth,t.clientHeight),l=o/2;n.style.width=n.style.height=`${o}px`,n.style.left=e.clientX-t.getBoundingClientRect().left-l+"px",n.style.top=e.clientY-t.getBoundingClientRect().top-l+"px",n.classList.add("ripple");const p=t.getElementsByClassName("ripple")[0];p&&p.remove(),t.appendChild(n)}}render(){}update(e){if(e.type!==s.PartType.ELEMENT)throw new Error("The `ripple` directive can only be used on elements");this.element=e.element;const t=document.createElement("style");t.append(`.ripple {
|
|
2
|
+
position: absolute;
|
|
3
|
+
border-radius: 50%;
|
|
4
|
+
background: var(--schmancy-sys-color-surface-high);
|
|
5
|
+
transform: scale(0);
|
|
6
|
+
animation: ripple 600ms linear;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@keyframes ripple {
|
|
10
|
+
to {
|
|
11
|
+
transform: scale(4);
|
|
12
|
+
opacity: 0;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`),this.element.append(t),this.subscription?.unsubscribe(),this.subscription=i.fromEvent(this.element,"click").subscribe(this.addRippleEffect)}disconnected(){this.subscription?.unsubscribe()}}const y=s.directive(b);exports.color=u,exports.fullHeight=g,exports.ripple=y;
|
|
16
|
+
//# sourceMappingURL=ripple-DqQrvaTe.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ripple-DqQrvaTe.cjs","sources":["../src/directives/color.ts","../src/directives/height.ts","../src/directives/ripple.ts"],"sourcesContent":["// color.ts\nimport { Part, nothing } from 'lit'\nimport { Directive, PartInfo, PartType, directive } from 'lit/directive.js'\n\nexport type ColorConfig = {\n\tbgColor?: string\n\tcolor?: string\n}\n\nclass ColorDirective extends Directive {\n\tprivate config: ColorConfig\n\n\tconstructor(partInfo: PartInfo) {\n\t\tsuper(partInfo)\n\t\tthis.config = {}\n\t}\n\n\tupdate(part: Part, [config]: [ColorConfig]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `classMap` directive must be used in the `class` attribute')\n\t\t}\n\t\tconst element = part.element as HTMLElement\n\t\tthis.config = config\n\t\tif (this.config.bgColor) {\n\t\t\telement.style.backgroundColor = this.config.bgColor\n\t\t}\n\n\t\tif (this.config.color) {\n\t\t\telement.style.color = this.config.color\n\t\t}\n\t}\n\n\trender(config: ColorConfig): unknown {\n\t\tthis.config = config\n\t\treturn nothing\n\t}\n}\n\nconst color = directive(ColorDirective)\n\nexport { color }\n","import { Subject, debounceTime, fromEvent, startWith, takeUntil } from 'rxjs'\n\nconst $SchmancyResize = new Subject<Window>()\nfromEvent<Event>(window, 'resize')\n\t.pipe(\n\t\tdebounceTime(10), // Adjust the debounce time as needed\n\t\tstartWith(window),\n\t)\n\t.subscribe({\n\t\tnext: () => {\n\t\t\t$SchmancyResize.next(window)\n\t\t},\n\t})\n\nimport { directive, PartInfo, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { LitElement } from 'lit'\n\nclass FullHeight extends AsyncDirective {\n\telement: HTMLElement & LitElement\n\tdisconnecting = new Subject<boolean>()\n\trender() {\n\t\treturn\n\t}\n\n\tconstructor(_partInfo: PartInfo) {\n\t\tsuper(_partInfo)\n\t\t$SchmancyResize.pipe(takeUntil(this.disconnecting)).subscribe(() => {\n\t\t\tthis.element.style.setProperty('height', `${window.innerHeight}px`)\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.element.style.setProperty('height', `${window.innerHeight}px`)\n\t\t\t})\n\t\t})\n\t}\n\n\tupdate(part) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `ripple` directive can only be used on elements')\n\t\t}\n\t\tthis.element = part.element\n\t\t$SchmancyResize.next(window)\n\t}\n\n\tdisconnected() {\n\t\tthis.disconnecting.next(true)\n\t}\n\n\treconnected() {}\n}\n\nexport const fullHeight = directive(FullHeight)\n","import { directive, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { fromEvent, Subscription } from 'rxjs'\n\nconst rippleStyle = `.ripple {\n position: absolute;\n border-radius: 50%;\n background: var(--schmancy-sys-color-surface-high);\n transform: scale(0);\n animation: ripple 600ms linear;\n}\n\n@keyframes ripple {\n to {\n transform: scale(4);\n opacity: 0;\n }\n}\n`\nclass RippleDirective extends AsyncDirective {\n\telement: HTMLElement\n\tprivate subscription?: Subscription\n\n\trender() {\n\t\treturn\n\t}\n\n\taddRippleEffect = (event: MouseEvent) => {\n\t\tconst element = event.target as HTMLElement\n\t\tconst circle = document.createElement('span')\n\t\tconst diameter = Math.max(element.clientWidth, element.clientHeight)\n\t\tconst radius = diameter / 2\n\t\tcircle.style.width = circle.style.height = `${diameter}px`\n\t\tcircle.style.left = `${event.clientX - element.getBoundingClientRect().left - radius}px`\n\t\tcircle.style.top = `${event.clientY - element.getBoundingClientRect().top - radius}px`\n\t\tcircle.classList.add('ripple')\n\n\t\tconst ripple = element.getElementsByClassName('ripple')[0]\n\t\tif (ripple) {\n\t\t\tripple.remove()\n\t\t}\n\n\t\telement.appendChild(circle)\n\t}\n\n\tupdate(part: any) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('The `ripple` directive can only be used on elements')\n\t\t}\n\n\t\tthis.element = part.element\n\t\tconst style = document.createElement('style')\n\t\tstyle.append(rippleStyle)\n\t\tthis.element.append(style)\n\n\t\t// Clean up existing subscription\n\t\tthis.subscription?.unsubscribe()\n\n\t\t// Create new subscription\n\t\tthis.subscription = fromEvent<MouseEvent>(this.element, 'click').subscribe(this.addRippleEffect)\n\t}\n\n\tdisconnected() {\n\t\tthis.subscription?.unsubscribe()\n\t}\n}\n\nexport const ripple = directive(RippleDirective)\n"],"names":["ColorDirective","Directive","partInfo","super","this","config","part","type","PartType","ELEMENT","Error","element","bgColor","style","backgroundColor","color","nothing","directive","$SchmancyResize","Subject","fromEvent","window","pipe","debounceTime","startWith","subscribe","next","FullHeight","AsyncDirective","_partInfo","disconnecting","takeUntil","setProperty","innerHeight","setTimeout","render","disconnected","reconnected","fullHeight","RippleDirective","constructor","arguments","addRippleEffect","event","target","circle","document","createElement","diameter","Math","max","clientWidth","clientHeight","radius","width","height","left","clientX","getBoundingClientRect","top","clientY","classList","add","ripple","getElementsByClassName","remove","appendChild","append","subscription","unsubscribe"],"mappings":"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"}
|