@aurodesignsystem-dev/auro-formkit 0.0.0-pr1554.12 → 0.0.0-pr1554.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/checkbox/demo/customize.min.js +1 -1
- package/components/checkbox/demo/getting-started.min.js +1 -1
- package/components/checkbox/demo/index.min.js +1 -1
- package/components/checkbox/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.min.js +32 -39
- package/components/combobox/demo/getting-started.min.js +32 -39
- package/components/combobox/demo/index.min.js +32 -39
- package/components/combobox/dist/index.js +32 -39
- package/components/combobox/dist/registered.js +32 -39
- package/components/counter/demo/customize.min.js +20 -14
- package/components/counter/demo/index.min.js +20 -14
- package/components/counter/dist/index.js +20 -14
- package/components/counter/dist/registered.js +20 -14
- package/components/datepicker/demo/customize.min.js +21 -15
- package/components/datepicker/demo/index.min.js +21 -15
- package/components/datepicker/dist/index.js +21 -15
- package/components/datepicker/dist/registered.js +21 -15
- package/components/dropdown/demo/customize.min.js +19 -13
- package/components/dropdown/demo/getting-started.min.js +19 -13
- package/components/dropdown/demo/index.min.js +19 -13
- package/components/dropdown/dist/auro-dropdown.d.ts +8 -0
- package/components/dropdown/dist/index.js +19 -13
- package/components/dropdown/dist/registered.js +19 -13
- package/components/form/demo/customize.min.js +96 -85
- package/components/form/demo/getting-started.min.js +96 -85
- package/components/form/demo/index.min.js +96 -85
- package/components/form/demo/registerDemoDeps.min.js +96 -85
- package/components/input/demo/customize.min.js +1 -1
- package/components/input/demo/getting-started.min.js +1 -1
- package/components/input/demo/index.min.js +1 -1
- package/components/input/dist/index.js +1 -1
- package/components/input/dist/registered.js +1 -1
- package/components/radio/demo/customize.min.js +1 -1
- package/components/radio/demo/getting-started.min.js +1 -1
- package/components/radio/demo/index.min.js +1 -1
- package/components/radio/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.min.js +20 -14
- package/components/select/demo/getting-started.min.js +20 -14
- package/components/select/demo/index.min.js +20 -14
- package/components/select/dist/index.js +20 -14
- package/components/select/dist/registered.js +20 -14
- package/custom-elements.json +10 -0
- 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 = '
|
|
4907
|
+
var formkitVersion$2 = '202607160755';
|
|
4908
4908
|
|
|
4909
4909
|
let AuroElement$2 = class AuroElement extends LitElement {
|
|
4910
4910
|
static get properties() {
|
|
@@ -5044,6 +5044,15 @@ 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
|
+
|
|
5047
5056
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
5048
5057
|
|
|
5049
5058
|
// Layout Config
|
|
@@ -5217,25 +5226,22 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5217
5226
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
5218
5227
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
5219
5228
|
if (slot) {
|
|
5220
|
-
const assigned = slot.assignedElements(
|
|
5229
|
+
const assigned = slot.assignedElements();
|
|
5221
5230
|
for (const el of assigned) {
|
|
5222
5231
|
if (el.hasAttribute('disabled')) {
|
|
5223
5232
|
continue;
|
|
5224
5233
|
}
|
|
5225
|
-
|
|
5226
|
-
//
|
|
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).
|
|
5227
5238
|
const descendants = getFocusableElements(el);
|
|
5228
5239
|
if (descendants.length > 0) {
|
|
5229
5240
|
descendants[0].focus();
|
|
5230
5241
|
return;
|
|
5231
5242
|
}
|
|
5232
|
-
|
|
5233
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
5234
|
-
const prevActive = document.activeElement;
|
|
5235
5243
|
el.focus();
|
|
5236
|
-
|
|
5237
|
-
return;
|
|
5238
|
-
}
|
|
5244
|
+
return;
|
|
5239
5245
|
}
|
|
5240
5246
|
}
|
|
5241
5247
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -5695,7 +5701,7 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5695
5701
|
}
|
|
5696
5702
|
|
|
5697
5703
|
const eventType = event.detail.eventType || "unknown";
|
|
5698
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
5704
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
5699
5705
|
this.focusTrigger();
|
|
5700
5706
|
}
|
|
5701
5707
|
|
|
@@ -5703,9 +5709,9 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5703
5709
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
5704
5710
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
5705
5711
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
5706
|
-
// When
|
|
5712
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
5707
5713
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
5708
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
5714
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
5709
5715
|
// wait til the bib gets fully closed and rendered
|
|
5710
5716
|
setTimeout(() => {
|
|
5711
5717
|
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
@@ -18571,7 +18577,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
|
|
|
18571
18577
|
}
|
|
18572
18578
|
};
|
|
18573
18579
|
|
|
18574
|
-
var formkitVersion$1 = '
|
|
18580
|
+
var formkitVersion$1 = '202607160755';
|
|
18575
18581
|
|
|
18576
18582
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
18577
18583
|
// See LICENSE in the project root for license information.
|
|
@@ -19719,7 +19725,7 @@ class AuroBibtemplate extends LitElement {
|
|
|
19719
19725
|
}
|
|
19720
19726
|
}
|
|
19721
19727
|
|
|
19722
|
-
var formkitVersion = '
|
|
19728
|
+
var formkitVersion = '202607160755';
|
|
19723
19729
|
|
|
19724
19730
|
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}`;
|
|
19725
19731
|
|
|
@@ -20776,30 +20782,13 @@ class AuroCombobox extends AuroElement {
|
|
|
20776
20782
|
// human-readable label (e.g. "Seattle, WA"). For consumers where
|
|
20777
20783
|
// value ≠ label, this produces a brief flash of the raw value until
|
|
20778
20784
|
// the option elements load and updateTriggerTextDisplay re-runs with
|
|
20779
|
-
// the correct label.
|
|
20780
|
-
|
|
20781
|
-
//
|
|
20782
|
-
|
|
20783
|
-
|
|
20784
|
-
|
|
20785
|
-
|
|
20786
|
-
return node.textContent.trim().length > 0;
|
|
20787
|
-
}
|
|
20788
|
-
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
20789
|
-
return node.textContent.trim().length > 0 ||
|
|
20790
|
-
node.children.length > 0 ||
|
|
20791
|
-
node.shadowRoot !== null;
|
|
20792
|
-
}
|
|
20793
|
-
return false;
|
|
20794
|
-
}));
|
|
20795
|
-
|
|
20796
|
-
if (!hasSlottedDisplayValue) {
|
|
20797
|
-
const syntheticDV = document.createElement('span');
|
|
20798
|
-
syntheticDV.setAttribute('slot', 'displayValue');
|
|
20799
|
-
syntheticDV.textContent = this.value;
|
|
20800
|
-
this.input.appendChild(syntheticDV);
|
|
20801
|
-
}
|
|
20802
|
-
|
|
20785
|
+
// the correct label. This is intentionally preferred over a blank
|
|
20786
|
+
// state — the displayValueInTrigger.remove() cleanup above ensures
|
|
20787
|
+
// this placeholder is replaced once the real option is available.
|
|
20788
|
+
const syntheticDV = document.createElement('span');
|
|
20789
|
+
syntheticDV.setAttribute('slot', 'displayValue');
|
|
20790
|
+
syntheticDV.textContent = this.value;
|
|
20791
|
+
this.input.appendChild(syntheticDV);
|
|
20803
20792
|
if (typeof this.input.checkDisplayValueSlotChange === 'function') {
|
|
20804
20793
|
this.input.checkDisplayValueSlotChange();
|
|
20805
20794
|
this.input.requestUpdate();
|
|
@@ -20975,6 +20964,10 @@ class AuroCombobox extends AuroElement {
|
|
|
20975
20964
|
// from combobox's light DOM and won't be detected by dropdown's contains() check.
|
|
20976
20965
|
this.dropdown.noHideOnThisFocusLoss = true;
|
|
20977
20966
|
|
|
20967
|
+
// Suppress the dropdown's generic focus restoration on close — the combobox
|
|
20968
|
+
// manages its own focus via setClearBtnFocus / setInputFocus / keyboard strategy.
|
|
20969
|
+
this.dropdown.noFocusRestoreOnClose = true;
|
|
20970
|
+
|
|
20978
20971
|
// Listen for the ID to be added to the dropdown so we can capture it and use it for accessibility.
|
|
20979
20972
|
this.dropdown.addEventListener('auroDropdown-idAdded', (event) => {
|
|
20980
20973
|
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 = '
|
|
1117
|
+
var formkitVersion$1 = '202607160755';
|
|
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 = '
|
|
5283
|
+
var formkitVersion = '202607160755';
|
|
5284
5284
|
|
|
5285
5285
|
let AuroElement$1 = class AuroElement extends i$2 {
|
|
5286
5286
|
static get properties() {
|
|
@@ -5420,6 +5420,15 @@ 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
|
+
|
|
5423
5432
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
5424
5433
|
|
|
5425
5434
|
// Layout Config
|
|
@@ -5593,25 +5602,22 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
5593
5602
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
5594
5603
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
5595
5604
|
if (slot) {
|
|
5596
|
-
const assigned = slot.assignedElements(
|
|
5605
|
+
const assigned = slot.assignedElements();
|
|
5597
5606
|
for (const el of assigned) {
|
|
5598
5607
|
if (el.hasAttribute('disabled')) {
|
|
5599
5608
|
continue;
|
|
5600
5609
|
}
|
|
5601
|
-
|
|
5602
|
-
//
|
|
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).
|
|
5603
5614
|
const descendants = getFocusableElements(el);
|
|
5604
5615
|
if (descendants.length > 0) {
|
|
5605
5616
|
descendants[0].focus();
|
|
5606
5617
|
return;
|
|
5607
5618
|
}
|
|
5608
|
-
|
|
5609
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
5610
|
-
const prevActive = document.activeElement;
|
|
5611
5619
|
el.focus();
|
|
5612
|
-
|
|
5613
|
-
return;
|
|
5614
|
-
}
|
|
5620
|
+
return;
|
|
5615
5621
|
}
|
|
5616
5622
|
}
|
|
5617
5623
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -6071,7 +6077,7 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6071
6077
|
}
|
|
6072
6078
|
|
|
6073
6079
|
const eventType = event.detail.eventType || "unknown";
|
|
6074
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
6080
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
6075
6081
|
this.focusTrigger();
|
|
6076
6082
|
}
|
|
6077
6083
|
|
|
@@ -6079,9 +6085,9 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6079
6085
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
6080
6086
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
6081
6087
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
6082
|
-
// When
|
|
6088
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
6083
6089
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
6084
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
6090
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
6085
6091
|
// wait til the bib gets fully closed and rendered
|
|
6086
6092
|
setTimeout(() => {
|
|
6087
6093
|
// 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 = '
|
|
1117
|
+
var formkitVersion$1 = '202607160755';
|
|
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 = '
|
|
5283
|
+
var formkitVersion = '202607160755';
|
|
5284
5284
|
|
|
5285
5285
|
let AuroElement$1 = class AuroElement extends i$2 {
|
|
5286
5286
|
static get properties() {
|
|
@@ -5420,6 +5420,15 @@ 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
|
+
|
|
5423
5432
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
5424
5433
|
|
|
5425
5434
|
// Layout Config
|
|
@@ -5593,25 +5602,22 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
5593
5602
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
5594
5603
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
5595
5604
|
if (slot) {
|
|
5596
|
-
const assigned = slot.assignedElements(
|
|
5605
|
+
const assigned = slot.assignedElements();
|
|
5597
5606
|
for (const el of assigned) {
|
|
5598
5607
|
if (el.hasAttribute('disabled')) {
|
|
5599
5608
|
continue;
|
|
5600
5609
|
}
|
|
5601
|
-
|
|
5602
|
-
//
|
|
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).
|
|
5603
5614
|
const descendants = getFocusableElements(el);
|
|
5604
5615
|
if (descendants.length > 0) {
|
|
5605
5616
|
descendants[0].focus();
|
|
5606
5617
|
return;
|
|
5607
5618
|
}
|
|
5608
|
-
|
|
5609
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
5610
|
-
const prevActive = document.activeElement;
|
|
5611
5619
|
el.focus();
|
|
5612
|
-
|
|
5613
|
-
return;
|
|
5614
|
-
}
|
|
5620
|
+
return;
|
|
5615
5621
|
}
|
|
5616
5622
|
}
|
|
5617
5623
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -6071,7 +6077,7 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6071
6077
|
}
|
|
6072
6078
|
|
|
6073
6079
|
const eventType = event.detail.eventType || "unknown";
|
|
6074
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
6080
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
6075
6081
|
this.focusTrigger();
|
|
6076
6082
|
}
|
|
6077
6083
|
|
|
@@ -6079,9 +6085,9 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6079
6085
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
6080
6086
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
6081
6087
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
6082
|
-
// When
|
|
6088
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
6083
6089
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
6084
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
6090
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
6085
6091
|
// wait til the bib gets fully closed and rendered
|
|
6086
6092
|
setTimeout(() => {
|
|
6087
6093
|
// 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 = '
|
|
1067
|
+
var formkitVersion$1 = '202607160755';
|
|
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 = '
|
|
5215
|
+
var formkitVersion = '202607160755';
|
|
5216
5216
|
|
|
5217
5217
|
let AuroElement$1 = class AuroElement extends LitElement {
|
|
5218
5218
|
static get properties() {
|
|
@@ -5352,6 +5352,15 @@ 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
|
+
|
|
5355
5364
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
5356
5365
|
|
|
5357
5366
|
// Layout Config
|
|
@@ -5525,25 +5534,22 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
5525
5534
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
5526
5535
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
5527
5536
|
if (slot) {
|
|
5528
|
-
const assigned = slot.assignedElements(
|
|
5537
|
+
const assigned = slot.assignedElements();
|
|
5529
5538
|
for (const el of assigned) {
|
|
5530
5539
|
if (el.hasAttribute('disabled')) {
|
|
5531
5540
|
continue;
|
|
5532
5541
|
}
|
|
5533
|
-
|
|
5534
|
-
//
|
|
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).
|
|
5535
5546
|
const descendants = getFocusableElements(el);
|
|
5536
5547
|
if (descendants.length > 0) {
|
|
5537
5548
|
descendants[0].focus();
|
|
5538
5549
|
return;
|
|
5539
5550
|
}
|
|
5540
|
-
|
|
5541
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
5542
|
-
const prevActive = document.activeElement;
|
|
5543
5551
|
el.focus();
|
|
5544
|
-
|
|
5545
|
-
return;
|
|
5546
|
-
}
|
|
5552
|
+
return;
|
|
5547
5553
|
}
|
|
5548
5554
|
}
|
|
5549
5555
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -6003,7 +6009,7 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6003
6009
|
}
|
|
6004
6010
|
|
|
6005
6011
|
const eventType = event.detail.eventType || "unknown";
|
|
6006
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
6012
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
6007
6013
|
this.focusTrigger();
|
|
6008
6014
|
}
|
|
6009
6015
|
|
|
@@ -6011,9 +6017,9 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6011
6017
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
6012
6018
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
6013
6019
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
6014
|
-
// When
|
|
6020
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
6015
6021
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
6016
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
6022
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
6017
6023
|
// wait til the bib gets fully closed and rendered
|
|
6018
6024
|
setTimeout(() => {
|
|
6019
6025
|
// 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 = '
|
|
1067
|
+
var formkitVersion$1 = '202607160755';
|
|
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 = '
|
|
5215
|
+
var formkitVersion = '202607160755';
|
|
5216
5216
|
|
|
5217
5217
|
let AuroElement$1 = class AuroElement extends LitElement {
|
|
5218
5218
|
static get properties() {
|
|
@@ -5352,6 +5352,15 @@ 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
|
+
|
|
5355
5364
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
5356
5365
|
|
|
5357
5366
|
// Layout Config
|
|
@@ -5525,25 +5534,22 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
5525
5534
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
5526
5535
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
5527
5536
|
if (slot) {
|
|
5528
|
-
const assigned = slot.assignedElements(
|
|
5537
|
+
const assigned = slot.assignedElements();
|
|
5529
5538
|
for (const el of assigned) {
|
|
5530
5539
|
if (el.hasAttribute('disabled')) {
|
|
5531
5540
|
continue;
|
|
5532
5541
|
}
|
|
5533
|
-
|
|
5534
|
-
//
|
|
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).
|
|
5535
5546
|
const descendants = getFocusableElements(el);
|
|
5536
5547
|
if (descendants.length > 0) {
|
|
5537
5548
|
descendants[0].focus();
|
|
5538
5549
|
return;
|
|
5539
5550
|
}
|
|
5540
|
-
|
|
5541
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
5542
|
-
const prevActive = document.activeElement;
|
|
5543
5551
|
el.focus();
|
|
5544
|
-
|
|
5545
|
-
return;
|
|
5546
|
-
}
|
|
5552
|
+
return;
|
|
5547
5553
|
}
|
|
5548
5554
|
}
|
|
5549
5555
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -6003,7 +6009,7 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6003
6009
|
}
|
|
6004
6010
|
|
|
6005
6011
|
const eventType = event.detail.eventType || "unknown";
|
|
6006
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
6012
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
6007
6013
|
this.focusTrigger();
|
|
6008
6014
|
}
|
|
6009
6015
|
|
|
@@ -6011,9 +6017,9 @@ class AuroDropdown extends AuroElement$1 {
|
|
|
6011
6017
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
6012
6018
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
6013
6019
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
6014
|
-
// When
|
|
6020
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
6015
6021
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
6016
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
6022
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
6017
6023
|
// wait til the bib gets fully closed and rendered
|
|
6018
6024
|
setTimeout(() => {
|
|
6019
6025
|
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
@@ -13717,7 +13717,7 @@ class AuroBibtemplate extends i$1 {
|
|
|
13717
13717
|
}
|
|
13718
13718
|
}
|
|
13719
13719
|
|
|
13720
|
-
var formkitVersion$2 = '
|
|
13720
|
+
var formkitVersion$2 = '202607160755';
|
|
13721
13721
|
|
|
13722
13722
|
let l$1 = 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 = 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$4 = 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$3=i$3`: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}
|
|
13723
13723
|
`,u$6=i$3`.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}}
|
|
@@ -19469,7 +19469,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
|
|
|
19469
19469
|
}
|
|
19470
19470
|
};
|
|
19471
19471
|
|
|
19472
|
-
var formkitVersion$1 = '
|
|
19472
|
+
var formkitVersion$1 = '202607160755';
|
|
19473
19473
|
|
|
19474
19474
|
let AuroElement$2 = class AuroElement extends i$1 {
|
|
19475
19475
|
static get properties() {
|
|
@@ -19609,6 +19609,15 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
19609
19609
|
this.matchWidth = false;
|
|
19610
19610
|
this.noHideOnThisFocusLoss = false;
|
|
19611
19611
|
|
|
19612
|
+
/**
|
|
19613
|
+
* When true, the dropdown skips its generic focus restoration on close.
|
|
19614
|
+
* Set by consumers (e.g. combobox) that manage their own focus routing
|
|
19615
|
+
* via setClearBtnFocus / setInputFocus / keyboard strategy.
|
|
19616
|
+
* Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
|
|
19617
|
+
* @private
|
|
19618
|
+
*/
|
|
19619
|
+
this.noFocusRestoreOnClose = false;
|
|
19620
|
+
|
|
19612
19621
|
this.errorMessage = undefined; // TODO - check with Doug if there is still more to do here
|
|
19613
19622
|
|
|
19614
19623
|
// Layout Config
|
|
@@ -19782,25 +19791,22 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
19782
19791
|
// getFocusableElements can't find it. Query assigned nodes directly.
|
|
19783
19792
|
const slot = this.trigger.querySelector('slot[name="trigger"]');
|
|
19784
19793
|
if (slot) {
|
|
19785
|
-
const assigned = slot.assignedElements(
|
|
19794
|
+
const assigned = slot.assignedElements();
|
|
19786
19795
|
for (const el of assigned) {
|
|
19787
19796
|
if (el.hasAttribute('disabled')) {
|
|
19788
19797
|
continue;
|
|
19789
19798
|
}
|
|
19790
|
-
|
|
19791
|
-
//
|
|
19799
|
+
// Try finding a focusable descendant first (handles non-focusable
|
|
19800
|
+
// wrappers like <div> containing a <button>). If none found, try
|
|
19801
|
+
// focusing the element directly (works for custom elements like
|
|
19802
|
+
// auro-input that have delegatesFocus or a custom focus() method).
|
|
19792
19803
|
const descendants = getFocusableElements(el);
|
|
19793
19804
|
if (descendants.length > 0) {
|
|
19794
19805
|
descendants[0].focus();
|
|
19795
19806
|
return;
|
|
19796
19807
|
}
|
|
19797
|
-
|
|
19798
|
-
// Otherwise, try focusing the assigned element itself. Only stop if focus moved.
|
|
19799
|
-
const prevActive = document.activeElement;
|
|
19800
19808
|
el.focus();
|
|
19801
|
-
|
|
19802
|
-
return;
|
|
19803
|
-
}
|
|
19809
|
+
return;
|
|
19804
19810
|
}
|
|
19805
19811
|
}
|
|
19806
19812
|
// Fallback: try DOM children (non-slotted content)
|
|
@@ -20260,7 +20266,7 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
20260
20266
|
}
|
|
20261
20267
|
|
|
20262
20268
|
const eventType = event.detail.eventType || "unknown";
|
|
20263
|
-
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.
|
|
20269
|
+
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown" && !this.noFocusRestoreOnClose) {
|
|
20264
20270
|
this.focusTrigger();
|
|
20265
20271
|
}
|
|
20266
20272
|
|
|
@@ -20268,9 +20274,9 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
20268
20274
|
// On Tab-driven close (eventType "focusloss"), let focus advance naturally
|
|
20269
20275
|
// — restoring to the trigger would trap the user on this dropdown, forcing
|
|
20270
20276
|
// an extra Tab to move on. Escape and outside-click still restore.
|
|
20271
|
-
// When
|
|
20277
|
+
// When noFocusRestoreOnClose is true, the consumer (e.g. combobox) manages
|
|
20272
20278
|
// its own focus restoration — skip the generic trigger focus to avoid races.
|
|
20273
|
-
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.
|
|
20279
|
+
if (!this.isPopoverVisible && eventType !== "focusloss" && !this.noFocusRestoreOnClose) {
|
|
20274
20280
|
// wait til the bib gets fully closed and rendered
|
|
20275
20281
|
setTimeout(() => {
|
|
20276
20282
|
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
@@ -33143,7 +33149,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
|
|
|
33143
33149
|
}
|
|
33144
33150
|
};
|
|
33145
33151
|
|
|
33146
|
-
var formkitVersion = '
|
|
33152
|
+
var formkitVersion = '202607160755';
|
|
33147
33153
|
|
|
33148
33154
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
33149
33155
|
// See LICENSE in the project root for license information.
|