@aurodesignsystem-dev/auro-formkit 0.0.0-pr1554.27 → 0.0.0-pr1554.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 (45) 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 +23 -43
  7. package/components/combobox/demo/getting-started.min.js +23 -43
  8. package/components/combobox/demo/index.min.js +23 -43
  9. package/components/combobox/dist/index.js +23 -43
  10. package/components/combobox/dist/registered.js +23 -43
  11. package/components/counter/demo/customize.min.js +14 -24
  12. package/components/counter/demo/index.min.js +14 -24
  13. package/components/counter/dist/index.js +14 -24
  14. package/components/counter/dist/registered.js +14 -24
  15. package/components/datepicker/demo/customize.min.js +21 -39
  16. package/components/datepicker/demo/index.min.js +21 -39
  17. package/components/datepicker/dist/index.js +21 -39
  18. package/components/datepicker/dist/registered.js +21 -39
  19. package/components/dropdown/demo/customize.min.js +13 -23
  20. package/components/dropdown/demo/getting-started.min.js +13 -23
  21. package/components/dropdown/demo/index.min.js +13 -23
  22. package/components/dropdown/dist/auro-dropdown.d.ts +0 -8
  23. package/components/dropdown/dist/index.js +13 -23
  24. package/components/dropdown/dist/registered.js +13 -23
  25. package/components/form/demo/customize.min.js +81 -147
  26. package/components/form/demo/getting-started.min.js +81 -147
  27. package/components/form/demo/index.min.js +81 -147
  28. package/components/form/demo/registerDemoDeps.min.js +81 -147
  29. package/components/input/demo/customize.min.js +7 -15
  30. package/components/input/demo/getting-started.min.js +7 -15
  31. package/components/input/demo/index.min.js +7 -15
  32. package/components/input/dist/index.js +7 -15
  33. package/components/input/dist/registered.js +7 -15
  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 +14 -24
  40. package/components/select/demo/getting-started.min.js +14 -24
  41. package/components/select/demo/index.min.js +14 -24
  42. package/components/select/dist/index.js +14 -24
  43. package/components/select/dist/registered.js +14 -24
  44. package/custom-elements.json +0 -10
  45. package/package.json +1 -1
@@ -4904,7 +4904,7 @@ let AuroHelpText$2 = class AuroHelpText extends LitElement {
4904
4904
  }
4905
4905
  };
4906
4906
 
4907
- var formkitVersion$2 = '202607161850';
4907
+ var formkitVersion$2 = '202607160557';
4908
4908
 
4909
4909
  let AuroElement$2 = class AuroElement extends LitElement {
4910
4910
  static get properties() {
@@ -5044,15 +5044,6 @@ class AuroDropdown extends AuroElement$2 {
5044
5044
  this.matchWidth = false;
5045
5045
  this.noHideOnThisFocusLoss = false;
5046
5046
 
5047
- /**
5048
- * When true, the dropdown skips its generic focus restoration on close.
5049
- * Set by consumers (e.g. combobox) that manage their own focus routing
5050
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5051
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5052
- * @private
5053
- */
5054
- this.noFocusRestoreOnClose = false;
5055
-
5056
5047
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5057
5048
 
5058
5049
  // Layout Config
@@ -5231,19 +5222,18 @@ class AuroDropdown extends AuroElement$2 {
5231
5222
  if (el.hasAttribute('disabled')) {
5232
5223
  continue;
5233
5224
  }
5234
- // Try finding a focusable descendant first (handles non-focusable
5235
- // wrappers like <div> containing a <button>). If none found, try
5236
- // focusing the element directly (works for custom elements like
5237
- // auro-input that have delegatesFocus or a custom focus() method).
5238
- const descendants = getFocusableElements(el);
5239
- if (descendants.length > 0) {
5240
- descendants[0].focus();
5225
+ // Try focusing the assigned element directly (works for focusable
5226
+ // components like auro-input that have delegatesFocus or a custom
5227
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5228
+ // containing a <button>), find the first focusable descendant.
5229
+ const focusables = getFocusableElements(el);
5230
+ if (focusables.length > 0) {
5231
+ focusables[0].focus();
5241
5232
  return;
5242
5233
  }
5234
+ // Element itself might be focusable (custom element with focus())
5243
5235
  el.focus();
5244
- if (document.activeElement === el) {
5245
- return;
5246
- }
5236
+ return;
5247
5237
  }
5248
5238
  }
5249
5239
  // Fallback: try DOM children (non-slotted content)
@@ -5703,7 +5693,7 @@ class AuroDropdown extends AuroElement$2 {
5703
5693
  }
5704
5694
 
5705
5695
  const eventType = event.detail.eventType || "unknown";
5706
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
5696
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
5707
5697
  this.focusTrigger();
5708
5698
  }
5709
5699
 
@@ -5711,9 +5701,9 @@ class AuroDropdown extends AuroElement$2 {
5711
5701
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
5712
5702
  // — restoring to the trigger would trap the user on this dropdown, forcing
5713
5703
  // an extra Tab to move on. Escape and outside-click still restore.
5714
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
5704
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
5715
5705
  // its own focus restoration — skip the generic trigger focus to avoid races.
5716
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
5706
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
5717
5707
  // wait til the bib gets fully closed and rendered
5718
5708
  setTimeout(() => {
5719
5709
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
@@ -18579,7 +18569,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
18579
18569
  }
18580
18570
  };
18581
18571
 
18582
- var formkitVersion$1 = '202607161850';
18572
+ var formkitVersion$1 = '202607160557';
18583
18573
 
18584
18574
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
18585
18575
  // See LICENSE in the project root for license information.
@@ -18872,16 +18862,12 @@ class AuroInput extends BaseInput {
18872
18862
  // before firstUpdated (e.g. from auro-combobox during mount).
18873
18863
  // Check for any element (including custom elements like <auro-icon>
18874
18864
  // that render via shadow DOM with no text content).
18875
- const lightDomNodes = Array.from(this.querySelectorAll('[slot="displayValue"]:not(slot)'));
18876
- const hasContent = lightDomNodes.some((node) => (
18877
- node.textContent.trim().length > 0 ||
18878
- node.children.length > 0 ||
18879
- node.shadowRoot !== null
18865
+ const lightDomContent = this.querySelector('[slot="displayValue"]:not(slot)');
18866
+ this.hasDisplayValueContent = Boolean(lightDomContent && (
18867
+ lightDomContent.textContent.trim().length > 0 ||
18868
+ lightDomContent.children.length > 0 ||
18869
+ lightDomContent.shadowRoot !== null
18880
18870
  ));
18881
- if (this.hasDisplayValueContent !== hasContent) {
18882
- this.hasDisplayValueContent = hasContent;
18883
- this.requestUpdate();
18884
- }
18885
18871
  return;
18886
18872
  }
18887
18873
  const nodes = slot.assignedNodes({ flatten: true });
@@ -18894,7 +18880,7 @@ class AuroInput extends BaseInput {
18894
18880
  // being visible on preset/deeplink load.
18895
18881
  // Custom elements (e.g. <auro-icon>) that render via shadow DOM are
18896
18882
  // treated as content even when they have no text or light-DOM children.
18897
- const hasContent = nodes.some((node) => {
18883
+ this.hasDisplayValueContent = nodes.some((node) => {
18898
18884
  if (node.nodeType === Node.TEXT_NODE) {
18899
18885
  return node.textContent.trim().length > 0;
18900
18886
  }
@@ -18905,10 +18891,6 @@ class AuroInput extends BaseInput {
18905
18891
  }
18906
18892
  return false;
18907
18893
  });
18908
- if (this.hasDisplayValueContent !== hasContent) {
18909
- this.hasDisplayValueContent = hasContent;
18910
- this.requestUpdate();
18911
- }
18912
18894
  }
18913
18895
 
18914
18896
  firstUpdated() {
@@ -19735,7 +19717,7 @@ class AuroBibtemplate extends LitElement {
19735
19717
  }
19736
19718
  }
19737
19719
 
19738
- var formkitVersion = '202607161850';
19720
+ var formkitVersion = '202607160557';
19739
19721
 
19740
19722
  var styleCss$1 = css`.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}`;
19741
19723
 
@@ -20780,6 +20762,7 @@ class AuroCombobox extends AuroElement {
20780
20762
  // hidden when input.value is set in the same tick as the append.
20781
20763
  if (typeof this.input.checkDisplayValueSlotChange === 'function') {
20782
20764
  this.input.checkDisplayValueSlotChange();
20765
+ this.input.requestUpdate();
20783
20766
  }
20784
20767
  } else if (this.value) {
20785
20768
  // No optionSelected yet (e.g. setMenuValue was called but the menu's
@@ -20800,6 +20783,7 @@ class AuroCombobox extends AuroElement {
20800
20783
  this.input.appendChild(syntheticDV);
20801
20784
  if (typeof this.input.checkDisplayValueSlotChange === 'function') {
20802
20785
  this.input.checkDisplayValueSlotChange();
20786
+ this.input.requestUpdate();
20803
20787
  }
20804
20788
  }
20805
20789
 
@@ -20972,10 +20956,6 @@ class AuroCombobox extends AuroElement {
20972
20956
  // from combobox's light DOM and won't be detected by dropdown's contains() check.
20973
20957
  this.dropdown.noHideOnThisFocusLoss = true;
20974
20958
 
20975
- // Suppress the dropdown's generic focus restoration on close — the combobox
20976
- // manages its own focus via setClearBtnFocus / setInputFocus / keyboard strategy.
20977
- this.dropdown.noFocusRestoreOnClose = true;
20978
-
20979
20959
  // Listen for the ID to be added to the dropdown so we can capture it and use it for accessibility.
20980
20960
  this.dropdown.addEventListener('auroDropdown-idAdded', (event) => {
20981
20961
  this.dropdownId = event.detail.id;
@@ -4904,7 +4904,7 @@ let AuroHelpText$2 = class AuroHelpText extends LitElement {
4904
4904
  }
4905
4905
  };
4906
4906
 
4907
- var formkitVersion$2 = '202607161850';
4907
+ var formkitVersion$2 = '202607160557';
4908
4908
 
4909
4909
  let AuroElement$2 = class AuroElement extends LitElement {
4910
4910
  static get properties() {
@@ -5044,15 +5044,6 @@ class AuroDropdown extends AuroElement$2 {
5044
5044
  this.matchWidth = false;
5045
5045
  this.noHideOnThisFocusLoss = false;
5046
5046
 
5047
- /**
5048
- * When true, the dropdown skips its generic focus restoration on close.
5049
- * Set by consumers (e.g. combobox) that manage their own focus routing
5050
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5051
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5052
- * @private
5053
- */
5054
- this.noFocusRestoreOnClose = false;
5055
-
5056
5047
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5057
5048
 
5058
5049
  // Layout Config
@@ -5231,19 +5222,18 @@ class AuroDropdown extends AuroElement$2 {
5231
5222
  if (el.hasAttribute('disabled')) {
5232
5223
  continue;
5233
5224
  }
5234
- // Try finding a focusable descendant first (handles non-focusable
5235
- // wrappers like <div> containing a <button>). If none found, try
5236
- // focusing the element directly (works for custom elements like
5237
- // auro-input that have delegatesFocus or a custom focus() method).
5238
- const descendants = getFocusableElements(el);
5239
- if (descendants.length > 0) {
5240
- descendants[0].focus();
5225
+ // Try focusing the assigned element directly (works for focusable
5226
+ // components like auro-input that have delegatesFocus or a custom
5227
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5228
+ // containing a <button>), find the first focusable descendant.
5229
+ const focusables = getFocusableElements(el);
5230
+ if (focusables.length > 0) {
5231
+ focusables[0].focus();
5241
5232
  return;
5242
5233
  }
5234
+ // Element itself might be focusable (custom element with focus())
5243
5235
  el.focus();
5244
- if (document.activeElement === el) {
5245
- return;
5246
- }
5236
+ return;
5247
5237
  }
5248
5238
  }
5249
5239
  // Fallback: try DOM children (non-slotted content)
@@ -5703,7 +5693,7 @@ class AuroDropdown extends AuroElement$2 {
5703
5693
  }
5704
5694
 
5705
5695
  const eventType = event.detail.eventType || "unknown";
5706
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
5696
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
5707
5697
  this.focusTrigger();
5708
5698
  }
5709
5699
 
@@ -5711,9 +5701,9 @@ class AuroDropdown extends AuroElement$2 {
5711
5701
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
5712
5702
  // — restoring to the trigger would trap the user on this dropdown, forcing
5713
5703
  // an extra Tab to move on. Escape and outside-click still restore.
5714
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
5704
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
5715
5705
  // its own focus restoration — skip the generic trigger focus to avoid races.
5716
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
5706
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
5717
5707
  // wait til the bib gets fully closed and rendered
5718
5708
  setTimeout(() => {
5719
5709
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
@@ -18579,7 +18569,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
18579
18569
  }
18580
18570
  };
18581
18571
 
18582
- var formkitVersion$1 = '202607161850';
18572
+ var formkitVersion$1 = '202607160557';
18583
18573
 
18584
18574
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
18585
18575
  // See LICENSE in the project root for license information.
@@ -18872,16 +18862,12 @@ class AuroInput extends BaseInput {
18872
18862
  // before firstUpdated (e.g. from auro-combobox during mount).
18873
18863
  // Check for any element (including custom elements like <auro-icon>
18874
18864
  // that render via shadow DOM with no text content).
18875
- const lightDomNodes = Array.from(this.querySelectorAll('[slot="displayValue"]:not(slot)'));
18876
- const hasContent = lightDomNodes.some((node) => (
18877
- node.textContent.trim().length > 0 ||
18878
- node.children.length > 0 ||
18879
- node.shadowRoot !== null
18865
+ const lightDomContent = this.querySelector('[slot="displayValue"]:not(slot)');
18866
+ this.hasDisplayValueContent = Boolean(lightDomContent && (
18867
+ lightDomContent.textContent.trim().length > 0 ||
18868
+ lightDomContent.children.length > 0 ||
18869
+ lightDomContent.shadowRoot !== null
18880
18870
  ));
18881
- if (this.hasDisplayValueContent !== hasContent) {
18882
- this.hasDisplayValueContent = hasContent;
18883
- this.requestUpdate();
18884
- }
18885
18871
  return;
18886
18872
  }
18887
18873
  const nodes = slot.assignedNodes({ flatten: true });
@@ -18894,7 +18880,7 @@ class AuroInput extends BaseInput {
18894
18880
  // being visible on preset/deeplink load.
18895
18881
  // Custom elements (e.g. <auro-icon>) that render via shadow DOM are
18896
18882
  // treated as content even when they have no text or light-DOM children.
18897
- const hasContent = nodes.some((node) => {
18883
+ this.hasDisplayValueContent = nodes.some((node) => {
18898
18884
  if (node.nodeType === Node.TEXT_NODE) {
18899
18885
  return node.textContent.trim().length > 0;
18900
18886
  }
@@ -18905,10 +18891,6 @@ class AuroInput extends BaseInput {
18905
18891
  }
18906
18892
  return false;
18907
18893
  });
18908
- if (this.hasDisplayValueContent !== hasContent) {
18909
- this.hasDisplayValueContent = hasContent;
18910
- this.requestUpdate();
18911
- }
18912
18894
  }
18913
18895
 
18914
18896
  firstUpdated() {
@@ -19735,7 +19717,7 @@ class AuroBibtemplate extends LitElement {
19735
19717
  }
19736
19718
  }
19737
19719
 
19738
- var formkitVersion = '202607161850';
19720
+ var formkitVersion = '202607160557';
19739
19721
 
19740
19722
  var styleCss$1 = css`.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}`;
19741
19723
 
@@ -20780,6 +20762,7 @@ class AuroCombobox extends AuroElement {
20780
20762
  // hidden when input.value is set in the same tick as the append.
20781
20763
  if (typeof this.input.checkDisplayValueSlotChange === 'function') {
20782
20764
  this.input.checkDisplayValueSlotChange();
20765
+ this.input.requestUpdate();
20783
20766
  }
20784
20767
  } else if (this.value) {
20785
20768
  // No optionSelected yet (e.g. setMenuValue was called but the menu's
@@ -20800,6 +20783,7 @@ class AuroCombobox extends AuroElement {
20800
20783
  this.input.appendChild(syntheticDV);
20801
20784
  if (typeof this.input.checkDisplayValueSlotChange === 'function') {
20802
20785
  this.input.checkDisplayValueSlotChange();
20786
+ this.input.requestUpdate();
20803
20787
  }
20804
20788
  }
20805
20789
 
@@ -20972,10 +20956,6 @@ class AuroCombobox extends AuroElement {
20972
20956
  // from combobox's light DOM and won't be detected by dropdown's contains() check.
20973
20957
  this.dropdown.noHideOnThisFocusLoss = true;
20974
20958
 
20975
- // Suppress the dropdown's generic focus restoration on close — the combobox
20976
- // manages its own focus via setClearBtnFocus / setInputFocus / keyboard strategy.
20977
- this.dropdown.noFocusRestoreOnClose = true;
20978
-
20979
20959
  // Listen for the ID to be added to the dropdown so we can capture it and use it for accessibility.
20980
20960
  this.dropdown.addEventListener('auroDropdown-idAdded', (event) => {
20981
20961
  this.dropdownId = event.detail.id;
@@ -1114,7 +1114,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
1114
1114
  }
1115
1115
  };
1116
1116
 
1117
- var formkitVersion$1 = '202607161850';
1117
+ var formkitVersion$1 = '202607160557';
1118
1118
 
1119
1119
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1120
1120
  // See LICENSE in the project root for license information.
@@ -5280,7 +5280,7 @@ class AuroHelpText extends i$2 {
5280
5280
  }
5281
5281
  }
5282
5282
 
5283
- var formkitVersion = '202607161850';
5283
+ var formkitVersion = '202607160557';
5284
5284
 
5285
5285
  let AuroElement$1 = class AuroElement extends i$2 {
5286
5286
  static get properties() {
@@ -5420,15 +5420,6 @@ class AuroDropdown extends AuroElement$1 {
5420
5420
  this.matchWidth = false;
5421
5421
  this.noHideOnThisFocusLoss = false;
5422
5422
 
5423
- /**
5424
- * When true, the dropdown skips its generic focus restoration on close.
5425
- * Set by consumers (e.g. combobox) that manage their own focus routing
5426
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5427
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5428
- * @private
5429
- */
5430
- this.noFocusRestoreOnClose = false;
5431
-
5432
5423
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5433
5424
 
5434
5425
  // Layout Config
@@ -5607,19 +5598,18 @@ class AuroDropdown extends AuroElement$1 {
5607
5598
  if (el.hasAttribute('disabled')) {
5608
5599
  continue;
5609
5600
  }
5610
- // Try finding a focusable descendant first (handles non-focusable
5611
- // wrappers like <div> containing a <button>). If none found, try
5612
- // focusing the element directly (works for custom elements like
5613
- // auro-input that have delegatesFocus or a custom focus() method).
5614
- const descendants = getFocusableElements(el);
5615
- if (descendants.length > 0) {
5616
- descendants[0].focus();
5601
+ // Try focusing the assigned element directly (works for focusable
5602
+ // components like auro-input that have delegatesFocus or a custom
5603
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5604
+ // containing a <button>), find the first focusable descendant.
5605
+ const focusables = getFocusableElements(el);
5606
+ if (focusables.length > 0) {
5607
+ focusables[0].focus();
5617
5608
  return;
5618
5609
  }
5610
+ // Element itself might be focusable (custom element with focus())
5619
5611
  el.focus();
5620
- if (document.activeElement === el) {
5621
- return;
5622
- }
5612
+ return;
5623
5613
  }
5624
5614
  }
5625
5615
  // Fallback: try DOM children (non-slotted content)
@@ -6079,7 +6069,7 @@ class AuroDropdown extends AuroElement$1 {
6079
6069
  }
6080
6070
 
6081
6071
  const eventType = event.detail.eventType || "unknown";
6082
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
6072
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
6083
6073
  this.focusTrigger();
6084
6074
  }
6085
6075
 
@@ -6087,9 +6077,9 @@ class AuroDropdown extends AuroElement$1 {
6087
6077
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
6088
6078
  // — restoring to the trigger would trap the user on this dropdown, forcing
6089
6079
  // an extra Tab to move on. Escape and outside-click still restore.
6090
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
6080
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
6091
6081
  // its own focus restoration — skip the generic trigger focus to avoid races.
6092
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
6082
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
6093
6083
  // wait til the bib gets fully closed and rendered
6094
6084
  setTimeout(() => {
6095
6085
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
@@ -1114,7 +1114,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
1114
1114
  }
1115
1115
  };
1116
1116
 
1117
- var formkitVersion$1 = '202607161850';
1117
+ var formkitVersion$1 = '202607160557';
1118
1118
 
1119
1119
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1120
1120
  // See LICENSE in the project root for license information.
@@ -5280,7 +5280,7 @@ class AuroHelpText extends i$2 {
5280
5280
  }
5281
5281
  }
5282
5282
 
5283
- var formkitVersion = '202607161850';
5283
+ var formkitVersion = '202607160557';
5284
5284
 
5285
5285
  let AuroElement$1 = class AuroElement extends i$2 {
5286
5286
  static get properties() {
@@ -5420,15 +5420,6 @@ class AuroDropdown extends AuroElement$1 {
5420
5420
  this.matchWidth = false;
5421
5421
  this.noHideOnThisFocusLoss = false;
5422
5422
 
5423
- /**
5424
- * When true, the dropdown skips its generic focus restoration on close.
5425
- * Set by consumers (e.g. combobox) that manage their own focus routing
5426
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5427
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5428
- * @private
5429
- */
5430
- this.noFocusRestoreOnClose = false;
5431
-
5432
5423
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5433
5424
 
5434
5425
  // Layout Config
@@ -5607,19 +5598,18 @@ class AuroDropdown extends AuroElement$1 {
5607
5598
  if (el.hasAttribute('disabled')) {
5608
5599
  continue;
5609
5600
  }
5610
- // Try finding a focusable descendant first (handles non-focusable
5611
- // wrappers like <div> containing a <button>). If none found, try
5612
- // focusing the element directly (works for custom elements like
5613
- // auro-input that have delegatesFocus or a custom focus() method).
5614
- const descendants = getFocusableElements(el);
5615
- if (descendants.length > 0) {
5616
- descendants[0].focus();
5601
+ // Try focusing the assigned element directly (works for focusable
5602
+ // components like auro-input that have delegatesFocus or a custom
5603
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5604
+ // containing a <button>), find the first focusable descendant.
5605
+ const focusables = getFocusableElements(el);
5606
+ if (focusables.length > 0) {
5607
+ focusables[0].focus();
5617
5608
  return;
5618
5609
  }
5610
+ // Element itself might be focusable (custom element with focus())
5619
5611
  el.focus();
5620
- if (document.activeElement === el) {
5621
- return;
5622
- }
5612
+ return;
5623
5613
  }
5624
5614
  }
5625
5615
  // Fallback: try DOM children (non-slotted content)
@@ -6079,7 +6069,7 @@ class AuroDropdown extends AuroElement$1 {
6079
6069
  }
6080
6070
 
6081
6071
  const eventType = event.detail.eventType || "unknown";
6082
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
6072
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
6083
6073
  this.focusTrigger();
6084
6074
  }
6085
6075
 
@@ -6087,9 +6077,9 @@ class AuroDropdown extends AuroElement$1 {
6087
6077
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
6088
6078
  // — restoring to the trigger would trap the user on this dropdown, forcing
6089
6079
  // an extra Tab to move on. Escape and outside-click still restore.
6090
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
6080
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
6091
6081
  // its own focus restoration — skip the generic trigger focus to avoid races.
6092
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
6082
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
6093
6083
  // wait til the bib gets fully closed and rendered
6094
6084
  setTimeout(() => {
6095
6085
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
@@ -1064,7 +1064,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1064
1064
  }
1065
1065
  };
1066
1066
 
1067
- var formkitVersion$1 = '202607161850';
1067
+ var formkitVersion$1 = '202607160557';
1068
1068
 
1069
1069
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1070
1070
  // See LICENSE in the project root for license information.
@@ -5212,7 +5212,7 @@ class AuroHelpText extends LitElement {
5212
5212
  }
5213
5213
  }
5214
5214
 
5215
- var formkitVersion = '202607161850';
5215
+ var formkitVersion = '202607160557';
5216
5216
 
5217
5217
  let AuroElement$1 = class AuroElement extends LitElement {
5218
5218
  static get properties() {
@@ -5352,15 +5352,6 @@ class AuroDropdown extends AuroElement$1 {
5352
5352
  this.matchWidth = false;
5353
5353
  this.noHideOnThisFocusLoss = false;
5354
5354
 
5355
- /**
5356
- * When true, the dropdown skips its generic focus restoration on close.
5357
- * Set by consumers (e.g. combobox) that manage their own focus routing
5358
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5359
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5360
- * @private
5361
- */
5362
- this.noFocusRestoreOnClose = false;
5363
-
5364
5355
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5365
5356
 
5366
5357
  // Layout Config
@@ -5539,19 +5530,18 @@ class AuroDropdown extends AuroElement$1 {
5539
5530
  if (el.hasAttribute('disabled')) {
5540
5531
  continue;
5541
5532
  }
5542
- // Try finding a focusable descendant first (handles non-focusable
5543
- // wrappers like <div> containing a <button>). If none found, try
5544
- // focusing the element directly (works for custom elements like
5545
- // auro-input that have delegatesFocus or a custom focus() method).
5546
- const descendants = getFocusableElements(el);
5547
- if (descendants.length > 0) {
5548
- descendants[0].focus();
5533
+ // Try focusing the assigned element directly (works for focusable
5534
+ // components like auro-input that have delegatesFocus or a custom
5535
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5536
+ // containing a <button>), find the first focusable descendant.
5537
+ const focusables = getFocusableElements(el);
5538
+ if (focusables.length > 0) {
5539
+ focusables[0].focus();
5549
5540
  return;
5550
5541
  }
5542
+ // Element itself might be focusable (custom element with focus())
5551
5543
  el.focus();
5552
- if (document.activeElement === el) {
5553
- return;
5554
- }
5544
+ return;
5555
5545
  }
5556
5546
  }
5557
5547
  // Fallback: try DOM children (non-slotted content)
@@ -6011,7 +6001,7 @@ class AuroDropdown extends AuroElement$1 {
6011
6001
  }
6012
6002
 
6013
6003
  const eventType = event.detail.eventType || "unknown";
6014
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
6004
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
6015
6005
  this.focusTrigger();
6016
6006
  }
6017
6007
 
@@ -6019,9 +6009,9 @@ class AuroDropdown extends AuroElement$1 {
6019
6009
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
6020
6010
  // — restoring to the trigger would trap the user on this dropdown, forcing
6021
6011
  // an extra Tab to move on. Escape and outside-click still restore.
6022
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
6012
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
6023
6013
  // its own focus restoration — skip the generic trigger focus to avoid races.
6024
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
6014
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
6025
6015
  // wait til the bib gets fully closed and rendered
6026
6016
  setTimeout(() => {
6027
6017
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
@@ -1064,7 +1064,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1064
1064
  }
1065
1065
  };
1066
1066
 
1067
- var formkitVersion$1 = '202607161850';
1067
+ var formkitVersion$1 = '202607160557';
1068
1068
 
1069
1069
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1070
1070
  // See LICENSE in the project root for license information.
@@ -5212,7 +5212,7 @@ class AuroHelpText extends LitElement {
5212
5212
  }
5213
5213
  }
5214
5214
 
5215
- var formkitVersion = '202607161850';
5215
+ var formkitVersion = '202607160557';
5216
5216
 
5217
5217
  let AuroElement$1 = class AuroElement extends LitElement {
5218
5218
  static get properties() {
@@ -5352,15 +5352,6 @@ class AuroDropdown extends AuroElement$1 {
5352
5352
  this.matchWidth = false;
5353
5353
  this.noHideOnThisFocusLoss = false;
5354
5354
 
5355
- /**
5356
- * When true, the dropdown skips its generic focus restoration on close.
5357
- * Set by consumers (e.g. combobox) that manage their own focus routing
5358
- * via setClearBtnFocus / setInputFocus / keyboard strategy.
5359
- * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5360
- * @private
5361
- */
5362
- this.noFocusRestoreOnClose = false;
5363
-
5364
5355
  this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
5365
5356
 
5366
5357
  // Layout Config
@@ -5539,19 +5530,18 @@ class AuroDropdown extends AuroElement$1 {
5539
5530
  if (el.hasAttribute('disabled')) {
5540
5531
  continue;
5541
5532
  }
5542
- // Try finding a focusable descendant first (handles non-focusable
5543
- // wrappers like <div> containing a <button>). If none found, try
5544
- // focusing the element directly (works for custom elements like
5545
- // auro-input that have delegatesFocus or a custom focus() method).
5546
- const descendants = getFocusableElements(el);
5547
- if (descendants.length > 0) {
5548
- descendants[0].focus();
5533
+ // Try focusing the assigned element directly (works for focusable
5534
+ // components like auro-input that have delegatesFocus or a custom
5535
+ // focus() method). If it's a non-focusable wrapper (e.g. <div>
5536
+ // containing a <button>), find the first focusable descendant.
5537
+ const focusables = getFocusableElements(el);
5538
+ if (focusables.length > 0) {
5539
+ focusables[0].focus();
5549
5540
  return;
5550
5541
  }
5542
+ // Element itself might be focusable (custom element with focus())
5551
5543
  el.focus();
5552
- if (document.activeElement === el) {
5553
- return;
5554
- }
5544
+ return;
5555
5545
  }
5556
5546
  }
5557
5547
  // Fallback: try DOM children (non-slotted content)
@@ -6011,7 +6001,7 @@ class AuroDropdown extends AuroElement$1 {
6011
6001
  }
6012
6002
 
6013
6003
  const eventType = event.detail.eventType || "unknown";
6014
- if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
6004
+ if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
6015
6005
  this.focusTrigger();
6016
6006
  }
6017
6007
 
@@ -6019,9 +6009,9 @@ class AuroDropdown extends AuroElement$1 {
6019
6009
  // On Tab-driven close (eventType "focusloss"), let focus advance naturally
6020
6010
  // — restoring to the trigger would trap the user on this dropdown, forcing
6021
6011
  // an extra Tab to move on. Escape and outside-click still restore.
6022
- // When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
6012
+ // When noHideOnThisFocusLoss is true, the consumer (e.g. combobox) manages
6023
6013
  // its own focus restoration — skip the generic trigger focus to avoid races.
6024
- if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
6014
+ if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noHideOnThisFocusLoss) {
6025
6015
  // wait til the bib gets fully closed and rendered
6026
6016
  setTimeout(() => {
6027
6017
  // Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).