@aurodesignsystem-dev/auro-formkit 0.0.0-pr1398.2 → 0.0.0-pr1398.3

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 (61) 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/demo/keyboardBehavior.md +0 -0
  4. package/components/checkbox/dist/index.js +1 -1
  5. package/components/checkbox/dist/registered.js +1 -1
  6. package/components/combobox/demo/api.min.js +129 -166
  7. package/components/combobox/demo/index.min.js +129 -166
  8. package/components/combobox/demo/keyboardBehavior.html +81 -0
  9. package/components/combobox/demo/keyboardBehavior.md +308 -0
  10. package/components/combobox/dist/index.js +87 -134
  11. package/components/combobox/dist/registered.js +87 -134
  12. package/components/counter/demo/api.min.js +157 -160
  13. package/components/counter/demo/index.min.js +157 -160
  14. package/components/counter/demo/keyboardBehavior.html +81 -0
  15. package/components/counter/demo/keyboardBehavior.md +127 -0
  16. package/components/counter/dist/auro-counter.d.ts +0 -7
  17. package/components/counter/dist/index.js +157 -160
  18. package/components/counter/dist/keyboardStrategy.d.ts +4 -0
  19. package/components/counter/dist/registered.js +157 -160
  20. package/components/datepicker/demo/api.min.js +89 -137
  21. package/components/datepicker/demo/index.min.js +89 -137
  22. package/components/datepicker/demo/keyboardBehavior.html +81 -0
  23. package/components/datepicker/demo/keyboardBehavior.md +24 -0
  24. package/components/datepicker/dist/index.js +84 -132
  25. package/components/datepicker/dist/registered.js +84 -132
  26. package/components/dropdown/demo/api.md +0 -1
  27. package/components/dropdown/demo/api.min.js +99 -140
  28. package/components/dropdown/demo/index.md +2 -2
  29. package/components/dropdown/demo/index.min.js +99 -140
  30. package/components/dropdown/demo/keyboardBehavior.html +81 -0
  31. package/components/dropdown/demo/keyboardBehavior.md +77 -0
  32. package/components/dropdown/dist/auro-dropdown.d.ts +0 -8
  33. package/components/dropdown/dist/auro-dropdownBib.d.ts +1 -50
  34. package/components/dropdown/dist/dropdownBibKeyboardStrategy.d.ts +7 -0
  35. package/components/dropdown/dist/index.js +83 -128
  36. package/components/dropdown/dist/registered.js +83 -128
  37. package/components/form/demo/api.min.js +466 -599
  38. package/components/form/demo/index.min.js +466 -599
  39. package/components/form/demo/keyboardBehavior.md +0 -0
  40. package/components/input/demo/api.min.js +1 -1
  41. package/components/input/demo/index.min.js +1 -1
  42. package/components/input/demo/keyboardBehavior.md +0 -0
  43. package/components/input/dist/index.js +1 -1
  44. package/components/input/dist/registered.js +1 -1
  45. package/components/menu/demo/api.min.js +42 -32
  46. package/components/menu/demo/index.min.js +42 -32
  47. package/components/menu/dist/auro-menu.d.ts +3 -11
  48. package/components/menu/dist/index.js +42 -32
  49. package/components/menu/dist/registered.js +42 -32
  50. package/components/radio/demo/api.min.js +1 -1
  51. package/components/radio/demo/index.min.js +1 -1
  52. package/components/radio/dist/index.js +1 -1
  53. package/components/radio/dist/registered.js +1 -1
  54. package/components/select/demo/api.min.js +132 -167
  55. package/components/select/demo/index.min.js +132 -167
  56. package/components/select/demo/keyboardBehavior.html +81 -0
  57. package/components/select/demo/keyboardBehavior.md +246 -0
  58. package/components/select/dist/index.js +90 -135
  59. package/components/select/dist/registered.js +90 -135
  60. package/custom-elements.json +61 -89
  61. package/package.json +2 -2
@@ -9549,7 +9549,7 @@ class AuroBibtemplate extends i$1 {
9549
9549
  }
9550
9550
  }
9551
9551
 
9552
- var formkitVersion$2 = '202603271519';
9552
+ var formkitVersion$2 = '202604012043';
9553
9553
 
9554
9554
  let l$1 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[.]/g,"_"),o}generateTag(o,s,a){const r=this.generateElementName(o,s),i=i$5`${s$5(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1 = class d{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}getSlotText(t,e){const o=t.shadowRoot?.querySelector(`slot[name="${e}"]`),s=(o?.assignedNodes({flatten:true})||[]).map(t=>t.textContent?.trim()).join(" ").trim();return s||null}};let h$4 = class h{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}};var c$3=i$3`:host{color:var(--ds-auro-loader-color)}:host>span{background-color:var(--ds-auro-loader-background-color);border-color:var(--ds-auro-loader-border-color)}:host([onlight]),:host([appearance=brand]){--ds-auro-loader-color: var(--ds-basic-color-brand-primary, #01426a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-loader-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([orbit])>span{--ds-auro-loader-background-color: transparent}:host([orbit])>span:nth-child(1){--ds-auro-loader-border-color: currentcolor;opacity:.25}:host([orbit])>span:nth-child(2){--ds-auro-loader-border-color: currentcolor;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
9555
9555
  `,u$6=i$3`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}:host,:host>span{position:relative}:host{width:2rem;height:2rem;display:inline-block;font-size:0}:host>span{position:absolute;display:inline-block;float:none;top:0;left:0;width:2rem;height:2rem;border-radius:100%;border-style:solid;border-width:0;box-sizing:border-box}:host([xs]),:host([xs])>span{width:1.2rem;height:1.2rem}:host([sm]),:host([sm])>span{width:3rem;height:3rem}:host([md]),:host([md])>span{width:5rem;height:5rem}:host([lg]),:host([lg])>span{width:8rem;height:8rem}:host{--margin: .375rem;--margin-xs: .2rem;--margin-sm: .5rem;--margin-md: .75rem;--margin-lg: 1rem}:host([pulse]),:host([pulse])>span{position:relative}:host([pulse]){width:calc(3rem + var(--margin) * 6);height:calc(1rem + var(--margin) * 2)}:host([pulse])>span{width:1rem;height:1rem;margin:var(--margin);animation:pulse 1.5s ease infinite}:host([pulse][xs]){width:calc(1.95rem + var(--margin-xs) * 6);height:calc(.65rem + var(--margin-xs) * 2)}:host([pulse][xs])>span{margin:var(--margin-xs);width:.65rem;height:.65rem}:host([pulse][sm]){width:calc(6rem + var(--margin-sm) * 6);height:calc(2rem + var(--margin-sm) * 2)}:host([pulse][sm])>span{margin:var(--margin-sm);width:2rem;height:2rem}:host([pulse][md]){width:calc(9rem + var(--margin-md) * 6);height:calc(3rem + var(--margin-md) * 2)}:host([pulse][md])>span{margin:var(--margin-md);width:3rem;height:3rem}:host([pulse][lg]){width:calc(15rem + var(--margin-lg) * 6);height:calc(5rem + var(--margin-lg) * 2)}:host([pulse][lg])>span{margin:var(--margin-lg);width:5rem;height:5rem}:host([pulse])>span:nth-child(1){animation-delay:-.4s}:host([pulse])>span:nth-child(2){animation-delay:-.2s}:host([pulse])>span:nth-child(3){animation-delay:0ms}@keyframes pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}:host([orbit]),:host([orbit])>span{opacity:1}:host([orbit])>span{border-width:5px}:host([orbit])>span:nth-child(2){animation:orbit 2s linear infinite}:host([orbit][sm])>span{border-width:8px}:host([orbit][md])>span{border-width:13px}:host([orbit][lg])>span{border-width:21px}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host([ringworm])>svg{animation:rotate 2s linear infinite;height:100%;width:100%;stroke:currentcolor;stroke-width:8}:host([ringworm]) .path{stroke-dashoffset:0;animation:ringworm 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes ringworm{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}:host([laser]){position:static;width:100%;display:block;height:0;overflow:hidden;font-size:unset}:host([laser])>span{position:fixed;width:100%;height:.25rem;border-radius:0;z-index:100}:host([laser])>span:nth-child(1){border-color:currentcolor;opacity:.25}:host([laser])>span:nth-child(2){border-color:currentcolor;animation:laser 2s linear infinite;opacity:1;width:50%}:host([laser][sm])>span:nth-child(2){width:20%}:host([laser][md])>span:nth-child(2){width:30%}:host([laser][lg])>span:nth-child(2){width:50%;animation-duration:1.5s}:host([laser][xl])>span:nth-child(2){width:80%;animation-duration:1.5s}@keyframes laser{0%{left:-100%}to{left:110%}}:host>.no-animation{display:none}@media (prefers-reduced-motion: reduce){:host{display:flex;align-items:center;justify-content:center}:host>span{opacity:1}:host>.loader{display:none}:host>svg{display:none}:host>.no-animation{display:block}}
@@ -10043,6 +10043,12 @@ if (!customElements.get('auro-formkit-calendar')) {
10043
10043
  * SPDX-License-Identifier: BSD-3-Clause
10044
10044
  */const e$1=()=>new h$1;let h$1 = class h{};const o=new WeakMap,n=e$5(class extends f$4{render(i){return A$4}update(i,[s]){const e=s!==this.G;return e&&void 0!==this.G&&this.rt(void 0),(e||this.lt!==this.ct)&&(this.G=s,this.ht=i.options?.host,this.rt(this.ct=i.element)),A$4}rt(t){if(this.isConnected||(t=void 0),"function"==typeof this.G){const i=this.ht??globalThis;let s=o.get(i);void 0===s&&(s=new WeakMap,o.set(i,s)),void 0!==s.get(this.G)&&this.G.call(this.ht,void 0),s.set(this.G,t),void 0!==t&&this.G.call(this.ht,t);}else this.G.value=t;}get lt(){return "function"==typeof this.G?o.get(this.ht??globalThis)?.get(this.G):this.G?.value}disconnected(){this.lt===this.ct&&this.rt(void 0);}reconnected(){this.rt(this.ct);}});
10045
10045
 
10046
+ /**
10047
+ * @license
10048
+ * Copyright 2017 Google LLC
10049
+ * SPDX-License-Identifier: BSD-3-Clause
10050
+ */class e extends i$4{constructor(i){if(super(i),this.it=A$4,i.type!==t$2.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(r){if(r===A$4||null==r)return this._t=void 0,this.it=r;if(r===E$1)return r;if("string"!=typeof r)throw Error(this.constructor.directiveName+"() called with a non-string value");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName="unsafeHTML",e.resultType=1;
10051
+
10046
10052
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
10047
10053
  // See LICENSE in the project root for license information.
10048
10054
 
@@ -12092,11 +12098,10 @@ class AuroFloatingUI {
12092
12098
  return;
12093
12099
  }
12094
12100
 
12095
- const { activeElement } = document;
12096
12101
  // if focus is still inside of trigger or bib, do not close
12097
12102
  if (
12098
- this.element.contains(activeElement) ||
12099
- this.element.bib?.contains(activeElement)
12103
+ this.element.matches(":focus") ||
12104
+ this.element.matches(":focus-within")
12100
12105
  ) {
12101
12106
  return;
12102
12107
  }
@@ -12935,12 +12940,83 @@ let p$3 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
12935
12940
 
12936
12941
  var iconVersion$2 = '9.1.2';
12937
12942
 
12943
+ /**
12944
+ * Computes display state once per keydown event.
12945
+ * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
12946
+ *
12947
+ * @param {HTMLElement} component - The component with a dropdown reference.
12948
+ * @param {Object} [options] - Optional config.
12949
+ * @param {HTMLElement} [options.dropdown] - Explicit dropdown reference. Falls back to component.dropdown.
12950
+ * @param {Function} [options.inputResolver] - Called with (component, ctx) to resolve the active input element.
12951
+ * @returns {{isExpanded: boolean, isModal: boolean, isPopover: boolean, activeInput: HTMLElement|null}}
12952
+ * isModal and isPopover reflect the display mode (fullscreen vs not) regardless of expanded state.
12953
+ */
12954
+ function createDisplayContext$1(component, options = {}) {
12955
+ const dd = options.dropdown || component.dropdown;
12956
+ // isPopoverVisible reflects as the `open` attribute.
12957
+ // It reports whether the bib is open in any mode (popover or modal).
12958
+ const isExpanded = Boolean(dd && dd.isPopoverVisible);
12959
+ const isFullscreen = Boolean(dd && dd.isBibFullscreen);
12960
+
12961
+ const ctx = {
12962
+ isExpanded,
12963
+ isModal: isFullscreen,
12964
+ isPopover: !isFullscreen,
12965
+ activeInput: null,
12966
+ };
12967
+
12968
+ if (options.inputResolver) {
12969
+ const resolvedInput = options.inputResolver(component, ctx);
12970
+ // Guard against resolvers returning undefined or non-HTMLElement values.
12971
+ ctx.activeInput = resolvedInput instanceof HTMLElement ? resolvedInput : null;
12972
+ }
12973
+
12974
+ return ctx;
12975
+ }
12976
+
12977
+ /**
12978
+ * Wires up a keydown listener that dispatches to strategy[evt.key] or strategy.default.
12979
+ * Handles both sync and async handlers.
12980
+ * @param {HTMLElement} component - The component to attach the listener to.
12981
+ * @param {Object} strategy - Map of key names to handler functions.
12982
+ * @param {Object} [options] - Optional config passed to createDisplayContext.
12983
+ */
12984
+ function applyKeyboardStrategy$1(component, strategy, options = {}) {
12985
+ component.addEventListener('keydown', async (evt) => {
12986
+ const handler = strategy[evt.key] || strategy.default;
12987
+ if (typeof handler === 'function') {
12988
+ const ctx = createDisplayContext$1(component, options);
12989
+ await handler(component, evt, ctx);
12990
+ }
12991
+ });
12992
+ }
12993
+
12938
12994
  var styleCss$2$1 = i$3`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
12939
12995
 
12940
12996
  var colorCss$2 = i$3`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
12941
12997
 
12942
12998
  var tokensCss$1$1 = i$3`:host(:not([ondark])),:host(:not([appearance=inverse])){--ds-auro-dropdown-label-text-color: var(--ds-basic-color-texticon-muted, #676767);--ds-auro-dropdown-trigger-background-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-dropdown-trigger-hover-background-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-dropdown-trigger-container-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-dropdown-trigger-border-color: var(--ds-basic-color-border-bold, #585e67);--ds-auro-dropdown-trigger-outline-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-background-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-dropdownbib-container-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-dropdown-label-text-color: var(--ds-basic-color-texticon-inverse-muted, #ccd2db);--ds-auro-dropdown-trigger-background-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-dropdown-trigger-hover-background-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-dropdown-trigger-container-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-dropdown-trigger-border-color: var(--ds-basic-color-border-inverse, #ffffff);--ds-auro-dropdown-trigger-outline-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-background-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-dropdownbib-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}`;
12943
12999
 
13000
+ /**
13001
+ * Creates a keyboard strategy for dialog-specific key handling.
13002
+ * All other keydown behavior is left to the browser's native bubbling path.
13003
+ * @param {HTMLElement} bib - The dropdown bib element.
13004
+ * @returns {Object} Keyboard handlers keyed by `event.key`.
13005
+ */
13006
+ // eslint-disable-next-line no-unused-vars
13007
+ function createDropdownBibKeyboardStrategy(bib) {
13008
+ return {
13009
+ // eslint-disable-next-line no-unused-vars
13010
+ Enter(_dialog, event) {
13011
+ // Floating UI handles Enter key to open the dropdown
13012
+ },
13013
+ // eslint-disable-next-line no-unused-vars
13014
+ Escape(_dialog, event) {
13015
+ // Floating UI handles Escape key to close the dropdown
13016
+ }
13017
+ };
13018
+ }
13019
+
12944
13020
  // Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12945
13021
  // See LICENSE in the project root for license information.
12946
13022
  /* eslint-disable max-lines */
@@ -13065,26 +13141,11 @@ class AuroDropdownBib extends i$1 {
13065
13141
  },
13066
13142
 
13067
13143
  /**
13068
- * Set by auro-dropdown when a menu option is highlighted via
13069
- * aria-activedescendant. The dialog keyboard bridge checks this
13070
- * flag so that Enter selects the highlighted option instead of
13071
- * activating the focused interactive element (e.g. the trigger
13072
- * button, or the bibtemplate close button in fullscreen).
13144
+ * Tracks whether a menu option is currently highlighted.
13073
13145
  * @private
13074
13146
  */
13075
13147
  hasActiveDescendant: {
13076
13148
  type: Boolean
13077
- },
13078
-
13079
- /**
13080
- * When true, the keyboard bridge allows native Tab behavior
13081
- * instead of intercepting it. Set this for bib consumers
13082
- * (e.g. counter) whose content contains real focusable elements
13083
- * that need native Tab navigation.
13084
- * @private
13085
- */
13086
- nativeFocusableContent: {
13087
- type: Boolean
13088
13149
  }
13089
13150
  };
13090
13151
  }
@@ -13154,7 +13215,7 @@ class AuroDropdownBib extends i$1 {
13154
13215
 
13155
13216
  const dialog = this.shadowRoot.querySelector('dialog');
13156
13217
  this._setupCancelHandler(dialog);
13157
- this._setupKeyboardBridge(dialog);
13218
+ applyKeyboardStrategy$1(dialog, createDropdownBibKeyboardStrategy());
13158
13219
 
13159
13220
  this.dispatchEvent(new CustomEvent('auro-dropdownbib-connected', {
13160
13221
  bubbles: true,
@@ -13181,98 +13242,6 @@ class AuroDropdownBib extends i$1 {
13181
13242
  });
13182
13243
  }
13183
13244
 
13184
- /**
13185
- * showModal() creates a closed focus scope — keyboard events inside
13186
- * the dialog's shadow DOM do NOT bubble out to the combobox/select
13187
- * keydown handlers in the parent shadow DOM. This handler bridges
13188
- * that gap by re-dispatching navigation keys so they cross the
13189
- * shadow boundary and reach the menu navigation logic in the parent
13190
- * component.
13191
- *
13192
- * The trade-off: intercepting these keys means native keyboard
13193
- * behaviors that would normally "just work" must be manually
13194
- * re-implemented here:
13195
- *
13196
- * - Enter on buttons: Custom elements (auro-button) don't get the
13197
- * native Enter→click that <button> provides, so we call .click()
13198
- * directly when Enter is pressed on a button-like element.
13199
- *
13200
- * - Tab: Intercepted and re-dispatched so parent components
13201
- * (select/combobox) can select the active option and close the
13202
- * dialog. The <dialog> provides containment and isolation
13203
- * (inert background, VoiceOver focus trapping, top layer), while
13204
- * the content inside is a role="listbox" navigated via
13205
- * aria-activedescendant (options are not focusable). Tab keyboard
13206
- * behavior follows listbox conventions (select + close) because
13207
- * the dialog's native Tab trap only cycles between the close
13208
- * button and browser chrome.
13209
- *
13210
- * - Escape: The native <dialog> fires a `cancel` event on ESC
13211
- * (handled by _setupCancelHandler), so the re-dispatched Escape
13212
- * is a secondary path for parent components that also listen for
13213
- * Escape keydown.
13214
- *
13215
- * @param {HTMLDialogElement} dialog - The dialog element to attach the keyboard bridge to.
13216
- * @private
13217
- */
13218
- _setupKeyboardBridge(dialog) {
13219
- const navKeys = new Set([
13220
- 'ArrowUp',
13221
- 'ArrowDown',
13222
- 'Enter',
13223
- 'Escape',
13224
- 'Tab'
13225
- ]);
13226
-
13227
- dialog.addEventListener('keydown', (event) => {
13228
- if (!navKeys.has(event.key)) {
13229
- return;
13230
- }
13231
-
13232
- // Custom elements (auro-button) don't get the native Enter→click
13233
- // behavior that <button> has. Find the button in the composed path
13234
- // and click it directly — but only when no menu option is
13235
- // highlighted. In fullscreen mode focus stays on the close button
13236
- // while arrow keys move the active-descendant highlight through
13237
- // the listbox. If the user presses Enter with an option
13238
- // highlighted, the intent is to select that option, not to click
13239
- // the close button. In that case we fall through and bridge the
13240
- // Enter key to the parent component's keyboard strategy.
13241
- if (event.key === 'Enter') {
13242
- if (!this.hasActiveDescendant) {
13243
- const buttonSelector = 'button, [role="button"], auro-button, [auro-button]';
13244
- const btn = event.composedPath().find((el) => el.matches && el.matches(buttonSelector));
13245
- if (btn) {
13246
- event.preventDefault();
13247
- event.stopPropagation();
13248
- btn.click();
13249
- return;
13250
- }
13251
- }
13252
- }
13253
-
13254
- // Allow native Tab when the bib contains focusable content
13255
- // (e.g. counter buttons) that needs normal Tab navigation.
13256
- if (event.key === 'Tab' && this.nativeFocusableContent) {
13257
- return;
13258
- }
13259
-
13260
- event.preventDefault();
13261
- event.stopPropagation();
13262
- const newEvent = new KeyboardEvent('keydown', {
13263
- key: event.key,
13264
- code: event.code,
13265
- shiftKey: event.shiftKey,
13266
- altKey: event.altKey,
13267
- ctrlKey: event.ctrlKey,
13268
- metaKey: event.metaKey,
13269
- bubbles: true,
13270
- composed: true,
13271
- cancelable: true
13272
- });
13273
- this.dispatchEvent(newEvent);
13274
- });
13275
- }
13276
13245
 
13277
13246
  /**
13278
13247
  * Blocks touch-driven page scroll while a fullscreen modal dialog is open.
@@ -13647,7 +13616,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
13647
13616
  }
13648
13617
  };
13649
13618
 
13650
- var formkitVersion$1 = '202603271519';
13619
+ var formkitVersion$1 = '202604012043';
13651
13620
 
13652
13621
  let AuroElement$2 = class AuroElement extends i$1 {
13653
13622
  static get properties() {
@@ -13828,7 +13797,6 @@ class AuroDropdown extends AuroElement$2 {
13828
13797
  this.appearance = 'default';
13829
13798
  this.chevron = false;
13830
13799
  this.disabled = false;
13831
- this.disableFocusTrap = false;
13832
13800
  this.error = false;
13833
13801
  this.tabIndex = 0;
13834
13802
  this.noToggle = false;
@@ -13926,9 +13894,8 @@ class AuroDropdown extends AuroElement$2 {
13926
13894
  // showModal() fires asynchronously via Lit's update cycle, which
13927
13895
  // falls outside the user activation window and causes iOS to
13928
13896
  // dismiss the keyboard.
13929
- if (this.isBibFullscreen && this.bibElement && this.bibElement.value) {
13930
- const useModal = !this.disableFocusTrap;
13931
- this.bibElement.value.open(useModal);
13897
+ if (this.bibElement && this.bibElement.value) {
13898
+ this.bibElement.value.open(this.isBibFullscreen);
13932
13899
  }
13933
13900
  }
13934
13901
 
@@ -14041,14 +14008,6 @@ class AuroDropdown extends AuroElement$2 {
14041
14008
  reflect: true
14042
14009
  },
14043
14010
 
14044
- /**
14045
- * If declared, the focus trap inside of bib will be turned off.
14046
- */
14047
- disableFocusTrap: {
14048
- type: Boolean,
14049
- reflect: true
14050
- },
14051
-
14052
14011
  /**
14053
14012
  * @private
14054
14013
  */
@@ -14322,7 +14281,7 @@ class AuroDropdown extends AuroElement$2 {
14322
14281
  if (this.isPopoverVisible) {
14323
14282
  // Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
14324
14283
  // Desktop: use show() for Floating UI positioning + FocusTrap for focus management
14325
- const useModal = this.isBibFullscreen && !this.disableFocusTrap;
14284
+ const useModal = this.isBibFullscreen;
14326
14285
  this.bibElement.value.open(useModal);
14327
14286
  } else {
14328
14287
  this.bibElement.value.close();
@@ -14332,7 +14291,7 @@ class AuroDropdown extends AuroElement$2 {
14332
14291
  // When fullscreen strategy changes while open, re-open dialog with correct mode
14333
14292
  // (e.g. resizing from desktop → mobile while dropdown is open)
14334
14293
  if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
14335
- const useModal = this.isBibFullscreen && !this.disableFocusTrap;
14294
+ const useModal = this.isBibFullscreen;
14336
14295
  this.bibElement.value.close();
14337
14296
  this.bibElement.value.open(useModal);
14338
14297
  }
@@ -14444,7 +14403,7 @@ class AuroDropdown extends AuroElement$2 {
14444
14403
  * @private
14445
14404
  */
14446
14405
  updateFocusTrap() {
14447
- if (this.isPopoverVisible && !this.disableFocusTrap) {
14406
+ if (this.isPopoverVisible) {
14448
14407
  if (!this.isBibFullscreen) {
14449
14408
  // Desktop: show() doesn't trap focus, so use FocusTrap
14450
14409
  this.focusTrap = new FocusTrap(this.bibContent);
@@ -21411,7 +21370,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
21411
21370
  }
21412
21371
  };
21413
21372
 
21414
- var formkitVersion = '202603271519';
21373
+ var formkitVersion = '202604012043';
21415
21374
 
21416
21375
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
21417
21376
  // See LICENSE in the project root for license information.
@@ -22606,12 +22565,6 @@ function restoreTriggerAfterClose(dropdown, focusTarget) {
22606
22565
  });
22607
22566
  }
22608
22567
 
22609
- /**
22610
- * @license
22611
- * Copyright 2017 Google LLC
22612
- * SPDX-License-Identifier: BSD-3-Clause
22613
- */class e extends i$4{constructor(i){if(super(i),this.it=A$4,i.type!==t$2.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(r){if(r===A$4||null==r)return this._t=void 0,this.it=r;if(r===E$1)return r;if("string"!=typeof r)throw Error(this.constructor.directiveName+"() called with a non-string value");if(r===this.it)return this._t;this.it=r;const s=[r];return s.raw=s,this._t={_$litType$:this.constructor.resultType,strings:s,values:[]}}}e.directiveName="unsafeHTML",e.resultType=1;
22614
-
22615
22568
  /**
22616
22569
  * Computes display state once per keydown event.
22617
22570
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -24580,7 +24533,6 @@ class AuroDatePicker extends AuroElement {
24580
24533
  .size="${this.size}"
24581
24534
  class="${e$4(dropdownElementClassMap)}"
24582
24535
  disableEventShow
24583
- disableFocusTrap
24584
24536
  for="dropdownMenu"
24585
24537
  part="dropdown"
24586
24538
  >