@aurodesignsystem/auro-formkit 1.6.0-beta.6 → 1.6.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/cache/0008b92c8752bf75-meta.json +1 -0
- package/.turbo/cache/{2ca214d032893e74.tar.zst → 0008b92c8752bf75.tar.zst} +0 -0
- package/.turbo/cache/00cb38bef1105dac-meta.json +1 -0
- package/.turbo/cache/0157ec8abdaf2a9c-meta.json +1 -0
- package/.turbo/cache/0636e9cedc83238b-meta.json +1 -0
- package/.turbo/cache/06f476671015e973-meta.json +1 -0
- package/.turbo/cache/06f476671015e973.tar.zst +0 -0
- package/.turbo/cache/09df74d672102662-meta.json +1 -0
- package/.turbo/cache/0cd109fb3183c2e6-meta.json +1 -0
- package/.turbo/cache/0cd109fb3183c2e6.tar.zst +0 -0
- package/.turbo/cache/17c429ade621ffcb-meta.json +1 -0
- package/.turbo/cache/1c47128a0e12fcfa-meta.json +1 -0
- package/.turbo/cache/1db02f756ce85784-meta.json +1 -0
- package/.turbo/cache/21705fa179d5f820-meta.json +1 -0
- package/.turbo/cache/21705fa179d5f820.tar.zst +0 -0
- package/.turbo/cache/249d9ba3ee6aa1cb-meta.json +1 -0
- package/.turbo/cache/2666b96bfcf4e9cd-meta.json +1 -0
- package/.turbo/cache/2778d5e895240cd1-meta.json +1 -0
- package/.turbo/cache/300b59df2de12b46-meta.json +1 -0
- package/.turbo/cache/31729e74fccaafb0-meta.json +1 -0
- package/.turbo/cache/32702694d62a08ac-meta.json +1 -0
- package/.turbo/cache/32702694d62a08ac.tar.zst +0 -0
- package/.turbo/cache/3482a3cba9a51c2d-meta.json +1 -0
- package/.turbo/cache/3482a3cba9a51c2d.tar.zst +0 -0
- package/.turbo/cache/3a9d73752f23a40a-meta.json +1 -0
- package/.turbo/cache/3a9d73752f23a40a.tar.zst +0 -0
- package/.turbo/cache/3afe2e6f714a4fcb-meta.json +1 -0
- package/.turbo/cache/3afe2e6f714a4fcb.tar.zst +0 -0
- package/.turbo/cache/408ea1754276298c-meta.json +1 -0
- package/.turbo/cache/408ea1754276298c.tar.zst +0 -0
- package/.turbo/cache/42066c793c3816f3-meta.json +1 -0
- package/.turbo/cache/4bec46ffff6fd2e8-meta.json +1 -0
- package/.turbo/cache/50b275350abe14dd-meta.json +1 -0
- package/.turbo/cache/51078a087b52c65e-meta.json +1 -0
- package/.turbo/cache/593ddf689673e305-meta.json +1 -0
- package/.turbo/cache/593ddf689673e305.tar.zst +0 -0
- package/.turbo/cache/64e4f18395bd4461-meta.json +1 -0
- package/.turbo/cache/64e4f18395bd4461.tar.zst +0 -0
- package/.turbo/cache/7419ef01dc18b433-meta.json +1 -0
- package/.turbo/cache/7419ef01dc18b433.tar.zst +0 -0
- package/.turbo/cache/748faca09d14fea7-meta.json +1 -0
- package/.turbo/cache/75495b0bbd6c06a7-meta.json +1 -0
- package/.turbo/cache/7a6a8af4392c4b05-meta.json +1 -0
- package/.turbo/cache/7a6a8af4392c4b05.tar.zst +0 -0
- package/.turbo/cache/7e81141e0140dd3a-meta.json +1 -0
- package/.turbo/cache/7e81141e0140dd3a.tar.zst +0 -0
- package/.turbo/cache/7eb50d96639e6dd4-meta.json +1 -0
- package/.turbo/cache/83bb78fec13808d0-meta.json +1 -0
- package/.turbo/cache/8605f60efb7d3957-meta.json +1 -0
- package/.turbo/cache/8605f60efb7d3957.tar.zst +0 -0
- package/.turbo/cache/892a90b62716ded5-meta.json +1 -0
- package/.turbo/cache/8cac06ca809bd2b1-meta.json +1 -0
- package/.turbo/cache/9a908bf8f82c84a6-meta.json +1 -0
- package/.turbo/cache/9ed3089ffd7d0c00-meta.json +1 -0
- package/.turbo/cache/a3a879aea25debf8-meta.json +1 -0
- package/.turbo/cache/a8dbafaf6177f677-meta.json +1 -0
- package/.turbo/cache/a8dbafaf6177f677.tar.zst +0 -0
- package/.turbo/cache/a8f6418b830ef0ba-meta.json +1 -0
- package/.turbo/cache/afd81e4f9d4bb74d-meta.json +1 -0
- package/.turbo/cache/afd81e4f9d4bb74d.tar.zst +0 -0
- package/.turbo/cache/b37b0eb5597e160f-meta.json +1 -0
- package/.turbo/cache/b7e7a8c425673f7c-meta.json +1 -0
- package/.turbo/cache/bc8eed3d7216f5b7-meta.json +1 -0
- package/.turbo/cache/bde11c3029373459-meta.json +1 -0
- package/.turbo/cache/c8e5fe6aec4479f5-meta.json +1 -0
- package/.turbo/cache/{754a6b5c5ce1ed00.tar.zst → c8e5fe6aec4479f5.tar.zst} +0 -0
- package/.turbo/cache/d0e874a9a71c9468-meta.json +1 -0
- package/.turbo/cache/d61b4e1bde4c0a12-meta.json +1 -0
- package/.turbo/cache/db6dedc0e7a12575-meta.json +1 -0
- package/.turbo/cache/db6dedc0e7a12575.tar.zst +0 -0
- package/.turbo/cache/de9737607345ec54-meta.json +1 -0
- package/.turbo/cache/de9737607345ec54.tar.zst +0 -0
- package/.turbo/cache/e234aa902b2c5b30-meta.json +1 -0
- package/.turbo/cache/e234aa902b2c5b30.tar.zst +0 -0
- package/.turbo/cache/e541225f46f7cf86-meta.json +1 -0
- package/.turbo/cache/e67ac30b07d9e800-meta.json +1 -0
- package/.turbo/cache/e67ac30b07d9e800.tar.zst +0 -0
- package/.turbo/cache/e7244fdd3397eba7-meta.json +1 -0
- package/.turbo/cache/e7cf2cc625bd92b3-meta.json +1 -0
- package/.turbo/cache/e89a401ebdda3fc2-meta.json +1 -0
- package/CHANGELOG.md +27 -0
- package/components/checkbox/.turbo/turbo-build.log +3 -3
- package/components/checkbox/.turbo/turbo-bundler.log +3 -3
- package/components/combobox/.turbo/turbo-build.log +6 -3
- package/components/combobox/demo/api.html +1 -0
- package/components/combobox/demo/api.js +2 -0
- package/components/combobox/demo/api.md +73 -0
- package/components/combobox/demo/api.min.js +962 -835
- package/components/combobox/demo/index.min.js +920 -832
- package/components/combobox/dist/auro-combobox.d.ts +20 -0
- package/components/combobox/dist/auro-combobox.d.ts.map +1 -1
- package/components/combobox/dist/index.js +58 -22
- package/components/combobox/src/auro-combobox.js +58 -22
- package/components/counter/.turbo/turbo-build.log +3 -3
- package/components/counter/.turbo/turbo-bundler.log +3 -3
- package/components/datepicker/.turbo/turbo-build.log +3 -3
- package/components/dropdown/.turbo/turbo-build.log +3 -3
- package/components/dropdown/.turbo/turbo-bundler.log +3 -3
- package/components/form/.turbo/turbo-build.log +3 -3
- package/components/form/.turbo/turbo-bundler.log +3 -3
- package/components/input/.turbo/turbo-build.log +3 -3
- package/components/input/.turbo/turbo-bundler.log +3 -3
- package/components/menu/.turbo/turbo-build.log +6 -3
- package/components/menu/.turbo/turbo-bundler.log +3 -3
- package/components/menu/demo/api.html +2 -0
- package/components/menu/demo/api.js +2 -0
- package/components/menu/demo/api.md +164 -22
- package/components/menu/demo/api.min.js +912 -853
- package/components/menu/demo/index.min.js +905 -853
- package/components/menu/dist/auro-menu.d.ts +28 -2
- package/components/menu/dist/auro-menu.d.ts.map +1 -1
- package/components/menu/dist/auro-menuoption.d.ts +1 -1
- package/components/menu/dist/index.js +905 -853
- package/components/menu/src/auro-menu.js +57 -7
- package/components/menu/src/auro-menuoption.js +1 -1
- package/components/menu/src/styles/style-menu-css.js +1 -1
- package/components/menu/src/styles/style-menu.css +21 -3
- package/components/menu/src/styles/style-menu.scss +25 -3
- package/components/radio/.turbo/turbo-build.log +3 -3
- package/components/radio/.turbo/turbo-bundler.log +3 -3
- package/components/select/.turbo/turbo-build.log +6 -3
- package/components/select/demo/api.html +1 -0
- package/components/select/demo/api.js +2 -0
- package/components/select/demo/api.md +66 -0
- package/components/select/demo/api.min.js +927 -811
- package/components/select/demo/index.min.js +895 -811
- package/components/select/dist/auro-select.d.ts +19 -0
- package/components/select/dist/auro-select.d.ts.map +1 -1
- package/components/select/dist/index.js +32 -0
- package/components/select/src/auro-select.js +32 -0
- package/package.json +3 -3
- package/packages/build-tools/src/docProcessor.mjs +4 -4
- package/packages/build-tools/src/kitDocProcessor.mjs +4 -4
- package/packages/typescript/package.json +1 -1
- package/.turbo/cache/05be1236a4cd5e72-meta.json +0 -1
- package/.turbo/cache/05be1236a4cd5e72.tar.zst +0 -0
- package/.turbo/cache/10feda0f037804bb-meta.json +0 -1
- package/.turbo/cache/11079d2746265545-meta.json +0 -1
- package/.turbo/cache/11079d2746265545.tar.zst +0 -0
- package/.turbo/cache/144e8e78657bf800-meta.json +0 -1
- package/.turbo/cache/18939b2c7c83b163-meta.json +0 -1
- package/.turbo/cache/1de685df0eaa39c8-meta.json +0 -1
- package/.turbo/cache/1ec139dcf090d547-meta.json +0 -1
- package/.turbo/cache/1f53ce3a28c56cdf-meta.json +0 -1
- package/.turbo/cache/23bf100310bd9f5a-meta.json +0 -1
- package/.turbo/cache/2900e7ec28e1488f-meta.json +0 -1
- package/.turbo/cache/296074aadfa2f8c9-meta.json +0 -1
- package/.turbo/cache/296074aadfa2f8c9.tar.zst +0 -0
- package/.turbo/cache/29e29355bf6fb4fd-meta.json +0 -1
- package/.turbo/cache/2ca214d032893e74-meta.json +0 -1
- package/.turbo/cache/2f6c898fbb51e995-meta.json +0 -1
- package/.turbo/cache/2f6c898fbb51e995.tar.zst +0 -0
- package/.turbo/cache/3073b96f6e4d867c-meta.json +0 -1
- package/.turbo/cache/33466ea2930c3714-meta.json +0 -1
- package/.turbo/cache/3792d285b464b3e6-meta.json +0 -1
- package/.turbo/cache/3792d285b464b3e6.tar.zst +0 -0
- package/.turbo/cache/3ac4a22a21bdc2be-meta.json +0 -1
- package/.turbo/cache/3ac4a22a21bdc2be.tar.zst +0 -0
- package/.turbo/cache/3f41d958c755a6f0-meta.json +0 -1
- package/.turbo/cache/3f41d958c755a6f0.tar.zst +0 -0
- package/.turbo/cache/451e562c76f74ec6-meta.json +0 -1
- package/.turbo/cache/4520919609c97850-meta.json +0 -1
- package/.turbo/cache/452908d0b0b676bc-meta.json +0 -1
- package/.turbo/cache/48c197e39ed31fd2-meta.json +0 -1
- package/.turbo/cache/48c197e39ed31fd2.tar.zst +0 -0
- package/.turbo/cache/5058ecc7f1e34496-meta.json +0 -1
- package/.turbo/cache/5a66a99aa1344401-meta.json +0 -1
- package/.turbo/cache/5b66ce21630716cc-meta.json +0 -1
- package/.turbo/cache/5d064e768a262314-meta.json +0 -1
- package/.turbo/cache/5d064e768a262314.tar.zst +0 -0
- package/.turbo/cache/6646f884a18a970a-meta.json +0 -1
- package/.turbo/cache/6646f884a18a970a.tar.zst +0 -0
- package/.turbo/cache/70d7b72f15ee97a4-meta.json +0 -1
- package/.turbo/cache/71212615220331ea-meta.json +0 -1
- package/.turbo/cache/71212615220331ea.tar.zst +0 -0
- package/.turbo/cache/754a6b5c5ce1ed00-meta.json +0 -1
- package/.turbo/cache/77bf3068f493ef24-meta.json +0 -1
- package/.turbo/cache/77bf3068f493ef24.tar.zst +0 -0
- package/.turbo/cache/7ddb7ace73fe6ec2-meta.json +0 -1
- package/.turbo/cache/7ddb7ace73fe6ec2.tar.zst +0 -0
- package/.turbo/cache/897b0d8a0c301207-meta.json +0 -1
- package/.turbo/cache/8b7cdb9a0d4c3112-meta.json +0 -1
- package/.turbo/cache/8e1f402b247ebed6-meta.json +0 -1
- package/.turbo/cache/8e1f402b247ebed6.tar.zst +0 -0
- package/.turbo/cache/90b8d9ccef5e09aa-meta.json +0 -1
- package/.turbo/cache/9135f474c69d1b3c-meta.json +0 -1
- package/.turbo/cache/9135f474c69d1b3c.tar.zst +0 -0
- package/.turbo/cache/936bccb44ade3650-meta.json +0 -1
- package/.turbo/cache/94bcc4c6536ada9d-meta.json +0 -1
- package/.turbo/cache/9a7ab914e08ce75f-meta.json +0 -1
- package/.turbo/cache/9a7ab914e08ce75f.tar.zst +0 -0
- package/.turbo/cache/a532f4b8302ca13e-meta.json +0 -1
- package/.turbo/cache/a7bf477bbdabc7bc-meta.json +0 -1
- package/.turbo/cache/a90aa34f427a2f62-meta.json +0 -1
- package/.turbo/cache/aa68cd3545395c90-meta.json +0 -1
- package/.turbo/cache/aa68cd3545395c90.tar.zst +0 -0
- package/.turbo/cache/aedda428051043c4-meta.json +0 -1
- package/.turbo/cache/b61416daf63fbaad-meta.json +0 -1
- package/.turbo/cache/b9463532618cdc61-meta.json +0 -1
- package/.turbo/cache/bb3afea40c91e8ba-meta.json +0 -1
- package/.turbo/cache/c63dc7b6157da70b-meta.json +0 -1
- package/.turbo/cache/c8b63b6e8a190eb9-meta.json +0 -1
- package/.turbo/cache/d35b1eee9f2881af-meta.json +0 -1
- package/.turbo/cache/d5188c0fbe45d578-meta.json +0 -1
- package/.turbo/cache/dce6f67be2b63c18-meta.json +0 -1
- package/.turbo/cache/dce6f67be2b63c18.tar.zst +0 -0
- package/.turbo/cache/e28ee527154c4cb2-meta.json +0 -1
- package/.turbo/cache/e28ee527154c4cb2.tar.zst +0 -0
- package/.turbo/cache/e4b3ec56d4ae56ba-meta.json +0 -1
- package/.turbo/cache/e6f030eddf6fbf4e-meta.json +0 -1
- package/.turbo/cache/ff7e6d09efd93145-meta.json +0 -1
- package/.turbo/cache/ff7e6d09efd93145.tar.zst +0 -0
- /package/.turbo/cache/{e6f030eddf6fbf4e.tar.zst → 00cb38bef1105dac.tar.zst} +0 -0
- /package/.turbo/cache/{1f53ce3a28c56cdf.tar.zst → 0157ec8abdaf2a9c.tar.zst} +0 -0
- /package/.turbo/cache/{94bcc4c6536ada9d.tar.zst → 0636e9cedc83238b.tar.zst} +0 -0
- /package/.turbo/cache/{90b8d9ccef5e09aa.tar.zst → 09df74d672102662.tar.zst} +0 -0
- /package/.turbo/cache/{a90aa34f427a2f62.tar.zst → 17c429ade621ffcb.tar.zst} +0 -0
- /package/.turbo/cache/{936bccb44ade3650.tar.zst → 1c47128a0e12fcfa.tar.zst} +0 -0
- /package/.turbo/cache/{18939b2c7c83b163.tar.zst → 1db02f756ce85784.tar.zst} +0 -0
- /package/.turbo/cache/{10feda0f037804bb.tar.zst → 249d9ba3ee6aa1cb.tar.zst} +0 -0
- /package/.turbo/cache/{a7bf477bbdabc7bc.tar.zst → 2666b96bfcf4e9cd.tar.zst} +0 -0
- /package/.turbo/cache/{70d7b72f15ee97a4.tar.zst → 2778d5e895240cd1.tar.zst} +0 -0
- /package/.turbo/cache/{5b66ce21630716cc.tar.zst → 300b59df2de12b46.tar.zst} +0 -0
- /package/.turbo/cache/{5058ecc7f1e34496.tar.zst → 31729e74fccaafb0.tar.zst} +0 -0
- /package/.turbo/cache/{aedda428051043c4.tar.zst → 42066c793c3816f3.tar.zst} +0 -0
- /package/.turbo/cache/{bb3afea40c91e8ba.tar.zst → 4bec46ffff6fd2e8.tar.zst} +0 -0
- /package/.turbo/cache/{452908d0b0b676bc.tar.zst → 50b275350abe14dd.tar.zst} +0 -0
- /package/.turbo/cache/{23bf100310bd9f5a.tar.zst → 51078a087b52c65e.tar.zst} +0 -0
- /package/.turbo/cache/{1ec139dcf090d547.tar.zst → 748faca09d14fea7.tar.zst} +0 -0
- /package/.turbo/cache/{5a66a99aa1344401.tar.zst → 75495b0bbd6c06a7.tar.zst} +0 -0
- /package/.turbo/cache/{a532f4b8302ca13e.tar.zst → 7eb50d96639e6dd4.tar.zst} +0 -0
- /package/.turbo/cache/{1de685df0eaa39c8.tar.zst → 83bb78fec13808d0.tar.zst} +0 -0
- /package/.turbo/cache/{2900e7ec28e1488f.tar.zst → 892a90b62716ded5.tar.zst} +0 -0
- /package/.turbo/cache/{d5188c0fbe45d578.tar.zst → 8cac06ca809bd2b1.tar.zst} +0 -0
- /package/.turbo/cache/{451e562c76f74ec6.tar.zst → 9a908bf8f82c84a6.tar.zst} +0 -0
- /package/.turbo/cache/{144e8e78657bf800.tar.zst → 9ed3089ffd7d0c00.tar.zst} +0 -0
- /package/.turbo/cache/{4520919609c97850.tar.zst → a3a879aea25debf8.tar.zst} +0 -0
- /package/.turbo/cache/{33466ea2930c3714.tar.zst → a8f6418b830ef0ba.tar.zst} +0 -0
- /package/.turbo/cache/{b61416daf63fbaad.tar.zst → b37b0eb5597e160f.tar.zst} +0 -0
- /package/.turbo/cache/{29e29355bf6fb4fd.tar.zst → b7e7a8c425673f7c.tar.zst} +0 -0
- /package/.turbo/cache/{3073b96f6e4d867c.tar.zst → bc8eed3d7216f5b7.tar.zst} +0 -0
- /package/.turbo/cache/{d35b1eee9f2881af.tar.zst → bde11c3029373459.tar.zst} +0 -0
- /package/.turbo/cache/{e4b3ec56d4ae56ba.tar.zst → d0e874a9a71c9468.tar.zst} +0 -0
- /package/.turbo/cache/{8b7cdb9a0d4c3112.tar.zst → d61b4e1bde4c0a12.tar.zst} +0 -0
- /package/.turbo/cache/{b9463532618cdc61.tar.zst → e541225f46f7cf86.tar.zst} +0 -0
- /package/.turbo/cache/{897b0d8a0c301207.tar.zst → e7244fdd3397eba7.tar.zst} +0 -0
- /package/.turbo/cache/{c63dc7b6157da70b.tar.zst → e7cf2cc625bd92b3.tar.zst} +0 -0
- /package/.turbo/cache/{c8b63b6e8a190eb9.tar.zst → e89a401ebdda3fc2.tar.zst} +0 -0
|
@@ -32,6 +32,12 @@ function auroMenuCustomEventExample() {
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
function auroMenuLoadingExample() {
|
|
36
|
+
document.querySelector("#loadingExampleToggleButton").addEventListener("click", () => {
|
|
37
|
+
document.querySelectorAll("#loadingExampleTable auro-menu").forEach(menu => menu.toggleAttribute("loading"));
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
35
41
|
/**
|
|
36
42
|
* @license
|
|
37
43
|
* Copyright 2019 Google LLC
|
|
@@ -58,7 +64,7 @@ const t$1=globalThis,i$3=t$1.trustedTypes,s$1=i$3?i$3.createPolicy("lit-html",{c
|
|
|
58
64
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
59
65
|
*/class r extends b{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0;}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const s=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=B(s,this.renderRoot,this.renderOptions);}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0);}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1);}render(){return T}}r._$litElement$=!0,r["finalized"]=!0,globalThis.litElementHydrateSupport?.({LitElement:r});const i$2=globalThis.litElementPolyfillSupport;i$2?.({LitElement:r});(globalThis.litElementVersions??=[]).push("4.1.1");
|
|
60
66
|
|
|
61
|
-
var styleCss$2 = i$5`:root{--ds-asset-font-circular-family-name: "AS Circular";--ds-asset-font-circular-filename: "ASCircularWeb";--ds-asset-font-circular-weight-light: "-Light";--ds-asset-font-circular-weight-medium: "-Medium";--ds-asset-font-circular-weight-book: "-Book";--ds-border-radius: 0.375rem;--ds-size-25: 0.125rem;--ds-size-50: 0.25rem;--ds-size-75: 0.375rem;--ds-size-100: 0.5rem;--ds-size-150: 0.75rem;--ds-size-200: 1rem;--ds-size-250: 1.25rem;--ds-size-300: 1.5rem;--ds-size-400: 2rem;--ds-size-500: 2.5rem;--ds-size-600: 3rem;--ds-size-700: 3.5rem;--ds-size-800: 4rem;--ds-size-900: 4.5rem;--ds-size-1000: 5rem;--ds-unitless-scale-20: 0.25;--ds-unitless-scale-50: 0.5;--ds-unitless-scale-100: 1;--ds-unitless-scale-140: 1.4;--ds-unitless-scale-150: 1.5;--ds-unitless-scale-200: 2;--ds-unitless-scale-300: 3;--ds-unitless-scale-350: 3.5;--ds-animation-default-property: all;--ds-animation-default-duration: 0.3s;--ds-animation-default-timing: ease-out;--ds-depth-overlay: 200;--ds-depth-modal: 300;--ds-depth-tooltip: 400;--ds-elevation-100: 0px 0px 5px rgba(0, 0, 0, 0.15);--ds-elevation-200: 0px 0px 10px rgba(0, 0, 0, 0.15);--ds-elevation-300: 0px 0px 15px rgba(0, 0, 0, 0.2);--ds-grid-breakpoint-xs: 320px;--ds-grid-breakpoint-sm: 576px;--ds-grid-breakpoint-md: 768px;--ds-grid-breakpoint-lg: 1024px;--ds-grid-breakpoint-xl: 1232px;--ds-grid-column-xs: 6;--ds-grid-column-sm: 12;--ds-grid-column-md: 12;--ds-grid-column-lg: 12;--ds-grid-column-xl: 12;--ds-grid-gutter-xs: 0.5rem;--ds-grid-gutter-sm: 1rem;--ds-grid-gutter-md: 1.5rem;--ds-grid-gutter-lg: 1.5rem;--ds-grid-gutter-xl: 2rem;--ds-grid-margin-xs: 1rem;--ds-grid-margin-sm: 1rem;--ds-grid-margin-md: 1.5rem;--ds-grid-margin-lg: 2rem;--ds-grid-margin-xl: 2rem;--ds-font-family-default: "AS Circular", Helvetica Neue, Arial, sans-serif;--ds-font-family-mono: Menlo, Monaco, Consolas, "Courier New", monospace;--ds-text-heading-300-weight: 300;--ds-text-heading-300-px: 18px;--ds-text-heading-300-size: 1.125rem;--ds-text-heading-300-height: 1.625rem;--ds-text-heading-300-height-px: 26px;--ds-text-heading-400-weight: 300;--ds-text-heading-400-px: 20px;--ds-text-heading-400-size: 1.25rem;--ds-text-heading-400-height: 1.625rem;--ds-text-heading-400-height-px: 26px;--ds-text-heading-500-weight: 300;--ds-text-heading-500-px-breakpoint-sm: 22px;--ds-text-heading-500-px-breakpoint-md: 24px;--ds-text-heading-500-px-breakpoint-lg: 24px;--ds-text-heading-500-size-breakpoint-sm: 1.375rem;--ds-text-heading-500-size-breakpoint-md: 1.5rem;--ds-text-heading-500-size-breakpoint-lg: 1.5rem;--ds-text-heading-500-height-breakpoint-sm: 1.625rem;--ds-text-heading-500-height-breakpoint-px-sm: 26px;--ds-text-heading-500-height-breakpoint-md: 1.875rem;--ds-text-heading-500-height-breakpoint-px-md: 30px;--ds-text-heading-500-height-breakpoint-lg: 2rem;--ds-text-heading-500-height-breakpoint-px-lg: 32px;--ds-text-heading-600-weight: 300;--ds-text-heading-600-px-breakpoint-sm: 26px;--ds-text-heading-600-px-breakpoint-md: 28px;--ds-text-heading-600-px-breakpoint-lg: 28px;--ds-text-heading-600-size-breakpoint-sm: 1.625rem;--ds-text-heading-600-size-breakpoint-md: 1.75rem;--ds-text-heading-600-size-breakpoint-lg: 1.75rem;--ds-text-heading-600-height-breakpoint-sm: 1.875rem;--ds-text-heading-600-height-breakpoint-px-sm: 30px;--ds-text-heading-600-height-breakpoint-md: 2.125rem;--ds-text-heading-600-height-breakpoint-px-md: 34px;--ds-text-heading-600-height-breakpoint-lg: 2.25rem;--ds-text-heading-600-height-breakpoint-px-lg: 36px;--ds-text-heading-700-weight: 500;--ds-text-heading-700-px-breakpoint-sm: 28px;--ds-text-heading-700-px-breakpoint-md: 32px;--ds-text-heading-700-px-breakpoint-lg: 36px;--ds-text-heading-700-size-breakpoint-sm: 1.75rem;--ds-text-heading-700-size-breakpoint-md: 2rem;--ds-text-heading-700-size-breakpoint-lg: 2.25rem;--ds-text-heading-700-height-breakpoint-sm: 2.125rem;--ds-text-heading-700-height-breakpoint-px-sm: 34px;--ds-text-heading-700-height-breakpoint-md: 2.375rem;--ds-text-heading-700-height-breakpoint-px-md: 38px;--ds-text-heading-700-height-breakpoint-lg: 2.75rem;--ds-text-heading-700-height-breakpoint-px-lg: 44px;--ds-text-heading-800-weight: 500;--ds-text-heading-800-px-breakpoint-sm: 32px;--ds-text-heading-800-px-breakpoint-md: 36px;--ds-text-heading-800-px-breakpoint-lg: 40px;--ds-text-heading-800-size-breakpoint-sm: 2rem;--ds-text-heading-800-size-breakpoint-md: 2.25rem;--ds-text-heading-800-size-breakpoint-lg: 2.5rem;--ds-text-heading-800-height-breakpoint-sm: 2.375rem;--ds-text-heading-800-height-breakpoint-px-sm: 38px;--ds-text-heading-800-height-breakpoint-md: 2.625rem;--ds-text-heading-800-height-breakpoint-px-md: 42px;--ds-text-heading-800-height-breakpoint-lg: 3rem;--ds-text-heading-800-height-breakpoint-px-lg: 48px;--ds-text-heading-default-weight: 500;--ds-text-heading-default-margin: 0;--ds-text-heading-default-spacing: -0.2px;--ds-text-heading-medium-weight: 300;--ds-text-heading-display-weight: 100;--ds-text-heading-display-px-breakpoint-sm: 44px;--ds-text-heading-display-px-breakpoint-md: 48px;--ds-text-heading-display-px-breakpoint-lg: 56px;--ds-text-heading-display-size-breakpoint-sm: 2.75rem;--ds-text-heading-display-size-breakpoint-md: 3rem;--ds-text-heading-display-size-breakpoint-lg: 3.5rem;--ds-text-heading-display-height-breakpoint-sm: 3.375rem;--ds-text-heading-display-height-breakpoint-px-sm: 54px;--ds-text-heading-display-height-breakpoint-md: 3.75rem;--ds-text-heading-display-height-breakpoint-px-md: 60px;--ds-text-heading-display-height-breakpoint-lg: 4.25rem;--ds-text-heading-display-height-breakpoint-px-lg: 68px;--ds-text-body-default-weight: 500;--ds-text-body-size-xxs: 0.625rem;--ds-text-body-size-xs: 0.75rem;--ds-text-body-size-sm: 0.875rem;--ds-text-body-size-default: 1rem;--ds-text-body-size-lg: 1.125rem;--ds-text-body-height-xs: 1rem;--ds-text-body-height-sm: 1.25rem;--ds-text-body-height-default: 1.5rem;--ds-text-body-height-lg: 1.625rem;--ds-color-alert-notification-default: #0074c8;--ds-color-alert-warning-default: #de750c;--ds-color-alert-error-default: #df0b37;--ds-color-alert-success-default: #00805d;--ds-color-alert-advisory-default: #fff0cd;--ds-color-alert-bkg-success-default: #ddf6e8;--ds-color-alert-bkg-error-default: #ffedf1;--ds-color-background-primary-100-default: #ffffff;--ds-color-background-primary-100-inverse: #0e2b4f;--ds-color-background-primary-200-default: #f7f7f7;--ds-color-background-primary-200-inverse: #194069;--ds-color-background-primary-300-default: #e4e8ec;--ds-color-background-primary-300-inverse: #265688;--ds-color-background-primary-400-default: #dddddd;--ds-color-background-primary-400-inverse: #326aa5;--ds-color-background-success-default: #eef8f5;--ds-color-background-success-inverse: #173c30;--ds-color-background-error-default: #fff4f4;--ds-color-background-error-inverse: #74110e;--ds-color-background-warning-default: #fef8e9;--ds-color-background-warning-inverse: #5d4514;--ds-color-background-info-default: #f0f7fd;--ds-color-background-info-inverse: #193d73;--ds-color-background-subtle-default: #f7f8fa;--ds-color-background-subtle-inverse: #2a2a2a;--ds-color-background-accent-default: #ebfafd;--ds-color-background-accent-inverse: #275b72;--ds-color-background-emphasis-default: #c9e0f7;--ds-color-background-emphasis-inverse: #225296;--ds-color-background-scrimmed-default: rgba(0, 0, 0, 0.5);--ds-color-background-lightest: #ffffff;--ds-color-background-lighter: #f7f7f7;--ds-color-background-darker: #01426a;--ds-color-background-darkest: #00274a;--ds-color-background-gradient-default: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.5));--ds-color-base-white: #ffffff;--ds-color-base-white-100: rgba(255, 255, 255, 0.03);--ds-color-base-white-200: rgba(255, 255, 255, 0.06);--ds-color-base-white-300: rgba(255, 255, 255, 0.12);--ds-color-base-white-400: rgba(255, 255, 255, 0.25);--ds-color-base-white-500: rgba(255, 255, 255, 0.5);--ds-color-base-white-opacity-50: rgba(255, 255, 255, 0.5);--ds-color-base-white-opacity-40: rgba(255, 255, 255, 0.4);--ds-color-base-white-opacity-0: rgba(255, 255, 255, 0);--ds-color-base-black: #000000;--ds-color-base-black-100: rgba(0, 0, 0, 0.03);--ds-color-base-black-200: rgba(0, 0, 0, 0.06);--ds-color-base-black-300: rgba(0, 0, 0, 0.12);--ds-color-base-black-400: rgba(0, 0, 0, 0.25);--ds-color-base-black-500: rgba(0, 0, 0, 0.5);--ds-color-base-black-opacity-15: rgba(0, 0, 0, 0.15);--ds-color-base-blue-100: #f0f7fd;--ds-color-base-blue-200: #c9e0f7;--ds-color-base-blue-300: #a0c9f1;--ds-color-base-blue-400: #79b2ec;--ds-color-base-blue-500: #5398e6;--ds-color-base-blue-600: #3b7fd2;--ds-color-base-blue-700: #2c67b5;--ds-color-base-blue-800: #225296;--ds-color-base-blue-900: #193d73;--ds-color-base-blue-1000: #102a51;--ds-color-base-cyan-100: #ebfafd;--ds-color-base-cyan-200: #a8e9f7;--ds-color-base-cyan-300: #6ad5ef;--ds-color-base-cyan-400: #56bbde;--ds-color-base-cyan-500: #4aa2c7;--ds-color-base-cyan-600: #3e89aa;--ds-color-base-cyan-700: #32718e;--ds-color-base-cyan-800: #275b72;--ds-color-base-cyan-900: #1d4658;--ds-color-base-cyan-1000: #12303d;--ds-color-base-error-100: #fff4f4;--ds-color-base-error-200: #f9aca6;--ds-color-base-error-300: #f16359;--ds-color-base-error-400: #cc1816;--ds-color-base-error-500: #74110e;--ds-color-base-gray-100: #f7f7f7;--ds-color-base-gray-200: #d4d4d4;--ds-color-base-gray-300: #c5c5c5;--ds-color-base-gray-400: #adadad;--ds-color-base-gray-500: #959595;--ds-color-base-gray-600: #7e7e7e;--ds-color-base-gray-700: #676767;--ds-color-base-gray-800: #525252;--ds-color-base-gray-900: #3d3d3d;--ds-color-base-gray-1000: #2a2a2a;--ds-color-base-green-100: #f3faf7;--ds-color-base-green-200: #000000;--ds-color-base-green-300: #addbca;--ds-color-base-green-400: #7ec6ac;--ds-color-base-green-500: #51ae8c;--ds-color-base-green-600: #459578;--ds-color-base-green-700: #3a7d64;--ds-color-base-green-800: #306854;--ds-color-base-green-900: #285545;--ds-color-base-green-1000: #1f4436;--ds-color-base-lime-100: #f5fbeb;--ds-color-base-lime-200: #d8efb4;--ds-color-base-lime-300: #badd81;--ds-color-base-lime-400: #a2c270;--ds-color-base-lime-500: #8ca761;--ds-color-base-lime-600: #778f53;--ds-color-base-lime-700: #647845;--ds-color-base-lime-800: #53643a;--ds-color-base-lime-900: #44522f;--ds-color-base-lime-1000: #364126;--ds-color-base-navy-100: #f2f7fb;--ds-color-base-navy-200: #cfe0ef;--ds-color-base-navy-300: #acc9e2;--ds-color-base-navy-400: #89b2d4;--ds-color-base-navy-500: #6899c6;--ds-color-base-navy-600: #4a82b7;--ds-color-base-navy-700: #326aa5;--ds-color-base-navy-800: #265688;--ds-color-base-navy-900: #194069;--ds-color-base-navy-1000: #0e2b4f;--ds-color-base-neutral-100: #f7f8fa;--ds-color-base-neutral-200: #e4e8ec;--ds-color-base-neutral-300: #ccd2db;--ds-color-base-neutral-400: #afb9c6;--ds-color-base-neutral-500: #939fad;--ds-color-base-neutral-600: #7e8894;--ds-color-base-neutral-700: #6a717c;--ds-color-base-neutral-800: #585e67;--ds-color-base-neutral-900: #484d55;--ds-color-base-neutral-1000: #393d43;--ds-color-base-pink-100: #fff7f8;--ds-color-base-pink-200: #fde0e6;--ds-color-base-pink-300: #fcc2ce;--ds-color-base-pink-400: #fa9db0;--ds-color-base-pink-500: #f7738e;--ds-color-base-pink-600: #e45472;--ds-color-base-pink-700: #bf475f;--ds-color-base-pink-800: #a03b50;--ds-color-base-pink-900: #833142;--ds-color-base-pink-1000: #692734;--ds-color-base-purple-100: #fbf8fe;--ds-color-base-purple-200: #ede3fd;--ds-color-base-purple-300: #ddc9fb;--ds-color-base-purple-400: #c9a9f8;--ds-color-base-purple-500: #b588f5;--ds-color-base-purple-600: #a268f3;--ds-color-base-purple-700: #8d47f0;--ds-color-base-purple-800: #7633d7;--ds-color-base-purple-900: #622ab2;--ds-color-base-purple-1000: #4e228d;--ds-color-base-red-100: #fef7f5;--ds-color-base-red-200: #fae2da;--ds-color-base-red-300: #f5c7b8;--ds-color-base-red-400: #f0a68d;--ds-color-base-red-500: #e9815e;--ds-color-base-red-600: #e35c2f;--ds-color-base-red-700: #d03a08;--ds-color-base-red-800: #ae3007;--ds-color-base-red-900: #902806;--ds-color-base-red-1000: #732005;--ds-color-base-success-100: #eef8f5;--ds-color-base-success-200: #8eceb9;--ds-color-base-success-300: #40a080;--ds-color-base-success-400: #0b6f4d;--ds-color-base-success-500: #173c30;--ds-color-base-turquoise-100: #f7fafa;--ds-color-base-turquoise-200: #dfe9ea;--ds-color-base-turquoise-300: #c2d5d6;--ds-color-base-turquoise-400: #9fbdbe;--ds-color-base-turquoise-500: #7ba5a6;--ds-color-base-turquoise-600: #5c8f91;--ds-color-base-turquoise-700: #3d7a7d;--ds-color-base-turquoise-800: #21686a;--ds-color-base-turquoise-900: #085659;--ds-color-base-turquoise-1000: #004447;--ds-color-base-yellow-100: #fff9df;--ds-color-base-yellow-200: #ffe87e;--ds-color-base-yellow-300: #f9ce06;--ds-color-base-yellow-400: #d6b622;--ds-color-base-yellow-500: #b49d35;--ds-color-base-yellow-600: #96873e;--ds-color-base-yellow-700: #7c7140;--ds-color-base-yellow-800: #665e3d;--ds-color-base-yellow-900: #524e38;--ds-color-base-yellow-1000: #403d30;--ds-color-base-warning-100: #fef8e9;--ds-color-base-warning-200: #f2c153;--ds-color-base-warning-300: #c49432;--ds-color-base-warning-400: #8e6b22;--ds-color-base-warning-500: #5d4514;--ds-color-state-error-100: #ff999b;--ds-color-state-error-500: #df0b37;--ds-color-state-success-100: #69cf96;--ds-color-state-success-500: #00805d;--ds-color-state-warning-500: #de750c;--ds-color-border-primary-default: #585e67;--ds-color-border-primary-inverse: #afb9c6;--ds-color-border-secondary-default: #939fad;--ds-color-border-secondary-inverse: #7e8894;--ds-color-border-tertiary-default: #dddddd;--ds-color-border-tertiary-inverse: #676767;--ds-color-border-error-default: #cc1816;--ds-color-border-error-inverse: #f9aca6;--ds-color-border-divider-default: rgba(0, 0, 0, 0.12);--ds-color-border-divider-inverse: rgba(255, 255, 255, 0.25);--ds-color-border-subtle-default: #f0f7fd;--ds-color-border-subtle-inverse: #326aa5;--ds-color-border-emphasis-default: #194069;--ds-color-border-emphasis-inverse: #f2f7fb;--ds-color-border-accent-default: #badd81;--ds-color-border-accent-inverse: #a2c270;--ds-color-border-success-default: #0b6f4d;--ds-color-border-success-inverse: #8eceb9;--ds-color-border-warning-default: #c49432;--ds-color-border-warning-inverse: #f2c153;--ds-color-border-info-default: #326aa5;--ds-color-border-info-inverse: #89b2d4;--ds-color-border-ui-default-default: #2c67b5;--ds-color-border-ui-default-inverse: #56bbde;--ds-color-border-ui-hover-default: #193d73;--ds-color-border-ui-hover-inverse: #a8e9f7;--ds-color-border-ui-active-default: #225296;--ds-color-border-ui-active-inverse: #6ad5ef;--ds-color-border-ui-focus-default: #2c67b5;--ds-color-border-ui-focus-inverse: #56bbde;--ds-color-border-ui-disabled-default: #adadad;--ds-color-border-ui-disabled-inverse: #7e7e7e;--ds-color-border-active-default: #0074c8;--ds-color-border-active-inverse: #00cff0;--ds-color-border-disabled-default: #d4d4d4;--ds-color-border-focus-default: #959595;--ds-color-brand-neutral-100: #f7f8fa;--ds-color-brand-neutral-200: #e4e8ec;--ds-color-brand-neutral-300: #ccd2db;--ds-color-brand-neutral-400: #afb9c6;--ds-color-brand-neutral-500: #939fad;--ds-color-brand-neutral-600: #7e8894;--ds-color-brand-neutral-700: #6a717c;--ds-color-brand-neutral-800: #585e67;--ds-color-brand-neutral-900: #484d55;--ds-color-brand-neutral-1000: #393d43;--ds-color-brand-gray-100: #f7f7f7;--ds-color-brand-gray-200: #dddddd;--ds-color-brand-gray-300: #c5c5c5;--ds-color-brand-gray-400: #adadad;--ds-color-brand-gray-500: #959595;--ds-color-brand-gray-600: #7e7e7e;--ds-color-brand-gray-700: #676767;--ds-color-brand-gray-800: #525252;--ds-color-brand-gray-900: #3d3d3d;--ds-color-brand-gray-1000: #2a2a2a;--ds-color-brand-red-100: #fef7f5;--ds-color-brand-red-200: #fae2da;--ds-color-brand-red-300: #f5c7b8;--ds-color-brand-red-400: #f0a68d;--ds-color-brand-red-500: #e9815e;--ds-color-brand-red-600: #e35c2f;--ds-color-brand-red-700: #d03a08;--ds-color-brand-red-800: #ae3007;--ds-color-brand-red-900: #902806;--ds-color-brand-red-1000: #732005;--ds-color-brand-yellow-100: #fff9df;--ds-color-brand-yellow-200: #ffe87e;--ds-color-brand-yellow-300: #f9ce06;--ds-color-brand-yellow-400: #d6b622;--ds-color-brand-yellow-500: #b49d35;--ds-color-brand-yellow-600: #96873e;--ds-color-brand-yellow-700: #7c7140;--ds-color-brand-yellow-800: #665e3d;--ds-color-brand-yellow-900: #524e38;--ds-color-brand-yellow-1000: #403d30;--ds-color-brand-lime-100: #f5fbeb;--ds-color-brand-lime-200: #d8efb4;--ds-color-brand-lime-300: #badd81;--ds-color-brand-lime-400: #a2c270;--ds-color-brand-lime-500: #8ca761;--ds-color-brand-lime-600: #778f53;--ds-color-brand-lime-700: #647845;--ds-color-brand-lime-800: #53643a;--ds-color-brand-lime-900: #44522f;--ds-color-brand-lime-1000: #364126;--ds-color-brand-green-100: #f3faf7;--ds-color-brand-green-200: #d4ece4;--ds-color-brand-green-300: #addbca;--ds-color-brand-green-400: #7ec6ac;--ds-color-brand-green-500: #51ae8c;--ds-color-brand-green-600: #459578;--ds-color-brand-green-700: #3a7d64;--ds-color-brand-green-800: #306854;--ds-color-brand-green-900: #285545;--ds-color-brand-green-1000: #1f4436;--ds-color-brand-turquoise-100: #f7fafa;--ds-color-brand-turquoise-200: #dfe9ea;--ds-color-brand-turquoise-300: #c2d5d6;--ds-color-brand-turquoise-400: #9fbdbe;--ds-color-brand-turquoise-500: #7ba5a6;--ds-color-brand-turquoise-600: #5c8f91;--ds-color-brand-turquoise-700: #3d7a7d;--ds-color-brand-turquoise-800: #21686a;--ds-color-brand-turquoise-900: #085659;--ds-color-brand-turquoise-1000: #004447;--ds-color-brand-cyan-100: #ebfafd;--ds-color-brand-cyan-200: #a8e9f7;--ds-color-brand-cyan-300: #6ad5ef;--ds-color-brand-cyan-400: #56bbde;--ds-color-brand-cyan-500: #4aa2c7;--ds-color-brand-cyan-600: #3e89aa;--ds-color-brand-cyan-700: #32718e;--ds-color-brand-cyan-800: #275b72;--ds-color-brand-cyan-900: #1d4658;--ds-color-brand-cyan-1000: #12303d;--ds-color-brand-blue-100: #f0f7fd;--ds-color-brand-blue-200: #c9e0f7;--ds-color-brand-blue-300: #a0c9f1;--ds-color-brand-blue-400: #79b2ec;--ds-color-brand-blue-500: #5398e6;--ds-color-brand-blue-600: #3b7fd2;--ds-color-brand-blue-700: #2c67b5;--ds-color-brand-blue-800: #225296;--ds-color-brand-blue-900: #193d73;--ds-color-brand-blue-1000: #102a51;--ds-color-brand-navy-100: #f2f7fb;--ds-color-brand-navy-200: #cfe0ef;--ds-color-brand-navy-300: #acc9e2;--ds-color-brand-navy-400: #89b2d4;--ds-color-brand-navy-500: #6899c6;--ds-color-brand-navy-600: #4a82b7;--ds-color-brand-navy-700: #326aa5;--ds-color-brand-navy-800: #265688;--ds-color-brand-navy-900: #194069;--ds-color-brand-navy-1000: #0e2b4f;--ds-color-brand-purple-100: #fbf8fe;--ds-color-brand-purple-200: #ede3fd;--ds-color-brand-purple-300: #ddc9fb;--ds-color-brand-purple-400: #c9a9f8;--ds-color-brand-purple-500: #b588f5;--ds-color-brand-purple-600: #a268f3;--ds-color-brand-purple-700: #8d47f0;--ds-color-brand-purple-800: #7633d7;--ds-color-brand-purple-900: #622ab2;--ds-color-brand-purple-1000: #4e228d;--ds-color-brand-pink-100: #fff7f8;--ds-color-brand-pink-200: #fde0e6;--ds-color-brand-pink-300: #fcc2ce;--ds-color-brand-pink-400: #fa9db0;--ds-color-brand-pink-500: #f7738e;--ds-color-brand-pink-600: #e45472;--ds-color-brand-pink-700: #bf475f;--ds-color-brand-pink-800: #a03b50;--ds-color-brand-pink-900: #833142;--ds-color-brand-pink-1000: #692734;--ds-color-brand-midnight-100: #c1daf0;--ds-color-brand-midnight-200: #569ed7;--ds-color-brand-midnight-300: #156fad;--ds-color-brand-midnight-400: #01426a;--ds-color-brand-midnight-500: #00274a;--ds-color-brand-atlas-100: #cde6ff;--ds-color-brand-atlas-200: #6bb7fb;--ds-color-brand-atlas-300: #2492eb;--ds-color-brand-atlas-400: #0074c8;--ds-color-brand-atlas-500: #054687;--ds-color-brand-atlas-400-opacity-20: rgba(0, 116, 200, 0.2);--ds-color-brand-breeze-100: #c0f7ff;--ds-color-brand-breeze-200: #5de3f7;--ds-color-brand-breeze-300: #00cff0;--ds-color-brand-breeze-400: #099dc5;--ds-color-brand-breeze-500: #0b5575;--ds-color-brand-breeze-300-opacity-30: rgba(0, 207, 240, 0.3);--ds-color-brand-tropical-100: #e2ffcd;--ds-color-brand-tropical-200: #d0fba6;--ds-color-brand-tropical-300: #c0e585;--ds-color-brand-tropical-400: #91be62;--ds-color-brand-tropical-500: #5e8741;--ds-color-brand-alpine-100: #bcaae6;--ds-color-brand-alpine-200: #9e73ea;--ds-color-brand-alpine-300: #8439ef;--ds-color-brand-alpine-400: #631db8;--ds-color-brand-alpine-500: #39115c;--ds-color-brand-flamingo-100: #ffebee;--ds-color-brand-flamingo-200: #ffc0ca;--ds-color-brand-flamingo-300: #ff94a7;--ds-color-brand-flamingo-400: #f65b7b;--ds-color-brand-flamingo-500: #b82b47;--ds-color-brand-canyon-100: #ffcab6;--ds-color-brand-canyon-200: #f99574;--ds-color-brand-canyon-300: #f26135;--ds-color-brand-canyon-400: #de3e09;--ds-color-brand-canyon-500: #b83302;--ds-color-brand-goldcoast-100: #fff0cd;--ds-color-brand-goldcoast-200: #ffdb67;--ds-color-brand-goldcoast-300: #ffd200;--ds-color-brand-goldcoast-400: #e5ad07;--ds-color-brand-goldcoast-500: #b88624;--ds-color-brand-goldgray-100: #c5c1bf;--ds-color-brand-goldgray-200: #726e6c;--ds-color-brand-gold-100: #ccbc94;--ds-color-brand-gold-200: #7f682e;--ds-color-brand-emerald: #139142;--ds-color-brand-sapphire: #015daa;--ds-color-brand-ruby: #a41d4a;--ds-color-brand-lounge: #01426a;--ds-color-brand-loungeplus: #53b390;--ds-color-container-accent-default: #f5fbeb;--ds-color-container-accent-inverse: #badd81;--ds-color-container-emphasis-default: #ebfafd;--ds-color-container-emphasis-inverse: #6ad5ef;--ds-color-container-error-default: #fff4f4;--ds-color-container-error-inverse: #74110e;--ds-color-container-info-default: #f0f7fd;--ds-color-container-info-inverse: #193d73;--ds-color-container-primary-default: #ffffff;--ds-color-container-primary-inverse: #0e2b4f;--ds-color-container-secondary-default: #f7f7f7;--ds-color-container-secondary-inverse: #194069;--ds-color-container-subtle-default: #f7f8fa;--ds-color-container-subtle-inverse: #393d43;--ds-color-container-success-default: #eef8f5;--ds-color-container-success-inverse: #173c30;--ds-color-container-tertiary-default: rgba(0, 0, 0, 0.03);--ds-color-container-tertiary-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-warning-default: #fef8e9;--ds-color-container-warning-inverse: #5d4514;--ds-color-container-ui-primary-active-default: #225296;--ds-color-container-ui-primary-active-inverse: #6ad5ef;--ds-color-container-ui-primary-default-default: #2c67b5;--ds-color-container-ui-primary-default-inverse: #56bbde;--ds-color-container-ui-primary-disabled-default: #a0c9f1;--ds-color-container-ui-primary-disabled-inverse: #275b72;--ds-color-container-ui-primary-focus-default: #2c67b5;--ds-color-container-ui-primary-focus-inverse: #56bbde;--ds-color-container-ui-primary-hover-default: #193d73;--ds-color-container-ui-primary-hover-inverse: #a8e9f7;--ds-color-container-ui-secondary-active-default: #f0f7fd;--ds-color-container-ui-secondary-active-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-ui-secondary-default-default: #ffffff;--ds-color-container-ui-secondary-default-inverse: rgba(255, 255, 255, 0.03);--ds-color-container-ui-secondary-disabled-default: #f7f7f7;--ds-color-container-ui-secondary-disabled-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-secondary-focus-default: #ffffff;--ds-color-container-ui-secondary-focus-inverse: rgba(255, 255, 255, 0.03);--ds-color-container-ui-secondary-hover-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-secondary-hover-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-active-default: rgba(0, 0, 0, 0.06);--ds-color-container-ui-tertiary-active-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-ui-tertiary-default-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-default-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-disabled-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-disabled-inverse: rgba(255, 255, 255, 0.25);--ds-color-container-ui-tertiary-focus-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-focus-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-hover-default: rgba(0, 0, 0, 0.12);--ds-color-container-ui-tertiary-hover-inverse: rgba(255, 255, 255, 0.25);--ds-color-icon-primary-default: #676767;--ds-color-icon-primary-inverse: #f7f7f7;--ds-color-icon-secondary-default: #7e8894;--ds-color-icon-secondary-inverse: #ccd2db;--ds-color-icon-tertiary-default: #afb9c6;--ds-color-icon-tertiary-inverse: #939fad;--ds-color-icon-emphasis-default: #2a2a2a;--ds-color-icon-emphasis-inverse: #ffffff;--ds-color-icon-accent-default: #a2c270;--ds-color-icon-accent-inverse: #badd81;--ds-color-icon-info-default: #326aa5;--ds-color-icon-info-inverse: #89b2d4;--ds-color-icon-error-default: #cc1816;--ds-color-icon-error-inverse: #f9aca6;--ds-color-icon-warning-default: #c49432;--ds-color-icon-warning-inverse: #f2c153;--ds-color-icon-success-default: #40a080;--ds-color-icon-success-inverse: #8eceb9;--ds-color-icon-subtle-default: #a0c9f1;--ds-color-icon-subtle-inverse: #326aa5;--ds-color-icon-ui-primary-default-default: #2c67b5;--ds-color-icon-ui-primary-default-inverse: #56bbde;--ds-color-icon-ui-primary-hover-default: #193d73;--ds-color-icon-ui-primary-hover-inverse: #a8e9f7;--ds-color-icon-ui-primary-active-default: #225296;--ds-color-icon-ui-primary-active-inverse: #6ad5ef;--ds-color-icon-ui-primary-disabled-default: #adadad;--ds-color-icon-ui-primary-disabled-inverse: #7e7e7e;--ds-color-icon-ui-primary-focus-default: #2c67b5;--ds-color-icon-ui-primary-focus-inverse: #56bbde;--ds-color-icon-ui-secondary-active-default: #676767;--ds-color-icon-ui-secondary-active-inverse: #c5c5c5;--ds-color-icon-ui-secondary-default-default: #7e7e7e;--ds-color-icon-ui-secondary-default-inverse: #adadad;--ds-color-icon-ui-secondary-disabled-default: #adadad;--ds-color-icon-ui-secondary-disabled-inverse: #7e7e7e;--ds-color-icon-ui-secondary-focus-default: #7e7e7e;--ds-color-icon-ui-secondary-focus-inverse: #adadad;--ds-color-icon-ui-secondary-hover-default: #525252;--ds-color-icon-ui-secondary-hover-inverse: #dddddd;--ds-color-icon-brand-red-default: #d03a08;--ds-color-icon-brand-red-inverse: #e9815e;--ds-color-icon-brand-yellow-default: #7c7140;--ds-color-icon-brand-yellow-inverse: #f9ce06;--ds-color-icon-brand-pink-default: #bf475f;--ds-color-icon-brand-pink-inverse: #f7738e;--ds-color-icon-brand-purple-default: #8d47f0;--ds-color-icon-brand-purple-inverse: #b588f5;--ds-color-icon-brand-lime-default: #647845;--ds-color-icon-brand-lime-inverse: #badd81;--ds-color-icon-brand-green-default: #3a7d64;--ds-color-icon-brand-green-inverse: #51ae8c;--ds-color-icon-brand-turquoise-default: #3d7a7d;--ds-color-icon-brand-turquoise-inverse: #7ba5a6;--ds-color-icon-brand-navy-default: #265688;--ds-color-icon-brand-navy-inverse: #6899c6;--ds-color-icon-brand-blue-default: #2c67b5;--ds-color-icon-brand-blue-inverse: #5398e6;--ds-color-icon-brand-cyan-default: #32718e;--ds-color-icon-brand-cyan-inverse: #6ad5ef;--ds-color-icon-brand-gray-default: #676767;--ds-color-icon-brand-gray-inverse: #c5c5c5;--ds-color-icon-brand-neutral-default: #6a717c;--ds-color-icon-brand-neutral-inverse: #afb9c6;--ds-color-icon-disabled-default: rgba(0, 0, 0, 0.15);--ds-color-text-primary-default: #2a2a2a;--ds-color-text-primary-inverse: #ffffff;--ds-color-text-secondary-default: #525252;--ds-color-text-secondary-inverse: #dddddd;--ds-color-text-tertiary-default: #6a717c;--ds-color-text-tertiary-inverse: #adadad;--ds-color-text-error-default: #cc1816;--ds-color-text-error-inverse: #f9aca6;--ds-color-text-emphasis-default: #265688;--ds-color-text-emphasis-inverse: #cfe0ef;--ds-color-text-accent-default: #647845;--ds-color-text-accent-inverse: #badd81;--ds-color-text-info-default: #326aa5;--ds-color-text-info-inverse: #acc9e2;--ds-color-text-subtle-default: #32718e;--ds-color-text-subtle-inverse: #56bbde;--ds-color-text-success-default: #0b6f4d;--ds-color-text-success-inverse: #8eceb9;--ds-color-text-ui-active-default: #225296;--ds-color-text-ui-active-inverse: #6ad5ef;--ds-color-text-ui-default-default: #2c67b5;--ds-color-text-ui-default-inverse: #56bbde;--ds-color-text-ui-disabled-default: #adadad;--ds-color-text-ui-disabled-inverse: #7e7e7e;--ds-color-text-ui-focus-default: #2c67b5;--ds-color-text-ui-focus-inverse: #56bbde;--ds-color-text-ui-hover-default: #193d73;--ds-color-text-ui-hover-inverse: #a8e9f7;--ds-color-text-link-default: #0074c8;--ds-color-text-link-inverse: #00cff0;--ds-color-tier-alaska-mvp-default: #726e6c;--ds-color-tier-alaska-mvp-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold-default: #7f682e;--ds-color-tier-alaska-mvpgold-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold75k-default: #7f682e;--ds-color-tier-alaska-mvpgold75k-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold100k-default: #7f682e;--ds-color-tier-alaska-mvpgold100k-inverse: #c5c1bf;--ds-color-tier-alaska-lounge: #01426a;--ds-color-tier-alaska-loungeplus: #53b390;--ds-color-tier-fare-business-default: #005154;--ds-color-tier-fare-business-inverse: #9fbdbe;--ds-color-tier-fare-economy-default: #2c67b5;--ds-color-tier-fare-economy-inverse: #a0c9f1;--ds-color-tier-fare-first-class-default: #002c4e;--ds-color-tier-fare-first-class-inverse: #89b2d4;--ds-color-tier-fare-saver-default: #4aa2c7;--ds-color-tier-fare-saver-inverse: #a8e9f7;--ds-color-tier-oneworld-emerald: #139142;--ds-color-tier-oneworld-sapphire: #015daa;--ds-color-tier-oneworld-ruby: #a41d4a;--ds-color-ui-default-default: #0074c8;--ds-color-ui-default-inverse: #00cff0;--ds-color-ui-hover-default: #054687;--ds-color-ui-hover-inverse: #5de3f7;--ds-color-ui-active-default: #054687;--ds-color-ui-active-inverse: #5de3f7;--ds-color-ui-disabled-default: rgba(0, 116, 200, 0.2);--ds-color-ui-bkg-default-default: rgba(0, 0, 0, 0.03);--ds-color-ui-bkg-default-inverse: rgba(255, 255, 255, 0.03);--ds-color-ui-bkg-hover-default: rgba(0, 0, 0, 0.06);--ds-color-ui-bkg-hover-inverse: rgba(255, 255, 255, 0.06);--ds-color-utility-blue-default: #79b2ec;--ds-color-utility-blue-inverse: #c9e0f7;--ds-color-utility-cyan-default: #6ad5ef;--ds-color-utility-cyan-inverse: #a8e9f7;--ds-color-utility-green-default: #7ec6ac;--ds-color-utility-green-inverse: #addbca;--ds-color-utility-gray-default: #adadad;--ds-color-utility-gray-inverse: #dddddd;--ds-color-utility-lime-default: #badd81;--ds-color-utility-lime-inverse: #d8efb4;--ds-color-utility-navy-default: #265688;--ds-color-utility-navy-inverse: #acc9e2;--ds-color-utility-neutral-default: #7e8894;--ds-color-utility-neutral-inverse: #ccd2db;--ds-color-utility-pink-default: #f7738e;--ds-color-utility-pink-inverse: #fcc2ce;--ds-color-utility-purple-default: #8d47f0;--ds-color-utility-purple-inverse: #ddc9fb;--ds-color-utility-red-default: #e35c2f;--ds-color-utility-red-inverse: #f0a68d;--ds-color-utility-turquoise-default: #5c8f91;--ds-color-utility-turquoise-inverse: #9fbdbe;--ds-color-utility-yellow-default: #f9ce06;--ds-color-utility-yellow-inverse: #ffe87e;--ds-color-utility-error-default: #cc1816;--ds-color-utility-error-inverse: #f9aca6;--ds-color-utility-warning-default: #f2c153;--ds-color-utility-warning-inverse: #f2c153;--ds-color-utility-success-default: #0b6f4d;--ds-color-utility-success-inverse: #8eceb9}*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}*:focus-visible{outline:0}*:focus-visible{outline:0}:focus:not(:focus-visible){outline:3px solid transparent}:host{display:inline-block;width:100%;margin:0;padding:0;vertical-align:middle}:host ::slotted(auro-menuoption),:host ::slotted([auro-menuoption]){padding-left:calc(var(--ds-size-150, 0.75rem) + 24px + var(--ds-size-100, 0.5rem))}:host ::slotted([selected]){padding-left:0}:host ::slotted(hr){box-sizing:content-box !important;height:0 !important;overflow:visible !important;margin:var(--ds-size-100, 0.5rem) 0 !important;border-width:0 !important;border-top-width:1px !important;border-top-style:solid !important}:host([nocheckmark]) ::slotted(auro-menuoption){padding-left:var(--ds-size-200, 1rem)}:host([root]){overflow-y:auto}`;
|
|
67
|
+
var styleCss$2 = i$5`:root{--ds-asset-font-circular-family-name: "AS Circular";--ds-asset-font-circular-filename: "ASCircularWeb";--ds-asset-font-circular-weight-light: "-Light";--ds-asset-font-circular-weight-medium: "-Medium";--ds-asset-font-circular-weight-book: "-Book";--ds-border-radius: 0.375rem;--ds-size-25: 0.125rem;--ds-size-50: 0.25rem;--ds-size-75: 0.375rem;--ds-size-100: 0.5rem;--ds-size-150: 0.75rem;--ds-size-200: 1rem;--ds-size-250: 1.25rem;--ds-size-300: 1.5rem;--ds-size-400: 2rem;--ds-size-500: 2.5rem;--ds-size-600: 3rem;--ds-size-700: 3.5rem;--ds-size-800: 4rem;--ds-size-900: 4.5rem;--ds-size-1000: 5rem;--ds-unitless-scale-20: 0.25;--ds-unitless-scale-50: 0.5;--ds-unitless-scale-100: 1;--ds-unitless-scale-140: 1.4;--ds-unitless-scale-150: 1.5;--ds-unitless-scale-200: 2;--ds-unitless-scale-300: 3;--ds-unitless-scale-350: 3.5;--ds-animation-default-property: all;--ds-animation-default-duration: 0.3s;--ds-animation-default-timing: ease-out;--ds-depth-overlay: 200;--ds-depth-modal: 300;--ds-depth-tooltip: 400;--ds-elevation-100: 0px 0px 5px rgba(0, 0, 0, 0.15);--ds-elevation-200: 0px 0px 10px rgba(0, 0, 0, 0.15);--ds-elevation-300: 0px 0px 15px rgba(0, 0, 0, 0.2);--ds-grid-breakpoint-xs: 320px;--ds-grid-breakpoint-sm: 576px;--ds-grid-breakpoint-md: 768px;--ds-grid-breakpoint-lg: 1024px;--ds-grid-breakpoint-xl: 1232px;--ds-grid-column-xs: 6;--ds-grid-column-sm: 12;--ds-grid-column-md: 12;--ds-grid-column-lg: 12;--ds-grid-column-xl: 12;--ds-grid-gutter-xs: 0.5rem;--ds-grid-gutter-sm: 1rem;--ds-grid-gutter-md: 1.5rem;--ds-grid-gutter-lg: 1.5rem;--ds-grid-gutter-xl: 2rem;--ds-grid-margin-xs: 1rem;--ds-grid-margin-sm: 1rem;--ds-grid-margin-md: 1.5rem;--ds-grid-margin-lg: 2rem;--ds-grid-margin-xl: 2rem;--ds-font-family-default: "AS Circular", Helvetica Neue, Arial, sans-serif;--ds-font-family-mono: Menlo, Monaco, Consolas, "Courier New", monospace;--ds-text-heading-300-weight: 300;--ds-text-heading-300-px: 18px;--ds-text-heading-300-size: 1.125rem;--ds-text-heading-300-height: 1.625rem;--ds-text-heading-300-height-px: 26px;--ds-text-heading-400-weight: 300;--ds-text-heading-400-px: 20px;--ds-text-heading-400-size: 1.25rem;--ds-text-heading-400-height: 1.625rem;--ds-text-heading-400-height-px: 26px;--ds-text-heading-500-weight: 300;--ds-text-heading-500-px-breakpoint-sm: 22px;--ds-text-heading-500-px-breakpoint-md: 24px;--ds-text-heading-500-px-breakpoint-lg: 24px;--ds-text-heading-500-size-breakpoint-sm: 1.375rem;--ds-text-heading-500-size-breakpoint-md: 1.5rem;--ds-text-heading-500-size-breakpoint-lg: 1.5rem;--ds-text-heading-500-height-breakpoint-sm: 1.625rem;--ds-text-heading-500-height-breakpoint-px-sm: 26px;--ds-text-heading-500-height-breakpoint-md: 1.875rem;--ds-text-heading-500-height-breakpoint-px-md: 30px;--ds-text-heading-500-height-breakpoint-lg: 2rem;--ds-text-heading-500-height-breakpoint-px-lg: 32px;--ds-text-heading-600-weight: 300;--ds-text-heading-600-px-breakpoint-sm: 26px;--ds-text-heading-600-px-breakpoint-md: 28px;--ds-text-heading-600-px-breakpoint-lg: 28px;--ds-text-heading-600-size-breakpoint-sm: 1.625rem;--ds-text-heading-600-size-breakpoint-md: 1.75rem;--ds-text-heading-600-size-breakpoint-lg: 1.75rem;--ds-text-heading-600-height-breakpoint-sm: 1.875rem;--ds-text-heading-600-height-breakpoint-px-sm: 30px;--ds-text-heading-600-height-breakpoint-md: 2.125rem;--ds-text-heading-600-height-breakpoint-px-md: 34px;--ds-text-heading-600-height-breakpoint-lg: 2.25rem;--ds-text-heading-600-height-breakpoint-px-lg: 36px;--ds-text-heading-700-weight: 500;--ds-text-heading-700-px-breakpoint-sm: 28px;--ds-text-heading-700-px-breakpoint-md: 32px;--ds-text-heading-700-px-breakpoint-lg: 36px;--ds-text-heading-700-size-breakpoint-sm: 1.75rem;--ds-text-heading-700-size-breakpoint-md: 2rem;--ds-text-heading-700-size-breakpoint-lg: 2.25rem;--ds-text-heading-700-height-breakpoint-sm: 2.125rem;--ds-text-heading-700-height-breakpoint-px-sm: 34px;--ds-text-heading-700-height-breakpoint-md: 2.375rem;--ds-text-heading-700-height-breakpoint-px-md: 38px;--ds-text-heading-700-height-breakpoint-lg: 2.75rem;--ds-text-heading-700-height-breakpoint-px-lg: 44px;--ds-text-heading-800-weight: 500;--ds-text-heading-800-px-breakpoint-sm: 32px;--ds-text-heading-800-px-breakpoint-md: 36px;--ds-text-heading-800-px-breakpoint-lg: 40px;--ds-text-heading-800-size-breakpoint-sm: 2rem;--ds-text-heading-800-size-breakpoint-md: 2.25rem;--ds-text-heading-800-size-breakpoint-lg: 2.5rem;--ds-text-heading-800-height-breakpoint-sm: 2.375rem;--ds-text-heading-800-height-breakpoint-px-sm: 38px;--ds-text-heading-800-height-breakpoint-md: 2.625rem;--ds-text-heading-800-height-breakpoint-px-md: 42px;--ds-text-heading-800-height-breakpoint-lg: 3rem;--ds-text-heading-800-height-breakpoint-px-lg: 48px;--ds-text-heading-default-weight: 500;--ds-text-heading-default-margin: 0;--ds-text-heading-default-spacing: -0.2px;--ds-text-heading-medium-weight: 300;--ds-text-heading-display-weight: 100;--ds-text-heading-display-px-breakpoint-sm: 44px;--ds-text-heading-display-px-breakpoint-md: 48px;--ds-text-heading-display-px-breakpoint-lg: 56px;--ds-text-heading-display-size-breakpoint-sm: 2.75rem;--ds-text-heading-display-size-breakpoint-md: 3rem;--ds-text-heading-display-size-breakpoint-lg: 3.5rem;--ds-text-heading-display-height-breakpoint-sm: 3.375rem;--ds-text-heading-display-height-breakpoint-px-sm: 54px;--ds-text-heading-display-height-breakpoint-md: 3.75rem;--ds-text-heading-display-height-breakpoint-px-md: 60px;--ds-text-heading-display-height-breakpoint-lg: 4.25rem;--ds-text-heading-display-height-breakpoint-px-lg: 68px;--ds-text-body-default-weight: 500;--ds-text-body-size-xxs: 0.625rem;--ds-text-body-size-xs: 0.75rem;--ds-text-body-size-sm: 0.875rem;--ds-text-body-size-default: 1rem;--ds-text-body-size-lg: 1.125rem;--ds-text-body-height-xs: 1rem;--ds-text-body-height-sm: 1.25rem;--ds-text-body-height-default: 1.5rem;--ds-text-body-height-lg: 1.625rem;--ds-color-alert-notification-default: #0074c8;--ds-color-alert-warning-default: #de750c;--ds-color-alert-error-default: #df0b37;--ds-color-alert-success-default: #00805d;--ds-color-alert-advisory-default: #fff0cd;--ds-color-alert-bkg-success-default: #ddf6e8;--ds-color-alert-bkg-error-default: #ffedf1;--ds-color-background-primary-100-default: #ffffff;--ds-color-background-primary-100-inverse: #0e2b4f;--ds-color-background-primary-200-default: #f7f7f7;--ds-color-background-primary-200-inverse: #194069;--ds-color-background-primary-300-default: #e4e8ec;--ds-color-background-primary-300-inverse: #265688;--ds-color-background-primary-400-default: #dddddd;--ds-color-background-primary-400-inverse: #326aa5;--ds-color-background-success-default: #eef8f5;--ds-color-background-success-inverse: #173c30;--ds-color-background-error-default: #fff4f4;--ds-color-background-error-inverse: #74110e;--ds-color-background-warning-default: #fef8e9;--ds-color-background-warning-inverse: #5d4514;--ds-color-background-info-default: #f0f7fd;--ds-color-background-info-inverse: #193d73;--ds-color-background-subtle-default: #f7f8fa;--ds-color-background-subtle-inverse: #2a2a2a;--ds-color-background-accent-default: #ebfafd;--ds-color-background-accent-inverse: #275b72;--ds-color-background-emphasis-default: #c9e0f7;--ds-color-background-emphasis-inverse: #225296;--ds-color-background-scrimmed-default: rgba(0, 0, 0, 0.5);--ds-color-background-lightest: #ffffff;--ds-color-background-lighter: #f7f7f7;--ds-color-background-darker: #01426a;--ds-color-background-darkest: #00274a;--ds-color-background-gradient-default: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.5));--ds-color-base-white: #ffffff;--ds-color-base-white-100: rgba(255, 255, 255, 0.03);--ds-color-base-white-200: rgba(255, 255, 255, 0.06);--ds-color-base-white-300: rgba(255, 255, 255, 0.12);--ds-color-base-white-400: rgba(255, 255, 255, 0.25);--ds-color-base-white-500: rgba(255, 255, 255, 0.5);--ds-color-base-white-opacity-50: rgba(255, 255, 255, 0.5);--ds-color-base-white-opacity-40: rgba(255, 255, 255, 0.4);--ds-color-base-white-opacity-0: rgba(255, 255, 255, 0);--ds-color-base-black: #000000;--ds-color-base-black-100: rgba(0, 0, 0, 0.03);--ds-color-base-black-200: rgba(0, 0, 0, 0.06);--ds-color-base-black-300: rgba(0, 0, 0, 0.12);--ds-color-base-black-400: rgba(0, 0, 0, 0.25);--ds-color-base-black-500: rgba(0, 0, 0, 0.5);--ds-color-base-black-opacity-15: rgba(0, 0, 0, 0.15);--ds-color-base-blue-100: #f0f7fd;--ds-color-base-blue-200: #c9e0f7;--ds-color-base-blue-300: #a0c9f1;--ds-color-base-blue-400: #79b2ec;--ds-color-base-blue-500: #5398e6;--ds-color-base-blue-600: #3b7fd2;--ds-color-base-blue-700: #2c67b5;--ds-color-base-blue-800: #225296;--ds-color-base-blue-900: #193d73;--ds-color-base-blue-1000: #102a51;--ds-color-base-cyan-100: #ebfafd;--ds-color-base-cyan-200: #a8e9f7;--ds-color-base-cyan-300: #6ad5ef;--ds-color-base-cyan-400: #56bbde;--ds-color-base-cyan-500: #4aa2c7;--ds-color-base-cyan-600: #3e89aa;--ds-color-base-cyan-700: #32718e;--ds-color-base-cyan-800: #275b72;--ds-color-base-cyan-900: #1d4658;--ds-color-base-cyan-1000: #12303d;--ds-color-base-error-100: #fff4f4;--ds-color-base-error-200: #f9aca6;--ds-color-base-error-300: #f16359;--ds-color-base-error-400: #cc1816;--ds-color-base-error-500: #74110e;--ds-color-base-gray-100: #f7f7f7;--ds-color-base-gray-200: #d4d4d4;--ds-color-base-gray-300: #c5c5c5;--ds-color-base-gray-400: #adadad;--ds-color-base-gray-500: #959595;--ds-color-base-gray-600: #7e7e7e;--ds-color-base-gray-700: #676767;--ds-color-base-gray-800: #525252;--ds-color-base-gray-900: #3d3d3d;--ds-color-base-gray-1000: #2a2a2a;--ds-color-base-green-100: #f3faf7;--ds-color-base-green-200: #000000;--ds-color-base-green-300: #addbca;--ds-color-base-green-400: #7ec6ac;--ds-color-base-green-500: #51ae8c;--ds-color-base-green-600: #459578;--ds-color-base-green-700: #3a7d64;--ds-color-base-green-800: #306854;--ds-color-base-green-900: #285545;--ds-color-base-green-1000: #1f4436;--ds-color-base-lime-100: #f5fbeb;--ds-color-base-lime-200: #d8efb4;--ds-color-base-lime-300: #badd81;--ds-color-base-lime-400: #a2c270;--ds-color-base-lime-500: #8ca761;--ds-color-base-lime-600: #778f53;--ds-color-base-lime-700: #647845;--ds-color-base-lime-800: #53643a;--ds-color-base-lime-900: #44522f;--ds-color-base-lime-1000: #364126;--ds-color-base-navy-100: #f2f7fb;--ds-color-base-navy-200: #cfe0ef;--ds-color-base-navy-300: #acc9e2;--ds-color-base-navy-400: #89b2d4;--ds-color-base-navy-500: #6899c6;--ds-color-base-navy-600: #4a82b7;--ds-color-base-navy-700: #326aa5;--ds-color-base-navy-800: #265688;--ds-color-base-navy-900: #194069;--ds-color-base-navy-1000: #0e2b4f;--ds-color-base-neutral-100: #f7f8fa;--ds-color-base-neutral-200: #e4e8ec;--ds-color-base-neutral-300: #ccd2db;--ds-color-base-neutral-400: #afb9c6;--ds-color-base-neutral-500: #939fad;--ds-color-base-neutral-600: #7e8894;--ds-color-base-neutral-700: #6a717c;--ds-color-base-neutral-800: #585e67;--ds-color-base-neutral-900: #484d55;--ds-color-base-neutral-1000: #393d43;--ds-color-base-pink-100: #fff7f8;--ds-color-base-pink-200: #fde0e6;--ds-color-base-pink-300: #fcc2ce;--ds-color-base-pink-400: #fa9db0;--ds-color-base-pink-500: #f7738e;--ds-color-base-pink-600: #e45472;--ds-color-base-pink-700: #bf475f;--ds-color-base-pink-800: #a03b50;--ds-color-base-pink-900: #833142;--ds-color-base-pink-1000: #692734;--ds-color-base-purple-100: #fbf8fe;--ds-color-base-purple-200: #ede3fd;--ds-color-base-purple-300: #ddc9fb;--ds-color-base-purple-400: #c9a9f8;--ds-color-base-purple-500: #b588f5;--ds-color-base-purple-600: #a268f3;--ds-color-base-purple-700: #8d47f0;--ds-color-base-purple-800: #7633d7;--ds-color-base-purple-900: #622ab2;--ds-color-base-purple-1000: #4e228d;--ds-color-base-red-100: #fef7f5;--ds-color-base-red-200: #fae2da;--ds-color-base-red-300: #f5c7b8;--ds-color-base-red-400: #f0a68d;--ds-color-base-red-500: #e9815e;--ds-color-base-red-600: #e35c2f;--ds-color-base-red-700: #d03a08;--ds-color-base-red-800: #ae3007;--ds-color-base-red-900: #902806;--ds-color-base-red-1000: #732005;--ds-color-base-success-100: #eef8f5;--ds-color-base-success-200: #8eceb9;--ds-color-base-success-300: #40a080;--ds-color-base-success-400: #0b6f4d;--ds-color-base-success-500: #173c30;--ds-color-base-turquoise-100: #f7fafa;--ds-color-base-turquoise-200: #dfe9ea;--ds-color-base-turquoise-300: #c2d5d6;--ds-color-base-turquoise-400: #9fbdbe;--ds-color-base-turquoise-500: #7ba5a6;--ds-color-base-turquoise-600: #5c8f91;--ds-color-base-turquoise-700: #3d7a7d;--ds-color-base-turquoise-800: #21686a;--ds-color-base-turquoise-900: #085659;--ds-color-base-turquoise-1000: #004447;--ds-color-base-yellow-100: #fff9df;--ds-color-base-yellow-200: #ffe87e;--ds-color-base-yellow-300: #f9ce06;--ds-color-base-yellow-400: #d6b622;--ds-color-base-yellow-500: #b49d35;--ds-color-base-yellow-600: #96873e;--ds-color-base-yellow-700: #7c7140;--ds-color-base-yellow-800: #665e3d;--ds-color-base-yellow-900: #524e38;--ds-color-base-yellow-1000: #403d30;--ds-color-base-warning-100: #fef8e9;--ds-color-base-warning-200: #f2c153;--ds-color-base-warning-300: #c49432;--ds-color-base-warning-400: #8e6b22;--ds-color-base-warning-500: #5d4514;--ds-color-state-error-100: #ff999b;--ds-color-state-error-500: #df0b37;--ds-color-state-success-100: #69cf96;--ds-color-state-success-500: #00805d;--ds-color-state-warning-500: #de750c;--ds-color-border-primary-default: #585e67;--ds-color-border-primary-inverse: #afb9c6;--ds-color-border-secondary-default: #939fad;--ds-color-border-secondary-inverse: #7e8894;--ds-color-border-tertiary-default: #dddddd;--ds-color-border-tertiary-inverse: #676767;--ds-color-border-error-default: #cc1816;--ds-color-border-error-inverse: #f9aca6;--ds-color-border-divider-default: rgba(0, 0, 0, 0.12);--ds-color-border-divider-inverse: rgba(255, 255, 255, 0.25);--ds-color-border-subtle-default: #f0f7fd;--ds-color-border-subtle-inverse: #326aa5;--ds-color-border-emphasis-default: #194069;--ds-color-border-emphasis-inverse: #f2f7fb;--ds-color-border-accent-default: #badd81;--ds-color-border-accent-inverse: #a2c270;--ds-color-border-success-default: #0b6f4d;--ds-color-border-success-inverse: #8eceb9;--ds-color-border-warning-default: #c49432;--ds-color-border-warning-inverse: #f2c153;--ds-color-border-info-default: #326aa5;--ds-color-border-info-inverse: #89b2d4;--ds-color-border-ui-default-default: #2c67b5;--ds-color-border-ui-default-inverse: #56bbde;--ds-color-border-ui-hover-default: #193d73;--ds-color-border-ui-hover-inverse: #a8e9f7;--ds-color-border-ui-active-default: #225296;--ds-color-border-ui-active-inverse: #6ad5ef;--ds-color-border-ui-focus-default: #2c67b5;--ds-color-border-ui-focus-inverse: #56bbde;--ds-color-border-ui-disabled-default: #adadad;--ds-color-border-ui-disabled-inverse: #7e7e7e;--ds-color-border-active-default: #0074c8;--ds-color-border-active-inverse: #00cff0;--ds-color-border-disabled-default: #d4d4d4;--ds-color-border-focus-default: #959595;--ds-color-brand-neutral-100: #f7f8fa;--ds-color-brand-neutral-200: #e4e8ec;--ds-color-brand-neutral-300: #ccd2db;--ds-color-brand-neutral-400: #afb9c6;--ds-color-brand-neutral-500: #939fad;--ds-color-brand-neutral-600: #7e8894;--ds-color-brand-neutral-700: #6a717c;--ds-color-brand-neutral-800: #585e67;--ds-color-brand-neutral-900: #484d55;--ds-color-brand-neutral-1000: #393d43;--ds-color-brand-gray-100: #f7f7f7;--ds-color-brand-gray-200: #dddddd;--ds-color-brand-gray-300: #c5c5c5;--ds-color-brand-gray-400: #adadad;--ds-color-brand-gray-500: #959595;--ds-color-brand-gray-600: #7e7e7e;--ds-color-brand-gray-700: #676767;--ds-color-brand-gray-800: #525252;--ds-color-brand-gray-900: #3d3d3d;--ds-color-brand-gray-1000: #2a2a2a;--ds-color-brand-red-100: #fef7f5;--ds-color-brand-red-200: #fae2da;--ds-color-brand-red-300: #f5c7b8;--ds-color-brand-red-400: #f0a68d;--ds-color-brand-red-500: #e9815e;--ds-color-brand-red-600: #e35c2f;--ds-color-brand-red-700: #d03a08;--ds-color-brand-red-800: #ae3007;--ds-color-brand-red-900: #902806;--ds-color-brand-red-1000: #732005;--ds-color-brand-yellow-100: #fff9df;--ds-color-brand-yellow-200: #ffe87e;--ds-color-brand-yellow-300: #f9ce06;--ds-color-brand-yellow-400: #d6b622;--ds-color-brand-yellow-500: #b49d35;--ds-color-brand-yellow-600: #96873e;--ds-color-brand-yellow-700: #7c7140;--ds-color-brand-yellow-800: #665e3d;--ds-color-brand-yellow-900: #524e38;--ds-color-brand-yellow-1000: #403d30;--ds-color-brand-lime-100: #f5fbeb;--ds-color-brand-lime-200: #d8efb4;--ds-color-brand-lime-300: #badd81;--ds-color-brand-lime-400: #a2c270;--ds-color-brand-lime-500: #8ca761;--ds-color-brand-lime-600: #778f53;--ds-color-brand-lime-700: #647845;--ds-color-brand-lime-800: #53643a;--ds-color-brand-lime-900: #44522f;--ds-color-brand-lime-1000: #364126;--ds-color-brand-green-100: #f3faf7;--ds-color-brand-green-200: #d4ece4;--ds-color-brand-green-300: #addbca;--ds-color-brand-green-400: #7ec6ac;--ds-color-brand-green-500: #51ae8c;--ds-color-brand-green-600: #459578;--ds-color-brand-green-700: #3a7d64;--ds-color-brand-green-800: #306854;--ds-color-brand-green-900: #285545;--ds-color-brand-green-1000: #1f4436;--ds-color-brand-turquoise-100: #f7fafa;--ds-color-brand-turquoise-200: #dfe9ea;--ds-color-brand-turquoise-300: #c2d5d6;--ds-color-brand-turquoise-400: #9fbdbe;--ds-color-brand-turquoise-500: #7ba5a6;--ds-color-brand-turquoise-600: #5c8f91;--ds-color-brand-turquoise-700: #3d7a7d;--ds-color-brand-turquoise-800: #21686a;--ds-color-brand-turquoise-900: #085659;--ds-color-brand-turquoise-1000: #004447;--ds-color-brand-cyan-100: #ebfafd;--ds-color-brand-cyan-200: #a8e9f7;--ds-color-brand-cyan-300: #6ad5ef;--ds-color-brand-cyan-400: #56bbde;--ds-color-brand-cyan-500: #4aa2c7;--ds-color-brand-cyan-600: #3e89aa;--ds-color-brand-cyan-700: #32718e;--ds-color-brand-cyan-800: #275b72;--ds-color-brand-cyan-900: #1d4658;--ds-color-brand-cyan-1000: #12303d;--ds-color-brand-blue-100: #f0f7fd;--ds-color-brand-blue-200: #c9e0f7;--ds-color-brand-blue-300: #a0c9f1;--ds-color-brand-blue-400: #79b2ec;--ds-color-brand-blue-500: #5398e6;--ds-color-brand-blue-600: #3b7fd2;--ds-color-brand-blue-700: #2c67b5;--ds-color-brand-blue-800: #225296;--ds-color-brand-blue-900: #193d73;--ds-color-brand-blue-1000: #102a51;--ds-color-brand-navy-100: #f2f7fb;--ds-color-brand-navy-200: #cfe0ef;--ds-color-brand-navy-300: #acc9e2;--ds-color-brand-navy-400: #89b2d4;--ds-color-brand-navy-500: #6899c6;--ds-color-brand-navy-600: #4a82b7;--ds-color-brand-navy-700: #326aa5;--ds-color-brand-navy-800: #265688;--ds-color-brand-navy-900: #194069;--ds-color-brand-navy-1000: #0e2b4f;--ds-color-brand-purple-100: #fbf8fe;--ds-color-brand-purple-200: #ede3fd;--ds-color-brand-purple-300: #ddc9fb;--ds-color-brand-purple-400: #c9a9f8;--ds-color-brand-purple-500: #b588f5;--ds-color-brand-purple-600: #a268f3;--ds-color-brand-purple-700: #8d47f0;--ds-color-brand-purple-800: #7633d7;--ds-color-brand-purple-900: #622ab2;--ds-color-brand-purple-1000: #4e228d;--ds-color-brand-pink-100: #fff7f8;--ds-color-brand-pink-200: #fde0e6;--ds-color-brand-pink-300: #fcc2ce;--ds-color-brand-pink-400: #fa9db0;--ds-color-brand-pink-500: #f7738e;--ds-color-brand-pink-600: #e45472;--ds-color-brand-pink-700: #bf475f;--ds-color-brand-pink-800: #a03b50;--ds-color-brand-pink-900: #833142;--ds-color-brand-pink-1000: #692734;--ds-color-brand-midnight-100: #c1daf0;--ds-color-brand-midnight-200: #569ed7;--ds-color-brand-midnight-300: #156fad;--ds-color-brand-midnight-400: #01426a;--ds-color-brand-midnight-500: #00274a;--ds-color-brand-atlas-100: #cde6ff;--ds-color-brand-atlas-200: #6bb7fb;--ds-color-brand-atlas-300: #2492eb;--ds-color-brand-atlas-400: #0074c8;--ds-color-brand-atlas-500: #054687;--ds-color-brand-atlas-400-opacity-20: rgba(0, 116, 200, 0.2);--ds-color-brand-breeze-100: #c0f7ff;--ds-color-brand-breeze-200: #5de3f7;--ds-color-brand-breeze-300: #00cff0;--ds-color-brand-breeze-400: #099dc5;--ds-color-brand-breeze-500: #0b5575;--ds-color-brand-breeze-300-opacity-30: rgba(0, 207, 240, 0.3);--ds-color-brand-tropical-100: #e2ffcd;--ds-color-brand-tropical-200: #d0fba6;--ds-color-brand-tropical-300: #c0e585;--ds-color-brand-tropical-400: #91be62;--ds-color-brand-tropical-500: #5e8741;--ds-color-brand-alpine-100: #bcaae6;--ds-color-brand-alpine-200: #9e73ea;--ds-color-brand-alpine-300: #8439ef;--ds-color-brand-alpine-400: #631db8;--ds-color-brand-alpine-500: #39115c;--ds-color-brand-flamingo-100: #ffebee;--ds-color-brand-flamingo-200: #ffc0ca;--ds-color-brand-flamingo-300: #ff94a7;--ds-color-brand-flamingo-400: #f65b7b;--ds-color-brand-flamingo-500: #b82b47;--ds-color-brand-canyon-100: #ffcab6;--ds-color-brand-canyon-200: #f99574;--ds-color-brand-canyon-300: #f26135;--ds-color-brand-canyon-400: #de3e09;--ds-color-brand-canyon-500: #b83302;--ds-color-brand-goldcoast-100: #fff0cd;--ds-color-brand-goldcoast-200: #ffdb67;--ds-color-brand-goldcoast-300: #ffd200;--ds-color-brand-goldcoast-400: #e5ad07;--ds-color-brand-goldcoast-500: #b88624;--ds-color-brand-goldgray-100: #c5c1bf;--ds-color-brand-goldgray-200: #726e6c;--ds-color-brand-gold-100: #ccbc94;--ds-color-brand-gold-200: #7f682e;--ds-color-brand-emerald: #139142;--ds-color-brand-sapphire: #015daa;--ds-color-brand-ruby: #a41d4a;--ds-color-brand-lounge: #01426a;--ds-color-brand-loungeplus: #53b390;--ds-color-container-accent-default: #f5fbeb;--ds-color-container-accent-inverse: #badd81;--ds-color-container-emphasis-default: #ebfafd;--ds-color-container-emphasis-inverse: #6ad5ef;--ds-color-container-error-default: #fff4f4;--ds-color-container-error-inverse: #74110e;--ds-color-container-info-default: #f0f7fd;--ds-color-container-info-inverse: #193d73;--ds-color-container-primary-default: #ffffff;--ds-color-container-primary-inverse: #0e2b4f;--ds-color-container-secondary-default: #f7f7f7;--ds-color-container-secondary-inverse: #194069;--ds-color-container-subtle-default: #f7f8fa;--ds-color-container-subtle-inverse: #393d43;--ds-color-container-success-default: #eef8f5;--ds-color-container-success-inverse: #173c30;--ds-color-container-tertiary-default: rgba(0, 0, 0, 0.03);--ds-color-container-tertiary-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-warning-default: #fef8e9;--ds-color-container-warning-inverse: #5d4514;--ds-color-container-ui-primary-active-default: #225296;--ds-color-container-ui-primary-active-inverse: #6ad5ef;--ds-color-container-ui-primary-default-default: #2c67b5;--ds-color-container-ui-primary-default-inverse: #56bbde;--ds-color-container-ui-primary-disabled-default: #a0c9f1;--ds-color-container-ui-primary-disabled-inverse: #275b72;--ds-color-container-ui-primary-focus-default: #2c67b5;--ds-color-container-ui-primary-focus-inverse: #56bbde;--ds-color-container-ui-primary-hover-default: #193d73;--ds-color-container-ui-primary-hover-inverse: #a8e9f7;--ds-color-container-ui-secondary-active-default: #f0f7fd;--ds-color-container-ui-secondary-active-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-ui-secondary-default-default: #ffffff;--ds-color-container-ui-secondary-default-inverse: rgba(255, 255, 255, 0.03);--ds-color-container-ui-secondary-disabled-default: #f7f7f7;--ds-color-container-ui-secondary-disabled-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-secondary-focus-default: #ffffff;--ds-color-container-ui-secondary-focus-inverse: rgba(255, 255, 255, 0.03);--ds-color-container-ui-secondary-hover-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-secondary-hover-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-active-default: rgba(0, 0, 0, 0.06);--ds-color-container-ui-tertiary-active-inverse: rgba(255, 255, 255, 0.06);--ds-color-container-ui-tertiary-default-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-default-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-disabled-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-disabled-inverse: rgba(255, 255, 255, 0.25);--ds-color-container-ui-tertiary-focus-default: rgba(0, 0, 0, 0.03);--ds-color-container-ui-tertiary-focus-inverse: rgba(255, 255, 255, 0.12);--ds-color-container-ui-tertiary-hover-default: rgba(0, 0, 0, 0.12);--ds-color-container-ui-tertiary-hover-inverse: rgba(255, 255, 255, 0.25);--ds-color-icon-primary-default: #676767;--ds-color-icon-primary-inverse: #f7f7f7;--ds-color-icon-secondary-default: #7e8894;--ds-color-icon-secondary-inverse: #ccd2db;--ds-color-icon-tertiary-default: #afb9c6;--ds-color-icon-tertiary-inverse: #939fad;--ds-color-icon-emphasis-default: #2a2a2a;--ds-color-icon-emphasis-inverse: #ffffff;--ds-color-icon-accent-default: #a2c270;--ds-color-icon-accent-inverse: #badd81;--ds-color-icon-info-default: #326aa5;--ds-color-icon-info-inverse: #89b2d4;--ds-color-icon-error-default: #cc1816;--ds-color-icon-error-inverse: #f9aca6;--ds-color-icon-warning-default: #c49432;--ds-color-icon-warning-inverse: #f2c153;--ds-color-icon-success-default: #40a080;--ds-color-icon-success-inverse: #8eceb9;--ds-color-icon-subtle-default: #a0c9f1;--ds-color-icon-subtle-inverse: #326aa5;--ds-color-icon-ui-primary-default-default: #2c67b5;--ds-color-icon-ui-primary-default-inverse: #56bbde;--ds-color-icon-ui-primary-hover-default: #193d73;--ds-color-icon-ui-primary-hover-inverse: #a8e9f7;--ds-color-icon-ui-primary-active-default: #225296;--ds-color-icon-ui-primary-active-inverse: #6ad5ef;--ds-color-icon-ui-primary-disabled-default: #adadad;--ds-color-icon-ui-primary-disabled-inverse: #7e7e7e;--ds-color-icon-ui-primary-focus-default: #2c67b5;--ds-color-icon-ui-primary-focus-inverse: #56bbde;--ds-color-icon-ui-secondary-active-default: #676767;--ds-color-icon-ui-secondary-active-inverse: #c5c5c5;--ds-color-icon-ui-secondary-default-default: #7e7e7e;--ds-color-icon-ui-secondary-default-inverse: #adadad;--ds-color-icon-ui-secondary-disabled-default: #adadad;--ds-color-icon-ui-secondary-disabled-inverse: #7e7e7e;--ds-color-icon-ui-secondary-focus-default: #7e7e7e;--ds-color-icon-ui-secondary-focus-inverse: #adadad;--ds-color-icon-ui-secondary-hover-default: #525252;--ds-color-icon-ui-secondary-hover-inverse: #dddddd;--ds-color-icon-brand-red-default: #d03a08;--ds-color-icon-brand-red-inverse: #e9815e;--ds-color-icon-brand-yellow-default: #7c7140;--ds-color-icon-brand-yellow-inverse: #f9ce06;--ds-color-icon-brand-pink-default: #bf475f;--ds-color-icon-brand-pink-inverse: #f7738e;--ds-color-icon-brand-purple-default: #8d47f0;--ds-color-icon-brand-purple-inverse: #b588f5;--ds-color-icon-brand-lime-default: #647845;--ds-color-icon-brand-lime-inverse: #badd81;--ds-color-icon-brand-green-default: #3a7d64;--ds-color-icon-brand-green-inverse: #51ae8c;--ds-color-icon-brand-turquoise-default: #3d7a7d;--ds-color-icon-brand-turquoise-inverse: #7ba5a6;--ds-color-icon-brand-navy-default: #265688;--ds-color-icon-brand-navy-inverse: #6899c6;--ds-color-icon-brand-blue-default: #2c67b5;--ds-color-icon-brand-blue-inverse: #5398e6;--ds-color-icon-brand-cyan-default: #32718e;--ds-color-icon-brand-cyan-inverse: #6ad5ef;--ds-color-icon-brand-gray-default: #676767;--ds-color-icon-brand-gray-inverse: #c5c5c5;--ds-color-icon-brand-neutral-default: #6a717c;--ds-color-icon-brand-neutral-inverse: #afb9c6;--ds-color-icon-disabled-default: rgba(0, 0, 0, 0.15);--ds-color-text-primary-default: #2a2a2a;--ds-color-text-primary-inverse: #ffffff;--ds-color-text-secondary-default: #525252;--ds-color-text-secondary-inverse: #dddddd;--ds-color-text-tertiary-default: #6a717c;--ds-color-text-tertiary-inverse: #adadad;--ds-color-text-error-default: #cc1816;--ds-color-text-error-inverse: #f9aca6;--ds-color-text-emphasis-default: #265688;--ds-color-text-emphasis-inverse: #cfe0ef;--ds-color-text-accent-default: #647845;--ds-color-text-accent-inverse: #badd81;--ds-color-text-info-default: #326aa5;--ds-color-text-info-inverse: #acc9e2;--ds-color-text-subtle-default: #32718e;--ds-color-text-subtle-inverse: #56bbde;--ds-color-text-success-default: #0b6f4d;--ds-color-text-success-inverse: #8eceb9;--ds-color-text-ui-active-default: #225296;--ds-color-text-ui-active-inverse: #6ad5ef;--ds-color-text-ui-default-default: #2c67b5;--ds-color-text-ui-default-inverse: #56bbde;--ds-color-text-ui-disabled-default: #adadad;--ds-color-text-ui-disabled-inverse: #7e7e7e;--ds-color-text-ui-focus-default: #2c67b5;--ds-color-text-ui-focus-inverse: #56bbde;--ds-color-text-ui-hover-default: #193d73;--ds-color-text-ui-hover-inverse: #a8e9f7;--ds-color-text-link-default: #0074c8;--ds-color-text-link-inverse: #00cff0;--ds-color-tier-alaska-mvp-default: #726e6c;--ds-color-tier-alaska-mvp-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold-default: #7f682e;--ds-color-tier-alaska-mvpgold-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold75k-default: #7f682e;--ds-color-tier-alaska-mvpgold75k-inverse: #c5c1bf;--ds-color-tier-alaska-mvpgold100k-default: #7f682e;--ds-color-tier-alaska-mvpgold100k-inverse: #c5c1bf;--ds-color-tier-alaska-lounge: #01426a;--ds-color-tier-alaska-loungeplus: #53b390;--ds-color-tier-fare-business-default: #005154;--ds-color-tier-fare-business-inverse: #9fbdbe;--ds-color-tier-fare-economy-default: #2c67b5;--ds-color-tier-fare-economy-inverse: #a0c9f1;--ds-color-tier-fare-first-class-default: #002c4e;--ds-color-tier-fare-first-class-inverse: #89b2d4;--ds-color-tier-fare-saver-default: #4aa2c7;--ds-color-tier-fare-saver-inverse: #a8e9f7;--ds-color-tier-oneworld-emerald: #139142;--ds-color-tier-oneworld-sapphire: #015daa;--ds-color-tier-oneworld-ruby: #a41d4a;--ds-color-ui-default-default: #0074c8;--ds-color-ui-default-inverse: #00cff0;--ds-color-ui-hover-default: #054687;--ds-color-ui-hover-inverse: #5de3f7;--ds-color-ui-active-default: #054687;--ds-color-ui-active-inverse: #5de3f7;--ds-color-ui-disabled-default: rgba(0, 116, 200, 0.2);--ds-color-ui-bkg-default-default: rgba(0, 0, 0, 0.03);--ds-color-ui-bkg-default-inverse: rgba(255, 255, 255, 0.03);--ds-color-ui-bkg-hover-default: rgba(0, 0, 0, 0.06);--ds-color-ui-bkg-hover-inverse: rgba(255, 255, 255, 0.06);--ds-color-utility-blue-default: #79b2ec;--ds-color-utility-blue-inverse: #c9e0f7;--ds-color-utility-cyan-default: #6ad5ef;--ds-color-utility-cyan-inverse: #a8e9f7;--ds-color-utility-green-default: #7ec6ac;--ds-color-utility-green-inverse: #addbca;--ds-color-utility-gray-default: #adadad;--ds-color-utility-gray-inverse: #dddddd;--ds-color-utility-lime-default: #badd81;--ds-color-utility-lime-inverse: #d8efb4;--ds-color-utility-navy-default: #265688;--ds-color-utility-navy-inverse: #acc9e2;--ds-color-utility-neutral-default: #7e8894;--ds-color-utility-neutral-inverse: #ccd2db;--ds-color-utility-pink-default: #f7738e;--ds-color-utility-pink-inverse: #fcc2ce;--ds-color-utility-purple-default: #8d47f0;--ds-color-utility-purple-inverse: #ddc9fb;--ds-color-utility-red-default: #e35c2f;--ds-color-utility-red-inverse: #f0a68d;--ds-color-utility-turquoise-default: #5c8f91;--ds-color-utility-turquoise-inverse: #9fbdbe;--ds-color-utility-yellow-default: #f9ce06;--ds-color-utility-yellow-inverse: #ffe87e;--ds-color-utility-error-default: #cc1816;--ds-color-utility-error-inverse: #f9aca6;--ds-color-utility-warning-default: #f2c153;--ds-color-utility-warning-inverse: #f2c153;--ds-color-utility-success-default: #0b6f4d;--ds-color-utility-success-inverse: #8eceb9}*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}*:focus-visible{outline:0}*:focus-visible{outline:0}:focus:not(:focus-visible){outline:3px solid transparent}:host{display:inline-block;width:100%;margin:0;padding:0;vertical-align:middle}:host ::slotted(auro-menuoption),:host ::slotted([auro-menuoption]),:host auro-menuoption[loadingplaceholder]{padding-left:calc(var(--ds-size-150, 0.75rem) + 24px + var(--ds-size-100, 0.5rem))}:host ::slotted([selected]){padding-left:0}:host ::slotted(hr){box-sizing:content-box !important;height:0 !important;overflow:visible !important;margin:var(--ds-size-100, 0.5rem) 0 !important;border-width:0 !important;border-top-width:1px !important;border-top-style:solid !important}:host([nocheckmark]) ::slotted(auro-menuoption),:host([nocheckmark]) auro-menuoption[loadingplaceholder]{padding-left:var(--ds-size-200, 1rem)}:host([root]){overflow-y:auto}[loadingplaceholder]{color:var(--ds-color-text-secondary-default, #525252)}[loadingplaceholder].empty{opacity:0;position:absolute}[loadingplaceholder] slot[name=loadingIcon]{vertical-align:middle;line-height:1;display:inline-block}[loadingplaceholder] slot[name=loadingIcon]::slotted(*){margin-right:var(--ds-size-150, 0.75rem)}`;
|
|
62
68
|
|
|
63
69
|
var colorCss$2 = i$5`:host ::slotted(hr){border-top-color:var(--ds-auro-menu-divider-color) !important}`;
|
|
64
70
|
|
|
@@ -134,1074 +140,1126 @@ class AuroLibraryRuntimeUtils {
|
|
|
134
140
|
}
|
|
135
141
|
}
|
|
136
142
|
|
|
137
|
-
|
|
138
|
-
* @license
|
|
139
|
-
* Copyright 2020 Google LLC
|
|
140
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
141
|
-
*/
|
|
142
|
-
const a=Symbol.for(""),o$1=t=>{if(t?.r===a)return t?._$litStatic$},s=t=>({_$litStatic$:t,r:a}),i$1=(t,...r)=>({_$litStatic$:r.reduce(((r,e,a)=>r+(t=>{if(void 0!==t._$litStatic$)return t._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${t}. Use 'unsafeStatic' to pass non-literal values, but\n take care to ensure page security.`)})(e)+t[a+1]),t[0]),r:a}),l=new Map,n=t=>(r,...e)=>{const a=e.length;let s,i;const n=[],u=[];let c,$=0,f=!1;for(;$<a;){for(c=r[$];$<a&&void 0!==(i=e[$],s=o$1(i));)c+=s+r[++$],f=!0;$!==a&&u.push(i),n.push(c),$++;}if($===a&&n.push(r[a]),f){const t=n.join("$$lit$$");void 0===(r=l.get(t))&&(n.raw=n,l.set(t,r=n)),e=u;}return t(r,...e)},u=n(x);
|
|
143
|
-
|
|
144
|
-
var styleCss$1 = i$5`:host{display:flex;align-items:center;padding:var(--ds-size-50, 0.25rem) var(--ds-size-200, 1rem) var(--ds-size-50, 0.25rem) 0;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}:host slot{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [auro-icon]{--ds-auro-icon-size: var(--ds-size-300, 1.5rem);margin-right:var(--ds-size-150, 0.75rem);margin-left:var(--ds-size-100, 0.5rem)}:host ::slotted(.nestingSpacer){display:inline-block;width:var(--ds-size-300, 1.5rem)}:host ::slotted(strong){font-weight:700}:host([hidden]){display:none}:host([static]){pointer-events:none}:host([disabled]:hover){cursor:auto}:host([disabled]){user-select:none;pointer-events:none}`;
|
|
145
|
-
|
|
146
|
-
var colorCss$1 = i$5`:host{background-color:var(--ds-auro-menuoption-container-color);color:var(--ds-auro-menuoption-text-color)}:host svg{fill:var(--ds-auro-menuoption-icon-color) !important}:host([disabled]){--ds-auro-menuoption-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host(:hover),:host(.active){--ds-auro-menuoption-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([selected]){--ds-auro-menuoption-container-color: var(--ds-color-container-ui-primary-default-default, #2c67b5);--ds-auro-menuoption-text-color: var(--ds-color-text-primary-inverse, #ffffff);--ds-auro-menuoption-icon-color: var(--ds-color-icon-emphasis-inverse, #ffffff)}`;
|
|
147
|
-
|
|
148
|
-
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
143
|
+
// Copyright (c) 2021 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
149
144
|
// See LICENSE in the project root for license information.
|
|
150
145
|
|
|
151
146
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
/**
|
|
155
|
-
* Generates a unique string to be used for child auro element naming.
|
|
156
|
-
* @private
|
|
157
|
-
* @param {string} baseName - Defines the first part of the unique element name.
|
|
158
|
-
* @param {string} version - Version of the component that will be appended to the baseName.
|
|
159
|
-
* @returns {string} - Unique string to be used for naming.
|
|
160
|
-
*/
|
|
161
|
-
generateElementName(baseName, version) {
|
|
162
|
-
let result = baseName;
|
|
163
|
-
|
|
164
|
-
result += '-';
|
|
165
|
-
result += version.replace(/[.]/g, '_');
|
|
166
|
-
|
|
167
|
-
return result;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
* Generates a unique string to be used for child auro element naming.
|
|
172
|
-
* @param {string} baseName - Defines the first part of the unique element name.
|
|
173
|
-
* @param {string} version - Version of the component that will be appended to the baseName.
|
|
174
|
-
* @returns {string} - Unique string to be used for naming.
|
|
175
|
-
*/
|
|
176
|
-
generateTag(baseName, version, tagClass) {
|
|
177
|
-
const elementName = this.generateElementName(baseName, version);
|
|
178
|
-
const tag = i$1`${s(elementName)}`;
|
|
179
|
-
|
|
180
|
-
if (!customElements.get(elementName)) {
|
|
181
|
-
customElements.define(elementName, class extends tagClass {});
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
return tag;
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
|
|
147
|
+
// See https://git.io/JJ6SJ for "How to document your components using JSDoc"
|
|
188
148
|
/**
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
149
|
+
* The auro-menu element provides users a way to select from a list of options.
|
|
150
|
+
* @attr {Object} optionSelected - Specifies the current selected menuOption.
|
|
151
|
+
* @attr {String} matchWord - Specifies a string used to highlight matched string parts in options.
|
|
152
|
+
* @attr {Boolean} disabled - When true, the entire menu and all options are disabled;
|
|
153
|
+
* @attr {Boolean} noCheckmark - When true, selected option will not show the checkmark.
|
|
154
|
+
* @attr {Boolean} loading - When true, displays a loading state using the loadingIcon and loadingText slots if provided.
|
|
155
|
+
* @attr {String} value - Value selected for the menu.
|
|
156
|
+
* @prop {Boolean} hasLoadingPlaceholder - Indicates whether the menu has a loadingIcon or loadingText to render when in a loading state.
|
|
157
|
+
* @event auroMenu-selectedOption - Notifies that a new menuoption selection has been made.
|
|
158
|
+
* @event selectedOption - (DEPRECATED) Notifies that a new menuoption selection has been made.
|
|
159
|
+
* @event auroMenu-activatedOption - Notifies that a menuoption has been made `active`.
|
|
160
|
+
* @event auroMenuActivatedOption - (DEPRECATED) Notifies that a menuoption has been made `active`.
|
|
161
|
+
* @event auroMenu-selectValueFailure - Notifies that a an attempt to select a menuoption by matching a value has failed.
|
|
162
|
+
* @event auroMenuSelectValueFailure - (DEPRECATED) Notifies that a an attempt to select a menuoption by matching a value has failed.
|
|
163
|
+
* @event auroMenu-customEventFired - Notifies that a custom event has been fired.
|
|
164
|
+
* @event auroMenuCustomEventFired - (DEPRECATED) Notifies that a custom event has been fired.
|
|
165
|
+
* @event auroMenu-selectValueReset - Notifies that the component value has been reset.
|
|
166
|
+
* @event auroMenu-loadingChange - Notifies when the loading attribute is changed.
|
|
167
|
+
* @slot loadingText - Text to show while loading attribute is set
|
|
168
|
+
* @slot loadingIcon - Icon to show while loading attribute is set
|
|
169
|
+
* @slot - Slot for insertion of menu options.
|
|
192
170
|
*/
|
|
193
|
-
const t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e$1=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i;}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}
|
|
194
171
|
|
|
195
|
-
|
|
196
|
-
* @license
|
|
197
|
-
* Copyright 2018 Google LLC
|
|
198
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
199
|
-
*/const e=e$1(class extends i{constructor(t$1){if(super(t$1),t$1.type!==t.ATTRIBUTE||"class"!==t$1.name||t$1.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return " "+Object.keys(t).filter((s=>t[s])).join(" ")+" "}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)));}return T}});
|
|
172
|
+
/* eslint-disable no-magic-numbers, max-lines */
|
|
200
173
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
174
|
+
class AuroMenu extends r {
|
|
175
|
+
constructor() {
|
|
176
|
+
super();
|
|
177
|
+
this.value = undefined;
|
|
178
|
+
this.optionSelected = undefined;
|
|
179
|
+
this.matchWord = undefined;
|
|
180
|
+
this.noCheckmark = false;
|
|
181
|
+
this.optionActive = undefined;
|
|
182
|
+
this.loading = false;
|
|
206
183
|
|
|
207
|
-
|
|
208
|
-
|
|
184
|
+
/**
|
|
185
|
+
* @private
|
|
186
|
+
*/
|
|
187
|
+
this.rootMenu = true;
|
|
209
188
|
|
|
189
|
+
/**
|
|
190
|
+
* @private
|
|
191
|
+
*/
|
|
192
|
+
this.runtimeUtils = new AuroLibraryRuntimeUtils();
|
|
210
193
|
|
|
211
|
-
/**
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
*/
|
|
194
|
+
/**
|
|
195
|
+
* @private
|
|
196
|
+
*/
|
|
197
|
+
this.nestingSpacer = '<span class="nestingSpacer"></span>';
|
|
216
198
|
|
|
217
|
-
|
|
199
|
+
/**
|
|
200
|
+
* @private
|
|
201
|
+
*/
|
|
202
|
+
this.loadingSlots = null;
|
|
203
|
+
}
|
|
218
204
|
|
|
219
|
-
// function to define props used within the scope of this component
|
|
220
205
|
static get properties() {
|
|
221
206
|
return {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
207
|
+
noCheckmark: {
|
|
208
|
+
type: Boolean,
|
|
209
|
+
reflect: true
|
|
210
|
+
},
|
|
211
|
+
disabled: {
|
|
212
|
+
type: Boolean,
|
|
213
|
+
reflect: true
|
|
214
|
+
},
|
|
215
|
+
loading: {
|
|
216
|
+
type: Boolean,
|
|
217
|
+
reflect: true
|
|
218
|
+
},
|
|
219
|
+
optionSelected: { type: Object },
|
|
220
|
+
optionActive: { type: Object },
|
|
221
|
+
matchWord: { type: String },
|
|
222
|
+
value: { type: String }
|
|
228
223
|
};
|
|
229
224
|
}
|
|
230
225
|
|
|
226
|
+
static get styles() {
|
|
227
|
+
return [
|
|
228
|
+
styleCss$2,
|
|
229
|
+
colorCss$2,
|
|
230
|
+
tokensCss$1
|
|
231
|
+
];
|
|
232
|
+
}
|
|
233
|
+
|
|
231
234
|
/**
|
|
232
|
-
*
|
|
235
|
+
* This will register this element with the browser.
|
|
236
|
+
* @param {string} [name="auro-menu"] - The name of element that you want to register to.
|
|
237
|
+
*
|
|
238
|
+
* @example
|
|
239
|
+
* AuroMenu.register("custom-menu") // this will register this element to <custom-menu/>
|
|
240
|
+
*
|
|
233
241
|
*/
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
return 'true'
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
return 'false'
|
|
242
|
+
static register(name = "auro-menu") {
|
|
243
|
+
AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroMenu);
|
|
240
244
|
}
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
var error = {"role":"img","color":"currentColor","title":"","desc":"Error alert indicator.","width":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","height":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","xmlns":"http://www.w3.org/2000/svg","xmlns_xlink":"http://www.w3.org/1999/xlink","viewBox":"0 0 24 24","path":"/icons","style":"ico_squareLarge","type":"icon","name":"error","category":"alert","deprecated":true,"svg":"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-labelledby=\"error__desc\" class=\"ico_squareLarge\" data-deprecated=\"true\" role=\"img\" style=\"min-width:var(--auro-size-lg, var(--ds-size-300, 1.5rem));height:var(--auro-size-lg, var(--ds-size-300, 1.5rem));fill:currentColor\" viewBox=\"0 0 24 24\" part=\"svg\"><title/><desc id=\"error__desc\">Error alert indicator.</desc><path d=\"m13.047 5.599 6.786 11.586A1.207 1.207 0 0 1 18.786 19H5.214a1.207 1.207 0 0 1-1.047-1.815l6.786-11.586a1.214 1.214 0 0 1 2.094 0m-1.165.87a.23.23 0 0 0-.085.085L5.419 17.442a.232.232 0 0 0 .203.35h12.756a.234.234 0 0 0 .203-.35L12.203 6.554a.236.236 0 0 0-.321-.084M12 15.5a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5m-.024-6.22c.325 0 .589.261.589.583v4.434a.586.586 0 0 1-.589.583.586.586 0 0 1-.588-.583V9.863c0-.322.264-.583.588-.583\"/></svg>"};
|
|
244
245
|
|
|
245
|
-
|
|
246
|
+
/**
|
|
247
|
+
* Passes the noCheckmark attribute to all nested auro-menuoptions.
|
|
248
|
+
* @private
|
|
249
|
+
* @returns {void}
|
|
250
|
+
*/
|
|
251
|
+
handleNoCheckmarkAttr() {
|
|
252
|
+
if (this.noCheckmark) {
|
|
253
|
+
const menus = this.querySelectorAll('auro-menu, [auro-menu]');
|
|
246
254
|
|
|
247
|
-
|
|
255
|
+
menus.forEach((menu) => {
|
|
256
|
+
menu.setAttribute('noCheckmark', '');
|
|
257
|
+
});
|
|
248
258
|
|
|
249
|
-
|
|
250
|
-
* A callback to parse Response body.
|
|
251
|
-
*
|
|
252
|
-
* @callback ResponseParser
|
|
253
|
-
* @param {Fetch.Response} response
|
|
254
|
-
* @returns {Promise}
|
|
255
|
-
*/
|
|
259
|
+
const options = this.querySelectorAll('auro-menuoption, [auro-menuoption]');
|
|
256
260
|
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
* @param {Object} [options={}]
|
|
262
|
-
* @param {ResponseParser} [options.responseParser=(response) => response.text()]
|
|
263
|
-
* @returns {Promise}
|
|
264
|
-
*/
|
|
265
|
-
const cacheFetch = (uri, options = {}) => {
|
|
266
|
-
const responseParser = options.responseParser || ((response) => response.text());
|
|
267
|
-
if (!_fetchMap.has(uri)) {
|
|
268
|
-
_fetchMap.set(uri, fetch(uri).then(responseParser));
|
|
261
|
+
options.forEach((option) => {
|
|
262
|
+
option.setAttribute('noCheckmark', '');
|
|
263
|
+
});
|
|
264
|
+
}
|
|
269
265
|
}
|
|
270
|
-
return _fetchMap.get(uri);
|
|
271
|
-
};
|
|
272
266
|
|
|
273
|
-
|
|
267
|
+
firstUpdated() {
|
|
268
|
+
// Add the tag name as an attribute if it is different than the component name
|
|
269
|
+
this.runtimeUtils.handleComponentTagRename(this, 'auro-menu');
|
|
274
270
|
|
|
275
|
-
|
|
276
|
-
// See LICENSE in the project root for license information.
|
|
271
|
+
this.addEventListener('keydown', this.handleKeyDown);
|
|
277
272
|
|
|
273
|
+
this.loadingSlots = this.querySelectorAll("[slot='loadingText'], [slot='loadingIcon']");
|
|
274
|
+
}
|
|
278
275
|
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
*/
|
|
276
|
+
updated(changedProperties) {
|
|
277
|
+
if (changedProperties.has('matchWord')) {
|
|
278
|
+
this.markOptions();
|
|
279
|
+
}
|
|
284
280
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
super();
|
|
289
|
-
this.onDark = false;
|
|
290
|
-
}
|
|
281
|
+
if (changedProperties.has('value')) {
|
|
282
|
+
this.selectByValue(this.value);
|
|
283
|
+
}
|
|
291
284
|
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
return {
|
|
295
|
-
...super.properties,
|
|
296
|
-
onDark: {
|
|
297
|
-
type: Boolean,
|
|
298
|
-
reflect: true
|
|
299
|
-
},
|
|
285
|
+
if (changedProperties.has('disabled')) {
|
|
286
|
+
const options = Array.from(this.querySelectorAll('auro-menuoption, [auro-menuoption]'));
|
|
300
287
|
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
*/
|
|
304
|
-
svg: {
|
|
305
|
-
attribute: false,
|
|
306
|
-
reflect: true
|
|
288
|
+
for (const element of options) {
|
|
289
|
+
element.disabled = this.disabled;
|
|
307
290
|
}
|
|
308
|
-
}
|
|
309
|
-
}
|
|
291
|
+
}
|
|
310
292
|
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
293
|
+
if (changedProperties.has('loading')) {
|
|
294
|
+
const event = new CustomEvent("auroMenu-loadingChange", {
|
|
295
|
+
detail: {
|
|
296
|
+
loading: this.loading,
|
|
297
|
+
hasLoadingPlaceholder:
|
|
298
|
+
this.hasLoadingPlaceholder
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
this.setAttribute("aria-busy", this.hasAttribute("loading"));
|
|
302
|
+
this.dispatchEvent(event);
|
|
303
|
+
}
|
|
315
304
|
}
|
|
316
305
|
|
|
317
306
|
/**
|
|
318
|
-
* Async function to fetch requested icon from npm CDN.
|
|
319
307
|
* @private
|
|
320
|
-
* @param {
|
|
321
|
-
* @
|
|
322
|
-
* @returns {SVGElement} DOM - Ready HTML to be appended.
|
|
308
|
+
* @param {Object} option - The menuoption to check for interactive state.
|
|
309
|
+
* @returns {Boolean} Returns true if the option is interactive.
|
|
323
310
|
*/
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
if (category === 'logos') {
|
|
328
|
-
iconHTML = await cacheFetch(`${this.uri}/${category}/${name}.svg`);
|
|
329
|
-
} else {
|
|
330
|
-
iconHTML = await cacheFetch(`${this.uri}/icons/${category}/${name}.svg`);
|
|
331
|
-
}
|
|
311
|
+
optionInteractive(option) {
|
|
312
|
+
return !option.hasAttribute('hidden') && !option.hasAttribute('disabled') && !option.hasAttribute('static');
|
|
313
|
+
}
|
|
332
314
|
|
|
333
|
-
|
|
315
|
+
/**
|
|
316
|
+
* @private
|
|
317
|
+
* @returns {void} When called will update the DOM with visible suggest text matches.
|
|
318
|
+
*/
|
|
319
|
+
markOptions() {
|
|
320
|
+
if (this.items && this.items.length > 0 && (this.matchWord && this.matchWord.length > 0)) {
|
|
334
321
|
|
|
335
|
-
|
|
336
|
-
|
|
322
|
+
// Escape special regex characters
|
|
323
|
+
const escapedWord = this.matchWord.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&');
|
|
337
324
|
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
if (!this.customSvg) {
|
|
341
|
-
const svg = await this.fetchIcon(this.category, this.name);
|
|
325
|
+
// Global, case-insensitive, unicode matching regex pattern
|
|
326
|
+
const regexWord = new RegExp(escapedWord, 'giu');
|
|
342
327
|
|
|
343
|
-
|
|
344
|
-
this.
|
|
345
|
-
|
|
346
|
-
|
|
328
|
+
this.items.forEach((item) => {
|
|
329
|
+
if (this.optionInteractive(item) && !item.hasAttribute('persistent')) {
|
|
330
|
+
const nested = item.querySelectorAll('.nestingSpacer');
|
|
331
|
+
const nestingSpacerBundle = [...nested].map(() => this.nestingSpacer).join('');
|
|
347
332
|
|
|
348
|
-
|
|
349
|
-
|
|
333
|
+
item.innerHTML = nestingSpacerBundle + item.textContent.replace(regexWord, (match) => `<strong>${match}</strong>`);
|
|
334
|
+
}
|
|
335
|
+
});
|
|
350
336
|
}
|
|
351
337
|
}
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
var tokensCss = i$5`:host{--ds-auro-icon-color: var(--ds-color-icon-primary-default, $ds-color-icon-primary-default);--ds-auro-icon-size: var(--ds-size-300, $ds-size-300)}`;
|
|
355
|
-
|
|
356
|
-
var colorCss = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[accent]){--ds-auro-icon-color: var(--ds-color-icon-accent-default, #a2c270)}:host(:not([onDark])[disabled]){--ds-auro-icon-color: var(--ds-color-icon-ui-primary-disabled-default, #adadad)}:host(:not([onDark])[emphasis]){--ds-auro-icon-color: var(--ds-color-icon-emphasis-default, #2a2a2a)}:host(:not([onDark])[error]){--ds-auro-icon-color: var(--ds-color-icon-error-default, #cc1816)}:host(:not([onDark])[info]){--ds-auro-icon-color: var(--ds-color-icon-info-default, #326aa5)}:host(:not([onDark])[secondary]){--ds-auro-icon-color: var(--ds-color-icon-secondary-default, #7e8894)}:host(:not([onDark])[subtle]){--ds-auro-icon-color: var(--ds-color-icon-subtle-default, #a0c9f1)}:host(:not([onDark])[success]){--ds-auro-icon-color: var(--ds-color-icon-success-default, #40a080)}:host(:not([onDark])[tertiary]){--ds-auro-icon-color: var(--ds-color-icon-tertiary-default, #afb9c6)}:host(:not([onDark])[warning]){--ds-auro-icon-color: var(--ds-color-icon-warning-default, #c49432)}:host([onDark]){--ds-auro-icon-color: var(--ds-color-icon-primary-inverse, #f7f7f7)}:host([onDark][accent]){--ds-auro-icon-color: var(--ds-color-icon-accent-inverse, #badd81)}:host([onDark][disabled]){--ds-auro-icon-color: var(--ds-color-icon-ui-primary-disabled-inverse, #7e7e7e)}:host([onDark][emphasis]){--ds-auro-icon-color: var(--ds-color-icon-emphasis-inverse, #ffffff)}:host([onDark][error]){--ds-auro-icon-color: var(--ds-color-icon-error-inverse, #f9aca6)}:host([onDark][info]){--ds-auro-icon-color: var(--ds-color-icon-info-inverse, #89b2d4)}:host([onDark][secondary]){--ds-auro-icon-color: var(--ds-color-icon-secondary-inverse, #ccd2db)}:host([onDark][subtle]){--ds-auro-icon-color: var(--ds-color-icon-subtle-inverse, #326aa5)}:host([onDark][success]){--ds-auro-icon-color: var(--ds-color-icon-success-inverse, #8eceb9)}:host([onDark][tertiary]){--ds-auro-icon-color: var(--ds-color-icon-tertiary-inverse, #939fad)}:host([onDark][warning]){--ds-auro-icon-color: var(--ds-color-icon-warning-inverse, #f2c153)}`;
|
|
357
|
-
|
|
358
|
-
// Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
359
|
-
// See LICENSE in the project root for license information.
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
// See https://git.io/JJ6SJ for "How to document your components using JSDoc"
|
|
363
|
-
/**
|
|
364
|
-
* auro-icon provides users a way to use the Auro Icons by simply passing in the category and name.
|
|
365
|
-
*
|
|
366
|
-
* @attr {String} category - The category of the icon you are looking for. See https://auro.alaskaair.com/icons/usage.
|
|
367
|
-
* @attr {String} name - The name of the icon you are looking for without the file extension. See https://auro.alaskaair.com/icons/usage
|
|
368
|
-
* @attr {Boolean} customColor - Removes primary selector.
|
|
369
|
-
* @attr {Boolean} customSvg - When true, auro-icon will render a custom SVG inside the default slot.
|
|
370
|
-
* @attr {Boolean} label - Exposes content in slot as icon label.
|
|
371
|
-
* @attr {Boolean} primary - DEPRECATED: Sets the icon to use the baseline primary icon style.
|
|
372
|
-
* @attr {Boolean} accent - Sets the icon to use the accent style.
|
|
373
|
-
* @attr {Boolean} emphasis - Sets the icon to use the emphasis style.
|
|
374
|
-
* @attr {Boolean} disabled - Sets the icon to use the disabled style.
|
|
375
|
-
* @attr {Boolean} error - Sets the icon to use the error style.
|
|
376
|
-
* @attr {Boolean} info - Sets the icon to use the info style.
|
|
377
|
-
* @attr {Boolean} secondary - Sets the icon to use the secondary style.
|
|
378
|
-
* @attr {Boolean} tertiary - Sets the icon to use the tertiary style.
|
|
379
|
-
* @attr {Boolean} subtle - Sets the icon to use the subtle style.
|
|
380
|
-
* @attr {Boolean} success - Sets the icon to use the success style.
|
|
381
|
-
* @attr {Boolean} warning - Sets the icon to use the warning style.
|
|
382
|
-
* @attr {String} ariaHidden - Set aria-hidden value. Default is `true`. Option is `false`.
|
|
383
|
-
* @attr {String} uri - Set the uri for CDN used when fetching icons
|
|
384
|
-
* @slot - Hidden from visibility, used for a11y if icon description is needed.
|
|
385
|
-
* @slot svg - Used for custom SVG content.
|
|
386
|
-
*/
|
|
387
338
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
this.
|
|
394
|
-
|
|
395
|
-
|
|
339
|
+
/**
|
|
340
|
+
* Reset the menu and all options.
|
|
341
|
+
*/
|
|
342
|
+
resetOptionsStates() {
|
|
343
|
+
this.optionSelected = undefined;
|
|
344
|
+
if (this.items) {
|
|
345
|
+
this.items.forEach((item) => {
|
|
346
|
+
item.classList.remove('active');
|
|
347
|
+
item.removeAttribute('selected');
|
|
348
|
+
});
|
|
349
|
+
}
|
|
396
350
|
}
|
|
397
351
|
|
|
398
352
|
/**
|
|
399
|
-
*
|
|
353
|
+
* Set the attributes on the selected menuoption, the menu value and stored option.
|
|
354
|
+
* @param {Object} option - The menuoption to be selected.
|
|
400
355
|
* @private
|
|
401
|
-
* @returns {void}
|
|
402
356
|
*/
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
this.disabled = false;
|
|
408
|
-
this.emphasis = false;
|
|
409
|
-
this.error = false;
|
|
410
|
-
this.info = false;
|
|
411
|
-
this.label = false;
|
|
412
|
-
this.primary = false;
|
|
413
|
-
this.secondary = false;
|
|
414
|
-
this.subtle = false;
|
|
415
|
-
this.success = false;
|
|
416
|
-
this.tertiary = false;
|
|
417
|
-
this.warning = false;
|
|
418
|
-
this.runtimeUtils = new AuroLibraryRuntimeUtils();
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
// function to define props used within the scope of this component
|
|
422
|
-
static get properties() {
|
|
423
|
-
return {
|
|
424
|
-
...super.properties,
|
|
425
|
-
accent: {
|
|
426
|
-
type: Boolean,
|
|
427
|
-
reflect: true
|
|
428
|
-
},
|
|
429
|
-
ariaHidden: {
|
|
430
|
-
type: String,
|
|
431
|
-
reflect: true
|
|
432
|
-
},
|
|
433
|
-
category: {
|
|
434
|
-
type: String,
|
|
435
|
-
reflect: true
|
|
436
|
-
},
|
|
437
|
-
customColor: {
|
|
438
|
-
type: Boolean
|
|
439
|
-
},
|
|
440
|
-
customSvg: {
|
|
441
|
-
type: Boolean
|
|
442
|
-
},
|
|
443
|
-
disabled: {
|
|
444
|
-
type: Boolean,
|
|
445
|
-
reflect: true
|
|
446
|
-
},
|
|
447
|
-
emphasis: {
|
|
448
|
-
type: Boolean,
|
|
449
|
-
reflect: true
|
|
450
|
-
},
|
|
451
|
-
error: {
|
|
452
|
-
type: Boolean,
|
|
453
|
-
reflect: true
|
|
454
|
-
},
|
|
455
|
-
info: {
|
|
456
|
-
type: Boolean,
|
|
457
|
-
reflect: true
|
|
458
|
-
},
|
|
459
|
-
label: {
|
|
460
|
-
type: Boolean,
|
|
461
|
-
reflect: true
|
|
462
|
-
},
|
|
463
|
-
name: {
|
|
464
|
-
type: String,
|
|
465
|
-
reflect: true
|
|
466
|
-
},
|
|
467
|
-
primary: {
|
|
468
|
-
type: Boolean,
|
|
469
|
-
reflect: true
|
|
470
|
-
},
|
|
471
|
-
secondary: {
|
|
472
|
-
type: Boolean,
|
|
473
|
-
reflect: true
|
|
474
|
-
},
|
|
475
|
-
subtle: {
|
|
476
|
-
type: Boolean,
|
|
477
|
-
reflect: true
|
|
478
|
-
},
|
|
479
|
-
success: {
|
|
480
|
-
type: Boolean,
|
|
481
|
-
reflect: true
|
|
482
|
-
},
|
|
483
|
-
tertiary: {
|
|
484
|
-
type: Boolean,
|
|
485
|
-
reflect: true
|
|
486
|
-
},
|
|
487
|
-
uri: {
|
|
488
|
-
type: String
|
|
489
|
-
},
|
|
490
|
-
warning: {
|
|
491
|
-
type: Boolean,
|
|
492
|
-
reflect: true
|
|
493
|
-
}
|
|
494
|
-
};
|
|
495
|
-
}
|
|
357
|
+
handleLocalSelectState(option) {
|
|
358
|
+
option.setAttribute('selected', '');
|
|
359
|
+
option.classList.add('active');
|
|
360
|
+
option.ariaSelected = true;
|
|
496
361
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
i$5`${tokensCss}`,
|
|
501
|
-
i$5`${styleCss}`,
|
|
502
|
-
i$5`${colorCss}`
|
|
503
|
-
];
|
|
362
|
+
this.value = option.value;
|
|
363
|
+
this.optionSelected = option;
|
|
364
|
+
this.index = this.items.indexOf(option);
|
|
504
365
|
}
|
|
505
366
|
|
|
506
367
|
/**
|
|
507
|
-
*
|
|
508
|
-
* @
|
|
509
|
-
*
|
|
510
|
-
* @example
|
|
511
|
-
* AuroIcon.register("custom-icon") // this will register this element to <custom-icon/>
|
|
512
|
-
*
|
|
368
|
+
* Notify selection change.
|
|
369
|
+
* @private
|
|
370
|
+
* @return {void}
|
|
513
371
|
*/
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
372
|
+
notifySelectionChange() {
|
|
373
|
+
// this event needs to be removed after select and combobox are updated to use the new standard name
|
|
374
|
+
this.dispatchEvent(new CustomEvent('selectedOption', {
|
|
375
|
+
bubbles: true,
|
|
376
|
+
cancelable: false,
|
|
377
|
+
composed: true,
|
|
378
|
+
}));
|
|
520
379
|
|
|
521
|
-
|
|
522
|
-
|
|
380
|
+
this.dispatchEvent(new CustomEvent('auroMenu-selectedOption', {
|
|
381
|
+
bubbles: true,
|
|
382
|
+
cancelable: false,
|
|
383
|
+
composed: true,
|
|
384
|
+
}));
|
|
523
385
|
}
|
|
524
386
|
|
|
525
387
|
/**
|
|
526
|
-
*
|
|
388
|
+
* Process actions for making making a menuoption selection.
|
|
527
389
|
*/
|
|
528
|
-
|
|
529
|
-
this.
|
|
530
|
-
|
|
390
|
+
makeSelection() {
|
|
391
|
+
if (!this.items) {
|
|
392
|
+
this.initItems();
|
|
393
|
+
}
|
|
531
394
|
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
const a11y = {
|
|
535
|
-
'labelContainer': true,
|
|
536
|
-
'util_displayHiddenVisually': !this.label
|
|
537
|
-
};
|
|
395
|
+
if (this.items[this.index] && !this.items[this.index].hasAttribute('disabled')) {
|
|
396
|
+
this.resetOptionsStates();
|
|
538
397
|
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
};
|
|
542
|
-
|
|
543
|
-
return x`
|
|
544
|
-
<div
|
|
545
|
-
class="${e(classes)}"
|
|
546
|
-
title="${o(this.title || undefined)}">
|
|
547
|
-
<span aria-hidden="${o(this.ariaHidden ? this.ariaHidden : true)}" part="svg">
|
|
548
|
-
${this.customSvg ? x`
|
|
549
|
-
<slot name="svg"></slot>
|
|
550
|
-
` : x`
|
|
551
|
-
${this.svg}
|
|
552
|
-
`
|
|
553
|
-
}
|
|
554
|
-
</span>
|
|
555
|
-
|
|
556
|
-
<div class="${e(a11y)}">
|
|
557
|
-
<slot></slot>
|
|
558
|
-
</div>
|
|
559
|
-
</div>
|
|
560
|
-
`;
|
|
561
|
-
}
|
|
562
|
-
}
|
|
563
|
-
|
|
564
|
-
var iconVersion = '6.1.1';
|
|
398
|
+
if (this.index >= 0) {
|
|
399
|
+
const option = this.items[this.index];
|
|
565
400
|
|
|
566
|
-
|
|
401
|
+
// only handle options that are not disabled, hidden or static
|
|
402
|
+
if (option && this.optionInteractive(option)) {
|
|
403
|
+
// fire custom event if defined otherwise make selection
|
|
404
|
+
if (option.hasAttribute('event')) {
|
|
405
|
+
this.dispatchEvent(new CustomEvent(option.getAttribute('event'), {
|
|
406
|
+
bubbles: true,
|
|
407
|
+
cancelable: false,
|
|
408
|
+
composed: true,
|
|
409
|
+
}));
|
|
567
410
|
|
|
568
|
-
//
|
|
569
|
-
|
|
411
|
+
// this event needs to be removed after select and combobox are updated to use the new standard name
|
|
412
|
+
this.dispatchEvent(new CustomEvent('auroMenuCustomEventFired', {
|
|
413
|
+
bubbles: true,
|
|
414
|
+
cancelable: false,
|
|
415
|
+
composed: true,
|
|
416
|
+
}));
|
|
570
417
|
|
|
418
|
+
this.dispatchEvent(new CustomEvent('auroMenu-customEventFired', {
|
|
419
|
+
bubbles: true,
|
|
420
|
+
cancelable: false,
|
|
421
|
+
composed: true,
|
|
422
|
+
}));
|
|
423
|
+
} else {
|
|
424
|
+
this.handleLocalSelectState(option);
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
}
|
|
571
429
|
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
*
|
|
575
|
-
* @attr {String} value - Specifies the value to be sent to a server.
|
|
576
|
-
* @attr {String} noCheckmark - When true, selected option will not show the checkmark.
|
|
577
|
-
* @attr {Boolean} disabled - When true specifies that the menuoption is disabled.
|
|
578
|
-
* @attr {Boolean} selected - Specifies that an option is selected.
|
|
579
|
-
* @event auroMenuOption-mouseover - Notifies that this option has been hovered over.
|
|
580
|
-
* @slot Specifies text for an option, but is not the value.
|
|
581
|
-
*/
|
|
582
|
-
class AuroMenuOption extends r {
|
|
583
|
-
constructor() {
|
|
584
|
-
super();
|
|
430
|
+
this.notifySelectionChange();
|
|
431
|
+
}
|
|
585
432
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
433
|
+
/**
|
|
434
|
+
* Manage ArrowDown, ArrowUp and Enter keyboard events.
|
|
435
|
+
* @private
|
|
436
|
+
* @param {Object} event - Event object from the browser.
|
|
437
|
+
*/
|
|
438
|
+
handleKeyDown(event) {
|
|
439
|
+
event.preventDefault();
|
|
591
440
|
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
441
|
+
// With ArrowDown/ArrowUp events, pass new value to selectNextItem()
|
|
442
|
+
// With Enter event, set value and apply attrs
|
|
443
|
+
switch (event.key) {
|
|
444
|
+
case "ArrowDown":
|
|
445
|
+
this.selectNextItem('down');
|
|
446
|
+
break;
|
|
595
447
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
this.tabIndex = -1;
|
|
448
|
+
case "ArrowUp":
|
|
449
|
+
this.selectNextItem('up');
|
|
450
|
+
break;
|
|
600
451
|
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
452
|
+
case "Enter":
|
|
453
|
+
this.makeSelection();
|
|
454
|
+
break;
|
|
455
|
+
}
|
|
605
456
|
}
|
|
606
457
|
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
type: Boolean,
|
|
615
|
-
reflect: true
|
|
616
|
-
},
|
|
617
|
-
disabled: {
|
|
618
|
-
type: Boolean,
|
|
619
|
-
reflect: true
|
|
620
|
-
},
|
|
621
|
-
value: {
|
|
622
|
-
type: String,
|
|
623
|
-
reflect: true
|
|
624
|
-
},
|
|
625
|
-
tabIndex: {
|
|
626
|
-
type: Number,
|
|
627
|
-
reflect: true
|
|
628
|
-
}
|
|
629
|
-
};
|
|
458
|
+
/**
|
|
459
|
+
* Initializes all menu options in the DOM. This must be re-run every time the options are changed.
|
|
460
|
+
* @private
|
|
461
|
+
*/
|
|
462
|
+
initItems() {
|
|
463
|
+
this.items = Array.from(this.querySelectorAll('auro-menuoption, [auro-menuoption]'));
|
|
464
|
+
this.handleNoCheckmarkAttr();
|
|
630
465
|
}
|
|
631
466
|
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
467
|
+
/**
|
|
468
|
+
* Sets the index value of the selected item or first non-disabled menuoption.
|
|
469
|
+
* @private
|
|
470
|
+
*/
|
|
471
|
+
getSelectedIndex() {
|
|
472
|
+
// find the first `selected` and not `disabled`, `hidden` or `static` option
|
|
473
|
+
const index = this.items.findIndex((option) => option.hasAttribute('selected') && this.optionInteractive(option));
|
|
474
|
+
|
|
475
|
+
if (index >= 0) {
|
|
476
|
+
this.index = index;
|
|
477
|
+
this.makeSelection();
|
|
478
|
+
}
|
|
638
479
|
}
|
|
639
480
|
|
|
640
481
|
/**
|
|
641
|
-
*
|
|
642
|
-
*
|
|
643
|
-
*
|
|
644
|
-
* @example
|
|
645
|
-
* AuroMenuOption.register("custom-menuoption") // this will register this element to <custom-menuoption/>
|
|
482
|
+
* Using value of current this.index evaluates index
|
|
483
|
+
* of next :focus to set based on array of this.items ignoring items
|
|
484
|
+
* with disabled attr.
|
|
646
485
|
*
|
|
486
|
+
* The event.target is not used as the function needs to know where to go,
|
|
487
|
+
* versus knowing where it is.
|
|
488
|
+
* @param {String} moveDirection - Up or Down based on keyboard event.
|
|
647
489
|
*/
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
490
|
+
selectNextItem(moveDirection) {
|
|
491
|
+
if (this.index >= 0) {
|
|
492
|
+
this.items[this.index].classList.remove('active');
|
|
651
493
|
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
this.runtimeUtils.handleComponentTagRename(this, 'auro-menuoption');
|
|
494
|
+
// calculate which is the selection we should focus next
|
|
495
|
+
let increment = 0;
|
|
655
496
|
|
|
656
|
-
|
|
657
|
-
|
|
497
|
+
if (moveDirection === 'down') {
|
|
498
|
+
increment = 1;
|
|
499
|
+
} else if (moveDirection === 'up') {
|
|
500
|
+
increment = -1;
|
|
501
|
+
}
|
|
658
502
|
|
|
659
|
-
|
|
660
|
-
this.dispatchEvent(new CustomEvent('auroMenuOption-mouseover', {
|
|
661
|
-
bubbles: true,
|
|
662
|
-
cancelable: false,
|
|
663
|
-
composed: true,
|
|
664
|
-
detail: this
|
|
665
|
-
}));
|
|
666
|
-
});
|
|
667
|
-
}
|
|
503
|
+
this.index += increment;
|
|
668
504
|
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
this.
|
|
505
|
+
// keep looping inside the array of options
|
|
506
|
+
if (this.index > this.items.length - 1) {
|
|
507
|
+
this.index = 0;
|
|
508
|
+
} else if (this.index < 0) {
|
|
509
|
+
this.index = this.items.length - 1;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
// check if new index is disabled, static or hidden, if so, execute again
|
|
513
|
+
if (!this.optionInteractive(this.items[this.index])) {
|
|
514
|
+
this.selectNextItem(moveDirection);
|
|
515
|
+
} else {
|
|
516
|
+
// apply focus to new index
|
|
517
|
+
this.updateActiveOption(this.index);
|
|
518
|
+
}
|
|
519
|
+
} else {
|
|
520
|
+
this.index = 0;
|
|
521
|
+
|
|
522
|
+
if (this.items[this.index].hasAttribute('hidden') || this.items[this.index].hasAttribute('disabled')) {
|
|
523
|
+
this.selectNextItem(moveDirection);
|
|
524
|
+
} else {
|
|
525
|
+
this.updateActiveOption(this.index);
|
|
526
|
+
}
|
|
673
527
|
}
|
|
674
528
|
}
|
|
675
529
|
|
|
676
530
|
/**
|
|
677
|
-
*
|
|
678
|
-
*
|
|
531
|
+
* Used for applying indentation to each level of nested menu.
|
|
679
532
|
* @private
|
|
680
|
-
* @param {
|
|
681
|
-
* @returns {Element} The HTML element containing the SVG icon.
|
|
533
|
+
* @param {String} menu - Root level menu object.
|
|
682
534
|
*/
|
|
683
|
-
|
|
684
|
-
const
|
|
685
|
-
const svg = dom.body.firstChild;
|
|
686
|
-
|
|
687
|
-
svg.setAttribute('slot', 'svg');
|
|
535
|
+
handleNestedMenus(menu) {
|
|
536
|
+
const nestedMenus = menu.querySelectorAll('auro-menu, [auro-menu');
|
|
688
537
|
|
|
689
|
-
|
|
690
|
-
|
|
538
|
+
if (nestedMenus.length === 0) {
|
|
539
|
+
return;
|
|
540
|
+
}
|
|
691
541
|
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
${this.selected && !this.nocheckmark ? this.generateIconHtml(checkmarkIcon.svg) : undefined}
|
|
695
|
-
<slot></slot>
|
|
696
|
-
`;
|
|
697
|
-
}
|
|
698
|
-
}
|
|
542
|
+
nestedMenus.forEach((nestedMenu) => {
|
|
543
|
+
const options = nestedMenu.querySelectorAll(':scope > auro-menuoption, :scope > [auro-menuoption');
|
|
699
544
|
|
|
700
|
-
|
|
701
|
-
|
|
545
|
+
options.forEach((option) => {
|
|
546
|
+
option.innerHTML = this.nestingSpacer + option.innerHTML;
|
|
547
|
+
});
|
|
702
548
|
|
|
549
|
+
this.handleNestedMenus(nestedMenu);
|
|
550
|
+
});
|
|
551
|
+
}
|
|
703
552
|
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
* @event auroMenu-activatedOption - Notifies that a menuoption has been made `active`.
|
|
715
|
-
* @event auroMenuActivatedOption - (DEPRECATED) Notifies that a menuoption has been made `active`.
|
|
716
|
-
* @event auroMenu-selectValueFailure - Notifies that a an attempt to select a menuoption by matching a value has failed.
|
|
717
|
-
* @event auroMenuSelectValueFailure - (DEPRECATED) Notifies that a an attempt to select a menuoption by matching a value has failed.
|
|
718
|
-
* @event auroMenu-customEventFired - Notifies that a custom event has been fired.
|
|
719
|
-
* @event auroMenuCustomEventFired - (DEPRECATED) Notifies that a custom event has been fired.
|
|
720
|
-
* @event auroMenu-selectValueReset - Notifies that the component value has been reset.
|
|
721
|
-
* @slot Slot for insertion of menu options.
|
|
722
|
-
*/
|
|
553
|
+
/**
|
|
554
|
+
* Method to apply `selected` attribute to `menuoption` via `value`.
|
|
555
|
+
* @private
|
|
556
|
+
* @param {String} value - Must match a unique `menuoption` value.
|
|
557
|
+
*/
|
|
558
|
+
selectByValue(value) {
|
|
559
|
+
let valueMatch = false;
|
|
560
|
+
if (!this.items) {
|
|
561
|
+
this.initItems();
|
|
562
|
+
}
|
|
723
563
|
|
|
724
|
-
|
|
564
|
+
this.index = undefined;
|
|
725
565
|
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
this.optionActive = undefined;
|
|
566
|
+
if (this.value && this.value.length > 0) {
|
|
567
|
+
for (let index = 0; index < this.items.length; index += 1) {
|
|
568
|
+
if (this.items[index].value === value) {
|
|
569
|
+
valueMatch = true;
|
|
570
|
+
this.index = index;
|
|
571
|
+
}
|
|
572
|
+
}
|
|
734
573
|
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
this.rootMenu = true;
|
|
574
|
+
if (!valueMatch) {
|
|
575
|
+
// reset the menu to no selection
|
|
576
|
+
this.index = undefined;
|
|
739
577
|
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
578
|
+
// this event needs to be removed after select and combobox are updated to use the new standard name
|
|
579
|
+
this.dispatchEvent(new CustomEvent('auroMenuSelectValueFailure', {
|
|
580
|
+
bubbles: true,
|
|
581
|
+
cancelable: false,
|
|
582
|
+
composed: true,
|
|
583
|
+
}));
|
|
744
584
|
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
585
|
+
this.dispatchEvent(new CustomEvent('auroMenu-selectValueFailure', {
|
|
586
|
+
bubbles: true,
|
|
587
|
+
cancelable: false,
|
|
588
|
+
composed: true,
|
|
589
|
+
}));
|
|
590
|
+
} else {
|
|
591
|
+
this.makeSelection();
|
|
592
|
+
}
|
|
593
|
+
} else {
|
|
594
|
+
this.resetOptionsStates();
|
|
595
|
+
|
|
596
|
+
this.dispatchEvent(new CustomEvent('auroMenu-selectValueReset', {
|
|
597
|
+
bubbles: true,
|
|
598
|
+
cancelable: false,
|
|
599
|
+
composed: true,
|
|
600
|
+
}));
|
|
601
|
+
}
|
|
749
602
|
}
|
|
750
603
|
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
604
|
+
/**
|
|
605
|
+
* Used to make the active state for options follow mouseover.
|
|
606
|
+
* @param {Number} index - Index of the menuoption that will be made active.
|
|
607
|
+
* @private
|
|
608
|
+
*/
|
|
609
|
+
updateActiveOption(index) {
|
|
610
|
+
this.items.forEach((item) => {
|
|
611
|
+
item.classList.remove('active');
|
|
612
|
+
});
|
|
613
|
+
this.items[index].classList.add('active');
|
|
614
|
+
this.optionActive = this.items[index];
|
|
615
|
+
|
|
616
|
+
this.dispatchEvent(new CustomEvent('auroMenuActivatedOption', {
|
|
617
|
+
bubbles: true,
|
|
618
|
+
cancelable: false,
|
|
619
|
+
composed: true,
|
|
620
|
+
detail: this.items[index]
|
|
621
|
+
}));
|
|
622
|
+
|
|
623
|
+
this.dispatchEvent(new CustomEvent('auroMenu-activatedOption', {
|
|
624
|
+
bubbles: true,
|
|
625
|
+
cancelable: false,
|
|
626
|
+
composed: true,
|
|
627
|
+
detail: this.items[index]
|
|
628
|
+
}));
|
|
766
629
|
}
|
|
767
630
|
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
631
|
+
/**
|
|
632
|
+
* Used to only make a selection when a menuoption is receiving a mousedown event.
|
|
633
|
+
* @param {Event} evt - Mousedown event.
|
|
634
|
+
* @private
|
|
635
|
+
*/
|
|
636
|
+
handleMenuMouseDown(evt) {
|
|
637
|
+
if (evt.target !== this) {
|
|
638
|
+
this.makeSelection();
|
|
639
|
+
}
|
|
774
640
|
}
|
|
775
641
|
|
|
776
642
|
/**
|
|
777
|
-
*
|
|
778
|
-
* @param {string} [name="auro-menu"] - The name of element that you want to register to.
|
|
643
|
+
* Checks if there are any loading placeholders in the component.
|
|
779
644
|
*
|
|
780
|
-
*
|
|
781
|
-
*
|
|
645
|
+
* This getter evaluates the `loadingSlots` collection to determine if it contains any items.
|
|
646
|
+
* If the size of the collection is greater than zero, it indicates the presence of loading
|
|
647
|
+
* placeholders, returning true; otherwise, it returns false.
|
|
782
648
|
*
|
|
649
|
+
* @getter hasLoadingPlaceholder
|
|
650
|
+
* @type {boolean}
|
|
651
|
+
* @returns {boolean} Returns true if loading placeholders exist; false otherwise.
|
|
783
652
|
*/
|
|
784
|
-
|
|
785
|
-
|
|
653
|
+
get hasLoadingPlaceholder() {
|
|
654
|
+
return this.loadingSlots.length > 0;
|
|
786
655
|
}
|
|
787
656
|
|
|
788
657
|
/**
|
|
789
|
-
*
|
|
658
|
+
* Used for @slotchange event on slotted element.
|
|
790
659
|
* @private
|
|
791
|
-
* @returns {void}
|
|
792
660
|
*/
|
|
793
|
-
|
|
794
|
-
if
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
menu.setAttribute('noCheckmark', '');
|
|
799
|
-
});
|
|
661
|
+
handleSlotItems() {
|
|
662
|
+
// Determine if this is the root of the menu/submenu layout.
|
|
663
|
+
if (this.parentElement && this.parentElement.closest('auro-menu, [auro-menu]')) {
|
|
664
|
+
this.rootMenu = false;
|
|
665
|
+
}
|
|
800
666
|
|
|
801
|
-
|
|
667
|
+
// If this is the root menu (not a nested menu) handle events, states and styling.
|
|
668
|
+
if (this.rootMenu) {
|
|
669
|
+
this.initItems();
|
|
670
|
+
this.setAttribute('role', 'listbox');
|
|
671
|
+
this.setAttribute('root', '');
|
|
672
|
+
this.handleNestedMenus(this);
|
|
673
|
+
this.markOptions();
|
|
674
|
+
this.index = -1;
|
|
675
|
+
this.getSelectedIndex();
|
|
802
676
|
|
|
803
|
-
|
|
804
|
-
|
|
677
|
+
this.addEventListener('keydown', this.handleKeyDown);
|
|
678
|
+
this.addEventListener('mousedown', this.handleMenuMouseDown);
|
|
679
|
+
this.addEventListener('auroMenuOption-mouseover', (evt) => {
|
|
680
|
+
this.index = this.items.indexOf(evt.target);
|
|
681
|
+
this.updateActiveOption(this.index);
|
|
805
682
|
});
|
|
683
|
+
} else {
|
|
684
|
+
// make sure to update all menuoption noCheckmark attributes when the menu is dynamically changed
|
|
685
|
+
this.handleNoCheckmarkAttr();
|
|
806
686
|
}
|
|
807
687
|
}
|
|
808
688
|
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
689
|
+
render() {
|
|
690
|
+
if (this.loading) {
|
|
691
|
+
return x`
|
|
692
|
+
<auro-menuoption disabled loadingplaceholder class="${this.hasLoadingPlaceholder ? '' : 'empty'}">
|
|
693
|
+
<div>
|
|
694
|
+
<slot name="loadingIcon"></slot>
|
|
695
|
+
<slot name="loadingText"></slot>
|
|
696
|
+
</div>
|
|
697
|
+
</auro-menuoption>
|
|
698
|
+
`;
|
|
699
|
+
}
|
|
700
|
+
return x`<slot @slotchange=${this.handleSlotItems}></slot>`;
|
|
814
701
|
}
|
|
702
|
+
}
|
|
815
703
|
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
704
|
+
/**
|
|
705
|
+
* @license
|
|
706
|
+
* Copyright 2020 Google LLC
|
|
707
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
708
|
+
*/
|
|
709
|
+
const a=Symbol.for(""),o$1=t=>{if(t?.r===a)return t?._$litStatic$},s=t=>({_$litStatic$:t,r:a}),i$1=(t,...r)=>({_$litStatic$:r.reduce(((r,e,a)=>r+(t=>{if(void 0!==t._$litStatic$)return t._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${t}. Use 'unsafeStatic' to pass non-literal values, but\n take care to ensure page security.`)})(e)+t[a+1]),t[0]),r:a}),l=new Map,n=t=>(r,...e)=>{const a=e.length;let s,i;const n=[],u=[];let c,$=0,f=!1;for(;$<a;){for(c=r[$];$<a&&void 0!==(i=e[$],s=o$1(i));)c+=s+r[++$],f=!0;$!==a&&u.push(i),n.push(c),$++;}if($===a&&n.push(r[a]),f){const t=n.join("$$lit$$");void 0===(r=l.get(t))&&(n.raw=n,l.set(t,r=n)),e=u;}return t(r,...e)},u=n(x);
|
|
820
710
|
|
|
821
|
-
|
|
822
|
-
this.selectByValue(this.value);
|
|
823
|
-
}
|
|
711
|
+
var styleCss$1 = i$5`:host{display:flex;align-items:center;padding:var(--ds-size-50, 0.25rem) var(--ds-size-200, 1rem) var(--ds-size-50, 0.25rem) 0;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}:host slot{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [auro-icon]{--ds-auro-icon-size: var(--ds-size-300, 1.5rem);margin-right:var(--ds-size-150, 0.75rem);margin-left:var(--ds-size-100, 0.5rem)}:host ::slotted(.nestingSpacer){display:inline-block;width:var(--ds-size-300, 1.5rem)}:host ::slotted(strong){font-weight:700}:host([hidden]){display:none}:host([static]){pointer-events:none}:host([disabled]:hover){cursor:auto}:host([disabled]){user-select:none;pointer-events:none}`;
|
|
824
712
|
|
|
825
|
-
|
|
826
|
-
const options = Array.from(this.querySelectorAll('auro-menuoption, [auro-menuoption]'));
|
|
713
|
+
var colorCss$1 = i$5`:host{background-color:var(--ds-auro-menuoption-container-color);color:var(--ds-auro-menuoption-text-color)}:host svg{fill:var(--ds-auro-menuoption-icon-color) !important}:host([disabled]){--ds-auro-menuoption-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host(:hover),:host(.active){--ds-auro-menuoption-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([selected]){--ds-auro-menuoption-container-color: var(--ds-color-container-ui-primary-default-default, #2c67b5);--ds-auro-menuoption-text-color: var(--ds-color-text-primary-inverse, #ffffff);--ds-auro-menuoption-icon-color: var(--ds-color-icon-emphasis-inverse, #ffffff)}`;
|
|
827
714
|
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
}
|
|
715
|
+
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
716
|
+
// See LICENSE in the project root for license information.
|
|
833
717
|
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
* @param {Object} option - The menuoption to check for interactive state.
|
|
837
|
-
* @returns {Boolean} Returns true if the option is interactive.
|
|
838
|
-
*/
|
|
839
|
-
optionInteractive(option) {
|
|
840
|
-
return !option.hasAttribute('hidden') && !option.hasAttribute('disabled') && !option.hasAttribute('static');
|
|
841
|
-
}
|
|
718
|
+
|
|
719
|
+
class AuroDependencyVersioning {
|
|
842
720
|
|
|
843
721
|
/**
|
|
722
|
+
* Generates a unique string to be used for child auro element naming.
|
|
844
723
|
* @private
|
|
845
|
-
* @
|
|
724
|
+
* @param {string} baseName - Defines the first part of the unique element name.
|
|
725
|
+
* @param {string} version - Version of the component that will be appended to the baseName.
|
|
726
|
+
* @returns {string} - Unique string to be used for naming.
|
|
846
727
|
*/
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
// Escape special regex characters
|
|
851
|
-
const escapedWord = this.matchWord.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&');
|
|
852
|
-
|
|
853
|
-
// Global, case-insensitive, unicode matching regex pattern
|
|
854
|
-
const regexWord = new RegExp(escapedWord, 'giu');
|
|
728
|
+
generateElementName(baseName, version) {
|
|
729
|
+
let result = baseName;
|
|
855
730
|
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
const nested = item.querySelectorAll('.nestingSpacer');
|
|
859
|
-
const nestingSpacerBundle = [...nested].map(() => this.nestingSpacer).join('');
|
|
731
|
+
result += '-';
|
|
732
|
+
result += version.replace(/[.]/g, '_');
|
|
860
733
|
|
|
861
|
-
|
|
862
|
-
}
|
|
863
|
-
});
|
|
864
|
-
}
|
|
734
|
+
return result;
|
|
865
735
|
}
|
|
866
736
|
|
|
867
737
|
/**
|
|
868
|
-
*
|
|
738
|
+
* Generates a unique string to be used for child auro element naming.
|
|
739
|
+
* @param {string} baseName - Defines the first part of the unique element name.
|
|
740
|
+
* @param {string} version - Version of the component that will be appended to the baseName.
|
|
741
|
+
* @returns {string} - Unique string to be used for naming.
|
|
869
742
|
*/
|
|
870
|
-
|
|
871
|
-
this.
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
});
|
|
743
|
+
generateTag(baseName, version, tagClass) {
|
|
744
|
+
const elementName = this.generateElementName(baseName, version);
|
|
745
|
+
const tag = i$1`${s(elementName)}`;
|
|
746
|
+
|
|
747
|
+
if (!customElements.get(elementName)) {
|
|
748
|
+
customElements.define(elementName, class extends tagClass {});
|
|
877
749
|
}
|
|
750
|
+
|
|
751
|
+
return tag;
|
|
878
752
|
}
|
|
753
|
+
}
|
|
879
754
|
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
option.setAttribute('selected', '');
|
|
887
|
-
option.classList.add('active');
|
|
888
|
-
option.ariaSelected = true;
|
|
755
|
+
/**
|
|
756
|
+
* @license
|
|
757
|
+
* Copyright 2017 Google LLC
|
|
758
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
759
|
+
*/
|
|
760
|
+
const t={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},e$1=t=>(...e)=>({_$litDirective$:t,values:e});class i{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i;}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}
|
|
889
761
|
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
762
|
+
/**
|
|
763
|
+
* @license
|
|
764
|
+
* Copyright 2018 Google LLC
|
|
765
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
766
|
+
*/const e=e$1(class extends i{constructor(t$1){if(super(t$1),t$1.type!==t.ATTRIBUTE||"class"!==t$1.name||t$1.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return " "+Object.keys(t).filter((s=>t[s])).join(" ")+" "}update(s,[i]){if(void 0===this.st){this.st=new Set,void 0!==s.strings&&(this.nt=new Set(s.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in i)i[t]&&!this.nt?.has(t)&&this.st.add(t);return this.render(i)}const r=s.element.classList;for(const t of this.st)t in i||(r.remove(t),this.st.delete(t));for(const t in i){const s=!!i[t];s===this.st.has(t)||this.nt?.has(t)||(s?(r.add(t),this.st.add(t)):(r.remove(t),this.st.delete(t)));}return T}});
|
|
894
767
|
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
notifySelectionChange() {
|
|
901
|
-
// this event needs to be removed after select and combobox are updated to use the new standard name
|
|
902
|
-
this.dispatchEvent(new CustomEvent('selectedOption', {
|
|
903
|
-
bubbles: true,
|
|
904
|
-
cancelable: false,
|
|
905
|
-
composed: true,
|
|
906
|
-
}));
|
|
768
|
+
/**
|
|
769
|
+
* @license
|
|
770
|
+
* Copyright 2018 Google LLC
|
|
771
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
772
|
+
*/const o=o=>o??E;
|
|
907
773
|
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
774
|
+
// Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
775
|
+
// See LICENSE in the project root for license information.
|
|
776
|
+
|
|
777
|
+
|
|
778
|
+
/**
|
|
779
|
+
* @attr {Boolean} hidden - If present, the component will be hidden both visually and from screen readers
|
|
780
|
+
* @attr {Boolean} hiddenVisually - If present, the component will be hidden visually, but still read by screen readers
|
|
781
|
+
* @attr {Boolean} hiddenAudible - If present, the component will be hidden from screen readers, but seen visually
|
|
782
|
+
*/
|
|
783
|
+
|
|
784
|
+
class AuroElement extends r {
|
|
785
|
+
|
|
786
|
+
// function to define props used within the scope of this component
|
|
787
|
+
static get properties() {
|
|
788
|
+
return {
|
|
789
|
+
hidden: { type: Boolean,
|
|
790
|
+
reflect: true },
|
|
791
|
+
hiddenVisually: { type: Boolean,
|
|
792
|
+
reflect: true },
|
|
793
|
+
hiddenAudible: { type: Boolean,
|
|
794
|
+
reflect: true },
|
|
795
|
+
};
|
|
913
796
|
}
|
|
914
797
|
|
|
915
798
|
/**
|
|
916
|
-
*
|
|
799
|
+
* @private Function that determines state of aria-hidden
|
|
917
800
|
*/
|
|
918
|
-
|
|
919
|
-
if (
|
|
920
|
-
|
|
801
|
+
hideAudible(value) {
|
|
802
|
+
if (value) {
|
|
803
|
+
return 'true'
|
|
921
804
|
}
|
|
922
805
|
|
|
923
|
-
|
|
924
|
-
|
|
806
|
+
return 'false'
|
|
807
|
+
}
|
|
808
|
+
}
|
|
925
809
|
|
|
926
|
-
|
|
927
|
-
const option = this.items[this.index];
|
|
810
|
+
var error = {"role":"img","color":"currentColor","title":"","desc":"Error alert indicator.","width":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","height":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","xmlns":"http://www.w3.org/2000/svg","xmlns_xlink":"http://www.w3.org/1999/xlink","viewBox":"0 0 24 24","path":"/icons","style":"ico_squareLarge","type":"icon","name":"error","category":"alert","deprecated":true,"svg":"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-labelledby=\"error__desc\" class=\"ico_squareLarge\" data-deprecated=\"true\" role=\"img\" style=\"min-width:var(--auro-size-lg, var(--ds-size-300, 1.5rem));height:var(--auro-size-lg, var(--ds-size-300, 1.5rem));fill:currentColor\" viewBox=\"0 0 24 24\" part=\"svg\"><title/><desc id=\"error__desc\">Error alert indicator.</desc><path d=\"m13.047 5.599 6.786 11.586A1.207 1.207 0 0 1 18.786 19H5.214a1.207 1.207 0 0 1-1.047-1.815l6.786-11.586a1.214 1.214 0 0 1 2.094 0m-1.165.87a.23.23 0 0 0-.085.085L5.419 17.442a.232.232 0 0 0 .203.35h12.756a.234.234 0 0 0 .203-.35L12.203 6.554a.236.236 0 0 0-.321-.084M12 15.5a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5m-.024-6.22c.325 0 .589.261.589.583v4.434a.586.586 0 0 1-.589.583.586.586 0 0 1-.588-.583V9.863c0-.322.264-.583.588-.583\"/></svg>"};
|
|
928
811
|
|
|
929
|
-
|
|
930
|
-
if (option && this.optionInteractive(option)) {
|
|
931
|
-
// fire custom event if defined otherwise make selection
|
|
932
|
-
if (option.hasAttribute('event')) {
|
|
933
|
-
this.dispatchEvent(new CustomEvent(option.getAttribute('event'), {
|
|
934
|
-
bubbles: true,
|
|
935
|
-
cancelable: false,
|
|
936
|
-
composed: true,
|
|
937
|
-
}));
|
|
812
|
+
/* eslint-disable no-underscore-dangle, jsdoc/no-undefined-types, jsdoc/require-param-description */
|
|
938
813
|
|
|
939
|
-
|
|
940
|
-
this.dispatchEvent(new CustomEvent('auroMenuCustomEventFired', {
|
|
941
|
-
bubbles: true,
|
|
942
|
-
cancelable: false,
|
|
943
|
-
composed: true,
|
|
944
|
-
}));
|
|
814
|
+
const _fetchMap = new Map();
|
|
945
815
|
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
816
|
+
/**
|
|
817
|
+
* A callback to parse Response body.
|
|
818
|
+
*
|
|
819
|
+
* @callback ResponseParser
|
|
820
|
+
* @param {Fetch.Response} response
|
|
821
|
+
* @returns {Promise}
|
|
822
|
+
*/
|
|
823
|
+
|
|
824
|
+
/**
|
|
825
|
+
* A minimal in-memory map to de-duplicate Fetch API media requests.
|
|
826
|
+
*
|
|
827
|
+
* @param {String} uri
|
|
828
|
+
* @param {Object} [options={}]
|
|
829
|
+
* @param {ResponseParser} [options.responseParser=(response) => response.text()]
|
|
830
|
+
* @returns {Promise}
|
|
831
|
+
*/
|
|
832
|
+
const cacheFetch = (uri, options = {}) => {
|
|
833
|
+
const responseParser = options.responseParser || ((response) => response.text());
|
|
834
|
+
if (!_fetchMap.has(uri)) {
|
|
835
|
+
_fetchMap.set(uri, fetch(uri).then(responseParser));
|
|
836
|
+
}
|
|
837
|
+
return _fetchMap.get(uri);
|
|
838
|
+
};
|
|
839
|
+
|
|
840
|
+
var styleCss = i$5`*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}*:focus-visible{outline:0}*:focus-visible{outline:0}: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}:host .logo{color:var(--ds-color-brand-midnight-400, #01426a)}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}.label{display:flex;align-items:flex-start}.label svg{margin:0 var(--ds-size-50, 0.25rem)}.labelContainer{line-height:1.8}`;
|
|
841
|
+
|
|
842
|
+
// Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
843
|
+
// See LICENSE in the project root for license information.
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
// See https://git.io/JJ6SJ for "How to document your components using JSDoc"
|
|
847
|
+
/**
|
|
848
|
+
* @attr {Boolean} onDark - Set value for on-dark version of auro-icon
|
|
849
|
+
* @slot - Hidden from visibility, used for a11y if icon description is needed
|
|
850
|
+
*/
|
|
851
|
+
|
|
852
|
+
// build the component class
|
|
853
|
+
class BaseIcon extends AuroElement {
|
|
854
|
+
constructor() {
|
|
855
|
+
super();
|
|
856
|
+
this.onDark = false;
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
// function to define props used within the scope of this component
|
|
860
|
+
static get properties() {
|
|
861
|
+
return {
|
|
862
|
+
...super.properties,
|
|
863
|
+
onDark: {
|
|
864
|
+
type: Boolean,
|
|
865
|
+
reflect: true
|
|
866
|
+
},
|
|
867
|
+
|
|
868
|
+
/**
|
|
869
|
+
* @private
|
|
870
|
+
*/
|
|
871
|
+
svg: {
|
|
872
|
+
attribute: false,
|
|
873
|
+
reflect: true
|
|
955
874
|
}
|
|
956
|
-
}
|
|
875
|
+
};
|
|
876
|
+
}
|
|
957
877
|
|
|
958
|
-
|
|
878
|
+
static get styles() {
|
|
879
|
+
return i$5`
|
|
880
|
+
${styleCss}
|
|
881
|
+
`;
|
|
959
882
|
}
|
|
960
883
|
|
|
961
884
|
/**
|
|
962
|
-
*
|
|
885
|
+
* Async function to fetch requested icon from npm CDN.
|
|
963
886
|
* @private
|
|
964
|
-
* @param {
|
|
887
|
+
* @param {string} category - Icon category.
|
|
888
|
+
* @param {string} name - Icon name.
|
|
889
|
+
* @returns {SVGElement} DOM - Ready HTML to be appended.
|
|
965
890
|
*/
|
|
966
|
-
|
|
967
|
-
|
|
891
|
+
async fetchIcon(category, name) {
|
|
892
|
+
let iconHTML = '';
|
|
968
893
|
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
break;
|
|
894
|
+
if (category === 'logos') {
|
|
895
|
+
iconHTML = await cacheFetch(`${this.uri}/${category}/${name}.svg`);
|
|
896
|
+
} else {
|
|
897
|
+
iconHTML = await cacheFetch(`${this.uri}/icons/${category}/${name}.svg`);
|
|
898
|
+
}
|
|
975
899
|
|
|
976
|
-
|
|
977
|
-
this.selectNextItem('up');
|
|
978
|
-
break;
|
|
900
|
+
const dom = new DOMParser().parseFromString(iconHTML, 'text/html');
|
|
979
901
|
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
902
|
+
return dom.body.querySelector('svg');
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
// lifecycle function
|
|
906
|
+
async firstUpdated() {
|
|
907
|
+
if (!this.customSvg) {
|
|
908
|
+
const svg = await this.fetchIcon(this.category, this.name);
|
|
909
|
+
|
|
910
|
+
if (svg) {
|
|
911
|
+
this.svg = svg;
|
|
912
|
+
} else if (!svg) {
|
|
913
|
+
const penDOM = new DOMParser().parseFromString(error.svg, 'text/html');
|
|
914
|
+
|
|
915
|
+
this.svg = penDOM.body.firstChild;
|
|
916
|
+
}
|
|
983
917
|
}
|
|
984
918
|
}
|
|
919
|
+
}
|
|
985
920
|
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
921
|
+
var tokensCss = i$5`:host{--ds-auro-icon-color: var(--ds-color-icon-primary-default, $ds-color-icon-primary-default);--ds-auro-icon-size: var(--ds-size-300, $ds-size-300)}`;
|
|
922
|
+
|
|
923
|
+
var colorCss = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[accent]){--ds-auro-icon-color: var(--ds-color-icon-accent-default, #a2c270)}:host(:not([onDark])[disabled]){--ds-auro-icon-color: var(--ds-color-icon-ui-primary-disabled-default, #adadad)}:host(:not([onDark])[emphasis]){--ds-auro-icon-color: var(--ds-color-icon-emphasis-default, #2a2a2a)}:host(:not([onDark])[error]){--ds-auro-icon-color: var(--ds-color-icon-error-default, #cc1816)}:host(:not([onDark])[info]){--ds-auro-icon-color: var(--ds-color-icon-info-default, #326aa5)}:host(:not([onDark])[secondary]){--ds-auro-icon-color: var(--ds-color-icon-secondary-default, #7e8894)}:host(:not([onDark])[subtle]){--ds-auro-icon-color: var(--ds-color-icon-subtle-default, #a0c9f1)}:host(:not([onDark])[success]){--ds-auro-icon-color: var(--ds-color-icon-success-default, #40a080)}:host(:not([onDark])[tertiary]){--ds-auro-icon-color: var(--ds-color-icon-tertiary-default, #afb9c6)}:host(:not([onDark])[warning]){--ds-auro-icon-color: var(--ds-color-icon-warning-default, #c49432)}:host([onDark]){--ds-auro-icon-color: var(--ds-color-icon-primary-inverse, #f7f7f7)}:host([onDark][accent]){--ds-auro-icon-color: var(--ds-color-icon-accent-inverse, #badd81)}:host([onDark][disabled]){--ds-auro-icon-color: var(--ds-color-icon-ui-primary-disabled-inverse, #7e7e7e)}:host([onDark][emphasis]){--ds-auro-icon-color: var(--ds-color-icon-emphasis-inverse, #ffffff)}:host([onDark][error]){--ds-auro-icon-color: var(--ds-color-icon-error-inverse, #f9aca6)}:host([onDark][info]){--ds-auro-icon-color: var(--ds-color-icon-info-inverse, #89b2d4)}:host([onDark][secondary]){--ds-auro-icon-color: var(--ds-color-icon-secondary-inverse, #ccd2db)}:host([onDark][subtle]){--ds-auro-icon-color: var(--ds-color-icon-subtle-inverse, #326aa5)}:host([onDark][success]){--ds-auro-icon-color: var(--ds-color-icon-success-inverse, #8eceb9)}:host([onDark][tertiary]){--ds-auro-icon-color: var(--ds-color-icon-tertiary-inverse, #939fad)}:host([onDark][warning]){--ds-auro-icon-color: var(--ds-color-icon-warning-inverse, #f2c153)}`;
|
|
924
|
+
|
|
925
|
+
// Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
926
|
+
// See LICENSE in the project root for license information.
|
|
927
|
+
|
|
928
|
+
|
|
929
|
+
// See https://git.io/JJ6SJ for "How to document your components using JSDoc"
|
|
930
|
+
/**
|
|
931
|
+
* auro-icon provides users a way to use the Auro Icons by simply passing in the category and name.
|
|
932
|
+
*
|
|
933
|
+
* @attr {String} category - The category of the icon you are looking for. See https://auro.alaskaair.com/icons/usage.
|
|
934
|
+
* @attr {String} name - The name of the icon you are looking for without the file extension. See https://auro.alaskaair.com/icons/usage
|
|
935
|
+
* @attr {Boolean} customColor - Removes primary selector.
|
|
936
|
+
* @attr {Boolean} customSvg - When true, auro-icon will render a custom SVG inside the default slot.
|
|
937
|
+
* @attr {Boolean} label - Exposes content in slot as icon label.
|
|
938
|
+
* @attr {Boolean} primary - DEPRECATED: Sets the icon to use the baseline primary icon style.
|
|
939
|
+
* @attr {Boolean} accent - Sets the icon to use the accent style.
|
|
940
|
+
* @attr {Boolean} emphasis - Sets the icon to use the emphasis style.
|
|
941
|
+
* @attr {Boolean} disabled - Sets the icon to use the disabled style.
|
|
942
|
+
* @attr {Boolean} error - Sets the icon to use the error style.
|
|
943
|
+
* @attr {Boolean} info - Sets the icon to use the info style.
|
|
944
|
+
* @attr {Boolean} secondary - Sets the icon to use the secondary style.
|
|
945
|
+
* @attr {Boolean} tertiary - Sets the icon to use the tertiary style.
|
|
946
|
+
* @attr {Boolean} subtle - Sets the icon to use the subtle style.
|
|
947
|
+
* @attr {Boolean} success - Sets the icon to use the success style.
|
|
948
|
+
* @attr {Boolean} warning - Sets the icon to use the warning style.
|
|
949
|
+
* @attr {String} ariaHidden - Set aria-hidden value. Default is `true`. Option is `false`.
|
|
950
|
+
* @attr {String} uri - Set the uri for CDN used when fetching icons
|
|
951
|
+
* @slot - Hidden from visibility, used for a11y if icon description is needed.
|
|
952
|
+
* @slot svg - Used for custom SVG content.
|
|
953
|
+
*/
|
|
954
|
+
|
|
955
|
+
// build the component class
|
|
956
|
+
class AuroIcon extends BaseIcon {
|
|
957
|
+
constructor() {
|
|
958
|
+
super();
|
|
959
|
+
|
|
960
|
+
this.uri = 'https://cdn.jsdelivr.net/npm/@alaskaairux/icons@latest/dist';
|
|
961
|
+
|
|
962
|
+
this.privateDefaults();
|
|
993
963
|
}
|
|
994
964
|
|
|
995
965
|
/**
|
|
996
|
-
*
|
|
966
|
+
* Internal Defaults.
|
|
997
967
|
* @private
|
|
968
|
+
* @returns {void}
|
|
998
969
|
*/
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
970
|
+
privateDefaults() {
|
|
971
|
+
this.accent = false;
|
|
972
|
+
this.customColor = false;
|
|
973
|
+
this.customSvg = false;
|
|
974
|
+
this.disabled = false;
|
|
975
|
+
this.emphasis = false;
|
|
976
|
+
this.error = false;
|
|
977
|
+
this.info = false;
|
|
978
|
+
this.label = false;
|
|
979
|
+
this.primary = false;
|
|
980
|
+
this.secondary = false;
|
|
981
|
+
this.subtle = false;
|
|
982
|
+
this.success = false;
|
|
983
|
+
this.tertiary = false;
|
|
984
|
+
this.warning = false;
|
|
985
|
+
this.runtimeUtils = new AuroLibraryRuntimeUtils();
|
|
986
|
+
}
|
|
1002
987
|
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
988
|
+
// function to define props used within the scope of this component
|
|
989
|
+
static get properties() {
|
|
990
|
+
return {
|
|
991
|
+
...super.properties,
|
|
992
|
+
accent: {
|
|
993
|
+
type: Boolean,
|
|
994
|
+
reflect: true
|
|
995
|
+
},
|
|
996
|
+
ariaHidden: {
|
|
997
|
+
type: String,
|
|
998
|
+
reflect: true
|
|
999
|
+
},
|
|
1000
|
+
category: {
|
|
1001
|
+
type: String,
|
|
1002
|
+
reflect: true
|
|
1003
|
+
},
|
|
1004
|
+
customColor: {
|
|
1005
|
+
type: Boolean
|
|
1006
|
+
},
|
|
1007
|
+
customSvg: {
|
|
1008
|
+
type: Boolean
|
|
1009
|
+
},
|
|
1010
|
+
disabled: {
|
|
1011
|
+
type: Boolean,
|
|
1012
|
+
reflect: true
|
|
1013
|
+
},
|
|
1014
|
+
emphasis: {
|
|
1015
|
+
type: Boolean,
|
|
1016
|
+
reflect: true
|
|
1017
|
+
},
|
|
1018
|
+
error: {
|
|
1019
|
+
type: Boolean,
|
|
1020
|
+
reflect: true
|
|
1021
|
+
},
|
|
1022
|
+
info: {
|
|
1023
|
+
type: Boolean,
|
|
1024
|
+
reflect: true
|
|
1025
|
+
},
|
|
1026
|
+
label: {
|
|
1027
|
+
type: Boolean,
|
|
1028
|
+
reflect: true
|
|
1029
|
+
},
|
|
1030
|
+
name: {
|
|
1031
|
+
type: String,
|
|
1032
|
+
reflect: true
|
|
1033
|
+
},
|
|
1034
|
+
primary: {
|
|
1035
|
+
type: Boolean,
|
|
1036
|
+
reflect: true
|
|
1037
|
+
},
|
|
1038
|
+
secondary: {
|
|
1039
|
+
type: Boolean,
|
|
1040
|
+
reflect: true
|
|
1041
|
+
},
|
|
1042
|
+
subtle: {
|
|
1043
|
+
type: Boolean,
|
|
1044
|
+
reflect: true
|
|
1045
|
+
},
|
|
1046
|
+
success: {
|
|
1047
|
+
type: Boolean,
|
|
1048
|
+
reflect: true
|
|
1049
|
+
},
|
|
1050
|
+
tertiary: {
|
|
1051
|
+
type: Boolean,
|
|
1052
|
+
reflect: true
|
|
1053
|
+
},
|
|
1054
|
+
uri: {
|
|
1055
|
+
type: String
|
|
1056
|
+
},
|
|
1057
|
+
warning: {
|
|
1058
|
+
type: Boolean,
|
|
1059
|
+
reflect: true
|
|
1060
|
+
}
|
|
1061
|
+
};
|
|
1062
|
+
}
|
|
1063
|
+
|
|
1064
|
+
static get styles() {
|
|
1065
|
+
return [
|
|
1066
|
+
super.styles,
|
|
1067
|
+
i$5`${tokensCss}`,
|
|
1068
|
+
i$5`${styleCss}`,
|
|
1069
|
+
i$5`${colorCss}`
|
|
1070
|
+
];
|
|
1007
1071
|
}
|
|
1008
1072
|
|
|
1009
1073
|
/**
|
|
1010
|
-
*
|
|
1011
|
-
*
|
|
1012
|
-
*
|
|
1074
|
+
* This will register this element with the browser.
|
|
1075
|
+
* @param {string} [name="auro-icon"] - The name of element that you want to register to.
|
|
1076
|
+
*
|
|
1077
|
+
* @example
|
|
1078
|
+
* AuroIcon.register("custom-icon") // this will register this element to <custom-icon/>
|
|
1013
1079
|
*
|
|
1014
|
-
* The event.target is not used as the function needs to know where to go,
|
|
1015
|
-
* versus knowing where it is.
|
|
1016
|
-
* @param {String} moveDirection - Up or Down based on keyboard event.
|
|
1017
1080
|
*/
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
// calculate which is the selection we should focus next
|
|
1023
|
-
let increment = 0;
|
|
1024
|
-
|
|
1025
|
-
if (moveDirection === 'down') {
|
|
1026
|
-
increment = 1;
|
|
1027
|
-
} else if (moveDirection === 'up') {
|
|
1028
|
-
increment = -1;
|
|
1029
|
-
}
|
|
1030
|
-
|
|
1031
|
-
this.index += increment;
|
|
1032
|
-
|
|
1033
|
-
// keep looping inside the array of options
|
|
1034
|
-
if (this.index > this.items.length - 1) {
|
|
1035
|
-
this.index = 0;
|
|
1036
|
-
} else if (this.index < 0) {
|
|
1037
|
-
this.index = this.items.length - 1;
|
|
1038
|
-
}
|
|
1081
|
+
static register(name = "auro-icon") {
|
|
1082
|
+
AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroIcon);
|
|
1083
|
+
}
|
|
1039
1084
|
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
this.selectNextItem(moveDirection);
|
|
1043
|
-
} else {
|
|
1044
|
-
// apply focus to new index
|
|
1045
|
-
this.updateActiveOption(this.index);
|
|
1046
|
-
}
|
|
1047
|
-
} else {
|
|
1048
|
-
this.index = 0;
|
|
1085
|
+
connectedCallback() {
|
|
1086
|
+
super.connectedCallback();
|
|
1049
1087
|
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
} else {
|
|
1053
|
-
this.updateActiveOption(this.index);
|
|
1054
|
-
}
|
|
1055
|
-
}
|
|
1088
|
+
// Add the tag name as an attribute if it is different than the component name
|
|
1089
|
+
this.runtimeUtils.handleComponentTagRename(this, 'auro-icon');
|
|
1056
1090
|
}
|
|
1057
1091
|
|
|
1058
1092
|
/**
|
|
1059
|
-
*
|
|
1060
|
-
* @private
|
|
1061
|
-
* @param {String} menu - Root level menu object.
|
|
1093
|
+
* @returns {void} Exposes CSS parts for styling from parent components.
|
|
1062
1094
|
*/
|
|
1063
|
-
|
|
1064
|
-
|
|
1095
|
+
exposeCssParts() {
|
|
1096
|
+
this.setAttribute('exportparts', 'svg:iconSvg');
|
|
1097
|
+
}
|
|
1065
1098
|
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1099
|
+
// function that renders the HTML and CSS into the scope of the component
|
|
1100
|
+
render() {
|
|
1101
|
+
const a11y = {
|
|
1102
|
+
'labelContainer': true,
|
|
1103
|
+
'util_displayHiddenVisually': !this.label
|
|
1104
|
+
};
|
|
1069
1105
|
|
|
1070
|
-
|
|
1071
|
-
|
|
1106
|
+
const classes = {
|
|
1107
|
+
'label': this.label
|
|
1108
|
+
};
|
|
1072
1109
|
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1110
|
+
return x`
|
|
1111
|
+
<div
|
|
1112
|
+
class="${e(classes)}"
|
|
1113
|
+
title="${o(this.title || undefined)}">
|
|
1114
|
+
<span aria-hidden="${o(this.ariaHidden ? this.ariaHidden : true)}" part="svg">
|
|
1115
|
+
${this.customSvg ? x`
|
|
1116
|
+
<slot name="svg"></slot>
|
|
1117
|
+
` : x`
|
|
1118
|
+
${this.svg}
|
|
1119
|
+
`
|
|
1120
|
+
}
|
|
1121
|
+
</span>
|
|
1076
1122
|
|
|
1077
|
-
|
|
1078
|
-
|
|
1123
|
+
<div class="${e(a11y)}">
|
|
1124
|
+
<slot></slot>
|
|
1125
|
+
</div>
|
|
1126
|
+
</div>
|
|
1127
|
+
`;
|
|
1079
1128
|
}
|
|
1129
|
+
}
|
|
1080
1130
|
|
|
1081
|
-
|
|
1082
|
-
* Method to apply `selected` attribute to `menuoption` via `value`.
|
|
1083
|
-
* @private
|
|
1084
|
-
* @param {String} value - Must match a unique `menuoption` value.
|
|
1085
|
-
*/
|
|
1086
|
-
selectByValue(value) {
|
|
1087
|
-
let valueMatch = false;
|
|
1088
|
-
if (!this.items) {
|
|
1089
|
-
this.initItems();
|
|
1090
|
-
}
|
|
1131
|
+
var iconVersion = '6.1.1';
|
|
1091
1132
|
|
|
1092
|
-
|
|
1133
|
+
var checkmarkIcon = {"role":"img","color":"currentColor","title":"","desc":"a small check mark.","width":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","height":"var(--auro-size-lg, var(--ds-size-300, 1.5rem))","xmlns":"http://www.w3.org/2000/svg","xmlns_xlink":"http://www.w3.org/1999/xlink","viewBox":"0 0 24 24","path":"/icons","style":"ico_squareLarge","type":"icon","name":"checkmark-sm","category":"interface","svg":"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-labelledby=\"checkmark-sm__desc\" class=\"ico_squareLarge\" role=\"img\" style=\"min-width:var(--auro-size-lg, var(--ds-size-300, 1.5rem));height:var(--auro-size-lg, var(--ds-size-300, 1.5rem));fill:currentColor\" viewBox=\"0 0 24 24\" part=\"svg\"><title/><desc id=\"checkmark-sm__desc\">a small check mark.</desc><path d=\"M8.461 11.84a.625.625 0 1 0-.922.844l2.504 2.738c.247.27.674.27.922 0l5.496-6a.625.625 0 1 0-.922-.844l-5.035 5.496z\"/></svg>"};
|
|
1093
1134
|
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
if (this.items[index].value === value) {
|
|
1097
|
-
valueMatch = true;
|
|
1098
|
-
this.index = index;
|
|
1099
|
-
}
|
|
1100
|
-
}
|
|
1135
|
+
// Copyright (c) 2021 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
1136
|
+
// See LICENSE in the project root for license information.
|
|
1101
1137
|
|
|
1102
|
-
if (!valueMatch) {
|
|
1103
|
-
// reset the menu to no selection
|
|
1104
|
-
this.index = undefined;
|
|
1105
1138
|
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1139
|
+
/**
|
|
1140
|
+
* The auro-menu element provides users a way to define a menu option.
|
|
1141
|
+
*
|
|
1142
|
+
* @attr {String} value - Specifies the value to be sent to a server.
|
|
1143
|
+
* @attr {String} noCheckmark - When true, selected option will not show the checkmark.
|
|
1144
|
+
* @attr {Boolean} disabled - When true specifies that the menuoption is disabled.
|
|
1145
|
+
* @attr {Boolean} selected - Specifies that an option is selected.
|
|
1146
|
+
* @event auroMenuOption-mouseover - Notifies that this option has been hovered over.
|
|
1147
|
+
* @slot - Specifies text for an option, but is not the value.
|
|
1148
|
+
*/
|
|
1149
|
+
class AuroMenuOption extends r {
|
|
1150
|
+
constructor() {
|
|
1151
|
+
super();
|
|
1112
1152
|
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1153
|
+
/**
|
|
1154
|
+
* Generate unique names for dependency components.
|
|
1155
|
+
*/
|
|
1156
|
+
const versioning = new AuroDependencyVersioning();
|
|
1157
|
+
this.iconTag = versioning.generateTag('auro-icon', iconVersion, AuroIcon);
|
|
1158
|
+
|
|
1159
|
+
this.selected = false;
|
|
1160
|
+
this.nocheckmark = false;
|
|
1161
|
+
this.disabled = false;
|
|
1162
|
+
|
|
1163
|
+
/**
|
|
1164
|
+
* @private
|
|
1165
|
+
*/
|
|
1166
|
+
this.tabIndex = -1;
|
|
1167
|
+
|
|
1168
|
+
/**
|
|
1169
|
+
* @private
|
|
1170
|
+
*/
|
|
1171
|
+
this.runtimeUtils = new AuroLibraryRuntimeUtils();
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
static get properties() {
|
|
1175
|
+
return {
|
|
1176
|
+
nocheckmark: {
|
|
1177
|
+
type: Boolean,
|
|
1178
|
+
reflect: true
|
|
1179
|
+
},
|
|
1180
|
+
selected: {
|
|
1181
|
+
type: Boolean,
|
|
1182
|
+
reflect: true
|
|
1183
|
+
},
|
|
1184
|
+
disabled: {
|
|
1185
|
+
type: Boolean,
|
|
1186
|
+
reflect: true
|
|
1187
|
+
},
|
|
1188
|
+
value: {
|
|
1189
|
+
type: String,
|
|
1190
|
+
reflect: true
|
|
1191
|
+
},
|
|
1192
|
+
tabIndex: {
|
|
1193
|
+
type: Number,
|
|
1194
|
+
reflect: true
|
|
1120
1195
|
}
|
|
1121
|
-
}
|
|
1122
|
-
|
|
1196
|
+
};
|
|
1197
|
+
}
|
|
1123
1198
|
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1199
|
+
static get styles() {
|
|
1200
|
+
return [
|
|
1201
|
+
styleCss$1,
|
|
1202
|
+
colorCss$1,
|
|
1203
|
+
tokensCss$1
|
|
1204
|
+
];
|
|
1130
1205
|
}
|
|
1131
1206
|
|
|
1132
1207
|
/**
|
|
1133
|
-
*
|
|
1134
|
-
* @param {
|
|
1135
|
-
*
|
|
1208
|
+
* This will register this element with the browser.
|
|
1209
|
+
* @param {string} [name="auro-menuoption"] - The name of element that you want to register to.
|
|
1210
|
+
*
|
|
1211
|
+
* @example
|
|
1212
|
+
* AuroMenuOption.register("custom-menuoption") // this will register this element to <custom-menuoption/>
|
|
1213
|
+
*
|
|
1136
1214
|
*/
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
});
|
|
1141
|
-
this.items[index].classList.add('active');
|
|
1142
|
-
this.optionActive = this.items[index];
|
|
1215
|
+
static register(name = "auro-menuoption") {
|
|
1216
|
+
AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroMenuOption);
|
|
1217
|
+
}
|
|
1143
1218
|
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
composed: true,
|
|
1148
|
-
detail: this.items[index]
|
|
1149
|
-
}));
|
|
1219
|
+
firstUpdated() {
|
|
1220
|
+
// Add the tag name as an attribute if it is different than the component name
|
|
1221
|
+
this.runtimeUtils.handleComponentTagRename(this, 'auro-menuoption');
|
|
1150
1222
|
|
|
1151
|
-
this.
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1223
|
+
this.setAttribute('role', 'option');
|
|
1224
|
+
this.setAttribute('aria-selected', 'false');
|
|
1225
|
+
|
|
1226
|
+
this.addEventListener('mouseover', () => {
|
|
1227
|
+
this.dispatchEvent(new CustomEvent('auroMenuOption-mouseover', {
|
|
1228
|
+
bubbles: true,
|
|
1229
|
+
cancelable: false,
|
|
1230
|
+
composed: true,
|
|
1231
|
+
detail: this
|
|
1232
|
+
}));
|
|
1233
|
+
});
|
|
1157
1234
|
}
|
|
1158
1235
|
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
*/
|
|
1164
|
-
handleMenuMouseDown(evt) {
|
|
1165
|
-
if (evt.target !== this) {
|
|
1166
|
-
this.makeSelection();
|
|
1236
|
+
// observer for selected property changes
|
|
1237
|
+
updated(changedProperties) {
|
|
1238
|
+
if (changedProperties.has('selected')) {
|
|
1239
|
+
this.setAttribute('aria-selected', this.selected.toString());
|
|
1167
1240
|
}
|
|
1168
1241
|
}
|
|
1169
1242
|
|
|
1170
1243
|
/**
|
|
1171
|
-
*
|
|
1244
|
+
* Generates an HTML element containing an SVG icon based on the provided `svgContent`.
|
|
1245
|
+
*
|
|
1172
1246
|
* @private
|
|
1247
|
+
* @param {string} svgContent - The SVG content to be embedded.
|
|
1248
|
+
* @returns {Element} The HTML element containing the SVG icon.
|
|
1173
1249
|
*/
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
this.rootMenu = false;
|
|
1178
|
-
}
|
|
1250
|
+
generateIconHtml(svgContent) {
|
|
1251
|
+
const dom = new DOMParser().parseFromString(svgContent, 'text/html');
|
|
1252
|
+
const svg = dom.body.firstChild;
|
|
1179
1253
|
|
|
1180
|
-
|
|
1181
|
-
if (this.rootMenu) {
|
|
1182
|
-
this.initItems();
|
|
1183
|
-
this.setAttribute('role', 'listbox');
|
|
1184
|
-
this.setAttribute('root', '');
|
|
1185
|
-
this.handleNestedMenus(this);
|
|
1186
|
-
this.markOptions();
|
|
1187
|
-
this.index = -1;
|
|
1188
|
-
this.getSelectedIndex();
|
|
1254
|
+
svg.setAttribute('slot', 'svg');
|
|
1189
1255
|
|
|
1190
|
-
|
|
1191
|
-
this.addEventListener('mousedown', this.handleMenuMouseDown);
|
|
1192
|
-
this.addEventListener('auroMenuOption-mouseover', (evt) => {
|
|
1193
|
-
this.index = this.items.indexOf(evt.target);
|
|
1194
|
-
this.updateActiveOption(this.index);
|
|
1195
|
-
});
|
|
1196
|
-
} else {
|
|
1197
|
-
// make sure to update all menuoption noCheckmark attributes when the menu is dynamically changed
|
|
1198
|
-
this.handleNoCheckmarkAttr();
|
|
1199
|
-
}
|
|
1256
|
+
return u`<${this.iconTag} customColor customSvg slot="icon">${svg}</${this.iconTag}>`;
|
|
1200
1257
|
}
|
|
1201
1258
|
|
|
1202
1259
|
render() {
|
|
1203
|
-
return
|
|
1204
|
-
|
|
1260
|
+
return u`
|
|
1261
|
+
${this.selected && !this.nocheckmark ? this.generateIconHtml(checkmarkIcon.svg) : undefined}
|
|
1262
|
+
<slot></slot>
|
|
1205
1263
|
`;
|
|
1206
1264
|
}
|
|
1207
1265
|
}
|
|
@@ -1220,6 +1278,7 @@ function initExamples(initCount) {
|
|
|
1220
1278
|
auroMenuResetExample();
|
|
1221
1279
|
auroMenuMatchWordExample();
|
|
1222
1280
|
auroMenuCustomEventExample();
|
|
1281
|
+
auroMenuLoadingExample();
|
|
1223
1282
|
} catch (err) {
|
|
1224
1283
|
if (initCount <= 20) {
|
|
1225
1284
|
// setTimeout handles issue where content is sometimes loaded after the functions get called
|