@mhmo91/schmancy 0.10.37 → 0.10.39
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 +39 -0
- package/dist/{SchmancyElement-CDT2q1lA.js → SchmancyElement-BNnyBOwk.js} +9 -7
- package/dist/{SchmancyElement-CDT2q1lA.js.map → SchmancyElement-BNnyBOwk.js.map} +1 -1
- package/dist/{SchmancyElement-BHfQg3Tj.cjs → SchmancyElement-C41uPa6l.cjs} +2 -2
- package/dist/{SchmancyElement-BHfQg3Tj.cjs.map → SchmancyElement-C41uPa6l.cjs.map} +1 -1
- package/dist/agent/schmancy.agent.js +2334 -2297
- package/dist/agent/schmancy.agent.js.map +1 -1
- package/dist/area-2FrTZI_T.cjs +21 -0
- package/dist/area-2FrTZI_T.cjs.map +1 -0
- package/dist/{area-KtULlxuA.js → area-KVDzhT4s.js} +4 -4
- package/dist/area-KVDzhT4s.js.map +1 -0
- package/dist/area.cjs +1 -1
- package/dist/area.js +2 -2
- package/dist/{audio-zIJVTo_V.js → audio-D3gnp15Y.js} +1 -1
- package/dist/{audio-zIJVTo_V.js.map → audio-D3gnp15Y.js.map} +1 -1
- package/dist/{audio-CUMAv9D_.cjs → audio-EaD0Ggfh.cjs} +1 -1
- package/dist/{audio-CUMAv9D_.cjs.map → audio-EaD0Ggfh.cjs.map} +1 -1
- package/dist/audio.cjs +1 -1
- package/dist/audio.js +2 -2
- package/dist/autocomplete-DMmxsvUe.cjs +115 -0
- package/dist/autocomplete-DMmxsvUe.cjs.map +1 -0
- package/dist/{autocomplete-DIScyo8Q.js → autocomplete-DWiEqlQf.js} +96 -96
- package/dist/autocomplete-DWiEqlQf.js.map +1 -0
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/avatar.cjs +1 -1
- package/dist/avatar.js +3 -3
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-OBZ77exO.cjs → boat-DsFJNfPH.cjs} +1 -1
- package/dist/{boat-OBZ77exO.cjs.map → boat-DsFJNfPH.cjs.map} +1 -1
- package/dist/{boat-BHPqSqJd.js → boat-fqodYt2n.js} +4 -4
- package/dist/{boat-BHPqSqJd.js.map → boat-fqodYt2n.js.map} +1 -1
- package/dist/boat.cjs +1 -1
- package/dist/boat.js +1 -1
- package/dist/breadcrumb.cjs +3 -3
- package/dist/breadcrumb.cjs.map +1 -1
- package/dist/breadcrumb.js +4 -4
- package/dist/breadcrumb.js.map +1 -1
- package/dist/{busy-BJNsKSCM.cjs → busy-Cj_PV7oC.cjs} +1 -1
- package/dist/{busy-BJNsKSCM.cjs.map → busy-Cj_PV7oC.cjs.map} +1 -1
- package/dist/{busy-Dut78y4L.js → busy-enYCTssB.js} +2 -2
- package/dist/{busy-Dut78y4L.js.map → busy-enYCTssB.js.map} +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button-B9RfBt-n.cjs +63 -0
- package/dist/button-B9RfBt-n.cjs.map +1 -0
- package/dist/{button-kcpPQavY.js → button-D6LJC-HC.js} +11 -9
- package/dist/button-D6LJC-HC.js.map +1 -0
- package/dist/button.cjs +7 -6
- package/dist/button.cjs.map +1 -1
- package/dist/button.js +18 -16
- package/dist/button.js.map +1 -1
- package/dist/{card-DxSKxCid.js → card-BHTz1GwB.js} +16 -16
- package/dist/card-BHTz1GwB.js.map +1 -0
- package/dist/{card-BLxPLqdQ.cjs → card-ThG_ZaQE.cjs} +3 -3
- package/dist/card-ThG_ZaQE.cjs.map +1 -0
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/{checkbox-BCLkhp5G.cjs → checkbox-C4zeib84.cjs} +2 -2
- package/dist/{checkbox-BCLkhp5G.cjs.map → checkbox-C4zeib84.cjs.map} +1 -1
- package/dist/{checkbox-B1wiM3Dv.js → checkbox-Ce0DlAdW.js} +6 -6
- package/dist/{checkbox-B1wiM3Dv.js.map → checkbox-Ce0DlAdW.js.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-vWmwqQed.js → chips-BoZSpSh_.js} +21 -19
- package/dist/chips-BoZSpSh_.js.map +1 -0
- package/dist/{chips-C9dS1WKn.cjs → chips-wfJ7YtWv.cjs} +4 -3
- package/dist/chips-wfJ7YtWv.cjs.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 +3 -3
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/cursor-glow-Ah7VXSj7.js.map +1 -1
- package/dist/cursor-glow-Bulq-38P.cjs.map +1 -1
- package/dist/{date-range-BV6HuvLw.cjs → date-range-BHSzlwSL.cjs} +2 -2
- package/dist/date-range-BHSzlwSL.cjs.map +1 -0
- package/dist/{date-range-D3ge1b4c.js → date-range-DJrdpzev.js} +4 -4
- package/dist/date-range-DJrdpzev.js.map +1 -0
- package/dist/{date-range-inline-DpYgdLRv.cjs → date-range-inline-D0I6k84h.cjs} +1 -1
- package/dist/{date-range-inline-DpYgdLRv.cjs.map → date-range-inline-D0I6k84h.cjs.map} +1 -1
- package/dist/{date-range-inline-DuWQaWps.js → date-range-inline-DjRdMZ1z.js} +2 -2
- package/dist/{date-range-inline-DuWQaWps.js.map → date-range-inline-DjRdMZ1z.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 +2 -2
- package/dist/{details-C-GZaq3j.js → details-CY49XVfp.js} +43 -35
- package/dist/details-CY49XVfp.js.map +1 -0
- package/dist/details-DQNj2oaU.cjs +164 -0
- package/dist/details-DQNj2oaU.cjs.map +1 -0
- package/dist/details.cjs +1 -1
- package/dist/details.js +1 -1
- package/dist/{directives-D_l1E5H6.cjs → directives-Bb0S1DKZ.cjs} +3 -3
- package/dist/directives-Bb0S1DKZ.cjs.map +1 -0
- package/dist/{directives-DyS51FUh.js → directives-Bfm1lkoy.js} +6 -8
- package/dist/directives-Bfm1lkoy.js.map +1 -0
- package/dist/directives.cjs +1 -1
- package/dist/directives.js +2 -2
- package/dist/{divider-nQffE0AD.js → divider-BeyX_C0A.js} +2 -2
- package/dist/{divider-nQffE0AD.js.map → divider-BeyX_C0A.js.map} +1 -1
- package/dist/{divider-CBnAmHMZ.cjs → divider-Ck2C1sKl.cjs} +1 -1
- package/dist/{divider-CBnAmHMZ.cjs.map → divider-Ck2C1sKl.cjs.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 +2 -2
- package/dist/{expand-DvTb-UPR.js → expand-BYsSEtp6.js} +53 -53
- package/dist/expand-BYsSEtp6.js.map +1 -0
- package/dist/expand-CUF163mg.cjs +141 -0
- package/dist/expand-CUF163mg.cjs.map +1 -0
- package/dist/expand.cjs +1 -1
- package/dist/expand.js +1 -1
- package/dist/fab.cjs +2 -1
- package/dist/fab.cjs.map +1 -1
- package/dist/fab.js +3 -2
- package/dist/fab.js.map +1 -1
- package/dist/{float-C-Ko0Le3.js → float-Cgllk_H9.js} +2 -2
- package/dist/{float-C-Ko0Le3.js.map → float-Cgllk_H9.js.map} +1 -1
- package/dist/{float-C17xgMT1.cjs → float-OvqX0nqG.cjs} +1 -1
- package/dist/{float-C17xgMT1.cjs.map → float-OvqX0nqG.cjs.map} +1 -1
- package/dist/float.cjs +1 -1
- package/dist/float.js +1 -1
- package/dist/form-4GKROq2P.cjs +27 -0
- package/dist/form-4GKROq2P.cjs.map +1 -0
- package/dist/{form-DA0hUu2h.js → form-DxaV_Ose.js} +39 -39
- package/dist/form-DxaV_Ose.js.map +1 -0
- package/dist/form.cjs +3 -3
- package/dist/form.cjs.map +1 -1
- package/dist/form.js +34 -34
- package/dist/form.js.map +1 -1
- package/dist/gravity-6pL6CfIr.cjs.map +1 -1
- package/dist/gravity-sVK3zGBF.js.map +1 -1
- package/dist/handover/agent-runtime-followups.md +1 -1
- package/dist/handover/agent-runtime-v1.md +3 -3
- package/dist/{icons-C6UfxmHZ.js → icons-CJ2mXcBi.js} +9 -9
- package/dist/icons-CJ2mXcBi.js.map +1 -0
- package/dist/icons-sZ-LybA9.cjs +24 -0
- package/dist/icons-sZ-LybA9.cjs.map +1 -0
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/{iframe-BTjZfYyh.js → iframe-DWvN5nGB.js} +11 -11
- package/dist/iframe-DWvN5nGB.js.map +1 -0
- package/dist/{iframe-wuYT2xFz.cjs → iframe-DpCv-QH2.cjs} +7 -7
- package/dist/iframe-DpCv-QH2.cjs.map +1 -0
- package/dist/iframe.cjs +1 -1
- package/dist/iframe.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +35 -35
- package/dist/{input-B_4g2ulO.js → input-BCCHz6tB.js} +7 -7
- package/dist/input-BCCHz6tB.js.map +1 -0
- package/dist/{input-BrDiIT60.cjs → input-Z-3N5JMv.cjs} +2 -2
- package/dist/input-Z-3N5JMv.cjs.map +1 -0
- package/dist/{input-chip-BlWhOruv.js → input-chip-BOrcKH-H.js} +2 -2
- package/dist/{input-chip-BlWhOruv.js.map → input-chip-BOrcKH-H.js.map} +1 -1
- package/dist/{input-chip-B-XWh4aE.cjs → input-chip-ChAgRCXZ.cjs} +1 -1
- package/dist/{input-chip-B-XWh4aE.cjs.map → input-chip-ChAgRCXZ.cjs.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 +3 -3
- package/dist/kbd.cjs +1 -1
- package/dist/kbd.js +2 -2
- package/dist/{layout-Dxit9enO.js → layout-CFiG3lNT.js} +1 -1
- package/dist/{layout-Dxit9enO.js.map → layout-CFiG3lNT.js.map} +1 -1
- package/dist/{layout-BhyIcEVu.cjs → layout-DZ4dpLh9.cjs} +1 -1
- package/dist/{layout-BhyIcEVu.cjs.map → layout-DZ4dpLh9.cjs.map} +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +2 -2
- package/dist/lazy-BaAiIUru.js +19 -0
- package/dist/lazy-BaAiIUru.js.map +1 -0
- package/dist/lazy-C-7a4FAe.cjs +1 -0
- package/dist/lazy-C-7a4FAe.cjs.map +1 -0
- package/dist/{lightbox-D85XAAuC.js → lightbox-B7Y4Nij_.js} +2 -2
- package/dist/lightbox-B7Y4Nij_.js.map +1 -0
- package/dist/{lightbox-CVBogswK.cjs → lightbox-Dpwsn8Qr.cjs} +1 -1
- package/dist/lightbox-Dpwsn8Qr.cjs.map +1 -0
- package/dist/lightbox.cjs +1 -1
- package/dist/lightbox.js +1 -1
- package/dist/{list-nVjLskgx.cjs → list-BhM-6dAi.cjs} +1 -1
- package/dist/{list-nVjLskgx.cjs.map → list-BhM-6dAi.cjs.map} +1 -1
- package/dist/{list-DOF_yVn5.js → list-C5WVoIfJ.js} +2 -2
- package/dist/{list-DOF_yVn5.js.map → list-C5WVoIfJ.js.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/magnetic-DKtc4umC.cjs.map +1 -1
- package/dist/magnetic-DaOOv5Dz.js.map +1 -1
- package/dist/{menu-QrAK5Uu9.js → menu-Dvi_tQgH.js} +3 -3
- package/dist/{menu-QrAK5Uu9.js.map → menu-Dvi_tQgH.js.map} +1 -1
- package/dist/{menu-DqmNjLgY.cjs → menu-GZARYp6I.cjs} +1 -1
- package/dist/{menu-DqmNjLgY.cjs.map → menu-GZARYp6I.cjs.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/{mixins-De1zjyhy.js → mixins-DGBI7YPO.js} +11 -11
- package/dist/mixins-DGBI7YPO.js.map +1 -0
- package/dist/{mixins-DxHpyMHA.cjs → mixins-fIpzhVMd.cjs} +1 -1
- package/dist/mixins-fIpzhVMd.cjs.map +1 -0
- package/dist/mixins.cjs +1 -1
- package/dist/mixins.js +2 -2
- 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 +3 -3
- package/dist/navigation-rail.cjs.map +1 -1
- package/dist/navigation-rail.js +11 -10
- package/dist/navigation-rail.js.map +1 -1
- package/dist/notification-B6yDL91t.cjs +24 -0
- package/dist/notification-B6yDL91t.cjs.map +1 -0
- package/dist/{notification-BtAK7NK8.js → notification-BB9OBRCr.js} +22 -22
- package/dist/notification-BB9OBRCr.js.map +1 -0
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-DHwA0miA.js → option-B21ImL0k.js} +2 -2
- package/dist/{option-DHwA0miA.js.map → option-B21ImL0k.js.map} +1 -1
- package/dist/{option-DnSPa8ro.cjs → option-CJQM5I9q.cjs} +1 -1
- package/dist/{option-DnSPa8ro.cjs.map → option-CJQM5I9q.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{overlay-Del1sBEB.js → overlay-DwJWVyk2.js} +75 -67
- package/dist/overlay-DwJWVyk2.js.map +1 -0
- package/dist/overlay-N0trD-4u.cjs +58 -0
- package/dist/overlay-N0trD-4u.cjs.map +1 -0
- package/dist/overlay.cjs +1 -1
- package/dist/{overlay.confirm-body-BV9umTAl.cjs → overlay.confirm-body-CtXIi421.cjs} +3 -3
- package/dist/overlay.confirm-body-CtXIi421.cjs.map +1 -0
- package/dist/{overlay.confirm-body-DSONXUzl.js → overlay.confirm-body-DwzKhXxM.js} +10 -10
- package/dist/overlay.confirm-body-DwzKhXxM.js.map +1 -0
- package/dist/overlay.js +4 -4
- package/dist/{overlay.service-BTp5Oq7f.js → overlay.service-BDLi0p5M.js} +4 -4
- package/dist/{overlay.service-BTp5Oq7f.js.map → overlay.service-BDLi0p5M.js.map} +1 -1
- package/dist/overlay.service-Dbu5uP9E.cjs +1 -0
- package/dist/{overlay.service-XLlrsSdA.cjs.map → overlay.service-Dbu5uP9E.cjs.map} +1 -1
- package/dist/{progress-DUbTL9g9.cjs → progress-B-Qg44XY.cjs} +1 -1
- package/dist/{progress-DUbTL9g9.cjs.map → progress-B-Qg44XY.cjs.map} +1 -1
- package/dist/{progress-DYA83CFU.js → progress-CUSS1sNz.js} +2 -2
- package/dist/{progress-DYA83CFU.js.map → progress-CUSS1sNz.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{radio-group-DxX0iJBo.js → radio-group-AHLvrN8O.js} +7 -7
- package/dist/radio-group-AHLvrN8O.js.map +1 -0
- package/dist/{radio-group-B-ORNtvR.cjs → radio-group-BEtvCSS1.cjs} +2 -2
- package/dist/radio-group-BEtvCSS1.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 +2 -2
- package/dist/select-BWpV2iv-.cjs +56 -0
- package/dist/select-BWpV2iv-.cjs.map +1 -0
- package/dist/{select-C7gkA-ab.js → select-Cawz88lG.js} +46 -46
- package/dist/select-Cawz88lG.js.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 +2 -2
- package/dist/skills/SKILL.md +9 -0
- package/dist/skills/overlay.md +14 -7
- package/dist/skills/schmancy/SKILL.md +9 -0
- package/dist/skills/schmancy/overlay.md +14 -7
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +2 -2
- package/dist/{sound.service-O0232os6.js → sound.service-CK-5zob-.js} +4 -3
- package/dist/sound.service-CK-5zob-.js.map +1 -0
- package/dist/{sound.service-C7FDY_yD.cjs → sound.service-D2GGaBXc.cjs} +1 -1
- package/dist/sound.service-D2GGaBXc.cjs.map +1 -0
- package/dist/{splash-screen-jfE47xl0.js → splash-screen-BUEtjHXC.js} +13 -13
- package/dist/splash-screen-BUEtjHXC.js.map +1 -0
- package/dist/{splash-screen-DIS4odDr.cjs → splash-screen-DqPuipox.cjs} +6 -6
- package/dist/splash-screen-DqPuipox.cjs.map +1 -0
- package/dist/splash-screen.cjs +1 -1
- package/dist/splash-screen.js +1 -1
- package/dist/{src-BP3h-9d9.js → src-8VJ7eluk.js} +46 -45
- package/dist/src-8VJ7eluk.js.map +1 -0
- package/dist/{src-Um_pzb-U.cjs → src-GJA8uSAS.cjs} +7 -6
- package/dist/src-GJA8uSAS.cjs.map +1 -0
- package/dist/{state-Bj0M9a6T.cjs → state-BxDNox-2.cjs} +1 -1
- package/dist/{state-Bj0M9a6T.cjs.map → state-BxDNox-2.cjs.map} +1 -1
- package/dist/{state-DscWQpoM.js → state-CnZCDMT0.js} +9 -9
- package/dist/{state-DscWQpoM.js.map → state-CnZCDMT0.js.map} +1 -1
- package/dist/state.cjs +1 -1
- package/dist/state.js +2 -2
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +2 -2
- package/dist/{surface-B4Wn4SOO.js → surface-BMdG3dKQ.js} +2 -2
- package/dist/{surface-B4Wn4SOO.js.map → surface-BMdG3dKQ.js.map} +1 -1
- package/dist/{surface-DRq6cVW6.cjs → surface-CWwYD_z2.cjs} +1 -1
- package/dist/{surface-DRq6cVW6.cjs.map → surface-CWwYD_z2.cjs.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/switch.cjs +4 -4
- package/dist/switch.cjs.map +1 -1
- package/dist/switch.js +11 -11
- package/dist/switch.js.map +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +2 -2
- package/dist/{tabs-CnQPo-XS.js → tabs-CDQYDc6v.js} +2 -2
- package/dist/{tabs-CnQPo-XS.js.map → tabs-CDQYDc6v.js.map} +1 -1
- package/dist/{tabs-Ca_fbHPW.cjs → tabs-CbD9E1gd.cjs} +1 -1
- package/dist/{tabs-Ca_fbHPW.cjs.map → tabs-CbD9E1gd.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-Brgi-vD2.cjs +43 -0
- package/dist/textarea-Brgi-vD2.cjs.map +1 -0
- package/dist/{textarea-BvqENhTW.js → textarea-MPyrMi-S.js} +4 -4
- package/dist/textarea-MPyrMi-S.js.map +1 -0
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-BSwJ2YZo.cjs → theme-BMbXoqi0.cjs} +1 -1
- package/dist/{theme-BSwJ2YZo.cjs.map → theme-BMbXoqi0.cjs.map} +1 -1
- package/dist/{theme-BV0EzHQ1.js → theme-DZu-xmVp.js} +5 -5
- package/dist/{theme-BV0EzHQ1.js.map → theme-DZu-xmVp.js.map} +1 -1
- package/dist/{theme-button-C6fpUzPM.cjs → theme-button-B0OLb-43.cjs} +1 -1
- package/dist/{theme-button-C6fpUzPM.cjs.map → theme-button-B0OLb-43.cjs.map} +1 -1
- package/dist/{theme-button-O_xNCgI7.js → theme-button-D_qGvEYs.js} +2 -2
- package/dist/{theme-button-O_xNCgI7.js.map → theme-button-D_qGvEYs.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.js +3 -3
- package/dist/{theme.service-DwLhhOmP.js → theme.service-7VkM-hVf.js} +15 -11
- package/dist/theme.service-7VkM-hVf.js.map +1 -0
- package/dist/theme.service-B15FdjOS.cjs +1 -0
- package/dist/theme.service-B15FdjOS.cjs.map +1 -0
- package/dist/tree.cjs +4 -4
- package/dist/tree.cjs.map +1 -1
- package/dist/tree.js +8 -8
- package/dist/tree.js.map +1 -1
- package/dist/{typography-opFYuUYS.cjs → typography-D4Fo1UGh.cjs} +3 -3
- package/dist/{typography-opFYuUYS.cjs.map → typography-D4Fo1UGh.cjs.map} +1 -1
- package/dist/{typography-Dtdooaic.js → typography-SZhjb_4R.js} +9 -9
- package/dist/{typography-Dtdooaic.js.map → typography-SZhjb_4R.js.map} +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/dist/visually-hidden.cjs +1 -1
- package/dist/visually-hidden.js +2 -2
- package/dist/{window-ConcHirJ.js → window-BDVyrBnk.js} +101 -100
- package/dist/window-BDVyrBnk.js.map +1 -0
- package/dist/window-BbBYjm7R.cjs +59 -0
- package/dist/window-BbBYjm7R.cjs.map +1 -0
- package/dist/window.cjs +1 -1
- package/dist/window.js +1 -1
- package/package.json +1 -1
- package/skills/schmancy/SKILL.md +9 -0
- package/skills/schmancy/overlay.md +14 -7
- package/src/area/area.component.ts +1 -1
- package/src/area/area.service.test.ts +2 -2
- package/src/area/area.service.ts +1 -1
- package/src/area/lazy.ts +87 -83
- package/src/audio/sound.service.ts +3 -3
- package/src/badge/badge.ts +1 -0
- package/src/breadcrumb/breadcrumb.ts +2 -2
- package/src/button/button.ts +12 -11
- package/src/button/icon-button.ts +19 -18
- package/src/card/card.ts +16 -16
- package/src/content-drawer/drawer.ts +6 -6
- package/src/details/details.ts +55 -55
- package/src/directives/ai-badge.ts +2 -1
- package/src/directives/animate-text.ts +2 -1
- package/src/directives/art/art.directive.ts +2 -1
- package/src/directives/battery.ts +2 -1
- package/src/directives/confirm-click.ts +5 -3
- package/src/directives/cursor-glow.ts +2 -1
- package/src/directives/cycle-text.ts +2 -1
- package/src/directives/depth-of-field.ts +2 -1
- package/src/directives/drag.ts +4 -2
- package/src/directives/fyi.ts +2 -1
- package/src/directives/gravity.ts +2 -1
- package/src/directives/hummingbird.ts +2 -1
- package/src/directives/intersect.ts +3 -2
- package/src/directives/liquid.ts +2 -1
- package/src/directives/living-border.ts +2 -1
- package/src/directives/long-press.ts +2 -1
- package/src/directives/magnetic.ts +2 -1
- package/src/directives/missed-punch.ts +2 -1
- package/src/directives/nebula.ts +6 -5
- package/src/directives/overflow-within.ts +2 -1
- package/src/directives/reveal.ts +2 -1
- package/src/directives/urgent.ts +2 -1
- package/src/directives/working-snake.ts +2 -1
- package/src/expand/expand-root.component.ts +27 -27
- package/src/expand/expand.component.ts +48 -48
- package/src/fab/fab.ts +1 -0
- package/src/form/fields/autocomplete/autocomplete.ts +154 -154
- package/src/form/fields/checkbox/checkbox.ts +4 -4
- package/src/form/fields/chips/chips.ts +2 -2
- package/src/form/fields/chips/filter-chip.ts +16 -15
- package/src/form/fields/date-range/date-range.ts +2 -2
- package/src/form/fields/input/input.ts +12 -12
- package/src/form/fields/radio-group/radio-button.ts +2 -2
- package/src/form/fields/radio-group/radio-group.ts +3 -3
- package/src/form/fields/select/select.ts +56 -56
- package/src/form/fields/switch/switch.ts +10 -10
- package/src/form/fields/textarea/textarea.ts +2 -2
- package/src/form/form-summary.ts +33 -33
- package/src/form/form.ts +45 -45
- package/src/icons/icon.ts +10 -8
- package/src/iframe/iframe.ts +11 -11
- package/src/lightbox/flip-directive.ts +2 -1
- package/src/lightbox/lightbox.directive.ts +2 -1
- package/src/nav-drawer/navbar.ts +3 -3
- package/src/navigation-rail/navigation-rail.ts +10 -10
- package/src/notification/notification.ts +22 -22
- package/src/overlay/overlay.component.ts +106 -83
- package/src/overlay/overlay.confirm-body.ts +4 -4
- package/src/overlay/overlay.service.ts +3 -3
- package/src/overlay/overlay.types.ts +4 -2
- package/src/splash-screen/splash-screen.ts +11 -11
- package/src/state/index.ts +12 -12
- package/src/state/schmancy-context.ts +9 -9
- package/src/teleport/teleport.component.ts +2 -2
- package/src/theme/theme.service.ts +17 -17
- package/src/tree/tree.ts +7 -7
- package/src/typography/typography.ts +7 -7
- package/src/window/window-manager.ts +20 -20
- package/src/window/window.ts +100 -100
- package/types/mixins/SchmancyElement.d.ts +3 -2
- package/types/mixins/formField.mixin.d.ts +1 -1
- package/types/src/area/area.service.d.ts +1 -1
- package/types/src/area/lazy.d.ts +0 -6
- package/types/src/audio/sound.service.d.ts +1 -2
- package/types/src/breadcrumb/breadcrumb.d.ts +1 -1
- package/types/src/button/button.d.ts +3 -3
- package/types/src/button/icon-button.d.ts +6 -7
- package/types/src/card/card.d.ts +5 -5
- package/types/src/content-drawer/drawer.d.ts +1 -1
- package/types/src/details/details.d.ts +2 -21
- package/types/src/directives/ai-badge.d.ts +2 -2
- package/types/src/directives/animate-text.d.ts +2 -2
- package/types/src/directives/art/art.directive.d.ts +2 -2
- package/types/src/directives/battery.d.ts +2 -2
- package/types/src/directives/confirm-click.d.ts +2 -2
- package/types/src/directives/cursor-glow.d.ts +2 -2
- package/types/src/directives/cycle-text.d.ts +2 -2
- package/types/src/directives/depth-of-field.d.ts +2 -2
- package/types/src/directives/drag.d.ts +4 -4
- package/types/src/directives/fyi.d.ts +2 -2
- package/types/src/directives/gravity.d.ts +2 -2
- package/types/src/directives/hummingbird.d.ts +2 -2
- package/types/src/directives/intersect.d.ts +2 -2
- package/types/src/directives/liquid.d.ts +2 -2
- package/types/src/directives/living-border.d.ts +2 -2
- package/types/src/directives/long-press.d.ts +2 -2
- package/types/src/directives/magnetic.d.ts +2 -2
- package/types/src/directives/missed-punch.d.ts +2 -2
- package/types/src/directives/nebula.d.ts +2 -2
- package/types/src/directives/overflow-within.d.ts +2 -2
- package/types/src/directives/reveal.d.ts +2 -2
- package/types/src/directives/urgent.d.ts +2 -2
- package/types/src/directives/working-snake.d.ts +2 -2
- package/types/src/expand/expand-root.component.d.ts +8 -8
- package/types/src/expand/expand.component.d.ts +11 -11
- package/types/src/form/fields/autocomplete/autocomplete.d.ts +29 -29
- package/types/src/form/fields/checkbox/checkbox.d.ts +1 -1
- package/types/src/form/fields/chips/chips.d.ts +1 -1
- package/types/src/form/fields/chips/filter-chip.d.ts +1 -2
- package/types/src/form/fields/input/input.d.ts +3 -3
- package/types/src/form/fields/radio-group/radio-button.d.ts +1 -1
- package/types/src/form/fields/radio-group/radio-group.d.ts +1 -1
- package/types/src/form/fields/select/select.d.ts +8 -8
- package/types/src/form/fields/switch/switch.d.ts +3 -3
- package/types/src/form/fields/textarea/textarea.d.ts +1 -1
- package/types/src/form/form-summary.d.ts +7 -7
- package/types/src/form/form.d.ts +11 -11
- package/types/src/icons/icon.d.ts +2 -2
- package/types/src/iframe/iframe.d.ts +3 -3
- package/types/src/lightbox/flip-directive.d.ts +2 -2
- package/types/src/lightbox/lightbox.directive.d.ts +2 -2
- package/types/src/nav-drawer/navbar.d.ts +1 -1
- package/types/src/navigation-rail/navigation-rail.d.ts +2 -2
- package/types/src/notification/notification.d.ts +8 -8
- package/types/src/overlay/overlay.component.d.ts +16 -16
- package/types/src/overlay/overlay.confirm-body.d.ts +1 -1
- package/types/src/overlay/overlay.types.d.ts +4 -2
- package/types/src/splash-screen/splash-screen.d.ts +2 -2
- package/types/src/state/index.d.ts +1 -1
- package/types/src/state/schmancy-context.d.ts +3 -3
- package/types/src/teleport/teleport.component.d.ts +1 -1
- package/types/src/theme/theme.service.d.ts +1 -4
- package/types/src/tree/tree.d.ts +3 -3
- package/types/src/typography/typography.d.ts +1 -1
- package/types/src/window/window-manager.d.ts +2 -2
- package/types/src/window/window.d.ts +20 -20
- package/dist/area-KtULlxuA.js.map +0 -1
- package/dist/area-fdKhYB6T.cjs +0 -21
- package/dist/area-fdKhYB6T.cjs.map +0 -1
- package/dist/autocomplete-DEZk6wBD.cjs +0 -115
- package/dist/autocomplete-DEZk6wBD.cjs.map +0 -1
- package/dist/autocomplete-DIScyo8Q.js.map +0 -1
- package/dist/button-DzlHLjWO.cjs +0 -62
- package/dist/button-DzlHLjWO.cjs.map +0 -1
- package/dist/button-kcpPQavY.js.map +0 -1
- package/dist/card-BLxPLqdQ.cjs.map +0 -1
- package/dist/card-DxSKxCid.js.map +0 -1
- package/dist/chips-C9dS1WKn.cjs.map +0 -1
- package/dist/chips-vWmwqQed.js.map +0 -1
- package/dist/date-range-BV6HuvLw.cjs.map +0 -1
- package/dist/date-range-D3ge1b4c.js.map +0 -1
- package/dist/details-C-GZaq3j.js.map +0 -1
- package/dist/details-Dp5rLIWk.cjs +0 -164
- package/dist/details-Dp5rLIWk.cjs.map +0 -1
- package/dist/directives-D_l1E5H6.cjs.map +0 -1
- package/dist/directives-DyS51FUh.js.map +0 -1
- package/dist/expand-DvTb-UPR.js.map +0 -1
- package/dist/expand-mlP_3XWz.cjs +0 -141
- package/dist/expand-mlP_3XWz.cjs.map +0 -1
- package/dist/form-CwPHcQYB.cjs +0 -27
- package/dist/form-CwPHcQYB.cjs.map +0 -1
- package/dist/form-DA0hUu2h.js.map +0 -1
- package/dist/icons-C6UfxmHZ.js.map +0 -1
- package/dist/icons-CW3-oMSb.cjs +0 -24
- package/dist/icons-CW3-oMSb.cjs.map +0 -1
- package/dist/iframe-BTjZfYyh.js.map +0 -1
- package/dist/iframe-wuYT2xFz.cjs.map +0 -1
- package/dist/input-B_4g2ulO.js.map +0 -1
- package/dist/input-BrDiIT60.cjs.map +0 -1
- package/dist/lazy-CayEFyC3.cjs +0 -1
- package/dist/lazy-CayEFyC3.cjs.map +0 -1
- package/dist/lazy-D-bO2r4m.js +0 -13
- package/dist/lazy-D-bO2r4m.js.map +0 -1
- package/dist/lightbox-CVBogswK.cjs.map +0 -1
- package/dist/lightbox-D85XAAuC.js.map +0 -1
- package/dist/mixins-De1zjyhy.js.map +0 -1
- package/dist/mixins-DxHpyMHA.cjs.map +0 -1
- package/dist/notification-BtAK7NK8.js.map +0 -1
- package/dist/notification-DYzbUb5C.cjs +0 -24
- package/dist/notification-DYzbUb5C.cjs.map +0 -1
- package/dist/overlay-BVkqZmoS.cjs +0 -58
- package/dist/overlay-BVkqZmoS.cjs.map +0 -1
- package/dist/overlay-Del1sBEB.js.map +0 -1
- package/dist/overlay.confirm-body-BV9umTAl.cjs.map +0 -1
- package/dist/overlay.confirm-body-DSONXUzl.js.map +0 -1
- package/dist/overlay.service-XLlrsSdA.cjs +0 -1
- package/dist/radio-group-B-ORNtvR.cjs.map +0 -1
- package/dist/radio-group-DxX0iJBo.js.map +0 -1
- package/dist/select-B9uj_u-s.cjs +0 -56
- package/dist/select-B9uj_u-s.cjs.map +0 -1
- package/dist/select-C7gkA-ab.js.map +0 -1
- package/dist/sound.service-C7FDY_yD.cjs.map +0 -1
- package/dist/sound.service-O0232os6.js.map +0 -1
- package/dist/splash-screen-DIS4odDr.cjs.map +0 -1
- package/dist/splash-screen-jfE47xl0.js.map +0 -1
- package/dist/src-BP3h-9d9.js.map +0 -1
- package/dist/src-Um_pzb-U.cjs.map +0 -1
- package/dist/textarea-BvqENhTW.js.map +0 -1
- package/dist/textarea-qr7oL8oU.cjs +0 -43
- package/dist/textarea-qr7oL8oU.cjs.map +0 -1
- package/dist/theme.service-DwLhhOmP.js.map +0 -1
- package/dist/theme.service-kn9MC025.cjs +0 -1
- package/dist/theme.service-kn9MC025.cjs.map +0 -1
- package/dist/window-BSAemI9J.cjs +0 -59
- package/dist/window-BSAemI9J.cjs.map +0 -1
- package/dist/window-ConcHirJ.js.map +0 -1
package/dist/form.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-C41uPa6l.cjs`);require(`./mixins-fIpzhVMd.cjs`),require(`./autocomplete-DMmxsvUe.cjs`);const t=require(`./input-chip-ChAgRCXZ.cjs`),n=require(`./checkbox-C4zeib84.cjs`),r=require(`./chips-wfJ7YtWv.cjs`),i=require(`./date-range-BHSzlwSL.cjs`),a=require(`./form-4GKROq2P.cjs`),o=require(`./input-Z-3N5JMv.cjs`);require(`./input.cjs`);const s=require(`./radio-group-BEtvCSS1.cjs`),c=require(`./range.cjs`),l=require(`./select-BWpV2iv-.cjs`),u=require(`./switch.cjs`);require(`./textarea-Brgi-vD2.cjs`);let d=require(`lit/decorators.js`),f=require(`lit`);var p=class extends e.t{constructor(...e){super(...e),this.bump=0,this.form=null}connectedCallback(){super.connectedCallback(),this.form=this.closest(`schmancy-form`),this.form&&(this.formObserver=new MutationObserver(()=>{this.bump++}),this.formObserver.observe(this.form,{attributes:!0,subtree:!0}),(async()=>{await this.form?.updateComplete;let e=this.form?.shadowRoot?.querySelector(`[role="status"]`);e&&this.formObserver?.observe(e,{childList:!0,characterData:!0,subtree:!0}),this.bump++})())}disconnectedCallback(){this.formObserver?.disconnect(),this.formObserver=void 0,super.disconnectedCallback()}readFormStatus(){return this.form?this.form.matches(`:state(error)`)?`error`:this.form.matches(`:state(submitting)`)?`submitting`:this.form.matches(`:state(success)`)?`success`:`idle`:`idle`}readFormMessage(){return(this.form?.shadowRoot?.querySelector(`[role="status"]`))?.textContent?.trim()??``}readInvalidFields(){if(!this.form)return[];let e=[];for(let t of Array.from(this.form.querySelectorAll(`*`))){if(!(t instanceof HTMLElement))continue;let n=!1;try{n=t.matches(`:state(invalid)`)}catch{continue}if(!n)continue;let r=t;e.push({id:r.id,label:r.label||r.name||`(field)`,message:r.validationMessage||`Invalid value`})}return e}render(){if(this.bump,this.readFormStatus()!==`error`)return f.nothing;let e=this.readFormMessage(),t=this.readInvalidFields(),n=t.length;return f.html`
|
|
2
2
|
<div role="alert" aria-labelledby="schmancy-form-summary-heading">
|
|
3
3
|
<h2 id="schmancy-form-summary-heading">${this.heading??(n===0?`There is a problem with this form`:`There ${n===1?`is`:`are`} ${n} problem${n===1?``:`s`} with this form`)}</h2>
|
|
4
4
|
${e?f.html`<p>${e}</p>`:f.nothing}
|
|
@@ -8,11 +8,11 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./ch
|
|
|
8
8
|
<li>
|
|
9
9
|
<a
|
|
10
10
|
href="#${e.id}"
|
|
11
|
-
@click=${t=>this.
|
|
11
|
+
@click=${t=>this.jumpToField(t,e.id)}
|
|
12
12
|
>${e.label}: ${e.message}</a>
|
|
13
13
|
</li>
|
|
14
14
|
`)}
|
|
15
15
|
</ul>
|
|
16
16
|
`:f.nothing}
|
|
17
17
|
</div>
|
|
18
|
-
`}
|
|
18
|
+
`}jumpToField(e,t){e.preventDefault(),(this.form?.querySelector(`#${CSS.escape(t)}`))?.focus()}};e.u([(0,d.property)({type:String})],p.prototype,`heading`,void 0),e.u([(0,d.state)()],p.prototype,`bump`,void 0),p=e.u([(0,d.customElement)(`schmancy-form-summary`)],p),Object.defineProperty(exports,`RadioButton`,{enumerable:!0,get:function(){return s.t}}),Object.defineProperty(exports,`RadioGroup`,{enumerable:!0,get:function(){return s.n}}),Object.defineProperty(exports,`SchmancyAssistChip`,{enumerable:!0,get:function(){return r.r}}),Object.defineProperty(exports,`SchmancyCheckbox`,{enumerable:!0,get:function(){return n.t}}),exports.SchmancyChip=r.n,exports.SchmancyFilterChip=r.n,Object.defineProperty(exports,`SchmancyDateRange`,{enumerable:!0,get:function(){return i.t}}),exports.SchmancyForm=a.t,Object.defineProperty(exports,`SchmancyFormSummary`,{enumerable:!0,get:function(){return p}}),exports.SchmancyInput=o.n,Object.defineProperty(exports,`SchmancyInputChip`,{enumerable:!0,get:function(){return t.t}}),Object.defineProperty(exports,`SchmancyInputCompat`,{enumerable:!0,get:function(){return o.t}}),Object.defineProperty(exports,`SchmancyRange`,{enumerable:!0,get:function(){return c.SchmancyRange}}),Object.defineProperty(exports,`SchmancySelect`,{enumerable:!0,get:function(){return l.t}}),Object.defineProperty(exports,`SchmancySuggestionChip`,{enumerable:!0,get:function(){return r.t}}),Object.defineProperty(exports,`SchmancySwitch`,{enumerable:!0,get:function(){return u.SchmancySwitch}}),exports.formSubmitState=a.n,exports.validateInitialDateRange=i.n;
|
package/dist/form.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.cjs","names":[],"sources":["../src/form/form-summary.ts"],"sourcesContent":["/**\n * `<schmancy-form-summary>` — top-of-form error summary with anchor links to\n * each invalid field. Linear / GOV.UK / GitHub pattern.\n *\n * Drop one inside any `<schmancy-form>`; on submit-failure or when\n * `<schmancy-form>.setFormError(...)` is called, the summary renders a\n * `role=\"alert\"` banner with the form-level error message and a list of\n * links pointing at each invalid field's `id`.\n *\n * Hidden when the form is idle, submitting, or successful — only `error`\n * populates it.\n *\n * @element schmancy-form-summary\n */\n\nimport { html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyElement } from '../../mixins'\nimport type SchmancyForm from './form'\n\n@customElement('schmancy-form-summary')\nexport class SchmancyFormSummary extends SchmancyElement {\n\t/**\n\t * Optional heading text. Defaults to a count-based summary\n\t * (\"1 problem with this form\" / \"3 problems with this form\").\n\t */\n\t@property({ type: String }) heading?: string\n\n\t/**\n\t * Render bumper — incremented to force a re-render when the form's state\n\t * changes (the actual content is computed from the DOM in render()).\n\t */\n\t@state() private
|
|
1
|
+
{"version":3,"file":"form.cjs","names":[],"sources":["../src/form/form-summary.ts"],"sourcesContent":["/**\n * `<schmancy-form-summary>` — top-of-form error summary with anchor links to\n * each invalid field. Linear / GOV.UK / GitHub pattern.\n *\n * Drop one inside any `<schmancy-form>`; on submit-failure or when\n * `<schmancy-form>.setFormError(...)` is called, the summary renders a\n * `role=\"alert\"` banner with the form-level error message and a list of\n * links pointing at each invalid field's `id`.\n *\n * Hidden when the form is idle, submitting, or successful — only `error`\n * populates it.\n *\n * @element schmancy-form-summary\n */\n\nimport { html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyElement } from '../../mixins'\nimport type SchmancyForm from './form'\n\n@customElement('schmancy-form-summary')\nexport class SchmancyFormSummary extends SchmancyElement {\n\t/**\n\t * Optional heading text. Defaults to a count-based summary\n\t * (\"1 problem with this form\" / \"3 problems with this form\").\n\t */\n\t@property({ type: String }) heading?: string\n\n\t/**\n\t * Render bumper — incremented to force a re-render when the form's state\n\t * changes (the actual content is computed from the DOM in render()).\n\t */\n\t@state() private bump: number = 0\n\n\tprivate form: SchmancyForm | null = null\n\tprivate formObserver?: MutationObserver\n\n\toverride connectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.form = this.closest('schmancy-form') as SchmancyForm | null\n\t\tif (!this.form) {\n\t\t\tconsole.error('[schmancy-form-summary] must be a descendant of <schmancy-form>')\n\t\t\treturn\n\t\t}\n\t\tconst bump = () => { this.bump++ }\n\t\tthis.formObserver = new MutationObserver(bump)\n\t\t// Form host attribute changes (aria-busy, :state class reflections,\n\t\t// descendant attribute changes for fields' aria-invalid). subtree:true\n\t\t// catches attribute mutations on every descendant including light-DOM\n\t\t// fields and the form's own host.\n\t\tthis.formObserver.observe(this.form, {\n\t\t\tattributes: true,\n\t\t\tsubtree: true,\n\t\t})\n\t\t// Defer live-region observation until the form has rendered its\n\t\t// shadow tree.\n\t\tconst attachLiveRegionObserver = async (): Promise<void> => {\n\t\t\tawait this.form?.updateComplete\n\t\t\tconst liveRegion = this.form?.shadowRoot?.querySelector('[role=\"status\"]')\n\t\t\tif (liveRegion) {\n\t\t\t\tthis.formObserver?.observe(liveRegion, {\n\t\t\t\t\tchildList: true,\n\t\t\t\t\tcharacterData: true,\n\t\t\t\t\tsubtree: true,\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Force a render so the initial state is reflected.\n\t\t\tthis.bump++\n\t\t}\n\t\tvoid attachLiveRegionObserver()\n\t}\n\n\toverride disconnectedCallback(): void {\n\t\tthis.formObserver?.disconnect()\n\t\tthis.formObserver = undefined\n\t\tsuper.disconnectedCallback()\n\t}\n\n\tprivate readFormStatus(): 'idle' | 'submitting' | 'success' | 'error' {\n\t\tif (!this.form) return 'idle'\n\t\tif (this.form.matches(':state(error)')) return 'error'\n\t\tif (this.form.matches(':state(submitting)')) return 'submitting'\n\t\tif (this.form.matches(':state(success)')) return 'success'\n\t\treturn 'idle'\n\t}\n\n\tprivate readFormMessage(): string {\n\t\tconst liveRegion = this.form?.shadowRoot?.querySelector('[role=\"status\"]')\n\t\treturn liveRegion?.textContent?.trim() ?? ''\n\t}\n\n\tprivate readInvalidFields(): Array<{ id: string; label: string; message: string }> {\n\t\tif (!this.form) return []\n\t\tconst result: Array<{ id: string; label: string; message: string }> = []\n\t\tfor (const el of Array.from(this.form.querySelectorAll('*'))) {\n\t\t\tif (!(el instanceof HTMLElement)) continue\n\t\t\tlet isInvalid = false\n\t\t\ttry {\n\t\t\t\tisInvalid = el.matches(':state(invalid)')\n\t\t\t} catch {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (!isInvalid) continue\n\t\t\tconst f = el as HTMLElement & {\n\t\t\t\tlabel?: string\n\t\t\t\tname?: string\n\t\t\t\tvalidationMessage?: string\n\t\t\t}\n\t\t\tresult.push({\n\t\t\t\tid: f.id,\n\t\t\t\tlabel: f.label || f.name || '(field)',\n\t\t\t\tmessage: f.validationMessage || 'Invalid value',\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}\n\n\trender() {\n\t\t// Read everything fresh from the DOM each render — no @state cache, no\n\t\t// re-render loops. The MutationObserver bumps `bump` to trigger this\n\t\t// render; `bump` itself is never read here.\n\t\tvoid this.bump\n\n\t\tconst status = this.readFormStatus()\n\t\tif (status !== 'error') return nothing\n\n\t\tconst formMessage = this.readFormMessage()\n\t\tconst invalid = this.readInvalidFields()\n\t\tconst count = invalid.length\n\t\tconst heading =\n\t\t\tthis.heading ??\n\t\t\t(count === 0\n\t\t\t\t? 'There is a problem with this form'\n\t\t\t\t: `There ${count === 1 ? 'is' : 'are'} ${count} problem${count === 1 ? '' : 's'} with this form`)\n\n\t\treturn html`\n\t\t\t<div role=\"alert\" aria-labelledby=\"schmancy-form-summary-heading\">\n\t\t\t\t<h2 id=\"schmancy-form-summary-heading\">${heading}</h2>\n\t\t\t\t${formMessage ? html`<p>${formMessage}</p>` : nothing}\n\t\t\t\t${count > 0\n\t\t\t\t\t? html`\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t${invalid.map(\n\t\t\t\t\t\t\t\tf => html`\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref=\"#${f.id}\"\n\t\t\t\t\t\t\t\t\t\t\t@click=${(e: MouseEvent) => this.jumpToField(e, f.id)}\n\t\t\t\t\t\t\t\t\t\t>${f.label}: ${f.message}</a>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t`\n\t\t\t\t\t: nothing}\n\t\t\t</div>\n\t\t`\n\t}\n\n\tprivate jumpToField(e: MouseEvent, fieldId: string): void {\n\t\te.preventDefault()\n\t\tconst target = this.form?.querySelector(`#${CSS.escape(fieldId)}`) as HTMLElement | null\n\t\ttarget?.focus()\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-form-summary': SchmancyFormSummary\n\t}\n}\n"],"mappings":"6qBAqBO,IAAA,EAAA,cAAkC,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,KAWR,EAAA,KAAA,KAEI,IAAA,CAGpC,mBAAA,CACC,MAAM,kBAAA,EACN,KAAK,KAAO,KAAK,QAAQ,eAAA,EACpB,KAAK,OAKV,KAAK,aAAe,IAAI,qBADlB,CAAe,KAAK,MAAA,CAAA,EAM1B,KAAK,aAAa,QAAQ,KAAK,KAAM,CACpC,WAAA,CAAY,EACZ,QAAA,CAAS,CAAA,CAAA,GAIuB,SAAA,CAAA,MAC1B,KAAK,MAAM,eACjB,IAAM,EAAa,KAAK,MAAM,YAAY,cAAc,iBAAA,EACpD,GACH,KAAK,cAAc,QAAQ,EAAY,CACtC,UAAA,CAAW,EACX,cAAA,CAAe,EACf,QAAA,CAAS,CAAA,CAAA,EAIX,KAAK,MAAA,GAEN,EACD,CAEA,sBAAA,CACC,KAAK,cAAc,WAAA,EACnB,KAAK,aAAA,IAAe,GACpB,MAAM,qBAAA,CACP,CAEA,gBAAA,CACC,OAAK,KAAK,KACN,KAAK,KAAK,QAAQ,eAAA,EAAyB,QAC3C,KAAK,KAAK,QAAQ,oBAAA,EAA8B,aAChD,KAAK,KAAK,QAAQ,iBAAA,EAA2B,UAC1C,OAJgB,MAKxB,CAEA,iBAAA,CAEC,OADmB,KAAK,MAAM,YAAY,cAAc,iBAAA,IACrC,aAAa,KAAA,GAAU,EAC3C,CAEA,mBAAA,CACC,GAAA,CAAK,KAAK,KAAM,MAAO,CAAA,EACvB,IAAM,EAAgE,CAAA,EACtE,IAAK,IAAM,KAAM,MAAM,KAAK,KAAK,KAAK,iBAAiB,GAAA,CAAA,EAAO,CAC7D,GAAA,EAAM,aAAc,aAAc,SAClC,IAAI,EAAA,CAAY,EAChB,GAAA,CACC,EAAY,EAAG,QAAQ,iBAAA,CACxB,MAAA,CACC,QACD,CACA,GAAA,CAAK,EAAW,SAChB,IAAM,EAAI,EAKV,EAAO,KAAK,CACX,GAAI,EAAE,GACN,MAAO,EAAE,OAAS,EAAE,MAAQ,UAC5B,QAAS,EAAE,mBAAqB,eAAA,CAAA,CAElC,CACA,OAAO,CACR,CAEA,QAAA,CAOC,GAHA,KAAU,KAEK,KAAK,eAAA,IACL,QAAS,OAAO,EAAA,QAE/B,IAAM,EAAc,KAAK,gBAAA,EACnB,EAAU,KAAK,kBAAA,EACf,EAAQ,EAAQ,OAOtB,MAAO,GAAA,IAAI;;6CALV,KAAK,UACJ,IAAU,EACR,oCACA,SAAS,IAAU,EAAI,KAAO,MAAA,GAAS,EAAA,UAAgB,IAAU,EAAI,GAAK,IAAA,kBAAA;MAK1E,EAAc,EAAA,IAAI,MAAM,EAAA,MAAoB,EAAA,QAAA;MAC5C,EAAQ,EACP,EAAA,IAAI;;SAEF,EAAQ,IACT,GAAK,EAAA,IAAI;;;oBAGG,EAAE,GAAA;oBACD,GAAkB,KAAK,YAAY,EAAG,EAAE,EAAA,EAAA;aAChD,EAAE,MAAA,IAAU,EAAE,QAAA;;;;OAMpB,EAAA,QAAA;;GAGN,CAEA,YAAoB,EAAe,EAAA,CAClC,EAAE,eAAA,GACa,KAAK,MAAM,cAAc,IAAI,IAAI,OAAO,CAAA,GAAA,IAC/C,MAAA,CACT,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAzIU,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,UAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,OAAA,CAAA,EAMnB,EAAA,UAAA,OAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eAZO,uBAAA,CAAA,EAAuB,CAAA,EAAA,OAAA,eAAA,QAAA,cAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,aAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,qBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,mBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,QAAA,aAAA,EAAA,EAAA,QAAA,mBAAA,EAAA,EAAA,OAAA,eAAA,QAAA,oBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,QAAA,aAAA,EAAA,EAAA,OAAA,eAAA,QAAA,sBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,CAAA,CAAA,CAAA,EAAA,QAAA,cAAA,EAAA,EAAA,OAAA,eAAA,QAAA,oBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,sBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,gBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,aAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,iBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,yBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,EAAA,OAAA,eAAA,QAAA,iBAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,EAAA,cAAA,CAAA,CAAA,EAAA,QAAA,gBAAA,EAAA,EAAA,QAAA,yBAAA,EAAA"}
|
package/dist/form.js
CHANGED
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
import { t as e, u as t } from "./SchmancyElement-
|
|
2
|
-
import "./mixins-
|
|
3
|
-
import "./autocomplete-
|
|
4
|
-
import { t as n } from "./input-chip-
|
|
5
|
-
import { t as r } from "./checkbox-
|
|
6
|
-
import { n as i, r as a, t as o } from "./chips-
|
|
7
|
-
import { n as s, t as c } from "./date-range-
|
|
8
|
-
import { n as l, t as u } from "./form-
|
|
9
|
-
import { n as d, t as f } from "./input-
|
|
1
|
+
import { t as e, u as t } from "./SchmancyElement-BNnyBOwk.js";
|
|
2
|
+
import "./mixins-DGBI7YPO.js";
|
|
3
|
+
import "./autocomplete-DWiEqlQf.js";
|
|
4
|
+
import { t as n } from "./input-chip-BOrcKH-H.js";
|
|
5
|
+
import { t as r } from "./checkbox-Ce0DlAdW.js";
|
|
6
|
+
import { n as i, r as a, t as o } from "./chips-BoZSpSh_.js";
|
|
7
|
+
import { n as s, t as c } from "./date-range-DJrdpzev.js";
|
|
8
|
+
import { n as l, t as u } from "./form-DxaV_Ose.js";
|
|
9
|
+
import { n as d, t as f } from "./input-BCCHz6tB.js";
|
|
10
10
|
import "./input.js";
|
|
11
|
-
import { n as p, t as m } from "./radio-group-
|
|
11
|
+
import { n as p, t as m } from "./radio-group-AHLvrN8O.js";
|
|
12
12
|
import { SchmancyRange as h } from "./range.js";
|
|
13
|
-
import { t as g } from "./select-
|
|
13
|
+
import { t as g } from "./select-Cawz88lG.js";
|
|
14
14
|
import { SchmancySwitch as _ } from "./switch.js";
|
|
15
|
-
import "./textarea-
|
|
15
|
+
import "./textarea-MPyrMi-S.js";
|
|
16
16
|
import { customElement as v, property as y, state as b } from "lit/decorators.js";
|
|
17
17
|
import { html as x, nothing as S } from "lit";
|
|
18
18
|
var C = class extends e {
|
|
19
19
|
constructor(...e) {
|
|
20
|
-
super(...e), this.
|
|
20
|
+
super(...e), this.bump = 0, this.form = null;
|
|
21
21
|
}
|
|
22
22
|
connectedCallback() {
|
|
23
|
-
super.connectedCallback(), this.
|
|
24
|
-
this.
|
|
25
|
-
}), this.
|
|
23
|
+
super.connectedCallback(), this.form = this.closest("schmancy-form"), this.form && (this.formObserver = new MutationObserver(() => {
|
|
24
|
+
this.bump++;
|
|
25
|
+
}), this.formObserver.observe(this.form, {
|
|
26
26
|
attributes: !0,
|
|
27
27
|
subtree: !0
|
|
28
28
|
}), (async () => {
|
|
29
|
-
await this.
|
|
30
|
-
let e = this.
|
|
31
|
-
e && this.
|
|
29
|
+
await this.form?.updateComplete;
|
|
30
|
+
let e = this.form?.shadowRoot?.querySelector("[role=\"status\"]");
|
|
31
|
+
e && this.formObserver?.observe(e, {
|
|
32
32
|
childList: !0,
|
|
33
33
|
characterData: !0,
|
|
34
34
|
subtree: !0
|
|
35
|
-
}), this.
|
|
35
|
+
}), this.bump++;
|
|
36
36
|
})());
|
|
37
37
|
}
|
|
38
38
|
disconnectedCallback() {
|
|
39
|
-
this.
|
|
39
|
+
this.formObserver?.disconnect(), this.formObserver = void 0, super.disconnectedCallback();
|
|
40
40
|
}
|
|
41
|
-
|
|
42
|
-
return this.
|
|
41
|
+
readFormStatus() {
|
|
42
|
+
return this.form ? this.form.matches(":state(error)") ? "error" : this.form.matches(":state(submitting)") ? "submitting" : this.form.matches(":state(success)") ? "success" : "idle" : "idle";
|
|
43
43
|
}
|
|
44
|
-
|
|
45
|
-
return (this.
|
|
44
|
+
readFormMessage() {
|
|
45
|
+
return (this.form?.shadowRoot?.querySelector("[role=\"status\"]"))?.textContent?.trim() ?? "";
|
|
46
46
|
}
|
|
47
|
-
|
|
48
|
-
if (!this.
|
|
47
|
+
readInvalidFields() {
|
|
48
|
+
if (!this.form) return [];
|
|
49
49
|
let e = [];
|
|
50
|
-
for (let t of Array.from(this.
|
|
50
|
+
for (let t of Array.from(this.form.querySelectorAll("*"))) {
|
|
51
51
|
if (!(t instanceof HTMLElement)) continue;
|
|
52
52
|
let n = !1;
|
|
53
53
|
try {
|
|
@@ -66,8 +66,8 @@ var C = class extends e {
|
|
|
66
66
|
return e;
|
|
67
67
|
}
|
|
68
68
|
render() {
|
|
69
|
-
if (this.
|
|
70
|
-
let e = this.
|
|
69
|
+
if (this.bump, this.readFormStatus() !== "error") return S;
|
|
70
|
+
let e = this.readFormMessage(), t = this.readInvalidFields(), n = t.length;
|
|
71
71
|
return x`
|
|
72
72
|
<div role="alert" aria-labelledby="schmancy-form-summary-heading">
|
|
73
73
|
<h2 id="schmancy-form-summary-heading">${this.heading ?? (n === 0 ? "There is a problem with this form" : `There ${n === 1 ? "is" : "are"} ${n} problem${n === 1 ? "" : "s"} with this form`)}</h2>
|
|
@@ -78,7 +78,7 @@ var C = class extends e {
|
|
|
78
78
|
<li>
|
|
79
79
|
<a
|
|
80
80
|
href="#${e.id}"
|
|
81
|
-
@click=${(t) => this.
|
|
81
|
+
@click=${(t) => this.jumpToField(t, e.id)}
|
|
82
82
|
>${e.label}: ${e.message}</a>
|
|
83
83
|
</li>
|
|
84
84
|
`)}
|
|
@@ -87,9 +87,9 @@ var C = class extends e {
|
|
|
87
87
|
</div>
|
|
88
88
|
`;
|
|
89
89
|
}
|
|
90
|
-
|
|
91
|
-
e.preventDefault(), (this.
|
|
90
|
+
jumpToField(e, t) {
|
|
91
|
+
e.preventDefault(), (this.form?.querySelector(`#${CSS.escape(t)}`))?.focus();
|
|
92
92
|
}
|
|
93
93
|
};
|
|
94
|
-
t([y({ type: String })], C.prototype, "heading", void 0), t([b()], C.prototype, "
|
|
94
|
+
t([y({ type: String })], C.prototype, "heading", void 0), t([b()], C.prototype, "bump", void 0), C = t([v("schmancy-form-summary")], C);
|
|
95
95
|
export { m as RadioButton, p as RadioGroup, a as SchmancyAssistChip, r as SchmancyCheckbox, i as SchmancyChip, i as SchmancyFilterChip, c as SchmancyDateRange, u as SchmancyForm, C as SchmancyFormSummary, d as SchmancyInput, n as SchmancyInputChip, f as SchmancyInputCompat, h as SchmancyRange, g as SchmancySelect, o as SchmancySuggestionChip, _ as SchmancySwitch, l as formSubmitState, s as validateInitialDateRange };
|
package/dist/form.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","names":[],"sources":["../src/form/form-summary.ts"],"sourcesContent":["/**\n * `<schmancy-form-summary>` — top-of-form error summary with anchor links to\n * each invalid field. Linear / GOV.UK / GitHub pattern.\n *\n * Drop one inside any `<schmancy-form>`; on submit-failure or when\n * `<schmancy-form>.setFormError(...)` is called, the summary renders a\n * `role=\"alert\"` banner with the form-level error message and a list of\n * links pointing at each invalid field's `id`.\n *\n * Hidden when the form is idle, submitting, or successful — only `error`\n * populates it.\n *\n * @element schmancy-form-summary\n */\n\nimport { html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyElement } from '../../mixins'\nimport type SchmancyForm from './form'\n\n@customElement('schmancy-form-summary')\nexport class SchmancyFormSummary extends SchmancyElement {\n\t/**\n\t * Optional heading text. Defaults to a count-based summary\n\t * (\"1 problem with this form\" / \"3 problems with this form\").\n\t */\n\t@property({ type: String }) heading?: string\n\n\t/**\n\t * Render bumper — incremented to force a re-render when the form's state\n\t * changes (the actual content is computed from the DOM in render()).\n\t */\n\t@state() private
|
|
1
|
+
{"version":3,"file":"form.js","names":[],"sources":["../src/form/form-summary.ts"],"sourcesContent":["/**\n * `<schmancy-form-summary>` — top-of-form error summary with anchor links to\n * each invalid field. Linear / GOV.UK / GitHub pattern.\n *\n * Drop one inside any `<schmancy-form>`; on submit-failure or when\n * `<schmancy-form>.setFormError(...)` is called, the summary renders a\n * `role=\"alert\"` banner with the form-level error message and a list of\n * links pointing at each invalid field's `id`.\n *\n * Hidden when the form is idle, submitting, or successful — only `error`\n * populates it.\n *\n * @element schmancy-form-summary\n */\n\nimport { html, nothing } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { SchmancyElement } from '../../mixins'\nimport type SchmancyForm from './form'\n\n@customElement('schmancy-form-summary')\nexport class SchmancyFormSummary extends SchmancyElement {\n\t/**\n\t * Optional heading text. Defaults to a count-based summary\n\t * (\"1 problem with this form\" / \"3 problems with this form\").\n\t */\n\t@property({ type: String }) heading?: string\n\n\t/**\n\t * Render bumper — incremented to force a re-render when the form's state\n\t * changes (the actual content is computed from the DOM in render()).\n\t */\n\t@state() private bump: number = 0\n\n\tprivate form: SchmancyForm | null = null\n\tprivate formObserver?: MutationObserver\n\n\toverride connectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.form = this.closest('schmancy-form') as SchmancyForm | null\n\t\tif (!this.form) {\n\t\t\tconsole.error('[schmancy-form-summary] must be a descendant of <schmancy-form>')\n\t\t\treturn\n\t\t}\n\t\tconst bump = () => { this.bump++ }\n\t\tthis.formObserver = new MutationObserver(bump)\n\t\t// Form host attribute changes (aria-busy, :state class reflections,\n\t\t// descendant attribute changes for fields' aria-invalid). subtree:true\n\t\t// catches attribute mutations on every descendant including light-DOM\n\t\t// fields and the form's own host.\n\t\tthis.formObserver.observe(this.form, {\n\t\t\tattributes: true,\n\t\t\tsubtree: true,\n\t\t})\n\t\t// Defer live-region observation until the form has rendered its\n\t\t// shadow tree.\n\t\tconst attachLiveRegionObserver = async (): Promise<void> => {\n\t\t\tawait this.form?.updateComplete\n\t\t\tconst liveRegion = this.form?.shadowRoot?.querySelector('[role=\"status\"]')\n\t\t\tif (liveRegion) {\n\t\t\t\tthis.formObserver?.observe(liveRegion, {\n\t\t\t\t\tchildList: true,\n\t\t\t\t\tcharacterData: true,\n\t\t\t\t\tsubtree: true,\n\t\t\t\t})\n\t\t\t}\n\t\t\t// Force a render so the initial state is reflected.\n\t\t\tthis.bump++\n\t\t}\n\t\tvoid attachLiveRegionObserver()\n\t}\n\n\toverride disconnectedCallback(): void {\n\t\tthis.formObserver?.disconnect()\n\t\tthis.formObserver = undefined\n\t\tsuper.disconnectedCallback()\n\t}\n\n\tprivate readFormStatus(): 'idle' | 'submitting' | 'success' | 'error' {\n\t\tif (!this.form) return 'idle'\n\t\tif (this.form.matches(':state(error)')) return 'error'\n\t\tif (this.form.matches(':state(submitting)')) return 'submitting'\n\t\tif (this.form.matches(':state(success)')) return 'success'\n\t\treturn 'idle'\n\t}\n\n\tprivate readFormMessage(): string {\n\t\tconst liveRegion = this.form?.shadowRoot?.querySelector('[role=\"status\"]')\n\t\treturn liveRegion?.textContent?.trim() ?? ''\n\t}\n\n\tprivate readInvalidFields(): Array<{ id: string; label: string; message: string }> {\n\t\tif (!this.form) return []\n\t\tconst result: Array<{ id: string; label: string; message: string }> = []\n\t\tfor (const el of Array.from(this.form.querySelectorAll('*'))) {\n\t\t\tif (!(el instanceof HTMLElement)) continue\n\t\t\tlet isInvalid = false\n\t\t\ttry {\n\t\t\t\tisInvalid = el.matches(':state(invalid)')\n\t\t\t} catch {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (!isInvalid) continue\n\t\t\tconst f = el as HTMLElement & {\n\t\t\t\tlabel?: string\n\t\t\t\tname?: string\n\t\t\t\tvalidationMessage?: string\n\t\t\t}\n\t\t\tresult.push({\n\t\t\t\tid: f.id,\n\t\t\t\tlabel: f.label || f.name || '(field)',\n\t\t\t\tmessage: f.validationMessage || 'Invalid value',\n\t\t\t})\n\t\t}\n\t\treturn result\n\t}\n\n\trender() {\n\t\t// Read everything fresh from the DOM each render — no @state cache, no\n\t\t// re-render loops. The MutationObserver bumps `bump` to trigger this\n\t\t// render; `bump` itself is never read here.\n\t\tvoid this.bump\n\n\t\tconst status = this.readFormStatus()\n\t\tif (status !== 'error') return nothing\n\n\t\tconst formMessage = this.readFormMessage()\n\t\tconst invalid = this.readInvalidFields()\n\t\tconst count = invalid.length\n\t\tconst heading =\n\t\t\tthis.heading ??\n\t\t\t(count === 0\n\t\t\t\t? 'There is a problem with this form'\n\t\t\t\t: `There ${count === 1 ? 'is' : 'are'} ${count} problem${count === 1 ? '' : 's'} with this form`)\n\n\t\treturn html`\n\t\t\t<div role=\"alert\" aria-labelledby=\"schmancy-form-summary-heading\">\n\t\t\t\t<h2 id=\"schmancy-form-summary-heading\">${heading}</h2>\n\t\t\t\t${formMessage ? html`<p>${formMessage}</p>` : nothing}\n\t\t\t\t${count > 0\n\t\t\t\t\t? html`\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t${invalid.map(\n\t\t\t\t\t\t\t\tf => html`\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref=\"#${f.id}\"\n\t\t\t\t\t\t\t\t\t\t\t@click=${(e: MouseEvent) => this.jumpToField(e, f.id)}\n\t\t\t\t\t\t\t\t\t\t>${f.label}: ${f.message}</a>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t`\n\t\t\t\t\t: nothing}\n\t\t\t</div>\n\t\t`\n\t}\n\n\tprivate jumpToField(e: MouseEvent, fieldId: string): void {\n\t\te.preventDefault()\n\t\tconst target = this.form?.querySelector(`#${CSS.escape(fieldId)}`) as HTMLElement | null\n\t\ttarget?.focus()\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-form-summary': SchmancyFormSummary\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gravity-6pL6CfIr.cjs","names":[],"sources":["../src/directives/gravity.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { from, EMPTY } from 'rxjs'\nimport { take, catchError, tap } from 'rxjs/operators'\nimport { SPRING_SMOOTH, SPRING_BOUNCY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface GravityOptions {\n\t/** Mass: 0.5 (light/bouncy) to 2.0 (heavy/damped). Default: 1.0 */\n\tmass?: number\n\t/** Fall distance in pixels (default: 30) */\n\tdistance?: number\n\t/** Delay before falling in ms (default: 0) */\n\tdelay?: number\n\t/** Stagger delay per item for lists — multiply by index (default: 0) */\n\tstagger?: number\n}\n\n/**\n * Gravity directive — elements fall into place and settle with mass-based bounce.\n *\n * Only animates ONCE on first render. Re-renders do not re-trigger.\n * Disconnecting and reconnecting re-triggers the animation.\n *\n * @example\n * ```html\n * <schmancy-card ${gravity()}>content</schmancy-card>\n *\n * ${repeat(items, item => item.id, (item, i) => html`\n * <div ${gravity({ stagger: 50 * i, mass: 0.8 })}>...</div>\n * `)}\n * ```\n */\nclass GravityDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate animation?: Animation\n\tprivate hasAnimated = false\n\tprivate options?: GravityOptions\n\n\trender(
|
|
1
|
+
{"version":3,"file":"gravity-6pL6CfIr.cjs","names":[],"sources":["../src/directives/gravity.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { from, EMPTY } from 'rxjs'\nimport { take, catchError, tap } from 'rxjs/operators'\nimport { SPRING_SMOOTH, SPRING_BOUNCY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface GravityOptions {\n\t/** Mass: 0.5 (light/bouncy) to 2.0 (heavy/damped). Default: 1.0 */\n\tmass?: number\n\t/** Fall distance in pixels (default: 30) */\n\tdistance?: number\n\t/** Delay before falling in ms (default: 0) */\n\tdelay?: number\n\t/** Stagger delay per item for lists — multiply by index (default: 0) */\n\tstagger?: number\n}\n\n/**\n * Gravity directive — elements fall into place and settle with mass-based bounce.\n *\n * Only animates ONCE on first render. Re-renders do not re-trigger.\n * Disconnecting and reconnecting re-triggers the animation.\n *\n * @example\n * ```html\n * <schmancy-card ${gravity()}>content</schmancy-card>\n *\n * ${repeat(items, item => item.id, (item, i) => html`\n * <div ${gravity({ stagger: 50 * i, mass: 0.8 })}>...</div>\n * `)}\n * ```\n */\nclass GravityDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate animation?: Animation\n\tprivate hasAnimated = false\n\tprivate options?: GravityOptions\n\n\trender(options?: GravityOptions) {\n\t\tvoid options\n\t\treturn undefined\n\t}\n\n\toverride update(part: ElementPart, [options]: [GravityOptions?]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('gravity directive must be used on an element')\n\t\t}\n\n\t\tthis.element = part.element as HTMLElement\n\t\tthis.options = options\n\n\t\tif (this.hasAnimated) return undefined\n\t\tif (reducedMotion$.value) {\n\t\t\tthis.hasAnimated = true\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst mass = Math.max(0.3, Math.min(3.0, options?.mass ?? 1.0))\n\t\tconst distance = options?.distance ?? 30\n\t\tconst delay = (options?.delay ?? 0) + (options?.stagger ?? 0)\n\n\t\tthis.animate(mass, distance, delay)\n\t\tthis.hasAnimated = true\n\n\t\treturn undefined\n\t}\n\n\toverride reconnected() {\n\t\tthis.hasAnimated = false\n\t\tif (this.options && !reducedMotion$.value) {\n\t\t\tconst mass = Math.max(0.3, Math.min(3.0, this.options.mass ?? 1.0))\n\t\t\tconst distance = this.options.distance ?? 30\n\t\t\tconst delay = (this.options.delay ?? 0) + (this.options.stagger ?? 0)\n\t\t\tthis.animate(mass, distance, delay)\n\t\t\tthis.hasAnimated = true\n\t\t}\n\t}\n\n\tprivate animate(mass: number, distance: number, delay: number) {\n\t\tconst preset = mass < 0.7 ? SPRING_BOUNCY : SPRING_SMOOTH\n\t\tconst duration = preset.duration * (1 / Math.sqrt(mass))\n\t\tconst fallDistance = distance * (1 / mass)\n\n\t\tthis.animation?.cancel()\n\n\t\tthis.element.style.willChange = 'transform, opacity'\n\t\tthis.animation = this.element.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: `translateY(-${fallDistance}px)` },\n\t\t\t\t{ opacity: 1, transform: 'translateY(0)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration,\n\t\t\t\tdelay,\n\t\t\t\teasing: preset.easingFallback,\n\t\t\t\tfill: 'backwards',\n\t\t\t},\n\t\t)\n\n\t\t// RxJS cleanup instead of raw .then()\n\t\tfrom(this.animation.finished).pipe(\n\t\t\ttake(1),\n\t\t\ttap(() => {\n\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\tthis.animation = undefined\n\t\t\t}),\n\t\t\tcatchError(() => EMPTY), // Animation cancelled — no cleanup needed\n\t\t).subscribe()\n\t}\n\n\toverride disconnected() {\n\t\tthis.animation?.cancel()\n\t\tthis.animation = undefined\n\t}\n}\n\nexport const gravity = directive(GravityDirective)\n"],"mappings":"2OAiCA,IAAM,EAAN,cAA+B,EAAA,cAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,YAAA,CAGR,CAAA,CAGtB,OAAO,EAAA,CAGP,CAEA,OAAgB,EAAA,CAAoB,GAAA,CACnC,GAAI,EAAK,OAAS,EAAA,SAAS,QAC1B,MAAU,MAAM,8CAAA,EAMjB,GAHA,KAAK,QAAU,EAAK,QACpB,KAAK,QAAU,EAEX,KAAK,YAAa,OACtB,GAAI,EAAA,EAAe,MAElB,OAAA,KADA,KAAK,YAAA,CAAc,GAIpB,IAAM,EAAO,KAAK,IAAI,GAAK,KAAK,IAAI,EAAK,GAAS,MAAQ,CAAA,CAAA,EACpD,EAAW,GAAS,UAAY,GAChC,GAAS,GAAS,OAAS,IAAM,GAAS,SAAW,GAE3D,KAAK,QAAQ,EAAM,EAAU,CAAA,EAC7B,KAAK,YAAA,CAAc,CAGpB,CAEA,aAAA,CAEC,GADA,KAAK,YAAA,CAAc,EACf,KAAK,SAAA,CAAY,EAAA,EAAe,MAAO,CAC1C,IAAM,EAAO,KAAK,IAAI,GAAK,KAAK,IAAI,EAAK,KAAK,QAAQ,MAAQ,CAAA,CAAA,EACxD,EAAW,KAAK,QAAQ,UAAY,GACpC,GAAS,KAAK,QAAQ,OAAS,IAAM,KAAK,QAAQ,SAAW,GACnE,KAAK,QAAQ,EAAM,EAAU,CAAA,EAC7B,KAAK,YAAA,CAAc,CACpB,CACD,CAEA,QAAgB,EAAc,EAAkB,EAAA,CAC/C,IAAM,EAAS,EAAO,GAAM,EAAA,EAAgB,EAAA,EACtC,EAAW,EAAO,UAAY,EAAI,KAAK,KAAK,CAAA,GAC5C,EAA2B,EAAI,EAAhB,EAErB,KAAK,WAAW,OAAA,EAEhB,KAAK,QAAQ,MAAM,WAAa,qBAChC,KAAK,UAAY,KAAK,QAAQ,QAC7B,CACC,CAAE,QAAS,EAAG,UAAW,eAAe,EAAA,IAAA,EACxC,CAAE,QAAS,EAAG,UAAW,eAAA,CAAA,EAE1B,CACC,SAAA,EACA,MAAA,EACA,OAAQ,EAAO,eACf,KAAM,WAAA,CAAA,GAKR,EAAA,EAAA,MAAK,KAAK,UAAU,QAAA,EAAU,MAAA,EAAA,EAAA,MACxB,CAAA,GAAC,EAAA,EAAA,SAAA,CAEL,KAAK,QAAQ,MAAM,WAAa,GAChC,KAAK,UAAA,IAAY,EAAA,CAAA,GACjB,EAAA,EAAA,gBACgB,EAAA,KAAA,CAAA,EAChB,UAAA,CACH,CAEA,cAAA,CACC,KAAK,WAAW,OAAA,EAChB,KAAK,UAAA,IAAY,EAClB,CAAA,EAGY,GAAA,EAAA,EAAA,WAAoB,CAAA,EAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,CAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gravity-sVK3zGBF.js","names":[],"sources":["../src/directives/gravity.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { from, EMPTY } from 'rxjs'\nimport { take, catchError, tap } from 'rxjs/operators'\nimport { SPRING_SMOOTH, SPRING_BOUNCY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface GravityOptions {\n\t/** Mass: 0.5 (light/bouncy) to 2.0 (heavy/damped). Default: 1.0 */\n\tmass?: number\n\t/** Fall distance in pixels (default: 30) */\n\tdistance?: number\n\t/** Delay before falling in ms (default: 0) */\n\tdelay?: number\n\t/** Stagger delay per item for lists — multiply by index (default: 0) */\n\tstagger?: number\n}\n\n/**\n * Gravity directive — elements fall into place and settle with mass-based bounce.\n *\n * Only animates ONCE on first render. Re-renders do not re-trigger.\n * Disconnecting and reconnecting re-triggers the animation.\n *\n * @example\n * ```html\n * <schmancy-card ${gravity()}>content</schmancy-card>\n *\n * ${repeat(items, item => item.id, (item, i) => html`\n * <div ${gravity({ stagger: 50 * i, mass: 0.8 })}>...</div>\n * `)}\n * ```\n */\nclass GravityDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate animation?: Animation\n\tprivate hasAnimated = false\n\tprivate options?: GravityOptions\n\n\trender(
|
|
1
|
+
{"version":3,"file":"gravity-sVK3zGBF.js","names":[],"sources":["../src/directives/gravity.ts"],"sourcesContent":["import { directive, type ElementPart, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { from, EMPTY } from 'rxjs'\nimport { take, catchError, tap } from 'rxjs/operators'\nimport { SPRING_SMOOTH, SPRING_BOUNCY } from '../utils/animation'\nimport { reducedMotion$ } from './reduced-motion'\n\nexport interface GravityOptions {\n\t/** Mass: 0.5 (light/bouncy) to 2.0 (heavy/damped). Default: 1.0 */\n\tmass?: number\n\t/** Fall distance in pixels (default: 30) */\n\tdistance?: number\n\t/** Delay before falling in ms (default: 0) */\n\tdelay?: number\n\t/** Stagger delay per item for lists — multiply by index (default: 0) */\n\tstagger?: number\n}\n\n/**\n * Gravity directive — elements fall into place and settle with mass-based bounce.\n *\n * Only animates ONCE on first render. Re-renders do not re-trigger.\n * Disconnecting and reconnecting re-triggers the animation.\n *\n * @example\n * ```html\n * <schmancy-card ${gravity()}>content</schmancy-card>\n *\n * ${repeat(items, item => item.id, (item, i) => html`\n * <div ${gravity({ stagger: 50 * i, mass: 0.8 })}>...</div>\n * `)}\n * ```\n */\nclass GravityDirective extends AsyncDirective {\n\tprivate element!: HTMLElement\n\tprivate animation?: Animation\n\tprivate hasAnimated = false\n\tprivate options?: GravityOptions\n\n\trender(options?: GravityOptions) {\n\t\tvoid options\n\t\treturn undefined\n\t}\n\n\toverride update(part: ElementPart, [options]: [GravityOptions?]) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('gravity directive must be used on an element')\n\t\t}\n\n\t\tthis.element = part.element as HTMLElement\n\t\tthis.options = options\n\n\t\tif (this.hasAnimated) return undefined\n\t\tif (reducedMotion$.value) {\n\t\t\tthis.hasAnimated = true\n\t\t\treturn undefined\n\t\t}\n\n\t\tconst mass = Math.max(0.3, Math.min(3.0, options?.mass ?? 1.0))\n\t\tconst distance = options?.distance ?? 30\n\t\tconst delay = (options?.delay ?? 0) + (options?.stagger ?? 0)\n\n\t\tthis.animate(mass, distance, delay)\n\t\tthis.hasAnimated = true\n\n\t\treturn undefined\n\t}\n\n\toverride reconnected() {\n\t\tthis.hasAnimated = false\n\t\tif (this.options && !reducedMotion$.value) {\n\t\t\tconst mass = Math.max(0.3, Math.min(3.0, this.options.mass ?? 1.0))\n\t\t\tconst distance = this.options.distance ?? 30\n\t\t\tconst delay = (this.options.delay ?? 0) + (this.options.stagger ?? 0)\n\t\t\tthis.animate(mass, distance, delay)\n\t\t\tthis.hasAnimated = true\n\t\t}\n\t}\n\n\tprivate animate(mass: number, distance: number, delay: number) {\n\t\tconst preset = mass < 0.7 ? SPRING_BOUNCY : SPRING_SMOOTH\n\t\tconst duration = preset.duration * (1 / Math.sqrt(mass))\n\t\tconst fallDistance = distance * (1 / mass)\n\n\t\tthis.animation?.cancel()\n\n\t\tthis.element.style.willChange = 'transform, opacity'\n\t\tthis.animation = this.element.animate(\n\t\t\t[\n\t\t\t\t{ opacity: 0, transform: `translateY(-${fallDistance}px)` },\n\t\t\t\t{ opacity: 1, transform: 'translateY(0)' },\n\t\t\t],\n\t\t\t{\n\t\t\t\tduration,\n\t\t\t\tdelay,\n\t\t\t\teasing: preset.easingFallback,\n\t\t\t\tfill: 'backwards',\n\t\t\t},\n\t\t)\n\n\t\t// RxJS cleanup instead of raw .then()\n\t\tfrom(this.animation.finished).pipe(\n\t\t\ttake(1),\n\t\t\ttap(() => {\n\t\t\t\tthis.element.style.willChange = ''\n\t\t\t\tthis.animation = undefined\n\t\t\t}),\n\t\t\tcatchError(() => EMPTY), // Animation cancelled — no cleanup needed\n\t\t).subscribe()\n\t}\n\n\toverride disconnected() {\n\t\tthis.animation?.cancel()\n\t\tthis.animation = undefined\n\t}\n}\n\nexport const gravity = directive(GravityDirective)\n"],"mappings":";;;;;;AAiCA,IAoFa,IAAU,EApFvB,cAA+B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,cAAA,CAGR;CAAA;CAGtB,OAAO,GAAA,CAGP;CAEA,OAAgB,GAAA,CAAoB,IAAA;EACnC,IAAI,EAAK,SAAS,EAAS,SAC1B,MAAU,MAAM,8CAAA;EAMjB,IAHA,KAAK,UAAU,EAAK,SACpB,KAAK,UAAU,GAEX,KAAK,aAAa;EACtB,IAAI,EAAe,OAElB,OAAA,MADA,KAAK,cAAA,CAAc;EAIpB,IAAM,IAAO,KAAK,IAAI,IAAK,KAAK,IAAI,GAAK,GAAS,QAAQ,CAAA,CAAA,GACpD,IAAW,GAAS,YAAY,IAChC,KAAS,GAAS,SAAS,MAAM,GAAS,WAAW;EAE3D,KAAK,QAAQ,GAAM,GAAU,CAAA,GAC7B,KAAK,cAAA,CAAc;CAGpB;CAEA,cAAA;EAEC,IADA,KAAK,cAAA,CAAc,GACf,KAAK,WAAA,CAAY,EAAe,OAAO;GAC1C,IAAM,IAAO,KAAK,IAAI,IAAK,KAAK,IAAI,GAAK,KAAK,QAAQ,QAAQ,CAAA,CAAA,GACxD,IAAW,KAAK,QAAQ,YAAY,IACpC,KAAS,KAAK,QAAQ,SAAS,MAAM,KAAK,QAAQ,WAAW;GACnE,KAAK,QAAQ,GAAM,GAAU,CAAA,GAC7B,KAAK,cAAA,CAAc;EACpB;CACD;CAEA,QAAgB,GAAc,GAAkB,GAAA;EAC/C,IAAM,IAAS,IAAO,KAAM,IAAgB,GACtC,IAAW,EAAO,YAAY,IAAI,KAAK,KAAK,CAAA,IAC5C,IAA2B,IAAI,IAAhB;EAErB,KAAK,WAAW,OAAA,GAEhB,KAAK,QAAQ,MAAM,aAAa,sBAChC,KAAK,YAAY,KAAK,QAAQ,QAC7B,CACC;GAAE,SAAS;GAAG,WAAW,eAAe,EAAA;EAAA,GACxC;GAAE,SAAS;GAAG,WAAW;EAAA,CAAA,GAE1B;GACC,UAAA;GACA,OAAA;GACA,QAAQ,EAAO;GACf,MAAM;EAAA,CAAA,GAKR,EAAK,KAAK,UAAU,QAAA,EAAU,KAC7B,EAAK,CAAA,GACL,QAAA;GACC,KAAK,QAAQ,MAAM,aAAa,IAChC,KAAK,YAAA,KAAY;EAAA,CAAA,GAElB,QAAiB,CAAA,CAAA,EAChB,UAAA;CACH;CAEA,eAAA;EACC,KAAK,WAAW,OAAA,GAChB,KAAK,YAAA,KAAY;CAClB;AAAA,CAAA;AAAA,SAAA,KAAA"}
|
|
@@ -203,7 +203,7 @@ The manifest already has everything needed; the package is just the JSON-RPC wra
|
|
|
203
203
|
|
|
204
204
|
**Problem.** `handover/agent-runtime-v1.md` had `<PENDING>` placeholders that we manually replaced with `0.9.13` after the first publish. Future handover docs will have the same issue.
|
|
205
205
|
|
|
206
|
-
**Fix.** A build step that substitutes `0.10.
|
|
206
|
+
**Fix.** A build step that substitutes `0.10.39` in `handover/**/*.md` against `package.json`'s `version` field on every build. `dist/handover/**/*.md` gets the rendered version; the source stays templated.
|
|
207
207
|
|
|
208
208
|
**Effort:** ~30 min (one sed step or a tiny script).
|
|
209
209
|
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
## The URLs you asked for
|
|
8
8
|
|
|
9
9
|
```
|
|
10
|
-
https://esm.sh/@mhmo91/schmancy/agent@0.10.
|
|
11
|
-
https://esm.sh/@mhmo91/schmancy/agent/manifest@0.10.
|
|
10
|
+
https://esm.sh/@mhmo91/schmancy/agent@0.10.39
|
|
11
|
+
https://esm.sh/@mhmo91/schmancy/agent/manifest@0.10.39
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
`0.9.13` is the first release containing `/agent`; every subsequent publish serves the same subpath. `npm view @mhmo91/schmancy version` always returns the current pin if you want to float forward.
|
|
@@ -20,7 +20,7 @@ One script tag. No bundler, no bare specifiers, no npm install.
|
|
|
20
20
|
```html
|
|
21
21
|
<!doctype html>
|
|
22
22
|
<script type="module">
|
|
23
|
-
import { $dialog, theme } from 'https://esm.sh/@mhmo91/schmancy/agent@0.10.
|
|
23
|
+
import { $dialog, theme } from 'https://esm.sh/@mhmo91/schmancy/agent@0.10.39';
|
|
24
24
|
</script>
|
|
25
25
|
<schmancy-theme root scheme="dark">
|
|
26
26
|
<schmancy-surface type="solid" fill="all">
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { t as e, u as t } from "./SchmancyElement-
|
|
2
|
-
import "./mixins-
|
|
1
|
+
import { t as e, u as t } from "./SchmancyElement-BNnyBOwk.js";
|
|
2
|
+
import "./mixins-DGBI7YPO.js";
|
|
3
3
|
import { customElement as n, state as r } from "lit/decorators.js";
|
|
4
4
|
import { css as i, html as a, nothing as o, svg as s } from "lit";
|
|
5
5
|
var c = class extends e {
|
|
6
6
|
constructor(...e) {
|
|
7
|
-
super(...e), this.
|
|
7
|
+
super(...e), this.name = "";
|
|
8
8
|
}
|
|
9
9
|
static {
|
|
10
10
|
this.styles = [i`
|
|
@@ -28,19 +28,19 @@ var c = class extends e {
|
|
|
28
28
|
`];
|
|
29
29
|
}
|
|
30
30
|
connectedCallback() {
|
|
31
|
-
super.connectedCallback(), this.
|
|
32
|
-
this.
|
|
33
|
-
}), this.
|
|
31
|
+
super.connectedCallback(), this.name = this.textContent?.trim() ?? "", this.observer = new MutationObserver(() => {
|
|
32
|
+
this.name = this.textContent?.trim() ?? "";
|
|
33
|
+
}), this.observer.observe(this, {
|
|
34
34
|
childList: !0,
|
|
35
35
|
characterData: !0,
|
|
36
36
|
subtree: !0
|
|
37
37
|
}), this.setAttribute("aria-hidden", "true"), this.setAttribute("translate", "no");
|
|
38
38
|
}
|
|
39
39
|
disconnectedCallback() {
|
|
40
|
-
super.disconnectedCallback(), this.
|
|
40
|
+
super.disconnectedCallback(), this.observer?.disconnect();
|
|
41
41
|
}
|
|
42
42
|
render() {
|
|
43
|
-
let e = window.__siIcons?.[this.
|
|
43
|
+
let e = window.__siIcons?.[this.name];
|
|
44
44
|
return a`
|
|
45
45
|
<slot style="display:none"></slot>
|
|
46
46
|
${e ? a`<svg viewBox="0 -960 960 960" xmlns="http://www.w3.org/2000/svg">
|
|
@@ -49,4 +49,4 @@ var c = class extends e {
|
|
|
49
49
|
`;
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
t([r()], c.prototype, "
|
|
52
|
+
t([r()], c.prototype, "name", void 0), c = t([n("schmancy-icon")], c);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons-CJ2mXcBi.js","names":[],"sources":["../src/icons/icon.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html, nothing, svg } from 'lit'\nimport { customElement, state } from 'lit/decorators.js'\n\ndeclare global {\n interface Window {\n // eslint-disable-next-line no-underscore-dangle -- public runtime contract: global populated by the external schmancy-icons Vite plugin; renaming breaks consumers\n __siIcons?: Record<string, string>\n }\n}\n\n/**\n * @element schmancy-icon\n * Renders a Material Symbol inline as SVG — path data comes from\n * window.__siIcons populated by the schmancy-icons Vite plugin.\n *\n * Size: set font-size on the host via Tailwind (e.g. class=\"text-2xl\").\n * Color: inherits currentColor.\n * Active fill: use the \"-fill\" variant name: \"home-fill\".\n *\n * Usage:\n * <schmancy-icon>home</schmancy-icon>\n * <schmancy-icon class=\"text-lg text-primary-default\">delete</schmancy-icon>\n * <schmancy-icon>${active ? 'home-fill' : 'home'}</schmancy-icon>\n */\n@customElement('schmancy-icon')\nexport default class SchmancyIcon extends SchmancyElement {\n\tstatic styles = [css`\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tplace-items: center;\n\t\t\tplace-content: center;\n\t\t\tfont-size: 24px;\n\t\t\twidth: 1em;\n\t\t\theight: 1em;\n\t\t\tflex-shrink: 0;\n\t\t\tcolor: inherit;\n\t\t}\n\n\t\tsvg {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tfill: currentColor;\n\t\t\toverflow: visible;\n\t\t}\n\t`]\n\n\t@state() private name = ''\n\n\tprivate observer?: MutationObserver\n\n\toverride connectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.name = this.textContent?.trim() ?? ''\n\t\tthis.observer = new MutationObserver(() => {\n\t\t\tthis.name = this.textContent?.trim() ?? ''\n\t\t})\n\t\tthis.observer.observe(this, { childList: true, characterData: true, subtree: true })\n\t\tthis.setAttribute('aria-hidden', 'true')\n\t\tthis.setAttribute('translate', 'no')\n\t}\n\n\toverride disconnectedCallback(): void {\n\t\tsuper.disconnectedCallback()\n\t\tthis.observer?.disconnect()\n\t}\n\n\tprotected override render(): unknown {\n\t\t// eslint-disable-next-line no-underscore-dangle -- public runtime contract: see Window.__siIcons declaration above\n\t\tconst path = window.__siIcons?.[this.name]\n\t\treturn html`\n\t\t\t<slot style=\"display:none\"></slot>\n\t\t\t${path\n\t\t\t\t? html`<svg viewBox=\"0 -960 960 960\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t\t${svg`<path d=\"${path}\"/>`}\n\t\t\t\t\t</svg>`\n\t\t\t\t: nothing}\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-icon': SchmancyIcon\n\t}\n}\n"],"mappings":";;;;AA0Be,IAAA,IAAA,cAA2B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,OAqBjB;CAAA;CAAA;EAAA,KAAA,SApBR,CAAC,CAAG;;;;;;;;;;;;;;;;;;;;CAwBpB,oBAAA;EACC,MAAM,kBAAA,GACN,KAAK,OAAO,KAAK,aAAa,KAAA,KAAU,IACxC,KAAK,WAAW,IAAI,uBAAA;GACnB,KAAK,OAAO,KAAK,aAAa,KAAA,KAAU;EAAA,CAAA,GAEzC,KAAK,SAAS,QAAQ,MAAM;GAAE,WAAA,CAAW;GAAM,eAAA,CAAe;GAAM,SAAA,CAAS;EAAA,CAAA,GAC7E,KAAK,aAAa,eAAe,MAAA,GACjC,KAAK,aAAa,aAAa,IAAA;CAChC;CAEA,uBAAA;EACC,MAAM,qBAAA,GACN,KAAK,UAAU,WAAA;CAChB;CAEA,SAAA;EAEC,IAAM,IAAO,OAAO,YAAY,KAAK;EACrC,OAAO,CAAI;;KAER,IACC,CAAI;QACF,CAAG,YAAY,EAAA,KAAA;eAEjB,EAAA;;CAEL;AAAA;AAAA,EAAA,CA/BC,EAAA,CAAA,GAAM,EAAA,WAAA,QAAA,KAAA,CAAA,GAAA,IAAA,EAAA,CAtBP,EAAc,eAAA,CAAA,GAAe,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-C41uPa6l.cjs`);require(`./mixins-fIpzhVMd.cjs`);let t=require(`lit/decorators.js`),n=require(`lit`);var r=class extends e.t{constructor(...e){super(...e),this.name=``}static{this.styles=[n.css`
|
|
2
|
+
:host {
|
|
3
|
+
display: inline-flex;
|
|
4
|
+
place-items: center;
|
|
5
|
+
place-content: center;
|
|
6
|
+
font-size: 24px;
|
|
7
|
+
width: 1em;
|
|
8
|
+
height: 1em;
|
|
9
|
+
flex-shrink: 0;
|
|
10
|
+
color: inherit;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
svg {
|
|
14
|
+
width: 100%;
|
|
15
|
+
height: 100%;
|
|
16
|
+
fill: currentColor;
|
|
17
|
+
overflow: visible;
|
|
18
|
+
}
|
|
19
|
+
`]}connectedCallback(){super.connectedCallback(),this.name=this.textContent?.trim()??``,this.observer=new MutationObserver(()=>{this.name=this.textContent?.trim()??``}),this.observer.observe(this,{childList:!0,characterData:!0,subtree:!0}),this.setAttribute(`aria-hidden`,`true`),this.setAttribute(`translate`,`no`)}disconnectedCallback(){super.disconnectedCallback(),this.observer?.disconnect()}render(){let e=window.__siIcons?.[this.name];return n.html`
|
|
20
|
+
<slot style="display:none"></slot>
|
|
21
|
+
${e?n.html`<svg viewBox="0 -960 960 960" xmlns="http://www.w3.org/2000/svg">
|
|
22
|
+
${n.svg`<path d="${e}"/>`}
|
|
23
|
+
</svg>`:n.nothing}
|
|
24
|
+
`}};e.u([(0,t.state)()],r.prototype,`name`,void 0),r=e.u([(0,t.customElement)(`schmancy-icon`)],r);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons-sZ-LybA9.cjs","names":[],"sources":["../src/icons/icon.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html, nothing, svg } from 'lit'\nimport { customElement, state } from 'lit/decorators.js'\n\ndeclare global {\n interface Window {\n // eslint-disable-next-line no-underscore-dangle -- public runtime contract: global populated by the external schmancy-icons Vite plugin; renaming breaks consumers\n __siIcons?: Record<string, string>\n }\n}\n\n/**\n * @element schmancy-icon\n * Renders a Material Symbol inline as SVG — path data comes from\n * window.__siIcons populated by the schmancy-icons Vite plugin.\n *\n * Size: set font-size on the host via Tailwind (e.g. class=\"text-2xl\").\n * Color: inherits currentColor.\n * Active fill: use the \"-fill\" variant name: \"home-fill\".\n *\n * Usage:\n * <schmancy-icon>home</schmancy-icon>\n * <schmancy-icon class=\"text-lg text-primary-default\">delete</schmancy-icon>\n * <schmancy-icon>${active ? 'home-fill' : 'home'}</schmancy-icon>\n */\n@customElement('schmancy-icon')\nexport default class SchmancyIcon extends SchmancyElement {\n\tstatic styles = [css`\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tplace-items: center;\n\t\t\tplace-content: center;\n\t\t\tfont-size: 24px;\n\t\t\twidth: 1em;\n\t\t\theight: 1em;\n\t\t\tflex-shrink: 0;\n\t\t\tcolor: inherit;\n\t\t}\n\n\t\tsvg {\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tfill: currentColor;\n\t\t\toverflow: visible;\n\t\t}\n\t`]\n\n\t@state() private name = ''\n\n\tprivate observer?: MutationObserver\n\n\toverride connectedCallback(): void {\n\t\tsuper.connectedCallback()\n\t\tthis.name = this.textContent?.trim() ?? ''\n\t\tthis.observer = new MutationObserver(() => {\n\t\t\tthis.name = this.textContent?.trim() ?? ''\n\t\t})\n\t\tthis.observer.observe(this, { childList: true, characterData: true, subtree: true })\n\t\tthis.setAttribute('aria-hidden', 'true')\n\t\tthis.setAttribute('translate', 'no')\n\t}\n\n\toverride disconnectedCallback(): void {\n\t\tsuper.disconnectedCallback()\n\t\tthis.observer?.disconnect()\n\t}\n\n\tprotected override render(): unknown {\n\t\t// eslint-disable-next-line no-underscore-dangle -- public runtime contract: see Window.__siIcons declaration above\n\t\tconst path = window.__siIcons?.[this.name]\n\t\treturn html`\n\t\t\t<slot style=\"display:none\"></slot>\n\t\t\t${path\n\t\t\t\t? html`<svg viewBox=\"0 -960 960 960\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t\t\t\t\t${svg`<path d=\"${path}\"/>`}\n\t\t\t\t\t</svg>`\n\t\t\t\t: nothing}\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-icon': SchmancyIcon\n\t}\n}\n"],"mappings":"uKA0Be,IAAA,EAAA,cAA2B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,KAqBjB,EAAA,CAAA,OAAA,KAAA,OApBR,CAAC,EAAA,GAAG;;;;;;;;;;;;;;;;;;IAwBpB,mBAAA,CACC,MAAM,kBAAA,EACN,KAAK,KAAO,KAAK,aAAa,KAAA,GAAU,GACxC,KAAK,SAAW,IAAI,qBAAA,CACnB,KAAK,KAAO,KAAK,aAAa,KAAA,GAAU,EAAA,CAAA,EAEzC,KAAK,SAAS,QAAQ,KAAM,CAAE,UAAA,CAAW,EAAM,cAAA,CAAe,EAAM,QAAA,CAAS,CAAA,CAAA,EAC7E,KAAK,aAAa,cAAe,MAAA,EACjC,KAAK,aAAa,YAAa,IAAA,CAChC,CAEA,sBAAA,CACC,MAAM,qBAAA,EACN,KAAK,UAAU,WAAA,CAChB,CAEA,QAAA,CAEC,IAAM,EAAO,OAAO,YAAY,KAAK,MACrC,MAAO,GAAA,IAAI;;KAER,EACC,EAAA,IAAI;QACF,EAAA,GAAG,YAAY,EAAA,KAAA;aAEjB,EAAA,QAAA;GAEL,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,OAAA,CAAA,EA/BO,EAAA,UAAA,OAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eAtBO,eAAA,CAAA,EAAe,CAAA"}
|
package/dist/icons.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
require(`./icons-
|
|
1
|
+
require(`./icons-sZ-LybA9.cjs`);
|
package/dist/icons.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import "./icons-
|
|
1
|
+
import "./icons-CJ2mXcBi.js";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { t as e, u as t } from "./SchmancyElement-
|
|
2
|
-
import "./mixins-
|
|
1
|
+
import { t as e, u as t } from "./SchmancyElement-BNnyBOwk.js";
|
|
2
|
+
import "./mixins-DGBI7YPO.js";
|
|
3
3
|
import { customElement as n, property as r, state as i } from "lit/decorators.js";
|
|
4
4
|
import { css as a, html as o } from "lit";
|
|
5
5
|
import { createRef as s, ref as c } from "lit/directives/ref.js";
|
|
6
6
|
var l = class extends e {
|
|
7
7
|
constructor(...e) {
|
|
8
|
-
super(...e), this.html = "", this.css = "", this.baseCss = "html,body{margin:0;padding:0;overflow:hidden;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}\nbody{padding:16px}\np{margin:0 0 1em}p:last-child{margin-bottom:0}\nul,ol{margin:0 0 1em;padding-left:1.5em}li{margin-bottom:.25em}\nh1,h2,h3,h4{margin:0 0 .5em;line-height:1.3}h1{font-size:1.5em}h2{font-size:1.25em}h3{font-size:1.1em}h4{font-size:1em}\nhr{border:none;border-top:1px solid #dadce0;margin:1em 0}\nimg{max-width:100%;height:auto}\ntable{border-collapse:collapse;max-width:100%}td,th{padding:4px 8px;border:1px solid #dadce0}\nblockquote{margin:0 0 1em;padding:.5em 0 .5em 1em;border-left:3px solid #dadce0;color:#5f6368}\npre{background:#f5f5f5;padding:.75em;border-radius:4px;overflow-x:auto;font-size:.9em}\ncode{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}", this.sandbox = "allow-same-origin allow-popups", this.minHeight = 60, this.
|
|
8
|
+
super(...e), this.html = "", this.css = "", this.baseCss = "html,body{margin:0;padding:0;overflow:hidden;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}\nbody{padding:16px}\np{margin:0 0 1em}p:last-child{margin-bottom:0}\nul,ol{margin:0 0 1em;padding-left:1.5em}li{margin-bottom:.25em}\nh1,h2,h3,h4{margin:0 0 .5em;line-height:1.3}h1{font-size:1.5em}h2{font-size:1.25em}h3{font-size:1.1em}h4{font-size:1em}\nhr{border:none;border-top:1px solid #dadce0;margin:1em 0}\nimg{max-width:100%;height:auto}\ntable{border-collapse:collapse;max-width:100%}td,th{padding:4px 8px;border:1px solid #dadce0}\nblockquote{margin:0 0 1em;padding:.5em 0 .5em 1em;border-left:3px solid #dadce0;color:#5f6368}\npre{background:#f5f5f5;padding:.75em;border-radius:4px;overflow-x:auto;font-size:.9em}\ncode{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}", this.sandbox = "allow-same-origin allow-popups", this.minHeight = 60, this.height = 60, this.srcdoc = "", this.iframeRef = s();
|
|
9
9
|
}
|
|
10
10
|
static {
|
|
11
11
|
this.styles = [a`
|
|
@@ -19,10 +19,10 @@ var l = class extends e {
|
|
|
19
19
|
`];
|
|
20
20
|
}
|
|
21
21
|
willUpdate(e) {
|
|
22
|
-
(e.has("html") || e.has("css") || e.has("baseCss")) && (this.
|
|
22
|
+
(e.has("html") || e.has("css") || e.has("baseCss")) && (this.srcdoc = this.html ? this.buildSrcdoc() : "", this.height = this.minHeight);
|
|
23
23
|
}
|
|
24
24
|
updated(e) {
|
|
25
|
-
e.has("sandbox") && this.
|
|
25
|
+
e.has("sandbox") && this.iframeRef.value?.setAttribute("sandbox", this.sandbox);
|
|
26
26
|
}
|
|
27
27
|
buildSrcdoc() {
|
|
28
28
|
return `<!DOCTYPE html><html><head>\n<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">\n<base target="_blank">\n<style>${this.css ? `${this.baseCss}\n${this.css}` : this.baseCss}</style></head><body>${this.html}</body></html>`;
|
|
@@ -32,20 +32,20 @@ var l = class extends e {
|
|
|
32
32
|
try {
|
|
33
33
|
let e = t.contentDocument;
|
|
34
34
|
if (!e) return;
|
|
35
|
-
this.
|
|
35
|
+
this.height = Math.max(e.documentElement.scrollHeight, this.minHeight);
|
|
36
36
|
} catch {
|
|
37
|
-
this.
|
|
37
|
+
this.height = Math.max(200, this.minHeight);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
render() {
|
|
41
41
|
return this.html ? o`<iframe
|
|
42
|
-
${c(this.
|
|
43
|
-
.srcdoc=${this.
|
|
44
|
-
style="height:${this.
|
|
42
|
+
${c(this.iframeRef)}
|
|
43
|
+
.srcdoc=${this.srcdoc}
|
|
44
|
+
style="height:${this.height}px;min-height:${this.minHeight}px;overflow:hidden"
|
|
45
45
|
@load=${this.onLoad}
|
|
46
46
|
></iframe>` : o``;
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
|
-
t([r({ type: String })], l.prototype, "html", void 0), t([r({ type: String })], l.prototype, "css", void 0), t([r({ type: String })], l.prototype, "baseCss", void 0), t([r({ type: String })], l.prototype, "sandbox", void 0), t([r({ type: Number })], l.prototype, "minHeight", void 0), t([i()], l.prototype, "
|
|
49
|
+
t([r({ type: String })], l.prototype, "html", void 0), t([r({ type: String })], l.prototype, "css", void 0), t([r({ type: String })], l.prototype, "baseCss", void 0), t([r({ type: String })], l.prototype, "sandbox", void 0), t([r({ type: Number })], l.prototype, "minHeight", void 0), t([i()], l.prototype, "height", void 0);
|
|
50
50
|
var u = l = t([n("schmancy-iframe")], l);
|
|
51
51
|
export { u as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iframe-DWvN5nGB.js","names":[],"sources":["../src/iframe/iframe.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html, PropertyValues } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { createRef, ref } from 'lit/directives/ref.js'\n\n/** Sensible document reset for iframe content — font, spacing, word-wrap */\nconst DEFAULT_BASE_CSS = `html,body{margin:0;padding:0;overflow:hidden;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}\nbody{padding:16px}\np{margin:0 0 1em}p:last-child{margin-bottom:0}\nul,ol{margin:0 0 1em;padding-left:1.5em}li{margin-bottom:.25em}\nh1,h2,h3,h4{margin:0 0 .5em;line-height:1.3}h1{font-size:1.5em}h2{font-size:1.25em}h3{font-size:1.1em}h4{font-size:1em}\nhr{border:none;border-top:1px solid #dadce0;margin:1em 0}\nimg{max-width:100%;height:auto}\ntable{border-collapse:collapse;max-width:100%}td,th{padding:4px 8px;border:1px solid #dadce0}\nblockquote{margin:0 0 1em;padding:.5em 0 .5em 1em;border-left:3px solid #dadce0;color:#5f6368}\npre{background:#f5f5f5;padding:.75em;border-radius:4px;overflow-x:auto;font-size:.9em}\ncode{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}`\n\n/**\n * Renders an HTML fragment inside a sandboxed, auto-sizing iframe.\n *\n * @slot - (none)\n * @fires load — native iframe load event\n *\n * @example\n * ```html\n * <schmancy-iframe .html=${bodyHtml} .css=${extraStyles}></schmancy-iframe>\n * ```\n */\n@customElement('schmancy-iframe')\nexport default class SchmancyIframe extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n\tiframe {\n\t\tborder: 0;\n\t\twidth: 100%;\n\t}\n`];\n\t/** HTML body fragment to render inside the iframe */\n\t@property({ type: String }) html = ''\n\n\t/** Additional CSS injected after the base styles (consumer-specific) */\n\t@property({ type: String }) css = ''\n\n\t/** Base document CSS (font, spacing, resets). Override for fully custom styling */\n\t@property({ type: String }) baseCss = DEFAULT_BASE_CSS\n\n\t/** iframe sandbox attribute */\n\t@property({ type: String }) sandbox = 'allow-same-origin allow-popups'\n\n\t/** Minimum height in pixels */\n\t@property({ type: Number }) minHeight = 60\n\n\t@state() private height = 60\n\tprivate srcdoc = ''\n\tprivate iframeRef = createRef<HTMLIFrameElement>()\n\n\tprotected willUpdate(changed: PropertyValues) {\n\t\tif (changed.has('html') || changed.has('css') || changed.has('baseCss')) {\n\t\t\tthis.srcdoc = this.html ? this.buildSrcdoc() : ''\n\t\t\tthis.height = this.minHeight\n\t\t}\n\t}\n\n\tprotected updated(changed: PropertyValues) {\n\t\tif (changed.has('sandbox')) {\n\t\t\tthis.iframeRef.value?.setAttribute('sandbox', this.sandbox)\n\t\t}\n\t}\n\n\tprivate buildSrcdoc(): string {\n\t\tconst styles = this.css ? `${this.baseCss}\\n${this.css}` : this.baseCss\n\t\treturn `<!DOCTYPE html><html><head>\n<meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<base target=\"_blank\">\n<style>${styles}</style></head><body>${this.html}</body></html>`\n\t}\n\n\tprivate onLoad(e: Event) {\n\t\tconst iframe = e.target as HTMLIFrameElement\n\t\ttry {\n\t\t\tconst doc = iframe.contentDocument\n\t\t\tif (!doc) return\n\t\t\tthis.height = Math.max(doc.documentElement.scrollHeight, this.minHeight)\n\t\t} catch {\n\t\t\tthis.height = Math.max(200, this.minHeight)\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tif (!this.html) return html``\n\t\treturn html`<iframe\n\t\t\t${ref(this.iframeRef)}\n\t\t\t.srcdoc=${this.srcdoc}\n\t\t\tstyle=\"height:${this.height}px;min-height:${this.minHeight}px;overflow:hidden\"\n\t\t\t@load=${this.onLoad}\n\t\t></iframe>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-iframe': SchmancyIframe\n\t}\n}\n"],"mappings":";;;;;AAMA,IAwBe,IAAA,cAA6B,EAAA;CAAA,YAAA,GAAA,GAAA;EAAA,MAAA,GAAA,CAAA,GAAA,KAAA,OAWR,IAAA,KAAA,MAGD,IAAA,KAAA,UAtCV,27BAAA,KAAA,UA4Cc,kCAAA,KAAA,YAGE,IAAA,KAAA,SAEd,IAAA,KAAA,SACT,IAAA,KAAA,YACG,EAAA;CAAA;CAAA;EAAA,KAAA,SA1BJ,CAAC,CAAG;;;;;;;;;;CA4BpB,WAAqB,GAAA;EAAA,CAChB,EAAQ,IAAI,MAAA,KAAW,EAAQ,IAAI,KAAA,KAAU,EAAQ,IAAI,SAAA,OAC5D,KAAK,SAAS,KAAK,OAAO,KAAK,YAAA,IAAgB,IAC/C,KAAK,SAAS,KAAK;CAErB;CAEA,QAAkB,GAAA;EACb,EAAQ,IAAI,SAAA,KACf,KAAK,UAAU,OAAO,aAAa,WAAW,KAAK,OAAA;CAErD;CAEA,cAAA;EAEC,OAAO,0JADQ,KAAK,MAAM,GAAG,KAAK,QAAA,IAAY,KAAK,QAAQ,KAAK,QAAA,uBAI3B,KAAK,KAAA;CAC3C;CAEA,OAAe,GAAA;EACd,IAAM,IAAS,EAAE;EACjB,IAAA;GACC,IAAM,IAAM,EAAO;GACnB,IAAA,CAAK,GAAK;GACV,KAAK,SAAS,KAAK,IAAI,EAAI,gBAAgB,cAAc,KAAK,SAAA;EAC/D,QAAA;GACC,KAAK,SAAS,KAAK,IAAI,KAAK,KAAK,SAAA;EAClC;CACD;CAEA,SAAA;EACC,OAAK,KAAK,OACH,CAAI;KACR,EAAI,KAAK,SAAA,EAAA;aACD,KAAK,OAAA;mBACC,KAAK,OAAA,gBAAuB,KAAK,UAAA;WACzC,KAAK,OAAA;gBALS,CAAI;CAO5B;AAAA;AAAA,EAAA,CA1DC,EAAS,EAAE,MAAM,OAAA,CAAA,CAAA,GAAQ,EAAA,WAAA,QAAA,KAAA,CAAA,GAAA,EAAA,CAGzB,EAAS,EAAE,MAAM,OAAA,CAAA,CAAA,GAAQ,EAAA,WAAA,OAAA,KAAA,CAAA,GAAA,EAAA,CAGzB,EAAS,EAAE,MAAM,OAAA,CAAA,CAAA,GAAQ,EAAA,WAAA,WAAA,KAAA,CAAA,GAAA,EAAA,CAGzB,EAAS,EAAE,MAAM,OAAA,CAAA,CAAA,GAAQ,EAAA,WAAA,WAAA,KAAA,CAAA,GAAA,EAAA,CAGzB,EAAS,EAAE,MAAM,OAAA,CAAA,CAAA,GAAQ,EAAA,WAAA,aAAA,KAAA,CAAA,GAAA,EAAA,CAEzB,EAAA,CAAA,GAAM,EAAA,WAAA,UAAA,KAAA,CAAA;AAAA,IAAA,IAAA,IAAA,EAAA,CA1BP,EAAc,iBAAA,CAAA,GAAiB,CAAA;AAAA,SAAA,KAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-
|
|
1
|
+
require(`./chunk-CncqDLb2.cjs`);const e=require(`./SchmancyElement-C41uPa6l.cjs`);require(`./mixins-fIpzhVMd.cjs`);let t=require(`lit/decorators.js`),n=require(`lit`),r=require(`lit/directives/ref.js`);var i=class extends e.t{constructor(...e){super(...e),this.html=``,this.css=``,this.baseCss=`html,body{margin:0;padding:0;overflow:hidden;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}
|
|
2
2
|
body{padding:16px}
|
|
3
3
|
p{margin:0 0 1em}p:last-child{margin-bottom:0}
|
|
4
4
|
ul,ol{margin:0 0 1em;padding-left:1.5em}li{margin-bottom:.25em}
|
|
@@ -8,7 +8,7 @@ img{max-width:100%;height:auto}
|
|
|
8
8
|
table{border-collapse:collapse;max-width:100%}td,th{padding:4px 8px;border:1px solid #dadce0}
|
|
9
9
|
blockquote{margin:0 0 1em;padding:.5em 0 .5em 1em;border-left:3px solid #dadce0;color:#5f6368}
|
|
10
10
|
pre{background:#f5f5f5;padding:.75em;border-radius:4px;overflow-x:auto;font-size:.9em}
|
|
11
|
-
code{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}`,this.sandbox=`allow-same-origin allow-popups`,this.minHeight=60,this.
|
|
11
|
+
code{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}`,this.sandbox=`allow-same-origin allow-popups`,this.minHeight=60,this.height=60,this.srcdoc=``,this.iframeRef=(0,r.createRef)()}static{this.styles=[n.css`
|
|
12
12
|
:host {
|
|
13
13
|
display: block;
|
|
14
14
|
}
|
|
@@ -16,9 +16,9 @@ code{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}`,thi
|
|
|
16
16
|
border: 0;
|
|
17
17
|
width: 100%;
|
|
18
18
|
}
|
|
19
|
-
`]}willUpdate(e){(e.has(`html`)||e.has(`css`)||e.has(`baseCss`))&&(this.
|
|
20
|
-
${(0,r.ref)(this.
|
|
21
|
-
.srcdoc=${this.
|
|
22
|
-
style="height:${this.
|
|
19
|
+
`]}willUpdate(e){(e.has(`html`)||e.has(`css`)||e.has(`baseCss`))&&(this.srcdoc=this.html?this.buildSrcdoc():``,this.height=this.minHeight)}updated(e){e.has(`sandbox`)&&this.iframeRef.value?.setAttribute(`sandbox`,this.sandbox)}buildSrcdoc(){return`<!DOCTYPE html><html><head>\n<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">\n<base target="_blank">\n<style>${this.css?`${this.baseCss}\n${this.css}`:this.baseCss}</style></head><body>${this.html}</body></html>`}onLoad(e){let t=e.target;try{let e=t.contentDocument;if(!e)return;this.height=Math.max(e.documentElement.scrollHeight,this.minHeight)}catch{this.height=Math.max(200,this.minHeight)}}render(){return this.html?n.html`<iframe
|
|
20
|
+
${(0,r.ref)(this.iframeRef)}
|
|
21
|
+
.srcdoc=${this.srcdoc}
|
|
22
|
+
style="height:${this.height}px;min-height:${this.minHeight}px;overflow:hidden"
|
|
23
23
|
@load=${this.onLoad}
|
|
24
|
-
></iframe>`:n.html``}};e.u([(0,t.property)({type:String})],i.prototype,`html`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`css`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`baseCss`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`sandbox`,void 0),e.u([(0,t.property)({type:Number})],i.prototype,`minHeight`,void 0),e.u([(0,t.state)()],i.prototype,`
|
|
24
|
+
></iframe>`:n.html``}};e.u([(0,t.property)({type:String})],i.prototype,`html`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`css`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`baseCss`,void 0),e.u([(0,t.property)({type:String})],i.prototype,`sandbox`,void 0),e.u([(0,t.property)({type:Number})],i.prototype,`minHeight`,void 0),e.u([(0,t.state)()],i.prototype,`height`,void 0);var a=i=e.u([(0,t.customElement)(`schmancy-iframe`)],i);Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iframe-DpCv-QH2.cjs","names":[],"sources":["../src/iframe/iframe.ts"],"sourcesContent":["import { SchmancyElement } from '@mixins/index'\nimport { css, html, PropertyValues } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { createRef, ref } from 'lit/directives/ref.js'\n\n/** Sensible document reset for iframe content — font, spacing, word-wrap */\nconst DEFAULT_BASE_CSS = `html,body{margin:0;padding:0;overflow:hidden;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}\nbody{padding:16px}\np{margin:0 0 1em}p:last-child{margin-bottom:0}\nul,ol{margin:0 0 1em;padding-left:1.5em}li{margin-bottom:.25em}\nh1,h2,h3,h4{margin:0 0 .5em;line-height:1.3}h1{font-size:1.5em}h2{font-size:1.25em}h3{font-size:1.1em}h4{font-size:1em}\nhr{border:none;border-top:1px solid #dadce0;margin:1em 0}\nimg{max-width:100%;height:auto}\ntable{border-collapse:collapse;max-width:100%}td,th{padding:4px 8px;border:1px solid #dadce0}\nblockquote{margin:0 0 1em;padding:.5em 0 .5em 1em;border-left:3px solid #dadce0;color:#5f6368}\npre{background:#f5f5f5;padding:.75em;border-radius:4px;overflow-x:auto;font-size:.9em}\ncode{background:#f5f5f5;padding:.1em .3em;border-radius:3px;font-size:.9em}`\n\n/**\n * Renders an HTML fragment inside a sandboxed, auto-sizing iframe.\n *\n * @slot - (none)\n * @fires load — native iframe load event\n *\n * @example\n * ```html\n * <schmancy-iframe .html=${bodyHtml} .css=${extraStyles}></schmancy-iframe>\n * ```\n */\n@customElement('schmancy-iframe')\nexport default class SchmancyIframe extends SchmancyElement {\n\tstatic styles = [css`\n\t:host {\n\t\tdisplay: block;\n\t}\n\tiframe {\n\t\tborder: 0;\n\t\twidth: 100%;\n\t}\n`];\n\t/** HTML body fragment to render inside the iframe */\n\t@property({ type: String }) html = ''\n\n\t/** Additional CSS injected after the base styles (consumer-specific) */\n\t@property({ type: String }) css = ''\n\n\t/** Base document CSS (font, spacing, resets). Override for fully custom styling */\n\t@property({ type: String }) baseCss = DEFAULT_BASE_CSS\n\n\t/** iframe sandbox attribute */\n\t@property({ type: String }) sandbox = 'allow-same-origin allow-popups'\n\n\t/** Minimum height in pixels */\n\t@property({ type: Number }) minHeight = 60\n\n\t@state() private height = 60\n\tprivate srcdoc = ''\n\tprivate iframeRef = createRef<HTMLIFrameElement>()\n\n\tprotected willUpdate(changed: PropertyValues) {\n\t\tif (changed.has('html') || changed.has('css') || changed.has('baseCss')) {\n\t\t\tthis.srcdoc = this.html ? this.buildSrcdoc() : ''\n\t\t\tthis.height = this.minHeight\n\t\t}\n\t}\n\n\tprotected updated(changed: PropertyValues) {\n\t\tif (changed.has('sandbox')) {\n\t\t\tthis.iframeRef.value?.setAttribute('sandbox', this.sandbox)\n\t\t}\n\t}\n\n\tprivate buildSrcdoc(): string {\n\t\tconst styles = this.css ? `${this.baseCss}\\n${this.css}` : this.baseCss\n\t\treturn `<!DOCTYPE html><html><head>\n<meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\">\n<base target=\"_blank\">\n<style>${styles}</style></head><body>${this.html}</body></html>`\n\t}\n\n\tprivate onLoad(e: Event) {\n\t\tconst iframe = e.target as HTMLIFrameElement\n\t\ttry {\n\t\t\tconst doc = iframe.contentDocument\n\t\t\tif (!doc) return\n\t\t\tthis.height = Math.max(doc.documentElement.scrollHeight, this.minHeight)\n\t\t} catch {\n\t\t\tthis.height = Math.max(200, this.minHeight)\n\t\t}\n\t}\n\n\tprotected render() {\n\t\tif (!this.html) return html``\n\t\treturn html`<iframe\n\t\t\t${ref(this.iframeRef)}\n\t\t\t.srcdoc=${this.srcdoc}\n\t\t\tstyle=\"height:${this.height}px;min-height:${this.minHeight}px;overflow:hidden\"\n\t\t\t@load=${this.onLoad}\n\t\t></iframe>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-iframe': SchmancyIframe\n\t}\n}\n"],"mappings":"0MAMA,IAwBe,EAAA,cAA6B,EAAA,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,CAAA,EAAA,KAAA,KAWR,GAAA,KAAA,IAGD,GAAA,KAAA,QAtCV;;;;;;;;;;6EAAA,KAAA,QA4Cc,iCAAA,KAAA,UAGE,GAAA,KAAA,OAEd,GAAA,KAAA,OACT,GAAA,KAAA,WAAA,EAAA,EAAA,WAAA,CAAA,CAAA,OAAA,KAAA,OAzBD,CAAC,EAAA,GAAG;;;;;;;;GA4BpB,WAAqB,EAAA,EAChB,EAAQ,IAAI,MAAA,GAAW,EAAQ,IAAI,KAAA,GAAU,EAAQ,IAAI,SAAA,KAC5D,KAAK,OAAS,KAAK,KAAO,KAAK,YAAA,EAAgB,GAC/C,KAAK,OAAS,KAAK,UAErB,CAEA,QAAkB,EAAA,CACb,EAAQ,IAAI,SAAA,GACf,KAAK,UAAU,OAAO,aAAa,UAAW,KAAK,OAAA,CAErD,CAEA,aAAA,CAEC,MAAO,0JADQ,KAAK,IAAM,GAAG,KAAK,QAAA,IAAY,KAAK,MAAQ,KAAK,QAAA,uBAI3B,KAAK,KAAA,eAC3C,CAEA,OAAe,EAAA,CACd,IAAM,EAAS,EAAE,OACjB,GAAA,CACC,IAAM,EAAM,EAAO,gBACnB,GAAA,CAAK,EAAK,OACV,KAAK,OAAS,KAAK,IAAI,EAAI,gBAAgB,aAAc,KAAK,SAAA,CAC/D,MAAA,CACC,KAAK,OAAS,KAAK,IAAI,IAAK,KAAK,SAAA,CAClC,CACD,CAEA,QAAA,CACC,OAAK,KAAK,KACH,EAAA,IAAI;eACJ,KAAK,SAAA,EAAA;aACD,KAAK,OAAA;mBACC,KAAK,OAAA,gBAAuB,KAAK,UAAA;WACzC,KAAK,OAAA;cALS,EAAA,IAAI,EAO5B,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UA1DU,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,OAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAGhB,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAGhB,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,UAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAGhB,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,UAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAGhB,CAAE,KAAM,MAAA,CAAA,CAAA,EAAQ,EAAA,UAAA,YAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,OAAA,CAAA,EAEnB,EAAA,UAAA,SAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eA1BO,iBAAA,CAAA,EAAiB,CAAA,EAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,CAAA,CAAA,CAAA"}
|
package/dist/iframe.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./iframe-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./iframe-DpCv-QH2.cjs`);exports.SchmancyIframe=e.t;
|
package/dist/iframe.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "./iframe-
|
|
1
|
+
import { t as e } from "./iframe-DWvN5nGB.js";
|
|
2
2
|
export { e as SchmancyIframe };
|