@mhmo91/schmancy 0.2.194 → 0.2.196
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/animated-text.md +114 -0
- package/ai/area.md +158 -78
- package/ai/card.md +162 -131
- package/ai/circular-progress.md +91 -0
- package/ai/content-drawer.md +190 -0
- package/ai/date-range.md +142 -0
- package/ai/delay.md +158 -0
- package/ai/dialog.md +10 -0
- package/ai/divider.md +153 -0
- package/ai/index.md +43 -3
- package/ai/nav-drawer.md +206 -0
- package/ai/option.md +173 -0
- package/ai/slider.md +227 -0
- package/ai/steps.md +231 -0
- package/ai/surface.md +139 -200
- package/ai/table.md +99 -1
- package/ai/teleport.md +196 -0
- package/ai/theme-button.md +173 -0
- package/ai/theme.md +241 -0
- package/ai/typewriter.md +217 -0
- package/dist/_headers +2 -0
- package/dist/ai/animated-text.md +114 -0
- package/dist/ai/area.md +158 -78
- package/dist/ai/card.md +162 -131
- package/dist/ai/circular-progress.md +91 -0
- package/dist/ai/content-drawer.md +190 -0
- package/dist/ai/date-range.md +142 -0
- package/dist/ai/delay.md +158 -0
- package/dist/ai/dialog.md +10 -0
- package/dist/ai/divider.md +153 -0
- package/dist/ai/index.md +43 -3
- package/dist/ai/nav-drawer.md +206 -0
- package/dist/ai/option.md +173 -0
- package/dist/ai/slider.md +227 -0
- package/dist/ai/steps.md +231 -0
- package/dist/ai/surface.md +139 -200
- package/dist/ai/table.md +99 -1
- package/dist/ai/teleport.md +196 -0
- package/dist/ai/theme-button.md +173 -0
- package/dist/ai/theme.md +241 -0
- package/dist/ai/typewriter.md +217 -0
- package/dist/{animated-text-9AM64DHd.cjs → animated-text-DnX2TopW.cjs} +2 -2
- package/dist/{animated-text-9AM64DHd.cjs.map → animated-text-DnX2TopW.cjs.map} +1 -1
- package/dist/{animated-text-CVStWn5N.js → animated-text-jv1yAwLh.js} +3 -3
- package/dist/{animated-text-CVStWn5N.js.map → animated-text-jv1yAwLh.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.component-DMD20wqd.js +191 -0
- package/dist/area.component-DMD20wqd.js.map +1 -0
- package/dist/area.component-Vs2WGXgk.cjs +8 -0
- package/dist/area.component-Vs2WGXgk.cjs.map +1 -0
- package/dist/area.js +21 -6
- package/dist/area.js.map +1 -1
- package/dist/{autocomplete-DBXvIJgc.cjs → autocomplete-BrAxEJJq.cjs} +2 -2
- package/dist/{autocomplete-DBXvIJgc.cjs.map → autocomplete-BrAxEJJq.cjs.map} +1 -1
- package/dist/{autocomplete-ih92pPkb.js → autocomplete-OS61ngsy.js} +3 -3
- package/dist/{autocomplete-ih92pPkb.js.map → autocomplete-OS61ngsy.js.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/{avatar-Bmg5TXj9.cjs → avatar-CEdv8DJY.cjs} +62 -24
- package/dist/avatar-CEdv8DJY.cjs.map +1 -0
- package/dist/{avatar-CgP1tBZq.js → avatar-CUHTDenQ.js} +183 -145
- package/dist/avatar-CUHTDenQ.js.map +1 -0
- package/dist/badge.cjs +1 -1
- package/dist/badge.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-Jxxbjxp0.js → checkbox-CVXRiSWP.js} +72 -65
- package/dist/{checkbox-Jxxbjxp0.js.map → checkbox-CVXRiSWP.js.map} +1 -1
- package/dist/{checkbox-DtnX5sT6.cjs → checkbox-Chd-COYm.cjs} +10 -10
- package/dist/{checkbox-DtnX5sT6.cjs.map → checkbox-Chd-COYm.cjs.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-CVDnpVUM.cjs → chips-Bx9gSvN1.cjs} +2 -2
- package/dist/{chips-CVDnpVUM.cjs.map → chips-Bx9gSvN1.cjs.map} +1 -1
- package/dist/{chips-lP7ohQep.js → chips-Dx_erk55.js} +3 -3
- package/dist/{chips-lP7ohQep.js.map → chips-Dx_erk55.js.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +1 -1
- package/dist/circular-progress-BQnGvbss.js +35 -0
- package/dist/circular-progress-BQnGvbss.js.map +1 -0
- package/dist/circular-progress-CNBah5dz.cjs +9 -0
- package/dist/circular-progress-CNBah5dz.cjs.map +1 -0
- package/dist/circular-progress.cjs +2 -0
- package/dist/circular-progress.cjs.map +1 -0
- package/dist/circular-progress.js +5 -0
- package/dist/circular-progress.js.map +1 -0
- 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-DbPA5Y-t.cjs → date-range-Cq0diVSY.cjs} +4 -3
- package/dist/{date-range-DbPA5Y-t.cjs.map → date-range-Cq0diVSY.cjs.map} +1 -1
- package/dist/{date-range-Ca9WLI4Q.js → date-range-wxdt6Ha0.js} +5 -4
- package/dist/date-range-wxdt6Ha0.js.map +1 -0
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-BgNgQV2G.cjs → delay-BzkhDhs0.cjs} +2 -2
- package/dist/{delay-BgNgQV2G.cjs.map → delay-BzkhDhs0.cjs.map} +1 -1
- package/dist/{delay-5cCl7ji3.js → delay-Ds5suSsc.js} +2 -2
- package/dist/{delay-5cCl7ji3.js.map → delay-Ds5suSsc.js.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{dialog-content-qj1E8aye.cjs → dialog-content-CJY69qfC.cjs} +8 -8
- package/dist/dialog-content-CJY69qfC.cjs.map +1 -0
- package/dist/{dialog-content-9pumpyLD.js → dialog-content-DFJnYzff.js} +86 -82
- package/dist/dialog-content-DFJnYzff.js.map +1 -0
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +1 -1
- package/dist/{divider-r8-9eNnl.js → divider-C3w1_-N1.js} +3 -3
- package/dist/{divider-r8-9eNnl.js.map → divider-C3w1_-N1.js.map} +1 -1
- package/dist/{divider-CHckHGEQ.cjs → divider-CFzbCFsr.cjs} +2 -2
- package/dist/{divider-CHckHGEQ.cjs.map → divider-CFzbCFsr.cjs.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/{dropdown-content-D-TddflQ.js → dropdown-content-BGFYBXcx.js} +3 -3
- package/dist/{dropdown-content-D-TddflQ.js.map → dropdown-content-BGFYBXcx.js.map} +1 -1
- package/dist/{dropdown-content-B41MDDRG.cjs → dropdown-content-PaMOJphI.cjs} +2 -2
- package/dist/{dropdown-content-B41MDDRG.cjs.map → dropdown-content-PaMOJphI.cjs.map} +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/{flex-Bf0zNqji.js → flex-Cy4Stl_1.js} +2 -2
- package/dist/{flex-Bf0zNqji.js.map → flex-Cy4Stl_1.js.map} +1 -1
- package/dist/{flex-CFv-Zb76.cjs → flex-DP5O5644.cjs} +2 -2
- package/dist/{flex-CFv-Zb76.cjs.map → flex-DP5O5644.cjs.map} +1 -1
- package/dist/{form-uYcr1RLJ.js → form-BQamcLFL.js} +2 -2
- package/dist/{form-uYcr1RLJ.js.map → form-BQamcLFL.js.map} +1 -1
- package/dist/{form-BN75s0PI.cjs → form-CG3kns69.cjs} +2 -2
- package/dist/{form-BN75s0PI.cjs.map → form-CG3kns69.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{icon-BR-jE0Y2.js → icon-Cd4p9jRB.js} +3 -3
- package/dist/{icon-BR-jE0Y2.js.map → icon-Cd4p9jRB.js.map} +1 -1
- package/dist/{icon-Cu-imayV.cjs → icon-CilwMTXB.cjs} +2 -2
- package/dist/{icon-Cu-imayV.cjs.map → icon-CilwMTXB.cjs.map} +1 -1
- package/dist/{icon-button-1tZaicyb.js → icon-button-By17is4V.js} +3 -3
- package/dist/{icon-button-1tZaicyb.js.map → icon-button-By17is4V.js.map} +1 -1
- package/dist/{icon-button-D0BbHnDL.cjs → icon-button-C4Hf63hY.cjs} +2 -2
- package/dist/{icon-button-D0BbHnDL.cjs.map → icon-button-C4Hf63hY.cjs.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +190 -173
- package/dist/index.js.map +1 -1
- package/dist/{input-B2oV6Hck.cjs → input-BIi0rS2t.cjs} +2 -2
- package/dist/{input-B2oV6Hck.cjs.map → input-BIi0rS2t.cjs.map} +1 -1
- package/dist/{input-kiz5O3dY.js → input-C8OAokVe.js} +2 -2
- package/dist/{input-kiz5O3dY.js.map → input-C8OAokVe.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-wT4DLXCh.js → list-BC3OE3Pu.js} +2 -2
- package/dist/{list-wT4DLXCh.js.map → list-BC3OE3Pu.js.map} +1 -1
- package/dist/{list-CMHoPfX9.cjs → list-jFsCubuy.cjs} +2 -2
- package/dist/{list-CMHoPfX9.cjs.map → list-jFsCubuy.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-B9Qdq5S_.js → litElement.mixin-C6PzcPXd.js} +2 -2
- package/dist/{litElement.mixin-B9Qdq5S_.js.map → litElement.mixin-C6PzcPXd.js.map} +1 -1
- package/dist/{litElement.mixin-CHvyxfxf.cjs → litElement.mixin-Cypiq-N-.cjs} +2 -2
- package/dist/{litElement.mixin-CHvyxfxf.cjs.map → litElement.mixin-Cypiq-N-.cjs.map} +1 -1
- package/dist/{menu-BcSplMNh.cjs → menu-CDjqdEd6.cjs} +2 -2
- package/dist/{menu-BcSplMNh.cjs.map → menu-CDjqdEd6.cjs.map} +1 -1
- package/dist/{menu-Dl1QU86K.js → menu-n_Doj-bW.js} +3 -3
- package/dist/{menu-Dl1QU86K.js.map → menu-n_Doj-bW.js.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-BV9ybQBu.cjs → notification-service--VLqOJJg.cjs} +2 -2
- package/dist/{notification-service-BV9ybQBu.cjs.map → notification-service--VLqOJJg.cjs.map} +1 -1
- package/dist/{notification-service-CC698xHg.js → notification-service-DHIhgWQr.js} +3 -3
- package/dist/{notification-service-CC698xHg.js.map → notification-service-DHIhgWQr.js.map} +1 -1
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-CkLBgH71.cjs → option-B359EBiZ.cjs} +2 -2
- package/dist/{option-CkLBgH71.cjs.map → option-B359EBiZ.cjs.map} +1 -1
- package/dist/{option-DDxxXwwc.js → option-oyyjCwnL.js} +2 -2
- package/dist/{option-DDxxXwwc.js.map → option-oyyjCwnL.js.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{payment-card-form-UWbAYNPR.cjs → payment-card-form-B-ZAsSED.cjs} +2 -2
- package/dist/{payment-card-form-UWbAYNPR.cjs.map → payment-card-form-B-ZAsSED.cjs.map} +1 -1
- package/dist/{payment-card-form-DDTO5_AA.js → payment-card-form-BSueaw97.js} +3 -3
- package/dist/{payment-card-form-DDTO5_AA.js.map → payment-card-form-BSueaw97.js.map} +1 -1
- package/dist/{radio-button-wWoxPDfq.js → radio-button-84TD7rpH.js} +2 -2
- package/dist/{radio-button-wWoxPDfq.js.map → radio-button-84TD7rpH.js.map} +1 -1
- package/dist/{radio-button-BykiVxTD.cjs → radio-button-BO6mIWCi.cjs} +2 -2
- package/dist/{radio-button-BykiVxTD.cjs.map → radio-button-BO6mIWCi.cjs.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/{schmancy-steps-container-B1mIGa9M.cjs → schmancy-steps-container-Cfq8OsWt.cjs} +2 -2
- package/dist/{schmancy-steps-container-B1mIGa9M.cjs.map → schmancy-steps-container-Cfq8OsWt.cjs.map} +1 -1
- package/dist/{schmancy-steps-container-ByO98z7L.js → schmancy-steps-container-Lo4d27n3.js} +2 -2
- package/dist/{schmancy-steps-container-ByO98z7L.js.map → schmancy-steps-container-Lo4d27n3.js.map} +1 -1
- package/dist/{select-BIOhocL7.js → select-B-zgP_v6.js} +3 -3
- package/dist/{select-BIOhocL7.js.map → select-B-zgP_v6.js.map} +1 -1
- package/dist/{select-DE57Nios.cjs → select-DhEVsWh6.cjs} +2 -2
- package/dist/{select-DE57Nios.cjs.map → select-DhEVsWh6.cjs.map} +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{sheet-fZYAWGsm.cjs → sheet-BEWq40cN.cjs} +2 -2
- package/dist/{sheet-fZYAWGsm.cjs.map → sheet-BEWq40cN.cjs.map} +1 -1
- package/dist/{sheet-Dh4MLVsU.js → sheet-DDY4pbD4.js} +3 -3
- package/dist/{sheet-Dh4MLVsU.js.map → sheet-DDY4pbD4.js.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +1 -1
- package/dist/{slider-DVlJoDgU.js → slider--irxEv_B.js} +3 -3
- package/dist/{slider-DVlJoDgU.js.map → slider--irxEv_B.js.map} +1 -1
- package/dist/{slider-CejrdmPF.cjs → slider-De-H5fe8.cjs} +2 -2
- package/dist/{slider-CejrdmPF.cjs.map → slider-De-H5fe8.cjs.map} +1 -1
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{spinner-DbTnai_Q.js → spinner-Bl9n09Z5.js} +3 -3
- package/dist/{spinner-DbTnai_Q.js.map → spinner-Bl9n09Z5.js.map} +1 -1
- package/dist/{spinner-DxVJ7QJZ.cjs → spinner-DNz1IjmL.cjs} +2 -2
- package/dist/{spinner-DxVJ7QJZ.cjs.map → spinner-DNz1IjmL.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/surface-BAEUiWcq.cjs +92 -0
- package/dist/surface-BAEUiWcq.cjs.map +1 -0
- package/dist/surface-h9dLHMTm.js +113 -0
- package/dist/surface-h9dLHMTm.js.map +1 -0
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{table-CqUv1TOC.js → table-CxazXBjI.js} +72 -68
- package/dist/{table-CqUv1TOC.js.map → table-CxazXBjI.js.map} +1 -1
- package/dist/{table-CBhyHINV.cjs → table-Dn07ykGG.cjs} +4 -4
- package/dist/{table-CBhyHINV.cjs.map → table-Dn07ykGG.cjs.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-compatibility-DUo2f_sV.js → tabs-compatibility-B8I0vg7Y.js} +2 -2
- package/dist/{tabs-compatibility-DUo2f_sV.js.map → tabs-compatibility-B8I0vg7Y.js.map} +1 -1
- package/dist/{tabs-compatibility-DPD6jfGF.cjs → tabs-compatibility-BrTxeSS-.cjs} +2 -2
- package/dist/{tabs-compatibility-DPD6jfGF.cjs.map → tabs-compatibility-BrTxeSS-.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-Du4i6vQR.js +43 -0
- package/dist/{tailwind.mixin-Di7KWye7.js.map → tailwind.mixin-Du4i6vQR.js.map} +1 -1
- package/dist/tailwind.mixin-qyIcoDLk.cjs +2 -0
- package/dist/{tailwind.mixin-Dm5QDZav.cjs.map → tailwind.mixin-qyIcoDLk.cjs.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-Dbz18REy.js → textarea-DibCLxC2.js} +2 -2
- package/dist/{textarea-Dbz18REy.js.map → textarea-DibCLxC2.js.map} +1 -1
- package/dist/{textarea-CesFdBkm.cjs → textarea-pMec4Wpg.cjs} +2 -2
- package/dist/{textarea-CesFdBkm.cjs.map → textarea-pMec4Wpg.cjs.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-button-Bt2OV4iu.cjs → theme-button-CG1w_waw.cjs} +2 -2
- package/dist/{theme-button-Bt2OV4iu.cjs.map → theme-button-CG1w_waw.cjs.map} +1 -1
- package/dist/{theme-button-lqbT2_LL.js → theme-button-irLEczd5.js} +2 -2
- package/dist/{theme-button-lqbT2_LL.js.map → theme-button-irLEczd5.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-xarFSe8p.js → theme.component-CMM8Xws2.js} +2 -2
- package/dist/{theme.component-xarFSe8p.js.map → theme.component-CMM8Xws2.js.map} +1 -1
- package/dist/{theme.component-BlBaN7d6.cjs → theme.component-CpRuySmd.cjs} +3 -3
- package/dist/{theme.component-BlBaN7d6.cjs.map → theme.component-CpRuySmd.cjs.map} +1 -1
- package/dist/theme.js +1 -1
- package/dist/{timezone-DwT_pQrj.js → timezone-DIrmlnD6.js} +3 -3
- package/dist/{timezone-DwT_pQrj.js.map → timezone-DIrmlnD6.js.map} +1 -1
- package/dist/{timezone-VUMRmZaJ.cjs → timezone-n5GflDRe.cjs} +2 -2
- package/dist/{timezone-VUMRmZaJ.cjs.map → timezone-n5GflDRe.cjs.map} +1 -1
- package/dist/{tooltip-Cvoroe7w.cjs → tooltip-0vIcVm5-.cjs} +2 -2
- package/dist/{tooltip-Cvoroe7w.cjs.map → tooltip-0vIcVm5-.cjs.map} +1 -1
- package/dist/{tooltip-BKOHVCMK.js → tooltip-N_B-vsDa.js} +2 -2
- package/dist/{tooltip-BKOHVCMK.js.map → tooltip-N_B-vsDa.js.map} +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tooltip.js +1 -1
- package/dist/{tree-_FJnHVmP.js → tree-2Hf2X0Hv.js} +2 -2
- package/dist/{tree-_FJnHVmP.js.map → tree-2Hf2X0Hv.js.map} +1 -1
- package/dist/{tree-Cyp2AZ8g.cjs → tree-Q8AMxJxP.cjs} +2 -2
- package/dist/{tree-Cyp2AZ8g.cjs.map → tree-Q8AMxJxP.cjs.map} +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{typewriter-BIm2tOe4.cjs → typewriter-CsL-NfYC.cjs} +2 -2
- package/dist/{typewriter-BIm2tOe4.cjs.map → typewriter-CsL-NfYC.cjs.map} +1 -1
- package/dist/{typewriter-DWfXPBni.js → typewriter-bqbNKczJ.js} +22 -22
- package/dist/{typewriter-DWfXPBni.js.map → typewriter-bqbNKczJ.js.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/{typography-DaKLzjFB.js → typography-CbrvouLo.js} +2 -2
- package/dist/{typography-DaKLzjFB.js.map → typography-CbrvouLo.js.map} +1 -1
- package/dist/{typography-OpLt6LNd.cjs → typography-Hlts-hzc.cjs} +2 -2
- package/dist/{typography-OpLt6LNd.cjs.map → typography-Hlts-hzc.cjs.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/dist/utils-BqFGvnN9.cjs +2 -0
- package/dist/utils-BqFGvnN9.cjs.map +1 -0
- package/dist/utils-jduntaQU.js +128 -0
- package/dist/utils-jduntaQU.js.map +1 -0
- package/package.json +13 -14
- package/types/src/area/area.component.d.ts +1 -1
- package/types/src/area/area.service.d.ts +44 -26
- package/types/src/area/index.d.ts +1 -0
- package/types/src/area/utils.d.ts +91 -1
- package/types/src/checkbox/checkbox.d.ts +9 -0
- package/types/src/circular-progress/circular-progress.d.ts +15 -0
- package/types/src/circular-progress/index.d.ts +1 -0
- package/types/src/dialog/dailog.d.ts +8 -0
- package/types/src/dialog/dialog-service.d.ts +1 -0
- package/types/src/index.d.ts +1 -0
- package/types/src/table/table.d.ts +1 -0
- package/dist/area.component-CzFJM7Y4.js +0 -143
- package/dist/area.component-CzFJM7Y4.js.map +0 -1
- package/dist/area.component-WxccFh1z.cjs +0 -8
- package/dist/area.component-WxccFh1z.cjs.map +0 -1
- package/dist/avatar-Bmg5TXj9.cjs.map +0 -1
- package/dist/avatar-CgP1tBZq.js.map +0 -1
- package/dist/date-range-Ca9WLI4Q.js.map +0 -1
- package/dist/dialog-content-9pumpyLD.js.map +0 -1
- package/dist/dialog-content-qj1E8aye.cjs.map +0 -1
- package/dist/surface-BTuzKmT2.cjs +0 -20
- package/dist/surface-BTuzKmT2.cjs.map +0 -1
- package/dist/surface-DXx1bJN4.js +0 -43
- package/dist/surface-DXx1bJN4.js.map +0 -1
- package/dist/tailwind.mixin-Di7KWye7.js +0 -43
- package/dist/tailwind.mixin-Dm5QDZav.cjs +0 -2
package/dist/ai/area.md
CHANGED
|
@@ -1,125 +1,205 @@
|
|
|
1
|
-
# Schmancy Area
|
|
1
|
+
# Schmancy Area
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
Schmancy Area is a lightweight, reactive routing and state management system for web components with RxJS integration.
|
|
4
|
+
|
|
5
|
+
## Component Usage
|
|
6
|
+
|
|
7
|
+
```html
|
|
8
|
+
<!-- Basic router outlet -->
|
|
9
|
+
<schmancy-area
|
|
10
|
+
name="main"
|
|
7
11
|
default="home-component">
|
|
8
12
|
</schmancy-area>
|
|
13
|
+
```
|
|
9
14
|
|
|
10
|
-
|
|
15
|
+
## Properties
|
|
16
|
+
|
|
17
|
+
| Property | Type | Description |
|
|
18
|
+
|----------|------|-------------|
|
|
19
|
+
| `name` | `string` | **Required**. Unique identifier for this router outlet. |
|
|
20
|
+
| `default` | `string \| Promise<NodeModule> \| CustomElementConstructor \| TemplateResult` | Default component to display if none is specified. |
|
|
21
|
+
|
|
22
|
+
## Service API
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
// Import the area service
|
|
11
26
|
import { area } from '@schmancy/area';
|
|
12
27
|
|
|
13
28
|
// Navigation methods
|
|
14
29
|
area.push({
|
|
15
|
-
component:
|
|
16
|
-
area: '
|
|
17
|
-
state?: { view: 'profile' },
|
|
18
|
-
params?: { id: '123' },
|
|
19
|
-
historyStrategy: 'push'
|
|
30
|
+
component: 'user-profile', // Component constructor, string tag name, or element instance
|
|
31
|
+
area: 'main', // Target area name
|
|
32
|
+
state?: { view: 'profile' }, // Optional state object
|
|
33
|
+
params?: { id: '123' }, // Optional parameters
|
|
34
|
+
historyStrategy: 'push', // 'push', 'replace', 'pop', 'silent'
|
|
35
|
+
clearQueryParams?: ['sort'] // Clear specific query params
|
|
20
36
|
});
|
|
21
37
|
|
|
22
|
-
area.pop('sidebar');
|
|
38
|
+
area.pop('sidebar'); // Remove an area
|
|
23
39
|
|
|
24
|
-
// Subscription methods
|
|
25
|
-
area.on(areaName, skipCurrent?)
|
|
26
|
-
area.all(skipCurrent?)
|
|
27
|
-
area.getState<T>(areaName)
|
|
28
|
-
area.params<T>(areaName)
|
|
29
|
-
area.param<T>(areaName, key)
|
|
40
|
+
// Subscription methods (return RxJS Observables)
|
|
41
|
+
area.on(areaName, skipCurrent?) // Subscribe to an area
|
|
42
|
+
area.all(skipCurrent?) // Subscribe to all areas
|
|
43
|
+
area.getState<T>(areaName) // Get typed state from an area
|
|
44
|
+
area.params<T>(areaName) // Get typed params from an area
|
|
45
|
+
area.param<T>(areaName, key) // Get a specific param value
|
|
46
|
+
```
|
|
30
47
|
|
|
31
|
-
|
|
32
|
-
schmancy-area-${areaName}-changed
|
|
48
|
+
## Examples
|
|
33
49
|
|
|
34
|
-
|
|
35
|
-
|
|
50
|
+
### Basic Navigation
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
// Navigate to a component
|
|
36
54
|
area.push({
|
|
37
55
|
component: 'home-page',
|
|
38
|
-
area: 'main'
|
|
39
|
-
historyStrategy: 'push'
|
|
56
|
+
area: 'main'
|
|
40
57
|
});
|
|
41
58
|
|
|
42
|
-
//
|
|
59
|
+
// Navigate with parameters and state
|
|
43
60
|
area.push({
|
|
44
61
|
component: ProductDetailComponent,
|
|
45
62
|
area: 'main',
|
|
46
63
|
params: { productId: '12345' },
|
|
64
|
+
state: { showReviews: true },
|
|
47
65
|
historyStrategy: 'push'
|
|
48
66
|
});
|
|
67
|
+
```
|
|
49
68
|
|
|
50
|
-
|
|
69
|
+
### Multiple Independent Areas
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
// Update multiple areas independently
|
|
73
|
+
area.push({ component: 'product-list', area: 'main' });
|
|
74
|
+
area.push({ component: 'filter-panel', area: 'sidebar' });
|
|
75
|
+
|
|
76
|
+
// Open a modal dialog
|
|
77
|
+
area.push({
|
|
78
|
+
component: 'dialog-component',
|
|
79
|
+
area: 'modal',
|
|
80
|
+
params: { id: '123' }
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
// Close a modal
|
|
84
|
+
area.pop('modal');
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Reactive Subscriptions
|
|
88
|
+
|
|
89
|
+
```ts
|
|
90
|
+
// Subscribe to area changes
|
|
51
91
|
area.on('main').subscribe(route => {
|
|
52
|
-
console.log(`Component: ${route.component}
|
|
92
|
+
console.log(`Component: ${route.component}`);
|
|
93
|
+
console.log(`Params:`, route.params);
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
// Type-safe state and params
|
|
97
|
+
interface UserState { name: string; role: string; }
|
|
98
|
+
interface UserParams { id: string; tab?: string; }
|
|
99
|
+
|
|
100
|
+
area.getState<UserState>('user').subscribe(state => {
|
|
101
|
+
updateUserInfo(state.name, state.role);
|
|
53
102
|
});
|
|
54
103
|
|
|
55
|
-
|
|
104
|
+
area.params<UserParams>('user').subscribe(params => {
|
|
105
|
+
fetchUser(params.id);
|
|
106
|
+
setActiveTab(params.tab || 'profile');
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
// Get a specific parameter
|
|
56
110
|
area.param<string>('product', 'productId').subscribe(id => {
|
|
57
111
|
fetchProductDetails(id);
|
|
58
112
|
});
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### DOM Events
|
|
59
116
|
|
|
60
|
-
|
|
117
|
+
Areas also dispatch DOM events for non-RxJS consumers:
|
|
118
|
+
|
|
119
|
+
```js
|
|
120
|
+
// Format: schmancy-area-${areaName}-changed
|
|
61
121
|
window.addEventListener('schmancy-area-main-changed', event => {
|
|
62
|
-
const { component, params } = event.detail;
|
|
63
|
-
updateUI(component, params);
|
|
122
|
+
const { component, params, state } = event.detail;
|
|
123
|
+
updateUI(component, params, state);
|
|
64
124
|
});
|
|
65
125
|
```
|
|
66
126
|
|
|
67
|
-
##
|
|
68
|
-
- **[Teleport](./teleport.md)**: Can be used with Area for advanced component transportation
|
|
69
|
-
- **[Store](./store.md)**: Complements Area for more complex state management
|
|
70
|
-
- **[Layout](./layout.md)**: Often used as a container for areas
|
|
127
|
+
## Advanced Usage
|
|
71
128
|
|
|
72
|
-
|
|
129
|
+
### Lazy Loading Components
|
|
73
130
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
131
|
+
```ts
|
|
132
|
+
area.push({
|
|
133
|
+
component: import('./components/heavy-dashboard.js'),
|
|
134
|
+
area: 'main'
|
|
135
|
+
});
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Navigation Guards
|
|
139
|
+
|
|
140
|
+
```ts
|
|
141
|
+
import { switchMap, EMPTY, of } from 'rxjs';
|
|
142
|
+
|
|
143
|
+
area.on('protected-area').pipe(
|
|
144
|
+
switchMap(route => {
|
|
145
|
+
if (!isAuthenticated()) {
|
|
146
|
+
area.push({ component: 'login-page', area: 'main' });
|
|
147
|
+
return EMPTY;
|
|
148
|
+
}
|
|
149
|
+
return of(route);
|
|
150
|
+
})
|
|
151
|
+
).subscribe(handleProtectedRoute);
|
|
82
152
|
```
|
|
83
153
|
|
|
84
|
-
###
|
|
85
|
-
|
|
154
|
+
### Component Reloading Pattern
|
|
155
|
+
|
|
156
|
+
When updating the same component with different parameters, use this pattern to ensure re-rendering:
|
|
157
|
+
|
|
158
|
+
```ts
|
|
159
|
+
// First push to the main routing area to force component re-creation
|
|
160
|
+
area.push({
|
|
161
|
+
area: 'main-area',
|
|
162
|
+
component: 'user-profile',
|
|
163
|
+
params: { userId: '456' },
|
|
164
|
+
historyStrategy: 'push'
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
// Then update any subscription areas with the silent history strategy
|
|
168
|
+
area.push({
|
|
169
|
+
area: 'user-area',
|
|
170
|
+
component: 'user-profile',
|
|
171
|
+
params: { userId: '456' },
|
|
172
|
+
historyStrategy: 'silent' // Don't create history entry
|
|
173
|
+
});
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
This works around the `distinctUntilChanged` behavior in the Area component that compares only component names, not params.
|
|
177
|
+
|
|
178
|
+
## Related Components
|
|
179
|
+
|
|
180
|
+
- **[Store](./store.md)** - For more complex state management
|
|
181
|
+
- **[Layout](./layout.md)** - For responsive layouts
|
|
182
|
+
- **[Teleport](./teleport.md)** - For advanced component transportation
|
|
183
|
+
- **[Sheet](./sheet.md)** - For modal overlays
|
|
184
|
+
|
|
185
|
+
## Type Definitions
|
|
186
|
+
|
|
187
|
+
```ts
|
|
188
|
+
// Route Action - used for navigation
|
|
86
189
|
interface RouteAction {
|
|
87
|
-
component: CustomElementConstructor | string | HTMLElement
|
|
190
|
+
component: CustomElementConstructor | string | HTMLElement | Promise<NodeModule>;
|
|
88
191
|
area: string;
|
|
89
192
|
state?: Record<string, unknown>;
|
|
90
193
|
params?: Record<string, unknown>;
|
|
91
194
|
historyStrategy?: 'push' | 'replace' | 'pop' | 'silent';
|
|
92
195
|
clearQueryParams?: string[] | null;
|
|
93
196
|
}
|
|
94
|
-
```
|
|
95
197
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
2. **Typed Params and State**: Use TypeScript generics for type safety
|
|
106
|
-
```typescript
|
|
107
|
-
interface UserParams { id: string; tab?: string; }
|
|
108
|
-
area.params<UserParams>('user').subscribe(params => {
|
|
109
|
-
fetchUser(params.id);
|
|
110
|
-
setActiveTab(params.tab || 'profile');
|
|
111
|
-
});
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
3. **Navigation Guards**: Implement navigation guards with RxJS operators
|
|
115
|
-
```typescript
|
|
116
|
-
area.on('protected').pipe(
|
|
117
|
-
switchMap(route => {
|
|
118
|
-
if (!isAuthenticated()) {
|
|
119
|
-
area.push({ component: 'login-page', area: 'main' });
|
|
120
|
-
return EMPTY;
|
|
121
|
-
}
|
|
122
|
-
return of(route);
|
|
123
|
-
})
|
|
124
|
-
).subscribe(handleProtectedRoute);
|
|
125
|
-
```
|
|
198
|
+
// Active Route - current state of an area
|
|
199
|
+
interface ActiveRoute {
|
|
200
|
+
component: string;
|
|
201
|
+
area: string;
|
|
202
|
+
state?: Record<string, unknown>;
|
|
203
|
+
params?: Record<string, unknown>;
|
|
204
|
+
}
|
|
205
|
+
```
|
package/dist/ai/card.md
CHANGED
|
@@ -1,155 +1,186 @@
|
|
|
1
1
|
# Schmancy Card - AI Reference
|
|
2
2
|
|
|
3
3
|
```js
|
|
4
|
-
//
|
|
5
|
-
<schmancy-card
|
|
6
|
-
|
|
4
|
+
// Card Component
|
|
5
|
+
<schmancy-card
|
|
6
|
+
type="elevated|filled|outlined"
|
|
7
|
+
elevation="0|1|2|3|4|5">
|
|
8
|
+
Card content
|
|
7
9
|
</schmancy-card>
|
|
8
10
|
|
|
9
|
-
//
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
<h2>Card Title</h2>
|
|
13
|
-
<p>Card description text goes here.</p>
|
|
14
|
-
</schmancy-card-content>
|
|
15
|
-
</schmancy-card>
|
|
11
|
+
// Properties
|
|
12
|
+
type: string // "elevated", "filled", "outlined" (default: "elevated")
|
|
13
|
+
elevation: number // Shadow depth 0-5 (default: 0)
|
|
16
14
|
|
|
17
|
-
// Card
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
alt="Image description"
|
|
22
|
-
height="200px">
|
|
23
|
-
</schmancy-card-media>
|
|
24
|
-
|
|
25
|
-
<schmancy-card-content>
|
|
26
|
-
<h2>Card with Media</h2>
|
|
27
|
-
<p>Card content below the image.</p>
|
|
28
|
-
</schmancy-card-content>
|
|
29
|
-
</schmancy-card>
|
|
15
|
+
// Card Types
|
|
16
|
+
"elevated" // Surface with shadow, uses surface-low color
|
|
17
|
+
"filled" // Filled background, uses surface-highest color
|
|
18
|
+
"outlined" // Border outline, uses surface color
|
|
30
19
|
|
|
31
|
-
//
|
|
20
|
+
// Examples
|
|
21
|
+
// 1. Basic elevated card
|
|
32
22
|
<schmancy-card>
|
|
33
|
-
<
|
|
34
|
-
|
|
35
|
-
<p>Card content with action buttons.</p>
|
|
36
|
-
</schmancy-card-content>
|
|
37
|
-
|
|
38
|
-
<schmancy-card-actions>
|
|
39
|
-
<schmancy-button>Action 1</schmancy-button>
|
|
40
|
-
<schmancy-button>Action 2</schmancy-button>
|
|
41
|
-
</schmancy-card-actions>
|
|
23
|
+
<h3>Card Title</h3>
|
|
24
|
+
<p>Card content goes here</p>
|
|
42
25
|
</schmancy-card>
|
|
43
26
|
|
|
44
|
-
//
|
|
45
|
-
<schmancy-card>
|
|
46
|
-
<schmancy-card-media
|
|
47
|
-
|
|
48
|
-
alt="Image description">
|
|
27
|
+
// 2. Filled card with custom elevation
|
|
28
|
+
<schmancy-card type="filled" elevation="2">
|
|
29
|
+
<schmancy-card-media>
|
|
30
|
+
<img src="image.jpg" alt="Card image">
|
|
49
31
|
</schmancy-card-media>
|
|
50
|
-
|
|
51
32
|
<schmancy-card-content>
|
|
52
|
-
<
|
|
53
|
-
<p>
|
|
33
|
+
<h3>Product Name</h3>
|
|
34
|
+
<p>Product description</p>
|
|
54
35
|
</schmancy-card-content>
|
|
55
|
-
|
|
56
36
|
<schmancy-card-actions>
|
|
57
|
-
<schmancy-button
|
|
58
|
-
<schmancy-button kind="primary">Submit</schmancy-button>
|
|
37
|
+
<schmancy-button>Add to Cart</schmancy-button>
|
|
59
38
|
</schmancy-card-actions>
|
|
60
39
|
</schmancy-card>
|
|
61
40
|
|
|
62
|
-
//
|
|
63
|
-
outlined
|
|
64
|
-
|
|
65
|
-
|
|
41
|
+
// 3. Outlined card
|
|
42
|
+
<schmancy-card type="outlined">
|
|
43
|
+
<div style="padding: 16px;">
|
|
44
|
+
<h4>Settings</h4>
|
|
45
|
+
<p>Configure your preferences</p>
|
|
46
|
+
</div>
|
|
47
|
+
</schmancy-card>
|
|
66
48
|
|
|
67
|
-
//
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
49
|
+
// 4. Interactive card with hover effect
|
|
50
|
+
<schmancy-card elevation="1">
|
|
51
|
+
<a href="/details" style="text-decoration: none; color: inherit;">
|
|
52
|
+
<div style="padding: 16px;">
|
|
53
|
+
<h3>Click for Details</h3>
|
|
54
|
+
<p>This card has hover elevation changes</p>
|
|
55
|
+
</div>
|
|
56
|
+
</a>
|
|
57
|
+
</schmancy-card>
|
|
58
|
+
```
|
|
72
59
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
60
|
+
## Related Components
|
|
61
|
+
- **[Surface](./surface.md)**: Base container component with more options
|
|
62
|
+
- **[Card Content](./card.md#content)**: Structured content area
|
|
63
|
+
- **[Card Media](./card.md#media)**: Media container for cards
|
|
64
|
+
- **[Card Actions](./card.md#actions)**: Action button container
|
|
76
65
|
|
|
77
|
-
|
|
78
|
-
// Basic card with content
|
|
79
|
-
<schmancy-card>
|
|
80
|
-
<schmancy-card-content>
|
|
81
|
-
<h2>Welcome to Schmancy</h2>
|
|
82
|
-
<p>A modern component library for web applications.</p>
|
|
83
|
-
</schmancy-card-content>
|
|
84
|
-
</schmancy-card>
|
|
66
|
+
## Technical Details
|
|
85
67
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
<h3>Click Me</h3>
|
|
92
|
-
<p>This entire card is clickable.</p>
|
|
93
|
-
</schmancy-card-content>
|
|
94
|
-
</schmancy-card>
|
|
68
|
+
### CSS Host Styling
|
|
69
|
+
The component uses `:host` selectors for all styling:
|
|
70
|
+
- No wrapper elements - clean component boundary
|
|
71
|
+
- Type and elevation properties reflect to HTML attributes
|
|
72
|
+
- Automatic hover states for elevated and outlined types
|
|
95
73
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
</schmancy-card>
|
|
74
|
+
### Theme Integration
|
|
75
|
+
```css
|
|
76
|
+
/* Type-based colors */
|
|
77
|
+
type="elevated" -> --schmancy-sys-color-surface-low
|
|
78
|
+
type="filled" -> --schmancy-sys-color-surface-highest
|
|
79
|
+
type="outlined" -> --schmancy-sys-color-surface-default
|
|
103
80
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
</
|
|
122
|
-
</
|
|
81
|
+
/* Outline color */
|
|
82
|
+
--schmancy-sys-color-outlineVariant
|
|
83
|
+
|
|
84
|
+
/* Elevation shadows */
|
|
85
|
+
--schmancy-sys-elevation-1 through --schmancy-sys-elevation-5
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Hover Behavior
|
|
89
|
+
- Elevated cards: elevation 1 → 2 on hover
|
|
90
|
+
- Filled cards: no elevation → 1 on hover
|
|
91
|
+
- Outlined cards: no elevation → 1 on hover
|
|
92
|
+
|
|
93
|
+
## Card Sub-components
|
|
94
|
+
|
|
95
|
+
### Card Content
|
|
96
|
+
```html
|
|
97
|
+
<schmancy-card-content>
|
|
98
|
+
<h3>Title</h3>
|
|
99
|
+
<p>Description text</p>
|
|
100
|
+
</schmancy-card-content>
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Card Media
|
|
104
|
+
```html
|
|
105
|
+
<schmancy-card-media>
|
|
106
|
+
<img src="image.jpg" alt="Media">
|
|
107
|
+
</schmancy-card-media>
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Card Actions
|
|
111
|
+
```html
|
|
112
|
+
<schmancy-card-actions>
|
|
113
|
+
<schmancy-button>Action 1</schmancy-button>
|
|
114
|
+
<schmancy-button variant="text">Action 2</schmancy-button>
|
|
115
|
+
</schmancy-card-actions>
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Common Use Cases
|
|
119
|
+
|
|
120
|
+
1. **Product Cards**: E-commerce product display
|
|
121
|
+
```html
|
|
122
|
+
<schmancy-card type="elevated">
|
|
123
|
+
<schmancy-card-media>
|
|
124
|
+
<img src="product.jpg" alt="Product">
|
|
125
|
+
</schmancy-card-media>
|
|
126
|
+
<schmancy-card-content>
|
|
127
|
+
<h3>Product Name</h3>
|
|
128
|
+
<p class="price">$29.99</p>
|
|
129
|
+
<p class="description">Product description...</p>
|
|
130
|
+
</schmancy-card-content>
|
|
131
|
+
<schmancy-card-actions>
|
|
132
|
+
<schmancy-button variant="filled">Add to Cart</schmancy-button>
|
|
133
|
+
<schmancy-button variant="text">Details</schmancy-button>
|
|
134
|
+
</schmancy-card-actions>
|
|
135
|
+
</schmancy-card>
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
2. **Info Cards**: Dashboard or stats display
|
|
139
|
+
```html
|
|
140
|
+
<schmancy-card type="filled" elevation="0">
|
|
141
|
+
<div style="padding: 24px;">
|
|
142
|
+
<schmancy-icon icon="users" size="32"></schmancy-icon>
|
|
143
|
+
<h2>1,234</h2>
|
|
144
|
+
<p>Active Users</p>
|
|
145
|
+
</div>
|
|
146
|
+
</schmancy-card>
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
3. **Settings Cards**: Options or configuration
|
|
150
|
+
```html
|
|
151
|
+
<schmancy-card type="outlined">
|
|
152
|
+
<schmancy-card-content>
|
|
153
|
+
<h4>Notification Settings</h4>
|
|
154
|
+
<schmancy-form>
|
|
155
|
+
<schmancy-checkbox>Email notifications</schmancy-checkbox>
|
|
156
|
+
<schmancy-checkbox>Push notifications</schmancy-checkbox>
|
|
157
|
+
</schmancy-form>
|
|
158
|
+
</schmancy-card-content>
|
|
159
|
+
</schmancy-card>
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
4. **Media Cards**: Image galleries
|
|
163
|
+
```html
|
|
164
|
+
<schmancy-card elevation="2">
|
|
165
|
+
<schmancy-card-media aspect-ratio="16:9">
|
|
166
|
+
<img src="gallery-image.jpg" alt="Gallery">
|
|
167
|
+
</schmancy-card-media>
|
|
168
|
+
<schmancy-card-content>
|
|
169
|
+
<p>Image caption or description</p>
|
|
170
|
+
</schmancy-card-content>
|
|
171
|
+
</schmancy-card>
|
|
172
|
+
```
|
|
123
173
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
<schmancy-card-content>
|
|
139
|
-
<h3>${product.name}</h3>
|
|
140
|
-
<p>${product.description}</p>
|
|
141
|
-
<p><strong>${product.price}</strong></p>
|
|
142
|
-
</schmancy-card-content>
|
|
143
|
-
|
|
144
|
-
<schmancy-card-actions>
|
|
145
|
-
<schmancy-button @click=${() => viewProduct(product)}>
|
|
146
|
-
View
|
|
147
|
-
</schmancy-button>
|
|
148
|
-
<schmancy-button kind="primary" @click=${() => addToCart(product)}>
|
|
149
|
-
Add to Cart
|
|
150
|
-
</schmancy-button>
|
|
151
|
-
</schmancy-card-actions>
|
|
152
|
-
</schmancy-card>
|
|
153
|
-
`)}
|
|
154
|
-
</schmancy-grid>
|
|
155
|
-
```
|
|
174
|
+
5. **List Item Cards**: Clickable list items
|
|
175
|
+
```html
|
|
176
|
+
<schmancy-card type="elevated" elevation="1">
|
|
177
|
+
<a href="/user/123" style="display: flex; padding: 16px; align-items: center; text-decoration: none; color: inherit;">
|
|
178
|
+
<schmancy-avatar src="user.jpg"></schmancy-avatar>
|
|
179
|
+
<div style="margin-left: 16px; flex: 1;">
|
|
180
|
+
<h4>User Name</h4>
|
|
181
|
+
<p>user@example.com</p>
|
|
182
|
+
</div>
|
|
183
|
+
<schmancy-icon icon="chevron-right"></schmancy-icon>
|
|
184
|
+
</a>
|
|
185
|
+
</schmancy-card>
|
|
186
|
+
```
|