@aurodesignsystem-dev/auro-formkit 0.0.0-pr1510.0 → 0.0.0-pr1510.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 +3 -3
- package/components/combobox/demo/getting-started.min.js +3 -3
- package/components/combobox/demo/index.min.js +3 -3
- package/components/combobox/dist/index.js +3 -3
- package/components/combobox/dist/registered.js +3 -3
- 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 +1 -1
- package/components/datepicker/demo/api.md +2 -2
- package/components/datepicker/demo/customize.min.js +179 -72
- package/components/datepicker/demo/index.min.js +179 -72
- package/components/datepicker/dist/{src/auro-calendar.d.ts → auro-calendar.d.ts} +3 -1
- package/components/datepicker/dist/{src/auro-datepicker.d.ts → auro-datepicker.d.ts} +5 -2
- package/components/datepicker/dist/blackoutUtils.d.ts +43 -0
- package/components/datepicker/dist/index.js +179 -72
- package/components/datepicker/dist/registered.js +179 -72
- 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 +189 -82
- package/components/form/demo/getting-started.min.js +189 -82
- package/components/form/demo/index.min.js +189 -82
- package/components/form/demo/registerDemoDeps.min.js +189 -82
- package/components/input/demo/customize.min.js +1 -1
- package/components/input/demo/getting-started.min.js +1 -1
- package/components/input/demo/index.min.js +1 -1
- package/components/input/dist/index.js +1 -1
- package/components/input/dist/registered.js +1 -1
- 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 +2 -2
- package/components/select/demo/getting-started.min.js +2 -2
- package/components/select/demo/index.min.js +2 -2
- package/components/select/dist/index.js +2 -2
- package/components/select/dist/registered.js +2 -2
- package/custom-elements.json +453 -343
- package/package.json +5 -2
- package/components/checkbox/demo/customize.js +0 -22
- package/components/checkbox/demo/demo-support.js +0 -1
- package/components/checkbox/demo/getting-started.js +0 -22
- package/components/checkbox/demo/index.js +0 -8
- package/components/checkbox/demo/styles.scss +0 -1
- package/components/combobox/demo/customize.js +0 -24
- package/components/combobox/demo/demo-support.js +0 -1
- package/components/combobox/demo/getting-started.js +0 -21
- package/components/combobox/demo/index.js +0 -23
- package/components/combobox/demo/styles.scss +0 -1
- package/components/counter/demo/customize.js +0 -21
- package/components/counter/demo/demo-support.js +0 -1
- package/components/counter/demo/index.js +0 -21
- package/components/counter/demo/styles.scss +0 -1
- package/components/datepicker/demo/customize.js +0 -17
- package/components/datepicker/demo/demo-support.js +0 -1
- package/components/datepicker/demo/index.js +0 -23
- package/components/datepicker/demo/styles.scss +0 -1
- package/components/dropdown/demo/customize.js +0 -9
- package/components/dropdown/demo/demo-support.js +0 -1
- package/components/dropdown/demo/getting-started.js +0 -9
- package/components/dropdown/demo/index.js +0 -16
- package/components/dropdown/demo/styles.scss +0 -1
- package/components/form/demo/customize.js +0 -28
- package/components/form/demo/demo-support.js +0 -1
- package/components/form/demo/getting-started.js +0 -9
- package/components/form/demo/index.js +0 -5
- package/components/form/demo/registerDemoDeps.js +0 -23
- package/components/form/demo/styles.scss +0 -1
- package/components/input/demo/customize.js +0 -25
- package/components/input/demo/demo-support.js +0 -1
- package/components/input/demo/getting-started.js +0 -8
- package/components/input/demo/index.js +0 -8
- package/components/input/demo/styles.css +0 -974
- package/components/input/demo/styles.scss +0 -1
- package/components/menu/demo/demo-support.js +0 -1
- package/components/menu/demo/index.js +0 -25
- package/components/menu/demo/styles.scss +0 -1
- package/components/radio/demo/customize.js +0 -22
- package/components/radio/demo/demo-support.js +0 -1
- package/components/radio/demo/getting-started.js +0 -24
- package/components/radio/demo/index.js +0 -8
- package/components/radio/demo/styles.scss +0 -1
- package/components/select/demo/customize.js +0 -11
- package/components/select/demo/demo-support.js +0 -1
- package/components/select/demo/getting-started.js +0 -26
- package/components/select/demo/index.js +0 -11
- package/components/select/demo/styles.scss +0 -1
- /package/components/datepicker/dist/{src/auro-calendar-cell.d.ts → auro-calendar-cell.d.ts} +0 -0
- /package/components/datepicker/dist/{src/auro-calendar-month.d.ts → auro-calendar-month.d.ts} +0 -0
- /package/components/datepicker/dist/{src/buttonVersion.d.ts → buttonVersion.d.ts} +0 -0
- /package/components/datepicker/dist/{src/datepickerKeyboardStrategy.d.ts → datepickerKeyboardStrategy.d.ts} +0 -0
- /package/components/datepicker/dist/{src/iconVersion.d.ts → iconVersion.d.ts} +0 -0
- /package/components/datepicker/dist/{src/index.d.ts → index.d.ts} +0 -0
- /package/components/datepicker/dist/{src/popoverVersion.d.ts → popoverVersion.d.ts} +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/classic/color-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/classic/style-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/color-calendar-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/color-cell-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/color-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/color-month-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/shapeSize-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/snowflake/color-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/snowflake/style-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-cell-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-month-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/style-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/styles → styles}/tokens-css.d.ts +0 -0
- /package/components/datepicker/dist/{src/utilities.d.ts → utilities.d.ts} +0 -0
- /package/components/datepicker/dist/{src/utilitiesCalendar.d.ts → utilitiesCalendar.d.ts} +0 -0
- /package/components/datepicker/dist/{src/utilitiesCalendarRender.d.ts → utilitiesCalendarRender.d.ts} +0 -0
- /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/day.d.ts +0 -0
- /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker-calendar.d.ts +0 -0
- /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker-cell.d.ts +0 -0
- /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker.d.ts +0 -0
|
@@ -11592,6 +11592,102 @@ let s$2 = class s{registerComponent(e,t){customElements.get(e)||customElements.d
|
|
|
11592
11592
|
|
|
11593
11593
|
var popoverVersion = '6.0.1';
|
|
11594
11594
|
|
|
11595
|
+
/**
|
|
11596
|
+
* Single source of truth for parsing and matching blackout dates across the
|
|
11597
|
+
* datepicker. Both `auro-calendar` (memoized Set + `isDateBlackout`) and the
|
|
11598
|
+
* pre-`firstUpdated` fallback inside `auro-calendar-cell` route through these
|
|
11599
|
+
* helpers so the YYYY-MM-DD → seconds conversion and the merge-with-legacy
|
|
11600
|
+
* `disabledDays` rules are defined exactly once.
|
|
11601
|
+
*/
|
|
11602
|
+
|
|
11603
|
+
/**
|
|
11604
|
+
* Converts a `YYYY-MM-DD` ISO date string to a Unix timestamp (seconds)
|
|
11605
|
+
* representing local midnight on that calendar day. Returns `null` for
|
|
11606
|
+
* inputs that don't parse to a finite timestamp.
|
|
11607
|
+
*
|
|
11608
|
+
* Uses the `new Date(year, monthIndex, day)` constructor (NOT
|
|
11609
|
+
* `new Date(isoStr)`) so the result is local-midnight rather than UTC
|
|
11610
|
+
* midnight — required to keep the calendar grid aligned with the user's
|
|
11611
|
+
* local calendar day in negative-offset timezones.
|
|
11612
|
+
*
|
|
11613
|
+
* @param {string} isoStr - Date string in `YYYY-MM-DD` format.
|
|
11614
|
+
* @returns {number|null} Local-midnight Unix timestamp (seconds), or null.
|
|
11615
|
+
*/
|
|
11616
|
+
function parseIsoToTimestamp(isoStr) {
|
|
11617
|
+
if (typeof isoStr !== 'string') {
|
|
11618
|
+
return null;
|
|
11619
|
+
}
|
|
11620
|
+
const parts = isoStr.split('-');
|
|
11621
|
+
if (parts.length !== 3) {
|
|
11622
|
+
return null;
|
|
11623
|
+
}
|
|
11624
|
+
const year = parseInt(parts[0], 10);
|
|
11625
|
+
const month = parseInt(parts[1], 10);
|
|
11626
|
+
const day = parseInt(parts[2], 10);
|
|
11627
|
+
if (!Number.isFinite(year) || !Number.isFinite(month) || !Number.isFinite(day)) {
|
|
11628
|
+
return null;
|
|
11629
|
+
}
|
|
11630
|
+
// Reject overflow values like "2024-13-40" — JS `new Date(year, month, day)`
|
|
11631
|
+
// silently normalizes those to a different calendar day, which would
|
|
11632
|
+
// disable the wrong date if we let the result through.
|
|
11633
|
+
if (month < 1 || month > 12 || day < 1 || day > 31) {
|
|
11634
|
+
return null;
|
|
11635
|
+
}
|
|
11636
|
+
const date = new Date(year, month - 1, day);
|
|
11637
|
+
// Guard the residual case where JS still rolls a value (e.g. Feb 30 → Mar 2).
|
|
11638
|
+
// After construction, getFullYear/getMonth/getDate should match the inputs.
|
|
11639
|
+
if (date.getFullYear() !== year || date.getMonth() !== month - 1 || date.getDate() !== day) {
|
|
11640
|
+
return null;
|
|
11641
|
+
}
|
|
11642
|
+
const ts = Math.floor(date.getTime() / 1000);
|
|
11643
|
+
return Number.isFinite(ts) ? ts : null;
|
|
11644
|
+
}
|
|
11645
|
+
|
|
11646
|
+
/**
|
|
11647
|
+
* Builds a `Set<number>` of seconds-since-epoch timestamps covering both the
|
|
11648
|
+
* legacy `disabledDays` (already-numeric) array and the ISO `blackoutDates`
|
|
11649
|
+
* array. Use this for O(1) membership checks in hot paths.
|
|
11650
|
+
*
|
|
11651
|
+
* @param {Array<string|number>|undefined} disabledDays - Legacy timestamp array.
|
|
11652
|
+
* @param {Array<string>|undefined} blackoutDates - ISO `YYYY-MM-DD` array.
|
|
11653
|
+
* @returns {Set<number>}
|
|
11654
|
+
*/
|
|
11655
|
+
function buildBlackoutSet(disabledDays, blackoutDates) {
|
|
11656
|
+
const set = new Set();
|
|
11657
|
+
if (Array.isArray(disabledDays)) {
|
|
11658
|
+
for (const day of disabledDays) {
|
|
11659
|
+
const ts = parseInt(day, 10);
|
|
11660
|
+
if (Number.isFinite(ts)) {
|
|
11661
|
+
set.add(ts);
|
|
11662
|
+
}
|
|
11663
|
+
}
|
|
11664
|
+
}
|
|
11665
|
+
if (Array.isArray(blackoutDates)) {
|
|
11666
|
+
for (const isoStr of blackoutDates) {
|
|
11667
|
+
const ts = parseIsoToTimestamp(isoStr);
|
|
11668
|
+
if (ts !== null) {
|
|
11669
|
+
set.add(ts);
|
|
11670
|
+
}
|
|
11671
|
+
}
|
|
11672
|
+
}
|
|
11673
|
+
return set;
|
|
11674
|
+
}
|
|
11675
|
+
|
|
11676
|
+
/**
|
|
11677
|
+
* One-shot membership test for a single timestamp against both blackout
|
|
11678
|
+
* sources. Allocates a Set on each call; only use this in cold paths
|
|
11679
|
+
* (e.g. the pre-`firstUpdated` cell fallback). Hot paths should hold the
|
|
11680
|
+
* Set returned from `buildBlackoutSet` and `.has(ts)` directly.
|
|
11681
|
+
*
|
|
11682
|
+
* @param {number} dateTs - Unix timestamp (seconds) to test.
|
|
11683
|
+
* @param {Array<string|number>|undefined} disabledDays - Legacy timestamp array.
|
|
11684
|
+
* @param {Array<string>|undefined} blackoutDates - ISO `YYYY-MM-DD` array.
|
|
11685
|
+
* @returns {boolean}
|
|
11686
|
+
*/
|
|
11687
|
+
function isBlackoutTimestamp(dateTs, disabledDays, blackoutDates) {
|
|
11688
|
+
return buildBlackoutSet(disabledDays, blackoutDates).has(dateTs);
|
|
11689
|
+
}
|
|
11690
|
+
|
|
11595
11691
|
/* eslint-disable curly, max-lines, no-underscore-dangle, no-magic-numbers, no-underscore-dangle, max-params, no-extra-parens, arrow-parens, max-lines, line-comment-position, no-inline-comments, lit/binding-positions, lit/no-invalid-html */
|
|
11596
11692
|
|
|
11597
11693
|
class AuroCalendarCell extends i$1 {
|
|
@@ -11790,8 +11886,10 @@ class AuroCalendarCell extends i$1 {
|
|
|
11790
11886
|
// consumer or test mutated cell.disabledDays directly), the Set does
|
|
11791
11887
|
// not reflect that addition — fall through to the per-cell scan only
|
|
11792
11888
|
// when the reference no longer matches. Production data flow keeps
|
|
11793
|
-
// these identical, so this branch stays cold.
|
|
11794
|
-
|
|
11889
|
+
// these identical, so this branch stays cold. Guarded with
|
|
11890
|
+
// Array.isArray to match `_getBlackoutSet`'s contract: non-array
|
|
11891
|
+
// values are treated as empty rather than crashing on `.findIndex`.
|
|
11892
|
+
if (Array.isArray(this.disabledDays) && this.disabledDays !== this.calendar.disabledDays && this.disabledDays.length > 0) {
|
|
11795
11893
|
if (this.disabledDays.findIndex((dd) => parseInt(dd, 10) === this.day.date) !== -1) {
|
|
11796
11894
|
return true;
|
|
11797
11895
|
}
|
|
@@ -11800,25 +11898,9 @@ class AuroCalendarCell extends i$1 {
|
|
|
11800
11898
|
}
|
|
11801
11899
|
|
|
11802
11900
|
// Pre-firstUpdated fallback — the cell may render once before the
|
|
11803
|
-
// ancestor calendar is wired up.
|
|
11804
|
-
//
|
|
11805
|
-
|
|
11806
|
-
(this.disabledDays.findIndex(dd => parseInt(dd, 10) === this.day.date) !== -1)) {
|
|
11807
|
-
return true;
|
|
11808
|
-
}
|
|
11809
|
-
|
|
11810
|
-
const blackoutDates = this.datepicker?.blackoutDates;
|
|
11811
|
-
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
11812
|
-
const date = new Date(this.day.date * 1000);
|
|
11813
|
-
const yyyy = date.getFullYear();
|
|
11814
|
-
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
11815
|
-
const dd = String(date.getDate()).padStart(2, '0');
|
|
11816
|
-
if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
|
|
11817
|
-
return true;
|
|
11818
|
-
}
|
|
11819
|
-
}
|
|
11820
|
-
|
|
11821
|
-
return false;
|
|
11901
|
+
// ancestor calendar is wired up. Routes through the shared
|
|
11902
|
+
// blackoutUtils helper so the parsing rules stay in one place.
|
|
11903
|
+
return isBlackoutTimestamp(this.day.date, this.disabledDays, this.datepicker?.blackoutDates);
|
|
11822
11904
|
}
|
|
11823
11905
|
|
|
11824
11906
|
/**
|
|
@@ -12218,9 +12300,14 @@ class AuroCalendarCell extends i$1 {
|
|
|
12218
12300
|
|
|
12219
12301
|
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
12220
12302
|
if (outOfRange) {
|
|
12303
|
+
// Strip every aria attribute the in-range branch may have set on a
|
|
12304
|
+
// previous render — if a cell flips from in-range to out-of-range
|
|
12305
|
+
// (calendar shifts months, minDate/maxDate change, etc.).
|
|
12221
12306
|
this.removeAttribute('role');
|
|
12222
12307
|
this.removeAttribute('aria-label');
|
|
12223
12308
|
this.removeAttribute('aria-current');
|
|
12309
|
+
this.removeAttribute('aria-selected');
|
|
12310
|
+
this.removeAttribute('aria-disabled');
|
|
12224
12311
|
return;
|
|
12225
12312
|
}
|
|
12226
12313
|
|
|
@@ -13475,7 +13562,7 @@ class AuroBibtemplate extends i$1 {
|
|
|
13475
13562
|
}
|
|
13476
13563
|
}
|
|
13477
13564
|
|
|
13478
|
-
var formkitVersion$2 = '
|
|
13565
|
+
var formkitVersion$2 = '202606252132';
|
|
13479
13566
|
|
|
13480
13567
|
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}
|
|
13481
13568
|
`,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}}
|
|
@@ -14163,35 +14250,28 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
14163
14250
|
* @returns {Set<Number>}
|
|
14164
14251
|
*/
|
|
14165
14252
|
_getBlackoutSet() {
|
|
14166
|
-
|
|
14253
|
+
// Normalize non-array values to a stable `null` sentinel rather than a
|
|
14254
|
+
// fresh `[]` per call — otherwise the reference-identity cache key
|
|
14255
|
+
// (`_cachedBlackoutDisabledDays === disabledDays`) never matches on
|
|
14256
|
+
// subsequent calls and the Set rebuilds every time. `buildBlackoutSet`
|
|
14257
|
+
// already treats null/non-array as "no legacy disabledDays" via its
|
|
14258
|
+
// own Array.isArray gate.
|
|
14259
|
+
const disabledDays = Array.isArray(this.disabledDays) ? this.disabledDays : null;
|
|
14167
14260
|
const blackoutDates = this.datepicker?.blackoutDates;
|
|
14168
|
-
if (this._blackoutSet
|
|
14169
|
-
|
|
14170
|
-
|
|
14261
|
+
if (this._blackoutSet &&
|
|
14262
|
+
this._cachedBlackoutDisabledDays === disabledDays &&
|
|
14263
|
+
this._cachedBlackoutDates === blackoutDates) {
|
|
14171
14264
|
return this._blackoutSet;
|
|
14172
14265
|
}
|
|
14173
14266
|
|
|
14174
|
-
if (disabledDays.length > 0) {
|
|
14267
|
+
if (disabledDays && disabledDays.length > 0) {
|
|
14175
14268
|
this._warnDisabledDaysDeprecated();
|
|
14176
14269
|
}
|
|
14177
14270
|
|
|
14178
|
-
|
|
14179
|
-
|
|
14180
|
-
// Parse YYYY-MM-DD as local date to avoid UTC shift issues.
|
|
14181
|
-
if (Array.isArray(blackoutDates)) {
|
|
14182
|
-
for (const isoStr of blackoutDates) {
|
|
14183
|
-
const parts = isoStr.split('-');
|
|
14184
|
-
const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
|
|
14185
|
-
if (Number.isFinite(ts)) {
|
|
14186
|
-
set.add(ts);
|
|
14187
|
-
}
|
|
14188
|
-
}
|
|
14189
|
-
}
|
|
14190
|
-
|
|
14191
|
-
this._blackoutSet = set;
|
|
14271
|
+
this._blackoutSet = buildBlackoutSet(disabledDays, blackoutDates);
|
|
14192
14272
|
this._cachedBlackoutDisabledDays = disabledDays;
|
|
14193
14273
|
this._cachedBlackoutDates = blackoutDates;
|
|
14194
|
-
return
|
|
14274
|
+
return this._blackoutSet;
|
|
14195
14275
|
}
|
|
14196
14276
|
|
|
14197
14277
|
/**
|
|
@@ -14840,32 +14920,15 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
14840
14920
|
}
|
|
14841
14921
|
|
|
14842
14922
|
/**
|
|
14843
|
-
* Checks whether a given date is a blackout date.
|
|
14923
|
+
* Checks whether a given date is a blackout date. Delegates to the
|
|
14924
|
+
* memoized `_getBlackoutSet` so the YYYY-MM-DD parsing and the
|
|
14925
|
+
* legacy/ISO merge rules live in exactly one place (see `blackoutUtils.js`).
|
|
14844
14926
|
* @private
|
|
14845
14927
|
* @param {Number} dateTs - Unix timestamp (seconds).
|
|
14846
14928
|
* @returns {Boolean} True if the date is blacked out.
|
|
14847
14929
|
*/
|
|
14848
14930
|
isDateBlackout(dateTs) {
|
|
14849
|
-
|
|
14850
|
-
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
14851
|
-
if (this.disabledDays.findIndex((day) => parseInt(day, 10) === dateTs) !== -1) {
|
|
14852
|
-
return true;
|
|
14853
|
-
}
|
|
14854
|
-
}
|
|
14855
|
-
|
|
14856
|
-
// Check ISO blackoutDates.
|
|
14857
|
-
const blackoutDates = this.datepicker?.blackoutDates;
|
|
14858
|
-
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
14859
|
-
const date = new Date(dateTs * 1000);
|
|
14860
|
-
const yyyy = date.getFullYear();
|
|
14861
|
-
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
14862
|
-
const dd = String(date.getDate()).padStart(2, '0');
|
|
14863
|
-
if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
|
|
14864
|
-
return true;
|
|
14865
|
-
}
|
|
14866
|
-
}
|
|
14867
|
-
|
|
14868
|
-
return false;
|
|
14931
|
+
return this._getBlackoutSet().has(dateTs);
|
|
14869
14932
|
}
|
|
14870
14933
|
|
|
14871
14934
|
/**
|
|
@@ -19154,7 +19217,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
|
|
|
19154
19217
|
}
|
|
19155
19218
|
};
|
|
19156
19219
|
|
|
19157
|
-
var formkitVersion$1 = '
|
|
19220
|
+
var formkitVersion$1 = '202606252132';
|
|
19158
19221
|
|
|
19159
19222
|
let AuroElement$2 = class AuroElement extends i$1 {
|
|
19160
19223
|
static get properties() {
|
|
@@ -32754,7 +32817,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
|
|
|
32754
32817
|
}
|
|
32755
32818
|
};
|
|
32756
32819
|
|
|
32757
|
-
var formkitVersion = '
|
|
32820
|
+
var formkitVersion = '202606252132';
|
|
32758
32821
|
|
|
32759
32822
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
32760
32823
|
// See LICENSE in the project root for license information.
|
|
@@ -34662,7 +34725,10 @@ class AuroDatePicker extends AuroElement {
|
|
|
34662
34725
|
},
|
|
34663
34726
|
|
|
34664
34727
|
/**
|
|
34665
|
-
* Label announced for cells after
|
|
34728
|
+
* Label announced for cells after a fully selected range (both
|
|
34729
|
+
* `dateFrom` and `dateTo` are set). While a range is still being
|
|
34730
|
+
* picked (`dateFrom` set, `dateTo` unset), focused cells past the
|
|
34731
|
+
* start use `rangeLabelEndPreview` instead.
|
|
34666
34732
|
* @default 'after range'
|
|
34667
34733
|
*/
|
|
34668
34734
|
rangeLabelAfterRange: {
|
|
@@ -34718,7 +34784,7 @@ class AuroDatePicker extends AuroElement {
|
|
|
34718
34784
|
},
|
|
34719
34785
|
|
|
34720
34786
|
/**
|
|
34721
|
-
* Dates that the user should have for reference as part of their decision
|
|
34787
|
+
* Dates that the user should have for reference as part of their decision-making when selecting a date.
|
|
34722
34788
|
* This should be a JSON string array of ISO date strings (`YYYY-MM-DD`).
|
|
34723
34789
|
*/
|
|
34724
34790
|
referenceDates: {
|
|
@@ -35457,12 +35523,23 @@ class AuroDatePicker extends AuroElement {
|
|
|
35457
35523
|
const { signal } = this._listenerAbortController;
|
|
35458
35524
|
|
|
35459
35525
|
this.calendar.addEventListener('auroCalendar-dateSelected', () => {
|
|
35460
|
-
|
|
35461
|
-
|
|
35526
|
+
// Compare the input's ISO value against the *converted* calendar
|
|
35527
|
+
// timestamp (the vendor's `dateFrom`/`dateTo` are Unix-seconds
|
|
35528
|
+
// strings — comparing the input ISO directly against them would
|
|
35529
|
+
// never match, so the write would fire on every event and emit
|
|
35530
|
+
// redundant input/change activity).
|
|
35531
|
+
if (this.calendar.dateFrom !== undefined) {
|
|
35532
|
+
const fromIso = this.convertWcTimeToDate(this.calendar.dateFrom);
|
|
35533
|
+
if (this.inputList[0].value !== fromIso) {
|
|
35534
|
+
this.inputList[0].value = fromIso;
|
|
35535
|
+
}
|
|
35462
35536
|
}
|
|
35463
35537
|
|
|
35464
|
-
if (this.inputList[1] && this.calendar.dateTo
|
|
35465
|
-
|
|
35538
|
+
if (this.inputList[1] && this.calendar.dateTo) {
|
|
35539
|
+
const toIso = this.convertWcTimeToDate(this.calendar.dateTo);
|
|
35540
|
+
if (this.inputList[1].value !== toIso) {
|
|
35541
|
+
this.inputList[1].value = toIso;
|
|
35542
|
+
}
|
|
35466
35543
|
}
|
|
35467
35544
|
}, { signal });
|
|
35468
35545
|
|
|
@@ -35727,7 +35804,12 @@ class AuroDatePicker extends AuroElement {
|
|
|
35727
35804
|
* @returns {void}
|
|
35728
35805
|
*/
|
|
35729
35806
|
_warnInvalidLocale(badLocale) {
|
|
35730
|
-
|
|
35807
|
+
// Stringify without coalescing — `String(undefined)` / `String(null)`
|
|
35808
|
+
// surface the actual offending value in the log, instead of the
|
|
35809
|
+
// ambiguous `Locale ""` that `String(badLocale ?? '')` would produce.
|
|
35810
|
+
// Dedup still works correctly because each unique stringification
|
|
35811
|
+
// becomes its own Set entry.
|
|
35812
|
+
const key = String(badLocale);
|
|
35731
35813
|
const seen = AuroDatePicker._warnedInvalidLocales;
|
|
35732
35814
|
if (seen.has(key)) {
|
|
35733
35815
|
return;
|
|
@@ -36045,6 +36127,15 @@ class AuroDatePicker extends AuroElement {
|
|
|
36045
36127
|
// Add the tag name as an attribute if it is different than the component name
|
|
36046
36128
|
this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
|
|
36047
36129
|
|
|
36130
|
+
// If the element was disconnected before this first render finished,
|
|
36131
|
+
// disconnectedCallback's microtask already aborted the controller. The
|
|
36132
|
+
// connectedCallback reinit guard skips that case because `hasUpdated`
|
|
36133
|
+
// is still false. Mint a fresh controller here so configure* registers
|
|
36134
|
+
// listeners against a live signal.
|
|
36135
|
+
if (this._listenerAbortController.signal.aborted) {
|
|
36136
|
+
this._listenerAbortController = new AbortController();
|
|
36137
|
+
}
|
|
36138
|
+
|
|
36048
36139
|
this.configureDropdown();
|
|
36049
36140
|
this.configureInput();
|
|
36050
36141
|
this.configureCalendar();
|
|
@@ -36056,6 +36147,22 @@ class AuroDatePicker extends AuroElement {
|
|
|
36056
36147
|
connectedCallback() {
|
|
36057
36148
|
super.connectedCallback();
|
|
36058
36149
|
|
|
36150
|
+
// True reconnect after `disconnectedCallback` aborted our controller:
|
|
36151
|
+
// the existing signal is dead, so listeners registered against it
|
|
36152
|
+
// would never fire. Create a fresh controller and re-run the
|
|
36153
|
+
// configure* wiring (each method is idempotent — it just re-caches
|
|
36154
|
+
// child refs and re-registers listeners against the new signal).
|
|
36155
|
+
// `hasUpdated` gates this so the *first* connect (which precedes
|
|
36156
|
+
// firstUpdated) still falls through to firstUpdated's initial wiring.
|
|
36157
|
+
if (this.hasUpdated && this._listenerAbortController.signal.aborted) {
|
|
36158
|
+
this._listenerAbortController = new AbortController();
|
|
36159
|
+
this.configureDropdown();
|
|
36160
|
+
this.configureInput();
|
|
36161
|
+
this.configureCalendar();
|
|
36162
|
+
this.configureDatepicker();
|
|
36163
|
+
this.configureClickHandler();
|
|
36164
|
+
}
|
|
36165
|
+
|
|
36059
36166
|
this.locale = this.domHandler.getLocale(this);
|
|
36060
36167
|
}
|
|
36061
36168
|
|