@aurodesignsystem-dev/auro-formkit 0.0.0-pr1429.0 → 0.0.0-pr1430.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 (54) 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.html +0 -1
  6. package/components/combobox/demo/api.js +1 -3
  7. package/components/combobox/demo/api.md +0 -75
  8. package/components/combobox/demo/api.min.js +120 -30
  9. package/components/combobox/demo/index.min.js +119 -17
  10. package/components/combobox/dist/comboboxKeyboardStrategy.d.ts +1 -1
  11. package/components/combobox/dist/index.js +119 -17
  12. package/components/combobox/dist/registered.js +119 -17
  13. package/components/counter/demo/api.html +0 -3
  14. package/components/counter/demo/api.js +0 -4
  15. package/components/counter/demo/api.md +0 -130
  16. package/components/counter/demo/api.min.js +129 -58
  17. package/components/counter/demo/index.min.js +129 -38
  18. package/components/counter/dist/index.js +129 -38
  19. package/components/counter/dist/registered.js +129 -38
  20. package/components/datepicker/demo/api.html +0 -1
  21. package/components/datepicker/demo/api.js +0 -2
  22. package/components/datepicker/demo/api.md +0 -55
  23. package/components/datepicker/demo/api.min.js +121 -102
  24. package/components/datepicker/demo/index.min.js +121 -90
  25. package/components/datepicker/dist/datepickerKeyboardStrategy.d.ts +1 -3
  26. package/components/datepicker/dist/index.js +121 -90
  27. package/components/datepicker/dist/registered.js +121 -90
  28. package/components/dropdown/demo/api.html +0 -1
  29. package/components/dropdown/demo/api.js +0 -2
  30. package/components/dropdown/demo/api.md +0 -95
  31. package/components/dropdown/demo/api.min.js +115 -24
  32. package/components/dropdown/demo/index.min.js +115 -4
  33. package/components/dropdown/dist/index.js +115 -4
  34. package/components/dropdown/dist/registered.js +115 -4
  35. package/components/form/demo/api.min.js +533 -201
  36. package/components/form/demo/index.min.js +533 -201
  37. package/components/input/demo/api.min.js +1 -1
  38. package/components/input/demo/index.min.js +1 -1
  39. package/components/input/dist/index.js +1 -1
  40. package/components/input/dist/registered.js +1 -1
  41. package/components/radio/demo/api.min.js +1 -1
  42. package/components/radio/demo/index.min.js +1 -1
  43. package/components/radio/dist/index.js +1 -1
  44. package/components/radio/dist/registered.js +1 -1
  45. package/components/select/demo/api.html +0 -1
  46. package/components/select/demo/api.js +0 -2
  47. package/components/select/demo/api.md +0 -79
  48. package/components/select/demo/api.min.js +127 -35
  49. package/components/select/demo/index.min.js +127 -19
  50. package/components/select/dist/index.js +123 -15
  51. package/components/select/dist/registered.js +123 -15
  52. package/custom-elements.json +3 -27
  53. package/package.json +2 -3
  54. package/components/counter/dist/counterGroupKeyboardStrategy.d.ts +0 -3
@@ -1687,7 +1687,7 @@ class AuroHelpText extends i$2 {
1687
1687
  }
1688
1688
  }
1689
1689
 
1690
- var formkitVersion = '202604081917';
1690
+ var formkitVersion = '202604082129';
1691
1691
 
1692
1692
  // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1693
1693
  // See LICENSE in the project root for license information.
@@ -1679,7 +1679,7 @@ class AuroHelpText extends i$2 {
1679
1679
  }
1680
1680
  }
1681
1681
 
1682
- var formkitVersion = '202604081917';
1682
+ var formkitVersion = '202604082129';
1683
1683
 
1684
1684
  // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1685
1685
  // See LICENSE in the project root for license information.
@@ -1632,7 +1632,7 @@ class AuroHelpText extends LitElement {
1632
1632
  }
1633
1633
  }
1634
1634
 
1635
- var formkitVersion = '202604081917';
1635
+ var formkitVersion = '202604082129';
1636
1636
 
1637
1637
  // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1638
1638
  // See LICENSE in the project root for license information.
@@ -1632,7 +1632,7 @@ class AuroHelpText extends LitElement {
1632
1632
  }
1633
1633
  }
1634
1634
 
1635
- var formkitVersion = '202604081917';
1635
+ var formkitVersion = '202604082129';
1636
1636
 
1637
1637
  // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
1638
1638
  // See LICENSE in the project root for license information.
@@ -54,7 +54,6 @@
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-icon@latest/+esm" type="module"></script>
56
56
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-dialog@latest/+esm" type="module"></script>
57
- <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-drawer@latest/+esm" type="module"></script>
58
57
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-loader@latest/+esm" type="module"></script>
59
58
 
60
59
  <script type="module" data-demo-script="true">
@@ -5,7 +5,6 @@ import { resetStateExample } from '../apiExamples/reset-state';
5
5
  import { setupExternalSelectionExample } from '../apiExamples/external-selection';
6
6
  import { valueExample } from '../apiExamples/value';
7
7
  import { inDialogExample } from '../apiExamples/in-dialog';
8
- import { inDrawerExample } from '../apiExamples/in-drawer';
9
8
  import { persistentExample } from '../apiExamples/persistent';
10
9
  import { swapValueExample } from '../apiExamples/swap-value';
11
10
 
@@ -23,8 +22,7 @@ export function initExamples(initCount) {
23
22
  resetStateExample();
24
23
  setupExternalSelectionExample();
25
24
  valueExample();
26
- inDialogExample();
27
- inDrawerExample();
25
+ inDialogExample();
28
26
  persistentExample();
29
27
  swapValueExample();
30
28
  } catch (err) {
@@ -2097,81 +2097,6 @@ export function inDialogExample() {
2097
2097
  <!-- AURO-GENERATED-CONTENT:END -->
2098
2098
  </auro-accordion>
2099
2099
 
2100
- ### In Drawer
2101
-
2102
- Example use of component within an `auro-drawer`.
2103
-
2104
- <div class="exampleWrapper">
2105
- <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/in-drawer.html) -->
2106
- <!-- The below content is automatically added from ./../apiExamples/in-drawer.html -->
2107
- <div>
2108
- <auro-button id="combobox-drawer-opener">Combobox in Drawer</auro-button>
2109
- <auro-drawer id="combobox-drawer">
2110
- <span slot="header">Combobox in Drawer</span>
2111
- <div slot="content">
2112
- <auro-combobox>
2113
- <span slot="bib.fullscreen.headline">Bib Header</span>
2114
- <span slot="label">Name</span>
2115
- <auro-menu>
2116
- <auro-menuoption value="Apples" id="option-0">Apples</auro-menuoption>
2117
- <auro-menuoption value="Oranges" id="option-1">Oranges</auro-menuoption>
2118
- <auro-menuoption value="Peaches" id="option-2">Peaches</auro-menuoption>
2119
- <auro-menuoption value="Grapes" id="option-3">Grapes</auro-menuoption>
2120
- <auro-menuoption value="Cherries" id="option-4">Cherries</auro-menuoption>
2121
- <auro-menuoption static nomatch>No matching option</auro-menuoption>
2122
- </auro-menu>
2123
- </auro-combobox>
2124
- </div>
2125
- </auro-drawer>
2126
- </div>
2127
- <!-- AURO-GENERATED-CONTENT:END -->
2128
- </div>
2129
- <auro-accordion alignRight>
2130
- <span slot="trigger">See code</span>
2131
- <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/in-drawer.html) -->
2132
- <!-- The below code snippet is automatically added from ./../apiExamples/in-drawer.html -->
2133
-
2134
- ```html
2135
- <div>
2136
- <auro-button id="combobox-drawer-opener">Combobox in Drawer</auro-button>
2137
- <auro-drawer id="combobox-drawer">
2138
- <span slot="header">Combobox in Drawer</span>
2139
- <div slot="content">
2140
- <auro-combobox>
2141
- <span slot="bib.fullscreen.headline">Bib Header</span>
2142
- <span slot="label">Name</span>
2143
- <auro-menu>
2144
- <auro-menuoption value="Apples" id="option-0">Apples</auro-menuoption>
2145
- <auro-menuoption value="Oranges" id="option-1">Oranges</auro-menuoption>
2146
- <auro-menuoption value="Peaches" id="option-2">Peaches</auro-menuoption>
2147
- <auro-menuoption value="Grapes" id="option-3">Grapes</auro-menuoption>
2148
- <auro-menuoption value="Cherries" id="option-4">Cherries</auro-menuoption>
2149
- <auro-menuoption static nomatch>No matching option</auro-menuoption>
2150
- </auro-menu>
2151
- </auro-combobox>
2152
- </div>
2153
- </auro-drawer>
2154
- </div>
2155
- ```
2156
- <!-- AURO-GENERATED-CONTENT:END -->
2157
- <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/in-drawer.js) -->
2158
- <!-- The below code snippet is automatically added from ./../apiExamples/in-drawer.js -->
2159
-
2160
- ```js
2161
- export function inDrawerExample() {
2162
- document.querySelector("#combobox-drawer-opener").addEventListener("click", () => {
2163
- const drawer = document.querySelector("#combobox-drawer");
2164
- if (drawer.hasAttribute('open')) {
2165
- drawer.removeAttribute('open');
2166
- } else {
2167
- drawer.setAttribute('open', true);
2168
- }
2169
- });
2170
- };
2171
- ```
2172
- <!-- AURO-GENERATED-CONTENT:END -->
2173
- </auro-accordion>
2174
-
2175
2100
  ### Persistent Menu Option with a Custom Event
2176
2101
 
2177
2102
  This example demonstrates a static menu option that will always appears regardless of the suggestion filtering performed. In this example "Add new address" will always be a displayed menu option.
@@ -52,17 +52,6 @@ function inDialogExample() {
52
52
  });
53
53
  }
54
54
 
55
- function inDrawerExample() {
56
- document.querySelector("#combobox-drawer-opener").addEventListener("click", () => {
57
- const drawer = document.querySelector("#combobox-drawer");
58
- if (drawer.hasAttribute('open')) {
59
- drawer.removeAttribute('open');
60
- } else {
61
- drawer.setAttribute('open', true);
62
- }
63
- });
64
- }
65
-
66
55
  function persistentExample() {
67
56
  const persistentExample = document.querySelector('#persistent');
68
57
 
@@ -1432,19 +1421,10 @@ const comboboxKeyboardStrategy = {
1432
1421
  }
1433
1422
  },
1434
1423
 
1435
- Escape(component, evt, ctx) {
1436
- // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups
1437
- evt.stopPropagation();
1438
-
1439
- if (!ctx.isExpanded) {
1440
- return;
1441
- }
1442
-
1443
- if (ctx.isModal) {
1424
+ Escape(component, _evt, ctx) {
1425
+ if (ctx.isExpanded && ctx.isModal) {
1444
1426
  component.setTriggerInputFocus();
1445
1427
  }
1446
-
1447
- component.hideBib();
1448
1428
  },
1449
1429
 
1450
1430
  Home(component, evt, ctx) {
@@ -1505,7 +1485,7 @@ const comboboxKeyboardStrategy = {
1505
1485
 
1506
1486
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1507
1487
 
1508
- let AuroLibraryRuntimeUtils$1$2 = class AuroLibraryRuntimeUtils {
1488
+ let AuroLibraryRuntimeUtils$2$1 = class AuroLibraryRuntimeUtils {
1509
1489
 
1510
1490
  /* eslint-disable jsdoc/require-param */
1511
1491
 
@@ -3294,6 +3274,7 @@ class AuroFloatingUI {
3294
3274
  this.focusHandler = null;
3295
3275
  this.clickHandler = null;
3296
3276
  this.keyDownHandler = null;
3277
+ this.touchHandler = null;
3297
3278
 
3298
3279
  /**
3299
3280
  * @private
@@ -3711,6 +3692,28 @@ class AuroFloatingUI {
3711
3692
  setTimeout(() => {
3712
3693
  window.addEventListener("click", this.clickHandler);
3713
3694
  }, 0);
3695
+
3696
+ // iOS Safari does not fire `click` on non-interactive elements, so
3697
+ // tapping an inert backdrop never reaches the click handler above.
3698
+ // Mirror the same outside-tap logic with a passive touchstart listener.
3699
+ this.touchHandler = (evt) => {
3700
+ const element = this.element;
3701
+ if (!element?.bib) {
3702
+ return;
3703
+ }
3704
+
3705
+ // fullscreen (modal) dialog handles its own dismissal
3706
+ if (element.bib.hasAttribute("isfullscreen")) {
3707
+ return;
3708
+ }
3709
+
3710
+ const path = evt.composedPath();
3711
+ if (!path.includes(element.trigger) && !path.includes(element.bib)) {
3712
+ this.hideBib("click");
3713
+ }
3714
+ };
3715
+
3716
+ window.addEventListener("touchstart", this.touchHandler, { passive: true });
3714
3717
  }
3715
3718
 
3716
3719
  cleanupHideHandlers() {
@@ -3726,6 +3729,11 @@ class AuroFloatingUI {
3726
3729
  this.clickHandler = null;
3727
3730
  }
3728
3731
 
3732
+ if (this.touchHandler) {
3733
+ window.removeEventListener("touchstart", this.touchHandler);
3734
+ this.touchHandler = null;
3735
+ }
3736
+
3729
3737
  if (this.keyDownHandler) {
3730
3738
  document.removeEventListener("keydown", this.keyDownHandler);
3731
3739
  this.keyDownHandler = null;
@@ -4518,6 +4526,89 @@ let p$4 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
4518
4526
 
4519
4527
  var iconVersion$3 = '9.1.2';
4520
4528
 
4529
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
4530
+ // See LICENSE in the project root for license information.
4531
+
4532
+ // ---------------------------------------------------------------------
4533
+
4534
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
4535
+
4536
+ let AuroLibraryRuntimeUtils$1$2 = class AuroLibraryRuntimeUtils {
4537
+
4538
+ /* eslint-disable jsdoc/require-param */
4539
+
4540
+ /**
4541
+ * This will register a new custom element with the browser.
4542
+ * @param {String} name - The name of the custom element.
4543
+ * @param {Object} componentClass - The class to register as a custom element.
4544
+ * @returns {void}
4545
+ */
4546
+ registerComponent(name, componentClass) {
4547
+ if (!customElements.get(name)) {
4548
+ customElements.define(name, class extends componentClass {});
4549
+ }
4550
+ }
4551
+
4552
+ /**
4553
+ * Finds and returns the closest HTML Element based on a selector.
4554
+ * @returns {void}
4555
+ */
4556
+ closestElement(
4557
+ selector, // selector like in .closest()
4558
+ base = this, // extra functionality to skip a parent
4559
+ __Closest = (el, found = el && el.closest(selector)) =>
4560
+ !el || el === document || el === window
4561
+ ? null // standard .closest() returns null for non-found selectors also
4562
+ : found
4563
+ ? found // found a selector INside this element
4564
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
4565
+ ) {
4566
+ return __Closest(base);
4567
+ }
4568
+ /* eslint-enable jsdoc/require-param */
4569
+
4570
+ /**
4571
+ * 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.
4572
+ * @param {Object} elem - The element to check.
4573
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
4574
+ * @returns {void}
4575
+ */
4576
+ handleComponentTagRename(elem, tagName) {
4577
+ const tag = tagName.toLowerCase();
4578
+ const elemTag = elem.tagName.toLowerCase();
4579
+
4580
+ if (elemTag !== tag) {
4581
+ elem.setAttribute(tag, true);
4582
+ }
4583
+ }
4584
+
4585
+ /**
4586
+ * Validates if an element is a specific Auro component.
4587
+ * @param {Object} elem - The element to validate.
4588
+ * @param {String} tagName - The name of the Auro component to check against.
4589
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
4590
+ */
4591
+ elementMatch(elem, tagName) {
4592
+ const tag = tagName.toLowerCase();
4593
+ const elemTag = elem.tagName.toLowerCase();
4594
+
4595
+ return elemTag === tag || elem.hasAttribute(tag);
4596
+ }
4597
+
4598
+ /**
4599
+ * Gets the text content of a named slot.
4600
+ * @returns {String}
4601
+ * @private
4602
+ */
4603
+ getSlotText(elem, name) {
4604
+ const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
4605
+ const nodes = slot?.assignedNodes({ flatten: true }) || [];
4606
+ const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
4607
+
4608
+ return text || null;
4609
+ }
4610
+ };
4611
+
4521
4612
  /**
4522
4613
  * Computes display state once per keydown event.
4523
4614
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -5200,7 +5291,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
5200
5291
  }
5201
5292
  };
5202
5293
 
5203
- var formkitVersion$2 = '202604081917';
5294
+ var formkitVersion$2 = '202604082129';
5204
5295
 
5205
5296
  let AuroElement$2 = class AuroElement extends i$4 {
5206
5297
  static get properties() {
@@ -5411,7 +5502,7 @@ class AuroDropdown extends AuroElement$2 {
5411
5502
  /**
5412
5503
  * @private
5413
5504
  */
5414
- this.runtimeUtils = new AuroLibraryRuntimeUtils$1$2();
5505
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$2$1();
5415
5506
 
5416
5507
  /**
5417
5508
  * @private
@@ -5829,7 +5920,7 @@ class AuroDropdown extends AuroElement$2 {
5829
5920
  *
5830
5921
  */
5831
5922
  static register(name = "auro-dropdown") {
5832
- AuroLibraryRuntimeUtils$1$2.prototype.registerComponent(name, AuroDropdown);
5923
+ AuroLibraryRuntimeUtils$2$1.prototype.registerComponent(name, AuroDropdown);
5833
5924
  }
5834
5925
 
5835
5926
  /**
@@ -12964,7 +13055,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
12964
13055
  }
12965
13056
  };
12966
13057
 
12967
- var formkitVersion$1 = '202604081917';
13058
+ var formkitVersion$1 = '202604082129';
12968
13059
 
12969
13060
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12970
13061
  // See LICENSE in the project root for license information.
@@ -14029,7 +14120,7 @@ class AuroBibtemplate extends i$4 {
14029
14120
  }
14030
14121
  }
14031
14122
 
14032
- var formkitVersion = '202604081917';
14123
+ var formkitVersion = '202604082129';
14033
14124
 
14034
14125
  var styleCss$3 = i$7`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
14035
14126
 
@@ -18029,8 +18120,7 @@ function initExamples(initCount) {
18029
18120
  resetStateExample();
18030
18121
  setupExternalSelectionExample();
18031
18122
  valueExample();
18032
- inDialogExample();
18033
- inDrawerExample();
18123
+ inDialogExample();
18034
18124
  persistentExample();
18035
18125
  swapValueExample();
18036
18126
  } catch (err) {
@@ -1344,19 +1344,10 @@ const comboboxKeyboardStrategy = {
1344
1344
  }
1345
1345
  },
1346
1346
 
1347
- Escape(component, evt, ctx) {
1348
- // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups
1349
- evt.stopPropagation();
1350
-
1351
- if (!ctx.isExpanded) {
1352
- return;
1353
- }
1354
-
1355
- if (ctx.isModal) {
1347
+ Escape(component, _evt, ctx) {
1348
+ if (ctx.isExpanded && ctx.isModal) {
1356
1349
  component.setTriggerInputFocus();
1357
1350
  }
1358
-
1359
- component.hideBib();
1360
1351
  },
1361
1352
 
1362
1353
  Home(component, evt, ctx) {
@@ -1417,7 +1408,7 @@ const comboboxKeyboardStrategy = {
1417
1408
 
1418
1409
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1419
1410
 
1420
- let AuroLibraryRuntimeUtils$1$2 = class AuroLibraryRuntimeUtils {
1411
+ let AuroLibraryRuntimeUtils$2$1 = class AuroLibraryRuntimeUtils {
1421
1412
 
1422
1413
  /* eslint-disable jsdoc/require-param */
1423
1414
 
@@ -3206,6 +3197,7 @@ class AuroFloatingUI {
3206
3197
  this.focusHandler = null;
3207
3198
  this.clickHandler = null;
3208
3199
  this.keyDownHandler = null;
3200
+ this.touchHandler = null;
3209
3201
 
3210
3202
  /**
3211
3203
  * @private
@@ -3623,6 +3615,28 @@ class AuroFloatingUI {
3623
3615
  setTimeout(() => {
3624
3616
  window.addEventListener("click", this.clickHandler);
3625
3617
  }, 0);
3618
+
3619
+ // iOS Safari does not fire `click` on non-interactive elements, so
3620
+ // tapping an inert backdrop never reaches the click handler above.
3621
+ // Mirror the same outside-tap logic with a passive touchstart listener.
3622
+ this.touchHandler = (evt) => {
3623
+ const element = this.element;
3624
+ if (!element?.bib) {
3625
+ return;
3626
+ }
3627
+
3628
+ // fullscreen (modal) dialog handles its own dismissal
3629
+ if (element.bib.hasAttribute("isfullscreen")) {
3630
+ return;
3631
+ }
3632
+
3633
+ const path = evt.composedPath();
3634
+ if (!path.includes(element.trigger) && !path.includes(element.bib)) {
3635
+ this.hideBib("click");
3636
+ }
3637
+ };
3638
+
3639
+ window.addEventListener("touchstart", this.touchHandler, { passive: true });
3626
3640
  }
3627
3641
 
3628
3642
  cleanupHideHandlers() {
@@ -3638,6 +3652,11 @@ class AuroFloatingUI {
3638
3652
  this.clickHandler = null;
3639
3653
  }
3640
3654
 
3655
+ if (this.touchHandler) {
3656
+ window.removeEventListener("touchstart", this.touchHandler);
3657
+ this.touchHandler = null;
3658
+ }
3659
+
3641
3660
  if (this.keyDownHandler) {
3642
3661
  document.removeEventListener("keydown", this.keyDownHandler);
3643
3662
  this.keyDownHandler = null;
@@ -4430,6 +4449,89 @@ let p$4 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
4430
4449
 
4431
4450
  var iconVersion$3 = '9.1.2';
4432
4451
 
4452
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
4453
+ // See LICENSE in the project root for license information.
4454
+
4455
+ // ---------------------------------------------------------------------
4456
+
4457
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
4458
+
4459
+ let AuroLibraryRuntimeUtils$1$2 = class AuroLibraryRuntimeUtils {
4460
+
4461
+ /* eslint-disable jsdoc/require-param */
4462
+
4463
+ /**
4464
+ * This will register a new custom element with the browser.
4465
+ * @param {String} name - The name of the custom element.
4466
+ * @param {Object} componentClass - The class to register as a custom element.
4467
+ * @returns {void}
4468
+ */
4469
+ registerComponent(name, componentClass) {
4470
+ if (!customElements.get(name)) {
4471
+ customElements.define(name, class extends componentClass {});
4472
+ }
4473
+ }
4474
+
4475
+ /**
4476
+ * Finds and returns the closest HTML Element based on a selector.
4477
+ * @returns {void}
4478
+ */
4479
+ closestElement(
4480
+ selector, // selector like in .closest()
4481
+ base = this, // extra functionality to skip a parent
4482
+ __Closest = (el, found = el && el.closest(selector)) =>
4483
+ !el || el === document || el === window
4484
+ ? null // standard .closest() returns null for non-found selectors also
4485
+ : found
4486
+ ? found // found a selector INside this element
4487
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
4488
+ ) {
4489
+ return __Closest(base);
4490
+ }
4491
+ /* eslint-enable jsdoc/require-param */
4492
+
4493
+ /**
4494
+ * 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.
4495
+ * @param {Object} elem - The element to check.
4496
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
4497
+ * @returns {void}
4498
+ */
4499
+ handleComponentTagRename(elem, tagName) {
4500
+ const tag = tagName.toLowerCase();
4501
+ const elemTag = elem.tagName.toLowerCase();
4502
+
4503
+ if (elemTag !== tag) {
4504
+ elem.setAttribute(tag, true);
4505
+ }
4506
+ }
4507
+
4508
+ /**
4509
+ * Validates if an element is a specific Auro component.
4510
+ * @param {Object} elem - The element to validate.
4511
+ * @param {String} tagName - The name of the Auro component to check against.
4512
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
4513
+ */
4514
+ elementMatch(elem, tagName) {
4515
+ const tag = tagName.toLowerCase();
4516
+ const elemTag = elem.tagName.toLowerCase();
4517
+
4518
+ return elemTag === tag || elem.hasAttribute(tag);
4519
+ }
4520
+
4521
+ /**
4522
+ * Gets the text content of a named slot.
4523
+ * @returns {String}
4524
+ * @private
4525
+ */
4526
+ getSlotText(elem, name) {
4527
+ const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
4528
+ const nodes = slot?.assignedNodes({ flatten: true }) || [];
4529
+ const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
4530
+
4531
+ return text || null;
4532
+ }
4533
+ };
4534
+
4433
4535
  /**
4434
4536
  * Computes display state once per keydown event.
4435
4537
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -5112,7 +5214,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
5112
5214
  }
5113
5215
  };
5114
5216
 
5115
- var formkitVersion$2 = '202604081917';
5217
+ var formkitVersion$2 = '202604082129';
5116
5218
 
5117
5219
  let AuroElement$2 = class AuroElement extends i$4 {
5118
5220
  static get properties() {
@@ -5323,7 +5425,7 @@ class AuroDropdown extends AuroElement$2 {
5323
5425
  /**
5324
5426
  * @private
5325
5427
  */
5326
- this.runtimeUtils = new AuroLibraryRuntimeUtils$1$2();
5428
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$2$1();
5327
5429
 
5328
5430
  /**
5329
5431
  * @private
@@ -5741,7 +5843,7 @@ class AuroDropdown extends AuroElement$2 {
5741
5843
  *
5742
5844
  */
5743
5845
  static register(name = "auro-dropdown") {
5744
- AuroLibraryRuntimeUtils$1$2.prototype.registerComponent(name, AuroDropdown);
5846
+ AuroLibraryRuntimeUtils$2$1.prototype.registerComponent(name, AuroDropdown);
5745
5847
  }
5746
5848
 
5747
5849
  /**
@@ -12876,7 +12978,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
12876
12978
  }
12877
12979
  };
12878
12980
 
12879
- var formkitVersion$1 = '202604081917';
12981
+ var formkitVersion$1 = '202604082129';
12880
12982
 
12881
12983
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12882
12984
  // See LICENSE in the project root for license information.
@@ -13941,7 +14043,7 @@ class AuroBibtemplate extends i$4 {
13941
14043
  }
13942
14044
  }
13943
14045
 
13944
- var formkitVersion = '202604081917';
14046
+ var formkitVersion = '202604082129';
13945
14047
 
13946
14048
  var styleCss$3 = i$7`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
13947
14049
 
@@ -3,7 +3,7 @@ export namespace comboboxKeyboardStrategy {
3
3
  function ArrowUp(component: any, evt: any, ctx: any): void;
4
4
  function End(component: any, evt: any, ctx: any): void;
5
5
  function Enter(component: any, evt: any, ctx: any): void;
6
- function Escape(component: any, evt: any, ctx: any): void;
6
+ function Escape(component: any, _evt: any, ctx: any): void;
7
7
  function Home(component: any, evt: any, ctx: any): void;
8
8
  function Tab(component: any, evt: any, ctx: any): void;
9
9
  }