@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/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
|
+
```
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# Schmancy Circular Progress - AI Reference
|
|
2
|
+
|
|
3
|
+
```js
|
|
4
|
+
// Circular Progress Component
|
|
5
|
+
<schmancy-circular-progress
|
|
6
|
+
size="xs|sm|md|lg|xl|{custom}"
|
|
7
|
+
indeterminate?>
|
|
8
|
+
</schmancy-circular-progress>
|
|
9
|
+
|
|
10
|
+
// Properties
|
|
11
|
+
size: string // "xs", "sm", "md", "lg", "xl", or custom size (default: "md")
|
|
12
|
+
indeterminate: boolean // Whether the progress is indeterminate (default: false)
|
|
13
|
+
|
|
14
|
+
// Size values
|
|
15
|
+
"xs" = 16px
|
|
16
|
+
"sm" = 24px
|
|
17
|
+
"md" = 32px
|
|
18
|
+
"lg" = 48px
|
|
19
|
+
"xl" = 64px
|
|
20
|
+
|
|
21
|
+
// Examples
|
|
22
|
+
// 1. Basic medium progress
|
|
23
|
+
<schmancy-circular-progress></schmancy-circular-progress>
|
|
24
|
+
|
|
25
|
+
// 2. Large indeterminate progress
|
|
26
|
+
<schmancy-circular-progress
|
|
27
|
+
size="lg"
|
|
28
|
+
indeterminate>
|
|
29
|
+
</schmancy-circular-progress>
|
|
30
|
+
|
|
31
|
+
// 3. Custom size
|
|
32
|
+
<schmancy-circular-progress size="100">
|
|
33
|
+
</schmancy-circular-progress>
|
|
34
|
+
|
|
35
|
+
// 4. Small progress indicator
|
|
36
|
+
<schmancy-circular-progress size="xs">
|
|
37
|
+
</schmancy-circular-progress>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Related Components
|
|
41
|
+
- **[Busy](./busy.md)**: Parent component providing spinner functionality
|
|
42
|
+
- **[Button](./button.md)**: Often used with buttons to show loading state
|
|
43
|
+
|
|
44
|
+
## Technical Details
|
|
45
|
+
|
|
46
|
+
### Implementation
|
|
47
|
+
- Internally uses `<schmancy-spinner>` component
|
|
48
|
+
- Size can be predefined string or custom CSS value
|
|
49
|
+
- Numeric values are converted to pixels
|
|
50
|
+
- Reflects indeterminate attribute to host element
|
|
51
|
+
|
|
52
|
+
### CSS Custom Properties
|
|
53
|
+
The component inherits spinner styling from the busy component.
|
|
54
|
+
|
|
55
|
+
## Common Use Cases
|
|
56
|
+
|
|
57
|
+
1. **Loading Buttons**: Show progress inside buttons
|
|
58
|
+
```html
|
|
59
|
+
<schmancy-button disabled>
|
|
60
|
+
<schmancy-circular-progress size="sm"></schmancy-circular-progress>
|
|
61
|
+
Processing...
|
|
62
|
+
</schmancy-button>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
2. **Page Loading**: Full-page loading indicator
|
|
66
|
+
```html
|
|
67
|
+
<div class="loading-overlay">
|
|
68
|
+
<schmancy-circular-progress
|
|
69
|
+
size="xl"
|
|
70
|
+
indeterminate>
|
|
71
|
+
</schmancy-circular-progress>
|
|
72
|
+
</div>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
3. **Inline Loading**: Small indicators in lists or tables
|
|
76
|
+
```html
|
|
77
|
+
<td>
|
|
78
|
+
<schmancy-circular-progress size="xs"></schmancy-circular-progress>
|
|
79
|
+
Loading data...
|
|
80
|
+
</td>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
4. **Card Loading State**: Centered in content areas
|
|
84
|
+
```html
|
|
85
|
+
<schmancy-card>
|
|
86
|
+
<div class="centered">
|
|
87
|
+
<schmancy-circular-progress size="lg"></schmancy-circular-progress>
|
|
88
|
+
<p>Fetching results...</p>
|
|
89
|
+
</div>
|
|
90
|
+
</schmancy-card>
|
|
91
|
+
```
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
# Content Drawer
|
|
2
|
+
|
|
3
|
+
Sliding panel system for navigation, overlays, and responsive layouts.
|
|
4
|
+
|
|
5
|
+
## Components
|
|
6
|
+
|
|
7
|
+
```js
|
|
8
|
+
// Main container that manages drawer behavior
|
|
9
|
+
<schmancy-content-drawer
|
|
10
|
+
?open="${boolean}" // Controls drawer visibility
|
|
11
|
+
position="left|right|top|bottom" // Drawer position (default: left)
|
|
12
|
+
variant="standard|modal|persistent" // Behavior type
|
|
13
|
+
breakpoint="1024px" // Responsive breakpoint
|
|
14
|
+
?backdrop="${boolean}" // Show backdrop when open
|
|
15
|
+
>
|
|
16
|
+
<schmancy-content-drawer-main>
|
|
17
|
+
// Main content that shifts when drawer opens
|
|
18
|
+
</schmancy-content-drawer-main>
|
|
19
|
+
|
|
20
|
+
<schmancy-content-drawer-sheet
|
|
21
|
+
width="256px" // Width for left/right drawers
|
|
22
|
+
height="auto" // Height for top/bottom drawers
|
|
23
|
+
offset="0" // Offset for nested drawers
|
|
24
|
+
>
|
|
25
|
+
// Drawer content
|
|
26
|
+
</schmancy-content-drawer-sheet>
|
|
27
|
+
</schmancy-content-drawer>
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Context API
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
import { contentDrawerContext } from '@schmancy/content-drawer'
|
|
34
|
+
|
|
35
|
+
// Create drawer controller
|
|
36
|
+
const drawer = contentDrawerContext.create('drawer-id')
|
|
37
|
+
|
|
38
|
+
// Control methods
|
|
39
|
+
drawer.open()
|
|
40
|
+
drawer.close()
|
|
41
|
+
drawer.toggle()
|
|
42
|
+
drawer.lock() // Prevent closing
|
|
43
|
+
drawer.unlock()
|
|
44
|
+
drawer.setPersistent(boolean)
|
|
45
|
+
|
|
46
|
+
// State access
|
|
47
|
+
drawer.isOpen -> boolean
|
|
48
|
+
drawer.state$ -> Observable<DrawerState>
|
|
49
|
+
|
|
50
|
+
// Events
|
|
51
|
+
@drawer-opened
|
|
52
|
+
@drawer-closed
|
|
53
|
+
@drawer-toggled -> { open: boolean }
|
|
54
|
+
@before-open
|
|
55
|
+
@before-close
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Examples
|
|
59
|
+
|
|
60
|
+
### 1. Basic Navigation Drawer
|
|
61
|
+
```html
|
|
62
|
+
<schmancy-content-drawer ?open="${drawerOpen}">
|
|
63
|
+
<schmancy-content-drawer-main>
|
|
64
|
+
<button @click="${() => drawerOpen = !drawerOpen}">Menu</button>
|
|
65
|
+
<main>App content</main>
|
|
66
|
+
</schmancy-content-drawer-main>
|
|
67
|
+
|
|
68
|
+
<schmancy-content-drawer-sheet width="280px">
|
|
69
|
+
<nav>
|
|
70
|
+
<a href="/home">Home</a>
|
|
71
|
+
<a href="/about">About</a>
|
|
72
|
+
</nav>
|
|
73
|
+
</schmancy-content-drawer-sheet>
|
|
74
|
+
</schmancy-content-drawer>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 2. Bottom Sheet
|
|
78
|
+
```html
|
|
79
|
+
<schmancy-content-drawer
|
|
80
|
+
?open="${sheetOpen}"
|
|
81
|
+
position="bottom"
|
|
82
|
+
@drawer-closed="${() => sheetOpen = false}"
|
|
83
|
+
>
|
|
84
|
+
<schmancy-content-drawer-main>
|
|
85
|
+
<button @click="${() => sheetOpen = true}">Show Options</button>
|
|
86
|
+
</schmancy-content-drawer-main>
|
|
87
|
+
|
|
88
|
+
<schmancy-content-drawer-sheet height="auto" max-height="50vh">
|
|
89
|
+
<div class="sheet-handle"></div>
|
|
90
|
+
<h3>Select Option</h3>
|
|
91
|
+
<schmancy-list>
|
|
92
|
+
<schmancy-list-item>Option 1</schmancy-list-item>
|
|
93
|
+
<schmancy-list-item>Option 2</schmancy-list-item>
|
|
94
|
+
</schmancy-list>
|
|
95
|
+
</schmancy-content-drawer-sheet>
|
|
96
|
+
</schmancy-content-drawer>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 3. Persistent Sidebar
|
|
100
|
+
```js
|
|
101
|
+
// Responsive persistent drawer
|
|
102
|
+
const drawer = contentDrawerContext.create('sidebar')
|
|
103
|
+
|
|
104
|
+
// Auto-persist on large screens
|
|
105
|
+
const mediaQuery = window.matchMedia('(min-width: 1024px)')
|
|
106
|
+
drawer.setPersistent(mediaQuery.matches)
|
|
107
|
+
mediaQuery.addEventListener('change', e => drawer.setPersistent(e.matches))
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
```html
|
|
111
|
+
<schmancy-content-drawer
|
|
112
|
+
.context="${drawer}"
|
|
113
|
+
variant="persistent"
|
|
114
|
+
breakpoint="1024px"
|
|
115
|
+
>
|
|
116
|
+
<schmancy-content-drawer-main>
|
|
117
|
+
<schmancy-app-bar>
|
|
118
|
+
<schmancy-icon-button
|
|
119
|
+
icon="menu"
|
|
120
|
+
@click="${() => drawer.toggle()}"
|
|
121
|
+
></schmancy-icon-button>
|
|
122
|
+
</schmancy-app-bar>
|
|
123
|
+
<main>Dashboard content</main>
|
|
124
|
+
</schmancy-content-drawer-main>
|
|
125
|
+
|
|
126
|
+
<schmancy-content-drawer-sheet width="240px">
|
|
127
|
+
<aside>Sidebar content</aside>
|
|
128
|
+
</schmancy-content-drawer-sheet>
|
|
129
|
+
</schmancy-content-drawer>
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### 4. Nested Drawers
|
|
133
|
+
```js
|
|
134
|
+
const mainDrawer = contentDrawerContext.create('main')
|
|
135
|
+
const subDrawer = contentDrawerContext.create('sub')
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
```html
|
|
139
|
+
<schmancy-content-drawer .context="${mainDrawer}">
|
|
140
|
+
<schmancy-content-drawer-main>
|
|
141
|
+
<!-- Nested drawer container -->
|
|
142
|
+
<schmancy-content-drawer .context="${subDrawer}">
|
|
143
|
+
<schmancy-content-drawer-main>
|
|
144
|
+
<button @click="${() => mainDrawer.open()}">Menu</button>
|
|
145
|
+
</schmancy-content-drawer-main>
|
|
146
|
+
|
|
147
|
+
<!-- Sub drawer -->
|
|
148
|
+
<schmancy-content-drawer-sheet width="280px" offset="240px">
|
|
149
|
+
<button @click="${() => subDrawer.close()}">Back</button>
|
|
150
|
+
<div>Sub menu content</div>
|
|
151
|
+
</schmancy-content-drawer-sheet>
|
|
152
|
+
</schmancy-content-drawer>
|
|
153
|
+
</schmancy-content-drawer-main>
|
|
154
|
+
|
|
155
|
+
<!-- Main drawer -->
|
|
156
|
+
<schmancy-content-drawer-sheet width="240px">
|
|
157
|
+
<button @click="${() => subDrawer.open()}">Open Submenu</button>
|
|
158
|
+
<div>Main menu content</div>
|
|
159
|
+
</schmancy-content-drawer-sheet>
|
|
160
|
+
</schmancy-content-drawer>
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## CSS Variables
|
|
164
|
+
|
|
165
|
+
```css
|
|
166
|
+
schmancy-content-drawer {
|
|
167
|
+
--drawer-width: 256px;
|
|
168
|
+
--drawer-background: var(--md-sys-color-surface);
|
|
169
|
+
--drawer-shadow: 0 8px 10px -5px rgba(0,0,0,0.2);
|
|
170
|
+
--drawer-transition-duration: 250ms;
|
|
171
|
+
--drawer-transition-timing: cubic-bezier(0.4, 0, 0.2, 1);
|
|
172
|
+
--backdrop-color: rgba(0, 0, 0, 0.5);
|
|
173
|
+
--drawer-z-index: 200;
|
|
174
|
+
}
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
## Related Components
|
|
178
|
+
|
|
179
|
+
- [Sheet](./sheet.md) - Simpler sheet component for modals
|
|
180
|
+
- [Navigation Drawer](./nav-drawer.md) - Specialized navigation component
|
|
181
|
+
- [Dialog](./dialog.md) - Modal dialogs
|
|
182
|
+
- [Layout](./layout.md) - Layout utilities
|
|
183
|
+
|
|
184
|
+
## Common Patterns
|
|
185
|
+
|
|
186
|
+
**Command Palette**: Top drawer with search input
|
|
187
|
+
**Help Panel**: Right drawer with contextual help
|
|
188
|
+
**Mobile Menu**: Left drawer for navigation
|
|
189
|
+
**Action Sheet**: Bottom drawer for mobile actions
|
|
190
|
+
**Settings Panel**: Persistent right drawer
|