@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
@@ -243,6 +243,17 @@ function inDialogExample() {
243
243
  });
244
244
  }
245
245
 
246
+ function inDrawerExample() {
247
+ document.querySelector("#datepicker-drawer-opener").addEventListener("click", () => {
248
+ const drawer = document.querySelector("#datepicker-drawer");
249
+ if (drawer.hasAttribute('open')) {
250
+ drawer.removeAttribute('open');
251
+ } else {
252
+ drawer.setAttribute('open', true);
253
+ }
254
+ });
255
+ }
256
+
246
257
  function localizationExample() {
247
258
  const localizedDatepicker = document.querySelector("#localizationExample");
248
259
 
@@ -9549,7 +9560,7 @@ class AuroBibtemplate extends i$1 {
9549
9560
  }
9550
9561
  }
9551
9562
 
9552
- var formkitVersion$2 = '202604082129';
9563
+ var formkitVersion$2 = '202604091756';
9553
9564
 
9554
9565
  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
9566
  `,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}}
@@ -10056,7 +10067,7 @@ if (!customElements.get('auro-formkit-calendar')) {
10056
10067
 
10057
10068
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
10058
10069
 
10059
- let AuroLibraryRuntimeUtils$2$1 = class AuroLibraryRuntimeUtils {
10070
+ let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
10060
10071
 
10061
10072
  /* eslint-disable jsdoc/require-param */
10062
10073
 
@@ -13097,89 +13108,6 @@ let p$3 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
13097
13108
 
13098
13109
  var iconVersion$2 = '9.1.2';
13099
13110
 
13100
- // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
13101
- // See LICENSE in the project root for license information.
13102
-
13103
- // ---------------------------------------------------------------------
13104
-
13105
- /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
13106
-
13107
- let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
13108
-
13109
- /* eslint-disable jsdoc/require-param */
13110
-
13111
- /**
13112
- * This will register a new custom element with the browser.
13113
- * @param {String} name - The name of the custom element.
13114
- * @param {Object} componentClass - The class to register as a custom element.
13115
- * @returns {void}
13116
- */
13117
- registerComponent(name, componentClass) {
13118
- if (!customElements.get(name)) {
13119
- customElements.define(name, class extends componentClass {});
13120
- }
13121
- }
13122
-
13123
- /**
13124
- * Finds and returns the closest HTML Element based on a selector.
13125
- * @returns {void}
13126
- */
13127
- closestElement(
13128
- selector, // selector like in .closest()
13129
- base = this, // extra functionality to skip a parent
13130
- __Closest = (el, found = el && el.closest(selector)) =>
13131
- !el || el === document || el === window
13132
- ? null // standard .closest() returns null for non-found selectors also
13133
- : found
13134
- ? found // found a selector INside this element
13135
- : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
13136
- ) {
13137
- return __Closest(base);
13138
- }
13139
- /* eslint-enable jsdoc/require-param */
13140
-
13141
- /**
13142
- * 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.
13143
- * @param {Object} elem - The element to check.
13144
- * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
13145
- * @returns {void}
13146
- */
13147
- handleComponentTagRename(elem, tagName) {
13148
- const tag = tagName.toLowerCase();
13149
- const elemTag = elem.tagName.toLowerCase();
13150
-
13151
- if (elemTag !== tag) {
13152
- elem.setAttribute(tag, true);
13153
- }
13154
- }
13155
-
13156
- /**
13157
- * Validates if an element is a specific Auro component.
13158
- * @param {Object} elem - The element to validate.
13159
- * @param {String} tagName - The name of the Auro component to check against.
13160
- * @returns {Boolean} - Returns true if the element is the specified Auro component.
13161
- */
13162
- elementMatch(elem, tagName) {
13163
- const tag = tagName.toLowerCase();
13164
- const elemTag = elem.tagName.toLowerCase();
13165
-
13166
- return elemTag === tag || elem.hasAttribute(tag);
13167
- }
13168
-
13169
- /**
13170
- * Gets the text content of a named slot.
13171
- * @returns {String}
13172
- * @private
13173
- */
13174
- getSlotText(elem, name) {
13175
- const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
13176
- const nodes = slot?.assignedNodes({ flatten: true }) || [];
13177
- const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
13178
-
13179
- return text || null;
13180
- }
13181
- };
13182
-
13183
13111
  /**
13184
13112
  * Computes display state once per keydown event.
13185
13113
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -13191,7 +13119,7 @@ let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
13191
13119
  * @returns {{isExpanded: boolean, isModal: boolean, isPopover: boolean, activeInput: HTMLElement|null}}
13192
13120
  * isModal and isPopover reflect the display mode (fullscreen vs not) regardless of expanded state.
13193
13121
  */
13194
- function createDisplayContext(component, options = {}) {
13122
+ function createDisplayContext$1(component, options = {}) {
13195
13123
  const dd = options.dropdown || component.dropdown;
13196
13124
  // isPopoverVisible reflects as the `open` attribute.
13197
13125
  // It reports whether the bib is open in any mode (popover or modal).
@@ -13221,11 +13149,11 @@ function createDisplayContext(component, options = {}) {
13221
13149
  * @param {Object} strategy - Map of key names to handler functions.
13222
13150
  * @param {Object} [options] - Optional config passed to createDisplayContext.
13223
13151
  */
13224
- function applyKeyboardStrategy(component, strategy, options = {}) {
13152
+ function applyKeyboardStrategy$1(component, strategy, options = {}) {
13225
13153
  component.addEventListener('keydown', async (evt) => {
13226
13154
  const handler = strategy[evt.key] || strategy.default;
13227
13155
  if (typeof handler === 'function') {
13228
- const ctx = createDisplayContext(component, options);
13156
+ const ctx = createDisplayContext$1(component, options);
13229
13157
  await handler(component, evt, ctx);
13230
13158
  }
13231
13159
  });
@@ -13460,7 +13388,7 @@ class AuroDropdownBib extends i$1 {
13460
13388
 
13461
13389
  const dialog = this.shadowRoot.querySelector('dialog');
13462
13390
  this._setupCancelHandler(dialog);
13463
- applyKeyboardStrategy(dialog, createDropdownBibKeyboardStrategy());
13391
+ applyKeyboardStrategy$1(dialog, createDropdownBibKeyboardStrategy());
13464
13392
 
13465
13393
  this.dispatchEvent(new CustomEvent('auro-dropdownbib-connected', {
13466
13394
  bubbles: true,
@@ -13862,7 +13790,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
13862
13790
  }
13863
13791
  };
13864
13792
 
13865
- var formkitVersion$1 = '202604082129';
13793
+ var formkitVersion$1 = '202604091756';
13866
13794
 
13867
13795
  let AuroElement$2 = class AuroElement extends i$1 {
13868
13796
  static get properties() {
@@ -13968,7 +13896,7 @@ let AuroElement$2 = class AuroElement extends i$1 {
13968
13896
  }
13969
13897
  };
13970
13898
 
13971
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
13899
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
13972
13900
  // See LICENSE in the project root for license information.
13973
13901
 
13974
13902
 
@@ -14073,7 +14001,7 @@ class AuroDropdown extends AuroElement$2 {
14073
14001
  /**
14074
14002
  * @private
14075
14003
  */
14076
- this.runtimeUtils = new AuroLibraryRuntimeUtils$2$1();
14004
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1$1();
14077
14005
 
14078
14006
  /**
14079
14007
  * @private
@@ -14491,7 +14419,7 @@ class AuroDropdown extends AuroElement$2 {
14491
14419
  *
14492
14420
  */
14493
14421
  static register(name = "auro-dropdown") {
14494
- AuroLibraryRuntimeUtils$2$1.prototype.registerComponent(name, AuroDropdown);
14422
+ AuroLibraryRuntimeUtils$1$1.prototype.registerComponent(name, AuroDropdown);
14495
14423
  }
14496
14424
 
14497
14425
  /**
@@ -21626,7 +21554,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
21626
21554
  }
21627
21555
  };
21628
21556
 
21629
- var formkitVersion = '202604082129';
21557
+ var formkitVersion = '202604091756';
21630
21558
 
21631
21559
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
21632
21560
  // See LICENSE in the project root for license information.
@@ -22823,7 +22751,88 @@ function guardTouchPassthrough(element) {
22823
22751
  }, { once: true });
22824
22752
  }
22825
22753
 
22826
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
22754
+ /**
22755
+ * Computes display state once per keydown event.
22756
+ * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
22757
+ *
22758
+ * @param {HTMLElement} component - The component with a dropdown reference.
22759
+ * @param {Object} [options] - Optional config.
22760
+ * @param {HTMLElement} [options.dropdown] - Explicit dropdown reference. Falls back to component.dropdown.
22761
+ * @param {Function} [options.inputResolver] - Called with (component, ctx) to resolve the active input element.
22762
+ * @returns {{isExpanded: boolean, isModal: boolean, isPopover: boolean, activeInput: HTMLElement|null}}
22763
+ * isModal and isPopover reflect the display mode (fullscreen vs not) regardless of expanded state.
22764
+ */
22765
+ function createDisplayContext(component, options = {}) {
22766
+ const dd = options.dropdown || component.dropdown;
22767
+ // isPopoverVisible reflects as the `open` attribute.
22768
+ // It reports whether the bib is open in any mode (popover or modal).
22769
+ const isExpanded = Boolean(dd && dd.isPopoverVisible);
22770
+ const isFullscreen = Boolean(dd && dd.isBibFullscreen);
22771
+
22772
+ const ctx = {
22773
+ isExpanded,
22774
+ isModal: isFullscreen,
22775
+ isPopover: !isFullscreen,
22776
+ activeInput: null,
22777
+ };
22778
+
22779
+ if (options.inputResolver) {
22780
+ const resolvedInput = options.inputResolver(component, ctx);
22781
+ // Guard against resolvers returning undefined or non-HTMLElement values.
22782
+ ctx.activeInput = resolvedInput instanceof HTMLElement ? resolvedInput : null;
22783
+ }
22784
+
22785
+ return ctx;
22786
+ }
22787
+
22788
+ /**
22789
+ * Wires up a keydown listener that dispatches to strategy[evt.key] or strategy.default.
22790
+ * Handles both sync and async handlers.
22791
+ * @param {HTMLElement} component - The component to attach the listener to.
22792
+ * @param {Object} strategy - Map of key names to handler functions.
22793
+ * @param {Object} [options] - Optional config passed to createDisplayContext.
22794
+ */
22795
+ function applyKeyboardStrategy(component, strategy, options = {}) {
22796
+ component.addEventListener('keydown', async (evt) => {
22797
+ const handler = strategy[evt.key] || strategy.default;
22798
+ if (typeof handler === 'function') {
22799
+ const ctx = createDisplayContext(component, options);
22800
+ await handler(component, evt, ctx);
22801
+ }
22802
+ });
22803
+ }
22804
+
22805
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
22806
+ // See LICENSE in the project root for license information.
22807
+
22808
+ // Authoritative datepicker keyboard behavior spec:
22809
+ // components/datepicker/docs/partials/keyboardBehavior.md
22810
+ //
22811
+ // Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
22812
+ // - The bib opens and closes via pointer/touch interaction only.
22813
+ // - Escape closes the bib and prevents the event from reaching parent containers.
22814
+ // - Tab uses the browser's default tabindex sequence across trigger controls.
22815
+ // - Enter and Space do not open or close the bib.
22816
+ //
22817
+ // This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
22818
+ // added, handlers should go here following the same strategy pattern used by
22819
+ // auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
22820
+ const datepickerKeyboardStrategy = {
22821
+ Escape(component, evt) {
22822
+ if (!component.dropdown || !component.dropdown.isPopoverVisible) {
22823
+ return;
22824
+ }
22825
+
22826
+ // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
22827
+ // Because stopPropagation prevents the document-level floatingUI keydown handler from
22828
+ // seeing this event, we must also close the dropdown explicitly.
22829
+ evt.stopPropagation();
22830
+
22831
+ component.dropdown.hide();
22832
+ },
22833
+ };
22834
+
22835
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
22827
22836
  // See LICENSE in the project root for license information.
22828
22837
 
22829
22838
 
@@ -24280,6 +24289,7 @@ class AuroDatePicker extends AuroElement {
24280
24289
  this.configureCalendar();
24281
24290
  this.configureDatepicker();
24282
24291
  this.configureClickHandler();
24292
+ applyKeyboardStrategy(this, datepickerKeyboardStrategy);
24283
24293
  }
24284
24294
 
24285
24295
  connectedCallback() {
@@ -24750,6 +24760,7 @@ function initExamples(initCount) {
24750
24760
  updateMinDateExample();
24751
24761
  validityExample();
24752
24762
  inDialogExample();
24763
+ inDrawerExample();
24753
24764
  localizationExample();
24754
24765
  resetStateExample();
24755
24766
  } catch (error) {
@@ -9290,7 +9290,7 @@ class AuroBibtemplate extends i$1 {
9290
9290
  }
9291
9291
  }
9292
9292
 
9293
- var formkitVersion$2 = '202604082129';
9293
+ var formkitVersion$2 = '202604091756';
9294
9294
 
9295
9295
  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}
9296
9296
  `,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}}
@@ -9797,7 +9797,7 @@ if (!customElements.get('auro-formkit-calendar')) {
9797
9797
 
9798
9798
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
9799
9799
 
9800
- let AuroLibraryRuntimeUtils$2$1 = class AuroLibraryRuntimeUtils {
9800
+ let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
9801
9801
 
9802
9802
  /* eslint-disable jsdoc/require-param */
9803
9803
 
@@ -12838,89 +12838,6 @@ let p$3 = class p{registerComponent(t,a){customElements.get(t)||customElements.d
12838
12838
 
12839
12839
  var iconVersion$2 = '9.1.2';
12840
12840
 
12841
- // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
12842
- // See LICENSE in the project root for license information.
12843
-
12844
- // ---------------------------------------------------------------------
12845
-
12846
- /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
12847
-
12848
- let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
12849
-
12850
- /* eslint-disable jsdoc/require-param */
12851
-
12852
- /**
12853
- * This will register a new custom element with the browser.
12854
- * @param {String} name - The name of the custom element.
12855
- * @param {Object} componentClass - The class to register as a custom element.
12856
- * @returns {void}
12857
- */
12858
- registerComponent(name, componentClass) {
12859
- if (!customElements.get(name)) {
12860
- customElements.define(name, class extends componentClass {});
12861
- }
12862
- }
12863
-
12864
- /**
12865
- * Finds and returns the closest HTML Element based on a selector.
12866
- * @returns {void}
12867
- */
12868
- closestElement(
12869
- selector, // selector like in .closest()
12870
- base = this, // extra functionality to skip a parent
12871
- __Closest = (el, found = el && el.closest(selector)) =>
12872
- !el || el === document || el === window
12873
- ? null // standard .closest() returns null for non-found selectors also
12874
- : found
12875
- ? found // found a selector INside this element
12876
- : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
12877
- ) {
12878
- return __Closest(base);
12879
- }
12880
- /* eslint-enable jsdoc/require-param */
12881
-
12882
- /**
12883
- * 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.
12884
- * @param {Object} elem - The element to check.
12885
- * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
12886
- * @returns {void}
12887
- */
12888
- handleComponentTagRename(elem, tagName) {
12889
- const tag = tagName.toLowerCase();
12890
- const elemTag = elem.tagName.toLowerCase();
12891
-
12892
- if (elemTag !== tag) {
12893
- elem.setAttribute(tag, true);
12894
- }
12895
- }
12896
-
12897
- /**
12898
- * Validates if an element is a specific Auro component.
12899
- * @param {Object} elem - The element to validate.
12900
- * @param {String} tagName - The name of the Auro component to check against.
12901
- * @returns {Boolean} - Returns true if the element is the specified Auro component.
12902
- */
12903
- elementMatch(elem, tagName) {
12904
- const tag = tagName.toLowerCase();
12905
- const elemTag = elem.tagName.toLowerCase();
12906
-
12907
- return elemTag === tag || elem.hasAttribute(tag);
12908
- }
12909
-
12910
- /**
12911
- * Gets the text content of a named slot.
12912
- * @returns {String}
12913
- * @private
12914
- */
12915
- getSlotText(elem, name) {
12916
- const slot = elem.shadowRoot?.querySelector(`slot[name="${name}"]`);
12917
- const nodes = slot?.assignedNodes({ flatten: true }) || [];
12918
- const text = nodes.map(n => n.textContent?.trim()).join(' ').trim();
12919
-
12920
- return text || null;
12921
- }
12922
- };
12923
-
12924
12841
  /**
12925
12842
  * Computes display state once per keydown event.
12926
12843
  * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
@@ -12932,7 +12849,7 @@ let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
12932
12849
  * @returns {{isExpanded: boolean, isModal: boolean, isPopover: boolean, activeInput: HTMLElement|null}}
12933
12850
  * isModal and isPopover reflect the display mode (fullscreen vs not) regardless of expanded state.
12934
12851
  */
12935
- function createDisplayContext(component, options = {}) {
12852
+ function createDisplayContext$1(component, options = {}) {
12936
12853
  const dd = options.dropdown || component.dropdown;
12937
12854
  // isPopoverVisible reflects as the `open` attribute.
12938
12855
  // It reports whether the bib is open in any mode (popover or modal).
@@ -12962,11 +12879,11 @@ function createDisplayContext(component, options = {}) {
12962
12879
  * @param {Object} strategy - Map of key names to handler functions.
12963
12880
  * @param {Object} [options] - Optional config passed to createDisplayContext.
12964
12881
  */
12965
- function applyKeyboardStrategy(component, strategy, options = {}) {
12882
+ function applyKeyboardStrategy$1(component, strategy, options = {}) {
12966
12883
  component.addEventListener('keydown', async (evt) => {
12967
12884
  const handler = strategy[evt.key] || strategy.default;
12968
12885
  if (typeof handler === 'function') {
12969
- const ctx = createDisplayContext(component, options);
12886
+ const ctx = createDisplayContext$1(component, options);
12970
12887
  await handler(component, evt, ctx);
12971
12888
  }
12972
12889
  });
@@ -13201,7 +13118,7 @@ class AuroDropdownBib extends i$1 {
13201
13118
 
13202
13119
  const dialog = this.shadowRoot.querySelector('dialog');
13203
13120
  this._setupCancelHandler(dialog);
13204
- applyKeyboardStrategy(dialog, createDropdownBibKeyboardStrategy());
13121
+ applyKeyboardStrategy$1(dialog, createDropdownBibKeyboardStrategy());
13205
13122
 
13206
13123
  this.dispatchEvent(new CustomEvent('auro-dropdownbib-connected', {
13207
13124
  bubbles: true,
@@ -13603,7 +13520,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
13603
13520
  }
13604
13521
  };
13605
13522
 
13606
- var formkitVersion$1 = '202604082129';
13523
+ var formkitVersion$1 = '202604091756';
13607
13524
 
13608
13525
  let AuroElement$2 = class AuroElement extends i$1 {
13609
13526
  static get properties() {
@@ -13709,7 +13626,7 @@ let AuroElement$2 = class AuroElement extends i$1 {
13709
13626
  }
13710
13627
  };
13711
13628
 
13712
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
13629
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
13713
13630
  // See LICENSE in the project root for license information.
13714
13631
 
13715
13632
 
@@ -13814,7 +13731,7 @@ class AuroDropdown extends AuroElement$2 {
13814
13731
  /**
13815
13732
  * @private
13816
13733
  */
13817
- this.runtimeUtils = new AuroLibraryRuntimeUtils$2$1();
13734
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1$1();
13818
13735
 
13819
13736
  /**
13820
13737
  * @private
@@ -14232,7 +14149,7 @@ class AuroDropdown extends AuroElement$2 {
14232
14149
  *
14233
14150
  */
14234
14151
  static register(name = "auro-dropdown") {
14235
- AuroLibraryRuntimeUtils$2$1.prototype.registerComponent(name, AuroDropdown);
14152
+ AuroLibraryRuntimeUtils$1$1.prototype.registerComponent(name, AuroDropdown);
14236
14153
  }
14237
14154
 
14238
14155
  /**
@@ -21367,7 +21284,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
21367
21284
  }
21368
21285
  };
21369
21286
 
21370
- var formkitVersion = '202604082129';
21287
+ var formkitVersion = '202604091756';
21371
21288
 
21372
21289
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
21373
21290
  // See LICENSE in the project root for license information.
@@ -22564,7 +22481,88 @@ function guardTouchPassthrough(element) {
22564
22481
  }, { once: true });
22565
22482
  }
22566
22483
 
22567
- // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
22484
+ /**
22485
+ * Computes display state once per keydown event.
22486
+ * Centralizes null-safety checks and makes the shared/modal/popover branching explicit.
22487
+ *
22488
+ * @param {HTMLElement} component - The component with a dropdown reference.
22489
+ * @param {Object} [options] - Optional config.
22490
+ * @param {HTMLElement} [options.dropdown] - Explicit dropdown reference. Falls back to component.dropdown.
22491
+ * @param {Function} [options.inputResolver] - Called with (component, ctx) to resolve the active input element.
22492
+ * @returns {{isExpanded: boolean, isModal: boolean, isPopover: boolean, activeInput: HTMLElement|null}}
22493
+ * isModal and isPopover reflect the display mode (fullscreen vs not) regardless of expanded state.
22494
+ */
22495
+ function createDisplayContext(component, options = {}) {
22496
+ const dd = options.dropdown || component.dropdown;
22497
+ // isPopoverVisible reflects as the `open` attribute.
22498
+ // It reports whether the bib is open in any mode (popover or modal).
22499
+ const isExpanded = Boolean(dd && dd.isPopoverVisible);
22500
+ const isFullscreen = Boolean(dd && dd.isBibFullscreen);
22501
+
22502
+ const ctx = {
22503
+ isExpanded,
22504
+ isModal: isFullscreen,
22505
+ isPopover: !isFullscreen,
22506
+ activeInput: null,
22507
+ };
22508
+
22509
+ if (options.inputResolver) {
22510
+ const resolvedInput = options.inputResolver(component, ctx);
22511
+ // Guard against resolvers returning undefined or non-HTMLElement values.
22512
+ ctx.activeInput = resolvedInput instanceof HTMLElement ? resolvedInput : null;
22513
+ }
22514
+
22515
+ return ctx;
22516
+ }
22517
+
22518
+ /**
22519
+ * Wires up a keydown listener that dispatches to strategy[evt.key] or strategy.default.
22520
+ * Handles both sync and async handlers.
22521
+ * @param {HTMLElement} component - The component to attach the listener to.
22522
+ * @param {Object} strategy - Map of key names to handler functions.
22523
+ * @param {Object} [options] - Optional config passed to createDisplayContext.
22524
+ */
22525
+ function applyKeyboardStrategy(component, strategy, options = {}) {
22526
+ component.addEventListener('keydown', async (evt) => {
22527
+ const handler = strategy[evt.key] || strategy.default;
22528
+ if (typeof handler === 'function') {
22529
+ const ctx = createDisplayContext(component, options);
22530
+ await handler(component, evt, ctx);
22531
+ }
22532
+ });
22533
+ }
22534
+
22535
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
22536
+ // See LICENSE in the project root for license information.
22537
+
22538
+ // Authoritative datepicker keyboard behavior spec:
22539
+ // components/datepicker/docs/partials/keyboardBehavior.md
22540
+ //
22541
+ // Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
22542
+ // - The bib opens and closes via pointer/touch interaction only.
22543
+ // - Escape closes the bib and prevents the event from reaching parent containers.
22544
+ // - Tab uses the browser's default tabindex sequence across trigger controls.
22545
+ // - Enter and Space do not open or close the bib.
22546
+ //
22547
+ // This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
22548
+ // added, handlers should go here following the same strategy pattern used by
22549
+ // auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
22550
+ const datepickerKeyboardStrategy = {
22551
+ Escape(component, evt) {
22552
+ if (!component.dropdown || !component.dropdown.isPopoverVisible) {
22553
+ return;
22554
+ }
22555
+
22556
+ // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
22557
+ // Because stopPropagation prevents the document-level floatingUI keydown handler from
22558
+ // seeing this event, we must also close the dropdown explicitly.
22559
+ evt.stopPropagation();
22560
+
22561
+ component.dropdown.hide();
22562
+ },
22563
+ };
22564
+
22565
+ // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
22568
22566
  // See LICENSE in the project root for license information.
22569
22567
 
22570
22568
 
@@ -24021,6 +24019,7 @@ class AuroDatePicker extends AuroElement {
24021
24019
  this.configureCalendar();
24022
24020
  this.configureDatepicker();
24023
24021
  this.configureClickHandler();
24022
+ applyKeyboardStrategy(this, datepickerKeyboardStrategy);
24024
24023
  }
24025
24024
 
24026
24025
  connectedCallback() {
@@ -1 +1,3 @@
1
- export const datepickerKeyboardStrategy: {};
1
+ export namespace datepickerKeyboardStrategy {
2
+ function Escape(component: any, evt: any): void;
3
+ }