@aurodesignsystem-dev/auro-formkit 0.0.0-pr1430.0 → 0.0.0-pr1430.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/components/checkbox/demo/api.min.js +3 -3
  2. package/components/checkbox/demo/index.min.js +3 -3
  3. package/components/checkbox/dist/index.js +3 -3
  4. package/components/checkbox/dist/registered.js +3 -3
  5. package/components/combobox/demo/api.html +1 -0
  6. package/components/combobox/demo/api.js +3 -1
  7. package/components/combobox/demo/api.md +75 -0
  8. package/components/combobox/demo/api.min.js +44 -96
  9. package/components/combobox/demo/index.min.js +31 -95
  10. package/components/combobox/dist/comboboxKeyboardStrategy.d.ts +1 -1
  11. package/components/combobox/dist/index.js +21 -95
  12. package/components/combobox/dist/registered.js +21 -95
  13. package/components/counter/demo/api.html +3 -0
  14. package/components/counter/demo/api.js +4 -0
  15. package/components/counter/demo/api.md +130 -0
  16. package/components/counter/demo/api.min.js +63 -104
  17. package/components/counter/demo/index.min.js +43 -104
  18. package/components/counter/dist/counterGroupKeyboardStrategy.d.ts +3 -0
  19. package/components/counter/dist/index.js +43 -104
  20. package/components/counter/dist/registered.js +43 -104
  21. package/components/datepicker/demo/api.html +1 -0
  22. package/components/datepicker/demo/api.js +2 -0
  23. package/components/datepicker/demo/api.md +57 -0
  24. package/components/datepicker/demo/api.min.js +106 -95
  25. package/components/datepicker/demo/index.min.js +94 -95
  26. package/components/datepicker/dist/datepickerKeyboardStrategy.d.ts +3 -1
  27. package/components/datepicker/dist/index.js +94 -95
  28. package/components/datepicker/dist/registered.js +94 -95
  29. package/components/dropdown/demo/api.html +1 -0
  30. package/components/dropdown/demo/api.js +2 -0
  31. package/components/dropdown/demo/api.md +95 -0
  32. package/components/dropdown/demo/api.min.js +25 -88
  33. package/components/dropdown/demo/index.min.js +5 -88
  34. package/components/dropdown/dist/index.js +5 -88
  35. package/components/dropdown/dist/registered.js +5 -88
  36. package/components/form/demo/api.min.js +230 -435
  37. package/components/form/demo/index.min.js +230 -435
  38. package/components/input/demo/api.min.js +1 -1
  39. package/components/input/demo/index.min.js +1 -1
  40. package/components/input/dist/index.js +1 -1
  41. package/components/input/dist/registered.js +1 -1
  42. package/components/menu/demo/api.md +1 -0
  43. package/components/menu/demo/api.min.js +10 -0
  44. package/components/menu/demo/index.min.js +10 -0
  45. package/components/menu/dist/auro-menuoption.d.ts +9 -0
  46. package/components/menu/dist/index.js +10 -0
  47. package/components/menu/dist/registered.js +10 -0
  48. package/components/radio/demo/api.min.js +2 -2
  49. package/components/radio/demo/index.min.js +2 -2
  50. package/components/radio/dist/index.js +2 -2
  51. package/components/radio/dist/registered.js +2 -2
  52. package/components/select/demo/api.html +1 -0
  53. package/components/select/demo/api.js +2 -0
  54. package/components/select/demo/api.md +76 -0
  55. package/components/select/demo/api.min.js +45 -101
  56. package/components/select/demo/index.min.js +32 -101
  57. package/components/select/dist/index.js +18 -97
  58. package/components/select/dist/registered.js +18 -97
  59. package/custom-elements.json +48 -3
  60. package/package.json +4 -3
@@ -76,7 +76,7 @@ let l$1 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[
76
76
 
77
77
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
78
78
 
79
- let AuroLibraryRuntimeUtils$5 = class AuroLibraryRuntimeUtils {
79
+ let AuroLibraryRuntimeUtils$4 = class AuroLibraryRuntimeUtils {
80
80
 
81
81
  /* eslint-disable jsdoc/require-param */
82
82
 
@@ -152,7 +152,7 @@ let AuroLibraryRuntimeUtils$5 = class AuroLibraryRuntimeUtils {
152
152
  }
153
153
  };
154
154
 
155
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
155
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
156
156
  // See LICENSE in the project root for license information.
157
157
 
158
158
 
@@ -182,7 +182,7 @@ class AuroCounterButton extends T$1 {
182
182
  *
183
183
  */
184
184
  static register(name = "auro-counter-button") {
185
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterButton);
185
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterButton);
186
186
  }
187
187
  }
188
188
 
@@ -674,7 +674,7 @@ const {
674
674
  class AuroFormValidation {
675
675
 
676
676
  constructor() {
677
- this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
677
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
678
678
  }
679
679
 
680
680
  /**
@@ -1256,7 +1256,7 @@ var tokensCss$2 = css`:host{--ds-auro-helptext-color: var(--ds-basic-color-texti
1256
1256
 
1257
1257
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1258
1258
 
1259
- let AuroLibraryRuntimeUtils$4 = class AuroLibraryRuntimeUtils {
1259
+ let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
1260
1260
 
1261
1261
  /* eslint-disable jsdoc/require-param */
1262
1262
 
@@ -1349,7 +1349,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1349
1349
  this.onDark = false;
1350
1350
  this.hasTextContent = false;
1351
1351
 
1352
- AuroLibraryRuntimeUtils$4.prototype.handleComponentTagRename(this, 'auro-helptext');
1352
+ AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-helptext');
1353
1353
  }
1354
1354
 
1355
1355
  static get styles() {
@@ -1415,7 +1415,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1415
1415
  *
1416
1416
  */
1417
1417
  static register(name = "auro-helptext") {
1418
- AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroHelpText);
1418
+ AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroHelpText);
1419
1419
  }
1420
1420
 
1421
1421
  updated() {
@@ -1471,9 +1471,9 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1471
1471
  }
1472
1472
  };
1473
1473
 
1474
- var formkitVersion$1 = '202604082129';
1474
+ var formkitVersion$1 = '202604091756';
1475
1475
 
1476
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1476
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1477
1477
  // See LICENSE in the project root for license information.
1478
1478
 
1479
1479
  const keyboardStrategy = {
@@ -1562,7 +1562,7 @@ class AuroCounter extends LitElement {
1562
1562
  /**
1563
1563
  * @private
1564
1564
  */
1565
- this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
1565
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
1566
1566
 
1567
1567
  }
1568
1568
 
@@ -1704,7 +1704,7 @@ class AuroCounter extends LitElement {
1704
1704
  * AuroCounter.register("custom-counter") // registers <custom-counter/>
1705
1705
  */
1706
1706
  static register(name = "auro-counter") {
1707
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounter);
1707
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounter);
1708
1708
  }
1709
1709
 
1710
1710
  static get styles() {
@@ -1942,7 +1942,7 @@ var shapeSizeCss$1 = css`.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.
1942
1942
 
1943
1943
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1944
1944
 
1945
- let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
1945
+ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
1946
1946
 
1947
1947
  /* eslint-disable jsdoc/require-param */
1948
1948
 
@@ -4983,89 +4983,6 @@ let p$2 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
4983
4983
 
4984
4984
  var iconVersion$1 = '9.1.2';
4985
4985
 
4986
- // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
4987
- // See LICENSE in the project root for license information.
4988
-
4989
- // ---------------------------------------------------------------------
4990
-
4991
- /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
4992
-
4993
- let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
4994
-
4995
- /* eslint-disable jsdoc/require-param */
4996
-
4997
- /**
4998
- * This will register a new custom element with the browser.
4999
- * @param {String} name - The name of the custom element.
5000
- * @param {Object} componentClass - The class to register as a custom element.
5001
- * @returns {void}
5002
- */
5003
- registerComponent(name, componentClass) {
5004
- if (!customElements.get(name)) {
5005
- customElements.define(name, class extends componentClass {});
5006
- }
5007
- }
5008
-
5009
- /**
5010
- * Finds and returns the closest HTML Element based on a selector.
5011
- * @returns {void}
5012
- */
5013
- closestElement(
5014
- selector, // selector like in .closest()
5015
- base = this, // extra functionality to skip a parent
5016
- __Closest = (el, found = el && el.closest(selector)) =>
5017
- !el || el === document || el === window
5018
- ? null // standard .closest() returns null for non-found selectors also
5019
- : found
5020
- ? found // found a selector INside this element
5021
- : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
5022
- ) {
5023
- return __Closest(base);
5024
- }
5025
- /* eslint-enable jsdoc/require-param */
5026
-
5027
- /**
5028
- * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
5029
- * @param {Object} elem - The element to check.
5030
- * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
5031
- * @returns {void}
5032
- */
5033
- handleComponentTagRename(elem, tagName) {
5034
- const tag = tagName.toLowerCase();
5035
- const elemTag = elem.tagName.toLowerCase();
5036
-
5037
- if (elemTag !== tag) {
5038
- elem.setAttribute(tag, true);
5039
- }
5040
- }
5041
-
5042
- /**
5043
- * Validates if an element is a specific Auro component.
5044
- * @param {Object} elem - The element to validate.
5045
- * @param {String} tagName - The name of the Auro component to check against.
5046
- * @returns {Boolean} - Returns true if the element is the specified Auro component.
5047
- */
5048
- elementMatch(elem, tagName) {
5049
- const tag = tagName.toLowerCase();
5050
- const elemTag = elem.tagName.toLowerCase();
5051
-
5052
- return elemTag === tag || elem.hasAttribute(tag);
5053
- }
5054
-
5055
- /**
5056
- * Gets the text content of a named slot.
5057
- * @returns {String}
5058
- * @private
5059
- */
5060
- getSlotText(elem, name) {
5061
- const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
5062
- const nodes = slot?.assignedNodes({ flatten: true }) || [];
5063
- const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
5064
-
5065
- return text || null;
5066
- }
5067
- };
5068
-
5069
4986
  /**
5070
4987
  * Computes display state once per keydown event.
5071
4988
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -5533,7 +5450,7 @@ var tokensCss = css`:host{--ds-auro-helptext-color: var(--ds-basic-color-textico
5533
5450
 
5534
5451
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
5535
5452
 
5536
- let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
5453
+ let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
5537
5454
 
5538
5455
  /* eslint-disable jsdoc/require-param */
5539
5456
 
@@ -5626,7 +5543,7 @@ class AuroHelpText extends LitElement {
5626
5543
  this.onDark = false;
5627
5544
  this.hasTextContent = false;
5628
5545
 
5629
- AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-helptext');
5546
+ AuroLibraryRuntimeUtils$2.prototype.handleComponentTagRename(this, 'auro-helptext');
5630
5547
  }
5631
5548
 
5632
5549
  static get styles() {
@@ -5692,7 +5609,7 @@ class AuroHelpText extends LitElement {
5692
5609
  *
5693
5610
  */
5694
5611
  static register(name = "auro-helptext") {
5695
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroHelpText);
5612
+ AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroHelpText);
5696
5613
  }
5697
5614
 
5698
5615
  updated() {
@@ -5748,7 +5665,7 @@ class AuroHelpText extends LitElement {
5748
5665
  }
5749
5666
  }
5750
5667
 
5751
- var formkitVersion = '202604082129';
5668
+ var formkitVersion = '202604091756';
5752
5669
 
5753
5670
  let AuroElement$1 = class AuroElement extends LitElement {
5754
5671
  static get properties() {
@@ -5854,7 +5771,7 @@ let AuroElement$1 = class AuroElement extends LitElement {
5854
5771
  }
5855
5772
  };
5856
5773
 
5857
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
5774
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
5858
5775
  // See LICENSE in the project root for license information.
5859
5776
 
5860
5777
 
@@ -5959,7 +5876,7 @@ class AuroDropdown extends AuroElement$1 {
5959
5876
  /**
5960
5877
  * @private
5961
5878
  */
5962
- this.runtimeUtils = new AuroLibraryRuntimeUtils$2();
5879
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1();
5963
5880
 
5964
5881
  /**
5965
5882
  * @private
@@ -6377,7 +6294,7 @@ class AuroDropdown extends AuroElement$1 {
6377
6294
  *
6378
6295
  */
6379
6296
  static register(name = "auro-dropdown") {
6380
- AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroDropdown);
6297
+ AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
6381
6298
  }
6382
6299
 
6383
6300
  /**
@@ -7303,7 +7220,7 @@ class AuroCounterWrapper extends LitElement {
7303
7220
  * AuroCounterWrapper.register("custom-counter-wrapper") // registers <custom-counter-wrapper/>
7304
7221
  */
7305
7222
  static register(name = "auro-counter-wrapper") {
7306
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterWrapper);
7223
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterWrapper);
7307
7224
  }
7308
7225
 
7309
7226
  // function that renders the HTML and CSS into the scope of the component
@@ -7422,6 +7339,24 @@ class AuroElement extends LitElement {
7422
7339
  }
7423
7340
  }
7424
7341
 
7342
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
7343
+ // See LICENSE in the project root for license information.
7344
+
7345
+ const counterGroupKeyboardStrategy = {
7346
+ Escape(component, evt) {
7347
+ if (!component.dropdown || !component.dropdown.isPopoverVisible) {
7348
+ return;
7349
+ }
7350
+
7351
+ // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
7352
+ // Because stopPropagation prevents the document-level floatingUI keydown handler from
7353
+ // seeing this event, we must also close the dropdown explicitly.
7354
+ evt.stopPropagation();
7355
+
7356
+ component.dropdown.hide();
7357
+ },
7358
+ };
7359
+
7425
7360
  /* eslint-disable lit/no-invalid-html, lit/binding-positions, max-lines, no-underscore-dangle, arrow-parens, no-confusing-arrow, curly, dot-location, no-inline-comments, line-comment-position,
7426
7361
  */
7427
7362
 
@@ -8022,6 +7957,10 @@ class AuroCounterGroup extends AuroElement {
8022
7957
  super.firstUpdated();
8023
7958
  this.updateValue();
8024
7959
  this.updateValueText();
7960
+
7961
+ if (this.isDropdown) {
7962
+ applyKeyboardStrategy$1(this, counterGroupKeyboardStrategy);
7963
+ }
8025
7964
  }
8026
7965
 
8027
7966
  /**
@@ -8031,7 +7970,7 @@ class AuroCounterGroup extends AuroElement {
8031
7970
  * AuroCounterGroup.register("custom-counter-group") // registers <custom-counter-group/>
8032
7971
  */
8033
7972
  static register(name = "auro-counter-group") {
8034
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterGroup);
7973
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterGroup);
8035
7974
  }
8036
7975
 
8037
7976
  /**
@@ -76,7 +76,7 @@ let l$1 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[
76
76
 
77
77
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
78
78
 
79
- let AuroLibraryRuntimeUtils$5 = class AuroLibraryRuntimeUtils {
79
+ let AuroLibraryRuntimeUtils$4 = class AuroLibraryRuntimeUtils {
80
80
 
81
81
  /* eslint-disable jsdoc/require-param */
82
82
 
@@ -152,7 +152,7 @@ let AuroLibraryRuntimeUtils$5 = class AuroLibraryRuntimeUtils {
152
152
  }
153
153
  };
154
154
 
155
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
155
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
156
156
  // See LICENSE in the project root for license information.
157
157
 
158
158
 
@@ -182,7 +182,7 @@ class AuroCounterButton extends T$1 {
182
182
  *
183
183
  */
184
184
  static register(name = "auro-counter-button") {
185
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterButton);
185
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterButton);
186
186
  }
187
187
  }
188
188
 
@@ -674,7 +674,7 @@ const {
674
674
  class AuroFormValidation {
675
675
 
676
676
  constructor() {
677
- this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
677
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
678
678
  }
679
679
 
680
680
  /**
@@ -1256,7 +1256,7 @@ var tokensCss$2 = css`:host{--ds-auro-helptext-color: var(--ds-basic-color-texti
1256
1256
 
1257
1257
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1258
1258
 
1259
- let AuroLibraryRuntimeUtils$4 = class AuroLibraryRuntimeUtils {
1259
+ let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
1260
1260
 
1261
1261
  /* eslint-disable jsdoc/require-param */
1262
1262
 
@@ -1349,7 +1349,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1349
1349
  this.onDark = false;
1350
1350
  this.hasTextContent = false;
1351
1351
 
1352
- AuroLibraryRuntimeUtils$4.prototype.handleComponentTagRename(this, 'auro-helptext');
1352
+ AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-helptext');
1353
1353
  }
1354
1354
 
1355
1355
  static get styles() {
@@ -1415,7 +1415,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1415
1415
  *
1416
1416
  */
1417
1417
  static register(name = "auro-helptext") {
1418
- AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroHelpText);
1418
+ AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroHelpText);
1419
1419
  }
1420
1420
 
1421
1421
  updated() {
@@ -1471,9 +1471,9 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
1471
1471
  }
1472
1472
  };
1473
1473
 
1474
- var formkitVersion$1 = '202604082129';
1474
+ var formkitVersion$1 = '202604091756';
1475
1475
 
1476
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1476
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1477
1477
  // See LICENSE in the project root for license information.
1478
1478
 
1479
1479
  const keyboardStrategy = {
@@ -1562,7 +1562,7 @@ class AuroCounter extends LitElement {
1562
1562
  /**
1563
1563
  * @private
1564
1564
  */
1565
- this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
1565
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
1566
1566
 
1567
1567
  }
1568
1568
 
@@ -1704,7 +1704,7 @@ class AuroCounter extends LitElement {
1704
1704
  * AuroCounter.register("custom-counter") // registers <custom-counter/>
1705
1705
  */
1706
1706
  static register(name = "auro-counter") {
1707
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounter);
1707
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounter);
1708
1708
  }
1709
1709
 
1710
1710
  static get styles() {
@@ -1942,7 +1942,7 @@ var shapeSizeCss$1 = css`.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.
1942
1942
 
1943
1943
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1944
1944
 
1945
- let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
1945
+ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
1946
1946
 
1947
1947
  /* eslint-disable jsdoc/require-param */
1948
1948
 
@@ -4983,89 +4983,6 @@ let p$2 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
4983
4983
 
4984
4984
  var iconVersion$1 = '9.1.2';
4985
4985
 
4986
- // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
4987
- // See LICENSE in the project root for license information.
4988
-
4989
- // ---------------------------------------------------------------------
4990
-
4991
- /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
4992
-
4993
- let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
4994
-
4995
- /* eslint-disable jsdoc/require-param */
4996
-
4997
- /**
4998
- * This will register a new custom element with the browser.
4999
- * @param {String} name - The name of the custom element.
5000
- * @param {Object} componentClass - The class to register as a custom element.
5001
- * @returns {void}
5002
- */
5003
- registerComponent(name, componentClass) {
5004
- if (!customElements.get(name)) {
5005
- customElements.define(name, class extends componentClass {});
5006
- }
5007
- }
5008
-
5009
- /**
5010
- * Finds and returns the closest HTML Element based on a selector.
5011
- * @returns {void}
5012
- */
5013
- closestElement(
5014
- selector, // selector like in .closest()
5015
- base = this, // extra functionality to skip a parent
5016
- __Closest = (el, found = el && el.closest(selector)) =>
5017
- !el || el === document || el === window
5018
- ? null // standard .closest() returns null for non-found selectors also
5019
- : found
5020
- ? found // found a selector INside this element
5021
- : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
5022
- ) {
5023
- return __Closest(base);
5024
- }
5025
- /* eslint-enable jsdoc/require-param */
5026
-
5027
- /**
5028
- * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
5029
- * @param {Object} elem - The element to check.
5030
- * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
5031
- * @returns {void}
5032
- */
5033
- handleComponentTagRename(elem, tagName) {
5034
- const tag = tagName.toLowerCase();
5035
- const elemTag = elem.tagName.toLowerCase();
5036
-
5037
- if (elemTag !== tag) {
5038
- elem.setAttribute(tag, true);
5039
- }
5040
- }
5041
-
5042
- /**
5043
- * Validates if an element is a specific Auro component.
5044
- * @param {Object} elem - The element to validate.
5045
- * @param {String} tagName - The name of the Auro component to check against.
5046
- * @returns {Boolean} - Returns true if the element is the specified Auro component.
5047
- */
5048
- elementMatch(elem, tagName) {
5049
- const tag = tagName.toLowerCase();
5050
- const elemTag = elem.tagName.toLowerCase();
5051
-
5052
- return elemTag === tag || elem.hasAttribute(tag);
5053
- }
5054
-
5055
- /**
5056
- * Gets the text content of a named slot.
5057
- * @returns {String}
5058
- * @private
5059
- */
5060
- getSlotText(elem, name) {
5061
- const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
5062
- const nodes = slot?.assignedNodes({ flatten: true }) || [];
5063
- const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
5064
-
5065
- return text || null;
5066
- }
5067
- };
5068
-
5069
4986
  /**
5070
4987
  * Computes display state once per keydown event.
5071
4988
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -5533,7 +5450,7 @@ var tokensCss = css`:host{--ds-auro-helptext-color: var(--ds-basic-color-textico
5533
5450
 
5534
5451
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
5535
5452
 
5536
- let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
5453
+ let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
5537
5454
 
5538
5455
  /* eslint-disable jsdoc/require-param */
5539
5456
 
@@ -5626,7 +5543,7 @@ class AuroHelpText extends LitElement {
5626
5543
  this.onDark = false;
5627
5544
  this.hasTextContent = false;
5628
5545
 
5629
- AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-helptext');
5546
+ AuroLibraryRuntimeUtils$2.prototype.handleComponentTagRename(this, 'auro-helptext');
5630
5547
  }
5631
5548
 
5632
5549
  static get styles() {
@@ -5692,7 +5609,7 @@ class AuroHelpText extends LitElement {
5692
5609
  *
5693
5610
  */
5694
5611
  static register(name = "auro-helptext") {
5695
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroHelpText);
5612
+ AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroHelpText);
5696
5613
  }
5697
5614
 
5698
5615
  updated() {
@@ -5748,7 +5665,7 @@ class AuroHelpText extends LitElement {
5748
5665
  }
5749
5666
  }
5750
5667
 
5751
- var formkitVersion = '202604082129';
5668
+ var formkitVersion = '202604091756';
5752
5669
 
5753
5670
  let AuroElement$1 = class AuroElement extends LitElement {
5754
5671
  static get properties() {
@@ -5854,7 +5771,7 @@ let AuroElement$1 = class AuroElement extends LitElement {
5854
5771
  }
5855
5772
  };
5856
5773
 
5857
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
5774
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
5858
5775
  // See LICENSE in the project root for license information.
5859
5776
 
5860
5777
 
@@ -5959,7 +5876,7 @@ class AuroDropdown extends AuroElement$1 {
5959
5876
  /**
5960
5877
  * @private
5961
5878
  */
5962
- this.runtimeUtils = new AuroLibraryRuntimeUtils$2();
5879
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1();
5963
5880
 
5964
5881
  /**
5965
5882
  * @private
@@ -6377,7 +6294,7 @@ class AuroDropdown extends AuroElement$1 {
6377
6294
  *
6378
6295
  */
6379
6296
  static register(name = "auro-dropdown") {
6380
- AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroDropdown);
6297
+ AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
6381
6298
  }
6382
6299
 
6383
6300
  /**
@@ -7303,7 +7220,7 @@ class AuroCounterWrapper extends LitElement {
7303
7220
  * AuroCounterWrapper.register("custom-counter-wrapper") // registers <custom-counter-wrapper/>
7304
7221
  */
7305
7222
  static register(name = "auro-counter-wrapper") {
7306
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterWrapper);
7223
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterWrapper);
7307
7224
  }
7308
7225
 
7309
7226
  // function that renders the HTML and CSS into the scope of the component
@@ -7422,6 +7339,24 @@ class AuroElement extends LitElement {
7422
7339
  }
7423
7340
  }
7424
7341
 
7342
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
7343
+ // See LICENSE in the project root for license information.
7344
+
7345
+ const counterGroupKeyboardStrategy = {
7346
+ Escape(component, evt) {
7347
+ if (!component.dropdown || !component.dropdown.isPopoverVisible) {
7348
+ return;
7349
+ }
7350
+
7351
+ // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
7352
+ // Because stopPropagation prevents the document-level floatingUI keydown handler from
7353
+ // seeing this event, we must also close the dropdown explicitly.
7354
+ evt.stopPropagation();
7355
+
7356
+ component.dropdown.hide();
7357
+ },
7358
+ };
7359
+
7425
7360
  /* eslint-disable lit/no-invalid-html, lit/binding-positions, max-lines, no-underscore-dangle, arrow-parens, no-confusing-arrow, curly, dot-location, no-inline-comments, line-comment-position,
7426
7361
  */
7427
7362
 
@@ -8022,6 +7957,10 @@ class AuroCounterGroup extends AuroElement {
8022
7957
  super.firstUpdated();
8023
7958
  this.updateValue();
8024
7959
  this.updateValueText();
7960
+
7961
+ if (this.isDropdown) {
7962
+ applyKeyboardStrategy$1(this, counterGroupKeyboardStrategy);
7963
+ }
8025
7964
  }
8026
7965
 
8027
7966
  /**
@@ -8031,7 +7970,7 @@ class AuroCounterGroup extends AuroElement {
8031
7970
  * AuroCounterGroup.register("custom-counter-group") // registers <custom-counter-group/>
8032
7971
  */
8033
7972
  static register(name = "auro-counter-group") {
8034
- AuroLibraryRuntimeUtils$5.prototype.registerComponent(name, AuroCounterGroup);
7973
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroCounterGroup);
8035
7974
  }
8036
7975
 
8037
7976
  /**
@@ -53,6 +53,7 @@
53
53
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-accordion@latest/+esm" type="module"></script>
54
54
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-button@latest/+esm" type="module"></script>
55
55
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-dialog@latest/+esm" type="module"></script>
56
+ <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-drawer@latest/+esm" type="module"></script>
56
57
 
57
58
  <script type="module" data-demo-script="true">
58
59
  import { initExamples } from "./api.min.js";
@@ -6,6 +6,7 @@ import { updateMaxDateExample } from './../apiExamples/update-max-date';
6
6
  import { updateMinDateExample } from './../apiExamples/update-min-date';
7
7
  import { validityExample } from './../apiExamples/validity';
8
8
  import { inDialogExample } from '../apiExamples/in-dialog';
9
+ import { inDrawerExample } from '../apiExamples/in-drawer';
9
10
  import { localizationExample } from '../apiExamples/localization';
10
11
  import { resetStateExample } from '../apiExamples/reset-state';
11
12
  import '../src/registered.js';
@@ -22,6 +23,7 @@ export function initExamples(initCount) {
22
23
  updateMinDateExample();
23
24
  validityExample();
24
25
  inDialogExample();
26
+ inDrawerExample();
25
27
  localizationExample();
26
28
  resetStateExample();
27
29
  } catch (error) {
@@ -1759,6 +1759,63 @@ export function inDialogExample() {
1759
1759
  <!-- AURO-GENERATED-CONTENT:END -->
1760
1760
  </auro-accordion>
1761
1761
 
1762
+ ### Datepicker in Drawer
1763
+
1764
+ The following example demonstrates the use of `<auro-datepicker>` within an `<auro-drawer>` component.
1765
+
1766
+ <div class="exampleWrapper">
1767
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/in-drawer.html) -->
1768
+ <!-- The below content is automatically added from ./../apiExamples/in-drawer.html -->
1769
+ <div>
1770
+ <auro-button id="datepicker-drawer-opener">Datepicker in Drawer</auro-button>
1771
+ <auro-drawer id="datepicker-drawer">
1772
+ <span slot="header">Datepicker in Drawer</span>
1773
+ <div slot="content">
1774
+ <auro-datepicker>
1775
+ <span slot="bib.fullscreen.headline">inDrawer Example</span>
1776
+ </auro-datepicker>
1777
+ </div>
1778
+ </auro-drawer>
1779
+ </div>
1780
+ <!-- AURO-GENERATED-CONTENT:END -->
1781
+ </div>
1782
+ <auro-accordion alignRight>
1783
+ <span slot="trigger">See code</span>
1784
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/in-drawer.html) -->
1785
+ <!-- The below code snippet is automatically added from ./../apiExamples/in-drawer.html -->
1786
+
1787
+ ```html
1788
+ <div>
1789
+ <auro-button id="datepicker-drawer-opener">Datepicker in Drawer</auro-button>
1790
+ <auro-drawer id="datepicker-drawer">
1791
+ <span slot="header">Datepicker in Drawer</span>
1792
+ <div slot="content">
1793
+ <auro-datepicker>
1794
+ <span slot="bib.fullscreen.headline">inDrawer Example</span>
1795
+ </auro-datepicker>
1796
+ </div>
1797
+ </auro-drawer>
1798
+ </div>
1799
+ ```
1800
+ <!-- AURO-GENERATED-CONTENT:END -->
1801
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/in-drawer.js) -->
1802
+ <!-- The below code snippet is automatically added from ./../apiExamples/in-drawer.js -->
1803
+
1804
+ ```js
1805
+ export function inDrawerExample() {
1806
+ document.querySelector("#datepicker-drawer-opener").addEventListener("click", () => {
1807
+ const drawer = document.querySelector("#datepicker-drawer");
1808
+ if (drawer.hasAttribute('open')) {
1809
+ drawer.removeAttribute('open');
1810
+ } else {
1811
+ drawer.setAttribute('open', true);
1812
+ }
1813
+ });
1814
+ };
1815
+ ```
1816
+ <!-- AURO-GENERATED-CONTENT:END -->
1817
+ </auro-accordion>
1818
+
1762
1819
  ## Restyle Component with CSS Variables
1763
1820
 
1764
1821
  The component may be restyled by changing the values of the following token(s).