// All material copyright Esri, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.30/esri/copyright.txt for details. //>>built define("exports ./componentsUtils ./form ./interactive ./label2 ./loadable ./locale ./observers ./component ./t9n ./dom ./icon ./loader".split(" "),function(k,b,f,c,g,h,l,m,n,d,t,u,v){function p(){"undefined"!==typeof customElements&&["calcite-button","calcite-icon","calcite-loader"].forEach(a=>{switch(a){case "calcite-button":customElements.get(a)||customElements.define(a,q);break;case "calcite-icon":customElements.get(a)||u.defineCustomElement();break;case "calcite-loader":customElements.get(a)|| v.defineCustomElement()}})}const q=b.proxyCustomElement(class extends b.H{constructor(){super();this.__registerHost();this.__attachShadow();this.mutationObserver=m.createObserver("mutation",()=>this.updateHasContent());this.resizeObserver=m.createObserver("resize",()=>this.setTooltipText());this.handleClick=()=>{const {type:a}=this;this.href||("submit"===a?f.submitForm(this):"reset"===a&&f.resetForm(this))};this.setTooltipText=()=>{const {contentEl:a}=this;a&&(this.tooltipText=a.offsetWidth{(this.childEl=a)&&this.resizeObserver?.observe(a)};this.alignment="center";this.appearance="solid";this.label=void 0;this.kind="brand";this.disabled=!1;this.form=void 0;this.download=!1;this.iconStart=this.iconFlipRtl=this.iconEnd=this.href=void 0;this.loading=!1;this.rel=this.name=void 0;this.round=!1;this.scale="m";this.splitChild=!1;this.target=void 0;this.type="button";this.width="auto";this.messageOverrides=this.messages=void 0;this.hasLoader= this.hasContent=!1;this.effectiveLocale="";this.tooltipText=this.defaultMessages=void 0}handleGlobalAttributesChanged(){b.forceUpdate(this)}loadingChanged(a,e){a&&!e&&(this.hasLoader=!0);!a&&e&&window.setTimeout(()=>{this.hasLoader=!1},300)}onMessagesChange(){}async connectedCallback(){c.connectInteractive(this);l.connectLocalized(this);d.connectMessages(this);this.hasLoader=this.loading;this.setupTextContentObserver();g.connectLabel(this);this.formEl=f.findAssociatedForm(this)}disconnectedCallback(){this.mutationObserver?.disconnect(); c.disconnectInteractive(this);g.disconnectLabel(this);l.disconnectLocalized(this);d.disconnectMessages(this);this.resizeObserver?.disconnect();this.formEl=null}async componentWillLoad(){h.setUpLoadableComponent(this);this.updateHasContent();await d.setUpMessages(this)}componentDidLoad(){h.setComponentLoaded(this);this.setTooltipText()}componentDidRender(){c.updateHostInteraction(this)}render(){const a=this.href?"a":"button",e=this.hasLoader?b.h("div",{class:"calcite-button--loader"},b.h("calcite-loader", {class:this.loading?"loading-in":"loading-out",inline:!0,label:this.messages.loading,scale:"l"===this.scale?"m":"s"})):null,r=!this.iconStart&&!this.iconEnd,w=b.h("calcite-icon",{key:"45941adf90ef50fe1aa5ed4a874dc8a841f4b16f",class:{icon:!0,["icon--start"]:!0},flipRtl:"start"===this.iconFlipRtl||"both"===this.iconFlipRtl,icon:this.iconStart,scale:n.getIconScale(this.scale)}),x=b.h("calcite-icon",{key:"dcd2f544410e55c7dc3a277f9c5c04da0c00b041",class:{icon:!0,["icon--end"]:!0},flipRtl:"end"===this.iconFlipRtl|| "both"===this.iconFlipRtl,icon:this.iconEnd,scale:n.getIconScale(this.scale)}),z=b.h("span",{key:"f69134d138dab0649abf8dda9ad85f129746dded",class:"content",ref:y=>this.contentEl=y},b.h("slot",{key:"0012a57d49d94c50e9fdc9eceb4b4395dfa1424b"}));return b.h(c.InteractiveContainer,{key:"fae594988f9fd052100e50250ac09621066e1cc8",disabled:this.disabled},b.h(a,{key:"afb4ffda9526e954612e2edc2ccee94bc459478a","aria-disabled":"a"===a?t.toAriaBoolean(this.disabled||this.loading):null,"aria-expanded":this.el.getAttribute("aria-expanded"), "aria-label":this.loading?this.messages.loading:g.getLabelText(this),"aria-live":"polite",class:{["button-padding"]:r,["button-padding--shrunk"]:!r,["content--slotted"]:this.hasContent,["icon-start-empty"]:!this.iconStart,["icon-end-empty"]:!this.iconEnd},disabled:"button"===a?this.disabled||this.loading:null,download:"a"!==a||""!==this.download&&!this.download?null:this.download,href:"a"===a&&this.href,name:"button"===a&&this.name,onClick:this.handleClick,rel:"a"===a&&this.rel,tabIndex:this.disabled? -1:null,target:"a"===a&&this.target,title:this.tooltipText,type:"button"===a&&this.type,ref:this.setChildEl},e,this.iconStart?w:null,this.hasContent?z:null,this.iconEnd?x:null))}async setFocus(){await h.componentFocusable(this);this.childEl?.focus()}effectiveLocaleChange(){d.updateMessages(this,this.effectiveLocale)}updateHasContent(){const a=0