@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
|
@@ -10728,14 +10728,16 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
10728
10728
|
this.label = 'Input label is undefined';
|
|
10729
10729
|
this.layout = 'classic';
|
|
10730
10730
|
this.locale = 'en-US';
|
|
10731
|
+
this._format = undefined;
|
|
10732
|
+
|
|
10733
|
+
/** @private */
|
|
10734
|
+
this._userSetFormat = false;
|
|
10731
10735
|
this.max = undefined;
|
|
10732
10736
|
this.maxLength = undefined;
|
|
10733
10737
|
this.min = undefined;
|
|
10734
10738
|
this.minLength = undefined;
|
|
10735
10739
|
this.noValidate = false;
|
|
10736
10740
|
this.onDark = false;
|
|
10737
|
-
// Raw values returned from the input mask before model normalization.
|
|
10738
|
-
this._rawMaskValue = undefined;
|
|
10739
10741
|
this.required = false;
|
|
10740
10742
|
this.setCustomValidityForType = undefined;
|
|
10741
10743
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -10893,7 +10895,8 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
10893
10895
|
*/
|
|
10894
10896
|
format: {
|
|
10895
10897
|
type: String,
|
|
10896
|
-
reflect: true
|
|
10898
|
+
reflect: true,
|
|
10899
|
+
noAccessor: true
|
|
10897
10900
|
},
|
|
10898
10901
|
|
|
10899
10902
|
/**
|
|
@@ -11231,6 +11234,34 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11231
11234
|
return this.max && dateFormatter$3.isValidDate(this.max) ? dateFormatter$3.stringToDateInstance(this.max) : undefined;
|
|
11232
11235
|
}
|
|
11233
11236
|
|
|
11237
|
+
get format() {
|
|
11238
|
+
return this._format;
|
|
11239
|
+
}
|
|
11240
|
+
|
|
11241
|
+
/**
|
|
11242
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
11243
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
11244
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
11245
|
+
*/
|
|
11246
|
+
set format(value) {
|
|
11247
|
+
const oldValue = this._format;
|
|
11248
|
+
this._format = value ? value.toLowerCase() : value;
|
|
11249
|
+
this._userSetFormat = Boolean(value);
|
|
11250
|
+
this.requestUpdate('format', oldValue);
|
|
11251
|
+
}
|
|
11252
|
+
|
|
11253
|
+
/**
|
|
11254
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
11255
|
+
* so that a subsequent locale change can still update the format.
|
|
11256
|
+
* @private
|
|
11257
|
+
* @param {string} value
|
|
11258
|
+
*/
|
|
11259
|
+
_setFormatFromLocale(value) {
|
|
11260
|
+
const oldValue = this._format;
|
|
11261
|
+
this._format = value ? value.toLowerCase() : value;
|
|
11262
|
+
this.requestUpdate('format', oldValue);
|
|
11263
|
+
}
|
|
11264
|
+
|
|
11234
11265
|
connectedCallback() {
|
|
11235
11266
|
super.connectedCallback();
|
|
11236
11267
|
|
|
@@ -11278,15 +11309,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11278
11309
|
|
|
11279
11310
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
11280
11311
|
|
|
11281
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
11282
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
11283
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
11284
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
11285
|
-
// unset.
|
|
11286
|
-
if (this.format) {
|
|
11287
|
-
this.format = this.format.toLowerCase();
|
|
11288
|
-
}
|
|
11289
|
-
|
|
11290
11312
|
// use validity message override if declared when initializing the component
|
|
11291
11313
|
if (this.hasAttribute('setCustomValidity')) {
|
|
11292
11314
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -11393,12 +11415,10 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11393
11415
|
updated(changedProperties) {
|
|
11394
11416
|
super.updated(changedProperties);
|
|
11395
11417
|
|
|
11396
|
-
// When locale changes
|
|
11397
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
11418
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
11398
11419
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
11399
|
-
|
|
11400
|
-
|
|
11401
|
-
this.format = getDateFormatFromLocale$3(this.locale);
|
|
11420
|
+
if (!this._userSetFormat) {
|
|
11421
|
+
this._setFormatFromLocale(getDateFormatFromLocale$3(this.locale));
|
|
11402
11422
|
}
|
|
11403
11423
|
}
|
|
11404
11424
|
|
|
@@ -11569,9 +11589,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11569
11589
|
this.maskInstance.on('accept', () => {
|
|
11570
11590
|
if (this._configuringMask) return;
|
|
11571
11591
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
11572
|
-
if (this.type === "date") {
|
|
11573
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
11574
|
-
}
|
|
11575
11592
|
});
|
|
11576
11593
|
|
|
11577
11594
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -11579,9 +11596,6 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11579
11596
|
this.maskInstance.on('complete', () => {
|
|
11580
11597
|
if (this._configuringMask) return;
|
|
11581
11598
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
11582
|
-
if (this.type === "date") {
|
|
11583
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
11584
|
-
}
|
|
11585
11599
|
});
|
|
11586
11600
|
|
|
11587
11601
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -11818,8 +11832,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11818
11832
|
|
|
11819
11833
|
// Set default date format if type=date and no format is defined
|
|
11820
11834
|
if (this.type === "date" && !this.format) {
|
|
11821
|
-
|
|
11822
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
11835
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
11823
11836
|
this.util.updateFormat(this.format);
|
|
11824
11837
|
}
|
|
11825
11838
|
}
|
|
@@ -11848,7 +11861,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11848
11861
|
const creditCard = this.matchInputValueToCreditCard();
|
|
11849
11862
|
const previousFormat = this.format;
|
|
11850
11863
|
|
|
11851
|
-
this.
|
|
11864
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
11852
11865
|
|
|
11853
11866
|
this.maxLength = creditCard.formatLength;
|
|
11854
11867
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -12322,7 +12335,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$2 {
|
|
|
12322
12335
|
}
|
|
12323
12336
|
};
|
|
12324
12337
|
|
|
12325
|
-
var formkitVersion$8 = '
|
|
12338
|
+
var formkitVersion$8 = '202607022225';
|
|
12326
12339
|
|
|
12327
12340
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
12328
12341
|
// See LICENSE in the project root for license information.
|
|
@@ -24693,23 +24706,28 @@ var popoverVersion = '6.0.1';
|
|
|
24693
24706
|
* @returns {number|null} Local-midnight Unix timestamp (seconds), or null.
|
|
24694
24707
|
*/
|
|
24695
24708
|
function parseIsoToTimestamp(isoStr) {
|
|
24709
|
+
// Strict YYYY-MM-DD matcher with named groups. Rejects trailing garbage
|
|
24710
|
+
// ("2024x-01-01"), short segments ("2024-1-1"), and any non-digit
|
|
24711
|
+
// characters. `parseInt` alone accepted both because it stops at the
|
|
24712
|
+
// first non-digit and doesn't require a minimum length.
|
|
24713
|
+
const ISO_DATE_RE = /^(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})$/u;
|
|
24714
|
+
const MAX_MONTH = 12;
|
|
24715
|
+
const MAX_DAY = 31;
|
|
24716
|
+
|
|
24696
24717
|
if (typeof isoStr !== 'string') {
|
|
24697
24718
|
return null;
|
|
24698
24719
|
}
|
|
24699
|
-
const
|
|
24700
|
-
if (
|
|
24701
|
-
return null;
|
|
24702
|
-
}
|
|
24703
|
-
const year = parseInt(parts[0], 10);
|
|
24704
|
-
const month = parseInt(parts[1], 10);
|
|
24705
|
-
const day = parseInt(parts[2], 10);
|
|
24706
|
-
if (!Number.isFinite(year) || !Number.isFinite(month) || !Number.isFinite(day)) {
|
|
24720
|
+
const match = ISO_DATE_RE.exec(isoStr);
|
|
24721
|
+
if (!match) {
|
|
24707
24722
|
return null;
|
|
24708
24723
|
}
|
|
24724
|
+
const year = Number(match.groups.year);
|
|
24725
|
+
const month = Number(match.groups.month);
|
|
24726
|
+
const day = Number(match.groups.day);
|
|
24709
24727
|
// Reject overflow values like "2024-13-40" — JS `new Date(year, month, day)`
|
|
24710
24728
|
// silently normalizes those to a different calendar day, which would
|
|
24711
24729
|
// disable the wrong date if we let the result through.
|
|
24712
|
-
if (month < 1 || month >
|
|
24730
|
+
if (month < 1 || month > MAX_MONTH || day < 1 || day > MAX_DAY) {
|
|
24713
24731
|
return null;
|
|
24714
24732
|
}
|
|
24715
24733
|
const date = new Date(year, month - 1, day);
|
|
@@ -25287,6 +25305,18 @@ class AuroCalendarCell extends i$2 {
|
|
|
25287
25305
|
}
|
|
25288
25306
|
|
|
25289
25307
|
firstUpdated() {
|
|
25308
|
+
this._initFromAncestors();
|
|
25309
|
+
}
|
|
25310
|
+
|
|
25311
|
+
/**
|
|
25312
|
+
* Wires the cell to its ancestor calendar-month and calendar (and, via
|
|
25313
|
+
* the calendar, to the datepicker). Extracted from firstUpdated() so the
|
|
25314
|
+
* retry loop can re-attempt without recursively invoking a Lit lifecycle
|
|
25315
|
+
* method (which is outside the framework's contract).
|
|
25316
|
+
* @private
|
|
25317
|
+
* @returns {void}
|
|
25318
|
+
*/
|
|
25319
|
+
_initFromAncestors() {
|
|
25290
25320
|
const calendarMonth = this.runtimeUtils.closestElement('auro-formkit-calendar-month', this);
|
|
25291
25321
|
const calendar = this.runtimeUtils.closestElement('auro-formkit-calendar', calendarMonth);
|
|
25292
25322
|
|
|
@@ -25295,12 +25325,12 @@ class AuroCalendarCell extends i$2 {
|
|
|
25295
25325
|
// to attach — but cap attempts so a permanently detached cell doesn't
|
|
25296
25326
|
// spin forever. 10 turns is far more than any observed race needs.
|
|
25297
25327
|
this._firstUpdatedRetries = (this._firstUpdatedRetries || 0) + 1;
|
|
25298
|
-
if (this._firstUpdatedRetries > 10) {
|
|
25328
|
+
if (this._firstUpdatedRetries > 10) {
|
|
25299
25329
|
return;
|
|
25300
25330
|
}
|
|
25301
25331
|
this._firstUpdatedRetryTimer = setTimeout(() => {
|
|
25302
25332
|
this._firstUpdatedRetryTimer = null;
|
|
25303
|
-
this.
|
|
25333
|
+
this._initFromAncestors();
|
|
25304
25334
|
}, 0);
|
|
25305
25335
|
return;
|
|
25306
25336
|
}
|
|
@@ -26707,7 +26737,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$2 {
|
|
|
26707
26737
|
}
|
|
26708
26738
|
};
|
|
26709
26739
|
|
|
26710
|
-
var formkitVersion$2$1 = '
|
|
26740
|
+
var formkitVersion$2$1 = '202607022225';
|
|
26711
26741
|
|
|
26712
26742
|
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$5`${s$5(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$4`: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}
|
|
26713
26743
|
`,u$4$2=i$4`.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}}
|
|
@@ -26846,7 +26876,10 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
26846
26876
|
* Support will be removed in a future major release.
|
|
26847
26877
|
* @private
|
|
26848
26878
|
*/
|
|
26849
|
-
|
|
26879
|
+
// Initialize the backing field directly so the constructor's default
|
|
26880
|
+
// empty array doesn't trigger the deprecation warning. Assignments from
|
|
26881
|
+
// consumers still route through the setter below.
|
|
26882
|
+
this._disabledDays = [];
|
|
26850
26883
|
|
|
26851
26884
|
/**
|
|
26852
26885
|
* @private
|
|
@@ -26879,6 +26912,44 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
26879
26912
|
this._calendarInstanceId = Date.now().toString(36);
|
|
26880
26913
|
}
|
|
26881
26914
|
|
|
26915
|
+
/**
|
|
26916
|
+
* @deprecated See constructor JSDoc — migrate to
|
|
26917
|
+
* `auro-datepicker.blackoutDates`. The getter/setter pair exists so the
|
|
26918
|
+
* one-time deprecation warning fires as soon as a consumer assigns a
|
|
26919
|
+
* non-empty array (empty assignments are ignored — an empty array is
|
|
26920
|
+
* indistinguishable from the constructor default and would produce a
|
|
26921
|
+
* spurious warning), rather than only when `_getBlackoutSet()` happens
|
|
26922
|
+
* to rebuild.
|
|
26923
|
+
* @returns {Array} The current legacy `disabledDays` array.
|
|
26924
|
+
*/
|
|
26925
|
+
get disabledDays() {
|
|
26926
|
+
return this._disabledDays;
|
|
26927
|
+
}
|
|
26928
|
+
|
|
26929
|
+
/**
|
|
26930
|
+
* @param {Array} value - The legacy `disabledDays` array to set.
|
|
26931
|
+
*/
|
|
26932
|
+
set disabledDays(value) {
|
|
26933
|
+
const oldValue = this._disabledDays;
|
|
26934
|
+
// Coerce non-arrays to `[]`. Consumers occasionally pass `null`
|
|
26935
|
+
// (Lit's Array attribute converter returns null for a missing/empty
|
|
26936
|
+
// attribute) or misuse the API; downstream code in
|
|
26937
|
+
// `auro-calendar-cell.isEnabled` calls `.findIndex()` on this value
|
|
26938
|
+
// without an Array.isArray guard, so a truthy non-array would throw
|
|
26939
|
+
// at render.
|
|
26940
|
+
const coerced = Array.isArray(value) ? value : [];
|
|
26941
|
+
if (coerced.length > 0) {
|
|
26942
|
+
this._warnDisabledDaysDeprecated();
|
|
26943
|
+
}
|
|
26944
|
+
this._disabledDays = coerced;
|
|
26945
|
+
// `disabledDays` is a Lit `@property({ type: Array })` on the
|
|
26946
|
+
// RangeDatepicker base class; Lit's generated setter (which we've
|
|
26947
|
+
// overridden here to insert the warning) is what normally invalidates
|
|
26948
|
+
// the reactive cycle. Re-invoke requestUpdate manually so consumer
|
|
26949
|
+
// assignments still re-render the calendar.
|
|
26950
|
+
this.requestUpdate('disabledDays', oldValue);
|
|
26951
|
+
}
|
|
26952
|
+
|
|
26882
26953
|
static get styles() {
|
|
26883
26954
|
return [
|
|
26884
26955
|
styleCss$7$1,
|
|
@@ -27618,12 +27689,15 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27618
27689
|
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
27619
27690
|
// the number of rendered months.
|
|
27620
27691
|
//
|
|
27621
|
-
// numCalendars is assigned
|
|
27622
|
-
//
|
|
27623
|
-
//
|
|
27624
|
-
//
|
|
27625
|
-
//
|
|
27626
|
-
//
|
|
27692
|
+
// numCalendars is assigned inside renderAllCalendars(), which runs during
|
|
27693
|
+
// render() — so by the time the visible-change handler in updated()
|
|
27694
|
+
// calls computeActiveDate() in the same cycle, numCalendars is normally
|
|
27695
|
+
// set. Guard against the pre-first-render path anyway (e.g. any future
|
|
27696
|
+
// caller that reaches computeActiveDate before render() has run):
|
|
27697
|
+
// Math.max(undefined, 1) is NaN, which would silently skip the
|
|
27698
|
+
// visible-month scan below. Fall back to maximumRenderableMonths'
|
|
27699
|
+
// desktop default (1 for non-range, 2 for range) so the scan window is
|
|
27700
|
+
// correctly sized whenever numCalendars is not yet populated.
|
|
27627
27701
|
let renderedMonths = null;
|
|
27628
27702
|
|
|
27629
27703
|
if (Number.isFinite(this.numCalendars) && this.numCalendars > 0) {
|
|
@@ -32556,7 +32630,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$2 {
|
|
|
32556
32630
|
}
|
|
32557
32631
|
};
|
|
32558
32632
|
|
|
32559
|
-
var formkitVersion$1$3 = '
|
|
32633
|
+
var formkitVersion$1$3 = '202607022225';
|
|
32560
32634
|
|
|
32561
32635
|
let AuroElement$2$2 = class AuroElement extends i$2 {
|
|
32562
32636
|
static get properties() {
|
|
@@ -44564,14 +44638,16 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
44564
44638
|
this.label = 'Input label is undefined';
|
|
44565
44639
|
this.layout = 'classic';
|
|
44566
44640
|
this.locale = 'en-US';
|
|
44641
|
+
this._format = undefined;
|
|
44642
|
+
|
|
44643
|
+
/** @private */
|
|
44644
|
+
this._userSetFormat = false;
|
|
44567
44645
|
this.max = undefined;
|
|
44568
44646
|
this.maxLength = undefined;
|
|
44569
44647
|
this.min = undefined;
|
|
44570
44648
|
this.minLength = undefined;
|
|
44571
44649
|
this.noValidate = false;
|
|
44572
44650
|
this.onDark = false;
|
|
44573
|
-
// Raw values returned from the input mask before model normalization.
|
|
44574
|
-
this._rawMaskValue = undefined;
|
|
44575
44651
|
this.required = false;
|
|
44576
44652
|
this.setCustomValidityForType = undefined;
|
|
44577
44653
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -44729,7 +44805,8 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
44729
44805
|
*/
|
|
44730
44806
|
format: {
|
|
44731
44807
|
type: String,
|
|
44732
|
-
reflect: true
|
|
44808
|
+
reflect: true,
|
|
44809
|
+
noAccessor: true
|
|
44733
44810
|
},
|
|
44734
44811
|
|
|
44735
44812
|
/**
|
|
@@ -45067,6 +45144,34 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45067
45144
|
return this.max && dateFormatter$2.isValidDate(this.max) ? dateFormatter$2.stringToDateInstance(this.max) : undefined;
|
|
45068
45145
|
}
|
|
45069
45146
|
|
|
45147
|
+
get format() {
|
|
45148
|
+
return this._format;
|
|
45149
|
+
}
|
|
45150
|
+
|
|
45151
|
+
/**
|
|
45152
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
45153
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
45154
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
45155
|
+
*/
|
|
45156
|
+
set format(value) {
|
|
45157
|
+
const oldValue = this._format;
|
|
45158
|
+
this._format = value ? value.toLowerCase() : value;
|
|
45159
|
+
this._userSetFormat = Boolean(value);
|
|
45160
|
+
this.requestUpdate('format', oldValue);
|
|
45161
|
+
}
|
|
45162
|
+
|
|
45163
|
+
/**
|
|
45164
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
45165
|
+
* so that a subsequent locale change can still update the format.
|
|
45166
|
+
* @private
|
|
45167
|
+
* @param {string} value
|
|
45168
|
+
*/
|
|
45169
|
+
_setFormatFromLocale(value) {
|
|
45170
|
+
const oldValue = this._format;
|
|
45171
|
+
this._format = value ? value.toLowerCase() : value;
|
|
45172
|
+
this.requestUpdate('format', oldValue);
|
|
45173
|
+
}
|
|
45174
|
+
|
|
45070
45175
|
connectedCallback() {
|
|
45071
45176
|
super.connectedCallback();
|
|
45072
45177
|
|
|
@@ -45114,15 +45219,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45114
45219
|
|
|
45115
45220
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
45116
45221
|
|
|
45117
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
45118
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
45119
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
45120
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
45121
|
-
// unset.
|
|
45122
|
-
if (this.format) {
|
|
45123
|
-
this.format = this.format.toLowerCase();
|
|
45124
|
-
}
|
|
45125
|
-
|
|
45126
45222
|
// use validity message override if declared when initializing the component
|
|
45127
45223
|
if (this.hasAttribute('setCustomValidity')) {
|
|
45128
45224
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -45229,12 +45325,10 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45229
45325
|
updated(changedProperties) {
|
|
45230
45326
|
super.updated(changedProperties);
|
|
45231
45327
|
|
|
45232
|
-
// When locale changes
|
|
45233
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
45328
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
45234
45329
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
45235
|
-
|
|
45236
|
-
|
|
45237
|
-
this.format = getDateFormatFromLocale$2(this.locale);
|
|
45330
|
+
if (!this._userSetFormat) {
|
|
45331
|
+
this._setFormatFromLocale(getDateFormatFromLocale$2(this.locale));
|
|
45238
45332
|
}
|
|
45239
45333
|
}
|
|
45240
45334
|
|
|
@@ -45405,9 +45499,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45405
45499
|
this.maskInstance.on('accept', () => {
|
|
45406
45500
|
if (this._configuringMask) return;
|
|
45407
45501
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
45408
|
-
if (this.type === "date") {
|
|
45409
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
45410
|
-
}
|
|
45411
45502
|
});
|
|
45412
45503
|
|
|
45413
45504
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -45415,9 +45506,6 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45415
45506
|
this.maskInstance.on('complete', () => {
|
|
45416
45507
|
if (this._configuringMask) return;
|
|
45417
45508
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
45418
|
-
if (this.type === "date") {
|
|
45419
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
45420
|
-
}
|
|
45421
45509
|
});
|
|
45422
45510
|
|
|
45423
45511
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -45654,8 +45742,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45654
45742
|
|
|
45655
45743
|
// Set default date format if type=date and no format is defined
|
|
45656
45744
|
if (this.type === "date" && !this.format) {
|
|
45657
|
-
|
|
45658
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
45745
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
45659
45746
|
this.util.updateFormat(this.format);
|
|
45660
45747
|
}
|
|
45661
45748
|
}
|
|
@@ -45684,7 +45771,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45684
45771
|
const creditCard = this.matchInputValueToCreditCard();
|
|
45685
45772
|
const previousFormat = this.format;
|
|
45686
45773
|
|
|
45687
|
-
this.
|
|
45774
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
45688
45775
|
|
|
45689
45776
|
this.maxLength = creditCard.formatLength;
|
|
45690
45777
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -46158,7 +46245,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$2 {
|
|
|
46158
46245
|
}
|
|
46159
46246
|
};
|
|
46160
46247
|
|
|
46161
|
-
var formkitVersion$7 = '
|
|
46248
|
+
var formkitVersion$7 = '202607022225';
|
|
46162
46249
|
|
|
46163
46250
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
46164
46251
|
// See LICENSE in the project root for license information.
|
|
@@ -51079,7 +51166,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$2 {
|
|
|
51079
51166
|
}
|
|
51080
51167
|
};
|
|
51081
51168
|
|
|
51082
|
-
var formkitVersion$1$2 = '
|
|
51169
|
+
var formkitVersion$1$2 = '202607022225';
|
|
51083
51170
|
|
|
51084
51171
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
51085
51172
|
// See LICENSE in the project root for license information.
|
|
@@ -55407,7 +55494,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$2 {
|
|
|
55407
55494
|
}
|
|
55408
55495
|
};
|
|
55409
55496
|
|
|
55410
|
-
var formkitVersion$6 = '
|
|
55497
|
+
var formkitVersion$6 = '202607022225';
|
|
55411
55498
|
|
|
55412
55499
|
let AuroElement$1$2 = class AuroElement extends i$2 {
|
|
55413
55500
|
static get properties() {
|
|
@@ -59387,7 +59474,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$2 {
|
|
|
59387
59474
|
}
|
|
59388
59475
|
};
|
|
59389
59476
|
|
|
59390
|
-
var formkitVersion$5 = '
|
|
59477
|
+
var formkitVersion$5 = '202607022225';
|
|
59391
59478
|
|
|
59392
59479
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
59393
59480
|
// See LICENSE in the project root for license information.
|
|
@@ -61152,7 +61239,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$2 {
|
|
|
61152
61239
|
}
|
|
61153
61240
|
};
|
|
61154
61241
|
|
|
61155
|
-
var formkitVersion$4 = '
|
|
61242
|
+
var formkitVersion$4 = '202607022225';
|
|
61156
61243
|
|
|
61157
61244
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
61158
61245
|
// See LICENSE in the project root for license information.
|
|
@@ -66373,7 +66460,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$2 {
|
|
|
66373
66460
|
}
|
|
66374
66461
|
};
|
|
66375
66462
|
|
|
66376
|
-
var formkitVersion$2 = '
|
|
66463
|
+
var formkitVersion$2 = '202607022225';
|
|
66377
66464
|
|
|
66378
66465
|
let AuroElement$2$1 = class AuroElement extends i$2 {
|
|
66379
66466
|
static get properties() {
|
|
@@ -78381,14 +78468,16 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78381
78468
|
this.label = 'Input label is undefined';
|
|
78382
78469
|
this.layout = 'classic';
|
|
78383
78470
|
this.locale = 'en-US';
|
|
78471
|
+
this._format = undefined;
|
|
78472
|
+
|
|
78473
|
+
/** @private */
|
|
78474
|
+
this._userSetFormat = false;
|
|
78384
78475
|
this.max = undefined;
|
|
78385
78476
|
this.maxLength = undefined;
|
|
78386
78477
|
this.min = undefined;
|
|
78387
78478
|
this.minLength = undefined;
|
|
78388
78479
|
this.noValidate = false;
|
|
78389
78480
|
this.onDark = false;
|
|
78390
|
-
// Raw values returned from the input mask before model normalization.
|
|
78391
|
-
this._rawMaskValue = undefined;
|
|
78392
78481
|
this.required = false;
|
|
78393
78482
|
this.setCustomValidityForType = undefined;
|
|
78394
78483
|
// Credit Card is intentionally excluded — its mask manages the cursor
|
|
@@ -78546,7 +78635,8 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78546
78635
|
*/
|
|
78547
78636
|
format: {
|
|
78548
78637
|
type: String,
|
|
78549
|
-
reflect: true
|
|
78638
|
+
reflect: true,
|
|
78639
|
+
noAccessor: true
|
|
78550
78640
|
},
|
|
78551
78641
|
|
|
78552
78642
|
/**
|
|
@@ -78884,6 +78974,34 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78884
78974
|
return this.max && dateFormatter.isValidDate(this.max) ? dateFormatter.stringToDateInstance(this.max) : undefined;
|
|
78885
78975
|
}
|
|
78886
78976
|
|
|
78977
|
+
get format() {
|
|
78978
|
+
return this._format;
|
|
78979
|
+
}
|
|
78980
|
+
|
|
78981
|
+
/**
|
|
78982
|
+
* Overrides LitElement's generated accessor so we can track whether the
|
|
78983
|
+
* consumer explicitly set `format`. Locale-derived updates use
|
|
78984
|
+
* `_setFormatFromLocale` instead, which skips this flag.
|
|
78985
|
+
*/
|
|
78986
|
+
set format(value) {
|
|
78987
|
+
const oldValue = this._format;
|
|
78988
|
+
this._format = value ? value.toLowerCase() : value;
|
|
78989
|
+
this._userSetFormat = Boolean(value);
|
|
78990
|
+
this.requestUpdate('format', oldValue);
|
|
78991
|
+
}
|
|
78992
|
+
|
|
78993
|
+
/**
|
|
78994
|
+
* Sets format without marking it as user-set. Used by locale auto-derive
|
|
78995
|
+
* so that a subsequent locale change can still update the format.
|
|
78996
|
+
* @private
|
|
78997
|
+
* @param {string} value
|
|
78998
|
+
*/
|
|
78999
|
+
_setFormatFromLocale(value) {
|
|
79000
|
+
const oldValue = this._format;
|
|
79001
|
+
this._format = value ? value.toLowerCase() : value;
|
|
79002
|
+
this.requestUpdate('format', oldValue);
|
|
79003
|
+
}
|
|
79004
|
+
|
|
78887
79005
|
connectedCallback() {
|
|
78888
79006
|
super.connectedCallback();
|
|
78889
79007
|
|
|
@@ -78931,15 +79049,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78931
79049
|
|
|
78932
79050
|
this.inputId = this.id ? `${this.id}-input` : window.crypto.randomUUID();
|
|
78933
79051
|
|
|
78934
|
-
// Normalize the format token to lowercase so case-mixed values supplied
|
|
78935
|
-
// via attribute (e.g. `format="MM/DD/YYYY"`) hit the `dateFormatMap`
|
|
78936
|
-
// lookup inside `setCustomHelpTextMessage`. Without this, an uppercase
|
|
78937
|
-
// format silently misses the map and leaves `setCustomValidityForType`
|
|
78938
|
-
// unset.
|
|
78939
|
-
if (this.format) {
|
|
78940
|
-
this.format = this.format.toLowerCase();
|
|
78941
|
-
}
|
|
78942
|
-
|
|
78943
79052
|
// use validity message override if declared when initializing the component
|
|
78944
79053
|
if (this.hasAttribute('setCustomValidity')) {
|
|
78945
79054
|
this.ValidityMessageOverride = this.setCustomValidity;
|
|
@@ -79046,12 +79155,10 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79046
79155
|
updated(changedProperties) {
|
|
79047
79156
|
super.updated(changedProperties);
|
|
79048
79157
|
|
|
79049
|
-
// When locale changes
|
|
79050
|
-
// Only runs if the current format is still the previous locale's default (not user-overridden).
|
|
79158
|
+
// When locale changes, auto-derive format unless the consumer explicitly set one.
|
|
79051
79159
|
if (changedProperties.has('locale') && !changedProperties.has('format') && this.type === 'date') {
|
|
79052
|
-
|
|
79053
|
-
|
|
79054
|
-
this.format = getDateFormatFromLocale(this.locale);
|
|
79160
|
+
if (!this._userSetFormat) {
|
|
79161
|
+
this._setFormatFromLocale(getDateFormatFromLocale(this.locale));
|
|
79055
79162
|
}
|
|
79056
79163
|
}
|
|
79057
79164
|
|
|
@@ -79222,9 +79329,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79222
79329
|
this.maskInstance.on('accept', () => {
|
|
79223
79330
|
if (this._configuringMask) return;
|
|
79224
79331
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
79225
|
-
if (this.type === "date") {
|
|
79226
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
79227
|
-
}
|
|
79228
79332
|
});
|
|
79229
79333
|
|
|
79230
79334
|
// Mask fires 'complete' on the restore step below for any value that
|
|
@@ -79232,9 +79336,6 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79232
79336
|
this.maskInstance.on('complete', () => {
|
|
79233
79337
|
if (this._configuringMask) return;
|
|
79234
79338
|
this.value = this.util.toModelValue(this.maskInstance.value, this.format);
|
|
79235
|
-
if (this.type === "date") {
|
|
79236
|
-
this._rawMaskValue = this.maskInstance.value;
|
|
79237
|
-
}
|
|
79238
79339
|
});
|
|
79239
79340
|
|
|
79240
79341
|
// Write existingValue through the mask (not the input directly) so
|
|
@@ -79471,8 +79572,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79471
79572
|
|
|
79472
79573
|
// Set default date format if type=date and no format is defined
|
|
79473
79574
|
if (this.type === "date" && !this.format) {
|
|
79474
|
-
|
|
79475
|
-
this.format = this.util.getDateMaskFromLocale().toLowerCase();
|
|
79575
|
+
this._setFormatFromLocale(this.util.getDateMaskFromLocale().toLowerCase());
|
|
79476
79576
|
this.util.updateFormat(this.format);
|
|
79477
79577
|
}
|
|
79478
79578
|
}
|
|
@@ -79501,7 +79601,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79501
79601
|
const creditCard = this.matchInputValueToCreditCard();
|
|
79502
79602
|
const previousFormat = this.format;
|
|
79503
79603
|
|
|
79504
|
-
this.
|
|
79604
|
+
this._setFormatFromLocale(creditCard.maskFormat);
|
|
79505
79605
|
|
|
79506
79606
|
this.maxLength = creditCard.formatLength;
|
|
79507
79607
|
this.minLength = creditCard.formatMinLength;
|
|
@@ -79975,7 +80075,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$2 {
|
|
|
79975
80075
|
}
|
|
79976
80076
|
};
|
|
79977
80077
|
|
|
79978
|
-
var formkitVersion$1$1 = '
|
|
80078
|
+
var formkitVersion$1$1 = '202607022225';
|
|
79979
80079
|
|
|
79980
80080
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
79981
80081
|
// See LICENSE in the project root for license information.
|
|
@@ -81101,7 +81201,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$2 {
|
|
|
81101
81201
|
}
|
|
81102
81202
|
};
|
|
81103
81203
|
|
|
81104
|
-
var formkitVersion$3 = '
|
|
81204
|
+
var formkitVersion$3 = '202607022225';
|
|
81105
81205
|
|
|
81106
81206
|
var styleCss$1$3 = i$4`.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}`;
|
|
81107
81207
|
|
|
@@ -85878,9 +85978,6 @@ function navigateArrow(component, direction, options = {}) {
|
|
|
85878
85978
|
* @param {HTMLElement | null | undefined} menu - The auro-menu element.
|
|
85879
85979
|
* @returns {Array<HTMLElement>} Non-disabled options, empty array when none.
|
|
85880
85980
|
*/
|
|
85881
|
-
function getEnabledOptions(menu) {
|
|
85882
|
-
return (menu?.options || []).filter((option) => !option.disabled);
|
|
85883
|
-
}
|
|
85884
85981
|
|
|
85885
85982
|
/**
|
|
85886
85983
|
* Returns the active (selectable + visible) options for type-ahead navigation.
|
|
@@ -85950,8 +86047,10 @@ const selectKeyboardStrategy = {
|
|
|
85950
86047
|
End(component, evt, ctx) {
|
|
85951
86048
|
evt.preventDefault();
|
|
85952
86049
|
evt.stopPropagation();
|
|
85953
|
-
// `pop()` is safe here:
|
|
85954
|
-
|
|
86050
|
+
// `pop()` is safe here: getActiveOptions returns a fresh filtered array.
|
|
86051
|
+
// Uses "active" (not "enabled") so hidden and static rows — which a screen
|
|
86052
|
+
// reader must not announce as focused — are skipped.
|
|
86053
|
+
const lastOption = getActiveOptions(component.menu).pop();
|
|
85955
86054
|
if (!lastOption) {
|
|
85956
86055
|
return;
|
|
85957
86056
|
}
|
|
@@ -85982,7 +86081,7 @@ const selectKeyboardStrategy = {
|
|
|
85982
86081
|
Home(component, evt, ctx) {
|
|
85983
86082
|
evt.preventDefault();
|
|
85984
86083
|
evt.stopPropagation();
|
|
85985
|
-
const [firstOption] =
|
|
86084
|
+
const [firstOption] = getActiveOptions(component.menu);
|
|
85986
86085
|
if (!firstOption) {
|
|
85987
86086
|
return;
|
|
85988
86087
|
}
|
|
@@ -86007,6 +86106,15 @@ const selectKeyboardStrategy = {
|
|
|
86007
86106
|
},
|
|
86008
86107
|
|
|
86009
86108
|
default(component, evt, ctx) {
|
|
86109
|
+
// Ignore keys chorded with Ctrl/Meta/Alt so browser/OS shortcuts
|
|
86110
|
+
// (Cmd+C, Ctrl+V, Alt+X, Cmd+Space, …) don't leak into typeahead
|
|
86111
|
+
// or toggle the bib. Native <select> ignores modified keys.
|
|
86112
|
+
// ArrowUp/ArrowDown handle modifier+arrow explicitly above; this
|
|
86113
|
+
// guard only affects the default (printable/Space) branch.
|
|
86114
|
+
if (evt.ctrlKey || evt.metaKey || evt.altKey) {
|
|
86115
|
+
return;
|
|
86116
|
+
}
|
|
86117
|
+
|
|
86010
86118
|
// Space resolves to either typeahead-buffer extension or bib toggle
|
|
86011
86119
|
// depending on whether a type-ahead buffer is active. Mirrors native
|
|
86012
86120
|
// <select> and the WAI-ARIA APG Listbox guidance: mid-typeahead space
|
|
@@ -89937,7 +90045,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
|
|
|
89937
90045
|
}
|
|
89938
90046
|
};
|
|
89939
90047
|
|
|
89940
|
-
var formkitVersion$1 = '
|
|
90048
|
+
var formkitVersion$1 = '202607022225';
|
|
89941
90049
|
|
|
89942
90050
|
class AuroElement extends i$2 {
|
|
89943
90051
|
static get properties() {
|
|
@@ -91976,7 +92084,7 @@ class AuroHelpText extends i$2 {
|
|
|
91976
92084
|
}
|
|
91977
92085
|
}
|
|
91978
92086
|
|
|
91979
|
-
var formkitVersion = '
|
|
92087
|
+
var formkitVersion = '202607022225';
|
|
91980
92088
|
|
|
91981
92089
|
var styleCss = i$4`.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}`;
|
|
91982
92090
|
|
|
@@ -92540,8 +92648,11 @@ class AuroSelect extends AuroElement$1 {
|
|
|
92540
92648
|
} else if (this.multiSelect && Array.isArray(this.optionSelected) && this.optionSelected.length > 0) {
|
|
92541
92649
|
this.menu.updateActiveOption(this.optionSelected[0]);
|
|
92542
92650
|
} else {
|
|
92543
|
-
// If no activeOption has yet to be set,
|
|
92544
|
-
|
|
92651
|
+
// If no activeOption has yet to be set, make the first active option
|
|
92652
|
+
// (non-disabled, non-hidden, non-static) active by default. "Active" —
|
|
92653
|
+
// not just "enabled" — so hidden rows and static placeholders never
|
|
92654
|
+
// land in aria-activedescendant on open.
|
|
92655
|
+
const [firstActive] = getActiveOptions(this.menu);
|
|
92545
92656
|
this.menu.updateActiveOption(firstActive);
|
|
92546
92657
|
}
|
|
92547
92658
|
}
|
|
@@ -92787,6 +92898,12 @@ class AuroSelect extends AuroElement$1 {
|
|
|
92787
92898
|
|
|
92788
92899
|
/**
|
|
92789
92900
|
* Binds all behavior needed to the menu after rendering.
|
|
92901
|
+
*
|
|
92902
|
+
* The `<auro-menu>` reference is captured once and not re-targeted on
|
|
92903
|
+
* `slotchange`. Runtime option mutations are covered via
|
|
92904
|
+
* `auroMenu-optionsChange`, so swap options inside the menu freely; do not
|
|
92905
|
+
* swap the `<auro-menu>` element itself under a live select — remount the
|
|
92906
|
+
* parent `<auro-select>` instead.
|
|
92790
92907
|
* @private
|
|
92791
92908
|
* @returns {void}
|
|
92792
92909
|
*/
|
|
@@ -92845,6 +92962,15 @@ class AuroSelect extends AuroElement$1 {
|
|
|
92845
92962
|
if (this.menu.optionSelected !== undefined) {
|
|
92846
92963
|
return;
|
|
92847
92964
|
}
|
|
92965
|
+
// Skip when the select is already cleared (valueless click with no
|
|
92966
|
+
// prior selection): value/optionSelected are already empty and there
|
|
92967
|
+
// is no stale trigger text to refresh, so updateDisplayedValue would
|
|
92968
|
+
// just churn the DOM and request a needless dropdown re-render.
|
|
92969
|
+
const hasStaleState = this.value !== undefined ||
|
|
92970
|
+
(this.multiSelect ? this.optionSelected?.length > 0 : this.optionSelected !== undefined);
|
|
92971
|
+
if (!hasStaleState) {
|
|
92972
|
+
return;
|
|
92973
|
+
}
|
|
92848
92974
|
this.value = undefined;
|
|
92849
92975
|
this.optionSelected = this.multiSelect ? [] : undefined;
|
|
92850
92976
|
// The trigger label is rendered imperatively into #value, so a property
|
|
@@ -92874,10 +93000,15 @@ class AuroSelect extends AuroElement$1 {
|
|
|
92874
93000
|
if (this.dropdown.isPopoverVisible) {
|
|
92875
93001
|
announceToScreenReader(this._getAnnouncementRoot(), message);
|
|
92876
93002
|
} else {
|
|
92877
|
-
// Typeahead-on-closed
|
|
92878
|
-
//
|
|
92879
|
-
//
|
|
92880
|
-
//
|
|
93003
|
+
// Typeahead-on-closed calls updateActiveOption() before show(), so
|
|
93004
|
+
// this handler runs with isPopoverVisible still false. queueMicrotask
|
|
93005
|
+
// is safe because show() → showBib() flips isPopoverVisible and
|
|
93006
|
+
// dialog.showModal() both run synchronously in the same task; the
|
|
93007
|
+
// microtask queue only drains once _handleTypeahead unwinds, by
|
|
93008
|
+
// which point _getAnnouncementRoot() resolves to the bib's shadow
|
|
93009
|
+
// root inside the now-open modal. Do NOT switch to auroDropdown-toggled
|
|
93010
|
+
// — it fires before showModal(), landing the announcement in the
|
|
93011
|
+
// host root while the dialog is still not-yet-modal.
|
|
92881
93012
|
queueMicrotask(() => announceToScreenReader(this._getAnnouncementRoot(), message));
|
|
92882
93013
|
}
|
|
92883
93014
|
}
|
|
@@ -93271,6 +93402,13 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93271
93402
|
}
|
|
93272
93403
|
|
|
93273
93404
|
if (changedProperties.has('value')) {
|
|
93405
|
+
// A value change ends the current interaction — whether it came from a
|
|
93406
|
+
// user commit, programmatic assignment, or reset(). Clear the buffer so
|
|
93407
|
+
// a stale prefix does not concatenate onto the next keystroke while the
|
|
93408
|
+
// host still has focus (the blur listener would otherwise be the only
|
|
93409
|
+
// focus-retained clear point, and hideBib() below does not blur).
|
|
93410
|
+
this._clearTypeaheadBuffer();
|
|
93411
|
+
|
|
93274
93412
|
this.setMenuValue(this.value);
|
|
93275
93413
|
|
|
93276
93414
|
this._updateNativeSelect();
|
|
@@ -93326,6 +93464,9 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93326
93464
|
* @returns {void}
|
|
93327
93465
|
*/
|
|
93328
93466
|
reset() {
|
|
93467
|
+
// Defense-in-depth: updated()'s value-change branch also clears, but
|
|
93468
|
+
// reset-to-same-value (e.g. undefined → undefined) skips that path.
|
|
93469
|
+
this._clearTypeaheadBuffer();
|
|
93329
93470
|
this.menu.reset();
|
|
93330
93471
|
this.validation.reset(this);
|
|
93331
93472
|
}
|
|
@@ -93348,8 +93489,13 @@ class AuroSelect extends AuroElement$1 {
|
|
|
93348
93489
|
// Hidden native <select> has no `multiple` attribute, so any change it fires
|
|
93349
93490
|
// is a single raw value — applying it in multiSelect mode would collapse the
|
|
93350
93491
|
// JSON-array `value` shape. Bfcache/autofill can reach this on a name-bearing
|
|
93351
|
-
// form control even with aria-hidden/tabindex=-1
|
|
93352
|
-
|
|
93492
|
+
// form control even with aria-hidden/tabindex=-1, so revert to the expected
|
|
93493
|
+
// mirror (formattedValue[0]) rather than letting the native select drift and
|
|
93494
|
+
// silently submit the autofilled scalar under `name`.
|
|
93495
|
+
if (this.multiSelect) {
|
|
93496
|
+
this._updateNativeSelect();
|
|
93497
|
+
return;
|
|
93498
|
+
}
|
|
93353
93499
|
|
|
93354
93500
|
const selectedOption = event.target.options[event.target.selectedIndex];
|
|
93355
93501
|
if (!selectedOption) return;
|