@aurodesignsystem-dev/auro-formkit 0.0.0-pr1497.6 → 0.0.0-pr1498.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/components/checkbox/demo/customize.min.js +2 -2
  2. package/components/checkbox/demo/getting-started.min.js +2 -2
  3. package/components/checkbox/demo/index.min.js +2 -2
  4. package/components/checkbox/dist/index.js +2 -2
  5. package/components/checkbox/dist/registered.js +2 -2
  6. package/components/combobox/demo/customize.md +7 -3
  7. package/components/combobox/demo/customize.min.js +1438 -1668
  8. package/components/combobox/demo/getting-started.min.js +1440 -1670
  9. package/components/combobox/demo/index.min.js +1440 -1670
  10. package/components/combobox/dist/auro-combobox.d.ts +5 -0
  11. package/components/combobox/dist/index.js +485 -140
  12. package/components/combobox/dist/registered.js +485 -140
  13. package/components/counter/demo/customize.min.js +20 -3
  14. package/components/counter/demo/index.min.js +20 -3
  15. package/components/counter/dist/index.js +5447 -192
  16. package/components/counter/dist/registered.js +5447 -192
  17. package/components/datepicker/demo/customize.min.js +149 -58
  18. package/components/datepicker/demo/index.min.js +149 -58
  19. package/components/datepicker/dist/index.js +149 -58
  20. package/components/datepicker/dist/registered.js +149 -58
  21. package/components/dropdown/demo/customize.min.js +18 -1
  22. package/components/dropdown/demo/getting-started.min.js +18 -1
  23. package/components/dropdown/demo/index.min.js +18 -1
  24. package/components/dropdown/dist/auro-dropdown.d.ts +1 -0
  25. package/components/dropdown/dist/index.js +18 -1
  26. package/components/dropdown/dist/registered.js +18 -1
  27. package/components/form/demo/customize.min.js +7910 -7909
  28. package/components/form/demo/getting-started.min.js +7910 -7909
  29. package/components/form/demo/index.min.js +7910 -7909
  30. package/components/form/demo/registerDemoDeps.min.js +7872 -7871
  31. package/components/input/demo/customize.min.js +131 -56
  32. package/components/input/demo/getting-started.min.js +131 -56
  33. package/components/input/demo/index.min.js +131 -56
  34. package/components/input/dist/base-input.d.ts +16 -0
  35. package/components/input/dist/index.js +131 -56
  36. package/components/input/dist/registered.js +131 -56
  37. package/components/menu/demo/api.md +41 -45
  38. package/components/menu/demo/customize.md +0 -28
  39. package/components/menu/demo/index.min.js +779 -1354
  40. package/components/menu/dist/auro-menu.d.ts +95 -110
  41. package/components/menu/dist/auro-menuoption.d.ts +32 -138
  42. package/components/menu/dist/index.js +753 -1308
  43. package/components/menu/dist/registered.js +765 -1308
  44. package/components/radio/demo/customize.min.js +2 -2
  45. package/components/radio/demo/getting-started.min.js +2 -2
  46. package/components/radio/demo/index.min.js +2 -2
  47. package/components/radio/dist/index.js +2 -2
  48. package/components/radio/dist/registered.js +2 -2
  49. package/components/select/demo/customize.md +7 -3
  50. package/components/select/demo/customize.min.js +1088 -1615
  51. package/components/select/demo/getting-started.min.js +1088 -1615
  52. package/components/select/demo/index.min.js +1088 -1615
  53. package/components/select/dist/index.js +63 -15
  54. package/components/select/dist/registered.js +63 -15
  55. package/components/select/dist/selectUtils.d.ts +12 -0
  56. package/custom-elements.json +379 -1025
  57. package/package.json +1 -1
  58. package/components/menu/dist/auro-menu.context.d.ts +0 -238
@@ -764,7 +764,7 @@ let AuroFormValidation$1 = class AuroFormValidation {
764
764
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-input') && elem.errorMessage === '') {
765
765
  const input = elem.renderRoot.querySelector('input');
766
766
 
767
- if (input.validationMessage.length > 0) {
767
+ if (input && input.validationMessage.length > 0) {
768
768
  elem.errorMessage = input.validationMessage;
769
769
  }
770
770
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox') && elem.errorMessage === '') {
@@ -10524,7 +10524,6 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
10524
10524
  const maskOptions = this.getMaskOptions('date', normalizedFormat);
10525
10525
 
10526
10526
  if (!(valueObject instanceof Date) || Number.isNaN(valueObject.getTime()) || !maskOptions || typeof maskOptions.format !== 'function') {
10527
- console.debug('Invalid date object or mask options for formatting', { valueObject, maskOptions }); // eslint-disable-line no-console
10528
10527
  return undefined;
10529
10528
  }
10530
10529
 
@@ -13437,7 +13436,7 @@ class AuroBibtemplate extends i$1 {
13437
13436
  }
13438
13437
  }
13439
13438
 
13440
- var formkitVersion$2 = '202606082053';
13439
+ var formkitVersion$2 = '202606100232';
13441
13440
 
13442
13441
  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}
13443
13442
  `,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}}
@@ -18974,7 +18973,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
18974
18973
  }
18975
18974
  };
18976
18975
 
18977
- var formkitVersion$1 = '202606082053';
18976
+ var formkitVersion$1 = '202606100232';
18978
18977
 
18979
18978
  let AuroElement$2 = class AuroElement extends i$1 {
18980
18979
  static get properties() {
@@ -19832,6 +19831,15 @@ class AuroDropdown extends AuroElement$2 {
19832
19831
  this.focusTrap = undefined;
19833
19832
  }
19834
19833
 
19834
+ // Restore any focus-loss suppression we installed for a prior trap state.
19835
+ // The desktopModal trap moves focus into the bib via RAF, which would
19836
+ // otherwise trip AuroFloatingUI.handleFocusLoss (a popover-top-layer
19837
+ // timing issue makes its :focus-within guard miss the focused button).
19838
+ if (this._priorNoHideOnFocusLoss !== undefined) {
19839
+ this.noHideOnThisFocusLoss = this._priorNoHideOnFocusLoss;
19840
+ this._priorNoHideOnFocusLoss = undefined;
19841
+ }
19842
+
19835
19843
  if (this.isPopoverVisible) {
19836
19844
  if (!this.isBibFullscreen) {
19837
19845
  if (this.desktopModal) {
@@ -19907,6 +19915,14 @@ class AuroDropdown extends AuroElement$2 {
19907
19915
  };
19908
19916
  this.addEventListener('keydown', this._bibTabHandler);
19909
19917
 
19918
+ // Suppress AuroFloatingUI's auto-hide-on-focus-loss while the
19919
+ // desktopModal trap owns focus management. Without this, the very
19920
+ // first focus move into the bib (from the RAF below) triggers
19921
+ // handleFocusLoss → hideBib, tearing down the trap before the
19922
+ // user can press Tab.
19923
+ this._priorNoHideOnFocusLoss = this.noHideOnThisFocusLoss;
19924
+ this.noHideOnThisFocusLoss = true;
19925
+
19910
19926
  // Move initial focus into the bib content, matching FocusTrap behavior
19911
19927
  requestAnimationFrame(() => {
19912
19928
  const focusables = getFocusableElements(this.bibContent);
@@ -24836,7 +24852,7 @@ class AuroFormValidation {
24836
24852
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-input') && elem.errorMessage === '') {
24837
24853
  const input = elem.renderRoot.querySelector('input');
24838
24854
 
24839
- if (input.validationMessage.length > 0) {
24855
+ if (input && input.validationMessage.length > 0) {
24840
24856
  elem.errorMessage = input.validationMessage;
24841
24857
  }
24842
24858
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox') && elem.errorMessage === '') {
@@ -30673,7 +30689,6 @@ class AuroInputUtilities {
30673
30689
  const maskOptions = this.getMaskOptions('date', normalizedFormat);
30674
30690
 
30675
30691
  if (!(valueObject instanceof Date) || Number.isNaN(valueObject.getTime()) || !maskOptions || typeof maskOptions.format !== 'function') {
30676
- console.debug('Invalid date object or mask options for formatting', { valueObject, maskOptions }); // eslint-disable-line no-console
30677
30692
  return undefined;
30678
30693
  }
30679
30694
 
@@ -31376,7 +31391,7 @@ class BaseInput extends AuroElement$1 {
31376
31391
  * @returns {Date|undefined}
31377
31392
  */
31378
31393
  get valueObject() {
31379
- return this._valueObject;
31394
+ return this._valueObject || this._computeDateObjectFallback(this.value);
31380
31395
  }
31381
31396
 
31382
31397
  /**
@@ -31384,7 +31399,7 @@ class BaseInput extends AuroElement$1 {
31384
31399
  * @returns {Date|undefined}
31385
31400
  */
31386
31401
  get minObject() {
31387
- return this._minObject;
31402
+ return this._minObject || this._computeDateObjectFallback(this.min);
31388
31403
  }
31389
31404
 
31390
31405
  /**
@@ -31392,7 +31407,31 @@ class BaseInput extends AuroElement$1 {
31392
31407
  * @returns {Date|undefined}
31393
31408
  */
31394
31409
  get maxObject() {
31395
- return this._maxObject;
31410
+ return this._maxObject || this._computeDateObjectFallback(this.max);
31411
+ }
31412
+
31413
+ /**
31414
+ * Parses a date string into a Date object when the corresponding `_*Object`
31415
+ * field hasn't been synced yet by `updated()`. Returns undefined when the
31416
+ * input type/format isn't a full date or the string is not a valid date.
31417
+ *
31418
+ * Why this exists: a parent (datepicker) can call `inputN.validate()` from
31419
+ * inside its own `updated()` before this input's `updated()` has run
31420
+ * `syncDateValues()` — so `_valueObject`/`_maxObject` are still `undefined`
31421
+ * and range checks would otherwise silently no-op (flipping the result to
31422
+ * `valid` or `patternMismatch`).
31423
+ * @private
31424
+ * @param {string|undefined} dateStr - ISO date string from `value`/`min`/`max`.
31425
+ * @returns {Date|undefined}
31426
+ */
31427
+ _computeDateObjectFallback(dateStr) {
31428
+ if (!dateStr || !this.util || !this.util.isFullDateFormat(this.type, this.format)) {
31429
+ return undefined;
31430
+ }
31431
+ if (!dateFormatter.isValidDate(dateStr)) {
31432
+ return undefined;
31433
+ }
31434
+ return dateFormatter.stringToDateInstance(dateStr);
31396
31435
  }
31397
31436
 
31398
31437
  /**
@@ -31417,8 +31456,30 @@ class BaseInput extends AuroElement$1 {
31417
31456
  connectedCallback() {
31418
31457
  super.connectedCallback();
31419
31458
 
31459
+ // Mark for query selectors when registered under a versioned tag (e.g. inside
31460
+ // a datepicker/combobox). Must run before parent components call validate() on
31461
+ // their inner inputs — the validation framework matches via tag-or-attribute,
31462
+ // and parents trigger validation during their own updated() cycle, which can
31463
+ // precede this input's firstUpdated().
31464
+ if (this.tagName.toLowerCase() !== 'auro-input' && !this.hasAttribute('auro-input')) {
31465
+ this.setAttribute('auro-input', '');
31466
+ }
31467
+
31420
31468
  this.locale = this.domHandler.getLocale(this);
31421
31469
  notifyOnLangChange(this);
31470
+
31471
+ // Pre-compute lengthForType and date-object fields so a parent (e.g. datepicker)
31472
+ // calling our validate() synchronously during its own updated() cycle sees
31473
+ // populated values. Without this, range validation silently no-ops because
31474
+ // `max.length === lengthForType` fails when lengthForType is still undefined.
31475
+ // Rebuild util here (constructor seeded with en-US default) so configureDataForType's
31476
+ // locale-derived format lookup uses the actual locale just resolved above.
31477
+ this.util = new AuroInputUtilities({
31478
+ locale: this.locale,
31479
+ format: this.format
31480
+ });
31481
+ this.configureDataForType();
31482
+ this.syncDateValues();
31422
31483
  }
31423
31484
 
31424
31485
  disconnectedCallback() {
@@ -31439,8 +31500,8 @@ class BaseInput extends AuroElement$1 {
31439
31500
  }
31440
31501
 
31441
31502
  // add attribute for query selectors when auro-input is registered under a custom name
31442
- if (this.tagName.toLowerCase() !== 'auro-input') {
31443
- this.setAttribute('auro-input', true);
31503
+ if (this.tagName.toLowerCase() !== 'auro-input' && !this.hasAttribute('auro-input')) {
31504
+ this.setAttribute('auro-input', '');
31444
31505
  }
31445
31506
  this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
31446
31507
 
@@ -31488,6 +31549,12 @@ class BaseInput extends AuroElement$1 {
31488
31549
  return;
31489
31550
  }
31490
31551
 
31552
+ // While configureAutoFormatting is running, imask's internal updateControl
31553
+ // writes el.value to align display with the masked value. A synthetic input
31554
+ // event from that write would re-enter handleInput → processCreditCard mid-setup
31555
+ // and clobber a Lit value that was just pushed by the parent combobox.
31556
+ if (component._configuringMask) return;
31557
+
31491
31558
  // If all guard clauses are passed, dispatch the event
31492
31559
  const inputEvent = new InputEvent('input', {
31493
31560
  bubbles: true,
@@ -31606,7 +31673,16 @@ class BaseInput extends AuroElement$1 {
31606
31673
 
31607
31674
  if (formattedValue !== this.inputElement.value) {
31608
31675
  this.skipNextProgrammaticInputEvent = true;
31609
- if (formattedValue) {
31676
+ if (this.maskInstance && this.type === 'credit-card') {
31677
+ // Route through the mask so its _value and el.value stay in lock-step
31678
+ // (set value calls updateControl which writes el.value = displayValue).
31679
+ // Writing el.value directly leaves the mask thinking displayValue is
31680
+ // stale; _saveSelection on the next focus/click then warns. Scoped to
31681
+ // credit-card so date's own formattedValue (raw ISO when calendar-invalid)
31682
+ // isn't re-masked through the mm/dd/yyyy mask, which would truncate it
31683
+ // and flip validity from patternMismatch to tooShort.
31684
+ this.maskInstance.value = formattedValue || '';
31685
+ } else if (formattedValue) {
31610
31686
  this.inputElement.value = formattedValue;
31611
31687
  } else {
31612
31688
  this.inputElement.value = '';
@@ -31715,58 +31791,73 @@ class BaseInput extends AuroElement$1 {
31715
31791
  * @returns {void}
31716
31792
  */
31717
31793
  configureAutoFormatting() {
31718
- if (this.maskInstance) {
31719
- this.maskInstance.destroy();
31720
- }
31794
+ // Re-entrancy guard. The patched-setter's synthetic input event (suppressed
31795
+ // by _configuringMask above) could otherwise trigger handleInput →
31796
+ // processCreditCard → configureAutoFormatting before the outer call's
31797
+ // set value has finished its alignCursor pass.
31798
+ if (this._configuringMask) return;
31799
+ this._configuringMask = true;
31800
+ try {
31801
+ if (this.maskInstance) {
31802
+ this.maskInstance.destroy();
31803
+ }
31721
31804
 
31722
- // Pass new format to util
31723
- this.util.updateFormat(this.format);
31805
+ // Pass new format to util
31806
+ this.util.updateFormat(this.format);
31724
31807
 
31725
- const maskOptions = this.util.getMaskOptions(this.type, this.format);
31808
+ const maskOptions = this.util.getMaskOptions(this.type, this.format);
31726
31809
 
31727
- if (this.inputElement && maskOptions.mask) {
31810
+ if (this.inputElement && maskOptions.mask) {
31728
31811
 
31729
- // Stash and clear any existing value before IMask init.
31730
- // IMask's constructor processes the current input value which requires
31731
- // selection state — clearing first avoids that scenario entirely.
31732
- // When the format changes (e.g. locale switch) and we have a valid ISO
31733
- // model value, compute the display string for the NEW format instead of
31734
- // re-using the old display string, which may be invalid in the new mask.
31735
- let existingValue = this.inputElement.value;
31736
- if (
31737
- this.util.isFullDateFormat(this.type, this.format) &&
31738
- this.value &&
31739
- dateFormatter.isValidDate(this.value) &&
31740
- this.valueObject instanceof Date &&
31741
- !Number.isNaN(this.valueObject.getTime()) &&
31742
- typeof maskOptions.format === 'function'
31743
- ) {
31744
- existingValue = maskOptions.format(this.valueObject);
31745
- }
31746
-
31747
- this.skipNextProgrammaticInputEvent = true;
31748
- this.inputElement.value = '';
31812
+ // Stash and clear any existing value before IMask init.
31813
+ // IMask's constructor processes the current input value which requires
31814
+ // selection state — clearing first avoids that scenario entirely.
31815
+ // When the format changes (e.g. locale switch) and we have a valid ISO
31816
+ // model value, compute the display string for the NEW format instead of
31817
+ // re-using the old display string, which may be invalid in the new mask.
31818
+ let existingValue = this.inputElement.value;
31819
+ if (
31820
+ this.util.isFullDateFormat(this.type, this.format) &&
31821
+ this.value &&
31822
+ dateFormatter.isValidDate(this.value) &&
31823
+ this.valueObject instanceof Date &&
31824
+ !Number.isNaN(this.valueObject.getTime()) &&
31825
+ typeof maskOptions.format === 'function'
31826
+ ) {
31827
+ existingValue = maskOptions.format(this.valueObject);
31828
+ }
31749
31829
 
31750
- this.maskInstance = IMask(this.inputElement, maskOptions);
31830
+ this.skipNextProgrammaticInputEvent = true;
31831
+ this.inputElement.value = '';
31832
+
31833
+ this.maskInstance = IMask(this.inputElement, maskOptions);
31834
+
31835
+ this.maskInstance.on('accept', () => {
31836
+ // Suppress propagation during configureAutoFormatting's own value-restoration
31837
+ // (line below) — the mask emits 'accept' on every value-set, including ours,
31838
+ // and we don't want to overwrite a value the parent just pushed.
31839
+ if (this._configuringMask) return;
31840
+ this.value = this.util.toModelValue(this.maskInstance.value, this.format);
31841
+ if (this.type === "date") {
31842
+ this._rawMaskValue = this.maskInstance.value;
31843
+ }
31844
+ });
31751
31845
 
31752
- this.maskInstance.on('accept', () => {
31753
- this.value = this.util.toModelValue(this.maskInstance.value, this.format);
31754
- if (this.type === "date") {
31755
- this._rawMaskValue = this.maskInstance.value;
31756
- }
31757
- });
31846
+ this.maskInstance.on('complete', () => {
31847
+ if (this._configuringMask) return;
31848
+ this.value = this.util.toModelValue(this.maskInstance.value, this.format);
31849
+ if (this.type === "date") {
31850
+ this._rawMaskValue = this.maskInstance.value;
31851
+ }
31852
+ });
31758
31853
 
31759
- this.maskInstance.on('complete', () => {
31760
- this.value = this.util.toModelValue(this.maskInstance.value, this.format);
31761
- if (this.type === "date") {
31762
- this._rawMaskValue = this.maskInstance.value;
31854
+ // Restore the stashed value through IMask so it's properly masked
31855
+ if (existingValue) {
31856
+ this.maskInstance.value = existingValue;
31763
31857
  }
31764
- });
31765
-
31766
- // Restore the stashed value through IMask so it's properly masked
31767
- if (existingValue) {
31768
- this.maskInstance.value = existingValue;
31769
31858
  }
31859
+ } finally {
31860
+ this._configuringMask = false;
31770
31861
  }
31771
31862
  }
31772
31863
 
@@ -32053,10 +32144,10 @@ class BaseInput extends AuroElement$1 {
32053
32144
  },
32054
32145
  {
32055
32146
  name: 'Diners club',
32056
- regex: /^(?<num>36|38)\d{0}/u,
32147
+ regex: /^(?<num>30[0-5]|36|38)\d{0}/u,
32057
32148
  formatLength: 16,
32058
32149
  errorMessage: CreditCardValidationMessage,
32059
- cardIcon: 'credit-card',
32150
+ cardIcon: 'cc-dinersclub',
32060
32151
  maskFormat: "0000 000000 0000"
32061
32152
  },
32062
32153
  {
@@ -32466,7 +32557,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
32466
32557
  }
32467
32558
  };
32468
32559
 
32469
- var formkitVersion = '202606082053';
32560
+ var formkitVersion = '202606100232';
32470
32561
 
32471
32562
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
32472
32563
  // See LICENSE in the project root for license information.