@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
|
@@ -11769,14 +11769,16 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11769
11769
|
this.label = 'Input label is undefined';
|
|
11770
11770
|
this.layout = 'classic';
|
|
11771
11771
|
this.locale = 'en-US';
|
|
11772
|
+
this._format = undefined;
|
|
11773
|
+
|
|
11774
|
+
/** @private */
|
|
11775
|
+
this._userSetFormat = false;
|
|
11772
11776
|
this.max = undefined;
|
|
11773
11777
|
this.maxLength = undefined;
|
|
11774
11778
|
this.min = undefined;
|
|
11775
11779
|
this.minLength = undefined;
|
|
11776
11780
|
this.noValidate = false;
|
|
11777
11781
|
this.onDark = false;
|
|
11778
|
-
// Raw values returned from the input mask before model normalization.
|
|
11779
|
-
this._rawMaskValue = undefined;
|
|
11780
11782
|
this.required = false;
|
|
11781
11783
|
this.setCustomValidityForType = undefined;
|
|
11782
11784
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -11934,7 +11936,8 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11934
11936
|
*/
|
|
11935
11937
|
format: {
|
|
11936
11938
|
type: String,
|
|
11937
|
-
reflect: true
|
|
11939
|
+
reflect: true,
|
|
11940
|
+
noAccessor: true
|
|
11938
11941
|
},
|
|
11939
11942
|
|
|
11940
11943
|
/**
|
|
@@ -12272,6 +12275,34 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12272
12275
|
return this.max && dateFormatter$3.isValidDate(this.max) ? dateFormatter$3.stringToDateInstance(this.max) : undefined;
|
|
12273
12276
|
}
|
|
12274
12277
|
|
|
12278
|
+
get format() {
|
|
12279
|
+
return this._format;
|
|
12280
|
+
}
|
|
12281
|
+
|
|
12282
|
+
/**
|
|
12283
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
12284
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
12285
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
12286
|
+
*/
|
|
12287
|
+
set format(value) {
|
|
12288
|
+
const oldValue = this._format;
|
|
12289
|
+
this._format = value ? value.toLowerCase() : value;
|
|
12290
|
+
this._userSetFormat = Boolean(value);
|
|
12291
|
+
this.requestUpdate('format', oldValue);
|
|
12292
|
+
}
|
|
12293
|
+
|
|
12294
|
+
/**
|
|
12295
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
12296
|
+
* so that a subsequent locale change can still update the format.
|
|
12297
|
+
* @private
|
|
12298
|
+
* @param {string} value
|
|
12299
|
+
*/
|
|
12300
|
+
_setFormatFromLocale(value) {
|
|
12301
|
+
const oldValue = this._format;
|
|
12302
|
+
this._format = value ? value.toLowerCase() : value;
|
|
12303
|
+
this.requestUpdate('format', oldValue);
|
|
12304
|
+
}
|
|
12305
|
+
|
|
12275
12306
|
connectedCallback() {
|
|
12276
12307
|
super.connectedCallback();
|
|
12277
12308
|
|
|
@@ -12319,15 +12350,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12319
12350
|
|
|
12320
12351
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
12321
12352
|
|
|
12322
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
12323
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
12324
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
12325
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
12326
|
-
// unset.
|
|
12327
|
-
if (this.format) {
|
|
12328
|
-
this.format = this.format.toLowerCase();
|
|
12329
|
-
}
|
|
12330
|
-
|
|
12331
12353
|
// use validity message override if declared when initializing the component
|
|
12332
12354
|
if (this.hasAttribute('setCustomValidity')) {
|
|
12333
12355
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -12434,12 +12456,10 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12434
12456
|
updated(changedProperties) {
|
|
12435
12457
|
super.updated(changedProperties);
|
|
12436
12458
|
|
|
12437
|
-
// When locale changes
|
|
12438
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
12459
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
12439
12460
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
12440
|
-
|
|
12441
|
-
|
|
12442
|
-
this.format = getDateFormatFromLocale$3(this.locale);
|
|
12461
|
+
if (!this._userSetFormat) {
|
|
12462
|
+
this._setFormatFromLocale(getDateFormatFromLocale$3(this.locale));
|
|
12443
12463
|
}
|
|
12444
12464
|
}
|
|
12445
12465
|
|
|
@@ -12610,9 +12630,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12610
12630
|
this.maskInstance.on('accept', () => {
|
|
12611
12631
|
if (this._configuringMask) return;
|
|
12612
12632
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
12613
|
-
if (this.type === "date") {
|
|
12614
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
12615
|
-
}
|
|
12616
12633
|
});
|
|
12617
12634
|
|
|
12618
12635
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -12620,9 +12637,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12620
12637
|
this.maskInstance.on('complete', () => {
|
|
12621
12638
|
if (this._configuringMask) return;
|
|
12622
12639
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
12623
|
-
if (this.type === "date") {
|
|
12624
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
12625
|
-
}
|
|
12626
12640
|
});
|
|
12627
12641
|
|
|
12628
12642
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -12859,8 +12873,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12859
12873
|
|
|
12860
12874
|
// Set default date format if type=date and no format is defined
|
|
12861
12875
|
if (this.type === "date" && !this.format) {
|
|
12862
|
-
|
|
12863
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
12876
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
12864
12877
|
this.util.updateFormat(this.format);
|
|
12865
12878
|
}
|
|
12866
12879
|
}
|
|
@@ -12889,7 +12902,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12889
12902
|
const creditCard = this.matchInputValueToCreditCard();
|
|
12890
12903
|
const previousFormat = this.format;
|
|
12891
12904
|
|
|
12892
|
-
this.
|
|
12905
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
12893
12906
|
|
|
12894
12907
|
this.maxLength = creditCard.formatLength;
|
|
12895
12908
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -13363,7 +13376,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$3 {
|
|
|
13363
13376
|
}
|
|
13364
13377
|
};
|
|
13365
13378
|
|
|
13366
|
-
var formkitVersion$8 = '
|
|
13379
|
+
var formkitVersion$8 = '202607022225';
|
|
13367
13380
|
|
|
13368
13381
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
13369
13382
|
// See LICENSE in the project root for license information.
|
|
@@ -25734,23 +25747,28 @@ var popoverVersion = '6.0.1';
|
|
|
25734
25747
|
* @returns {number|null} Local-midnight Unix timestamp (seconds), or null.
|
|
25735
25748
|
*/
|
|
25736
25749
|
function parseIsoToTimestamp(isoStr) {
|
|
25750
|
+
// Strict YYYY-MM-DD matcher with named groups. Rejects trailing garbage
|
|
25751
|
+
// ("2024x-01-01"), short segments ("2024-1-1"), and any non-digit
|
|
25752
|
+
// characters. `parseInt` alone accepted both because it stops at the
|
|
25753
|
+
// first non-digit and doesn't require a minimum length.
|
|
25754
|
+
const ISO_DATE_RE = /^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})$/u;
|
|
25755
|
+
const MAX_MONTH = 12;
|
|
25756
|
+
const MAX_DAY = 31;
|
|
25757
|
+
|
|
25737
25758
|
if (typeof isoStr !== 'string') {
|
|
25738
25759
|
return null;
|
|
25739
25760
|
}
|
|
25740
|
-
const
|
|
25741
|
-
if (
|
|
25742
|
-
return null;
|
|
25743
|
-
}
|
|
25744
|
-
const year = parseInt(parts[0], 10);
|
|
25745
|
-
const month = parseInt(parts[1], 10);
|
|
25746
|
-
const day = parseInt(parts[2], 10);
|
|
25747
|
-
if (!Number.isFinite(year) || !Number.isFinite(month) || !Number.isFinite(day)) {
|
|
25761
|
+
const match = ISO_DATE_RE.exec(isoStr);
|
|
25762
|
+
if (!match) {
|
|
25748
25763
|
return null;
|
|
25749
25764
|
}
|
|
25765
|
+
const year = Number(match.groups.year);
|
|
25766
|
+
const month = Number(match.groups.month);
|
|
25767
|
+
const day = Number(match.groups.day);
|
|
25750
25768
|
// Reject overflow values like "2024-13-40" — JS `new Date(year, month, day)`
|
|
25751
25769
|
// silently normalizes those to a different calendar day, which would
|
|
25752
25770
|
// disable the wrong date if we let the result through.
|
|
25753
|
-
if (month < 1 || month >
|
|
25771
|
+
if (month < 1 || month > MAX_MONTH || day < 1 || day > MAX_DAY) {
|
|
25754
25772
|
return null;
|
|
25755
25773
|
}
|
|
25756
25774
|
const date = new Date(year, month - 1, day);
|
|
@@ -26328,6 +26346,18 @@ class AuroCalendarCell extends i$3 {
|
|
|
26328
26346
|
}
|
|
26329
26347
|
|
|
26330
26348
|
firstUpdated() {
|
|
26349
|
+
this._initFromAncestors();
|
|
26350
|
+
}
|
|
26351
|
+
|
|
26352
|
+
/**
|
|
26353
|
+
* Wires the cell to its ancestor calendar-month and calendar (and, via
|
|
26354
|
+
* the calendar, to the datepicker). Extracted from firstUpdated() so the
|
|
26355
|
+
* retry loop can re-attempt without recursively invoking a Lit lifecycle
|
|
26356
|
+
* method (which is outside the framework's contract).
|
|
26357
|
+
* @private
|
|
26358
|
+
* @returns {void}
|
|
26359
|
+
*/
|
|
26360
|
+
_initFromAncestors() {
|
|
26331
26361
|
const calendarMonth = this.runtimeUtils.closestElement('auro-formkit-calendar-month', this);
|
|
26332
26362
|
const calendar = this.runtimeUtils.closestElement('auro-formkit-calendar', calendarMonth);
|
|
26333
26363
|
|
|
@@ -26336,12 +26366,12 @@ class AuroCalendarCell extends i$3 {
|
|
|
26336
26366
|
// to attach — but cap attempts so a permanently detached cell doesn't
|
|
26337
26367
|
// spin forever. 10 turns is far more than any observed race needs.
|
|
26338
26368
|
this._firstUpdatedRetries = (this._firstUpdatedRetries || 0) + 1;
|
|
26339
|
-
if (this._firstUpdatedRetries > 10) {
|
|
26369
|
+
if (this._firstUpdatedRetries > 10) {
|
|
26340
26370
|
return;
|
|
26341
26371
|
}
|
|
26342
26372
|
this._firstUpdatedRetryTimer = setTimeout(() => {
|
|
26343
26373
|
this._firstUpdatedRetryTimer = null;
|
|
26344
|
-
this.
|
|
26374
|
+
this._initFromAncestors();
|
|
26345
26375
|
}, 0);
|
|
26346
26376
|
return;
|
|
26347
26377
|
}
|
|
@@ -27748,7 +27778,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$3 {
|
|
|
27748
27778
|
}
|
|
27749
27779
|
};
|
|
27750
27780
|
|
|
27751
|
-
var formkitVersion$2$1 = '
|
|
27781
|
+
var formkitVersion$2$1 = '202607022225';
|
|
27752
27782
|
|
|
27753
27783
|
let l$1$2 = 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$2`${s$3(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1$2 = 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$1$2 = 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$1$3=i$6`: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}
|
|
27754
27784
|
`,u$4$2=i$6`.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}}
|
|
@@ -27887,7 +27917,10 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27887
27917
|
* Support will be removed in a future major release.
|
|
27888
27918
|
* @private
|
|
27889
27919
|
*/
|
|
27890
|
-
|
|
27920
|
+
// Initialize the backing field directly so the constructor's default
|
|
27921
|
+
// empty array doesn't trigger the deprecation warning. Assignments from
|
|
27922
|
+
// consumers still route through the setter below.
|
|
27923
|
+
this._disabledDays = [];
|
|
27891
27924
|
|
|
27892
27925
|
/**
|
|
27893
27926
|
* @private
|
|
@@ -27920,6 +27953,44 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27920
27953
|
this._calendarInstanceId = Date.now().toString(36);
|
|
27921
27954
|
}
|
|
27922
27955
|
|
|
27956
|
+
/**
|
|
27957
|
+
* @deprecated See constructor JSDoc — migrate to
|
|
27958
|
+
* `auro-datepicker.blackoutDates`. The getter/setter pair exists so the
|
|
27959
|
+
* one-time deprecation warning fires as soon as a consumer assigns a
|
|
27960
|
+
* non-empty array (empty assignments are ignored — an empty array is
|
|
27961
|
+
* indistinguishable from the constructor default and would produce a
|
|
27962
|
+
* spurious warning), rather than only when `_getBlackoutSet()` happens
|
|
27963
|
+
* to rebuild.
|
|
27964
|
+
* @returns {Array} The current legacy `disabledDays` array.
|
|
27965
|
+
*/
|
|
27966
|
+
get disabledDays() {
|
|
27967
|
+
return this._disabledDays;
|
|
27968
|
+
}
|
|
27969
|
+
|
|
27970
|
+
/**
|
|
27971
|
+
* @param {Array} value - The legacy `disabledDays` array to set.
|
|
27972
|
+
*/
|
|
27973
|
+
set disabledDays(value) {
|
|
27974
|
+
const oldValue = this._disabledDays;
|
|
27975
|
+
// Coerce non-arrays to `[]`. Consumers occasionally pass `null`
|
|
27976
|
+
// (Lit's Array attribute converter returns null for a missing/empty
|
|
27977
|
+
// attribute) or misuse the API; downstream code in
|
|
27978
|
+
// `auro-calendar-cell.isEnabled` calls `.findIndex()` on this value
|
|
27979
|
+
// without an Array.isArray guard, so a truthy non-array would throw
|
|
27980
|
+
// at render.
|
|
27981
|
+
const coerced = Array.isArray(value) ? value : [];
|
|
27982
|
+
if (coerced.length > 0) {
|
|
27983
|
+
this._warnDisabledDaysDeprecated();
|
|
27984
|
+
}
|
|
27985
|
+
this._disabledDays = coerced;
|
|
27986
|
+
// `disabledDays` is a Lit `@property({ type: Array })` on the
|
|
27987
|
+
// RangeDatepicker base class; Lit's generated setter (which we've
|
|
27988
|
+
// overridden here to insert the warning) is what normally invalidates
|
|
27989
|
+
// the reactive cycle. Re-invoke requestUpdate manually so consumer
|
|
27990
|
+
// assignments still re-render the calendar.
|
|
27991
|
+
this.requestUpdate('disabledDays', oldValue);
|
|
27992
|
+
}
|
|
27993
|
+
|
|
27923
27994
|
static get styles() {
|
|
27924
27995
|
return [
|
|
27925
27996
|
styleCss$7$1,
|
|
@@ -28659,12 +28730,15 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
28659
28730
|
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
28660
28731
|
// the number of rendered months.
|
|
28661
28732
|
//
|
|
28662
|
-
// numCalendars is assigned
|
|
28663
|
-
//
|
|
28664
|
-
//
|
|
28665
|
-
//
|
|
28666
|
-
//
|
|
28667
|
-
//
|
|
28733
|
+
// numCalendars is assigned inside renderAllCalendars(), which runs during
|
|
28734
|
+
// render() — so by the time the visible-change handler in updated()
|
|
28735
|
+
// calls computeActiveDate() in the same cycle, numCalendars is normally
|
|
28736
|
+
// set. Guard against the pre-first-render path anyway (e.g. any future
|
|
28737
|
+
// caller that reaches computeActiveDate before render() has run):
|
|
28738
|
+
// Math.max(undefined, 1) is NaN, which would silently skip the
|
|
28739
|
+
// visible-month scan below. Fall back to maximumRenderableMonths'
|
|
28740
|
+
// desktop default (1 for non-range, 2 for range) so the scan window is
|
|
28741
|
+
// correctly sized whenever numCalendars is not yet populated.
|
|
28668
28742
|
let renderedMonths = null;
|
|
28669
28743
|
|
|
28670
28744
|
if (Number.isFinite(this.numCalendars) && this.numCalendars > 0) {
|
|
@@ -33597,7 +33671,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$3 {
|
|
|
33597
33671
|
}
|
|
33598
33672
|
};
|
|
33599
33673
|
|
|
33600
|
-
var formkitVersion$1$3 = '
|
|
33674
|
+
var formkitVersion$1$3 = '202607022225';
|
|
33601
33675
|
|
|
33602
33676
|
let AuroElement$2$2 = class AuroElement extends i$3 {
|
|
33603
33677
|
static get properties() {
|
|
@@ -45605,14 +45679,16 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45605
45679
|
this.label = 'Input label is undefined';
|
|
45606
45680
|
this.layout = 'classic';
|
|
45607
45681
|
this.locale = 'en-US';
|
|
45682
|
+
this._format = undefined;
|
|
45683
|
+
|
|
45684
|
+
/** @private */
|
|
45685
|
+
this._userSetFormat = false;
|
|
45608
45686
|
this.max = undefined;
|
|
45609
45687
|
this.maxLength = undefined;
|
|
45610
45688
|
this.min = undefined;
|
|
45611
45689
|
this.minLength = undefined;
|
|
45612
45690
|
this.noValidate = false;
|
|
45613
45691
|
this.onDark = false;
|
|
45614
|
-
// Raw values returned from the input mask before model normalization.
|
|
45615
|
-
this._rawMaskValue = undefined;
|
|
45616
45692
|
this.required = false;
|
|
45617
45693
|
this.setCustomValidityForType = undefined;
|
|
45618
45694
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -45770,7 +45846,8 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45770
45846
|
*/
|
|
45771
45847
|
format: {
|
|
45772
45848
|
type: String,
|
|
45773
|
-
reflect: true
|
|
45849
|
+
reflect: true,
|
|
45850
|
+
noAccessor: true
|
|
45774
45851
|
},
|
|
45775
45852
|
|
|
45776
45853
|
/**
|
|
@@ -46108,6 +46185,34 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46108
46185
|
return this.max && dateFormatter$2.isValidDate(this.max) ? dateFormatter$2.stringToDateInstance(this.max) : undefined;
|
|
46109
46186
|
}
|
|
46110
46187
|
|
|
46188
|
+
get format() {
|
|
46189
|
+
return this._format;
|
|
46190
|
+
}
|
|
46191
|
+
|
|
46192
|
+
/**
|
|
46193
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
46194
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
46195
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
46196
|
+
*/
|
|
46197
|
+
set format(value) {
|
|
46198
|
+
const oldValue = this._format;
|
|
46199
|
+
this._format = value ? value.toLowerCase() : value;
|
|
46200
|
+
this._userSetFormat = Boolean(value);
|
|
46201
|
+
this.requestUpdate('format', oldValue);
|
|
46202
|
+
}
|
|
46203
|
+
|
|
46204
|
+
/**
|
|
46205
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
46206
|
+
* so that a subsequent locale change can still update the format.
|
|
46207
|
+
* @private
|
|
46208
|
+
* @param {string} value
|
|
46209
|
+
*/
|
|
46210
|
+
_setFormatFromLocale(value) {
|
|
46211
|
+
const oldValue = this._format;
|
|
46212
|
+
this._format = value ? value.toLowerCase() : value;
|
|
46213
|
+
this.requestUpdate('format', oldValue);
|
|
46214
|
+
}
|
|
46215
|
+
|
|
46111
46216
|
connectedCallback() {
|
|
46112
46217
|
super.connectedCallback();
|
|
46113
46218
|
|
|
@@ -46155,15 +46260,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46155
46260
|
|
|
46156
46261
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
46157
46262
|
|
|
46158
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
46159
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
46160
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
46161
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
46162
|
-
// unset.
|
|
46163
|
-
if (this.format) {
|
|
46164
|
-
this.format = this.format.toLowerCase();
|
|
46165
|
-
}
|
|
46166
|
-
|
|
46167
46263
|
// use validity message override if declared when initializing the component
|
|
46168
46264
|
if (this.hasAttribute('setCustomValidity')) {
|
|
46169
46265
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -46270,12 +46366,10 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46270
46366
|
updated(changedProperties) {
|
|
46271
46367
|
super.updated(changedProperties);
|
|
46272
46368
|
|
|
46273
|
-
// When locale changes
|
|
46274
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
46369
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
46275
46370
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
46276
|
-
|
|
46277
|
-
|
|
46278
|
-
this.format = getDateFormatFromLocale$2(this.locale);
|
|
46371
|
+
if (!this._userSetFormat) {
|
|
46372
|
+
this._setFormatFromLocale(getDateFormatFromLocale$2(this.locale));
|
|
46279
46373
|
}
|
|
46280
46374
|
}
|
|
46281
46375
|
|
|
@@ -46446,9 +46540,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46446
46540
|
this.maskInstance.on('accept', () => {
|
|
46447
46541
|
if (this._configuringMask) return;
|
|
46448
46542
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
46449
|
-
if (this.type === "date") {
|
|
46450
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
46451
|
-
}
|
|
46452
46543
|
});
|
|
46453
46544
|
|
|
46454
46545
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -46456,9 +46547,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46456
46547
|
this.maskInstance.on('complete', () => {
|
|
46457
46548
|
if (this._configuringMask) return;
|
|
46458
46549
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
46459
|
-
if (this.type === "date") {
|
|
46460
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
46461
|
-
}
|
|
46462
46550
|
});
|
|
46463
46551
|
|
|
46464
46552
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -46695,8 +46783,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46695
46783
|
|
|
46696
46784
|
// Set default date format if type=date and no format is defined
|
|
46697
46785
|
if (this.type === "date" && !this.format) {
|
|
46698
|
-
|
|
46699
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
46786
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
46700
46787
|
this.util.updateFormat(this.format);
|
|
46701
46788
|
}
|
|
46702
46789
|
}
|
|
@@ -46725,7 +46812,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
46725
46812
|
const creditCard = this.matchInputValueToCreditCard();
|
|
46726
46813
|
const previousFormat = this.format;
|
|
46727
46814
|
|
|
46728
|
-
this.
|
|
46815
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
46729
46816
|
|
|
46730
46817
|
this.maxLength = creditCard.formatLength;
|
|
46731
46818
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -47199,7 +47286,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$3 {
|
|
|
47199
47286
|
}
|
|
47200
47287
|
};
|
|
47201
47288
|
|
|
47202
|
-
var formkitVersion$7 = '
|
|
47289
|
+
var formkitVersion$7 = '202607022225';
|
|
47203
47290
|
|
|
47204
47291
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
47205
47292
|
// See LICENSE in the project root for license information.
|
|
@@ -52120,7 +52207,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$3 {
|
|
|
52120
52207
|
}
|
|
52121
52208
|
};
|
|
52122
52209
|
|
|
52123
|
-
var formkitVersion$1$2 = '
|
|
52210
|
+
var formkitVersion$1$2 = '202607022225';
|
|
52124
52211
|
|
|
52125
52212
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
52126
52213
|
// See LICENSE in the project root for license information.
|
|
@@ -56448,7 +56535,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$3 {
|
|
|
56448
56535
|
}
|
|
56449
56536
|
};
|
|
56450
56537
|
|
|
56451
|
-
var formkitVersion$6 = '
|
|
56538
|
+
var formkitVersion$6 = '202607022225';
|
|
56452
56539
|
|
|
56453
56540
|
let AuroElement$1$2 = class AuroElement extends i$3 {
|
|
56454
56541
|
static get properties() {
|
|
@@ -60428,7 +60515,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$3 {
|
|
|
60428
60515
|
}
|
|
60429
60516
|
};
|
|
60430
60517
|
|
|
60431
|
-
var formkitVersion$5 = '
|
|
60518
|
+
var formkitVersion$5 = '202607022225';
|
|
60432
60519
|
|
|
60433
60520
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
60434
60521
|
// See LICENSE in the project root for license information.
|
|
@@ -62193,7 +62280,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$3 {
|
|
|
62193
62280
|
}
|
|
62194
62281
|
};
|
|
62195
62282
|
|
|
62196
|
-
var formkitVersion$4 = '
|
|
62283
|
+
var formkitVersion$4 = '202607022225';
|
|
62197
62284
|
|
|
62198
62285
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
62199
62286
|
// See LICENSE in the project root for license information.
|
|
@@ -67414,7 +67501,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
|
|
|
67414
67501
|
}
|
|
67415
67502
|
};
|
|
67416
67503
|
|
|
67417
|
-
var formkitVersion$2 = '
|
|
67504
|
+
var formkitVersion$2 = '202607022225';
|
|
67418
67505
|
|
|
67419
67506
|
let AuroElement$2$1 = class AuroElement extends i$3 {
|
|
67420
67507
|
static get properties() {
|
|
@@ -79422,14 +79509,16 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79422
79509
|
this.label = 'Input label is undefined';
|
|
79423
79510
|
this.layout = 'classic';
|
|
79424
79511
|
this.locale = 'en-US';
|
|
79512
|
+
this._format = undefined;
|
|
79513
|
+
|
|
79514
|
+
/** @private */
|
|
79515
|
+
this._userSetFormat = false;
|
|
79425
79516
|
this.max = undefined;
|
|
79426
79517
|
this.maxLength = undefined;
|
|
79427
79518
|
this.min = undefined;
|
|
79428
79519
|
this.minLength = undefined;
|
|
79429
79520
|
this.noValidate = false;
|
|
79430
79521
|
this.onDark = false;
|
|
79431
|
-
// Raw values returned from the input mask before model normalization.
|
|
79432
|
-
this._rawMaskValue = undefined;
|
|
79433
79522
|
this.required = false;
|
|
79434
79523
|
this.setCustomValidityForType = undefined;
|
|
79435
79524
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -79587,7 +79676,8 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79587
79676
|
*/
|
|
79588
79677
|
format: {
|
|
79589
79678
|
type: String,
|
|
79590
|
-
reflect: true
|
|
79679
|
+
reflect: true,
|
|
79680
|
+
noAccessor: true
|
|
79591
79681
|
},
|
|
79592
79682
|
|
|
79593
79683
|
/**
|
|
@@ -79925,6 +80015,34 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79925
80015
|
return this.max && dateFormatter.isValidDate(this.max) ? dateFormatter.stringToDateInstance(this.max) : undefined;
|
|
79926
80016
|
}
|
|
79927
80017
|
|
|
80018
|
+
get format() {
|
|
80019
|
+
return this._format;
|
|
80020
|
+
}
|
|
80021
|
+
|
|
80022
|
+
/**
|
|
80023
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
80024
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
80025
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
80026
|
+
*/
|
|
80027
|
+
set format(value) {
|
|
80028
|
+
const oldValue = this._format;
|
|
80029
|
+
this._format = value ? value.toLowerCase() : value;
|
|
80030
|
+
this._userSetFormat = Boolean(value);
|
|
80031
|
+
this.requestUpdate('format', oldValue);
|
|
80032
|
+
}
|
|
80033
|
+
|
|
80034
|
+
/**
|
|
80035
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
80036
|
+
* so that a subsequent locale change can still update the format.
|
|
80037
|
+
* @private
|
|
80038
|
+
* @param {string} value
|
|
80039
|
+
*/
|
|
80040
|
+
_setFormatFromLocale(value) {
|
|
80041
|
+
const oldValue = this._format;
|
|
80042
|
+
this._format = value ? value.toLowerCase() : value;
|
|
80043
|
+
this.requestUpdate('format', oldValue);
|
|
80044
|
+
}
|
|
80045
|
+
|
|
79928
80046
|
connectedCallback() {
|
|
79929
80047
|
super.connectedCallback();
|
|
79930
80048
|
|
|
@@ -79972,15 +80090,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79972
80090
|
|
|
79973
80091
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
79974
80092
|
|
|
79975
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
79976
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
79977
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
79978
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
79979
|
-
// unset.
|
|
79980
|
-
if (this.format) {
|
|
79981
|
-
this.format = this.format.toLowerCase();
|
|
79982
|
-
}
|
|
79983
|
-
|
|
79984
80093
|
// use validity message override if declared when initializing the component
|
|
79985
80094
|
if (this.hasAttribute('setCustomValidity')) {
|
|
79986
80095
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -80087,12 +80196,10 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
80087
80196
|
updated(changedProperties) {
|
|
80088
80197
|
super.updated(changedProperties);
|
|
80089
80198
|
|
|
80090
|
-
// When locale changes
|
|
80091
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
80199
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
80092
80200
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
80093
|
-
|
|
80094
|
-
|
|
80095
|
-
this.format = getDateFormatFromLocale(this.locale);
|
|
80201
|
+
if (!this._userSetFormat) {
|
|
80202
|
+
this._setFormatFromLocale(getDateFormatFromLocale(this.locale));
|
|
80096
80203
|
}
|
|
80097
80204
|
}
|
|
80098
80205
|
|
|
@@ -80263,9 +80370,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
80263
80370
|
this.maskInstance.on('accept', () => {
|
|
80264
80371
|
if (this._configuringMask) return;
|
|
80265
80372
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
80266
|
-
if (this.type === "date") {
|
|
80267
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
80268
|
-
}
|
|
80269
80373
|
});
|
|
80270
80374
|
|
|
80271
80375
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -80273,9 +80377,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
80273
80377
|
this.maskInstance.on('complete', () => {
|
|
80274
80378
|
if (this._configuringMask) return;
|
|
80275
80379
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
80276
|
-
if (this.type === "date") {
|
|
80277
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
80278
|
-
}
|
|
80279
80380
|
});
|
|
80280
80381
|
|
|
80281
80382
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -80512,8 +80613,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
80512
80613
|
|
|
80513
80614
|
// Set default date format if type=date and no format is defined
|
|
80514
80615
|
if (this.type === "date" && !this.format) {
|
|
80515
|
-
|
|
80516
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
80616
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
80517
80617
|
this.util.updateFormat(this.format);
|
|
80518
80618
|
}
|
|
80519
80619
|
}
|
|
@@ -80542,7 +80642,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
80542
80642
|
const creditCard = this.matchInputValueToCreditCard();
|
|
80543
80643
|
const previousFormat = this.format;
|
|
80544
80644
|
|
|
80545
|
-
this.
|
|
80645
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
80546
80646
|
|
|
80547
80647
|
this.maxLength = creditCard.formatLength;
|
|
80548
80648
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -81016,7 +81116,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$3 {
|
|
|
81016
81116
|
}
|
|
81017
81117
|
};
|
|
81018
81118
|
|
|
81019
|
-
var formkitVersion$1$1 = '
|
|
81119
|
+
var formkitVersion$1$1 = '202607022225';
|
|
81020
81120
|
|
|
81021
81121
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
81022
81122
|
// See LICENSE in the project root for license information.
|
|
@@ -82142,7 +82242,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$3 {
|
|
|
82142
82242
|
}
|
|
82143
82243
|
};
|
|
82144
82244
|
|
|
82145
|
-
var formkitVersion$3 = '
|
|
82245
|
+
var formkitVersion$3 = '202607022225';
|
|
82146
82246
|
|
|
82147
82247
|
var styleCss$1$3 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
|
|
82148
82248
|
|
|
@@ -86919,9 +87019,6 @@ function navigateArrow(component, direction, options = {}) {
|
|
|
86919
87019
|
* @param {HTMLElement | null | undefined} menu - The auro-menu element.
|
|
86920
87020
|
* @returns {Array<HTMLElement>} Non-disabled options, empty array when none.
|
|
86921
87021
|
*/
|
|
86922
|
-
function getEnabledOptions(menu) {
|
|
86923
|
-
return (menu?.options || []).filter((option) => !option.disabled);
|
|
86924
|
-
}
|
|
86925
87022
|
|
|
86926
87023
|
/**
|
|
86927
87024
|
* Returns the active (selectable + visible) options for type-ahead navigation.
|
|
@@ -86991,8 +87088,10 @@ const selectKeyboardStrategy = {
|
|
|
86991
87088
|
End(component, evt, ctx) {
|
|
86992
87089
|
evt.preventDefault();
|
|
86993
87090
|
evt.stopPropagation();
|
|
86994
|
-
// `pop()` is safe here:
|
|
86995
|
-
|
|
87091
|
+
// `pop()` is safe here: getActiveOptions returns a fresh filtered array.
|
|
87092
|
+
// Uses "active" (not "enabled") so hidden and static rows — which a screen
|
|
87093
|
+
// reader must not announce as focused — are skipped.
|
|
87094
|
+
const lastOption = getActiveOptions(component.menu).pop();
|
|
86996
87095
|
if (!lastOption) {
|
|
86997
87096
|
return;
|
|
86998
87097
|
}
|
|
@@ -87023,7 +87122,7 @@ const selectKeyboardStrategy = {
|
|
|
87023
87122
|
Home(component, evt, ctx) {
|
|
87024
87123
|
evt.preventDefault();
|
|
87025
87124
|
evt.stopPropagation();
|
|
87026
|
-
const [firstOption] =
|
|
87125
|
+
const [firstOption] = getActiveOptions(component.menu);
|
|
87027
87126
|
if (!firstOption) {
|
|
87028
87127
|
return;
|
|
87029
87128
|
}
|
|
@@ -87048,6 +87147,15 @@ const selectKeyboardStrategy = {
|
|
|
87048
87147
|
},
|
|
87049
87148
|
|
|
87050
87149
|
default(component, evt, ctx) {
|
|
87150
|
+
// Ignore keys chorded with Ctrl/Meta/Alt so browser/OS shortcuts
|
|
87151
|
+
// (Cmd+C, Ctrl+V, Alt+X, Cmd+Space, …) don't leak into typeahead
|
|
87152
|
+
// or toggle the bib. Native <select> ignores modified keys.
|
|
87153
|
+
// ArrowUp/ArrowDown handle modifier+arrow explicitly above; this
|
|
87154
|
+
// guard only affects the default (printable/Space) branch.
|
|
87155
|
+
if (evt.ctrlKey || evt.metaKey || evt.altKey) {
|
|
87156
|
+
return;
|
|
87157
|
+
}
|
|
87158
|
+
|
|
87051
87159
|
// Space resolves to either typeahead-buffer extension or bib toggle
|
|
87052
87160
|
// depending on whether a type-ahead buffer is active. Mirrors native
|
|
87053
87161
|
// <select> and the WAI-ARIA APG Listbox guidance: mid-typeahead space
|
|
@@ -90978,7 +91086,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
|
|
|
90978
91086
|
}
|
|
90979
91087
|
};
|
|
90980
91088
|
|
|
90981
|
-
var formkitVersion$1 = '
|
|
91089
|
+
var formkitVersion$1 = '202607022225';
|
|
90982
91090
|
|
|
90983
91091
|
class AuroElement extends i$3 {
|
|
90984
91092
|
static get properties() {
|
|
@@ -93017,7 +93125,7 @@ class AuroHelpText extends i$3 {
|
|
|
93017
93125
|
}
|
|
93018
93126
|
}
|
|
93019
93127
|
|
|
93020
|
-
var formkitVersion = '
|
|
93128
|
+
var formkitVersion = '202607022225';
|
|
93021
93129
|
|
|
93022
93130
|
var styleCss = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.body-default{font-size:var(--wcss-body-default-font-size, 1rem);font-weight:var(--wcss-body-default-weight, );line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-default-emphasized{font-size:var(--wcss-body-default-emphasized-font-size, 1rem);font-weight:var(--wcss-body-default-emphasized-weight, );line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);font-weight:var(--wcss-body-lg-weight, );line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg,.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg-emphasized{font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);font-weight:var(--wcss-body-lg-emphasized-weight, );line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, 0.875rem);font-weight:var(--wcss-body-sm-weight, );line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-sm-emphasized{font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);font-weight:var(--wcss-body-sm-emphasized-weight, );line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-size:var(--wcss-body-xs-font-size, 0.75rem);font-weight:var(--wcss-body-xs-weight, );line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs,.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs-emphasized{font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);font-weight:var(--wcss-body-xs-emphasized-weight, );line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-size:var(--wcss-body-2xs-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-weight, );line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs,.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-2xs-emphasized{font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-emphasized-weight, );line-height:var(--wcss-body-2xs-emphasized-line-height, 0.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, 300);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, 300);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, 0.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, 0.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, 0.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, 0.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, 0.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, 0.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(0.875rem, 1.1666666667vw, 0.875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-outline-color: var(--ds-auro-select-outline-color)}:host{display:inline-block;text-align:left;vertical-align:top}:host([layout*=emphasized]) [auro-dropdown],:host([layout*=snowflake]) [auro-dropdown]{--ds-auro-select-border-color: transparent}:host([layout*=emphasized]) .mainContent,:host([layout*=snowflake]) .mainContent{text-align:center}.mainContent{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;align-items:center;justify-content:center}.valueContainer [slot=displayValue]{display:none}.accents{display:flex;flex-direction:row;align-items:center;justify-content:center}::slotted([slot=typeIcon]){margin-right:var(--ds-size-100, 0.5rem)}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;width:100%;align-items:center;justify-content:center}:host([layout*=emphasized]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-300, 1.5rem)}:host([layout*=snowflake]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-200, 1rem)}:host([layout*=snowflake]) label{padding-block:var(--ds-size-25, 0.125rem)}:host([layout*=classic]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem)}:host([layout*=classic]) .mainContent{align-items:start}:host([layout*=classic]) label{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) .value{height:auto}label{color:var(--ds-auro-select-label-text-color)}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown],:host([appearance=inverse]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([fluid]){width:100%}:host([disabled]){pointer-events:none;user-select:none}:host([disabled]:not([ondark])) [auro-dropdown],:host([disabled]:not([appearance=inverse])) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-border-subtle, #dddddd)}:host(:not([layout*=classic])[disabled][ondark]) [auro-dropdown],:host(:not([layout*=classic])[disabled][appearance=inverse]) [auro-dropdown]{--ds-auro-select-border-color: transparent}`;
|
|
93023
93131
|
|
|
@@ -93581,8 +93689,11 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93581
93689
|
} else if (this.multiSelect && Array.isArray(this.optionSelected) && this.optionSelected.length > 0) {
|
|
93582
93690
|
this.menu.updateActiveOption(this.optionSelected[0]);
|
|
93583
93691
|
} else {
|
|
93584
|
-
// If no activeOption has yet to be set,
|
|
93585
|
-
|
|
93692
|
+
// If no activeOption has yet to be set, make the first active option
|
|
93693
|
+
// (non-disabled, non-hidden, non-static) active by default. "Active" —
|
|
93694
|
+
// not just "enabled" — so hidden rows and static placeholders never
|
|
93695
|
+
// land in aria-activedescendant on open.
|
|
93696
|
+
const [firstActive] = getActiveOptions(this.menu);
|
|
93586
93697
|
this.menu.updateActiveOption(firstActive);
|
|
93587
93698
|
}
|
|
93588
93699
|
}
|
|
@@ -93828,6 +93939,12 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93828
93939
|
|
|
93829
93940
|
/**
|
|
93830
93941
|
* Binds all behavior needed to the menu after rendering.
|
|
93942
|
+
*
|
|
93943
|
+
* The `<auro-menu>` reference is captured once and not re-targeted on
|
|
93944
|
+
* `slotchange`. Runtime option mutations are covered via
|
|
93945
|
+
* `auroMenu-optionsChange`, so swap options inside the menu freely; do not
|
|
93946
|
+
* swap the `<auro-menu>` element itself under a live select — remount the
|
|
93947
|
+
* parent `<auro-select>` instead.
|
|
93831
93948
|
* @private
|
|
93832
93949
|
* @returns {void}
|
|
93833
93950
|
*/
|
|
@@ -93886,6 +94003,15 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93886
94003
|
if (this.menu.optionSelected !== undefined) {
|
|
93887
94004
|
return;
|
|
93888
94005
|
}
|
|
94006
|
+
// Skip when the select is already cleared (valueless click with no
|
|
94007
|
+
// prior selection): value/optionSelected are already empty and there
|
|
94008
|
+
// is no stale trigger text to refresh, so updateDisplayedValue would
|
|
94009
|
+
// just churn the DOM and request a needless dropdown re-render.
|
|
94010
|
+
const hasStaleState = this.value !== undefined ||
|
|
94011
|
+
(this.multiSelect ? this.optionSelected?.length > 0 : this.optionSelected !== undefined);
|
|
94012
|
+
if (!hasStaleState) {
|
|
94013
|
+
return;
|
|
94014
|
+
}
|
|
93889
94015
|
this.value = undefined;
|
|
93890
94016
|
this.optionSelected = this.multiSelect ? [] : undefined;
|
|
93891
94017
|
// The trigger label is rendered imperatively into #value, so a property
|
|
@@ -93915,10 +94041,15 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93915
94041
|
if (this.dropdown.isPopoverVisible) {
|
|
93916
94042
|
announceToScreenReader(this._getAnnouncementRoot(), message);
|
|
93917
94043
|
} else {
|
|
93918
|
-
// Typeahead-on-closed
|
|
93919
|
-
//
|
|
93920
|
-
//
|
|
93921
|
-
//
|
|
94044
|
+
// Typeahead-on-closed calls updateActiveOption() before show(), so
|
|
94045
|
+
// this handler runs with isPopoverVisible still false. queueMicrotask
|
|
94046
|
+
// is safe because show() → showBib() flips isPopoverVisible and
|
|
94047
|
+
// dialog.showModal() both run synchronously in the same task; the
|
|
94048
|
+
// microtask queue only drains once _handleTypeahead unwinds, by
|
|
94049
|
+
// which point _getAnnouncementRoot() resolves to the bib's shadow
|
|
94050
|
+
// root inside the now-open modal. Do NOT switch to auroDropdown-toggled
|
|
94051
|
+
// — it fires before showModal(), landing the announcement in the
|
|
94052
|
+
// host root while the dialog is still not-yet-modal.
|
|
93922
94053
|
queueMicrotask(() => announceToScreenReader(this._getAnnouncementRoot(), message));
|
|
93923
94054
|
}
|
|
93924
94055
|
}
|
|
@@ -94312,6 +94443,13 @@ class AuroSelect extends AuroElement$1 {
|
|
|
94312
94443
|
}
|
|
94313
94444
|
|
|
94314
94445
|
if (changedProperties.has('value')) {
|
|
94446
|
+
// A value change ends the current interaction — whether it came from a
|
|
94447
|
+
// user commit, programmatic assignment, or reset(). Clear the buffer so
|
|
94448
|
+
// a stale prefix does not concatenate onto the next keystroke while the
|
|
94449
|
+
// host still has focus (the blur listener would otherwise be the only
|
|
94450
|
+
// focus-retained clear point, and hideBib() below does not blur).
|
|
94451
|
+
this._clearTypeaheadBuffer();
|
|
94452
|
+
|
|
94315
94453
|
this.setMenuValue(this.value);
|
|
94316
94454
|
|
|
94317
94455
|
this._updateNativeSelect();
|
|
@@ -94367,6 +94505,9 @@ class AuroSelect extends AuroElement$1 {
|
|
|
94367
94505
|
* @returns {void}
|
|
94368
94506
|
*/
|
|
94369
94507
|
reset() {
|
|
94508
|
+
// Defense-in-depth: updated()'s value-change branch also clears, but
|
|
94509
|
+
// reset-to-same-value (e.g. undefined → undefined) skips that path.
|
|
94510
|
+
this._clearTypeaheadBuffer();
|
|
94370
94511
|
this.menu.reset();
|
|
94371
94512
|
this.validation.reset(this);
|
|
94372
94513
|
}
|
|
@@ -94389,8 +94530,13 @@ class AuroSelect extends AuroElement$1 {
|
|
|
94389
94530
|
// Hidden native <select> has no `multiple` attribute, so any change it fires
|
|
94390
94531
|
// is a single raw value — applying it in multiSelect mode would collapse the
|
|
94391
94532
|
// JSON-array `value` shape. Bfcache/autofill can reach this on a name-bearing
|
|
94392
|
-
// form control even with aria-hidden/tabindex=-1
|
|
94393
|
-
|
|
94533
|
+
// form control even with aria-hidden/tabindex=-1, so revert to the expected
|
|
94534
|
+
// mirror (formattedValue[0]) rather than letting the native select drift and
|
|
94535
|
+
// silently submit the autofilled scalar under `name`.
|
|
94536
|
+
if (this.multiSelect) {
|
|
94537
|
+
this._updateNativeSelect();
|
|
94538
|
+
return;
|
|
94539
|
+
}
|
|
94394
94540
|
|
|
94395
94541
|
const selectedOption = event.target.options[event.target.selectedIndex];
|
|
94396
94542
|
if (!selectedOption) return;
|