@aurodesignsystem/auro-formkit 3.0.1 → 3.1.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 (59) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/components/checkbox/README.md +1 -1
  3. package/components/checkbox/demo/api.min.js +468 -25
  4. package/components/checkbox/demo/index.min.js +468 -25
  5. package/components/checkbox/demo/readme.md +1 -1
  6. package/components/checkbox/dist/index.js +468 -25
  7. package/components/checkbox/dist/registered.js +468 -25
  8. package/components/combobox/README.md +1 -1
  9. package/components/combobox/demo/api.min.js +1125 -74
  10. package/components/combobox/demo/index.min.js +1125 -74
  11. package/components/combobox/demo/readme.md +1 -1
  12. package/components/combobox/dist/auro-combobox.d.ts +30 -0
  13. package/components/combobox/dist/index.js +1125 -74
  14. package/components/combobox/dist/registered.js +1125 -74
  15. package/components/counter/README.md +1 -1
  16. package/components/counter/demo/api.min.js +570 -45
  17. package/components/counter/demo/index.min.js +570 -45
  18. package/components/counter/demo/readme.md +1 -1
  19. package/components/counter/dist/index.js +570 -45
  20. package/components/counter/dist/registered.js +570 -45
  21. package/components/datepicker/README.md +1 -1
  22. package/components/datepicker/demo/api.min.js +1073 -70
  23. package/components/datepicker/demo/index.min.js +1073 -70
  24. package/components/datepicker/demo/readme.md +1 -1
  25. package/components/datepicker/dist/index.js +1073 -70
  26. package/components/datepicker/dist/registered.js +1073 -70
  27. package/components/dropdown/README.md +1 -1
  28. package/components/dropdown/demo/api.md +8 -5
  29. package/components/dropdown/demo/api.min.js +104 -22
  30. package/components/dropdown/demo/index.min.js +104 -22
  31. package/components/dropdown/demo/readme.md +1 -1
  32. package/components/dropdown/dist/auro-dropdown.d.ts +29 -0
  33. package/components/dropdown/dist/index.js +104 -22
  34. package/components/dropdown/dist/registered.js +104 -22
  35. package/components/form/README.md +1 -1
  36. package/components/form/demo/readme.md +1 -1
  37. package/components/input/README.md +1 -1
  38. package/components/input/demo/api.md +4 -1
  39. package/components/input/demo/api.min.js +503 -25
  40. package/components/input/demo/index.min.js +503 -25
  41. package/components/input/demo/readme.md +1 -1
  42. package/components/input/dist/base-input.d.ts +24 -0
  43. package/components/input/dist/index.js +503 -25
  44. package/components/input/dist/registered.js +503 -25
  45. package/components/menu/README.md +1 -1
  46. package/components/menu/demo/readme.md +1 -1
  47. package/components/radio/README.md +1 -1
  48. package/components/radio/demo/api.min.js +468 -25
  49. package/components/radio/demo/index.min.js +468 -25
  50. package/components/radio/demo/readme.md +1 -1
  51. package/components/radio/dist/index.js +468 -25
  52. package/components/radio/dist/registered.js +468 -25
  53. package/components/select/README.md +1 -1
  54. package/components/select/demo/api.min.js +570 -45
  55. package/components/select/demo/index.min.js +570 -45
  56. package/components/select/demo/readme.md +1 -1
  57. package/components/select/dist/index.js +570 -45
  58. package/components/select/dist/registered.js +570 -45
  59. package/package.json +2 -2
@@ -1846,7 +1846,7 @@ class AuroFloatingUI {
1846
1846
  /**
1847
1847
  * @private
1848
1848
  * getting called on 'blur' in trigger or `focusin` in document
1849
- *
1849
+ *
1850
1850
  * Hides the bib if focus moves outside of the trigger or bib, unless a 'noHideOnThisFocusLoss' flag is set.
1851
1851
  * This method checks if the currently active element is still within the trigger or bib.
1852
1852
  * If not, and if the bib isn't in fullscreen mode with focus lost, it hides the bib.
@@ -1962,7 +1962,7 @@ class AuroFloatingUI {
1962
1962
  // Close any other dropdown that is already open
1963
1963
  const existedVisibleFloatingUI = document.expandedAuroFormkitDropdown || document.expandedAuroFloater;
1964
1964
  if (existedVisibleFloatingUI && existedVisibleFloatingUI !== this &&
1965
- existedVisibleFloatingUI.isPopoverVisible &&
1965
+ existedVisibleFloatingUI.element.isPopoverVisible &&
1966
1966
  document.expandedAuroFloater.eventPrefix === this.eventPrefix) {
1967
1967
  document.expandedAuroFloater.hideBib();
1968
1968
  }
@@ -2138,7 +2138,7 @@ class AuroFloatingUI {
2138
2138
  this.id = window.crypto.randomUUID();
2139
2139
  this.element.setAttribute('id', this.id);
2140
2140
  }
2141
-
2141
+
2142
2142
  this.element.bib.setAttribute("id", `${this.id}-floater-bib`);
2143
2143
  }
2144
2144
 
@@ -2191,7 +2191,7 @@ class AuroFloatingUI {
2191
2191
  if (this.element.bib) {
2192
2192
  this.element.shadowRoot.append(this.element.bib);
2193
2193
  }
2194
-
2194
+
2195
2195
  // Remove event & keyboard listeners
2196
2196
  if (this.element?.trigger) {
2197
2197
  this.element.trigger.removeEventListener('keydown', this.handleEvent);
@@ -2920,6 +2920,7 @@ var helpTextVersion = '1.0.0';
2920
2920
  * @csspart helpText - The helpText content container.
2921
2921
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
2922
2922
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
2923
+ * @event auroDropdown-idAdded - Notifies consumers that the unique ID for the dropdown bib has been generated.
2923
2924
  */
2924
2925
  class AuroDropdown extends LitElement {
2925
2926
  constructor() {
@@ -2965,7 +2966,9 @@ class AuroDropdown extends LitElement {
2965
2966
  this.rounded = false;
2966
2967
  this.tabIndex = 0;
2967
2968
  this.noToggle = false;
2969
+ this.a11yAutocomplete = 'none';
2968
2970
  this.labeled = true;
2971
+ this.a11yRole = 'combobox';
2969
2972
  this.onDark = false;
2970
2973
 
2971
2974
  // floaterConfig
@@ -3101,6 +3104,16 @@ class AuroDropdown extends LitElement {
3101
3104
  type: Number
3102
3105
  },
3103
3106
 
3107
+ /**
3108
+ * The unique ID for the dropdown bib element.
3109
+ * @private
3110
+ */
3111
+ dropdownId: {
3112
+ type: String,
3113
+ reflect: false,
3114
+ attribute: false
3115
+ },
3116
+
3104
3117
  /**
3105
3118
  * If declared in combination with `bordered` property or `helpText` slot content, will apply red color to both.
3106
3119
  */
@@ -3263,6 +3276,23 @@ class AuroDropdown extends LitElement {
3263
3276
  */
3264
3277
  tabIndex: {
3265
3278
  type: Number
3279
+ },
3280
+
3281
+ /**
3282
+ * The value for the role attribute of the trigger element.
3283
+ */
3284
+ a11yRole: {
3285
+ type: String || undefined,
3286
+ attribute: false,
3287
+ reflect: false
3288
+ },
3289
+
3290
+ /**
3291
+ * The value for the aria-autocomplete attribute of the trigger element.
3292
+ */
3293
+ a11yAutocomplete: {
3294
+ type: String,
3295
+ attribute: false,
3266
3296
  }
3267
3297
  };
3268
3298
  }
@@ -3313,7 +3343,22 @@ class AuroDropdown extends LitElement {
3313
3343
  }
3314
3344
 
3315
3345
  firstUpdated() {
3346
+
3347
+ // Configure the floater to, this will generate the ID for the bib
3316
3348
  this.floater.configure(this, 'auroDropdown');
3349
+
3350
+ /**
3351
+ * @description Let subscribers know that the dropdown ID ha been generated and added.
3352
+ * @event auroDropdown-idAdded
3353
+ * @type {Object<key: 'id', value: string>} - The ID of the dropdown bib element.
3354
+ */
3355
+ this.dispatchEvent(new CustomEvent('auroDropdown-idAdded', {detail: {id: this.floater.element.id}}));
3356
+
3357
+ // Set the bib ID locally if the user hasn't provided a focusable trigger
3358
+ if (!this.triggerContentFocusable) {
3359
+ this.dropdownId = this.floater.element.id;
3360
+ }
3361
+
3317
3362
  this.bibContent = this.floater.element.bib;
3318
3363
 
3319
3364
  // Add the tag name as an attribute if it is different than the component name
@@ -3465,6 +3510,30 @@ class AuroDropdown extends LitElement {
3465
3510
  });
3466
3511
  }
3467
3512
 
3513
+ /*
3514
+ * Sets aria attributes for the trigger element if a custom one is passed in.
3515
+ * @private
3516
+ * @method setTriggerAriaAttributes
3517
+ * @param { HTMLElement } triggerElement - The custom trigger element.
3518
+ */
3519
+ clearTriggerA11yAttributes(triggerElement) {
3520
+
3521
+ if (!triggerElement || !triggerElement.removeAttribute) {
3522
+ return;
3523
+ }
3524
+
3525
+ // Reset appropriate attributes for a11y
3526
+ triggerElement.removeAttribute('aria-labelledby');
3527
+ if (triggerElement.getAttribute('id') === `${this.id}-trigger-element`) {
3528
+ triggerElement.removeAttribute('id');
3529
+ }
3530
+ triggerElement.removeAttribute('role');
3531
+ triggerElement.removeAttribute('aria-expanded');
3532
+
3533
+ triggerElement.removeAttribute('aria-controls');
3534
+ triggerElement.removeAttribute('aria-autocomplete');
3535
+ }
3536
+
3468
3537
  /**
3469
3538
  * Handles changes to the trigger content slot and updates related properties.
3470
3539
  *
@@ -3478,32 +3547,41 @@ class AuroDropdown extends LitElement {
3478
3547
  * @returns {void}
3479
3548
  */
3480
3549
  handleTriggerContentSlotChange(event) {
3550
+
3481
3551
  this.floater.handleTriggerTabIndex();
3482
3552
 
3553
+ // Get the trigger
3554
+ const trigger = this.shadowRoot.querySelector('#trigger');
3555
+
3556
+ // Get the trigger slot
3483
3557
  const triggerSlot = this.shadowRoot.querySelector('.triggerContent slot');
3484
3558
 
3559
+ // If there's a trigger slot
3485
3560
  if (triggerSlot) {
3486
3561
 
3562
+ // Get the content nodes to see if there are any children
3487
3563
  const triggerContentNodes = triggerSlot.assignedNodes();
3488
3564
 
3565
+ // If there are children
3489
3566
  if (triggerContentNodes) {
3490
3567
 
3491
- triggerContentNodes.forEach((node) => {
3492
- if (!this.triggerContentFocusable) {
3493
- this.triggerContentFocusable = this.containsFocusableElement(node);
3494
- }
3495
- });
3496
- }
3497
- }
3568
+ // See if any of them are focusable elemeents
3569
+ this.triggerContentFocusable = triggerContentNodes.some((node) => this.containsFocusableElement(node));
3498
3570
 
3499
- const trigger = this.shadowRoot.querySelector('#trigger');
3571
+ // If any of them are focusable elements
3572
+ if (this.triggerContentFocusable) {
3500
3573
 
3501
- if (!this.triggerContentFocusable) {
3502
- trigger.setAttribute('tabindex', '0');
3503
- trigger.setAttribute('role', 'button');
3504
- } else {
3505
- trigger.removeAttribute('tabindex');
3506
- trigger.removeAttribute('role');
3574
+ // Assume the consumer will be providing their own a11y in whatever they passed in
3575
+ this.clearTriggerA11yAttributes(trigger);
3576
+
3577
+ // Remove the tabindex from the trigger so it doesn't interrupt focus flow
3578
+ trigger.removeAttribute('tabindex');
3579
+ } else {
3580
+
3581
+ // Add the tabindex to the trigger so that it's in the focus flow
3582
+ trigger.setAttribute('tabindex', '0');
3583
+ }
3584
+ }
3507
3585
  }
3508
3586
 
3509
3587
  if (event) {
@@ -3513,6 +3591,7 @@ class AuroDropdown extends LitElement {
3513
3591
 
3514
3592
  if (this.triggerContentSlot) {
3515
3593
  this.setupTriggerFocusEventBinding();
3594
+
3516
3595
  this.hasTriggerContent = this.triggerContentSlot.some((slot) => {
3517
3596
  if (slot.textContent.trim()) {
3518
3597
  return true;
@@ -3580,10 +3659,13 @@ class AuroDropdown extends LitElement {
3580
3659
  id="trigger"
3581
3660
  class="trigger"
3582
3661
  part="trigger"
3583
- aria-labelledby="triggerLabel"
3584
3662
  tabindex="${this.tabIndex}"
3585
3663
  ?showBorder="${this.showTriggerBorders}"
3586
- >
3664
+ role="${ifDefined(this.triggerContentFocusable ? undefined : this.a11yRole)}"
3665
+ aria-expanded="${ifDefined(this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
3666
+ aria-controls="${ifDefined(this.triggerContentFocusable ? undefined : this.dropdownId)}"
3667
+ aria-labelledby="${ifDefined(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
3668
+ >
3587
3669
  <div class="triggerContentWrapper">
3588
3670
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
3589
3671
  <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
@@ -3617,12 +3699,12 @@ class AuroDropdown extends LitElement {
3617
3699
  <div id="bibSizer" part="size"></div>
3618
3700
  <${this.dropdownBibTag}
3619
3701
  id="bib"
3620
- role="tooltip"
3621
3702
  ?data-show="${this.isPopoverVisible}"
3622
3703
  ?isfullscreen="${this.isBibFullscreen}"
3623
3704
  ?common="${this.common}"
3624
3705
  ?rounded="${this.common || this.rounded}"
3625
- ?inset="${this.common || this.inset}">
3706
+ ?inset="${this.common || this.inset}"
3707
+ >
3626
3708
  </${this.dropdownBibTag}>
3627
3709
  </div>
3628
3710
  `;
@@ -1846,7 +1846,7 @@ class AuroFloatingUI {
1846
1846
  /**
1847
1847
  * @private
1848
1848
  * getting called on 'blur' in trigger or `focusin` in document
1849
- *
1849
+ *
1850
1850
  * Hides the bib if focus moves outside of the trigger or bib, unless a 'noHideOnThisFocusLoss' flag is set.
1851
1851
  * This method checks if the currently active element is still within the trigger or bib.
1852
1852
  * If not, and if the bib isn't in fullscreen mode with focus lost, it hides the bib.
@@ -1962,7 +1962,7 @@ class AuroFloatingUI {
1962
1962
  // Close any other dropdown that is already open
1963
1963
  const existedVisibleFloatingUI = document.expandedAuroFormkitDropdown || document.expandedAuroFloater;
1964
1964
  if (existedVisibleFloatingUI && existedVisibleFloatingUI !== this &&
1965
- existedVisibleFloatingUI.isPopoverVisible &&
1965
+ existedVisibleFloatingUI.element.isPopoverVisible &&
1966
1966
  document.expandedAuroFloater.eventPrefix === this.eventPrefix) {
1967
1967
  document.expandedAuroFloater.hideBib();
1968
1968
  }
@@ -2138,7 +2138,7 @@ class AuroFloatingUI {
2138
2138
  this.id = window.crypto.randomUUID();
2139
2139
  this.element.setAttribute('id', this.id);
2140
2140
  }
2141
-
2141
+
2142
2142
  this.element.bib.setAttribute("id", `${this.id}-floater-bib`);
2143
2143
  }
2144
2144
 
@@ -2191,7 +2191,7 @@ class AuroFloatingUI {
2191
2191
  if (this.element.bib) {
2192
2192
  this.element.shadowRoot.append(this.element.bib);
2193
2193
  }
2194
-
2194
+
2195
2195
  // Remove event & keyboard listeners
2196
2196
  if (this.element?.trigger) {
2197
2197
  this.element.trigger.removeEventListener('keydown', this.handleEvent);
@@ -2920,6 +2920,7 @@ var helpTextVersion = '1.0.0';
2920
2920
  * @csspart helpText - The helpText content container.
2921
2921
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
2922
2922
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
2923
+ * @event auroDropdown-idAdded - Notifies consumers that the unique ID for the dropdown bib has been generated.
2923
2924
  */
2924
2925
  class AuroDropdown extends LitElement {
2925
2926
  constructor() {
@@ -2965,7 +2966,9 @@ class AuroDropdown extends LitElement {
2965
2966
  this.rounded = false;
2966
2967
  this.tabIndex = 0;
2967
2968
  this.noToggle = false;
2969
+ this.a11yAutocomplete = 'none';
2968
2970
  this.labeled = true;
2971
+ this.a11yRole = 'combobox';
2969
2972
  this.onDark = false;
2970
2973
 
2971
2974
  // floaterConfig
@@ -3101,6 +3104,16 @@ class AuroDropdown extends LitElement {
3101
3104
  type: Number
3102
3105
  },
3103
3106
 
3107
+ /**
3108
+ * The unique ID for the dropdown bib element.
3109
+ * @private
3110
+ */
3111
+ dropdownId: {
3112
+ type: String,
3113
+ reflect: false,
3114
+ attribute: false
3115
+ },
3116
+
3104
3117
  /**
3105
3118
  * If declared in combination with `bordered` property or `helpText` slot content, will apply red color to both.
3106
3119
  */
@@ -3263,6 +3276,23 @@ class AuroDropdown extends LitElement {
3263
3276
  */
3264
3277
  tabIndex: {
3265
3278
  type: Number
3279
+ },
3280
+
3281
+ /**
3282
+ * The value for the role attribute of the trigger element.
3283
+ */
3284
+ a11yRole: {
3285
+ type: String || undefined,
3286
+ attribute: false,
3287
+ reflect: false
3288
+ },
3289
+
3290
+ /**
3291
+ * The value for the aria-autocomplete attribute of the trigger element.
3292
+ */
3293
+ a11yAutocomplete: {
3294
+ type: String,
3295
+ attribute: false,
3266
3296
  }
3267
3297
  };
3268
3298
  }
@@ -3313,7 +3343,22 @@ class AuroDropdown extends LitElement {
3313
3343
  }
3314
3344
 
3315
3345
  firstUpdated() {
3346
+
3347
+ // Configure the floater to, this will generate the ID for the bib
3316
3348
  this.floater.configure(this, 'auroDropdown');
3349
+
3350
+ /**
3351
+ * @description Let subscribers know that the dropdown ID ha been generated and added.
3352
+ * @event auroDropdown-idAdded
3353
+ * @type {Object<key: 'id', value: string>} - The ID of the dropdown bib element.
3354
+ */
3355
+ this.dispatchEvent(new CustomEvent('auroDropdown-idAdded', {detail: {id: this.floater.element.id}}));
3356
+
3357
+ // Set the bib ID locally if the user hasn't provided a focusable trigger
3358
+ if (!this.triggerContentFocusable) {
3359
+ this.dropdownId = this.floater.element.id;
3360
+ }
3361
+
3317
3362
  this.bibContent = this.floater.element.bib;
3318
3363
 
3319
3364
  // Add the tag name as an attribute if it is different than the component name
@@ -3465,6 +3510,30 @@ class AuroDropdown extends LitElement {
3465
3510
  });
3466
3511
  }
3467
3512
 
3513
+ /*
3514
+ * Sets aria attributes for the trigger element if a custom one is passed in.
3515
+ * @private
3516
+ * @method setTriggerAriaAttributes
3517
+ * @param { HTMLElement } triggerElement - The custom trigger element.
3518
+ */
3519
+ clearTriggerA11yAttributes(triggerElement) {
3520
+
3521
+ if (!triggerElement || !triggerElement.removeAttribute) {
3522
+ return;
3523
+ }
3524
+
3525
+ // Reset appropriate attributes for a11y
3526
+ triggerElement.removeAttribute('aria-labelledby');
3527
+ if (triggerElement.getAttribute('id') === `${this.id}-trigger-element`) {
3528
+ triggerElement.removeAttribute('id');
3529
+ }
3530
+ triggerElement.removeAttribute('role');
3531
+ triggerElement.removeAttribute('aria-expanded');
3532
+
3533
+ triggerElement.removeAttribute('aria-controls');
3534
+ triggerElement.removeAttribute('aria-autocomplete');
3535
+ }
3536
+
3468
3537
  /**
3469
3538
  * Handles changes to the trigger content slot and updates related properties.
3470
3539
  *
@@ -3478,32 +3547,41 @@ class AuroDropdown extends LitElement {
3478
3547
  * @returns {void}
3479
3548
  */
3480
3549
  handleTriggerContentSlotChange(event) {
3550
+
3481
3551
  this.floater.handleTriggerTabIndex();
3482
3552
 
3553
+ // Get the trigger
3554
+ const trigger = this.shadowRoot.querySelector('#trigger');
3555
+
3556
+ // Get the trigger slot
3483
3557
  const triggerSlot = this.shadowRoot.querySelector('.triggerContent slot');
3484
3558
 
3559
+ // If there's a trigger slot
3485
3560
  if (triggerSlot) {
3486
3561
 
3562
+ // Get the content nodes to see if there are any children
3487
3563
  const triggerContentNodes = triggerSlot.assignedNodes();
3488
3564
 
3565
+ // If there are children
3489
3566
  if (triggerContentNodes) {
3490
3567
 
3491
- triggerContentNodes.forEach((node) => {
3492
- if (!this.triggerContentFocusable) {
3493
- this.triggerContentFocusable = this.containsFocusableElement(node);
3494
- }
3495
- });
3496
- }
3497
- }
3568
+ // See if any of them are focusable elemeents
3569
+ this.triggerContentFocusable = triggerContentNodes.some((node) => this.containsFocusableElement(node));
3498
3570
 
3499
- const trigger = this.shadowRoot.querySelector('#trigger');
3571
+ // If any of them are focusable elements
3572
+ if (this.triggerContentFocusable) {
3500
3573
 
3501
- if (!this.triggerContentFocusable) {
3502
- trigger.setAttribute('tabindex', '0');
3503
- trigger.setAttribute('role', 'button');
3504
- } else {
3505
- trigger.removeAttribute('tabindex');
3506
- trigger.removeAttribute('role');
3574
+ // Assume the consumer will be providing their own a11y in whatever they passed in
3575
+ this.clearTriggerA11yAttributes(trigger);
3576
+
3577
+ // Remove the tabindex from the trigger so it doesn't interrupt focus flow
3578
+ trigger.removeAttribute('tabindex');
3579
+ } else {
3580
+
3581
+ // Add the tabindex to the trigger so that it's in the focus flow
3582
+ trigger.setAttribute('tabindex', '0');
3583
+ }
3584
+ }
3507
3585
  }
3508
3586
 
3509
3587
  if (event) {
@@ -3513,6 +3591,7 @@ class AuroDropdown extends LitElement {
3513
3591
 
3514
3592
  if (this.triggerContentSlot) {
3515
3593
  this.setupTriggerFocusEventBinding();
3594
+
3516
3595
  this.hasTriggerContent = this.triggerContentSlot.some((slot) => {
3517
3596
  if (slot.textContent.trim()) {
3518
3597
  return true;
@@ -3580,10 +3659,13 @@ class AuroDropdown extends LitElement {
3580
3659
  id="trigger"
3581
3660
  class="trigger"
3582
3661
  part="trigger"
3583
- aria-labelledby="triggerLabel"
3584
3662
  tabindex="${this.tabIndex}"
3585
3663
  ?showBorder="${this.showTriggerBorders}"
3586
- >
3664
+ role="${ifDefined(this.triggerContentFocusable ? undefined : this.a11yRole)}"
3665
+ aria-expanded="${ifDefined(this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
3666
+ aria-controls="${ifDefined(this.triggerContentFocusable ? undefined : this.dropdownId)}"
3667
+ aria-labelledby="${ifDefined(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
3668
+ >
3587
3669
  <div class="triggerContentWrapper">
3588
3670
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
3589
3671
  <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
@@ -3617,12 +3699,12 @@ class AuroDropdown extends LitElement {
3617
3699
  <div id="bibSizer" part="size"></div>
3618
3700
  <${this.dropdownBibTag}
3619
3701
  id="bib"
3620
- role="tooltip"
3621
3702
  ?data-show="${this.isPopoverVisible}"
3622
3703
  ?isfullscreen="${this.isBibFullscreen}"
3623
3704
  ?common="${this.common}"
3624
3705
  ?rounded="${this.common || this.rounded}"
3625
- ?inset="${this.common || this.inset}">
3706
+ ?inset="${this.common || this.inset}"
3707
+ >
3626
3708
  </${this.dropdownBibTag}>
3627
3709
  </div>
3628
3710
  `;
@@ -109,7 +109,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
109
109
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
110
110
 
111
111
  ```html
112
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.0/auro-form/+esm"></script>
112
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.1/auro-form/+esm"></script>
113
113
  ```
114
114
  <!-- AURO-GENERATED-CONTENT:END -->
115
115
 
@@ -109,7 +109,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
109
109
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
110
110
 
111
111
  ```html
112
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.0/auro-form/+esm"></script>
112
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.1/auro-form/+esm"></script>
113
113
  ```
114
114
  <!-- AURO-GENERATED-CONTENT:END -->
115
115
 
@@ -99,7 +99,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
99
99
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
100
100
 
101
101
  ```html
102
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.0/auro-input/+esm"></script>
102
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.0.1/auro-input/+esm"></script>
103
103
  ```
104
104
  <!-- AURO-GENERATED-CONTENT:END -->
105
105
 
@@ -15,7 +15,10 @@ Generate unique names for dependency components.
15
15
  ## Properties
16
16
 
17
17
  | Property | Attribute | Type | Default | Description |
18
- |-----------------------------------|-----------------------------------|-----------|-------------|--------------------------------------------------|
18
+ |-----------------------------------|-----------------------------------|-----------|-------------|--------------------------------------------------|
19
+ | `a11yControls` | `a11yControls` | `string` | | The value for the aria-controls attribute. |
20
+ | `a11yExpanded` | `a11yExpanded` | `boolean` | | The value for the aria-expanded attribute. |
21
+ | `a11yRole` | `a11yRole` | `string` | | The value for the role attribute. |
19
22
  | [activeLabel](#activeLabel) | `activeLabel` | `boolean` | false | If set, the label will remain fixed in the active position. |
20
23
  | [autocapitalize](#autocapitalize) | `autocapitalize` | `string` | | An enumerated attribute that controls whether and how text input is automatically capitalized as it is entered/edited by the user. [off/none, on/sentences, words, characters]. |
21
24
  | [autocomplete](#autocomplete) | `autocomplete` | `string` | | An enumerated attribute that defines what the user agent can suggest for autofill. At this time, only `autocomplete="off"` is supported. |