{"version":3,"sources":["jsdelivr-header.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/cacheFetch.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/style-css.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/baseIcon.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/tokens-css.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/color-css.js","/npm/@aurodesignsystem/auro-icon@8.1.4/src/auro-icon.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,odCJA,MAAM,EAAY,IAAI,IAkBhB,EAAa,CAAC,EAAK,EAAU,MACjC,MAAM,EAAiB,EAAQ,gBAAc,CAAM,GAAa,EAAS,QAIzE,OAHK,EAAU,IAAI,IACjB,EAAU,IAAI,EAAK,MAAM,GAAK,KAAK,IAE9B,EAAU,IAAI,EAAI,ECxB3B,IAAA,EAAe,CAAG,2qCCgBH,MAAM,UAAiB,EACpC,WAAA,GACE,QACA,KAAK,QAAS,CAClB,CAGE,qBAAW,GACT,MAAO,IACF,MAAM,WAKT,OAAQ,CACN,KAAM,QACN,SAAS,GAMX,IAAK,CACH,WAAW,EACX,SAAS,GAGjB,CAEE,iBAAW,GACT,OAAO,CAAG;QACN;KAER,CASE,eAAM,CAAU,EAAU,GACxB,IAAI,EAAW,GAGb,EADe,UAAb,QACe,EAAW,GAAG,KAAK,OAAO,KAAY,eAEtC,EAAW,GAAG,KAAK,aAAa,KAAY,SAK/D,OAFY,IAAI,WAAY,gBAAgB,EAAU,aAE3C,KAAK,cAAc,MAClC,CAGE,kBAAM,GACJ,IACE,IAAK,KAAK,UAAW,CACnB,MAAM,QAAY,KAAK,UAAU,KAAK,SAAU,KAAK,MAErD,GAAI,EACF,KAAK,IAAM,OACN,IAAK,EAAK,CACf,MAAM,GAAS,IAAI,WAAY,gBAAgB,EAAM,IAAK,aAE1D,KAAK,IAAM,EAAO,KAAK,UACjC,CACA,CAEA,CAAM,MAAO,GACP,KAAK,SAAM,CACjB,CACA,EC1FA,IAAA,EAAe,CAAG,4JCAlB,EAAe,CAAG,0vFCcX,MAAM,UAAiB,EAC5B,WAAA,GACE,QAEA,KAAK,aAAU,EACf,KAAK,iBACT,CAOE,eAAA,GACE,KAAK,IAAM,8DACX,KAAK,aAAe,IAAI,CAC5B,CAGE,qBAAW,GACT,MAAO,IACF,MAAM,WAKT,WAAY,CACV,KAAM,OACN,SAAS,GAMX,SAAU,CACR,KAAM,OACN,SAAS,GAMX,YAAa,CACX,KAAM,QACN,SAAS,GAMX,UAAW,CACT,KAAM,SAMR,MAAO,CACL,KAAM,QACN,SAAS,GAMX,KAAM,CACJ,KAAM,OACN,SAAS,GAMX,QAAS,CACP,KAAM,OACN,SAAS,GAGjB,CAEE,iBAAW,GACT,MAAO,CACL,MAAM,OACN,CAAG,GAAG,IACN,CAAG,GAAG,IACN,CAAG,GAAG,IAEZ,CAUE,eAAO,CAAS,EAAO,aACrB,EAAwB,UAAU,kBAAkB,EAAM,EAC9D,CAEE,iBAAA,GACE,MAAM,oBAGN,KAAK,aAAa,yBAAyB,KAAM,YACrD,CAME,cAAA,GACE,KAAK,aAAa,cAAe,cACrC,CAEE,kBAAM,GAQJ,SAPM,MAAM,eAOR,KAAK,aAAa,eAAiB,KAAK,IAAK,CAC/C,MAAM,EAAU,KAAK,IAAI,cAAc,QAEnC,IACF,EAAQ,SACR,KAAK,IAAI,gBAAgB,mBAEjC,CACA,CAGE,MAAA,GACE,MAAM,EAAe,CACnB,cAAgB,EAChB,4BAA+B,KAAK,OAOtC,OAAO,CAAI;;;mBAGI,EAPI,CACjB,YAAc;mBAOD,EAAU,KAAK,YAAS;+BACZ,EAAU,KAAK,aAAc;cAC9C,KAAK,UAAY,CAAI;;gBAEjB,CAAI;kBACJ,KAAK;;;;;sBAMD,EAAS;;;;KAK/B,S","file":"/npm/@aurodesignsystem/auro-icon@8.1.4/src/auro-icon.js/+esm","sourceRoot":"","sourcesContent":["/**\n * Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.\n * Original file: /npm/@aurodesignsystem/auro-icon@8.1.4/src/auro-icon.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/* eslint-disable no-underscore-dangle, jsdoc/no-undefined-types, jsdoc/require-param-description */\n\nconst _fetchMap = new Map();\n\n/**\n * A callback to parse Response body.\n *\n * @callback ResponseParser\n * @param {Fetch.Response} response\n * @returns {Promise}\n */\n\n/**\n * A minimal in-memory map to de-duplicate Fetch API media requests.\n *\n * @param {String} uri\n * @param {Object} [options={}]\n * @param {ResponseParser} [options.responseParser=(response) => response.text()]\n * @returns {Promise}\n */\nconst cacheFetch = (uri, options = {}) => {\n  const responseParser = options.responseParser || ((response) => response.text());\n  if (!_fetchMap.has(uri)) {\n    _fetchMap.set(uri, fetch(uri).then(responseParser));\n  }\n  return _fetchMap.get(uri);\n};\n\nexport default cacheFetch;\n","import { css } from 'lit';\nexport default css`:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock,:host{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host([hidden]:not(:focus):not(:active)){display:none}.util_displayHiddenVisually,:host([hiddenVisually]:not(:focus):not(:active)){position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.ico_squareLarge{fill:currentColor;height:var(--auro-size-lg, var(--ds-size-300, 1.5rem))}.ico_squareSmall{fill:currentColor;height:.6rem}.ico_squareMed{fill:currentColor;height:var(--auro-size-md, var(--ds-size-200, 1rem))}.ico_squareSml{fill:currentColor;height:var(--auro-size-sm, var(--ds-size-150, 0.75rem))}:host{color:currentColor;vertical-align:middle;line-height:1;display:inline-block}svg{min-width:var(--ds-auro-icon-size, 1.5rem) !important;width:var(--ds-auro-icon-size, 1.5rem) !important;height:var(--ds-auro-icon-size, 1.5rem) !important}.componentWrapper{display:flex}.svgWrapper{height:var(--ds-auro-icon-size);width:var(--ds-auro-icon-size)}.labelWrapper{margin-left:var(--ds-size-50, 0.25rem);line-height:1.8}`;\n","// Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license\n// See LICENSE in the project root for license information.\n\n// ---------------------------------------------------------------------\n\nimport { css } from \"lit\";\nimport AuroElement from '@aurodesignsystem/webcorestylesheets/dist/auroElement/auroElement.mjs';\nimport error from '@alaskaairux/icons/dist/icons/alert/error.mjs';\nimport cacheFetch from './cacheFetch.js';\nimport styleCss from \"./style-css.js\";\n\n// See https://git.io/JJ6SJ for \"How to document your components using JSDoc\"\n/**\n * @slot - Hidden from visibility, used for a11y if icon description is needed\n */\n\n// build the component class\nexport default class BaseIcon extends AuroElement {\n  constructor() {\n    super();\n    this.onDark = false;\n  }\n\n  // function to define props used within the scope of this component\n  static get properties() {\n    return {\n      ...super.properties,\n\n      /**\n       * Set value for on-dark version of auro-icon.\n       */\n      onDark: {\n        type: Boolean,\n        reflect: true\n      },\n\n      /**\n       * @private\n       */\n      svg: {\n        attribute: false,\n        reflect: true\n      }\n    };\n  }\n\n  static get styles() {\n    return css`\n      ${styleCss}\n    `;\n  }\n\n  /**\n   * Async function to fetch requested icon from npm CDN.\n   * @private\n   * @param {string} category - Icon category.\n   * @param {string} name - Icon name.\n   * @returns {SVGElement} DOM - Ready HTML to be appended.\n   */\n  async fetchIcon(category, name) {\n    let iconHTML = '';\n\n    if (category === 'logos') {\n      iconHTML = await cacheFetch(`${this.uri}/${category}/${name}.svg`);\n    } else {\n      iconHTML = await cacheFetch(`${this.uri}/icons/${category}/${name}.svg`);\n    }\n\n    const dom = new DOMParser().parseFromString(iconHTML, 'text/html');\n\n    return dom.body.querySelector('svg');\n  }\n\n  // lifecycle function\n  async firstUpdated() {\n    try {\n      if (!this.customSvg) {\n        const svg = await this.fetchIcon(this.category, this.name);\n\n        if (svg) {\n          this.svg = svg;\n        } else if (!svg) {\n          const penDOM = new DOMParser().parseFromString(error.svg, 'text/html');\n\n          this.svg = penDOM.body.firstChild;\n        }\n      }\n    // eslint-disable-next-line no-unused-vars\n    } catch (err) {\n      this.svg = undefined;\n    }\n  }\n}\n","import { css } from 'lit';\nexport default css`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-alaska-color:#02426D;--ds-auro-icon-size:var(--ds-size-300, 1.5rem)}`;\n","import { css } from 'lit';\nexport default css`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;\n","// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license\n// See LICENSE in the project root for license information.\n\n// ---------------------------------------------------------------------\n\nimport { html, css } from \"lit\";\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport BaseIcon from \"./baseIcon.js\";\nimport tokensCss from \"./tokens-css.js\";\nimport styleCss from \"./style-css.js\";\nimport colorCss from \"./color-css.js\";\n\nimport AuroLibraryRuntimeUtils from '@aurodesignsystem/auro-library/scripts/utils/runtimeUtils.mjs';\n\nexport class AuroIcon extends BaseIcon {\n  constructor() {\n    super();\n\n    this.variant = undefined;\n    this.privateDefaults();\n  }\n\n  /**\n   * Internal Defaults.\n   * @private\n   * @returns {void}\n   */\n  privateDefaults() {\n    this.uri = 'https://cdn.jsdelivr.net/npm/@alaskaairux/icons@latest/dist';\n    this.runtimeUtils = new AuroLibraryRuntimeUtils();\n  }\n\n  // function to define props used within the scope of this component\n  static get properties() {\n    return {\n      ...super.properties,\n\n      /**\n       * Set aria-hidden value. Default is `true`. Option is `false`.\n       */\n      ariaHidden: {\n        type: String,\n        reflect: true\n      },\n\n      /**\n       * The category of the icon you are looking for. See https://auro.alaskaair.com/icons/usage.\n       */\n      category: {\n        type: String,\n        reflect: true\n      },\n\n      /**\n       * Allows custom color to be set.\n       */\n      customColor: {\n        type: Boolean,\n        reflect: true\n      },\n\n      /**\n       * When true, auro-icon will render a custom SVG inside the default slot.\n       */\n      customSvg: {\n        type: Boolean\n      },\n\n      /**\n       * Exposes content in slot as icon label.\n       */\n      label: {\n        type: Boolean,\n        reflect: true\n      },\n\n      /**\n       * The name of the icon you are looking for without the file extension. See https://auro.alaskaair.com/icons/usage.\n       */\n      name: {\n        type: String,\n        reflect: true\n      },\n\n      /**\n       * The style of the icon. The accepted variants are `accent1`, `disabled`, `muted`, `statusDefault`, `statusInfo`, `statusSuccess`, `statusWarning`, `statusError`, `statusInfoSubtle`, `statusSuccessSubtle`, `statusWarningSubtle`, `statusErrorSubtle`, `fareBasicEconomy`, `fareBusiness`, `fareEconomy`, `fareFirst`, `farePremiumEconomy`, `tierOneWorldEmerald`, `tierOneWorldSapphire`, `tierOneWorldRuby`.\n       */\n      variant: {\n        type: String,\n        reflect: true\n      }\n    };\n  }\n\n  static get styles() {\n    return [\n      super.styles,\n      css`${tokensCss}`,\n      css`${styleCss}`,\n      css`${colorCss}`\n    ];\n  }\n\n  /**\n   * This will register this element with the browser.\n   * @param {string} [name=\"auro-icon\"] - The name of element that you want to register to.\n   *\n   * @example\n   * AuroIcon.register(\"custom-icon\") // this will register this element to <custom-icon/>\n   *\n   */\n  static register(name = \"auro-icon\") {\n    AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroIcon);\n  }\n\n  connectedCallback() {\n    super.connectedCallback();\n\n    // Add the tag name as an attribute if it is different than the component name\n    this.runtimeUtils.handleComponentTagRename(this, 'auro-icon');\n  }\n\n  /**\n   * @private\n   * @returns {void} Exposes CSS parts for styling from parent components.\n   */\n  exposeCssParts() {\n    this.setAttribute('exportparts', 'svg:iconSvg');\n  }\n\n  async firstUpdated() {\n    await super.firstUpdated();\n\n    /**\n     * icons provide a description for screen readers. Icon only instances Auro-button\n     * depend on this description to provide context for the user using a screen reader.\n     * Removes the SVG description for screen reader if ariaHidden is set to true.\n     */\n    if (this.hasAttribute('ariaHidden') && this.svg) {\n      const svgDesc = this.svg.querySelector('desc');\n\n      if (svgDesc) {\n        svgDesc.remove();\n        this.svg.removeAttribute('aria-labelledby');\n      }\n    }\n  }\n\n  // function that renders the HTML and CSS into  the scope of the component\n  render() {\n    const labelClasses = {\n      'labelWrapper': true,\n      'util_displayHiddenVisually': !this.label\n    };\n\n    const svgClasses = {\n      'svgWrapper': true,\n    };\n\n    return html`\n      <div class=\"componentWrapper\">\n        <div\n          class=\"${classMap(svgClasses)}\"\n          title=\"${ifDefined(this.title || undefined)}\">\n          <span aria-hidden=\"${ifDefined(this.ariaHidden || true)}\" part=\"svg\">\n            ${this.customSvg ? html`\n                <slot name=\"svg\"></slot>\n              ` : html`\n                ${this.svg}\n              `\n            }\n          </span>\n        </div>\n\n        <div class=\"${classMap(labelClasses)}\">\n          <slot></slot>\n        </div>\n      </div>\n    `;\n  }\n}\n"]}