@aurodesignsystem-dev/auro-formkit 0.0.0-pr1475.5 → 0.0.0-pr1477.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/components/bibtemplate/dist/auro-bibtemplate.d.ts +0 -7
  2. package/components/bibtemplate/dist/index.js +1 -9
  3. package/components/bibtemplate/dist/registered.js +1 -9
  4. package/components/checkbox/demo/customize.min.js +1 -1
  5. package/components/checkbox/demo/getting-started.min.js +1 -1
  6. package/components/checkbox/demo/index.min.js +1 -1
  7. package/components/checkbox/dist/index.js +1 -1
  8. package/components/checkbox/dist/registered.js +1 -1
  9. package/components/combobox/demo/customize.min.js +18 -234
  10. package/components/combobox/demo/getting-started.min.js +18 -234
  11. package/components/combobox/demo/index.min.js +18 -234
  12. package/components/combobox/demo/keyboard-behavior.md +68 -8
  13. package/components/combobox/dist/index.js +18 -234
  14. package/components/combobox/dist/registered.js +18 -234
  15. package/components/counter/demo/customize.min.js +15 -231
  16. package/components/counter/demo/index.min.js +15 -231
  17. package/components/counter/demo/keyboard-behavior.md +0 -1
  18. package/components/counter/dist/index.js +2 -10
  19. package/components/counter/dist/registered.js +2 -10
  20. package/components/datepicker/demo/accessibility.md +3 -51
  21. package/components/datepicker/demo/api.md +0 -9
  22. package/components/datepicker/demo/customize.html +0 -2
  23. package/components/datepicker/demo/customize.md +8 -72
  24. package/components/datepicker/demo/design.md +1 -3
  25. package/components/datepicker/demo/index.js +1 -5
  26. package/components/datepicker/demo/index.md +2 -82
  27. package/components/datepicker/demo/index.min.js +94 -1338
  28. package/components/datepicker/demo/keyboard-behavior.md +2 -201
  29. package/components/datepicker/demo/voiceover.md +12 -19
  30. package/components/datepicker/dist/index.js +112 -1280
  31. package/components/datepicker/dist/registered.js +112 -1280
  32. package/components/datepicker/dist/src/auro-calendar-cell.d.ts +1 -64
  33. package/components/datepicker/dist/src/auro-calendar-month.d.ts +0 -28
  34. package/components/datepicker/dist/src/auro-calendar.d.ts +0 -84
  35. package/components/datepicker/dist/src/auro-datepicker.d.ts +0 -80
  36. package/components/datepicker/dist/src/datepickerKeyboardStrategy.d.ts +3 -5
  37. package/components/dropdown/demo/accessibility.md +0 -11
  38. package/components/dropdown/demo/api.md +0 -1
  39. package/components/dropdown/demo/customize.md +0 -3
  40. package/components/dropdown/demo/customize.min.js +13 -221
  41. package/components/dropdown/demo/getting-started.min.js +13 -221
  42. package/components/dropdown/demo/index.min.js +13 -221
  43. package/components/dropdown/demo/keyboard-behavior.md +0 -1
  44. package/components/dropdown/dist/auro-dropdown.d.ts +1 -31
  45. package/components/dropdown/dist/index.js +13 -221
  46. package/components/dropdown/dist/registered.js +13 -221
  47. package/components/form/demo/customize.min.js +163 -1977
  48. package/components/form/demo/getting-started.min.js +163 -1977
  49. package/components/form/demo/index.min.js +163 -1977
  50. package/components/form/demo/registerDemoDeps.min.js +163 -1977
  51. package/components/input/demo/customize.min.js +1 -1
  52. package/components/input/demo/getting-started.min.js +1 -1
  53. package/components/input/demo/index.min.js +1 -1
  54. package/components/input/dist/index.js +1 -1
  55. package/components/input/dist/registered.js +1 -1
  56. package/components/radio/demo/getting-started.js +1 -1
  57. package/components/radio/demo/getting-started.md +1 -1
  58. package/components/radio/demo/index.min.js +1 -1
  59. package/components/radio/dist/index.js +1 -1
  60. package/components/radio/dist/registered.js +1 -1
  61. package/components/select/demo/customize.min.js +33 -247
  62. package/components/select/demo/getting-started.min.js +33 -247
  63. package/components/select/demo/index.min.js +33 -247
  64. package/components/select/demo/keyboard-behavior.md +54 -9
  65. package/components/select/dist/index.js +33 -247
  66. package/components/select/dist/registered.js +33 -247
  67. package/custom-elements.json +5 -677
  68. package/package.json +2 -2
  69. package/components/datepicker/demo/customize.js +0 -19
  70. package/components/datepicker/demo/customize.min.js +0 -25805
  71. package/components/radio/demo/customize.min.js +0 -2186
  72. package/components/radio/demo/demo-support.min.js +0 -55807
  73. package/components/radio/demo/getting-started.min.js +0 -2205
@@ -1290,7 +1290,7 @@ const comboboxKeyboardStrategy = {
1290
1290
 
1291
1291
  // navigate if bib is open otherwise open it
1292
1292
  if (component.dropdown.isPopoverVisible) {
1293
- if (evt.altKey || evt.metaKey) {
1293
+ if (evt.altKey || evt.ctrlKey || evt.metaKey) {
1294
1294
  component.activateLastEnabledAvailableOption();
1295
1295
  } else {
1296
1296
  navigateArrow(component, 'down');
@@ -1313,7 +1313,7 @@ const comboboxKeyboardStrategy = {
1313
1313
 
1314
1314
  // navigate if bib is open otherwise open it
1315
1315
  if (component.dropdown.isPopoverVisible) {
1316
- if (evt.altKey || evt.metaKey) {
1316
+ if (evt.altKey || evt.ctrlKey || evt.metaKey) {
1317
1317
  component.activateFirstEnabledAvailableOption();
1318
1318
  } else {
1319
1319
  navigateArrow(component, 'up');
@@ -4662,7 +4662,7 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
4662
4662
  });
4663
4663
  }
4664
4664
 
4665
- var styleCss$2$1 = i$7`: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}`;
4665
+ var styleCss$2$1 = i$7`: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}`;
4666
4666
 
4667
4667
  var colorCss$2$1 = i$7`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
4668
4668
 
@@ -5293,7 +5293,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
5293
5293
  }
5294
5294
  };
5295
5295
 
5296
- var formkitVersion$2 = '202605190111';
5296
+ var formkitVersion$2 = '202605192014';
5297
5297
 
5298
5298
  let AuroElement$2 = class AuroElement extends i$4 {
5299
5299
  static get properties() {
@@ -5473,7 +5473,6 @@ class AuroDropdown extends AuroElement$2 {
5473
5473
  _intializeDefaults() {
5474
5474
  this.appearance = 'default';
5475
5475
  this.chevron = false;
5476
- this.desktopModal = false;
5477
5476
  this.disabled = false;
5478
5477
  this.disableKeyboardHandling = false;
5479
5478
  this.error = false;
@@ -5654,14 +5653,6 @@ class AuroDropdown extends AuroElement$2 {
5654
5653
  reflect: true
5655
5654
  },
5656
5655
 
5657
- /**
5658
- * If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
5659
- */
5660
- desktopModal: {
5661
- type: Boolean,
5662
- reflect: true
5663
- },
5664
-
5665
5656
  /**
5666
5657
  * If declared, the dropdown will only show by calling the API .show() public method.
5667
5658
  */
@@ -5949,15 +5940,6 @@ class AuroDropdown extends AuroElement$2 {
5949
5940
 
5950
5941
  disconnectedCallback() {
5951
5942
  super.disconnectedCallback();
5952
- this._clearPageInert();
5953
- if (this._bibTabHandler) {
5954
- this.removeEventListener('keydown', this._bibTabHandler);
5955
- this._bibTabHandler = undefined;
5956
- }
5957
- if (this.focusTrap) {
5958
- this.focusTrap.disconnect();
5959
- this.focusTrap = undefined;
5960
- }
5961
5943
  if (this.floater) {
5962
5944
  this.floater.hideBib('disconnect');
5963
5945
  this.floater.disconnect();
@@ -5985,45 +5967,19 @@ class AuroDropdown extends AuroElement$2 {
5985
5967
  if (this.isPopoverVisible) {
5986
5968
  // Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
5987
5969
  // Desktop: use show() for Floating UI positioning + FocusTrap for focus management
5988
- this.bibElement.value.open(this.isBibFullscreen);
5989
- this.updateFocusTrap();
5990
-
5991
- // Desktop modal: make siblings inert so content outside is not interactive
5992
- if (this.desktopModal && !this.isBibFullscreen) {
5993
- this._setPageInert();
5994
- }
5970
+ const useModal = this.isBibFullscreen;
5971
+ this.bibElement.value.open(useModal);
5995
5972
  } else {
5996
5973
  this.bibElement.value.close();
5997
- this._clearPageInert();
5998
5974
  }
5999
5975
  }
6000
5976
 
6001
5977
  // When fullscreen strategy changes while open, re-open dialog with correct mode
6002
5978
  // (e.g. resizing from desktop → mobile while dropdown is open)
6003
5979
  if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
5980
+ const useModal = this.isBibFullscreen;
6004
5981
  this.bibElement.value.close();
6005
- this.bibElement.value.open(this.isBibFullscreen);
6006
-
6007
- // Re-initialize focus management for the new strategy
6008
- this.updateFocusTrap();
6009
-
6010
- // Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
6011
- if (this.desktopModal && !this.isBibFullscreen) {
6012
- this._setPageInert();
6013
- } else {
6014
- this._clearPageInert();
6015
- }
6016
- }
6017
-
6018
- // Handle desktopModal toggled while the dropdown is already open.
6019
- // Re-initialize focus trapping and page inert state to match the new mode.
6020
- if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
6021
- this.updateFocusTrap();
6022
- if (this.desktopModal) {
6023
- this._setPageInert();
6024
- } else {
6025
- this._clearPageInert();
6026
- }
5982
+ this.bibElement.value.open(useModal);
6027
5983
  }
6028
5984
  }
6029
5985
 
@@ -6033,14 +5989,8 @@ class AuroDropdown extends AuroElement$2 {
6033
5989
  * @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
6034
5990
  */
6035
5991
  handleDropdownToggle(event) {
5992
+ this.updateFocusTrap();
6036
5993
  this.isPopoverVisible = event.detail.expanded;
6037
-
6038
- // Tear down FocusTrap when closing. Creation happens in updated()
6039
- // after the dialog is open so getFocusableElements can find content.
6040
- if (!this.isPopoverVisible) {
6041
- this.updateFocusTrap();
6042
- }
6043
-
6044
5994
  const eventType = event.detail.eventType || "unknown";
6045
5995
  if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
6046
5996
  this.trigger.focus();
@@ -6139,176 +6089,19 @@ class AuroDropdown extends AuroElement$2 {
6139
6089
  * @private
6140
6090
  */
6141
6091
  updateFocusTrap() {
6142
- // Always clean up existing handlers/traps before setting up new ones
6143
- // to prevent duplicate listeners on repeated calls.
6144
- if (this._bibTabHandler) {
6145
- this.removeEventListener('keydown', this._bibTabHandler);
6146
- this._bibTabHandler = undefined;
6147
- }
6148
-
6149
- if (this.focusTrap) {
6150
- this.focusTrap.disconnect();
6151
- this.focusTrap = undefined;
6152
- }
6153
-
6154
6092
  if (this.isPopoverVisible) {
6155
6093
  if (!this.isBibFullscreen) {
6156
- if (this.desktopModal) {
6157
- // Desktop modal: trap focus only within the bib content.
6158
- // Can't use FocusTrap on the bib element because keydown events
6159
- // from slotted content bubble through the dropdown host (light DOM),
6160
- // not through the bib (shadow projection target). Using FocusTrap
6161
- // on the dropdown would include the trigger in the tab cycle.
6162
- // Instead, listen for Tab on the dropdown and manually wrap focus
6163
- // within the bib's focusable elements.
6164
- this._bibTabHandler = (event) => {
6165
- if (event.key !== 'Tab') {
6166
- return;
6167
- }
6168
-
6169
- // Collect focusable elements from the bib content.
6170
- const focusables = getFocusableElements(this.bibContent);
6171
-
6172
- // Fallback: try from slotted content directly
6173
- if (!focusables.length) {
6174
- const slot = this.shadowRoot.querySelector('.slotContent slot');
6175
- const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
6176
-
6177
- for (const node of assignedNodes) {
6178
- if (node.nodeType === Node.ELEMENT_NODE) {
6179
- focusables.push(...getFocusableElements(node));
6180
- }
6181
- }
6182
- }
6183
-
6184
- if (!focusables.length) {
6185
- return;
6186
- }
6187
-
6188
- event.preventDefault();
6189
-
6190
- const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
6191
-
6192
- // Walk the active element chain through shadow roots
6193
- const actives = this._getActiveElements();
6194
-
6195
- let idx = focusables.findIndex((el) => actives.includes(el));
6196
-
6197
- if (idx === -1) { // eslint-disable-line no-magic-numbers
6198
- // Focus is not on a known element — move to first/last
6199
- idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
6200
- }
6201
-
6202
- // Try each element in order, skipping any that can't receive focus
6203
- // (e.g. hidden elements, elements in collapsed sections)
6204
- for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
6205
- let nextIdx = idx + direction;
6206
-
6207
- // Wrap around
6208
- if (nextIdx < 0) {
6209
- nextIdx = focusables.length - 1;
6210
- } else if (nextIdx >= focusables.length) {
6211
- nextIdx = 0;
6212
- }
6213
-
6214
- focusables[nextIdx].focus();
6215
-
6216
- // Verify focus actually moved to the target
6217
- const newActives = this._getActiveElements();
6218
-
6219
- if (newActives.includes(focusables[nextIdx])) {
6220
- return;
6221
- }
6222
-
6223
- // Focus didn't stick — skip this element and try the next
6224
- idx = nextIdx;
6225
- }
6226
- };
6227
- this.addEventListener('keydown', this._bibTabHandler);
6228
-
6229
- // Move initial focus into the bib content, matching FocusTrap behavior
6230
- requestAnimationFrame(() => {
6231
- const focusables = getFocusableElements(this.bibContent);
6232
- if (focusables.length) {
6233
- focusables[0].focus();
6234
- }
6235
- });
6236
- } else {
6237
- // Normal desktop: use FocusTrap on the bib element
6238
- this.focusTrap = new FocusTrap(this.bibContent);
6239
- this.focusTrap.focusFirstElement();
6240
- }
6094
+ // Desktop: show() doesn't trap focus, so use FocusTrap
6095
+ this.focusTrap = new FocusTrap(this.bibContent);
6096
+ this.focusTrap.focusFirstElement();
6241
6097
  }
6242
6098
  // Fullscreen: showModal() provides native focus trapping
6243
- }
6244
- }
6245
-
6246
- /**
6247
- * Returns the chain of active (focused) elements through shadow roots.
6248
- * @private
6249
- * @returns {Array<HTMLElement>}
6250
- */
6251
- _getActiveElements() {
6252
- let { activeElement } = document;
6253
- const actives = [activeElement];
6254
-
6255
- while (activeElement?.shadowRoot?.activeElement) {
6256
- activeElement = activeElement.shadowRoot.activeElement;
6257
- actives.push(activeElement);
6258
- }
6259
-
6260
- return actives;
6261
- }
6262
-
6263
- /**
6264
- * Sets `inert` on sibling elements of the dropdown's top-level host
6265
- * so that content outside the dropdown is not interactive while the modal is open.
6266
- * Walks up through shadow DOM boundaries to find the outermost host element
6267
- * in the light DOM, then sets `inert` on siblings at each ancestor level
6268
- * to ensure all page content outside the host subtree is inert.
6269
- * @private
6270
- */
6271
- _setPageInert() {
6272
- if (this._inertSiblings) {
6273
6099
  return;
6274
6100
  }
6275
6101
 
6276
- this._inertSiblings = [];
6277
-
6278
- // Walk up through shadow DOM boundaries to find the topmost host
6279
- // element in the light DOM. For example, if this dropdown is inside
6280
- // auro-datepicker's shadow DOM, we walk up to the datepicker element
6281
- // so we set inert on its siblings — not on the datepicker itself.
6282
- let host = this;
6283
- while (host.getRootNode() instanceof ShadowRoot) {
6284
- host = host.getRootNode().host;
6285
- }
6286
-
6287
- // Walk up the ancestor chain, inerting siblings at each level
6288
- // to ensure the entire page outside the host subtree is inert.
6289
- let current = host;
6290
- while (current.parentElement) {
6291
- const parent = current.parentElement;
6292
- for (const sibling of parent.children) {
6293
- if (sibling !== current && !sibling.inert) {
6294
- sibling.inert = true;
6295
- this._inertSiblings.push(sibling);
6296
- }
6297
- }
6298
- current = parent;
6299
- }
6300
- }
6301
-
6302
- /**
6303
- * Restores `inert` state on siblings that were made inert by `_setPageInert`.
6304
- * @private
6305
- */
6306
- _clearPageInert() {
6307
- if (this._inertSiblings) {
6308
- for (const sibling of this._inertSiblings) {
6309
- sibling.inert = false;
6310
- }
6311
- this._inertSiblings = undefined;
6102
+ if (this.focusTrap) {
6103
+ this.focusTrap.disconnect();
6104
+ this.focusTrap = undefined;
6312
6105
  }
6313
6106
  }
6314
6107
 
@@ -6547,7 +6340,6 @@ class AuroDropdown extends AuroElement$2 {
6547
6340
  shape="${this.shape}"
6548
6341
  ?data-show="${this.isPopoverVisible}"
6549
6342
  ?isfullscreen="${this.isBibFullscreen}"
6550
- ?desktopmodal="${this.desktopModal}"
6551
6343
  .dialogLabel="${this.bibDialogLabel}"
6552
6344
  ${n$2(this.bibElement)}
6553
6345
  >
@@ -13253,7 +13045,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
13253
13045
  }
13254
13046
  };
13255
13047
 
13256
- var formkitVersion$1 = '202605190111';
13048
+ var formkitVersion$1 = '202605192014';
13257
13049
 
13258
13050
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
13259
13051
  // See LICENSE in the project root for license information.
@@ -14207,14 +13999,6 @@ class AuroBibtemplate extends i$4 {
14207
13999
  large: {
14208
14000
  type: Boolean,
14209
14001
  reflect: true
14210
- },
14211
-
14212
- /**
14213
- * If declared, the footer slot will be rendered even when not in fullscreen mode.
14214
- */
14215
- showFooter: {
14216
- type: Boolean,
14217
- reflect: true
14218
14002
  }
14219
14003
  };
14220
14004
  }
@@ -14317,7 +14101,7 @@ class AuroBibtemplate extends i$4 {
14317
14101
  <slot></slot>
14318
14102
  </div>
14319
14103
 
14320
- ${this.isFullscreen || this.showFooter ? u$7`
14104
+ ${this.isFullscreen ? u$7`
14321
14105
  <div id="footerContainer">
14322
14106
  <slot name="footer"></slot>
14323
14107
  </div>` : null}
@@ -14326,7 +14110,7 @@ class AuroBibtemplate extends i$4 {
14326
14110
  }
14327
14111
  }
14328
14112
 
14329
- var formkitVersion = '202605190111';
14113
+ var formkitVersion = '202605192014';
14330
14114
 
14331
14115
  var styleCss$3 = i$7`.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}`;
14332
14116
 
@@ -30,7 +30,7 @@
30
30
  </thead>
31
31
  <tbody>
32
32
  <tr>
33
- <td rowspan="6">ArrowDown</td>
33
+ <td rowspan="8">ArrowDown</td>
34
34
  <td rowspan="2">-</td>
35
35
  <td>Collapsed, list options have been populated</td>
36
36
  <td>
@@ -51,12 +51,17 @@
51
51
  </td>
52
52
  </tr>
53
53
  <tr>
54
- <td rowspan="2">Command</td>
54
+ <td rowspan="2">Meta (Command / Windows key)</td>
55
55
  <td>Collapsed, list options have been populated</td>
56
56
  <td>
57
57
  Trigger input element, <strong>NOT</strong> the trigger input clear button
58
58
  </td>
59
- <td>Opens the bib.</td>
59
+ <td>
60
+ Opens the bib.
61
+ <div class="note">
62
+ <strong>Note:</strong> On Windows, <code>Meta</code> + arrow key combinations are reserved by the operating system for window management. Windows users should use <code>Control</code> or <code>Alt</code> instead.
63
+ </div>
64
+ </td>
60
65
  </tr>
61
66
  <tr>
62
67
  <td>Expanded</td>
@@ -71,7 +76,7 @@
71
76
  </td>
72
77
  </tr>
73
78
  <tr>
74
- <td rowspan="2">Option</td>
79
+ <td rowspan="2">Alt (Option)</td>
75
80
  <td>Collapsed, list options have been populated</td>
76
81
  <td>
77
82
  Trigger input element, <strong>NOT</strong> the trigger input clear button
@@ -91,7 +96,32 @@
91
96
  </td>
92
97
  </tr>
93
98
  <tr>
94
- <td rowspan="6">ArrowUp</td>
99
+ <td rowspan="2">Control</td>
100
+ <td>Collapsed, list options have been populated</td>
101
+ <td>
102
+ Trigger input element, <strong>NOT</strong> the trigger input clear button
103
+ </td>
104
+ <td>
105
+ Opens the bib.
106
+ <div class="note">
107
+ <strong>Note:</strong> On macOS, <code>Control</code> + arrow key combinations are reserved by the operating system for Mission Control and Application Windows. macOS users should use <code>Meta</code> or <code>Alt</code> instead.
108
+ </div>
109
+ </td>
110
+ </tr>
111
+ <tr>
112
+ <td>Expanded</td>
113
+ <td>
114
+ Input element, <strong>NOT</strong> the input clear button
115
+ <div class="note">
116
+ <strong>Note:</strong> Includes both trigger and bib content inputs.
117
+ </div>
118
+ </td>
119
+ <td>
120
+ Advances the <code>focused</code> option to the last enabled option in the list.
121
+ </td>
122
+ </tr>
123
+ <tr>
124
+ <td rowspan="8">ArrowUp</td>
95
125
  <td rowspan="2">-</td>
96
126
  <td>Collapsed, list options have been populated</td>
97
127
  <td>
@@ -112,12 +142,17 @@
112
142
  </td>
113
143
  </tr>
114
144
  <tr>
115
- <td rowspan="2">Command</td>
145
+ <td rowspan="2">Meta (Command / Windows key)</td>
116
146
  <td>Collapsed, list options have been populated</td>
117
147
  <td>
118
148
  Trigger input element, <strong>NOT</strong> the trigger input clear button
119
149
  </td>
120
- <td>Opens the bib.</td>
150
+ <td>
151
+ Opens the bib.
152
+ <div class="note">
153
+ <strong>Note:</strong> On Windows, <code>Meta</code> + arrow key combinations are reserved by the operating system for window management. Windows users should use <code>Control</code> or <code>Alt</code> instead.
154
+ </div>
155
+ </td>
121
156
  </tr>
122
157
  <tr>
123
158
  <td>Expanded</td>
@@ -132,7 +167,7 @@
132
167
  </td>
133
168
  </tr>
134
169
  <tr>
135
- <td rowspan="2">Option</td>
170
+ <td rowspan="2">Alt (Option)</td>
136
171
  <td>Collapsed, list options have been populated</td>
137
172
  <td>
138
173
  Input element, <strong>NOT</strong> the input clear button
@@ -152,6 +187,31 @@
152
187
  </td>
153
188
  </tr>
154
189
  <tr>
190
+ <td rowspan="2">Control</td>
191
+ <td>Collapsed, list options have been populated</td>
192
+ <td>
193
+ Trigger input element, <strong>NOT</strong> the trigger input clear button
194
+ </td>
195
+ <td>
196
+ Opens the bib.
197
+ <div class="note">
198
+ <strong>Note:</strong> On macOS, <code>Control</code> + arrow key combinations are reserved by the operating system for Mission Control and Application Windows. macOS users should use <code>Meta</code> or <code>Alt</code> instead.
199
+ </div>
200
+ </td>
201
+ </tr>
202
+ <tr>
203
+ <td>Expanded</td>
204
+ <td>
205
+ Input element, <strong>NOT</strong> the input clear button
206
+ <div class="note">
207
+ <strong>Note:</strong> Includes both trigger and bib content inputs.
208
+ </div>
209
+ </td>
210
+ <td>
211
+ Advances the <code>focused</code> option to the first enabled option in the list.
212
+ </td>
213
+ </tr>
214
+ <tr>
155
215
  <td>End</td>
156
216
  <td>-</td>
157
217
  <td>Expanded</td>