@aurodesignsystem-dev/auro-formkit 0.0.0-pr1474.4 → 0.0.0-pr1475.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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.html +2 -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/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.html +2 -1
- package/components/combobox/demo/customize.md +130 -106
- package/components/combobox/demo/customize.min.js +209 -16
- package/components/combobox/demo/getting-started.min.js +209 -16
- package/components/combobox/demo/index.min.js +209 -16
- package/components/combobox/dist/index.js +209 -16
- package/components/combobox/dist/registered.js +209 -16
- package/components/counter/demo/customize.min.js +208 -15
- package/components/counter/demo/index.min.js +208 -15
- package/components/counter/demo/keyboard-behavior.md +1 -0
- package/components/counter/dist/index.js +10 -2
- package/components/counter/dist/registered.js +10 -2
- package/components/datepicker/demo/accessibility.md +51 -3
- package/components/datepicker/demo/api.md +9 -0
- 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 +25690 -0
- package/components/datepicker/demo/design.md +3 -1
- package/components/datepicker/demo/index.js +2 -1
- package/components/datepicker/demo/index.md +81 -1
- package/components/datepicker/demo/index.min.js +1223 -101
- package/components/datepicker/demo/keyboard-behavior.md +201 -2
- package/components/datepicker/demo/voiceover.md +19 -12
- package/components/datepicker/dist/index.js +1155 -104
- package/components/datepicker/dist/registered.js +1155 -104
- package/components/datepicker/dist/src/auro-calendar-cell.d.ts +59 -0
- package/components/datepicker/dist/src/auro-calendar-month.d.ts +28 -0
- package/components/datepicker/dist/src/auro-calendar.d.ts +84 -0
- package/components/datepicker/dist/src/auro-datepicker.d.ts +80 -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 +198 -13
- package/components/dropdown/demo/getting-started.min.js +198 -13
- package/components/dropdown/demo/index.min.js +198 -13
- package/components/dropdown/demo/keyboard-behavior.md +1 -0
- package/components/dropdown/dist/auro-dropdown.d.ts +30 -1
- package/components/dropdown/dist/index.js +198 -13
- package/components/dropdown/dist/registered.js +198 -13
- package/components/form/demo/customize.html +6 -6
- package/components/form/demo/customize.js +0 -17
- package/components/form/demo/customize.md +51 -125
- package/components/form/demo/customize.min.js +1776 -327
- package/components/form/demo/getting-started.min.js +1776 -291
- package/components/form/demo/index.min.js +1776 -291
- package/components/form/demo/registerDemoDeps.min.js +1769 -139
- package/components/form/dist/auro-form.d.ts +5 -45
- package/components/form/dist/index.js +7 -152
- package/components/form/dist/registered.js +7 -152
- package/components/input/demo/customize.html +2 -1
- 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 +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/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.html +2 -2
- package/components/select/demo/customize.min.js +208 -15
- package/components/select/demo/getting-started.min.js +208 -15
- package/components/select/demo/index.min.js +208 -15
- package/components/select/demo/keyboard-behavior.md +1 -0
- package/components/select/dist/index.js +208 -15
- package/components/select/dist/registered.js +208 -15
- package/custom-elements.json +703 -91
- package/package.json +2 -2
|
@@ -4702,7 +4702,7 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
|
|
|
4702
4702
|
});
|
|
4703
4703
|
}
|
|
4704
4704
|
|
|
4705
|
-
var styleCss$2$1 = i$6`: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}`;
|
|
4705
|
+
var styleCss$2$1 = i$6`: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}`;
|
|
4706
4706
|
|
|
4707
4707
|
var colorCss$2$1 = i$6`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
4708
4708
|
|
|
@@ -5333,7 +5333,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
|
|
|
5333
5333
|
}
|
|
5334
5334
|
};
|
|
5335
5335
|
|
|
5336
|
-
var formkitVersion$1 = '
|
|
5336
|
+
var formkitVersion$1 = '202605182147';
|
|
5337
5337
|
|
|
5338
5338
|
class AuroElement extends i$3 {
|
|
5339
5339
|
static get properties() {
|
|
@@ -5513,6 +5513,7 @@ class AuroDropdown extends AuroElement {
|
|
|
5513
5513
|
_intializeDefaults() {
|
|
5514
5514
|
this.appearance = 'default';
|
|
5515
5515
|
this.chevron = false;
|
|
5516
|
+
this.desktopModal = false;
|
|
5516
5517
|
this.disabled = false;
|
|
5517
5518
|
this.disableKeyboardHandling = false;
|
|
5518
5519
|
this.error = false;
|
|
@@ -5693,6 +5694,14 @@ class AuroDropdown extends AuroElement {
|
|
|
5693
5694
|
reflect: true
|
|
5694
5695
|
},
|
|
5695
5696
|
|
|
5697
|
+
/**
|
|
5698
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
5699
|
+
*/
|
|
5700
|
+
desktopModal: {
|
|
5701
|
+
type: Boolean,
|
|
5702
|
+
reflect: true
|
|
5703
|
+
},
|
|
5704
|
+
|
|
5696
5705
|
/**
|
|
5697
5706
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
5698
5707
|
*/
|
|
@@ -5980,6 +5989,15 @@ class AuroDropdown extends AuroElement {
|
|
|
5980
5989
|
|
|
5981
5990
|
disconnectedCallback() {
|
|
5982
5991
|
super.disconnectedCallback();
|
|
5992
|
+
this._clearPageInert();
|
|
5993
|
+
if (this._bibTabHandler) {
|
|
5994
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
5995
|
+
this._bibTabHandler = undefined;
|
|
5996
|
+
}
|
|
5997
|
+
if (this.focusTrap) {
|
|
5998
|
+
this.focusTrap.disconnect();
|
|
5999
|
+
this.focusTrap = undefined;
|
|
6000
|
+
}
|
|
5983
6001
|
if (this.floater) {
|
|
5984
6002
|
this.floater.hideBib('disconnect');
|
|
5985
6003
|
this.floater.disconnect();
|
|
@@ -6007,19 +6025,34 @@ class AuroDropdown extends AuroElement {
|
|
|
6007
6025
|
if (this.isPopoverVisible) {
|
|
6008
6026
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
6009
6027
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
6010
|
-
|
|
6011
|
-
this.
|
|
6028
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
6029
|
+
this.updateFocusTrap();
|
|
6030
|
+
|
|
6031
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
6032
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
6033
|
+
this._setPageInert();
|
|
6034
|
+
}
|
|
6012
6035
|
} else {
|
|
6013
6036
|
this.bibElement.value.close();
|
|
6037
|
+
this._clearPageInert();
|
|
6014
6038
|
}
|
|
6015
6039
|
}
|
|
6016
6040
|
|
|
6017
6041
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
6018
6042
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
6019
6043
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
6020
|
-
const useModal = this.isBibFullscreen;
|
|
6021
6044
|
this.bibElement.value.close();
|
|
6022
|
-
this.bibElement.value.open(
|
|
6045
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
6046
|
+
|
|
6047
|
+
// Re-initialize focus management for the new strategy
|
|
6048
|
+
this.updateFocusTrap();
|
|
6049
|
+
|
|
6050
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
6051
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
6052
|
+
this._setPageInert();
|
|
6053
|
+
} else {
|
|
6054
|
+
this._clearPageInert();
|
|
6055
|
+
}
|
|
6023
6056
|
}
|
|
6024
6057
|
}
|
|
6025
6058
|
|
|
@@ -6029,8 +6062,14 @@ class AuroDropdown extends AuroElement {
|
|
|
6029
6062
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
6030
6063
|
*/
|
|
6031
6064
|
handleDropdownToggle(event) {
|
|
6032
|
-
this.updateFocusTrap();
|
|
6033
6065
|
this.isPopoverVisible = event.detail.expanded;
|
|
6066
|
+
|
|
6067
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
6068
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
6069
|
+
if (!this.isPopoverVisible) {
|
|
6070
|
+
this.updateFocusTrap();
|
|
6071
|
+
}
|
|
6072
|
+
|
|
6034
6073
|
const eventType = event.detail.eventType || "unknown";
|
|
6035
6074
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
6036
6075
|
this.trigger.focus();
|
|
@@ -6129,19 +6168,164 @@ class AuroDropdown extends AuroElement {
|
|
|
6129
6168
|
* @private
|
|
6130
6169
|
*/
|
|
6131
6170
|
updateFocusTrap() {
|
|
6171
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
6172
|
+
// to prevent duplicate listeners on repeated calls.
|
|
6173
|
+
if (this._bibTabHandler) {
|
|
6174
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
6175
|
+
this._bibTabHandler = undefined;
|
|
6176
|
+
}
|
|
6177
|
+
|
|
6178
|
+
if (this.focusTrap) {
|
|
6179
|
+
this.focusTrap.disconnect();
|
|
6180
|
+
this.focusTrap = undefined;
|
|
6181
|
+
}
|
|
6182
|
+
|
|
6132
6183
|
if (this.isPopoverVisible) {
|
|
6133
6184
|
if (!this.isBibFullscreen) {
|
|
6134
|
-
|
|
6135
|
-
|
|
6136
|
-
|
|
6185
|
+
if (this.desktopModal) {
|
|
6186
|
+
// Desktop modal: trap focus only within the bib content.
|
|
6187
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
6188
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
6189
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
6190
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
6191
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
6192
|
+
// within the bib's focusable elements.
|
|
6193
|
+
this._bibTabHandler = (event) => {
|
|
6194
|
+
if (event.key !== 'Tab') {
|
|
6195
|
+
return;
|
|
6196
|
+
}
|
|
6197
|
+
|
|
6198
|
+
// Collect focusable elements from the bib content.
|
|
6199
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
6200
|
+
|
|
6201
|
+
// Fallback: try from slotted content directly
|
|
6202
|
+
if (!focusables.length) {
|
|
6203
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
6204
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
6205
|
+
|
|
6206
|
+
for (const node of assignedNodes) {
|
|
6207
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
6208
|
+
focusables.push(...getFocusableElements(node));
|
|
6209
|
+
}
|
|
6210
|
+
}
|
|
6211
|
+
}
|
|
6212
|
+
|
|
6213
|
+
if (!focusables.length) {
|
|
6214
|
+
return;
|
|
6215
|
+
}
|
|
6216
|
+
|
|
6217
|
+
event.preventDefault();
|
|
6218
|
+
|
|
6219
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
6220
|
+
|
|
6221
|
+
// Walk the active element chain through shadow roots
|
|
6222
|
+
const actives = this._getActiveElements();
|
|
6223
|
+
|
|
6224
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
6225
|
+
|
|
6226
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
6227
|
+
// Focus is not on a known element — move to first/last
|
|
6228
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
6229
|
+
}
|
|
6230
|
+
|
|
6231
|
+
// Try each element in order, skipping any that can't receive focus
|
|
6232
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
6233
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
6234
|
+
let nextIdx = idx + direction;
|
|
6235
|
+
|
|
6236
|
+
// Wrap around
|
|
6237
|
+
if (nextIdx < 0) {
|
|
6238
|
+
nextIdx = focusables.length - 1;
|
|
6239
|
+
} else if (nextIdx >= focusables.length) {
|
|
6240
|
+
nextIdx = 0;
|
|
6241
|
+
}
|
|
6242
|
+
|
|
6243
|
+
focusables[nextIdx].focus();
|
|
6244
|
+
|
|
6245
|
+
// Verify focus actually moved to the target
|
|
6246
|
+
const newActives = this._getActiveElements();
|
|
6247
|
+
|
|
6248
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
6249
|
+
return;
|
|
6250
|
+
}
|
|
6251
|
+
|
|
6252
|
+
// Focus didn't stick — skip this element and try the next
|
|
6253
|
+
idx = nextIdx;
|
|
6254
|
+
}
|
|
6255
|
+
};
|
|
6256
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
6257
|
+
} else {
|
|
6258
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
6259
|
+
this.focusTrap = new FocusTrap(this.bibContent);
|
|
6260
|
+
this.focusTrap.focusFirstElement();
|
|
6261
|
+
}
|
|
6137
6262
|
}
|
|
6138
6263
|
// Fullscreen: showModal() provides native focus trapping
|
|
6264
|
+
}
|
|
6265
|
+
}
|
|
6266
|
+
|
|
6267
|
+
/**
|
|
6268
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
6269
|
+
* @private
|
|
6270
|
+
* @returns {Array<HTMLElement>}
|
|
6271
|
+
*/
|
|
6272
|
+
_getActiveElements() {
|
|
6273
|
+
let { activeElement } = document;
|
|
6274
|
+
const actives = [activeElement];
|
|
6275
|
+
|
|
6276
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
6277
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
6278
|
+
actives.push(activeElement);
|
|
6279
|
+
}
|
|
6280
|
+
|
|
6281
|
+
return actives;
|
|
6282
|
+
}
|
|
6283
|
+
|
|
6284
|
+
/**
|
|
6285
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
6286
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
6287
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
6288
|
+
* in the light DOM, then sets `inert` on that element's siblings.
|
|
6289
|
+
* @private
|
|
6290
|
+
*/
|
|
6291
|
+
_setPageInert() {
|
|
6292
|
+
if (this._inertSiblings) {
|
|
6139
6293
|
return;
|
|
6140
6294
|
}
|
|
6141
6295
|
|
|
6142
|
-
|
|
6143
|
-
|
|
6144
|
-
|
|
6296
|
+
this._inertSiblings = [];
|
|
6297
|
+
|
|
6298
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
6299
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
6300
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
6301
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
6302
|
+
let host = this;
|
|
6303
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
6304
|
+
host = host.getRootNode().host;
|
|
6305
|
+
}
|
|
6306
|
+
|
|
6307
|
+
const parent = host.parentElement;
|
|
6308
|
+
|
|
6309
|
+
if (parent) {
|
|
6310
|
+
for (const sibling of parent.children) {
|
|
6311
|
+
if (sibling !== host && !sibling.inert) {
|
|
6312
|
+
sibling.inert = true;
|
|
6313
|
+
this._inertSiblings.push(sibling);
|
|
6314
|
+
}
|
|
6315
|
+
}
|
|
6316
|
+
}
|
|
6317
|
+
}
|
|
6318
|
+
|
|
6319
|
+
/**
|
|
6320
|
+
* Restores `inert` state on siblings that were made inert by `_setPageInert`.
|
|
6321
|
+
* @private
|
|
6322
|
+
*/
|
|
6323
|
+
_clearPageInert() {
|
|
6324
|
+
if (this._inertSiblings) {
|
|
6325
|
+
for (const sibling of this._inertSiblings) {
|
|
6326
|
+
sibling.inert = false;
|
|
6327
|
+
}
|
|
6328
|
+
this._inertSiblings = undefined;
|
|
6145
6329
|
}
|
|
6146
6330
|
}
|
|
6147
6331
|
|
|
@@ -6380,6 +6564,7 @@ class AuroDropdown extends AuroElement {
|
|
|
6380
6564
|
shape="${this.shape}"
|
|
6381
6565
|
?data-show="${this.isPopoverVisible}"
|
|
6382
6566
|
?isfullscreen="${this.isBibFullscreen}"
|
|
6567
|
+
?desktopmodal="${this.desktopModal}"
|
|
6383
6568
|
.dialogLabel="${this.bibDialogLabel}"
|
|
6384
6569
|
${n$2(this.bibElement)}
|
|
6385
6570
|
>
|
|
@@ -6747,6 +6932,14 @@ class AuroBibtemplate extends i$3 {
|
|
|
6747
6932
|
large: {
|
|
6748
6933
|
type: Boolean,
|
|
6749
6934
|
reflect: true
|
|
6935
|
+
},
|
|
6936
|
+
|
|
6937
|
+
/**
|
|
6938
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
6939
|
+
*/
|
|
6940
|
+
showFooter: {
|
|
6941
|
+
type: Boolean,
|
|
6942
|
+
reflect: true
|
|
6750
6943
|
}
|
|
6751
6944
|
};
|
|
6752
6945
|
}
|
|
@@ -6849,7 +7042,7 @@ class AuroBibtemplate extends i$3 {
|
|
|
6849
7042
|
<slot></slot>
|
|
6850
7043
|
</div>
|
|
6851
7044
|
|
|
6852
|
-
${this.isFullscreen ? u$4`
|
|
7045
|
+
${this.isFullscreen || this.showFooter ? u$4`
|
|
6853
7046
|
<div id="footerContainer">
|
|
6854
7047
|
<slot name="footer"></slot>
|
|
6855
7048
|
</div>` : null}
|
|
@@ -7086,7 +7279,7 @@ class AuroHelpText extends i$3 {
|
|
|
7086
7279
|
}
|
|
7087
7280
|
}
|
|
7088
7281
|
|
|
7089
|
-
var formkitVersion = '
|
|
7282
|
+
var formkitVersion = '202605182147';
|
|
7090
7283
|
|
|
7091
7284
|
var styleCss$2 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.body-default{font-size:var(--wcss-body-default-font-size, 1rem);font-weight:var(--wcss-body-default-weight, );line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-default-emphasized{font-size:var(--wcss-body-default-emphasized-font-size, 1rem);font-weight:var(--wcss-body-default-emphasized-weight, );line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);font-weight:var(--wcss-body-lg-weight, );line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg,.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg-emphasized{font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);font-weight:var(--wcss-body-lg-emphasized-weight, );line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, 0.875rem);font-weight:var(--wcss-body-sm-weight, );line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-sm-emphasized{font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);font-weight:var(--wcss-body-sm-emphasized-weight, );line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-size:var(--wcss-body-xs-font-size, 0.75rem);font-weight:var(--wcss-body-xs-weight, );line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs,.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs-emphasized{font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);font-weight:var(--wcss-body-xs-emphasized-weight, );line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-size:var(--wcss-body-2xs-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-weight, );line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs,.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-2xs-emphasized{font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-emphasized-weight, );line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 300);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 300);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-outline-color: var(--ds-auro-select-outline-color)}:host{display:inline-block;text-align:left;vertical-align:top}:host([layout*=emphasized]) [auro-dropdown],:host([layout*=snowflake]) [auro-dropdown]{--ds-auro-select-border-color: transparent}:host([layout*=emphasized]) .mainContent,:host([layout*=snowflake]) .mainContent{text-align:center}.mainContent{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;align-items:center;justify-content:center}.valueContainer [slot=displayValue]{display:none}.accents{display:flex;flex-direction:row;align-items:center;justify-content:center}::slotted([slot=typeIcon]){margin-right:var(--ds-size-100, 0.5rem)}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;width:100%;align-items:center;justify-content:center}:host([layout*=emphasized]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-300, 1.5rem)}:host([layout*=snowflake]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-200, 1rem)}:host([layout*=snowflake]) label{padding-block:var(--ds-size-25, 0.125rem)}:host([layout*=classic]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem)}:host([layout*=classic]) .mainContent{align-items:start}:host([layout*=classic]) label{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) .value{height:auto}label{color:var(--ds-auro-select-label-text-color)}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown],:host([appearance=inverse]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([fluid]){width:100%}:host([disabled]){pointer-events:none;user-select:none}:host([disabled]:not([ondark])) [auro-dropdown],:host([disabled]:not([appearance=inverse])) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-border-subtle, #dddddd)}:host(:not([layout*=classic])[disabled][ondark]) [auro-dropdown],:host(:not([layout*=classic])[disabled][appearance=inverse]) [auro-dropdown]{--ds-auro-select-border-color: transparent}`;
|
|
7092
7285
|
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
<p>The trigger is a focusable element and participates in the standard tab order, responding to <code>Tab</code> and <code>Shift+Tab</code> key events per <auro-hyperlink href="https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/tabindex">native browser behavior</auro-hyperlink>, i.e., these keys step through the browser tabindex sequence.</p>
|
|
19
19
|
<p>When the component is <code>disabled</code> it is removed from the <code>tabindex</code> sequence. VoiceOver's virtual cursor <em>(swipe navigation)</em> can still encounter the component, but standard keyboard <code>Tab</code> navigation skips it.</p>
|
|
20
20
|
<p>When the bib is collapsed, the bib content is excluded from the tab sequence. When <strong>expanded</strong>, focusable elements within the bib content are included in the natural tab order. In fullscreen mode, focus is trapped within the bib, and the tab sequence cycles through the bib content focusable elements until the bib is closed or the viewport no longer meets the fullscreen condition and is rendered as a popover.</p>
|
|
21
|
+
<p>When the <code>desktopModal</code> attribute is set, focus is also trapped within the bib on desktop viewports. All sibling elements on the page are marked <code>inert</code>, preventing interaction with content outside the dropdown until it is closed.</p>
|
|
21
22
|
<!-- AURO-GENERATED-CONTENT:END -->
|
|
22
23
|
<p>There are no focusable elements inside the <code><auro-select></code> bib content.</p>
|
|
23
24
|
<div class="note">
|