{"version":3,"sources":["../node_modules/@esri/calcite-components/dist/components/Heading.js","../node_modules/@esri/calcite-components/dist/components/array.js","../node_modules/@esri/calcite-components/dist/components/key.js","../node_modules/@esri/calcite-components/dist/components/openCloseComponent.js","../node_modules/@esri/calcite-components/dist/components/popover.js","../node_modules/@esri/calcite-components/dist/components/action-menu.js","../node_modules/@esri/calcite-components/dist/components/scrim.js","../node_modules/@esri/calcite-components/dist/components/panel.js","../node_modules/@esri/calcite-components/dist/components/calcite-flow-item.js"],"names":["Heading","props","children","HeadingTag","level","h","getRoundRobinIndex","index","total","isActivationKey","key","componentToTransitionListeners","WeakMap","transitionStart","event","propertyName","this","openTransitionProp","target","transitionEl","open","onBeforeOpen","onBeforeClose","transitionEnd","onOpen","onClose","connectOpenCloseComponent","component","disconnectOpenCloseComponent","boundOnTransitionStart","bind","boundOnTransitionEnd","set","addEventListener","has","get","start","end","removeEventListener","delete","CSS","TEXT","ARIA_CONTROLS","ARIA_EXPANDED","manager","registeredElements","Map","registeredElementCount","queryPopover","composedPath","registeredElement","find","pathEl","togglePopovers","togglePopover","triggerDisabled","toggle","Array","from","values","filter","popover","autoClose","includes","forEach","keyHandler","defaultPrevented","clickHandler","isPrimaryPointerButton","referenceEl","addListeners","removeListeners","document","capture","Popover","proxyCustomElement","__registerHost","__attachShadow","calcitePopoverBeforeClose","createEvent","calcitePopoverClose","calcitePopoverBeforeOpen","calcitePopoverOpen","closeButton","dismissible","closable","disableFlip","disablePointer","offsetDistance","defaultOffsetDistance","offsetSkidding","overlayPositioning","placement","intlClose","guid","hasLoaded","setTransitionEl","el","setFilteredPlacements","flipPlacements","filteredFlipPlacements","filterComputedPlacements","setUpReferenceElement","warn","removeReferences","effectiveReferenceElement","getReferenceElement","connectFloatingUI","referenceElement","console","tagName","addReferences","getId","id","setExpandedAttr","setAttribute","toAriaBoolean","registerElement","removeAttribute","unregisterElement","hide","storeArrowEl","arrowEl","reposition","value","updateAfterClose","handleDismissible","handleClosable","disconnectFloatingUI","a","delayed","floatingEl","includeArrow","type","focusId","closeButtonEl","forceUpdate","setFocus","_a","focus","queryElementRoots","emit","heading","class","onClick","ref","scale","text","icon","headingLevel","headingNode","renderCloseButton","label","displayed","hidden","arrowNode","Host","role","FloatingCSS","animation","animationActive","renderHeader","HTMLElement","defineCustomElement","customElements","define","defineCustomElement$3","defineCustomElement$2","defineCustomElement$1","SLOTS","ICONS","SUPPORTED_MENU_NAV_KEYS","ActionMenu","calciteActionMenuOpenChange","expanded","actionElements","menuId","menuButtonId","activeMenuItemIndex","connectMenuButtonEl","menuButtonEl","slottedMenuButtonEl","defaultMenuButtonEl","disconnectMenuButtonEl","setTooltipReferenceElement","active","menuButtonClick","menuButtonKeyDown","setMenuButtonEl","actions","assignedElements","flatten","matches","setDefaultMenuButtonEl","handleCalciteActionClick","toggleOpen","updateTooltip","tooltips","tooltipEl","updateAction","action","tabIndex","updateActions","handleDefaultSlotChange","length","preventDefault","click","handleActionNavigation","isValidKey","currentIndex","Math","max","toggleOpenEnd","focusElement","name","onSlotchange","textEnabled","activeAction","activeDescendantId","Fragment","renderMenuButton","renderMenuItems","supportedKeys","k","defineCustomElement$4","Scrim","intlLoading","loading","hasContent","innerHTML","trim","loaderNode","contentNode","Panel","calcitePanelClose","calcitePanelDismiss","calcitePanelDismissedChange","calcitePanelScroll","calcitePanelBackClick","dismissed","closed","disabled","showBackButton","menuOpen","resizeObserver","createObserver","resizeHandler","hasStartActions","hasEndActions","hasMenuItems","hasHeaderContent","hasFooterContent","hasFooterActions","hasFab","panelScrollEl","scrollHeight","offsetHeight","setContainerRef","node","containerEl","setCloseRef","setBackRef","backButtonEl","panelKeyDownHandler","close","panelScrollHandler","backButtonClick","handleHeaderActionsStartSlotChange","elements","handleHeaderActionsEndSlotChange","handleHeaderMenuActionsSlotChange","handleHeaderContentSlotChange","handleFooterSlotChange","handleFooterActionsSlotChange","handleFabSlotChange","setPanelScrollEl","_b","disconnect","observe","updateHostInteraction","isClosed","isClosable","dismissedHandler","closedHandler","dismissibleHandler","closableHandler","options","scrollTo","rtl","getElementDir","intlBack","slot","summary","description","descriptionNode","closableNode","slotNode","showContainer","intlOptions","SLOTS$1","headerContentNode","renderHeaderContent","showHeader","renderBackButton","renderHeaderStartActions","renderHeaderSlottedContent","renderHeaderActionsEnd","renderMenu","showFooter","defaultSlotNode","containerNode","onScroll","renderFab","panelNode","onKeyDown","renderHeaderNode","renderContent","renderFooterNode","defineCustomElement$6","defineCustomElement$5","FlowItem","calciteFlowItemBack","calciteFlowItemBackClick","calciteFlowItemScroll","calciteFlowItemClose","handlePanelScroll","stopPropagation","handlePanelClose","getBackLabel","scrollContentTo","heightScale","widthScale","onCalcitePanelClose","onCalcitePanelScroll","defineCustomElement$9","defineCustomElement$8","defineCustomElement$7","CalciteFlowItem"],"mappings":"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","file":"static/js/206.1d34cc87.chunk.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 * v1.0.0-beta.97\n */\nimport { h } from '@stencil/core/internal/client/index.js';\n\nfunction constrainHeadingLevel(level) {\n return Math.min(Math.max(Math.ceil(level), 1), 6);\n}\nconst Heading = (props, children) => {\n const HeadingTag = `h${props.level}`;\n delete props.level;\n return h(HeadingTag, { ...props }, children);\n};\n\nexport { Heading as H, constrainHeadingLevel as c };\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 * v1.0.0-beta.97\n */\nfunction getRoundRobinIndex(index, total) {\n return (index + total) % total;\n}\n\nexport { getRoundRobinIndex as g };\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 * v1.0.0-beta.97\n */\nfunction isActivationKey(key) {\n return key === \"Enter\" || key === \" \";\n}\nconst numberKeys = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\n\nexport { isActivationKey as i, numberKeys as n };\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 * v1.0.0-beta.97\n */\nconst componentToTransitionListeners = new WeakMap();\nfunction transitionStart(event) {\n if (event.propertyName === this.openTransitionProp && event.target === this.transitionEl) {\n this.open ? this.onBeforeOpen() : this.onBeforeClose();\n }\n}\nfunction transitionEnd(event) {\n if (event.propertyName === this.openTransitionProp && event.target === this.transitionEl) {\n this.open ? this.onOpen() : this.onClose();\n }\n}\n/**\n * Helper to keep track of transition listeners on setTransitionEl and connectedCallback on OpenCloseComponent components.\n *\n * @param component\n */\nfunction connectOpenCloseComponent(component) {\n disconnectOpenCloseComponent(component);\n if (component.transitionEl) {\n const boundOnTransitionStart = transitionStart.bind(component);\n const boundOnTransitionEnd = transitionEnd.bind(component);\n componentToTransitionListeners.set(component, [\n component.transitionEl,\n boundOnTransitionStart,\n boundOnTransitionEnd\n ]);\n component.transitionEl.addEventListener(\"transitionstart\", boundOnTransitionStart);\n component.transitionEl.addEventListener(\"transitionend\", boundOnTransitionEnd);\n }\n}\n/**\n * Helper to tear down transition listeners on disconnectedCallback on OpenCloseComponent components.\n *\n * @param component\n */\nfunction disconnectOpenCloseComponent(component) {\n if (!componentToTransitionListeners.has(component)) {\n return;\n }\n const [transitionEl, start, end] = componentToTransitionListeners.get(component);\n transitionEl.removeEventListener(\"transitionstart\", start);\n transitionEl.removeEventListener(\"transitionend\", end);\n componentToTransitionListeners.delete(component);\n}\n\nexport { connectOpenCloseComponent as c, disconnectOpenCloseComponent as d };\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 * v1.0.0-beta.97\n */\nimport { proxyCustomElement, HTMLElement, createEvent, forceUpdate, h, Host } from '@stencil/core/internal/client/index.js';\nimport { b as defaultOffsetDistance, f as filterComputedPlacements, c as connectFloatingUI, u as updateAfterClose, a as disconnectFloatingUI, r as reposition, F as FloatingCSS } from './floating-ui.js';\nimport { g as guid } from './guid.js';\nimport { i as isPrimaryPointerButton, t as toAriaBoolean, q as queryElementRoots } from './dom.js';\nimport { c as connectOpenCloseComponent, d as disconnectOpenCloseComponent } from './openCloseComponent.js';\nimport { H as Heading } from './Heading.js';\nimport { i as isActivationKey } from './key.js';\nimport { d as defineCustomElement$3 } from './action.js';\nimport { d as defineCustomElement$2 } from './icon.js';\nimport { d as defineCustomElement$1 } from './loader.js';\n\nconst CSS = {\n container: \"container\",\n arrow: \"arrow\",\n imageContainer: \"image-container\",\n closeButtonContainer: \"close-button-container\",\n closeButton: \"close-button\",\n content: \"content\",\n hasHeader: \"has-header\",\n header: \"header\",\n headerContent: \"header-content\",\n heading: \"heading\"\n};\nconst TEXT = {\n close: \"Close\"\n};\nconst defaultPopoverPlacement = \"auto\";\nconst ARIA_CONTROLS = \"aria-controls\";\nconst ARIA_EXPANDED = \"aria-expanded\";\nconst HEADING_LEVEL = 2;\n\nclass PopoverManager {\n constructor() {\n // --------------------------------------------------------------------------\n //\n // Private Properties\n //\n // --------------------------------------------------------------------------\n this.registeredElements = new Map();\n this.registeredElementCount = 0;\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.queryPopover = (composedPath) => {\n const { registeredElements } = this;\n const registeredElement = composedPath.find((pathEl) => registeredElements.has(pathEl));\n return registeredElements.get(registeredElement);\n };\n this.togglePopovers = (event) => {\n const composedPath = event.composedPath();\n const togglePopover = this.queryPopover(composedPath);\n if (togglePopover && !togglePopover.triggerDisabled) {\n togglePopover.toggle();\n }\n Array.from(this.registeredElements.values())\n .filter((popover) => popover !== togglePopover && popover.autoClose && popover.open && !composedPath.includes(popover))\n .forEach((popover) => popover.toggle(false));\n };\n this.keyHandler = (event) => {\n if (event.defaultPrevented || !isActivationKey(event.key)) {\n return;\n }\n this.togglePopovers(event);\n };\n this.clickHandler = (event) => {\n if (isPrimaryPointerButton(event)) {\n this.togglePopovers(event);\n }\n };\n }\n // --------------------------------------------------------------------------\n //\n // Public Methods\n //\n // --------------------------------------------------------------------------\n registerElement(referenceEl, popover) {\n this.registeredElementCount++;\n this.registeredElements.set(referenceEl, popover);\n if (this.registeredElementCount === 1) {\n this.addListeners();\n }\n }\n unregisterElement(referenceEl) {\n if (this.registeredElements.delete(referenceEl)) {\n this.registeredElementCount--;\n }\n if (this.registeredElementCount === 0) {\n this.removeListeners();\n }\n }\n addListeners() {\n document.addEventListener(\"pointerdown\", this.clickHandler, { capture: true });\n document.addEventListener(\"keydown\", this.keyHandler, { capture: true });\n }\n removeListeners() {\n document.removeEventListener(\"pointerdown\", this.clickHandler, { capture: true });\n document.removeEventListener(\"keydown\", this.keyHandler, { capture: true });\n }\n}\n\nconst popoverCss = \"@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity: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;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:block;position:absolute;z-index:900}.calcite-floating-ui-anim{position:relative;transition:var(--calcite-floating-ui-transition);visibility:hidden;transition-property:transform, visibility, opacity;opacity:0;box-shadow:0 0 16px 0 rgba(0, 0, 0, 0.16);z-index:1;border-radius:0.25rem}:host([data-placement^=bottom]) .calcite-floating-ui-anim{transform:translateY(-5px)}:host([data-placement^=top]) .calcite-floating-ui-anim{transform:translateY(5px)}:host([data-placement^=left]) .calcite-floating-ui-anim{transform:translateX(5px)}:host([data-placement^=right]) .calcite-floating-ui-anim{transform:translateX(-5px)}:host([data-placement]) .calcite-floating-ui-anim--active{opacity:1;visibility:visible;transform:translate(0)}:host([calcite-hydrated-hidden]){visibility:hidden !important;pointer-events:none}.arrow,.arrow::before{position:absolute;inline-size:8px;block-size:8px;z-index:-1}.arrow::before{content:\\\"\\\";--tw-shadow:0 4px 8px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -1px rgba(0, 0, 0, 0.04);--tw-shadow-colored:0 4px 8px -1px var(--tw-shadow-color), 0 2px 4px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);transform:rotate(45deg);background:var(--calcite-ui-foreground-1)}:host([data-placement^=top]) .arrow{inset-block-end:-4px}:host([data-placement^=bottom]) .arrow{inset-block-start:-4px}:host([data-placement^=left]) .arrow{direction:ltr;inset-inline-end:-4px}:host([data-placement^=right]) .arrow{direction:ltr;inset-inline-start:-4px}:host{pointer-events:none}:host([open]){pointer-events:initial}.calcite-floating-ui-anim{border-radius:0.25rem;border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-3);background-color:var(--calcite-ui-foreground-1)}.arrow::before{outline:1px solid var(--calcite-ui-border-3)}.header{display:flex;flex:1 1 auto;align-items:stretch;justify-content:flex-start;border-width:0px;border-block-end-width:1px;border-style:solid;background-color:var(--calcite-ui-foreground-1);border-block-end-color:var(--calcite-ui-border-3)}.heading{margin:0px;display:block;flex:1 1 auto;align-self:center;white-space:normal;padding-inline:1rem;padding-block:0.75rem;font-size:var(--calcite-font-size-0);line-height:1.375;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-1);word-wrap:break-word;word-break:break-word}.container{position:relative;display:flex;block-size:100%;flex-direction:row;flex-wrap:nowrap;border-radius:0.25rem;background-color:var(--calcite-ui-foreground-1);color:var(--calcite-ui-text-1)}.container.has-header{flex-direction:column}.content{display:flex;block-size:100%;inline-size:100%;flex-direction:column;flex-wrap:nowrap;align-self:center;word-wrap:break-word;word-break:break-word}.close-button-container{display:flex;overflow:hidden;flex:0 0 auto;border-start-end-radius:0.25rem;border-end-end-radius:0.25rem}::slotted(calcite-panel),::slotted(calcite-flow){block-size:100%}\";\n\nconst manager = new PopoverManager();\nconst Popover = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calcitePopoverBeforeClose = createEvent(this, \"calcitePopoverBeforeClose\", 6);\n this.calcitePopoverClose = createEvent(this, \"calcitePopoverClose\", 6);\n this.calcitePopoverBeforeOpen = createEvent(this, \"calcitePopoverBeforeOpen\", 6);\n this.calcitePopoverOpen = createEvent(this, \"calcitePopoverOpen\", 6);\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /**\n * When `true`, clicking outside of the component automatically closes open `calcite-popover`s.\n */\n this.autoClose = false;\n /**\n * When `true`, a close button is added to the component.\n *\n * @deprecated use dismissible instead.\n */\n this.closeButton = false;\n /**\n * When `true`, a close button is added to the component.\n *\n * @deprecated use `closable` instead.\n */\n this.dismissible = false;\n /** When `true`, display a close button within the component. */\n this.closable = false;\n /**\n * When `true`, prevents flipping the component's placement when overlapping its `referenceElement`.\n */\n this.disableFlip = false;\n /**\n * When `true`, removes the caret pointer.\n */\n this.disablePointer = false;\n /**\n * Offsets the position of the component away from the `referenceElement`.\n *\n * @default 6\n */\n this.offsetDistance = defaultOffsetDistance;\n /**\n * Offsets the position of the component along the `referenceElement`.\n */\n this.offsetSkidding = 0;\n /**\n * When `true`, displays and positions the component.\n */\n this.open = false;\n /**\n * Determines the type of positioning to use for the overlaid content.\n *\n * Using `\"absolute\"` will work for most cases. The component will be positioned inside of overflowing parent containers and will affect the container's layout.\n *\n * `\"fixed\"` value should be used to escape an overflowing parent container, or when the reference element's `position` CSS property is `\"fixed\"`.\n *\n */\n this.overlayPositioning = \"absolute\";\n /**\n * Determines where the component will be positioned relative to the `referenceElement`.\n *\n * @see [LogicalPlacement](https://github.com/Esri/calcite-components/blob/master/src/utils/floating-ui.ts#L25)\n */\n this.placement = defaultPopoverPlacement;\n /**\n * When `true`, disables automatically toggling the component when its `referenceElement` has been triggered.\n *\n * This property can be set to `true` to manage when the component is open.\n */\n this.triggerDisabled = false;\n /**\n * Accessible name for the component's close button.\n *\n * @default \"Close\"\n */\n this.intlClose = TEXT.close;\n this.guid = `calcite-popover-${guid()}`;\n this.openTransitionProp = \"opacity\";\n this.hasLoaded = false;\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.setTransitionEl = (el) => {\n this.transitionEl = el;\n connectOpenCloseComponent(this);\n };\n this.setFilteredPlacements = () => {\n const { el, flipPlacements } = this;\n this.filteredFlipPlacements = flipPlacements\n ? filterComputedPlacements(flipPlacements, el)\n : null;\n };\n this.setUpReferenceElement = (warn = true) => {\n this.removeReferences();\n this.effectiveReferenceElement = this.getReferenceElement();\n connectFloatingUI(this, this.effectiveReferenceElement, this.el);\n const { el, referenceElement, effectiveReferenceElement } = this;\n if (warn && referenceElement && !effectiveReferenceElement) {\n console.warn(`${el.tagName}: reference-element id \"${referenceElement}\" was not found.`, {\n el\n });\n }\n this.addReferences();\n };\n this.getId = () => {\n return this.el.id || this.guid;\n };\n this.setExpandedAttr = () => {\n const { effectiveReferenceElement, open } = this;\n if (!effectiveReferenceElement) {\n return;\n }\n if (\"setAttribute\" in effectiveReferenceElement) {\n effectiveReferenceElement.setAttribute(ARIA_EXPANDED, toAriaBoolean(open));\n }\n };\n this.addReferences = () => {\n const { effectiveReferenceElement } = this;\n if (!effectiveReferenceElement) {\n return;\n }\n const id = this.getId();\n if (\"setAttribute\" in effectiveReferenceElement) {\n effectiveReferenceElement.setAttribute(ARIA_CONTROLS, id);\n }\n manager.registerElement(effectiveReferenceElement, this.el);\n this.setExpandedAttr();\n };\n this.removeReferences = () => {\n const { effectiveReferenceElement } = this;\n if (!effectiveReferenceElement) {\n return;\n }\n if (\"removeAttribute\" in effectiveReferenceElement) {\n effectiveReferenceElement.removeAttribute(ARIA_CONTROLS);\n effectiveReferenceElement.removeAttribute(ARIA_EXPANDED);\n }\n manager.unregisterElement(effectiveReferenceElement);\n };\n this.hide = () => {\n this.open = false;\n };\n this.storeArrowEl = (el) => {\n this.arrowEl = el;\n this.reposition(true);\n };\n }\n handleDismissible(value) {\n this.closable = value;\n }\n handleClosable(value) {\n this.dismissible = value;\n }\n flipPlacementsHandler() {\n this.setFilteredPlacements();\n this.reposition(true);\n }\n offsetDistanceOffsetHandler() {\n this.reposition(true);\n }\n offsetSkiddingHandler() {\n this.reposition(true);\n }\n openHandler(value) {\n if (value) {\n this.reposition(true);\n }\n else {\n updateAfterClose(this.el);\n }\n this.setExpandedAttr();\n }\n overlayPositioningHandler() {\n this.reposition(true);\n }\n placementHandler() {\n this.reposition(true);\n }\n referenceElementHandler() {\n this.setUpReferenceElement();\n this.reposition(true);\n }\n // --------------------------------------------------------------------------\n //\n // Lifecycle\n //\n // --------------------------------------------------------------------------\n connectedCallback() {\n this.setFilteredPlacements();\n connectOpenCloseComponent(this);\n const closable = this.closable || this.dismissible;\n if (closable) {\n this.handleDismissible(closable);\n }\n if (closable) {\n this.handleClosable(closable);\n }\n this.setUpReferenceElement(this.hasLoaded);\n }\n componentDidLoad() {\n if (this.referenceElement && !this.effectiveReferenceElement) {\n this.setUpReferenceElement();\n }\n this.reposition();\n this.hasLoaded = true;\n }\n disconnectedCallback() {\n this.removeReferences();\n disconnectFloatingUI(this, this.effectiveReferenceElement, this.el);\n disconnectOpenCloseComponent(this);\n }\n // --------------------------------------------------------------------------\n //\n // Public Methods\n //\n // --------------------------------------------------------------------------\n /**\n * Updates the position of the component.\n *\n * @param delayed\n */\n async reposition(delayed = false) {\n const { el, effectiveReferenceElement, placement, overlayPositioning, disableFlip, filteredFlipPlacements, offsetDistance, offsetSkidding, arrowEl } = this;\n return reposition(this, {\n floatingEl: el,\n referenceEl: effectiveReferenceElement,\n overlayPositioning,\n placement,\n disableFlip,\n flipPlacements: filteredFlipPlacements,\n offsetDistance,\n offsetSkidding,\n includeArrow: !this.disablePointer,\n arrowEl,\n type: \"popover\"\n }, delayed);\n }\n /**\n * Sets focus on the component.\n *\n * @param focusId\n */\n async setFocus(focusId) {\n var _a;\n const { closeButtonEl } = this;\n if (focusId === \"close-button\" && closeButtonEl) {\n forceUpdate(closeButtonEl);\n closeButtonEl.setFocus();\n return;\n }\n (_a = this.el) === null || _a === void 0 ? void 0 : _a.focus();\n }\n /**\n * Toggles the component's open property.\n *\n * @param value\n */\n async toggle(value = !this.open) {\n this.open = value;\n }\n getReferenceElement() {\n const { referenceElement, el } = this;\n return ((typeof referenceElement === \"string\"\n ? queryElementRoots(el, { id: referenceElement })\n : referenceElement) || null);\n }\n onBeforeOpen() {\n this.calcitePopoverBeforeOpen.emit();\n }\n onOpen() {\n this.calcitePopoverOpen.emit();\n }\n onBeforeClose() {\n this.calcitePopoverBeforeClose.emit();\n }\n onClose() {\n this.calcitePopoverClose.emit();\n }\n // --------------------------------------------------------------------------\n //\n // Render Methods\n //\n // --------------------------------------------------------------------------\n renderCloseButton() {\n const { closeButton, intlClose, heading, closable } = this;\n return closable || closeButton ? (h(\"div\", { class: CSS.closeButtonContainer }, h(\"calcite-action\", { class: CSS.closeButton, onClick: this.hide, ref: (closeButtonEl) => (this.closeButtonEl = closeButtonEl), scale: heading ? \"s\" : \"m\", text: intlClose }, h(\"calcite-icon\", { icon: \"x\", scale: heading ? \"s\" : \"m\" })))) : null;\n }\n renderHeader() {\n const { heading, headingLevel } = this;\n const headingNode = heading ? (h(Heading, { class: CSS.heading, level: headingLevel || HEADING_LEVEL }, heading)) : null;\n return headingNode ? (h(\"div\", { class: CSS.header }, headingNode, this.renderCloseButton())) : null;\n }\n render() {\n const { effectiveReferenceElement, heading, label, open, disablePointer } = this;\n const displayed = effectiveReferenceElement && open;\n const hidden = !displayed;\n const arrowNode = !disablePointer ? h(\"div\", { class: CSS.arrow, ref: this.storeArrowEl }) : null;\n return (h(Host, { \"aria-hidden\": toAriaBoolean(hidden), \"aria-label\": label, \"aria-live\": \"polite\", \"calcite-hydrated-hidden\": hidden, id: this.getId(), role: \"dialog\" }, h(\"div\", { class: {\n [FloatingCSS.animation]: true,\n [FloatingCSS.animationActive]: displayed\n }, ref: this.setTransitionEl }, arrowNode, h(\"div\", { class: {\n [CSS.hasHeader]: !!heading,\n [CSS.container]: true\n } }, this.renderHeader(), h(\"div\", { class: CSS.content }, h(\"slot\", null)), !heading ? this.renderCloseButton() : null))));\n }\n get el() { return this; }\n static get watchers() { return {\n \"dismissible\": [\"handleDismissible\"],\n \"closable\": [\"handleClosable\"],\n \"flipPlacements\": [\"flipPlacementsHandler\"],\n \"offsetDistance\": [\"offsetDistanceOffsetHandler\"],\n \"offsetSkidding\": [\"offsetSkiddingHandler\"],\n \"open\": [\"openHandler\"],\n \"overlayPositioning\": [\"overlayPositioningHandler\"],\n \"placement\": [\"placementHandler\"],\n \"referenceElement\": [\"referenceElementHandler\"]\n }; }\n static get style() { return popoverCss; }\n}, [1, \"calcite-popover\", {\n \"autoClose\": [516, \"auto-close\"],\n \"closeButton\": [516, \"close-button\"],\n \"dismissible\": [1540],\n \"closable\": [1540],\n \"disableFlip\": [516, \"disable-flip\"],\n \"disablePointer\": [516, \"disable-pointer\"],\n \"flipPlacements\": [16],\n \"heading\": [1],\n \"headingLevel\": [514, \"heading-level\"],\n \"label\": [1],\n \"offsetDistance\": [514, \"offset-distance\"],\n \"offsetSkidding\": [514, \"offset-skidding\"],\n \"open\": [1540],\n \"overlayPositioning\": [513, \"overlay-positioning\"],\n \"placement\": [513],\n \"referenceElement\": [1, \"reference-element\"],\n \"triggerDisabled\": [516, \"trigger-disabled\"],\n \"intlClose\": [1, \"intl-close\"],\n \"effectiveReferenceElement\": [32],\n \"reposition\": [64],\n \"setFocus\": [64],\n \"toggle\": [64]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-popover\", \"calcite-action\", \"calcite-icon\", \"calcite-loader\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-popover\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Popover);\n }\n break;\n case \"calcite-action\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\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 { Popover as P, defineCustomElement as d };\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 * v1.0.0-beta.97\n */\nimport { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client/index.js';\nimport { t as toAriaBoolean, i as isPrimaryPointerButton, f as focusElement } from './dom.js';\nimport { g as getRoundRobinIndex } from './array.js';\nimport { g as guid } from './guid.js';\nimport { i as isActivationKey } from './key.js';\nimport { d as defineCustomElement$4 } from './action.js';\nimport { d as defineCustomElement$3 } from './icon.js';\nimport { d as defineCustomElement$2 } from './loader.js';\nimport { d as defineCustomElement$1 } from './popover.js';\n\nconst CSS = {\n menu: \"menu\",\n defaultTrigger: \"default-trigger\"\n};\nconst SLOTS = {\n tooltip: \"tooltip\",\n trigger: \"trigger\"\n};\nconst ICONS = {\n menu: \"ellipsis\"\n};\n\nconst actionMenuCss = \"@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity: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;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{box-sizing:border-box;display:flex;flex-direction:column;background-color:var(--calcite-ui-foreground-1);font-size:var(--calcite-font-size-1);color:var(--calcite-ui-text-2)}.menu ::slotted(calcite-action){margin:0.125rem;display:flex;outline-color:transparent}.menu ::slotted(calcite-action[active]){outline:2px solid var(--calcite-ui-brand);outline-offset:0px}.default-trigger{position:relative;block-size:100%;flex:0 1 auto;align-self:stretch}slot[name=trigger]::slotted(calcite-action),calcite-action::slotted([slot=trigger]){position:relative;block-size:100%;flex:0 1 auto;align-self:stretch}.menu{flex-direction:column;flex-wrap:nowrap;outline:2px solid transparent;outline-offset:2px}\";\n\nconst SUPPORTED_MENU_NAV_KEYS = [\"ArrowUp\", \"ArrowDown\", \"End\", \"Home\"];\nconst ActionMenu = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calciteActionMenuOpenChange = createEvent(this, \"calciteActionMenuOpenChange\", 6);\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /**\n * When `true`, the component is expanded.\n */\n this.expanded = false;\n /**\n * When `true`, the component is open.\n */\n this.open = false;\n /**\n * Determines the type of positioning to use for the overlaid content.\n *\n * Using `\"absolute\"` will work for most cases. The component will be positioned inside of overflowing parent containers and will affect the container's layout.\n * `\"fixed\"` should be used to escape an overflowing parent container, or when the reference element's `position` CSS property is `\"fixed\"`.\n *\n */\n this.overlayPositioning = \"absolute\";\n /**\n * Determines where the component will be positioned relative to the `referenceElement`.\n *\n * @see [LogicalPlacement](https://github.com/Esri/calcite-components/blob/master/src/utils/floating-ui.ts#L25)\n */\n this.placement = \"auto\";\n this.actionElements = [];\n this.guid = `calcite-action-menu-${guid()}`;\n this.menuId = `${this.guid}-menu`;\n this.menuButtonId = `${this.guid}-menu-button`;\n this.activeMenuItemIndex = -1;\n // --------------------------------------------------------------------------\n //\n // Component Methods\n //\n // --------------------------------------------------------------------------\n this.connectMenuButtonEl = () => {\n const { menuButtonId, menuId, open, label } = this;\n const menuButtonEl = this.slottedMenuButtonEl || this.defaultMenuButtonEl;\n if (this.menuButtonEl === menuButtonEl) {\n return;\n }\n this.disconnectMenuButtonEl();\n this.menuButtonEl = menuButtonEl;\n this.setTooltipReferenceElement();\n if (!menuButtonEl) {\n return;\n }\n menuButtonEl.active = open;\n menuButtonEl.setAttribute(\"aria-controls\", menuId);\n menuButtonEl.setAttribute(\"aria-expanded\", toAriaBoolean(open));\n menuButtonEl.setAttribute(\"aria-haspopup\", \"true\");\n if (!menuButtonEl.id) {\n menuButtonEl.id = menuButtonId;\n }\n if (!menuButtonEl.label) {\n menuButtonEl.label = label;\n }\n if (!menuButtonEl.text) {\n menuButtonEl.text = label;\n }\n menuButtonEl.addEventListener(\"pointerdown\", this.menuButtonClick);\n menuButtonEl.addEventListener(\"keydown\", this.menuButtonKeyDown);\n };\n this.disconnectMenuButtonEl = () => {\n const { menuButtonEl } = this;\n if (!menuButtonEl) {\n return;\n }\n menuButtonEl.removeEventListener(\"pointerdown\", this.menuButtonClick);\n menuButtonEl.removeEventListener(\"keydown\", this.menuButtonKeyDown);\n };\n this.setMenuButtonEl = (event) => {\n const actions = event.target\n .assignedElements({\n flatten: true\n })\n .filter((el) => el === null || el === void 0 ? void 0 : el.matches(\"calcite-action\"));\n this.slottedMenuButtonEl = actions[0];\n this.connectMenuButtonEl();\n };\n this.setDefaultMenuButtonEl = (el) => {\n this.defaultMenuButtonEl = el;\n this.connectMenuButtonEl();\n };\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.handleCalciteActionClick = () => {\n this.open = false;\n this.setFocus();\n };\n this.menuButtonClick = (event) => {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n this.toggleOpen();\n };\n this.updateTooltip = (event) => {\n const tooltips = event.target\n .assignedElements({\n flatten: true\n })\n .filter((el) => el === null || el === void 0 ? void 0 : el.matches(\"calcite-tooltip\"));\n this.tooltipEl = tooltips[0];\n this.setTooltipReferenceElement();\n };\n this.setTooltipReferenceElement = () => {\n const { tooltipEl, expanded, menuButtonEl, open } = this;\n if (tooltipEl) {\n tooltipEl.referenceElement = !expanded && !open ? menuButtonEl : null;\n }\n };\n this.updateAction = (action, index) => {\n const { guid, activeMenuItemIndex } = this;\n const id = `${guid}-action-${index}`;\n action.tabIndex = -1;\n action.setAttribute(\"role\", \"menuitem\");\n if (!action.id) {\n action.id = id;\n }\n action.active = index === activeMenuItemIndex;\n };\n this.updateActions = (actions) => {\n actions === null || actions === void 0 ? void 0 : actions.forEach(this.updateAction);\n };\n this.handleDefaultSlotChange = (event) => {\n const actions = event.target\n .assignedElements({\n flatten: true\n })\n .filter((el) => el === null || el === void 0 ? void 0 : el.matches(\"calcite-action\"));\n this.actionElements = actions;\n };\n this.menuButtonKeyDown = (event) => {\n const { key } = event;\n const { actionElements, activeMenuItemIndex, open } = this;\n if (!actionElements.length) {\n return;\n }\n if (isActivationKey(key)) {\n event.preventDefault();\n if (!open) {\n this.toggleOpen();\n return;\n }\n const action = actionElements[activeMenuItemIndex];\n action ? action.click() : this.toggleOpen(false);\n }\n if (key === \"Tab\") {\n this.open = false;\n return;\n }\n if (key === \"Escape\") {\n this.toggleOpen(false);\n event.preventDefault();\n return;\n }\n this.handleActionNavigation(event, key, actionElements);\n };\n this.handleActionNavigation = (event, key, actions) => {\n if (!this.isValidKey(key, SUPPORTED_MENU_NAV_KEYS)) {\n return;\n }\n event.preventDefault();\n if (!this.open) {\n this.toggleOpen();\n if (key === \"Home\" || key === \"ArrowDown\") {\n this.activeMenuItemIndex = 0;\n }\n if (key === \"End\" || key === \"ArrowUp\") {\n this.activeMenuItemIndex = actions.length - 1;\n }\n return;\n }\n if (key === \"Home\") {\n this.activeMenuItemIndex = 0;\n }\n if (key === \"End\") {\n this.activeMenuItemIndex = actions.length - 1;\n }\n const currentIndex = this.activeMenuItemIndex;\n if (key === \"ArrowUp\") {\n this.activeMenuItemIndex = getRoundRobinIndex(Math.max(currentIndex - 1, -1), actions.length);\n }\n if (key === \"ArrowDown\") {\n this.activeMenuItemIndex = getRoundRobinIndex(currentIndex + 1, actions.length);\n }\n };\n this.toggleOpenEnd = () => {\n this.setFocus();\n this.el.removeEventListener(\"calcitePopoverOpen\", this.toggleOpenEnd);\n };\n this.toggleOpen = (value = !this.open) => {\n this.el.addEventListener(\"calcitePopoverOpen\", this.toggleOpenEnd);\n this.open = value;\n };\n }\n // --------------------------------------------------------------------------\n //\n // Lifecycle\n //\n // --------------------------------------------------------------------------\n disconnectedCallback() {\n this.disconnectMenuButtonEl();\n }\n expandedHandler() {\n this.open = false;\n this.setTooltipReferenceElement();\n }\n openHandler(open) {\n this.activeMenuItemIndex = this.open ? 0 : -1;\n if (this.menuButtonEl) {\n this.menuButtonEl.active = open;\n }\n this.calciteActionMenuOpenChange.emit(open);\n this.setTooltipReferenceElement();\n }\n closeCalciteActionMenuOnClick(event) {\n if (!isPrimaryPointerButton(event)) {\n return;\n }\n const composedPath = event.composedPath();\n if (composedPath.includes(this.el)) {\n return;\n }\n this.open = false;\n }\n activeMenuItemIndexHandler() {\n this.updateActions(this.actionElements);\n }\n // --------------------------------------------------------------------------\n //\n // Methods\n //\n // --------------------------------------------------------------------------\n /** Sets focus on the component. */\n async setFocus() {\n focusElement(this.menuButtonEl);\n }\n renderMenuButton() {\n const { label, scale, expanded } = this;\n const menuButtonSlot = (h(\"slot\", { name: SLOTS.trigger, onSlotchange: this.setMenuButtonEl }, h(\"calcite-action\", { class: CSS.defaultTrigger, icon: ICONS.menu, ref: this.setDefaultMenuButtonEl, scale: scale, text: label, textEnabled: expanded })));\n return menuButtonSlot;\n }\n renderMenuItems() {\n const { actionElements, activeMenuItemIndex, open, menuId, menuButtonEl, label, placement, overlayPositioning, flipPlacements } = this;\n const activeAction = actionElements[activeMenuItemIndex];\n const activeDescendantId = (activeAction === null || activeAction === void 0 ? void 0 : activeAction.id) || null;\n return (h(\"calcite-popover\", { disablePointer: true, flipPlacements: flipPlacements, label: label, offsetDistance: 0, open: open, overlayPositioning: overlayPositioning, placement: placement, referenceElement: menuButtonEl }, h(\"div\", { \"aria-activedescendant\": activeDescendantId, \"aria-labelledby\": menuButtonEl === null || menuButtonEl === void 0 ? void 0 : menuButtonEl.id, class: CSS.menu, id: menuId, onClick: this.handleCalciteActionClick, role: \"menu\", tabIndex: -1 }, h(\"slot\", { onSlotchange: this.handleDefaultSlotChange }))));\n }\n render() {\n return (h(Fragment, null, this.renderMenuButton(), this.renderMenuItems(), h(\"slot\", { name: SLOTS.tooltip, onSlotchange: this.updateTooltip })));\n }\n isValidKey(key, supportedKeys) {\n return !!supportedKeys.find((k) => k === key);\n }\n get el() { return this; }\n static get watchers() { return {\n \"expanded\": [\"expandedHandler\"],\n \"open\": [\"openHandler\"],\n \"activeMenuItemIndex\": [\"activeMenuItemIndexHandler\"]\n }; }\n static get style() { return actionMenuCss; }\n}, [1, \"calcite-action-menu\", {\n \"expanded\": [516],\n \"flipPlacements\": [16],\n \"label\": [1],\n \"open\": [1540],\n \"overlayPositioning\": [513, \"overlay-positioning\"],\n \"placement\": [513],\n \"scale\": [513],\n \"menuButtonEl\": [32],\n \"activeMenuItemIndex\": [32],\n \"setFocus\": [64]\n }, [[9, \"pointerdown\", \"closeCalciteActionMenuOnClick\"]]]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-action-menu\", \"calcite-action\", \"calcite-icon\", \"calcite-loader\", \"calcite-popover\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-action-menu\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, ActionMenu);\n }\n break;\n case \"calcite-action\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"calcite-loader\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n case \"calcite-popover\":\n if (!customElements.get(tagName)) {\n defineCustomElement$1();\n }\n break;\n } });\n}\ndefineCustomElement();\n\nexport { ActionMenu as A, SLOTS as S, defineCustomElement as d };\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 * v1.0.0-beta.97\n */\nimport { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client/index.js';\nimport { d as defineCustomElement$1 } from './loader.js';\n\nconst CSS = {\n scrim: \"scrim\",\n content: \"content\"\n};\nconst TEXT = {\n loading: \"Loading\"\n};\n\nconst scrimCss = \"@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity: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;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{position:absolute;inset:0px;z-index:700;display:flex;block-size:100%;inline-size:100%;flex-direction:column;align-items:stretch}@keyframes calcite-scrim-fade-in{0%{--tw-bg-opacity:0}100%{--tw-text-opacity:1}}.scrim{position:absolute;inset:0px;display:flex;flex-direction:column;align-content:center;align-items:center;justify-content:center;overflow:hidden;animation:calcite-scrim-fade-in var(--calcite-internal-animation-timing-medium) ease-in-out;background-color:var(--calcite-scrim-background)}.content{padding:1rem}\";\n\nconst Scrim = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /**\n * Accessible name when the component is loading.\n *\n * @default \"Loading\"\n */\n this.intlLoading = TEXT.loading;\n /**\n * When `true`, a busy indicator is displayed.\n */\n this.loading = false;\n }\n // --------------------------------------------------------------------------\n //\n // Render Method\n //\n // --------------------------------------------------------------------------\n render() {\n const { el, loading, intlLoading } = this;\n const hasContent = el.innerHTML.trim().length > 0;\n const loaderNode = loading ? h(\"calcite-loader\", { active: true, label: intlLoading }) : null;\n const contentNode = hasContent ? (h(\"div\", { class: CSS.content }, h(\"slot\", null))) : null;\n return (h(\"div\", { class: CSS.scrim }, loaderNode, contentNode));\n }\n get el() { return this; }\n static get style() { return scrimCss; }\n}, [1, \"calcite-scrim\", {\n \"intlLoading\": [1, \"intl-loading\"],\n \"loading\": [516]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-scrim\", \"calcite-loader\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-scrim\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Scrim);\n }\n break;\n case \"calcite-loader\":\n if (!customElements.get(tagName)) {\n defineCustomElement$1();\n }\n break;\n } });\n}\ndefineCustomElement();\n\nexport { Scrim as S, defineCustomElement as d };\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 * v1.0.0-beta.97\n */\nimport { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client/index.js';\nimport { c as getElementDir, t as toAriaBoolean } from './dom.js';\nimport { H as Heading } from './Heading.js';\nimport { S as SLOTS$1, d as defineCustomElement$5 } from './action-menu.js';\nimport { u as updateHostInteraction } from './interactive.js';\nimport { c as createObserver } from './observers.js';\nimport { d as defineCustomElement$6 } from './action.js';\nimport { d as defineCustomElement$4 } from './icon.js';\nimport { d as defineCustomElement$3 } from './loader.js';\nimport { d as defineCustomElement$2 } from './popover.js';\nimport { d as defineCustomElement$1 } from './scrim.js';\n\nconst CSS = {\n backButton: \"back-button\",\n container: \"container\",\n header: \"header\",\n heading: \"heading\",\n summary: \"summary\",\n description: \"description\",\n headerContent: \"header-content\",\n headerActions: \"header-actions\",\n headerActionsEnd: \"header-actions--end\",\n headerActionsStart: \"header-actions--start\",\n contentWrapper: \"content-wrapper\",\n contentContainer: \"content-container\",\n contentHeight: \"content-height\",\n fabContainer: \"fab-container\",\n footer: \"footer\"\n};\nconst ICONS = {\n close: \"x\",\n menu: \"ellipsis\",\n backLeft: \"chevron-left\",\n backRight: \"chevron-right\"\n};\nconst SLOTS = {\n headerActionsStart: \"header-actions-start\",\n headerActionsEnd: \"header-actions-end\",\n headerMenuActions: \"header-menu-actions\",\n headerContent: \"header-content\",\n fab: \"fab\",\n footer: \"footer\",\n footerActions: \"footer-actions\"\n};\nconst TEXT = {\n back: \"Back\",\n close: \"Close\",\n open: \"Open\",\n options: \"Options\"\n};\nconst HEADING_LEVEL = 3;\n\nconst panelCss = \"@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity: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;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:host{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 *{box-sizing:border-box}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([disabled]){pointer-events:none;cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host{position:relative;display:flex;inline-size:100%;flex:1 1 auto;overflow:hidden;--calcite-min-header-height:calc(var(--calcite-icon-size) * 3);--calcite-panel-max-height:unset;--calcite-panel-width:100%;--calcite-panel-min-width:unset;--calcite-panel-max-width:unset}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.header{margin:0px;display:flex;align-content:space-between;align-items:center;fill:var(--calcite-ui-text-2);color:var(--calcite-ui-text-2)}.heading{margin:0px;padding:0px;font-weight:var(--calcite-font-weight-medium)}.header .heading{flex:1 1 auto;padding:0.5rem}.container{margin:0px;display:flex;inline-size:100%;flex:1 1 auto;flex-direction:column;align-items:stretch;background-color:var(--calcite-ui-background);padding:0px;max-block-size:var(--calcite-panel-max-height);inline-size:var(--calcite-panel-width);max-inline-size:var(--calcite-panel-max-width);min-inline-size:var(--calcite-panel-min-width);transition:max-block-size var(--calcite-animation-timing), inline-size var(--calcite-animation-timing)}:host([height-scale=s]){--calcite-panel-max-height:40vh}:host([height-scale=m]){--calcite-panel-max-height:60vh}:host([height-scale=l]){--calcite-panel-max-height:80vh}:host([width-scale=s]){--calcite-panel-width:calc(var(--calcite-panel-width-multiplier) * 12vw);--calcite-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 300px);--calcite-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 150px)}:host([width-scale=m]){--calcite-panel-width:calc(var(--calcite-panel-width-multiplier) * 20vw);--calcite-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 420px);--calcite-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 240px)}:host([width-scale=l]){--calcite-panel-width:calc(var(--calcite-panel-width-multiplier) * 45vw);--calcite-panel-max-width:calc(var(--calcite-panel-width-multiplier) * 680px);--calcite-panel-min-width:calc(var(--calcite-panel-width-multiplier) * 340px)}.container[hidden]{display:none}.header{border-block-end:1px solid;position:sticky;inset-block-start:0px;z-index:400;inline-size:100%;align-items:stretch;justify-content:flex-start;background-color:var(--calcite-ui-foreground-1);border-block-end-color:var(--calcite-ui-border-3);flex:0 0 auto}.header-content{display:flex;flex-direction:column;overflow:hidden;padding-inline:0.75rem;padding-block:0.875rem;margin-inline-end:auto}.header-content .heading,.header-content .description{display:block;overflow-wrap:break-word;padding:0px}.header-content .heading{margin-inline:0px;margin-block:0px 0.25rem;font-size:var(--calcite-font-size-0);line-height:1.25rem;font-weight:var(--calcite-font-weight-medium)}.header-content .heading:only-child{margin-block-end:0px}.header-content .description{font-size:var(--calcite-font-size--1);line-height:1rem;color:var(--calcite-ui-text-2)}.back-button{border-width:0px;border-style:solid;border-color:var(--calcite-ui-border-3);border-inline-end-width:1px}.header-actions{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:stretch}.header-actions--end{margin-inline-start:auto}.content-wrapper{overflow:auto}.content-height{block-size:100%}.content-container{display:flex;flex:1 1 auto;flex-direction:column;flex-wrap:nowrap;align-items:stretch;background-color:var(--calcite-ui-background)}.footer{border-block-start:1px solid;position:sticky;inset-block-end:0px;display:flex;inline-size:100%;justify-content:space-evenly;background-color:var(--calcite-ui-foreground-1);border-block-start-color:var(--calcite-ui-border-3);flex:0 0 auto;min-block-size:3rem;padding:0.5rem}.fab-container{position:sticky;inset-block-end:0px;z-index:300;margin-block:0px;margin-inline:auto;display:block;padding:0.5rem;inset-inline:0;inline-size:-moz-fit-content;inline-size:fit-content}[hidden]{display:none}\";\n\nconst Panel = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calcitePanelClose = createEvent(this, \"calcitePanelClose\", 6);\n this.calcitePanelDismiss = createEvent(this, \"calcitePanelDismiss\", 6);\n this.calcitePanelDismissedChange = createEvent(this, \"calcitePanelDismissedChange\", 6);\n this.calcitePanelScroll = createEvent(this, \"calcitePanelScroll\", 6);\n this.calcitePanelBackClick = createEvent(this, \"calcitePanelBackClick\", 6);\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /**\n * When `true`, hides the component.\n *\n * @deprecated use `closed` instead.\n */\n this.dismissed = false;\n /** When `true`, the component will be hidden. */\n this.closed = false;\n /**\n * When `true`, interaction is prevented and the component is displayed with lower opacity.\n */\n this.disabled = false;\n /**\n * When `true`, a close button is added to the component.\n *\n * @deprecated use `closable` instead\n */\n this.dismissible = false;\n /** When `true`, displays a close button in the trailing side of the header. */\n this.closable = false;\n /**\n * When `true`, displays a back button in the header.\n *\n * @deprecated use `calcite-flow-item` instead.\n */\n this.showBackButton = false;\n /**\n * When `true`, a busy indicator is displayed.\n */\n this.loading = false;\n /**\n * When `true`, the action menu items in the `header-menu-actions` slot are open.\n */\n this.menuOpen = false;\n this.resizeObserver = createObserver(\"resize\", () => this.resizeHandler());\n this.hasStartActions = false;\n this.hasEndActions = false;\n this.hasMenuItems = false;\n this.hasHeaderContent = false;\n this.hasFooterContent = false;\n this.hasFooterActions = false;\n this.hasFab = false;\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.resizeHandler = () => {\n const { panelScrollEl } = this;\n if (!panelScrollEl ||\n typeof panelScrollEl.scrollHeight !== \"number\" ||\n typeof panelScrollEl.offsetHeight !== \"number\") {\n return;\n }\n panelScrollEl.tabIndex = panelScrollEl.scrollHeight > panelScrollEl.offsetHeight ? 0 : -1;\n };\n this.setContainerRef = (node) => {\n this.containerEl = node;\n };\n this.setCloseRef = (node) => {\n this.closeButtonEl = node;\n };\n this.setBackRef = (node) => {\n this.backButtonEl = node;\n };\n this.panelKeyDownHandler = (event) => {\n if (this.closable && event.key === \"Escape\" && !event.defaultPrevented) {\n this.close();\n event.preventDefault();\n }\n };\n this.close = () => {\n this.closed = true;\n this.calcitePanelDismiss.emit();\n this.calcitePanelClose.emit();\n };\n this.panelScrollHandler = () => {\n this.calcitePanelScroll.emit();\n };\n this.backButtonClick = () => {\n this.calcitePanelBackClick.emit();\n };\n this.handleHeaderActionsStartSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasStartActions = !!elements.length;\n };\n this.handleHeaderActionsEndSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasEndActions = !!elements.length;\n };\n this.handleHeaderMenuActionsSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasMenuItems = !!elements.length;\n };\n this.handleHeaderContentSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasHeaderContent = !!elements.length;\n };\n this.handleFooterSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasFooterContent = !!elements.length;\n };\n this.handleFooterActionsSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasFooterActions = !!elements.length;\n };\n this.handleFabSlotChange = (event) => {\n const elements = event.target.assignedElements({\n flatten: true\n });\n this.hasFab = !!elements.length;\n };\n this.setPanelScrollEl = (el) => {\n var _a, _b;\n this.panelScrollEl = el;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n if (el) {\n (_b = this.resizeObserver) === null || _b === void 0 ? void 0 : _b.observe(el);\n this.resizeHandler();\n }\n };\n }\n dismissedHandler(value) {\n this.closed = value;\n this.calcitePanelDismissedChange.emit();\n }\n closedHandler(value) {\n this.dismissed = value;\n }\n dismissibleHandler(value) {\n this.closable = value;\n }\n closableHandler(value) {\n this.dismissible = value;\n }\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n componentDidRender() {\n updateHostInteraction(this);\n }\n // --------------------------------------------------------------------------\n //\n // Lifecycle\n //\n // --------------------------------------------------------------------------\n connectedCallback() {\n const isClosed = this.dismissed || this.closed;\n const isClosable = this.dismissible || this.closable;\n if (isClosed) {\n this.dismissedHandler(isClosed);\n this.closedHandler(isClosed);\n }\n if (isClosable) {\n this.dismissibleHandler(isClosable);\n this.closableHandler(isClosable);\n }\n }\n disconnectedCallback() {\n var _a;\n (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n // --------------------------------------------------------------------------\n //\n // Methods\n //\n // --------------------------------------------------------------------------\n /**\n * Sets focus on the component.\n *\n * @param focusId\n */\n async setFocus(focusId) {\n const { backButtonEl, closeButtonEl, containerEl } = this;\n if (focusId === \"back-button\") {\n backButtonEl === null || backButtonEl === void 0 ? void 0 : backButtonEl.setFocus();\n return;\n }\n if (focusId === \"dismiss-button\") {\n closeButtonEl === null || closeButtonEl === void 0 ? void 0 : closeButtonEl.setFocus();\n return;\n }\n if (backButtonEl) {\n backButtonEl.setFocus();\n return;\n }\n if (closeButtonEl) {\n closeButtonEl.setFocus();\n return;\n }\n containerEl === null || containerEl === void 0 ? void 0 : containerEl.focus();\n }\n /**\n * Scrolls the component's content to a specified set of coordinates.\n *\n * @example\n * myCalciteFlowItem.scrollContentTo({\n * left: 0, // Specifies the number of pixels along the X axis to scroll the window or element.\n * top: 0, // Specifies the number of pixels along the Y axis to scroll the window or element\n * behavior: \"auto\" // Specifies whether the scrolling should animate smoothly (smooth), or happen instantly in a single jump (auto, the default value).\n * });\n * @param options\n */\n async scrollContentTo(options) {\n var _a;\n (_a = this.panelScrollEl) === null || _a === void 0 ? void 0 : _a.scrollTo(options);\n }\n // --------------------------------------------------------------------------\n //\n // Render Methods\n //\n // --------------------------------------------------------------------------\n renderBackButton() {\n const { el } = this;\n const rtl = getElementDir(el) === \"rtl\";\n const { showBackButton, intlBack, backButtonClick } = this;\n const label = intlBack || TEXT.back;\n const icon = rtl ? ICONS.backRight : ICONS.backLeft;\n return showBackButton ? (h(\"calcite-action\", { \"aria-label\": label, class: CSS.backButton, icon: icon, key: \"back-button\", onClick: backButtonClick, ref: this.setBackRef, scale: \"s\", slot: SLOTS.headerActionsStart, text: label })) : null;\n }\n renderHeaderContent() {\n const { heading, headingLevel, summary, description, hasHeaderContent } = this;\n const headingNode = heading ? (h(Heading, { class: CSS.heading, level: headingLevel || HEADING_LEVEL }, heading)) : null;\n const descriptionNode = description || summary ? h(\"span\", { class: CSS.description }, description || summary) : null;\n return !hasHeaderContent && (headingNode || descriptionNode) ? (h(\"div\", { class: CSS.headerContent, key: \"header-content\" }, headingNode, descriptionNode)) : null;\n }\n /**\n * Allows user to override the entire header-content node.\n */\n renderHeaderSlottedContent() {\n return (h(\"div\", { class: CSS.headerContent, hidden: !this.hasHeaderContent, key: \"slotted-header-content\" }, h(\"slot\", { name: SLOTS.headerContent, onSlotchange: this.handleHeaderContentSlotChange })));\n }\n renderHeaderStartActions() {\n const { hasStartActions } = this;\n return (h(\"div\", { class: { [CSS.headerActionsStart]: true, [CSS.headerActions]: true }, hidden: !hasStartActions, key: \"header-actions-start\" }, h(\"slot\", { name: SLOTS.headerActionsStart, onSlotchange: this.handleHeaderActionsStartSlotChange })));\n }\n renderHeaderActionsEnd() {\n const { close, hasEndActions, intlClose, closable } = this;\n const text = intlClose || TEXT.close;\n const closableNode = closable ? (h(\"calcite-action\", { \"aria-label\": text, icon: ICONS.close, onClick: close, ref: this.setCloseRef, text: text })) : null;\n const slotNode = (h(\"slot\", { name: SLOTS.headerActionsEnd, onSlotchange: this.handleHeaderActionsEndSlotChange }));\n const showContainer = hasEndActions || closableNode;\n return (h(\"div\", { class: { [CSS.headerActionsEnd]: true, [CSS.headerActions]: true }, hidden: !showContainer, key: \"header-actions-end\" }, slotNode, closableNode));\n }\n renderMenu() {\n const { hasMenuItems, intlOptions, menuOpen } = this;\n return (h(\"calcite-action-menu\", { flipPlacements: [\"top\", \"bottom\"], hidden: !hasMenuItems, key: \"menu\", label: intlOptions || TEXT.options, open: menuOpen, placement: \"bottom-end\" }, h(\"calcite-action\", { icon: ICONS.menu, slot: SLOTS$1.trigger, text: intlOptions || TEXT.options }), h(\"slot\", { name: SLOTS.headerMenuActions, onSlotchange: this.handleHeaderMenuActionsSlotChange })));\n }\n renderHeaderNode() {\n const { showBackButton, hasHeaderContent, hasStartActions, hasEndActions, closable, hasMenuItems } = this;\n const headerContentNode = this.renderHeaderContent();\n const showHeader = showBackButton ||\n hasHeaderContent ||\n headerContentNode ||\n hasStartActions ||\n hasEndActions ||\n closable ||\n hasMenuItems;\n return (h(\"header\", { class: CSS.header, hidden: !showHeader }, this.renderBackButton(), this.renderHeaderStartActions(), this.renderHeaderSlottedContent(), headerContentNode, this.renderHeaderActionsEnd(), this.renderMenu()));\n }\n renderFooterNode() {\n const { hasFooterContent, hasFooterActions } = this;\n const showFooter = hasFooterContent || hasFooterActions;\n return (h(\"footer\", { class: CSS.footer, hidden: !showFooter }, h(\"slot\", { key: \"footer-slot\", name: SLOTS.footer, onSlotchange: this.handleFooterSlotChange }), h(\"slot\", { key: \"footer-actions-slot\", name: SLOTS.footerActions, onSlotchange: this.handleFooterActionsSlotChange })));\n }\n renderContent() {\n const { hasFab } = this;\n const defaultSlotNode = h(\"slot\", { key: \"default-slot\" });\n const containerNode = hasFab ? (h(\"section\", { class: CSS.contentContainer }, defaultSlotNode)) : (defaultSlotNode);\n return (h(\"div\", { class: {\n [CSS.contentWrapper]: true,\n [CSS.contentContainer]: !hasFab,\n [CSS.contentHeight]: hasFab\n }, onScroll: this.panelScrollHandler, ref: this.setPanelScrollEl }, containerNode, this.renderFab()));\n }\n renderFab() {\n return (h(\"div\", { class: CSS.fabContainer, hidden: !this.hasFab }, h(\"slot\", { name: SLOTS.fab, onSlotchange: this.handleFabSlotChange })));\n }\n render() {\n const { loading, panelKeyDownHandler, closed, closable } = this;\n const panelNode = (h(\"article\", { \"aria-busy\": toAriaBoolean(loading), class: CSS.container, hidden: closed, onKeyDown: panelKeyDownHandler, ref: this.setContainerRef, tabIndex: closable ? 0 : -1 }, this.renderHeaderNode(), this.renderContent(), this.renderFooterNode()));\n return (h(Fragment, null, loading ? h(\"calcite-scrim\", { loading: loading }) : null, panelNode));\n }\n get el() { return this; }\n static get watchers() { return {\n \"dismissed\": [\"dismissedHandler\"],\n \"closed\": [\"closedHandler\"],\n \"dismissible\": [\"dismissibleHandler\"],\n \"closable\": [\"closableHandler\"]\n }; }\n static get style() { return panelCss; }\n}, [1, \"calcite-panel\", {\n \"dismissed\": [1540],\n \"closed\": [1540],\n \"beforeBack\": [16],\n \"disabled\": [516],\n \"dismissible\": [1540],\n \"closable\": [1540],\n \"headingLevel\": [514, \"heading-level\"],\n \"showBackButton\": [516, \"show-back-button\"],\n \"intlBack\": [1, \"intl-back\"],\n \"heightScale\": [513, \"height-scale\"],\n \"widthScale\": [513, \"width-scale\"],\n \"loading\": [516],\n \"intlClose\": [1, \"intl-close\"],\n \"intlOptions\": [1, \"intl-options\"],\n \"heading\": [1],\n \"summary\": [1],\n \"description\": [1],\n \"menuOpen\": [516, \"menu-open\"],\n \"hasStartActions\": [32],\n \"hasEndActions\": [32],\n \"hasMenuItems\": [32],\n \"hasHeaderContent\": [32],\n \"hasFooterContent\": [32],\n \"hasFooterActions\": [32],\n \"hasFab\": [32],\n \"setFocus\": [64],\n \"scrollContentTo\": [64]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-panel\", \"calcite-action\", \"calcite-action-menu\", \"calcite-icon\", \"calcite-loader\", \"calcite-popover\", \"calcite-scrim\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-panel\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Panel);\n }\n break;\n case \"calcite-action\":\n if (!customElements.get(tagName)) {\n defineCustomElement$6();\n }\n break;\n case \"calcite-action-menu\":\n if (!customElements.get(tagName)) {\n defineCustomElement$5();\n }\n break;\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"calcite-loader\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"calcite-popover\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n case \"calcite-scrim\":\n if (!customElements.get(tagName)) {\n defineCustomElement$1();\n }\n break;\n } });\n}\ndefineCustomElement();\n\nexport { Panel as P, SLOTS as S, defineCustomElement as d };\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 * v1.0.0-beta.97\n */\nimport { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client/index.js';\nimport { c as getElementDir } from './dom.js';\nimport { S as SLOTS$1, d as defineCustomElement$5 } from './panel.js';\nimport { u as updateHostInteraction } from './interactive.js';\nimport { d as defineCustomElement$9 } from './action.js';\nimport { d as defineCustomElement$8 } from './action-menu.js';\nimport { d as defineCustomElement$7 } from './icon.js';\nimport { d as defineCustomElement$6 } from './loader.js';\nimport { d as defineCustomElement$4 } from './popover.js';\nimport { d as defineCustomElement$3 } from './scrim.js';\nimport { d as defineCustomElement$2 } from './tooltip.js';\n\nconst CSS = {\n backButton: \"back-button\"\n};\nconst ICONS = {\n backLeft: \"chevron-left\",\n backRight: \"chevron-right\"\n};\nconst TEXT = {\n back: \"Back\"\n};\nconst SLOTS = {\n headerActionsStart: \"header-actions-start\",\n headerActionsEnd: \"header-actions-end\",\n headerMenuActions: \"header-menu-actions\",\n headerContent: \"header-content\",\n fab: \"fab\",\n footer: \"footer\",\n footerActions: \"footer-actions\"\n};\n\nconst flowItemCss = \"@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity: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;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:host{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 *{box-sizing:border-box}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([disabled]){pointer-events:none;cursor:default;-webkit-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host{position:relative;display:flex;inline-size:100%;flex:1 1 auto;overflow:hidden}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}.back-button{border-width:0px;border-style:solid;border-color:var(--calcite-ui-border-3);border-inline-end-width:1px}\";\n\nconst FlowItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calciteFlowItemBack = createEvent(this, \"calciteFlowItemBack\", 6);\n this.calciteFlowItemBackClick = createEvent(this, \"calciteFlowItemBackClick\", 6);\n this.calciteFlowItemScroll = createEvent(this, \"calciteFlowItemScroll\", 6);\n this.calciteFlowItemClose = createEvent(this, \"calciteFlowItemClose\", 6);\n // --------------------------------------------------------------------------\n //\n // Properties\n //\n // --------------------------------------------------------------------------\n /** When true, displays a close button in the trailing side of the header */\n this.closable = false;\n /** When true, flow-item will be hidden */\n this.closed = false;\n /**\n * When true, interaction is prevented and the component is displayed with lower opacity.\n */\n this.disabled = false;\n /**\n * When true, a busy indicator is displayed.\n */\n this.loading = false;\n /**\n * When true, the action menu items in the `header-menu-actions` slot are open.\n */\n this.menuOpen = false;\n /**\n * When true, displays a back button in the header.\n */\n this.showBackButton = false;\n // --------------------------------------------------------------------------\n //\n // Private Methods\n //\n // --------------------------------------------------------------------------\n this.handlePanelScroll = (event) => {\n event.stopPropagation();\n this.calciteFlowItemScroll.emit();\n };\n this.handlePanelClose = (event) => {\n event.stopPropagation();\n this.calciteFlowItemClose.emit();\n };\n this.backButtonClick = () => {\n this.calciteFlowItemBackClick.emit();\n this.calciteFlowItemBack.emit();\n };\n this.setBackRef = (node) => {\n this.backButtonEl = node;\n };\n this.setContainerRef = (node) => {\n this.containerEl = node;\n };\n this.getBackLabel = () => {\n return this.intlBack || TEXT.back;\n };\n }\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n componentDidRender() {\n updateHostInteraction(this);\n }\n // --------------------------------------------------------------------------\n //\n // Methods\n //\n // --------------------------------------------------------------------------\n /**\n * Sets focus on the component.\n */\n async setFocus() {\n const { backButtonEl, containerEl } = this;\n if (backButtonEl) {\n backButtonEl.setFocus();\n return;\n }\n containerEl === null || containerEl === void 0 ? void 0 : containerEl.setFocus();\n }\n /**\n * Scrolls the component's content to a specified set of coordinates.\n *\n * @example\n * myCalciteFlowItem.scrollContentTo({\n * left: 0, // Specifies the number of pixels along the X axis to scroll the window or element.\n * top: 0, // Specifies the number of pixels along the Y axis to scroll the window or element\n * behavior: \"auto\" // Specifies whether the scrolling should animate smoothly (smooth), or happen instantly in a single jump (auto, the default value).\n * });\n * @param options\n */\n async scrollContentTo(options) {\n var _a;\n await ((_a = this.containerEl) === null || _a === void 0 ? void 0 : _a.scrollContentTo(options));\n }\n // --------------------------------------------------------------------------\n //\n // Render Methods\n //\n // --------------------------------------------------------------------------\n renderBackButton() {\n const { el } = this;\n const rtl = getElementDir(el) === \"rtl\";\n const { showBackButton, backButtonClick } = this;\n const label = this.getBackLabel();\n const icon = rtl ? ICONS.backRight : ICONS.backLeft;\n return showBackButton ? (h(\"calcite-action\", { \"aria-label\": label, class: CSS.backButton, icon: icon, key: \"flow-back-button\", onClick: backButtonClick, ref: this.setBackRef, scale: \"s\", slot: \"header-actions-start\", text: label })) : null;\n }\n render() {\n const { closable, closed, description, disabled, heading, headingLevel, heightScale, intlBack, intlClose, intlOptions, loading, menuOpen, widthScale, backButtonEl } = this;\n const label = this.getBackLabel();\n return (h(Host, null, h(\"calcite-panel\", { closable: closable, closed: closed, description: description, disabled: disabled, heading: heading, headingLevel: headingLevel, heightScale: heightScale, intlBack: intlBack, intlClose: intlClose, intlOptions: intlOptions, loading: loading, menuOpen: menuOpen, onCalcitePanelClose: this.handlePanelClose, onCalcitePanelScroll: this.handlePanelScroll, ref: this.setContainerRef, widthScale: widthScale }, this.renderBackButton(), h(\"slot\", { name: SLOTS.headerActionsStart, slot: SLOTS$1.headerActionsStart }), h(\"slot\", { name: SLOTS.headerActionsEnd, slot: SLOTS$1.headerActionsEnd }), h(\"slot\", { name: SLOTS.headerContent, slot: SLOTS$1.headerContent }), h(\"slot\", { name: SLOTS.headerMenuActions, slot: SLOTS$1.headerMenuActions }), h(\"slot\", { name: SLOTS.fab, slot: SLOTS$1.fab }), h(\"slot\", { name: SLOTS.footerActions, slot: SLOTS$1.footerActions }), h(\"slot\", { name: SLOTS.footer, slot: SLOTS$1.footer }), h(\"slot\", null)), backButtonEl ? (h(\"calcite-tooltip\", { label: label, placement: \"auto\", referenceElement: backButtonEl }, label)) : null));\n }\n get el() { return this; }\n static get style() { return flowItemCss; }\n}, [1, \"calcite-flow-item\", {\n \"closable\": [1540],\n \"closed\": [1540],\n \"beforeBack\": [16],\n \"description\": [1],\n \"disabled\": [516],\n \"heading\": [1],\n \"headingLevel\": [514, \"heading-level\"],\n \"heightScale\": [513, \"height-scale\"],\n \"intlBack\": [1, \"intl-back\"],\n \"intlClose\": [1, \"intl-close\"],\n \"intlOptions\": [1, \"intl-options\"],\n \"loading\": [516],\n \"menuOpen\": [516, \"menu-open\"],\n \"showBackButton\": [516, \"show-back-button\"],\n \"widthScale\": [513, \"width-scale\"],\n \"backButtonEl\": [32],\n \"setFocus\": [64],\n \"scrollContentTo\": [64]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-flow-item\", \"calcite-action\", \"calcite-action-menu\", \"calcite-icon\", \"calcite-loader\", \"calcite-panel\", \"calcite-popover\", \"calcite-scrim\", \"calcite-tooltip\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-flow-item\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, FlowItem);\n }\n break;\n case \"calcite-action\":\n if (!customElements.get(tagName)) {\n defineCustomElement$9();\n }\n break;\n case \"calcite-action-menu\":\n if (!customElements.get(tagName)) {\n defineCustomElement$8();\n }\n break;\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n defineCustomElement$7();\n }\n break;\n case \"calcite-loader\":\n if (!customElements.get(tagName)) {\n defineCustomElement$6();\n }\n break;\n case \"calcite-panel\":\n if (!customElements.get(tagName)) {\n defineCustomElement$5();\n }\n break;\n case \"calcite-popover\":\n if (!customElements.get(tagName)) {\n defineCustomElement$4();\n }\n break;\n case \"calcite-scrim\":\n if (!customElements.get(tagName)) {\n defineCustomElement$3();\n }\n break;\n case \"calcite-tooltip\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\ndefineCustomElement$1();\n\nconst CalciteFlowItem = FlowItem;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { CalciteFlowItem, defineCustomElement };\n"],"sourceRoot":""}