@aurodesignsystem-dev/auro-formkit 0.0.0-pr1318.0 → 0.0.0-pr1318.10

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 (40) hide show
  1. package/components/checkbox/demo/api.min.js +1 -1
  2. package/components/checkbox/demo/index.min.js +1 -1
  3. package/components/checkbox/dist/index.js +1 -1
  4. package/components/checkbox/dist/registered.js +1 -1
  5. package/components/combobox/demo/api.min.js +63 -7
  6. package/components/combobox/demo/index.min.js +63 -7
  7. package/components/combobox/dist/auro-combobox.d.ts +1 -1
  8. package/components/combobox/dist/index.js +63 -7
  9. package/components/combobox/dist/registered.js +63 -7
  10. package/components/counter/demo/api.min.js +17 -3
  11. package/components/counter/demo/index.min.js +17 -3
  12. package/components/counter/dist/index.js +17 -3
  13. package/components/counter/dist/registered.js +17 -3
  14. package/components/datepicker/demo/api.min.js +43 -5
  15. package/components/datepicker/demo/index.min.js +43 -5
  16. package/components/datepicker/dist/index.js +43 -5
  17. package/components/datepicker/dist/registered.js +43 -5
  18. package/components/dropdown/demo/api.min.js +16 -2
  19. package/components/dropdown/demo/index.min.js +16 -2
  20. package/components/dropdown/dist/auro-dropdown.d.ts +9 -0
  21. package/components/dropdown/dist/index.js +16 -2
  22. package/components/dropdown/dist/registered.js +16 -2
  23. package/components/input/demo/api.md +5 -3
  24. package/components/input/demo/api.min.js +26 -2
  25. package/components/input/demo/index.min.js +26 -2
  26. package/components/input/dist/auro-input.d.ts +1 -0
  27. package/components/input/dist/base-input.d.ts +10 -0
  28. package/components/input/dist/index.js +26 -2
  29. package/components/input/dist/registered.js +26 -2
  30. package/components/radio/demo/api.min.js +1 -1
  31. package/components/radio/demo/index.min.js +1 -1
  32. package/components/radio/dist/index.js +1 -1
  33. package/components/radio/dist/registered.js +1 -1
  34. package/components/select/demo/api.min.js +56 -11
  35. package/components/select/demo/index.min.js +56 -11
  36. package/components/select/dist/auro-select.d.ts +7 -0
  37. package/components/select/dist/index.js +56 -11
  38. package/components/select/dist/registered.js +56 -11
  39. package/custom-elements.json +92 -5
  40. package/package.json +9 -3
@@ -4357,7 +4357,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
4357
4357
  }
4358
4358
  };
4359
4359
 
4360
- var formkitVersion$1 = '202602031735';
4360
+ var formkitVersion$1 = '202602112105';
4361
4361
 
4362
4362
  class AuroElement extends LitElement {
4363
4363
  static get properties() {
@@ -4644,6 +4644,20 @@ class AuroDropdown extends AuroElement {
4644
4644
  }
4645
4645
  }
4646
4646
 
4647
+ /**
4648
+ * Sets the active descendant element for accessibility.
4649
+ * Uses ariaActiveDescendantElement to cross shadow DOM boundaries.
4650
+ * This function is used in components that contain `auro-dropdown` to set the active descendant.
4651
+ * @private
4652
+ * @param {HTMLElement|null} element - The element to set as the active descendant, or null to clear.
4653
+ * @returns {void}
4654
+ */
4655
+ setActiveDescendant(element) {
4656
+ if (this.trigger) {
4657
+ this.trigger.ariaActiveDescendantElement = element;
4658
+ }
4659
+ }
4660
+
4647
4661
  // function to define props used within the scope of this component
4648
4662
  static get properties() {
4649
4663
  return {
@@ -5287,7 +5301,7 @@ class AuroDropdown extends AuroElement {
5287
5301
  tabindex="${ifDefined(this.triggerContentFocusable ? undefined : this.tabIndex)}"
5288
5302
  role="${ifDefined(this.triggerContentFocusable ? undefined : this.a11yRole)}"
5289
5303
  aria-expanded="${ifDefined(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
5290
- aria-controls="${ifDefined(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : this.dropdownId)}"
5304
+ aria-controls="${ifDefined(this.a11yRole === 'button' || this.triggerContentFocusable ? undefined : `${this.dropdownId}-floater-bib`)}"
5291
5305
  aria-labelledby="${ifDefined(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
5292
5306
  @focusin="${this.handleFocusin}"
5293
5307
  @blur="${this.handleFocusOut}">
@@ -6014,7 +6028,7 @@ class AuroHelpText extends LitElement {
6014
6028
  }
6015
6029
  }
6016
6030
 
6017
- var formkitVersion = '202602031735';
6031
+ var formkitVersion = '202602112105';
6018
6032
 
6019
6033
  var styleCss = 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}.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, 0.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, 0.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, 0.625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-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, 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, 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}`;
6020
6034
 
@@ -6351,6 +6365,15 @@ class AuroSelect extends AuroElement$1 {
6351
6365
  type: Object
6352
6366
  },
6353
6367
 
6368
+ /**
6369
+ * Specifies the current active/highlighted `auro-menuoption`.
6370
+ * @type {HTMLElement}
6371
+ * @private
6372
+ */
6373
+ optionActive: {
6374
+ type: Object
6375
+ },
6376
+
6354
6377
  /**
6355
6378
  * Define custom placeholder text.
6356
6379
  */
@@ -6533,10 +6556,17 @@ class AuroSelect extends AuroElement$1 {
6533
6556
  */
6534
6557
  configureDropdown() {
6535
6558
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
6559
+ this.dropdown.a11yRole = 'combobox';
6536
6560
 
6537
6561
  this.dropdown.addEventListener('auroDropdown-toggled', () => {
6538
6562
  this.isPopoverVisible = this.dropdown.isPopoverVisible;
6539
6563
 
6564
+ // Clear aria-activedescendant when dropdown closes
6565
+ if (!this.dropdown.isPopoverVisible) {
6566
+ this.dropdown.setActiveDescendant(null);
6567
+ this.optionActive = null;
6568
+ }
6569
+
6540
6570
  if (this.dropdown.isPopoverVisible) {
6541
6571
  this.updateMenuShapeSize();
6542
6572
  // wait til the bib gets fully rendered
@@ -6673,6 +6703,13 @@ class AuroSelect extends AuroElement$1 {
6673
6703
  */
6674
6704
  configureMenu() {
6675
6705
  this.menu = this.querySelector('auro-menu, [auro-menu]');
6706
+
6707
+ const labelElement = this.querySelector('span[slot="label"]');
6708
+
6709
+ if (labelElement) {
6710
+ this.menu.setAttribute('aria-label', labelElement.textContent);
6711
+ }
6712
+
6676
6713
  this.defaultMenuSize = this.menu.getAttribute('size');
6677
6714
  this.defaultMenuShape = this.menu.getAttribute('shape');
6678
6715
 
@@ -6692,8 +6729,15 @@ class AuroSelect extends AuroElement$1 {
6692
6729
  }
6693
6730
 
6694
6731
  this.options = this.menu.options;
6695
- this.menu.setAttribute('aria-hidden', 'true');
6696
6732
  this.menu.addEventListener("auroMenu-loadingChange", (event) => this.handleMenuLoadingChange(event));
6733
+
6734
+ this.menu.addEventListener('auroMenu-activatedOption', (evt) => {
6735
+ this.optionActive = evt.detail;
6736
+
6737
+ if (this.dropdown) {
6738
+ this.dropdown.setActiveDescendant(this.optionActive);
6739
+ }
6740
+ });
6697
6741
  this.menu.addEventListener('auroMenu-selectedOption', (event) => {
6698
6742
 
6699
6743
  // Update the displayed value
@@ -7158,7 +7202,6 @@ class AuroSelect extends AuroElement$1 {
7158
7202
  </div>
7159
7203
  <${this.dropdownTag}
7160
7204
  appearance="${this.onDark ? 'inverse' : this.appearance}"
7161
- a11yRole="select"
7162
7205
  ?autoPlacement="${this.autoPlacement}"
7163
7206
  ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7164
7207
  ?matchWidth="${this.matchWidth}"
@@ -7173,13 +7216,13 @@ class AuroSelect extends AuroElement$1 {
7173
7216
  part="dropdown"
7174
7217
  shape="${this.shape}"
7175
7218
  size="${this.size}">
7176
- <div slot="trigger" aria-haspopup="true" id="triggerFocus" class="triggerContent">
7219
+ <div slot="trigger" aria-haspopup="listbox" id="triggerFocus" class="triggerContent">
7177
7220
  <div class="accents left">
7178
7221
  <slot name="typeIcon"></slot>
7179
7222
  </div>
7180
7223
  <div class="mainContent">
7181
7224
  <div class="${classMap(valueContainerClasses)}">
7182
- <label class="${classMap(this.commonLabelClasses)}">
7225
+ <label id="dropdownLabel" class="${classMap(this.commonLabelClasses)}">
7183
7226
  <slot name="label"></slot>
7184
7227
  ${this.required ? undefined : html`<slot name="optionalLabel"> (optional)</slot>`}
7185
7228
  </label>
@@ -7238,6 +7281,7 @@ class AuroSelect extends AuroElement$1 {
7238
7281
  </div>
7239
7282
  <${this.dropdownTag}
7240
7283
  appearance="${this.onDark ? 'inverse' : this.appearance}"
7284
+ a11yRole="combobox"
7241
7285
  ?autoPlacement="${this.autoPlacement}"
7242
7286
  ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7243
7287
  ?matchWidth="${this.matchWidth}"
@@ -7251,13 +7295,13 @@ class AuroSelect extends AuroElement$1 {
7251
7295
  part="dropdown"
7252
7296
  shape="${this.shape}"
7253
7297
  size="${this.size}">
7254
- <div slot="trigger" aria-haspopup="true" id="triggerFocus" class="triggerContent">
7298
+ <div slot="trigger" aria-haspopup="listbox" id="triggerFocus" class="triggerContent">
7255
7299
  <div class="accents left">
7256
7300
  <slot name="typeIcon"></slot>
7257
7301
  </div>
7258
7302
  <div class="mainContent">
7259
7303
  <div class="${classMap(valueContainerClasses)}">
7260
- <label class="${classMap(this.commonLabelClasses)}">
7304
+ <label id="dropdownLabel" class="${classMap(this.commonLabelClasses)}">
7261
7305
  <slot name="label"></slot>
7262
7306
  ${this.required ? undefined : html`<slot name="optionalLabel"> (optional)</slot>`}
7263
7307
  </label>
@@ -7322,6 +7366,7 @@ class AuroSelect extends AuroElement$1 {
7322
7366
  </div>
7323
7367
  <${this.dropdownTag}
7324
7368
  appearance="${this.onDark ? 'inverse' : this.appearance}"
7369
+ a11yRole="combobox"
7325
7370
  ?autoPlacement="${this.autoPlacement}"
7326
7371
  ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7327
7372
  ?matchWidth="${!this.flexMenuWidth}"
@@ -7335,13 +7380,13 @@ class AuroSelect extends AuroElement$1 {
7335
7380
  part="dropdown"
7336
7381
  shape="${this.shape}"
7337
7382
  size="${this.size}">
7338
- <div slot="trigger" aria-haspopup="true" id="triggerFocus" class="triggerContent">
7383
+ <div slot="trigger" aria-haspopup="listbox" id="triggerFocus" class="triggerContent">
7339
7384
  <div class="accents left">
7340
7385
  <slot name="typeIcon"></slot>
7341
7386
  </div>
7342
7387
  <div class="mainContent">
7343
7388
  <div class="${classMap(valueContainerClasses)}">
7344
- <label class="${classMap(this.commonLabelClasses)}">
7389
+ <label id="dropdownLabel" class="${classMap(this.commonLabelClasses)}">
7345
7390
  <slot name="label"></slot>
7346
7391
  ${this.required ? undefined : html`<slot name="optionalLabel"> (optional)</slot>`}
7347
7392
  </label>
@@ -1925,7 +1925,7 @@
1925
1925
  "type": {
1926
1926
  "text": "object"
1927
1927
  },
1928
- "description": "Specifies the currently active option."
1928
+ "description": "Specifies the currently active/highlighted `auro-menuoption`."
1929
1929
  },
1930
1930
  {
1931
1931
  "kind": "field",
@@ -7689,6 +7689,26 @@
7689
7689
  "name": "focus",
7690
7690
  "description": "When bib is open, focus on the first element inside of bib.\nIf not, trigger element will get focus."
7691
7691
  },
7692
+ {
7693
+ "kind": "method",
7694
+ "name": "setActiveDescendant",
7695
+ "parameters": [
7696
+ {
7697
+ "name": "element",
7698
+ "description": "The element to set as the active descendant, or null to clear.",
7699
+ "type": {
7700
+ "text": "HTMLElement|null"
7701
+ }
7702
+ }
7703
+ ],
7704
+ "description": "Sets the active descendant element for accessibility.\nUses ariaActiveDescendantElement to cross shadow DOM boundaries.\nThis function is used in components that contain `auro-dropdown` to set the active descendant.",
7705
+ "privacy": "private",
7706
+ "return": {
7707
+ "type": {
7708
+ "text": "void"
7709
+ }
7710
+ }
7711
+ },
7692
7712
  {
7693
7713
  "kind": "method",
7694
7714
  "name": "register",
@@ -9750,6 +9770,11 @@
9750
9770
  "name": "commonDisplayValueWrapperClasses",
9751
9771
  "description": "Common display value wrapper classes.",
9752
9772
  "privacy": "private",
9773
+ "return": {
9774
+ "type": {
9775
+ "text": "Record<string, boolean>"
9776
+ }
9777
+ },
9753
9778
  "readonly": true
9754
9779
  },
9755
9780
  {
@@ -10254,6 +10279,30 @@
10254
10279
  "module": "components/input/src/base-input.js"
10255
10280
  }
10256
10281
  },
10282
+ {
10283
+ "kind": "method",
10284
+ "name": "setActiveDescendant",
10285
+ "parameters": [
10286
+ {
10287
+ "name": "element",
10288
+ "description": "The element to set as the active descendant, or null to clear.",
10289
+ "type": {
10290
+ "text": "HTMLElement|null"
10291
+ }
10292
+ }
10293
+ ],
10294
+ "description": "Sets the active descendant element for accessibility.\nUses ariaActiveDescendantElement to cross shadow DOM boundaries.\nThis function is used in components that contain `auro-input` to set the active descendant.",
10295
+ "privacy": "private",
10296
+ "return": {
10297
+ "type": {
10298
+ "text": "void"
10299
+ }
10300
+ },
10301
+ "inheritedFrom": {
10302
+ "name": "BaseInput",
10303
+ "module": "components/input/src/base-input.js"
10304
+ }
10305
+ },
10257
10306
  {
10258
10307
  "kind": "method",
10259
10308
  "name": "validate",
@@ -10770,7 +10819,7 @@
10770
10819
  "type": {
10771
10820
  "text": "number"
10772
10821
  },
10773
- "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.",
10822
+ "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.\n**Note**: This attribute is not intended to be used with a `type` or `format` that already has a defined length, such as credit-cards, dates or phone numbers.",
10774
10823
  "attribute": "maxLength",
10775
10824
  "reflects": true,
10776
10825
  "inheritedFrom": {
@@ -11491,7 +11540,7 @@
11491
11540
  "type": {
11492
11541
  "text": "number"
11493
11542
  },
11494
- "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.",
11543
+ "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.\n**Note**: This attribute is not intended to be used with a `type` or `format` that already has a defined length, such as credit-cards, dates or phone numbers.",
11495
11544
  "fieldName": "maxLength",
11496
11545
  "inheritedFrom": {
11497
11546
  "name": "BaseInput",
@@ -12112,6 +12161,26 @@
12112
12161
  }
12113
12162
  }
12114
12163
  },
12164
+ {
12165
+ "kind": "method",
12166
+ "name": "setActiveDescendant",
12167
+ "parameters": [
12168
+ {
12169
+ "name": "element",
12170
+ "description": "The element to set as the active descendant, or null to clear.",
12171
+ "type": {
12172
+ "text": "HTMLElement|null"
12173
+ }
12174
+ }
12175
+ ],
12176
+ "description": "Sets the active descendant element for accessibility.\nUses ariaActiveDescendantElement to cross shadow DOM boundaries.\nThis function is used in components that contain `auro-input` to set the active descendant.",
12177
+ "privacy": "private",
12178
+ "return": {
12179
+ "type": {
12180
+ "text": "void"
12181
+ }
12182
+ }
12183
+ },
12115
12184
  {
12116
12185
  "kind": "method",
12117
12186
  "name": "validate",
@@ -12492,7 +12561,7 @@
12492
12561
  "type": {
12493
12562
  "text": "number"
12494
12563
  },
12495
- "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.",
12564
+ "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.\n**Note**: This attribute is not intended to be used with a `type` or `format` that already has a defined length, such as credit-cards, dates or phone numbers.",
12496
12565
  "attribute": "maxLength",
12497
12566
  "reflects": true
12498
12567
  },
@@ -13039,7 +13108,7 @@
13039
13108
  "type": {
13040
13109
  "text": "number"
13041
13110
  },
13042
- "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.",
13111
+ "description": "The maximum number of characters the user can enter into the text input. This must be an integer value `0` or higher.\n**Note**: This attribute is not intended to be used with a `type` or `format` that already has a defined length, such as credit-cards, dates or phone numbers.",
13043
13112
  "fieldName": "maxLength"
13044
13113
  },
13045
13114
  {
@@ -17628,6 +17697,16 @@
17628
17697
  "description": "Specifies the current selected menuOption. Default type is `HTMLElement`, changing to `Array<HTMLElement>` when `multiSelect` is true.",
17629
17698
  "attribute": "optionSelected"
17630
17699
  },
17700
+ {
17701
+ "kind": "field",
17702
+ "name": "optionActive",
17703
+ "privacy": "private",
17704
+ "type": {
17705
+ "text": "HTMLElement"
17706
+ },
17707
+ "description": "Specifies the current active/highlighted `auro-menuoption`.",
17708
+ "attribute": "optionActive"
17709
+ },
17631
17710
  {
17632
17711
  "kind": "field",
17633
17712
  "name": "placeholder",
@@ -17989,6 +18068,14 @@
17989
18068
  "description": "Specifies the current selected menuOption. Default type is `HTMLElement`, changing to `Array<HTMLElement>` when `multiSelect` is true.",
17990
18069
  "fieldName": "optionSelected"
17991
18070
  },
18071
+ {
18072
+ "name": "optionActive",
18073
+ "type": {
18074
+ "text": "HTMLElement"
18075
+ },
18076
+ "description": "Specifies the current active/highlighted `auro-menuoption`.",
18077
+ "fieldName": "optionActive"
18078
+ },
17992
18079
  {
17993
18080
  "name": "placeholder",
17994
18081
  "type": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aurodesignsystem-dev/auro-formkit",
3
- "version": "0.0.0-pr1318.0",
3
+ "version": "0.0.0-pr1318.10",
4
4
  "description": "A collection of web components used to build forms.",
5
5
  "homepage": "https://github.com/AlaskaAirlines/auro-formkit#readme",
6
6
  "bugs": {
@@ -89,15 +89,18 @@
89
89
  "@open-wc/testing": "^4.0.0",
90
90
  "@semantic-release/changelog": "^6.0.3",
91
91
  "@semantic-release/git": "^10.0.1",
92
- "@semantic-release/npm": "^12.0.2",
92
+ "@semantic-release/npm": "^13.1.1",
93
93
  "@storybook/addon-a11y": "^10.2.0",
94
94
  "@storybook/addon-designs": "^11.1.1",
95
95
  "@storybook/addon-docs": "^10.2.0",
96
96
  "@storybook/addon-themes": "^10.2.1",
97
+ "@storybook/addon-vitest": "^10.2.6",
97
98
  "@storybook/web-components": "^10.2.0",
98
99
  "@storybook/web-components-vite": "^10.2.0",
99
100
  "@types/chai": "^5.2.2",
100
101
  "@types/mocha": "^10.0.10",
102
+ "@vitest/browser-playwright": "^4.0.18",
103
+ "@vitest/coverage-v8": "^4.0.18",
101
104
  "@wc-toolkit/storybook-helpers": "^10.0.0",
102
105
  "@web/dev-server": "^0.4.6",
103
106
  "@web/dev-server-hmr": "^0.4.1",
@@ -118,15 +121,17 @@
118
121
  "mockdate": "^3.0.5",
119
122
  "nodemon": "^3.1.10",
120
123
  "npm-run-all": "^4.1.5",
124
+ "playwright": "^1.58.1",
121
125
  "postcss": "^8.5.6",
122
126
  "postcss-custom-properties": "^14.0.6",
123
127
  "postcss-discard-comments": "^7.0.4",
124
128
  "prettier": "^3.6.2",
125
129
  "remark-gfm": "^4.0.1",
126
130
  "sass": "^1.93.2",
127
- "semantic-release": "^24.2.7",
131
+ "semantic-release": "^25.0.1",
128
132
  "shadow-dom-testing-library": "^1.13.1",
129
133
  "storybook": "^10.2.0",
134
+ "storybook-addon-tag-badges": "^3.0.5",
130
135
  "stylelint": "^16.25.0",
131
136
  "stylelint-config-idiomatic-order": "^10.0.0",
132
137
  "stylelint-config-standard": "^39.0.1",
@@ -135,6 +140,7 @@
135
140
  "stylelint-scss": "^6.12.1",
136
141
  "turbo": "^2.5.8",
137
142
  "typescript": "^5.9.3",
143
+ "vitest": "^4.0.18",
138
144
  "whatwg-fetch": "^3.6.20",
139
145
  "yaml-lint": "^1.7.0"
140
146
  },