@mhmo91/schmancy 0.10.19 → 0.10.21
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/custom-elements.json +0 -62
- package/dist/agent/{overlay.confirm-body-D3jQyXgA.js → overlay.confirm-body-DXus8d-w.js} +1 -1
- package/dist/agent/{overlay.confirm-body-D3jQyXgA.js.map → overlay.confirm-body-DXus8d-w.js.map} +1 -1
- package/dist/agent/schmancy.agent.js +2043 -2083
- package/dist/agent/schmancy.agent.js.map +1 -1
- package/dist/agent/schmancy.manifest.json +1 -48
- package/dist/area-Cbkt0NX4.cjs +21 -0
- package/dist/area-Cbkt0NX4.cjs.map +1 -0
- package/dist/{area-BIipuSyO.js → area-Ddk7P5wD.js} +101 -131
- package/dist/area-Ddk7P5wD.js.map +1 -0
- package/dist/area.cjs +1 -1
- package/dist/area.js +1 -1
- package/dist/{autocomplete-B8CE5vGw.cjs → autocomplete-CfBFDSc3.cjs} +1 -1
- package/dist/{autocomplete-B8CE5vGw.cjs.map → autocomplete-CfBFDSc3.cjs.map} +1 -1
- package/dist/{autocomplete-Mrb3koUN.js → autocomplete-Ds3Q2cwR.js} +2 -2
- package/dist/{autocomplete-Mrb3koUN.js.map → autocomplete-Ds3Q2cwR.js.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/avatar.cjs +1 -1
- package/dist/avatar.js +1 -1
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-CNWIQPA1.js → boat-BF5P6p_f.js} +1 -1
- package/dist/{boat-CNWIQPA1.js.map → boat-BF5P6p_f.js.map} +1 -1
- package/dist/{boat-OatK_MGh.cjs → boat-BPN8HLzZ.cjs} +1 -1
- package/dist/{boat-OatK_MGh.cjs.map → boat-BPN8HLzZ.cjs.map} +1 -1
- package/dist/boat.cjs +1 -1
- package/dist/boat.js +1 -1
- package/dist/breadcrumb.cjs +1 -1
- package/dist/breadcrumb.js +1 -1
- package/dist/{busy-Cetzws-m.js → busy-BuACDJy6.js} +1 -1
- package/dist/{busy-Cetzws-m.js.map → busy-BuACDJy6.js.map} +1 -1
- package/dist/{busy-CMKX4oQf.cjs → busy-C7ejPa-Q.cjs} +1 -1
- package/dist/{busy-CMKX4oQf.cjs.map → busy-C7ejPa-Q.cjs.map} +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.cjs +15 -9
- package/dist/button.cjs.map +1 -1
- package/dist/button.js +15 -9
- package/dist/button.js.map +1 -1
- package/dist/{card-8VXoo2C_.cjs → card-BIzaLuEg.cjs} +1 -1
- package/dist/{card-8VXoo2C_.cjs.map → card-BIzaLuEg.cjs.map} +1 -1
- package/dist/{card-D2k3dRL0.js → card-CgQwXO8L.js} +1 -1
- package/dist/{card-D2k3dRL0.js.map → card-CgQwXO8L.js.map} +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{checkbox-Cq5wzeaY.cjs → checkbox-BAqE3sTx.cjs} +1 -1
- package/dist/{checkbox-Cq5wzeaY.cjs.map → checkbox-BAqE3sTx.cjs.map} +1 -1
- package/dist/{checkbox-8hNsBejz.js → checkbox-BNdg57Om.js} +1 -1
- package/dist/{checkbox-8hNsBejz.js.map → checkbox-BNdg57Om.js.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-Dx_WvOGk.cjs → chips-DS3y4Lbn.cjs} +2 -4
- package/dist/chips-DS3y4Lbn.cjs.map +1 -0
- package/dist/{chips-D1kJrbzo.js → chips-DnqLaOb1.js} +3 -5
- package/dist/chips-DnqLaOb1.js.map +1 -0
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +2 -2
- package/dist/connectivity.cjs +1 -1
- package/dist/connectivity.js +1 -1
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/{date-range-H903Vt_r.cjs → date-range-CsJfjbmi.cjs} +1 -1
- package/dist/{date-range-H903Vt_r.cjs.map → date-range-CsJfjbmi.cjs.map} +1 -1
- package/dist/{date-range-Dv-DM6mB.js → date-range-aPSmSBhk.js} +2 -2
- package/dist/{date-range-Dv-DM6mB.js.map → date-range-aPSmSBhk.js.map} +1 -1
- package/dist/{date-range-inline-Bvs2ZvEY.cjs → date-range-inline-CAa0_4EI.cjs} +1 -1
- package/dist/{date-range-inline-Bvs2ZvEY.cjs.map → date-range-inline-CAa0_4EI.cjs.map} +1 -1
- package/dist/{date-range-inline-TWWnTZlw.js → date-range-inline-PeRt1iIF.js} +1 -1
- package/dist/{date-range-inline-TWWnTZlw.js.map → date-range-inline-PeRt1iIF.js.map} +1 -1
- package/dist/date-range-inline.cjs +1 -1
- package/dist/date-range-inline.js +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{details-CwSDur6j.cjs → details-BnXbDpt7.cjs} +2 -2
- package/dist/details-BnXbDpt7.cjs.map +1 -0
- package/dist/{details-Cpg8sH2F.js → details-BpFjVclg.js} +2 -2
- package/dist/details-BpFjVclg.js.map +1 -0
- package/dist/details.cjs +1 -1
- package/dist/details.js +1 -1
- package/dist/directives.cjs +3 -3
- package/dist/directives.cjs.map +1 -1
- package/dist/directives.js +290 -203
- package/dist/directives.js.map +1 -1
- package/dist/{divider-BNdVLE0H.cjs → divider-B84lt1A3.cjs} +1 -1
- package/dist/{divider-BNdVLE0H.cjs.map → divider-B84lt1A3.cjs.map} +1 -1
- package/dist/{divider-Be833gGZ.js → divider-D8cBBkdG.js} +1 -1
- package/dist/{divider-Be833gGZ.js.map → divider-D8cBBkdG.js.map} +1 -1
- package/dist/divider.cjs +1 -1
- package/dist/divider.js +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/{expand-CtoffNNj.js → expand-BJiKggfg.js} +2 -2
- package/dist/{expand-CtoffNNj.js.map → expand-BJiKggfg.js.map} +1 -1
- package/dist/{expand-BP6RLzHw.cjs → expand-DK-O37-j.cjs} +1 -1
- package/dist/{expand-BP6RLzHw.cjs.map → expand-DK-O37-j.cjs.map} +1 -1
- package/dist/expand.cjs +1 -1
- package/dist/expand.js +1 -1
- package/dist/{float-KmbhaQHA.js → float-B4FDN40h.js} +1 -1
- package/dist/{float-KmbhaQHA.js.map → float-B4FDN40h.js.map} +1 -1
- package/dist/{float-CfbQM_2v.cjs → float-RWR6Q1Hh.cjs} +1 -1
- package/dist/{float-CfbQM_2v.cjs.map → float-RWR6Q1Hh.cjs.map} +1 -1
- package/dist/float.cjs +1 -1
- package/dist/float.js +1 -1
- package/dist/{form-8IcmP8uV.js → form-Bz5WamuM.js} +8 -8
- package/dist/{form-8IcmP8uV.js.map → form-Bz5WamuM.js.map} +1 -1
- package/dist/{form-CuBIrKOA.cjs → form-PioZDvzA.cjs} +1 -1
- package/dist/{form-CuBIrKOA.cjs.map → form-PioZDvzA.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +6 -6
- package/dist/handover/agent-runtime-followups.md +1 -1
- package/dist/handover/agent-runtime-v1.md +3 -3
- package/dist/{icons-D7df1ysG.js → icons-BgUbHwy8.js} +1 -1
- package/dist/{icons-D7df1ysG.js.map → icons-BgUbHwy8.js.map} +1 -1
- package/dist/{icons-BJld4JHp.cjs → icons-morK4hHz.cjs} +1 -1
- package/dist/{icons-BJld4JHp.cjs.map → icons-morK4hHz.cjs.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/{iframe-GT6D8l5Z.cjs → iframe-BXe1TPx1.cjs} +1 -1
- package/dist/{iframe-GT6D8l5Z.cjs.map → iframe-BXe1TPx1.cjs.map} +1 -1
- package/dist/{iframe-DAbgW9tT.js → iframe-CByrVlZy.js} +1 -1
- package/dist/{iframe-DAbgW9tT.js.map → iframe-CByrVlZy.js.map} +1 -1
- package/dist/iframe.cjs +1 -1
- package/dist/iframe.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +55 -56
- package/dist/{input-BE9wEEw4.cjs → input-BY9OCQWr.cjs} +1 -1
- package/dist/{input-BE9wEEw4.cjs.map → input-BY9OCQWr.cjs.map} +1 -1
- package/dist/{input-DC6ap_uN.js → input-Q0fm34Co.js} +2 -2
- package/dist/{input-DC6ap_uN.js.map → input-Q0fm34Co.js.map} +1 -1
- package/dist/{input-chip-MsiMu-b5.cjs → input-chip-BwNf3GD0.cjs} +1 -1
- package/dist/{input-chip-MsiMu-b5.cjs.map → input-chip-BwNf3GD0.cjs.map} +1 -1
- package/dist/{input-chip-c5n547tg.js → input-chip-CytUirVS.js} +1 -1
- package/dist/{input-chip-c5n547tg.js.map → input-chip-CytUirVS.js.map} +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/json.cjs +1 -1
- package/dist/json.js +2 -2
- package/dist/kbd.cjs +1 -1
- package/dist/kbd.js +1 -1
- package/dist/layout.cjs +26 -1
- package/dist/layout.cjs.map +1 -0
- package/dist/layout.js +115 -2
- package/dist/layout.js.map +1 -0
- package/dist/{lightbox-CNX9Eg3U.js → lightbox-Ckvn5YNF.js} +1 -1
- package/dist/{lightbox-CNX9Eg3U.js.map → lightbox-Ckvn5YNF.js.map} +1 -1
- package/dist/{lightbox-HqJBBjAT.cjs → lightbox-p2E0oVR0.cjs} +1 -1
- package/dist/{lightbox-HqJBBjAT.cjs.map → lightbox-p2E0oVR0.cjs.map} +1 -1
- package/dist/lightbox.cjs +1 -1
- package/dist/lightbox.js +1 -1
- package/dist/{list-C76Pb-c1.js → list-CsrPVvmm.js} +1 -1
- package/dist/{list-C76Pb-c1.js.map → list-CsrPVvmm.js.map} +1 -1
- package/dist/{list-bhyuQSyO.cjs → list-r57UFHu3.cjs} +1 -1
- package/dist/{list-bhyuQSyO.cjs.map → list-r57UFHu3.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{menu-BqKQ-s0C.cjs → menu-BOZ2iwed.cjs} +1 -1
- package/dist/{menu-BqKQ-s0C.cjs.map → menu-BOZ2iwed.cjs.map} +1 -1
- package/dist/{menu-C5ksITpG.js → menu-CxE16xur.js} +2 -2
- package/dist/{menu-C5ksITpG.js.map → menu-CxE16xur.js.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/mixins-DTCHPEd4.cjs +254 -0
- package/dist/{mixins-Du9HMrIG.cjs.map → mixins-DTCHPEd4.cjs.map} +1 -1
- package/dist/mixins-pU53qf6R.js +636 -0
- package/dist/{mixins-DCVXqL1Q.js.map → mixins-pU53qf6R.js.map} +1 -1
- package/dist/mixins.cjs +1 -1
- package/dist/mixins.js +1 -1
- package/dist/nav-drawer.cjs +1 -1
- package/dist/nav-drawer.js +1 -1
- package/dist/navigation-bar.cjs +1 -1
- package/dist/navigation-bar.js +1 -1
- package/dist/navigation-rail.cjs +1 -1
- package/dist/navigation-rail.js +1 -1
- package/dist/{notification-DR3gvWt8.cjs → notification-58tkVys8.cjs} +1 -1
- package/dist/{notification-DR3gvWt8.cjs.map → notification-58tkVys8.cjs.map} +1 -1
- package/dist/{notification-eZxtr3NN.js → notification-CgTBiAdf.js} +2 -2
- package/dist/{notification-eZxtr3NN.js.map → notification-CgTBiAdf.js.map} +1 -1
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-BDOKUqTy.cjs → option-61YE3gub.cjs} +1 -1
- package/dist/{option-BDOKUqTy.cjs.map → option-61YE3gub.cjs.map} +1 -1
- package/dist/{option-CBEHYG4U.js → option-Bicf6xpI.js} +1 -1
- package/dist/{option-CBEHYG4U.js.map → option-Bicf6xpI.js.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{overlay-DG6EeyKt.cjs → overlay-B3gKPWhu.cjs} +2 -2
- package/dist/overlay-B3gKPWhu.cjs.map +1 -0
- package/dist/{overlay-oxM9OLXP.js → overlay-D3mdWOLS.js} +12 -11
- package/dist/overlay-D3mdWOLS.js.map +1 -0
- package/dist/overlay.cjs +1 -1
- package/dist/{overlay.confirm-body-D_P2e7l6.js → overlay.confirm-body-Czi6cMZq.js} +1 -1
- package/dist/{overlay.confirm-body-D_P2e7l6.js.map → overlay.confirm-body-Czi6cMZq.js.map} +1 -1
- package/dist/{overlay.confirm-body-78e1WrN9.cjs → overlay.confirm-body-yr0HzS_d.cjs} +1 -1
- package/dist/{overlay.confirm-body-78e1WrN9.cjs.map → overlay.confirm-body-yr0HzS_d.cjs.map} +1 -1
- package/dist/overlay.js +3 -3
- package/dist/{overlay.service-C8NwO4Bx.js → overlay.service-BfZf3xoD.js} +2 -2
- package/dist/{overlay.service-C8NwO4Bx.js.map → overlay.service-BfZf3xoD.js.map} +1 -1
- package/dist/{overlay.service-DQkGPUY7.cjs → overlay.service-DNs3AWqp.cjs} +1 -1
- package/dist/{overlay.service-DQkGPUY7.cjs.map → overlay.service-DNs3AWqp.cjs.map} +1 -1
- package/dist/{progress-CMSst_2U.cjs → progress-D8XZJVl5.cjs} +1 -1
- package/dist/{progress-CMSst_2U.cjs.map → progress-D8XZJVl5.cjs.map} +1 -1
- package/dist/{progress-C4kDZfb7.js → progress-Zqx-S9NZ.js} +1 -1
- package/dist/{progress-C4kDZfb7.js.map → progress-Zqx-S9NZ.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/radio-group-D9MU1Mxz.js +71 -0
- package/dist/radio-group-D9MU1Mxz.js.map +1 -0
- package/dist/radio-group-bl8K4Gls.cjs +19 -0
- package/dist/radio-group-bl8K4Gls.cjs.map +1 -0
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/range.cjs +1 -1
- package/dist/range.js +1 -1
- package/dist/{rxjs-utils-Cs6XGwF6.js.map → rxjs-utils-BK8VMe3K.js.map} +1 -1
- package/dist/{rxjs-utils-Dsj75cJy.cjs.map → rxjs-utils-DhOKenkS.cjs.map} +1 -1
- package/dist/rxjs-utils.cjs +1 -1
- package/dist/rxjs-utils.js +1 -1
- package/dist/{select-UU2pB67h.js → select-CMwkl-D6.js} +3 -3
- package/dist/select-CMwkl-D6.js.map +1 -0
- package/dist/select-COIfVtZl.cjs +56 -0
- package/dist/select-COIfVtZl.cjs.map +1 -0
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.js +1 -1
- package/dist/skills/SKILL.md +18 -2
- package/dist/skills/area.md +13 -0
- package/dist/skills/overlay.md +13 -0
- package/dist/skills/page.md +71 -29
- package/dist/skills/schmancy/SKILL.md +18 -2
- package/dist/skills/schmancy/area.md +13 -0
- package/dist/skills/schmancy/overlay.md +13 -0
- package/dist/skills/schmancy/page.md +71 -29
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{splash-screen-BvaDkvJU.cjs → splash-screen-2hxq8Sft.cjs} +1 -1
- package/dist/{splash-screen-BvaDkvJU.cjs.map → splash-screen-2hxq8Sft.cjs.map} +1 -1
- package/dist/{splash-screen-ChMkAPLU.js → splash-screen-xrMNpzkm.js} +1 -1
- package/dist/{splash-screen-ChMkAPLU.js.map → splash-screen-xrMNpzkm.js.map} +1 -1
- package/dist/splash-screen.cjs +1 -1
- package/dist/splash-screen.js +1 -1
- package/dist/{src-DnunCC4X.js → src-CHd-U-w4.js} +34 -35
- package/dist/{src-DnunCC4X.js.map → src-CHd-U-w4.js.map} +1 -1
- package/dist/{src-BIlD63Cz.cjs → src-ggWtvpDr.cjs} +1 -1
- package/dist/{src-BIlD63Cz.cjs.map → src-ggWtvpDr.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +1 -1
- package/dist/{surface-DCRy-EyT.js → surface-3nnvlxeE.js} +1 -1
- package/dist/{surface-DCRy-EyT.js.map → surface-3nnvlxeE.js.map} +1 -1
- package/dist/{surface-DWwQDX9r.cjs → surface-BkQ44Wuo.cjs} +1 -1
- package/dist/{surface-DWwQDX9r.cjs.map → surface-BkQ44Wuo.cjs.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/switch.cjs +1 -1
- package/dist/switch.js +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-CkDNLbiS.js → tabs-CnLIe8nE.js} +1 -1
- package/dist/{tabs-CkDNLbiS.js.map → tabs-CnLIe8nE.js.map} +1 -1
- package/dist/{tabs-lxQHWEb7.cjs → tabs-Dql0rcqZ.cjs} +1 -1
- package/dist/{tabs-lxQHWEb7.cjs.map → tabs-Dql0rcqZ.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-DkfGmRSI.js → textarea-BAogS_Ff.js} +1 -1
- package/dist/{textarea-DkfGmRSI.js.map → textarea-BAogS_Ff.js.map} +1 -1
- package/dist/{textarea-CNa4dSvF.cjs → textarea-CGD6lAEe.cjs} +1 -1
- package/dist/{textarea-CNa4dSvF.cjs.map → textarea-CGD6lAEe.cjs.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-CNWRYdfn.js → theme-CUK0HrS3.js} +1 -1
- package/dist/{theme-CNWRYdfn.js.map → theme-CUK0HrS3.js.map} +1 -1
- package/dist/{theme-CMyXTDht.cjs → theme-DKrrQ-ic.cjs} +1 -1
- package/dist/{theme-CMyXTDht.cjs.map → theme-DKrrQ-ic.cjs.map} +1 -1
- package/dist/{theme-button-CixloLin.js → theme-button-Bb8qW2IH.js} +1 -1
- package/dist/{theme-button-CixloLin.js.map → theme-button-Bb8qW2IH.js.map} +1 -1
- package/dist/{theme-button-kMhsX5Oe.cjs → theme-button-CmTwFm3l.cjs} +1 -1
- package/dist/{theme-button-kMhsX5Oe.cjs.map → theme-button-CmTwFm3l.cjs.map} +1 -1
- package/dist/theme-button.cjs +1 -1
- package/dist/theme-button.js +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.js +2 -2
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/dist/{utils-DXE5fBBd.js.map → utils-Cxg0Kfy5.js.map} +1 -1
- package/dist/{utils-C-Q8ePtG.cjs.map → utils-aCJYAGUr.cjs.map} +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +1 -1
- package/dist/visually-hidden.cjs +1 -1
- package/dist/visually-hidden.js +1 -1
- package/dist/{window-qaGFMn_4.cjs → window-BbWlaPZv.cjs} +1 -1
- package/dist/{window-qaGFMn_4.cjs.map → window-BbWlaPZv.cjs.map} +1 -1
- package/dist/{window-BcvDNi9D.js → window-DuDAQa6y.js} +1 -1
- package/dist/{window-BcvDNi9D.js.map → window-DuDAQa6y.js.map} +1 -1
- package/dist/window.cjs +1 -1
- package/dist/window.js +1 -1
- package/package.json +1 -1
- package/skills/schmancy/SKILL.md +18 -2
- package/skills/schmancy/area.md +13 -0
- package/skills/schmancy/overlay.md +13 -0
- package/skills/schmancy/page.md +71 -29
- package/src/CLAUDE.md +20 -0
- package/src/area/area.component.ts +168 -343
- package/src/button/button.ts +8 -5
- package/src/button/icon-button.ts +8 -5
- package/src/chips/filter-chip.ts +1 -3
- package/src/details/details.ts +1 -1
- package/src/directives/fill.ts +137 -0
- package/src/directives/index.ts +2 -0
- package/src/directives/overflow-within.ts +186 -0
- package/src/form/fields/radio-group/radio-button.ts +22 -44
- package/src/form/fields/radio-group/radio-group.ts +20 -75
- package/src/form/fields/select/select.ts +3 -2
- package/src/index.ts +0 -1
- package/src/overlay/index.ts +1 -0
- package/src/overlay/overlay.component.ts +38 -39
- package/src/overlay/overlay.positioning.ts +10 -2
- package/src/overlay/overlay.types.ts +10 -3
- package/src/state/schmancy-state.html +897 -0
- package/src/state/schmancy-state.md +981 -0
- package/types/src/area/area.component.d.ts +0 -15
- package/types/src/button/icon-button.d.ts +1 -1
- package/types/src/directives/fill.d.ts +46 -0
- package/types/src/directives/index.d.ts +2 -0
- package/types/src/directives/overflow-within.d.ts +77 -0
- package/types/src/form/fields/radio-group/radio-button.d.ts +2 -5
- package/types/src/form/fields/radio-group/radio-group.d.ts +2 -10
- package/types/src/index.d.ts +0 -1
- package/types/src/overlay/index.d.ts +1 -1
- package/types/src/overlay/overlay.positioning.d.ts +9 -1
- package/types/src/overlay/overlay.types.d.ts +9 -3
- package/dist/area-BIipuSyO.js.map +0 -1
- package/dist/area-C-EMiNEE.cjs +0 -12
- package/dist/area-C-EMiNEE.cjs.map +0 -1
- package/dist/chips-D1kJrbzo.js.map +0 -1
- package/dist/chips-Dx_WvOGk.cjs.map +0 -1
- package/dist/details-Cpg8sH2F.js.map +0 -1
- package/dist/details-CwSDur6j.cjs.map +0 -1
- package/dist/mixins-DCVXqL1Q.js +0 -636
- package/dist/mixins-Du9HMrIG.cjs +0 -254
- package/dist/overlay-DG6EeyKt.cjs.map +0 -1
- package/dist/overlay-oxM9OLXP.js.map +0 -1
- package/dist/page.cjs +0 -20
- package/dist/page.cjs.map +0 -1
- package/dist/page.js +0 -74
- package/dist/page.js.map +0 -1
- package/dist/radio-group-DB9D2ZkA.js +0 -108
- package/dist/radio-group-DB9D2ZkA.js.map +0 -1
- package/dist/radio-group-dVUvYFq7.cjs +0 -40
- package/dist/radio-group-dVUvYFq7.cjs.map +0 -1
- package/dist/scroll-C1klVgSQ.js +0 -115
- package/dist/scroll-C1klVgSQ.js.map +0 -1
- package/dist/scroll-S-bXF2u6.cjs +0 -26
- package/dist/scroll-S-bXF2u6.cjs.map +0 -1
- package/dist/select-UU2pB67h.js.map +0 -1
- package/dist/select-fu_-rZyn.cjs +0 -56
- package/dist/select-fu_-rZyn.cjs.map +0 -1
- package/src/page/index.ts +0 -1
- package/src/page/page.ts +0 -137
- package/types/src/page/index.d.ts +0 -1
- package/types/src/page/page.d.ts +0 -37
- /package/dist/{rxjs-utils-Cs6XGwF6.js → rxjs-utils-BK8VMe3K.js} +0 -0
- /package/dist/{rxjs-utils-Dsj75cJy.cjs → rxjs-utils-DhOKenkS.cjs} +0 -0
- /package/dist/{utils-DXE5fBBd.js → utils-Cxg0Kfy5.js} +0 -0
- /package/dist/{utils-C-Q8ePtG.cjs → utils-aCJYAGUr.cjs} +0 -0
|
@@ -26,6 +26,19 @@ private handlePick = (ev: MouseEvent) => {
|
|
|
26
26
|
|
|
27
27
|
Centered is the fallback (no anchor given). Sheet is the responsive adaptation (narrow viewport / touch / oversized content). You never pick layout — the system does.
|
|
28
28
|
|
|
29
|
+
## Content forms
|
|
30
|
+
|
|
31
|
+
`show()` accepts four content forms:
|
|
32
|
+
|
|
33
|
+
| Form | When to use |
|
|
34
|
+
|---|---|
|
|
35
|
+
| `show(MyComponent)` | Component class — most common |
|
|
36
|
+
| `show(html\`...\`)` | Inline template (eager — values frozen at call site) |
|
|
37
|
+
| `show(() => html\`...\`)` | **Preferred for templates** — factory called at mount time; closed-over variables are read lazily, no snapshot staleness |
|
|
38
|
+
| `show(lazy(() => import('./x')))` | Async / code-split component |
|
|
39
|
+
|
|
40
|
+
Always prefer `() => html\`...\`` over `html\`...\`` when the template closes over any variable — the factory form evaluates those variables at mount time rather than baking them in at the call site.
|
|
41
|
+
|
|
29
42
|
## API
|
|
30
43
|
|
|
31
44
|
| Export | Signature | Purpose |
|
package/skills/schmancy/page.md
CHANGED
|
@@ -1,42 +1,84 @@
|
|
|
1
1
|
# schmancy-page
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> Viewport-locked layout primitive. Provides a definite-height frame so any composition inside it has a parent to resolve against.
|
|
4
|
+
|
|
5
|
+
## Contract
|
|
6
|
+
|
|
7
|
+
Two rules and one slot.
|
|
8
|
+
|
|
9
|
+
1. **Outermost lock.** A `<schmancy-page>` with no `<schmancy-page>` ancestor anchors itself to the visual viewport (`position: fixed; inset: 0`) and tracks `visualViewport.height` for iOS soft-keyboard correctness. It does not rely on `html`/`body` height — the cascade above it is irrelevant.
|
|
10
|
+
2. **Single-child stretch.** The slotted child fills the page box (`height: 100%; width: 100%; min-height: 0; min-width: 0`). More than one direct child produces a visible layout collision — fail-loud, not silent.
|
|
11
|
+
|
|
12
|
+
Composition shape is plain CSS grid / flex inside the slotted child. The primitive does not prescribe header / footer / sidebar conventions; consumers arrange regions in standard CSS. The contract is the locked frame.
|
|
4
13
|
|
|
5
14
|
## Usage
|
|
15
|
+
|
|
16
|
+
### App root
|
|
6
17
|
```html
|
|
7
|
-
<schmancy-page
|
|
8
|
-
<
|
|
9
|
-
|
|
10
|
-
|
|
18
|
+
<schmancy-page>
|
|
19
|
+
<schmancy-area name="root" .default=${landing}>
|
|
20
|
+
<schmancy-route when="landing-view" .component=${landing}></schmancy-route>
|
|
21
|
+
<schmancy-route when="app-home" .component=${appHome}></schmancy-route>
|
|
22
|
+
</schmancy-area>
|
|
11
23
|
</schmancy-page>
|
|
12
24
|
```
|
|
13
25
|
|
|
14
|
-
|
|
15
|
-
| Property | Type | Default | Description |
|
|
16
|
-
|----------|------|---------|-------------|
|
|
17
|
-
| `rows` | string | `'auto_1fr_auto'` | Grid template rows — underscores become spaces (e.g. `'1fr_2fr_auto'`) |
|
|
18
|
-
| `show-scrollbar` | boolean | `false` | Display scrollbar on scrollable area |
|
|
19
|
-
| `no-select` | boolean | `false` | Disable text selection |
|
|
20
|
-
|
|
21
|
-
## Behavior
|
|
22
|
-
- Listens to `visualViewport` resize/scroll + `orientationchange` + keyboard focus events to recompute height.
|
|
23
|
-
- Accounts for theme bottom offset (iOS safe area, home indicator).
|
|
24
|
-
- Auto-assigns semantic elements (`header`, `main`, `footer`) to slots.
|
|
25
|
-
- Inner scroll area uses `schmancy-scroll` for momentum-preserving scroll.
|
|
26
|
-
|
|
27
|
-
## When to Use
|
|
28
|
-
- Root of a mobile view or panel that should feel like a native page.
|
|
29
|
-
- Any container where viewport-aware height + scroll containment matters.
|
|
30
|
-
|
|
31
|
-
## Example — 3-row app shell
|
|
26
|
+
### Sidebar + sticky header + body
|
|
32
27
|
```html
|
|
33
|
-
<schmancy-page
|
|
34
|
-
<
|
|
35
|
-
<
|
|
36
|
-
|
|
28
|
+
<schmancy-page>
|
|
29
|
+
<div class="grid grid-cols-[auto_1fr]">
|
|
30
|
+
<app-rail></app-rail>
|
|
31
|
+
<schmancy-page>
|
|
32
|
+
<div class="grid grid-rows-[auto_1fr]">
|
|
33
|
+
<app-top-bar></app-top-bar>
|
|
34
|
+
<schmancy-area name="app">...</schmancy-area>
|
|
35
|
+
</div>
|
|
36
|
+
</schmancy-page>
|
|
37
|
+
</div>
|
|
38
|
+
</schmancy-page>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
The inner `<schmancy-page>` detects the outer ancestor, skips the viewport lock, and fills its grid cell via `height: 100%; width: 100%`.
|
|
37
42
|
|
|
38
|
-
|
|
43
|
+
### Tabs page
|
|
44
|
+
```html
|
|
45
|
+
<div class="grid grid-rows-[auto_1fr]">
|
|
46
|
+
<schmancy-tabs></schmancy-tabs>
|
|
47
|
+
<schmancy-area name="settings">...</schmancy-area>
|
|
48
|
+
</div>
|
|
49
|
+
```
|
|
39
50
|
|
|
40
|
-
|
|
51
|
+
No `<schmancy-page>` here — this view is the routed body of a higher `<schmancy-page>`. The grid resolves against the area's `1fr` cell, which the area inherits from the page.
|
|
52
|
+
|
|
53
|
+
### Admin shell (four regions)
|
|
54
|
+
```html
|
|
55
|
+
<schmancy-page>
|
|
56
|
+
<div class="grid grid-rows-[auto_1fr]">
|
|
57
|
+
<admin-top-bar></admin-top-bar>
|
|
58
|
+
<div class="grid grid-cols-[240px_1fr_320px]">
|
|
59
|
+
<admin-sidebar></admin-sidebar>
|
|
60
|
+
<schmancy-area name="admin"></schmancy-area>
|
|
61
|
+
<admin-inspector></admin-inspector>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
41
64
|
</schmancy-page>
|
|
42
65
|
```
|
|
66
|
+
|
|
67
|
+
## Properties
|
|
68
|
+
|
|
69
|
+
`<schmancy-page>` has no public properties. Composition is expressed by what you nest inside its single slot.
|
|
70
|
+
|
|
71
|
+
The `outermost` attribute is set automatically on the page that owns the viewport lock. Consumers neither set nor read it.
|
|
72
|
+
|
|
73
|
+
## Edge cases
|
|
74
|
+
|
|
75
|
+
- **Print** — outermost page falls back to `position: static` so pagination works.
|
|
76
|
+
- **iOS soft keyboard** — outermost page reads `visualViewport.height` and applies it as inline `height`, so the locked box shrinks when the keyboard opens.
|
|
77
|
+
- **Long-form leaf (marketing, legal)** — opt out at the leaf, not at the page. The routed component declares its own `:host { height: auto; overflow: auto; min-height: 100% }`. The outer page stays locked; the leaf scrolls inside its `<schmancy-area>`.
|
|
78
|
+
- **Master-detail with two scroll regions** — render two `<schmancy-area>` slots inside a grid; each owns its scroll.
|
|
79
|
+
|
|
80
|
+
## Rules
|
|
81
|
+
|
|
82
|
+
- A `<schmancy-page>` has exactly one direct child. If you need multiple regions, wrap them in a grid / flex container.
|
|
83
|
+
- Do not put `class="h-full"`, `class="w-full"`, or `:host { height: 100% }` anywhere in your tree. The page and the area carry sizing; consumer code never does.
|
|
84
|
+
- Scroll lives in `<schmancy-area>`, not in `<schmancy-page>`. Pages provide the locked frame; areas provide the scrolling region for their mounted component.
|
package/src/CLAUDE.md
CHANGED
|
@@ -18,6 +18,26 @@ by the Claude Code plugin. Drift here means drift everywhere.
|
|
|
18
18
|
|
|
19
19
|
## Source-author rules (not in the consumer docs)
|
|
20
20
|
|
|
21
|
+
### Host sizing — `inline-flex` + `flex-1` pattern
|
|
22
|
+
|
|
23
|
+
Every component whose `:host` carries visual affordances (box-shadow, transform) must follow the same pattern native `<button>` uses:
|
|
24
|
+
|
|
25
|
+
```css
|
|
26
|
+
/* ✓ correct */
|
|
27
|
+
:host { display: inline-flex; } /* host is a flex container */
|
|
28
|
+
:host([width="full"]) { display: flex; width: 100%; }
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
/* inner interactive element */
|
|
33
|
+
'flex-1 ...' : true, /* ✓ resolves against the flex container's available space */
|
|
34
|
+
'w-full ...' : true, /* ✗ resolves against the containing block content-box — wrong when host is blockified by a parent flex layout */
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
**Why `flex-1` not `w-full`:** when a flex/grid parent stretches the `<schmancy-button>` host, `width: 100%` on the inner `<button>` resolves against the host's *containing-block content-box*, which remains content-sized for `inline-flex` hosts. The outer (flex-stretched) size and the inner (content-sized) size split — the inner element is narrower than the host, so `:host(:hover)` box-shadow fires across the full stretched area while the visible button fill is narrower. `flex-1` uses `flex-basis: 0` + grow, which resolves against the flex container's *available space* — always the stretched width — with no circular-percentage issue. This matches native `<button>` behavior: content-sized inline, stretches in flex containers.
|
|
38
|
+
|
|
39
|
+
**Applies to:** `schmancy-button`, `schmancy-icon-button`, and any future component with host-level visual affordances.
|
|
40
|
+
|
|
21
41
|
### Component skeleton
|
|
22
42
|
|
|
23
43
|
Every concrete component:
|