@momentum-design/components 0.129.40 → 0.129.41

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.
@@ -5333,7 +5333,7 @@
5333
5333
  :host([soft-disabled])::part(base-text) {
5334
5334
  --mdc-select-text-color: var(--mds-color-theme-text-primary-disabled);
5335
5335
  }
5336
- `,wg=[cA,...St(!0)];var je=class extends Fs(Ki(Te(_e(Ut(ne))))){constructor(){super();this.placement=kt.BOTTOM_START;this.boundary=gt.BOUNDARY;this.strategy=gt.STRATEGY;this.popoverZIndex=gt.Z_INDEX;this.disableFlip=Cg.DISABLE_FLIP;this.displayPopover=!1;this.initialSelectedOption=null;this.debounceTime=500;this.searchString="";this.onStoreUpdate=(t,r,s,d)=>{switch(r){case"added":t.setAttribute("tabindex","-1");break;case"removed":{if(s===-1||d.length===0)return;let m=s+1;if(m>=d.length&&(m=s-1),m===-1&&this.displayPopover){this.displayPopover=!1,this.handleNativeInputFocus();return}if(t.tabIndex===0&&this.resetTabIndexes(m),t.hasAttribute("selected")){let b=null;this.placeholder||(b=s===0?d[m]:d[0]),this.setSelectedOption(b)}break}default:break}};this.isValidItem=t=>t.matches(`${vr}:not([disabled])`);this.addEventListener(Gt.MODIFIED,this.handleModifiedEvent),this.itemsStore=new jr(this,{isValidItem:this.isValidItem,onStoreUpdate:this.onStoreUpdate})}connectedCallback(){super.connectedCallback(),this.loop="false",this.initialFocus=0,this.setupDebounceSearch()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this.debounceSearch)==null||t.cancel(),window.cancelAnimationFrame(this.animationFrameId)}get navItems(){return this.itemsStore.items}attributeChangedCallback(t,r,s){var d;if(super.attributeChangedCallback(t,r,s),t==="value"&&s!==""&&s!==r&&s!==((d=this.selectedOption)==null?void 0:d.value)&&this.navItems.length){let m=this.getFirstSelectedOption(),b=this.getFirstOption(),x=this.navItems.find(B=>B.value===s),N=null;if(x)N=x;else if(this.placeholder)N=null;else if(b)N=b;else if(m)N=m;else return;this.updateComplete.then(()=>{this.setSelectedOption(N)}).catch(B=>{this.onerror&&this.onerror(B)})}}getFirstSelectedOption(){return this.navItems.find(t=>t.hasAttribute("selected"))}getFirstOption(){return this.navItems[0]}handleModifiedEvent(t){let r=t.target,s=this.getFirstSelectedOption();switch(t.detail.change){case"selected":{s&&s!==this.selectedOption?this.setSelectedOption(s):this.setSelectedOption(r);break}case"unselected":{s?this.setSelectedOption(s):this.setSelectedOption(this.placeholder?null:this.getFirstOption());break}case"enabled":{this.itemsStore.add(r);break}case"disabled":{this.itemsStore.delete(r);break}default:break}}async firstUpdated(t){await this.updateComplete;let r=this.getFirstSelectedOption();if(r)this.initialSelectedOption=r,this.setSelectedOption(r);else if(this.placeholder)this.placeholder&&this.setInputValidity();else{let s=this.getFirstOption();this.setSelectedOption(s),this.fireEvents()}this.inputElement&&this.autoFocusOnMount&&(this.elementToAutoFocus=this.inputElement),super.firstUpdated(t)}updated(t){super.updated(t),(t.has("disabled")||t.has("softDisabled")||t.has("readonly"))&&(this.disabled||this.softDisabled||this.readonly)&&(this.displayPopover=!1)}handleOptionsClick(t){let r=t.target;r&&r.tagName===vr.toUpperCase()&&!r.hasAttribute("disabled")&&!r.hasAttribute("soft-disabled")&&(this.setSelectedOption(r),this.displayPopover=!1,this.fireEvents())}setSelectedOption(t){var r,s,d;t!==this.selectedOption&&(this.updateSelectedInChildOptions(t),this.resetTabIndexes(this.navItems.indexOf(t)),this.selectedOption=t,this.value=(s=(r=this.selectedOption)==null?void 0:r.value)!=null?s:"",this.internals.setFormValue(this.value),(d=this.inputElement)==null||d.setAttribute("value",this.value),this.setInputValidity())}updateSelectedInChildOptions(t){t==null||t.setAttribute("selected","true"),this.navItems.forEach(r=>{r!==t&&r.removeAttribute("selected")})}fireEvents(){this.dispatchInput(this.selectedOption),this.dispatchChange(this.selectedOption)}setInputValidity(){var t,r;!this.selectedOption&&this.required&&this.validationMessage?(t=this.inputElement)==null||t.setCustomValidity(this.validationMessage):(r=this.inputElement)==null||r.setCustomValidity(""),this.setValidity()}formResetCallback(){var r;let t=this.initialSelectedOption||null;((r=this.selectedOption)==null?void 0:r.value)!==(t==null?void 0:t.value)&&(this.setSelectedOption(t),this.fireEvents())}formStateRestoreCallback(t){var s;let r=this.navItems.find(d=>d.value===t||d.label===t);((s=this.selectedOption)==null?void 0:s.value)!==(r==null?void 0:r.value)&&(this.setSelectedOption(r||null),this.fireEvents())}dispatchChange(t){this.dispatchEvent(new CustomEvent("change",{detail:{value:t==null?void 0:t.value,label:t==null?void 0:t.label},composed:!0,bubbles:!0}))}dispatchInput(t){this.dispatchEvent(new CustomEvent("input",{detail:{value:t==null?void 0:t.value,label:t==null?void 0:t.label},composed:!0,bubbles:!0}))}handleClickCombobox(t){this.disabled||this.softDisabled||this.readonly||(this.displayPopover=!this.displayPopover,t.stopPropagation())}setupDebounceSearch(){this.debounceSearch=Kl(()=>{this.searchString=""},this.debounceTime)}debounceSearchKey(t){var r;return(r=this.debounceSearch)==null||r.call(this),this.searchString+=t,this.searchString}filterOptionsBySearchKey(t,r){return t.filter(s=>{var d;return(d=s.getAttribute("label"))==null?void 0:d.toLowerCase().startsWith(r.toLowerCase())})}handleSelectedOptionBasedOnFilter(t){let r=this.navItems.findIndex(b=>b.tabIndex===0)+1,s=[...this.navItems.slice(r),...this.navItems.slice(0,r)],d=this.filterOptionsBySearchKey(s,t),m=null;if(d.length)[m]=d;else if(t.split("").every(b=>b===t[0])){let b=this.navItems[r],x=this.filterOptionsBySearchKey(s,t[0]),N=x.filter(B=>B===b);m=N.length?N[0]:x[0]}this.navItems.indexOf(m)!==-1&&this.resetTabIndexAndSetFocusAfterUpdate(this.navItems.indexOf(m))}handleKeydownCombobox(t){if(!(this.disabled||this.softDisabled||this.readonly))switch(t.key){case Z.ARROW_DOWN:case Z.ARROW_UP:case Z.ENTER:case Z.SPACE:this.displayPopover=!0,t.preventDefault(),t.stopPropagation();break;case Z.HOME:{this.displayPopover=!0,this.resetTabIndexAndSetFocusAfterUpdate(0),t.preventDefault(),t.stopPropagation();break}case Z.END:{this.displayPopover=!0,this.resetTabIndexAndSetFocusAfterUpdate(this.navItems.length-1),t.preventDefault(),t.stopPropagation();break}default:{t.key.length===1&&(this.displayPopover=!0,this.handleSelectedOptionByKeyInput(t.key),t.preventDefault(),t.stopPropagation());break}}}resetTabIndexAndSetFocusAfterUpdate(t){this.displayPopover&&(this.animationFrameId=window.requestAnimationFrame(()=>{this.resetTabIndexAndSetFocus(t)}))}handleNativeInputFocus(){this.visualCombobox.focus()}handleSelectedOptionByKeyInput(t){let r=this.debounceSearchKey(t);this.handleSelectedOptionBasedOnFilter(r)}handleKeydownPopover(t){t.key.length===1&&this.handleSelectedOptionByKeyInput(t.key)}render(){var t,r,s,d,m,b;return _`
5336
+ `,wg=[cA,...St(!0)];var je=class extends Fs(Ki(Te(_e(Ut(ne))))){constructor(){super();this.placement=kt.BOTTOM_START;this.boundary=gt.BOUNDARY;this.strategy=gt.STRATEGY;this.popoverZIndex=gt.Z_INDEX;this.disableFlip=Cg.DISABLE_FLIP;this.displayPopover=!1;this.initialSelectedOption=null;this.debounceTime=500;this.searchString="";this.onStoreUpdate=(t,r,s,d)=>{switch(r){case"added":t.setAttribute("tabindex","-1");break;case"removed":{if(s===-1||d.length===0)return;let m=s+1;if(m>=d.length&&(m=s-1),m===-1&&this.displayPopover){this.displayPopover=!1,this.handleNativeInputFocus();return}if(t.tabIndex===0&&this.resetTabIndexes(m),t.hasAttribute("selected")){let b=null;this.placeholder||(b=s===0?d[m]:d[0]),this.setSelectedOption(b)}break}default:break}};this.isValidItem=t=>t.matches(`${vr}:not([disabled])`);this.addEventListener(Gt.MODIFIED,this.handleModifiedEvent),this.itemsStore=new jr(this,{isValidItem:this.isValidItem,onStoreUpdate:this.onStoreUpdate})}connectedCallback(){super.connectedCallback(),this.loop="false",this.initialFocus=0,this.setupDebounceSearch()}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this.debounceSearch)==null||t.cancel(),window.cancelAnimationFrame(this.animationFrameId)}get navItems(){return this.itemsStore.items}attributeChangedCallback(t,r,s){var d;if(super.attributeChangedCallback(t,r,s),t==="value"&&s!==""&&s!==r&&s!==((d=this.selectedOption)==null?void 0:d.value)&&this.navItems.length){let m=this.getFirstSelectedOption(),b=this.getFirstOption(),x=this.navItems.find(B=>B.value===s),N=null;if(x)N=x;else if(this.placeholder)N=null;else if(b)N=b;else if(m)N=m;else return;this.updateComplete.then(()=>{this.setSelectedOption(N)}).catch(B=>{this.onerror&&this.onerror(B)})}}getFirstSelectedOption(){return this.navItems.find(t=>t.hasAttribute("selected"))}getFirstOption(){return this.navItems[0]}handleModifiedEvent(t){let r=t.target,s=this.getFirstSelectedOption();switch(t.detail.change){case"selected":{s&&s!==this.selectedOption?this.setSelectedOption(s):this.setSelectedOption(r);break}case"unselected":{s?this.setSelectedOption(s):this.setSelectedOption(this.placeholder?null:this.getFirstOption());break}case"enabled":{this.itemsStore.add(r);break}case"disabled":{this.itemsStore.delete(r);break}default:break}}async firstUpdated(t){await this.updateComplete;let r=this.getFirstSelectedOption();if(r)this.initialSelectedOption=r,this.setSelectedOption(r);else if(this.placeholder)this.placeholder&&this.setInputValidity();else{let s=this.getFirstOption();this.setSelectedOption(s),this.fireEvents()}this.inputElement&&this.autoFocusOnMount&&(this.elementToAutoFocus=this.inputElement),super.firstUpdated(t)}updated(t){super.updated(t),(t.has("disabled")||t.has("softDisabled")||t.has("readonly"))&&(this.disabled||this.softDisabled||this.readonly)&&(this.displayPopover=!1)}handleOptionsClick(t){let r=t.target;r&&r.tagName===vr.toUpperCase()&&!r.hasAttribute("disabled")&&!r.hasAttribute("soft-disabled")&&(this.setSelectedOption(r),this.displayPopover=!1,this.fireEvents())}setSelectedOption(t){var r,s,d;t!==this.selectedOption&&(this.updateSelectedInChildOptions(t),this.resetTabIndexes(this.navItems.indexOf(t)),this.selectedOption=t,this.value=(s=(r=this.selectedOption)==null?void 0:r.value)!=null?s:"",this.internals.setFormValue(this.value),(d=this.inputElement)==null||d.setAttribute("value",this.value),this.setInputValidity())}updateSelectedInChildOptions(t){t==null||t.setAttribute("selected","true"),this.navItems.forEach(r=>{r!==t&&r.removeAttribute("selected")})}fireEvents(){this.dispatchInput(this.selectedOption),this.dispatchChange(this.selectedOption)}setInputValidity(){var t,r;!this.selectedOption&&this.required&&this.validationMessage?(t=this.inputElement)==null||t.setCustomValidity(this.validationMessage):(r=this.inputElement)==null||r.setCustomValidity(""),this.setValidity()}formResetCallback(){var r;let t=this.initialSelectedOption||null;((r=this.selectedOption)==null?void 0:r.value)!==(t==null?void 0:t.value)&&(this.setSelectedOption(t),this.fireEvents())}formStateRestoreCallback(t){var s;let r=this.navItems.find(d=>d.value===t||d.label===t);((s=this.selectedOption)==null?void 0:s.value)!==(r==null?void 0:r.value)&&(this.setSelectedOption(r||null),this.fireEvents())}dispatchChange(t){this.dispatchEvent(new CustomEvent("change",{detail:{value:t==null?void 0:t.value,label:t==null?void 0:t.label},composed:!0,bubbles:!0}))}dispatchInput(t){this.dispatchEvent(new CustomEvent("input",{detail:{value:t==null?void 0:t.value,label:t==null?void 0:t.label},composed:!0,bubbles:!0}))}handleClickCombobox(t){this.disabled||this.softDisabled||this.readonly||(this.displayPopover=!this.displayPopover,t.stopPropagation())}setupDebounceSearch(){this.debounceSearch=Kl(()=>{this.searchString=""},this.debounceTime)}debounceSearchKey(t){var r;return(r=this.debounceSearch)==null||r.call(this),this.searchString+=t,this.searchString}filterOptionsBySearchKey(t,r){return t.filter(s=>{var d;return(d=s.getAttribute("label"))==null?void 0:d.toLowerCase().startsWith(r.toLowerCase())})}handleSelectedOptionBasedOnFilter(t){let r=this.navItems.findIndex(b=>b.tabIndex===0)+1,s=[...this.navItems.slice(r),...this.navItems.slice(0,r)],d=this.filterOptionsBySearchKey(s,t),m=null;if(d.length)[m]=d;else if(t.split("").every(b=>b===t[0])){let b=this.navItems[r],x=this.filterOptionsBySearchKey(s,t[0]),N=x.filter(B=>B===b);m=N.length?N[0]:x[0]}this.navItems.indexOf(m)!==-1&&this.resetTabIndexAndSetFocusAfterUpdate(this.navItems.indexOf(m))}handleKeydownCombobox(t){if(!(this.disabled||this.softDisabled||this.readonly))switch(t.key){case Z.ARROW_DOWN:case Z.ARROW_UP:case Z.ENTER:case Z.SPACE:this.displayPopover=!0,t.preventDefault(),t.stopPropagation();break;case Z.HOME:{this.displayPopover=!0,this.resetTabIndexAndSetFocusAfterUpdate(0),t.preventDefault(),t.stopPropagation();break}case Z.END:{this.displayPopover=!0,this.resetTabIndexAndSetFocusAfterUpdate(this.navItems.length-1),t.preventDefault(),t.stopPropagation();break}default:{t.key.length===1&&!t.metaKey&&!t.ctrlKey&&!t.altKey&&(this.displayPopover=!0,this.handleSelectedOptionByKeyInput(t.key),t.preventDefault(),t.stopPropagation());break}}}resetTabIndexAndSetFocusAfterUpdate(t){this.displayPopover&&(this.animationFrameId=window.requestAnimationFrame(()=>{this.resetTabIndexAndSetFocus(t)}))}handleNativeInputFocus(){this.visualCombobox.focus()}handleSelectedOptionByKeyInput(t){let r=this.debounceSearchKey(t);this.handleSelectedOptionBasedOnFilter(r)}handleKeydownPopover(t){t.key.length===1&&this.handleSelectedOptionByKeyInput(t.key)}render(){var t,r,s,d,m,b;return _`
5337
5337
  ${this.renderLabel()}
5338
5338
  <div part="container">
5339
5339
  <div