@aurodesignsystem-dev/auro-formkit 0.0.0-pr1531.1 → 0.0.0-pr1532.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 (46) 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 +29 -42
  7. package/components/combobox/demo/getting-started.min.js +29 -42
  8. package/components/combobox/demo/index.min.js +29 -42
  9. package/components/combobox/dist/index.js +29 -42
  10. package/components/combobox/dist/registered.js +29 -42
  11. package/components/counter/demo/customize.min.js +2 -2
  12. package/components/counter/demo/index.min.js +2 -2
  13. package/components/counter/dist/index.js +2 -2
  14. package/components/counter/dist/registered.js +2 -2
  15. package/components/datepicker/demo/customize.min.js +29 -42
  16. package/components/datepicker/demo/index.min.js +29 -42
  17. package/components/datepicker/dist/index.js +29 -42
  18. package/components/datepicker/dist/registered.js +29 -42
  19. package/components/dropdown/demo/customize.min.js +1 -1
  20. package/components/dropdown/demo/getting-started.min.js +1 -1
  21. package/components/dropdown/demo/index.min.js +1 -1
  22. package/components/dropdown/dist/index.js +1 -1
  23. package/components/dropdown/dist/registered.js +1 -1
  24. package/components/form/demo/customize.min.js +151 -144
  25. package/components/form/demo/getting-started.min.js +151 -144
  26. package/components/form/demo/index.min.js +151 -144
  27. package/components/form/demo/registerDemoDeps.min.js +151 -144
  28. package/components/input/demo/customize.min.js +27 -40
  29. package/components/input/demo/getting-started.min.js +27 -40
  30. package/components/input/demo/index.min.js +27 -40
  31. package/components/input/dist/base-input.d.ts +4 -20
  32. package/components/input/dist/index.js +27 -40
  33. package/components/input/dist/registered.js +27 -40
  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 +62 -16
  40. package/components/select/demo/getting-started.min.js +62 -16
  41. package/components/select/demo/index.min.js +62 -16
  42. package/components/select/dist/auro-select.d.ts +6 -0
  43. package/components/select/dist/index.js +62 -16
  44. package/components/select/dist/registered.js +62 -16
  45. package/custom-elements.json +1561 -1615
  46. package/package.json +1 -1
@@ -10728,16 +10728,14 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
10728
10728
  this.label = 'Input label is undefined';
10729
10729
  this.layout = 'classic';
10730
10730
  this.locale = 'en-US';
10731
- this._format = undefined;
10732
-
10733
- /** @private */
10734
- this._userSetFormat = false;
10735
10731
  this.max = undefined;
10736
10732
  this.maxLength = undefined;
10737
10733
  this.min = undefined;
10738
10734
  this.minLength = undefined;
10739
10735
  this.noValidate = false;
10740
10736
  this.onDark = false;
10737
+ // Raw values returned from the input mask before model normalization.
10738
+ this._rawMaskValue = undefined;
10741
10739
  this.required = false;
10742
10740
  this.setCustomValidityForType = undefined;
10743
10741
  // Credit Card is intentionally excluded — its mask manages the cursor
@@ -10895,8 +10893,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
10895
10893
  */
10896
10894
  format: {
10897
10895
  type: String,
10898
- reflect: true,
10899
- noAccessor: true
10896
+ reflect: true
10900
10897
  },
10901
10898
 
10902
10899
  /**
@@ -11234,34 +11231,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11234
11231
  return this.max && dateFormatter$3.isValidDate(this.max) ? dateFormatter$3.stringToDateInstance(this.max) : undefined;
11235
11232
  }
11236
11233
 
11237
- get format() {
11238
- return this._format;
11239
- }
11240
-
11241
- /**
11242
- * Overrides LitElement's generated accessor so we can track whether the
11243
- * consumer explicitly set `format`. Locale-derived updates use
11244
- * `_setFormatFromLocale` instead, which skips this flag.
11245
- */
11246
- set format(value) {
11247
- const oldValue = this._format;
11248
- this._format = value ? value.toLowerCase() : value;
11249
- this._userSetFormat = Boolean(value);
11250
- this.requestUpdate('format', oldValue);
11251
- }
11252
-
11253
- /**
11254
- * Sets format without marking it as user-set. Used by locale auto-derive
11255
- * so that a subsequent locale change can still update the format.
11256
- * @private
11257
- * @param {string} value
11258
- */
11259
- _setFormatFromLocale(value) {
11260
- const oldValue = this._format;
11261
- this._format = value ? value.toLowerCase() : value;
11262
- this.requestUpdate('format', oldValue);
11263
- }
11264
-
11265
11234
  connectedCallback() {
11266
11235
  super.connectedCallback();
11267
11236
 
@@ -11309,6 +11278,15 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11309
11278
 
11310
11279
  this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
11311
11280
 
11281
+ // Normalize the format token to lowercase so case-mixed values supplied
11282
+ // via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
11283
+ // lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
11284
+ // format silently misses the map and leaves `setCustomValidityForType`
11285
+ // unset.
11286
+ if (this.format) {
11287
+ this.format = this.format.toLowerCase();
11288
+ }
11289
+
11312
11290
  // use validity message override if declared when initializing the component
11313
11291
  if (this.hasAttribute('setCustomValidity')) {
11314
11292
  this.ValidityMessageOverride = this.setCustomValidity;
@@ -11415,10 +11393,12 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11415
11393
  updated(changedProperties) {
11416
11394
  super.updated(changedProperties);
11417
11395
 
11418
- // When locale changes, auto-derive format unless the consumer explicitly set one.
11396
+ // When locale changes without an explicit format override, derive format from the new locale.
11397
+ // Only runs if the current format is still the previous locale's default (not user-overridden).
11419
11398
  if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
11420
- if (!this._userSetFormat) {
11421
- this._setFormatFromLocale(getDateFormatFromLocale$3(this.locale));
11399
+ const previousLocaleFormat = getDateFormatFromLocale$3(changedProperties.get('locale'));
11400
+ if (!this.format || this.format.toLowerCase() === previousLocaleFormat) {
11401
+ this.format = getDateFormatFromLocale$3(this.locale);
11422
11402
  }
11423
11403
  }
11424
11404
 
@@ -11589,6 +11569,9 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11589
11569
  this.maskInstance.on('accept', () => {
11590
11570
  if (this._configuringMask) return;
11591
11571
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
11572
+ if (this.type === "date") {
11573
+ this._rawMaskValue = this.maskInstance.value;
11574
+ }
11592
11575
  });
11593
11576
 
11594
11577
  // Mask fires 'complete' on the restore step below for any value that
@@ -11596,6 +11579,9 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11596
11579
  this.maskInstance.on('complete', () => {
11597
11580
  if (this._configuringMask) return;
11598
11581
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
11582
+ if (this.type === "date") {
11583
+ this._rawMaskValue = this.maskInstance.value;
11584
+ }
11599
11585
  });
11600
11586
 
11601
11587
  // Write existingValue through the mask (not the input directly) so
@@ -11832,7 +11818,8 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11832
11818
 
11833
11819
  // Set default date format if type=date and no format is defined
11834
11820
  if (this.type === "date" && !this.format) {
11835
- this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
11821
+ // Use locale to determine default date format
11822
+ this.format = this.util.getDateMaskFromLocale().toLowerCase();
11836
11823
  this.util.updateFormat(this.format);
11837
11824
  }
11838
11825
  }
@@ -11861,7 +11848,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
11861
11848
  const creditCard = this.matchInputValueToCreditCard();
11862
11849
  const previousFormat = this.format;
11863
11850
 
11864
- this._setFormatFromLocale(creditCard.maskFormat);
11851
+ this.format = creditCard.maskFormat;
11865
11852
 
11866
11853
  this.maxLength = creditCard.formatLength;
11867
11854
  this.minLength = creditCard.formatMinLength;
@@ -12335,7 +12322,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$2 {
12335
12322
  }
12336
12323
  };
12337
12324
 
12338
- var formkitVersion$8 = '202607022150';
12325
+ var formkitVersion$8 = '202607022008';
12339
12326
 
12340
12327
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12341
12328
  // See LICENSE in the project root for license information.
@@ -26705,7 +26692,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$2 {
26705
26692
  }
26706
26693
  };
26707
26694
 
26708
- var formkitVersion$2$1 = '202607022150';
26695
+ var formkitVersion$2$1 = '202607022008';
26709
26696
 
26710
26697
  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}
26711
26698
  `,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}}
@@ -32523,7 +32510,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$2 {
32523
32510
  }
32524
32511
  };
32525
32512
 
32526
- var formkitVersion$1$3 = '202607022150';
32513
+ var formkitVersion$1$3 = '202607022008';
32527
32514
 
32528
32515
  let AuroElement$2$2 = class AuroElement extends i$2 {
32529
32516
  static get properties() {
@@ -44531,16 +44518,14 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
44531
44518
  this.label = 'Input label is undefined';
44532
44519
  this.layout = 'classic';
44533
44520
  this.locale = 'en-US';
44534
- this._format = undefined;
44535
-
44536
- /** @private */
44537
- this._userSetFormat = false;
44538
44521
  this.max = undefined;
44539
44522
  this.maxLength = undefined;
44540
44523
  this.min = undefined;
44541
44524
  this.minLength = undefined;
44542
44525
  this.noValidate = false;
44543
44526
  this.onDark = false;
44527
+ // Raw values returned from the input mask before model normalization.
44528
+ this._rawMaskValue = undefined;
44544
44529
  this.required = false;
44545
44530
  this.setCustomValidityForType = undefined;
44546
44531
  // Credit Card is intentionally excluded — its mask manages the cursor
@@ -44698,8 +44683,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
44698
44683
  */
44699
44684
  format: {
44700
44685
  type: String,
44701
- reflect: true,
44702
- noAccessor: true
44686
+ reflect: true
44703
44687
  },
44704
44688
 
44705
44689
  /**
@@ -45037,34 +45021,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45037
45021
  return this.max && dateFormatter$2.isValidDate(this.max) ? dateFormatter$2.stringToDateInstance(this.max) : undefined;
45038
45022
  }
45039
45023
 
45040
- get format() {
45041
- return this._format;
45042
- }
45043
-
45044
- /**
45045
- * Overrides LitElement's generated accessor so we can track whether the
45046
- * consumer explicitly set `format`. Locale-derived updates use
45047
- * `_setFormatFromLocale` instead, which skips this flag.
45048
- */
45049
- set format(value) {
45050
- const oldValue = this._format;
45051
- this._format = value ? value.toLowerCase() : value;
45052
- this._userSetFormat = Boolean(value);
45053
- this.requestUpdate('format', oldValue);
45054
- }
45055
-
45056
- /**
45057
- * Sets format without marking it as user-set. Used by locale auto-derive
45058
- * so that a subsequent locale change can still update the format.
45059
- * @private
45060
- * @param {string} value
45061
- */
45062
- _setFormatFromLocale(value) {
45063
- const oldValue = this._format;
45064
- this._format = value ? value.toLowerCase() : value;
45065
- this.requestUpdate('format', oldValue);
45066
- }
45067
-
45068
45024
  connectedCallback() {
45069
45025
  super.connectedCallback();
45070
45026
 
@@ -45112,6 +45068,15 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45112
45068
 
45113
45069
  this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
45114
45070
 
45071
+ // Normalize the format token to lowercase so case-mixed values supplied
45072
+ // via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
45073
+ // lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
45074
+ // format silently misses the map and leaves `setCustomValidityForType`
45075
+ // unset.
45076
+ if (this.format) {
45077
+ this.format = this.format.toLowerCase();
45078
+ }
45079
+
45115
45080
  // use validity message override if declared when initializing the component
45116
45081
  if (this.hasAttribute('setCustomValidity')) {
45117
45082
  this.ValidityMessageOverride = this.setCustomValidity;
@@ -45218,10 +45183,12 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45218
45183
  updated(changedProperties) {
45219
45184
  super.updated(changedProperties);
45220
45185
 
45221
- // When locale changes, auto-derive format unless the consumer explicitly set one.
45186
+ // When locale changes without an explicit format override, derive format from the new locale.
45187
+ // Only runs if the current format is still the previous locale's default (not user-overridden).
45222
45188
  if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
45223
- if (!this._userSetFormat) {
45224
- this._setFormatFromLocale(getDateFormatFromLocale$2(this.locale));
45189
+ const previousLocaleFormat = getDateFormatFromLocale$2(changedProperties.get('locale'));
45190
+ if (!this.format || this.format.toLowerCase() === previousLocaleFormat) {
45191
+ this.format = getDateFormatFromLocale$2(this.locale);
45225
45192
  }
45226
45193
  }
45227
45194
 
@@ -45392,6 +45359,9 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45392
45359
  this.maskInstance.on('accept', () => {
45393
45360
  if (this._configuringMask) return;
45394
45361
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
45362
+ if (this.type === "date") {
45363
+ this._rawMaskValue = this.maskInstance.value;
45364
+ }
45395
45365
  });
45396
45366
 
45397
45367
  // Mask fires 'complete' on the restore step below for any value that
@@ -45399,6 +45369,9 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45399
45369
  this.maskInstance.on('complete', () => {
45400
45370
  if (this._configuringMask) return;
45401
45371
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
45372
+ if (this.type === "date") {
45373
+ this._rawMaskValue = this.maskInstance.value;
45374
+ }
45402
45375
  });
45403
45376
 
45404
45377
  // Write existingValue through the mask (not the input directly) so
@@ -45635,7 +45608,8 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45635
45608
 
45636
45609
  // Set default date format if type=date and no format is defined
45637
45610
  if (this.type === "date" && !this.format) {
45638
- this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
45611
+ // Use locale to determine default date format
45612
+ this.format = this.util.getDateMaskFromLocale().toLowerCase();
45639
45613
  this.util.updateFormat(this.format);
45640
45614
  }
45641
45615
  }
@@ -45664,7 +45638,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
45664
45638
  const creditCard = this.matchInputValueToCreditCard();
45665
45639
  const previousFormat = this.format;
45666
45640
 
45667
- this._setFormatFromLocale(creditCard.maskFormat);
45641
+ this.format = creditCard.maskFormat;
45668
45642
 
45669
45643
  this.maxLength = creditCard.formatLength;
45670
45644
  this.minLength = creditCard.formatMinLength;
@@ -46138,7 +46112,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$2 {
46138
46112
  }
46139
46113
  };
46140
46114
 
46141
- var formkitVersion$7 = '202607022150';
46115
+ var formkitVersion$7 = '202607022008';
46142
46116
 
46143
46117
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
46144
46118
  // See LICENSE in the project root for license information.
@@ -51020,7 +50994,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$2 {
51020
50994
  }
51021
50995
  };
51022
50996
 
51023
- var formkitVersion$1$2 = '202607022150';
50997
+ var formkitVersion$1$2 = '202607022008';
51024
50998
 
51025
50999
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
51026
51000
  // See LICENSE in the project root for license information.
@@ -55348,7 +55322,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$2 {
55348
55322
  }
55349
55323
  };
55350
55324
 
55351
- var formkitVersion$6 = '202607022150';
55325
+ var formkitVersion$6 = '202607022008';
55352
55326
 
55353
55327
  let AuroElement$1$2 = class AuroElement extends i$2 {
55354
55328
  static get properties() {
@@ -59328,7 +59302,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$2 {
59328
59302
  }
59329
59303
  };
59330
59304
 
59331
- var formkitVersion$5 = '202607022150';
59305
+ var formkitVersion$5 = '202607022008';
59332
59306
 
59333
59307
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
59334
59308
  // See LICENSE in the project root for license information.
@@ -61093,7 +61067,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$2 {
61093
61067
  }
61094
61068
  };
61095
61069
 
61096
- var formkitVersion$4 = '202607022150';
61070
+ var formkitVersion$4 = '202607022008';
61097
61071
 
61098
61072
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
61099
61073
  // See LICENSE in the project root for license information.
@@ -66314,7 +66288,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$2 {
66314
66288
  }
66315
66289
  };
66316
66290
 
66317
- var formkitVersion$2 = '202607022150';
66291
+ var formkitVersion$2 = '202607022008';
66318
66292
 
66319
66293
  let AuroElement$2$1 = class AuroElement extends i$2 {
66320
66294
  static get properties() {
@@ -78322,16 +78296,14 @@ class BaseInput extends AuroElement$1$1 {
78322
78296
  this.label = 'Input label is undefined';
78323
78297
  this.layout = 'classic';
78324
78298
  this.locale = 'en-US';
78325
- this._format = undefined;
78326
-
78327
- /** @private */
78328
- this._userSetFormat = false;
78329
78299
  this.max = undefined;
78330
78300
  this.maxLength = undefined;
78331
78301
  this.min = undefined;
78332
78302
  this.minLength = undefined;
78333
78303
  this.noValidate = false;
78334
78304
  this.onDark = false;
78305
+ // Raw values returned from the input mask before model normalization.
78306
+ this._rawMaskValue = undefined;
78335
78307
  this.required = false;
78336
78308
  this.setCustomValidityForType = undefined;
78337
78309
  // Credit Card is intentionally excluded — its mask manages the cursor
@@ -78489,8 +78461,7 @@ class BaseInput extends AuroElement$1$1 {
78489
78461
  */
78490
78462
  format: {
78491
78463
  type: String,
78492
- reflect: true,
78493
- noAccessor: true
78464
+ reflect: true
78494
78465
  },
78495
78466
 
78496
78467
  /**
@@ -78828,34 +78799,6 @@ class BaseInput extends AuroElement$1$1 {
78828
78799
  return this.max && dateFormatter.isValidDate(this.max) ? dateFormatter.stringToDateInstance(this.max) : undefined;
78829
78800
  }
78830
78801
 
78831
- get format() {
78832
- return this._format;
78833
- }
78834
-
78835
- /**
78836
- * Overrides LitElement's generated accessor so we can track whether the
78837
- * consumer explicitly set `format`. Locale-derived updates use
78838
- * `_setFormatFromLocale` instead, which skips this flag.
78839
- */
78840
- set format(value) {
78841
- const oldValue = this._format;
78842
- this._format = value ? value.toLowerCase() : value;
78843
- this._userSetFormat = Boolean(value);
78844
- this.requestUpdate('format', oldValue);
78845
- }
78846
-
78847
- /**
78848
- * Sets format without marking it as user-set. Used by locale auto-derive
78849
- * so that a subsequent locale change can still update the format.
78850
- * @private
78851
- * @param {string} value
78852
- */
78853
- _setFormatFromLocale(value) {
78854
- const oldValue = this._format;
78855
- this._format = value ? value.toLowerCase() : value;
78856
- this.requestUpdate('format', oldValue);
78857
- }
78858
-
78859
78802
  connectedCallback() {
78860
78803
  super.connectedCallback();
78861
78804
 
@@ -78903,6 +78846,15 @@ class BaseInput extends AuroElement$1$1 {
78903
78846
 
78904
78847
  this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
78905
78848
 
78849
+ // Normalize the format token to lowercase so case-mixed values supplied
78850
+ // via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
78851
+ // lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
78852
+ // format silently misses the map and leaves `setCustomValidityForType`
78853
+ // unset.
78854
+ if (this.format) {
78855
+ this.format = this.format.toLowerCase();
78856
+ }
78857
+
78906
78858
  // use validity message override if declared when initializing the component
78907
78859
  if (this.hasAttribute('setCustomValidity')) {
78908
78860
  this.ValidityMessageOverride = this.setCustomValidity;
@@ -79009,10 +78961,12 @@ class BaseInput extends AuroElement$1$1 {
79009
78961
  updated(changedProperties) {
79010
78962
  super.updated(changedProperties);
79011
78963
 
79012
- // When locale changes, auto-derive format unless the consumer explicitly set one.
78964
+ // When locale changes without an explicit format override, derive format from the new locale.
78965
+ // Only runs if the current format is still the previous locale's default (not user-overridden).
79013
78966
  if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
79014
- if (!this._userSetFormat) {
79015
- this._setFormatFromLocale(getDateFormatFromLocale(this.locale));
78967
+ const previousLocaleFormat = getDateFormatFromLocale(changedProperties.get('locale'));
78968
+ if (!this.format || this.format.toLowerCase() === previousLocaleFormat) {
78969
+ this.format = getDateFormatFromLocale(this.locale);
79016
78970
  }
79017
78971
  }
79018
78972
 
@@ -79183,6 +79137,9 @@ class BaseInput extends AuroElement$1$1 {
79183
79137
  this.maskInstance.on('accept', () => {
79184
79138
  if (this._configuringMask) return;
79185
79139
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
79140
+ if (this.type === "date") {
79141
+ this._rawMaskValue = this.maskInstance.value;
79142
+ }
79186
79143
  });
79187
79144
 
79188
79145
  // Mask fires 'complete' on the restore step below for any value that
@@ -79190,6 +79147,9 @@ class BaseInput extends AuroElement$1$1 {
79190
79147
  this.maskInstance.on('complete', () => {
79191
79148
  if (this._configuringMask) return;
79192
79149
  this.value = this.util.toModelValue(this.maskInstance.value, this.format);
79150
+ if (this.type === "date") {
79151
+ this._rawMaskValue = this.maskInstance.value;
79152
+ }
79193
79153
  });
79194
79154
 
79195
79155
  // Write existingValue through the mask (not the input directly) so
@@ -79426,7 +79386,8 @@ class BaseInput extends AuroElement$1$1 {
79426
79386
 
79427
79387
  // Set default date format if type=date and no format is defined
79428
79388
  if (this.type === "date" && !this.format) {
79429
- this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
79389
+ // Use locale to determine default date format
79390
+ this.format = this.util.getDateMaskFromLocale().toLowerCase();
79430
79391
  this.util.updateFormat(this.format);
79431
79392
  }
79432
79393
  }
@@ -79455,7 +79416,7 @@ class BaseInput extends AuroElement$1$1 {
79455
79416
  const creditCard = this.matchInputValueToCreditCard();
79456
79417
  const previousFormat = this.format;
79457
79418
 
79458
- this._setFormatFromLocale(creditCard.maskFormat);
79419
+ this.format = creditCard.maskFormat;
79459
79420
 
79460
79421
  this.maxLength = creditCard.formatLength;
79461
79422
  this.minLength = creditCard.formatMinLength;
@@ -79929,7 +79890,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$2 {
79929
79890
  }
79930
79891
  };
79931
79892
 
79932
- var formkitVersion$1$1 = '202607022150';
79893
+ var formkitVersion$1$1 = '202607022008';
79933
79894
 
79934
79895
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
79935
79896
  // See LICENSE in the project root for license information.
@@ -81055,7 +81016,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$2 {
81055
81016
  }
81056
81017
  };
81057
81018
 
81058
- var formkitVersion$3 = '202607022150';
81019
+ var formkitVersion$3 = '202607022008';
81059
81020
 
81060
81021
  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}`;
81061
81022
 
@@ -85832,9 +85793,6 @@ function navigateArrow(component, direction, options = {}) {
85832
85793
  * @param {HTMLElement | null | undefined} menu - The auro-menu element.
85833
85794
  * @returns {Array<HTMLElement>} Non-disabled options, empty array when none.
85834
85795
  */
85835
- function getEnabledOptions(menu) {
85836
- return (menu?.options || []).filter((option) => !option.disabled);
85837
- }
85838
85796
 
85839
85797
  /**
85840
85798
  * Returns the active (selectable + visible) options for type-ahead navigation.
@@ -85904,8 +85862,10 @@ const selectKeyboardStrategy = {
85904
85862
  End(component, evt, ctx) {
85905
85863
  evt.preventDefault();
85906
85864
  evt.stopPropagation();
85907
- // `pop()` is safe here: getEnabledOptions returns a fresh filtered array.
85908
- const lastOption = getEnabledOptions(component.menu).pop();
85865
+ // `pop()` is safe here: getActiveOptions returns a fresh filtered array.
85866
+ // Uses "active" (not "enabled") so hidden and static rows — which a screen
85867
+ // reader must not announce as focused — are skipped.
85868
+ const lastOption = getActiveOptions(component.menu).pop();
85909
85869
  if (!lastOption) {
85910
85870
  return;
85911
85871
  }
@@ -85936,7 +85896,7 @@ const selectKeyboardStrategy = {
85936
85896
  Home(component, evt, ctx) {
85937
85897
  evt.preventDefault();
85938
85898
  evt.stopPropagation();
85939
- const [firstOption] = getEnabledOptions(component.menu);
85899
+ const [firstOption] = getActiveOptions(component.menu);
85940
85900
  if (!firstOption) {
85941
85901
  return;
85942
85902
  }
@@ -85961,6 +85921,15 @@ const selectKeyboardStrategy = {
85961
85921
  },
85962
85922
 
85963
85923
  default(component, evt, ctx) {
85924
+ // Ignore keys chorded with Ctrl/Meta/Alt so browser/OS shortcuts
85925
+ // (Cmd+C, Ctrl+V, Alt+X, Cmd+Space, …) don't leak into typeahead
85926
+ // or toggle the bib. Native <select> ignores modified keys.
85927
+ // ArrowUp/ArrowDown handle modifier+arrow explicitly above; this
85928
+ // guard only affects the default (printable/Space) branch.
85929
+ if (evt.ctrlKey || evt.metaKey || evt.altKey) {
85930
+ return;
85931
+ }
85932
+
85964
85933
  // Space resolves to either typeahead-buffer extension or bib toggle
85965
85934
  // depending on whether a type-ahead buffer is active. Mirrors native
85966
85935
  // <select> and the WAI-ARIA APG Listbox guidance: mid-typeahead space
@@ -89891,7 +89860,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
89891
89860
  }
89892
89861
  };
89893
89862
 
89894
- var formkitVersion$1 = '202607022150';
89863
+ var formkitVersion$1 = '202607022008';
89895
89864
 
89896
89865
  class AuroElement extends i$2 {
89897
89866
  static get properties() {
@@ -91930,7 +91899,7 @@ class AuroHelpText extends i$2 {
91930
91899
  }
91931
91900
  }
91932
91901
 
91933
- var formkitVersion = '202607022150';
91902
+ var formkitVersion = '202607022008';
91934
91903
 
91935
91904
  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}`;
91936
91905
 
@@ -92494,8 +92463,11 @@ class AuroSelect extends AuroElement$1 {
92494
92463
  } else if (this.multiSelect && Array.isArray(this.optionSelected) && this.optionSelected.length > 0) {
92495
92464
  this.menu.updateActiveOption(this.optionSelected[0]);
92496
92465
  } else {
92497
- // If no activeOption has yet to be set, then make the first enabled option active by default
92498
- const [firstActive] = getEnabledOptions(this.menu);
92466
+ // If no activeOption has yet to be set, make the first active option
92467
+ // (non-disabled, non-hidden, non-static) active by default. "Active" —
92468
+ // not just "enabled" — so hidden rows and static placeholders never
92469
+ // land in aria-activedescendant on open.
92470
+ const [firstActive] = getActiveOptions(this.menu);
92499
92471
  this.menu.updateActiveOption(firstActive);
92500
92472
  }
92501
92473
  }
@@ -92741,6 +92713,12 @@ class AuroSelect extends AuroElement$1 {
92741
92713
 
92742
92714
  /**
92743
92715
  * Binds all behavior needed to the menu after rendering.
92716
+ *
92717
+ * The `<auro-menu>` reference is captured once and not re-targeted on
92718
+ * `slotchange`. Runtime option mutations are covered via
92719
+ * `auroMenu-optionsChange`, so swap options inside the menu freely; do not
92720
+ * swap the `<auro-menu>` element itself under a live select — remount the
92721
+ * parent `<auro-select>` instead.
92744
92722
  * @private
92745
92723
  * @returns {void}
92746
92724
  */
@@ -92799,6 +92777,15 @@ class AuroSelect extends AuroElement$1 {
92799
92777
  if (this.menu.optionSelected !== undefined) {
92800
92778
  return;
92801
92779
  }
92780
+ // Skip when the select is already cleared (valueless click with no
92781
+ // prior selection): value/optionSelected are already empty and there
92782
+ // is no stale trigger text to refresh, so updateDisplayedValue would
92783
+ // just churn the DOM and request a needless dropdown re-render.
92784
+ const hasStaleState = this.value !== undefined ||
92785
+ (this.multiSelect ? this.optionSelected?.length > 0 : this.optionSelected !== undefined);
92786
+ if (!hasStaleState) {
92787
+ return;
92788
+ }
92802
92789
  this.value = undefined;
92803
92790
  this.optionSelected = this.multiSelect ? [] : undefined;
92804
92791
  // The trigger label is rendered imperatively into #value, so a property
@@ -92828,10 +92815,15 @@ class AuroSelect extends AuroElement$1 {
92828
92815
  if (this.dropdown.isPopoverVisible) {
92829
92816
  announceToScreenReader(this._getAnnouncementRoot(), message);
92830
92817
  } else {
92831
- // Typeahead-on-closed fires this event before `show()` flips
92832
- // isPopoverVisible. Defer so the announcement targets the bib's
92833
- // live region once the fullscreen <dialog> opens otherwise it
92834
- // lands in the host root, which is inert under the active modal.
92818
+ // Typeahead-on-closed calls updateActiveOption() before show(), so
92819
+ // this handler runs with isPopoverVisible still false. queueMicrotask
92820
+ // is safe because show() showBib() flips isPopoverVisible and
92821
+ // dialog.showModal() both run synchronously in the same task; the
92822
+ // microtask queue only drains once _handleTypeahead unwinds, by
92823
+ // which point _getAnnouncementRoot() resolves to the bib's shadow
92824
+ // root inside the now-open modal. Do NOT switch to auroDropdown-toggled
92825
+ // — it fires before showModal(), landing the announcement in the
92826
+ // host root while the dialog is still not-yet-modal.
92835
92827
  queueMicrotask(() => announceToScreenReader(this._getAnnouncementRoot(), message));
92836
92828
  }
92837
92829
  }
@@ -93225,6 +93217,13 @@ class AuroSelect extends AuroElement$1 {
93225
93217
  }
93226
93218
 
93227
93219
  if (changedProperties.has('value')) {
93220
+ // A value change ends the current interaction — whether it came from a
93221
+ // user commit, programmatic assignment, or reset(). Clear the buffer so
93222
+ // a stale prefix does not concatenate onto the next keystroke while the
93223
+ // host still has focus (the blur listener would otherwise be the only
93224
+ // focus-retained clear point, and hideBib() below does not blur).
93225
+ this._clearTypeaheadBuffer();
93226
+
93228
93227
  this.setMenuValue(this.value);
93229
93228
 
93230
93229
  this._updateNativeSelect();
@@ -93280,6 +93279,9 @@ class AuroSelect extends AuroElement$1 {
93280
93279
  * @returns {void}
93281
93280
  */
93282
93281
  reset() {
93282
+ // Defense-in-depth: updated()'s value-change branch also clears, but
93283
+ // reset-to-same-value (e.g. undefined → undefined) skips that path.
93284
+ this._clearTypeaheadBuffer();
93283
93285
  this.menu.reset();
93284
93286
  this.validation.reset(this);
93285
93287
  }
@@ -93302,8 +93304,13 @@ class AuroSelect extends AuroElement$1 {
93302
93304
  // Hidden native <select> has no `multiple` attribute, so any change it fires
93303
93305
  // is a single raw value — applying it in multiSelect mode would collapse the
93304
93306
  // JSON-array `value` shape. Bfcache/autofill can reach this on a name-bearing
93305
- // form control even with aria-hidden/tabindex=-1.
93306
- if (this.multiSelect) return;
93307
+ // form control even with aria-hidden/tabindex=-1, so revert to the expected
93308
+ // mirror (formattedValue[0]) rather than letting the native select drift and
93309
+ // silently submit the autofilled scalar under `name`.
93310
+ if (this.multiSelect) {
93311
+ this._updateNativeSelect();
93312
+ return;
93313
+ }
93307
93314
 
93308
93315
  const selectedOption = event.target.options[event.target.selectedIndex];
93309
93316
  if (!selectedOption) return;