@lmvz-ds/components 0.37.0 → 0.39.0
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/CHANGELOG.md +21 -0
- package/README.md +12 -20
- package/cjs/{aria-validation-controller-Do0uEK4t.js → aria-validation-controller-DKNXjnQr.js} +1 -1
- package/cjs/checkmark-CuKDPAcx.js +5 -0
- package/cjs/{directional-focus-controller-8Xd_7MHT.js → directional-focus-controller-DDnhfX5w.js} +15 -5
- package/cjs/{index-BgvZ4y-3.js → index-DWy4nuyZ.js} +41 -0
- package/cjs/index.cjs.js +3 -195
- package/cjs/lmvz-action-list.cjs.entry.js +4 -4
- package/cjs/lmvz-action.cjs.entry.js +1 -1
- package/cjs/lmvz-button-group.cjs.entry.js +5 -1
- package/cjs/lmvz-button_2.cjs.entry.js +3 -3
- package/cjs/lmvz-card.cjs.entry.js +2 -2
- package/cjs/lmvz-checkbox.cjs.entry.js +4 -5
- package/cjs/lmvz-chip.cjs.entry.js +5 -5
- package/cjs/lmvz-components.cjs.js +2 -2
- package/cjs/lmvz-datepicker.cjs.entry.js +1 -1
- package/cjs/lmvz-header_2.cjs.entry.js +5 -5
- package/cjs/lmvz-input.cjs.entry.js +4 -7
- package/cjs/lmvz-link.cjs.entry.js +1 -1
- package/cjs/lmvz-menuitem.cjs.entry.js +2 -2
- package/cjs/lmvz-message.cjs.entry.js +4 -2
- package/cjs/lmvz-modal.cjs.entry.js +2 -2
- package/cjs/lmvz-popover.cjs.entry.js +5 -14
- package/cjs/lmvz-radio.cjs.entry.js +2 -2
- package/cjs/lmvz-select.cjs.entry.js +110 -16
- package/cjs/lmvz-snackbar.cjs.entry.js +1 -1
- package/cjs/lmvz-spinner.cjs.entry.js +1 -1
- package/cjs/lmvz-tab.cjs.entry.js +1 -1
- package/cjs/lmvz-tabs.cjs.entry.js +9 -3
- package/cjs/lmvz-toggle.cjs.entry.js +2 -2
- package/cjs/loader.cjs.js +2 -2
- package/cjs/public-DTgpEs1_.js +206 -0
- package/collection/components/lmvz-action-list/lmvz-action-list.css +119 -116
- package/collection/components/lmvz-button/lmvz-button.css +109 -106
- package/collection/components/lmvz-card/lmvz-card.css +106 -103
- package/collection/components/lmvz-chip/lmvz-chip.css +1 -1
- package/collection/components/lmvz-chip/lmvz-chip.js +2 -2
- package/collection/components/lmvz-header/lmvz-header.js +2 -2
- package/collection/components/lmvz-input/lmvz-input.js +2 -5
- package/collection/components/lmvz-message/lmvz-message.css +1 -1
- package/collection/components/lmvz-popover/lmvz-popover.css +1 -1
- package/collection/components/lmvz-popover/lmvz-popover.js +2 -11
- package/collection/components/lmvz-select/lmvz-select.css +102 -53
- package/collection/components/lmvz-select/lmvz-select.js +151 -41
- package/collection/components/lmvz-snackbar/public.js +3 -0
- package/collection/components/lmvz-tabs/lmvz-tabs.js +7 -1
- package/collection/utils/aria/directional-focus-controller.js +16 -7
- package/collection/utils/icons/public.js +3 -0
- package/components/index.js +1 -1
- package/components/lmvz-action-list.js +1 -1
- package/components/lmvz-action.js +1 -1
- package/components/lmvz-button-group.js +1 -1
- package/components/lmvz-button.js +1 -1
- package/components/lmvz-card.js +1 -1
- package/components/lmvz-checkbox.js +1 -1
- package/components/lmvz-chip.js +1 -1
- package/components/lmvz-datepicker.js +1 -1
- package/components/lmvz-header.js +1 -1
- package/components/lmvz-icon.js +1 -1
- package/components/lmvz-input.js +1 -1
- package/components/lmvz-link.js +1 -1
- package/components/lmvz-menuitem.js +1 -1
- package/components/lmvz-message.js +1 -1
- package/components/lmvz-modal.js +1 -1
- package/components/lmvz-popover.js +1 -1
- package/components/lmvz-radio.js +1 -1
- package/components/lmvz-select.js +1 -1
- package/components/lmvz-snackbar.js +1 -1
- package/components/lmvz-spinner.js +1 -1
- package/components/lmvz-tab.js +1 -1
- package/components/lmvz-tabs.js +1 -1
- package/components/lmvz-toggle.js +1 -1
- package/components/{p-BLMXiDE0.js → p--mU29mrX.js} +1 -1
- package/components/p-BPa0FHVO.js +1 -0
- package/components/p-Bc5MM0zh.js +1 -0
- package/components/p-CyDgnpOB.js +1 -0
- package/components/p-DAikapVO.js +1 -0
- package/components/{p-C-pRMuMh.js → p-DIyiticz.js} +1 -1
- package/components/{p-BhALzK62.js → p-DJLdOjL4.js} +1 -1
- package/components/p-DSDBThqb.js +1 -0
- package/components/{p-diOze8wI.js → p-DXFoXTse.js} +1 -1
- package/components/p-DXhP6UeF.js +1 -0
- package/components/p-D_mff3n7.js +1 -0
- package/components/p-DbBJxuBm.js +1 -0
- package/components/p-DsTgD0_a.js +1 -0
- package/components/p-DyQ1GbaN.js +1 -0
- package/components/p-niXjuPxe.js +1 -0
- package/components/{p-BAj4FkUt.js → p-sACbyedu.js} +1 -1
- package/esm/{aria-validation-controller-Cp6pofER.js → aria-validation-controller-Dwv7n0rk.js} +1 -1
- package/esm/checkmark-DAikapVO.js +3 -0
- package/esm/{directional-focus-controller-QukTTWBE.js → directional-focus-controller-CJ0yNC00.js} +15 -5
- package/esm/{index-BOXP1Vx0.js → index-DVab4vzV.js} +41 -1
- package/esm/index.js +1 -197
- package/esm/lmvz-action-list.entry.js +4 -4
- package/esm/lmvz-action.entry.js +1 -1
- package/esm/lmvz-button-group.entry.js +5 -1
- package/esm/lmvz-button_2.entry.js +3 -3
- package/esm/lmvz-card.entry.js +2 -2
- package/esm/lmvz-checkbox.entry.js +3 -4
- package/esm/lmvz-chip.entry.js +5 -5
- package/esm/lmvz-components.js +3 -3
- package/esm/lmvz-datepicker.entry.js +1 -1
- package/esm/lmvz-header_2.entry.js +5 -5
- package/esm/lmvz-input.entry.js +4 -7
- package/esm/lmvz-link.entry.js +1 -1
- package/esm/lmvz-menuitem.entry.js +2 -2
- package/esm/lmvz-message.entry.js +4 -2
- package/esm/lmvz-modal.entry.js +2 -2
- package/esm/lmvz-popover.entry.js +5 -14
- package/esm/lmvz-radio.entry.js +2 -2
- package/esm/lmvz-select.entry.js +110 -16
- package/esm/lmvz-snackbar.entry.js +1 -1
- package/esm/lmvz-spinner.entry.js +1 -1
- package/esm/lmvz-tab.entry.js +1 -1
- package/esm/lmvz-tabs.entry.js +9 -3
- package/esm/lmvz-toggle.entry.js +2 -2
- package/esm/loader.js +3 -3
- package/esm/public-m6pRVUeP.js +204 -0
- package/hydrate/index.js +394 -50
- package/hydrate/index.mjs +394 -50
- package/lmvz-components/index.esm.js +1 -1
- package/lmvz-components/lmvz-components.esm.js +1 -1
- package/lmvz-components/p-1ba1af8d.entry.js +1 -0
- package/lmvz-components/{p-0f65d001.entry.js → p-27e8b4fa.entry.js} +1 -1
- package/lmvz-components/p-304c7554.entry.js +1 -0
- package/lmvz-components/p-316dd61a.entry.js +1 -0
- package/lmvz-components/{p-3d5867df.entry.js → p-335b3867.entry.js} +1 -1
- package/lmvz-components/{p-7872a6b4.entry.js → p-3b7203a3.entry.js} +1 -1
- package/lmvz-components/p-41286514.entry.js +1 -0
- package/lmvz-components/p-6aae1df9.entry.js +1 -0
- package/lmvz-components/p-743616c0.entry.js +1 -0
- package/lmvz-components/{p-26dd9684.entry.js → p-773e9d95.entry.js} +1 -1
- package/lmvz-components/{p-a6fe9b61.entry.js → p-7cbfbc88.entry.js} +1 -1
- package/lmvz-components/p-87f21ac9.entry.js +1 -0
- package/lmvz-components/{p-a680a7b2.entry.js → p-8ba6ec19.entry.js} +1 -1
- package/lmvz-components/p-93b781ca.entry.js +1 -0
- package/lmvz-components/p-BPa0FHVO.js +1 -0
- package/lmvz-components/p-BlkpdeQI.js +1 -0
- package/lmvz-components/p-DAikapVO.js +1 -0
- package/lmvz-components/p-DVab4vzV.js +2 -0
- package/lmvz-components/{p-BeY96W7m.js → p-Wi9d2-w9.js} +1 -1
- package/lmvz-components/p-c884c76e.entry.js +1 -0
- package/lmvz-components/{p-eabbf901.entry.js → p-d73bb7fd.entry.js} +1 -1
- package/lmvz-components/{p-137b1fe1.entry.js → p-e35f49a1.entry.js} +1 -1
- package/lmvz-components/p-ebad823c.entry.js +1 -0
- package/lmvz-components/p-edec4d09.entry.js +1 -0
- package/lmvz-components/{p-88661c50.entry.js → p-efd9d50e.entry.js} +1 -1
- package/lmvz-components/p-f24f5207.entry.js +1 -0
- package/lmvz-components/p-f911691c.entry.js +1 -0
- package/manifest.json +72 -39
- package/package.json +2 -1
- package/types/components/lmvz-input/lmvz-input.d.ts +0 -2
- package/types/components/lmvz-popover/lmvz-popover.d.ts +0 -1
- package/types/components/lmvz-select/lmvz-select.d.ts +12 -3
- package/types/components/lmvz-snackbar/public.d.ts +6 -0
- package/types/components/lmvz-tabs/lmvz-tabs.d.ts +1 -0
- package/types/components.d.ts +39 -19
- package/types/index.d.ts +5 -0
- package/types/utils/aria/directional-focus-controller.d.ts +9 -7
- package/types/utils/icons/public.d.ts +6 -0
- package/components/p--FDdvoIg.js +0 -1
- package/components/p-BApwCp0R.js +0 -1
- package/components/p-BPYBmylI.js +0 -1
- package/components/p-C5gRiLRR.js +0 -1
- package/components/p-CrQCHVKL.js +0 -1
- package/components/p-DiRcp9V6.js +0 -1
- package/components/p-DqdrUt_G.js +0 -1
- package/lmvz-components/p-00489151.entry.js +0 -1
- package/lmvz-components/p-0af0211a.entry.js +0 -1
- package/lmvz-components/p-398b5cf4.entry.js +0 -1
- package/lmvz-components/p-40716828.entry.js +0 -1
- package/lmvz-components/p-492adf21.entry.js +0 -1
- package/lmvz-components/p-4deaa010.entry.js +0 -1
- package/lmvz-components/p-4fa6e72f.entry.js +0 -1
- package/lmvz-components/p-57a366e6.entry.js +0 -1
- package/lmvz-components/p-70f1e31a.entry.js +0 -1
- package/lmvz-components/p-91eb71bb.entry.js +0 -1
- package/lmvz-components/p-BOXP1Vx0.js +0 -2
- package/lmvz-components/p-CHxiS3ja.js +0 -1
- package/lmvz-components/p-e14058e1.entry.js +0 -1
- package/lmvz-components/p-f3f0ed49.entry.js +0 -1
- package/lmvz-components/p-f516a949.entry.js +0 -1
package/components/lmvz-input.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{L as
|
|
1
|
+
import{L as o,d as s}from"./p-DSDBThqb.js";const p=o,r=s;export{p as LmvzInput,r as defineCustomElement}
|
package/components/lmvz-link.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as t,h as r,d as i,t as a}from"./p-
|
|
1
|
+
import{p as e,H as t,h as r,d as i,t as a}from"./p-DbBJxuBm.js";import{t as o}from"./p-DjvtQE7c.js";import{l as n}from"./p-0ctLESas.js";import{d as l}from"./p-DXhP6UeF.js";const s=o("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTQgMTJIMjBNMTQgMThMMjAgMTJMMTQgNiIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K"),c=o("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxIDlWM0gxNU0yMSAzTDEwIDE0TTE4IDEzVjE5QzE4IDE5LjUzMDQgMTcuNzg5MyAyMC4wMzkxIDE3LjQxNDIgMjAuNDE0MkMxNy4wMzkxIDIwLjc4OTMgMTYuNTMwNCAyMSAxNiAyMUg1QzQuNDY5NTcgMjEgMy45NjA4NiAyMC43ODkzIDMuNTg1NzkgMjAuNDE0MkMzLjIxMDcxIDIwLjAzOTEgMyAxOS41MzA0IDMgMTlWOEMzIDcuNDY5NTcgMy4yMTA3MSA2Ljk2MDg2IDMuNTg1NzkgNi41ODU3OUMzLjk2MDg2IDYuMjEwNzEgNC40Njk1NyA2IDUgNkgxMSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K"),m=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}href="";target;rel;type="internal";externalLabel="(öffnet in neuem Tab)";normalizeType(e){const t=n.includes(e)?e:"internal";t!==this.type&&(this.type=t)}componentWillLoad(){this.normalizeType(this.type)}computeHref(){if(!this.href)return;const e=this.href.trim();return/^javascript:/i.test(e)||/^data:/i.test(e)?void 0:this.href}computeRel(){if("_blank"!==this.target)return this.rel||void 0;const e=new Set((this.rel??"").split(/\s+/).map((e=>e.trim())).filter(Boolean));return e.add("noopener"),e.add("noreferrer"),[...e].join(" ")}render(){const e=this.computeRel(),t="external"===this.type?c:s,a="_blank"===this.target;return r(i,{key:"ee4f5c107243ff858f9189840e56a0525fdac782"},r("a",{key:"28229373bec276579c2bb7b9fcf254872baae9e8",href:this.computeHref(),target:this.target,rel:e},r("slot",{key:"7c58f3f7501e457ee4a35d2a9f2bf80ed0c33fb0"}),r("lmvz-icon",{key:"14784743d148d57e7c83da0f92ba96e4bb3a30a1","aria-hidden":"true",icon:t}),a&&r("span",{key:"f72adde57b462282d1a8313e2eb06cf6b68c2697",class:"sr-only"},this.externalLabel)))}static get delegatesFocus(){return!0}static get watchers(){return{type:[{normalizeType:0}]}}static get style(){return":host{display:inline}a{display:inline-flex;align-items:center;gap:var(--lmvz-dimension-6-4, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem));padding-inline:var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)) var(--lmvz-dimension-8-4, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem));padding-block:var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem));border-radius:var(--lmvz-semantic-border-radius-round, 999px);color:var(--lmvz-semantic-color-int-on-tertiary, #000000);font:var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router);text-decoration:underline;transition:background-color 0.15s ease, color 0.15s ease}a:hover{background-color:var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0);color:var(--lmvz-semantic-color-int-on-tertiary-hover, #000000)}a:active{background-color:var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0);color:var(--lmvz-semantic-color-int-on-tertiary-active, #000000)}a:focus-visible{outline:var(--lmvz-ds-outline, 1px solid #0e7ab4);outline-offset:var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:rect(0 0 0 0);white-space:nowrap;border-width:0}"}},[785,"lmvz-link",{href:[513],target:[513],rel:[1],type:[1537],externalLabel:[1,"external-label"]},void 0,{type:[{normalizeType:0}]}]),d=m,g=function(){"undefined"!=typeof customElements&&["lmvz-link","lmvz-icon"].forEach((e=>{switch(e){case"lmvz-link":customElements.get(a(e))||customElements.define(a(e),m);break;case"lmvz-icon":customElements.get(a(e))||l()}}))};export{d as LmvzLink,g as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as m,d as o,t as r}from"./p-
|
|
1
|
+
import{p as e,c as t,h as m,d as o,t as r}from"./p-DbBJxuBm.js";import{A as n}from"./p-sACbyedu.js";import{E as i}from"./p--mU29mrX.js";import{R as a}from"./p-DXFoXTse.js";const l=e(class extends a{get el(){return this}get validationEl(){return this.el}validationSlot;get role(){return"menuitem"}get ti(){return 0}lmvzActivation;constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzActivation=t(this,"lmvzActivation",7),this.addController(new n(this,{validationTiming:"slot"})),this.addController(new i(this))}render(){return m(o,{key:"cd5814d6bcfa9b0f5b1b2f5108ce0fc65722b909"},m("slot",{key:"b503b252c95bc09ca4b888d4576badd3976292e9",ref:e=>this.validationSlot=e}))}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-menuitem-h { display: inline-flex; flex-direction: row; align-items: center; justify-content: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); border-radius: var(--lmvz-semantic-border-radius-lg, 14px); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); padding: var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)) var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); cursor: pointer; --lmvz-menuitem-color: var(--lmvz-semantic-color-int-on-tertiary, #000000); --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); background: var(--lmvz-menuitem-background); color: var(--lmvz-menuitem-color); } .sc-lmvz-menuitem-h:hover { --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } .sc-lmvz-menuitem-h:active { --lmvz-menuitem-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } .sc-lmvz-menuitem-h:focus-visible { z-index: 1; } [aria-expanded='true'].sc-lmvz-menuitem-h { --lmvz-menuitem-background: var(--lmvz-semantic-color-status-active, #f6fbfe); --lmvz-menuitem-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); }"}},[774,"lmvz-menuitem",{role:[2561],ti:[2562,"tabindex"]}]),s=l,c=function(){"undefined"!=typeof customElements&&["lmvz-menuitem"].forEach((e=>{"lmvz-menuitem"===e&&(customElements.get(r(e))||customElements.define(r(e),l))}))};export{s as LmvzMenuitem,c as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as t,c as s,h as a,d as i,t as o}from"./p-
|
|
1
|
+
import{p as e,H as t,c as s,h as a,d as i,t as o}from"./p-DbBJxuBm.js";import{t as l}from"./p-DjvtQE7c.js";import{i as n}from"./p-BDonpCG8.js";import"./p-BPa0FHVO.js";import{c as r}from"./p-BSV3KDWl.js";import{i as m,w as c}from"./p-DsT_K3_I.js";import{d}from"./p-DsTgD0_a.js";import{d as v}from"./p-DXhP6UeF.js";const h=l(m),f=l(c),p=l(r),b={neutral:h,warning:f},u=new Set(["ADDRESS","ARTICLE","ASIDE","BLOCKQUOTE","CAPTION","COLGROUP","DD","DETAILS","DIALOG","DIV","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","FORM","H1","H2","H3","H4","H5","H6","HEADER","HGROUP","HR","LI","MAIN","MENU","NAV","OL","P","PRE","SECTION","TABLE","TBODY","TD","TH","THEAD","TFOOT","TR","UL"]),g=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.lmvzDismiss=s(this,"lmvzDismiss",6),this.lmvzAction=s(this,"lmvzAction",6)}messageSlot;warnedTags=new Set;type="neutral";live="off";leadingIcon=!0;dismissible=!1;closeLabel="Schliessen";actionLabel;lmvzDismiss;lmvzAction;componentDidLoad(){this.checkSlotContent()}handleDismissClick=()=>{this.lmvzDismiss.emit()};handleActionClick=()=>{this.lmvzAction.emit()};handleSlotChange=()=>{this.checkSlotContent()};checkSlotContent(){if(!n())return;this.warnedTags.clear();const e=this.messageSlot?.assignedElements({flatten:!0})??[];for(const t of e){const e=t.tagName;u.has(e)&&!this.warnedTags.has(e)&&(console.warn(`[lmvz-message] Block-level element <${e.toLowerCase()}> is not allowed in the message slot. Only inline content is permitted.`),this.warnedTags.add(e))}}render(){return a(i,{key:"1c45cf27f057535ffff047548a3d6681dd487d3c",role:"assertive"===this.live?"alert":"polite"===this.live?"status":"note"},this.leadingIcon&&a("span",{key:"8efab69f677dfaa06d333aa304479e17e6d60ad6",class:"leading-icon","aria-hidden":"true",innerHTML:b[this.type]}),a("span",{key:"2e88e9053444e2aae23341b7cba923c7c440ff64",class:"message"},a("slot",{key:"d6b0ee6c95846a1de97e0e6ed707001c29c78c92",ref:e=>this.messageSlot=e,onSlotchange:this.handleSlotChange})),this.actionLabel&&a("lmvz-button",{key:"c55e38e274e98c8ac584ae16520fb0cab5e11d17",variant:"tertiary",scale:"small",onLmvzActivation:this.handleActionClick},this.actionLabel),this.dismissible&&a("lmvz-button",{key:"1ae69fefbb23cd8a219aee1d624e9d7779ae0c08",variant:"tertiary",scale:"small","aria-label":this.closeLabel,onClick:this.handleDismissClick},a("lmvz-icon",{key:"572c5b3309a1b1b9798dc6fc3f4ad11d0a354ebc","aria-hidden":"true",icon:p})))}static get style(){return":host{display:flex;flex-direction:row;align-items:flex-start;width:100%;padding:var(--lmvz-dimension-12-10, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)) var(--lmvz-dimension-14-12, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem));gap:var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));border:var(--lmvz-semantic-border-width-default, 1px) solid;border-radius:var(--lmvz-semantic-border-radius-md, 6px);font:var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router)}:host([type='neutral']){background-color:var(--lmvz-semantic-color-status-active, #f6fbfe);border-color:var(--lmvz-semantic-color-status-on-active-subtle, #7fccf5);color:var(--lmvz-semantic-color-status-on-active, #0e7ab4)}:host([type='warning']){background-color:var(--lmvz-semantic-color-status-warning, #ffeeb8);border-color:var(--lmvz-semantic-color-status-on-warning-subtle, #e6b000);color:var(--lmvz-semantic-color-status-on-warning, #614a00)}.leading-icon{flex-shrink:0;display:flex;align-items:flex-start;padding-top:2px;width:var(--lmvz-component-icon-size-md, clamp(1rem, 0.94rem + 0.26vw, 1.25rem));height:var(--lmvz-component-icon-size-md, clamp(1rem, 0.94rem + 0.26vw, 1.25rem))}.leading-icon svg{width:100%;height:100%}.message{flex:1}"}},[769,"lmvz-message",{type:[513],live:[1],leadingIcon:[4,"leading-icon"],dismissible:[4],closeLabel:[1,"close-label"],actionLabel:[1,"action-label"]}]),z=g,D=function(){"undefined"!=typeof customElements&&["lmvz-message","lmvz-button","lmvz-icon"].forEach((e=>{switch(e){case"lmvz-message":customElements.get(o(e))||customElements.define(o(e),g);break;case"lmvz-button":customElements.get(o(e))||d();break;case"lmvz-icon":customElements.get(o(e))||v()}}))};export{z as LmvzMessage,D as defineCustomElement}
|
package/components/lmvz-modal.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as o,d as i,t as s}from"./p-
|
|
1
|
+
import{p as e,c as t,h as o,d as i,t as s}from"./p-DbBJxuBm.js";import{c as a}from"./p-BSV3KDWl.js";import{t as r}from"./p-DjvtQE7c.js";import{A as l}from"./p-sACbyedu.js";import{a as n,g as d}from"./p-DJLdOjL4.js";import{R as c}from"./p-DXFoXTse.js";import{d as m}from"./p-DsTgD0_a.js";import{d as h}from"./p-niXjuPxe.js";import{d as f}from"./p-DXhP6UeF.js";const u=r(a);let p=0;const g=e(class extends c{get el(){return this}inheritedAriaAttributes={};dialogEl;dialogStateObserver;headerSlot;buttonGroupEl;closeButtonEl;previouslyFocusedElement=null;wrappedDialogShowModal;pendingCloseReturnValue;dialogTitleId="lmvz-modal-title-"+p++;hasHeader=!1;open=!1;closeLabel="Schliessen";dialogClose;dialogCancel;get dialog(){return this.dialogEl}get validationEl(){return this.dialogEl??this.el}constructor(e){super(!1),!1!==e&&this.__registerHost(),this.__attachShadow(),this.dialogClose=t(this,"close",6),this.dialogCancel=t(this,"cancel",1),this.addController(new l(this,{validationTiming:"slot"}))}handleFormDialogSubmit(e){const t=e.submitter;("dialog"===e.target.method||"dialog"===t?.getAttribute("formmethod"))&&(e.preventDefault(),this.dialogEl?.close(t?.value??""))}connectedCallback(){this.inheritedAriaAttributes=n(this.el,["role"]),Object.defineProperty(this.el,"dialog",{configurable:!0,enumerable:!0,get:()=>(this.ensureDialogShowModalCapture(),this.dialogEl)}),super.connectedCallback()}componentDidLoad(){this.handleHeaderSlotChange(),this.observeDialogState(),this.syncDialogVisibility(),super.componentDidLoad()}disconnectedCallback(){this.dialogStateObserver?.disconnect(),super.disconnectedCallback()}componentDidRender(){this.open&&this.focusPrimaryAction(),super.componentDidRender()}handleOpenChange(){this.syncDialogVisibility()}get dialogAccessibilityAttributes(){const e={...this.inheritedAriaAttributes};if(delete e["aria-label"],delete e["aria-labelledby"],this.hasHeader)return e["aria-labelledby"]=this.dialogTitleId,e;const t=this.inheritedAriaAttributes["aria-labelledby"];if("string"==typeof t)return e["aria-labelledby"]=t,e;const o=this.inheritedAriaAttributes["aria-label"];return"string"==typeof o&&(e["aria-label"]=o),e}hasAssignedContent(e){return!!e?.assignedNodes({flatten:!0}).some((e=>e.nodeType===Node.TEXT_NODE?!!e.textContent?.trim():e.nodeType===Node.ELEMENT_NODE))}observeDialogState(){this.dialogEl&&"undefined"!=typeof MutationObserver&&(this.dialogStateObserver?.disconnect(),this.dialogStateObserver=new MutationObserver((()=>{this.dialogEl&&this.dialogEl.open!==this.open&&(this.open=!!this.dialogEl.open)})),this.dialogStateObserver.observe(this.dialogEl,{attributes:!0,attributeFilter:["open"]}))}capturePreviouslyFocusedElement(){const e=this.dialogEl,t=d(document);e&&t&&!e.contains(t)&&(this.previouslyFocusedElement=t)}ensureDialogShowModalCapture(){const e=this.dialogEl;if(!e||"function"!=typeof e.showModal)return;const t=e.showModal;if(t===this.wrappedDialogShowModal)return;const o=()=>(this.capturePreviouslyFocusedElement(),t.call(e));Object.defineProperty(e,"showModal",{configurable:!0,value:o}),this.wrappedDialogShowModal=o}syncDialogVisibility(){const e=this.dialogEl;if(e)return this.open?(e.open||(this.capturePreviouslyFocusedElement(),"function"==typeof e.showModal?e.showModal():e.setAttribute("open","")),void this.focusPrimaryAction()):void(e.open&&("function"==typeof e.close?e.close():(e.removeAttribute("open"),this.handleDialogClose())))}focusPrimaryAction(){const e=this.buttonGroupEl?.primaryEnabledAction??this.closeButtonEl;e&&"undefined"!=typeof window&&window.requestAnimationFrame((()=>{this.open&&e.focus()}))}restoreFocus(){this.previouslyFocusedElement?.isConnected&&(this.previouslyFocusedElement.focus(),this.previouslyFocusedElement=null)}handleCloseButtonClick=()=>{if(!this.dialogEl)return;const e=this.dialogEl;if("function"==typeof e.requestClose)return this.pendingCloseReturnValue="close",void e.requestClose("close");"function"!=typeof this.dialogEl.close?this.handleDialogClose():this.dialogEl.close("close")};handleDialogCancel=e=>{if(e.preventDefault(),this.dialogCancel.emit().defaultPrevented)return void(this.pendingCloseReturnValue=void 0);const t=this.pendingCloseReturnValue;this.pendingCloseReturnValue=void 0,this.dialogEl?.close(t)};handleDialogClose=()=>{console.log("Dialog close handler called"),this.open&&(this.open=!1),this.restoreFocus(),this.dialogClose.emit()};handleHeaderSlotChange=()=>{this.hasHeader=this.hasAssignedContent(this.headerSlot)};render(){return o(i,{key:"9eb1aa89e4c682586d10291e2a8a2523b8fd17f7"},o("dialog",{key:"477c537328622f85759dc72a0c499d56e3d5e345",ref:e=>this.dialogEl=e,onCancel:this.handleDialogCancel,onClose:this.handleDialogClose,...this.dialogAccessibilityAttributes},o("div",{key:"b9fe9cb306938a117002e5213740ea20269080b8",class:"modal-shell"},o("header",{key:"34d0cd8078d55d98ec526843f02710044663de70",class:{header:!0,"has-title":this.hasHeader}},o("div",{key:"1408f0e0875f5e0508ad0f5682f4879a93df65df",class:"title",id:this.dialogTitleId,hidden:!this.hasHeader},o("slot",{key:"735c1757962e4f3804700a4669d0b49f2d11fb16",name:"header",ref:e=>this.headerSlot=e,onSlotchange:this.handleHeaderSlotChange})),o("lmvz-button",{key:"b0eb76cde508fb434023abdc0f764e1b809b6447",ref:e=>this.closeButtonEl=e,type:"button",class:"close-button","aria-label":this.closeLabel,onLmvzActivation:this.handleCloseButtonClick,variant:"tertiary"},o("lmvz-icon",{key:"9f978d3117a4046202c3ba1df39aa0c7afc7ee28",icon:u}))),o("div",{key:"46ffd7e7315099189c0a2499d17bdeabeb0e46e5",class:"body"},o("slot",{key:"095c3353f2ea00f6fa765ac0972ee0123f8e4154"})),o("footer",{key:"5b092b00f10acede66d0fac53f01584ecf528418",class:"actions",hidden:!this.buttonGroupEl?.hasActions},o("lmvz-button-group",{key:"ce312e1b1c3407838b8704f20393e7120d6338f9",ref:e=>this.buttonGroupEl=e},o("slot",{key:"6246782cbee1cc440cfdaf45dac36655f19c972e",name:"actions"}))))))}static get watchers(){return{open:[{handleOpenChange:0}]}}static get style(){return" @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } @layer lmvz-ds.reset { body { margin: 0; } h1, h2, h3, h4, h5, h6 { margin: 0; } *[hidden] { display: none !important; } hr { height: 0; border: none; margin: var(--lmvz-dimension-8-4, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)) 0; border-top: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-subtle, #f0f0f0); } fieldset { border: none; margin: 0; padding: 0; } legend { padding: 0; display: block; } } :host { display: contents; --lmvz-modal-shell-gap: var(--lmvz-dimension-20-16, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)); } dialog { border: none; padding: 0; background: transparent; height: 100vh; width: 100vw; contain: layout size; } dialog::backdrop { background: rgba(0, 0, 0, 0.19); background: rgb(from var(--lmvz-semantic-color-int-primary, #000000) r g b / 0.29); } .modal-shell { margin-inline: auto; top: 50%; transform: translateY(-50%); box-sizing: border-box; width: fit-content; max-height: 100%; max-width: clamp(20rem, 100%, 90vw); display: flex; flex-direction: column; gap: var(--lmvz-modal-shell-gap); padding: var(--lmvz-component-wrapper-lg-padding-y, clamp(2.25rem, 2.19rem + 0.26vw, 2.5rem)) var(--lmvz-component-wrapper-lg-padding-x, clamp(1.5rem, 1.14rem + 1.55vw, 3rem)); border-radius: var(--lmvz-component-wrapper-lg-border-radius, 18px); background: var(--lmvz-semantic-color-surface-primary, #ffffff); position: relative; .close-button { position: absolute; top: var(--lmvz-dimension-12-10, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); right: var(--lmvz-dimension-12-10, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); } } .header { display: flex; align-items: flex-start; justify-content: flex-end; gap: var(--lmvz-modal-shell-gap); } .title { min-inline-size: 0; font: var(--lmvz-typography-heading-lg, 500 clamp(1.13rem, 1.03rem + 0.39vw, 1.5rem) / 1.5 Router); } .has-title .title { flex: 1 1 auto; } .body { font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); flex: 1; overflow: scroll; } "}},[769,"lmvz-modal",{open:[1540],closeLabel:[1,"close-label"],hasHeader:[32]},[[0,"submit","handleFormDialogSubmit"]],{open:[{handleOpenChange:0}]}]),b=g,v=function(){"undefined"!=typeof customElements&&["lmvz-modal","lmvz-button","lmvz-button-group","lmvz-icon"].forEach((e=>{switch(e){case"lmvz-modal":customElements.get(s(e))||customElements.define(s(e),g);break;case"lmvz-button":customElements.get(s(e))||m();break;case"lmvz-button-group":customElements.get(s(e))||h();break;case"lmvz-icon":customElements.get(s(e))||f()}}))};export{b as LmvzModal,v as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{L as o,d as s}from"./p-
|
|
1
|
+
import{L as o,d as s}from"./p-Bc5MM0zh.js";const p=o,r=s;export{p as LmvzPopover,r as defineCustomElement}
|
package/components/lmvz-radio.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as r,h as o,d as t,t as i}from"./p-BPYBmylI.js";import{A as a}from"./p-BAj4FkUt.js";import{R as s}from"./p-diOze8wI.js";function l(e){return e.el.shadowRoot?.querySelector("input")??e.el.querySelector("input")??null}class n{hosts=[];_focusedHost=null;_focusinHandler=e=>{this.hosts.some((r=>r.el.contains(e.target)))||this.clearFocused()};register(e){if(!this.hosts.includes(e)){const r=0===this.hosts.length;this.hosts.push(e),this.sortHosts(),r&&document.addEventListener("focusin",this._focusinHandler,!0),this.refreshValidity()}}unregister(e){e===this._focusedHost&&(this._focusedHost=null),this.hosts=this.hosts.filter((r=>r!==e)),0===this.hosts.length&&document.removeEventListener("focusin",this._focusinHandler,!0),this.refreshValidity()}get sortedEnabled(){return this.hosts.filter((e=>!e.disabled))}isAnyChecked(){return this.hosts.some((e=>e.checked))}refreshValidity(){for(const e of this.hosts)e.updateValidity()}setFocused(e){this._focusedHost=e,this.updateTabindex(),e.focusInput()}clearFocused(){this._focusedHost=null,this.updateTabindex()}select(e){this._focusedHost=null;for(const r of this.hosts)r.checked=r===e;this.updateTabindex(),this.refreshValidity()}updateTabindex(){const e=this.sortedEnabled,r=this.hosts.find((e=>e.checked));let o;o=this._focusedHost&&e.includes(this._focusedHost)?this._focusedHost:r??e[0]??null;for(const e of this.hosts){const r=l(e);r&&(r.tabIndex=e===o?0:-1)}}sortHosts(){this.hosts.sort(((e,r)=>e.el.compareDocumentPosition(r.el)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1))}}class c{host;static registry=new Map;group=null;_groupKey=null;_scope=null;constructor(e){this.host=e}hostConnected(){const{group:e,key:r,scope:o}=c.acquireGroup(this.host);this._groupKey=r,this._scope=o,this.group=e,this.group.register(this.host),this.group.updateTabindex()}hostDidRender(){this.group?.updateTabindex()}hostDisconnected(){this.group&&(this.group.unregister(this.host),this.group.updateTabindex(),c.releaseGroup(this._groupKey,this._scope),this._groupKey=null,this._scope=null,this.group=null)}get sortedEnabled(){return this.group?.sortedEnabled??[]}select(e){this.group?.select(e)}isAnyChecked(){return this.group?.isAnyChecked()??!1}refreshValidity(){this.group?.refreshValidity()}setFocused(e){this.group?.setFocused(e)}clearFocused(){this.group?.clearFocused()}updateTabindex(){this.group?.updateTabindex()}static acquireGroup(e){const r=e.name;if(!r)return{group:new n,key:null,scope:null};const o=function(e){return e.closest("form")??document}(e.el),t=function(e,r){return r instanceof HTMLFormElement?(r.dataset.lmvzRadioGroupId||(r.dataset.lmvzRadioGroupId=Math.random()+""),`${e}::form::${r.dataset.lmvzRadioGroupId}`):e+"::document"}(r,o);let i=c.registry.get(t);return i||(i={group:new n,refCount:0},c.registry.set(t,i)),i.refCount++,{group:i.group,key:t,scope:o}}static releaseGroup(e,r){if(!e)return;const o=c.registry.get(e);o&&(o.refCount--,o.refCount<=0&&(c.registry.delete(e),r instanceof HTMLFormElement&&r.removeAttribute("data-lmvz-radio-group-id")))}}let d=0;const h=e(class extends s{get el(){return this}get validationEl(){return this.el}internals;nativeInput;radioId="lmvz-radio-"+d++;initialChecked=!1;radioGroupController;get helperId(){return this.helperText?this.radioId+"-helper":void 0}label;checked=!1;value="on";name;disabled=!1;required=!1;nativeError=!1;errorFromProp=!1;get error(){return this.errorFromProp||this.nativeError}set error(e){this.errorFromProp=e}helperText;form;autofocus=!1;_handlingNativeChange=!1;_handlingFormReset=!1;handleCheckedChange(e,r){this.internals.setFormValue?.(e?this.value:null),this.updateValidity(),e||!r||this._handlingNativeChange||this._handlingFormReset||this.lmvzChange.emit(!1),!e||r||this._handlingNativeChange||this._handlingFormReset||this.lmvzChange.emit(!0)}handleRequiredChange(){this.updateValidity()}handleValueChange(e){this.checked&&this.internals.setFormValue?.(e)}handleLabelChange(e){e||console.warn("[lmvz-radio] label prop is required and must not be empty")}lmvzChange;lmvzActivation;async focusInput(){this.nativeInput?.focus()}async checkValidity(){return this.internals?.checkValidity()??!0}async reportValidity(){return this.internals?.reportValidity()??!0}async getValidationMessage(){return this.internals?.validationMessage??""}constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzChange=r(this,"lmvzChange",7),this.lmvzActivation=r(this,"lmvzActivation",7),this.internals=this.attachInternals(),this.addController(new a(this,{reValidateOnPropChanges:!0})),this.radioGroupController=new c(this),this.addController(this.radioGroupController)}componentWillLoad(){this.initialChecked=this.checked,this.internals.setFormValue?.(this.checked?this.value:null),this.updateValidity(),super.componentWillLoad()}componentDidLoad(){this.updateValidity(),super.componentDidLoad()}formAssociatedCallback(){this.internals.setFormValue?.(this.checked?this.value:null)}formResetCallback(){this._handlingFormReset=!0;try{this.checked=this.initialChecked}finally{this._handlingFormReset=!1}this.updateValidity(),this.radioGroupController.refreshValidity()}formStateRestoreCallback(e){if("string"==typeof e){this._handlingFormReset=!0;try{this.checked=e===this.value}finally{this._handlingFormReset=!1}}}isAnyInGroupChecked(){return this.radioGroupController.isAnyChecked()}updateValidity(){!this.required||this.isAnyInGroupChecked()?(this.internals.setValidity?.({}),this.nativeError=!1):this.internals.setValidity?.({valueMissing:!0},"Please select an option.",this.nativeInput)}handleInvalid(){this.nativeError=!0}handleChange=e=>{this._handlingNativeChange=!0;try{this.checked=e.target.checked,this.lmvzChange.emit(this.checked),this.radioGroupController.select(this),this.lmvzActivation.emit()}finally{this._handlingNativeChange=!1}};handleKeydown(e){const{key:r}=e;if(!["ArrowDown","ArrowRight","ArrowUp","ArrowLeft","Home","End"].includes(r))return;e.preventDefault();const o=this.radioGroupController.sortedEnabled;if(0===o.length)return;const t=o.indexOf(this);if(-1===t)return;let i;i="ArrowDown"===r||"ArrowRight"===r?(t+1)%o.length:"ArrowUp"===r||"ArrowLeft"===r?(t-1+o.length)%o.length:"Home"===r?0:o.length-1;const a=o[i];a&&this.radioGroupController.setFocused(a)}retargetInnerClicks(){this.nativeInput?.click()}render(){return o(t,{key:"f1fdc1167c4e59c2524e1e545c3382ca32853788"},o("input",{key:"c1b711444475ed401766cc5827eeaec0c46b62cf",type:"radio",id:this.radioId,value:this.value,checked:this.checked,disabled:this.disabled,autoFocus:this.autofocus,"aria-required":this.required?"true":"false","aria-invalid":this.error?"true":void 0,"aria-describedby":this.helperId,ref:e=>this.nativeInput=e,onChange:this.handleChange}),o("span",{key:"b25e623269df05bdf8159e72da4df2e0bfb5d7bc",class:"circle","aria-hidden":"true"},this.checked&&o("span",{key:"93d12890c7ba0abe203c63953ea1115aee37d7a0",class:"dot"})),o("span",{key:"44dcfdc4e7ee3820624b0d02a438139f45bb8733",class:"content"},o("label",{key:"d0547cd5e79642b298da155c9937715224b52cae",htmlFor:this.radioId},this.label),o("span",{key:"a9df5dd8a775a2f7422d5bac296869f88553e33f",onClick:this.retargetInnerClicks.bind(this),"aria-live":"polite",class:"helper-text",id:this.helperId},this.helperText)))}static get formAssociated(){return!0}static get watchers(){return{checked:[{handleCheckedChange:0}],required:[{handleRequiredChange:0}],value:[{handleValueChange:0}],label:[{handleLabelChange:0}]}}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-radio-h { display: inline-block; --radio-circle-size: var(--lmvz-global-s18, 18px); --radio-dot-size: 0.5rem; --radio-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --radio-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); --radio-border-color-hover: var(--lmvz-semantic-color-border-hover, #a1a1a1); --radio-border-color-checked: var(--lmvz-semantic-color-border-active, #0f8acc); --radio-border-color-error: var(--lmvz-semantic-color-status-on-danger, #a31419); --radio-dot-color: var(--lmvz-semantic-color-border-active, #0f8acc); --radio-wrapper-bg-hover: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --radio-wrapper-bg-active: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); --radio-label-color: var(--lmvz-semantic-color-on-surface-primary, #000000); --radio-label-color-checked: var(--lmvz-semantic-color-status-on-active, #0e7ab4); --radio-helper-color: var(--lmvz-semantic-color-on-surface-secondary, #545454); --radio-easing: var(--lmvz-global-easing-default, ease); --radio-duration: 0.2s; display: flex; align-items: center; gap: var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); padding-block: var(--lmvz-dimension-8-2, clamp(0.13rem, 0.03rem + 0.39vw, 0.5rem)); padding-inline: var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); border-radius: var(--lmvz-semantic-border-radius-round, 999px); overflow: clip; cursor: pointer; background-color: transparent; position: relative; transition: background-color var(--radio-duration) var(--radio-easing); } input.sc-lmvz-radio { position: absolute; inset-block-start: var(--lmvz-dimension-8-2, clamp(0.13rem, 0.03rem + 0.39vw, 0.5rem)); inset-inline-start: var(--lmvz-dimension-10-4, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); opacity: 0; width: var(--radio-circle-size); height: var(--radio-circle-size); margin: 0; cursor: pointer; z-index: 1; } .circle.sc-lmvz-radio { width: var(--radio-circle-size); height: var(--radio-circle-size); border-radius: 50%; border: var(--lmvz-semantic-border-width-default, 1px) solid var(--radio-border-color); background-color: var(--radio-bg); pointer-events: none; flex-shrink: 0; display: flex; align-items: center; justify-content: center; box-sizing: border-box; transition: border-color var(--radio-duration) var(--radio-easing); } .dot.sc-lmvz-radio { width: var(--radio-dot-size); height: var(--radio-dot-size); border-radius: 50%; background-color: var(--radio-dot-color); } .content.sc-lmvz-radio { display: flex; flex-direction: column; overflow-wrap: break-word; min-width: 0; } label.sc-lmvz-radio { font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); color: var(--radio-label-color); cursor: pointer; transition: color var(--radio-duration) var(--radio-easing); } .helper-text.sc-lmvz-radio { display: block; font: var(--lmvz-typography-body-sm, 400 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5 Router); color: var(--radio-helper-color); margin-block-start: 2px; } .helper-text.sc-lmvz-radio:empty { display: none; } @media (hover: hover) { .sc-lmvz-radio-h:hover .circle.sc-lmvz-radio { border-color: var(--radio-border-color-hover); } .sc-lmvz-radio-h:hover { background-color: var(--radio-wrapper-bg-hover); } } .sc-lmvz-radio-h:active { background-color: var(--radio-wrapper-bg-active); } [checked].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: var(--radio-border-color-checked); } [checked].sc-lmvz-radio-h label.sc-lmvz-radio { color: var(--radio-label-color-checked); } [error].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: var(--radio-border-color-error); } [error].sc-lmvz-radio-h .helper-text.sc-lmvz-radio { color: var(--lmvz-semantic-color-status-on-danger, #a31419); } [disabled].sc-lmvz-radio-h { opacity: var(--lmvz-component-input-disabled-opacity, 40%); pointer-events: none; cursor: not-allowed; } @media (forced-colors: active) { .circle.sc-lmvz-radio { forced-color-adjust: auto; border-color: ButtonText; background-color: Field; } [checked].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: Highlight; } .dot.sc-lmvz-radio { background-color: ButtonText; } [checked].sc-lmvz-radio-h .dot.sc-lmvz-radio { background-color: HighlightText; } }.sc-lmvz-radio-h:has(:focus-visible){outline:var(--lmvz-ds-outline, 1px solid #0e7ab4);outline-offset:var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem))}@media (forced-colors: active){.sc-lmvz-radio-h:has(:focus-visible){outline-color:Highlight;box-shadow:none}}"}},[578,"lmvz-radio",{label:[1],checked:[1540],value:[1],name:[513],disabled:[516],required:[516],error:[6660],helperText:[1,"helper-text"],form:[513],autofocus:[4],nativeError:[32],focusInput:[64],checkValidity:[64],reportValidity:[64],getValidationMessage:[64]},[[0,"invalid","handleInvalid"],[0,"keydown","handleKeydown"]],{checked:[{handleCheckedChange:0}],required:[{handleRequiredChange:0}],value:[{handleValueChange:0}],label:[{handleLabelChange:0}]}]),u=h,m=function(){"undefined"!=typeof customElements&&["lmvz-radio"].forEach((e=>{"lmvz-radio"===e&&(customElements.get(i(e))||customElements.define(i(e),h))}))};export{u as LmvzRadio,m as defineCustomElement}
|
|
1
|
+
import{p as e,c as r,h as o,d as t,t as i}from"./p-DbBJxuBm.js";import{A as a}from"./p-sACbyedu.js";import{R as s}from"./p-DXFoXTse.js";function l(e){return e.el.shadowRoot?.querySelector("input")??e.el.querySelector("input")??null}class n{hosts=[];_focusedHost=null;_focusinHandler=e=>{this.hosts.some((r=>r.el.contains(e.target)))||this.clearFocused()};register(e){if(!this.hosts.includes(e)){const r=0===this.hosts.length;this.hosts.push(e),this.sortHosts(),r&&document.addEventListener("focusin",this._focusinHandler,!0),this.refreshValidity()}}unregister(e){e===this._focusedHost&&(this._focusedHost=null),this.hosts=this.hosts.filter((r=>r!==e)),0===this.hosts.length&&document.removeEventListener("focusin",this._focusinHandler,!0),this.refreshValidity()}get sortedEnabled(){return this.hosts.filter((e=>!e.disabled))}isAnyChecked(){return this.hosts.some((e=>e.checked))}refreshValidity(){for(const e of this.hosts)e.updateValidity()}setFocused(e){this._focusedHost=e,this.updateTabindex(),e.focusInput()}clearFocused(){this._focusedHost=null,this.updateTabindex()}select(e){this._focusedHost=null;for(const r of this.hosts)r.checked=r===e;this.updateTabindex(),this.refreshValidity()}updateTabindex(){const e=this.sortedEnabled,r=this.hosts.find((e=>e.checked));let o;o=this._focusedHost&&e.includes(this._focusedHost)?this._focusedHost:r??e[0]??null;for(const e of this.hosts){const r=l(e);r&&(r.tabIndex=e===o?0:-1)}}sortHosts(){this.hosts.sort(((e,r)=>e.el.compareDocumentPosition(r.el)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1))}}class c{host;static registry=new Map;group=null;_groupKey=null;_scope=null;constructor(e){this.host=e}hostConnected(){const{group:e,key:r,scope:o}=c.acquireGroup(this.host);this._groupKey=r,this._scope=o,this.group=e,this.group.register(this.host),this.group.updateTabindex()}hostDidRender(){this.group?.updateTabindex()}hostDisconnected(){this.group&&(this.group.unregister(this.host),this.group.updateTabindex(),c.releaseGroup(this._groupKey,this._scope),this._groupKey=null,this._scope=null,this.group=null)}get sortedEnabled(){return this.group?.sortedEnabled??[]}select(e){this.group?.select(e)}isAnyChecked(){return this.group?.isAnyChecked()??!1}refreshValidity(){this.group?.refreshValidity()}setFocused(e){this.group?.setFocused(e)}clearFocused(){this.group?.clearFocused()}updateTabindex(){this.group?.updateTabindex()}static acquireGroup(e){const r=e.name;if(!r)return{group:new n,key:null,scope:null};const o=function(e){return e.closest("form")??document}(e.el),t=function(e,r){return r instanceof HTMLFormElement?(r.dataset.lmvzRadioGroupId||(r.dataset.lmvzRadioGroupId=Math.random()+""),`${e}::form::${r.dataset.lmvzRadioGroupId}`):e+"::document"}(r,o);let i=c.registry.get(t);return i||(i={group:new n,refCount:0},c.registry.set(t,i)),i.refCount++,{group:i.group,key:t,scope:o}}static releaseGroup(e,r){if(!e)return;const o=c.registry.get(e);o&&(o.refCount--,o.refCount<=0&&(c.registry.delete(e),r instanceof HTMLFormElement&&r.removeAttribute("data-lmvz-radio-group-id")))}}let d=0;const h=e(class extends s{get el(){return this}get validationEl(){return this.el}internals;nativeInput;radioId="lmvz-radio-"+d++;initialChecked=!1;radioGroupController;get helperId(){return this.helperText?this.radioId+"-helper":void 0}label;checked=!1;value="on";name;disabled=!1;required=!1;nativeError=!1;errorFromProp=!1;get error(){return this.errorFromProp||this.nativeError}set error(e){this.errorFromProp=e}helperText;form;autofocus=!1;_handlingNativeChange=!1;_handlingFormReset=!1;handleCheckedChange(e,r){this.internals.setFormValue?.(e?this.value:null),this.updateValidity(),e||!r||this._handlingNativeChange||this._handlingFormReset||this.lmvzChange.emit(!1),!e||r||this._handlingNativeChange||this._handlingFormReset||this.lmvzChange.emit(!0)}handleRequiredChange(){this.updateValidity()}handleValueChange(e){this.checked&&this.internals.setFormValue?.(e)}handleLabelChange(e){e||console.warn("[lmvz-radio] label prop is required and must not be empty")}lmvzChange;lmvzActivation;async focusInput(){this.nativeInput?.focus()}async checkValidity(){return this.internals?.checkValidity()??!0}async reportValidity(){return this.internals?.reportValidity()??!0}async getValidationMessage(){return this.internals?.validationMessage??""}constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzChange=r(this,"lmvzChange",7),this.lmvzActivation=r(this,"lmvzActivation",7),this.internals=this.attachInternals(),this.addController(new a(this,{reValidateOnPropChanges:!0})),this.radioGroupController=new c(this),this.addController(this.radioGroupController)}componentWillLoad(){this.initialChecked=this.checked,this.internals.setFormValue?.(this.checked?this.value:null),this.updateValidity(),super.componentWillLoad()}componentDidLoad(){this.updateValidity(),super.componentDidLoad()}formAssociatedCallback(){this.internals.setFormValue?.(this.checked?this.value:null)}formResetCallback(){this._handlingFormReset=!0;try{this.checked=this.initialChecked}finally{this._handlingFormReset=!1}this.updateValidity(),this.radioGroupController.refreshValidity()}formStateRestoreCallback(e){if("string"==typeof e){this._handlingFormReset=!0;try{this.checked=e===this.value}finally{this._handlingFormReset=!1}}}isAnyInGroupChecked(){return this.radioGroupController.isAnyChecked()}updateValidity(){!this.required||this.isAnyInGroupChecked()?(this.internals.setValidity?.({}),this.nativeError=!1):this.internals.setValidity?.({valueMissing:!0},"Please select an option.",this.nativeInput)}handleInvalid(){this.nativeError=!0}handleChange=e=>{this._handlingNativeChange=!0;try{this.checked=e.target.checked,this.lmvzChange.emit(this.checked),this.radioGroupController.select(this),this.lmvzActivation.emit()}finally{this._handlingNativeChange=!1}};handleKeydown(e){const{key:r}=e;if(!["ArrowDown","ArrowRight","ArrowUp","ArrowLeft","Home","End"].includes(r))return;e.preventDefault();const o=this.radioGroupController.sortedEnabled;if(0===o.length)return;const t=o.indexOf(this);if(-1===t)return;let i;i="ArrowDown"===r||"ArrowRight"===r?(t+1)%o.length:"ArrowUp"===r||"ArrowLeft"===r?(t-1+o.length)%o.length:"Home"===r?0:o.length-1;const a=o[i];a&&this.radioGroupController.setFocused(a)}retargetInnerClicks(){this.nativeInput?.click()}render(){return o(t,{key:"f1fdc1167c4e59c2524e1e545c3382ca32853788"},o("input",{key:"c1b711444475ed401766cc5827eeaec0c46b62cf",type:"radio",id:this.radioId,value:this.value,checked:this.checked,disabled:this.disabled,autoFocus:this.autofocus,"aria-required":this.required?"true":"false","aria-invalid":this.error?"true":void 0,"aria-describedby":this.helperId,ref:e=>this.nativeInput=e,onChange:this.handleChange}),o("span",{key:"b25e623269df05bdf8159e72da4df2e0bfb5d7bc",class:"circle","aria-hidden":"true"},this.checked&&o("span",{key:"93d12890c7ba0abe203c63953ea1115aee37d7a0",class:"dot"})),o("span",{key:"44dcfdc4e7ee3820624b0d02a438139f45bb8733",class:"content"},o("label",{key:"d0547cd5e79642b298da155c9937715224b52cae",htmlFor:this.radioId},this.label),o("span",{key:"a9df5dd8a775a2f7422d5bac296869f88553e33f",onClick:this.retargetInnerClicks.bind(this),"aria-live":"polite",class:"helper-text",id:this.helperId},this.helperText)))}static get formAssociated(){return!0}static get watchers(){return{checked:[{handleCheckedChange:0}],required:[{handleRequiredChange:0}],value:[{handleValueChange:0}],label:[{handleLabelChange:0}]}}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-radio-h { display: inline-block; --radio-circle-size: var(--lmvz-global-s18, 18px); --radio-dot-size: 0.5rem; --radio-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --radio-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); --radio-border-color-hover: var(--lmvz-semantic-color-border-hover, #a1a1a1); --radio-border-color-checked: var(--lmvz-semantic-color-border-active, #0f8acc); --radio-border-color-error: var(--lmvz-semantic-color-status-on-danger, #a31419); --radio-dot-color: var(--lmvz-semantic-color-border-active, #0f8acc); --radio-wrapper-bg-hover: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --radio-wrapper-bg-active: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); --radio-label-color: var(--lmvz-semantic-color-on-surface-primary, #000000); --radio-label-color-checked: var(--lmvz-semantic-color-status-on-active, #0e7ab4); --radio-helper-color: var(--lmvz-semantic-color-on-surface-secondary, #545454); --radio-easing: var(--lmvz-global-easing-default, ease); --radio-duration: 0.2s; display: flex; align-items: center; gap: var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); padding-block: var(--lmvz-dimension-8-2, clamp(0.13rem, 0.03rem + 0.39vw, 0.5rem)); padding-inline: var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); border-radius: var(--lmvz-semantic-border-radius-round, 999px); overflow: clip; cursor: pointer; background-color: transparent; position: relative; transition: background-color var(--radio-duration) var(--radio-easing); } input.sc-lmvz-radio { position: absolute; inset-block-start: var(--lmvz-dimension-8-2, clamp(0.13rem, 0.03rem + 0.39vw, 0.5rem)); inset-inline-start: var(--lmvz-dimension-10-4, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); opacity: 0; width: var(--radio-circle-size); height: var(--radio-circle-size); margin: 0; cursor: pointer; z-index: 1; } .circle.sc-lmvz-radio { width: var(--radio-circle-size); height: var(--radio-circle-size); border-radius: 50%; border: var(--lmvz-semantic-border-width-default, 1px) solid var(--radio-border-color); background-color: var(--radio-bg); pointer-events: none; flex-shrink: 0; display: flex; align-items: center; justify-content: center; box-sizing: border-box; transition: border-color var(--radio-duration) var(--radio-easing); } .dot.sc-lmvz-radio { width: var(--radio-dot-size); height: var(--radio-dot-size); border-radius: 50%; background-color: var(--radio-dot-color); } .content.sc-lmvz-radio { display: flex; flex-direction: column; overflow-wrap: break-word; min-width: 0; } label.sc-lmvz-radio { font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); color: var(--radio-label-color); cursor: pointer; transition: color var(--radio-duration) var(--radio-easing); } .helper-text.sc-lmvz-radio { display: block; font: var(--lmvz-typography-body-sm, 400 clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem) / 1.5 Router); color: var(--radio-helper-color); margin-block-start: 2px; } .helper-text.sc-lmvz-radio:empty { display: none; } @media (hover: hover) { .sc-lmvz-radio-h:hover .circle.sc-lmvz-radio { border-color: var(--radio-border-color-hover); } .sc-lmvz-radio-h:hover { background-color: var(--radio-wrapper-bg-hover); } } .sc-lmvz-radio-h:active { background-color: var(--radio-wrapper-bg-active); } [checked].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: var(--radio-border-color-checked); } [checked].sc-lmvz-radio-h label.sc-lmvz-radio { color: var(--radio-label-color-checked); } [error].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: var(--radio-border-color-error); } [error].sc-lmvz-radio-h .helper-text.sc-lmvz-radio { color: var(--lmvz-semantic-color-status-on-danger, #a31419); } [disabled].sc-lmvz-radio-h { opacity: var(--lmvz-component-input-disabled-opacity, 40%); pointer-events: none; cursor: not-allowed; } @media (forced-colors: active) { .circle.sc-lmvz-radio { forced-color-adjust: auto; border-color: ButtonText; background-color: Field; } [checked].sc-lmvz-radio-h .circle.sc-lmvz-radio { border-color: Highlight; } .dot.sc-lmvz-radio { background-color: ButtonText; } [checked].sc-lmvz-radio-h .dot.sc-lmvz-radio { background-color: HighlightText; } }.sc-lmvz-radio-h:has(:focus-visible){outline:var(--lmvz-ds-outline, 1px solid #0e7ab4);outline-offset:var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem))}@media (forced-colors: active){.sc-lmvz-radio-h:has(:focus-visible){outline-color:Highlight;box-shadow:none}}"}},[578,"lmvz-radio",{label:[1],checked:[1540],value:[1],name:[513],disabled:[516],required:[516],error:[6660],helperText:[1,"helper-text"],form:[513],autofocus:[4],nativeError:[32],focusInput:[64],checkValidity:[64],reportValidity:[64],getValidationMessage:[64]},[[0,"invalid","handleInvalid"],[0,"keydown","handleKeydown"]],{checked:[{handleCheckedChange:0}],required:[{handleRequiredChange:0}],value:[{handleValueChange:0}],label:[{handleLabelChange:0}]}]),u=h,m=function(){"undefined"!=typeof customElements&&["lmvz-radio"].forEach((e=>{"lmvz-radio"===e&&(customElements.get(i(e))||customElements.define(i(e),h))}))};export{u as LmvzRadio,m as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as s,d as l,t as r}from"./p-BPYBmylI.js";import{A as i}from"./p-BAj4FkUt.js";import{R as a}from"./p-diOze8wI.js";import{d as o}from"./p-C5gRiLRR.js";const c={wrap:!0,typeaheadTimeoutMs:500};class n{options=[];_activeId;_selectedId;config;typeaheadBuffer="";typeaheadTimer;constructor(e={}){this.config={...c,...e}}hostDisconnected(){this.clearTypeaheadTimer()}get activeId(){return this._activeId}get activeDescendantId(){return this._activeId}get selectedId(){return this._selectedId}setOptions(e){if(this.options=e,this._activeId&&-1!==this.findEnabledIndex(this._activeId))return;const t=(this._selectedId&&-1!==this.findEnabledIndex(this._selectedId)?this._selectedId:void 0)??this.firstEnabledOption()?.id;this.setActiveId(t)}setActiveId(e){(void 0===e||this.isEnabledId(e))&&e!==this._activeId&&(this._activeId=e,this.config.onActiveChange?.(e))}setSelectedId(e){this._selectedId=e}selectOption(e){this.isEnabledId(e)&&(this._selectedId=e,this.config.onSelect?.(e))}selectActive(){this._activeId&&this.selectOption(this._activeId)}handleKeydown(e){switch(e.key){case"ArrowDown":return e.preventDefault(),this.moveActive("next"),!0;case"ArrowUp":return e.preventDefault(),this.moveActive("previous"),!0;case"Home":return e.preventDefault(),this.setActiveId(this.firstEnabledOption()?.id),!0;case"End":return e.preventDefault(),this.setActiveId(this.lastEnabledOption()?.id),!0;case"Enter":case" ":return e.preventDefault(),this.selectActive(),!0;case"Escape":return e.preventDefault(),this.config.onClose?.(),!0;default:return this.handleTypeahead(e)}}clearTypeahead(){this.typeaheadBuffer="",this.clearTypeaheadTimer()}moveActive(e){const t=this.enabledOptions();if(!t.length)return;const s=this._activeId?t.findIndex((e=>e.id===this._activeId)):-1;if(-1===s)return void this.setActiveId(("next"===e?t[0]:t[t.length-1])?.id);const l=s+("next"===e?1:-1);if(l<0||l>=t.length){if(!this.config.wrap)return;const e=(l+t.length)%t.length;this.setActiveId(t[e]?.id)}else this.setActiveId(t[l]?.id)}handleTypeahead(e){if(1!==e.key.length||e.ctrlKey||e.metaKey||e.altKey)return!1;e.preventDefault(),this.typeaheadBuffer+=e.key.toLowerCase(),this.restartTypeaheadTimer();const t=this.enabledOptions();if(!t.length)return!0;const s=this._activeId?t.findIndex((e=>e.id===this._activeId)):-1,l=[...t.slice(s+1),...t.slice(0,s+1)].find((e=>e.label.toLowerCase().startsWith(this.typeaheadBuffer)));return l&&this.setActiveId(l.id),!0}restartTypeaheadTimer(){this.clearTypeaheadTimer(),this.typeaheadTimer=setTimeout((()=>{this.typeaheadBuffer=""}),this.config.typeaheadTimeoutMs)}clearTypeaheadTimer(){void 0!==this.typeaheadTimer&&(clearTimeout(this.typeaheadTimer),this.typeaheadTimer=void 0)}enabledOptions(){return this.options.filter((e=>!e.disabled))}firstEnabledOption(){return this.enabledOptions()[0]}lastEnabledOption(){const e=this.enabledOptions();return e[e.length-1]}isEnabledId(e){return-1!==this.findEnabledIndex(e)}findEnabledIndex(e){return this.enabledOptions().findIndex((t=>t.id===e))}}let m=0;const v=e(class extends a{get el(){return this}get validationEl(){return this.el}internals;selectId="lmvz-select-"+m++;triggerId=this.selectId+"-trigger";popoverId=this.selectId+"-listbox";triggerEl;optionsSourceEl;optionsMutationObserver;initialValue;initialValueCaptured=!1;flatOptions=[];optionsById=new Map;listboxController=new n({onActiveChange:e=>{this.activeId=e},onSelect:e=>this.handleOptionSelect(e),onClose:()=>this.closePopover()});get helperId(){return this.helperText?this.selectId+"-helper":void 0}get showErrorMessage(){return this.error&&!!this.errorMessage}get errorId(){return this.selectId+"-error"}get describedBy(){const e=[];return this.helperId&&e.push(this.helperId),this.showErrorMessage&&e.push(this.errorId),e.length>0?e.join(" "):void 0}constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzChange=t(this,"lmvzChange",7),this.internals=this.attachInternals(),this.addController(new i(this)),this.addController(this.listboxController)}lmvzChange;value;label;helperText;nativeError=!1;errorFromProp=!1;get error(){return this.errorFromProp||this.nativeError}set error(e){this.errorFromProp=e}errorMessage;disabled=!1;required=!1;name;size="default";highlighted=!1;selectedLabel="";selectedId;activeId;isOpen=!1;optionGroups=[];get hasValue(){return!!this.value}componentWillLoad(){this.updateValidity(),super.componentWillLoad()}componentDidLoad(){this.handleSlotChange(),this.observeSlottedOptionMutations(),this.updateValidity(),super.componentDidLoad()}disconnectedCallback(){this.optionsMutationObserver?.disconnect(),super.disconnectedCallback()}observeSlottedOptionMutations(){"undefined"!=typeof MutationObserver&&(this.optionsMutationObserver?.disconnect(),this.optionsMutationObserver=new MutationObserver(this.handleSlotChange),this.optionsMutationObserver.observe(this.el,{attributes:!0,attributeFilter:["disabled","selected","value","label"],characterData:!0,childList:!0,subtree:!0}))}async focusTrigger(){this.triggerEl?.focus()}async blurTrigger(){this.triggerEl?.blur()}async checkValidity(){return this.internals.checkValidity?.()??!0}async reportValidity(){return this.internals.reportValidity?.()??!0}async getValidationMessage(){return this.internals.validationMessage??""}formAssociatedCallback(e){e&&this.internals.setFormValue?.(this.value??"")}formResetCallback(){this.internals.setValidity?.({}),this.value=this.initialValue,this.updateValidity()}formStateRestoreCallback(e){this.value=e}handleValueChange(e){this.applySelectionFromValue(),this.selectedId&&!this.isOpen&&this.listboxController.setActiveId(this.selectedId),this.internals.setFormValue?.(e??""),this.updateValidity()}handleRequiredChange(){this.updateValidity()}handleDisabledChange(e){e&&(this.closePopover(),this.triggerEl?.blur())}handleSlotChange=()=>{const e=this.optionsSourceEl;if(!e)return;const{flat:t,groups:s}=function(e,t){const s=[],l=[];let r,i=0;const a=(e,l=!1)=>{const r=e,a={id:`${t}-option-${i++}`,value:r.value,label:(r.textContent??"").trim(),disabled:l||r.disabled,selected:r.selected};return s.push(a),a};return Array.from(e.children).forEach((e=>{if("OPTGROUP"!==e.tagName)"OPTION"===e.tagName&&(r||(r={label:void 0,options:[]},l.push(r)),r.options.push(a(e)));else{r=void 0;const t=e,s=Array.from(t.querySelectorAll("option")).map((e=>a(e,t.disabled)));l.push({label:t.label||void 0,options:s})}})),{flat:s,groups:l}}(e,this.selectId);if(this.flatOptions=t,this.optionsById=new Map(t.map((e=>[e.id,e]))),this.optionGroups=s,!this.value){const e=t.find((e=>e.selected&&!e.disabled));e&&(this.value=e.value)}this.applySelectionFromValue(),this.listboxController.setOptions(t.map((({id:e,label:t,disabled:s})=>({id:e,label:t,disabled:s})))),this.initialValueCaptured||(this.initialValue=this.value,this.initialValueCaptured=!0)};applySelectionFromValue(){const e=this.value?this.flatOptions.find((e=>e.value===this.value)):void 0;this.selectedId=e?.id,this.selectedLabel=e?.label??"",this.listboxController.setSelectedId(e?.id)}updateValidity(){!this.required||this.value?(this.internals.setValidity?.({}),this.nativeError=!1):this.internals.setValidity?.({valueMissing:!0},"Please select a value.",this.triggerEl)}handleInvalid(){this.nativeError=!0}handleOptionSelect(e){const t=this.optionsById.get(e);if(!t)return;const s=t.value!==this.value;this.value=t.value,s&&this.lmvzChange.emit(t.value),this.closePopover()}handleOptionClick=e=>{e.disabled||this.disabled||this.listboxController.selectOption(e.id)};handleLabelClick=()=>{this.disabled||(this.triggerEl?.focus(),this.openPopover())};handleTriggerClick=()=>{this.disabled||(this.isOpen?this.closePopover():this.openPopover())};handleTriggerKeydown=e=>{this.disabled||(this.isOpen?this.listboxController.handleKeydown(e):"ArrowDown"!==e.key&&"ArrowUp"!==e.key&&"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.openPopover()))};handleTriggerBlur=()=>{this.closePopover()};handlePopoverClose=()=>{this.isOpen=!1,this.listboxController.clearTypeahead()};openPopover(){this.isOpen||this.disabled||(this.isOpen=!0)}closePopover(){this.isOpen&&(this.isOpen=!1,this.listboxController.clearTypeahead())}renderOptionGroups(){return this.optionGroups.map(((e,t)=>e.label?s("div",{role:"group","aria-label":e.label,key:"lmvz-select-group-"+t},e.options.map((e=>this.renderOption(e)))):e.options.map((e=>this.renderOption(e)))))}renderOption(e){return s("div",{id:e.id,key:e.id,role:"option",class:"lmvz-select-option","aria-selected":e.id===this.selectedId?"true":"false","aria-disabled":e.disabled?"true":void 0,"data-active":e.id===this.activeId?"true":void 0,onMouseDown:e=>e.preventDefault(),onClick:()=>this.handleOptionClick(e)},e.label)}render(){const e=this.hasValue;return s(l,{key:"0bcc303a802db20a6be6558b8add53d0fa398493","data-highlighted":this.highlighted+""},s("div",{key:"e248f8277b4786b34dfd064cb9c7b70302cf018a",class:e?"select-wrapper has-value":"select-wrapper"},s("label",{key:"1c97c830d5782cadad98fb895d70c438031d3457",htmlFor:this.triggerId,class:e?"floating-label":"assistive-label",onMouseDown:e=>e.preventDefault(),onClick:this.handleLabelClick},this.label,this.required&&e&&s("span",{key:"16157962846bffc111f5c672852f7b23e9ed2b73","aria-hidden":"true"}," *")),s("div",{key:"bc5e3e6b335723cfd9872ff955a1e8d664d4eeb8",id:this.triggerId,ref:e=>this.triggerEl=e,class:"select-trigger",role:"combobox",tabIndex:this.disabled?-1:0,"aria-haspopup":"listbox","aria-expanded":this.isOpen+"","aria-controls":this.popoverId,"aria-activedescendant":this.isOpen?this.activeId:void 0,"aria-label":e?`${this.label}, ${this.selectedLabel}`:this.label,"aria-disabled":this.disabled?"true":void 0,"aria-required":this.required?"true":"false","aria-invalid":this.error?"true":"false","aria-errormessage":this.showErrorMessage?this.errorId:void 0,"aria-describedby":this.describedBy,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeydown,onBlur:this.handleTriggerBlur},s("span",{key:"620c6108f679c8e5563c0e21d7b89d71434c01a2"},e?this.selectedLabel:this.label,this.required&&!e&&s("span",{key:"a2183941c7843bae3e9989f8e8b26be28fbbf6d7","aria-hidden":"true"}," *")),s("span",{key:"b57e14bda44dc0de5a35623a5cb203b7f570c802","aria-hidden":"true"},s("svg",{key:"71ac319e398f07f7e65fe1f73f6d2a7c08b631a8",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},s("path",{key:"80b4a978471251ee8d2cce2d74a48fad750db125",d:"M20.3334 8.66663L12.0001 17L3.66675 8.66663",stroke:"currentColor","stroke-width":"1.75","stroke-linecap":"round","stroke-linejoin":"round"})))),s("lmvz-popover",{key:"15528c9a3f1404c385f4eb865cf78ef5891dcb32",id:this.popoverId,anchor:this.triggerId,open:this.isOpen,containerRole:"listbox",autoFocus:!1,label:this.label,onLmvzClose:this.handlePopoverClose,size:"sm"},this.renderOptionGroups()),s("div",{key:"f1b833973497e6dfd2013522e067382c73baa7a1",class:"lmvz-select-native-options",hidden:!0,"aria-hidden":"true",ref:e=>this.optionsSourceEl=e},s("slot",{key:"670bf62c50cbdd965342279b99e303614771ffa1",onSlotchange:this.handleSlotChange}))),this.helperText&&s("div",{key:"849e35da09bff25896b08f275c265baa0ee12960",id:this.helperId,role:"status"},this.helperText),this.showErrorMessage&&s("div",{key:"d01c2dca8767aa815d08d895f308c42150cc3263",id:this.errorId,role:"alert"},this.errorMessage))}static get formAssociated(){return!0}static get watchers(){return{value:[{handleValueChange:0}],required:[{handleRequiredChange:0}],disabled:[{handleDisabledChange:0}]}}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-select-h { display: block; font-family: var(--lmvz-global-font-family-default, Router); --lmvz-internal-select-floating-label-top-offset: 0.375rem; --lmvz-select-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-select-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --lmvz-select-border-color: var(--lmvz-semantic-color-border-alternate, #c7c7c7); --lmvz-select-border-color-hover: var(--lmvz-semantic-color-border-hover, #a1a1a1); --lmvz-select-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-select-text-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --lmvz-select-label-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --lmvz-select-padding-x: var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-select-height: var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-xs-font-size, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); --lmvz-select-label-top-offset: calc(var(--lmvz-internal-select-floating-label-top-offset) * -1); --lmvz-select-label-minimized-padding-x: 4px; --lmvz-select-disabled-opacity: var(--lmvz-component-input-disabled-opacity, 40%); --lmvz-select-helper-color: var(--lmvz-semantic-color-on-surface-input-secondary, #545454); --lmvz-select-focus-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); --lmvz-select-error-color: var(--lmvz-semantic-color-status-on-danger, #a31419); padding-top: var(--lmvz-internal-select-floating-label-top-offset); } .select-wrapper.sc-lmvz-select { position: relative; height: var(--lmvz-select-height); } label.sc-lmvz-select { position: absolute; top: 50%; left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-label-color); line-height: normal; white-space: nowrap; pointer-events: none; z-index: 2; transform: translateY(-50%); transform-origin: left top; transition: top 0.2s ease-out, transform 0.2s ease-out, opacity 0.2s ease-out, padding 0.2s ease-out; } label.assistive-label.sc-lmvz-select { opacity: 0; padding: 0; } label.floating-label.sc-lmvz-select { top: var(--lmvz-select-label-top-offset); transform: translateY(0) scale(0.85); left: calc(var(--lmvz-select-padding-x) - 2px); background-color: var(--lmvz-select-bg); padding: 0 var(--lmvz-select-label-minimized-padding-x); opacity: 1; font-weight: 500; } label.sc-lmvz-select > span[aria-hidden='true'].sc-lmvz-select, .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child > span[aria-hidden='true'].sc-lmvz-select { color: var(--lmvz-select-error-color); margin-left: 2px; display: inline-block; line-height: 0; vertical-align: middle; } .select-trigger.sc-lmvz-select { display: flex; align-items: center; gap: var(--lmvz-select-gap); height: 100%; width: 100%; padding: 0 var(--lmvz-select-padding-x); border-radius: var(--lmvz-select-radius); background-color: var(--lmvz-select-bg); border: var(--lmvz-select-border-width) solid var(--lmvz-select-border-color); box-sizing: border-box; cursor: pointer; position: relative; z-index: 1; transition: border-color 0.15s ease; } .sc-lmvz-select-h:not([disabled] .select-wrapper.sc-lmvz-select:hover .select-trigger.sc-lmvz-select, [highlighted].sc-lmvz-select-h .select-wrapper.sc-lmvz-select:hover .select-trigger.sc-lmvz-select, [error]).sc-lmvz-select-h .select-wrapper.sc-lmvz-select:hover .select-trigger.sc-lmvz-select { border-color: var(--lmvz-select-border-color-hover); } [error].sc-lmvz-select-h .select-trigger.sc-lmvz-select { border-color: var(--lmvz-select-error-color); } [highlighted].sc-lmvz-select-h .select-trigger.sc-lmvz-select { background-color: var(--lmvz-semantic-color-status-active-alternate, #0f8acc); border-color: var(--lmvz-semantic-color-border-active, #0f8acc); color: var(--lmvz-semantic-color-status-on-active-alternate, #ffffff); } [highlighted].sc-lmvz-select-h .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { color: var(--lmvz-semantic-color-status-on-active-alternate, #ffffff); } [highlighted].sc-lmvz-select-h label.floating-label.sc-lmvz-select { background-color: var(--lmvz-semantic-color-status-active-alternate, #0f8acc); color: var(--lmvz-semantic-color-status-on-active-alternate, #ffffff); } .sc-lmvz-select-h:has(:focus-visible) .select-trigger.sc-lmvz-select { outline: var(--lmvz-ds-outline, 1px solid #0e7ab4); outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)); } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { flex: 1 0 0; font: var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); color: var(--lmvz-select-text-color); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; } .sc-lmvz-select-h:not([highlighted]) .select-wrapper.has-value.sc-lmvz-select .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { color: var(--lmvz-semantic-color-int-on-secondary-active, #000000); } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:last-child { flex-shrink: 0; display: flex; align-items: center; justify-content: center; } .select-trigger.sc-lmvz-select svg.sc-lmvz-select { width: var(--lmvz-component-icon-size-2xs, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); height: var(--lmvz-component-icon-size-2xs, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); flex-shrink: 0; } .lmvz-select-native-options.sc-lmvz-select { display: none; } [disabled].sc-lmvz-select-h .select-wrapper.sc-lmvz-select { opacity: var(--lmvz-select-disabled-opacity); pointer-events: none; cursor: not-allowed; } [role='status'].sc-lmvz-select { padding-top: var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem)); padding-left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-helper-color); line-height: normal; } [role='alert'].sc-lmvz-select { padding-top: var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem)); padding-left: var(--lmvz-select-padding-x); font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); color: var(--lmvz-select-error-color); line-height: normal; } [size='small'].sc-lmvz-select-h { --lmvz-select-height: var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)); --lmvz-select-padding-x: var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-2xs-font-size, clamp(0.5rem, 0.47rem + 0.13vw, 0.63rem)); } [size='small'].sc-lmvz-select-h .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); } [size='small'].sc-lmvz-select-h .select-trigger.sc-lmvz-select svg.sc-lmvz-select { width: var(--lmvz-component-icon-size-4xs, clamp(0.5rem, 0.47rem + 0.13vw, 0.63rem)); height: var(--lmvz-component-icon-size-4xs, clamp(0.5rem, 0.47rem + 0.13vw, 0.63rem)); } [size='large'].sc-lmvz-select-h { --lmvz-select-height: var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)); --lmvz-select-padding-x: var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); } [size='large'].sc-lmvz-select-h .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { font-size: var(--lmvz-component-body-lg-font-size, clamp(1rem, 0.97rem + 0.13vw, 1.13rem)); } [size='large'].sc-lmvz-select-h .select-trigger.sc-lmvz-select svg.sc-lmvz-select { width: var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); height: var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); } .lmvz-select-option.sc-lmvz-select { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary, #000000); display: flex; align-items: center; gap: var(--lmvz-select-gap); padding: var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); border-radius: var(--lmvz-semantic-border-radius-md, 6px); background-color: var(--lmvz-select-option-background); color: var(--lmvz-select-option-color); cursor: pointer; font: var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); transition: background-color 0.15s ease, color 0.15s ease; } .lmvz-select-option.sc-lmvz-select:not([aria-disabled='true']):hover { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-hover, #000000); } .lmvz-select-option.sc-lmvz-select:not([aria-disabled='true']):active { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-active, #000000); } .lmvz-select-option.sc-lmvz-select:focus-visible { outline: var(--lmvz-ds-outline, 1px solid #0e7ab4); outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)); position: relative; z-index: 1; } .lmvz-select-option[data-active='true'].sc-lmvz-select:not([aria-disabled='true']) { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-hover, #000000); } .lmvz-select-option[aria-selected='true'].sc-lmvz-select { --lmvz-select-option-background: var(--lmvz-semantic-color-status-active-alternate, #0f8acc); --lmvz-select-option-color: var(--lmvz-semantic-color-status-on-active-alternate, #ffffff); } .lmvz-select-option[aria-disabled='true'].sc-lmvz-select { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); }"}},[838,"lmvz-select",{value:[1025],label:[1],helperText:[1,"helper-text"],error:[6660],errorMessage:[1,"error-message"],disabled:[516],required:[516],name:[513],size:[513],highlighted:[516],nativeError:[32],selectedLabel:[32],selectedId:[32],activeId:[32],isOpen:[32],optionGroups:[32],focusTrigger:[64],blurTrigger:[64],checkValidity:[64],reportValidity:[64],getValidationMessage:[64]},[[0,"invalid","handleInvalid"]],{value:[{handleValueChange:0}],required:[{handleRequiredChange:0}],disabled:[{handleDisabledChange:0}]}]),d=v,h=function(){"undefined"!=typeof customElements&&["lmvz-select","lmvz-popover"].forEach((e=>{switch(e){case"lmvz-select":customElements.get(r(e))||customElements.define(r(e),v);break;case"lmvz-popover":customElements.get(r(e))||o()}}))};export{d as LmvzSelect,h as defineCustomElement}
|
|
1
|
+
import{p as e,c as t,h as s,F as l,d as i,t as r}from"./p-DbBJxuBm.js";import{c as o}from"./p-DAikapVO.js";import{t as a}from"./p-DjvtQE7c.js";import{A as n}from"./p-sACbyedu.js";import{R as c}from"./p-DXFoXTse.js";import{d as m}from"./p-D_mff3n7.js";import{d as v}from"./p-Bc5MM0zh.js";const d={wrap:!0,typeaheadTimeoutMs:500};class h{options=[];_activeId;_selectedId;config;typeaheadBuffer="";typeaheadTimer;constructor(e={}){this.config={...d,...e}}hostDisconnected(){this.clearTypeaheadTimer()}get activeId(){return this._activeId}get activeDescendantId(){return this._activeId}get selectedId(){return this._selectedId}setOptions(e){if(this.options=e,this._activeId&&-1!==this.findEnabledIndex(this._activeId))return;const t=(this._selectedId&&-1!==this.findEnabledIndex(this._selectedId)?this._selectedId:void 0)??this.firstEnabledOption()?.id;this.setActiveId(t)}setActiveId(e){(void 0===e||this.isEnabledId(e))&&e!==this._activeId&&(this._activeId=e,this.config.onActiveChange?.(e))}setSelectedId(e){this._selectedId=e}selectOption(e){this.isEnabledId(e)&&(this._selectedId=e,this.config.onSelect?.(e))}selectActive(){this._activeId&&this.selectOption(this._activeId)}handleKeydown(e){switch(e.key){case"ArrowDown":return e.preventDefault(),this.moveActive("next"),!0;case"ArrowUp":return e.preventDefault(),this.moveActive("previous"),!0;case"Home":return e.preventDefault(),this.setActiveId(this.firstEnabledOption()?.id),!0;case"End":return e.preventDefault(),this.setActiveId(this.lastEnabledOption()?.id),!0;case"Enter":case" ":return e.preventDefault(),this.selectActive(),!0;case"Escape":return e.preventDefault(),this.config.onClose?.(),!0;default:return this.handleTypeahead(e)}}clearTypeahead(){this.typeaheadBuffer="",this.clearTypeaheadTimer()}moveActive(e){const t=this.enabledOptions();if(!t.length)return;const s=this._activeId?t.findIndex((e=>e.id===this._activeId)):-1;if(-1===s)return void this.setActiveId(("next"===e?t[0]:t[t.length-1])?.id);const l=s+("next"===e?1:-1);if(l<0||l>=t.length){if(!this.config.wrap)return;const e=(l+t.length)%t.length;this.setActiveId(t[e]?.id)}else this.setActiveId(t[l]?.id)}handleTypeahead(e){if(1!==e.key.length||e.ctrlKey||e.metaKey||e.altKey)return!1;e.preventDefault(),this.typeaheadBuffer+=e.key.toLowerCase(),this.restartTypeaheadTimer();const t=this.enabledOptions();if(!t.length)return!0;const s=this._activeId?t.findIndex((e=>e.id===this._activeId)):-1,l=[...t.slice(s+1),...t.slice(0,s+1)].find((e=>e.label.toLowerCase().startsWith(this.typeaheadBuffer)));return l&&this.setActiveId(l.id),!0}restartTypeaheadTimer(){this.clearTypeaheadTimer(),this.typeaheadTimer=setTimeout((()=>{this.typeaheadBuffer=""}),this.config.typeaheadTimeoutMs)}clearTypeaheadTimer(){void 0!==this.typeaheadTimer&&(clearTimeout(this.typeaheadTimer),this.typeaheadTimer=void 0)}enabledOptions(){return this.options.filter((e=>!e.disabled))}firstEnabledOption(){return this.enabledOptions()[0]}lastEnabledOption(){const e=this.enabledOptions();return e[e.length-1]}isEnabledId(e){return-1!==this.findEnabledIndex(e)}findEnabledIndex(e){return this.enabledOptions().findIndex((t=>t.id===e))}}let p=0;const u=a(o),z=e(class extends c{get el(){return this}get validationEl(){return this.el}internals;selectId="lmvz-select-"+p++;triggerId=this.selectId+"-trigger";popoverId=this.selectId+"-listbox";triggerEl;optionsSourceEl;optionsMutationObserver;initialValue;initialValueCaptured=!1;initialValues;initialValuesCaptured=!1;flatOptions=[];optionsById=new Map;listboxController=new h({onActiveChange:e=>{this.activeId=e},onSelect:e=>this.handleOptionSelect(e),onClose:()=>this.closePopover()});get helperId(){return this.helperText?this.selectId+"-helper":void 0}get showErrorMessage(){return this.error&&!!this.errorMessage}get errorId(){return this.selectId+"-error"}get describedBy(){const e=[];return this.helperId&&e.push(this.helperId),this.showErrorMessage&&e.push(this.errorId),e.length>0?e.join(" "):void 0}constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzChange=t(this,"lmvzChange",7),this.internals=this.attachInternals(),this.addController(new n(this)),this.addController(this.listboxController)}lmvzChange;value;multiple=!1;values;label;helperText;nativeError=!1;errorFromProp=!1;get error(){return this.errorFromProp||this.nativeError}set error(e){this.errorFromProp=e}errorMessage;disabled=!1;required=!1;name;size="default";selectedLabel="";selectedId;activeId;isOpen=!1;optionGroups=[];get hasValue(){return this.multiple?!!(this.values&&this.values.length>0):!!this.value}get triggerAriaLabel(){if(this.multiple){const e=this.values?.length??0;return e>0?`${this.label}, ${e} selected`:this.label}return this.hasValue?`${this.label}, ${this.selectedLabel}`:this.label}get chipSize(){return"small"===this.size?"small":"default"}componentWillLoad(){this.updateValidity(),super.componentWillLoad()}componentDidLoad(){this.handleSlotChange(),this.observeSlottedOptionMutations(),this.updateValidity(),super.componentDidLoad()}disconnectedCallback(){this.optionsMutationObserver?.disconnect(),super.disconnectedCallback()}observeSlottedOptionMutations(){"undefined"!=typeof MutationObserver&&(this.optionsMutationObserver?.disconnect(),this.optionsMutationObserver=new MutationObserver(this.handleSlotChange),this.optionsMutationObserver.observe(this.el,{attributes:!0,attributeFilter:["disabled","selected","value","label"],characterData:!0,childList:!0,subtree:!0}))}async focusTrigger(){this.triggerEl?.focus()}async blurTrigger(){this.triggerEl?.blur()}async checkValidity(){return this.internals.checkValidity?.()??!0}async reportValidity(){return this.internals.reportValidity?.()??!0}async getValidationMessage(){return this.internals.validationMessage??""}formAssociatedCallback(e){e&&this.syncFormValue()}formResetCallback(){this.internals.setValidity?.({}),this.multiple?this.values=this.initialValues?[...this.initialValues]:[]:this.value=this.initialValue,this.updateValidity()}formStateRestoreCallback(e){this.multiple?this.values=e instanceof FormData&&this.name?e.getAll(this.name).map(String):[]:this.value=e}handleValueChange(e){this.multiple||(this.applySelectionFromValue(),this.selectedId&&!this.isOpen&&this.listboxController.setActiveId(this.selectedId),this.internals.setFormValue?.(e??""),this.updateValidity())}handleValuesChange(){this.multiple&&(this.syncFormValue(),this.updateValidity())}handleRequiredChange(){this.updateValidity()}handleDisabledChange(e){e&&(this.closePopover(),this.triggerEl?.blur())}handleSlotChange=()=>{const e=this.optionsSourceEl;if(!e)return;const{flat:t,groups:s}=function(e,t){const s=[],l=[];let i,r=0;const o=(e,l=!1)=>{const i=e,o={id:`${t}-option-${r++}`,value:i.value,label:(i.textContent??"").trim(),disabled:l||i.disabled,selected:i.selected};return s.push(o),o};return Array.from(e.children).forEach((e=>{if("OPTGROUP"!==e.tagName)"OPTION"===e.tagName&&(i||(i={label:void 0,options:[]},l.push(i)),i.options.push(o(e)));else{i=void 0;const t=e,s=Array.from(t.querySelectorAll("option")).map((e=>o(e,t.disabled)));l.push({label:t.label||void 0,options:s})}})),{flat:s,groups:l}}(e,this.selectId);if(this.flatOptions=t,this.optionsById=new Map(t.map((e=>[e.id,e]))),this.optionGroups=s,this.multiple){if(!this.values){const e=t.filter((e=>e.selected&&!e.disabled)).map((e=>e.value));e.length>0&&(this.values=e)}}else{if(!this.value){const e=t.find((e=>e.selected&&!e.disabled));e&&(this.value=e.value)}this.applySelectionFromValue()}this.listboxController.setOptions(t.map((({id:e,label:t,disabled:s})=>({id:e,label:t,disabled:s})))),this.multiple?this.initialValuesCaptured||(this.initialValues=this.values?[...this.values]:[],this.initialValuesCaptured=!0):this.initialValueCaptured||(this.initialValue=this.value,this.initialValueCaptured=!0)};applySelectionFromValue(){const e=this.value?this.flatOptions.find((e=>e.value===this.value)):void 0;this.selectedId=e?.id,this.selectedLabel=e?.label??"",this.listboxController.setSelectedId(e?.id)}isOptionSelected(e){return this.multiple?(this.values??[]).includes(e.value):e.id===this.selectedId}syncFormValue(){if(this.multiple){const e=new FormData;if(this.name)for(const t of this.values??[])e.append(this.name,t);this.internals.setFormValue?.(e)}else this.internals.setFormValue?.(this.value??"")}updateValidity(){!this.required||(this.multiple?this.values&&this.values.length>0:this.value)?(this.internals.setValidity?.({}),this.nativeError=!1):this.internals.setValidity?.({valueMissing:!0},"Please select a value.",this.triggerEl)}handleInvalid(){this.nativeError=!0}handleOptionSelect(e){const t=this.optionsById.get(e);if(!t)return;if(this.multiple){const e=this.values??[],s=e.includes(t.value)?e.filter((e=>e!==t.value)):[...e,t.value];return this.values=s,void this.lmvzChange.emit(s)}const s=t.value!==this.value;this.value=t.value,s&&this.lmvzChange.emit(t.value),this.closePopover()}handleOptionClick=e=>{e.disabled||this.disabled||this.listboxController.selectOption(e.id)};handleLabelClick=()=>{this.disabled||(this.triggerEl?.focus(),this.openPopover())};handleTriggerClick=()=>{this.disabled||(this.isOpen?this.closePopover():this.openPopover())};handleTriggerKeydown=e=>{this.disabled||(this.isOpen?this.listboxController.handleKeydown(e):"ArrowDown"!==e.key&&"ArrowUp"!==e.key&&"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.openPopover()))};handleTriggerBlur=()=>{this.closePopover()};handlePopoverClose=()=>{this.isOpen=!1,this.listboxController.clearTypeahead()};openPopover(){this.isOpen||this.disabled||(this.isOpen=!0)}closePopover(){this.isOpen&&(this.isOpen=!1,this.listboxController.clearTypeahead())}renderOptionGroups(){return this.optionGroups.map(((e,t)=>e.label?s("div",{role:"group","aria-label":e.label,key:"lmvz-select-group-"+t},e.options.map((e=>this.renderOption(e)))):e.options.map((e=>this.renderOption(e)))))}renderOption(e){const t=this.isOptionSelected(e);return s("div",{id:e.id,key:e.id,role:"option",class:"lmvz-select-option","aria-selected":t?"true":"false","aria-disabled":e.disabled?"true":void 0,"data-active":e.id===this.activeId?"true":void 0,onMouseDown:e=>e.preventDefault(),onClick:()=>this.handleOptionClick(e)},this.multiple&&s("span",{class:"lmvz-select-option-checkbox","aria-hidden":"true"},t&&s("span",{class:"lmvz-select-option-checkbox-indicator",innerHTML:u})),e.label)}renderChips(){const e=this.values??[],t=new Map;return s(l,null,e.map((e=>{const l=t.get(e)??0;t.set(e,l+1);const i=0===l?e:`${e}-dup-${l}`,r=this.flatOptions.find((t=>t.value===e));return s("lmvz-chip",{key:i,size:this.chipSize},r?.label??e)})))}render(){const e=this.hasValue,t=this.multiple&&e;return s(i,{key:"77cb72cdce635eae0f9a29cb9121dd7d16955219"},s("div",{key:"cc6c04090457df17c6a9e74354fc21875d378642",class:e?"select-wrapper has-value":"select-wrapper"},s("label",{key:"8dc52469a7b3333578494b2f7bdb4e870044ac6c",htmlFor:this.triggerId,class:e?"floating-label":"assistive-label",onMouseDown:e=>e.preventDefault(),onClick:this.handleLabelClick},this.label,this.required&&e&&s("span",{key:"c198fb4944e46c5219a42e16ae24dc3c414b1b00","aria-hidden":"true"}," *")),s("div",{key:"034cc67405aac73a6557036dea90e4644c1578ed",id:this.triggerId,ref:e=>this.triggerEl=e,class:"select-trigger",role:"combobox",tabIndex:this.disabled?-1:0,"aria-haspopup":"listbox","aria-expanded":this.isOpen+"","aria-controls":this.popoverId,"aria-activedescendant":this.isOpen?this.activeId:void 0,"aria-label":this.triggerAriaLabel,"aria-disabled":this.disabled?"true":void 0,"aria-required":this.required?"true":"false","aria-invalid":this.error?"true":"false","aria-errormessage":this.showErrorMessage?this.errorId:void 0,"aria-describedby":this.describedBy,onClick:this.handleTriggerClick,onKeyDown:this.handleTriggerKeydown,onBlur:this.handleTriggerBlur},s("span",{key:"c61c136bfaab211572a988d3b16c2746f80b1ac6"},t?this.renderChips():e?this.selectedLabel:this.label,this.required&&!e&&s("span",{key:"24201baae63a4f6fdaef2441d304cd8f69430fb5","aria-hidden":"true"}," *")),s("span",{key:"547c61dfdc83f89cf7cd0582c785b9552190e533","aria-hidden":"true"},s("svg",{key:"f6a0cb7c77682aec03cd146e84712c17df5ff910",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},s("path",{key:"35a8a50e27f18e54003974ae5b5ed578602664d3",d:"M20.3334 8.66663L12.0001 17L3.66675 8.66663",stroke:"currentColor","stroke-width":"1.75","stroke-linecap":"round","stroke-linejoin":"round"})))),s("lmvz-popover",{key:"0d5b94659c23763d59638046a397963d79a5e588",id:this.popoverId,anchor:this.triggerId,open:this.isOpen,containerRole:"listbox",autoFocus:!1,label:this.label,"aria-multiselectable":this.multiple?"true":void 0,onLmvzClose:this.handlePopoverClose,size:"sm"},this.renderOptionGroups()),s("div",{key:"c4a313fe4b6c53678a4f3dafced210f00e3c93d5",class:"lmvz-select-native-options",hidden:!0,"aria-hidden":"true",ref:e=>this.optionsSourceEl=e},s("slot",{key:"1fb311e6938812e68ae5155184af2e2ba7c19861",onSlotchange:this.handleSlotChange}))),this.helperText&&s("div",{key:"accade9aae4cb2e23fa1d8f62dd9b6efdf3ddfb5",id:this.helperId,role:"status"},this.helperText),this.showErrorMessage&&s("div",{key:"faa5eba225adda67b44b8a63ae98a678fddf49ad",id:this.errorId,role:"alert"},this.errorMessage))}static get formAssociated(){return!0}static get watchers(){return{value:[{handleValueChange:0}],values:[{handleValuesChange:0}],required:[{handleRequiredChange:0}],disabled:[{handleDisabledChange:0}]}}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-select-h { display: block; font-family: var(--lmvz-global-font-family-default, Router); --lmvz-internal-select-floating-label-top-offset: 0.375rem; --lmvz-select-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-select-bg: var(--lmvz-semantic-color-surface-input-primary, #ffffff); --lmvz-select-border-color: var(--lmvz-semantic-color-border-alternate, #c7c7c7); --lmvz-select-border-color-hover: var(--lmvz-semantic-color-border-hover, #a1a1a1); --lmvz-select-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-select-text-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --lmvz-select-label-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --lmvz-select-padding-x: var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-select-height: var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-xs-font-size, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); --lmvz-select-label-top-offset: calc(var(--lmvz-internal-select-floating-label-top-offset) * -1); --lmvz-select-label-minimized-padding-x: 4px; --lmvz-select-disabled-opacity: var(--lmvz-component-input-disabled-opacity, 40%); --lmvz-select-helper-color: var(--lmvz-semantic-color-on-surface-input-secondary, #545454); --lmvz-select-focus-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); --lmvz-select-error-color: var(--lmvz-semantic-color-status-on-danger, #a31419); --lmvz-select-chevron-size: var(--lmvz-component-icon-size-2xs, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)); padding-top: var(--lmvz-internal-select-floating-label-top-offset); } .select-wrapper.sc-lmvz-select { position: relative; height: var(--lmvz-select-height); } label.sc-lmvz-select { position: absolute; top: 50%; left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-label-color); line-height: normal; white-space: nowrap; pointer-events: none; z-index: 2; transform: translateY(-50%); transform-origin: left top; transition: top 0.2s ease-out, transform 0.2s ease-out, opacity 0.2s ease-out, padding 0.2s ease-out; } label.assistive-label.sc-lmvz-select { opacity: 0; padding: 0; } label.floating-label.sc-lmvz-select { top: var(--lmvz-select-label-top-offset); transform: translateY(0) scale(0.85); left: calc(var(--lmvz-select-padding-x) - 2px); background-color: var(--lmvz-select-bg); padding: 0 var(--lmvz-select-label-minimized-padding-x); opacity: 1; font-weight: 500; } label.sc-lmvz-select > span[aria-hidden='true'].sc-lmvz-select, .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child > span[aria-hidden='true'].sc-lmvz-select { color: var(--lmvz-select-error-color); margin-left: 2px; display: inline-block; line-height: 0; vertical-align: middle; } .select-trigger.sc-lmvz-select { display: flex; align-items: center; gap: var(--lmvz-select-gap); height: 100%; width: 100%; padding: 0 var(--lmvz-select-padding-x); border-radius: var(--lmvz-select-radius); background-color: var(--lmvz-select-bg); border: var(--lmvz-select-border-width) solid var(--lmvz-select-border-color); box-sizing: border-box; cursor: pointer; position: relative; z-index: 1; transition: border-color 0.15s ease; } .sc-lmvz-select-h:not([disabled] .select-wrapper.sc-lmvz-select:hover .select-trigger.sc-lmvz-select, [error]).sc-lmvz-select-h .select-wrapper.sc-lmvz-select:hover .select-trigger.sc-lmvz-select { border-color: var(--lmvz-select-border-color-hover); } [error].sc-lmvz-select-h .select-trigger.sc-lmvz-select { border-color: var(--lmvz-select-error-color); } .sc-lmvz-select-h:has(:focus-visible) .select-trigger.sc-lmvz-select { outline: var(--lmvz-ds-outline, 1px solid #0e7ab4); outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)); } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { flex: 1 0 0; font: var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); color: var(--lmvz-select-text-color); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; } .select-wrapper.has-value.sc-lmvz-select .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { color: var(--lmvz-semantic-color-int-on-secondary-active, #000000); } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child + span.sc-lmvz-select { flex-shrink: 0; display: flex; align-items: center; justify-content: center; } .select-trigger.sc-lmvz-select svg.sc-lmvz-select { width: var(--lmvz-select-chevron-size); height: var(--lmvz-select-chevron-size); flex-shrink: 0; } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child lmvz-chip.sc-lmvz-select { vertical-align: middle; } .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child lmvz-chip.sc-lmvz-select + lmvz-chip.sc-lmvz-select { margin-inline-start: var(--lmvz-select-gap); } .lmvz-select-native-options.sc-lmvz-select { display: none; } [disabled].sc-lmvz-select-h .select-wrapper.sc-lmvz-select { opacity: var(--lmvz-select-disabled-opacity); pointer-events: none; cursor: not-allowed; } [role='status'].sc-lmvz-select { padding-top: var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem)); padding-left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-helper-color); line-height: normal; } [role='alert'].sc-lmvz-select { padding-top: var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem)); padding-left: var(--lmvz-select-padding-x); font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); color: var(--lmvz-select-error-color); line-height: normal; } [size='small'].sc-lmvz-select-h { --lmvz-select-height: var(--lmvz-component-input-size-sm, clamp(2rem, 1.94rem + 0.26vw, 2.25rem)); --lmvz-select-padding-x: var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-sm, clamp(0.38rem, 0.31rem + 0.26vw, 0.63rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-2xs-font-size, clamp(0.5rem, 0.47rem + 0.13vw, 0.63rem)); --lmvz-select-chevron-size: var(--lmvz-component-icon-size-4xs, clamp(0.5rem, 0.47rem + 0.13vw, 0.63rem)); } [size='small'].sc-lmvz-select-h .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); } [size='large'].sc-lmvz-select-h { --lmvz-select-height: var(--lmvz-component-input-size-lg, clamp(2.75rem, 2.69rem + 0.26vw, 3rem)); --lmvz-select-padding-x: var(--lmvz-component-input-padding-lg, clamp(1rem, 0.94rem + 0.26vw, 1.25rem)); --lmvz-select-gap: var(--lmvz-component-input-gap-lg, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); --lmvz-select-label-font-size: var(--lmvz-component-body-sm-font-size, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); --lmvz-select-chevron-size: var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); } [size='large'].sc-lmvz-select-h .select-trigger.sc-lmvz-select > span.sc-lmvz-select:first-child { font-size: var(--lmvz-component-body-lg-font-size, clamp(1rem, 0.97rem + 0.13vw, 1.13rem)); } .lmvz-select-option.sc-lmvz-select { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary, #000000); --lmvz-button-background-override: var(--lmvz-select-option-background); --lmvz-button-color-override: var(--lmvz-select-option-color); --lmvz-button-radius-override: var(--lmvz-semantic-border-radius-md, 6px); --lmvz-button-padding-inline-override: var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); --lmvz-button-padding-block-override: var(--lmvz-component-input-padding-sm, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); --lmvz-button-content-justification: normal; --lmvz-button-font-override: var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); & { --lmvz-button-background: var(--lmvz-button-background-override, var(--lmvz-semantic-color-int-secondary, #f0f0f0)); --lmvz-button-color: var(--lmvz-button-color-override, var(--lmvz-semantic-color-int-on-secondary, #000000)); --lmvz-button-radius: var(--lmvz-button-radius-override, var(--lmvz-component-input-radius-default, 999px)); --lmvz-button-padding-inline: var(--lmvz-button-padding-inline-override, var(--lmvz-button-padding, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)))); --lmvz-button-padding-block: var(--lmvz-button-padding-block-override, var(--lmvz-button-padding, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem)))); --lmvz-button-gap: var(--lmvz-button-gap-override, var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem))); --lmvz-button-min-height: var(--lmvz-button-min-height-override, var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem))); --lmvz-button-font: var(--lmvz-button-font-override, var(--lmvz-typography-label-md-strong, normal 700 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router)); --lmvz-button-border-width: var(--lmvz-button-border-width-override, 0); --lmvz-button-border-color: var(--lmvz-button-border-color-override, transparent); display: inline-flex; align-items: center; justify-content: var(--lmvz-button-content-justification, center); gap: var(--lmvz-button-gap, var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem))); box-sizing: border-box; padding-block: var(--lmvz-button-padding-block, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem))); padding-inline: var(--lmvz-button-padding-inline, var(--lmvz-component-input-padding-md, clamp(0.88rem, 0.84rem + 0.13vw, 1rem))); min-height: var(--lmvz-button-min-height, var(--lmvz-component-input-size-md, clamp(2.5rem, 2.44rem + 0.26vw, 2.75rem))); border: var(--lmvz-button-border-width, 0) solid var(--lmvz-button-border-color, transparent); border-radius: var(--lmvz-button-radius, var(--lmvz-component-input-radius-default, 999px)); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } display: flex; } .lmvz-select-option.sc-lmvz-select:not([aria-disabled='true']):hover { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-hover, #000000); } .lmvz-select-option.sc-lmvz-select:not([aria-disabled='true']):active { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-active, #000000); } .lmvz-select-option.sc-lmvz-select:focus-visible { outline: var(--lmvz-ds-outline, 1px solid #0e7ab4); outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)); position: relative; z-index: 1; } .lmvz-select-option[data-active='true'].sc-lmvz-select:not([aria-disabled='true']) { --lmvz-select-option-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --lmvz-select-option-color: var(--lmvz-semantic-color-int-on-tertiary-hover, #000000); } .sc-lmvz-select-h:not([multiple]) .lmvz-select-option[aria-selected='true'].sc-lmvz-select { --lmvz-select-option-background: var(--lmvz-semantic-color-status-active-alternate, #0f8acc); --lmvz-select-option-color: var(--lmvz-semantic-color-status-on-active-alternate, #ffffff); } .lmvz-select-option[aria-disabled='true'].sc-lmvz-select { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } .lmvz-select-option-checkbox.sc-lmvz-select { display: flex; align-items: center; justify-content: center; width: var(--lmvz-global-s18, 18px); height: var(--lmvz-global-s18, 18px); border: var(--lmvz-semantic-border-width-default, 1px) solid currentcolor; border-radius: var(--lmvz-global-s4, 4px); flex-shrink: 0; } .lmvz-select-option-checkbox-indicator.sc-lmvz-select { display: flex; align-items: center; justify-content: center; line-height: 0; } .lmvz-select-option-checkbox-indicator.sc-lmvz-select svg.sc-lmvz-select { width: 100%; height: 100%; }"}},[838,"lmvz-select",{value:[1025],multiple:[516],values:[1040],label:[1],helperText:[1,"helper-text"],error:[6660],errorMessage:[1,"error-message"],disabled:[516],required:[516],name:[513],size:[513],nativeError:[32],selectedLabel:[32],selectedId:[32],activeId:[32],isOpen:[32],optionGroups:[32],focusTrigger:[64],blurTrigger:[64],checkValidity:[64],reportValidity:[64],getValidationMessage:[64]},[[0,"invalid","handleInvalid"]],{value:[{handleValueChange:0}],values:[{handleValuesChange:0}],required:[{handleRequiredChange:0}],disabled:[{handleDisabledChange:0}]}]),f=z,b=function(){"undefined"!=typeof customElements&&["lmvz-select","lmvz-chip","lmvz-popover"].forEach((e=>{switch(e){case"lmvz-select":customElements.get(r(e))||customElements.define(r(e),z);break;case"lmvz-chip":customElements.get(r(e))||m();break;case"lmvz-popover":customElements.get(r(e))||v()}}))};export{f as LmvzSelect,b as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,H as a,c as e,h as s,d as o,t as n}from"./p-
|
|
1
|
+
import{p as t,H as a,c as e,h as s,d as o,t as n}from"./p-DbBJxuBm.js";import{w as r,i}from"./p-DsT_K3_I.js";import{d as c}from"./p-DsTgD0_a.js";import{d as m}from"./p-DXhP6UeF.js";const l={success:i,warning:r,error:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzM0Nl8zODApIj4KPHBhdGggZD0iTTEyIDUuMjVWMTMuMTI1TTIyLjUgMTJDMjIuNSAxNy43OTkgMTcuNzk5IDIyLjUgMTIgMjIuNUM2LjIwMTAxIDIyLjUgMS41IDE3Ljc5OSAxLjUgMTJDMS41IDYuMjAxMDEgNi4yMDEwMSAxLjUgMTIgMS41QzE3Ljc5OSAxLjUgMjIuNSA2LjIwMTAxIDIyLjUgMTJaTTEzLjEyNSAxNi44NzVDMTMuMTI1IDE3LjQ5NjMgMTIuNjIxMyAxOCAxMiAxOEMxMS4zNzg3IDE4IDEwLjg3NSAxNy40OTYzIDEwLjg3NSAxNi44NzVDMTAuODc1IDE2LjI1MzcgMTEuMzc4NyAxNS43NSAxMiAxNS43NUMxMi42MjEzIDE1Ljc1IDEzLjEyNSAxNi4yNTM3IDEzLjEyNSAxNi44NzVaIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzM0Nl8zODAiPgo8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg=="},u=t(class extends a{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.lmvzClose=e(this,"lmvzClose",6)}get el(){return this}animationClass="";status="success";onStatusChange(){this.applyAriaLiveAttributes()}message="";duration;priority="normal";actionLabel;lmvzClose;connectedCallback(){"undefined"!=typeof document&&this.applyAriaLiveAttributes()}async show(){this.animationClass="",requestAnimationFrame((()=>{this.animationClass="entering"}))}async hide(){this.animationClass="leaving",await new Promise((t=>{const a=setTimeout(t,300),e=()=>{clearTimeout(a),this.el.removeEventListener("animationend",e),t()};this.el.addEventListener("animationend",e)}))}applyAriaLiveAttributes(){"error"===this.status?(this.el.setAttribute("role","alert"),this.el.setAttribute("aria-live","assertive")):(this.el.setAttribute("role","status"),this.el.setAttribute("aria-live","polite")),this.el.setAttribute("aria-atomic","true")}handleActionClick=()=>{this.lmvzClose.emit({reason:"action"}),this.el.dispatchEvent(new CustomEvent("lmvzAction",{bubbles:!1,composed:!1}))};render(){return s(o,{key:"f58c7657bf5511c72930dfc54ace4af1ff7f3554",class:this.animationClass},s("lmvz-icon",{key:"8632b42b9b246bf58480fb17ca336ce5f0883845",icon:l[this.status],size:"md",weight:"bold"}),s("span",{key:"4ca56d2cdf29415c6d21cc50399dc28aebb8de99",class:"message"},this.message),this.actionLabel&&s("lmvz-button",{key:"d09043056b968421143aa180f464effcd7b781fe",variant:"tertiary",scale:"small",onLmvzActivation:this.handleActionClick},this.actionLabel))}static get watchers(){return{status:[{onStatusChange:0}]}}static get style(){return":host{position:fixed;bottom:var(--lmvz-dimension-20-16, clamp(1rem, 0.94rem + 0.26vw, 1.25rem));left:50%;transform:translateX(-50%);z-index:2147483000;width:max-content;border:1px solid transparent;border-radius:var(--lmvz-semantic-border-radius-lg, 14px);padding:var(--lmvz-dimension-12-10, clamp(0.63rem, 0.59rem + 0.13vw, 0.75rem)) var(--lmvz-dimension-14-12, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem));display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));pointer-events:auto;font:var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router);--lmvz-component-color:var(--lmvz-semantic-color-status-on-success, #28625b);color:var(--lmvz-component-color)}:host([status='success']){background-color:var(--lmvz-semantic-color-status-success, #c2e6e1);border-color:var(--lmvz-semantic-color-status-on-success-subtle, #4eb6a9);--lmvz-component-color:var(--lmvz-semantic-color-status-on-success, #28625b)}:host([status='warning']){background-color:var(--lmvz-semantic-color-status-warning, #ffeeb8);border-color:var(--lmvz-semantic-color-status-on-warning-subtle, #e6b000);--lmvz-component-color:var(--lmvz-semantic-color-status-on-warning, #614a00)}:host([status='error']){background-color:var(--lmvz-semantic-color-status-danger, #fbdfe0);border-color:var(--lmvz-semantic-color-status-on-danger-subtle, #e8454b);--lmvz-component-color:var(--lmvz-semantic-color-status-on-danger, #a31419)}lmvz-icon{flex-shrink:0}.message{white-space:nowrap}@keyframes snackbar-enter{from{transform:translateX(-50%) translateY(100%);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}@keyframes snackbar-leave{from{transform:translateX(-50%) translateY(0);opacity:1}to{transform:translateX(-50%) translateY(100%);opacity:0}}:host(.entering){animation:snackbar-enter 200ms cubic-bezier(0, 0, 0.2, 1) forwards}:host(.leaving){pointer-events:none;animation:snackbar-leave 200ms cubic-bezier(0.4, 0, 1, 1) forwards}@media (prefers-reduced-motion: reduce){:host(.entering){animation:none;transition:opacity 80ms ease;opacity:1}:host(.leaving){pointer-events:none;animation:none;transition:opacity 80ms ease;opacity:0}}"}},[513,"lmvz-snackbar",{status:[1537],message:[1025],duration:[1026],priority:[1025],actionLabel:[1025,"action-label"],animationClass:[32],show:[64],hide:[64]},void 0,{status:[{onStatusChange:0}]}]),d=u,v=function(){"undefined"!=typeof customElements&&["lmvz-snackbar","lmvz-button","lmvz-icon"].forEach((t=>{switch(t){case"lmvz-snackbar":customElements.get(n(t))||customElements.define(n(t),u);break;case"lmvz-button":customElements.get(n(t))||c();break;case"lmvz-icon":customElements.get(n(t))||m()}}))};export{d as LmvzSnackbar,v as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as r,h as t,d as i,t as n}from"./p-
|
|
1
|
+
import{p as e,H as r,h as t,d as i,t as n}from"./p-DbBJxuBm.js";const a=e(class extends r{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}size="small";ariaLabel;render(){const e=!!this.ariaLabel?.trim();return t(i,{key:"cf60fcf652f377a66596cc51138bb73f7465a4e7",role:e?"status":void 0,"aria-label":e?this.ariaLabel:void 0,"aria-hidden":e?void 0:"true"},t("svg",{key:"121ab46a591242fbc0f1c3540e8f2a7b72c9582a",part:"indicator",viewBox:"0 0 16 16","aria-hidden":"true"},t("circle",{key:"fe649394c9bd6e7a06113e9a50b595bb890a6fac",pathLength:"100",cx:"8",cy:"8",r:"6"})))}static get style(){return":host{--spinner-size:1rem;display:inline-block;width:var(--spinner-size);height:var(--spinner-size)}:host([size='large']){--spinner-size:2rem;}svg{width:100%;height:100%;transform-origin:center;animation:lmvz-spinner-rotate var(--lmvz-global-duration-slow, 800ms) linear infinite;color:var(--lmvz-semantic-color-border-active, #0f8acc)}circle{fill:none;stroke:currentcolor;stroke-width:var(--lmvz-component-icon-border-width-strong, 1.5px);stroke-linecap:round;stroke-dasharray:75 25;vector-effect:non-scaling-stroke}@keyframes lmvz-spinner-rotate{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){svg{animation:none}}"}},[513,"lmvz-spinner",{size:[513],ariaLabel:[513,"aria-label"]}]),s=a,o=function(){"undefined"!=typeof customElements&&["lmvz-spinner"].forEach((e=>{"lmvz-spinner"===e&&(customElements.get(n(e))||customElements.define(n(e),a))}))};export{s as LmvzSpinner,o as defineCustomElement}
|
package/components/lmvz-tab.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,H as a,h as t,d as o,t as r}from"./p-
|
|
1
|
+
import{p as e,H as a,h as t,d as o,t as r}from"./p-DbBJxuBm.js";const i=e(class extends a{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}get el(){return this}mediaSlotEl;value;disabled=!1;selected=!1;vertical=!1;handleMediaSlotChange=()=>{this.el.toggleAttribute("has-media",(this.mediaSlotEl?.assignedElements()??[]).length>0)};componentDidLoad(){this.handleMediaSlotChange(),this.el.dispatchEvent(new CustomEvent("lmvzTabReady",{bubbles:!0,composed:!1}))}render(){return t(o,{key:"4380fe35cacb11bc7114664c126504e8f4fb09a0"},t("button",{key:"ac77443cbba5c94f864820088f60c0bac23d0775",part:"button",role:"tab",disabled:this.disabled,"aria-selected":this.selected+"","aria-disabled":this.disabled?"true":void 0,tabIndex:0},t("slot",{key:"9988497505ca3effa6c41011ac408a5d25629ca1",name:"media",ref:e=>this.mediaSlotEl=e,onSlotchange:this.handleMediaSlotChange}),t("span",{key:"70566c46fba36b8717aa82917e45abd39cd7a2ea",class:"label"},t("slot",{key:"a595738c387ee2f4f77f6ccdfdfb0589751ce999"})),t("span",{key:"933758dc965d1151ca6a96367ea40290189384ad","aria-hidden":"true",part:"indicator",class:"indicator"})))}static get delegatesFocus(){return!0}static get style(){return" @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.reset { body { margin: 0; } h1, h2, h3, h4, h5, h6 { margin: 0; } *[hidden] { display: none !important; } hr { height: 0; border: none; margin: var(--lmvz-dimension-8-4, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)) 0; border-top: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-subtle, #f0f0f0); } fieldset { border: none; margin: 0; padding: 0; } legend { padding: 0; display: block; } } :host { display: inline-block; flex: none; } :host([disabled]) { cursor: not-allowed; pointer-events: none; } button { --lmvz-tab-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-tab-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); position: relative; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--lmvz-component-component-spacing-0-default, 4px); padding-top: var(--lmvz-dimension-12-8, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); padding-bottom: var(--lmvz-dimension-14-8, clamp(0.5rem, 0.41rem + 0.39vw, 0.88rem)); padding-inline: var(--lmvz-dimension-24-16, clamp(1rem, 0.88rem + 0.52vw, 1.5rem)); border: none; border-radius: var(--lmvz-semantic-border-radius-round, 999px); background: var(--lmvz-tab-background); color: var(--lmvz-tab-color); font: var(--lmvz-typography-body-md-strong, 500 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); cursor: pointer; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease; } button:focus-visible { outline: var(--lmvz-ds-outline, 1px solid #0e7ab4); outline-offset: var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)); z-index: 1; } button:disabled { opacity: var(--lmvz-component-input-disabled-opacity, 40%); pointer-events: none; cursor: not-allowed; } button:hover { --lmvz-tab-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); --lmvz-tab-color: var(--lmvz-semantic-color-int-on-secondary-hover, #000000); } button:active { --lmvz-tab-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); --lmvz-tab-color: var(--lmvz-semantic-color-int-on-secondary-active, #000000); } :host([has-media]) { --lmvz-tab-color: var(--lmvz-semantic-color-int-on-tertiary, #000000); --lmvz-tab-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); } :host([has-media]) button { padding-top: var(--lmvz-dimension-18-16, clamp(1rem, 0.97rem + 0.13vw, 1.13rem)); padding-bottom: var(--lmvz-dimension-14-12, clamp(0.75rem, 0.72rem + 0.13vw, 0.88rem)); padding-inline: var(--lmvz-dimension-48-40, clamp(2.5rem, 2.38rem + 0.52vw, 3rem)); border-radius: var(--lmvz-semantic-border-radius-lg, 14px); } :host([has-media]) button:hover { --lmvz-tab-color: var(--lmvz-semantic-color-int-on-tertiary-hover, #000000); } :host([has-media]) button:active { --lmvz-tab-color: var(--lmvz-semantic-color-int-on-tertiary-active, #000000); } :host([selected]) button { --lmvz-tab-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); --lmvz-tab-background: var(--lmvz-semantic-color-status-active, #f6fbfe); } :host([selected][has-media]) button:hover, :host([selected][has-media]) button:active { --lmvz-tab-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); } .indicator { --lmvz-tab-indicator-size: 4px; position: absolute; background: linear-gradient(to right, var(--lmvz-semantic-color-gradient-main-1, #0e7ab4), var(--lmvz-semantic-color-gradient-main-2, #0e7ab4)); opacity: 0; transition: opacity 0.15s ease; inset-block-end: 0; inset-inline: 0; block-size: var(--lmvz-tab-indicator-size); border-start-start-radius: 0; border-start-end-radius: 0; border-end-start-radius: var(--lmvz-tab-indicator-size); border-end-end-radius: var(--lmvz-tab-indicator-size); } :host([selected][has-media]) .indicator { opacity: 1; } :host([vertical]) button { border-radius: var(--lmvz-semantic-border-radius-round, 999px); } :host([vertical]) .indicator { inset-block: 0; inset-inline: 0 auto; inline-size: var(--lmvz-tab-indicator-size); block-size: auto; border-radius: 0 var(--lmvz-tab-indicator-size) var(--lmvz-tab-indicator-size) 0; background: linear-gradient(to bottom, var(--lmvz-semantic-color-gradient-main-1, #0e7ab4), var(--lmvz-semantic-color-gradient-main-2, #0e7ab4)); } ::slotted(*) { --lmvz-component-color: var(--lmvz-tab-color); } ::slotted(lmvz-icon) { --lmvz-component-size: var(--lmvz-dimension-18-16, clamp(1rem, 0.97rem + 0.13vw, 1.13rem)); } :host([has-media]) ::slotted(lmvz-icon) { --lmvz-component-size: var(--lmvz-component-icon-size-lg, clamp(1.25rem, 1.19rem + 0.26vw, 1.5rem)); } .label { display: contents; } "}},[785,"lmvz-tab",{value:[513],disabled:[516],selected:[516],vertical:[516]}]),n=i,l=function(){"undefined"!=typeof customElements&&["lmvz-tab"].forEach((e=>{"lmvz-tab"===e&&(customElements.get(r(e))||customElements.define(r(e),i))}))};export{n as LmvzTab,l as defineCustomElement}
|
package/components/lmvz-tabs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as t,c as e,h as s,d as i,t as
|
|
1
|
+
import{p as t,c as e,h as s,d as i,t as a}from"./p-DbBJxuBm.js";import{D as n}from"./p-DyQ1GbaN.js";import{R as l}from"./p-DXFoXTse.js";let o=0;const r=t(class extends l{get el(){return this}instanceId=++o;tabSlotEl;panelSlotEl;tablistEl;focusController=new n(this,{orientation:"horizontal",manageTabIndex:!0,enableHomeAndEnd:!0,listenerTarget:this.tablistEl});value;orientation="horizontal";lmvzChange;resolvedValue;constructor(t){super(!1),!1!==t&&this.__registerHost(),this.__attachShadow(),this.lmvzChange=e(this,"lmvzChange",7),this.addController(this.focusController)}componentWillLoad(){super.componentWillLoad(),this.syncOrientation()}componentDidLoad(){this.tabSlotEl?.addEventListener("slotchange",this.handleTabSlotChange),this.panelSlotEl?.addEventListener("slotchange",this.handlePanelSlotChange),this.el.addEventListener("lmvzTabReady",this.handleTabReady),this.handleTabSlotChange(),this.tablistEl&&this.focusController.updateListenerTarget(this.tablistEl),super.componentDidLoad()}disconnectedCallback(){this.el.removeEventListener("lmvzTabReady",this.handleTabReady),super.disconnectedCallback()}handleValueChange(t){this.applySelection(t)}handleOrientationChange(){this.syncOrientation(),this.syncFocusTargets(),this.syncTabOrientation()}async initFocus(){this.focusController.initFocus()}async activateTab(t){const e=this.findTabByValue(t);e&&!this.isTabDisabled(e)&&this.selectTab(t)}async getTabElements(){return this.slottedTabs}async setTabPanelIds(t){const e=this.slottedTabs,s=this.slottedPanels;t.forEach((([t,i],a)=>{const n=e[a],l=s[a],o=t+"-btn";if(n){n.id=t;const e=n.shadowRoot?.querySelector("button");e&&(e.id=o,e.setAttribute("aria-controls",i))}l&&(l.id=i,l.setAttribute("aria-labelledby",o))}))}get slottedTabs(){return(this.tabSlotEl?.assignedElements({flatten:!1})??[]).filter((t=>"lmvz-tab"===t.tagName.toLowerCase()))}get slottedPanels(){return this.panelSlotEl?.assignedElements({flatten:!1})??[]}handleTabSlotChange=()=>{this.syncFocusTargets(),this.syncTabOrientation(),this.wireAriaIds(),this.applySelection(this.value),this.updateIconTabsAttr()};handlePanelSlotChange=()=>{this.wireAriaIds(),this.applySelection(this.resolvedValue??this.value)};handleTabReady=()=>{this.syncFocusTargets(),this.wireAriaIds(),this.applySelection(this.resolvedValue??this.value),this.updateIconTabsAttr()};updateIconTabsAttr(){this.el.toggleAttribute("has-icon-tabs",this.slottedTabs.some((t=>t.hasAttribute("has-media"))))}syncFocusTargets(){const t=this.slottedTabs.map((t=>t.shadowRoot?.querySelector("button"))).filter((t=>!!t));this.focusController.updateElements(t)}syncOrientation(){this.removeController(this.focusController),this.focusController.hostDisconnected?.(),this.focusController=new n(this,{orientation:this.orientation,manageTabIndex:!0,enableHomeAndEnd:!0,listenerTarget:this.tablistEl}),this.addController(this.focusController),this.el.isConnected&&this.focusController.hostConnected?.()}syncTabOrientation(){const t="vertical"===this.orientation;this.slottedTabs.forEach((e=>{e.toggleAttribute("vertical",t)}))}wireAriaIds(){const t=this.slottedPanels,e="lmvz-tabs-"+this.instanceId;this.slottedTabs.forEach(((s,i)=>{const a=s.id||`${e}-tab-${i}`;s.id=a;const n=t[i];if(!n)return;const l=n.id||`${e}-panel-${i}`;n.id=l;const o=s.shadowRoot?.querySelector("button");o&&(o.setAttribute("aria-controls",l),o.setAttribute("id",a+"-btn")),n.setAttribute("role",n.getAttribute("role")??"tabpanel"),n.setAttribute("aria-labelledby",a+"-btn")}))}applySelection(t){const e=this.slottedTabs;if(!e.length)return;let s=this.findTabByValue(t);if(s&&!this.isTabDisabled(s)||(s=this.findNearestEnabled(t)??void 0),!s)return;const i=s.getAttribute("value")??"";this.resolvedValue=i,this.value!==i&&(this.value=i),e.forEach((t=>{const e=t.getAttribute("value")===i;t.toggleAttribute("selected",e);const s=t.shadowRoot?.querySelector("button");s&&s.setAttribute("aria-selected",e+"")})),this.slottedPanels.forEach(((t,s)=>{const a=e[s],n=a?.getAttribute("value")===i;t.toggleAttribute("hidden",!n)}));const a=s.shadowRoot?.querySelector("button");a&&this.focusController.setCurrentElement(a)}isTabDisabled(t){return t.hasAttribute("disabled")||!!t.disabled}findTabByValue(t){return this.slottedTabs.find((e=>e.getAttribute("value")===t))}findNearestEnabled(t){const e=this.slottedTabs,s=e.findIndex((e=>e.getAttribute("value")===t));for(let t=1;t<e.length;t++){const i=e[(s+t)%e.length];if(i&&!this.isTabDisabled(i))return i;const a=e[(s-t+e.length)%e.length];if(a&&!this.isTabDisabled(a))return a}}selectTab(t){t!==this.resolvedValue&&(this.applySelection(t),this.lmvzChange.emit({value:t}))}handleTabClick=t=>{const e=t.target.closest("lmvz-tab");if(!e)return;const s=e.getAttribute("value");s&&!this.isTabDisabled(e)&&this.selectTab(s)};handleKeydown=t=>{if("Enter"!==t.key&&" "!==t.key)return;const e=this.el.ownerDocument.activeElement;if(!e)return;let s=null;for(const t of this.slottedTabs)if(t===e){s=t;break}if(!s)return;const i=s.getAttribute("value");i&&!this.isTabDisabled(s)&&(t.preventDefault(),this.selectTab(i))};render(){return s(i,{key:"be4fe04b1374a2793d3b1e9a658a449474efdd03",onClick:this.handleTabClick,onKeydown:this.handleKeydown},s("div",{key:"d91015eddf16dfad5d49e942eb86e9f568978f34",role:"tablist","aria-orientation":this.orientation,class:"tablist",ref:t=>this.tablistEl=t},s("slot",{key:"be0990a7c668bc96a67c01561e3142ec028dabd0",ref:t=>this.tabSlotEl=t})),s("div",{key:"338323738dfdbb436d86cdb4f6041a67c1af433d",part:"panels-container",class:"panels-container"},s("slot",{key:"d225be099c8cb902776ce0a7dbf7dcb2aef2d03b",name:"panels",ref:t=>this.panelSlotEl=t})))}static get watchers(){return{value:[{handleValueChange:0}],orientation:[{handleOrientationChange:0}]}}static get style(){return" @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.reset { body { margin: 0; } h1, h2, h3, h4, h5, h6 { margin: 0; } *[hidden] { display: none !important; } hr { height: 0; border: none; margin: var(--lmvz-dimension-8-4, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem)) 0; border-top: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-subtle, #f0f0f0); } fieldset { border: none; margin: 0; padding: 0; } legend { padding: 0; display: block; } } :host { display: inline-block; } .tablist { display: inline-flex; flex-direction: row; background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); border-radius: var(--lmvz-semantic-border-radius-round, 999px); overflow: auto hidden; scrollbar-width: none; } .tablist::-webkit-scrollbar { display: none; } :host([has-icon-tabs]) .tablist { gap: var(--lmvz-dimension-8-6, clamp(0.38rem, 0.34rem + 0.13vw, 0.5rem)); background: none; border-radius: 0; } :host([orientation='vertical']) .tablist { flex-direction: column; overflow: visible auto; } ::slotted([role='tabpanel']) { display: block; } ::slotted([role='tabpanel'][hidden]) { display: none; } "}},[769,"lmvz-tabs",{value:[1537],orientation:[1537],resolvedValue:[32],initFocus:[64],activateTab:[64],getTabElements:[64],setTabPanelIds:[64]},void 0,{value:[{handleValueChange:0}],orientation:[{handleOrientationChange:0}]}]),h=r,d=function(){"undefined"!=typeof customElements&&["lmvz-tabs"].forEach((t=>{"lmvz-tabs"===t&&(customElements.get(a(t))||customElements.define(a(t),r))}))};export{h as LmvzTabs,d as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,c as t,h as o,d as
|
|
1
|
+
import{p as e,c as t,h as o,d as a,t as l}from"./p-DbBJxuBm.js";import{A as r}from"./p-sACbyedu.js";import{R as s}from"./p-DXFoXTse.js";import{c as i}from"./p-bh9cItsP.js";let c=0;const n=e(class extends s{get el(){return this}get validationEl(){return this.el}internals;nativeInputElement;toggleId="lmvz-toggle-"+c++;lmvzChange;label;checked=!1;disabled=!1;required=!1;name;value="on";form;constructor(e){super(!1),!1!==e&&this.__registerHost(),this.lmvzChange=t(this,"lmvzChange",7),this.internals=this.attachInternals(),this.addController(new r(this))}formAssociatedCallback(e){this.internals.setFormValue?.(this.checked?this.value:null)}formResetCallback(){this.checked=!1}formStateRestoreCallback(e){this.checked=e===this.value,this.internals.setFormValue?.(this.checked?this.value:null)}handleCheckedChange(e){this.internals.setFormValue?.(e?this.value:null)}handleDisabledChange(e){e&&this.nativeInputElement&&this.nativeInputElement.blur()}async focusToggle(){this.nativeInputElement?.focus()}async blurToggle(){this.nativeInputElement?.blur()}async checkValidity(){return this.nativeInputElement?.checkValidity?.()??!1}async reportValidity(){return this.nativeInputElement?.reportValidity?.()??!1}async getValidationMessage(){return this.nativeInputElement?.validationMessage??""}async getInputElement(){return this.nativeInputElement||await new Promise((e=>i(this.el,e))),Promise.resolve(this.nativeInputElement)}handleChange=e=>{const t=e.target.checked;this.checked=t,this.lmvzChange.emit(t)};render(){return o(a,{key:"a0e0272a8457ee6b07a102aa10e5a7c0292a55d9"},o("span",{key:"5d14029bee4b66f5ed2ee1eb189a1d80a68abe3e",class:"track"},o("input",{key:"926b1ca6065750717577ece30e8e78b9004ec0e8",type:"checkbox",role:"switch",id:this.toggleId,checked:this.checked,disabled:this.disabled,required:this.required,name:this.name,value:this.value,form:this.form,ref:e=>this.nativeInputElement=e,onChange:this.handleChange}),o("span",{key:"bdee06bab6acba72d019134828f7415d7b347c49",class:"thumb","aria-hidden":"true"})),o("label",{key:"b8eaa9305352f7146bf95bb517766310517d60e6",htmlFor:this.toggleId},this.label))}static get formAssociated(){return!0}static get watchers(){return{checked:[{handleCheckedChange:0}],disabled:[{handleDisabledChange:0}]}}static get style(){return"@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('RouterBook-Regular'), local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'); font-weight: 400; } @font-face { font-family: Router; src: local('RouterMedium-Regular'), local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'); font-weight: 500; } @font-face { font-family: Router; src: local('RouterBold-Regular'), local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'); font-weight: 700; } } .sc-lmvz-toggle-h { display: inline-flex; align-items: center; gap: var(--lmvz-component-input-gap-md, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); padding-block: var(--lmvz-dimension-8-2, clamp(0.13rem, 0.03rem + 0.39vw, 0.5rem)); padding-inline: var(--lmvz-dimension-10-4, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); border-radius: var(--lmvz-semantic-border-radius-round, 999px); cursor: pointer; background-color: transparent; user-select: none; } .sc-lmvz-toggle-h:not([disabled]):hover { background-color: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } [checked].sc-lmvz-toggle-h { background-color: var(--lmvz-semantic-color-status-active, #f6fbfe); } [disabled][checked].sc-lmvz-toggle-h { background-color: var(--lmvz-semantic-color-status-active, #f6fbfe); } [disabled].sc-lmvz-toggle-h { cursor: not-allowed; opacity: var(--lmvz-component-input-disabled-opacity, 40%); pointer-events: none; } .track.sc-lmvz-toggle { position: relative; flex-shrink: 0; width: var(--lmvz-global-s32, 32px); height: var(--lmvz-global-s20, 20px); border-radius: var(--lmvz-semantic-border-radius-round, 999px); background-color: var(--lmvz-semantic-color-surface-input-primary, #ffffff); border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0); } .sc-lmvz-toggle-h:not([disabled]):hover .track.sc-lmvz-toggle { border-color: var(--lmvz-semantic-color-border-hover, #a1a1a1); } [checked].sc-lmvz-toggle-h .track.sc-lmvz-toggle { border-color: var(--lmvz-semantic-color-border-active, #0f8acc); } input.sc-lmvz-toggle { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; margin: 0; cursor: inherit; } .thumb.sc-lmvz-toggle { position: absolute; width: var(--lmvz-global-s13, 13px); height: var(--lmvz-global-s13, 13px); border-radius: 50%; background-color: var(--lmvz-semantic-color-on-surface-input-secondary, #545454); top: 50%; transform: translateY(-50%); left: var(--lmvz-global-s4, 4px); transition: left 0.2s ease, background-color 0.2s ease; pointer-events: none; } [checked].sc-lmvz-toggle-h .thumb.sc-lmvz-toggle { left: calc(var(--lmvz-global-s4, 4px) + var(--lmvz-global-s11, 11px)); background-color: var(--lmvz-semantic-color-status-on-active, #0e7ab4); } label.sc-lmvz-toggle { font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.5 Router); color: var(--lmvz-semantic-color-on-surface-primary, #000000); cursor: pointer; }.sc-lmvz-toggle-h:has(:focus-visible){outline:var(--lmvz-ds-outline, 1px solid #0e7ab4);outline-offset:var(--lmvz-ds-outline-offset, clamp(0.25rem, 0.19rem + 0.26vw, 0.5rem))}@media (forced-colors: active){.sc-lmvz-toggle-h:has(:focus-visible){outline-color:Highlight;box-shadow:none}}"}},[578,"lmvz-toggle",{label:[1],checked:[1540],disabled:[516],required:[516],name:[1],value:[1],form:[1],focusToggle:[64],blurToggle:[64],checkValidity:[64],reportValidity:[64],getValidationMessage:[64],getInputElement:[64]},void 0,{checked:[{handleCheckedChange:0}],disabled:[{handleDisabledChange:0}]}]),m=n,d=function(){"undefined"!=typeof customElements&&["lmvz-toggle"].forEach((e=>{"lmvz-toggle"===e&&(customElements.get(l(e))||customElements.define(l(e),n))}))};export{m as LmvzToggle,d as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{b as t}from"./p-DJLdOjL4.js";import{r as i,g as s}from"./p-DXFoXTse.js";class n{host;config;handlers=new AbortController;constructor(t,s){this.host=t,this.config=s,i(t.el,"isLmvzElementActivationHost",!0)}hostDidLoad(){o(this.host.el,this.handleActivation.bind(this),this.handlers.signal,this.config?.keys??["Enter"," "])}hostDisconnected(){this.handlers.abort()}handleActivation=t=>{this.host.lmvzActivation.emit(),this.config?.localHandler&&this.config.localHandler(t)}}function o(t,i,s,n=[" "]){t.addEventListener("keydown",function(t,i=[" "]){return s=>{i.includes(s.key)&&(s.preventDefault(),t(s))}}(i,n),{signal:s}),t.addEventListener("click",i,{signal:s})}function e(...[i,n,e,a]){s(i,"isLmvzElementActivationHost")?i.addEventListener("lmvzActivation",n,{signal:e}):t(i)?o(i,n,e,a):console.error("addElementActivationListener called with non-interactive element")}export{n as E,e as a}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t}from"./p-CyDgnpOB.js";const s={low:0,normal:1,high:2},i={success:5e3,warning:5e3,error:8e3};let o=0;function e(){return o+=1,`snackbar-${o}`}class n{hostEl=void 0;active=void 0;getHost(){return void 0===this.hostEl||this.hostEl.isConnected||(this.hostEl=void 0),void 0===this.hostEl&&(this.hostEl=function(){if("undefined"==typeof document)return;const t=document.querySelector("[data-snackbar-host]");if(t)return t;const s=document.createElement("lmvz-snackbar");return s.setAttribute("data-snackbar-host",""),document.body.appendChild(s),s}()),this.hostEl}clearTimer(t){void 0!==t.timerId&&(clearTimeout(t.timerId),t.timerId=void 0)}scheduleTimer(t,s){s<=0||(t.timerStartedAt=Date.now(),t.timerId=setTimeout((()=>{void 0!==this.active&&this.active.id===t.id&&this.dismissActive(t,"timeout")}),s))}dismissActive(t,s){this.clearTimer(t);const i=t.hostEl;i.removeEventListener("pointerenter",t.onPointerEnter),i.removeEventListener("pointerleave",t.onPointerLeave),i.removeEventListener("focusin",t.onFocusIn),i.removeEventListener("focusout",t.onFocusOut),t.onActionListener&&i.removeEventListener("lmvzAction",t.onActionListener),i.hide?.(),this.active?.id===t.id&&(this.active=void 0),"action"!==s&&i.dispatchEvent(new CustomEvent("lmvzClose",{detail:{reason:s},bubbles:!0,composed:!0})),t.resolve({reason:s})}pauseTimer(t){if(t.pauseCount+=1,t.pauseCount>1||void 0===t.timerId)return;const s=void 0!==t.timerStartedAt?Date.now()-t.timerStartedAt:0;t.remaining=Math.max(0,t.remaining-s),t.timerStartedAt=void 0,this.clearTimer(t)}resumeTimer(t){t.pauseCount>0&&(t.pauseCount-=1),t.pauseCount>0||t.remaining>0&&this.scheduleTimer(t,t.remaining)}applyToHost(t,s){t.setAttribute("status",s.status??"success"),void 0!==s.actionLabel?t.setAttribute("action-label",s.actionLabel):t.removeAttribute("action-label")}open(t){const o=s[t.priority??"normal"];if(void 0!==this.active&&o<this.active.priority){let t;const s=new Promise((s=>{t=s}));return t({reason:"swallowed"}),{id:e(),closed:s,dismiss(){}}}void 0!==this.active&&this.dismissActive(this.active,"overridden");const n=this.getHost();if(void 0===n){const t=e();let s;const i=new Promise((t=>{s=t}));return s({reason:"swallowed"}),{id:t,closed:i,dismiss(){}}}const r=e(),c=0===t.duration?0:t.duration??i[t.status??"success"];let a;const d=new Promise((t=>{a=t})),h={id:r,priority:o,resolve:a,timerId:void 0,remaining:c,timerStartedAt:void 0,pauseCount:0,hostEl:n,onPointerEnter:()=>this.pauseTimer(h),onPointerLeave:()=>this.resumeTimer(h),onFocusIn:()=>this.pauseTimer(h),onFocusOut:()=>this.resumeTimer(h)};this.active=h,n.addEventListener("pointerenter",h.onPointerEnter),n.addEventListener("pointerleave",h.onPointerLeave),n.addEventListener("focusin",h.onFocusIn),n.addEventListener("focusout",h.onFocusOut),this.applyToHost(n,t);const u=()=>{void 0!==this.active&&this.active.id===r&&(t.onAction?.(),this.dismissActive(h,"action"))};return h.onActionListener=u,n.addEventListener("lmvzAction",u,{once:!0}),n.show?.(),queueMicrotask((()=>n.setAttribute("message",t.message))),c>0&&this.scheduleTimer(h,c),{id:r,closed:d,dismiss:()=>{this.active?.id===r&&this.dismissActive(h,"manual")}}}dismiss(t){this.active&&(t&&this.active.id!==t||this.dismissActive(this.active,"manual"))}}window.LmvzApi??={},window.LmvzApi.SnackbarController=n,window.LmvzApi??={},window.LmvzApi.typedIconFromSet=t;export{n as S}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as t,H as e,c as n,h as o,d as r,t as i}from"./p-DbBJxuBm.js";import{i as a}from"./p-BDonpCG8.js";import{i as s}from"./p-DyQ1GbaN.js";import{a as l}from"./p--mU29mrX.js";import{w as c,a as u}from"./p-DZj20TV1.js";import{h as f,g as d,m as p,w as m,b as h,l as v}from"./p-DJLdOjL4.js";const y=Math.min,g=Math.max,w=Math.round,x=t=>({x:t,y:t}),b={left:"right",right:"left",bottom:"top",top:"bottom"};function z(t,e,n){return g(t,y(e,n))}function A(t,e){return"function"==typeof t?t(e):t}function C(t){return t.split("-")[0]}function E(t){return t.split("-")[1]}function k(t){return"x"===t?"y":"x"}function S(t){return"y"===t?"height":"width"}function D(t){const e=t[0];return"t"===e||"b"===e?"y":"x"}function F(t){return k(D(t))}function O(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}const R=["left","right"],j=["right","left"],L=["top","bottom"],P=["bottom","top"];function T(t){const e=C(t);return b[e]+t.slice(e.length)}function B(t){const{x:e,y:n,width:o,height:r}=t;return{width:o,height:r,top:n,left:e,right:e+o,bottom:n+r,x:e,y:n}}function M(t,e,n){let{reference:o,floating:r}=t;const i=D(e),a=F(e),s=S(a),l=C(e),c="y"===i,u=o.x+o.width/2-r.width/2,f=o.y+o.height/2-r.height/2,d=o[s]/2-r[s]/2;let p;switch(l){case"top":p={x:u,y:o.y-r.height};break;case"bottom":p={x:u,y:o.y+o.height};break;case"right":p={x:o.x+o.width,y:f};break;case"left":p={x:o.x-r.width,y:f};break;default:p={x:o.x,y:o.y}}switch(E(e)){case"start":p[a]-=d*(n&&c?-1:1);break;case"end":p[a]+=d*(n&&c?-1:1)}return p}async function $(t,e){var n;void 0===e&&(e={});const{x:o,y:r,platform:i,rects:a,elements:s,strategy:l}=t,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:d=!1,padding:p=0}=A(e,t),m=function(t){return"number"!=typeof t?function(t){return{top:0,right:0,bottom:0,left:0,...t}}(t):{top:t,right:t,bottom:t,left:t}}(p),h=s[d?"floating"===f?"reference":"floating":f],v=B(await i.getClippingRect({element:null==(n=await(null==i.isElement?void 0:i.isElement(h)))||n?h:h.contextElement||await(null==i.getDocumentElement?void 0:i.getDocumentElement(s.floating)),boundary:c,rootBoundary:u,strategy:l})),y="floating"===f?{x:o,y:r,width:a.floating.width,height:a.floating.height}:a.reference,g=await(null==i.getOffsetParent?void 0:i.getOffsetParent(s.floating)),w=await(null==i.isElement?void 0:i.isElement(g))&&await(null==i.getScale?void 0:i.getScale(g))||{x:1,y:1},x=B(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:y,offsetParent:g,strategy:l}):y);return{top:(v.top-x.top+m.top)/w.y,bottom:(x.bottom-v.bottom+m.bottom)/w.y,left:(v.left-x.left+m.left)/w.x,right:(x.right-v.right+m.right)/w.x}}const H=new Set(["left","top"]);function N(){return"undefined"!=typeof window}function G(t){return X(t)?(t.nodeName||"").toLowerCase():"#document"}function J(t){var e;return(null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function V(t){var e;return null==(e=(X(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function X(t){return!!N()&&(t instanceof Node||t instanceof J(t).Node)}function I(t){return!!N()&&(t instanceof Element||t instanceof J(t).Element)}function Q(t){return!!N()&&(t instanceof HTMLElement||t instanceof J(t).HTMLElement)}function U(t){return!(!N()||"undefined"==typeof ShadowRoot)&&(t instanceof ShadowRoot||t instanceof J(t).ShadowRoot)}function Y(t){const{overflow:e,overflowX:n,overflowY:o,display:r}=rt(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&"inline"!==r&&"contents"!==r}function Z(t){return/^(table|td|th)$/.test(G(t))}function _(t){try{if(t.matches(":popover-open"))return!0}catch(t){}try{return t.matches(":modal")}catch(t){return!1}}const q=/transform|translate|scale|rotate|perspective|filter/,K=/paint|layout|strict|content/,W=t=>!!t&&"none"!==t;let tt;function et(t){const e=I(t)?rt(t):t;return W(e.transform)||W(e.translate)||W(e.scale)||W(e.rotate)||W(e.perspective)||!nt()&&(W(e.backdropFilter)||W(e.filter))||q.test(e.willChange||"")||K.test(e.contain||"")}function nt(){return null==tt&&(tt="undefined"!=typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),tt}function ot(t){return/^(html|body|#document)$/.test(G(t))}function rt(t){return J(t).getComputedStyle(t)}function it(t){return I(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function at(t){if("html"===G(t))return t;const e=t.assignedSlot||t.parentNode||U(t)&&t.host||V(t);return U(e)?e.host:e}function st(t){const e=at(t);return ot(e)?t.ownerDocument?t.ownerDocument.body:t.body:Q(e)&&Y(e)?e:st(e)}function lt(t,e){var n;void 0===e&&(e=[]);const o=st(t),r=o===(null==(n=t.ownerDocument)?void 0:n.body),i=J(o);return r?e.concat(i,i.visualViewport||[],Y(o)?o:[],[]):e.concat(o,lt(o,[]))}function ct(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function ut(t){const e=rt(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;const r=Q(t),i=r?t.offsetWidth:n,a=r?t.offsetHeight:o,s=w(n)!==i||w(o)!==a;return s&&(n=i,o=a),{width:n,height:o,$:s}}function ft(t){return I(t)?t:t.contextElement}function dt(t){const e=ft(t);if(!Q(e))return x(1);const n=e.getBoundingClientRect(),{width:o,height:r,$:i}=ut(e);let a=(i?w(n.width):n.width)/o,s=(i?w(n.height):n.height)/r;return a&&Number.isFinite(a)||(a=1),s&&Number.isFinite(s)||(s=1),{x:a,y:s}}const pt=x(0);function mt(t){const e=J(t);return nt()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:pt}function ht(t,e,n,o){void 0===e&&(e=!1),void 0===n&&(n=!1);const r=t.getBoundingClientRect(),i=ft(t);let a=x(1);e&&(o?I(o)&&(a=dt(o)):a=dt(t));const s=function(t,e,n){return void 0===e&&(e=!1),!(!n||e&&n!==J(t))&&e}(i,n,o)?mt(i):x(0);let l=(r.left+s.x)/a.x,c=(r.top+s.y)/a.y,u=r.width/a.x,f=r.height/a.y;if(i){const t=J(i),e=o&&I(o)?J(o):o;let n=t,r=ct(n);for(;r&&o&&e!==n;){const t=dt(r),e=r.getBoundingClientRect(),o=rt(r),i=e.left+(r.clientLeft+parseFloat(o.paddingLeft))*t.x,a=e.top+(r.clientTop+parseFloat(o.paddingTop))*t.y;l*=t.x,c*=t.y,u*=t.x,f*=t.y,l+=i,c+=a,n=J(r),r=ct(n)}}return B({width:u,height:f,x:l,y:c})}function vt(t,e){const n=it(t).scrollLeft;return e?e.left+n:ht(V(t)).left+n}function yt(t,e){const n=t.getBoundingClientRect();return{x:n.left+e.scrollLeft-vt(t,n),y:n.top+e.scrollTop}}function gt(t,e,n){let o;if("viewport"===e)o=function(t,e){const n=J(t),o=V(t),r=n.visualViewport;let i=o.clientWidth,a=o.clientHeight,s=0,l=0;if(r){i=r.width,a=r.height;const t=nt();(!t||t&&"fixed"===e)&&(s=r.offsetLeft,l=r.offsetTop)}const c=vt(o);if(c<=0){const t=o.ownerDocument,e=t.body,n=getComputedStyle(e),r="CSS1Compat"===t.compatMode&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,a=Math.abs(o.clientWidth-e.clientWidth-r);a<=25&&(i-=a)}else c<=25&&(i+=c);return{width:i,height:a,x:s,y:l}}(t,n);else if("document"===e)o=function(t){const e=V(t),n=it(t),o=t.ownerDocument.body,r=g(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),i=g(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight);let a=-n.scrollLeft+vt(t);const s=-n.scrollTop;return"rtl"===rt(o).direction&&(a+=g(e.clientWidth,o.clientWidth)-r),{width:r,height:i,x:a,y:s}}(V(t));else if(I(e))o=function(t,e){const n=ht(t,!0,"fixed"===e),o=n.top+t.clientTop,r=n.left+t.clientLeft,i=Q(t)?dt(t):x(1);return{width:t.clientWidth*i.x,height:t.clientHeight*i.y,x:r*i.x,y:o*i.y}}(e,n);else{const n=mt(t);o={x:e.x-n.x,y:e.y-n.y,width:e.width,height:e.height}}return B(o)}function wt(t,e){const n=at(t);return!(n===e||!I(n)||ot(n))&&("fixed"===rt(n).position||wt(n,e))}function xt(t,e,n){const o=Q(e),r=V(e),i="fixed"===n,a=ht(t,!0,i,e);let s={scrollLeft:0,scrollTop:0};const l=x(0);function c(){l.x=vt(r)}if(o||!o&&!i)if(("body"!==G(e)||Y(r))&&(s=it(e)),o){const t=ht(e,!0,i,e);l.x=t.x+e.clientLeft,l.y=t.y+e.clientTop}else r&&c();i&&!o&&r&&c();const u=!r||o||i?x(0):yt(r,s);return{x:a.left+s.scrollLeft-l.x-u.x,y:a.top+s.scrollTop-l.y-u.y,width:a.width,height:a.height}}function bt(t){return"static"===rt(t).position}function zt(t,e){if(!Q(t)||"fixed"===rt(t).position)return null;if(e)return e(t);let n=t.offsetParent;return V(t)===n&&(n=n.ownerDocument.body),n}function At(t,e){const n=J(t);if(_(t))return n;if(!Q(t)){let e=at(t);for(;e&&!ot(e);){if(I(e)&&!bt(e))return e;e=at(e)}return n}let o=zt(t,e);for(;o&&Z(o)&&bt(o);)o=zt(o,e);return o&&ot(o)&&bt(o)&&!et(o)?n:o||function(t){let e=at(t);for(;Q(e)&&!ot(e);){if(et(e))return e;if(_(e))return null;e=at(e)}return null}(t)||n}const Ct={convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{elements:e,rect:n,offsetParent:o,strategy:r}=t;const i="fixed"===r,a=V(o),s=!!e&&_(e.floating);if(o===a||s&&i)return n;let l={scrollLeft:0,scrollTop:0},c=x(1);const u=x(0),f=Q(o);if((f||!f&&!i)&&(("body"!==G(o)||Y(a))&&(l=it(o)),f)){const t=ht(o);c=dt(o),u.x=t.x+o.clientLeft,u.y=t.y+o.clientTop}const d=!a||f||i?x(0):yt(a,l);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+u.x+d.x,y:n.y*c.y-l.scrollTop*c.y+u.y+d.y}},getDocumentElement:V,getClippingRect:function(t){let{element:e,boundary:n,rootBoundary:o,strategy:r}=t;const i=[..."clippingAncestors"===n?_(e)?[]:function(t,e){const n=e.get(t);if(n)return n;let o=lt(t,[]).filter((t=>I(t)&&"body"!==G(t))),r=null;const i="fixed"===rt(t).position;let a=i?at(t):t;for(;I(a)&&!ot(a);){const e=rt(a),n=et(a);n||"fixed"!==e.position||(r=null),(i?!n&&!r:!n&&"static"===e.position&&r&&("absolute"===r.position||"fixed"===r.position)||Y(a)&&!n&&wt(t,a))?o=o.filter((t=>t!==a)):r=e,a=at(a)}return e.set(t,o),o}(e,this._c):[].concat(n),o],a=gt(e,i[0],r);let s=a.top,l=a.right,c=a.bottom,u=a.left;for(let t=1;t<i.length;t++){const n=gt(e,i[t],r);s=g(n.top,s),l=y(n.right,l),c=y(n.bottom,c),u=g(n.left,u)}return{width:l-u,height:c-s,x:u,y:s}},getOffsetParent:At,getElementRects:async function(t){const e=this.getOffsetParent||At,n=this.getDimensions,o=await n(t.floating);return{reference:xt(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}},getClientRects:function(t){return Array.from(t.getClientRects())},getDimensions:function(t){const{width:e,height:n}=ut(t);return{width:e,height:n}},getScale:dt,isElement:I,isRTL:function(t){return"rtl"===rt(t).direction}},Et=function(t){return void 0===t&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:o,placement:r,platform:i}=e,{mainAxis:a=!0,crossAxis:s=!1,limiter:l={fn:t=>{let{x:e,y:n}=t;return{x:e,y:n}}},...c}=A(t,e),u={x:n,y:o},f=await i.detectOverflow(e,c),d=D(C(r)),p=k(d);let m=u[p],h=u[d];a&&(m=z(m+f["y"===p?"top":"left"],m,m-f["y"===p?"bottom":"right"])),s&&(h=z(h+f["y"===d?"top":"left"],h,h-f["y"===d?"bottom":"right"]));const v=l.fn({...e,[p]:m,[d]:h});return{...v,data:{x:v.x-n,y:v.y-o,enabled:{[p]:a,[d]:s}}}}}},kt=function(t){return void 0===t&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:r,middlewareData:i,rects:a,initialPlacement:s,platform:l,elements:c}=e,{mainAxis:u=!0,crossAxis:f=!0,fallbackPlacements:d,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=!0,...v}=A(t,e);if(null!=(n=i.arrow)&&n.alignmentOffset)return{};const y=C(r),g=D(s),w=C(s)===s,x=await(null==l.isRTL?void 0:l.isRTL(c.floating)),b=d||(w||!h?[T(s)]:function(t){const e=T(t);return[O(t),e,O(e)]}(s)),z="none"!==m;!d&&z&&b.push(...function(t,e,n,o){const r=E(t);let i=function(t,e,n){switch(t){case"top":case"bottom":return n?e?j:R:e?R:j;case"left":case"right":return e?L:P;default:return[]}}(C(t),"start"===n,o);return r&&(i=i.map((t=>t+"-"+r)),e&&(i=i.concat(i.map(O)))),i}(s,h,m,x));const k=[s,...b],B=await l.detectOverflow(e,v),M=[];let $=(null==(o=i.flip)?void 0:o.overflows)||[];if(u&&M.push(B[y]),f){const t=function(t,e,n){void 0===n&&(n=!1);const o=E(t),r=F(t),i=S(r);let a="x"===r?o===(n?"end":"start")?"right":"left":"start"===o?"bottom":"top";return e.reference[i]>e.floating[i]&&(a=T(a)),[a,T(a)]}(r,a,x);M.push(B[t[0]],B[t[1]])}if($=[...$,{placement:r,overflows:M}],!M.every((t=>t<=0))){var H,N;const t=((null==(H=i.flip)?void 0:H.index)||0)+1,e=k[t];if(e&&("alignment"!==f||g===D(e)||$.every((t=>D(t.placement)!==g||t.overflows[0]>0))))return{data:{index:t,overflows:$},reset:{placement:e}};let n=null==(N=$.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:N.placement;if(!n)switch(p){case"bestFit":{var G;const t=null==(G=$.filter((t=>{if(z){const e=D(t.placement);return e===g||"y"===e}return!0})).map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,e)=>t+e),0)])).sort(((t,e)=>t[1]-e[1]))[0])?void 0:G[0];t&&(n=t);break}case"initialPlacement":n=s}if(r!==n)return{reset:{placement:n}}}return{}}}},St=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.lmvzOpen=n(this,"lmvzOpen",7),this.lmvzClose=n(this,"lmvzClose",7),this.lmvzCancel=n(this,"lmvzCancel",7)}get el(){return this}extEventController=new AbortController;closureController;containerEl;slotEl;previouslyFocusedElement=null;anchorEl;open=!1;anchor;placement="bottom-start";size="sm";autoFocus=!0;containerRole="dialog";label;lmvzOpen;lmvzClose;lmvzCancel;async show(){this.open=!0}async hide(){this.triggerClose()}async toggle(){this.open?await this.hide():await this.show()}componentDidLoad(){Ft(this.el)}handleOpenChange(t){t?this.onOpen():this.onClose()}async handleAnchorChange(t){if(!t)return console.warn("anchor property missing for popover",this.el?.id),void(this.anchor=void 0);await c(),this.anchorEl="string"==typeof t?document.getElementById(t):t,this.setupAnchorEl(),this.open&&this.updatePosition()}disconnectedCallback(){this.removeCloseHandlers(),this.extEventController.abort()}setupAnchorEl(){const{anchorEl:t}=this;t?(t.hasAttribute("aria-haspopup")||t.setAttribute("aria-haspopup","dialog"===this.containerRole?"dialog":this.containerRole),t.setAttribute("aria-controls",this.el.getAttribute("id")),t.hasAttribute("aria-expanded")||t.setAttribute("aria-expanded",this.open?"true":"false"),f(t)&&l(t,this.toggle.bind(this),this.extEventController.signal),function(t,e,n,o){if(!a())return;const r=!!e,i=t.hasAttribute("aria-labelledby");r||i||console.warn("[lmvz-popover] Host element has no accessible label. Provide a `label` prop or an `aria-labelledby` attribute pointing to a valid element."),n&&(o?h(o)||console.warn("[lmvz-popover] Anchor element is not interactive. Ensure the anchor is a button, link, input, select, textarea, has a `tabindex` attribute, or has an ARIA role that implies interactivity (button, link, menuitem, option, combobox, listbox, checkbox, radio, switch, tab)."):console.warn("[lmvz-popover] Anchor prop is set but resolved to null. Ensure the anchor element exists in the DOM when the component loads."))}(this.el,this.label,this.anchor,t)):console.warn("no anchor element set for",this)}async updatePosition(){const{anchorEl:t}=this,e=this.containerEl;if(!t||!e)return;const n=function(t){return"start"===t?"left":"end"===t?"right":t}(this.placement),{x:o,y:r}=await((t,e,n)=>{const o=new Map,r={platform:Ct,...n},i={...r.platform,_c:o};return(async(t,e,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:i=[],platform:a}=n,s=a.detectOverflow?a:{...a,detectOverflow:$},l=await(null==a.isRTL?void 0:a.isRTL(e));let c=await a.getElementRects({reference:t,floating:e,strategy:r}),{x:u,y:f}=M(c,o,l),d=o,p=0;const m={};for(let n=0;n<i.length;n++){const h=i[n];if(!h)continue;const{name:v,fn:y}=h,{x:g,y:w,data:x,reset:b}=await y({x:u,y:f,initialPlacement:o,placement:d,strategy:r,middlewareData:m,rects:c,platform:s,elements:{reference:t,floating:e}});u=null!=g?g:u,f=null!=w?w:f,m[v]={...m[v],...x},b&&p<50&&(p++,"object"==typeof b&&(b.placement&&(d=b.placement),b.rects&&(c=!0===b.rects?await a.getElementRects({reference:t,floating:e,strategy:r}):b.rects),({x:u,y:f}=M(c,d,l))),n=-1)}return{x:u,y:f,placement:d,strategy:r,middlewareData:m}})(t,e,{...r,platform:i})})(t,e,{placement:n,middleware:[(i=4,void 0===i&&(i=0),{name:"offset",options:i,async fn(t){var e,n;const{x:o,y:r,placement:a,middlewareData:s}=t,l=await async function(t,e){const{placement:n,platform:o,elements:r}=t,i=await(null==o.isRTL?void 0:o.isRTL(r.floating)),a=C(n),s=E(n),l="y"===D(n),c=H.has(a)?-1:1,u=i&&l?-1:1,f=A(e,t);let{mainAxis:d,crossAxis:p,alignmentAxis:m}="number"==typeof f?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return s&&"number"==typeof m&&(p="end"===s?-1*m:m),l?{x:p*u,y:d*c}:{x:d*c,y:p*u}}(t,i);return a===(null==(e=s.offset)?void 0:e.placement)&&null!=(n=s.arrow)&&n.alignmentOffset?{}:{x:o+l.x,y:r+l.y,data:{...l,placement:a}}}}),kt(),Et({padding:8})]});var i;e.style.left=`${o}px`,e.style.top=`${r}px`}async onOpen(){this.previouslyFocusedElement=d(document),this.setupCloseHandlers(),await u(),await this.updatePosition(),Ft(this.el),this.applyAnchorAriaOpen(),this.lmvzOpen.emit(),await u(),this.autoFocus&&"dialog"===this.containerRole&&this.focusFirst()}onClose(){this.removeCloseHandlers(),this.applyAnchorAriaClose(),this.restoreFocus(),this.lmvzClose.emit()}applyAnchorAriaOpen(){this.anchorEl&&this.anchorEl.setAttribute("aria-expanded","true")}applyAnchorAriaClose(){this.anchorEl&&this.anchorEl.setAttribute("aria-expanded","false")}focusFirst(){const{slotEl:t}=this;if(!t)return;const e=t.assignedElements({flatten:!0});for(const t of e){if(!p(t))continue;if(s(t))return void t.initFocus();const e=m(t,v);if(e)return void e.focus()}}restoreFocus(){const t=this.previouslyFocusedElement;t?.isConnected&&t.focus(),this.previouslyFocusedElement=null}triggerClose(){this.lmvzCancel.emit().defaultPrevented||(this.open=!1)}setupCloseHandlers(){this.closureController=new AbortController;const t={signal:this.closureController.signal};document.addEventListener("mousedown",(t=>{if(!this.open)return;const e=(t.target?.shadowRoot??document).elementFromPoint(t.x,t.y)??t.target;this.el===t.target||this.el.contains(e)||this.el.contains(t.target)||this.triggerClose()}),t),document.addEventListener("keydown",(t=>{this.open&&"Escape"===t.key&&this.triggerClose()}),t)}removeCloseHandlers(){this.closureController?.abort()}render(){return o(r,{key:"83529aeac05cdc706193fa8bbbcc8f8672756111",role:this.containerRole,"aria-label":this.label||void 0},o("div",{key:"97c255e788806c0dec2f4ed04c6fc815150912a2",part:"container",class:`container lmvz-wrapper-card-${this.size}`,ref:t=>this.containerEl=t},o("slot",{key:"e4ea69d179557e7d34f1475c07c9284ea8d10a67",ref:t=>this.slotEl=t})))}static get watchers(){return{open:[{handleOpenChange:0}],anchor:[{handleAnchorChange:1}]}}static get style(){return"@layer lmvz-ds.reset,lmvz-ds.theme,lmvz-ds.components,lmvz-ds.overrides; @layer lmvz-ds.components{.lmvz-wrapper-card-sm,.lmvz-wrapper-card-md,.lmvz-wrapper-card-lg{background:var(--lmvz-semantic-color-surface-primary, #ffffff);box-shadow:var(--lmvz-ds-shadow-l3-default-strong, 0 2px 32px 0 rgba(120, 120, 128, 0.11))}.lmvz-wrapper-card-sm{padding:var(--lmvz-component-wrapper-sm-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)) var(--lmvz-component-wrapper-sm-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem));border-radius:var(--lmvz-component-wrapper-sm-border-radius, 14px)}.lmvz-wrapper-card-md{padding:var(--lmvz-component-wrapper-md-padding-y, clamp(1rem, 0.88rem + 0.52vw, 1.5rem)) var(--lmvz-component-wrapper-md-padding-x, clamp(1rem, 0.88rem + 0.52vw, 1.5rem));border-radius:var(--lmvz-component-wrapper-md-border-radius, 18px)}.lmvz-wrapper-card-lg{padding:var(--lmvz-component-wrapper-lg-padding-y, clamp(2.25rem, 2.19rem + 0.26vw, 2.5rem)) var(--lmvz-component-wrapper-lg-padding-x, clamp(1.5rem, 1.14rem + 1.55vw, 3rem));border-radius:var(--lmvz-component-wrapper-lg-border-radius, 18px)}}:host{--lmvz-popover-z-index-internal:var(--lmvz-popover-z-index, 100);display:contents;.container{position:absolute;top:-9999999999px;left:-9999999999px;max-width:var(--lmvz-popover-max-width, none);max-height:var(--lmvz-popover-max-height, none);z-index:var(--lmvz-popover-z-index-internal);overflow:auto;box-sizing:border-box}}:host(:not([open])){display:none}"}},[769,"lmvz-popover",{open:[1540],anchor:[1],placement:[1],size:[1],autoFocus:[4,"auto-focus"],containerRole:[1,"container-role"],label:[1],anchorEl:[32],show:[64],hide:[64],toggle:[64]},void 0,{open:[{handleOpenChange:0}],anchor:[{handleAnchorChange:1}]}]);let Dt=0;function Ft(t){t.getAttribute("id")||t.setAttribute("id","lmvz-popover-"+Dt++)}function Ot(){"undefined"!=typeof customElements&&["lmvz-popover"].forEach((t=>{"lmvz-popover"===t&&(customElements.get(i(t))||customElements.define(i(t),St))}))}export{St as L,Ot as d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as n,e as o}from"./p-DjvtQE7c.js";const e=Symbol.for("LMVZ__iconProviderRegistry"),i={};function t(){return"undefined"==typeof window?i:window[e]??(window[e]={})}function r(n,o){const e=t(),i=n;Object.prototype.hasOwnProperty.call(e,i)&&console.warn(`Icon provider with name "${i}" is already registered. Overwriting existing provider.`),e[i]=o}function s(n){const o=t();if(n)return o[n];const e=Object.keys(o);if(0===e.length)return;e.length>1&&console.warn(`Multiple icon providers registered (${e.join(", ")}). Using the first one: "${e[0]}".`);const i=e[0];return i?o[i]:void 0}async function c(e){const{icon:i,iconset:t}=e;return await(async()=>{const o=s(t);if(o)try{const e=await Promise.resolve(o.resolve(i));if(!e?.svg)return void console.warn(`Icon "${i}"${t?` from set "${t}"`:""} not found in provider. Using default icon.`);const r=n(e.svg);if(r)return r}catch(n){return void console.error(`Error resolving icon "${i}" with provider:`,n)}else console.warn(`No icon provider registered. Unable to resolve icon "${i}"${t?` from set "${t}"`:""}. Using default icon.`)})()||(console.error(`Icon "${i}" not found${t?` in set "${t}"`:""}. Using default icon.`),o())}function d(n,o){return{iconset:n,icon:o}}export{c as a,s as g,r,d as t}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const I="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuNzUgMTIuNTYyNUw4LjgzMDc5IDE3LjYyNUwyMC40Mzc1IDYuMzc1IiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K";export{I as c}
|