@aurodesignsystem-dev/auro-formkit 0.0.0-pr1429.1 → 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 +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 +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 +122 -32
  9. package/components/combobox/demo/index.min.js +121 -19
  10. package/components/combobox/dist/comboboxKeyboardStrategy.d.ts +1 -1
  11. package/components/combobox/dist/index.js +121 -19
  12. package/components/combobox/dist/registered.js +121 -19
  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 +132 -63
  17. package/components/counter/demo/index.min.js +132 -43
  18. package/components/counter/dist/index.js +132 -43
  19. package/components/counter/dist/registered.js +132 -43
  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 -57
  23. package/components/datepicker/demo/api.min.js +123 -106
  24. package/components/datepicker/demo/index.min.js +123 -94
  25. package/components/datepicker/dist/datepickerKeyboardStrategy.d.ts +1 -3
  26. package/components/datepicker/dist/index.js +123 -94
  27. package/components/datepicker/dist/registered.js +123 -94
  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 +116 -25
  32. package/components/dropdown/demo/index.min.js +116 -5
  33. package/components/dropdown/dist/index.js +116 -5
  34. package/components/dropdown/dist/registered.js +116 -5
  35. package/components/form/demo/api.min.js +545 -218
  36. package/components/form/demo/index.min.js +545 -218
  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 +2 -2
  42. package/components/radio/demo/index.min.js +2 -2
  43. package/components/radio/dist/index.js +2 -2
  44. package/components/radio/dist/registered.js +2 -2
  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 -76
  48. package/components/select/demo/api.min.js +129 -35
  49. package/components/select/demo/index.min.js +129 -22
  50. package/components/select/dist/index.js +125 -18
  51. package/components/select/dist/registered.js +125 -18
  52. package/custom-elements.json +3 -27
  53. package/package.json +2 -3
  54. package/components/counter/dist/counterGroupKeyboardStrategy.d.ts +0 -3
@@ -13,7 +13,7 @@ import 'lit-html/directives/unsafe-html.js';
13
13
 
14
14
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
15
15
 
16
- let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
16
+ let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
17
17
 
18
18
  /* eslint-disable jsdoc/require-param */
19
19
 
@@ -1802,6 +1802,7 @@ class AuroFloatingUI {
1802
1802
  this.focusHandler = null;
1803
1803
  this.clickHandler = null;
1804
1804
  this.keyDownHandler = null;
1805
+ this.touchHandler = null;
1805
1806
 
1806
1807
  /**
1807
1808
  * @private
@@ -2219,6 +2220,28 @@ class AuroFloatingUI {
2219
2220
  setTimeout(() => {
2220
2221
  window.addEventListener("click", this.clickHandler);
2221
2222
  }, 0);
2223
+
2224
+ // iOS Safari does not fire `click` on non-interactive elements, so
2225
+ // tapping an inert backdrop never reaches the click handler above.
2226
+ // Mirror the same outside-tap logic with a passive touchstart listener.
2227
+ this.touchHandler = (evt) => {
2228
+ const element = this.element;
2229
+ if (!element?.bib) {
2230
+ return;
2231
+ }
2232
+
2233
+ // fullscreen (modal) dialog handles its own dismissal
2234
+ if (element.bib.hasAttribute("isfullscreen")) {
2235
+ return;
2236
+ }
2237
+
2238
+ const path = evt.composedPath();
2239
+ if (!path.includes(element.trigger) && !path.includes(element.bib)) {
2240
+ this.hideBib("click");
2241
+ }
2242
+ };
2243
+
2244
+ window.addEventListener("touchstart", this.touchHandler, { passive: true });
2222
2245
  }
2223
2246
 
2224
2247
  cleanupHideHandlers() {
@@ -2234,6 +2257,11 @@ class AuroFloatingUI {
2234
2257
  this.clickHandler = null;
2235
2258
  }
2236
2259
 
2260
+ if (this.touchHandler) {
2261
+ window.removeEventListener("touchstart", this.touchHandler);
2262
+ this.touchHandler = null;
2263
+ }
2264
+
2237
2265
  if (this.keyDownHandler) {
2238
2266
  document.removeEventListener("keydown", this.keyDownHandler);
2239
2267
  this.keyDownHandler = null;
@@ -3026,6 +3054,89 @@ class p{registerComponent(t,a){customElements.get(t)||customElements.define(t,cl
3026
3054
 
3027
3055
  var iconVersion = '9.1.2';
3028
3056
 
3057
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
3058
+ // See LICENSE in the project root for license information.
3059
+
3060
+ // ---------------------------------------------------------------------
3061
+
3062
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
3063
+
3064
+ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
3065
+
3066
+ /* eslint-disable jsdoc/require-param */
3067
+
3068
+ /**
3069
+ * This will register a new custom element with the browser.
3070
+ * @param {String} name - The name of the custom element.
3071
+ * @param {Object} componentClass - The class to register as a custom element.
3072
+ * @returns {void}
3073
+ */
3074
+ registerComponent(name, componentClass) {
3075
+ if (!customElements.get(name)) {
3076
+ customElements.define(name, class extends componentClass {});
3077
+ }
3078
+ }
3079
+
3080
+ /**
3081
+ * Finds and returns the closest HTML Element based on a selector.
3082
+ * @returns {void}
3083
+ */
3084
+ closestElement(
3085
+ selector, // selector like in .closest()
3086
+ base = this, // extra functionality to skip a parent
3087
+ __Closest = (el, found = el && el.closest(selector)) =>
3088
+ !el || el === document || el === window
3089
+ ? null // standard .closest() returns null for non-found selectors also
3090
+ : found
3091
+ ? found // found a selector INside this element
3092
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
3093
+ ) {
3094
+ return __Closest(base);
3095
+ }
3096
+ /* eslint-enable jsdoc/require-param */
3097
+
3098
+ /**
3099
+ * 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.
3100
+ * @param {Object} elem - The element to check.
3101
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
3102
+ * @returns {void}
3103
+ */
3104
+ handleComponentTagRename(elem, tagName) {
3105
+ const tag = tagName.toLowerCase();
3106
+ const elemTag = elem.tagName.toLowerCase();
3107
+
3108
+ if (elemTag !== tag) {
3109
+ elem.setAttribute(tag, true);
3110
+ }
3111
+ }
3112
+
3113
+ /**
3114
+ * Validates if an element is a specific Auro component.
3115
+ * @param {Object} elem - The element to validate.
3116
+ * @param {String} tagName - The name of the Auro component to check against.
3117
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
3118
+ */
3119
+ elementMatch(elem, tagName) {
3120
+ const tag = tagName.toLowerCase();
3121
+ const elemTag = elem.tagName.toLowerCase();
3122
+
3123
+ return elemTag === tag || elem.hasAttribute(tag);
3124
+ }
3125
+
3126
+ /**
3127
+ * Gets the text content of a named slot.
3128
+ * @returns {String}
3129
+ * @private
3130
+ */
3131
+ getSlotText(elem, name) {
3132
+ const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
3133
+ const nodes = slot?.assignedNodes({ flatten: true }) || [];
3134
+ const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
3135
+
3136
+ return text || null;
3137
+ }
3138
+ };
3139
+
3029
3140
  /**
3030
3141
  * Computes display state once per keydown event.
3031
3142
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -3708,7 +3819,7 @@ class AuroHelpText extends LitElement {
3708
3819
  }
3709
3820
  }
3710
3821
 
3711
- var formkitVersion = '202604081945';
3822
+ var formkitVersion = '202604082129';
3712
3823
 
3713
3824
  class AuroElement extends LitElement {
3714
3825
  static get properties() {
@@ -3814,7 +3925,7 @@ class AuroElement extends LitElement {
3814
3925
  }
3815
3926
  }
3816
3927
 
3817
- // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
3928
+ // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
3818
3929
  // See LICENSE in the project root for license information.
3819
3930
 
3820
3931
 
@@ -3919,7 +4030,7 @@ class AuroDropdown extends AuroElement {
3919
4030
  /**
3920
4031
  * @private
3921
4032
  */
3922
- this.runtimeUtils = new AuroLibraryRuntimeUtils$1();
4033
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$2();
3923
4034
 
3924
4035
  /**
3925
4036
  * @private
@@ -4337,7 +4448,7 @@ class AuroDropdown extends AuroElement {
4337
4448
  *
4338
4449
  */
4339
4450
  static register(name = "auro-dropdown") {
4340
- AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4451
+ AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroDropdown);
4341
4452
  }
4342
4453
 
4343
4454
  /**