{"version":3,"sources":["webpack:///./node_modules/@esri/calcite-components/dist/components/calcite-action.js","webpack:///./node_modules/@esri/calcite-components/dist/components/action.js"],"names":["CalciteAction","defineCustomElement","CSS","button","buttonTextVisible","buttonCompact","iconContainer","slotContainer","slotContainerHidden","textContainer","textContainerVisible","TEXT","loading","actionCss","Action","super","this","__registerHost","__attachShadow","calciteActionClick","active","appearance","compact","disabled","indicator","intlLoading","scale","textEnabled","mutationObserver","calciteActionClickHandler","emit","_a","observe","el","childList","subtree","disconnect","buttonEl","focus","text","textContainerClasses","class","key","icon","iconScale","calciteLoaderNode","inline","label","calciteIconNode","iconNode","hasIconToDisplay","children","length","slotContainerNode","ariaLabel","buttonClasses","onClick","toString","ref","renderIconContainer","renderTextContainer","customElements","components","forEach","tagName","get","define"],"mappings":"gHAAA;;;;GAMA,MAAMA,EAAgB,OAChBC,EAAsB,Q,kCCP5B;;;;;AASA,MAAMC,EAAM,CACVC,OAAQ,SACRC,kBAAmB,uBACnBC,cAAe,kBACfC,cAAe,iBACfC,cAAe,iBACfC,oBAAqB,yBACrBC,cAAe,iBACfC,qBAAsB,2BAElBC,EAAO,CACXC,QAAS,WAGLC,EAAY,qjRAElB,IAAIC,EAAS,cAAc,OACzB,cACEC,QACAC,KAAKC,iBACLD,KAAKE,iBACLF,KAAKG,mBAAqB,eAAYH,KAAM,qBAAsB,GASlEA,KAAKI,QAAS,EAEdJ,KAAKK,WAAa,QAIlBL,KAAKM,SAAU,EAIfN,KAAKO,UAAW,EAIhBP,KAAKQ,WAAY,EAIjBR,KAAKS,YAAcd,EAAKC,QAIxBI,KAAKJ,SAAU,EAIfI,KAAKU,MAAQ,IAIbV,KAAKW,aAAc,EACnBX,KAAKY,iBAAmB,eAAe,WAAY,IAAM,eAAYZ,OAMrEA,KAAKa,0BAA4B,KAC1Bb,KAAKO,UACRP,KAAKG,mBAAmBW,QAS9B,oBACE,IAAIC,EAC6B,QAAhCA,EAAKf,KAAKY,wBAAqC,IAAPG,GAAyBA,EAAGC,QAAQhB,KAAKiB,GAAI,CAAEC,WAAW,EAAMC,SAAS,IAEpH,uBACE,IAAIJ,EAC6B,QAAhCA,EAAKf,KAAKY,wBAAqC,IAAPG,GAAyBA,EAAGK,aAQvE,iBACEpB,KAAKqB,SAASC,QAOhB,sBACE,MAAM,KAAEC,EAAI,YAAEZ,GAAgBX,KACxBwB,EAAuB,CAC3B,CAACtC,EAAIO,gBAAgB,EACrB,CAACP,EAAIQ,sBAAuBiB,GAE9B,OAAOY,EAAQ,cAAD,CAAG,MAAO,CAAEE,MAAOD,EAAsBE,IAAK,kBAAoBH,GAAS,KAE3F,sBACE,IAAIR,EACJ,MAAM,QAAEnB,EAAO,KAAE+B,EAAI,MAAEjB,EAAK,GAAEO,EAAE,YAAER,GAAgBT,KAC5C4B,EAAsB,MAAVlB,EAAgB,IAAM,IAClCmB,EAAoBjC,EAAW,cAAD,CAAG,iBAAkB,CAAEQ,QAAQ,EAAM0B,QAAQ,EAAMC,MAAOtB,EAAaC,MAAOkB,IAAgB,KAC5HI,EAAkBL,EAAO,eAAE,eAAgB,CAAEA,KAAMA,EAAMjB,MAAOkB,IAAe,KAC/EK,EAAWJ,GAAqBG,EAChCE,EAAmBD,IAAoC,QAAtBlB,EAAKE,EAAGkB,gBAA6B,IAAPpB,OAAgB,EAASA,EAAGqB,QAC3FC,EAAqB,cAAD,CAAG,MAAO,CAAEZ,MAAO,CACzC,CAACvC,EAAIK,gBAAgB,EACrB,CAACL,EAAIM,qBAAsBI,IACxB,eAAE,OAAQ,OACjB,OAAOsC,EAAoB,cAAD,CAAG,MAAO,CAAE,cAAe,OAAQT,MAAOvC,EAAII,cAAeoC,IAAK,kBAAoBO,EAAUI,GAAsB,KAElJ,SACE,MAAM,QAAE/B,EAAO,SAAEC,EAAQ,QAAEX,EAAO,YAAEe,EAAW,MAAEoB,EAAK,KAAER,GAASvB,KAC3DsC,EAAYP,GAASR,EACrBgB,EAAgB,CACpB,CAACrD,EAAIC,SAAS,EACd,CAACD,EAAIE,mBAAoBuB,EACzB,CAACzB,EAAIG,eAAgBiB,GAEvB,OAAQ,cAAD,CAAG,OAAM,CAAEkC,QAASxC,KAAKa,2BAA6B,eAAE,SAAU,CAAE,YAAajB,EAAQ6C,WAAY,gBAAiBlC,EAASkC,WAAY,aAAcH,EAAWb,MAAOc,EAAehC,SAAUA,EAAUmC,IAAMrB,GAAcrB,KAAKqB,SAAWA,GAAarB,KAAK2C,sBAAuB3C,KAAK4C,wBAEzS,SAAW,OAAO5C,KAClB,mBAAqB,OAAOH,IAkB9B,SAASZ,IACP,GAA8B,qBAAnB4D,eACT,OAEF,MAAMC,EAAa,CAAC,iBAAkB,eAAgB,kBACtDA,EAAWC,QAAQC,IAAa,OAAQA,GACtC,IAAK,iBACEH,eAAeI,IAAID,IACtBH,eAAeK,OAAOF,EAASlD,GAEjC,MACF,IAAK,eACE+C,eAAeI,IAAID,IACtB,iBAEF,MACF,IAAK,iBACEH,eAAeI,IAAID,IACtB,iBAEF,SApCNlD,EAAuB,eAAmBA,EAAQ,CAAC,EAAG,iBAAkB,CACpE,OAAU,CAAC,KACX,UAAa,CAAC,KACd,WAAc,CAAC,KACf,QAAW,CAAC,KACZ,SAAY,CAAC,KACb,KAAQ,CAAC,GACT,UAAa,CAAC,KACd,YAAe,CAAC,EAAG,gBACnB,MAAS,CAAC,GACV,QAAW,CAAC,KACZ,MAAS,CAAC,KACV,KAAQ,CAAC,GACT,YAAe,CAAC,IAAK,gBACrB,SAAY,CAAC,OAyBjBb","file":"js/chunk-07a10e4b.8aee0390.js","sourcesContent":["/*!\n * All material copyright ESRI, All Rights Reserved, unless otherwise specified.\n * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.\n */\nimport { A as Action, d as defineCustomElement$1 } from './action.js';\n\nconst CalciteAction = Action;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { CalciteAction, defineCustomElement };\n","/*!\n * All material copyright ESRI, All Rights Reserved, unless otherwise specified.\n * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.\n */\nimport { HTMLElement, createEvent, forceUpdate, h, Host, proxyCustomElement } from '@stencil/core/internal/client';\nimport { c as createObserver } from './observers.js';\nimport { d as defineCustomElement$2 } from './icon.js';\nimport { d as defineCustomElement$1 } from './loader.js';\n\nconst CSS = {\n button: \"button\",\n buttonTextVisible: \"button--text-visible\",\n buttonCompact: \"button--compact\",\n iconContainer: \"icon-container\",\n slotContainer: \"slot-container\",\n slotContainerHidden: \"slot-container--hidden\",\n textContainer: \"text-container\",\n textContainerVisible: \"text-container--visible\"\n};\nconst TEXT = {\n loading: \"Loading\"\n};\n\nconst actionCss = \"@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:host{-webkit-box-sizing:border-box;box-sizing:border-box;background-color:var(--calcite-ui-foreground-1);color:var(--calcite-ui-text-2);font-size:var(--calcite-font-size--1)}:host *{-webkit-box-sizing:border-box;box-sizing:border-box}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:-ms-flexbox;display:flex;background-color:transparent}:host([disabled]){pointer-events:none}.button{position:relative;margin:0px;display:-ms-flexbox;display:flex;width:auto;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start;border-style:none;background-color:var(--calcite-ui-foreground-1);fill:var(--calcite-ui-text-3);font-family:var(--calcite-sans-family);font-size:var(--calcite-font-size--2);line-height:1rem;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-3);outline-offset:0;outline-color:transparent;-webkit-transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out;transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out;text-align:unset;-ms-flex:1 0 auto;flex:1 0 auto}.button:hover{background-color:var(--calcite-ui-foreground-2);fill:var(--calcite-ui-text-1);color:var(--calcite-ui-text-1)}.button:focus{background-color:var(--calcite-ui-foreground-2);fill:var(--calcite-ui-text-1);color:var(--calcite-ui-text-1);outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}.button:active{background-color:var(--calcite-ui-foreground-3)}.button .icon-container{pointer-events:none;margin:0px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:1rem;min-height:1rem}.button .text-container{margin:0px;width:0px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1rem;opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-duration:150ms;transition-duration:150ms;-webkit-transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);-webkit-transition-property:margin;transition-property:margin;-webkit-transition-property:width;transition-property:width}.button .text-container--visible{width:auto;-ms-flex:1 1 auto;flex:1 1 auto;opacity:1}:host([scale=s]) .button{padding:0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem;font-weight:var(--calcite-font-weight-normal)}:host([scale=s]) .button--text-visible .icon-container{-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}:host([scale=m]) .button{padding:1rem;font-size:var(--calcite-font-size--1);line-height:1rem;font-weight:var(--calcite-font-weight-normal)}:host([scale=m]) .button--text-visible .icon-container{-webkit-margin-end:0.75rem;margin-inline-end:0.75rem}:host([scale=l]) .button{padding:1.25rem;font-size:var(--calcite-font-size-0);line-height:1.25rem;font-weight:var(--calcite-font-weight-normal)}:host([scale=l]) .button--text-visible .icon-container{-webkit-margin-end:1rem;margin-inline-end:1rem}:host([alignment=center]) .button{-ms-flex-pack:center;justify-content:center}:host([alignment=end]) .button{-ms-flex-pack:end;justify-content:flex-end}:host([alignment=center]) .button .text-container--visible,:host([alignment=end]) .button .text-container--visible{-ms-flex:0 1 auto;flex:0 1 auto}:host([scale=s][compact]) .button,:host([scale=m][compact]) .button,:host([scale=l][compact]) .button{padding-left:0px;padding-right:0px}.slot-container{display:-ms-flexbox;display:flex}.slot-container--hidden{display:none}.button--text-visible{width:100%}:host([active]) .button,:host([active]) .button:hover,:host([active]) .button:focus,:host([active][loading]) .button{background-color:var(--calcite-ui-foreground-3);fill:var(--calcite-ui-text-1);color:var(--calcite-ui-text-1)}:host([active]) .button:active{background-color:var(--calcite-ui-foreground-1)}:host([appearance=clear]) .button{background-color:transparent;-webkit-transition-property:-webkit-box-shadow;transition-property:-webkit-box-shadow;transition-property:box-shadow;transition-property:box-shadow, -webkit-box-shadow;-webkit-transition-duration:150ms;transition-duration:150ms;-webkit-transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}:host([appearance=clear]) .button:hover,:host([appearance=clear]) .button:focus{background-color:transparent;-webkit-box-shadow:0 0 0 2px var(--calcite-ui-border-1) inset;box-shadow:0 0 0 2px var(--calcite-ui-border-1) inset}:host([active][appearance=clear]) .button,:host([active][appearance=clear]) .button:hover,:host([active][appearance=clear]) .button:focus{background-color:var(--calcite-ui-foreground-3);fill:var(--calcite-ui-text-1);color:var(--calcite-ui-text-1)}:host([appearance=clear][loading]) .button,:host([appearance=clear][disabled]) .button{background-color:transparent}:host([loading]) .button,:host([loading]) .button:hover,:host([loading]) .button:focus{background-color:var(--calcite-ui-foreground-1)}:host([loading]) .button .text-container,:host([loading]) .button:hover .text-container,:host([loading]) .button:focus .text-container{opacity:var(--calcite-ui-opacity-disabled)}:host([loading]) calcite-loader[inline]{margin-right:0px;color:var(--calcite-ui-text-3)}:host([disabled]) .button,:host([disabled]) .button:hover,:host([disabled]) .button:focus{cursor:default;background-color:var(--calcite-ui-foreground-1);opacity:var(--calcite-ui-opacity-disabled)}:host([disabled][active]) .button,:host([disabled][active]) .button:hover,:host([disabled][active]) .button:focus{background-color:var(--calcite-ui-foreground-3);opacity:var(--calcite-ui-opacity-disabled)}:host([indicator]) .button::after{content:\\\"\\\";position:absolute;z-index:10;height:0.5rem;width:0.5rem;border-radius:9999px;border-width:2px;background-color:var(--calcite-ui-brand);border-color:var(--calcite-ui-foreground-1);inset-block-end:0.75rem;inset-inline-end:0.75rem}:host([indicator]) .button--text-visible::after{inset-block-end:auto}:host([indicator]) .button--text-visible .text-container--visible{-webkit-margin-end:1rem;margin-inline-end:1rem}:host([indicator]) .button:hover::after,:host([indicator]) .button:focus::after{border-color:var(--calcite-ui-foreground-1)}:host([indicator][scale=s]) .button::after{inset-block-end:0.25rem;inset-inline-end:0.25rem}:host([indicator][scale=s]) .button--text-visible::after{inset-block-end:auto;inset-inline-end:0.5rem}:host([indicator][active]) .button::after{border-color:var(--calcite-ui-foreground-3)}\";\n\nlet Action = class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calciteActionClick = createEvent(this, \"calciteActionClick\", 7);\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /**\n * Indicates whether the action is highlighted.\n */\n this.active = false;\n /** Specify the appearance style of the action, defaults to solid. */\n this.appearance = \"solid\";\n /**\n * Compact mode is used internally by components to reduce side padding, e.g. calcite-block-section.\n */\n this.compact = false;\n /**\n * When true, disabled prevents interaction. This state shows items with lower opacity/grayed.\n */\n this.disabled = false;\n /**\n * Indicates unread changes.\n */\n this.indicator = false;\n /** string to override English loading text\n * @default \"Loading\"\n */\n this.intlLoading = TEXT.loading;\n /**\n * When true, content is waiting to be loaded. This state shows a busy indicator.\n */\n this.loading = false;\n /**\n * Specifies the size of the action.\n */\n this.scale = \"m\";\n /**\n * Indicates whether the text is displayed.\n */\n this.textEnabled = false;\n this.mutationObserver = createObserver(\"mutation\", () => forceUpdate(this));\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.calciteActionClickHandler = () => {\n if (!this.disabled) {\n this.calciteActionClick.emit();\n }\n };\n }\n // --------------------------------------------------------------------------\n //\n // Lifecycle\n //\n // --------------------------------------------------------------------------\n connectedCallback() {\n var _a;\n (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.observe(this.el, { childList: true, subtree: true });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.mutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n // --------------------------------------------------------------------------\n //\n // Methods\n //\n // --------------------------------------------------------------------------\n /** Sets focus on the component. */\n async setFocus() {\n this.buttonEl.focus();\n }\n // --------------------------------------------------------------------------\n //\n // Render Methods\n //\n // --------------------------------------------------------------------------\n renderTextContainer() {\n const { text, textEnabled } = this;\n const textContainerClasses = {\n [CSS.textContainer]: true,\n [CSS.textContainerVisible]: textEnabled\n };\n return text ? (h(\"div\", { class: textContainerClasses, key: \"text-container\" }, text)) : null;\n }\n renderIconContainer() {\n var _a;\n const { loading, icon, scale, el, intlLoading } = this;\n const iconScale = scale === \"l\" ? \"m\" : \"s\";\n const calciteLoaderNode = loading ? (h(\"calcite-loader\", { active: true, inline: true, label: intlLoading, scale: iconScale })) : null;\n const calciteIconNode = icon ? h(\"calcite-icon\", { icon: icon, scale: iconScale }) : null;\n const iconNode = calciteLoaderNode || calciteIconNode;\n const hasIconToDisplay = iconNode || ((_a = el.children) === null || _a === void 0 ? void 0 : _a.length);\n const slotContainerNode = (h(\"div\", { class: {\n [CSS.slotContainer]: true,\n [CSS.slotContainerHidden]: loading\n } }, h(\"slot\", null)));\n return hasIconToDisplay ? (h(\"div\", { \"aria-hidden\": \"true\", class: CSS.iconContainer, key: \"icon-container\" }, iconNode, slotContainerNode)) : null;\n }\n render() {\n const { compact, disabled, loading, textEnabled, label, text } = this;\n const ariaLabel = label || text;\n const buttonClasses = {\n [CSS.button]: true,\n [CSS.buttonTextVisible]: textEnabled,\n [CSS.buttonCompact]: compact\n };\n return (h(Host, { onClick: this.calciteActionClickHandler }, h(\"button\", { \"aria-busy\": loading.toString(), \"aria-disabled\": disabled.toString(), \"aria-label\": ariaLabel, class: buttonClasses, disabled: disabled, ref: (buttonEl) => (this.buttonEl = buttonEl) }, this.renderIconContainer(), this.renderTextContainer())));\n }\n get el() { return this; }\n static get style() { return actionCss; }\n};\nAction = /*@__PURE__*/ proxyCustomElement(Action, [1, \"calcite-action\", {\n \"active\": [516],\n \"alignment\": [513],\n \"appearance\": [513],\n \"compact\": [516],\n \"disabled\": [516],\n \"icon\": [1],\n \"indicator\": [516],\n \"intlLoading\": [1, \"intl-loading\"],\n \"label\": [1],\n \"loading\": [516],\n \"scale\": [513],\n \"text\": [1],\n \"textEnabled\": [516, \"text-enabled\"],\n \"setFocus\": [64]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-action\", \"calcite-icon\", \"calcite-loader\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-action\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Action);\n }\n break;\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n case \"calcite-loader\":\n if (!customElements.get(tagName)) {\n defineCustomElement$1();\n }\n break;\n } });\n}\ndefineCustomElement();\n\nexport { Action as A, defineCustomElement as d };\n"],"sourceRoot":""}