@luzmo/lucero 1.0.1-alpha.21 → 1.0.1-alpha.23
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/components/accordion/index.cjs +6 -6
- package/components/accordion/index.js +9 -8
- package/components/action-bar/index.cjs +4 -4
- package/components/action-bar/index.js +10 -8
- package/components/action-button/index.cjs +3 -3
- package/components/action-button/index.js +5 -4
- package/components/action-group/index.cjs +1 -1
- package/components/action-group/index.js +1 -1
- package/components/{action-group-C9dsPJg-.js → action-group-Bwt9w8Vh.js} +10 -9
- package/components/action-group-D917z7XF.cjs +20 -0
- package/components/action-menu/index.cjs +9 -9
- package/components/action-menu/index.js +9 -9
- package/components/avatar/index.cjs +3 -3
- package/components/avatar/index.js +6 -6
- package/components/base-5nDSSNeT.cjs +18 -0
- package/components/base-CdYjmV_8.js +96 -0
- package/components/button/index.cjs +2 -2
- package/components/button/index.js +7 -6
- package/components/{button-base-BwbaTInD.js → button-base-B5uul3tZ.js} +5 -5
- package/components/button-base-C7or8-FB.cjs +25 -0
- package/components/button-group/index.cjs +1 -1
- package/components/button-group/index.js +10 -8
- package/components/calendar/index.cjs +96 -1
- package/components/calendar/index.js +538 -6
- package/components/checkbox/index.cjs +4 -4
- package/components/checkbox/index.js +6 -4
- package/components/{checkbox-mixin-BOTvuPEu.js → checkbox-mixin-DUbGDm7f.js} +9 -9
- package/components/{checkbox-mixin-BVPpXtsq.cjs → checkbox-mixin-DhN8CIXY.cjs} +3 -3
- package/components/{clear-button-ahIIuwV-.js → clear-button-BFtJVPzm.js} +14 -13
- package/components/clear-button-_a8GjtJC.cjs +18 -0
- package/components/{close-button-DFh14y6u.js → close-button-D9qjjy2w.js} +13 -12
- package/components/close-button-TZ08VFmi.cjs +18 -0
- package/components/color-area/index.cjs +5 -5
- package/components/color-area/index.js +10 -9
- package/components/color-controller-7sNUf7SP.js +386 -0
- package/components/color-controller-ChN-A9Ft.cjs +18 -0
- package/components/color-field/index.cjs +2 -2
- package/components/color-field/index.js +4 -3
- package/components/color-handle/index.cjs +2 -2
- package/components/color-handle/index.js +7 -5
- package/components/color-loupe/index.cjs +1 -1
- package/components/color-loupe/index.js +1 -1
- package/components/color-loupe-CIEFp7ln.cjs +56 -0
- package/components/{color-loupe-DmQe3SpP.js → color-loupe-CLPX6xVb.js} +6 -4
- package/components/color-menu/index.cjs +7 -7
- package/components/color-menu/index.js +7 -7
- package/components/color-palette/index.cjs +1 -1
- package/components/color-palette/index.js +4 -3
- package/components/color-palette-group/index.cjs +3 -3
- package/components/color-palette-group/index.js +33 -32
- package/components/color-picker/index.cjs +4 -4
- package/components/color-picker/index.js +11 -11
- package/components/color-slider/index.cjs +40 -1
- package/components/color-slider/index.js +452 -6
- package/components/date-time-picker/index.cjs +16 -16
- package/components/date-time-picker/index.js +104 -105
- package/components/divider/index.cjs +1 -1
- package/components/divider/index.js +10 -8
- package/components/field-group/index.cjs +1 -1
- package/components/field-group/index.js +1 -1
- package/components/field-group-BYHNJmv0.cjs +23 -0
- package/components/{field-group-D4B0IOdA.js → field-group-CHmw159R.js} +7 -5
- package/components/field-label/index.cjs +1 -1
- package/components/field-label/index.js +1 -1
- package/components/{field-label-DxmPiC5p.js → field-label-Cy3xMWZ-.js} +9 -8
- package/components/field-label-DZoeqJJX.cjs +25 -0
- package/components/{focusable-C5JjRZmT.js → focusable-BjvsvVam.js} +2 -1
- package/components/focusable-CbVKgGfS.cjs +18 -0
- package/components/icon/index.cjs +1 -1
- package/components/icon/index.js +20 -18
- package/components/index.cjs +1 -1
- package/components/index.js +18 -18
- package/components/infield-button/index.cjs +2 -2
- package/components/infield-button/index.js +4 -3
- package/components/label/index.cjs +1 -1
- package/components/label/index.js +6 -4
- package/components/like-anchor-B2EqJPdw.cjs +32 -0
- package/components/{like-anchor-DCFJN0LV.js → like-anchor-CgqCU210.js} +23 -22
- package/components/{manage-help-text-DNqdEkTA.cjs → manage-help-text-Bat9yGvF.cjs} +3 -3
- package/components/{manage-help-text-CHfMLzSa.js → manage-help-text-C9sCHK3R.js} +8 -8
- package/components/menu/index.cjs +16 -16
- package/components/menu/index.js +18 -19
- package/components/multi-language-field/index.cjs +2 -2
- package/components/multi-language-field/index.js +8 -6
- package/components/number-field/index.cjs +6 -6
- package/components/number-field/index.js +34 -35
- package/components/observe-slot-presence-CNltc0C0.cjs +18 -0
- package/components/{observe-slot-presence-CmVi0zTc.js → observe-slot-presence-DFi6GE3H.js} +1 -1
- package/components/observe-slot-text-CBMHpuIK.cjs +18 -0
- package/components/{observe-slot-text-C3moTjwy.js → observe-slot-text-DorVpCL4.js} +14 -15
- package/components/options/index.cjs +26 -58
- package/components/options/index.js +205 -849
- package/components/overlay/index.cjs +6 -6
- package/components/overlay/index.js +30 -31
- package/components/overlay-DpWon1Rp.js +1736 -0
- package/components/overlay-nUwFClQq.cjs +47 -0
- package/components/{pending-state-bJr-nEJl.cjs → pending-state-DQctFHI8.cjs} +2 -2
- package/components/{pending-state-B2wWssTo.js → pending-state-Dx1u3EXA.js} +2 -2
- package/components/picker/index.cjs +1 -1
- package/components/picker/index.js +2 -2
- package/components/{picker-BsQJBF9j.js → picker-Cm6_didQ.js} +19 -20
- package/components/picker-DxYgh4LR.cjs +123 -0
- package/components/picker-button/index.cjs +4 -4
- package/components/picker-button/index.js +7 -6
- package/components/{platform-BiXhwqk3.cjs → platform-BJnOJJag.cjs} +1 -1
- package/components/{platform-BM-uMWpX.js → platform-CqwNrovd.js} +12 -12
- package/components/popover/index.cjs +1 -1
- package/components/popover/index.js +1 -1
- package/components/popover-lcZnODPK.cjs +30 -0
- package/components/{popover-iD8f5Jkp.js → popover-ucIgjbQs.js} +8 -7
- package/components/progress-circle/index.cjs +1 -1
- package/components/progress-circle/index.js +1 -1
- package/components/{progress-circle-USIIU1up.js → progress-circle-D5J0ZwY0.js} +8 -7
- package/components/progress-circle-DgMbqrzG.cjs +33 -0
- package/components/radio/index.cjs +2 -2
- package/components/radio/index.js +10 -9
- package/components/search/index.cjs +6 -6
- package/components/search/index.js +5 -5
- package/components/select/index.cjs +43 -43
- package/components/select/index.js +33 -33
- package/components/{directive-C7oCP5Bh.cjs → sized-mixin-DcvJLFeo.cjs} +1 -5
- package/components/{sized-mixin-CJbBHWRQ.js → sized-mixin-cJbo3PKR.js} +5 -5
- package/components/slider/index.cjs +1 -1
- package/components/slider/index.js +48 -1101
- package/components/{streaming-listener-BQ68fKMa.js → streaming-listener-BlWm-XZU.js} +5 -6
- package/components/streaming-listener-D9Wc7skA.cjs +18 -0
- package/components/swatch/index.cjs +7 -7
- package/components/swatch/index.js +13 -12
- package/components/switch/index.cjs +2 -2
- package/components/switch/index.js +5 -4
- package/components/tabs/index.cjs +16 -24
- package/components/tabs/index.js +93 -161
- package/components/tags/index.cjs +4 -4
- package/components/tags/index.js +13 -12
- package/components/text-field/index.cjs +3 -3
- package/components/text-field/index.js +12 -10
- package/components/{text-field-C2n3rzCK.js → text-field-BTEpwGFu.js} +73 -99
- package/components/text-field-JMrsh-zo.cjs +81 -0
- package/components/toast/index.cjs +11 -11
- package/components/toast/index.js +9 -7
- package/components/tooltip/index.cjs +4 -4
- package/components/tooltip/index.js +8 -7
- package/components/unit-input/index.cjs +6 -6
- package/components/unit-input/index.js +27 -26
- package/components/utils.cjs +1 -1
- package/components/utils.js +5 -5
- package/package.json +62 -1
- package/components/NumberFormatter-DewVDY5w.cjs +0 -18
- package/components/NumberFormatter-DgOUVrge.js +0 -136
- package/components/NumberParser-Dik4a0h-.cjs +0 -18
- package/components/NumberParser-ci9J5EKv.js +0 -173
- package/components/action-group-C54IxNZk.cjs +0 -20
- package/components/async-directive-BwIAw5tB.js +0 -82
- package/components/async-directive-DLz6JB0v.cjs +0 -22
- package/components/base-BjTwmyRF.cjs +0 -22
- package/components/base-CFWO09N1.js +0 -684
- package/components/base-Cy0MQrPT.cjs +0 -40
- package/components/base-D76d76ww.js +0 -26
- package/components/button-base-CC9ZL53k.cjs +0 -25
- package/components/class-map-CGfNk3Ee.js +0 -51
- package/components/class-map-D-Y-hsN5.cjs +0 -22
- package/components/clear-button-CHcbu9Bz.cjs +0 -18
- package/components/close-button-DMd52_KV.cjs +0 -18
- package/components/color-controller-B0uX6Zso.js +0 -3230
- package/components/color-controller-CoUL5f9K.cjs +0 -18
- package/components/color-loupe-CrM2DVY3.cjs +0 -56
- package/components/directive-helpers-D4KMv2dC.js +0 -62
- package/components/directive-helpers-t-TVum7J.cjs +0 -22
- package/components/directive-oAbCiebi.js +0 -44
- package/components/field-group-5WQMBOk4.cjs +0 -23
- package/components/field-label-Dz9kisdW.cjs +0 -25
- package/components/flow-D-0MTYCm.js +0 -527
- package/components/flow-DM3dNAKs.cjs +0 -30
- package/components/focusable-B_KwfEec.cjs +0 -18
- package/components/if-defined-DULpqYwi.js +0 -27
- package/components/if-defined-DaXWqfzc.cjs +0 -22
- package/components/index-CNK8wHXu.cjs +0 -57
- package/components/index-Cf6G4q52.js +0 -1490
- package/components/index-D3ICqC7S.js +0 -1174
- package/components/index-hqVbNKYy.cjs +0 -113
- package/components/like-anchor-Bu3pXbjT.cjs +0 -32
- package/components/luzmo-icons-CiSek5iM.js +0 -229
- package/components/luzmo-icons-CtA-TJPd.cjs +0 -29
- package/components/mutation-controller-DH7YOCyj.js +0 -52
- package/components/mutation-controller-DkOMCW-c.cjs +0 -22
- package/components/observe-slot-presence-bc9chhsi.cjs +0 -18
- package/components/observe-slot-text-D2VAEFSd.cjs +0 -18
- package/components/overlay-B3ajDLLq.cjs +0 -47
- package/components/overlay-CUKs69yr.js +0 -2745
- package/components/picker-X96xmLAw.cjs +0 -123
- package/components/popover-fwJeZHMQ.cjs +0 -30
- package/components/progress-circle-DZxaMe8L.cjs +0 -33
- package/components/query-BL-TJj7K.cjs +0 -22
- package/components/query-D_KR_GUc.js +0 -51
- package/components/query-assigned-elements-DjfhL1cl.js +0 -36
- package/components/query-assigned-elements-DsKsfk7G.cjs +0 -22
- package/components/query-assigned-nodes-BcKWmGzy.cjs +0 -22
- package/components/query-assigned-nodes-C76XVPWY.js +0 -36
- package/components/sized-mixin-WPHH0a_D.cjs +0 -18
- package/components/state-DwIwYPvt.js +0 -29
- package/components/state-vf0PJN3_.cjs +0 -22
- package/components/streaming-listener-DeGQYM-9.cjs +0 -18
- package/components/style-map-Bnhf_mVZ.js +0 -53
- package/components/style-map-DuMd5xlY.cjs +0 -22
- package/components/text-field-BkFPYo7S.cjs +0 -85
- package/components/when-CDK1Tt5Y.js +0 -28
- package/components/when-CDZyJPvd.cjs +0 -22
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/*! * Lucero - The design system for Luzmo.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2025 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
|
|
6
|
+
* This license allows users with a current active Luzmo account to use Lucero.
|
|
7
|
+
* This license terminates automatically if a user no longer has an active Luzmo account.
|
|
8
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
9
|
+
*
|
|
10
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
11
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
12
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
13
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
14
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
15
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
|
+
* SOFTWARE.
|
|
17
|
+
* */
|
|
18
|
+
"use strict";const O=require("lit"),u=require("lit/decorators.js"),$=require("lit/directives/if-defined.js"),G=require("lit/directives/style-map.js"),M=require("./random-id-CqvckpWe.cjs"),Y=require("./element-resolution-BvRLGqIU.cjs"),le=require("./base-5nDSSNeT.cjs"),x=require("./focusable-selectors-BgFlyFcY.cjs"),b=require("@floating-ui/dom"),J=require("./slottable-request-event-BfUUt1Mh.cjs"),H=require("./condition-attribute-with-id-DrQYZzFS.cjs"),k=require("./platform-BJnOJJag.cjs");function he(a,e,t=[]){for(const[i,s]of e.entries()){const n=a[i],r=n.parentElement||n.getRootNode();t[i]&&t[i](s),r&&r!==n&&n.replaceWith(s),delete a[i]}return e}const ce=(a,e,{position:t,prepareCallback:i}={position:"beforeend"})=>{let{length:s}=a;if(s===0)return()=>a;let n=1,r=0;(t==="afterbegin"||t==="afterend")&&(n=-1,r=s-1);const o=new Array(s),h=new Array(s),p=typeof document<"u"?document.createComment("placeholder for reparented element"):null;do{const l=a[r];i&&(h[r]=i(l)),o[r]=p.cloneNode();const c=l.parentElement||l.getRootNode();c&&c!==l&&c.replaceChild(o[r],l),e.insertAdjacentElement(t,l),r+=n}while(--s>0);return function(){return he(o,a,h)}},pe=1e3,de=1e3;class ue{constructor(e={}){this.warmUpDelay=pe,this.coolDownDelay=de,this.isWarm=!1,this.timeout=0,Object.assign(this,e)}openTimer(e){if(this.cancelCooldownTimer(),!this.component||e!==this.component)return this.component&&(this.close(this.component),this.cancelCooldownTimer()),this.component=e,this.isWarm?Promise.resolve(!1):(this.promise=new Promise(t=>{this.resolve=t,this.timeout=typeof window<"u"?window.setTimeout(()=>{this.resolve&&(this.resolve(!1),this.isWarm=!0)},this.warmUpDelay):0}),this.promise);if(this.promise)return this.promise;throw new Error("Inconsistent state")}close(e){this.component&&this.component===e&&(this.resetCooldownTimer(),this.timeout>0&&(clearTimeout(this.timeout),this.timeout=0),this.resolve&&(this.resolve(!0),delete this.resolve),delete this.promise,delete this.component)}resetCooldownTimer(){this.isWarm&&(this.cooldownTimeout&&typeof window<"u"&&window.clearTimeout(this.cooldownTimeout),this.cooldownTimeout=typeof window<"u"?window.setTimeout(()=>{this.isWarm=!1,delete this.cooldownTimeout},this.coolDownDelay):void 0)}cancelCooldownTimer(){this.cooldownTimeout&&typeof window<"u"&&window.clearTimeout(this.cooldownTimeout),delete this.cooldownTimeout}}const D=new ue,E=()=>{},q=(a,e,t)=>{const i=new AbortController,s=new Map,n=()=>{i.abort(),t()};let r,o;const h=requestAnimationFrame(()=>{r=requestAnimationFrame(()=>{o=requestAnimationFrame(()=>{n()})})}),p=c=>{c.target===a&&(s.set(c.propertyName,s.get(c.propertyName)-1),s.get(c.propertyName)||s.delete(c.propertyName),s.size===0&&n())},l=c=>{c.target===a&&(s.has(c.propertyName)||s.set(c.propertyName,0),s.set(c.propertyName,s.get(c.propertyName)+1),cancelAnimationFrame(h),cancelAnimationFrame(r),cancelAnimationFrame(o))};a.addEventListener("transitionrun",l,{signal:i.signal}),a.addEventListener("transitionend",p,{signal:i.signal}),a.addEventListener("transitioncancel",p,{signal:i.signal}),e()};function f(){return new Promise(a=>requestAnimationFrame(()=>a()))}class C extends le.LuzmoElement{constructor(){super(...arguments),this.dispose=E,this.offset=0,this.willPreventClose=!1}applyFocus(e,t){}get delayed(){return!1}set delayed(e){}get disabled(){return!1}set disabled(e){}get elementResolver(){return this._elementResolver}set elementResolver(e){this._elementResolver=e}ensureOnDOM(e){}makeTransition(e){return null}manageDelay(e){}manageDialogOpen(){}managePopoverOpen(){}managePosition(){}get open(){return!1}set open(e){}get placementController(){return this._placementController}set placementController(e){this._placementController=e}requestSlottable(){}returnFocus(){}get state(){return"closed"}set state(e){}manuallyKeepOpen(){}static update(){const e=new CustomEvent("luzmo-update-overlays",{bubbles:!0,composed:!0,cancelable:!0});document.dispatchEvent(e)}static async open(e,t,i,s){await Promise.resolve().then(()=>N);const n=arguments.length===2,r=i||e,o=new this;let h=!1;const p=ce([r],o,{position:"beforeend",prepareCallback:v=>{const P=v.slot;return v.removeAttribute("slot"),()=>{v.slot=P}}});if(o.dispose=()=>{o.addEventListener("luzmo-closed",()=>{h||(p(),h=!0),requestAnimationFrame(()=>{o.remove()})}),o.open=!1,o.dispose=E},!n&&r&&s){const v=e,P=t,g=s;return C.applyOptions(o,{...g,delayed:g.delayed||r.hasAttribute("delayed"),trigger:g.virtualTrigger||v,type:P==="modal"?"modal":P==="hover"?"hint":"auto"}),v.after(o),await o.updateComplete,o.open=!0,o.dispose}const c=t;return o.append(r),C.applyOptions(o,{...c,delayed:c.delayed||r.hasAttribute("delayed")}),o.updateComplete.then(()=>{o.open=!0}),o}static applyOptions(e,t){e.delayed=!!t.delayed,e.receivesFocus=t.receivesFocus??"auto",e.triggerElement=t.trigger||null,e.type=t.type||"modal",e.offset=t.offset??0,e.placement=t.placement,e.willPreventClose=!!t.notImmediatelyClosable}}const W=a=>a.querySelector(x.userFocusableSelector),B=a=>a.assignedElements().find(t=>t.matches(x.userFocusableSelector));class K extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="open",this.newState="closed"}}class j extends Event{constructor(){super("beforetoggle",{bubbles:!1,composed:!1}),this.currentState="closed",this.newState="open"}}class y extends Event{constructor(e,t,{publish:i,interaction:s,reason:n}){super(e,{bubbles:i,composed:i}),this.overlay=t,this.detail={interaction:s,reason:n}}}class S{constructor(e,t){this.x=0,this.y=0,this.x=e,this.y=t}updateBoundingClientRect(e,t){this.x=e,this.y=t,C.update()}getBoundingClientRect(){return{width:0,height:0,top:this.y,right:this.x,y:this.y,x:this.x,bottom:this.y,left:this.x,toJSON(){}}}}function me(a){class e extends a{async manageDialogOpen(){const i=this.open;if(await f(),await this.managePosition(),this.open!==i)return;const s=await this.dialogMakeTransition(i);this.open===i&&await this.dialogApplyFocus(i,s)}dialogMakeTransition(i){let s=null;const n=(o,h)=>()=>{if(o.open=i,!i){const l=()=>{o.removeEventListener("close",l)};o.addEventListener("close",l)}if(h>0)return;const p=i?j:K;this.dispatchEvent(new p),i&&(o.matches(x.userFocusableSelector)&&(s=o),s=s||W(o),s||o.querySelectorAll("slot").forEach(c=>{s||(s=B(c))}),!(!this.isConnected||this.dialogEl.open)&&this.dialogEl.showModal())},r=(o,h)=>()=>{if(this.open!==i)return;const p=i?"luzmo-opened":"luzmo-closed";if(h>0){o.dispatchEvent(new y(p,this,{interaction:this.type,publish:!1}));return}if(!this.isConnected||i!==this.open)return;const l=async()=>{const c=this.triggerElement instanceof S;this.dispatchEvent(new y(p,this,{interaction:this.type,publish:c})),o.dispatchEvent(new y(p,this,{interaction:this.type,publish:!1})),this.triggerElement&&!c&&this.triggerElement.dispatchEvent(new y(p,this,{interaction:this.type,publish:!0})),this.state=i?"opened":"closed",this.returnFocus(),await f(),await f(),i===this.open&&i===!1&&this.requestSlottable()};!i&&this.dialogEl.open?(this.dialogEl.addEventListener("close",()=>{l()},{once:!0}),this.dialogEl.close()):l()};return this.elements.forEach((o,h)=>{q(o,n(o,h),r(o,h))}),s}dialogApplyFocus(i,s){this.applyFocus(i,s)}}return e}function ge(a){class e extends a{async managePopoverOpen(){await this.managePosition()}async manageDelay(i){if(i===!1||i!==this.open){D.close(this);return}this.delayed&&await D.openTimer(this)&&(this.open=!i)}ensureOnDOM(i){document.body.offsetHeight}makeTransition(i){if(this.open!==i)return null;let s=null;const n=(o,h)=>()=>{if(i!==this.open)return;if(o.open=i,h===0){const l=i?j:K;this.dispatchEvent(new l)}if(i!==!0||(o.matches(x.userFocusableSelector)&&(s=o),s=s||W(o),s))return;o.querySelectorAll("slot").forEach(l=>{s||(s=B(l))})},r=(o,h)=>async()=>{if(this.open!==i)return;const p=i?"luzmo-opened":"luzmo-closed";if(o.dispatchEvent(new y(p,this,{interaction:this.type})),h>0)return;const l=this.triggerElement instanceof S;this.dispatchEvent(new y(p,this,{interaction:this.type,publish:l})),this.triggerElement&&!l&&this.triggerElement.dispatchEvent(new y(p,this,{interaction:this.type,publish:!0})),this.state=i?"opened":"closed",this.returnFocus(),await f(),await f(),i===this.open&&i===!1&&this.requestSlottable()};return this.elements.forEach((o,h)=>{q(o,n(o,h),r(o,h))}),s}}return e}const fe=CSS.supports("(overlay: auto)");function Q(a){let e=!1;try{e=a.matches(":popover-open")}catch{}let t=!1;try{t=a.matches(":open")}catch{}return e||t}function ve(a){class e extends a{async manageDelay(i){if(i===!1||i!==this.open){D.close(this);return}this.delayed&&await D.openTimer(this)&&(this.open=!i)}shouldHidePopover(i){if(i&&this.open!==i)return;const s=async({newState:n}={})=>{n!=="open"&&await this.placementController.resetOverlayPosition()};if(!Q(this.dialogEl)){s();return}this.dialogEl.addEventListener("toggle",s,{once:!0})}shouldShowPopover(i){let s=!1;try{s=this.dialogEl.matches(":popover-open")}catch{}let n=!1;try{n=this.dialogEl.matches(":open")}catch{}i&&this.open===i&&!s&&!n&&this.isConnected&&(this.dialogEl.showPopover(),this.managePosition())}async ensureOnDOM(i){fe||await this.shouldHidePopover(i),this.shouldShowPopover(i),await f()}makeTransition(i){if(this.open!==i)return null;let s=null;const n=(o,h)=>()=>{if(o.open=i,h===0){const l=i?j:K;this.dispatchEvent(new l)}if(!i||(o.matches(x.userFocusableSelector)&&(s=o),s=s||W(o),s))return;o.querySelectorAll("slot").forEach(l=>{s||(s=B(l))})},r=(o,h)=>()=>{if(this.open!==i)return;const p=i?"luzmo-opened":"luzmo-closed";if(h>0){o.dispatchEvent(new y(p,this,{interaction:this.type,publish:!1}));return}const l=async()=>{if(this.open!==i)return;await f();const v=this.triggerElement instanceof S;this.dispatchEvent(new y(p,this,{interaction:this.type,publish:v})),o.dispatchEvent(new y(p,this,{interaction:this.type,publish:!1})),this.triggerElement&&!v&&this.triggerElement.dispatchEvent(new y(p,this,{interaction:this.type,publish:!0})),this.state=i?"opened":"closed",this.returnFocus(),await f(),await f(),i===this.open&&i===!1&&this.requestSlottable()};if(this.open!==i)return;const c=Q(this.dialogEl);i!==!0&&c&&this.isConnected?(this.dialogEl.addEventListener("beforetoggle",()=>{l()},{once:!0}),this.dialogEl.hidePopover()):l()};return this.elements.forEach((o,h)=>{q(o,n(o,h),r(o,h))}),s}}return e}const ye=typeof document<"u"&&"showPopover"in document.createElement("div");class be{constructor(){this.root=typeof document>"u"?null:document.body,this.stack=[],this.handleScroll=e=>{typeof document<"u"&&e.target!==document&&e.target!==document.documentElement&&e.target!==document.body||this.stack.forEach(t=>{t.open&&(t.type==="auto"&&t.triggerElement instanceof HTMLElement&&t.triggerElement.closest("luzmo-picker, luzmo-select, luzmo-action-menu")&&e.stopPropagation(),typeof document<"u"&&document.dispatchEvent(new CustomEvent("luzmo-update-overlays",{bubbles:!0,composed:!0,cancelable:!0})))})},this.handlePointerdown=e=>{this.pointerdownPath=e.composedPath(),this.lastOverlay=this.stack.at(-1)},this.handlePointerup=()=>{const e=this.pointerdownPath;if(this.pointerdownPath=void 0,this.stack.length===0||!(e!=null&&e.length))return;const t=this.lastOverlay;this.lastOverlay=void 0;const i=this.stack.length-1,s=this.stack.filter((n,r)=>!e.find(h=>h===n||h===(n==null?void 0:n.triggerElement)&&(n==null?void 0:n.type)==="hint"||r===i&&n!==t&&n.triggerInteraction==="longpress")&&!n.shouldPreventClose()&&n.type!=="manual"&&!(n.type==="modal"&&t!==n));s.reverse(),s.forEach(n=>{this.closeOverlay(n);let r=n.parentOverlayToForceClose;for(;r;)this.closeOverlay(r),r=r.parentOverlayToForceClose})},this.handleBeforetoggle=e=>{const{target:t,newState:i}=e;i!=="open"&&this.closeOverlay(t)},this.handleKeydown=e=>{if(e.code!=="Escape"||this.stack.length===0)return;const t=this.stack.at(-1);if((t==null?void 0:t.type)==="page"){e.preventDefault();return}if((t==null?void 0:t.type)==="manual"){this.closeOverlay(t);return}ye||t&&this.closeOverlay(t)},typeof document<"u"&&this.bindEvents()}get document(){return this.root.ownerDocument||document}bindEvents(){typeof document<"u"&&(this.document.addEventListener("pointerdown",this.handlePointerdown),this.document.addEventListener("pointerup",this.handlePointerup),this.document.addEventListener("keydown",this.handleKeydown),this.document.addEventListener("scroll",this.handleScroll,{capture:!0}))}closeOverlay(e){const t=this.stack.indexOf(e);t!==-1&&this.stack.splice(t,1),e.open=!1}overlaysByTriggerElement(e){return this.stack.filter(t=>t.triggerElement===e)}add(e){if(this.stack.includes(e)){const t=this.stack.indexOf(e);t!==-1&&(this.stack.splice(t,1),this.stack.push(e));return}if(e.type==="auto"||e.type==="modal"||e.type==="page"){const t="luzmo-overlay-query-path",i=new Event(t,{composed:!0,bubbles:!0});e.addEventListener(t,s=>{const n=s.composedPath();this.stack.forEach(r=>{!n.find(h=>h===r)&&r.type!=="manual"&&r.type!=="modal"&&this.closeOverlay(r)})},{once:!0}),e.dispatchEvent(i)}else if(e.type==="hint"){if(this.stack.some(i=>i.type!=="manual"&&i.triggerElement&&i.triggerElement===e.triggerElement)){e.open=!1;return}this.stack.forEach(i=>{i.type==="hint"&&this.closeOverlay(i)})}requestAnimationFrame(()=>{this.stack.push(e),e.addEventListener("beforetoggle",this.handleBeforetoggle,{once:!0})})}remove(e){this.closeOverlay(e)}}const X=new be,we=':host{display:contents;pointer-events:none;--luzmo-overlay-animation-distance: .5rem}:host(:has(> luzmo-tooltip)){--luzmo-overlay-animation-distance: var( --luzmo-tooltip-animation-distance, 4px )}.dialog{margin:0;border:0;background:none;padding:0;position:fixed;overflow:visible;opacity:1!important;box-sizing:border-box;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);height:auto;inset:auto;top:0;left:0;display:flex;--luzmo-overlay-open: true}.dialog:not([is-visible]){display:none}.dialog:focus{outline:none}dialog:modal{--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}:host(:not([open])) .dialog{--luzmo-overlay-open: false}.dialog::backdrop{display:none}.dialog:before{position:absolute;top:-999em;right:-999em;bottom:-999em;left:-999em;content:"";pointer-events:auto!important}.dialog:not(.not-immediately-closable):before{display:none}.dialog>div{width:100%}::slotted(*){pointer-events:auto;visibility:visible!important}::slotted(luzmo-popover){position:static}.dialog:not([actual-placement])[placement*=top]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:var(--luzmo-overlay-animation-distance)}.dialog:not([actual-placement])[placement*=right]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog:not([actual-placement])[placement*=bottom]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog:not([actual-placement])[placement*=left]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:var(--luzmo-overlay-animation-distance)}.dialog[actual-placement*=top]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:var(--luzmo-overlay-animation-distance)}.dialog[actual-placement*=right]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog[actual-placement*=bottom]{padding-block:var(--luzmo-overlay-animation-distance);margin-top:calc(-1 * var(--luzmo-overlay-animation-distance))}.dialog[actual-placement*=left]{padding-inline:var(--luzmo-overlay-animation-distance);margin-left:var(--luzmo-overlay-animation-distance)}slot[name=longpress-describedby-descriptor]{display:none}@supports selector(:open){.dialog{opacity:0}.dialog:open{opacity:1;--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}}@supports selector(:popover-open){.dialog{opacity:0}.dialog:popover-open{opacity:1;--luzmo-popover-filter: drop-shadow(0px 2px 6px rgba(0, 0, 0, .15))}}@supports (overlay: auto){.dialog{display:none;transition:all var(--luzmo-overlay-animation-duration, .13s),translate 0s,display var(--luzmo-overlay-animation-duration, .13s);transition-behavior:allow-discrete}.dialog:popover-open,.dialog:modal{display:flex}}@supports (not selector(:open)) and (not selector(:popover-open)){:host:not([open]) .dialog{pointer-events:none}.dialog[actual-placement]{z-index:calc(var(--luzmo-overlay-z-index-base, 1000) + var(--luzmo-overlay-open-count))}}';function A(a){if(a===void 0)return 0;const e=window.devicePixelRatio||1;return Math.round(a*e)/e}const R=8,Ee=100,Pe=a=>({left:["right","bottom","top"],"left-start":["right-start","bottom","top"],"left-end":["right-end","bottom","top"],right:["left","bottom","top"],"right-start":["left-start","bottom","top"],"right-end":["left-end","bottom","top"],top:["bottom","left","right"],"top-start":["bottom-start","left","right"],"top-end":["bottom-end","left","right"],bottom:["top","left","right"],"bottom-start":["top-start","left","right"],"bottom-end":["top-end","left","right"]})[a]??[a],Ce=Symbol("placement updated");class Z{constructor(e){this.originalPlacements=new WeakMap,this.allowPlacementUpdate=!1,this.closeForAncestorUpdate=()=>{!this.allowPlacementUpdate&&this.options.type!=="modal"&&this.cleanup&&this.target.dispatchEvent(new Event("close",{bubbles:!0})),this.allowPlacementUpdate=!1},this.updatePlacement=()=>{this.computePlacement()},this.resetOverlayPosition=()=>{!this.target||!this.options||(this.clearOverlayPosition(),this.host.offsetHeight,this.computePlacement())},this.host=e,this.host.addController(this)}placeOverlay(e=this.target,t=this.options){if(this.target=e,this.options=t,!e||!t)return;const i=b.autoUpdate(t.trigger,e,this.closeForAncestorUpdate,{ancestorResize:!1,elementResize:!1,layoutShift:!1}),s=b.autoUpdate(t.trigger,e,this.updatePlacement,{ancestorScroll:!1});this.cleanup=()=>{var n;(n=this.host.elements)==null||n.forEach(r=>{r.addEventListener("luzmo-closed",()=>{const o=this.originalPlacements.get(r);o&&r.setAttribute("placement",o),this.originalPlacements.delete(r)},{once:!0})}),i(),s()}}async computePlacement(){var v,P;const{options:e,target:t}=this;await(document.fonts?document.fonts.ready:Promise.resolve());const i=e.trigger instanceof HTMLElement?b.flip():b.flip({padding:R,fallbackPlacements:Pe(e.placement)}),[s=0,n=0]=Array.isArray(e==null?void 0:e.offset)?e.offset:[e.offset,0],r=(v=this.host.elements.find(g=>g.tipElement))==null?void 0:v.tipElement,o=[b.offset({mainAxis:s,crossAxis:n}),b.shift({padding:R}),i,b.size({padding:R,apply:({availableWidth:g,availableHeight:U,rects:{floating:re}})=>{const V=Math.max(Ee,Math.floor(U)),L=re.height;this.initialHeight=this.isConstrained&&this.initialHeight||L,this.isConstrained=L<this.initialHeight||V<=L;const ae=this.isConstrained?`${V}px`:"";Object.assign(t.style,{maxWidth:`${Math.floor(g)}px`,maxHeight:ae})}}),...r?[b.arrow({element:r,padding:e.tipPadding||R})]:[]],{x:h,y:p,placement:l,middlewareData:c}=await b.computePosition(e.trigger,t,{placement:e.placement,middleware:o,strategy:"fixed"});if(Object.assign(t.style,{top:"0px",left:"0px",translate:`${A(h)}px ${A(p)}px`}),t.setAttribute("actual-placement",l),(P=this.host.elements)==null||P.forEach(g=>{this.originalPlacements.has(g)||this.originalPlacements.set(g,g.getAttribute("placement")),g.setAttribute("placement",l)}),r&&c.arrow){const{x:g,y:U}=c.arrow;Object.assign(r.style,{top:l.startsWith("right")||l.startsWith("left")?"0px":"",left:l.startsWith("bottom")||l.startsWith("top")?"0px":"",translate:`${A(g)}px ${A(U)}px`})}}clearOverlayPosition(){this.target&&(this.target.style.removeProperty("max-height"),this.target.style.removeProperty("max-width"),this.initialHeight=void 0,this.isConstrained=!1)}hostConnected(){document.addEventListener("luzmo-update-overlays",this.resetOverlayPosition)}hostUpdated(){var e;this.host.open||((e=this.cleanup)==null||e.call(this),this.cleanup=void 0)}hostDisconnected(){var e;(e=this.cleanup)==null||e.call(this),this.cleanup=void 0,document.removeEventListener("luzmo-update-overlays",this.resetOverlayPosition)}}var T=(a=>(a.click="click",a.hover="hover",a.longpress="longpress",a))(T||{});const _=Symbol("lastInteractionType"),z="remove-focus-ring-safari-hack";class I{constructor(e,{overlay:t,isPersistent:i,handleOverlayReady:s}){this.target=e,this.isLazilyOpen=!1,this.isPersistent=!1,this.isPersistent=!!i,this.handleOverlayReady=s,this.isPersistent&&this.init(),this.overlay=t}get activelyOpening(){return!1}get open(){var e;return((e=this.overlay)==null?void 0:e.open)??this.isLazilyOpen}set open(e){if(e!==this.open){if(this.isLazilyOpen=e,this.overlay){this.overlay.open=e,this.target[_]=this.type;return}e&&(customElements.whenDefined("luzmo-overlay").then(async()=>{const{LuzmoOverlay:t}=await Promise.resolve().then(()=>N);this.overlay=new t,this.overlay.open=!0,this.target[_]=this.type}),Promise.resolve().then(()=>N))}}get overlay(){return this._overlay}set overlay(e){var t;e&&this.overlay!==e&&(this.overlay&&this.overlay.removeController(this),this._overlay=e,this.overlay.addController(this),this.initOverlay(),this.prepareDescription(this.target),(t=this.handleOverlayReady)==null||t.call(this,this.overlay))}prepareDescription(e){}releaseDescription(){}shouldCompleteOpen(){}init(){}initOverlay(){}abort(){var e;this.releaseDescription(),(e=this.abortController)==null||e.abort()}hostConnected(){this.init()}hostDisconnected(){this.isPersistent||this.abort()}}class ee extends I{constructor(){super(...arguments),this.type=T.click,this.preventNextToggle=!1}handleClick(){this.preventNextToggle||(this.open=!this.open),this.preventNextToggle=!1}handlePointerdown(){this.preventNextToggle=this.open}init(){var t;(t=this.abortController)==null||t.abort(),this.abortController=new AbortController;const{signal:e}=this.abortController;this.target.addEventListener("click",()=>this.handleClick(),{signal:e}),this.target.addEventListener("pointerdown",()=>this.handlePointerdown(),{signal:e})}}const Te=300;class te extends I{constructor(){super(...arguments),this.type=T.hover,this.elementIds=[],this.focusedin=!1,this.pointerentered=!1}handleKeyup(e){(e.code==="Tab"||e.code==="Escape")&&(this.open=!0,this.removeSafariFocusRingClass())}handleTargetFocusin(){if(this.target.matches(":focus-visible")){if(k.isWebKit()&&this.target[_]===T.click){this.target.classList.add(z);return}this.open=!0,this.focusedin=!0,this.removeSafariFocusRingClass()}}handleTargetFocusout(){this.removeSafariFocusRingClass(),this.focusedin=!1,!this.pointerentered&&(this.open=!1)}handleTargetPointerenter(){var e;this.hoverTimeout&&(clearTimeout(this.hoverTimeout),this.hoverTimeout=void 0),!((e=this.overlay)!=null&&e.disabled)&&(this.open=!0,this.pointerentered=!0)}handleTargetPointerleave(){this.doPointerleave()}handleHostPointerenter(){this.hoverTimeout&&(clearTimeout(this.hoverTimeout),this.hoverTimeout=void 0)}handleHostPointerleave(){this.doPointerleave()}prepareDescription(){if(this.overlay.elements.length===0)return;const e=this.target.getRootNode(),t=this.overlay.elements[0].getRootNode(),i=this.overlay.getRootNode();e===i?this.prepareOverlayRelativeDescription():e===t&&this.prepareContentRelativeDescription()}prepareOverlayRelativeDescription(){const e=H.conditionAttributeWithId(this.target,"aria-describedby",[this.overlay.id]);this.releaseDescription=()=>{e(),this.releaseDescription=E}}prepareContentRelativeDescription(){const e=[],t=this.overlay.elements.map(s=>(e.push(s.id),s.id||(s.id=`${this.overlay.tagName.toLowerCase()}-helper-${M.randomID()}`),s.id));this.elementIds=e;const i=H.conditionAttributeWithId(this.target,"aria-describedby",t);this.releaseDescription=()=>{i(),this.overlay.elements.map((s,n)=>{s.id=this.elementIds[n]}),this.releaseDescription=E}}doPointerleave(){this.pointerentered=!1;const e=this.target;this.focusedin&&e.matches(":focus-visible")||(this.hoverTimeout=setTimeout(()=>{this.open=!1},Te))}init(){var t;(t=this.abortController)==null||t.abort(),this.abortController=new AbortController;const{signal:e}=this.abortController;this.target.addEventListener("keyup",i=>this.handleKeyup(i),{signal:e}),this.target.addEventListener("focusin",()=>this.handleTargetFocusin(),{signal:e}),this.target.addEventListener("focusout",()=>this.handleTargetFocusout(),{signal:e}),this.target.addEventListener("pointerenter",()=>this.handleTargetPointerenter(),{signal:e}),this.target.addEventListener("pointerleave",()=>this.handleTargetPointerleave(),{signal:e}),this.overlay&&this.initOverlay()}initOverlay(){if(!this.abortController)return;const{signal:e}=this.abortController;this.overlay.addEventListener("pointerenter",()=>this.handleHostPointerenter(),{signal:e}),this.overlay.addEventListener("pointerleave",()=>this.handleHostPointerleave(),{signal:e})}removeSafariFocusRingClass(){k.isWebKit()&&this.target.classList.contains(z)&&this.target.classList.remove(z)}}const Oe=300,ie={touch:"Double tap and long press for additional options",keyboard:"Press Space or Alt+Down Arrow for additional options",mouse:"Click and hold for additional options"};class se extends I{constructor(){super(...arguments),this.type=T.longpress,this.longpressState=null,this.releaseDescription=E,this.handlePointerup=()=>{var e;clearTimeout(this.timeout),this.target&&(this.longpressState=((e=this.overlay)==null?void 0:e.state)==="opening"?"pressed":null,document.removeEventListener("pointerup",this.handlePointerup),document.removeEventListener("pointercancel",this.handlePointerup))}}get activelyOpening(){return this.longpressState==="opening"||this.longpressState==="pressed"}handleLongpress(){this.open=!0,this.longpressState=this.longpressState==="potential"?"opening":"pressed"}handlePointerdown(e){!this.target||e.button!==0||(this.longpressState="potential",document.addEventListener("pointerup",this.handlePointerup),document.addEventListener("pointercancel",this.handlePointerup),"holdAffordance"in this.target)||(this.timeout=setTimeout(()=>{this.target&&this.target.dispatchEvent(new CustomEvent("longpress",{bubbles:!0,composed:!0,detail:{source:"pointer"}}))},Oe))}handleKeydown(e){const{code:t,altKey:i}=e;i&&t==="ArrowDown"&&(e.stopPropagation(),e.stopImmediatePropagation())}handleKeyup(e){const{code:t,altKey:i}=e;if(t==="Space"||i&&t==="ArrowDown"){if(!this.target)return;e.stopPropagation(),this.target.dispatchEvent(new CustomEvent("longpress",{bubbles:!0,composed:!0,detail:{source:"keyboard"}})),setTimeout(()=>{this.longpressState=null})}}prepareDescription(e){if(this.releaseDescription!==E||this.overlay.elements.length===0)return;const t=document.createElement("div");t.id=`longpress-describedby-descriptor-${M.randomID()}`;const i=k.isIOS()||k.isAndroid()?"touch":"keyboard";t.textContent=ie[i],t.slot="longpress-describedby-descriptor";const s=e.getRootNode(),n=this.overlay.getRootNode();s===n?this.overlay.append(t):(t.hidden=!("host"in s),e.after(t));const r=H.conditionAttributeWithId(e,"aria-describedby",[t.id]);this.releaseDescription=()=>{r(),t.remove(),this.releaseDescription=E}}shouldCompleteOpen(){this.longpressState=this.longpressState==="pressed"?null:this.longpressState}init(){var t;(t=this.abortController)==null||t.abort(),this.abortController=new AbortController;const{signal:e}=this.abortController;this.target.addEventListener("longpress",()=>this.handleLongpress(),{signal:e}),this.target.addEventListener("pointerdown",i=>this.handlePointerdown(i),{signal:e}),this.prepareDescription(this.target),!this.target.holdAffordance&&(this.target.addEventListener("keydown",i=>this.handleKeydown(i),{signal:e}),this.target.addEventListener("keyup",i=>this.handleKeyup(i),{signal:e}))}}const oe={click:ee,longpress:se,hover:te};var De=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,m=(a,e,t,i)=>{for(var s=i>1?void 0:i?xe(e,t):e,n=a.length-1,r;n>=0;n--)(r=a[n])&&(s=(i?r(e,t,s):r(s))||s);return i&&s&&De(e,t,s),s};const Se=typeof document<"u"&&"showPopover"in document.createElement("div");let F=me(C);F=Se?ve(F):ge(F);var w;const d=(w=class extends F{constructor(){super(...arguments),this._delayed=!1,this._disabled=!1,this.offset=0,this._open=!1,this.lastRequestSlottableState=!1,this.receivesFocus="auto",this._state="closed",this.triggerElement=null,this.type="auto",this.wasOpen=!1,this.closeOnFocusOut=e=>{if(!e.relatedTarget)return;const t=new Event("overlay-relation-query",{bubbles:!0,composed:!0});e.relatedTarget.addEventListener(t.type,i=>{i.composedPath().includes(this)||(this.open=!1)}),e.relatedTarget.dispatchEvent(t)}}get delayed(){var e;return((e=this.elements.at(-1))==null?void 0:e.hasAttribute("delayed"))||this._delayed}set delayed(e){this._delayed=e}get disabled(){return this._disabled}set disabled(e){var t;this._disabled=e,e?((t=this.strategy)==null||t.abort(),this.wasOpen=this.open,this.open=!1):(this.bindEvents(),this.open=this.open||this.wasOpen,this.wasOpen=!1)}get hasNonVirtualTrigger(){return!!this.triggerElement&&!(this.triggerElement instanceof S)}get placementController(){return this._placementController||(this._placementController=new Z(this)),this._placementController}get open(){return this._open}set open(e){var t;e&&this.disabled||e!==this.open&&((t=this.strategy)!=null&&t.activelyOpening&&!e||(this._open=e,this.open&&(w.openCount+=1),this.requestUpdate("open",!this.open),this.open&&this.requestSlottable()))}get state(){return this._state}set state(e){var i;if(e===this.state)return;const t=this.state;this._state=e,(this.state==="opened"||this.state==="closed")&&((i=this.strategy)==null||i.shouldCompleteOpen()),this.requestUpdate("state",t)}get elementResolver(){return this._elementResolver||(this._elementResolver=new Y.ElementResolutionController(this)),this._elementResolver}get usesDialog(){return this.type==="modal"||this.type==="page"}get popoverValue(){if("popover"in this)switch(this.type){case"modal":case"page":return;case"hint":return"manual";default:return this.type}}get requiresPositioning(){return!(this.type==="page"||!this.open||!this.triggerElement||!this.placement&&this.type!=="hint")}managePosition(){if(!this.requiresPositioning||!this.open)return;const e=this.offset||0,t=this.triggerElement,i=this.placement||"right",s=this.tipPadding;this.placementController.placeOverlay(this.dialogEl,{offset:e,placement:i,tipPadding:s,trigger:t,type:this.type})}async managePopoverOpen(){super.managePopoverOpen();const e=this.open;if(this.open!==e||(await this.manageDelay(e),this.open!==e)||(this.triggerInteraction==="longpress"&&await f(),await this.ensureOnDOM(e),this.open!==e))return;const t=await this.makeTransition(e);this.open===e&&await this.applyFocus(e,t)}async applyFocus(e,t){if(!(this.receivesFocus==="false"||this.type==="hint")){if(await f(),await f(),e===this.open&&!this.open){this.hasNonVirtualTrigger&&this.contains(this.getRootNode().activeElement)&&this.triggerElement.focus();return}t==null||t.focus()}}returnFocus(){var t;if(this.open||this.type==="hint")return;const e=()=>{var n,r;const i=[];let s=typeof document<"u"?document.activeElement:null;for(;(n=s==null?void 0:s.shadowRoot)!=null&&n.activeElement;)s=s.shadowRoot.activeElement;for(;s;){const o=s.assignedSlot||s.parentElement||((r=s.getRootNode())==null?void 0:r.host);o&&i.push(o),s=o}return i};this.receivesFocus!=="false"&&((t=this.triggerElement)!=null&&t.focus)&&(this.contains(this.getRootNode().activeElement)||e().includes(this)||typeof document<"u"&&document.activeElement===document.body)&&this.triggerElement.focus()}async manageOpen(e){if(!(!this.isConnected&&this.open)&&(this.hasUpdated||await this.updateComplete,this.open?(X.add(this),this.willPreventClose&&(document.addEventListener("pointerup",()=>{this.dialogEl.classList.toggle("not-immediately-closable",!1),this.willPreventClose=!1},{once:!0}),this.dialogEl.classList.toggle("not-immediately-closable",!0))):(e&&this.dispose(),X.remove(this)),this.open&&this.state!=="opened"?this.state="opening":!this.open&&this.state!=="closed"&&(this.state="closing"),this.usesDialog?this.manageDialogOpen():this.managePopoverOpen(),this.type==="auto")){const t=this.getRootNode();this.open?t.addEventListener("focusout",this.closeOnFocusOut,{capture:!0}):t.removeEventListener("focusout",this.closeOnFocusOut,{capture:!0})}}bindEvents(){var e;(e=this.strategy)==null||e.abort(),this.strategy=void 0,this.hasNonVirtualTrigger&&this.triggerInteraction&&(this.strategy=new oe[this.triggerInteraction](this.triggerElement,{overlay:this}))}handleBeforetoggle(e){e.newState!=="open"&&this.handleBrowserClose(e)}handleBrowserClose(e){var t;if(e.stopPropagation(),!((t=this.strategy)!=null&&t.activelyOpening)){this.open=!1;return}this.manuallyKeepOpen()}manuallyKeepOpen(){this.open=!0,this.placementController.allowPlacementUpdate=!0,this.manageOpen(!1)}handleSlotchange(){var e,t;this.elements.length===0?(e=this.strategy)==null||e.releaseDescription():this.hasNonVirtualTrigger&&((t=this.strategy)==null||t.prepareDescription(this.triggerElement))}shouldPreventClose(){const e=this.willPreventClose;return this.willPreventClose=!1,e}requestSlottable(){this.lastRequestSlottableState!==this.open&&(this.open||document.body.offsetHeight,this.dispatchEvent(new J.SlottableRequestEvent("overlay-content",this.open?{}:J.removeSlottableRequest)),this.lastRequestSlottableState=this.open)}willUpdate(e){var i;if(this.hasAttribute("id")||this.setAttribute("id",`${this.tagName.toLowerCase()}-${M.randomID()}`),e.has("open")&&(this.hasUpdated||this.open)&&this.manageOpen(e.get("open")),e.has("trigger")){const[s,n]=((i=this.trigger)==null?void 0:i.split("@"))||[];this.elementResolver.selector=s?`#${s}`:"",this.triggerInteraction=n}let t=!1;e.has(Y.elementResolverUpdatedSymbol)&&(t=this.triggerElement,this.triggerElement=this.elementResolver.element),e.has("triggerElement")&&(t=e.get("triggerElement")),t!==!1&&this.bindEvents()}updated(e){super.updated(e),e.has("placement")&&(this.placement?this.dialogEl.setAttribute("actual-placement",this.placement):this.dialogEl.removeAttribute("actual-placement"),this.open&&e.get("placement")!==void 0&&this.placementController.resetOverlayPosition()),e.has("state")&&this.state==="closed"&&e.get("state")!==void 0&&this.placementController.clearOverlayPosition()}renderContent(){return O.html` <slot @slotchange=${this.handleSlotchange}></slot> `}get dialogStyleMap(){return{"--luzmo-overlay-open-count":w.openCount.toString()}}renderDialog(){return O.html`
|
|
19
|
+
<dialog
|
|
20
|
+
class="dialog"
|
|
21
|
+
part="dialog"
|
|
22
|
+
placement=${$.ifDefined(this.requiresPositioning?this.placement||"right":void 0)}
|
|
23
|
+
style=${G.styleMap(this.dialogStyleMap)}
|
|
24
|
+
@close=${this.handleBrowserClose}
|
|
25
|
+
@cancel=${this.handleBrowserClose}
|
|
26
|
+
@beforetoggle=${this.handleBeforetoggle}
|
|
27
|
+
?is-visible=${this.state!=="closed"}
|
|
28
|
+
>
|
|
29
|
+
${this.renderContent()}
|
|
30
|
+
</dialog>
|
|
31
|
+
`}renderPopover(){return O.html`
|
|
32
|
+
<div
|
|
33
|
+
class="dialog"
|
|
34
|
+
part="dialog"
|
|
35
|
+
placement=${$.ifDefined(this.requiresPositioning?this.placement||"right":void 0)}
|
|
36
|
+
popover=${$.ifDefined(this.popoverValue)}
|
|
37
|
+
style=${G.styleMap(this.dialogStyleMap)}
|
|
38
|
+
@beforetoggle=${this.handleBeforetoggle}
|
|
39
|
+
@close=${this.handleBrowserClose}
|
|
40
|
+
?is-visible=${this.state!=="closed"}
|
|
41
|
+
>
|
|
42
|
+
${this.renderContent()}
|
|
43
|
+
</div>
|
|
44
|
+
`}render(){const e=this.type==="modal"||this.type==="page";return O.html`
|
|
45
|
+
${e?this.renderDialog():this.renderPopover()}
|
|
46
|
+
<slot name="longpress-describedby-descriptor"></slot>
|
|
47
|
+
`}connectedCallback(){super.connectedCallback(),this.addEventListener("close",()=>{this.open=!1}),this.hasUpdated&&this.bindEvents()}disconnectedCallback(){var e;(e=this.strategy)==null||e.releaseDescription(),this.open=!1,super.disconnectedCallback()}},w.styles=[O.unsafeCSS(we)],w.openCount=1,w);m([u.property({type:Boolean})],d.prototype,"delayed",1);m([u.query(".dialog")],d.prototype,"dialogEl",2);m([u.property({type:Boolean})],d.prototype,"disabled",1);m([u.queryAssignedElements({flatten:!0,selector:':not([slot="longpress-describedby-descriptor"], slot)'})],d.prototype,"elements",2);m([u.property({type:Number})],d.prototype,"offset",2);m([u.property({type:Boolean,reflect:!0})],d.prototype,"open",1);m([u.property()],d.prototype,"placement",2);m([u.property({attribute:"receives-focus"})],d.prototype,"receivesFocus",2);m([u.query("slot")],d.prototype,"slotEl",2);m([u.state()],d.prototype,"state",1);m([u.property({type:Number,attribute:"tip-padding"})],d.prototype,"tipPadding",2);m([u.property()],d.prototype,"trigger",2);m([u.property({attribute:!1})],d.prototype,"triggerElement",2);m([u.property({attribute:!1})],d.prototype,"triggerInteraction",2);m([u.property()],d.prototype,"type",2);let ne=d;const N=Object.freeze(Object.defineProperty({__proto__:null,LuzmoOverlay:ne},Symbol.toStringTag,{value:"Module"}));exports.ClickController=ee;exports.HoverController=te;exports.InteractionController=I;exports.InteractionTypes=T;exports.LONGPRESS_INSTRUCTIONS=ie;exports.LongpressController=se;exports.LuzmoAbstractOverlay=C;exports.LuzmoOverlay=ne;exports.PlacementController=Z;exports.SAFARI_FOCUS_RING_CLASS=z;exports.VirtualTrigger=S;exports.guaranteedAllTransitionend=q;exports.lastInteractionType=_;exports.nextFrame=f;exports.noop=E;exports.overlay=N;exports.overlayTimer=D;exports.placementUpdatedSymbol=Ce;exports.strategies=oe;
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
"use strict";const s=require("
|
|
18
|
+
"use strict";const s=require("lit");require("./progress-circle-DgMbqrzG.cjs");class r{constructor(e){this.cachedAriaLabel=null,this.host=e,this.host.addController(this)}renderPendingState(){const e=this.host.pendingLabel||"Pending";return this.host.pending?s.html`
|
|
19
19
|
<luzmo-progress-circle
|
|
20
20
|
id="loader"
|
|
21
21
|
size="s"
|
|
@@ -23,4 +23,4 @@
|
|
|
23
23
|
aria-valuetext=${e}
|
|
24
24
|
class="progress-circle"
|
|
25
25
|
></luzmo-progress-circle>
|
|
26
|
-
`:s.
|
|
26
|
+
`:s.html``}updateAriaLabel(){const{pending:e,disabled:t,pendingLabel:i}=this.host,a=this.host.getAttribute("aria-label");e&&!t&&a!==i?(this.cachedAriaLabel=a,this.host.setAttribute("aria-label",i||"Pending")):(!e||t)&&(this.cachedAriaLabel?this.host.setAttribute("aria-label",this.cachedAriaLabel):e||this.host.removeAttribute("aria-label"))}hostConnected(){this.cachedAriaLabel||(this.cachedAriaLabel=this.host.getAttribute("aria-label")),this.updateAriaLabel()}hostUpdated(){this.updateAriaLabel()}}exports.PendingStateController=r;
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
import {
|
|
19
|
-
import "./progress-circle-
|
|
18
|
+
import { html as s } from "lit";
|
|
19
|
+
import "./progress-circle-D5J0ZwY0.js";
|
|
20
20
|
class o {
|
|
21
21
|
/**
|
|
22
22
|
* Creates an instance of PendingStateController.
|
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../picker-
|
|
18
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../picker-DxYgh4LR.cjs");customElements.get("luzmo-picker")||customElements.define("luzmo-picker",e.LuzmoPicker);exports.DESCRIPTION_ID=e.DESCRIPTION_ID;exports.LuzmoPicker=e.LuzmoPicker;exports.LuzmoPickerBase=e.LuzmoPickerBase;
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
import { a as r } from "../picker-
|
|
19
|
-
import { D as c, L as z } from "../picker-
|
|
18
|
+
import { a as r } from "../picker-Cm6_didQ.js";
|
|
19
|
+
import { D as c, L as z } from "../picker-Cm6_didQ.js";
|
|
20
20
|
const l = () => {
|
|
21
21
|
if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
|
|
22
22
|
const o = document.createElement("style");
|
|
@@ -15,29 +15,28 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import { F as y } from "./focusable-C5JjRZmT.js";
|
|
18
|
+
import { html as n, nothing as d, render as m, unsafeCSS as g } from "lit";
|
|
19
|
+
import { state as h, query as v, property as l } from "lit/decorators.js";
|
|
20
|
+
import { classMap as f } from "lit/directives/class-map.js";
|
|
21
|
+
import { ifDefined as u } from "lit/directives/if-defined.js";
|
|
22
|
+
import { styleMap as z } from "lit/directives/style-map.js";
|
|
23
|
+
import { F as y } from "./focusable-BjvsvVam.js";
|
|
25
24
|
import { D as w } from "./dependency-manger-CO-VPlqq.js";
|
|
26
|
-
import { M as x, I, s as
|
|
27
|
-
import { P as
|
|
28
|
-
import { S as M } from "./sized-mixin-
|
|
29
|
-
import {
|
|
25
|
+
import { M as x, I, s as S } from "./strategies-Bk97oVn1.js";
|
|
26
|
+
import { P as $ } from "./pending-state-Dx1u3EXA.js";
|
|
27
|
+
import { S as M } from "./sized-mixin-cJbo3PKR.js";
|
|
28
|
+
import { luzmoIcon as b, luzmoAngleDown as C, luzmoAlert as q } from "@luzmo/icons";
|
|
30
29
|
import "./menu/index.js";
|
|
31
30
|
import "./overlay/index.js";
|
|
32
31
|
import "./progress-circle/index.js";
|
|
33
32
|
import "./tooltip/index.js";
|
|
34
33
|
const E = '#button{cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--luzmo-button-font-family, var(--luzmo-font-family));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--luzmo-button-line-height, var(--luzmo-line-height, 1.3));text-transform:none;vertical-align:top;-webkit-appearance:button;transition:background var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,border-color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,box-shadow var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out;justify-content:center;align-items:center;margin:0;-webkit-text-decoration:none;text-decoration:none;display:inline-flex;position:relative;overflow:visible}#button::-moz-focus-inner{border-style:none;padding:0}#button:focus{outline:none}#icon{margin-inline-end:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon));font-size:var(--luzmo-picker-font-size, var(--picker-font-size))}@media (forced-colors: active){:host{--highcontrast-picker-focus-indicator-color: Highlight;--highcontrast-picker-border-color-default: ButtonBorder;--highcontrast-picker-border-color-hover: Highlight;--highcontrast-picker-border-color-disabled: GrayText;--highcontrast-picker-content-color-default: ButtonText;--highcontrast-picker-content-color-disabled: GrayText;--highcontrast-picker-background-color: ButtonFace}#button:focus-visible{--highcontrast-picker-border-color-hover: ButtonText}#button .label,#button:after{forced-color-adjust:none}}#button{box-sizing:border-box;max-inline-size:100%;min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)));block-size:var(--luzmo-picker-block-size, var(--picker-block-size));border-width:var(--luzmo-picker-border-width, var(--picker-border-width));border-radius:var(--luzmo-picker-border-radius, var(--picker-border-radius));box-shadow:var(--luzmo-picker-box-shadow, var(--picker-box-shadow));transition:background-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),box-shadow var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),border-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-style:solid;border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));margin-block-start:var(--luzmo-picker-spacing-label-to-picker, var(--picker-spacing-label-to-picker));padding-block:0;padding-inline-start:var(--luzmo-picker-spacing-edge-to-text, var(--picker-spacing-edge-to-text));padding-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon, var(--picker-spacing-edge-to-disclosure-icon));display:flex}#button:after{pointer-events:none;content:"";block-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);inline-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);border-style:solid;border-width:var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width));border-radius:calc(var(--luzmo-picker-border-radius, var(--picker-border-radius)) + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width)));border-color:#0000;margin-block-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);margin-inline-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);position:absolute;inset-block:0;inset-inline:0}#button:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-active, var(--picker-background-color-active)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-active, var(--picker-border-color-active)))}#button:active:after{border-color:#0000}#button.placeholder:active .label{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}#button:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-key-focus, var(--picker-background-color-key-focus)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-key-focus, var(--picker-border-color-key-focus)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)));outline:none}#button:focus-visible:after{border-color:var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)))}#button.placeholder:focus-visible{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)))}#button:focus-visible .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-key-focus, var(--picker-icon-color-key-focus)))}:host([open]) #button:not(:disabled,.is-disabled){color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default-open, var(--picker-font-color-default-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default-open, var(--picker-background-color-default-open)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-default-open, var(--picker-border-color-default-open)))}:host([open]) #button:not(:disabled,.is-disabled) .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default-open, var(--picker-icon-color-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default, var(--picker-border-color-error-default)))}:host([invalid]) #button:not(:disabled,.is-disabled) .validation-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-error, var(--picker-icon-color-error)))}:host([invalid]) #button:not(:disabled,.is-disabled):active{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-active, var(--picker-border-color-error-active)))}:host([invalid][open]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default-open, var(--picker-border-color-error-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):focus-visible{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-key-focus, var(--picker-border-color-error-key-focus)))}:host([pending]) #button .disclosure-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}.icon{flex-shrink:0}.label{white-space:nowrap;font-size:var(--luzmo-picker-font-size, var(--picker-font-size));line-height:var(--luzmo-picker-line-height, var(--picker-line-height));font-weight:var(--luzmo-picker-font-weight, var(--picker-font-weight));text-overflow:ellipsis;text-align:start;flex:auto;overflow:hidden}.label.placeholder{font-weight:var(--luzmo-picker-placeholder-font-weight, var(--picker-font-weight));font-style:var(--luzmo-picker-placeholder-font-style, var(--picker-placeholder-font-style));transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}.label.placeholder:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}.disclosure-icon{vertical-align:top;transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-out;margin-inline-start:var(--luzmo-picker-spacing-icon-to-disclosure-icon, var(--picker-spacing-icon-to-disclosure-icon));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default, var(--picker-icon-color-default)));flex-shrink:0;display:inline-block;position:relative}.disclosure-icon:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-active, var(--picker-icon-color-active)))}luzmo-progress-circle,.validation-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}.icon-container{display:flex;position:relative;height:100%;align-items:center;font-size:var(--luzmo-picker-disclosure-icon-size, var(--picker-disclosure-icon-size))}.icon-container.disclosure-icon{margin-inline-end:0}.label~.disclosure-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}:host([quiet]) #button{inline-size:auto;min-inline-size:0;padding-inline:var(--luzmo-picker-spacing-edge-to-text-quiet, var(--picker-spacing-edge-to-text-quiet));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent);border:none;border-radius:0;box-shadow:none;margin-block-start:calc(var(--luzmo-picker-spacing-label-to-picker-quiet, var(--picker-spacing-label-to-picker-quiet)) + 1px)}:host([quiet]) #button.label-inline{margin-block-start:0}:host([quiet]) #button .disclosure-icon{margin-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon-quiet, var(--picker-spacing-edge-to-disclosure-icon-quiet))}:host([quiet]) #button:after{block-size:auto;inline-size:auto;border:none}@media (hover: hover){#button:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover, var(--picker-background-color-hover)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover, var(--picker-border-color-hover)))}#button:hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover, var(--picker-icon-color-hover)))}:host([open]):not([quiet]) #button:not(:disabled,.is-disabled):hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover-open, var(--picker-font-color-hover-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover-open, var(--picker-background-color-hover-open)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover-open, var(--picker-border-color-hover-open)))}:host([open]) #button:not(:disabled,.is-disabled):hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover-open, var(--picker-icon-color-hover-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover, var(--picker-border-color-error-hover)))}:host([invalid][open]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover-open, var(--picker-border-color-error-hover-open)))}.label.placeholder:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)))}:host([quiet]) #button:hover{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)!important}}:host([quiet]) #button:focus-visible{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}:host([quiet]) #button:focus-visible:after{box-shadow:0 var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) 0 0 var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)));margin:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1) 0;border:none;border-radius:0}:host([quiet][open]) #button,:host([quiet][disabled]) #button#button,:host([quiet]) #button#button:disabled,:host([quiet]) #button:active{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}.label-inline{vertical-align:top;display:inline-flex}:host([disabled]) #button,#button:disabled{cursor:default;background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-disabled, var(--picker-background-color-disabled)));border-color:#0000;border-color:var(--highcontrast-picker-border-color-disabled, transparent);color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host([disabled]) #button .icon,:host([disabled]) #button .disclosure-icon,:host([disabled]) #button .validation-icon,#button:disabled .icon,#button:disabled .disclosure-icon,#button:disabled .validation-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}:host([disabled]) #button .label.placeholder,#button:disabled .label.placeholder{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host{--picker-box-shadow: 0px 1px 3px 0px rgba(var(--luzmo-border-color-rgb), .06);--picker-background-color-default: var(--luzmo-background-color);--picker-background-color-default-open: var(--luzmo-background-color-hover);--picker-background-color-active: var(--luzmo-background-color-down);--picker-background-color-hover: var(--luzmo-background-color-hover);--picker-background-color-hover-open: var(--luzmo-background-color-down);--picker-background-color-key-focus: var(--luzmo-background-color-down);--picker-border-color-default: var(--luzmo-border-color);--picker-border-color-default-open: var(--luzmo-border-color-hover);--picker-border-color-hover: var(--luzmo-border-color);--picker-border-color-hover-open: var(--luzmo-border-color-hover);--picker-border-color-active: var(--luzmo-border-color);--picker-border-color-key-focus: var(--luzmo-border-color);--picker-border-width: var(--luzmo-border-width);--picker-font-size: var(--luzmo-font-size);--picker-font-weight: var(--luzmo-font-weight);--picker-placeholder-font-style: var(--luzmo-font-style);--picker-line-height: var(--luzmo-line-height);--picker-block-size: 32px;--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-text-quiet: 0px;--picker-spacing-label-to-picker: 0px;--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon-quiet: 0px;--picker-animation-duration: var(--luzmo-animation-duration);--picker-font-color-default: var(--luzmo-font-color);--picker-font-color-default-open: var(--luzmo-font-color-hover);--picker-font-color-hover: var(--luzmo-font-color-hover);--picker-font-color-hover-open: var(--luzmo-font-color-down);--picker-font-color-active: var(--luzmo-font-color-focus);--picker-font-color-key-focus: var(--luzmo-font-color-focus);--picker-icon-color-default: var(--luzmo-font-color);--picker-icon-color-default-open: var(--luzmo-font-color-hover);--picker-icon-color-hover: var(--luzmo-font-color-hover);--picker-icon-color-hover-open: var(--luzmo-font-color-hover);--picker-icon-color-active: var(--luzmo-font-color-focus);--picker-icon-color-key-focus: var(--luzmo-font-color-focus);--picker-border-color-error-default: var(--luzmo-negative-color);--picker-border-color-error-default-open: var(--luzmo-negative-color-down);--picker-border-color-error-hover: var(--luzmo-negative-color-hover);--picker-border-color-error-hover-open: var(--luzmo-negative-color-down);--picker-border-color-error-active: var(--luzmo-negative-color-down);--picker-border-color-error-key-focus: var(--luzmo-negative-color-focus);--picker-icon-color-error: var(--luzmo-negative-color);--picker-background-color-disabled: var(--luzmo-background-color-disabled);--picker-font-color-disabled: var(--luzmo-disabled-color);--picker-icon-color-disabled: var(--luzmo-disabled-color);--picker-focus-indicator-gap: var(--luzmo-indicator-gap);--picker-focus-indicator-width: var(--luzmo-indicator-width);--picker-focus-indicator-color: var(--luzmo-indicator-color);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=s]){--picker-block-size: 28px;--picker-font-size: var(--luzmo-font-size-s);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-3);--picker-spacing-text-to-icon: var(--luzmo-spacing-3);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-3);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-3);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-3));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-3);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=l]){--picker-block-size: 40px;--picker-font-size: var(--luzmo-font-size-l);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-4);--picker-spacing-text-to-icon: var(--luzmo-spacing-4);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-4);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-4);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-4));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-4);--picker-disclosure-icon-size: var(--luzmo-font-size)}:host([size=xl]){--picker-block-size: 48px;--picker-font-size: var(--luzmo-font-size-xl);--picker-border-radius: var(--luzmo-border-radius-l);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-disclosure-icon-size: var(--luzmo-font-size-l)}:host([variant=highlight]) ::slotted(luzmo-menu-item[selected]){--menu-item-highlight-label-content-color: var(--luzmo-primary-inverse-color);--menu-item-label-icon-color-default: var(--luzmo-primary-inverse-color);--menu-checkmark-display: var(--menu-checkmark-display-hidden);padding-inline-start:var(--luzmo-menu-item-label-inline-edge-to-content, var(--menu-item-label-inline-edge-to-content));background-color:var(--luzmo-menu-item-highlight-label-background-color, var(--menu-item-highlight-label-background-color, var(--luzmo-border-color)))}:host{display:inline-flex;vertical-align:top;max-inline-size:100%;inline-size:var(--luzmo-picker-inline-size, var(--picker-inline-size));min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)))}:host([quiet]){width:auto;min-width:0}:host([disabled]){pointer-events:none}#button{width:100%;min-width:100%;max-width:100%}#icon:not([hidden]){display:inline-flex}:host([readonly]) #button{-webkit-user-select:inherit;user-select:inherit}.picker,.validation-icon{flex-shrink:0}luzmo-overlay{pointer-events:none}luzmo-menu{pointer-events:initial}:host>luzmo-menu{display:none}:host([focused]:not([quiet])) #button #label.placeholder{color:var(--picker-placeholder-text-color-key-focus, var(--alias-placeholder-text-color-hover))}#label.visually-hidden~.picker{margin-inline-start:auto}:host([focused]:not([quiet],[pending])) #button .picker{color:var(--picker-icon-color-key-focus, var(--alias-icon-color-focus))}.visually-hidden{border:0;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}luzmo-overlay:not(:defined){display:none}#button.remove-focus-ring-safari-hack:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}#button.remove-focus-ring-safari-hack:after{border:none}#button.remove-focus-ring-safari-hack:focus-visible:after{box-shadow:none}#button.remove-focus-ring-safari-hack:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}';
|
|
35
|
-
var
|
|
36
|
-
for (var a = r > 1 ? void 0 : r ?
|
|
34
|
+
var D = Object.defineProperty, A = Object.getOwnPropertyDescriptor, i = (s, e, o, r) => {
|
|
35
|
+
for (var a = r > 1 ? void 0 : r ? A(e, o) : e, c = s.length - 1, p; c >= 0; c--)
|
|
37
36
|
(p = s[c]) && (a = (r ? p(e, o, a) : p(a)) || a);
|
|
38
|
-
return r && a &&
|
|
37
|
+
return r && a && D(e, o, a), a;
|
|
39
38
|
};
|
|
40
|
-
const
|
|
39
|
+
const B = () => n`
|
|
41
40
|
<div class="disclosure-icon icon">
|
|
42
41
|
${b(C, { className: "indicator" })}
|
|
43
42
|
</div>
|
|
@@ -59,7 +58,7 @@ class t extends M(y, {
|
|
|
59
58
|
this.appliedLabel = e, this.labelAlignment = o.sideAligned ? "inline" : void 0;
|
|
60
59
|
}, this.handleKeydown = (e) => {
|
|
61
60
|
this.focused = !0, !(e.code !== "ArrowDown" && e.code !== "ArrowUp") && (e.stopPropagation(), e.preventDefault(), this.toggle(!0));
|
|
62
|
-
}, this.renderAngleIcon = () =>
|
|
61
|
+
}, this.renderAngleIcon = () => B(), this.renderAlertIcon = () => F(), this.handleEnterKeydown = (e) => {
|
|
63
62
|
if (e.code === "Enter") {
|
|
64
63
|
if (this.enterKeydownOn) {
|
|
65
64
|
e.preventDefault();
|
|
@@ -73,7 +72,7 @@ class t extends M(y, {
|
|
|
73
72
|
{ once: !0 }
|
|
74
73
|
);
|
|
75
74
|
}
|
|
76
|
-
}, this.pendingStateController = new
|
|
75
|
+
}, this.pendingStateController = new $(this);
|
|
77
76
|
}
|
|
78
77
|
get selectedItem() {
|
|
79
78
|
return this._selectedItem;
|
|
@@ -129,7 +128,7 @@ class t extends M(y, {
|
|
|
129
128
|
}
|
|
130
129
|
bindEvents() {
|
|
131
130
|
var e, o;
|
|
132
|
-
(e = this.strategy) == null || e.abort(), this.strategy = new
|
|
131
|
+
(e = this.strategy) == null || e.abort(), this.strategy = new S.desktop(this.button, this), (o = this.strategy) != null && o.overlay && (this.strategy.overlay.type = "auto", this.strategy.overlay.placement = this.placement);
|
|
133
132
|
}
|
|
134
133
|
connectedCallback() {
|
|
135
134
|
super.connectedCallback(), this.recentlyConnected = this.hasUpdated;
|
|
@@ -429,7 +428,7 @@ i([
|
|
|
429
428
|
i([
|
|
430
429
|
h()
|
|
431
430
|
], t.prototype, "selectedItemContent", 1);
|
|
432
|
-
class
|
|
431
|
+
class Q extends t {
|
|
433
432
|
constructor() {
|
|
434
433
|
super(...arguments), this.handleKeydown = (e) => {
|
|
435
434
|
const { code: o } = e;
|
|
@@ -458,5 +457,5 @@ class X extends t {
|
|
|
458
457
|
export {
|
|
459
458
|
k as D,
|
|
460
459
|
t as L,
|
|
461
|
-
|
|
460
|
+
Q as a
|
|
462
461
|
};
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/*! * Lucero - The design system for Luzmo.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2025 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
|
|
6
|
+
* This license allows users with a current active Luzmo account to use Lucero.
|
|
7
|
+
* This license terminates automatically if a user no longer has an active Luzmo account.
|
|
8
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
9
|
+
*
|
|
10
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
11
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
12
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
13
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
14
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
15
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
|
+
* SOFTWARE.
|
|
17
|
+
* */
|
|
18
|
+
"use strict";const i=require("lit"),c=require("lit/decorators.js"),b=require("lit/directives/class-map.js"),u=require("lit/directives/if-defined.js"),k=require("lit/directives/style-map.js"),g=require("./focusable-CbVKgGfS.cjs"),m=require("./dependency-manger-uthev62E.cjs"),h=require("./strategies-CNgBb6dM.cjs"),f=require("./pending-state-DQctFHI8.cjs"),z=require("./sized-mixin-DcvJLFeo.cjs"),s=require("@luzmo/icons");require("./menu/index.cjs");require("./overlay/index.cjs");require("./progress-circle/index.cjs");require("./tooltip/index.cjs");const y='#button{cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--luzmo-button-font-family, var(--luzmo-font-family));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--luzmo-button-line-height, var(--luzmo-line-height, 1.3));text-transform:none;vertical-align:top;-webkit-appearance:button;transition:background var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,border-color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,color var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out,box-shadow var(--luzmo-button-animation-duration, var(--luzmo-animation-duration)) ease-out;justify-content:center;align-items:center;margin:0;-webkit-text-decoration:none;text-decoration:none;display:inline-flex;position:relative;overflow:visible}#button::-moz-focus-inner{border-style:none;padding:0}#button:focus{outline:none}#icon{margin-inline-end:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon));font-size:var(--luzmo-picker-font-size, var(--picker-font-size))}@media (forced-colors: active){:host{--highcontrast-picker-focus-indicator-color: Highlight;--highcontrast-picker-border-color-default: ButtonBorder;--highcontrast-picker-border-color-hover: Highlight;--highcontrast-picker-border-color-disabled: GrayText;--highcontrast-picker-content-color-default: ButtonText;--highcontrast-picker-content-color-disabled: GrayText;--highcontrast-picker-background-color: ButtonFace}#button:focus-visible{--highcontrast-picker-border-color-hover: ButtonText}#button .label,#button:after{forced-color-adjust:none}}#button{box-sizing:border-box;max-inline-size:100%;min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)));block-size:var(--luzmo-picker-block-size, var(--picker-block-size));border-width:var(--luzmo-picker-border-width, var(--picker-border-width));border-radius:var(--luzmo-picker-border-radius, var(--picker-border-radius));box-shadow:var(--luzmo-picker-box-shadow, var(--picker-box-shadow));transition:background-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),box-shadow var(--luzmo-picker-animation-duration, var(--picker-animation-duration)),border-color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-style:solid;border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));margin-block-start:var(--luzmo-picker-spacing-label-to-picker, var(--picker-spacing-label-to-picker));padding-block:0;padding-inline-start:var(--luzmo-picker-spacing-edge-to-text, var(--picker-spacing-edge-to-text));padding-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon, var(--picker-spacing-edge-to-disclosure-icon));display:flex}#button:after{pointer-events:none;content:"";block-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);inline-size:calc(100% + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) * 2 + var(--luzmo-picker-border-width, var(--picker-border-width)) * 2);border-style:solid;border-width:var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width));border-radius:calc(var(--luzmo-picker-border-radius, var(--picker-border-radius)) + var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width)));border-color:#0000;margin-block-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);margin-inline-start:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1);position:absolute;inset-block:0;inset-inline:0}#button:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-active, var(--picker-background-color-active)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-active, var(--picker-border-color-active)))}#button:active:after{border-color:#0000}#button.placeholder:active .label{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}#button:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-key-focus, var(--picker-background-color-key-focus)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-key-focus, var(--picker-border-color-key-focus)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)));outline:none}#button:focus-visible:after{border-color:var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)))}#button.placeholder:focus-visible{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-key-focus, var(--picker-font-color-key-focus)))}#button:focus-visible .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-key-focus, var(--picker-icon-color-key-focus)))}:host([open]) #button:not(:disabled,.is-disabled){color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default-open, var(--picker-font-color-default-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default-open, var(--picker-background-color-default-open)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-default-open, var(--picker-border-color-default-open)))}:host([open]) #button:not(:disabled,.is-disabled) .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default-open, var(--picker-icon-color-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default, var(--picker-border-color-error-default)))}:host([invalid]) #button:not(:disabled,.is-disabled) .validation-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-error, var(--picker-icon-color-error)))}:host([invalid]) #button:not(:disabled,.is-disabled):active{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-active, var(--picker-border-color-error-active)))}:host([invalid][open]) #button:not(:disabled,.is-disabled){border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-default-open, var(--picker-border-color-error-default-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):focus-visible{border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-error-key-focus, var(--picker-border-color-error-key-focus)))}:host([pending]) #button .disclosure-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}.icon{flex-shrink:0}.label{white-space:nowrap;font-size:var(--luzmo-picker-font-size, var(--picker-font-size));line-height:var(--luzmo-picker-line-height, var(--picker-line-height));font-weight:var(--luzmo-picker-font-weight, var(--picker-font-weight));text-overflow:ellipsis;text-align:start;flex:auto;overflow:hidden}.label.placeholder{font-weight:var(--luzmo-picker-placeholder-font-weight, var(--picker-font-weight));font-style:var(--luzmo-picker-placeholder-font-style, var(--picker-placeholder-font-style));transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-in-out;color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}.label.placeholder:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-active, var(--picker-font-color-active)))}.disclosure-icon{vertical-align:top;transition:color var(--luzmo-picker-animation-duration, var(--picker-animation-duration)) ease-out;margin-inline-start:var(--luzmo-picker-spacing-icon-to-disclosure-icon, var(--picker-spacing-icon-to-disclosure-icon));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-default, var(--picker-icon-color-default)));flex-shrink:0;display:inline-block;position:relative}.disclosure-icon:active{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-active, var(--picker-icon-color-active)))}luzmo-progress-circle,.validation-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}.icon-container{display:flex;position:relative;height:100%;align-items:center;font-size:var(--luzmo-picker-disclosure-icon-size, var(--picker-disclosure-icon-size))}.icon-container.disclosure-icon{margin-inline-end:0}.label~.disclosure-icon{margin-inline-start:var(--luzmo-picker-spacing-text-to-icon, var(--picker-spacing-text-to-icon))}:host([quiet]) #button{inline-size:auto;min-inline-size:0;padding-inline:var(--luzmo-picker-spacing-edge-to-text-quiet, var(--picker-spacing-edge-to-text-quiet));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)));background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent);border:none;border-radius:0;box-shadow:none;margin-block-start:calc(var(--luzmo-picker-spacing-label-to-picker-quiet, var(--picker-spacing-label-to-picker-quiet)) + 1px)}:host([quiet]) #button.label-inline{margin-block-start:0}:host([quiet]) #button .disclosure-icon{margin-inline-end:var(--luzmo-picker-spacing-edge-to-disclosure-icon-quiet, var(--picker-spacing-edge-to-disclosure-icon-quiet))}:host([quiet]) #button:after{block-size:auto;inline-size:auto;border:none}@media (hover: hover){#button:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover, var(--picker-background-color-hover)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover, var(--picker-border-color-hover)))}#button:hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover, var(--picker-icon-color-hover)))}:host([open]):not([quiet]) #button:not(:disabled,.is-disabled):hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover-open, var(--picker-font-color-hover-open)));background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-hover-open, var(--picker-background-color-hover-open)));border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-hover-open, var(--picker-border-color-hover-open)))}:host([open]) #button:not(:disabled,.is-disabled):hover .disclosure-icon{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-icon-color-hover-open, var(--picker-icon-color-hover-open)))}:host([invalid]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover, var(--picker-border-color-error-hover)))}:host([invalid][open]) #button:not(:disabled,.is-disabled):hover{border-color:var(--highcontrast-picker-border-color-hover, var(--luzmo-picker-border-color-error-hover-open, var(--picker-border-color-error-hover-open)))}.label.placeholder:hover{color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-hover, var(--picker-font-color-hover)))}:host([quiet]) #button:hover{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)!important}}:host([quiet]) #button:focus-visible{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}:host([quiet]) #button:focus-visible:after{box-shadow:0 var(--luzmo-picker-focus-indicator-width, var(--picker-focus-indicator-width)) 0 0 var(--highcontrast-picker-focus-indicator-color, var(--luzmo-picker-focus-indicator-color, var(--picker-focus-indicator-color)));margin:calc((var(--luzmo-picker-focus-indicator-gap, var(--picker-focus-indicator-gap)) + var(--luzmo-picker-border-width, var(--picker-border-width))) * -1) 0;border:none;border-radius:0}:host([quiet][open]) #button,:host([quiet][disabled]) #button#button,:host([quiet]) #button#button:disabled,:host([quiet]) #button:active{background-color:initial;background-color:var(--highcontrast-picker-background-color, transparent)}.label-inline{vertical-align:top;display:inline-flex}:host([disabled]) #button,#button:disabled{cursor:default;background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-disabled, var(--picker-background-color-disabled)));border-color:#0000;border-color:var(--highcontrast-picker-border-color-disabled, transparent);color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host([disabled]) #button .icon,:host([disabled]) #button .disclosure-icon,:host([disabled]) #button .validation-icon,#button:disabled .icon,#button:disabled .disclosure-icon,#button:disabled .validation-icon{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-icon-color-disabled, var(--picker-icon-color-disabled)))}:host([disabled]) #button .label.placeholder,#button:disabled .label.placeholder{color:var(--highcontrast-picker-content-color-disabled, var(--luzmo-picker-font-color-disabled, var(--picker-font-color-disabled)))}:host{--picker-box-shadow: 0px 1px 3px 0px rgba(var(--luzmo-border-color-rgb), .06);--picker-background-color-default: var(--luzmo-background-color);--picker-background-color-default-open: var(--luzmo-background-color-hover);--picker-background-color-active: var(--luzmo-background-color-down);--picker-background-color-hover: var(--luzmo-background-color-hover);--picker-background-color-hover-open: var(--luzmo-background-color-down);--picker-background-color-key-focus: var(--luzmo-background-color-down);--picker-border-color-default: var(--luzmo-border-color);--picker-border-color-default-open: var(--luzmo-border-color-hover);--picker-border-color-hover: var(--luzmo-border-color);--picker-border-color-hover-open: var(--luzmo-border-color-hover);--picker-border-color-active: var(--luzmo-border-color);--picker-border-color-key-focus: var(--luzmo-border-color);--picker-border-width: var(--luzmo-border-width);--picker-font-size: var(--luzmo-font-size);--picker-font-weight: var(--luzmo-font-weight);--picker-placeholder-font-style: var(--luzmo-font-style);--picker-line-height: var(--luzmo-line-height);--picker-block-size: 32px;--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-text-quiet: 0px;--picker-spacing-label-to-picker: 0px;--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon-quiet: 0px;--picker-animation-duration: var(--luzmo-animation-duration);--picker-font-color-default: var(--luzmo-font-color);--picker-font-color-default-open: var(--luzmo-font-color-hover);--picker-font-color-hover: var(--luzmo-font-color-hover);--picker-font-color-hover-open: var(--luzmo-font-color-down);--picker-font-color-active: var(--luzmo-font-color-focus);--picker-font-color-key-focus: var(--luzmo-font-color-focus);--picker-icon-color-default: var(--luzmo-font-color);--picker-icon-color-default-open: var(--luzmo-font-color-hover);--picker-icon-color-hover: var(--luzmo-font-color-hover);--picker-icon-color-hover-open: var(--luzmo-font-color-hover);--picker-icon-color-active: var(--luzmo-font-color-focus);--picker-icon-color-key-focus: var(--luzmo-font-color-focus);--picker-border-color-error-default: var(--luzmo-negative-color);--picker-border-color-error-default-open: var(--luzmo-negative-color-down);--picker-border-color-error-hover: var(--luzmo-negative-color-hover);--picker-border-color-error-hover-open: var(--luzmo-negative-color-down);--picker-border-color-error-active: var(--luzmo-negative-color-down);--picker-border-color-error-key-focus: var(--luzmo-negative-color-focus);--picker-icon-color-error: var(--luzmo-negative-color);--picker-background-color-disabled: var(--luzmo-background-color-disabled);--picker-font-color-disabled: var(--luzmo-disabled-color);--picker-icon-color-disabled: var(--luzmo-disabled-color);--picker-focus-indicator-gap: var(--luzmo-indicator-gap);--picker-focus-indicator-width: var(--luzmo-indicator-width);--picker-focus-indicator-color: var(--luzmo-indicator-color);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=s]){--picker-block-size: 28px;--picker-font-size: var(--luzmo-font-size-s);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-3);--picker-spacing-text-to-icon: var(--luzmo-spacing-3);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-3);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-3);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-3));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-3);--picker-disclosure-icon-size: var(--luzmo-font-size-s)}:host([size=l]){--picker-block-size: 40px;--picker-font-size: var(--luzmo-font-size-l);--picker-border-radius: var(--luzmo-border-radius);--picker-spacing-edge-to-text: var(--luzmo-spacing-4);--picker-spacing-text-to-icon: var(--luzmo-spacing-4);--picker-spacing-text-to-icon-inline-end: var(--luzmo-spacing-4);--picker-spacing-icon-to-disclosure-icon: var(--luzmo-spacing-4);--picker-spacing-label-to-picker-quiet: calc(-1 * var(--luzmo-spacing-4));--picker-spacing-edge-to-disclosure-icon: var(--luzmo-spacing-4);--picker-disclosure-icon-size: var(--luzmo-font-size)}:host([size=xl]){--picker-block-size: 48px;--picker-font-size: var(--luzmo-font-size-xl);--picker-border-radius: var(--luzmo-border-radius-l);--picker-spacing-edge-to-text: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-text-to-icon-inline-end: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-icon-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-label-to-picker-quiet: calc( -1 * var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-spacing-edge-to-disclosure-icon: calc( var(--luzmo-spacing-4) + var(--luzmo-spacing-1) );--picker-disclosure-icon-size: var(--luzmo-font-size-l)}:host([variant=highlight]) ::slotted(luzmo-menu-item[selected]){--menu-item-highlight-label-content-color: var(--luzmo-primary-inverse-color);--menu-item-label-icon-color-default: var(--luzmo-primary-inverse-color);--menu-checkmark-display: var(--menu-checkmark-display-hidden);padding-inline-start:var(--luzmo-menu-item-label-inline-edge-to-content, var(--menu-item-label-inline-edge-to-content));background-color:var(--luzmo-menu-item-highlight-label-background-color, var(--menu-item-highlight-label-background-color, var(--luzmo-border-color)))}:host{display:inline-flex;vertical-align:top;max-inline-size:100%;inline-size:var(--luzmo-picker-inline-size, var(--picker-inline-size));min-inline-size:calc(var(--picker-minimum-width-multiplier) * var(--luzmo-picker-block-size, var(--picker-block-size)))}:host([quiet]){width:auto;min-width:0}:host([disabled]){pointer-events:none}#button{width:100%;min-width:100%;max-width:100%}#icon:not([hidden]){display:inline-flex}:host([readonly]) #button{-webkit-user-select:inherit;user-select:inherit}.picker,.validation-icon{flex-shrink:0}luzmo-overlay{pointer-events:none}luzmo-menu{pointer-events:initial}:host>luzmo-menu{display:none}:host([focused]:not([quiet])) #button #label.placeholder{color:var(--picker-placeholder-text-color-key-focus, var(--alias-placeholder-text-color-hover))}#label.visually-hidden~.picker{margin-inline-start:auto}:host([focused]:not([quiet],[pending])) #button .picker{color:var(--picker-icon-color-key-focus, var(--alias-icon-color-focus))}.visually-hidden{border:0;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;margin:0 -1px -1px 0;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}luzmo-overlay:not(:defined){display:none}#button.remove-focus-ring-safari-hack:focus-visible{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}#button.remove-focus-ring-safari-hack:after{border:none}#button.remove-focus-ring-safari-hack:focus-visible:after{box-shadow:none}#button.remove-focus-ring-safari-hack:active{background-color:var(--highcontrast-picker-background-color, var(--luzmo-picker-background-color-default, var(--picker-background-color-default)));border-color:var(--highcontrast-picker-border-color-default, var(--luzmo-picker-border-color-default, var(--picker-border-color-default)));color:var(--highcontrast-picker-content-color-default, var(--luzmo-picker-font-color-default, var(--picker-font-color-default)))}';var w=Object.defineProperty,x=Object.getOwnPropertyDescriptor,a=(d,e,o,r)=>{for(var n=r>1?void 0:r?x(e,o):e,l=d.length-1,p;l>=0;l--)(p=d[l])&&(n=(r?p(e,o,n):p(n))||n);return r&&n&&w(e,o,n),n};const I=()=>i.html`
|
|
19
|
+
<div class="disclosure-icon icon">
|
|
20
|
+
${s.luzmoIcon(s.luzmoAngleDown,{className:"indicator"})}
|
|
21
|
+
</div>
|
|
22
|
+
`,q=()=>i.html`
|
|
23
|
+
<div class="icon-container validation-icon icon">
|
|
24
|
+
${s.luzmoIcon(s.luzmoAlert)}
|
|
25
|
+
</div>
|
|
26
|
+
`,v="option-picker";class t extends z.SizedMixin(g.Focusable,{noDefaultSize:!0}){constructor(){super(),this.disabled=!1,this.focused=!1,this.invalid=!1,this.pending=!1,this.pendingLabel="Pending",this.open=!1,this.readonly=!1,this.placement="bottom-start",this.quiet=!1,this.value="",this.selects="single",this.dependencyManager=new m.DependencyManagerController(this),this.isMobile=new h.MatchMediaController(this,h.IS_MOBILE),this.listRole="listbox",this.itemRole="option",this.hasRenderedOverlay=!1,this._selfManageFocusElement=!1,this.deprecatedMenu=null,this.selectionPromise=Promise.resolve(),this.willManageSelection=!1,this.recentlyConnected=!1,this.enterKeydownOn=null,this.handleSlottableRequest=e=>{},this.applyFocusElementLabel=(e,o)=>{this.appliedLabel=e,this.labelAlignment=o.sideAligned?"inline":void 0},this.handleKeydown=e=>{this.focused=!0,!(e.code!=="ArrowDown"&&e.code!=="ArrowUp")&&(e.stopPropagation(),e.preventDefault(),this.toggle(!0))},this.renderAngleIcon=()=>I(),this.renderAlertIcon=()=>q(),this.handleEnterKeydown=e=>{if(e.code==="Enter"){if(this.enterKeydownOn){e.preventDefault();return}this.enterKeydownOn=e.target,this.addEventListener("keyup",o=>{o.code==="Enter"&&(this.enterKeydownOn=null)},{once:!0})}},this.pendingStateController=new f.PendingStateController(this)}get selectedItem(){return this._selectedItem}get selectedItemContent(){return this._selectedItemContent||{icon:[],content:[]}}get selfManageFocusElement(){return this._selfManageFocusElement}get menuItems(){return this.optionsMenu.childItems}set selectedItem(e){const o=e==null?void 0:e.querySelector('[slot="icon"]');if(this.selectedItemContent=e?e.itemChildren:void 0,e===this.selectedItem)return;const r=this.selectedItem;this._selectedItem=e,this._selectedItemIcon=(o==null?void 0:o.icon)??void 0,this.requestUpdate("selectedItem",r)}get focusElement(){return this.open?this.optionsMenu:this.button}forceFocusVisible(){this.disabled||(this.focused=!0)}click(){this.disabled||this.toggle()}handleButtonBlur(){this.focused=!1}focus(e){super.focus(e),!this.disabled&&this.focusElement&&(this.focused=this.hasVisibleFocusInTree())}handleHelperFocus(){this.focused=!0,this.button.focus()}handleChange(e){this.strategy&&(this.strategy.preventNextToggle="no");const o=e.target,[r]=o.selectedItems;e.stopPropagation(),e.cancelable?this.setValueFromItem(r,e):(this.open=!1,this.strategy&&(this.strategy.open=!1))}handleButtonFocus(e){var o;(o=this.strategy)==null||o.handleButtonFocus(e)}toggle(e){this.readonly||this.pending||(this.open=e===void 0?!this.open:e,this.strategy&&(this.strategy.open=this.open),this._selfManageFocusElement=this.open)}close(){this.readonly||this.strategy&&(this.open=!1,this.strategy.open=!1)}bindEvents(){var e,o;(e=this.strategy)==null||e.abort(),this.strategy=new h.strategies.desktop(this.button,this),(o=this.strategy)!=null&&o.overlay&&(this.strategy.overlay.type="auto",this.strategy.overlay.placement=this.placement)}connectedCallback(){super.connectedCallback(),this.recentlyConnected=this.hasUpdated}disconnectedCallback(){var e;this.close(),(e=this.strategy)==null||e.releaseDescription(),super.disconnectedCallback()}async setValueFromItem(e,o){this.open=!1,this.strategy&&(this.strategy.open=!1);const r=this.selectedItem,n=this.value;if(this.selectedItem=e,this.value=(e==null?void 0:e.value)??"",await this.updateComplete,!this.dispatchEvent(new CustomEvent("change",{bubbles:!0,cancelable:!0,composed:!0,detail:this.value}))&&this.selects){o&&o.preventDefault(),this.setMenuItemSelected(this.selectedItem,!1),r&&this.setMenuItemSelected(r,!0),this.selectedItem=r,this.value=n,this.open=!0,this.strategy&&(this.strategy.open=!0);return}else if(!this.selects){this.selectedItem=r,this.value=n;return}r&&this.setMenuItemSelected(r,!1),this.setMenuItemSelected(e,!!this.selects)}setMenuItemSelected(e,o){this.selects!=null&&(e.selected=o)}get containerStyles(){return this.isMobile.matches?{"--swc-menu-width":"100%"}:{}}set selectedItemContent(e){if(e===this.selectedItemContent)return;const o=this.selectedItemContent;this._selectedItemContent=e,this.requestUpdate("selectedItemContent",o)}handleTooltipSlotchange(e){this.tooltipEl=e.target.assignedElements()[0]}renderLabelContent(e){return this.value&&this.selectedItem?e:i.html`
|
|
27
|
+
<slot name="label" id="label">
|
|
28
|
+
<span aria-hidden=${u.ifDefined(this.appliedLabel?void 0:"true")}>
|
|
29
|
+
${this.label}
|
|
30
|
+
</span>
|
|
31
|
+
</slot>
|
|
32
|
+
`}get buttonContent(){const e={"visually-hidden":this.icons==="only"&&!!this.value,placeholder:!this.value,label:!0},o=this.appliedLabel||this.label,r=i.html` <div id="icon" ?hidden=${this.icons==="none"}>
|
|
33
|
+
${this._selectedItemIcon?s.luzmoIcon(this._selectedItemIcon):i.nothing}
|
|
34
|
+
</div>`;return[i.html`
|
|
35
|
+
${this._selectedItemIcon?r:i.nothing}
|
|
36
|
+
<div
|
|
37
|
+
id=${u.ifDefined(this.value&&this.selectedItem?"label":void 0)}
|
|
38
|
+
class=${b.classMap(e)}
|
|
39
|
+
>
|
|
40
|
+
${this.renderLabelContent(this.selectedItemContent.content)}
|
|
41
|
+
</div>
|
|
42
|
+
${this.value&&this.selectedItem?i.html`
|
|
43
|
+
<div
|
|
44
|
+
aria-hidden="true"
|
|
45
|
+
class="visually-hidden"
|
|
46
|
+
id="applied-label"
|
|
47
|
+
>
|
|
48
|
+
${o}
|
|
49
|
+
<slot name="label"></slot>
|
|
50
|
+
</div>
|
|
51
|
+
`:i.html` <span hidden id="applied-label">${o}</span> `}
|
|
52
|
+
${this.invalid&&!this.pending?i.html` ${this.renderAlertIcon()} `:i.nothing}
|
|
53
|
+
${this.pendingStateController.renderPendingState()}
|
|
54
|
+
${this.readonly?i.nothing:this.renderAngleIcon()}
|
|
55
|
+
<slot
|
|
56
|
+
aria-hidden="true"
|
|
57
|
+
name="tooltip"
|
|
58
|
+
id="tooltip"
|
|
59
|
+
@slotchange=${this.handleTooltipSlotchange}
|
|
60
|
+
></slot>
|
|
61
|
+
`]}renderOverlay(e){var r,n,l;if(((r=this.strategy)==null?void 0:r.overlay)===void 0)return e;const o=this.renderContainer(e);return i.render(o,(n=this.strategy)==null?void 0:n.overlay,{host:this}),(l=this.strategy)==null?void 0:l.overlay}get renderDescriptionSlot(){return i.html`
|
|
62
|
+
<div id=${v}>
|
|
63
|
+
<slot name="description"></slot>
|
|
64
|
+
</div>
|
|
65
|
+
`}render(){return this.tooltipEl&&(this.tooltipEl.disabled=this.open),i.html`
|
|
66
|
+
<span
|
|
67
|
+
id="focus-helper"
|
|
68
|
+
tabindex=${this.focused||this.open?"-1":"0"}
|
|
69
|
+
@focus=${this.handleHelperFocus}
|
|
70
|
+
aria-describedby=${v}
|
|
71
|
+
></span>
|
|
72
|
+
<button
|
|
73
|
+
aria-controls=${u.ifDefined(this.open?"menu":void 0)}
|
|
74
|
+
aria-describedby="tooltip"
|
|
75
|
+
aria-expanded=${this.open?"true":"false"}
|
|
76
|
+
aria-haspopup="true"
|
|
77
|
+
aria-labelledby="loader icon label applied-label"
|
|
78
|
+
id="button"
|
|
79
|
+
class=${u.ifDefined(this.labelAlignment?`label-${this.labelAlignment}`:void 0)}
|
|
80
|
+
@blur=${this.handleButtonBlur}
|
|
81
|
+
@keydown=${{handleEvent:this.handleEnterKeydown,capture:!0}}
|
|
82
|
+
?disabled=${this.disabled}
|
|
83
|
+
tabindex="-1"
|
|
84
|
+
>
|
|
85
|
+
${this.buttonContent}
|
|
86
|
+
</button>
|
|
87
|
+
${this.renderMenu} ${this.renderDescriptionSlot}
|
|
88
|
+
`}update(e){var o,r;this.selects&&(this.selects="single"),e.has("disabled")&&this.disabled&&this.strategy&&(this.open=!1,this.strategy.open=!1),e.has("pending")&&this.pending&&this.strategy&&(this.open=!1,this.strategy.open=!1),e.has("value")&&this.shouldScheduleManageSelection(),this.hasUpdated||(this.deprecatedMenu=this.querySelector(":scope > luzmo-menu"),(o=this.deprecatedMenu)==null||o.toggleAttribute("ignore",!0),(r=this.deprecatedMenu)==null||r.setAttribute("selects","inherit")),super.update(e)}bindButtonKeydownListener(){this.button.addEventListener("keydown",this.handleKeydown)}updated(e){var o;super.updated(e),e.has("open")&&(this.strategy.open=this.open),(o=this.strategy)!=null&&o.overlay&&this.strategy.overlay.type!=="auto"&&(this.strategy.overlay.type="auto",this.strategy.overlay.placement=this.placement)}firstUpdated(e){super.firstUpdated(e),this.bindButtonKeydownListener(),this.bindEvents()}get dismissHelper(){return i.html`
|
|
89
|
+
<div class="visually-hidden">
|
|
90
|
+
<button
|
|
91
|
+
tabindex="-1"
|
|
92
|
+
aria-label="Dismiss"
|
|
93
|
+
@click=${this.close}
|
|
94
|
+
></button>
|
|
95
|
+
</div>
|
|
96
|
+
`}renderContainer(e){const o=i.html`
|
|
97
|
+
${this.dismissHelper} ${e} ${this.dismissHelper}
|
|
98
|
+
`;return this.dependencyManager.add("luzmo-popover"),Promise.resolve().then(()=>require("./popover/index.cjs")),i.html`
|
|
99
|
+
<luzmo-popover
|
|
100
|
+
id="popover"
|
|
101
|
+
size=${this.size}
|
|
102
|
+
role="presentation"
|
|
103
|
+
style=${k.styleMap(this.containerStyles)}
|
|
104
|
+
placement=${this.placement}
|
|
105
|
+
>
|
|
106
|
+
${o}
|
|
107
|
+
</luzmo-popover>
|
|
108
|
+
`}get renderMenu(){const e=i.html`
|
|
109
|
+
<luzmo-menu
|
|
110
|
+
aria-labelledby="applied-label"
|
|
111
|
+
@change=${this.handleChange}
|
|
112
|
+
id="menu"
|
|
113
|
+
@keydown=${{handleEvent:this.handleEnterKeydown,capture:!0}}
|
|
114
|
+
@scroll=${this.onScroll}
|
|
115
|
+
role=${this.listRole}
|
|
116
|
+
.selects=${this.selects}
|
|
117
|
+
.selected=${this.value?[this.value]:[]}
|
|
118
|
+
size=${this.size}
|
|
119
|
+
@luzmo-menu-item-added-or-updated=${this.shouldManageSelection}
|
|
120
|
+
>
|
|
121
|
+
<slot @slotchange=${this.shouldScheduleManageSelection}></slot>
|
|
122
|
+
</luzmo-menu>
|
|
123
|
+
`;return this.hasRenderedOverlay=this.hasRenderedOverlay||this.focused||this.open||!!this.deprecatedMenu,this.hasRenderedOverlay?(this.dependencyManager.loaded&&this.dependencyManager.add("luzmo-overlay"),this.renderOverlay(e)):e}shouldScheduleManageSelection(e){!this.willManageSelection&&(!e||e.target.getRootNode().host===this)&&(this.willManageSelection=!0,requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.manageSelection()})}))}shouldManageSelection(){this.willManageSelection||(this.willManageSelection=!0,this.manageSelection())}async manageSelection(){if(this.selects==null)return;this.selectionPromise=new Promise(o=>this.selectionResolver=o);let e;await this.optionsMenu.updateComplete,this.recentlyConnected&&(await new Promise(o=>requestAnimationFrame(()=>o(!0))),this.recentlyConnected=!1),this.menuItems.forEach(o=>{this.value===o.value&&!o.disabled?e=o:o.selected=!1}),e?(e.selected=!!this.selects,this.selectedItem=e):(this.value="",this.selectedItem=void 0),this.open&&(await this.optionsMenu.updateComplete,this.optionsMenu.updateSelectedItemIndex()),this.selectionResolver(),this.willManageSelection=!1}async getUpdateComplete(){const e=await super.getUpdateComplete();return await this.selectionPromise,e}onScroll(){this.dispatchEvent(new Event("scroll",{cancelable:!0,composed:!0}))}}a([c.state()],t.prototype,"appliedLabel",2);a([c.query("#button")],t.prototype,"button",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"disabled",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"focused",2);a([c.property({type:String,reflect:!0})],t.prototype,"icons",2);a([c.property({type:String,reflect:!0})],t.prototype,"variant",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"invalid",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"pending",2);a([c.property({type:String,attribute:"pending-label"})],t.prototype,"pendingLabel",2);a([c.property()],t.prototype,"label",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"open",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"readonly",2);a([c.state()],t.prototype,"labelAlignment",2);a([c.query("luzmo-menu")],t.prototype,"optionsMenu",2);a([c.query("luzmo-overlay")],t.prototype,"overlayElement",2);a([c.property()],t.prototype,"placement",2);a([c.property({type:Boolean,reflect:!0})],t.prototype,"quiet",2);a([c.property({type:String})],t.prototype,"value",2);a([c.property({attribute:!1})],t.prototype,"selectedItem",1);a([c.state()],t.prototype,"selectedItemContent",1);class S extends t{constructor(){super(...arguments),this.handleKeydown=e=>{const{code:o}=e;if(this.focused=!0,!o.startsWith("Arrow")||this.readonly||this.pending)return;if(o==="ArrowUp"||o==="ArrowDown"){this.toggle(!0),e.preventDefault();return}e.preventDefault();const r=this.selectedItem?this.menuItems.indexOf(this.selectedItem):-1,n=r<0||o==="ArrowRight"?1:-1;let l=r+n;for(;this.menuItems[l]&&this.menuItems[l].disabled;)l+=n;!this.menuItems[l]||this.menuItems[l].disabled||(!this.value||l!==r)&&this.setValueFromItem(this.menuItems[l])}}static get styles(){return[i.unsafeCSS(y)]}get containerStyles(){const e=super.containerStyles;return this.quiet||(e["min-width"]=`${this.offsetWidth}px`),e}}exports.DESCRIPTION_ID=v;exports.LuzmoPicker=S;exports.LuzmoPickerBase=t;
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
16
16
|
* SOFTWARE.
|
|
17
17
|
* */
|
|
18
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../base-Cy0MQrPT.cjs"),d=require("../sized-mixin-WPHH0a_D.cjs"),l=require("../luzmo-icons-CtA-TJPd.cjs"),b=require("../class-map-D-Y-hsN5.cjs"),s=require("../observe-slot-presence-bc9chhsi.cjs"),p=require("../button-base-CC9ZL53k.cjs");require("../icon/index.cjs");const k="@media (hover: hover){.root:hover{--picker-button-background-color: var( --luzmo-picker-button-background-color-hover, var(--picker-button-background-color-hover) );--picker-button-font-color: var( --luzmo-picker-button-font-color-hover, var(--picker-button-font-color-hover) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-hover, var(--picker-button-icon-color-hover) )}}:host([open]) .root,:host(:is(:active,[active])) .root{--picker-button-background-color: var( --luzmo-picker-button-background-color-down, var(--picker-button-background-color-down) );--picker-button-font-color: var( --luzmo-picker-button-font-color-down, var(--picker-button-font-color-down) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-down, var(--picker-button-icon-color-down) )}:host([focused]) .root,.root:focus,.root:focus-visible{--picker-button-background-color: var( --luzmo-picker-button-background-color-key-focus, var(--picker-button-background-color-key-focus) );--picker-button-font-color: var( --luzmo-picker-button-font-color-key-focus, var(--picker-button-font-color-key-focus) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-key-focus, var(--picker-button-icon-color-key-focus) )}:host([disabled]) .root{--picker-button-background-color: var( --luzmo-picker-button-background-color-disabled, var(--luzmo-background-color-disabled) );--picker-button-background-color-hover: var( --luzmo-picker-button-background-color-hover-disabled, var(--luzmo-background-color-disabled) );--picker-button-background-color-down: var( --luzmo-picker-button-background-color-down-disabled, var(--luzmo-background-color-disabled) );--picker-button-border-color: var( --luzmo-picker-button-border-color-disabled, var(--luzmo-background-color-disabled) );--picker-button-font-color: var( --luzmo-picker-button-font-color-disabled, var(--luzmo-font-color-disabled) );--picker-button-font-color-hover: var( --luzmo-picker-button-font-color-hover-disabled, var(--luzmo-font-color-disabled) );--picker-button-font-color-down: var( --luzmo-picker-button-font-color-down-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color-hover: var( --luzmo-picker-button-icon-color-hover-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color-down: var( --luzmo-picker-button-icon-color-down-disabled, var(--luzmo-font-color-disabled) )}:host([quiet]) .root{--luzmo-picker-button-background-color: var( --luzmo-picker-button-background-color-quiet, transparent );--luzmo-picker-button-background-color-hover: var( --luzmo-picker-button-background-color-hover-quiet, transparent );--luzmo-picker-button-background-color-down: var( --luzmo-picker-button-background-color-down-quiet, transparent );--luzmo-picker-button-background-color-key-focus: var( --luzmo-picker-button-background-color-key-focus-quiet, transparent );--luzmo-picker-button-border-color: var( --luzmo-picker-button-border-color-quiet, transparent )}.root{background-color:initial;block-size:var(--luzmo-picker-button-width, var(--picker-button-width));box-sizing:border-box;padding:var(--luzmo-picker-button-padding, var(--picker-button-padding));border-style:none;justify-content:center;align-items:center;display:flex}.root.uiicononly{inline-size:var(--luzmo-picker-button-height, var(--picker-button-height))}.luzmo-picker-button-label{color:var(--luzmo-picker-button-font-color, var(--picker-button-font-color));white-space:nowrap;font-family:var(--luzmo-picker-button-font-family, var(--picker-button-font-family));font-style:var(--luzmo-picker-button-font-style, var(--picker-button-font-style));font-weight:var(--luzmo-picker-button-font-weight, var(--picker-button-font-weight));font-size:var(--luzmo-picker-button-font-size, var(--picker-button-font-size));flex:auto;padding-block-start:var(--luzmo-picker-button-label-padding, var(--picker-button-label-padding));padding-block-end:var(--luzmo-picker-button-label-padding, var(--picker-button-label-padding));overflow:hidden}.uiicononly .luzmo-picker-button-label{display:none}:host(:focus-visible) .luzmo-picker-button-fill{border-color:var(--luzmo-picker-button-indicator-color, var(--picker-button-indicator-color));background-color:var(--luzmo-picker-button-background-color-key-focus, var(--picker-button-background-color-key-focus))}.luzmo-picker-button-fill{box-sizing:border-box;block-size:100%;inline-size:100%;justify-content:center;align-items:center;gap:var(--luzmo-picker-button-gap, var(--picker-button-gap));background-color:var(--luzmo-picker-button-background-color, var(--picker-button-background-color));border-color:var(--luzmo-picker-button-border-color, var(--picker-button-border-color));border-width:var(--luzmo-picker-button-border-width, var(--picker-button-border-width));padding:var(--luzmo-picker-button-horizontal-padding, var(--picker-button-horizontal-padding));transition:border-color var(--luzmo-picker-button-background-animation-duration, var(--picker-button-background-animation-duration)) ease-in-out;border-style:solid;border-start-start-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-start-end-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-end-end-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-end-start-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));display:flex}:host([position=right]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided));border-end-start-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided))}:host([position=right][rounded]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided));border-end-start-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided))}:host([position=left]) .luzmo-picker-button-fill{border-start-end-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided));border-end-end-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided))}:host([position=left][rounded]) .luzmo-picker-button-fill{border-start-end-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided));border-end-end-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided))}:host([rounded]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-start-end-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-end-end-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-end-start-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded))}.uiicononly .luzmo-picker-button-fill{padding:0}.textuiicon .luzmo-picker-button-fill{inline-size:auto}.luzmo-picker-button-icon{color:var(--luzmo-picker-button-icon-color, var(--picker-button-icon-color));flex-shrink:0}.root{--picker-button-height: var(--luzmo-component-height);--picker-button-width: var(--luzmo-component-height);--picker-button-gap: calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--picker-button-label-padding: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--picker-button-horizontal-padding: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-button-indicator-color: var(--luzmo-indicator-color);--picker-button-icon-color: var(--luzmo-font-color);--picker-button-icon-color-hover: var(--luzmo-font-color-hover);--picker-button-icon-color-down: var(--luzmo-font-color-down);--picker-button-icon-color-key-focus: var(--luzmo-font-color-focus);--picker-button-font-color: var(--luzmo-font-color);--picker-button-font-color-hover: var(--luzmo-font-color-hover);--picker-button-font-color-down: var(--luzmo-font-color-down);--picker-button-font-color-key-focus: var(--neutral-content-color-focus);--picker-button-font-family: var(--luzmo-font-family);--picker-button-font-style: var(--luzmo-font-style);--picker-button-font-weight: var(--body-sans-serif-font-weight);--picker-button-font-size: var(--luzmo-font-size);--picker-button-border-radius-rounded: var(--luzmo-border-radius);--picker-button-background-animation-duration: var( --luzmo-animation-duration )}.root{--picker-button-background-color: var(--luzmo-background-color);--picker-button-background-color-hover: var(--luzmo-background-color-hover);--picker-button-background-color-down: var(--luzmo-background-color-down);--picker-button-background-color-key-focus: var( --luzmo-background-color-focus );--picker-button-border-color: var(--luzmo-border-color);--picker-button-border-radius: var(--luzmo-border-radius);--picker-button-border-radius-rounded-sided: var(--luzmo-border-radius);--picker-button-border-radius-sided: 0;--picker-button-border-width: var(--luzmo-border-width)}:host([size=s]) .root{--picker-button-height: var(--luzmo-component-height-s);--picker-button-width: var(--luzmo-component-height-s);--picker-button-label-padding: var(--luzmo-spacing-2);--picker-button-font-size: var(--luzmo-font-size-s);--picker-button-horizontal-padding: var(--luzmo-spacing-3)}:host([size=l]) .root{--picker-button-height: var(--luzmo-component-height-l);--picker-button-width: var(--luzmo-component-height-l);--picker-button-label-padding: var(--luzmo-spacing-3);--picker-button-font-size: var(--luzmo-font-size-l);--picker-button-horizontal-padding: var(--luzmo-spacing-4)}:host([size=xl]) .root{--picker-button-height: var(--luzmo-component-height-xl);--picker-button-width: var(--luzmo-component-height-xl);--picker-button-label-padding: var(--luzmo-spacing-4);--picker-button-font-size: var(--luzmo-font-size-xl);--picker-button-horizontal-padding: var(--luzmo-spacing-5)}:host{display:inline-flex}.root{display:flex}";var v=Object.defineProperty,a=(n,r,u,z)=>{for(var o=void 0,i=n.length-1,c;i>=0;i--)(c=n[i])&&(o=c(r,u,o)||o);return o&&v(r,u,o),o};class e extends d.SizedMixin(s.ObserveSlotPresence(p.LuzmoButtonBase,'[slot="label"]')){constructor(){super(...arguments),this.invalid=!1,this.position="right"}static get styles(){return[t.r(k)]}get hasText(){return this.slotContentIsPresent}render(){const r={root:!0,uiicononly:!this.hasText,textuiicon:this.hasText};return t.x`
|
|
19
|
-
<div class=${
|
|
18
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("lit"),l=require("../sized-mixin-DcvJLFeo.cjs"),b=require("@luzmo/icons"),a=require("lit/decorators.js"),s=require("lit/directives/class-map.js"),p=require("../observe-slot-presence-CNltc0C0.cjs"),k=require("../button-base-C7or8-FB.cjs");require("../icon/index.cjs");const v="@media (hover: hover){.root:hover{--picker-button-background-color: var( --luzmo-picker-button-background-color-hover, var(--picker-button-background-color-hover) );--picker-button-font-color: var( --luzmo-picker-button-font-color-hover, var(--picker-button-font-color-hover) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-hover, var(--picker-button-icon-color-hover) )}}:host([open]) .root,:host(:is(:active,[active])) .root{--picker-button-background-color: var( --luzmo-picker-button-background-color-down, var(--picker-button-background-color-down) );--picker-button-font-color: var( --luzmo-picker-button-font-color-down, var(--picker-button-font-color-down) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-down, var(--picker-button-icon-color-down) )}:host([focused]) .root,.root:focus,.root:focus-visible{--picker-button-background-color: var( --luzmo-picker-button-background-color-key-focus, var(--picker-button-background-color-key-focus) );--picker-button-font-color: var( --luzmo-picker-button-font-color-key-focus, var(--picker-button-font-color-key-focus) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-key-focus, var(--picker-button-icon-color-key-focus) )}:host([disabled]) .root{--picker-button-background-color: var( --luzmo-picker-button-background-color-disabled, var(--luzmo-background-color-disabled) );--picker-button-background-color-hover: var( --luzmo-picker-button-background-color-hover-disabled, var(--luzmo-background-color-disabled) );--picker-button-background-color-down: var( --luzmo-picker-button-background-color-down-disabled, var(--luzmo-background-color-disabled) );--picker-button-border-color: var( --luzmo-picker-button-border-color-disabled, var(--luzmo-background-color-disabled) );--picker-button-font-color: var( --luzmo-picker-button-font-color-disabled, var(--luzmo-font-color-disabled) );--picker-button-font-color-hover: var( --luzmo-picker-button-font-color-hover-disabled, var(--luzmo-font-color-disabled) );--picker-button-font-color-down: var( --luzmo-picker-button-font-color-down-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color: var( --luzmo-picker-button-icon-color-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color-hover: var( --luzmo-picker-button-icon-color-hover-disabled, var(--luzmo-font-color-disabled) );--picker-button-icon-color-down: var( --luzmo-picker-button-icon-color-down-disabled, var(--luzmo-font-color-disabled) )}:host([quiet]) .root{--luzmo-picker-button-background-color: var( --luzmo-picker-button-background-color-quiet, transparent );--luzmo-picker-button-background-color-hover: var( --luzmo-picker-button-background-color-hover-quiet, transparent );--luzmo-picker-button-background-color-down: var( --luzmo-picker-button-background-color-down-quiet, transparent );--luzmo-picker-button-background-color-key-focus: var( --luzmo-picker-button-background-color-key-focus-quiet, transparent );--luzmo-picker-button-border-color: var( --luzmo-picker-button-border-color-quiet, transparent )}.root{background-color:initial;block-size:var(--luzmo-picker-button-width, var(--picker-button-width));box-sizing:border-box;padding:var(--luzmo-picker-button-padding, var(--picker-button-padding));border-style:none;justify-content:center;align-items:center;display:flex}.root.uiicononly{inline-size:var(--luzmo-picker-button-height, var(--picker-button-height))}.luzmo-picker-button-label{color:var(--luzmo-picker-button-font-color, var(--picker-button-font-color));white-space:nowrap;font-family:var(--luzmo-picker-button-font-family, var(--picker-button-font-family));font-style:var(--luzmo-picker-button-font-style, var(--picker-button-font-style));font-weight:var(--luzmo-picker-button-font-weight, var(--picker-button-font-weight));font-size:var(--luzmo-picker-button-font-size, var(--picker-button-font-size));flex:auto;padding-block-start:var(--luzmo-picker-button-label-padding, var(--picker-button-label-padding));padding-block-end:var(--luzmo-picker-button-label-padding, var(--picker-button-label-padding));overflow:hidden}.uiicononly .luzmo-picker-button-label{display:none}:host(:focus-visible) .luzmo-picker-button-fill{border-color:var(--luzmo-picker-button-indicator-color, var(--picker-button-indicator-color));background-color:var(--luzmo-picker-button-background-color-key-focus, var(--picker-button-background-color-key-focus))}.luzmo-picker-button-fill{box-sizing:border-box;block-size:100%;inline-size:100%;justify-content:center;align-items:center;gap:var(--luzmo-picker-button-gap, var(--picker-button-gap));background-color:var(--luzmo-picker-button-background-color, var(--picker-button-background-color));border-color:var(--luzmo-picker-button-border-color, var(--picker-button-border-color));border-width:var(--luzmo-picker-button-border-width, var(--picker-button-border-width));padding:var(--luzmo-picker-button-horizontal-padding, var(--picker-button-horizontal-padding));transition:border-color var(--luzmo-picker-button-background-animation-duration, var(--picker-button-background-animation-duration)) ease-in-out;border-style:solid;border-start-start-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-start-end-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-end-end-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));border-end-start-radius:var(--luzmo-picker-button-border-radius, var(--picker-button-border-radius));display:flex}:host([position=right]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided));border-end-start-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided))}:host([position=right][rounded]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided));border-end-start-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided))}:host([position=left]) .luzmo-picker-button-fill{border-start-end-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided));border-end-end-radius:var(--luzmo-picker-button-border-radius-sided, var(--picker-button-border-radius-sided))}:host([position=left][rounded]) .luzmo-picker-button-fill{border-start-end-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided));border-end-end-radius:var(--luzmo-picker-button-border-radius-rounded-sided, var(--picker-button-border-radius-rounded-sided))}:host([rounded]) .luzmo-picker-button-fill{border-start-start-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-start-end-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-end-end-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded));border-end-start-radius:var(--luzmo-picker-button-border-radius-rounded, var(--picker-button-border-radius-rounded))}.uiicononly .luzmo-picker-button-fill{padding:0}.textuiicon .luzmo-picker-button-fill{inline-size:auto}.luzmo-picker-button-icon{color:var(--luzmo-picker-button-icon-color, var(--picker-button-icon-color));flex-shrink:0}.root{--picker-button-height: var(--luzmo-component-height);--picker-button-width: var(--luzmo-component-height);--picker-button-gap: calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--picker-button-label-padding: calc( var(--luzmo-spacing-2) + var(--luzmo-spacing-1) );--picker-button-horizontal-padding: calc( var(--luzmo-spacing-3) + var(--luzmo-spacing-1) );--picker-button-indicator-color: var(--luzmo-indicator-color);--picker-button-icon-color: var(--luzmo-font-color);--picker-button-icon-color-hover: var(--luzmo-font-color-hover);--picker-button-icon-color-down: var(--luzmo-font-color-down);--picker-button-icon-color-key-focus: var(--luzmo-font-color-focus);--picker-button-font-color: var(--luzmo-font-color);--picker-button-font-color-hover: var(--luzmo-font-color-hover);--picker-button-font-color-down: var(--luzmo-font-color-down);--picker-button-font-color-key-focus: var(--neutral-content-color-focus);--picker-button-font-family: var(--luzmo-font-family);--picker-button-font-style: var(--luzmo-font-style);--picker-button-font-weight: var(--body-sans-serif-font-weight);--picker-button-font-size: var(--luzmo-font-size);--picker-button-border-radius-rounded: var(--luzmo-border-radius);--picker-button-background-animation-duration: var( --luzmo-animation-duration )}.root{--picker-button-background-color: var(--luzmo-background-color);--picker-button-background-color-hover: var(--luzmo-background-color-hover);--picker-button-background-color-down: var(--luzmo-background-color-down);--picker-button-background-color-key-focus: var( --luzmo-background-color-focus );--picker-button-border-color: var(--luzmo-border-color);--picker-button-border-radius: var(--luzmo-border-radius);--picker-button-border-radius-rounded-sided: var(--luzmo-border-radius);--picker-button-border-radius-sided: 0;--picker-button-border-width: var(--luzmo-border-width)}:host([size=s]) .root{--picker-button-height: var(--luzmo-component-height-s);--picker-button-width: var(--luzmo-component-height-s);--picker-button-label-padding: var(--luzmo-spacing-2);--picker-button-font-size: var(--luzmo-font-size-s);--picker-button-horizontal-padding: var(--luzmo-spacing-3)}:host([size=l]) .root{--picker-button-height: var(--luzmo-component-height-l);--picker-button-width: var(--luzmo-component-height-l);--picker-button-label-padding: var(--luzmo-spacing-3);--picker-button-font-size: var(--luzmo-font-size-l);--picker-button-horizontal-padding: var(--luzmo-spacing-4)}:host([size=xl]) .root{--picker-button-height: var(--luzmo-component-height-xl);--picker-button-width: var(--luzmo-component-height-xl);--picker-button-label-padding: var(--luzmo-spacing-4);--picker-button-font-size: var(--luzmo-font-size-xl);--picker-button-horizontal-padding: var(--luzmo-spacing-5)}:host{display:inline-flex}.root{display:flex}";var z=Object.defineProperty,d=(e,r,i,m)=>{for(var o=void 0,n=e.length-1,u;n>=0;n--)(u=e[n])&&(o=u(r,i,o)||o);return o&&z(r,i,o),o};class t extends l.SizedMixin(p.ObserveSlotPresence(k.LuzmoButtonBase,'[slot="label"]')){constructor(){super(...arguments),this.invalid=!1,this.position="right"}static get styles(){return[c.unsafeCSS(v)]}get hasText(){return this.slotContentIsPresent}render(){const r={root:!0,uiicononly:!this.hasText,textuiicon:this.hasText};return c.html`
|
|
19
|
+
<div class=${s.classMap(r)}>
|
|
20
20
|
<div class="luzmo-picker-button-fill">
|
|
21
21
|
<span
|
|
22
22
|
class="luzmo-picker-button-label is-placeholder"
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
</span>
|
|
27
27
|
<slot name="icon">
|
|
28
28
|
<luzmo-icon
|
|
29
|
-
.icon=${
|
|
29
|
+
.icon=${b.luzmoAngleDown}
|
|
30
30
|
size=${this.size}
|
|
31
31
|
block
|
|
32
32
|
class="luzmo-picker-button-icon"
|
|
@@ -34,4 +34,4 @@
|
|
|
34
34
|
</slot>
|
|
35
35
|
</div>
|
|
36
36
|
</div>
|
|
37
|
-
`}}
|
|
37
|
+
`}}d([a.property({type:Boolean,reflect:!0})],t.prototype,"invalid");d([a.property({reflect:!0})],t.prototype,"position");customElements.get("luzmo-picker-button")||customElements.define("luzmo-picker-button",t);exports.LuzmoPickerButton=t;
|