@aurodesignsystem-dev/auro-formkit 0.0.0-pr1576.7 → 0.0.0-pr1577.0

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.
Files changed (51) hide show
  1. package/components/checkbox/demo/customize.min.js +1 -1
  2. package/components/checkbox/demo/getting-started.min.js +1 -1
  3. package/components/checkbox/demo/index.min.js +1 -1
  4. package/components/checkbox/dist/index.js +1 -1
  5. package/components/checkbox/dist/registered.js +1 -1
  6. package/components/combobox/demo/customize.md +0 -40
  7. package/components/combobox/demo/customize.min.js +65 -359
  8. package/components/combobox/demo/getting-started.min.js +65 -359
  9. package/components/combobox/demo/index.min.js +65 -359
  10. package/components/combobox/dist/index.js +38 -56
  11. package/components/combobox/dist/registered.js +38 -56
  12. package/components/counter/demo/customize.min.js +11 -2
  13. package/components/counter/demo/index.min.js +11 -2
  14. package/components/counter/dist/index.js +11 -2
  15. package/components/counter/dist/registered.js +11 -2
  16. package/components/datepicker/demo/customize.min.js +12 -3
  17. package/components/datepicker/demo/index.min.js +12 -3
  18. package/components/datepicker/dist/index.js +12 -3
  19. package/components/datepicker/dist/registered.js +12 -3
  20. package/components/dropdown/demo/customize.min.js +10 -1
  21. package/components/dropdown/demo/getting-started.min.js +10 -1
  22. package/components/dropdown/demo/index.min.js +10 -1
  23. package/components/dropdown/dist/index.js +10 -1
  24. package/components/dropdown/dist/registered.js +10 -1
  25. package/components/form/demo/customize.min.js +102 -369
  26. package/components/form/demo/getting-started.min.js +102 -369
  27. package/components/form/demo/index.min.js +102 -369
  28. package/components/form/demo/registerDemoDeps.min.js +102 -369
  29. package/components/input/demo/customize.min.js +1 -1
  30. package/components/input/demo/getting-started.min.js +1 -1
  31. package/components/input/demo/index.min.js +1 -1
  32. package/components/input/dist/index.js +1 -1
  33. package/components/input/dist/registered.js +1 -1
  34. package/components/menu/demo/index.min.js +27 -303
  35. package/components/menu/dist/auro-menu-utils.d.ts +0 -30
  36. package/components/menu/dist/auro-menu.d.ts +0 -23
  37. package/components/menu/dist/index.js +27 -303
  38. package/components/menu/dist/registered.js +27 -303
  39. package/components/radio/demo/customize.min.js +1 -1
  40. package/components/radio/demo/getting-started.min.js +1 -1
  41. package/components/radio/demo/index.min.js +1 -1
  42. package/components/radio/dist/index.js +1 -1
  43. package/components/radio/dist/registered.js +1 -1
  44. package/components/select/demo/customize.md +0 -72
  45. package/components/select/demo/customize.min.js +38 -305
  46. package/components/select/demo/getting-started.min.js +38 -305
  47. package/components/select/demo/index.min.js +38 -305
  48. package/components/select/dist/index.js +11 -2
  49. package/components/select/dist/registered.js +11 -2
  50. package/custom-elements.json +1511 -1614
  51. package/package.json +1 -1
@@ -13388,7 +13388,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$3 {
13388
13388
  }
13389
13389
  };
13390
13390
 
13391
- var formkitVersion$8 = '202608041729';
13391
+ var formkitVersion$8 = '202608041712';
13392
13392
 
13393
13393
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
13394
13394
  // See LICENSE in the project root for license information.
@@ -27820,7 +27820,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$3 {
27820
27820
  }
27821
27821
  };
27822
27822
 
27823
- var formkitVersion$2$1 = '202608041729';
27823
+ var formkitVersion$2$1 = '202608041712';
27824
27824
 
27825
27825
  let l$1$2 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[.]/g,"_"),o}generateTag(o,s,a){const r=this.generateElementName(o,s),i=i$2`${s$3(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1$2 = class d{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}getSlotText(t,e){const o=t.shadowRoot?.querySelector(`slot[name="${e}"]`),s=(o?.assignedNodes({flatten:true})||[]).map(t=>t.textContent?.trim()).join(" ").trim();return s||null}};let h$1$2 = class h{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}};var c$1$3=i$6`:host{color:var(--ds-auro-loader-color)}:host>span{background-color:var(--ds-auro-loader-background-color);border-color:var(--ds-auro-loader-border-color)}:host([onlight]),:host([appearance=brand]){--ds-auro-loader-color: var(--ds-basic-color-brand-primary, #01426a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-loader-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([orbit])>span{--ds-auro-loader-background-color: transparent}:host([orbit])>span:nth-child(1){--ds-auro-loader-border-color: currentcolor;opacity:.25}:host([orbit])>span:nth-child(2){--ds-auro-loader-border-color: currentcolor;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
27826
27826
  `,u$4$2=i$6`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}:host,:host>span{position:relative}:host{width:2rem;height:2rem;display:inline-block;font-size:0}:host>span{position:absolute;display:inline-block;float:none;top:0;left:0;width:2rem;height:2rem;border-radius:100%;border-style:solid;border-width:0;box-sizing:border-box}:host([xs]),:host([xs])>span{width:1.2rem;height:1.2rem}:host([sm]),:host([sm])>span{width:3rem;height:3rem}:host([md]),:host([md])>span{width:5rem;height:5rem}:host([lg]),:host([lg])>span{width:8rem;height:8rem}:host{--margin: .375rem;--margin-xs: .2rem;--margin-sm: .5rem;--margin-md: .75rem;--margin-lg: 1rem}:host([pulse]),:host([pulse])>span{position:relative}:host([pulse]){width:calc(3rem + var(--margin) * 6);height:calc(1rem + var(--margin) * 2)}:host([pulse])>span{width:1rem;height:1rem;margin:var(--margin);animation:pulse 1.5s ease infinite}:host([pulse][xs]){width:calc(1.95rem + var(--margin-xs) * 6);height:calc(.65rem + var(--margin-xs) * 2)}:host([pulse][xs])>span{margin:var(--margin-xs);width:.65rem;height:.65rem}:host([pulse][sm]){width:calc(6rem + var(--margin-sm) * 6);height:calc(2rem + var(--margin-sm) * 2)}:host([pulse][sm])>span{margin:var(--margin-sm);width:2rem;height:2rem}:host([pulse][md]){width:calc(9rem + var(--margin-md) * 6);height:calc(3rem + var(--margin-md) * 2)}:host([pulse][md])>span{margin:var(--margin-md);width:3rem;height:3rem}:host([pulse][lg]){width:calc(15rem + var(--margin-lg) * 6);height:calc(5rem + var(--margin-lg) * 2)}:host([pulse][lg])>span{margin:var(--margin-lg);width:5rem;height:5rem}:host([pulse])>span:nth-child(1){animation-delay:-.4s}:host([pulse])>span:nth-child(2){animation-delay:-.2s}:host([pulse])>span:nth-child(3){animation-delay:0ms}@keyframes pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}:host([orbit]),:host([orbit])>span{opacity:1}:host([orbit])>span{border-width:5px}:host([orbit])>span:nth-child(2){animation:orbit 2s linear infinite}:host([orbit][sm])>span{border-width:8px}:host([orbit][md])>span{border-width:13px}:host([orbit][lg])>span{border-width:21px}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host([ringworm])>svg{animation:rotate 2s linear infinite;height:100%;width:100%;stroke:currentcolor;stroke-width:8}:host([ringworm]) .path{stroke-dashoffset:0;animation:ringworm 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes ringworm{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}:host([laser]){position:static;width:100%;display:block;height:0;overflow:hidden;font-size:unset}:host([laser])>span{position:fixed;width:100%;height:.25rem;border-radius:0;z-index:100}:host([laser])>span:nth-child(1){border-color:currentcolor;opacity:.25}:host([laser])>span:nth-child(2){border-color:currentcolor;animation:laser 2s linear infinite;opacity:1;width:50%}:host([laser][sm])>span:nth-child(2){width:20%}:host([laser][md])>span:nth-child(2){width:30%}:host([laser][lg])>span:nth-child(2){width:50%;animation-duration:1.5s}:host([laser][xl])>span:nth-child(2){width:80%;animation-duration:1.5s}@keyframes laser{0%{left:-100%}to{left:110%}}:host>.no-animation{display:none}@media (prefers-reduced-motion: reduce){:host{display:flex;align-items:center;justify-content:center}:host>span{opacity:1}:host>.loader{display:none}:host>svg{display:none}:host>.no-animation{display:block}}
@@ -33551,7 +33551,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$3 {
33551
33551
  }
33552
33552
  };
33553
33553
 
33554
- var formkitVersion$1$3 = '202608041729';
33554
+ var formkitVersion$1$3 = '202608041712';
33555
33555
 
33556
33556
  let AuroElement$2$2 = class AuroElement extends i$3 {
33557
33557
  static get properties() {
@@ -34253,6 +34253,15 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
34253
34253
 
34254
34254
  connectedCallback() {
34255
34255
  super.connectedCallback();
34256
+ // Re-register trigger event listeners removed by floater.disconnect() in
34257
+ // disconnectedCallback(). Fires when a parent element (e.g. auro-drawer)
34258
+ // moves this element to a new DOM location. firstUpdated() won't re-run,
34259
+ // so without this the trigger click/keydown handlers are permanently gone.
34260
+ // Guard on floater.element so this is a no-op on the initial connect
34261
+ // (before firstUpdated() has called configure()).
34262
+ if (this.floater?.element) {
34263
+ this.floater.configure(this, 'auroDropdown', !this.disableKeyboardHandling);
34264
+ }
34256
34265
  }
34257
34266
 
34258
34267
  disconnectedCallback() {
@@ -47233,7 +47242,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$3 {
47233
47242
  }
47234
47243
  };
47235
47244
 
47236
- var formkitVersion$7 = '202608041729';
47245
+ var formkitVersion$7 = '202608041712';
47237
47246
 
47238
47247
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
47239
47248
  // See LICENSE in the project root for license information.
@@ -52215,7 +52224,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$3 {
52215
52224
  }
52216
52225
  };
52217
52226
 
52218
- var formkitVersion$1$2 = '202608041729';
52227
+ var formkitVersion$1$2 = '202608041712';
52219
52228
 
52220
52229
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
52221
52230
  // See LICENSE in the project root for license information.
@@ -56368,7 +56377,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$3 {
56368
56377
  }
56369
56378
  };
56370
56379
 
56371
- var formkitVersion$6 = '202608041729';
56380
+ var formkitVersion$6 = '202608041712';
56372
56381
 
56373
56382
  let AuroElement$1$2 = class AuroElement extends i$3 {
56374
56383
  static get properties() {
@@ -57070,6 +57079,15 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$1$2 {
57070
57079
 
57071
57080
  connectedCallback() {
57072
57081
  super.connectedCallback();
57082
+ // Re-register trigger event listeners removed by floater.disconnect() in
57083
+ // disconnectedCallback(). Fires when a parent element (e.g. auro-drawer)
57084
+ // moves this element to a new DOM location. firstUpdated() won't re-run,
57085
+ // so without this the trigger click/keydown handlers are permanently gone.
57086
+ // Guard on floater.element so this is a no-op on the initial connect
57087
+ // (before firstUpdated() has called configure()).
57088
+ if (this.floater?.element) {
57089
+ this.floater.configure(this, 'auroDropdown', !this.disableKeyboardHandling);
57090
+ }
57073
57091
  }
57074
57092
 
57075
57093
  disconnectedCallback() {
@@ -60422,7 +60440,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$3 {
60422
60440
  }
60423
60441
  };
60424
60442
 
60425
- var formkitVersion$5 = '202608041729';
60443
+ var formkitVersion$5 = '202608041712';
60426
60444
 
60427
60445
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
60428
60446
  // See LICENSE in the project root for license information.
@@ -62187,7 +62205,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$3 {
62187
62205
  }
62188
62206
  };
62189
62207
 
62190
- var formkitVersion$4 = '202608041729';
62208
+ var formkitVersion$4 = '202608041712';
62191
62209
 
62192
62210
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
62193
62211
  // See LICENSE in the project root for license information.
@@ -67506,7 +67524,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
67506
67524
  }
67507
67525
  };
67508
67526
 
67509
- var formkitVersion$2 = '202608041729';
67527
+ var formkitVersion$2 = '202608041712';
67510
67528
 
67511
67529
  let AuroElement$2$1 = class AuroElement extends i$3 {
67512
67530
  static get properties() {
@@ -68208,6 +68226,15 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
68208
68226
 
68209
68227
  connectedCallback() {
68210
68228
  super.connectedCallback();
68229
+ // Re-register trigger event listeners removed by floater.disconnect() in
68230
+ // disconnectedCallback(). Fires when a parent element (e.g. auro-drawer)
68231
+ // moves this element to a new DOM location. firstUpdated() won't re-run,
68232
+ // so without this the trigger click/keydown handlers are permanently gone.
68233
+ // Guard on floater.element so this is a no-op on the initial connect
68234
+ // (before firstUpdated() has called configure()).
68235
+ if (this.floater?.element) {
68236
+ this.floater.configure(this, 'auroDropdown', !this.disableKeyboardHandling);
68237
+ }
68211
68238
  }
68212
68239
 
68213
68240
  disconnectedCallback() {
@@ -81188,7 +81215,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$3 {
81188
81215
  }
81189
81216
  };
81190
81217
 
81191
- var formkitVersion$1$1 = '202608041729';
81218
+ var formkitVersion$1$1 = '202608041712';
81192
81219
 
81193
81220
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
81194
81221
  // See LICENSE in the project root for license information.
@@ -82344,7 +82371,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$3 {
82344
82371
  }
82345
82372
  };
82346
82373
 
82347
- var formkitVersion$3 = '202608041729';
82374
+ var formkitVersion$3 = '202608041712';
82348
82375
 
82349
82376
  var styleCss$1$3 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
82350
82377
 
@@ -84150,17 +84177,7 @@ class AuroCombobox extends AuroElement$3 {
84150
84177
  return;
84151
84178
  }
84152
84179
 
84153
- // Skip this write during a display-value sync: that path sets the input to
84154
- // the selected option's LABEL, which is not its machine value. When an
84155
- // option's label differs from its value (and especially when several
84156
- // options share a value but render distinct labels — AB#1602086), writing
84157
- // the label back into this.value clobbers the machine value the selection
84158
- // listener just set (this.value = optionSelected.value), collapsing the
84159
- // selection. _syncingBibValue still tracks (that mirrors user-typed text
84160
- // from the fullscreen bib, where value should follow the input).
84161
- if (!this._syncingDisplayValue) {
84162
- this.value = this.input.value;
84163
- }
84180
+ this.value = this.input.value;
84164
84181
 
84165
84182
  // Ignore re-entrant input events caused by programmatic value sets.
84166
84183
  if (this._syncingBibValue || this._syncingDisplayValue) {
@@ -84424,50 +84441,33 @@ class AuroCombobox extends AuroElement$3 {
84424
84441
  }
84425
84442
 
84426
84443
  if (this.input.value !== this.value) {
84427
- // A fresh user selection leaves the input showing the option's LABEL
84428
- // while this.value holds its machine value, so input.value !== this.value
84429
- // is expected whenever label ≠ value. In that case the menu's current
84430
- // selection is authoritative — and when several options share a value it
84431
- // is the ONLY thing that records WHICH same-value option the user picked
84432
- // (the menu tracks it by element identity via `_selectedKey`). Clearing
84433
- // it here drops that key; the ensuing value-only re-resolution then
84434
- // collapses the selection onto the first same-value option (AB#1602086).
84435
- // So only treat the divergence as a stale menu when the selected option
84436
- // does NOT match the new value.
84437
- const menuSelectionMatchesValue =
84438
- this.menu.optionSelected &&
84439
- !Array.isArray(this.menu.optionSelected) &&
84440
- this.menu.optionSelected.value === this.value;
84441
-
84442
- if (!menuSelectionMatchesValue) {
84443
- // Clear menu.value AND menu.optionSelected together. Clearing only
84444
- // menu.value leaves the previously-selected option element pinned
84445
- // as menu.optionSelected; a later auroMenu-selectedOption event
84446
- // would then write its stale .value back into combobox.value
84447
- // (e.g. Tab-after-Backspace re-selecting the prior option).
84448
- if (this.menu.value || this.menu.optionSelected) {
84449
- this.menu.clearSelection();
84450
- }
84444
+ // Clear menu.value AND menu.optionSelected together. Clearing only
84445
+ // menu.value leaves the previously-selected option element pinned
84446
+ // as menu.optionSelected; a later auroMenu-selectedOption event
84447
+ // would then write its stale .value back into combobox.value
84448
+ // (e.g. Tab-after-Backspace re-selecting the prior option).
84449
+ if (this.menu.value || this.menu.optionSelected) {
84450
+ this.menu.clearSelection();
84451
+ }
84451
84452
 
84452
- if (!this.persistInput) {
84453
- this.syncInputValuesAcrossTriggerAndBib(this.value || '');
84454
- }
84453
+ if (!this.persistInput) {
84454
+ this.syncInputValuesAcrossTriggerAndBib(this.value || '');
84455
+ }
84455
84456
 
84456
- // Programmatic value with no matching option: updateFilter will close
84457
- // the bib silently (see line 648 — no noMatchOption + 0 results
84458
- // hides). Announce so screen-reader users hear the request was
84459
- // dropped. Gated on `input.value !== this.value` so this never fires
84460
- // for user typing — that path always reconciles input.value to
84461
- // this.value before updated() runs.
84462
- if (
84463
- this.value &&
84464
- this.menu &&
84465
- this.menu.options &&
84466
- this.menu.options.length > 0 &&
84467
- !this.menu.options.some((opt) => opt.value === this.value)
84468
- ) {
84469
- announceToScreenReader$1(this._getAnnouncementRoot(), `No matching option for ${this.value}`);
84470
- }
84457
+ // Programmatic value with no matching option: updateFilter will close
84458
+ // the bib silently (see line 648 — no noMatchOption + 0 results
84459
+ // hides). Announce so screen-reader users hear the request was
84460
+ // dropped. Gated on `input.value !== this.value` so this never fires
84461
+ // for user typing — that path always reconciles input.value to
84462
+ // this.value before updated() runs.
84463
+ if (
84464
+ this.value &&
84465
+ this.menu &&
84466
+ this.menu.options &&
84467
+ this.menu.options.length > 0 &&
84468
+ !this.menu.options.some((opt) => opt.value === this.value)
84469
+ ) {
84470
+ announceToScreenReader$1(this._getAnnouncementRoot(), `No matching option for ${this.value}`);
84471
84471
  }
84472
84472
  }
84473
84473
 
@@ -84987,107 +84987,6 @@ function isSelectableByValue(option) {
84987
84987
  !option.hasAttribute('static');
84988
84988
  }
84989
84989
 
84990
- /* eslint-disable no-underscore-dangle */
84991
- /**
84992
- * Resolves the single selected option for a given `value`, preferring the
84993
- * option tracked by `selectedKey` (a user-initiated selection) over a
84994
- * first-by-value match. When multiple options share the same `value`, matching
84995
- * by `value` alone cannot distinguish which one the user picked; the key
84996
- * disambiguates it.
84997
- *
84998
- * The key is trusted only when it still resolves to an option whose `value`
84999
- * matches the requested `value`. If the key is stale (option removed) or the
85000
- * value was changed programmatically, resolution falls back to value matching —
85001
- * preserving backward-compatible behavior for preselection and `selectByValue`.
85002
- * @private
85003
- * @param {Array<HTMLElement>} items - The menu's flat option list.
85004
- * @param {string} value - The value to resolve.
85005
- * @param {string|undefined} selectedKey - The `_optionKey` of the user-selected option, if any.
85006
- * @returns {HTMLElement|undefined} The resolved option, or undefined when none match.
85007
- */
85008
- function resolveSelectedOption(items, value, selectedKey) {
85009
- if (!items) {
85010
- return undefined;
85011
- }
85012
-
85013
- if (selectedKey !== undefined) {
85014
- const keyed = items.find((item) => item._optionKey === selectedKey);
85015
- if (keyed && isSelectableByValue(keyed) && keyed.value === value) {
85016
- return keyed;
85017
- }
85018
- // Key exists but the option is gone or its value no longer matches — fall
85019
- // through to value-based matching.
85020
- }
85021
-
85022
- return items.find((item) => isSelectableByValue(item) && item.value === value);
85023
- }
85024
-
85025
- /**
85026
- * Resolves the selected options for a multi-select `value` array, preferring
85027
- * options tracked by `selectedKeys` (user-initiated selections) and falling
85028
- * back to value matching for any values not resolved by key. The result is
85029
- * always sorted into DOM order regardless of selection sequence.
85030
- * @private
85031
- * @param {Array<HTMLElement>} items - The menu's flat option list.
85032
- * @param {Array<string>} valueArray - The selected values.
85033
- * @param {Array<string>|undefined} selectedKeys - The `_optionKey`s of the user-selected options, if any.
85034
- * @returns {Array<HTMLElement>} The resolved options in DOM order.
85035
- */
85036
- function resolveSelectedOptions(items, valueArray, selectedKeys) {
85037
- if (!items) {
85038
- return [];
85039
- }
85040
-
85041
- const resolved = [];
85042
-
85043
- // Track how many of each value are still available to resolve. A value that
85044
- // appears N times in `valueArray` may be satisfied at most N times total across
85045
- // the key pass and the value fallback below — matching by count, not presence,
85046
- // on BOTH passes. This stops a duplicate value from being over-resolved: e.g.
85047
- // two keyed options that both carry `SEA` cannot both match a single requested
85048
- // `SEA` (which happens when `value` is set directly without clearing
85049
- // `_selectedKey`, so more keys survive than the value set now asks for).
85050
- const remaining = new Map();
85051
- valueArray.forEach((val) => remaining.set(val, (remaining.get(val) || 0) + 1));
85052
-
85053
- // Resolve by key first: trust a key only when its option is still selectable
85054
- // and there is still an unmatched occurrence of its value in the request set.
85055
- if (Array.isArray(selectedKeys)) {
85056
- selectedKeys.forEach((key) => {
85057
- const keyed = items.find((item) => item._optionKey === key);
85058
- if (keyed && isSelectableByValue(keyed) && (remaining.get(keyed.value) || 0) > 0 && !resolved.includes(keyed)) {
85059
- resolved.push(keyed);
85060
- remaining.set(keyed.value, remaining.get(keyed.value) - 1);
85061
- }
85062
- });
85063
- }
85064
-
85065
- // Fall back to value matching for the occurrences not resolved by key. Iterate
85066
- // the leftover per-value counts so a value that appears twice but was only
85067
- // resolved once by key still matches its remaining occurrence(s).
85068
- remaining.forEach((count, val) => {
85069
- for (let occurrence = 0; occurrence < count; occurrence += 1) {
85070
- const option = items.find((item) => isSelectableByValue(item) && item.value === val && !resolved.includes(item));
85071
- if (option) {
85072
- resolved.push(option);
85073
- }
85074
- }
85075
- });
85076
-
85077
- // Always return in DOM order so display is consistent regardless of the order
85078
- // keys/values were selected. Every resolved option came from `items`, so an
85079
- // O(1) index lookup mirrors `_sortSelectedByDomOrder` and avoids the O(n)
85080
- // `items.indexOf` per comparison for large combobox option sets.
85081
- const indexMap = new Map(items.map((item, index) => [
85082
- item,
85083
- index
85084
- ]));
85085
- resolved.sort((optionA, optionB) => indexMap.get(optionA) - indexMap.get(optionB));
85086
-
85087
- return resolved;
85088
- }
85089
- /* eslint-enable no-underscore-dangle */
85090
-
85091
84990
  /**
85092
84991
  * Helper method to dispatch custom events.
85093
84992
  * @param {HTMLElement} element - Element to dispatch event from.
@@ -85113,14 +85012,6 @@ function dispatchMenuEvent(element, eventName, detail = null) {
85113
85012
  // See LICENSE in the project root for license information.
85114
85013
 
85115
85014
 
85116
- /**
85117
- * Monotonically increasing counter used to give each menu instance a unique
85118
- * `_menuInstanceId` prefix. Auto-generating the id (rather than using a random
85119
- * string) keeps option keys deterministic and collision-free across menus.
85120
- * @private
85121
- */
85122
- let menuInstanceIdCounter = 0;
85123
-
85124
85015
 
85125
85016
  /**
85126
85017
  * The `auro-menu` element provides users a way to select from a list of options.
@@ -85192,8 +85083,9 @@ class AuroMenu extends AuroElement$2 {
85192
85083
 
85193
85084
  // Instance properties (non-reactive)
85194
85085
 
85195
- menuInstanceIdCounter += 1;
85196
-
85086
+ /**
85087
+ * @private
85088
+ */
85197
85089
  Object.assign(this, {
85198
85090
  // Root-level menu (true) or a nested submenu (false)
85199
85091
  rootMenu: true,
@@ -85203,21 +85095,6 @@ class AuroMenu extends AuroElement$2 {
85203
85095
  nestingSpacer: '<span class="nestingSpacer"></span>',
85204
85096
  // Loading indicator for slot elements
85205
85097
  loadingSlots: null,
85206
- // Unique id for this menu instance; prefixes every auto-generated option
85207
- // key so keys never collide across menus in the same document.
85208
- _menuInstanceId: `menu-${menuInstanceIdCounter}`,
85209
- // Monotonically increasing counter for option key generation. Never
85210
- // resets, so a key is never reused within this instance's lifetime.
85211
- _optionKeyCounter: 0,
85212
- // Key(s) of the option(s) the user has actively selected. A single string
85213
- // in single-select, an array in multi-select, undefined when nothing is
85214
- // user-selected. Used to disambiguate options that share a `value`.
85215
- _selectedKey: undefined,
85216
- // True only for the one updated() cycle following a user selection, so
85217
- // reconciliation trusts `_selectedKey`. A `value` change from a consumer's
85218
- // direct property assignment leaves this false, dropping the stale key so
85219
- // reconciliation falls back to first-by-value (see updated()).
85220
- _valueChangeFromSelection: false,
85221
85098
  });
85222
85099
  }
85223
85100
 
@@ -85437,13 +85314,6 @@ class AuroMenu extends AuroElement$2 {
85437
85314
  return;
85438
85315
  }
85439
85316
 
85440
- // A programmatic value set carries no positional intent, so drop any
85441
- // `_selectedKey` left over from a prior user click. This makes reconciliation
85442
- // in updated() fall back to first-by-value (single) / value-in-DOM-order
85443
- // (multi), matching the documented contract for programmatic selection even
85444
- // when a stale key would still resolve to a duplicate-value option.
85445
- this._selectedKey = undefined;
85446
-
85447
85317
  // `value` is a String property; stringify arrays so attribute reflection and `formattedValue` parsing stay correct.
85448
85318
  this.value = Array.isArray(value) ? JSON.stringify(value) : value;
85449
85319
  }
@@ -85491,17 +85361,6 @@ class AuroMenu extends AuroElement$2 {
85491
85361
  updated(changedProperties) {
85492
85362
  super.updated(changedProperties);
85493
85363
 
85494
- // Consume the selection-driven flag for THIS cycle up front. Clearing it
85495
- // unconditionally — not only inside the `value` branch below — prevents it
85496
- // from lingering `true` when a selection produces a serialized `value`
85497
- // byte-identical to the current one, in which case Lit schedules no
85498
- // `value`-change cycle to consume it. A lingering flag would misclassify a
85499
- // later consumer's programmatic `value` set as selection-driven and keep a
85500
- // stale `_selectedKey`. The reconcile path below re-sets the instance flag
85501
- // after this point, so its intentional cross-cycle hand-off still works.
85502
- const valueChangeFromSelection = this._valueChangeFromSelection;
85503
- this._valueChangeFromSelection = false;
85504
-
85505
85364
  // Single source of truth for 'auroMenu-selectedOption'. Selection handlers
85506
85365
  // mutate optionSelected and let Lit's update cycle dispatch here; the prior
85507
85366
  // .value comparison missed multi-select array changes and combined with the
@@ -85525,17 +85384,6 @@ class AuroMenu extends AuroElement$2 {
85525
85384
  this.initItems();
85526
85385
  }
85527
85386
 
85528
- // Distinguish a selection-driven `value` change (a user click, which set
85529
- // the flag in handleSelectState / _sortSelectedByDomOrder) from a
85530
- // programmatic assignment by a consumer. A programmatic set carries no
85531
- // positional intent, so drop any leftover `_selectedKey` and let
85532
- // reconciliation fall back to first-by-value (single) / value-in-DOM-order
85533
- // (multi) — the same contract selectByValue() guarantees, even when a
85534
- // stale key would otherwise still resolve to a duplicate-value option.
85535
- if (!valueChangeFromSelection) {
85536
- this._selectedKey = undefined;
85537
- }
85538
-
85539
85387
  // Set when reconciliation reassigns `value` below. That reassignment schedules a
85540
85388
  // second updated() cycle, so the `event`-attribute dispatch is deferred to that
85541
85389
  // cycle to avoid firing option custom events twice on the same selection.
@@ -85553,55 +85401,19 @@ class AuroMenu extends AuroElement$2 {
85553
85401
  // Defensive default: `formattedValue` can be undefined for unexpected value types,
85554
85402
  // and calling `.includes` on undefined would throw during reconciliation.
85555
85403
  const valueArray = this.formattedValue || [];
85556
- // Resolve by key first (the user's exact picks), then fall back to
85557
- // value matching for any values not resolved by key — so pre-selection
85558
- // and programmatic value sets keep working. Result is DOM-ordered.
85559
- const matchingOptions = resolveSelectedOptions(this.items, valueArray, this._selectedKey);
85404
+ const matchingOptions = this.items ? this.items.filter((item) => isSelectableByValue(item) && valueArray.includes(item.value)) : [];
85560
85405
  newSelected = matchingOptions.length > 0 ? matchingOptions : undefined;
85561
85406
 
85562
- // Reconcile `value` with the selectable set. An occurrence is dropped
85563
- // only when it is loaded but no selectable option can satisfy it —
85564
- // every loaded item sharing that value is non-selectable, or the value
85565
- // recurs more often than it has selectable options (a duplicate value
85566
- // whose extra siblings are disabled/static). This is count-based, not
85567
- // presence-based, so an enabled option is kept even when a disabled
85568
- // sibling shares its value — mirroring how `resolveSelectedOptions`
85569
- // resolves the same set. Entries with no matching item yet are
85570
- // preserved so async preselection still works, and the toggle handlers
85571
- // rebuild `value` from `formattedValue`, so a rejected entry cannot
85572
- // resurface on the next select/deselect.
85573
- const selectableByValue = new Map();
85574
- const loadedValues = new Set();
85575
- if (this.items) {
85576
- this.items.forEach((item) => {
85577
- loadedValues.add(item.value);
85578
- if (isSelectableByValue(item)) {
85579
- selectableByValue.set(item.value, (selectableByValue.get(item.value) || 0) + 1);
85580
- }
85581
- });
85582
- }
85583
-
85584
- const reconciled = valueArray.filter((val) => {
85585
- // Not loaded yet (async preselection) — keep for a later cycle.
85586
- if (!loadedValues.has(val)) {
85587
- return true;
85588
- }
85589
- // Consume one selectable option per occurrence; drop once exhausted.
85590
- const remaining = selectableByValue.get(val) || 0;
85591
- if (remaining > 0) {
85592
- selectableByValue.set(val, remaining - 1);
85593
- return true;
85594
- }
85595
- return false;
85596
- });
85597
-
85598
- if (reconciled.length !== valueArray.length) {
85599
- // This is an internal correction, not a consumer's programmatic set,
85600
- // so preserve the selection-driven flag through the re-entrant
85601
- // updated() cycle it schedules. Otherwise that cycle would treat the
85602
- // reassignment as programmatic and drop `_selectedKey` mid-cascade,
85603
- // flipping resolution and looping.
85604
- this._valueChangeFromSelection = true;
85407
+ // Reconcile `value` with the selectable set. Drop only entries whose option is
85408
+ // loaded but non-selectable (disabled/static) — leaving them would desync `value`
85409
+ // from `optionSelected`, and the toggle handlers rebuild `value` from `formattedValue`,
85410
+ // so the rejected entry would resurface on the next select/deselect. Entries with no
85411
+ // matching item yet are preserved so async preselection still works once options render.
85412
+ const rejectedValues = this.items
85413
+ ? this.items.filter((item) => !isSelectableByValue(item) && valueArray.includes(item.value)).map((item) => item.value)
85414
+ : [];
85415
+ if (rejectedValues.length > 0) {
85416
+ const reconciled = valueArray.filter((val) => !rejectedValues.includes(val));
85605
85417
  this.value = serializeMultiSelectValue(reconciled);
85606
85418
  valueReconciled = true;
85607
85419
  }
@@ -85613,11 +85425,7 @@ class AuroMenu extends AuroElement$2 {
85613
85425
  // `hidden` is intentionally NOT excluded: the combobox toggles
85614
85426
  // `hidden` as its type-ahead filter, so a filtered-out option is
85615
85427
  // still a valid programmatic selection.
85616
- // Prefer the option the user actually selected (tracked by
85617
- // `_selectedKey`) so a click on the second of two options sharing a
85618
- // `value` resolves back to that exact element instead of the first
85619
- // value match. Falls back to first-by-value for programmatic sets.
85620
- const matchingOption = resolveSelectedOption(this.items, this.value, this._selectedKey);
85428
+ const matchingOption = this.items ? this.items.find((item) => isSelectableByValue(item) && item.value === this.value) : undefined;
85621
85429
 
85622
85430
  if (matchingOption) {
85623
85431
  newSelected = matchingOption;
@@ -85845,14 +85653,6 @@ class AuroMenu extends AuroElement$2 {
85845
85653
  }
85846
85654
  });
85847
85655
 
85848
- // Assign private keys once items are populated. Only the root menu assigns
85849
- // keys: its `items` is a deep query that already includes nested submenu
85850
- // options, so a single pass keys the entire tree. Nested menus skip this
85851
- // and inherit keys from the root.
85852
- if (this.rootMenu) {
85853
- this._assignOptionKeys();
85854
- }
85855
-
85856
85656
  if (this.noCheckmark) {
85857
85657
  this.updateItemsState(new Map([
85858
85658
  [
@@ -85869,31 +85669,6 @@ class AuroMenu extends AuroElement$2 {
85869
85669
  }));
85870
85670
  }
85871
85671
 
85872
- /**
85873
- * Assigns a private, auto-generated unique key (`_optionKey`) to each menu
85874
- * option that does not already have one. Keys are internal state on the
85875
- * element instance — never reflected as an attribute or exposed publicly —
85876
- * and let selection tracking distinguish options that share the same `value`.
85877
- *
85878
- * The `_optionKey === undefined` guard makes this idempotent: options keep the
85879
- * key they were first assigned across re-renders and slot changes, and if a
85880
- * nested menu's lifecycle runs a pass before the root, options simply wait for
85881
- * the root to key them (or keep whatever key they already hold).
85882
- * @private
85883
- */
85884
- _assignOptionKeys() {
85885
- if (!this.items) {
85886
- return;
85887
- }
85888
-
85889
- this.items.forEach((option) => {
85890
- if (option._optionKey === undefined) {
85891
- this._optionKeyCounter += 1;
85892
- option._optionKey = `${this._menuInstanceId}-${this._optionKeyCounter}`;
85893
- }
85894
- });
85895
- }
85896
-
85897
85672
  // Logic Methods
85898
85673
 
85899
85674
  /**
@@ -85903,28 +85678,24 @@ class AuroMenu extends AuroElement$2 {
85903
85678
  */
85904
85679
  handleSelectState(option) {
85905
85680
  if (this.multiSelect) {
85681
+ const currentValue = this.formattedValue || [];
85906
85682
  const currentSelected = this.optionSelected || [];
85907
85683
 
85684
+ if (!currentValue.includes(option.value)) {
85685
+ this.value = serializeMultiSelectValue([
85686
+ ...currentValue,
85687
+ option.value
85688
+ ]);
85689
+ }
85908
85690
  if (!currentSelected.includes(option)) {
85909
85691
  this.optionSelected = [
85910
85692
  ...currentSelected,
85911
85693
  option
85912
85694
  ];
85913
85695
  }
85914
-
85915
- // Re-sort by DOM order and rebuild `_selectedKey`/`value` from the
85916
- // selected set so display order stays consistent with the menu, not with
85917
- // click order.
85918
- this._sortSelectedByDomOrder();
85919
85696
  } else {
85920
85697
  this.value = option.value;
85921
85698
  this.optionSelected = option;
85922
- // Track the specific option the user selected so the value→option
85923
- // reconciliation in updated() resolves back to this exact element even
85924
- // when another option shares the same `value`.
85925
- this._selectedKey = option._optionKey;
85926
- // Mark this `value` change as selection-driven so updated() trusts the key.
85927
- this._valueChangeFromSelection = true;
85928
85699
  }
85929
85700
 
85930
85701
  this._index = this.items.indexOf(option);
@@ -85937,22 +85708,18 @@ class AuroMenu extends AuroElement$2 {
85937
85708
  */
85938
85709
  handleDeselectState(option) {
85939
85710
  if (this.multiSelect) {
85940
- // Remove this exact element from the selection (identity, not value — two
85941
- // options can share a `value`), then rebuild `value`/`_selectedKey` from
85942
- // the remaining set in DOM order. An empty result collapses to undefined.
85943
- this.optionSelected = this.optionSelected.filter((selected) => selected !== option);
85711
+ // Remove this option from array; an empty result collapses `value` to undefined.
85712
+ const newFormattedValue = (this.formattedValue || []).filter((val) => val !== option.value);
85713
+ this.value = serializeMultiSelectValue(newFormattedValue);
85714
+
85715
+ this.optionSelected = this.optionSelected.filter((val) => val !== option);
85944
85716
  if (this.optionSelected.length === 0) {
85945
85717
  this.optionSelected = undefined;
85946
- this._selectedKey = undefined;
85947
- this.value = undefined;
85948
- } else {
85949
- this._sortSelectedByDomOrder();
85950
85718
  }
85951
85719
  } else {
85952
85720
  // For single-select: Back to undefined when deselected
85953
85721
  this.value = undefined;
85954
85722
  this.optionSelected = undefined;
85955
- this._selectedKey = undefined;
85956
85723
  }
85957
85724
 
85958
85725
  // Update the index tracking
@@ -85976,38 +85743,9 @@ class AuroMenu extends AuroElement$2 {
85976
85743
  clearSelection() {
85977
85744
  this.optionSelected = undefined;
85978
85745
  this.value = undefined;
85979
- this._selectedKey = undefined;
85980
85746
  this._index = -1;
85981
85747
  }
85982
85748
 
85983
- /**
85984
- * Re-sorts the multi-select selection into DOM order and rebuilds the derived
85985
- * `_selectedKey` and `value` from `optionSelected`. Selection is always stored
85986
- * and serialized in the order options appear in the menu, never in click
85987
- * order — so selecting C then A yields `[A, C]`.
85988
- * @private
85989
- */
85990
- _sortSelectedByDomOrder() {
85991
- if (!this.multiSelect || !Array.isArray(this.optionSelected) || !this.items) {
85992
- return;
85993
- }
85994
-
85995
- const indexMap = new Map(this.items.map((item, index) => [
85996
- item,
85997
- index
85998
- ]));
85999
-
86000
- // Sort any element no longer in `items` (a stale selection left over from a
86001
- // dynamic rebuild that the consumer has not cleared) to the END rather than
86002
- // the front, so it never displaces a live option to the head of the
86003
- // serialized order. Value reconciliation drops it on the next updated() cycle.
86004
- this.optionSelected.sort((optionA, optionB) => (indexMap.get(optionA) ?? this.items.length) - (indexMap.get(optionB) ?? this.items.length));
86005
- this._selectedKey = this.optionSelected.map((option) => option._optionKey);
86006
- this.value = serializeMultiSelectValue(this.optionSelected.map((option) => option.value));
86007
- // Mark this `value` change as selection-driven so updated() trusts the keys.
86008
- this._valueChangeFromSelection = true;
86009
- }
86010
-
86011
85749
  /**
86012
85750
  * Resets the menu to its initial state.
86013
85751
  * This is the only way to return value to undefined.
@@ -86017,7 +85755,6 @@ class AuroMenu extends AuroElement$2 {
86017
85755
  // Reset to undefined - initial state
86018
85756
  this.value = undefined;
86019
85757
  this.optionSelected = undefined;
86020
- this._selectedKey = undefined;
86021
85758
  this._index = -1;
86022
85759
 
86023
85760
  // Clear active option state so a follow-up open/navigation starts fresh
@@ -86079,19 +85816,6 @@ class AuroMenu extends AuroElement$2 {
86079
85816
  this.initItems();
86080
85817
  }
86081
85818
 
86082
- // Recover `_index` from the highlighted option when it has been reset to -1.
86083
- // In multi-select, deselecting the last remaining option collapses the value
86084
- // to undefined, and the updated() reconciliation resets `_index = -1` even
86085
- // though `optionActive` still points at the highlighted option. Without this,
86086
- // reading `items[-1]` returns undefined and the re-select no-ops until the
86087
- // highlight is moved away and back. Mirrors auro-combobox's reconcileMenuIndex.
86088
- if (this._index < 0 && this.optionActive && this.items) {
86089
- const activeIndex = this.items.indexOf(this.optionActive);
86090
- if (activeIndex >= 0) {
86091
- this._index = activeIndex;
86092
- }
86093
- }
86094
-
86095
85819
  // Get currently selected menu option based on index
86096
85820
  const option = this.items ? this.items[this._index] : undefined;
86097
85821
 
@@ -91522,7 +91246,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
91522
91246
  }
91523
91247
  };
91524
91248
 
91525
- var formkitVersion$1 = '202608041729';
91249
+ var formkitVersion$1 = '202608041712';
91526
91250
 
91527
91251
  class AuroElement extends i$3 {
91528
91252
  static get properties() {
@@ -92224,6 +91948,15 @@ class AuroDropdown extends AuroElement {
92224
91948
 
92225
91949
  connectedCallback() {
92226
91950
  super.connectedCallback();
91951
+ // Re-register trigger event listeners removed by floater.disconnect() in
91952
+ // disconnectedCallback(). Fires when a parent element (e.g. auro-drawer)
91953
+ // moves this element to a new DOM location. firstUpdated() won't re-run,
91954
+ // so without this the trigger click/keydown handlers are permanently gone.
91955
+ // Guard on floater.element so this is a no-op on the initial connect
91956
+ // (before firstUpdated() has called configure()).
91957
+ if (this.floater?.element) {
91958
+ this.floater.configure(this, 'auroDropdown', !this.disableKeyboardHandling);
91959
+ }
92227
91960
  }
92228
91961
 
92229
91962
  disconnectedCallback() {
@@ -93624,7 +93357,7 @@ class AuroHelpText extends i$3 {
93624
93357
  }
93625
93358
  }
93626
93359
 
93627
- var formkitVersion = '202608041729';
93360
+ var formkitVersion = '202608041712';
93628
93361
 
93629
93362
  var styleCss = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.body-default{font-size:var(--wcss-body-default-font-size, 1rem);font-weight:var(--wcss-body-default-weight, );line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-default-emphasized{font-size:var(--wcss-body-default-emphasized-font-size, 1rem);font-weight:var(--wcss-body-default-emphasized-weight, );line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);font-weight:var(--wcss-body-lg-weight, );line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg,.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg-emphasized{font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);font-weight:var(--wcss-body-lg-emphasized-weight, );line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, 0.875rem);font-weight:var(--wcss-body-sm-weight, );line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-sm-emphasized{font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);font-weight:var(--wcss-body-sm-emphasized-weight, );line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-size:var(--wcss-body-xs-font-size, 0.75rem);font-weight:var(--wcss-body-xs-weight, );line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs,.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs-emphasized{font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);font-weight:var(--wcss-body-xs-emphasized-weight, );line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-size:var(--wcss-body-2xs-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-weight, );line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs,.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-2xs-emphasized{font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-emphasized-weight, );line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 300);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 300);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-outline-color: var(--ds-auro-select-outline-color)}:host{display:inline-block;text-align:left;vertical-align:top}:host([layout*=emphasized]) [auro-dropdown],:host([layout*=snowflake]) [auro-dropdown]{--ds-auro-select-border-color: transparent}:host([layout*=emphasized]) .mainContent,:host([layout*=snowflake]) .mainContent{text-align:center}.mainContent{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;align-items:center;justify-content:center}.valueContainer{max-width:100%}.accents{display:flex;flex-direction:row;align-items:center;justify-content:center}::slotted([slot=typeIcon]){margin-right:var(--ds-size-100, 0.5rem)}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;width:100%;box-sizing:border-box;align-items:center;justify-content:center}:host([layout*=emphasized]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-300, 1.5rem)}:host([layout*=snowflake]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-200, 1rem)}:host([layout*=snowflake]) label{padding-block:var(--ds-size-25, 0.125rem)}:host([layout*=classic]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem)}:host([layout*=classic]) .mainContent{align-items:start}:host([layout*=classic]) label{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) .value{overflow:hidden;height:auto;text-overflow:ellipsis;white-space:nowrap}label{color:var(--ds-auro-select-label-text-color)}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown],:host([appearance=inverse]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([fluid]){width:100%}:host([disabled]){pointer-events:none;user-select:none}:host([disabled]:not([ondark])) [auro-dropdown],:host([disabled]:not([appearance=inverse])) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-border-subtle, #dddddd)}:host(:not([layout*=classic])[disabled][ondark]) [auro-dropdown],:host(:not([layout*=classic])[disabled][appearance=inverse]) [auro-dropdown]{--ds-auro-select-border-color: transparent}`;
93630
93363