@aurodesignsystem-dev/auro-formkit 0.0.0-pr1530.0 → 0.0.0-pr1530.2
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.
- package/components/checkbox/demo/customize.min.js +1 -1
- package/components/checkbox/demo/getting-started.min.js +1 -1
- package/components/checkbox/demo/index.min.js +1 -1
- package/components/checkbox/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.min.js +42 -29
- package/components/combobox/demo/getting-started.min.js +42 -29
- package/components/combobox/demo/index.min.js +42 -29
- package/components/combobox/dist/index.js +42 -29
- package/components/combobox/dist/registered.js +42 -29
- package/components/counter/demo/customize.min.js +2 -2
- package/components/counter/demo/index.min.js +2 -2
- package/components/counter/dist/index.js +2 -2
- package/components/counter/dist/registered.js +2 -2
- package/components/datepicker/demo/accessibility.md +7 -7
- package/components/datepicker/demo/customize.min.js +121 -47
- package/components/datepicker/demo/index.min.js +121 -47
- package/components/datepicker/demo/keyboard-behavior.md +3 -3
- package/components/datepicker/demo/voiceover.md +3 -3
- package/components/datepicker/demo/why-datepicker.md +2 -2
- package/components/datepicker/dist/auro-calendar-cell.d.ts +9 -0
- package/components/datepicker/dist/auro-calendar.d.ts +9 -0
- package/components/datepicker/dist/index.js +121 -47
- package/components/datepicker/dist/registered.js +121 -47
- package/components/dropdown/demo/customize.min.js +1 -1
- package/components/dropdown/demo/getting-started.min.js +1 -1
- package/components/dropdown/demo/index.min.js +1 -1
- package/components/dropdown/dist/index.js +1 -1
- package/components/dropdown/dist/registered.js +1 -1
- package/components/form/demo/customize.min.js +269 -123
- package/components/form/demo/getting-started.min.js +269 -123
- package/components/form/demo/index.min.js +269 -123
- package/components/form/demo/registerDemoDeps.min.js +269 -123
- package/components/input/demo/customize.min.js +40 -27
- package/components/input/demo/getting-started.min.js +40 -27
- package/components/input/demo/index.min.js +40 -27
- package/components/input/dist/base-input.d.ts +20 -4
- package/components/input/dist/index.js +40 -27
- package/components/input/dist/registered.js +40 -27
- package/components/radio/demo/customize.min.js +1 -1
- package/components/radio/demo/getting-started.min.js +1 -1
- package/components/radio/demo/index.min.js +1 -1
- package/components/radio/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.min.js +62 -16
- package/components/select/demo/getting-started.min.js +62 -16
- package/components/select/demo/index.min.js +62 -16
- package/components/select/dist/auro-select.d.ts +6 -0
- package/components/select/dist/index.js +62 -16
- package/components/select/dist/registered.js +62 -16
- package/custom-elements.json +427 -343
- package/package.json +1 -1
|
@@ -11680,23 +11680,28 @@ var popoverVersion = '6.0.1';
|
|
|
11680
11680
|
* @returns {number|null} Local-midnight Unix timestamp (seconds), or null.
|
|
11681
11681
|
*/
|
|
11682
11682
|
function parseIsoToTimestamp(isoStr) {
|
|
11683
|
+
// Strict YYYY-MM-DD matcher with named groups. Rejects trailing garbage
|
|
11684
|
+
// ("2024x-01-01"), short segments ("2024-1-1"), and any non-digit
|
|
11685
|
+
// characters. `parseInt` alone accepted both because it stops at the
|
|
11686
|
+
// first non-digit and doesn't require a minimum length.
|
|
11687
|
+
const ISO_DATE_RE = /^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})$/u;
|
|
11688
|
+
const MAX_MONTH = 12;
|
|
11689
|
+
const MAX_DAY = 31;
|
|
11690
|
+
|
|
11683
11691
|
if (typeof isoStr !== 'string') {
|
|
11684
11692
|
return null;
|
|
11685
11693
|
}
|
|
11686
|
-
const
|
|
11687
|
-
if (
|
|
11688
|
-
return null;
|
|
11689
|
-
}
|
|
11690
|
-
const year = parseInt(parts[0], 10);
|
|
11691
|
-
const month = parseInt(parts[1], 10);
|
|
11692
|
-
const day = parseInt(parts[2], 10);
|
|
11693
|
-
if (!Number.isFinite(year) || !Number.isFinite(month) || !Number.isFinite(day)) {
|
|
11694
|
+
const match = ISO_DATE_RE.exec(isoStr);
|
|
11695
|
+
if (!match) {
|
|
11694
11696
|
return null;
|
|
11695
11697
|
}
|
|
11698
|
+
const year = Number(match.groups.year);
|
|
11699
|
+
const month = Number(match.groups.month);
|
|
11700
|
+
const day = Number(match.groups.day);
|
|
11696
11701
|
// Reject overflow values like "2024-13-40" — JS `new Date(year, month, day)`
|
|
11697
11702
|
// silently normalizes those to a different calendar day, which would
|
|
11698
11703
|
// disable the wrong date if we let the result through.
|
|
11699
|
-
if (month < 1 || month >
|
|
11704
|
+
if (month < 1 || month > MAX_MONTH || day < 1 || day > MAX_DAY) {
|
|
11700
11705
|
return null;
|
|
11701
11706
|
}
|
|
11702
11707
|
const date = new Date(year, month - 1, day);
|
|
@@ -12274,6 +12279,18 @@ class AuroCalendarCell extends i$1 {
|
|
|
12274
12279
|
}
|
|
12275
12280
|
|
|
12276
12281
|
firstUpdated() {
|
|
12282
|
+
this._initFromAncestors();
|
|
12283
|
+
}
|
|
12284
|
+
|
|
12285
|
+
/**
|
|
12286
|
+
* Wires the cell to its ancestor calendar-month and calendar (and, via
|
|
12287
|
+
* the calendar, to the datepicker). Extracted from firstUpdated() so the
|
|
12288
|
+
* retry loop can re-attempt without recursively invoking a Lit lifecycle
|
|
12289
|
+
* method (which is outside the framework's contract).
|
|
12290
|
+
* @private
|
|
12291
|
+
* @returns {void}
|
|
12292
|
+
*/
|
|
12293
|
+
_initFromAncestors() {
|
|
12277
12294
|
const calendarMonth = this.runtimeUtils.closestElement('auro-formkit-calendar-month', this);
|
|
12278
12295
|
const calendar = this.runtimeUtils.closestElement('auro-formkit-calendar', calendarMonth);
|
|
12279
12296
|
|
|
@@ -12282,12 +12299,12 @@ class AuroCalendarCell extends i$1 {
|
|
|
12282
12299
|
// to attach — but cap attempts so a permanently detached cell doesn't
|
|
12283
12300
|
// spin forever. 10 turns is far more than any observed race needs.
|
|
12284
12301
|
this._firstUpdatedRetries = (this._firstUpdatedRetries || 0) + 1;
|
|
12285
|
-
if (this._firstUpdatedRetries > 10) {
|
|
12302
|
+
if (this._firstUpdatedRetries > 10) {
|
|
12286
12303
|
return;
|
|
12287
12304
|
}
|
|
12288
12305
|
this._firstUpdatedRetryTimer = setTimeout(() => {
|
|
12289
12306
|
this._firstUpdatedRetryTimer = null;
|
|
12290
|
-
this.
|
|
12307
|
+
this._initFromAncestors();
|
|
12291
12308
|
}, 0);
|
|
12292
12309
|
return;
|
|
12293
12310
|
}
|
|
@@ -13700,7 +13717,7 @@ class AuroBibtemplate extends i$1 {
|
|
|
13700
13717
|
}
|
|
13701
13718
|
}
|
|
13702
13719
|
|
|
13703
|
-
var formkitVersion$2 = '
|
|
13720
|
+
var formkitVersion$2 = '202607022225';
|
|
13704
13721
|
|
|
13705
13722
|
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}
|
|
13706
13723
|
`,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}}
|
|
@@ -13839,7 +13856,10 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
13839
13856
|
* Support will be removed in a future major release.
|
|
13840
13857
|
* @private
|
|
13841
13858
|
*/
|
|
13842
|
-
|
|
13859
|
+
// Initialize the backing field directly so the constructor's default
|
|
13860
|
+
// empty array doesn't trigger the deprecation warning. Assignments from
|
|
13861
|
+
// consumers still route through the setter below.
|
|
13862
|
+
this._disabledDays = [];
|
|
13843
13863
|
|
|
13844
13864
|
/**
|
|
13845
13865
|
* @private
|
|
@@ -13872,6 +13892,44 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
13872
13892
|
this._calendarInstanceId = Date.now().toString(36);
|
|
13873
13893
|
}
|
|
13874
13894
|
|
|
13895
|
+
/**
|
|
13896
|
+
* @deprecated See constructor JSDoc — migrate to
|
|
13897
|
+
* `auro-datepicker.blackoutDates`. The getter/setter pair exists so the
|
|
13898
|
+
* one-time deprecation warning fires as soon as a consumer assigns a
|
|
13899
|
+
* non-empty array (empty assignments are ignored — an empty array is
|
|
13900
|
+
* indistinguishable from the constructor default and would produce a
|
|
13901
|
+
* spurious warning), rather than only when `_getBlackoutSet()` happens
|
|
13902
|
+
* to rebuild.
|
|
13903
|
+
* @returns {Array} The current legacy `disabledDays` array.
|
|
13904
|
+
*/
|
|
13905
|
+
get disabledDays() {
|
|
13906
|
+
return this._disabledDays;
|
|
13907
|
+
}
|
|
13908
|
+
|
|
13909
|
+
/**
|
|
13910
|
+
* @param {Array} value - The legacy `disabledDays` array to set.
|
|
13911
|
+
*/
|
|
13912
|
+
set disabledDays(value) {
|
|
13913
|
+
const oldValue = this._disabledDays;
|
|
13914
|
+
// Coerce non-arrays to `[]`. Consumers occasionally pass `null`
|
|
13915
|
+
// (Lit's Array attribute converter returns null for a missing/empty
|
|
13916
|
+
// attribute) or misuse the API; downstream code in
|
|
13917
|
+
// `auro-calendar-cell.isEnabled` calls `.findIndex()` on this value
|
|
13918
|
+
// without an Array.isArray guard, so a truthy non-array would throw
|
|
13919
|
+
// at render.
|
|
13920
|
+
const coerced = Array.isArray(value) ? value : [];
|
|
13921
|
+
if (coerced.length > 0) {
|
|
13922
|
+
this._warnDisabledDaysDeprecated();
|
|
13923
|
+
}
|
|
13924
|
+
this._disabledDays = coerced;
|
|
13925
|
+
// `disabledDays` is a Lit `@property({ type: Array })` on the
|
|
13926
|
+
// RangeDatepicker base class; Lit's generated setter (which we've
|
|
13927
|
+
// overridden here to insert the warning) is what normally invalidates
|
|
13928
|
+
// the reactive cycle. Re-invoke requestUpdate manually so consumer
|
|
13929
|
+
// assignments still re-render the calendar.
|
|
13930
|
+
this.requestUpdate('disabledDays', oldValue);
|
|
13931
|
+
}
|
|
13932
|
+
|
|
13875
13933
|
static get styles() {
|
|
13876
13934
|
return [
|
|
13877
13935
|
styleCss$7,
|
|
@@ -14611,12 +14669,15 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
14611
14669
|
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
14612
14670
|
// the number of rendered months.
|
|
14613
14671
|
//
|
|
14614
|
-
// numCalendars is assigned
|
|
14615
|
-
//
|
|
14616
|
-
//
|
|
14617
|
-
//
|
|
14618
|
-
//
|
|
14619
|
-
//
|
|
14672
|
+
// numCalendars is assigned inside renderAllCalendars(), which runs during
|
|
14673
|
+
// render() — so by the time the visible-change handler in updated()
|
|
14674
|
+
// calls computeActiveDate() in the same cycle, numCalendars is normally
|
|
14675
|
+
// set. Guard against the pre-first-render path anyway (e.g. any future
|
|
14676
|
+
// caller that reaches computeActiveDate before render() has run):
|
|
14677
|
+
// Math.max(undefined, 1) is NaN, which would silently skip the
|
|
14678
|
+
// visible-month scan below. Fall back to maximumRenderableMonths'
|
|
14679
|
+
// desktop default (1 for non-range, 2 for range) so the scan window is
|
|
14680
|
+
// correctly sized whenever numCalendars is not yet populated.
|
|
14620
14681
|
let renderedMonths = null;
|
|
14621
14682
|
|
|
14622
14683
|
if (Number.isFinite(this.numCalendars) && this.numCalendars > 0) {
|
|
@@ -19573,7 +19634,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
|
|
|
19573
19634
|
}
|
|
19574
19635
|
};
|
|
19575
19636
|
|
|
19576
|
-
var formkitVersion$1 = '
|
|
19637
|
+
var formkitVersion$1 = '202607022225';
|
|
19577
19638
|
|
|
19578
19639
|
let AuroElement$2 = class AuroElement extends i$1 {
|
|
19579
19640
|
static get properties() {
|
|
@@ -31588,14 +31649,16 @@ class BaseInput extends AuroElement$1 {
|
|
|
31588
31649
|
this.label = 'Input label is undefined';
|
|
31589
31650
|
this.layout = 'classic';
|
|
31590
31651
|
this.locale = 'en-US';
|
|
31652
|
+
this._format = undefined;
|
|
31653
|
+
|
|
31654
|
+
/** @private */
|
|
31655
|
+
this._userSetFormat = false;
|
|
31591
31656
|
this.max = undefined;
|
|
31592
31657
|
this.maxLength = undefined;
|
|
31593
31658
|
this.min = undefined;
|
|
31594
31659
|
this.minLength = undefined;
|
|
31595
31660
|
this.noValidate = false;
|
|
31596
31661
|
this.onDark = false;
|
|
31597
|
-
// Raw values returned from the input mask before model normalization.
|
|
31598
|
-
this._rawMaskValue = undefined;
|
|
31599
31662
|
this.required = false;
|
|
31600
31663
|
this.setCustomValidityForType = undefined;
|
|
31601
31664
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -31753,7 +31816,8 @@ class BaseInput extends AuroElement$1 {
|
|
|
31753
31816
|
*/
|
|
31754
31817
|
format: {
|
|
31755
31818
|
type: String,
|
|
31756
|
-
reflect: true
|
|
31819
|
+
reflect: true,
|
|
31820
|
+
noAccessor: true
|
|
31757
31821
|
},
|
|
31758
31822
|
|
|
31759
31823
|
/**
|
|
@@ -32091,6 +32155,34 @@ class BaseInput extends AuroElement$1 {
|
|
|
32091
32155
|
return this.max && dateFormatter.isValidDate(this.max) ? dateFormatter.stringToDateInstance(this.max) : undefined;
|
|
32092
32156
|
}
|
|
32093
32157
|
|
|
32158
|
+
get format() {
|
|
32159
|
+
return this._format;
|
|
32160
|
+
}
|
|
32161
|
+
|
|
32162
|
+
/**
|
|
32163
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
32164
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
32165
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
32166
|
+
*/
|
|
32167
|
+
set format(value) {
|
|
32168
|
+
const oldValue = this._format;
|
|
32169
|
+
this._format = value ? value.toLowerCase() : value;
|
|
32170
|
+
this._userSetFormat = Boolean(value);
|
|
32171
|
+
this.requestUpdate('format', oldValue);
|
|
32172
|
+
}
|
|
32173
|
+
|
|
32174
|
+
/**
|
|
32175
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
32176
|
+
* so that a subsequent locale change can still update the format.
|
|
32177
|
+
* @private
|
|
32178
|
+
* @param {string} value
|
|
32179
|
+
*/
|
|
32180
|
+
_setFormatFromLocale(value) {
|
|
32181
|
+
const oldValue = this._format;
|
|
32182
|
+
this._format = value ? value.toLowerCase() : value;
|
|
32183
|
+
this.requestUpdate('format', oldValue);
|
|
32184
|
+
}
|
|
32185
|
+
|
|
32094
32186
|
connectedCallback() {
|
|
32095
32187
|
super.connectedCallback();
|
|
32096
32188
|
|
|
@@ -32138,15 +32230,6 @@ class BaseInput extends AuroElement$1 {
|
|
|
32138
32230
|
|
|
32139
32231
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
32140
32232
|
|
|
32141
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
32142
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
32143
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
32144
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
32145
|
-
// unset.
|
|
32146
|
-
if (this.format) {
|
|
32147
|
-
this.format = this.format.toLowerCase();
|
|
32148
|
-
}
|
|
32149
|
-
|
|
32150
32233
|
// use validity message override if declared when initializing the component
|
|
32151
32234
|
if (this.hasAttribute('setCustomValidity')) {
|
|
32152
32235
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -32253,12 +32336,10 @@ class BaseInput extends AuroElement$1 {
|
|
|
32253
32336
|
updated(changedProperties) {
|
|
32254
32337
|
super.updated(changedProperties);
|
|
32255
32338
|
|
|
32256
|
-
// When locale changes
|
|
32257
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
32339
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
32258
32340
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
32259
|
-
|
|
32260
|
-
|
|
32261
|
-
this.format = getDateFormatFromLocale(this.locale);
|
|
32341
|
+
if (!this._userSetFormat) {
|
|
32342
|
+
this._setFormatFromLocale(getDateFormatFromLocale(this.locale));
|
|
32262
32343
|
}
|
|
32263
32344
|
}
|
|
32264
32345
|
|
|
@@ -32429,9 +32510,6 @@ class BaseInput extends AuroElement$1 {
|
|
|
32429
32510
|
this.maskInstance.on('accept', () => {
|
|
32430
32511
|
if (this._configuringMask) return;
|
|
32431
32512
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
32432
|
-
if (this.type === "date") {
|
|
32433
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
32434
|
-
}
|
|
32435
32513
|
});
|
|
32436
32514
|
|
|
32437
32515
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -32439,9 +32517,6 @@ class BaseInput extends AuroElement$1 {
|
|
|
32439
32517
|
this.maskInstance.on('complete', () => {
|
|
32440
32518
|
if (this._configuringMask) return;
|
|
32441
32519
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
32442
|
-
if (this.type === "date") {
|
|
32443
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
32444
|
-
}
|
|
32445
32520
|
});
|
|
32446
32521
|
|
|
32447
32522
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -32678,8 +32753,7 @@ class BaseInput extends AuroElement$1 {
|
|
|
32678
32753
|
|
|
32679
32754
|
// Set default date format if type=date and no format is defined
|
|
32680
32755
|
if (this.type === "date" && !this.format) {
|
|
32681
|
-
|
|
32682
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
32756
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
32683
32757
|
this.util.updateFormat(this.format);
|
|
32684
32758
|
}
|
|
32685
32759
|
}
|
|
@@ -32708,7 +32782,7 @@ class BaseInput extends AuroElement$1 {
|
|
|
32708
32782
|
const creditCard = this.matchInputValueToCreditCard();
|
|
32709
32783
|
const previousFormat = this.format;
|
|
32710
32784
|
|
|
32711
|
-
this.
|
|
32785
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
32712
32786
|
|
|
32713
32787
|
this.maxLength = creditCard.formatLength;
|
|
32714
32788
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -33182,7 +33256,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
|
|
|
33182
33256
|
}
|
|
33183
33257
|
};
|
|
33184
33258
|
|
|
33185
|
-
var formkitVersion = '
|
|
33259
|
+
var formkitVersion = '202607022225';
|
|
33186
33260
|
|
|
33187
33261
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
33188
33262
|
// See LICENSE in the project root for license information.
|
|
@@ -33,14 +33,14 @@
|
|
|
33
33
|
<td>-</td>
|
|
34
34
|
<td>Collapsed</td>
|
|
35
35
|
<td>Trigger input, <strong>NOT</strong> the input clear button</td>
|
|
36
|
-
<td>Opens the calendar bib. Focus moves to the calendar grid
|
|
36
|
+
<td>Opens the calendar bib. Focus moves to the calendar grid; the active date cell is marked imperatively and announced via the <code>aria-live</code> region. The Enter key behavior overrides the inherited <code>auro-dropdown</code> key behavior outlined below.</td>
|
|
37
37
|
</tr>
|
|
38
38
|
<tr>
|
|
39
39
|
<td>Space</td>
|
|
40
40
|
<td>-</td>
|
|
41
41
|
<td>Collapsed</td>
|
|
42
42
|
<td>Trigger input, <strong>NOT</strong> the input clear button</td>
|
|
43
|
-
<td>Opens the calendar bib. Focus moves to the calendar grid
|
|
43
|
+
<td>Opens the calendar bib. Focus moves to the calendar grid; the active date cell is marked imperatively and announced via the <code>aria-live</code> region. The Space key behavior overrides the inherited <code>auro-dropdown</code> key behavior outlined below.</td>
|
|
44
44
|
</tr>
|
|
45
45
|
</tbody>
|
|
46
46
|
</table>
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
</tbody>
|
|
90
90
|
</table>
|
|
91
91
|
<auro-header level="3" id="keyEvents-calendarGrid">Calendar grid</auro-header>
|
|
92
|
-
<p>When the calendar bib is open, DOM focus
|
|
92
|
+
<p>When the calendar bib is open, DOM focus stays on the <code>#calendarGrid</code> wrapper. The active cell is tracked imperatively (an <code>active</code> property on the cell host and an <code>.activeCell</code> class on its button) — no <code>aria-activedescendant</code> or proxy element is used. Arrow keys move the active cell indicator without wrapping; when a boundary is reached the calendar navigates to the adjacent month. A debounced <code>aria-live</code> region announces the full date context after navigation pauses.</p>
|
|
93
93
|
<table>
|
|
94
94
|
<thead>
|
|
95
95
|
<tr>
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
<auro-header level="3" id="voiceOverClearButton">Clear Button</auro-header>
|
|
38
38
|
<p>When the clear button is focused, VoiceOver announces the <code>aria-label</code> from the <code>ariaLabel.input.clear</code> slot (or the default i18n text), followed by <em>"button"</em>.</p>
|
|
39
39
|
<auro-header level="3" id="voiceOverCalendarNavigation">Calendar Navigation</auro-header>
|
|
40
|
-
<p>When the calendar bib is open, DOM focus stays on the calendar grid wrapper
|
|
40
|
+
<p>When the calendar bib is open, DOM focus stays on the calendar grid wrapper. The active cell is tracked imperatively (an <code>active</code> property on the cell host and an <code>.activeCell</code> class on its button) and its full localized label is announced through a debounced <code>aria-live</code> region (150 ms), so rapid arrow-key navigation produces one announcement per pause rather than one per keystroke.</p>
|
|
41
41
|
<p>Users can navigate calendar cells using VoiceOver gestures (swipe left/right) or arrow keys. Each cell announces:</p>
|
|
42
42
|
<ul>
|
|
43
43
|
<li>The full localized date (e.g. <em>"Thursday, May 14, 2026"</em>)</li>
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
<ol>
|
|
71
71
|
<li><strong>Focus</strong> — Tab to the datepicker input.</li>
|
|
72
72
|
<li><strong>Type a date</strong> — Enter a date value directly, or press Enter/Space to open the calendar.</li>
|
|
73
|
-
<li><strong>Calendar opens</strong> — Focus moves to the calendar grid wrapper,
|
|
73
|
+
<li><strong>Calendar opens</strong> — Focus moves to the calendar grid wrapper. The initial active cell is marked imperatively, and the <code>aria-live</code> region announces its full localized label so VoiceOver reads the active date. Navigate dates with VoiceOver gestures (swipe) or arrow keys.</li>
|
|
74
74
|
<li><strong>Select a date</strong> — Activate a calendar cell (double-tap with VoiceOver, or Enter/Space with keyboard) to select the date. The selected date is announced via a live region and populates the input. The calendar remains open; close it by pressing Escape or activating the Done button.</li>
|
|
75
75
|
</ol>
|
|
76
76
|
<auro-header level="2" id="voiceOverSmallVPAnnouncements">Small Viewport Workflow</auro-header>
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
<ol>
|
|
79
79
|
<li><strong>Focus</strong> — Tab or swipe to the datepicker input.</li>
|
|
80
80
|
<li>
|
|
81
|
-
<strong>Open:</strong> The fullscreen modal dialog opens. VoiceOver announces the dialog name (e.g. <em>"Departure date, dialog"</em>). Focus is moved to the calendar grid wrapper,
|
|
81
|
+
<strong>Open:</strong> The fullscreen modal dialog opens. VoiceOver announces the dialog name (e.g. <em>"Departure date, dialog"</em>). Focus is moved to the calendar grid wrapper, and the <code>aria-live</code> region announces the initial active date.
|
|
82
82
|
</li>
|
|
83
83
|
<li><strong>Navigate dates</strong> — Swipe through calendar cells or use arrow keys.</li>
|
|
84
84
|
<li>
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
<p>Native date inputs vary widely across browsers and platforms, with inconsistent screen reader announcements, keyboard behavior, and focus management.</p>
|
|
5
5
|
<p><code>auro-datepicker</code> provides:</p>
|
|
6
6
|
<ul>
|
|
7
|
-
<li><strong>Full keyboard navigation</strong> — Arrow keys move between days, months, and years. Enter and Space select a date. Escape closes the calendar.
|
|
7
|
+
<li><strong>Full keyboard navigation</strong> — Arrow keys move between days, months, and years. Enter and Space select a date. Escape closes the calendar. DOM focus stays on the calendar grid wrapper while an imperatively-tracked active cell is announced through a debounced <code>aria-live</code> region, so screen readers stay in sync without duplicate announcements during rapid navigation.</li>
|
|
8
8
|
<li><strong>Rich ARIA semantics</strong> — Every cell is labeled with its full date, day-of-week, and contextual state (e.g. "selected", "today", "unavailable", "range start", "in range"). Screen reader users hear meaningful announcements, not just numbers.</li>
|
|
9
9
|
<li><strong>Live region announcements</strong> — Month changes are announced via <code>aria-live</code> so assistive technology users know the visible month has changed.</li>
|
|
10
10
|
<li><strong>Reduced motion support</strong> — Scrolling and transitions respect <code>prefers-reduced-motion</code>.</li>
|
|
11
|
-
<li><strong>Focus management</strong> — Opening the calendar moves focus to the calendar grid wrapper
|
|
11
|
+
<li><strong>Focus management</strong> — Opening the calendar moves focus to the calendar grid wrapper; the initial active date cell is marked imperatively and announced via the <code>aria-live</code> region. Closing returns focus to the trigger input. The fullscreen dialog uses <code>showModal()</code> for native inert-background behavior, while the desktop modal traps focus within the bib.</li>
|
|
12
12
|
</ul>
|
|
13
13
|
<p>By contrast, native <code><input type="date"></code> delegates all of this to the browser, and the result differs significantly between Chrome, Safari, and Firefox — often with no keyboard navigation of the calendar grid at all on some platforms.</p>
|
|
14
14
|
<auro-header level="2" id="dateRangeSelection">Date range selection</auro-header>
|
|
@@ -219,6 +219,15 @@ export class AuroCalendarCell extends LitElement {
|
|
|
219
219
|
*/
|
|
220
220
|
private handleSlotContent;
|
|
221
221
|
firstUpdated(): void;
|
|
222
|
+
/**
|
|
223
|
+
* Wires the cell to its ancestor calendar-month and calendar (and, via
|
|
224
|
+
* the calendar, to the datepicker). Extracted from firstUpdated() so the
|
|
225
|
+
* retry loop can re-attempt without recursively invoking a Lit lifecycle
|
|
226
|
+
* method (which is outside the framework's contract).
|
|
227
|
+
* @private
|
|
228
|
+
* @returns {void}
|
|
229
|
+
*/
|
|
230
|
+
private _initFromAncestors;
|
|
222
231
|
_firstUpdatedRetries: any;
|
|
223
232
|
_firstUpdatedRetryTimer: any;
|
|
224
233
|
calendar: any;
|
|
@@ -173,6 +173,15 @@ export class AuroCalendar extends RangeDatepicker {
|
|
|
173
173
|
* @private
|
|
174
174
|
*/
|
|
175
175
|
private calendarRangeMonths;
|
|
176
|
+
/**
|
|
177
|
+
* @deprecated Use `auro-datepicker.blackoutDates` (an array of
|
|
178
|
+
* `YYYY-MM-DD` ISO strings) instead. This legacy array of Unix
|
|
179
|
+
* timestamps is still honored for backward compatibility but emits a
|
|
180
|
+
* one-time `console.debug` the first time a non-empty value is observed.
|
|
181
|
+
* Support will be removed in a future major release.
|
|
182
|
+
* @private
|
|
183
|
+
*/
|
|
184
|
+
private _disabledDays;
|
|
176
185
|
/**
|
|
177
186
|
* @private
|
|
178
187
|
*/
|