@mhmo91/schmancy 0.9.13 → 0.9.14
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 +194 -0
- package/dist/agent/schmancy.agent.js +107 -1
- package/dist/agent/schmancy.agent.js.map +1 -1
- package/dist/agent/schmancy.manifest.json +148 -0
- package/dist/{animation-Bcwh107v.cjs.map → animation-CQRdLgzX.cjs.map} +1 -1
- package/dist/{animation-CXKSuUoE.js.map → animation-hXFClrIn.js.map} +1 -1
- package/dist/{area-CApZWjqs.cjs → area-DBjAhgjP.cjs} +2 -2
- package/dist/area-DBjAhgjP.cjs.map +1 -0
- package/dist/{area-D_p1YBgP.js → area-Dr4I9R2p.js} +23 -35
- package/dist/area-Dr4I9R2p.js.map +1 -0
- package/dist/area.cjs +1 -1
- package/dist/area.js +3 -2
- package/dist/{audio-DUVz7Ars.cjs → audio-Dvr-RBzE.cjs} +1 -1
- package/dist/{audio-DUVz7Ars.cjs.map → audio-Dvr-RBzE.cjs.map} +1 -1
- package/dist/{audio-C7TzWI8M.js → audio-ql6nvY0y.js} +1 -1
- package/dist/{audio-C7TzWI8M.js.map → audio-ql6nvY0y.js.map} +1 -1
- package/dist/audio.cjs +1 -1
- package/dist/audio.js +2 -2
- package/dist/{autocomplete-DAK35swc.js → autocomplete-CgWUCUU-.js} +3 -3
- package/dist/{autocomplete-DAK35swc.js.map → autocomplete-CgWUCUU-.js.map} +1 -1
- package/dist/{autocomplete-DlCqS1gW.cjs → autocomplete-EM0jE7X2.cjs} +1 -1
- package/dist/{autocomplete-DlCqS1gW.cjs.map → autocomplete-EM0jE7X2.cjs.map} +1 -1
- package/dist/autocomplete.cjs +1 -1
- package/dist/autocomplete.js +1 -1
- package/dist/badge.cjs +1 -1
- package/dist/badge.js +1 -1
- package/dist/{boat-C57YTPbb.cjs → boat-BjYJI1HS.cjs} +1 -1
- package/dist/{boat-C57YTPbb.cjs.map → boat-BjYJI1HS.cjs.map} +1 -1
- package/dist/{boat-Dms45k4o.js → boat-Dw8TmOzN.js} +4 -4
- package/dist/{boat-Dms45k4o.js.map → boat-Dw8TmOzN.js.map} +1 -1
- package/dist/boat.cjs +1 -1
- package/dist/boat.js +1 -1
- package/dist/breadcrumb.cjs +1 -1
- package/dist/breadcrumb.js +1 -1
- package/dist/{busy-BfN1p1n8.cjs → busy-BmiumJpB.cjs} +1 -1
- package/dist/{busy-BfN1p1n8.cjs.map → busy-BmiumJpB.cjs.map} +1 -1
- package/dist/{busy-IKS9obYj.js → busy-D2hP3fOy.js} +1 -1
- package/dist/{busy-IKS9obYj.js.map → busy-D2hP3fOy.js.map} +1 -1
- package/dist/busy.cjs +1 -1
- package/dist/busy.js +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.js +4 -4
- package/dist/{card-ZObyqkFF.cjs → card-BslSqOsf.cjs} +1 -1
- package/dist/{card-ZObyqkFF.cjs.map → card-BslSqOsf.cjs.map} +1 -1
- package/dist/{card-DQNBal9V.js → card-CEdgK9nb.js} +2 -2
- package/dist/{card-DQNBal9V.js.map → card-CEdgK9nb.js.map} +1 -1
- package/dist/card.cjs +1 -1
- package/dist/card.js +1 -1
- package/dist/charts.cjs +1 -1
- package/dist/charts.js +1 -1
- package/dist/{checkbox-COhTJ1x5.js → checkbox-Br84TiCs.js} +2 -2
- package/dist/{checkbox-COhTJ1x5.js.map → checkbox-Br84TiCs.js.map} +1 -1
- package/dist/{checkbox-CiAtIrqB.cjs → checkbox-DtcFMgZL.cjs} +1 -1
- package/dist/{checkbox-CiAtIrqB.cjs.map → checkbox-DtcFMgZL.cjs.map} +1 -1
- package/dist/checkbox.cjs +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/{chips-B5o3vNQF.js → chips-BNYOweGm.js} +5 -5
- package/dist/{chips-B5o3vNQF.js.map → chips-BNYOweGm.js.map} +1 -1
- package/dist/{chips-D2xmsC36.cjs → chips-DoCu5YQb.cjs} +1 -1
- package/dist/{chips-D2xmsC36.cjs.map → chips-DoCu5YQb.cjs.map} +1 -1
- package/dist/chips.cjs +1 -1
- package/dist/chips.js +2 -2
- package/dist/{chunk-C_1VqBVD.js → chunk-BM5alsTp.js} +9 -2
- package/dist/chunk-CncqDLb2.cjs +1 -0
- package/dist/{code-highlight-SkMMTkIJ.js → code-highlight-BgExKEto.js} +1 -1
- package/dist/{code-highlight-SkMMTkIJ.js.map → code-highlight-BgExKEto.js.map} +1 -1
- package/dist/{code-highlight-BToHh8T6.cjs → code-highlight-zSYcSfCz.cjs} +1 -1
- package/dist/{code-highlight-BToHh8T6.cjs.map → code-highlight-zSYcSfCz.cjs.map} +1 -1
- package/dist/code-highlight.cjs +1 -1
- package/dist/code-highlight.js +1 -1
- package/dist/{components-Ca7OTgbQ.js → components-DjKNS9R_.js} +1 -1
- package/dist/{components-Ca7OTgbQ.js.map → components-DjKNS9R_.js.map} +1 -1
- package/dist/{components-B-XYvUWn.cjs → components-TJT8-tva.cjs} +1 -1
- package/dist/{components-B-XYvUWn.cjs.map → components-TJT8-tva.cjs.map} +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.js +1 -1
- package/dist/connectivity.cjs +1 -1
- package/dist/connectivity.js +2 -2
- package/dist/content-drawer.cjs +1 -1
- package/dist/content-drawer.js +1 -1
- package/dist/context-CAYQh-mx.cjs +1 -0
- package/dist/{context-C6GwmNJJ.cjs.map → context-CAYQh-mx.cjs.map} +1 -1
- package/dist/context-D8Q66KPe.js +3 -0
- package/dist/{context-oBTPHrbc.js.map → context-D8Q66KPe.js.map} +1 -1
- package/dist/{cursor-glow-C2YRrB8Z.js → cursor-glow-BydlDInj.js} +1 -1
- package/dist/{cursor-glow-C2YRrB8Z.js.map → cursor-glow-BydlDInj.js.map} +1 -1
- package/dist/{cursor-glow-82y5h3E4.cjs → cursor-glow-Duw9jHmh.cjs} +1 -1
- package/dist/{cursor-glow-82y5h3E4.cjs.map → cursor-glow-Duw9jHmh.cjs.map} +1 -1
- package/dist/{date-range-BTA9nKbw.cjs → date-range-CIWYm3eS.cjs} +1 -1
- package/dist/{date-range-BTA9nKbw.cjs.map → date-range-CIWYm3eS.cjs.map} +1 -1
- package/dist/{date-range-inline-LLC3Y0mi.cjs → date-range-inline-B9Dp2z6C.cjs} +1 -1
- package/dist/{date-range-inline-LLC3Y0mi.cjs.map → date-range-inline-B9Dp2z6C.cjs.map} +1 -1
- package/dist/{date-range-inline-B_g1YXu3.js.map → date-range-inline-CpKG6qt2.js.map} +1 -1
- package/dist/date-range-inline.cjs +1 -1
- package/dist/date-range-inline.js +1 -1
- package/dist/{date-range-DUWpF0Qw.js → date-range-sGkC0KF3.js} +4 -4
- package/dist/{date-range-DUWpF0Qw.js.map → date-range-sGkC0KF3.js.map} +1 -1
- package/dist/date-range.cjs +1 -1
- package/dist/date-range.js +1 -1
- package/dist/{delay-Co89XWry.cjs → delay-Bu4WMQlV.cjs} +1 -1
- package/dist/{delay-Co89XWry.cjs.map → delay-Bu4WMQlV.cjs.map} +1 -1
- package/dist/{delay-CtDrlf1Q.js → delay-DwX65fSc.js} +4 -4
- package/dist/{delay-CtDrlf1Q.js.map → delay-DwX65fSc.js.map} +1 -1
- package/dist/delay.cjs +1 -1
- package/dist/delay.js +1 -1
- package/dist/{details-CyXyVdb2.cjs → details-B8p62xmR.cjs} +1 -1
- package/dist/{details-CyXyVdb2.cjs.map → details-B8p62xmR.cjs.map} +1 -1
- package/dist/{details-B1Ax7WiP.js → details-CCW52lzz.js} +5 -5
- package/dist/{details-B1Ax7WiP.js.map → details-CCW52lzz.js.map} +1 -1
- package/dist/details.cjs +1 -1
- package/dist/details.js +1 -1
- package/dist/{dialog-service-DXLGSshF.cjs → dialog-service-CzDO08Gy.cjs} +1 -1
- package/dist/{dialog-service-DXLGSshF.cjs.map → dialog-service-CzDO08Gy.cjs.map} +1 -1
- package/dist/{dialog-service-CCFGpU7a.js → dialog-service-DH-tjPuE.js} +2 -2
- package/dist/{dialog-service-CCFGpU7a.js.map → dialog-service-DH-tjPuE.js.map} +1 -1
- package/dist/dialog.cjs +1 -1
- package/dist/dialog.js +5 -5
- package/dist/directives.cjs +1 -1
- package/dist/directives.js +5 -5
- package/dist/discovery.cjs +1 -1
- package/dist/{divider-DuwCrKQu.js → divider-CbEWg3G_.js} +1 -1
- package/dist/{divider-DuwCrKQu.js.map → divider-CbEWg3G_.js.map} +1 -1
- package/dist/{divider-xcvHqVBc.cjs → divider-JyyFw_3J.cjs} +1 -1
- package/dist/{divider-xcvHqVBc.cjs.map → divider-JyyFw_3J.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-DUgOh1af.cjs → expand-BmwIPNjq.cjs} +1 -1
- package/dist/{expand-DUgOh1af.cjs.map → expand-BmwIPNjq.cjs.map} +1 -1
- package/dist/{expand-X0C1W279.js → expand-bFa_qVDT.js} +4 -4
- package/dist/{expand-X0C1W279.js.map → expand-bFa_qVDT.js.map} +1 -1
- package/dist/expand.cjs +1 -1
- package/dist/expand.js +1 -1
- package/dist/{extra-BqfYIC_q.cjs → extra-BUgyMgjl.cjs} +1 -1
- package/dist/{extra-BqfYIC_q.cjs.map → extra-BUgyMgjl.cjs.map} +1 -1
- package/dist/{extra-BTyq-5Z6.js → extra-HwbaUnCD.js} +1 -1
- package/dist/{extra-BTyq-5Z6.js.map → extra-HwbaUnCD.js.map} +1 -1
- package/dist/extra.cjs +1 -1
- package/dist/extra.js +1 -1
- package/dist/float-BQwhfibw.cjs +1 -0
- package/dist/{float-yZoLnUg0.cjs.map → float-BQwhfibw.cjs.map} +1 -1
- package/dist/{float-BgGeLER6.js → float-D5ezUurt.js} +1 -1
- package/dist/{float-BgGeLER6.js.map → float-D5ezUurt.js.map} +1 -1
- package/dist/float.cjs +1 -1
- package/dist/float.js +1 -1
- package/dist/{flow-BPDtbhLe.js.map → flow-BGkHnOnd.js.map} +1 -1
- package/dist/{flow-Dn9AZktE.cjs.map → flow-ClAJ6Qby.cjs.map} +1 -1
- package/dist/{form-C1qS9uvS.js.map → form-rCZqoAoK.js.map} +1 -1
- package/dist/{form-CzD0JLxM.cjs → form-wI58M85H.cjs} +1 -1
- package/dist/{form-CzD0JLxM.cjs.map → form-wI58M85H.cjs.map} +1 -1
- package/dist/form.cjs +1 -1
- package/dist/form.js +1 -1
- package/dist/{hashContent-BUqULUiZ.js.map → hashContent-B2IntJQf.js.map} +1 -1
- package/dist/{hashContent-CI39BY-_.cjs.map → hashContent-CahnEuut.cjs.map} +1 -1
- package/dist/{icons-BLFEJFDG.cjs → icons-B6V3nZ4-.cjs} +1 -1
- package/dist/{icons-BLFEJFDG.cjs.map → icons-B6V3nZ4-.cjs.map} +1 -1
- package/dist/{icons-BDcb8dNb.js → icons-C5-DIjet.js} +2 -2
- package/dist/{icons-BDcb8dNb.js.map → icons-C5-DIjet.js.map} +1 -1
- package/dist/icons.cjs +1 -1
- package/dist/icons.js +1 -1
- package/dist/{iframe-qCW0HzwB.js → iframe-BXBsuLwt.js} +1 -1
- package/dist/{iframe-qCW0HzwB.js.map → iframe-BXBsuLwt.js.map} +1 -1
- package/dist/{iframe-CrDpQkhj.cjs → iframe-C7sHg7RC.cjs} +1 -1
- package/dist/{iframe-CrDpQkhj.cjs.map → iframe-C7sHg7RC.cjs.map} +1 -1
- package/dist/iframe.cjs +1 -1
- package/dist/iframe.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +53 -52
- package/dist/{input-C1MIZaKq.cjs → input-BGNZlfL8.cjs} +1 -1
- package/dist/{input-C1MIZaKq.cjs.map → input-BGNZlfL8.cjs.map} +1 -1
- package/dist/{input-Dv-HtkM9.js.map → input-Bc3bVISm.js.map} +1 -1
- package/dist/{input-chip-CyvjhQSw.js → input-chip-CiG61y-N.js} +1 -1
- package/dist/{input-chip-CyvjhQSw.js.map → input-chip-CiG61y-N.js.map} +1 -1
- package/dist/{input-chip-DnfthOSY.cjs → input-chip-p24lkYtY.cjs} +1 -1
- package/dist/{input-chip-DnfthOSY.cjs.map → input-chip-p24lkYtY.cjs.map} +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/{intersection-C0JuW_7U.js.map → intersection-BrXp4YTO.js.map} +1 -1
- package/dist/{intersection-MvbRovUz.cjs → intersection-DqBqnpgh.cjs} +1 -1
- package/dist/{intersection-MvbRovUz.cjs.map → intersection-DqBqnpgh.cjs.map} +1 -1
- package/dist/json.cjs +1 -1
- package/dist/json.js +2 -2
- package/dist/kbd.cjs +1 -1
- package/dist/kbd.js +1 -1
- package/dist/{layout-D0cR3hT1.cjs → layout-B0_IXfov.cjs} +1 -1
- package/dist/{layout-D0cR3hT1.cjs.map → layout-B0_IXfov.cjs.map} +1 -1
- package/dist/{layout-PZCF3kwl.cjs → layout-CTfRXQoz.cjs} +1 -1
- package/dist/{layout-PZCF3kwl.cjs.map → layout-CTfRXQoz.cjs.map} +1 -1
- package/dist/{layout-Y5qo3er8.js → layout-Cqghi_rx.js} +2 -2
- package/dist/{layout-Y5qo3er8.js.map → layout-Cqghi_rx.js.map} +1 -1
- package/dist/{layout-BE2ld1IY.js → layout-fjM1DWlF.js} +1 -1
- package/dist/{layout-BE2ld1IY.js.map → layout-fjM1DWlF.js.map} +1 -1
- package/dist/layout.cjs +1 -1
- package/dist/layout.js +2 -2
- package/dist/lazy-BDNnH_r7.cjs +1 -0
- package/dist/lazy-BDNnH_r7.cjs.map +1 -0
- package/dist/lazy-D6R5N5v4.js +13 -0
- package/dist/lazy-D6R5N5v4.js.map +1 -0
- package/dist/{lightbox-Ce8nMldr.cjs → lightbox-BWKTzA03.cjs} +1 -1
- package/dist/{lightbox-Ce8nMldr.cjs.map → lightbox-BWKTzA03.cjs.map} +1 -1
- package/dist/{lightbox-C_pqYF6q.js → lightbox-CnCTvqSu.js} +3 -3
- package/dist/{lightbox-C_pqYF6q.js.map → lightbox-CnCTvqSu.js.map} +1 -1
- package/dist/lightbox.cjs +1 -1
- package/dist/lightbox.js +1 -1
- package/dist/{list-DcnTGee0.js → list-BpjKUOzM.js} +2 -2
- package/dist/{list-DcnTGee0.js.map → list-BpjKUOzM.js.map} +1 -1
- package/dist/{list-CLc_OQ5k.cjs → list-CMWHu6cV.cjs} +1 -1
- package/dist/{list-CLc_OQ5k.cjs.map → list-CMWHu6cV.cjs.map} +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/{litElement.mixin-Mi8bar6B.js → litElement.mixin-BnNYZ24e.js} +1 -1
- package/dist/{litElement.mixin-Mi8bar6B.js.map → litElement.mixin-BnNYZ24e.js.map} +1 -1
- package/dist/{litElement.mixin-DeT3kAOS.cjs → litElement.mixin-CtQOmwq6.cjs} +1 -1
- package/dist/{litElement.mixin-DeT3kAOS.cjs.map → litElement.mixin-CtQOmwq6.cjs.map} +1 -1
- package/dist/{magnetic-Dj52WplI.js → magnetic-BhXebqF3.js} +2 -2
- package/dist/{magnetic-Dj52WplI.js.map → magnetic-BhXebqF3.js.map} +1 -1
- package/dist/{magnetic-aBBnj_vk.cjs → magnetic-CVXEkYTA.cjs} +1 -1
- package/dist/{magnetic-aBBnj_vk.cjs.map → magnetic-CVXEkYTA.cjs.map} +1 -1
- package/dist/{mailbox-BrLZPj2o.js → mailbox-CHIpxS3W.js} +5 -5
- package/dist/{mailbox-BrLZPj2o.js.map → mailbox-CHIpxS3W.js.map} +1 -1
- package/dist/{mailbox-CE5sTDsQ.cjs → mailbox-Tg1CROVz.cjs} +1 -1
- package/dist/{mailbox-CE5sTDsQ.cjs.map → mailbox-Tg1CROVz.cjs.map} +1 -1
- package/dist/mailbox.cjs +1 -1
- package/dist/mailbox.js +1 -1
- package/dist/{map-SNb-3q5h.js → map-YY1Q4FWO.js} +1 -1
- package/dist/{map-SNb-3q5h.js.map → map-YY1Q4FWO.js.map} +1 -1
- package/dist/{map-CKzhM6uY.cjs → map-Z_dsu-dv.cjs} +1 -1
- package/dist/{map-CKzhM6uY.cjs.map → map-Z_dsu-dv.cjs.map} +1 -1
- package/dist/map.cjs +1 -1
- package/dist/map.js +1 -1
- package/dist/{menu-VErqs9NG.js → menu-BIBUgS1T.js} +2 -2
- package/dist/{menu-VErqs9NG.js.map → menu-BIBUgS1T.js.map} +1 -1
- package/dist/{menu-BnGjBrdD.cjs → menu-DS8Iz4fJ.cjs} +1 -1
- package/dist/{menu-BnGjBrdD.cjs.map → menu-DS8Iz4fJ.cjs.map} +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- 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 +1 -1
- package/dist/navigation-rail.js +1 -1
- package/dist/{notification-B_Fkxv7d.js → notification-ChAvNXf3.js} +3 -3
- package/dist/{notification-B_Fkxv7d.js.map → notification-ChAvNXf3.js.map} +1 -1
- package/dist/{notification-DE5dFf8G.cjs → notification-DPUkuifB.cjs} +1 -1
- package/dist/{notification-DE5dFf8G.cjs.map → notification-DPUkuifB.cjs.map} +1 -1
- package/dist/notification.cjs +1 -1
- package/dist/notification.js +1 -1
- package/dist/{option-DuAlGv27.js → option-Ci7C8xxh.js} +1 -1
- package/dist/{option-DuAlGv27.js.map → option-Ci7C8xxh.js.map} +1 -1
- package/dist/{option-BmbP5ulK.cjs → option-OIp0joyN.cjs} +1 -1
- package/dist/{option-BmbP5ulK.cjs.map → option-OIp0joyN.cjs.map} +1 -1
- package/dist/option.cjs +1 -1
- package/dist/option.js +1 -1
- package/dist/{overlay-stack-J_eJCUTX.cjs.map → overlay-stack-7bs4ZNnh.cjs.map} +1 -1
- package/dist/{overlay-stack-BJt_r6aZ.js.map → overlay-stack-DXPYHPhk.js.map} +1 -1
- package/dist/overlay.cjs +130 -0
- package/dist/overlay.cjs.map +1 -0
- package/dist/overlay.js +570 -0
- package/dist/overlay.js.map +1 -0
- package/dist/page.cjs +1 -1
- package/dist/page.js +4 -4
- package/dist/{progress-Bt9gUiGP.cjs → progress-32Cad1NX.cjs} +1 -1
- package/dist/{progress-Bt9gUiGP.cjs.map → progress-32Cad1NX.cjs.map} +1 -1
- package/dist/{progress-BnXr7aAs.js → progress-DGkwPgDX.js} +1 -1
- package/dist/{progress-BnXr7aAs.js.map → progress-DGkwPgDX.js.map} +1 -1
- package/dist/progress.cjs +1 -1
- package/dist/progress.js +1 -1
- package/dist/{provide-Disc6_zz.js → provide-BuzyBLGj.js} +1 -1
- package/dist/{provide-Disc6_zz.js.map → provide-BuzyBLGj.js.map} +1 -1
- package/dist/{provide-CnXCF-UP.cjs → provide-MvHcXKzT.cjs} +1 -1
- package/dist/{provide-CnXCF-UP.cjs.map → provide-MvHcXKzT.cjs.map} +1 -1
- package/dist/qr-scanner.cjs +1 -1
- package/dist/qr-scanner.js +1 -1
- package/dist/{radio-group-BgZgHMoA.js → radio-group-B72sYGnS.js} +1 -1
- package/dist/{radio-group-BgZgHMoA.js.map → radio-group-B72sYGnS.js.map} +1 -1
- package/dist/{radio-group-DkBFgq_3.cjs → radio-group-B7DuNxUq.cjs} +1 -1
- package/dist/{radio-group-DkBFgq_3.cjs.map → radio-group-B7DuNxUq.cjs.map} +1 -1
- package/dist/radio-group.cjs +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/range.cjs +1 -1
- package/dist/range.js +1 -1
- package/dist/{reduced-motion-DR32yKEO.cjs → reduced-motion-9RjNnhIg.cjs} +1 -1
- package/dist/{reduced-motion-DR32yKEO.cjs.map → reduced-motion-9RjNnhIg.cjs.map} +1 -1
- package/dist/{reduced-motion-B83yZbcO.js.map → reduced-motion-BZTLqAyl.js.map} +1 -1
- package/dist/{rxjs-utils-CN9fv8Xq.js → rxjs-utils-CKTnEKUH.js} +1 -1
- package/dist/{rxjs-utils-CN9fv8Xq.js.map → rxjs-utils-CKTnEKUH.js.map} +1 -1
- package/dist/{rxjs-utils-Vn6DCKgL.cjs → rxjs-utils-DJbZRjp3.cjs} +1 -1
- package/dist/{rxjs-utils-Vn6DCKgL.cjs.map → rxjs-utils-DJbZRjp3.cjs.map} +1 -1
- package/dist/rxjs-utils.cjs +1 -1
- package/dist/rxjs-utils.js +1 -1
- package/dist/{scroll-57rkTHm8.js → scroll-CdmXRXh2.js} +1 -1
- package/dist/{scroll-57rkTHm8.js.map → scroll-CdmXRXh2.js.map} +1 -1
- package/dist/{scroll-hWt0b1gK.cjs → scroll-V1rAZ9fK.cjs} +1 -1
- package/dist/{scroll-hWt0b1gK.cjs.map → scroll-V1rAZ9fK.cjs.map} +1 -1
- package/dist/{search-BlGJ6uJv.js.map → search-CvUZRLF1.js.map} +1 -1
- package/dist/{search-C8eAOzBm.cjs.map → search-CwMav5QB.cjs.map} +1 -1
- package/dist/{select-BDonPD5a.cjs → select-DFxoBgEf.cjs} +1 -1
- package/dist/{select-BDonPD5a.cjs.map → select-DFxoBgEf.cjs.map} +1 -1
- package/dist/{select-CkOAwmxC.js → select-wFDKDLQI.js} +2 -2
- package/dist/{select-CkOAwmxC.js.map → select-wFDKDLQI.js.map} +1 -1
- package/dist/select.cjs +1 -1
- package/dist/select.js +1 -1
- package/dist/{sheet-Bv2mPHWk.cjs → sheet-DdlZhnDG.cjs} +2 -2
- package/dist/{sheet-Bv2mPHWk.cjs.map → sheet-DdlZhnDG.cjs.map} +1 -1
- package/dist/{sheet-NUgEmozP.js → sheet-LFVo5iN4.js} +4 -4
- package/dist/{sheet-NUgEmozP.js.map → sheet-LFVo5iN4.js.map} +1 -1
- package/dist/sheet.cjs +1 -1
- package/dist/sheet.js +2 -2
- package/dist/{sheet.service-BKmnlkpZ.cjs → sheet.service-BfNDB0K0.cjs} +1 -1
- package/dist/{sheet.service-BKmnlkpZ.cjs.map → sheet.service-BfNDB0K0.cjs.map} +1 -1
- package/dist/{sheet.service-CanLo8ko.js → sheet.service-DQE7-_wq.js} +3 -3
- package/dist/{sheet.service-CanLo8ko.js.map → sheet.service-DQE7-_wq.js.map} +1 -1
- package/dist/skeleton.cjs +1 -1
- package/dist/skeleton.js +1 -1
- package/dist/skills/INDEX.md +1 -1
- package/dist/skills/overlay.md +200 -0
- package/dist/skills/schmancy/INDEX.md +1 -1
- package/dist/skills/schmancy/overlay.md +200 -0
- package/dist/slider.cjs +1 -1
- package/dist/slider.js +1 -1
- package/dist/{sound.service-BjSoGjmT.cjs → sound.service-BEN6Xjy_.cjs} +1 -1
- package/dist/{sound.service-BjSoGjmT.cjs.map → sound.service-BEN6Xjy_.cjs.map} +1 -1
- package/dist/{sound.service-cdkw3Wkv.js → sound.service-DWZe6swU.js} +1 -1
- package/dist/{sound.service-cdkw3Wkv.js.map → sound.service-DWZe6swU.js.map} +1 -1
- package/dist/{splash-screen-BemqNFNj.cjs → splash-screen-C9HqX2nR.cjs} +1 -1
- package/dist/{splash-screen-BemqNFNj.cjs.map → splash-screen-C9HqX2nR.cjs.map} +1 -1
- package/dist/{splash-screen-B0ppA3f1.js → splash-screen-COg3Z6n8.js} +1 -1
- package/dist/{splash-screen-B0ppA3f1.js.map → splash-screen-COg3Z6n8.js.map} +1 -1
- package/dist/splash-screen.cjs +1 -1
- package/dist/splash-screen.js +1 -1
- package/dist/{src-Cjy9zCiU.js → src-C7niWYur.js} +51 -51
- package/dist/{src-Cjy9zCiU.js.map → src-C7niWYur.js.map} +1 -1
- package/dist/{src-ByGCYD-E.cjs → src-I4M33WK2.cjs} +3 -3
- package/dist/{src-ByGCYD-E.cjs.map → src-I4M33WK2.cjs.map} +1 -1
- package/dist/steps.cjs +1 -1
- package/dist/steps.js +3 -3
- package/dist/{store-CO4nJyGj.cjs → store-CjFHCSDb.cjs} +1 -1
- package/dist/{store-CO4nJyGj.cjs.map → store-CjFHCSDb.cjs.map} +1 -1
- package/dist/{store-Bmj6rvZY.js.map → store-CjzZDQt8.js.map} +1 -1
- package/dist/store.cjs +1 -1
- package/dist/store.js +1 -1
- package/dist/{surface-CtpWeSGn.js → surface-0XM4DBaT.js} +2 -2
- package/dist/{surface-CtpWeSGn.js.map → surface-0XM4DBaT.js.map} +1 -1
- package/dist/{surface-CoLYICO1.cjs → surface-B6DA01kL.cjs} +1 -1
- package/dist/{surface-CoLYICO1.cjs.map → surface-B6DA01kL.cjs.map} +1 -1
- package/dist/surface.cjs +1 -1
- package/dist/surface.js +1 -1
- package/dist/{surface.mixin-CSKqQH-0.cjs → surface.mixin-DxOi-xo0.cjs} +1 -1
- package/dist/{surface.mixin-CSKqQH-0.cjs.map → surface.mixin-DxOi-xo0.cjs.map} +1 -1
- package/dist/switch.cjs +1 -1
- package/dist/switch.js +1 -1
- package/dist/{table-COQKtlJB.cjs → table-B-DsOqzT.cjs} +2 -2
- package/dist/{table-COQKtlJB.cjs.map → table-B-DsOqzT.cjs.map} +1 -1
- package/dist/{table-bgFb1KYU.js → table-hBEZRxM_.js} +3 -3
- package/dist/{table-bgFb1KYU.js.map → table-hBEZRxM_.js.map} +1 -1
- package/dist/table.cjs +1 -1
- package/dist/table.js +1 -1
- package/dist/{tabs-BicCpU1B.js → tabs-C7r4TqcX.js} +2 -2
- package/dist/{tabs-BicCpU1B.js.map → tabs-C7r4TqcX.js.map} +1 -1
- package/dist/{tabs-CoMJAXDy.cjs → tabs-DZaLZUBy.cjs} +1 -1
- package/dist/{tabs-CoMJAXDy.cjs.map → tabs-DZaLZUBy.cjs.map} +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/tailwind.mixin-Bh58QnlW.cjs +2 -0
- package/dist/{tailwind.mixin-BfdVIGgD.cjs.map → tailwind.mixin-Bh58QnlW.cjs.map} +1 -1
- package/dist/tailwind.mixin-H5Pn7vSJ.js +219 -0
- package/dist/{tailwind.mixin-CNdR3zFD.js.map → tailwind.mixin-H5Pn7vSJ.js.map} +1 -1
- package/dist/teleport.cjs +1 -1
- package/dist/teleport.js +1 -1
- package/dist/{textarea-CxTSwn3x.cjs → textarea-B2544vx9.cjs} +1 -1
- package/dist/{textarea-CxTSwn3x.cjs.map → textarea-B2544vx9.cjs.map} +1 -1
- package/dist/{textarea-D7O9Uo15.js → textarea-CS-KdSLz.js} +1 -1
- package/dist/{textarea-D7O9Uo15.js.map → textarea-CS-KdSLz.js.map} +1 -1
- package/dist/textarea.cjs +1 -1
- package/dist/textarea.js +1 -1
- package/dist/{theme-DGiyJMTT.js → theme-Cq_c9IO3.js} +7 -7
- package/dist/{theme-DGiyJMTT.js.map → theme-Cq_c9IO3.js.map} +1 -1
- package/dist/{theme-CCez6SRm.cjs → theme-DU5yXaV-.cjs} +1 -1
- package/dist/{theme-CCez6SRm.cjs.map → theme-DU5yXaV-.cjs.map} +1 -1
- package/dist/{theme-button-BV0CxpGn.cjs → theme-button-CPujUbgV.cjs} +1 -1
- package/dist/{theme-button-BV0CxpGn.cjs.map → theme-button-CPujUbgV.cjs.map} +1 -1
- package/dist/{theme-button-s9GfSQL5.js → theme-button-OJl2ma0u.js} +1 -1
- package/dist/{theme-button-s9GfSQL5.js.map → theme-button-OJl2ma0u.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.events-EznKK2Y0.cjs.map → theme.events-DakXxZeP.cjs.map} +1 -1
- package/dist/{theme.events-Bw3mYjUA.js.map → theme.events-NuihzD_p.js.map} +1 -1
- package/dist/{theme.interface-Cyqv5XWY.js.map → theme.interface-Buged9Cg.js.map} +1 -1
- package/dist/{theme.interface-CCE3L1ql.cjs.map → theme.interface-DTwkuAKJ.cjs.map} +1 -1
- package/dist/theme.js +5 -5
- package/dist/{theme.service-ETiKUwVy.cjs → theme.service-DxJPUGlu.cjs} +1 -1
- package/dist/{theme.service-ETiKUwVy.cjs.map → theme.service-DxJPUGlu.cjs.map} +1 -1
- package/dist/{theme.service-_qP5WvB9.js → theme.service-cOfPrtfe.js} +2 -2
- package/dist/{theme.service-_qP5WvB9.js.map → theme.service-cOfPrtfe.js.map} +1 -1
- package/dist/tooltip.cjs +1 -1
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/{tslib.es6-PMITL0Z3.cjs.map → tslib.es6-Cnt75pb6.cjs.map} +1 -1
- package/dist/{tslib.es6-vJQZBGJO.js.map → tslib.es6-DMzzJKHV.js.map} +1 -1
- package/dist/{typewriter-BTqEQXsX.js → typewriter-DyN7xa0n.js} +5 -5
- package/dist/{typewriter-BTqEQXsX.js.map → typewriter-DyN7xa0n.js.map} +1 -1
- package/dist/{typewriter-DeaL3NfZ.cjs → typewriter-LK0S4NEr.cjs} +1 -1
- package/dist/{typewriter-DeaL3NfZ.cjs.map → typewriter-LK0S4NEr.cjs.map} +1 -1
- package/dist/typewriter.cjs +1 -1
- package/dist/typewriter.js +1 -1
- package/dist/typography.cjs +1 -1
- package/dist/typography.js +1 -1
- package/dist/{utils-C8PD8So2.cjs → utils-2qrmPb78.cjs} +1 -1
- package/dist/{utils-C8PD8So2.cjs.map → utils-2qrmPb78.cjs.map} +1 -1
- package/dist/{utils-DVuCPDfw.js → utils-xBXLvebz.js} +3 -3
- package/dist/{utils-DVuCPDfw.js.map → utils-xBXLvebz.js.map} +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +5 -5
- package/dist/visually-hidden.cjs +1 -1
- package/dist/visually-hidden.js +1 -1
- package/dist/{window-CDHDVOwO.js → window-BWecg8Ih.js} +6 -6
- package/dist/{window-CDHDVOwO.js.map → window-BWecg8Ih.js.map} +1 -1
- package/dist/{window-IGZgxuUC.cjs → window-Cjv2GqSN.cjs} +1 -1
- package/dist/{window-IGZgxuUC.cjs.map → window-Cjv2GqSN.cjs.map} +1 -1
- package/dist/window.cjs +1 -1
- package/dist/window.js +1 -1
- package/package.json +1 -1
- package/skills/schmancy/INDEX.md +1 -1
- package/skills/schmancy/overlay.md +200 -0
- package/src/overlay/index.ts +15 -0
- package/src/overlay/overlay.animations.ts +137 -0
- package/src/overlay/overlay.component.ts +452 -0
- package/src/overlay/overlay.confirm-body.ts +149 -0
- package/src/overlay/overlay.gestures.ts +131 -0
- package/src/overlay/overlay.layout.ts +76 -0
- package/src/overlay/overlay.service.ts +299 -0
- package/src/overlay/overlay.stack.ts +171 -0
- package/src/overlay/overlay.types.ts +146 -0
- package/types/src/overlay/index.d.ts +5 -0
- package/types/src/overlay/overlay.animations.d.ts +26 -0
- package/types/src/overlay/overlay.component.d.ts +48 -0
- package/types/src/overlay/overlay.confirm-body.d.ts +42 -0
- package/types/src/overlay/overlay.gestures.d.ts +39 -0
- package/types/src/overlay/overlay.layout.d.ts +48 -0
- package/types/src/overlay/overlay.service.d.ts +62 -0
- package/types/src/overlay/overlay.stack.d.ts +25 -0
- package/types/src/overlay/overlay.types.d.ts +122 -0
- package/dist/area-CApZWjqs.cjs.map +0 -1
- package/dist/area-D_p1YBgP.js.map +0 -1
- package/dist/chunk-BCfY8kxB.cjs +0 -1
- package/dist/context-C6GwmNJJ.cjs +0 -1
- package/dist/context-oBTPHrbc.js +0 -3
- package/dist/float-yZoLnUg0.cjs +0 -1
- package/dist/tailwind.mixin-BfdVIGgD.cjs +0 -2
- package/dist/tailwind.mixin-CNdR3zFD.js +0 -219
- /package/dist/{animation-Bcwh107v.cjs → animation-CQRdLgzX.cjs} +0 -0
- /package/dist/{animation-CXKSuUoE.js → animation-hXFClrIn.js} +0 -0
- /package/dist/{date-range-inline-B_g1YXu3.js → date-range-inline-CpKG6qt2.js} +0 -0
- /package/dist/{flow-BPDtbhLe.js → flow-BGkHnOnd.js} +0 -0
- /package/dist/{flow-Dn9AZktE.cjs → flow-ClAJ6Qby.cjs} +0 -0
- /package/dist/{form-C1qS9uvS.js → form-rCZqoAoK.js} +0 -0
- /package/dist/{hashContent-BUqULUiZ.js → hashContent-B2IntJQf.js} +0 -0
- /package/dist/{hashContent-CI39BY-_.cjs → hashContent-CahnEuut.cjs} +0 -0
- /package/dist/{input-Dv-HtkM9.js → input-Bc3bVISm.js} +0 -0
- /package/dist/{intersection-C0JuW_7U.js → intersection-BrXp4YTO.js} +0 -0
- /package/dist/{overlay-stack-J_eJCUTX.cjs → overlay-stack-7bs4ZNnh.cjs} +0 -0
- /package/dist/{overlay-stack-BJt_r6aZ.js → overlay-stack-DXPYHPhk.js} +0 -0
- /package/dist/{reduced-motion-B83yZbcO.js → reduced-motion-BZTLqAyl.js} +0 -0
- /package/dist/{search-BlGJ6uJv.js → search-CvUZRLF1.js} +0 -0
- /package/dist/{search-C8eAOzBm.cjs → search-CwMav5QB.cjs} +0 -0
- /package/dist/{store-Bmj6rvZY.js → store-CjzZDQt8.js} +0 -0
- /package/dist/{theme.events-EznKK2Y0.cjs → theme.events-DakXxZeP.cjs} +0 -0
- /package/dist/{theme.events-Bw3mYjUA.js → theme.events-NuihzD_p.js} +0 -0
- /package/dist/{theme.interface-Cyqv5XWY.js → theme.interface-Buged9Cg.js} +0 -0
- /package/dist/{theme.interface-CCE3L1ql.cjs → theme.interface-DTwkuAKJ.cjs} +0 -0
- /package/dist/{tslib.es6-PMITL0Z3.cjs → tslib.es6-Cnt75pb6.cjs} +0 -0
- /package/dist/{tslib.es6-vJQZBGJO.js → tslib.es6-DMzzJKHV.js} +0 -0
package/dist/store.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./store-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./store-CjFHCSDb.cjs`);exports.BaseStore=e.I,exports.IndexedDBStorageManager=e.L,exports.LocalStorageManager=e.R,exports.MemoryStorageManager=e.z,exports.SchmancyArrayStore=e.F,exports.SchmancyStoreObject=e.P,exports.SessionStorageManager=e.B,exports.StoreError=e.H,exports.compareValues=e.g,exports.createArrayContext=e.j,exports.createCollectionSelector=e.r,exports.createCompoundSelector=e.i,exports.createContext=e.M,exports.createCountSelector=e.a,exports.createEntriesSelector=e.o,exports.createFilterSelector=e.s,exports.createFindSelector=e.c,exports.createItemSelector=e.l,exports.createItemsSelector=e.u,exports.createKeysSelector=e.d,exports.createMapSelector=e.f,exports.createOptimizedSelector=e.p,exports.createSelector=e.m,exports.createSortSelector=e.h,exports.createStorageManager=e.V,exports.createTestArrayContext=e.N,exports.filterArray=e._,exports.filterArrayItems=e.v,exports.filterMap=e.y,exports.filterMapItems=e.b,exports.getFieldValue=e.x,exports.isArray=e.S,exports.isDate=e.C,exports.isIterable=e.w,exports.isMap=e.T,exports.isNil=e.E,exports.isNumber=e.D,exports.isPlainObject=e.O,exports.isSet=e.k,exports.isString=e.A,exports.select=e.t,exports.selectItem=e.n;
|
package/dist/store.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as e, B as t, C as n, D as r, E as i, F as a, H as o, I as s, L as c, M as l, N as u, O as d, P as f, R as p, S as m, T as h, V as g, _, a as v, b as y, c as b, d as x, f as S, g as C, h as w, i as T, j as E, k as D, l as O, m as k, n as A, o as j, p as M, r as N, s as P, t as F, u as I, v as L, w as R, x as z, y as B, z as V } from "./store-
|
|
1
|
+
import { A as e, B as t, C as n, D as r, E as i, F as a, H as o, I as s, L as c, M as l, N as u, O as d, P as f, R as p, S as m, T as h, V as g, _, a as v, b as y, c as b, d as x, f as S, g as C, h as w, i as T, j as E, k as D, l as O, m as k, n as A, o as j, p as M, r as N, s as P, t as F, u as I, v as L, w as R, x as z, y as B, z as V } from "./store-CjzZDQt8.js";
|
|
2
2
|
export { s as BaseStore, c as IndexedDBStorageManager, p as LocalStorageManager, V as MemoryStorageManager, a as SchmancyArrayStore, f as SchmancyStoreObject, t as SessionStorageManager, o as StoreError, C as compareValues, E as createArrayContext, N as createCollectionSelector, T as createCompoundSelector, l as createContext, v as createCountSelector, j as createEntriesSelector, P as createFilterSelector, b as createFindSelector, O as createItemSelector, I as createItemsSelector, x as createKeysSelector, S as createMapSelector, M as createOptimizedSelector, k as createSelector, w as createSortSelector, g as createStorageManager, u as createTestArrayContext, _ as filterArray, L as filterArrayItems, B as filterMap, y as filterMapItems, z as getFieldValue, m as isArray, n as isDate, R as isIterable, h as isMap, i as isNil, r as isNumber, d as isPlainObject, D as isSet, e as isString, F as select, A as selectItem };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { o as e, t } from "./tailwind.mixin-
|
|
2
|
-
import { t as n } from "./provide-
|
|
1
|
+
import { o as e, t } from "./tailwind.mixin-H5Pn7vSJ.js";
|
|
2
|
+
import { t as n } from "./provide-BuzyBLGj.js";
|
|
3
3
|
import { t as r } from "./decorate-D_utPUsC.js";
|
|
4
4
|
import { t as i } from "./surface.mixin-DqMwoddO.js";
|
|
5
5
|
import { customElement as a, property as o } from "lit/decorators.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface-
|
|
1
|
+
{"version":3,"file":"surface-0XM4DBaT.js","names":[],"sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { SurfaceMixin } from '@mixins/surface.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\n// Re-export types for backwards compatibility\nexport type { SchmancySurfaceFill, SchmancySurfaceRounded, SchmancySurfaceElevation } from '@mixins/surface.mixin'\n\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * SurfaceMixin automatically provides surfaceStyles CSS.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends SurfaceMixin(\n\tTailwindElement(css`\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t\tbox-sizing: border-box;\n\t\t\toverflow: visible;\n\t\t}\n\t`),\n) {\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\toverride type: TSurfaceColor = 'subtle'\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"mappings":";;;;;;AAOA,IAAa,IAA6B,EAA6B,UAAA,EAwBhE,IAAA,cAA8B,EACpC,EAAgB,CAAG;;;;;;;;2BAeY;;CAE/B,SAAA;AACC,SAAO,CAAI;;;AAAA,EAAA,CALX,EAAQ,EAAE,SAAS,GAAA,CAAA,EACnB,EAAS,EAAE,SAAA,CAAS,GAAA,CAAA,CAAA,EAAO,EAAA,WAAA,QAAA,KAAA,EAAA,EAAA,IAAA,EAAA,CAhB5B,EAAc,mBAAA,CAAA,EAAmB,EAAA;AAAA,SAAA,KAAA,GAAA,KAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require(`./chunk-
|
|
1
|
+
require(`./chunk-CncqDLb2.cjs`);const e=require(`./tailwind.mixin-Bh58QnlW.cjs`),t=require(`./provide-MvHcXKzT.cjs`),n=require(`./decorate-F9CuyeHg.cjs`),r=require(`./surface.mixin-DxOi-xo0.cjs`);let i=require(`lit/decorators.js`),a=require(`lit`);var o=e.o(`surface`),s=class extends r.t(e.t(a.css`
|
|
2
2
|
:host {
|
|
3
3
|
display: block;
|
|
4
4
|
box-sizing: border-box;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface-
|
|
1
|
+
{"version":3,"file":"surface-B6DA01kL.cjs","names":[],"sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { SurfaceMixin } from '@mixins/surface.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\n// Re-export types for backwards compatibility\nexport type { SchmancySurfaceFill, SchmancySurfaceRounded, SchmancySurfaceElevation } from '@mixins/surface.mixin'\n\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * SurfaceMixin automatically provides surfaceStyles CSS.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends SurfaceMixin(\n\tTailwindElement(css`\n\t\t:host {\n\t\t\tdisplay: block;\n\t\t\tbox-sizing: border-box;\n\t\t\toverflow: visible;\n\t\t}\n\t`),\n) {\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\toverride type: TSurfaceColor = 'subtle'\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"mappings":"wPAOA,IAAa,EAA6B,EAAA,EAA6B,UAAA,CAwBhE,EAAA,cAA8B,EAAA,EACpC,EAAA,EAAgB,EAAA,GAAG;;;;;;6CAeY,SAE/B,QAAA,CACC,MAAO,GAAA,IAAI,kBAAA,EAAA,EAAA,CALX,EAAA,EAAQ,CAAE,QAAS,EAAA,CAAA,EAA6B,EAAA,EAAA,UACvC,CAAE,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,OAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,eAhBd,mBAAA,CAAA,CAAmB,EAAA,CAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,GAAA,CAAA,CAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,GAAA,CAAA"}
|
package/dist/surface.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./surface-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./surface-B6DA01kL.cjs`);Object.defineProperty(exports,`SchmancySurface`,{enumerable:!0,get:function(){return e.t}}),exports.SchmancySurfaceTypeContext=e.n;
|
package/dist/surface.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as e, t } from "./surface-
|
|
1
|
+
import { n as e, t } from "./surface-0XM4DBaT.js";
|
|
2
2
|
export { t as SchmancySurface, e as SchmancySurfaceTypeContext };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require(`./chunk-
|
|
1
|
+
require(`./chunk-CncqDLb2.cjs`);const e=require(`./decorate-F9CuyeHg.cjs`);let t=require(`lit/decorators.js`),n=require(`lit`);var r=n.css`
|
|
2
2
|
/* ================================================================
|
|
3
3
|
STRUCTURAL TYPES — All-glass depth model.
|
|
4
4
|
Nothing is opaque. Every layer is translucent.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.mixin-CSKqQH-0.cjs","names":[],"sources":["../src/surface/surface.styles.ts","../mixins/surface.mixin.ts"],"sourcesContent":["import { css } from 'lit'\n\n/**\n * Luminous Glass surface type styles.\n *\n * Depth model: blur intensity + opacity replaces M3 tonal hierarchy.\n * - solid: opaque ground (0 blur, 100% opacity)\n * - subtle: frosted panel (4px blur, ~72% opacity)\n * - glass: full frosted glass (20px blur, ~55% opacity)\n * - luminous: glass + glow halo (24px blur, ~22% opacity)\n */\nexport const surfaceTypeStyles = css`\n\t/* ================================================================\n\t STRUCTURAL TYPES — All-glass depth model.\n\t Nothing is opaque. Every layer is translucent.\n\t Blur creates readability. Light borders isolate layers.\n\t Rule: text must ALWAYS be readable on every surface.\n\t ================================================================ */\n\n\t/* Solid — dense glass, high readability ground layer (no blur — 92% opacity is enough) */\n\t:host([type='solid']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 92%, transparent);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 4%, transparent);\n\t}\n\n\t/* Subtle — frosted glass, clearly readable */\n\t:host([type='subtle']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-container);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 78%, transparent);\n\t\tbackdrop-filter: blur(8px) saturate(130%);\n\t\t-webkit-backdrop-filter: blur(8px) saturate(130%);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 7%, transparent);\n\t\tbox-shadow: inset 0 1px 0 color-mix(in srgb, var(--glass-tint) 5%, transparent);\n\t}\n\n\t/* Glass — frosted glass, blur ensures readability */\n\t:host([type='glass']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 18%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 55%, transparent);\n\t\tbackdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\t-webkit-backdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 4px 24px color-mix(in srgb, black 10%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 8%, transparent),\n\t\t\tinset 0 -1px 0 color-mix(in srgb, black 3%, transparent);\n\t\tcontain: content;\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* Luminous — glass + glow halo, heavy blur keeps readability */\n\t:host([type='luminous']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glow-color: var(--schmancy-sys-color-primary-default);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 12%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 22%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 42%, transparent);\n\t\tbackdrop-filter: blur(20px) saturate(200%) brightness(1.08);\n\t\t-webkit-backdrop-filter: blur(20px) saturate(200%) brightness(1.08);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 8px 40px -4px color-mix(in srgb, var(--glow-color) 20%, transparent),\n\t\t\t0 2px 16px color-mix(in srgb, black 8%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\tcontain: content;\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* ================================================================\n\t UTILITY TYPES\n\t ================================================================ */\n\n\t/* Transparent — no background */\n\t:host([type='transparent']) {\n\t\tbackground-color: transparent;\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\n\t/* Outlined — border with luminous hover potential */\n\t:host([type='outlined']) {\n\t\tbackground-color: transparent;\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--schmancy-sys-color-outlineVariant);\n\t\ttransition: border-color 300ms ease, box-shadow 300ms ease;\n\t}\n\n\t/* ================================================================\n\t SEMANTIC TYPES — tinted glass for status/role\n\t ================================================================ */\n\n\t:host([type='primary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-primary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t}\n\t:host([type='secondary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-secondary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-secondary-default) 20%, transparent);\n\t}\n\t:host([type='tertiary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-tertiary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-tertiary-default) 20%, transparent);\n\t}\n\t:host([type='error']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-error-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-error-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-error-default) 25%, transparent);\n\t}\n\t:host([type='success']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-success-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-success-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-success-default) 25%, transparent);\n\t}\n\t:host([type='warning']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-warning-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-warning-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-warning-default) 25%, transparent);\n\t}\n\t:host([type='info']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-info-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-info-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-info-default) 25%, transparent);\n\t}\n\n\t/* ================================================================\n\t LEGACY M3 ALIASES — backward compatibility\n\t Old type names render as their new Luminous Glass equivalents.\n\t ================================================================ */\n\n\t/* solid aliases — dense glass */\n\t:host([type='surface']),\n\t:host([type='surfaceDim']),\n\t:host([type='surfaceBright']),\n\t:host([type='containerLowest']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 92%, transparent);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 4%, transparent);\n\t}\n\n\t/* subtle aliases — frosted glass */\n\t:host([type='containerLow']),\n\t:host([type='container']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-container);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 78%, transparent);\n\t\tbackdrop-filter: blur(8px) saturate(130%);\n\t\t-webkit-backdrop-filter: blur(8px) saturate(130%);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 7%, transparent);\n\t\tbox-shadow: inset 0 1px 0 color-mix(in srgb, var(--glass-tint) 5%, transparent);\n\t}\n\n\t/* glass aliases */\n\t:host([type='containerHigh']),\n\t:host([type='containerHighest']),\n\t:host([type='glassOforim']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 18%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 55%, transparent);\n\t\tbackdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\t-webkit-backdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 4px 24px color-mix(in srgb, black 10%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 8%, transparent),\n\t\t\tinset 0 -1px 0 color-mix(in srgb, black 3%, transparent);\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* ================================================================\n\t REDUCED MOTION — disable glass animations\n\t ================================================================ */\n`\n\n/**\n * Surface fill styles - dimension control\n */\nexport const surfaceFillStyles = css`\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n`\n\n/**\n * Surface rounded corner styles\n */\nexport const surfaceRoundedStyles = css`\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large) 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large) 0 0 var(--schmancy-sys-shape-corner-large);\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large) 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large);\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large);\n\t}\n`\n\n/**\n * Luminous glow elevation — replaces M3 dark drop shadows with primary-colored glow.\n * No ::after tint overlay — depth comes from glow intensity, not surface tint.\n */\nexport const surfaceElevationStyles = css`\n\t:host([elevation='1']) {\n\t\tbox-shadow: 0 2px 12px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 15%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: 0 4px 20px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 22%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: 0 8px 32px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 28%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: 0 12px 44px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 35%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: 0 20px 60px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 42%, transparent);\n\t\tposition: relative;\n\t}\n`\n\n/**\n * Surface clickable styles - luminous hover, spring active\n */\nexport const surfaceClickableStyles = css`\n\t:host([clickable]) {\n\t\tcursor: pointer;\n\t\tuser-select: none;\n\t\t-webkit-tap-highlight-color: transparent;\n\t\ttransition:\n\t\t\tfilter 200ms ease,\n\t\t\ttransform 300ms cubic-bezier(0.34, 1.56, 0.64, 1),\n\t\t\tbox-shadow 400ms ease;\n\t}\n\t:host([clickable]:hover) {\n\t\tfilter: brightness(1.03);\n\t\ttransform: translateY(-1px);\n\t\tbox-shadow: 0 4px 20px -6px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 15%, transparent);\n\t}\n\t:host([clickable]:active) {\n\t\tfilter: brightness(0.96);\n\t\ttransform: scale(0.97);\n\t\tbox-shadow: none;\n\t\ttransition-duration: 100ms;\n\t}\n\t:host([clickable]:focus-visible) {\n\t\toutline: 2px solid var(--schmancy-sys-color-primary-default);\n\t\toutline-offset: 2px;\n\t\tbox-shadow: 0 0 12px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t}\n\t@media (prefers-reduced-motion: reduce) {\n\t\t:host([clickable]) { transition: filter 150ms ease; }\n\t\t:host([clickable]:hover) { transform: none; box-shadow: none; }\n\t\t:host([clickable]:active) { transform: none; }\n\t}\n`\n\n/**\n * Combined surface styles - includes all surface styling capabilities\n */\nexport const surfaceStyles = css`\n\t${surfaceTypeStyles}\n\t${surfaceFillStyles}\n\t${surfaceRoundedStyles}\n\t${surfaceElevationStyles}\n\t${surfaceClickableStyles}\n`\n","import type { Constructor } from './constructor'\nimport { CSSResultGroup, CSSResultOrNative, LitElement } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport type { TSurfaceColor } from '../src/types/surface'\nimport { surfaceStyles } from '../src/surface/surface.styles'\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\nexport type SchmancySurfaceRounded = 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all'\nexport type SchmancySurfaceElevation = 0 | 1 | 2 | 3 | 4 | 5\n\nexport declare class ISurfaceMixin {\n\tfill: SchmancySurfaceFill\n\trounded: SchmancySurfaceRounded\n\televation: SchmancySurfaceElevation\n\ttype: TSurfaceColor\n\tclickable: boolean\n}\n\n/**\n * SurfaceMixin - Adds surface styling properties AND styles to any LitElement\n *\n * Uses Lit's finalizeStyles hook to inject surfaceStyles CSS for all surface type selectors.\n * This is the recommended pattern for mixins that need to add styles.\n *\n * Provides these reflected properties:\n * - `fill`: 'all' | 'width' | 'height' | 'auto' - Controls element dimensions\n * - `rounded`: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' - Corner rounding\n * - `elevation`: 0-5 - Shadow depth level\n * - `type`: TSurfaceColor - Surface color variant (26+ options)\n *\n * Usage:\n * ```typescript\n * import { SurfaceMixin } from '@mixins/surface.mixin'\n *\n * @customElement('my-component')\n * class MyComponent extends SurfaceMixin(TailwindElement(css`\n * :host { display: block; }\n * `)) {\n * // Component now has type, fill, rounded, elevation properties\n * // AND surfaceStyles are automatically included\n * }\n * ```\n */\nexport const SurfaceMixin = <T extends Constructor<LitElement>>(superClass: T) => {\n\tclass SurfaceMixinClass extends superClass {\n\t\t/**\n\t\t * Override finalizeStyles to inject surfaceStyles.\n\t\t * This is the Lit-recommended way for mixins to add styles.\n\t\t */\n\t\tprotected static finalizeStyles(styles?: CSSResultGroup): CSSResultOrNative[] {\n\t\t\t// Get parent's finalized styles using LitElement's method\n\t\t\tconst parentStyles = (superClass as unknown as typeof LitElement).finalizeStyles(styles)\n\t\t\t// Append surfaceStyles at the end (higher specificity)\n\t\t\treturn [...parentStyles, surfaceStyles as CSSResultOrNative]\n\t\t}\n\n\t\t/**\n\t\t * Fill the width and/or height of the parent container.\n\t\t * @default 'auto'\n\t\t */\n\t\t@property({ type: String, reflect: true })\n\t\tfill: SchmancySurfaceFill = 'auto'\n\n\t\t/**\n\t\t * Specifies the rounding style of the component's corners.\n\t\t * @default 'none'\n\t\t */\n\t\t@property({ reflect: true })\n\t\trounded: SchmancySurfaceRounded = 'none'\n\n\t\t/**\n\t\t * Defines the elevation level (shadow depth) of the surface.\n\t\t * @default 0\n\t\t */\n\t\t@property({ type: Number, reflect: true })\n\t\televation: SchmancySurfaceElevation = 0\n\n\t\t/**\n\t\t * Specifies the surface type for styling.\n\t\t * @default 'container'\n\t\t */\n\t\t@property({ reflect: true })\n\t\ttype: TSurfaceColor = 'subtle'\n\n\t\t/**\n\t\t * Makes the surface interactive with hover, active states and cursor pointer.\n\t\t * @default false\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\tclickable = false\n\t}\n\treturn SurfaceMixinClass as Constructor<ISurfaceMixin> & T\n}\n"],"mappings":"+HAWA,IAAa,EAAoB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqNvB,EAAoB,EAAA,GAAG;;;;;;;;;;;EAgBvB,EAAuB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;EAyB1B,EAAyB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;EA0B5B,EAAyB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoC5B,EAAgB,EAAA,GAAG;GAC7B,EAAA;GACA,EAAA;GACA,EAAA;GACA,EAAA;GACA,EAAA;ECjSU,EAAmD,GAAA,CAC/D,MAAM,UAA0B,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,EAAA,CAAA,KAAA,KAiBH,OAAA,KAAA,QAOM,OAAA,KAAA,UAOI,EAAA,KAAA,KAOhB,SAAA,KAAA,UAAA,CAOV,EAxCZ,OAAA,eAAgC,EAAA,CAI/B,MAAO,CAAA,GAFe,EAA4C,eAAe,EAAA,CAExD,EAAA,EAsC3B,OAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UA/BW,CAAE,KAAM,OAAQ,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,OAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOhC,CAAE,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,UAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOlB,CAAE,KAAM,OAAQ,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,YAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOhC,CAAE,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,OAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOlB,CAAE,KAAM,QAAS,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,YAAA,IAAA,GAAA,CAGrC,GAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,GAAA,CAAA"}
|
|
1
|
+
{"version":3,"file":"surface.mixin-DxOi-xo0.cjs","names":[],"sources":["../src/surface/surface.styles.ts","../mixins/surface.mixin.ts"],"sourcesContent":["import { css } from 'lit'\n\n/**\n * Luminous Glass surface type styles.\n *\n * Depth model: blur intensity + opacity replaces M3 tonal hierarchy.\n * - solid: opaque ground (0 blur, 100% opacity)\n * - subtle: frosted panel (4px blur, ~72% opacity)\n * - glass: full frosted glass (20px blur, ~55% opacity)\n * - luminous: glass + glow halo (24px blur, ~22% opacity)\n */\nexport const surfaceTypeStyles = css`\n\t/* ================================================================\n\t STRUCTURAL TYPES — All-glass depth model.\n\t Nothing is opaque. Every layer is translucent.\n\t Blur creates readability. Light borders isolate layers.\n\t Rule: text must ALWAYS be readable on every surface.\n\t ================================================================ */\n\n\t/* Solid — dense glass, high readability ground layer (no blur — 92% opacity is enough) */\n\t:host([type='solid']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 92%, transparent);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 4%, transparent);\n\t}\n\n\t/* Subtle — frosted glass, clearly readable */\n\t:host([type='subtle']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-container);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 78%, transparent);\n\t\tbackdrop-filter: blur(8px) saturate(130%);\n\t\t-webkit-backdrop-filter: blur(8px) saturate(130%);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 7%, transparent);\n\t\tbox-shadow: inset 0 1px 0 color-mix(in srgb, var(--glass-tint) 5%, transparent);\n\t}\n\n\t/* Glass — frosted glass, blur ensures readability */\n\t:host([type='glass']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 18%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 55%, transparent);\n\t\tbackdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\t-webkit-backdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 4px 24px color-mix(in srgb, black 10%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 8%, transparent),\n\t\t\tinset 0 -1px 0 color-mix(in srgb, black 3%, transparent);\n\t\tcontain: content;\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* Luminous — glass + glow halo, heavy blur keeps readability */\n\t:host([type='luminous']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glow-color: var(--schmancy-sys-color-primary-default);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 12%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 22%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 42%, transparent);\n\t\tbackdrop-filter: blur(20px) saturate(200%) brightness(1.08);\n\t\t-webkit-backdrop-filter: blur(20px) saturate(200%) brightness(1.08);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 8px 40px -4px color-mix(in srgb, var(--glow-color) 20%, transparent),\n\t\t\t0 2px 16px color-mix(in srgb, black 8%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\tcontain: content;\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* ================================================================\n\t UTILITY TYPES\n\t ================================================================ */\n\n\t/* Transparent — no background */\n\t:host([type='transparent']) {\n\t\tbackground-color: transparent;\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\n\t/* Outlined — border with luminous hover potential */\n\t:host([type='outlined']) {\n\t\tbackground-color: transparent;\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--schmancy-sys-color-outlineVariant);\n\t\ttransition: border-color 300ms ease, box-shadow 300ms ease;\n\t}\n\n\t/* ================================================================\n\t SEMANTIC TYPES — tinted glass for status/role\n\t ================================================================ */\n\n\t:host([type='primary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-primary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-primary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t}\n\t:host([type='secondary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-secondary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-secondary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-secondary-default) 20%, transparent);\n\t}\n\t:host([type='tertiary']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-tertiary-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-tertiary-default);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-tertiary-default) 20%, transparent);\n\t}\n\t:host([type='error']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-error-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-error-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-error-default) 25%, transparent);\n\t}\n\t:host([type='success']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-success-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-success-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-success-default) 25%, transparent);\n\t}\n\t:host([type='warning']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-warning-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-warning-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-warning-default) 25%, transparent);\n\t}\n\t:host([type='info']) {\n\t\tbackground: color-mix(in srgb, var(--schmancy-sys-color-info-default) 12%, transparent);\n\t\tbackdrop-filter: blur(4px) saturate(140%);\n\t\t-webkit-backdrop-filter: blur(4px) saturate(140%);\n\t\tcolor: var(--schmancy-sys-color-info-onContainer);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-info-default) 25%, transparent);\n\t}\n\n\t/* ================================================================\n\t LEGACY M3 ALIASES — backward compatibility\n\t Old type names render as their new Luminous Glass equivalents.\n\t ================================================================ */\n\n\t/* solid aliases — dense glass */\n\t:host([type='surface']),\n\t:host([type='surfaceDim']),\n\t:host([type='surfaceBright']),\n\t:host([type='containerLowest']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 92%, transparent);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 4%, transparent);\n\t}\n\n\t/* subtle aliases — frosted glass */\n\t:host([type='containerLow']),\n\t:host([type='container']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-container);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\tbackground: color-mix(in srgb, var(--glass-base) 78%, transparent);\n\t\tbackdrop-filter: blur(8px) saturate(130%);\n\t\t-webkit-backdrop-filter: blur(8px) saturate(130%);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--glass-tint) 7%, transparent);\n\t\tbox-shadow: inset 0 1px 0 color-mix(in srgb, var(--glass-tint) 5%, transparent);\n\t}\n\n\t/* glass aliases */\n\t:host([type='containerHigh']),\n\t:host([type='containerHighest']),\n\t:host([type='glassOforim']) {\n\t\t--glass-base: var(--schmancy-sys-color-surface-lowest);\n\t\t--glass-tint: var(--schmancy-sys-color-surface-on);\n\t\t--glass-border: color-mix(in srgb, var(--glass-tint) 10%, transparent);\n\t\t--glass-border-highlight: color-mix(in srgb, var(--glass-tint) 18%, transparent);\n\n\t\tbackground: color-mix(in srgb, var(--glass-base) 55%, transparent);\n\t\tbackdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\t-webkit-backdrop-filter: blur(16px) saturate(180%) brightness(1.05);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid var(--glass-border);\n\t\tborder-top-color: var(--glass-border-highlight);\n\t\tborder-left-color: var(--glass-border-highlight);\n\t\tbox-shadow:\n\t\t\t0 4px 24px color-mix(in srgb, black 10%, transparent),\n\t\t\tinset 0 1px 0 color-mix(in srgb, var(--glass-tint) 8%, transparent),\n\t\t\tinset 0 -1px 0 color-mix(in srgb, black 3%, transparent);\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tisolation: isolate;\n\t}\n\n\t/* ================================================================\n\t REDUCED MOTION — disable glass animations\n\t ================================================================ */\n`\n\n/**\n * Surface fill styles - dimension control\n */\nexport const surfaceFillStyles = css`\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n`\n\n/**\n * Surface rounded corner styles\n */\nexport const surfaceRoundedStyles = css`\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large) 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large) 0 0 var(--schmancy-sys-shape-corner-large);\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large) 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 var(--schmancy-sys-shape-corner-large) var(--schmancy-sys-shape-corner-large);\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-large);\n\t}\n`\n\n/**\n * Luminous glow elevation — replaces M3 dark drop shadows with primary-colored glow.\n * No ::after tint overlay — depth comes from glow intensity, not surface tint.\n */\nexport const surfaceElevationStyles = css`\n\t:host([elevation='1']) {\n\t\tbox-shadow: 0 2px 12px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 15%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: 0 4px 20px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 22%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: 0 8px 32px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 28%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: 0 12px 44px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 35%, transparent);\n\t\tposition: relative;\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: 0 20px 60px -4px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 42%, transparent);\n\t\tposition: relative;\n\t}\n`\n\n/**\n * Surface clickable styles - luminous hover, spring active\n */\nexport const surfaceClickableStyles = css`\n\t:host([clickable]) {\n\t\tcursor: pointer;\n\t\tuser-select: none;\n\t\t-webkit-tap-highlight-color: transparent;\n\t\ttransition:\n\t\t\tfilter 200ms ease,\n\t\t\ttransform 300ms cubic-bezier(0.34, 1.56, 0.64, 1),\n\t\t\tbox-shadow 400ms ease;\n\t}\n\t:host([clickable]:hover) {\n\t\tfilter: brightness(1.03);\n\t\ttransform: translateY(-1px);\n\t\tbox-shadow: 0 4px 20px -6px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 15%, transparent);\n\t}\n\t:host([clickable]:active) {\n\t\tfilter: brightness(0.96);\n\t\ttransform: scale(0.97);\n\t\tbox-shadow: none;\n\t\ttransition-duration: 100ms;\n\t}\n\t:host([clickable]:focus-visible) {\n\t\toutline: 2px solid var(--schmancy-sys-color-primary-default);\n\t\toutline-offset: 2px;\n\t\tbox-shadow: 0 0 12px -2px color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t}\n\t@media (prefers-reduced-motion: reduce) {\n\t\t:host([clickable]) { transition: filter 150ms ease; }\n\t\t:host([clickable]:hover) { transform: none; box-shadow: none; }\n\t\t:host([clickable]:active) { transform: none; }\n\t}\n`\n\n/**\n * Combined surface styles - includes all surface styling capabilities\n */\nexport const surfaceStyles = css`\n\t${surfaceTypeStyles}\n\t${surfaceFillStyles}\n\t${surfaceRoundedStyles}\n\t${surfaceElevationStyles}\n\t${surfaceClickableStyles}\n`\n","import type { Constructor } from './constructor'\nimport { CSSResultGroup, CSSResultOrNative, LitElement } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport type { TSurfaceColor } from '../src/types/surface'\nimport { surfaceStyles } from '../src/surface/surface.styles'\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\nexport type SchmancySurfaceRounded = 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all'\nexport type SchmancySurfaceElevation = 0 | 1 | 2 | 3 | 4 | 5\n\nexport declare class ISurfaceMixin {\n\tfill: SchmancySurfaceFill\n\trounded: SchmancySurfaceRounded\n\televation: SchmancySurfaceElevation\n\ttype: TSurfaceColor\n\tclickable: boolean\n}\n\n/**\n * SurfaceMixin - Adds surface styling properties AND styles to any LitElement\n *\n * Uses Lit's finalizeStyles hook to inject surfaceStyles CSS for all surface type selectors.\n * This is the recommended pattern for mixins that need to add styles.\n *\n * Provides these reflected properties:\n * - `fill`: 'all' | 'width' | 'height' | 'auto' - Controls element dimensions\n * - `rounded`: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' - Corner rounding\n * - `elevation`: 0-5 - Shadow depth level\n * - `type`: TSurfaceColor - Surface color variant (26+ options)\n *\n * Usage:\n * ```typescript\n * import { SurfaceMixin } from '@mixins/surface.mixin'\n *\n * @customElement('my-component')\n * class MyComponent extends SurfaceMixin(TailwindElement(css`\n * :host { display: block; }\n * `)) {\n * // Component now has type, fill, rounded, elevation properties\n * // AND surfaceStyles are automatically included\n * }\n * ```\n */\nexport const SurfaceMixin = <T extends Constructor<LitElement>>(superClass: T) => {\n\tclass SurfaceMixinClass extends superClass {\n\t\t/**\n\t\t * Override finalizeStyles to inject surfaceStyles.\n\t\t * This is the Lit-recommended way for mixins to add styles.\n\t\t */\n\t\tprotected static finalizeStyles(styles?: CSSResultGroup): CSSResultOrNative[] {\n\t\t\t// Get parent's finalized styles using LitElement's method\n\t\t\tconst parentStyles = (superClass as unknown as typeof LitElement).finalizeStyles(styles)\n\t\t\t// Append surfaceStyles at the end (higher specificity)\n\t\t\treturn [...parentStyles, surfaceStyles as CSSResultOrNative]\n\t\t}\n\n\t\t/**\n\t\t * Fill the width and/or height of the parent container.\n\t\t * @default 'auto'\n\t\t */\n\t\t@property({ type: String, reflect: true })\n\t\tfill: SchmancySurfaceFill = 'auto'\n\n\t\t/**\n\t\t * Specifies the rounding style of the component's corners.\n\t\t * @default 'none'\n\t\t */\n\t\t@property({ reflect: true })\n\t\trounded: SchmancySurfaceRounded = 'none'\n\n\t\t/**\n\t\t * Defines the elevation level (shadow depth) of the surface.\n\t\t * @default 0\n\t\t */\n\t\t@property({ type: Number, reflect: true })\n\t\televation: SchmancySurfaceElevation = 0\n\n\t\t/**\n\t\t * Specifies the surface type for styling.\n\t\t * @default 'container'\n\t\t */\n\t\t@property({ reflect: true })\n\t\ttype: TSurfaceColor = 'subtle'\n\n\t\t/**\n\t\t * Makes the surface interactive with hover, active states and cursor pointer.\n\t\t * @default false\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\tclickable = false\n\t}\n\treturn SurfaceMixinClass as Constructor<ISurfaceMixin> & T\n}\n"],"mappings":"+HAWA,IAAa,EAAoB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqNvB,EAAoB,EAAA,GAAG;;;;;;;;;;;EAgBvB,EAAuB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;EAyB1B,EAAyB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;EA0B5B,EAAyB,EAAA,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoC5B,EAAgB,EAAA,GAAG;GAC7B,EAAA;GACA,EAAA;GACA,EAAA;GACA,EAAA;GACA,EAAA;ECjSU,EAAmD,GAAA,CAC/D,MAAM,UAA0B,CAAA,CAAA,YAAA,GAAA,EAAA,CAAA,MAAA,GAAA,EAAA,CAAA,KAAA,KAiBH,OAAA,KAAA,QAOM,OAAA,KAAA,UAOI,EAAA,KAAA,KAOhB,SAAA,KAAA,UAAA,CAOV,EAxCZ,OAAA,eAAgC,EAAA,CAI/B,MAAO,CAAA,GAFe,EAA4C,eAAe,EAAA,CAExD,EAAA,EAsC3B,OAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UA/BW,CAAE,KAAM,OAAQ,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,OAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOhC,CAAE,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,UAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOlB,CAAE,KAAM,OAAQ,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,YAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOhC,CAAE,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,OAAA,IAAA,GAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,UAOlB,CAAE,KAAM,QAAS,QAAA,CAAS,EAAA,CAAA,CAAA,CAAO,EAAA,UAAA,YAAA,IAAA,GAAA,CAGrC,GAAA,OAAA,eAAA,QAAA,IAAA,CAAA,WAAA,CAAA,EAAA,IAAA,UAAA,CAAA,OAAA,GAAA,CAAA"}
|
package/dist/switch.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./chunk-CncqDLb2.cjs`);const e=require(`./tailwind.mixin-Bh58QnlW.cjs`),t=require(`./decorate-F9CuyeHg.cjs`);require(`./mixins.cjs`);let n=require(`lit/decorators.js`),r=require(`lit`);var i=class extends e.t(r.css`
|
|
2
2
|
:host {
|
|
3
3
|
display: inline-block;
|
|
4
4
|
}
|
package/dist/switch.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
require(`./chunk-
|
|
1
|
+
require(`./chunk-CncqDLb2.cjs`);const e=require(`./decorate-F9CuyeHg.cjs`),t=require(`./litElement.mixin-CtQOmwq6.cjs`),n=require(`./tslib.es6-Cnt75pb6.cjs`);let r=require(`lit/decorators.js`),i=require(`lit`),a=require(`lit/directives/repeat.js`),o=require(`lit/async-directive.js`),s=require(`lit/directive.js`),c=require(`lit/decorators/property.js`);var l=class extends t.t(){constructor(...e){super(...e),this.columns=[],this.cols=this.columns.map(()=>`1fr`).join(` `)}renderCell(e){if(e.render)return i.html`
|
|
2
2
|
<div class="overflow-hidden text-ellipsis">
|
|
3
3
|
<schmancy-typography align="${e.align||`left`}" maxLines="2" weight="${e.weight||`normal`}">
|
|
4
4
|
${e.render(this.item)}
|
|
@@ -16,7 +16,7 @@ require(`./chunk-BCfY8kxB.cjs`);const e=require(`./decorate-F9CuyeHg.cjs`),t=req
|
|
|
16
16
|
${this.columns.map(e=>this.renderCell(e))}
|
|
17
17
|
</schmancy-grid>
|
|
18
18
|
</schmancy-list-item>
|
|
19
|
-
`}};e.t([(0,r.property)({type:Array,attribute:!1})],l.prototype,`columns`,void 0),e.t([(0,r.property)({type:Object,attribute:!1})],l.prototype,`item`,void 0),e.t([(0,r.property)({type:String})],l.prototype,`cols`,void 0),l=e.t([(0,r.customElement)(`schmancy-table-row`)],l);var u=class e extends Event{constructor(t){super(e.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}};u.eventName=`rangeChanged`;var d=class e extends Event{constructor(t){super(e.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}};d.eventName=`visibilityChanged`;var f=class e extends Event{constructor(){super(e.eventName,{bubbles:!1})}};f.eventName=`unpinned`;var p,m=class{constructor(e){this._element=null;let t=e??window;this._node=t,e&&(this._element=e)}get element(){return this._element||document.scrollingElement||document.documentElement}get scrollTop(){return this.element.scrollTop||window.scrollY}get scrollLeft(){return this.element.scrollLeft||window.scrollX}get scrollHeight(){return this.element.scrollHeight}get scrollWidth(){return this.element.scrollWidth}get viewportHeight(){return this._element?this._element.getBoundingClientRect().height:window.innerHeight}get viewportWidth(){return this._element?this._element.getBoundingClientRect().width:window.innerWidth}get maxScrollTop(){return this.scrollHeight-this.viewportHeight}get maxScrollLeft(){return this.scrollWidth-this.viewportWidth}},h=class extends m{constructor(e,t){super(t),this._clients=new Set,this._retarget=null,this._end=null,this.i=null,this.correctingScrollError=!1,this._checkForArrival=this._checkForArrival.bind(this),this._updateManagedScrollTo=this._updateManagedScrollTo.bind(this),this.scrollTo=this.scrollTo.bind(this),this.scrollBy=this.scrollBy.bind(this);let n=this._node;this._originalScrollTo=n.scrollTo,this._originalScrollBy=n.scrollBy,this._originalScroll=n.scroll,this._attach(e)}get _destination(){return this.i}get scrolling(){return this._destination!==null}scrollTo(e,t){let n=typeof e==`number`&&typeof t==`number`?{left:e,top:t}:e;this._scrollTo(n)}scrollBy(e,t){let n=typeof e==`number`&&typeof t==`number`?{left:e,top:t}:e;n.top!==void 0&&(n.top+=this.scrollTop),n.left!==void 0&&(n.left+=this.scrollLeft),this._scrollTo(n)}_nativeScrollTo(e){this._originalScrollTo.bind(this._element||window)(e)}_scrollTo(e,t=null,n=null){this._end!==null&&this._end(),e.behavior===`smooth`?(this._setDestination(e),this._retarget=t,this._end=n):this._resetScrollState(),this._nativeScrollTo(e)}_setDestination(e){let{top:t,left:n}=e;return t=t===void 0?void 0:Math.max(0,Math.min(t,this.maxScrollTop)),n=n===void 0?void 0:Math.max(0,Math.min(n,this.maxScrollLeft)),(this._destination===null||n!==this._destination.left||t!==this._destination.top)&&(this.i={top:t,left:n,behavior:`smooth`},!0)}_resetScrollState(){this.i=null,this._retarget=null,this._end=null}_updateManagedScrollTo(e){this._destination&&this._setDestination(e)&&this._nativeScrollTo(this._destination)}managedScrollTo(e,t,n){return this._scrollTo(e,t,n),this._updateManagedScrollTo}correctScrollError(e){this.correctingScrollError=!0,requestAnimationFrame(()=>requestAnimationFrame(()=>this.correctingScrollError=!1)),this._nativeScrollTo(e),this._retarget&&this._setDestination(this._retarget()),this._destination&&this._nativeScrollTo(this._destination)}_checkForArrival(){if(this._destination!==null){let{scrollTop:e,scrollLeft:t}=this,{top:n,left:r}=this._destination;n=Math.min(n||0,this.maxScrollTop),r=Math.min(r||0,this.maxScrollLeft);let i=Math.abs(n-e),a=Math.abs(r-t);i<1&&a<1&&(this._end&&this._end(),this._resetScrollState())}}detach(e){return this._clients.delete(e),this._clients.size===0&&(this._node.scrollTo=this._originalScrollTo,this._node.scrollBy=this._originalScrollBy,this._node.scroll=this._originalScroll,this._node.removeEventListener(`scroll`,this._checkForArrival)),null}_attach(e){this._clients.add(e),this._clients.size===1&&(this._node.scrollTo=this.scrollTo,this._node.scrollBy=this.scrollBy,this._node.scroll=this.scrollTo,this._node.addEventListener(`scroll`,this._checkForArrival))}},g=typeof window<`u`?window.ResizeObserver:void 0,_=Symbol(`virtualizerRef`),v=`virtualizer-sizer`,y=class{constructor(e){if(this._benchmarkStart=null,this._layout=null,this._clippingAncestors=[],this._scrollSize=null,this._scrollError=null,this._childrenPos=null,this._childMeasurements=null,this._toBeMeasured=new Map,this._rangeChanged=!0,this._itemsChanged=!0,this._visibilityChanged=!0,this._scrollerController=null,this._isScroller=!1,this._sizer=null,this._hostElementRO=null,this._childrenRO=null,this._mutationObserver=null,this._scrollEventListeners=[],this._scrollEventListenerOptions={passive:!0},this._loadListener=this._childLoaded.bind(this),this._scrollIntoViewTarget=null,this._updateScrollIntoViewCoordinates=null,this._items=[],this._first=-1,this._last=-1,this._firstVisible=-1,this._lastVisible=-1,this._scheduled=new WeakSet,this._measureCallback=null,this._measureChildOverride=null,this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null,this._layoutInitialized=null,this._connected=!1,!e)throw Error(`Virtualizer constructor requires a configuration object`);if(!e.hostElement)throw Error(`Virtualizer configuration requires the "hostElement" property`);this._init(e)}set items(e){Array.isArray(e)&&e!==this._items&&(this._itemsChanged=!0,this._items=e,this._schedule(this._updateLayout))}_init(e){this._isScroller=!!e.scroller,this._initHostElement(e);let t=e.layout||{};this._layoutInitialized=this._initLayout(t)}_initObservers(){this._mutationObserver=new MutationObserver(this._finishDOMUpdate.bind(this)),this._hostElementRO=new g(()=>this._hostElementSizeChanged()),this._childrenRO=new g(this._childrenSizeChanged.bind(this))}_initHostElement(e){let t=this._hostElement=e.hostElement;this._applyVirtualizerStyles(),t[_]=this}connected(){this._initObservers();let e=this._isScroller;this._clippingAncestors=function(e,t=!1){let n=!1;return function(e,t=!1){let n=[],r=t?e:x(e);for(;r!==null;)n.push(r),r=x(r);return n}(e,t).filter(e=>{if(n)return!1;let t=getComputedStyle(e);return n=t.position===`fixed`,t.overflow!==`visible`})}(this._hostElement,e),this._scrollerController=new h(this,this._clippingAncestors[0]),this._schedule(this._updateLayout),this._observeAndListen(),this._connected=!0}_observeAndListen(){this._mutationObserver.observe(this._hostElement,{childList:!0}),this._hostElementRO.observe(this._hostElement),this._scrollEventListeners.push(window),window.addEventListener(`scroll`,this,this._scrollEventListenerOptions),this._clippingAncestors.forEach(e=>{e.addEventListener(`scroll`,this,this._scrollEventListenerOptions),this._scrollEventListeners.push(e),this._hostElementRO.observe(e)}),this._hostElementRO.observe(this._scrollerController.element),this._children.forEach(e=>this._childrenRO.observe(e)),this._scrollEventListeners.forEach(e=>e.addEventListener(`scroll`,this,this._scrollEventListenerOptions))}disconnected(){this._scrollEventListeners.forEach(e=>e.removeEventListener(`scroll`,this,this._scrollEventListenerOptions)),this._scrollEventListeners=[],this._clippingAncestors=[],this._scrollerController?.detach(this),this._scrollerController=null,this._mutationObserver?.disconnect(),this._mutationObserver=null,this._hostElementRO?.disconnect(),this._hostElementRO=null,this._childrenRO?.disconnect(),this._childrenRO=null,this._rejectLayoutCompletePromise(`disconnected`),this._connected=!1}_applyVirtualizerStyles(){let e=this._hostElement.style;e.display=e.display||`block`,e.position=e.position||`relative`,e.contain=e.contain||`size layout`,this._isScroller&&(e.overflow=e.overflow||`auto`,e.minHeight=e.minHeight||`150px`)}_getSizer(){let e=this._hostElement;if(!this._sizer){let t=e.querySelector(`[${v}]`);t||(t=document.createElement(`div`),t.setAttribute(v,``),e.appendChild(t)),Object.assign(t.style,{position:`absolute`,margin:`-2px 0 0 0`,padding:0,visibility:`hidden`,fontSize:`2px`}),t.textContent=` `,t.setAttribute(v,``),this._sizer=t}return this._sizer}async updateLayoutConfig(e){await this._layoutInitialized;let t=e.type||p;if(typeof t==`function`&&this._layout instanceof t){let t={...e};return delete t.type,this._layout.config=t,!0}return!1}async _initLayout(e){let t,n;if(typeof e.type==`function`){n=e.type;let r={...e};delete r.type,t=r}else t=e;n===void 0&&(p=n=(await Promise.resolve().then(()=>require(`./flow-Dn9AZktE.cjs`))).FlowLayout),this._layout=new n(e=>this._handleLayoutMessage(e),t),this._layout.measureChildren&&typeof this._layout.updateItemSizes==`function`&&(typeof this._layout.measureChildren==`function`&&(this._measureChildOverride=this._layout.measureChildren),this._measureCallback=this._layout.updateItemSizes.bind(this._layout)),this._layout.listenForChildLoadEvents&&this._hostElement.addEventListener(`load`,this._loadListener,!0),this._schedule(this._updateLayout)}startBenchmarking(){this._benchmarkStart===null&&(this._benchmarkStart=window.performance.now())}stopBenchmarking(){if(this._benchmarkStart!==null){let e=window.performance.now(),t=e-this._benchmarkStart,n=performance.getEntriesByName(`uv-virtualizing`,`measure`).filter(t=>t.startTime>=this._benchmarkStart&&t.startTime<e).reduce((e,t)=>e+t.duration,0);return this._benchmarkStart=null,{timeElapsed:t,virtualizationTime:n}}return null}_measureChildren(){let e={},t=this._children,n=this._measureChildOverride||this._measureChild;for(let r=0;r<t.length;r++){let i=t[r],a=this._first+r;(this._itemsChanged||this._toBeMeasured.has(i))&&(e[a]=n.call(this,i,this._items[a]))}this._childMeasurements=e,this._schedule(this._updateLayout),this._toBeMeasured.clear()}_measureChild(e){let{width:t,height:n}=e.getBoundingClientRect();return Object.assign({width:t,height:n},function(e){let t=window.getComputedStyle(e);return{marginTop:b(t.marginTop),marginRight:b(t.marginRight),marginBottom:b(t.marginBottom),marginLeft:b(t.marginLeft)}}(e))}async _schedule(e){this._scheduled.has(e)||(this._scheduled.add(e),await Promise.resolve(),this._scheduled.delete(e),e.call(this))}async _updateDOM(e){this._scrollSize=e.scrollSize,this._adjustRange(e.range),this._childrenPos=e.childPositions,this._scrollError=e.scrollError||null;let{_rangeChanged:t,_itemsChanged:n}=this;this._visibilityChanged&&=(this._notifyVisibility(),!1),(t||n)&&(this._notifyRange(),this._rangeChanged=!1),this._finishDOMUpdate()}_finishDOMUpdate(){this._connected&&(this._children.forEach(e=>this._childrenRO.observe(e)),this._checkScrollIntoViewTarget(this._childrenPos),this._positionChildren(this._childrenPos),this._sizeHostElement(this._scrollSize),this._correctScrollError(),this._benchmarkStart&&`mark`in window.performance&&window.performance.mark(`uv-end`))}_updateLayout(){this._layout&&this._connected&&(this._layout.items=this._items,this._updateView(),this._childMeasurements!==null&&(this._measureCallback&&this._measureCallback(this._childMeasurements),this._childMeasurements=null),this._layout.reflowIfNeeded(),this._benchmarkStart&&`mark`in window.performance&&window.performance.mark(`uv-end`))}_handleScrollEvent(){if(this._benchmarkStart&&`mark`in window.performance){try{window.performance.measure(`uv-virtualizing`,`uv-start`,`uv-end`)}catch{}window.performance.mark(`uv-start`)}!1===this._scrollerController.correctingScrollError&&this._layout?.unpin(),this._schedule(this._updateLayout)}handleEvent(e){e.type===`scroll`&&(e.currentTarget===window||this._clippingAncestors.includes(e.currentTarget))&&this._handleScrollEvent()}_handleLayoutMessage(e){e.type===`stateChanged`?this._updateDOM(e):e.type===`visibilityChanged`?(this._firstVisible=e.firstVisible,this._lastVisible=e.lastVisible,this._notifyVisibility()):e.type===`unpinned`&&this._hostElement.dispatchEvent(new f)}get _children(){let e=[],t=this._hostElement.firstElementChild;for(;t;)t.hasAttribute(v)||e.push(t),t=t.nextElementSibling;return e}_updateView(){let e=this._hostElement,t=this._scrollerController?.element,n=this._layout;if(e&&t&&n){let r,i,a,o,s=e.getBoundingClientRect();r=0,i=0,a=window.innerHeight,o=window.innerWidth;let c=this._clippingAncestors.map(e=>e.getBoundingClientRect());c.unshift(s);for(let e of c)r=Math.max(r,e.top),i=Math.max(i,e.left),a=Math.min(a,e.bottom),o=Math.min(o,e.right);let l=t.getBoundingClientRect(),u={left:s.left-l.left,top:s.top-l.top},d={width:t.scrollWidth,height:t.scrollHeight},f=r-s.top+e.scrollTop,p=i-s.left+e.scrollLeft,m=Math.max(0,a-r);n.viewportSize={width:Math.max(0,o-i),height:m},n.viewportScroll={top:f,left:p},n.totalScrollSize=d,n.offsetWithinScroller=u}}_sizeHostElement(e){let t=82e5,n=e&&e.width!==null?Math.min(t,e.width):0,r=e&&e.height!==null?Math.min(t,e.height):0;if(this._isScroller)this._getSizer().style.transform=`translate(${n}px, ${r}px)`;else{let e=this._hostElement.style;e.minWidth=n?`${n}px`:`100%`,e.minHeight=r?`${r}px`:`100%`}}_positionChildren(e){e&&e.forEach(({top:e,left:t,width:n,height:r,xOffset:i,yOffset:a},o)=>{let s=this._children[o-this._first];s&&(s.style.position=`absolute`,s.style.boxSizing=`border-box`,s.style.transform=`translate(${t}px, ${e}px)`,n!==void 0&&(s.style.width=n+`px`),r!==void 0&&(s.style.height=r+`px`),s.style.left=i===void 0?null:i+`px`,s.style.top=a===void 0?null:a+`px`)})}async _adjustRange(e){let{_first:t,_last:n,_firstVisible:r,_lastVisible:i}=this;this._first=e.first,this._last=e.last,this._firstVisible=e.firstVisible,this._lastVisible=e.lastVisible,this._rangeChanged=this._rangeChanged||this._first!==t||this._last!==n,this._visibilityChanged=this._visibilityChanged||this._firstVisible!==r||this._lastVisible!==i}_correctScrollError(){if(this._scrollError){let{scrollTop:e,scrollLeft:t}=this._scrollerController,{top:n,left:r}=this._scrollError;this._scrollError=null,this._scrollerController.correctScrollError({top:e-n,left:t-r})}}element(e){return e===1/0&&(e=this._items.length-1),this._items?.[e]===void 0?void 0:{scrollIntoView:(t={})=>this._scrollElementIntoView({...t,index:e})}}_scrollElementIntoView(e){if(e.index>=this._first&&e.index<=this._last)this._children[e.index-this._first].scrollIntoView(e);else if(e.index=Math.min(e.index,this._items.length-1),e.behavior===`smooth`){let t=this._layout.getScrollIntoViewCoordinates(e),{behavior:n}=e;this._updateScrollIntoViewCoordinates=this._scrollerController.managedScrollTo(Object.assign(t,{behavior:n}),()=>this._layout.getScrollIntoViewCoordinates(e),()=>this._scrollIntoViewTarget=null),this._scrollIntoViewTarget=e}else this._layout.pin=e}_checkScrollIntoViewTarget(e){let{index:t}=this._scrollIntoViewTarget||{};t&&e?.has(t)&&this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget))}_notifyRange(){this._hostElement.dispatchEvent(new u({first:this._first,last:this._last}))}_notifyVisibility(){this._hostElement.dispatchEvent(new d({first:this._firstVisible,last:this._lastVisible}))}get layoutComplete(){return this._layoutCompletePromise||=new Promise((e,t)=>{this._layoutCompleteResolver=e,this._layoutCompleteRejecter=t}),this._layoutCompletePromise}_rejectLayoutCompletePromise(e){this._layoutCompleteRejecter!==null&&this._layoutCompleteRejecter(e),this._resetLayoutCompleteState()}_scheduleLayoutComplete(){this._layoutCompletePromise&&this._pendingLayoutComplete===null&&(this._pendingLayoutComplete=requestAnimationFrame(()=>requestAnimationFrame(()=>this._resolveLayoutCompletePromise())))}_resolveLayoutCompletePromise(){this._layoutCompleteResolver!==null&&this._layoutCompleteResolver(),this._resetLayoutCompleteState()}_resetLayoutCompleteState(){this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null}_hostElementSizeChanged(){this._schedule(this._updateLayout)}_childLoaded(){}_childrenSizeChanged(e){if(this._layout?.measureChildren){for(let t of e)this._toBeMeasured.set(t.target,t.contentRect);this._measureChildren()}this._scheduleLayoutComplete(),this._itemsChanged=!1,this._rangeChanged=!1}};function b(e){let t=e?parseFloat(e):NaN;return Number.isNaN(t)?0:t}function x(e){if(e.assignedSlot!==null)return e.assignedSlot;if(e.parentElement!==null)return e.parentElement;let t=e.parentNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host||null}var S=e=>e,C=(e,t)=>i.html`${t}: ${JSON.stringify(e,null,2)}`,w=class extends o.AsyncDirective{constructor(e){if(super(e),this._virtualizer=null,this._first=0,this._last=-1,this._renderItem=(e,t)=>C(e,t+this._first),this._keyFunction=(e,t)=>S(e,this._first),this._items=[],e.type!==s.PartType.CHILD)throw Error(`The virtualize directive can only be used in child expressions`)}render(e){e&&this._setFunctions(e);let t=[];if(this._first>=0&&this._last>=this._first)for(let e=this._first;e<=this._last;e++)t.push(this._items[e]);return(0,a.repeat)(t,this._keyFunction,this._renderItem)}update(e,[t]){this._setFunctions(t);let n=this._items!==t.items;return this._items=t.items||[],this._virtualizer?this._updateVirtualizerConfig(e,t):this._initialize(e,t),n?i.noChange:this.render()}async _updateVirtualizerConfig(e,t){if(!await this._virtualizer.updateLayoutConfig(t.layout||{})){let n=e.parentNode;this._makeVirtualizer(n,t)}this._virtualizer.items=this._items}_setFunctions(e){let{renderItem:t,keyFunction:n}=e;t&&(this._renderItem=(e,n)=>t(e,n+this._first)),n&&(this._keyFunction=(e,t)=>n(e,t+this._first))}_makeVirtualizer(e,t){this._virtualizer&&this._virtualizer.disconnected();let{layout:n,scroller:r,items:i}=t;this._virtualizer=new y({hostElement:e,layout:n,scroller:r}),this._virtualizer.items=i,this._virtualizer.connected()}_initialize(e,t){let n=e.parentNode;n&&n.nodeType===1&&(n.addEventListener(`rangeChanged`,e=>{this._first=e.first,this._last=e.last,this.setValue(this.render())}),this._makeVirtualizer(n,t))}disconnected(){this._virtualizer?.disconnected()}reconnected(){this._virtualizer?.connected()}},T=(0,s.directive)(w),E=class extends i.LitElement{constructor(){super(...arguments),this.items=[],this.renderItem=C,this.keyFunction=S,this.layout={},this.scroller=!1}createRenderRoot(){return this}render(){let{items:e,renderItem:t,keyFunction:n,layout:r,scroller:a}=this;return i.html`${T({items:e,renderItem:t,keyFunction:n,layout:r,scroller:a})}`}element(e){return this[_]?.element(e)}get layoutComplete(){return this[_]?.layoutComplete}scrollToIndex(e,t=`start`){this.element(e)?.scrollIntoView({block:t})}};n.t([(0,c.property)({attribute:!1})],E.prototype,`items`,void 0),n.t([(0,c.property)()],E.prototype,`renderItem`,void 0),n.t([(0,c.property)()],E.prototype,`keyFunction`,void 0),n.t([(0,c.property)({attribute:!1})],E.prototype,`layout`,void 0),n.t([(0,c.property)({reflect:!0,type:Boolean})],E.prototype,`scroller`,void 0),customElements.define(`lit-virtualizer`,E);var D=class extends t.t(){constructor(){super(),this.columns=[],this.data=[],this.keyField=`id`,this.cols=`1fr`,this.sortable=!1,this.sortColumn=null,this.sortDirection=null,this.filteredData=[],this.filteredData=this.data}willUpdate(e){(e.has(`data`)||e.has(`sortColumn`)||e.has(`sortDirection`))&&this.processData()}isDate(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}processData(){let e=[...this.data];if(this.sortable&&this.sortColumn&&this.sortDirection){let t=this.columns.find(e=>e.key===this.sortColumn);e.sort((e,n)=>{let r,i;if(t&&t.value?(r=t.value(e),i=t.value(n)):(r=e[this.sortColumn],i=n[this.sortColumn]),r==null)return this.sortDirection===`asc`?1:-1;if(i==null)return this.sortDirection===`asc`?-1:1;if(typeof r==`number`&&typeof i==`number`)return this.sortDirection===`asc`?r-i:i-r;let a=typeof r==`string`&&!isNaN(Number(r)),o=typeof i==`string`&&!isNaN(Number(i));if(a&&o){let e=parseFloat(r),t=parseFloat(i);return this.sortDirection===`asc`?e-t:t-e}if(this.isDate(r)&&this.isDate(i))return this.sortDirection===`asc`?r.getTime()-i.getTime():i.getTime()-r.getTime();let s=String(r),c=String(i);return this.sortDirection===`asc`?s.localeCompare(c):c.localeCompare(s)})}this.filteredData=e}toggleSort(e){if(!e.key||!1===e.sortable)return;let t=e.key;t===this.sortColumn?this.sortDirection===`asc`?this.sortDirection=`desc`:this.sortDirection===`desc`?this.sortDirection=null:this.sortDirection=`asc`:(this.sortColumn=t,this.sortDirection=`asc`),this.dispatchEvent(new CustomEvent(`sort-change`,{detail:{column:this.sortColumn,direction:this.sortDirection},bubbles:!0,composed:!0}))}renderSortIndicator(e){return this.sortable&&!1!==e.sortable&&e.key&&e.key===this.sortColumn?i.html`
|
|
19
|
+
`}};e.t([(0,r.property)({type:Array,attribute:!1})],l.prototype,`columns`,void 0),e.t([(0,r.property)({type:Object,attribute:!1})],l.prototype,`item`,void 0),e.t([(0,r.property)({type:String})],l.prototype,`cols`,void 0),l=e.t([(0,r.customElement)(`schmancy-table-row`)],l);var u=class e extends Event{constructor(t){super(e.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}};u.eventName=`rangeChanged`;var d=class e extends Event{constructor(t){super(e.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}};d.eventName=`visibilityChanged`;var f=class e extends Event{constructor(){super(e.eventName,{bubbles:!1})}};f.eventName=`unpinned`;var p,m=class{constructor(e){this._element=null;let t=e??window;this._node=t,e&&(this._element=e)}get element(){return this._element||document.scrollingElement||document.documentElement}get scrollTop(){return this.element.scrollTop||window.scrollY}get scrollLeft(){return this.element.scrollLeft||window.scrollX}get scrollHeight(){return this.element.scrollHeight}get scrollWidth(){return this.element.scrollWidth}get viewportHeight(){return this._element?this._element.getBoundingClientRect().height:window.innerHeight}get viewportWidth(){return this._element?this._element.getBoundingClientRect().width:window.innerWidth}get maxScrollTop(){return this.scrollHeight-this.viewportHeight}get maxScrollLeft(){return this.scrollWidth-this.viewportWidth}},h=class extends m{constructor(e,t){super(t),this._clients=new Set,this._retarget=null,this._end=null,this.i=null,this.correctingScrollError=!1,this._checkForArrival=this._checkForArrival.bind(this),this._updateManagedScrollTo=this._updateManagedScrollTo.bind(this),this.scrollTo=this.scrollTo.bind(this),this.scrollBy=this.scrollBy.bind(this);let n=this._node;this._originalScrollTo=n.scrollTo,this._originalScrollBy=n.scrollBy,this._originalScroll=n.scroll,this._attach(e)}get _destination(){return this.i}get scrolling(){return this._destination!==null}scrollTo(e,t){let n=typeof e==`number`&&typeof t==`number`?{left:e,top:t}:e;this._scrollTo(n)}scrollBy(e,t){let n=typeof e==`number`&&typeof t==`number`?{left:e,top:t}:e;n.top!==void 0&&(n.top+=this.scrollTop),n.left!==void 0&&(n.left+=this.scrollLeft),this._scrollTo(n)}_nativeScrollTo(e){this._originalScrollTo.bind(this._element||window)(e)}_scrollTo(e,t=null,n=null){this._end!==null&&this._end(),e.behavior===`smooth`?(this._setDestination(e),this._retarget=t,this._end=n):this._resetScrollState(),this._nativeScrollTo(e)}_setDestination(e){let{top:t,left:n}=e;return t=t===void 0?void 0:Math.max(0,Math.min(t,this.maxScrollTop)),n=n===void 0?void 0:Math.max(0,Math.min(n,this.maxScrollLeft)),(this._destination===null||n!==this._destination.left||t!==this._destination.top)&&(this.i={top:t,left:n,behavior:`smooth`},!0)}_resetScrollState(){this.i=null,this._retarget=null,this._end=null}_updateManagedScrollTo(e){this._destination&&this._setDestination(e)&&this._nativeScrollTo(this._destination)}managedScrollTo(e,t,n){return this._scrollTo(e,t,n),this._updateManagedScrollTo}correctScrollError(e){this.correctingScrollError=!0,requestAnimationFrame(()=>requestAnimationFrame(()=>this.correctingScrollError=!1)),this._nativeScrollTo(e),this._retarget&&this._setDestination(this._retarget()),this._destination&&this._nativeScrollTo(this._destination)}_checkForArrival(){if(this._destination!==null){let{scrollTop:e,scrollLeft:t}=this,{top:n,left:r}=this._destination;n=Math.min(n||0,this.maxScrollTop),r=Math.min(r||0,this.maxScrollLeft);let i=Math.abs(n-e),a=Math.abs(r-t);i<1&&a<1&&(this._end&&this._end(),this._resetScrollState())}}detach(e){return this._clients.delete(e),this._clients.size===0&&(this._node.scrollTo=this._originalScrollTo,this._node.scrollBy=this._originalScrollBy,this._node.scroll=this._originalScroll,this._node.removeEventListener(`scroll`,this._checkForArrival)),null}_attach(e){this._clients.add(e),this._clients.size===1&&(this._node.scrollTo=this.scrollTo,this._node.scrollBy=this.scrollBy,this._node.scroll=this.scrollTo,this._node.addEventListener(`scroll`,this._checkForArrival))}},g=typeof window<`u`?window.ResizeObserver:void 0,_=Symbol(`virtualizerRef`),v=`virtualizer-sizer`,y=class{constructor(e){if(this._benchmarkStart=null,this._layout=null,this._clippingAncestors=[],this._scrollSize=null,this._scrollError=null,this._childrenPos=null,this._childMeasurements=null,this._toBeMeasured=new Map,this._rangeChanged=!0,this._itemsChanged=!0,this._visibilityChanged=!0,this._scrollerController=null,this._isScroller=!1,this._sizer=null,this._hostElementRO=null,this._childrenRO=null,this._mutationObserver=null,this._scrollEventListeners=[],this._scrollEventListenerOptions={passive:!0},this._loadListener=this._childLoaded.bind(this),this._scrollIntoViewTarget=null,this._updateScrollIntoViewCoordinates=null,this._items=[],this._first=-1,this._last=-1,this._firstVisible=-1,this._lastVisible=-1,this._scheduled=new WeakSet,this._measureCallback=null,this._measureChildOverride=null,this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null,this._layoutInitialized=null,this._connected=!1,!e)throw Error(`Virtualizer constructor requires a configuration object`);if(!e.hostElement)throw Error(`Virtualizer configuration requires the "hostElement" property`);this._init(e)}set items(e){Array.isArray(e)&&e!==this._items&&(this._itemsChanged=!0,this._items=e,this._schedule(this._updateLayout))}_init(e){this._isScroller=!!e.scroller,this._initHostElement(e);let t=e.layout||{};this._layoutInitialized=this._initLayout(t)}_initObservers(){this._mutationObserver=new MutationObserver(this._finishDOMUpdate.bind(this)),this._hostElementRO=new g(()=>this._hostElementSizeChanged()),this._childrenRO=new g(this._childrenSizeChanged.bind(this))}_initHostElement(e){let t=this._hostElement=e.hostElement;this._applyVirtualizerStyles(),t[_]=this}connected(){this._initObservers();let e=this._isScroller;this._clippingAncestors=function(e,t=!1){let n=!1;return function(e,t=!1){let n=[],r=t?e:x(e);for(;r!==null;)n.push(r),r=x(r);return n}(e,t).filter(e=>{if(n)return!1;let t=getComputedStyle(e);return n=t.position===`fixed`,t.overflow!==`visible`})}(this._hostElement,e),this._scrollerController=new h(this,this._clippingAncestors[0]),this._schedule(this._updateLayout),this._observeAndListen(),this._connected=!0}_observeAndListen(){this._mutationObserver.observe(this._hostElement,{childList:!0}),this._hostElementRO.observe(this._hostElement),this._scrollEventListeners.push(window),window.addEventListener(`scroll`,this,this._scrollEventListenerOptions),this._clippingAncestors.forEach(e=>{e.addEventListener(`scroll`,this,this._scrollEventListenerOptions),this._scrollEventListeners.push(e),this._hostElementRO.observe(e)}),this._hostElementRO.observe(this._scrollerController.element),this._children.forEach(e=>this._childrenRO.observe(e)),this._scrollEventListeners.forEach(e=>e.addEventListener(`scroll`,this,this._scrollEventListenerOptions))}disconnected(){this._scrollEventListeners.forEach(e=>e.removeEventListener(`scroll`,this,this._scrollEventListenerOptions)),this._scrollEventListeners=[],this._clippingAncestors=[],this._scrollerController?.detach(this),this._scrollerController=null,this._mutationObserver?.disconnect(),this._mutationObserver=null,this._hostElementRO?.disconnect(),this._hostElementRO=null,this._childrenRO?.disconnect(),this._childrenRO=null,this._rejectLayoutCompletePromise(`disconnected`),this._connected=!1}_applyVirtualizerStyles(){let e=this._hostElement.style;e.display=e.display||`block`,e.position=e.position||`relative`,e.contain=e.contain||`size layout`,this._isScroller&&(e.overflow=e.overflow||`auto`,e.minHeight=e.minHeight||`150px`)}_getSizer(){let e=this._hostElement;if(!this._sizer){let t=e.querySelector(`[${v}]`);t||(t=document.createElement(`div`),t.setAttribute(v,``),e.appendChild(t)),Object.assign(t.style,{position:`absolute`,margin:`-2px 0 0 0`,padding:0,visibility:`hidden`,fontSize:`2px`}),t.textContent=` `,t.setAttribute(v,``),this._sizer=t}return this._sizer}async updateLayoutConfig(e){await this._layoutInitialized;let t=e.type||p;if(typeof t==`function`&&this._layout instanceof t){let t={...e};return delete t.type,this._layout.config=t,!0}return!1}async _initLayout(e){let t,n;if(typeof e.type==`function`){n=e.type;let r={...e};delete r.type,t=r}else t=e;n===void 0&&(p=n=(await Promise.resolve().then(()=>require(`./flow-ClAJ6Qby.cjs`))).FlowLayout),this._layout=new n(e=>this._handleLayoutMessage(e),t),this._layout.measureChildren&&typeof this._layout.updateItemSizes==`function`&&(typeof this._layout.measureChildren==`function`&&(this._measureChildOverride=this._layout.measureChildren),this._measureCallback=this._layout.updateItemSizes.bind(this._layout)),this._layout.listenForChildLoadEvents&&this._hostElement.addEventListener(`load`,this._loadListener,!0),this._schedule(this._updateLayout)}startBenchmarking(){this._benchmarkStart===null&&(this._benchmarkStart=window.performance.now())}stopBenchmarking(){if(this._benchmarkStart!==null){let e=window.performance.now(),t=e-this._benchmarkStart,n=performance.getEntriesByName(`uv-virtualizing`,`measure`).filter(t=>t.startTime>=this._benchmarkStart&&t.startTime<e).reduce((e,t)=>e+t.duration,0);return this._benchmarkStart=null,{timeElapsed:t,virtualizationTime:n}}return null}_measureChildren(){let e={},t=this._children,n=this._measureChildOverride||this._measureChild;for(let r=0;r<t.length;r++){let i=t[r],a=this._first+r;(this._itemsChanged||this._toBeMeasured.has(i))&&(e[a]=n.call(this,i,this._items[a]))}this._childMeasurements=e,this._schedule(this._updateLayout),this._toBeMeasured.clear()}_measureChild(e){let{width:t,height:n}=e.getBoundingClientRect();return Object.assign({width:t,height:n},function(e){let t=window.getComputedStyle(e);return{marginTop:b(t.marginTop),marginRight:b(t.marginRight),marginBottom:b(t.marginBottom),marginLeft:b(t.marginLeft)}}(e))}async _schedule(e){this._scheduled.has(e)||(this._scheduled.add(e),await Promise.resolve(),this._scheduled.delete(e),e.call(this))}async _updateDOM(e){this._scrollSize=e.scrollSize,this._adjustRange(e.range),this._childrenPos=e.childPositions,this._scrollError=e.scrollError||null;let{_rangeChanged:t,_itemsChanged:n}=this;this._visibilityChanged&&=(this._notifyVisibility(),!1),(t||n)&&(this._notifyRange(),this._rangeChanged=!1),this._finishDOMUpdate()}_finishDOMUpdate(){this._connected&&(this._children.forEach(e=>this._childrenRO.observe(e)),this._checkScrollIntoViewTarget(this._childrenPos),this._positionChildren(this._childrenPos),this._sizeHostElement(this._scrollSize),this._correctScrollError(),this._benchmarkStart&&`mark`in window.performance&&window.performance.mark(`uv-end`))}_updateLayout(){this._layout&&this._connected&&(this._layout.items=this._items,this._updateView(),this._childMeasurements!==null&&(this._measureCallback&&this._measureCallback(this._childMeasurements),this._childMeasurements=null),this._layout.reflowIfNeeded(),this._benchmarkStart&&`mark`in window.performance&&window.performance.mark(`uv-end`))}_handleScrollEvent(){if(this._benchmarkStart&&`mark`in window.performance){try{window.performance.measure(`uv-virtualizing`,`uv-start`,`uv-end`)}catch{}window.performance.mark(`uv-start`)}!1===this._scrollerController.correctingScrollError&&this._layout?.unpin(),this._schedule(this._updateLayout)}handleEvent(e){e.type===`scroll`&&(e.currentTarget===window||this._clippingAncestors.includes(e.currentTarget))&&this._handleScrollEvent()}_handleLayoutMessage(e){e.type===`stateChanged`?this._updateDOM(e):e.type===`visibilityChanged`?(this._firstVisible=e.firstVisible,this._lastVisible=e.lastVisible,this._notifyVisibility()):e.type===`unpinned`&&this._hostElement.dispatchEvent(new f)}get _children(){let e=[],t=this._hostElement.firstElementChild;for(;t;)t.hasAttribute(v)||e.push(t),t=t.nextElementSibling;return e}_updateView(){let e=this._hostElement,t=this._scrollerController?.element,n=this._layout;if(e&&t&&n){let r,i,a,o,s=e.getBoundingClientRect();r=0,i=0,a=window.innerHeight,o=window.innerWidth;let c=this._clippingAncestors.map(e=>e.getBoundingClientRect());c.unshift(s);for(let e of c)r=Math.max(r,e.top),i=Math.max(i,e.left),a=Math.min(a,e.bottom),o=Math.min(o,e.right);let l=t.getBoundingClientRect(),u={left:s.left-l.left,top:s.top-l.top},d={width:t.scrollWidth,height:t.scrollHeight},f=r-s.top+e.scrollTop,p=i-s.left+e.scrollLeft,m=Math.max(0,a-r);n.viewportSize={width:Math.max(0,o-i),height:m},n.viewportScroll={top:f,left:p},n.totalScrollSize=d,n.offsetWithinScroller=u}}_sizeHostElement(e){let t=82e5,n=e&&e.width!==null?Math.min(t,e.width):0,r=e&&e.height!==null?Math.min(t,e.height):0;if(this._isScroller)this._getSizer().style.transform=`translate(${n}px, ${r}px)`;else{let e=this._hostElement.style;e.minWidth=n?`${n}px`:`100%`,e.minHeight=r?`${r}px`:`100%`}}_positionChildren(e){e&&e.forEach(({top:e,left:t,width:n,height:r,xOffset:i,yOffset:a},o)=>{let s=this._children[o-this._first];s&&(s.style.position=`absolute`,s.style.boxSizing=`border-box`,s.style.transform=`translate(${t}px, ${e}px)`,n!==void 0&&(s.style.width=n+`px`),r!==void 0&&(s.style.height=r+`px`),s.style.left=i===void 0?null:i+`px`,s.style.top=a===void 0?null:a+`px`)})}async _adjustRange(e){let{_first:t,_last:n,_firstVisible:r,_lastVisible:i}=this;this._first=e.first,this._last=e.last,this._firstVisible=e.firstVisible,this._lastVisible=e.lastVisible,this._rangeChanged=this._rangeChanged||this._first!==t||this._last!==n,this._visibilityChanged=this._visibilityChanged||this._firstVisible!==r||this._lastVisible!==i}_correctScrollError(){if(this._scrollError){let{scrollTop:e,scrollLeft:t}=this._scrollerController,{top:n,left:r}=this._scrollError;this._scrollError=null,this._scrollerController.correctScrollError({top:e-n,left:t-r})}}element(e){return e===1/0&&(e=this._items.length-1),this._items?.[e]===void 0?void 0:{scrollIntoView:(t={})=>this._scrollElementIntoView({...t,index:e})}}_scrollElementIntoView(e){if(e.index>=this._first&&e.index<=this._last)this._children[e.index-this._first].scrollIntoView(e);else if(e.index=Math.min(e.index,this._items.length-1),e.behavior===`smooth`){let t=this._layout.getScrollIntoViewCoordinates(e),{behavior:n}=e;this._updateScrollIntoViewCoordinates=this._scrollerController.managedScrollTo(Object.assign(t,{behavior:n}),()=>this._layout.getScrollIntoViewCoordinates(e),()=>this._scrollIntoViewTarget=null),this._scrollIntoViewTarget=e}else this._layout.pin=e}_checkScrollIntoViewTarget(e){let{index:t}=this._scrollIntoViewTarget||{};t&&e?.has(t)&&this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget))}_notifyRange(){this._hostElement.dispatchEvent(new u({first:this._first,last:this._last}))}_notifyVisibility(){this._hostElement.dispatchEvent(new d({first:this._firstVisible,last:this._lastVisible}))}get layoutComplete(){return this._layoutCompletePromise||=new Promise((e,t)=>{this._layoutCompleteResolver=e,this._layoutCompleteRejecter=t}),this._layoutCompletePromise}_rejectLayoutCompletePromise(e){this._layoutCompleteRejecter!==null&&this._layoutCompleteRejecter(e),this._resetLayoutCompleteState()}_scheduleLayoutComplete(){this._layoutCompletePromise&&this._pendingLayoutComplete===null&&(this._pendingLayoutComplete=requestAnimationFrame(()=>requestAnimationFrame(()=>this._resolveLayoutCompletePromise())))}_resolveLayoutCompletePromise(){this._layoutCompleteResolver!==null&&this._layoutCompleteResolver(),this._resetLayoutCompleteState()}_resetLayoutCompleteState(){this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null}_hostElementSizeChanged(){this._schedule(this._updateLayout)}_childLoaded(){}_childrenSizeChanged(e){if(this._layout?.measureChildren){for(let t of e)this._toBeMeasured.set(t.target,t.contentRect);this._measureChildren()}this._scheduleLayoutComplete(),this._itemsChanged=!1,this._rangeChanged=!1}};function b(e){let t=e?parseFloat(e):NaN;return Number.isNaN(t)?0:t}function x(e){if(e.assignedSlot!==null)return e.assignedSlot;if(e.parentElement!==null)return e.parentElement;let t=e.parentNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host||null}var S=e=>e,C=(e,t)=>i.html`${t}: ${JSON.stringify(e,null,2)}`,w=class extends o.AsyncDirective{constructor(e){if(super(e),this._virtualizer=null,this._first=0,this._last=-1,this._renderItem=(e,t)=>C(e,t+this._first),this._keyFunction=(e,t)=>S(e,this._first),this._items=[],e.type!==s.PartType.CHILD)throw Error(`The virtualize directive can only be used in child expressions`)}render(e){e&&this._setFunctions(e);let t=[];if(this._first>=0&&this._last>=this._first)for(let e=this._first;e<=this._last;e++)t.push(this._items[e]);return(0,a.repeat)(t,this._keyFunction,this._renderItem)}update(e,[t]){this._setFunctions(t);let n=this._items!==t.items;return this._items=t.items||[],this._virtualizer?this._updateVirtualizerConfig(e,t):this._initialize(e,t),n?i.noChange:this.render()}async _updateVirtualizerConfig(e,t){if(!await this._virtualizer.updateLayoutConfig(t.layout||{})){let n=e.parentNode;this._makeVirtualizer(n,t)}this._virtualizer.items=this._items}_setFunctions(e){let{renderItem:t,keyFunction:n}=e;t&&(this._renderItem=(e,n)=>t(e,n+this._first)),n&&(this._keyFunction=(e,t)=>n(e,t+this._first))}_makeVirtualizer(e,t){this._virtualizer&&this._virtualizer.disconnected();let{layout:n,scroller:r,items:i}=t;this._virtualizer=new y({hostElement:e,layout:n,scroller:r}),this._virtualizer.items=i,this._virtualizer.connected()}_initialize(e,t){let n=e.parentNode;n&&n.nodeType===1&&(n.addEventListener(`rangeChanged`,e=>{this._first=e.first,this._last=e.last,this.setValue(this.render())}),this._makeVirtualizer(n,t))}disconnected(){this._virtualizer?.disconnected()}reconnected(){this._virtualizer?.connected()}},T=(0,s.directive)(w),E=class extends i.LitElement{constructor(){super(...arguments),this.items=[],this.renderItem=C,this.keyFunction=S,this.layout={},this.scroller=!1}createRenderRoot(){return this}render(){let{items:e,renderItem:t,keyFunction:n,layout:r,scroller:a}=this;return i.html`${T({items:e,renderItem:t,keyFunction:n,layout:r,scroller:a})}`}element(e){return this[_]?.element(e)}get layoutComplete(){return this[_]?.layoutComplete}scrollToIndex(e,t=`start`){this.element(e)?.scrollIntoView({block:t})}};n.t([(0,c.property)({attribute:!1})],E.prototype,`items`,void 0),n.t([(0,c.property)()],E.prototype,`renderItem`,void 0),n.t([(0,c.property)()],E.prototype,`keyFunction`,void 0),n.t([(0,c.property)({attribute:!1})],E.prototype,`layout`,void 0),n.t([(0,c.property)({reflect:!0,type:Boolean})],E.prototype,`scroller`,void 0),customElements.define(`lit-virtualizer`,E);var D=class extends t.t(){constructor(){super(),this.columns=[],this.data=[],this.keyField=`id`,this.cols=`1fr`,this.sortable=!1,this.sortColumn=null,this.sortDirection=null,this.filteredData=[],this.filteredData=this.data}willUpdate(e){(e.has(`data`)||e.has(`sortColumn`)||e.has(`sortDirection`))&&this.processData()}isDate(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Date]`}processData(){let e=[...this.data];if(this.sortable&&this.sortColumn&&this.sortDirection){let t=this.columns.find(e=>e.key===this.sortColumn);e.sort((e,n)=>{let r,i;if(t&&t.value?(r=t.value(e),i=t.value(n)):(r=e[this.sortColumn],i=n[this.sortColumn]),r==null)return this.sortDirection===`asc`?1:-1;if(i==null)return this.sortDirection===`asc`?-1:1;if(typeof r==`number`&&typeof i==`number`)return this.sortDirection===`asc`?r-i:i-r;let a=typeof r==`string`&&!isNaN(Number(r)),o=typeof i==`string`&&!isNaN(Number(i));if(a&&o){let e=parseFloat(r),t=parseFloat(i);return this.sortDirection===`asc`?e-t:t-e}if(this.isDate(r)&&this.isDate(i))return this.sortDirection===`asc`?r.getTime()-i.getTime():i.getTime()-r.getTime();let s=String(r),c=String(i);return this.sortDirection===`asc`?s.localeCompare(c):c.localeCompare(s)})}this.filteredData=e}toggleSort(e){if(!e.key||!1===e.sortable)return;let t=e.key;t===this.sortColumn?this.sortDirection===`asc`?this.sortDirection=`desc`:this.sortDirection===`desc`?this.sortDirection=null:this.sortDirection=`asc`:(this.sortColumn=t,this.sortDirection=`asc`),this.dispatchEvent(new CustomEvent(`sort-change`,{detail:{column:this.sortColumn,direction:this.sortDirection},bubbles:!0,composed:!0}))}renderSortIndicator(e){return this.sortable&&!1!==e.sortable&&e.key&&e.key===this.sortColumn?i.html`
|
|
20
20
|
<span class="ml-1">
|
|
21
21
|
${this.sortDirection===`asc`?i.html`<schmancy-icon size="16px">arrow_upward</schmancy-icon>`:this.sortDirection===`desc`?i.html`<schmancy-icon size="16px">arrow_downward</schmancy-icon>`:null}
|
|
22
22
|
</span>
|