@aurodesignsystem-dev/auro-formkit 0.0.0-pr1488.2 → 0.0.0-pr1489.1
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/bibtemplate/dist/auro-bibtemplate.d.ts +7 -0
- package/components/bibtemplate/dist/index.js +9 -1
- package/components/bibtemplate/dist/registered.js +9 -1
- 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/demo/pages.json +1 -1
- package/components/checkbox/demo/why-checkbox.html +57 -0
- package/components/checkbox/demo/why-checkbox.md +86 -0
- package/components/checkbox/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.min.js +234 -16
- package/components/combobox/demo/getting-started.min.js +234 -16
- package/components/combobox/demo/index.min.js +234 -16
- package/components/combobox/demo/pages.json +1 -1
- package/components/combobox/demo/why-combobox.html +57 -0
- package/components/combobox/demo/why-combobox.md +113 -0
- package/components/combobox/dist/index.js +234 -16
- package/components/combobox/dist/registered.js +234 -16
- package/components/counter/demo/customize.min.js +233 -15
- package/components/counter/demo/index.min.js +233 -15
- package/components/counter/demo/keyboard-behavior.md +1 -0
- package/components/counter/demo/pages.json +1 -1
- package/components/counter/demo/why-counter.html +57 -0
- package/components/counter/demo/why-counter.md +108 -0
- package/components/counter/dist/index.js +22 -241
- package/components/counter/dist/registered.js +10 -2
- package/components/datepicker/demo/accessibility.md +51 -3
- package/components/datepicker/demo/api.md +11 -2
- package/components/datepicker/demo/customize.html +2 -0
- package/components/datepicker/demo/customize.js +19 -0
- package/components/datepicker/demo/customize.md +72 -8
- package/components/datepicker/demo/customize.min.js +26029 -0
- package/components/datepicker/demo/design.md +3 -1
- package/components/datepicker/demo/index.js +5 -1
- package/components/datepicker/demo/index.md +83 -2
- package/components/datepicker/demo/index.min.js +1564 -96
- package/components/datepicker/demo/keyboard-behavior.md +201 -2
- package/components/datepicker/demo/pages.json +1 -1
- package/components/datepicker/demo/voiceover.md +19 -12
- package/components/datepicker/demo/why-datepicker.html +57 -0
- package/components/datepicker/demo/why-datepicker.md +133 -0
- package/components/datepicker/dist/index.js +1489 -97
- package/components/datepicker/dist/registered.js +1489 -97
- package/components/datepicker/dist/src/auro-calendar-cell.d.ts +66 -1
- package/components/datepicker/dist/src/auro-calendar-month.d.ts +28 -0
- package/components/datepicker/dist/src/auro-calendar.d.ts +100 -0
- package/components/datepicker/dist/src/auro-datepicker.d.ts +88 -0
- package/components/datepicker/dist/src/datepickerKeyboardStrategy.d.ts +5 -3
- package/components/dropdown/demo/accessibility.md +11 -0
- package/components/dropdown/demo/api.md +1 -0
- package/components/dropdown/demo/customize.md +3 -0
- package/components/dropdown/demo/customize.min.js +223 -13
- package/components/dropdown/demo/getting-started.min.js +223 -13
- package/components/dropdown/demo/index.min.js +223 -13
- package/components/dropdown/demo/keyboard-behavior.md +1 -0
- package/components/dropdown/demo/pages.json +1 -1
- package/components/dropdown/demo/why-dropdown.html +57 -0
- package/components/dropdown/demo/why-dropdown.md +97 -0
- package/components/dropdown/dist/auro-dropdown.d.ts +33 -1
- package/components/dropdown/dist/index.js +223 -13
- package/components/dropdown/dist/registered.js +223 -13
- package/components/form/demo/customize.min.js +2461 -415
- package/components/form/demo/getting-started.min.js +2461 -415
- package/components/form/demo/index.min.js +2461 -415
- package/components/form/demo/pages.json +1 -1
- package/components/form/demo/registerDemoDeps.min.js +2457 -411
- package/components/form/demo/why-form.html +57 -0
- package/components/form/demo/why-form.md +101 -0
- 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/demo/pages.json +1 -1
- package/components/input/demo/why-input.html +57 -0
- package/components/input/demo/why-input.md +121 -0
- package/components/input/dist/index.js +1 -1
- package/components/input/dist/registered.js +1 -1
- package/components/menu/demo/pages.json +1 -1
- package/components/menu/demo/why-menu.html +57 -0
- package/components/menu/demo/why-menu.md +104 -0
- package/components/radio/demo/customize.min.js +2186 -0
- package/components/radio/demo/demo-support.min.js +55807 -0
- package/components/radio/demo/getting-started.js +1 -1
- package/components/radio/demo/getting-started.md +1 -1
- package/components/radio/demo/getting-started.min.js +2205 -0
- package/components/radio/demo/index.min.js +1 -1
- package/components/radio/demo/pages.json +1 -1
- package/components/radio/demo/why-radio.html +57 -0
- package/components/radio/demo/why-radio.md +92 -0
- package/components/radio/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.min.js +233 -15
- package/components/select/demo/getting-started.min.js +233 -15
- package/components/select/demo/index.min.js +233 -15
- package/components/select/demo/keyboard-behavior.md +1 -0
- package/components/select/demo/pages.json +1 -1
- package/components/select/demo/why-select.html +57 -0
- package/components/select/demo/why-select.md +128 -0
- package/components/select/dist/index.js +233 -15
- package/components/select/dist/registered.js +233 -15
- package/custom-elements.json +2183 -1466
- package/package.json +2 -2
|
@@ -4580,7 +4580,7 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
|
|
|
4580
4580
|
});
|
|
4581
4581
|
}
|
|
4582
4582
|
|
|
4583
|
-
var styleCss$2$1 = css`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
4583
|
+
var styleCss$2$1 = css`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
4584
4584
|
|
|
4585
4585
|
var colorCss$2$1 = css`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
4586
4586
|
|
|
@@ -5211,7 +5211,7 @@ let AuroHelpText$2 = class AuroHelpText extends LitElement {
|
|
|
5211
5211
|
}
|
|
5212
5212
|
};
|
|
5213
5213
|
|
|
5214
|
-
var formkitVersion$2 = '
|
|
5214
|
+
var formkitVersion$2 = '202606011911';
|
|
5215
5215
|
|
|
5216
5216
|
let AuroElement$2 = class AuroElement extends LitElement {
|
|
5217
5217
|
static get properties() {
|
|
@@ -5391,6 +5391,7 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5391
5391
|
_intializeDefaults() {
|
|
5392
5392
|
this.appearance = 'default';
|
|
5393
5393
|
this.chevron = false;
|
|
5394
|
+
this.desktopModal = false;
|
|
5394
5395
|
this.disabled = false;
|
|
5395
5396
|
this.disableKeyboardHandling = false;
|
|
5396
5397
|
this.error = false;
|
|
@@ -5571,6 +5572,14 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5571
5572
|
reflect: true
|
|
5572
5573
|
},
|
|
5573
5574
|
|
|
5575
|
+
/**
|
|
5576
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
5577
|
+
*/
|
|
5578
|
+
desktopModal: {
|
|
5579
|
+
type: Boolean,
|
|
5580
|
+
reflect: true
|
|
5581
|
+
},
|
|
5582
|
+
|
|
5574
5583
|
/**
|
|
5575
5584
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
5576
5585
|
*/
|
|
@@ -5858,6 +5867,15 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5858
5867
|
|
|
5859
5868
|
disconnectedCallback() {
|
|
5860
5869
|
super.disconnectedCallback();
|
|
5870
|
+
this._clearPageInert();
|
|
5871
|
+
if (this._bibTabHandler) {
|
|
5872
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
5873
|
+
this._bibTabHandler = undefined;
|
|
5874
|
+
}
|
|
5875
|
+
if (this.focusTrap) {
|
|
5876
|
+
this.focusTrap.disconnect();
|
|
5877
|
+
this.focusTrap = undefined;
|
|
5878
|
+
}
|
|
5861
5879
|
if (this.floater) {
|
|
5862
5880
|
this.floater.hideBib('disconnect');
|
|
5863
5881
|
this.floater.disconnect();
|
|
@@ -5885,19 +5903,45 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5885
5903
|
if (this.isPopoverVisible) {
|
|
5886
5904
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
5887
5905
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
5888
|
-
|
|
5889
|
-
this.
|
|
5906
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
5907
|
+
this.updateFocusTrap();
|
|
5908
|
+
|
|
5909
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
5910
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
5911
|
+
this._setPageInert();
|
|
5912
|
+
}
|
|
5890
5913
|
} else {
|
|
5891
5914
|
this.bibElement.value.close();
|
|
5915
|
+
this._clearPageInert();
|
|
5892
5916
|
}
|
|
5893
5917
|
}
|
|
5894
5918
|
|
|
5895
5919
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
5896
5920
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
5897
5921
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
5898
|
-
const useModal = this.isBibFullscreen;
|
|
5899
5922
|
this.bibElement.value.close();
|
|
5900
|
-
this.bibElement.value.open(
|
|
5923
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
5924
|
+
|
|
5925
|
+
// Re-initialize focus management for the new strategy
|
|
5926
|
+
this.updateFocusTrap();
|
|
5927
|
+
|
|
5928
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
5929
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
5930
|
+
this._setPageInert();
|
|
5931
|
+
} else {
|
|
5932
|
+
this._clearPageInert();
|
|
5933
|
+
}
|
|
5934
|
+
}
|
|
5935
|
+
|
|
5936
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
5937
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
5938
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
5939
|
+
this.updateFocusTrap();
|
|
5940
|
+
if (this.desktopModal) {
|
|
5941
|
+
this._setPageInert();
|
|
5942
|
+
} else {
|
|
5943
|
+
this._clearPageInert();
|
|
5944
|
+
}
|
|
5901
5945
|
}
|
|
5902
5946
|
}
|
|
5903
5947
|
|
|
@@ -5907,8 +5951,14 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
5907
5951
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
5908
5952
|
*/
|
|
5909
5953
|
handleDropdownToggle(event) {
|
|
5910
|
-
this.updateFocusTrap();
|
|
5911
5954
|
this.isPopoverVisible = event.detail.expanded;
|
|
5955
|
+
|
|
5956
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
5957
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
5958
|
+
if (!this.isPopoverVisible) {
|
|
5959
|
+
this.updateFocusTrap();
|
|
5960
|
+
}
|
|
5961
|
+
|
|
5912
5962
|
const eventType = event.detail.eventType || "unknown";
|
|
5913
5963
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
5914
5964
|
this.trigger.focus();
|
|
@@ -6007,19 +6057,178 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
6007
6057
|
* @private
|
|
6008
6058
|
*/
|
|
6009
6059
|
updateFocusTrap() {
|
|
6060
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
6061
|
+
// to prevent duplicate listeners on repeated calls.
|
|
6062
|
+
if (this._bibTabHandler) {
|
|
6063
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
6064
|
+
this._bibTabHandler = undefined;
|
|
6065
|
+
}
|
|
6066
|
+
|
|
6067
|
+
if (this.focusTrap) {
|
|
6068
|
+
this.focusTrap.disconnect();
|
|
6069
|
+
this.focusTrap = undefined;
|
|
6070
|
+
}
|
|
6071
|
+
|
|
6010
6072
|
if (this.isPopoverVisible) {
|
|
6011
6073
|
if (!this.isBibFullscreen) {
|
|
6012
|
-
|
|
6013
|
-
|
|
6014
|
-
|
|
6074
|
+
if (this.desktopModal) {
|
|
6075
|
+
// Desktop modal: trap focus only within the bib content.
|
|
6076
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
6077
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
6078
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
6079
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
6080
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
6081
|
+
// within the bib's focusable elements.
|
|
6082
|
+
this._bibTabHandler = (event) => {
|
|
6083
|
+
if (event.key !== 'Tab') {
|
|
6084
|
+
return;
|
|
6085
|
+
}
|
|
6086
|
+
|
|
6087
|
+
// Collect focusable elements from the bib content.
|
|
6088
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
6089
|
+
|
|
6090
|
+
// Fallback: try from slotted content directly
|
|
6091
|
+
if (!focusables.length) {
|
|
6092
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
6093
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
6094
|
+
|
|
6095
|
+
for (const node of assignedNodes) {
|
|
6096
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
6097
|
+
focusables.push(...getFocusableElements(node));
|
|
6098
|
+
}
|
|
6099
|
+
}
|
|
6100
|
+
}
|
|
6101
|
+
|
|
6102
|
+
if (!focusables.length) {
|
|
6103
|
+
return;
|
|
6104
|
+
}
|
|
6105
|
+
|
|
6106
|
+
event.preventDefault();
|
|
6107
|
+
|
|
6108
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
6109
|
+
|
|
6110
|
+
// Walk the active element chain through shadow roots
|
|
6111
|
+
const actives = this._getActiveElements();
|
|
6112
|
+
|
|
6113
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
6114
|
+
|
|
6115
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
6116
|
+
// Focus is not on a known element — move to first/last
|
|
6117
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
6118
|
+
}
|
|
6119
|
+
|
|
6120
|
+
// Try each element in order, skipping any that can't receive focus
|
|
6121
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
6122
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
6123
|
+
let nextIdx = idx + direction;
|
|
6124
|
+
|
|
6125
|
+
// Wrap around
|
|
6126
|
+
if (nextIdx < 0) {
|
|
6127
|
+
nextIdx = focusables.length - 1;
|
|
6128
|
+
} else if (nextIdx >= focusables.length) {
|
|
6129
|
+
nextIdx = 0;
|
|
6130
|
+
}
|
|
6131
|
+
|
|
6132
|
+
focusables[nextIdx].focus();
|
|
6133
|
+
|
|
6134
|
+
// Verify focus actually moved to the target
|
|
6135
|
+
const newActives = this._getActiveElements();
|
|
6136
|
+
|
|
6137
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
6138
|
+
return;
|
|
6139
|
+
}
|
|
6140
|
+
|
|
6141
|
+
// Focus didn't stick — skip this element and try the next
|
|
6142
|
+
idx = nextIdx;
|
|
6143
|
+
}
|
|
6144
|
+
};
|
|
6145
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
6146
|
+
|
|
6147
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
6148
|
+
requestAnimationFrame(() => {
|
|
6149
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
6150
|
+
if (focusables.length) {
|
|
6151
|
+
focusables[0].focus();
|
|
6152
|
+
}
|
|
6153
|
+
});
|
|
6154
|
+
} else {
|
|
6155
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
6156
|
+
this.focusTrap = new FocusTrap(this.bibContent);
|
|
6157
|
+
this.focusTrap.focusFirstElement();
|
|
6158
|
+
}
|
|
6015
6159
|
}
|
|
6016
6160
|
// Fullscreen: showModal() provides native focus trapping
|
|
6161
|
+
}
|
|
6162
|
+
}
|
|
6163
|
+
|
|
6164
|
+
/**
|
|
6165
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
6166
|
+
* @private
|
|
6167
|
+
* @returns {Array<HTMLElement>}
|
|
6168
|
+
*/
|
|
6169
|
+
_getActiveElements() {
|
|
6170
|
+
let { activeElement } = document;
|
|
6171
|
+
const actives = [activeElement];
|
|
6172
|
+
|
|
6173
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
6174
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
6175
|
+
actives.push(activeElement);
|
|
6176
|
+
}
|
|
6177
|
+
|
|
6178
|
+
return actives;
|
|
6179
|
+
}
|
|
6180
|
+
|
|
6181
|
+
/**
|
|
6182
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
6183
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
6184
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
6185
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
6186
|
+
* to ensure all page content outside the host subtree is inert.
|
|
6187
|
+
* @private
|
|
6188
|
+
*/
|
|
6189
|
+
_setPageInert() {
|
|
6190
|
+
if (this._inertSiblings) {
|
|
6017
6191
|
return;
|
|
6018
6192
|
}
|
|
6019
6193
|
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6194
|
+
this._inertSiblings = [];
|
|
6195
|
+
|
|
6196
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
6197
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
6198
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
6199
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
6200
|
+
let host = this;
|
|
6201
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
6202
|
+
host = host.getRootNode().host;
|
|
6203
|
+
}
|
|
6204
|
+
|
|
6205
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
6206
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
6207
|
+
let current = host;
|
|
6208
|
+
while (current.parentElement) {
|
|
6209
|
+
const parent = current.parentElement;
|
|
6210
|
+
for (const sibling of parent.children) {
|
|
6211
|
+
if (sibling !== current) {
|
|
6212
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
6213
|
+
sibling.inert = true;
|
|
6214
|
+
}
|
|
6215
|
+
}
|
|
6216
|
+
current = parent;
|
|
6217
|
+
}
|
|
6218
|
+
}
|
|
6219
|
+
|
|
6220
|
+
/**
|
|
6221
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
6222
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
6223
|
+
* not inadvertently re-enabled.
|
|
6224
|
+
* @private
|
|
6225
|
+
*/
|
|
6226
|
+
_clearPageInert() {
|
|
6227
|
+
if (this._inertSiblings) {
|
|
6228
|
+
for (const entry of this._inertSiblings) {
|
|
6229
|
+
entry.element.inert = entry.wasInert;
|
|
6230
|
+
}
|
|
6231
|
+
this._inertSiblings = undefined;
|
|
6023
6232
|
}
|
|
6024
6233
|
}
|
|
6025
6234
|
|
|
@@ -6258,6 +6467,7 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
6258
6467
|
shape="${this.shape}"
|
|
6259
6468
|
?data-show="${this.isPopoverVisible}"
|
|
6260
6469
|
?isfullscreen="${this.isBibFullscreen}"
|
|
6470
|
+
?desktopmodal="${this.desktopModal}"
|
|
6261
6471
|
.dialogLabel="${this.bibDialogLabel}"
|
|
6262
6472
|
${ref(this.bibElement)}
|
|
6263
6473
|
>
|
|
@@ -12956,7 +13166,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
|
|
|
12956
13166
|
}
|
|
12957
13167
|
};
|
|
12958
13168
|
|
|
12959
|
-
var formkitVersion$1 = '
|
|
13169
|
+
var formkitVersion$1 = '202606011911';
|
|
12960
13170
|
|
|
12961
13171
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
12962
13172
|
// See LICENSE in the project root for license information.
|
|
@@ -13910,6 +14120,14 @@ class AuroBibtemplate extends LitElement {
|
|
|
13910
14120
|
large: {
|
|
13911
14121
|
type: Boolean,
|
|
13912
14122
|
reflect: true
|
|
14123
|
+
},
|
|
14124
|
+
|
|
14125
|
+
/**
|
|
14126
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
14127
|
+
*/
|
|
14128
|
+
showFooter: {
|
|
14129
|
+
type: Boolean,
|
|
14130
|
+
reflect: true
|
|
13913
14131
|
}
|
|
13914
14132
|
};
|
|
13915
14133
|
}
|
|
@@ -14012,7 +14230,7 @@ class AuroBibtemplate extends LitElement {
|
|
|
14012
14230
|
<slot></slot>
|
|
14013
14231
|
</div>
|
|
14014
14232
|
|
|
14015
|
-
${this.isFullscreen ? html`
|
|
14233
|
+
${this.isFullscreen || this.showFooter ? html`
|
|
14016
14234
|
<div id="footerContainer">
|
|
14017
14235
|
<slot name="footer"></slot>
|
|
14018
14236
|
</div>` : null}
|
|
@@ -14021,7 +14239,7 @@ class AuroBibtemplate extends LitElement {
|
|
|
14021
14239
|
}
|
|
14022
14240
|
}
|
|
14023
14241
|
|
|
14024
|
-
var formkitVersion = '
|
|
14242
|
+
var formkitVersion = '202606011911';
|
|
14025
14243
|
|
|
14026
14244
|
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}`;
|
|
14027
14245
|
|