@aurodesignsystem-dev/auro-formkit 0.0.0-pr1514.3 → 0.0.0-pr1514.4

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 (47) 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.min.js +4 -3
  7. package/components/combobox/demo/getting-started.min.js +4 -3
  8. package/components/combobox/demo/index.min.js +4 -3
  9. package/components/combobox/dist/index.js +4 -3
  10. package/components/combobox/dist/registered.js +4 -3
  11. package/components/counter/demo/customize.min.js +10 -2
  12. package/components/counter/demo/index.min.js +10 -2
  13. package/components/counter/dist/index.js +10 -2
  14. package/components/counter/dist/registered.js +10 -2
  15. package/components/datepicker/demo/customize.min.js +8 -5
  16. package/components/datepicker/demo/index.min.js +8 -5
  17. package/components/datepicker/dist/auro-calendar.d.ts +4 -2
  18. package/components/datepicker/dist/index.js +8 -5
  19. package/components/datepicker/dist/registered.js +8 -5
  20. package/components/dropdown/demo/customize.min.js +2 -1
  21. package/components/dropdown/demo/getting-started.min.js +2 -1
  22. package/components/dropdown/demo/index.min.js +2 -1
  23. package/components/dropdown/dist/index.js +2 -1
  24. package/components/dropdown/dist/registered.js +2 -1
  25. package/components/form/demo/customize.min.js +211 -75
  26. package/components/form/demo/getting-started.min.js +211 -75
  27. package/components/form/demo/index.min.js +211 -75
  28. package/components/form/demo/registerDemoDeps.min.js +211 -75
  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/radio/demo/customize.min.js +1 -1
  35. package/components/radio/demo/getting-started.min.js +1 -1
  36. package/components/radio/demo/index.min.js +1 -1
  37. package/components/radio/dist/index.js +1 -1
  38. package/components/radio/dist/registered.js +1 -1
  39. package/components/select/demo/customize.min.js +186 -62
  40. package/components/select/demo/getting-started.min.js +186 -62
  41. package/components/select/demo/index.min.js +186 -62
  42. package/components/select/demo/keyboard-behavior.md +18 -4
  43. package/components/select/dist/auro-select.d.ts +20 -8
  44. package/components/select/dist/index.js +186 -62
  45. package/components/select/dist/registered.js +186 -62
  46. package/custom-elements.json +14 -18
  47. package/package.json +1 -1
@@ -12331,7 +12331,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$2 {
12331
12331
  }
12332
12332
  };
12333
12333
 
12334
- var formkitVersion$8 = '202606291727';
12334
+ var formkitVersion$8 = '202606291737';
12335
12335
 
12336
12336
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12337
12337
  // See LICENSE in the project root for license information.
@@ -26573,7 +26573,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$2 {
26573
26573
  }
26574
26574
  };
26575
26575
 
26576
- var formkitVersion$2$1 = '202606291727';
26576
+ var formkitVersion$2$1 = '202606291737';
26577
26577
 
26578
26578
  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$5`${s$5(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$4`: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}
26579
26579
  `,u$4$2=i$4`.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}}
@@ -26679,8 +26679,10 @@ class AuroCalendar extends RangeDatepicker {
26679
26679
  this.activeCellDate = null;
26680
26680
 
26681
26681
  /**
26682
- * Cached reference to the active cell host, set by setActiveCell.
26683
- * Lets scrollToActiveCell skip a full cell scan on each arrow key.
26682
+ * Cached reference to the active cell host. Set by setActiveCell and
26683
+ * refreshed by scrollToActiveCell when its cache check misses (stale
26684
+ * or missing). Lets scrollToActiveCell skip a full cell scan on each
26685
+ * arrow key.
26684
26686
  * @private
26685
26687
  */
26686
26688
  this._activeCell = null;
@@ -32258,7 +32260,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$2 {
32258
32260
  }
32259
32261
  };
32260
32262
 
32261
- var formkitVersion$1$3 = '202606291727';
32263
+ var formkitVersion$1$3 = '202606291737';
32262
32264
 
32263
32265
  let AuroElement$2$2 = class AuroElement extends i$2 {
32264
32266
  static get properties() {
@@ -33530,6 +33532,7 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
33530
33532
  role="${o$4(this.triggerContentFocusable ? undefined : this.a11yRole)}"
33531
33533
  aria-expanded="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
33532
33534
  aria-controls="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.dropdownId)}"
33535
+ aria-haspopup="${o$4(this.a11yRole === 'combobox' && !this.triggerContentFocusable ? 'listbox' : undefined)}"
33533
33536
  aria-labelledby="${o$4(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
33534
33537
  aria-disabled="${o$4(this.disabled ? 'true' : undefined)}"
33535
33538
  @focusin="${this.handleFocusin}"
@@ -45851,7 +45854,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$2 {
45851
45854
  }
45852
45855
  };
45853
45856
 
45854
- var formkitVersion$7 = '202606291727';
45857
+ var formkitVersion$7 = '202606291737';
45855
45858
 
45856
45859
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
45857
45860
  // See LICENSE in the project root for license information.
@@ -50706,7 +50709,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$2 {
50706
50709
  }
50707
50710
  };
50708
50711
 
50709
- var formkitVersion$1$2 = '202606291727';
50712
+ var formkitVersion$1$2 = '202606291737';
50710
50713
 
50711
50714
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
50712
50715
  // See LICENSE in the project root for license information.
@@ -55034,7 +55037,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$2 {
55034
55037
  }
55035
55038
  };
55036
55039
 
55037
- var formkitVersion$6 = '202606291727';
55040
+ var formkitVersion$6 = '202606291737';
55038
55041
 
55039
55042
  let AuroElement$1$2 = class AuroElement extends i$2 {
55040
55043
  static get properties() {
@@ -56306,6 +56309,7 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$1$2 {
56306
56309
  role="${o$4(this.triggerContentFocusable ? undefined : this.a11yRole)}"
56307
56310
  aria-expanded="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
56308
56311
  aria-controls="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.dropdownId)}"
56312
+ aria-haspopup="${o$4(this.a11yRole === 'combobox' && !this.triggerContentFocusable ? 'listbox' : undefined)}"
56309
56313
  aria-labelledby="${o$4(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
56310
56314
  aria-disabled="${o$4(this.disabled ? 'true' : undefined)}"
56311
56315
  @focusin="${this.handleFocusin}"
@@ -57438,6 +57442,13 @@ class AuroCounterGroup extends AuroElement$4 {
57438
57442
  */
57439
57443
  configureDropdownCounters() {
57440
57444
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
57445
+
57446
+ // Counter rows are slotted into the bib through multiple shadow roots
57447
+ // (dropdown → bib → bibtemplate → counter-group → counter), so the floater's
57448
+ // `:focus-within` focus-loss check fails to match the dropdown host in Chromium
57449
+ // and the bib auto-closes immediately after opening. Mirrors auro-select.
57450
+ this.dropdown.noHideOnThisFocusLoss = true;
57451
+
57441
57452
  this.dropdown.requestUpdate();
57442
57453
 
57443
57454
  const counterWrapper = this.shadowRoot.querySelector('auro-counter-wrapper');
@@ -58974,7 +58985,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$2 {
58974
58985
  }
58975
58986
  };
58976
58987
 
58977
- var formkitVersion$5 = '202606291727';
58988
+ var formkitVersion$5 = '202606291737';
58978
58989
 
58979
58990
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
58980
58991
  // See LICENSE in the project root for license information.
@@ -60724,7 +60735,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$2 {
60724
60735
  }
60725
60736
  };
60726
60737
 
60727
- var formkitVersion$4 = '202606291727';
60738
+ var formkitVersion$4 = '202606291737';
60728
60739
 
60729
60740
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
60730
60741
  // See LICENSE in the project root for license information.
@@ -65939,7 +65950,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$2 {
65939
65950
  }
65940
65951
  };
65941
65952
 
65942
- var formkitVersion$2 = '202606291727';
65953
+ var formkitVersion$2 = '202606291737';
65943
65954
 
65944
65955
  let AuroElement$2$1 = class AuroElement extends i$2 {
65945
65956
  static get properties() {
@@ -67211,6 +67222,7 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
67211
67222
  role="${o$4(this.triggerContentFocusable ? undefined : this.a11yRole)}"
67212
67223
  aria-expanded="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
67213
67224
  aria-controls="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.dropdownId)}"
67225
+ aria-haspopup="${o$4(this.a11yRole === 'combobox' && !this.triggerContentFocusable ? 'listbox' : undefined)}"
67214
67226
  aria-labelledby="${o$4(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
67215
67227
  aria-disabled="${o$4(this.disabled ? 'true' : undefined)}"
67216
67228
  @focusin="${this.handleFocusin}"
@@ -79532,7 +79544,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$2 {
79532
79544
  }
79533
79545
  };
79534
79546
 
79535
- var formkitVersion$1$1 = '202606291727';
79547
+ var formkitVersion$1$1 = '202606291737';
79536
79548
 
79537
79549
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
79538
79550
  // See LICENSE in the project root for license information.
@@ -80653,7 +80665,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$2 {
80653
80665
  }
80654
80666
  };
80655
80667
 
80656
- var formkitVersion$3 = '202606291727';
80668
+ var formkitVersion$3 = '202606291737';
80657
80669
 
80658
80670
  var styleCss$1$3 = i$4`.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}`;
80659
80671
 
@@ -85466,19 +85478,28 @@ const selectKeyboardStrategy = {
85466
85478
  },
85467
85479
 
85468
85480
  End(component, evt, ctx) {
85469
- if (!ctx.isExpanded) {
85470
- return;
85471
- }
85472
85481
  evt.preventDefault();
85473
85482
  evt.stopPropagation();
85474
85483
  // `pop()` is safe here: getEnabledOptions returns a fresh filtered array.
85475
85484
  const lastOption = getEnabledOptions(component.menu).pop();
85476
- if (lastOption) {
85477
- component.menu.updateActiveOption(lastOption);
85485
+ if (!lastOption) {
85486
+ return;
85487
+ }
85488
+ // Pre-stash before show() so the auroDropdown-toggled handler's
85489
+ // `!optionActive` guard short-circuits the firstActive/selected fallback —
85490
+ // otherwise show() synchronously fires the handler and writes
85491
+ // aria-activedescendant once before we overwrite it.
85492
+ component.menu.updateActiveOption(lastOption);
85493
+ if (!ctx.isExpanded) {
85494
+ component.dropdown.show();
85478
85495
  }
85479
85496
  },
85480
85497
 
85481
85498
  Enter(component, evt, ctx) {
85499
+ // Prevent the keypress from bubbling to parent containers (e.g., forms)
85500
+ // which could interpret Enter as a submit. Matches APG select-only combobox
85501
+ // and native <select> behavior: Enter opens the listbox when closed, selects
85502
+ // the active option when open — it does not submit a parent form.
85482
85503
  evt.preventDefault();
85483
85504
  evt.stopPropagation();
85484
85505
  if (!ctx.isExpanded) {
@@ -85489,14 +85510,16 @@ const selectKeyboardStrategy = {
85489
85510
  },
85490
85511
 
85491
85512
  Home(component, evt, ctx) {
85492
- if (!ctx.isExpanded) {
85493
- return;
85494
- }
85495
85513
  evt.preventDefault();
85496
85514
  evt.stopPropagation();
85497
85515
  const [firstOption] = getEnabledOptions(component.menu);
85498
- if (firstOption) {
85499
- component.menu.updateActiveOption(firstOption);
85516
+ if (!firstOption) {
85517
+ return;
85518
+ }
85519
+ // See End() for why this must run before show().
85520
+ component.menu.updateActiveOption(firstOption);
85521
+ if (!ctx.isExpanded) {
85522
+ component.dropdown.show();
85500
85523
  }
85501
85524
  },
85502
85525
 
@@ -89444,7 +89467,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
89444
89467
  }
89445
89468
  };
89446
89469
 
89447
- var formkitVersion$1 = '202606291727';
89470
+ var formkitVersion$1 = '202606291737';
89448
89471
 
89449
89472
  class AuroElement extends i$2 {
89450
89473
  static get properties() {
@@ -90716,6 +90739,7 @@ class AuroDropdown extends AuroElement {
90716
90739
  role="${o$4(this.triggerContentFocusable ? undefined : this.a11yRole)}"
90717
90740
  aria-expanded="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
90718
90741
  aria-controls="${o$4(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.dropdownId)}"
90742
+ aria-haspopup="${o$4(this.a11yRole === 'combobox' && !this.triggerContentFocusable ? 'listbox' : undefined)}"
90719
90743
  aria-labelledby="${o$4(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
90720
90744
  aria-disabled="${o$4(this.disabled ? 'true' : undefined)}"
90721
90745
  @focusin="${this.handleFocusin}"
@@ -91465,7 +91489,7 @@ class AuroHelpText extends i$2 {
91465
91489
  }
91466
91490
  }
91467
91491
 
91468
- var formkitVersion = '202606291727';
91492
+ var formkitVersion = '202606291737';
91469
91493
 
91470
91494
  var styleCss = i$4`.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 [slot=displayValue]{display:none}.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%;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{height:auto}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}`;
91471
91495
 
@@ -91797,14 +91821,6 @@ class AuroSelect extends AuroElement$1 {
91797
91821
  reflect: true
91798
91822
  },
91799
91823
 
91800
- /**
91801
- * @private
91802
- */
91803
- options: {
91804
- type: Array,
91805
- state: true
91806
- },
91807
-
91808
91824
  /**
91809
91825
  * Specifies the current selected menuOption. Default type is `HTMLElement`, changing to `Array<HTMLElement>` when `multiSelect` is true.
91810
91826
  * @type {HTMLElement|Array<HTMLElement>}
@@ -92092,16 +92108,68 @@ class AuroSelect extends AuroElement$1 {
92092
92108
  this.dropdown.dropdownWidth = this.customBibWidth;
92093
92109
  }
92094
92110
 
92095
- // Pass label text to the dropdown bib for accessible dialog naming
92096
- const labelElement = this.querySelector('span[slot="label"]');
92097
- if (labelElement) {
92098
- this.dropdown.bibDialogLabel = labelElement.textContent.trim() || undefined;
92099
- }
92111
+ this._syncLabelText();
92100
92112
 
92101
92113
  // Exposes the CSS parts from the dropdown for styling
92102
92114
  this.dropdown.exposeCssParts();
92103
92115
  }
92104
92116
 
92117
+ /**
92118
+ * Reads the current label slot text and pushes it to the dropdown bib
92119
+ * (for dialog naming) and the menu (for listbox aria-label). Safe to call
92120
+ * before either child has been wired up — each branch self-guards.
92121
+ * @private
92122
+ */
92123
+ _syncLabelText() {
92124
+ const labelElement = this.querySelector('[slot="label"]');
92125
+ const text = labelElement ? labelElement.textContent.trim() : '';
92126
+ if (this.dropdown) {
92127
+ this.dropdown.bibDialogLabel = text || undefined;
92128
+ }
92129
+ if (this.menu) {
92130
+ if (text) {
92131
+ this.menu.setAttribute('aria-label', text);
92132
+ } else {
92133
+ this.menu.removeAttribute('aria-label');
92134
+ }
92135
+ }
92136
+ }
92137
+
92138
+ /**
92139
+ * Keeps the dialog/menu accessible names in sync when consumers mutate the
92140
+ * label slot at runtime (e.g., i18n locale swap). `slotchange` alone is
92141
+ * insufficient — it doesn't fire when textContent of an already-assigned
92142
+ * slotted node changes, which is the common case. We scope the observer to
92143
+ * the label node itself (not the whole host subtree) so option-content
92144
+ * mutations don't trigger label re-syncs, and re-target on `slotchange`
92145
+ * when consumers add or replace the label element.
92146
+ * @private
92147
+ */
92148
+ _observeLabelChanges() {
92149
+ if (this._labelObserver) return;
92150
+ this._labelObserver = new MutationObserver(() => this._syncLabelText());
92151
+
92152
+ const retarget = () => {
92153
+ this._labelObserver.disconnect();
92154
+ const labelElement = this.querySelector('[slot="label"]');
92155
+ if (labelElement) {
92156
+ this._labelObserver.observe(labelElement, {
92157
+ childList: true,
92158
+ subtree: true,
92159
+ characterData: true
92160
+ });
92161
+ }
92162
+ this._syncLabelText();
92163
+ };
92164
+
92165
+ retarget();
92166
+
92167
+ this._retargetLabelObserver = retarget;
92168
+ this.shadowRoot.querySelectorAll('slot[name="label"]').forEach((slot) => {
92169
+ slot.addEventListener('slotchange', retarget);
92170
+ });
92171
+ }
92172
+
92105
92173
  /**
92106
92174
  * This will register this element with the browser.
92107
92175
  * @param {string} [name="auro-select"] - The name of element that you want to register to.
@@ -92252,11 +92320,7 @@ class AuroSelect extends AuroElement$1 {
92252
92320
  this.updateMenuShapeSize();
92253
92321
  this.setMenuValue(this.value);
92254
92322
 
92255
- // Set accessible name on the menu for screen readers based on the label slot content
92256
- const labelElement = this.querySelector('[slot="label"]');
92257
- if (labelElement) {
92258
- this.menu.setAttribute('aria-label', labelElement.textContent.trim());
92259
- }
92323
+ this._syncLabelText();
92260
92324
 
92261
92325
  if (this.multiSelect) {
92262
92326
  this.menu.multiSelect = this.multiSelect;
@@ -92268,8 +92332,21 @@ class AuroSelect extends AuroElement$1 {
92268
92332
  if (typeof this.menu.initItems === 'function') {
92269
92333
  this.menu.initItems();
92270
92334
  }
92271
- this.options = this.menu.options;
92272
92335
  this.updateOptionPositions();
92336
+ // renderNativeSelect reads this.menu.options, which the parent doesn't
92337
+ // observe — request an update so the hidden native <option> list reflects
92338
+ // the menu's options after initItems populates them.
92339
+ this.requestUpdate();
92340
+
92341
+ // Keep aria-setsize/aria-posinset (and the native <option> list) in sync
92342
+ // when the menu re-initializes its items — e.g., slotchange, async/lazy
92343
+ // loads, value-triggered re-init. Without this, stale set-size is
92344
+ // announced and the native select goes stale after dynamic mutations.
92345
+ this.menu.addEventListener('auroMenu-optionsChange', () => {
92346
+ this.updateOptionPositions();
92347
+ this.requestUpdate();
92348
+ });
92349
+
92273
92350
  this.menu.addEventListener("auroMenu-loadingChange", (event) => this.handleMenuLoadingChange(event));
92274
92351
 
92275
92352
  this.menu.addEventListener("auroMenu-selectValueFailure", () => {
@@ -92288,11 +92365,26 @@ class AuroSelect extends AuroElement$1 {
92288
92365
  this.dropdown.setActiveDescendant(this.optionActive);
92289
92366
  }
92290
92367
 
92291
- // Announce the active option for screen readers
92292
- if (this.optionActive) {
92368
+ // Live-region announce only for [not selected] options. For activations
92369
+ // on an already-selected option — auto-activation on bib open, arrow
92370
+ // navigation back to the selection, or click in multiSelect — rely on
92371
+ // aria-activedescendant + aria-selected="true" to convey state per the
92372
+ // WAI-ARIA listbox pattern. This is intentional, not limited to the
92373
+ // initial activation on open: it also prevents a duplicate "X, selected"
92374
+ // when Enter on the active+selected option re-fires
92375
+ // auroMenu-selectedOption (see 03b289e39).
92376
+ if (this.optionActive && !this.optionActive.hasAttribute('selected')) {
92293
92377
  const optionText = this.optionActive.textContent.trim();
92294
- const selectedState = this.optionActive.hasAttribute('selected') ? ', selected' : ', not selected';
92295
- announceToScreenReader(this._getAnnouncementRoot(), `${optionText}${selectedState}`);
92378
+ const message = `${optionText}, not selected`;
92379
+ if (this.dropdown.isPopoverVisible) {
92380
+ announceToScreenReader(this._getAnnouncementRoot(), message);
92381
+ } else {
92382
+ // Typeahead-on-closed fires this event before `show()` flips
92383
+ // isPopoverVisible. Defer so the announcement targets the bib's
92384
+ // live region once the fullscreen <dialog> opens — otherwise it
92385
+ // lands in the host root, which is inert under the active modal.
92386
+ queueMicrotask(() => announceToScreenReader(this._getAnnouncementRoot(), message));
92387
+ }
92296
92388
  }
92297
92389
 
92298
92390
  if (this.dropdown.isPopoverVisible) {
@@ -92301,6 +92393,7 @@ class AuroSelect extends AuroElement$1 {
92301
92393
  });
92302
92394
 
92303
92395
  this.menu.addEventListener('auroMenu-selectedOption', () => {
92396
+ const previousSelected = this.optionSelected;
92304
92397
 
92305
92398
  // Update the displayed value
92306
92399
  this.updateDisplayedValue();
@@ -92320,13 +92413,32 @@ class AuroSelect extends AuroElement$1 {
92320
92413
  this.dropdown.trigger.focus();
92321
92414
  }
92322
92415
 
92323
- // Announce the selection after the dropdown closes so it isn't
92324
- // overridden by VoiceOver's "collapsed" announcement from aria-expanded.
92325
- const selectedValue = this.menu.currentLabel;
92326
- const announcementDelay = 300;
92327
- setTimeout(() => {
92328
- announceToScreenReader(this._getAnnouncementRoot(), `${selectedValue}, selected`);
92329
- }, announcementDelay);
92416
+ // Describe the actual change. In multiSelect, currentLabel is the
92417
+ // concatenated remaining list — announcing "{list}, selected" after a
92418
+ // deselect would falsely claim every remaining label was just added.
92419
+ // Diff previous vs next to recover the toggled option.
92420
+ let announcement = '';
92421
+ if (this.multiSelect) {
92422
+ const prev = Array.isArray(previousSelected) ? previousSelected : [];
92423
+ const removed = prev.find((opt) => !nextSelected.includes(opt));
92424
+ const added = nextSelected.find((opt) => !prev.includes(opt));
92425
+ if (removed) {
92426
+ announcement = `${removed.textContent.trim()}, not selected`;
92427
+ } else if (added) {
92428
+ announcement = `${added.textContent.trim()}, selected`;
92429
+ }
92430
+ } else {
92431
+ announcement = `${this.menu.currentLabel}, selected`;
92432
+ }
92433
+
92434
+ // Delay so the utterance isn't overridden by VoiceOver's "collapsed"
92435
+ // announcement from aria-expanded when the dropdown closes.
92436
+ if (announcement) {
92437
+ const announcementDelay = 300;
92438
+ setTimeout(() => {
92439
+ announceToScreenReader(this._getAnnouncementRoot(), announcement);
92440
+ }, announcementDelay);
92441
+ }
92330
92442
  });
92331
92443
  }
92332
92444
 
@@ -92424,24 +92536,32 @@ class AuroSelect extends AuroElement$1 {
92424
92536
 
92425
92537
  this.typeaheadBuffer += key;
92426
92538
 
92427
- const isRepeatedChar = this.typeaheadBuffer.length > 1 && new Set(this.typeaheadBuffer).size === 1;
92539
+ // Prefer the literal buffer as a prefix per WAI-ARIA APG ("focus moves to the
92540
+ // next item with a name that starts with the string of characters typed").
92541
+ // Only fall back to single-char cycling when the repeated buffer has no
92542
+ // longer prefix match — e.g. "aa" cycles through ["Apple", "Apricot"] only
92543
+ // because no option starts with "aa".
92544
+ let match = options.find((option) => this._getOptionDisplayText(option).startsWith(this.typeaheadBuffer));
92428
92545
 
92429
- let match = null;
92546
+ const isRepeatedChar = !match && this.typeaheadBuffer.length > 1 && new Set(this.typeaheadBuffer).size === 1;
92430
92547
  if (isRepeatedChar) {
92431
92548
  const matches = options.filter((option) => this._getOptionDisplayText(option).startsWith(key));
92432
92549
  if (matches.length) {
92433
92550
  const cycleIndex = (this.typeaheadBuffer.length - 1) % matches.length;
92434
92551
  match = matches[cycleIndex];
92435
92552
  }
92436
- } else {
92437
- match = options.find((option) => this._getOptionDisplayText(option).startsWith(this.typeaheadBuffer));
92438
92553
  }
92439
92554
 
92555
+ // Intentional: no-match leaves the bib closed (deviates from APG / some native <select>).
92440
92556
  if (match) {
92557
+ // Pre-stash the match so the auroDropdown-toggled handler's `!optionActive`
92558
+ // guard short-circuits and skips the firstActive/selected fallback —
92559
+ // otherwise show() synchronously fires the handler, which writes
92560
+ // aria-activedescendant once before we overwrite it.
92561
+ this.menu.updateActiveOption(match);
92441
92562
  if (!this.dropdown.isPopoverVisible) {
92442
92563
  this.dropdown.show();
92443
92564
  }
92444
- this.menu.updateActiveOption(match);
92445
92565
  }
92446
92566
  }
92447
92567
 
@@ -92558,6 +92678,28 @@ class AuroSelect extends AuroElement$1 {
92558
92678
  disconnectedCallback() {
92559
92679
  super.disconnectedCallback();
92560
92680
  this._clearTypeaheadBuffer();
92681
+ if (this._labelObserver) {
92682
+ this._labelObserver.disconnect();
92683
+ this._labelObserver = null;
92684
+ }
92685
+ if (this._retargetLabelObserver && this.shadowRoot) {
92686
+ this.shadowRoot.querySelectorAll('slot[name="label"]').forEach((slot) => {
92687
+ slot.removeEventListener('slotchange', this._retargetLabelObserver);
92688
+ });
92689
+ this._retargetLabelObserver = null;
92690
+ }
92691
+ }
92692
+
92693
+ connectedCallback() {
92694
+ super.connectedCallback();
92695
+ // Regression guard: firstUpdated() fires once per instance, so the label
92696
+ // observer setup it triggers does NOT re-run on reconnect. After a
92697
+ // disconnect+reconnect (reparent, SPA route swap), runtime label mutations
92698
+ // would silently stop syncing menu aria-label / dropdown.bibDialogLabel
92699
+ // unless we re-wire the observer here.
92700
+ if (this.hasUpdated) {
92701
+ this._observeLabelChanges();
92702
+ }
92561
92703
  }
92562
92704
 
92563
92705
  // lifecycle runs only after the element's DOM has been updated the first time
@@ -92568,6 +92710,7 @@ class AuroSelect extends AuroElement$1 {
92568
92710
  this.configureDropdown();
92569
92711
  this.configureMenu();
92570
92712
  this.configureSelect();
92713
+ this._observeLabelChanges();
92571
92714
  }
92572
92715
 
92573
92716
  setMenuValue(value) {
@@ -92700,25 +92843,18 @@ class AuroSelect extends AuroElement$1 {
92700
92843
  * @private
92701
92844
  */
92702
92845
  _handleNativeSelectChange(event) {
92846
+ // Hidden native <select> has no `multiple` attribute, so any change it fires
92847
+ // is a single raw value — applying it in multiSelect mode would collapse the
92848
+ // JSON-array `value` shape. Bfcache/autofill can reach this on a name-bearing
92849
+ // form control even with aria-hidden/tabindex=-1.
92850
+ if (this.multiSelect) return;
92851
+
92703
92852
  const selectedOption = event.target.options[event.target.selectedIndex];
92704
92853
  if (!selectedOption) return;
92705
92854
  const selectedValue = selectedOption.value;
92706
92855
 
92707
- if (this.multiSelect) {
92708
- const currentArray = this.menu.value || [];
92709
-
92710
- if (!currentArray.includes(selectedValue)) {
92711
- this.value = JSON.stringify([
92712
- ...currentArray,
92713
- selectedValue
92714
- ]);
92715
- }
92716
- } else {
92717
- const currentValue = this.value;
92718
-
92719
- if (currentValue !== selectedValue) {
92720
- this.value = selectedValue;
92721
- }
92856
+ if (this.value !== selectedValue) {
92857
+ this.value = selectedValue;
92722
92858
  }
92723
92859
  }
92724
92860
 
@@ -12260,7 +12260,7 @@ class AuroHelpText extends i$3 {
12260
12260
  }
12261
12261
  }
12262
12262
 
12263
- var formkitVersion = '202606291727';
12263
+ var formkitVersion = '202606291737';
12264
12264
 
12265
12265
  /**
12266
12266
  * @license
@@ -12260,7 +12260,7 @@ class AuroHelpText extends i$3 {
12260
12260
  }
12261
12261
  }
12262
12262
 
12263
- var formkitVersion = '202606291727';
12263
+ var formkitVersion = '202606291737';
12264
12264
 
12265
12265
  /**
12266
12266
  * @license
@@ -12260,7 +12260,7 @@ class AuroHelpText extends i$3 {
12260
12260
  }
12261
12261
  }
12262
12262
 
12263
- var formkitVersion = '202606291727';
12263
+ var formkitVersion = '202606291737';
12264
12264
 
12265
12265
  /**
12266
12266
  * @license
@@ -12202,7 +12202,7 @@ class AuroHelpText extends LitElement {
12202
12202
  }
12203
12203
  }
12204
12204
 
12205
- var formkitVersion = '202606291727';
12205
+ var formkitVersion = '202606291737';
12206
12206
 
12207
12207
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12208
12208
  // See LICENSE in the project root for license information.
@@ -12202,7 +12202,7 @@ class AuroHelpText extends LitElement {
12202
12202
  }
12203
12203
  }
12204
12204
 
12205
- var formkitVersion = '202606291727';
12205
+ var formkitVersion = '202606291737';
12206
12206
 
12207
12207
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12208
12208
  // See LICENSE in the project root for license information.