{"version":3,"sources":["webpack:///./node_modules/@esri/calcite-components/dist/components/guid.js","webpack:///./node_modules/@esri/calcite-components/dist/components/interfaces.js","webpack:///./node_modules/@esri/calcite-components/dist/components/dom.js","webpack:///./node_modules/@esri/calcite-components/dist/components/observers.js","webpack:///./node_modules/@esri/calcite-components/dist/components/conditionalSlot.js","webpack:///./node_modules/@esri/calcite-components/dist/components/icon.js","webpack:///./node_modules/@esri/calcite-components/dist/components/calcite-notice.js"],"names":["gen","counts","map","count","out","i","Math","random","toString","substring","join","guid","StatusIcons","getElementDir","el","prop","selector","closest","closestElementCrossShadowBoundary","getAttribute","getRootNode","getHost","root","host","element","closestFrom","defaultSlotSelector","getSlotted","slotName","options","Array","isArray","slotSelector","name","all","queryMultiple","querySingle","getDirectChildren","from","children","filter","child","matches","querySelectorAll","direct","parentElement","item","reduce","previousValue","currentValue","match","querySelector","setRequestedIcon","iconObject","iconValue","matchedValue","toAriaBoolean","value","createObserver","type","callback","Observer","getObserver","isBrowser","undefined","window","IntersectionObserver","MutationObserver","ResizeObserver","observed","Set","mutationObserver","observerOptions","childList","connectConditionalSlotComponent","component","processMutations","observe","disconnectConditionalSlotComponent","delete","takeRecords","disconnect","entries","mutations","forEach","target","CSS","icon","flipRtl","iconCache","requestCache","scaleToPx","s","m","l","async","fetchIcon","scale","size","normalizeIconName","filled","charAt","length","iconName","id","fetch","then","resp","json","catch","console","error","path","numberLeadingName","isNaN","Number","parts","split","part","index","toUpperCase","slice","iconCss","Icon","super","this","__registerHost","__attachShadow","visible","waitUntilVisible","loadIconPathData","_a","intersectionObserver","pathData","textLabel","dir","semantic","paths","concat","role","class","svg","fill","height","viewBox","width","xmlns","d","opacity","entry","isIntersecting","rootMargin","defineCustomElement","customElements","components","tagName","get","define","close","SLOTS","title","message","link","actionsEnd","container","content","noticeCss","Notice","calciteNoticeClose","calciteNoticeOpen","active","color","dismissible","intlClose","emit","requestedIcon","closeButton","onClick","ref","hasActionEnd","noticeLinkEl","setFocus","focus","defineCustomElement$1","CalciteNotice"],"mappings":"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","file":"js/chunk-2c5bdc6c.eb872f98.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.82\n */\nfunction gen(counts) {\n return counts\n .map((count) => {\n let out = \"\";\n for (let i = 0; i < count; i++) {\n out += (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n }\n return out;\n })\n .join(\"-\");\n}\nconst guid = () => gen([2, 1, 1, 1, 3]);\n\nexport { guid 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.82\n */\nvar StatusIcons;\n(function (StatusIcons) {\n StatusIcons[\"green\"] = \"checkCircle\";\n StatusIcons[\"yellow\"] = \"exclamationMarkTriangle\";\n StatusIcons[\"red\"] = \"exclamationMarkTriangle\";\n StatusIcons[\"blue\"] = \"lightbulb\";\n})(StatusIcons || (StatusIcons = {}));\n\nexport { StatusIcons as S };\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.82\n */\nimport { g as guid } from './guid.js';\n\nconst autoTheme = \"calcite-theme-auto\";\nconst darkTheme = \"calcite-theme-dark\";\nconst lightTheme = \"calcite-theme-light\";\nconst CSS_UTILITY = {\n autoTheme,\n darkTheme,\n lightTheme,\n rtl: \"calcite--rtl\"\n};\nconst TEXT = {\n loading: \"Loading\"\n};\n\n/**\n * This helper will guarantee an ID on the provided element.\n *\n * If it already has an ID, it will be preserved, otherwise a unique one will be generated and assigned.\n *\n * @returns {string} The element's ID.\n */\nfunction ensureId(el) {\n if (!el) {\n return \"\";\n }\n return (el.id = el.id || `${el.tagName.toLowerCase()}-${guid()}`);\n}\nfunction nodeListToArray(nodeList) {\n return Array.isArray(nodeList) ? nodeList : Array.from(nodeList);\n}\nfunction getThemeName(el) {\n const closestElWithTheme = closestElementCrossShadowBoundary(el, `.${CSS_UTILITY.darkTheme}, .${CSS_UTILITY.lightTheme}`);\n return (closestElWithTheme === null || closestElWithTheme === void 0 ? void 0 : closestElWithTheme.classList.contains(\"calcite-theme-dark\")) ? \"dark\" : \"light\";\n}\nfunction getElementDir(el) {\n const prop = \"dir\";\n const selector = `[${prop}]`;\n const closest = closestElementCrossShadowBoundary(el, selector);\n return closest ? closest.getAttribute(prop) : \"ltr\";\n}\nfunction getElementProp(el, prop, fallbackValue) {\n const selector = `[${prop}]`;\n const closest = el.closest(selector);\n return closest ? closest.getAttribute(prop) : fallbackValue;\n}\nfunction getRootNode(el) {\n return el.getRootNode();\n}\nfunction getHost(root) {\n return root.host || null;\n}\n/**\n * This helper queries an element's rootNodes and any ancestor rootNodes.\n *\n * @returns {Element[]} The elements.\n */\nfunction queryElementsRoots(element, selector) {\n // Gets the rootNode and any ancestor rootNodes (shadowRoot or document) of an element and queries them for a selector.\n // Based on: https://stackoverflow.com/q/54520554/194216\n function queryFromAll(el, allResults) {\n if (!el) {\n return allResults;\n }\n if (el.assignedSlot) {\n el = el.assignedSlot;\n }\n const rootNode = getRootNode(el);\n const results = Array.from(rootNode.querySelectorAll(selector));\n const uniqueResults = results.filter((result) => !allResults.includes(result));\n allResults = [...allResults, ...uniqueResults];\n const host = getHost(rootNode);\n return host ? queryFromAll(host, allResults) : allResults;\n }\n return queryFromAll(element, []);\n}\n/**\n * This helper queries an element's rootNode and any ancestor rootNodes.\n *\n * If both an 'id' and 'selector' are supplied, 'id' will take precedence over 'selector'.\n *\n * @returns {Element} The element.\n */\nfunction queryElementRoots(element, { selector, id }) {\n // Gets the rootNode and any ancestor rootNodes (shadowRoot or document) of an element and queries them for a selector.\n // Based on: https://stackoverflow.com/q/54520554/194216\n function queryFrom(el) {\n if (!el) {\n return null;\n }\n if (el.assignedSlot) {\n el = el.assignedSlot;\n }\n const rootNode = getRootNode(el);\n const found = id\n ? \"getElementById\" in rootNode\n ? /*\n Check to make sure 'getElementById' exists in cases where element is no longer connected to the DOM and getRootNode() returns the element.\n https://github.com/Esri/calcite-components/pull/4280\n */\n rootNode.getElementById(id)\n : null\n : selector\n ? rootNode.querySelector(selector)\n : null;\n const host = getHost(rootNode);\n return found ? found : host ? queryFrom(host) : null;\n }\n return queryFrom(element);\n}\nfunction closestElementCrossShadowBoundary(element, selector) {\n // based on https://stackoverflow.com/q/54520554/194216\n function closestFrom(el) {\n return el ? el.closest(selector) || closestFrom(getHost(getRootNode(el))) : null;\n }\n return closestFrom(element);\n}\nfunction isCalciteFocusable(el) {\n return typeof (el === null || el === void 0 ? void 0 : el.setFocus) === \"function\";\n}\nasync function focusElement(el) {\n if (!el) {\n return;\n }\n return isCalciteFocusable(el) ? el.setFocus() : el.focus();\n}\nconst defaultSlotSelector = \":not([slot])\";\nfunction getSlotted(element, slotName, options) {\n if (slotName && !Array.isArray(slotName) && typeof slotName !== \"string\") {\n options = slotName;\n slotName = null;\n }\n const slotSelector = slotName\n ? Array.isArray(slotName)\n ? slotName.map((name) => `[slot=\"${name}\"]`).join(\",\")\n : `[slot=\"${slotName}\"]`\n : defaultSlotSelector;\n if (options === null || options === void 0 ? void 0 : options.all) {\n return queryMultiple(element, slotSelector, options);\n }\n return querySingle(element, slotSelector, options);\n}\nfunction getDirectChildren(el, selector) {\n return el ? Array.from(el.children || []).filter((child) => child === null || child === void 0 ? void 0 : child.matches(selector)) : [];\n}\nfunction queryMultiple(element, slotSelector, options) {\n let matches = slotSelector === defaultSlotSelector\n ? getDirectChildren(element, defaultSlotSelector)\n : Array.from(element.querySelectorAll(slotSelector));\n matches = options && options.direct === false ? matches : matches.filter((el) => el.parentElement === element);\n matches = (options === null || options === void 0 ? void 0 : options.matches) ? matches.filter((el) => el === null || el === void 0 ? void 0 : el.matches(options.matches)) : matches;\n const selector = options === null || options === void 0 ? void 0 : options.selector;\n return selector\n ? matches\n .map((item) => Array.from(item.querySelectorAll(selector)))\n .reduce((previousValue, currentValue) => [...previousValue, ...currentValue], [])\n .filter((match) => !!match)\n : matches;\n}\nfunction querySingle(element, slotSelector, options) {\n let match = slotSelector === defaultSlotSelector\n ? getDirectChildren(element, defaultSlotSelector)[0] || null\n : element.querySelector(slotSelector);\n match = options && options.direct === false ? match : (match === null || match === void 0 ? void 0 : match.parentElement) === element ? match : null;\n match = (options === null || options === void 0 ? void 0 : options.matches) ? ((match === null || match === void 0 ? void 0 : match.matches(options.matches)) ? match : null) : match;\n const selector = options === null || options === void 0 ? void 0 : options.selector;\n return selector ? match === null || match === void 0 ? void 0 : match.querySelector(selector) : match;\n}\nfunction filterDirectChildren(el, selector) {\n return Array.from(el.children).filter((child) => child.matches(selector));\n}\n// set a default icon from a defined set or allow an override with an icon name string\nfunction setRequestedIcon(iconObject, iconValue, matchedValue) {\n if (typeof iconValue === \"string\" && iconValue !== \"\") {\n return iconValue;\n }\n else if (iconValue === \"\") {\n return iconObject[matchedValue];\n }\n}\nfunction intersects(rect1, rect2) {\n return !(rect2.left > rect1.right ||\n rect2.right < rect1.left ||\n rect2.top > rect1.bottom ||\n rect2.bottom < rect1.top);\n}\n/**\n * This helper makes sure that boolean aria attributes are properly converted to a string.\n *\n * It should only be used for aria attributes that require a string value of \"true\" or \"false\".\n *\n * @returns {string} The string conversion of a boolean value (\"true\" | \"false\").\n */\nfunction toAriaBoolean(value) {\n return (!!value).toString();\n}\n\nexport { CSS_UTILITY as C, TEXT as T, getElementDir as a, getSlotted as b, queryElementRoots as c, getThemeName as d, closestElementCrossShadowBoundary as e, focusElement as f, getElementProp as g, filterDirectChildren as h, ensureId as i, isCalciteFocusable as j, intersects as k, nodeListToArray as n, queryElementsRoots as q, setRequestedIcon as s, toAriaBoolean as t };\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.82\n */\nimport { Build } from '@stencil/core/internal/client';\n\n/**\n * This utility ensures observers are created only for browser contexts.\n *\n * @param type - the type of observer to create\n * @param callback - the observer callback\n * @param options - the observer options\n */\nfunction createObserver(type, callback, options) {\n const Observer = getObserver(type);\n return Build.isBrowser ? new Observer(callback, options) : undefined;\n}\nfunction getObserver(type) {\n return (type === \"intersection\"\n ? window.IntersectionObserver\n : type === \"mutation\"\n ? window.MutationObserver\n : window.ResizeObserver);\n}\n\nexport { createObserver 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.82\n */\nimport { forceUpdate } from '@stencil/core/internal/client';\nimport { c as createObserver } from './observers.js';\n\nconst observed = new Set();\nlet mutationObserver;\nconst observerOptions = { childList: true };\n/**\n * Helper to set up a conditional slot component on connectedCallback.\n */\nfunction connectConditionalSlotComponent(component) {\n if (!mutationObserver) {\n mutationObserver = createObserver(\"mutation\", processMutations);\n }\n mutationObserver.observe(component.el, observerOptions);\n}\n/**\n * Helper to tear down a conditional slot component on disconnectedCallback.\n */\nfunction disconnectConditionalSlotComponent(component) {\n observed.delete(component.el);\n // we explicitly process queued mutations and disconnect and reconnect\n // the observer until MutationObserver gets an `unobserve` method\n // see https://github.com/whatwg/dom/issues/126\n processMutations(mutationObserver.takeRecords());\n mutationObserver.disconnect();\n for (const [element] of observed.entries()) {\n mutationObserver.observe(element, observerOptions);\n }\n}\nfunction processMutations(mutations) {\n mutations.forEach(({ target }) => {\n forceUpdate(target);\n });\n}\n\nexport { connectConditionalSlotComponent as c, disconnectConditionalSlotComponent 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.82\n */\nimport { getAssetPath, proxyCustomElement, HTMLElement, h, Host, Build } from '@stencil/core/internal/client';\nimport { a as getElementDir, t as toAriaBoolean } from './dom.js';\nimport { c as createObserver } from './observers.js';\n\nconst CSS = {\n icon: \"icon\",\n flipRtl: \"flip-rtl\"\n};\n\n/**\n * Icon data cache.\n * Exported for testing purposes.\n * @private\n */\nconst iconCache = {};\n/**\n * Icon request cache.\n * Exported for testing purposes.\n * @private\n */\nconst requestCache = {};\nconst scaleToPx = {\n s: 16,\n m: 24,\n l: 32\n};\nasync function fetchIcon({ icon, scale }) {\n const size = scaleToPx[scale];\n const name = normalizeIconName(icon);\n const filled = name.charAt(name.length - 1) === \"F\";\n const iconName = filled ? name.substring(0, name.length - 1) : name;\n const id = `${iconName}${size}${filled ? \"F\" : \"\"}`;\n if (iconCache[id]) {\n return iconCache[id];\n }\n if (!requestCache[id]) {\n requestCache[id] = fetch(getAssetPath(`./assets/icon/${id}.json`))\n .then((resp) => resp.json())\n .catch(() => {\n console.error(`\"${id}\" is not a valid calcite-ui-icon name`);\n return \"\";\n });\n }\n const path = await requestCache[id];\n iconCache[id] = path;\n return path;\n}\n/**\n * Normalize the icon name to match the path data module exports.\n * Exported for testing purposes.\n * @private\n */\nfunction normalizeIconName(name) {\n const numberLeadingName = !isNaN(Number(name.charAt(0)));\n const parts = name.split(\"-\");\n if (parts.length === 1) {\n return numberLeadingName ? `i${name}` : name;\n }\n return parts\n .map((part, index) => {\n if (index === 0) {\n return numberLeadingName ? `i${part.toUpperCase()}` : part;\n }\n return part.charAt(0).toUpperCase() + part.slice(1);\n })\n .join(\"\");\n}\n\nconst iconCss = \"@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:-ms-inline-flexbox;display:inline-flex;color:var(--calcite-ui-icon-color)}:host([scale=s]){height:1rem;width:1rem;min-width:1rem;min-height:1rem}:host([scale=m]){height:1.5rem;width:1.5rem;min-width:1.5rem;min-height:1.5rem}:host([scale=l]){height:2rem;width:2rem;min-width:2rem;min-height:2rem}.flip-rtl{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.svg{display:block}\";\n\nconst Icon = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n //--------------------------------------------------------------------------\n //\n // Properties\n //\n //--------------------------------------------------------------------------\n /**\n * The name of the icon to display. The value of this property must match the icon name from https://esri.github.io/calcite-ui-icons/.\n */\n this.icon = null;\n /**\n * When true, the icon will be flipped when the element direction is 'rtl'.\n */\n this.flipRtl = false;\n /**\n * Icon scale.\n */\n this.scale = \"m\";\n this.visible = false;\n }\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n connectedCallback() {\n this.waitUntilVisible(() => {\n this.visible = true;\n this.loadIconPathData();\n });\n }\n disconnectedCallback() {\n var _a;\n (_a = this.intersectionObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n this.intersectionObserver = null;\n }\n async componentWillLoad() {\n this.loadIconPathData();\n }\n render() {\n const { el, flipRtl, pathData, scale, textLabel } = this;\n const dir = getElementDir(el);\n const size = scaleToPx[scale];\n const semantic = !!textLabel;\n const paths = [].concat(pathData || \"\");\n return (h(Host, { \"aria-hidden\": toAriaBoolean(!semantic), \"aria-label\": semantic ? textLabel : null, role: semantic ? \"img\" : null }, h(\"svg\", { class: {\n [CSS.flipRtl]: dir === \"rtl\" && flipRtl,\n svg: true\n }, fill: \"currentColor\", height: \"100%\", viewBox: `0 0 ${size} ${size}`, width: \"100%\", xmlns: \"http://www.w3.org/2000/svg\" }, paths.map((path) => typeof path === \"string\" ? (h(\"path\", { d: path })) : (h(\"path\", { d: path.d, opacity: \"opacity\" in path ? path.opacity : 1 }))))));\n }\n //--------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n async loadIconPathData() {\n const { icon, scale, visible } = this;\n if (!Build.isBrowser || !icon || !visible) {\n return;\n }\n this.pathData = await fetchIcon({ icon, scale });\n }\n waitUntilVisible(callback) {\n this.intersectionObserver = createObserver(\"intersection\", (entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n this.intersectionObserver.disconnect();\n this.intersectionObserver = null;\n callback();\n }\n });\n }, { rootMargin: \"50px\" });\n if (!this.intersectionObserver) {\n callback();\n return;\n }\n this.intersectionObserver.observe(this.el);\n }\n static get assetsDirs() { return [\"assets\"]; }\n get el() { return this; }\n static get watchers() { return {\n \"icon\": [\"loadIconPathData\"],\n \"scale\": [\"loadIconPathData\"]\n }; }\n static get style() { return iconCss; }\n}, [1, \"calcite-icon\", {\n \"icon\": [513],\n \"flipRtl\": [516, \"flip-rtl\"],\n \"scale\": [513],\n \"textLabel\": [1, \"text-label\"],\n \"pathData\": [32],\n \"visible\": [32]\n }]);\nfunction defineCustomElement() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-icon\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Icon);\n }\n break;\n } });\n}\ndefineCustomElement();\n\nexport { Icon as I, 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.82\n */\nimport { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';\nimport { S as StatusIcons } from './interfaces.js';\nimport { s as setRequestedIcon, b as getSlotted } from './dom.js';\nimport { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';\nimport { d as defineCustomElement$2 } from './icon.js';\n\nconst TEXT = {\n close: \"Close\"\n};\nconst SLOTS = {\n title: \"title\",\n message: \"message\",\n link: \"link\",\n actionsEnd: \"actions-end\"\n};\nconst CSS = {\n actionsEnd: \"actions-end\",\n close: \"notice-close\",\n container: \"container\",\n content: \"notice-content\",\n icon: \"notice-icon\"\n};\n\nconst noticeCss = \"@-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}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([scale=s]){--calcite-notice-spacing-token-small:0.5rem;--calcite-notice-spacing-token-large:0.75rem}:host([scale=s]) .container slot[name=title]::slotted(*),:host([scale=s]) .container *::slotted([slot=title]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size--1);line-height:1.375}:host([scale=s]) .container slot[name=message]::slotted(*),:host([scale=s]) .container *::slotted([slot=message]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size--2);line-height:1.375}:host([scale=s]) ::slotted(calcite-link){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size--2);line-height:1.375}:host([scale=s]) .notice-close{padding:0.5rem}:host([scale=m]){--calcite-notice-spacing-token-small:0.75rem;--calcite-notice-spacing-token-large:1rem}:host([scale=m]) .container slot[name=title]::slotted(*),:host([scale=m]) .container *::slotted([slot=title]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size-0);line-height:1.375}:host([scale=m]) .container slot[name=message]::slotted(*),:host([scale=m]) .container *::slotted([slot=message]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size--1);line-height:1.375}:host([scale=m]) ::slotted(calcite-link){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size--1);line-height:1.375}:host([scale=l]){--calcite-notice-spacing-token-small:1rem;--calcite-notice-spacing-token-large:1.25rem}:host([scale=l]) .container slot[name=title]::slotted(*),:host([scale=l]) .container *::slotted([slot=title]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size-1);line-height:1.375}:host([scale=l]) .container slot[name=message]::slotted(*),:host([scale=l]) .container *::slotted([slot=message]){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size-0);line-height:1.375}:host([scale=l]) ::slotted(calcite-link){margin-top:0.125rem;margin-bottom:0.125rem;font-size:var(--calcite-font-size-0);line-height:1.375}:host([width=auto]){--calcite-notice-width:auto}:host([width=half]){--calcite-notice-width:50%}:host([width=full]){--calcite-notice-width:100%}:host{margin-left:auto;margin-right:auto;display:none;max-width:100%;-ms-flex-align:center;align-items:center;width:var(--calcite-notice-width)}.container{pointer-events:none;margin-top:0px;margin-bottom:0px;-webkit-box-sizing:border-box;box-sizing:border-box;display:none;width:100%;background-color:var(--calcite-ui-foreground-1);opacity:0;max-height:0;text-align:start;-webkit-transition:var(--calcite-animation-timing);transition:var(--calcite-animation-timing);-webkit-border-start:0px solid;border-inline-start:0px solid;-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent}.notice-close{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}.notice-close:focus{outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}:host{display:-ms-flexbox;display:flex}:host([active]) .container{pointer-events:auto;display:-ms-flexbox;display:flex;max-height:100%;-ms-flex-align:center;align-items:center;border-width:2px;opacity:1;--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);-webkit-box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.container slot[name=title]::slotted(*),.container *::slotted([slot=title]){margin:0px;font-weight:var(--calcite-font-weight-medium);color:var(--calcite-ui-text-1)}.container slot[name=message]::slotted(*),.container *::slotted([slot=message]){margin:0px;display:inline;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-2);-webkit-margin-end:var(--calcite-notice-spacing-token-small);margin-inline-end:var(--calcite-notice-spacing-token-small)}.notice-content{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;padding:var(--calcite-notice-spacing-token-small) var(--calcite-notice-spacing-token-large);-ms-flex:0 0 auto;flex:0 0 auto;display:-ms-flexbox;display:flex;min-width:0px;-ms-flex-direction:column;flex-direction:column;overflow-wrap:break-word;-ms-flex:1 1 0px;flex:1 1 0;padding-block:var(--calcite-notice-spacing-token-small);padding-inline:0 var(--calcite-notice-spacing-token-small)}.notice-content:first-of-type:not(:only-child){-webkit-padding-start:var(--calcite-notice-spacing-token-large);padding-inline-start:var(--calcite-notice-spacing-token-large)}.notice-content:only-of-type{padding:var(--calcite-notice-spacing-token-small) var(--calcite-notice-spacing-token-large)}.notice-icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;padding:var(--calcite-notice-spacing-token-small) var(--calcite-notice-spacing-token-large);-ms-flex:0 0 auto;flex:0 0 auto}.notice-close{display:-ms-flexbox;display:flex;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-item-align:stretch;align-self:stretch;border-style:none;background-color:transparent;color:var(--calcite-ui-text-3);outline:2px solid transparent;outline-offset:2px;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;padding:var(--calcite-notice-spacing-token-small) var(--calcite-notice-spacing-token-large);-ms-flex:0 0 auto;flex:0 0 auto;-webkit-appearance:none}.notice-close:hover,.notice-close:focus{background-color:var(--calcite-ui-foreground-2);color:var(--calcite-ui-text-1)}.notice-close:active{background-color:var(--calcite-ui-foreground-3)}.actions-end{display:-ms-flexbox;display:flex;-ms-flex-item-align:stretch;align-self:stretch}:host([color=blue]) .container{border-color:var(--calcite-ui-brand)}:host([color=blue]) .container .notice-icon{color:var(--calcite-ui-brand)}:host([color=red]) .container{border-color:var(--calcite-ui-danger)}:host([color=red]) .container .notice-icon{color:var(--calcite-ui-danger)}:host([color=yellow]) .container{border-color:var(--calcite-ui-warning)}:host([color=yellow]) .container .notice-icon{color:var(--calcite-ui-warning)}:host([color=green]) .container{border-color:var(--calcite-ui-success)}:host([color=green]) .container .notice-icon{color:var(--calcite-ui-success)}\";\n\nconst Notice = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {\n constructor() {\n super();\n this.__registerHost();\n this.__attachShadow();\n this.calciteNoticeClose = createEvent(this, \"calciteNoticeClose\", 7);\n this.calciteNoticeOpen = createEvent(this, \"calciteNoticeOpen\", 7);\n //--------------------------------------------------------------------------\n //\n // Properties\n //\n //---------------------------------------------------------------------------\n /** Is the notice currently active or not */\n this.active = false;\n /** Color for the notice (will apply to top border and icon) */\n this.color = \"blue\";\n /** Optionally show a button the user can click to dismiss the notice */\n this.dismissible = false;\n /** String for the close button.\n * @default \"Close\"\n */\n this.intlClose = TEXT.close;\n /** specify the scale of the notice, defaults to m */\n this.scale = \"m\";\n /** specify the width of the notice, defaults to auto */\n this.width = \"auto\";\n //--------------------------------------------------------------------------\n //\n // Private Methods\n //\n //--------------------------------------------------------------------------\n this.close = () => {\n this.active = false;\n this.calciteNoticeClose.emit();\n };\n }\n updateRequestedIcon() {\n this.requestedIcon = setRequestedIcon(StatusIcons, this.icon, this.color);\n }\n //--------------------------------------------------------------------------\n //\n // Lifecycle\n //\n //--------------------------------------------------------------------------\n connectedCallback() {\n connectConditionalSlotComponent(this);\n }\n disconnectedCallback() {\n disconnectConditionalSlotComponent(this);\n }\n componentWillLoad() {\n this.requestedIcon = setRequestedIcon(StatusIcons, this.icon, this.color);\n }\n render() {\n const { el } = this;\n const closeButton = (h(\"button\", { \"aria-label\": this.intlClose, class: CSS.close, onClick: this.close, ref: (el) => (this.closeButton = el) }, h(\"calcite-icon\", { icon: \"x\", scale: this.scale === \"l\" ? \"m\" : \"s\" })));\n const hasActionEnd = getSlotted(el, SLOTS.actionsEnd);\n return (h(\"div\", { class: CSS.container }, this.requestedIcon ? (h(\"div\", { class: CSS.icon }, h(\"calcite-icon\", { icon: this.requestedIcon, scale: this.scale === \"l\" ? \"m\" : \"s\" }))) : null, h(\"div\", { class: CSS.content }, h(\"slot\", { name: SLOTS.title }), h(\"slot\", { name: SLOTS.message }), h(\"slot\", { name: SLOTS.link })), hasActionEnd ? (h(\"div\", { class: CSS.actionsEnd }, h(\"slot\", { name: SLOTS.actionsEnd }))) : null, this.dismissible ? closeButton : null));\n }\n //--------------------------------------------------------------------------\n //\n // Public Methods\n //\n //--------------------------------------------------------------------------\n /** Sets focus on the component. */\n async setFocus() {\n const noticeLinkEl = this.el.querySelector(\"calcite-link\");\n if (!this.closeButton && !noticeLinkEl) {\n return;\n }\n if (noticeLinkEl) {\n noticeLinkEl.setFocus();\n }\n else if (this.closeButton) {\n this.closeButton.focus();\n }\n }\n get el() { return this; }\n static get watchers() { return {\n \"icon\": [\"updateRequestedIcon\"],\n \"color\": [\"updateRequestedIcon\"]\n }; }\n static get style() { return noticeCss; }\n}, [1, \"calcite-notice\", {\n \"active\": [1540],\n \"color\": [513],\n \"dismissible\": [516],\n \"icon\": [520],\n \"intlClose\": [1, \"intl-close\"],\n \"scale\": [513],\n \"width\": [513],\n \"setFocus\": [64]\n }]);\nfunction defineCustomElement$1() {\n if (typeof customElements === \"undefined\") {\n return;\n }\n const components = [\"calcite-notice\", \"calcite-icon\"];\n components.forEach(tagName => { switch (tagName) {\n case \"calcite-notice\":\n if (!customElements.get(tagName)) {\n customElements.define(tagName, Notice);\n }\n break;\n case \"calcite-icon\":\n if (!customElements.get(tagName)) {\n defineCustomElement$2();\n }\n break;\n } });\n}\ndefineCustomElement$1();\n\nconst CalciteNotice = Notice;\nconst defineCustomElement = defineCustomElement$1;\n\nexport { CalciteNotice, defineCustomElement };\n"],"sourceRoot":""}