@aurodesignsystem-dev/auro-formkit 0.0.0-pr1522.0 → 0.0.0-pr1522.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 +15 -2
- package/components/checkbox/demo/getting-started.min.js +15 -2
- package/components/checkbox/demo/index.min.js +15 -2
- package/components/checkbox/dist/index.js +15 -2
- package/components/checkbox/dist/registered.js +15 -2
- package/components/combobox/demo/customize.min.js +105 -10
- package/components/combobox/demo/getting-started.min.js +105 -10
- package/components/combobox/demo/index.min.js +105 -10
- package/components/combobox/dist/index.js +105 -10
- package/components/combobox/dist/registered.js +105 -10
- package/components/counter/demo/customize.min.js +33 -3
- package/components/counter/demo/index.min.js +33 -3
- package/components/counter/dist/index.js +33 -3
- package/components/counter/dist/registered.js +33 -3
- package/components/datepicker/demo/customize.min.js +257 -16
- package/components/datepicker/demo/index.min.js +257 -16
- package/components/datepicker/dist/auro-calendar-cell.d.ts +17 -0
- package/components/datepicker/dist/auro-calendar.d.ts +43 -3
- package/components/datepicker/dist/index.js +257 -16
- package/components/datepicker/dist/registered.js +257 -16
- package/components/dropdown/demo/customize.min.js +18 -1
- package/components/dropdown/demo/getting-started.min.js +18 -1
- package/components/dropdown/demo/index.min.js +18 -1
- package/components/dropdown/dist/index.js +18 -1
- package/components/dropdown/dist/registered.js +18 -1
- package/components/form/demo/customize.min.js +530 -43
- package/components/form/demo/getting-started.min.js +530 -43
- package/components/form/demo/index.min.js +530 -43
- package/components/form/demo/registerDemoDeps.min.js +530 -43
- package/components/input/demo/api.md +58 -57
- package/components/input/demo/customize.min.js +72 -7
- package/components/input/demo/getting-started.min.js +72 -7
- package/components/input/demo/index.min.js +72 -7
- package/components/input/dist/base-input.d.ts +9 -3
- package/components/input/dist/index.js +72 -7
- package/components/input/dist/registered.js +72 -7
- package/components/input/dist/utilities.d.ts +9 -0
- package/components/radio/demo/customize.min.js +15 -2
- package/components/radio/demo/getting-started.min.js +15 -2
- package/components/radio/demo/index.min.js +15 -2
- package/components/radio/dist/index.js +15 -2
- package/components/radio/dist/registered.js +15 -2
- package/components/select/demo/customize.md +6 -5
- package/components/select/demo/customize.min.js +33 -3
- package/components/select/demo/getting-started.min.js +33 -3
- package/components/select/demo/index.min.js +33 -3
- package/components/select/dist/index.js +33 -3
- package/components/select/dist/registered.js +33 -3
- package/custom-elements.json +111 -9
- package/package.json +1 -1
|
@@ -4414,8 +4414,21 @@ let AuroFormValidation$7 = class AuroFormValidation {
|
|
|
4414
4414
|
return;
|
|
4415
4415
|
}
|
|
4416
4416
|
|
|
4417
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
4417
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
4418
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
4418
4419
|
if (elem.value && !elem.valueObject) {
|
|
4420
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
4421
|
+
|
|
4422
|
+
if (isPartialDateFormat) {
|
|
4423
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
4424
|
+
elem.validity = 'patternMismatch';
|
|
4425
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
4426
|
+
}
|
|
4427
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
4428
|
+
return;
|
|
4429
|
+
}
|
|
4430
|
+
|
|
4431
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
4419
4432
|
elem.validity = 'patternMismatch';
|
|
4420
4433
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
4421
4434
|
return;
|
|
@@ -10345,10 +10358,11 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
10345
10358
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
10346
10359
|
|
|
10347
10360
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
10348
|
-
const
|
|
10361
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
10362
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
10349
10363
|
return {
|
|
10350
10364
|
mask: IMask$3.MaskedRange,
|
|
10351
|
-
from:
|
|
10365
|
+
from: fromValue,
|
|
10352
10366
|
to: maxValue,
|
|
10353
10367
|
lazy: true,
|
|
10354
10368
|
placeholderChar: '',
|
|
@@ -10356,7 +10370,8 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
10356
10370
|
return value.toString().padStart(dateFormat.length, '0');
|
|
10357
10371
|
},
|
|
10358
10372
|
parse(str) {
|
|
10359
|
-
|
|
10373
|
+
const num = parseInt(str, 10);
|
|
10374
|
+
return isNaN(num) ? null : num;
|
|
10360
10375
|
}
|
|
10361
10376
|
};
|
|
10362
10377
|
}
|
|
@@ -10420,6 +10435,49 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
10420
10435
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
10421
10436
|
}
|
|
10422
10437
|
|
|
10438
|
+
/**
|
|
10439
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
10440
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
10441
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
10442
|
+
* @param {string} value - The user-facing display value.
|
|
10443
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
10444
|
+
* @returns {boolean}
|
|
10445
|
+
*/
|
|
10446
|
+
isValidPartialDate(value, format$1) {
|
|
10447
|
+
if (!value || !format$1) {
|
|
10448
|
+
return false;
|
|
10449
|
+
}
|
|
10450
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
10451
|
+
|
|
10452
|
+
if (normalizedFormat === 'dd') {
|
|
10453
|
+
const num = Number(value);
|
|
10454
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
10455
|
+
}
|
|
10456
|
+
if (normalizedFormat === 'yy') {
|
|
10457
|
+
const num = Number(value);
|
|
10458
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
10459
|
+
}
|
|
10460
|
+
if (normalizedFormat === 'yyyy') {
|
|
10461
|
+
const num = Number(value);
|
|
10462
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
10463
|
+
}
|
|
10464
|
+
|
|
10465
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
10466
|
+
// Use the 1st of the current month as the reference so that formats
|
|
10467
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
10468
|
+
const referenceDate = new Date();
|
|
10469
|
+
referenceDate.setDate(1);
|
|
10470
|
+
const parsed = parse$3(value, dateFnsMask, referenceDate);
|
|
10471
|
+
if (!isValid$3(parsed) || format$3(parsed, dateFnsMask) !== value) {
|
|
10472
|
+
return false;
|
|
10473
|
+
}
|
|
10474
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
10475
|
+
const year = parsed.getFullYear();
|
|
10476
|
+
return year >= 1900 && year <= 2100;
|
|
10477
|
+
}
|
|
10478
|
+
return true;
|
|
10479
|
+
}
|
|
10480
|
+
|
|
10423
10481
|
/**
|
|
10424
10482
|
* Converts a display string to its model value.
|
|
10425
10483
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -11039,6 +11097,13 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11039
11097
|
type: String
|
|
11040
11098
|
},
|
|
11041
11099
|
|
|
11100
|
+
/**
|
|
11101
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
11102
|
+
*/
|
|
11103
|
+
setCustomValidityPatternMismatch: {
|
|
11104
|
+
type: String
|
|
11105
|
+
},
|
|
11106
|
+
|
|
11042
11107
|
/**
|
|
11043
11108
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
11044
11109
|
*/
|
|
@@ -11109,7 +11174,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11109
11174
|
|
|
11110
11175
|
/**
|
|
11111
11176
|
* Populates the `type` attribute on the input.
|
|
11112
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
11177
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
11113
11178
|
* @default 'text'
|
|
11114
11179
|
*/
|
|
11115
11180
|
type: {
|
|
@@ -11134,7 +11199,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
11134
11199
|
|
|
11135
11200
|
/**
|
|
11136
11201
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
11137
|
-
*
|
|
11202
|
+
* For `date` type inputs using a full date format (year/month/day), the `value` should be ISO (YYYY-MM-DD). Partial date formats use the display format.
|
|
11138
11203
|
*/
|
|
11139
11204
|
value: {
|
|
11140
11205
|
type: String
|
|
@@ -12257,7 +12322,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$2 {
|
|
|
12257
12322
|
}
|
|
12258
12323
|
};
|
|
12259
12324
|
|
|
12260
|
-
var formkitVersion$8 = '
|
|
12325
|
+
var formkitVersion$8 = '202607012057';
|
|
12261
12326
|
|
|
12262
12327
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
12263
12328
|
// See LICENSE in the project root for license information.
|
|
@@ -13532,8 +13597,21 @@ let AuroFormValidation$1$1 = class AuroFormValidation {
|
|
|
13532
13597
|
return;
|
|
13533
13598
|
}
|
|
13534
13599
|
|
|
13535
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
13600
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
13601
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
13536
13602
|
if (elem.value && !elem.valueObject) {
|
|
13603
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
13604
|
+
|
|
13605
|
+
if (isPartialDateFormat) {
|
|
13606
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
13607
|
+
elem.validity = 'patternMismatch';
|
|
13608
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
13609
|
+
}
|
|
13610
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
13611
|
+
return;
|
|
13612
|
+
}
|
|
13613
|
+
|
|
13614
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
13537
13615
|
elem.validity = 'patternMismatch';
|
|
13538
13616
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
13539
13617
|
return;
|
|
@@ -23386,10 +23464,11 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
23386
23464
|
const dateFormat = format || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
23387
23465
|
|
|
23388
23466
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
23389
|
-
const
|
|
23467
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
23468
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
23390
23469
|
return {
|
|
23391
23470
|
mask: IMask$1.MaskedRange,
|
|
23392
|
-
from:
|
|
23471
|
+
from: fromValue,
|
|
23393
23472
|
to: maxValue,
|
|
23394
23473
|
lazy: true,
|
|
23395
23474
|
placeholderChar: '',
|
|
@@ -23397,7 +23476,8 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
23397
23476
|
return value.toString().padStart(dateFormat.length, '0');
|
|
23398
23477
|
},
|
|
23399
23478
|
parse(str) {
|
|
23400
|
-
|
|
23479
|
+
const num = parseInt(str, 10);
|
|
23480
|
+
return isNaN(num) ? null : num;
|
|
23401
23481
|
}
|
|
23402
23482
|
};
|
|
23403
23483
|
}
|
|
@@ -23461,6 +23541,49 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
23461
23541
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
23462
23542
|
}
|
|
23463
23543
|
|
|
23544
|
+
/**
|
|
23545
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
23546
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
23547
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
23548
|
+
* @param {string} value - The user-facing display value.
|
|
23549
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
23550
|
+
* @returns {boolean}
|
|
23551
|
+
*/
|
|
23552
|
+
isValidPartialDate(value, format) {
|
|
23553
|
+
if (!value || !format) {
|
|
23554
|
+
return false;
|
|
23555
|
+
}
|
|
23556
|
+
const normalizedFormat = format.toLowerCase();
|
|
23557
|
+
|
|
23558
|
+
if (normalizedFormat === 'dd') {
|
|
23559
|
+
const num = Number(value);
|
|
23560
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
23561
|
+
}
|
|
23562
|
+
if (normalizedFormat === 'yy') {
|
|
23563
|
+
const num = Number(value);
|
|
23564
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
23565
|
+
}
|
|
23566
|
+
if (normalizedFormat === 'yyyy') {
|
|
23567
|
+
const num = Number(value);
|
|
23568
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
23569
|
+
}
|
|
23570
|
+
|
|
23571
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
23572
|
+
// Use the 1st of the current month as the reference so that formats
|
|
23573
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
23574
|
+
const referenceDate = new Date();
|
|
23575
|
+
referenceDate.setDate(1);
|
|
23576
|
+
const parsed = parse$1(value, dateFnsMask, referenceDate);
|
|
23577
|
+
if (!isValid$1(parsed) || format$1(parsed, dateFnsMask) !== value) {
|
|
23578
|
+
return false;
|
|
23579
|
+
}
|
|
23580
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
23581
|
+
const year = parsed.getFullYear();
|
|
23582
|
+
return year >= 1900 && year <= 2100;
|
|
23583
|
+
}
|
|
23584
|
+
return true;
|
|
23585
|
+
}
|
|
23586
|
+
|
|
23464
23587
|
/**
|
|
23465
23588
|
* Converts a display string to its model value.
|
|
23466
23589
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -25390,6 +25513,41 @@ class AuroCalendarCell extends i$2 {
|
|
|
25390
25513
|
btn.classList.remove('inRange', 'lastHoveredDate', 'rangeDepartDate');
|
|
25391
25514
|
}
|
|
25392
25515
|
|
|
25516
|
+
/**
|
|
25517
|
+
* Re-applies the committed-range classes (inRange / rangeDepartDate /
|
|
25518
|
+
* rangeReturnDate) imperatively from the cell's current `day`,
|
|
25519
|
+
* `dateFrom`, and `dateTo`. Used after month navigation flushes:
|
|
25520
|
+
* classMap in `renderCellButton` tracks its own previous state, so a
|
|
25521
|
+
* preceding imperative `classList.remove` (from
|
|
25522
|
+
* `clearRangePreviewClasses`) leaves classMap thinking the class is
|
|
25523
|
+
* still applied. On re-render with the same class-value, classMap emits
|
|
25524
|
+
* no delta and the class stays missing in the DOM. Re-toggling
|
|
25525
|
+
* imperatively resyncs the DOM with the committed range.
|
|
25526
|
+
*
|
|
25527
|
+
* Delegates to the same `isInRange` / `isDepartDate` / `isReturnDate`
|
|
25528
|
+
* helpers `renderCellButton` uses, so the two code paths cannot drift
|
|
25529
|
+
* (including whatever timestamp normalization those helpers apply).
|
|
25530
|
+
* @returns {void}
|
|
25531
|
+
*/
|
|
25532
|
+
applyCommittedRangeClasses() {
|
|
25533
|
+
if (!this.day) return;
|
|
25534
|
+
// Fall back to a shadowRoot query when `_cachedButton` hasn't
|
|
25535
|
+
// populated yet — this method's whole job is recovering from stale
|
|
25536
|
+
// DOM after a month re-render, so no-oping on a cache miss defeats
|
|
25537
|
+
// the fix (mirrors the fallback in `clearActive()`).
|
|
25538
|
+
const btn = this._cachedButton || this.shadowRoot?.querySelector('button.day');
|
|
25539
|
+
if (!btn) return;
|
|
25540
|
+
|
|
25541
|
+
const hasRange = this.datepicker?.hasAttribute('range');
|
|
25542
|
+
const inRange = hasRange && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo);
|
|
25543
|
+
const isDepart = hasRange && this.isDepartDate(this.day, this.dateFrom) && this.dateTo;
|
|
25544
|
+
const isReturn = hasRange && this.isReturnDate(this.day, this.dateFrom, this.dateTo);
|
|
25545
|
+
|
|
25546
|
+
btn.classList.toggle('inRange', Boolean(inRange));
|
|
25547
|
+
btn.classList.toggle('rangeDepartDate', Boolean(isDepart));
|
|
25548
|
+
btn.classList.toggle('rangeReturnDate', Boolean(isReturn));
|
|
25549
|
+
}
|
|
25550
|
+
|
|
25393
25551
|
renderCellButton() {
|
|
25394
25552
|
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
25395
25553
|
const blackout = this.isBlackout();
|
|
@@ -26534,7 +26692,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$2 {
|
|
|
26534
26692
|
}
|
|
26535
26693
|
};
|
|
26536
26694
|
|
|
26537
|
-
var formkitVersion$2$1 = '
|
|
26695
|
+
var formkitVersion$2$1 = '202607012057';
|
|
26538
26696
|
|
|
26539
26697
|
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}
|
|
26540
26698
|
`,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}}
|
|
@@ -26879,6 +27037,11 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
26879
27037
|
if (!opts.skipActiveUpdate) {
|
|
26880
27038
|
this.updateActiveCellForVisibleMonth();
|
|
26881
27039
|
}
|
|
27040
|
+
// clearRangePreview above strips classMap-managed range classes from
|
|
27041
|
+
// the DOM; classMap's private state still thinks they're applied, so
|
|
27042
|
+
// it won't re-add them on the post-nav re-render. Re-apply imperatively
|
|
27043
|
+
// after both months and their cell button caches have settled.
|
|
27044
|
+
this.scheduleCommittedRangeClassRefresh();
|
|
26882
27045
|
this.announceMonthChange();
|
|
26883
27046
|
}
|
|
26884
27047
|
|
|
@@ -26897,6 +27060,11 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
26897
27060
|
if (!opts.skipActiveUpdate) {
|
|
26898
27061
|
this.updateActiveCellForVisibleMonth();
|
|
26899
27062
|
}
|
|
27063
|
+
// clearRangePreview above strips classMap-managed range classes from
|
|
27064
|
+
// the DOM; classMap's private state still thinks they're applied, so
|
|
27065
|
+
// it won't re-add them on the post-nav re-render. Re-apply imperatively
|
|
27066
|
+
// after both months and their cell button caches have settled.
|
|
27067
|
+
this.scheduleCommittedRangeClassRefresh();
|
|
26900
27068
|
this.announceMonthChange();
|
|
26901
27069
|
}
|
|
26902
27070
|
|
|
@@ -27975,9 +28143,14 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27975
28143
|
* @private
|
|
27976
28144
|
* @param {Object} [options] - Optional settings.
|
|
27977
28145
|
* @param {boolean} [options.force=false] - When true, clears classes even
|
|
27978
|
-
* when both dateFrom and dateTo are set. Used by month nav handlers
|
|
27979
|
-
*
|
|
27980
|
-
*
|
|
28146
|
+
* when both dateFrom and dateTo are set. Used by month nav handlers to
|
|
28147
|
+
* strip the imperative-only `lastHoveredDate` before the re-render.
|
|
28148
|
+
* The other two classes (`inRange`, `rangeDepartDate`) are classMap-
|
|
28149
|
+
* managed and get stripped as a side effect here; because classMap
|
|
28150
|
+
* remembers what it last emitted and does not diff against the actual
|
|
28151
|
+
* DOM, the following month re-render will NOT re-add them on its own.
|
|
28152
|
+
* Nav handlers must schedule `refreshCommittedRangeClasses` (via
|
|
28153
|
+
* `scheduleCommittedRangeClassRefresh`) to resync them.
|
|
27981
28154
|
* @returns {void}
|
|
27982
28155
|
*/
|
|
27983
28156
|
clearRangePreview(options) {
|
|
@@ -27992,6 +28165,57 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27992
28165
|
});
|
|
27993
28166
|
}
|
|
27994
28167
|
|
|
28168
|
+
/**
|
|
28169
|
+
* Re-applies the committed-range classes across every focusable cell
|
|
28170
|
+
* after a month navigation. classMap in the cell tracks its own
|
|
28171
|
+
* previous state: once `clearRangePreview({ force: true })` strips
|
|
28172
|
+
* `inRange`/`rangeDepartDate` imperatively before the re-render,
|
|
28173
|
+
* classMap's next diff sees the same class-value it emitted before and
|
|
28174
|
+
* produces no delta, leaving the DOM without the classes even though a
|
|
28175
|
+
* full range is committed. Re-applying imperatively resyncs the two
|
|
28176
|
+
* months' cells with `dateFrom`/`dateTo`.
|
|
28177
|
+
*
|
|
28178
|
+
* Iterates `getAllFocusableCells()` — out-of-range cells (blocked by
|
|
28179
|
+
* `min`/`max`) can never carry range classes anyway, so skipping them
|
|
28180
|
+
* is correct and cheaper than a whole-grid walk.
|
|
28181
|
+
*
|
|
28182
|
+
* The cell's `applyCommittedRangeClasses` reuses the same
|
|
28183
|
+
* `isInRange`/`isDepartDate`/`isReturnDate` helpers `renderCellButton`
|
|
28184
|
+
* uses, so we don't parse dateFrom/dateTo here — the helpers already
|
|
28185
|
+
* normalize their inputs (midnight-truncation, string→int) internally.
|
|
28186
|
+
* @private
|
|
28187
|
+
* @returns {void}
|
|
28188
|
+
*/
|
|
28189
|
+
refreshCommittedRangeClasses() {
|
|
28190
|
+
if (this.noRange || !this.dateFrom || !this.dateTo) {
|
|
28191
|
+
return;
|
|
28192
|
+
}
|
|
28193
|
+
|
|
28194
|
+
const allCells = this.getAllFocusableCells();
|
|
28195
|
+
allCells.forEach((cell) => {
|
|
28196
|
+
cell.applyCommittedRangeClasses();
|
|
28197
|
+
});
|
|
28198
|
+
}
|
|
28199
|
+
|
|
28200
|
+
/**
|
|
28201
|
+
* Schedules `refreshCommittedRangeClasses` to run after the month
|
|
28202
|
+
* re-render has flushed and the cells' button caches have refreshed.
|
|
28203
|
+
* Both `handlePrevMonth` and `handleNextMonth` need this exact call
|
|
28204
|
+
* shape; keeping it in one place prevents them from drifting apart.
|
|
28205
|
+
*
|
|
28206
|
+
* Bails synchronously when a full committed range isn't set — otherwise
|
|
28207
|
+
* every prev/next click in single-date mode (or before the user picks
|
|
28208
|
+
* both dates in range mode) pays for an unused double-rAF hop.
|
|
28209
|
+
* @private
|
|
28210
|
+
* @returns {void}
|
|
28211
|
+
*/
|
|
28212
|
+
scheduleCommittedRangeClassRefresh() {
|
|
28213
|
+
if (this.noRange || !this.dateFrom || !this.dateTo) {
|
|
28214
|
+
return;
|
|
28215
|
+
}
|
|
28216
|
+
this._afterMonthRender(() => this.refreshCommittedRangeClasses());
|
|
28217
|
+
}
|
|
28218
|
+
|
|
27995
28219
|
/**
|
|
27996
28220
|
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
27997
28221
|
* as a reactive property. Instead, handles the range preview imperatively.
|
|
@@ -32286,7 +32510,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$2 {
|
|
|
32286
32510
|
}
|
|
32287
32511
|
};
|
|
32288
32512
|
|
|
32289
|
-
var formkitVersion$1$3 = '
|
|
32513
|
+
var formkitVersion$1$3 = '202607012057';
|
|
32290
32514
|
|
|
32291
32515
|
let AuroElement$2$2 = class AuroElement extends i$2 {
|
|
32292
32516
|
static get properties() {
|
|
@@ -33038,6 +33262,23 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
33038
33262
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
33039
33263
|
this.trigger.focus();
|
|
33040
33264
|
}
|
|
33265
|
+
|
|
33266
|
+
|
|
33267
|
+
if (!this.isPopoverVisible) {
|
|
33268
|
+
// wait til the bib gets fully closed and rendered
|
|
33269
|
+
setTimeout(() => {
|
|
33270
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
33271
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
33272
|
+
if (this.isPopoverVisible ||
|
|
33273
|
+
// eslint-disable-next-line no-extra-parens
|
|
33274
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
33275
|
+
document.activeElement !== document.body)) {
|
|
33276
|
+
return;
|
|
33277
|
+
}
|
|
33278
|
+
// Restore focus to the trigger.
|
|
33279
|
+
this.trigger.focus();
|
|
33280
|
+
});
|
|
33281
|
+
}
|
|
33041
33282
|
}
|
|
33042
33283
|
|
|
33043
33284
|
firstUpdated() {
|
|
@@ -37963,8 +38204,21 @@ let AuroFormValidation$6 = class AuroFormValidation {
|
|
|
37963
38204
|
return;
|
|
37964
38205
|
}
|
|
37965
38206
|
|
|
37966
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
38207
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
38208
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
37967
38209
|
if (elem.value && !elem.valueObject) {
|
|
38210
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
38211
|
+
|
|
38212
|
+
if (isPartialDateFormat) {
|
|
38213
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
38214
|
+
elem.validity = 'patternMismatch';
|
|
38215
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
38216
|
+
}
|
|
38217
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
38218
|
+
return;
|
|
38219
|
+
}
|
|
38220
|
+
|
|
38221
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
37968
38222
|
elem.validity = 'patternMismatch';
|
|
37969
38223
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
37970
38224
|
return;
|
|
@@ -43894,10 +44148,11 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
43894
44148
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
43895
44149
|
|
|
43896
44150
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
43897
|
-
const
|
|
44151
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
44152
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
43898
44153
|
return {
|
|
43899
44154
|
mask: IMask$2.MaskedRange,
|
|
43900
|
-
from:
|
|
44155
|
+
from: fromValue,
|
|
43901
44156
|
to: maxValue,
|
|
43902
44157
|
lazy: true,
|
|
43903
44158
|
placeholderChar: '',
|
|
@@ -43905,7 +44160,8 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
43905
44160
|
return value.toString().padStart(dateFormat.length, '0');
|
|
43906
44161
|
},
|
|
43907
44162
|
parse(str) {
|
|
43908
|
-
|
|
44163
|
+
const num = parseInt(str, 10);
|
|
44164
|
+
return isNaN(num) ? null : num;
|
|
43909
44165
|
}
|
|
43910
44166
|
};
|
|
43911
44167
|
}
|
|
@@ -43969,6 +44225,49 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
43969
44225
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
43970
44226
|
}
|
|
43971
44227
|
|
|
44228
|
+
/**
|
|
44229
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
44230
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
44231
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
44232
|
+
* @param {string} value - The user-facing display value.
|
|
44233
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
44234
|
+
* @returns {boolean}
|
|
44235
|
+
*/
|
|
44236
|
+
isValidPartialDate(value, format$1) {
|
|
44237
|
+
if (!value || !format$1) {
|
|
44238
|
+
return false;
|
|
44239
|
+
}
|
|
44240
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
44241
|
+
|
|
44242
|
+
if (normalizedFormat === 'dd') {
|
|
44243
|
+
const num = Number(value);
|
|
44244
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
44245
|
+
}
|
|
44246
|
+
if (normalizedFormat === 'yy') {
|
|
44247
|
+
const num = Number(value);
|
|
44248
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
44249
|
+
}
|
|
44250
|
+
if (normalizedFormat === 'yyyy') {
|
|
44251
|
+
const num = Number(value);
|
|
44252
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
44253
|
+
}
|
|
44254
|
+
|
|
44255
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
44256
|
+
// Use the 1st of the current month as the reference so that formats
|
|
44257
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
44258
|
+
const referenceDate = new Date();
|
|
44259
|
+
referenceDate.setDate(1);
|
|
44260
|
+
const parsed = parse$2(value, dateFnsMask, referenceDate);
|
|
44261
|
+
if (!isValid$2(parsed) || format$2(parsed, dateFnsMask) !== value) {
|
|
44262
|
+
return false;
|
|
44263
|
+
}
|
|
44264
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
44265
|
+
const year = parsed.getFullYear();
|
|
44266
|
+
return year >= 1900 && year <= 2100;
|
|
44267
|
+
}
|
|
44268
|
+
return true;
|
|
44269
|
+
}
|
|
44270
|
+
|
|
43972
44271
|
/**
|
|
43973
44272
|
* Converts a display string to its model value.
|
|
43974
44273
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -44588,6 +44887,13 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
44588
44887
|
type: String
|
|
44589
44888
|
},
|
|
44590
44889
|
|
|
44890
|
+
/**
|
|
44891
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
44892
|
+
*/
|
|
44893
|
+
setCustomValidityPatternMismatch: {
|
|
44894
|
+
type: String
|
|
44895
|
+
},
|
|
44896
|
+
|
|
44591
44897
|
/**
|
|
44592
44898
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
44593
44899
|
*/
|
|
@@ -44658,7 +44964,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
44658
44964
|
|
|
44659
44965
|
/**
|
|
44660
44966
|
* Populates the `type` attribute on the input.
|
|
44661
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
44967
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
44662
44968
|
* @default 'text'
|
|
44663
44969
|
*/
|
|
44664
44970
|
type: {
|
|
@@ -44683,7 +44989,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
44683
44989
|
|
|
44684
44990
|
/**
|
|
44685
44991
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
44686
|
-
*
|
|
44992
|
+
* For `date` type inputs using a full date format (year/month/day), the `value` should be ISO (YYYY-MM-DD). Partial date formats use the display format.
|
|
44687
44993
|
*/
|
|
44688
44994
|
value: {
|
|
44689
44995
|
type: String
|
|
@@ -45806,7 +46112,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$2 {
|
|
|
45806
46112
|
}
|
|
45807
46113
|
};
|
|
45808
46114
|
|
|
45809
|
-
var formkitVersion$7 = '
|
|
46115
|
+
var formkitVersion$7 = '202607012057';
|
|
45810
46116
|
|
|
45811
46117
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
45812
46118
|
// See LICENSE in the project root for license information.
|
|
@@ -50102,8 +50408,21 @@ let AuroFormValidation$5 = class AuroFormValidation {
|
|
|
50102
50408
|
return;
|
|
50103
50409
|
}
|
|
50104
50410
|
|
|
50105
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
50411
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
50412
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
50106
50413
|
if (elem.value && !elem.valueObject) {
|
|
50414
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
50415
|
+
|
|
50416
|
+
if (isPartialDateFormat) {
|
|
50417
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
50418
|
+
elem.validity = 'patternMismatch';
|
|
50419
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
50420
|
+
}
|
|
50421
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
50422
|
+
return;
|
|
50423
|
+
}
|
|
50424
|
+
|
|
50425
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
50107
50426
|
elem.validity = 'patternMismatch';
|
|
50108
50427
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
50109
50428
|
return;
|
|
@@ -50675,7 +50994,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$2 {
|
|
|
50675
50994
|
}
|
|
50676
50995
|
};
|
|
50677
50996
|
|
|
50678
|
-
var formkitVersion$1$2 = '
|
|
50997
|
+
var formkitVersion$1$2 = '202607012057';
|
|
50679
50998
|
|
|
50680
50999
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
50681
51000
|
// See LICENSE in the project root for license information.
|
|
@@ -55003,7 +55322,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$2 {
|
|
|
55003
55322
|
}
|
|
55004
55323
|
};
|
|
55005
55324
|
|
|
55006
|
-
var formkitVersion$6 = '
|
|
55325
|
+
var formkitVersion$6 = '202607012057';
|
|
55007
55326
|
|
|
55008
55327
|
let AuroElement$1$2 = class AuroElement extends i$2 {
|
|
55009
55328
|
static get properties() {
|
|
@@ -55755,6 +56074,23 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$1$2 {
|
|
|
55755
56074
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
55756
56075
|
this.trigger.focus();
|
|
55757
56076
|
}
|
|
56077
|
+
|
|
56078
|
+
|
|
56079
|
+
if (!this.isPopoverVisible) {
|
|
56080
|
+
// wait til the bib gets fully closed and rendered
|
|
56081
|
+
setTimeout(() => {
|
|
56082
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
56083
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
56084
|
+
if (this.isPopoverVisible ||
|
|
56085
|
+
// eslint-disable-next-line no-extra-parens
|
|
56086
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
56087
|
+
document.activeElement !== document.body)) {
|
|
56088
|
+
return;
|
|
56089
|
+
}
|
|
56090
|
+
// Restore focus to the trigger.
|
|
56091
|
+
this.trigger.focus();
|
|
56092
|
+
});
|
|
56093
|
+
}
|
|
55758
56094
|
}
|
|
55759
56095
|
|
|
55760
56096
|
firstUpdated() {
|
|
@@ -58454,8 +58790,21 @@ let AuroFormValidation$4 = class AuroFormValidation {
|
|
|
58454
58790
|
return;
|
|
58455
58791
|
}
|
|
58456
58792
|
|
|
58457
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
58793
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
58794
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
58458
58795
|
if (elem.value && !elem.valueObject) {
|
|
58796
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
58797
|
+
|
|
58798
|
+
if (isPartialDateFormat) {
|
|
58799
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
58800
|
+
elem.validity = 'patternMismatch';
|
|
58801
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
58802
|
+
}
|
|
58803
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
58804
|
+
return;
|
|
58805
|
+
}
|
|
58806
|
+
|
|
58807
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
58459
58808
|
elem.validity = 'patternMismatch';
|
|
58460
58809
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
58461
58810
|
return;
|
|
@@ -58953,7 +59302,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$2 {
|
|
|
58953
59302
|
}
|
|
58954
59303
|
};
|
|
58955
59304
|
|
|
58956
|
-
var formkitVersion$5 = '
|
|
59305
|
+
var formkitVersion$5 = '202607012057';
|
|
58957
59306
|
|
|
58958
59307
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
58959
59308
|
// See LICENSE in the project root for license information.
|
|
@@ -60202,8 +60551,21 @@ let AuroFormValidation$3 = class AuroFormValidation {
|
|
|
60202
60551
|
return;
|
|
60203
60552
|
}
|
|
60204
60553
|
|
|
60205
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
60554
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
60555
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
60206
60556
|
if (elem.value && !elem.valueObject) {
|
|
60557
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
60558
|
+
|
|
60559
|
+
if (isPartialDateFormat) {
|
|
60560
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
60561
|
+
elem.validity = 'patternMismatch';
|
|
60562
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
60563
|
+
}
|
|
60564
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
60565
|
+
return;
|
|
60566
|
+
}
|
|
60567
|
+
|
|
60568
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
60207
60569
|
elem.validity = 'patternMismatch';
|
|
60208
60570
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
60209
60571
|
return;
|
|
@@ -60705,7 +61067,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$2 {
|
|
|
60705
61067
|
}
|
|
60706
61068
|
};
|
|
60707
61069
|
|
|
60708
|
-
var formkitVersion$4 = '
|
|
61070
|
+
var formkitVersion$4 = '202607012057';
|
|
60709
61071
|
|
|
60710
61072
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
60711
61073
|
// See LICENSE in the project root for license information.
|
|
@@ -61464,8 +61826,21 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
61464
61826
|
return;
|
|
61465
61827
|
}
|
|
61466
61828
|
|
|
61467
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
61829
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
61830
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
61468
61831
|
if (elem.value && !elem.valueObject) {
|
|
61832
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
61833
|
+
|
|
61834
|
+
if (isPartialDateFormat) {
|
|
61835
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
61836
|
+
elem.validity = 'patternMismatch';
|
|
61837
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
61838
|
+
}
|
|
61839
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
61840
|
+
return;
|
|
61841
|
+
}
|
|
61842
|
+
|
|
61843
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
61469
61844
|
elem.validity = 'patternMismatch';
|
|
61470
61845
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
61471
61846
|
return;
|
|
@@ -65913,7 +66288,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$2 {
|
|
|
65913
66288
|
}
|
|
65914
66289
|
};
|
|
65915
66290
|
|
|
65916
|
-
var formkitVersion$2 = '
|
|
66291
|
+
var formkitVersion$2 = '202607012057';
|
|
65917
66292
|
|
|
65918
66293
|
let AuroElement$2$1 = class AuroElement extends i$2 {
|
|
65919
66294
|
static get properties() {
|
|
@@ -66665,6 +67040,23 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
66665
67040
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
66666
67041
|
this.trigger.focus();
|
|
66667
67042
|
}
|
|
67043
|
+
|
|
67044
|
+
|
|
67045
|
+
if (!this.isPopoverVisible) {
|
|
67046
|
+
// wait til the bib gets fully closed and rendered
|
|
67047
|
+
setTimeout(() => {
|
|
67048
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
67049
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
67050
|
+
if (this.isPopoverVisible ||
|
|
67051
|
+
// eslint-disable-next-line no-extra-parens
|
|
67052
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
67053
|
+
document.activeElement !== document.body)) {
|
|
67054
|
+
return;
|
|
67055
|
+
}
|
|
67056
|
+
// Restore focus to the trigger.
|
|
67057
|
+
this.trigger.focus();
|
|
67058
|
+
});
|
|
67059
|
+
}
|
|
66668
67060
|
}
|
|
66669
67061
|
|
|
66670
67062
|
firstUpdated() {
|
|
@@ -71590,8 +71982,21 @@ let AuroFormValidation$2 = class AuroFormValidation {
|
|
|
71590
71982
|
return;
|
|
71591
71983
|
}
|
|
71592
71984
|
|
|
71593
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
71985
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
71986
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
71594
71987
|
if (elem.value && !elem.valueObject) {
|
|
71988
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
71989
|
+
|
|
71990
|
+
if (isPartialDateFormat) {
|
|
71991
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
71992
|
+
elem.validity = 'patternMismatch';
|
|
71993
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
71994
|
+
}
|
|
71995
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
71996
|
+
return;
|
|
71997
|
+
}
|
|
71998
|
+
|
|
71999
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
71595
72000
|
elem.validity = 'patternMismatch';
|
|
71596
72001
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
71597
72002
|
return;
|
|
@@ -77521,10 +77926,11 @@ class AuroInputUtilities {
|
|
|
77521
77926
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
77522
77927
|
|
|
77523
77928
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
77524
|
-
const
|
|
77929
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
77930
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
77525
77931
|
return {
|
|
77526
77932
|
mask: IMask.MaskedRange,
|
|
77527
|
-
from:
|
|
77933
|
+
from: fromValue,
|
|
77528
77934
|
to: maxValue,
|
|
77529
77935
|
lazy: true,
|
|
77530
77936
|
placeholderChar: '',
|
|
@@ -77532,7 +77938,8 @@ class AuroInputUtilities {
|
|
|
77532
77938
|
return value.toString().padStart(dateFormat.length, '0');
|
|
77533
77939
|
},
|
|
77534
77940
|
parse(str) {
|
|
77535
|
-
|
|
77941
|
+
const num = parseInt(str, 10);
|
|
77942
|
+
return isNaN(num) ? null : num;
|
|
77536
77943
|
}
|
|
77537
77944
|
};
|
|
77538
77945
|
}
|
|
@@ -77596,6 +78003,49 @@ class AuroInputUtilities {
|
|
|
77596
78003
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
77597
78004
|
}
|
|
77598
78005
|
|
|
78006
|
+
/**
|
|
78007
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
78008
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
78009
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
78010
|
+
* @param {string} value - The user-facing display value.
|
|
78011
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
78012
|
+
* @returns {boolean}
|
|
78013
|
+
*/
|
|
78014
|
+
isValidPartialDate(value, format$1) {
|
|
78015
|
+
if (!value || !format$1) {
|
|
78016
|
+
return false;
|
|
78017
|
+
}
|
|
78018
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
78019
|
+
|
|
78020
|
+
if (normalizedFormat === 'dd') {
|
|
78021
|
+
const num = Number(value);
|
|
78022
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
78023
|
+
}
|
|
78024
|
+
if (normalizedFormat === 'yy') {
|
|
78025
|
+
const num = Number(value);
|
|
78026
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
78027
|
+
}
|
|
78028
|
+
if (normalizedFormat === 'yyyy') {
|
|
78029
|
+
const num = Number(value);
|
|
78030
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
78031
|
+
}
|
|
78032
|
+
|
|
78033
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
78034
|
+
// Use the 1st of the current month as the reference so that formats
|
|
78035
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
78036
|
+
const referenceDate = new Date();
|
|
78037
|
+
referenceDate.setDate(1);
|
|
78038
|
+
const parsed = parse(value, dateFnsMask, referenceDate);
|
|
78039
|
+
if (!isValid(parsed) || format(parsed, dateFnsMask) !== value) {
|
|
78040
|
+
return false;
|
|
78041
|
+
}
|
|
78042
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
78043
|
+
const year = parsed.getFullYear();
|
|
78044
|
+
return year >= 1900 && year <= 2100;
|
|
78045
|
+
}
|
|
78046
|
+
return true;
|
|
78047
|
+
}
|
|
78048
|
+
|
|
77599
78049
|
/**
|
|
77600
78050
|
* Converts a display string to its model value.
|
|
77601
78051
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -78215,6 +78665,13 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78215
78665
|
type: String
|
|
78216
78666
|
},
|
|
78217
78667
|
|
|
78668
|
+
/**
|
|
78669
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
78670
|
+
*/
|
|
78671
|
+
setCustomValidityPatternMismatch: {
|
|
78672
|
+
type: String
|
|
78673
|
+
},
|
|
78674
|
+
|
|
78218
78675
|
/**
|
|
78219
78676
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
78220
78677
|
*/
|
|
@@ -78285,7 +78742,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78285
78742
|
|
|
78286
78743
|
/**
|
|
78287
78744
|
* Populates the `type` attribute on the input.
|
|
78288
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
78745
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
78289
78746
|
* @default 'text'
|
|
78290
78747
|
*/
|
|
78291
78748
|
type: {
|
|
@@ -78310,7 +78767,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
78310
78767
|
|
|
78311
78768
|
/**
|
|
78312
78769
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
78313
|
-
*
|
|
78770
|
+
* For `date` type inputs using a full date format (year/month/day), the `value` should be ISO (YYYY-MM-DD). Partial date formats use the display format.
|
|
78314
78771
|
*/
|
|
78315
78772
|
value: {
|
|
78316
78773
|
type: String
|
|
@@ -79433,7 +79890,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$2 {
|
|
|
79433
79890
|
}
|
|
79434
79891
|
};
|
|
79435
79892
|
|
|
79436
|
-
var formkitVersion$1$1 = '
|
|
79893
|
+
var formkitVersion$1$1 = '202607012057';
|
|
79437
79894
|
|
|
79438
79895
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
79439
79896
|
// See LICENSE in the project root for license information.
|
|
@@ -80559,7 +81016,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$2 {
|
|
|
80559
81016
|
}
|
|
80560
81017
|
};
|
|
80561
81018
|
|
|
80562
|
-
var formkitVersion$3 = '
|
|
81019
|
+
var formkitVersion$3 = '202607012057';
|
|
80563
81020
|
|
|
80564
81021
|
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}`;
|
|
80565
81022
|
|
|
@@ -84893,8 +85350,21 @@ class AuroFormValidation {
|
|
|
84893
85350
|
return;
|
|
84894
85351
|
}
|
|
84895
85352
|
|
|
84896
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
85353
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
85354
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
84897
85355
|
if (elem.value && !elem.valueObject) {
|
|
85356
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
85357
|
+
|
|
85358
|
+
if (isPartialDateFormat) {
|
|
85359
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
85360
|
+
elem.validity = 'patternMismatch';
|
|
85361
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
85362
|
+
}
|
|
85363
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
85364
|
+
return;
|
|
85365
|
+
}
|
|
85366
|
+
|
|
85367
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
84898
85368
|
elem.validity = 'patternMismatch';
|
|
84899
85369
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
84900
85370
|
return;
|
|
@@ -89382,7 +89852,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$2 {
|
|
|
89382
89852
|
}
|
|
89383
89853
|
};
|
|
89384
89854
|
|
|
89385
|
-
var formkitVersion$1 = '
|
|
89855
|
+
var formkitVersion$1 = '202607012057';
|
|
89386
89856
|
|
|
89387
89857
|
class AuroElement extends i$2 {
|
|
89388
89858
|
static get properties() {
|
|
@@ -90134,6 +90604,23 @@ class AuroDropdown extends AuroElement {
|
|
|
90134
90604
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
90135
90605
|
this.trigger.focus();
|
|
90136
90606
|
}
|
|
90607
|
+
|
|
90608
|
+
|
|
90609
|
+
if (!this.isPopoverVisible) {
|
|
90610
|
+
// wait til the bib gets fully closed and rendered
|
|
90611
|
+
setTimeout(() => {
|
|
90612
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
90613
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
90614
|
+
if (this.isPopoverVisible ||
|
|
90615
|
+
// eslint-disable-next-line no-extra-parens
|
|
90616
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
90617
|
+
document.activeElement !== document.body)) {
|
|
90618
|
+
return;
|
|
90619
|
+
}
|
|
90620
|
+
// Restore focus to the trigger.
|
|
90621
|
+
this.trigger.focus();
|
|
90622
|
+
});
|
|
90623
|
+
}
|
|
90137
90624
|
}
|
|
90138
90625
|
|
|
90139
90626
|
firstUpdated() {
|
|
@@ -91404,7 +91891,7 @@ class AuroHelpText extends i$2 {
|
|
|
91404
91891
|
}
|
|
91405
91892
|
}
|
|
91406
91893
|
|
|
91407
|
-
var formkitVersion = '
|
|
91894
|
+
var formkitVersion = '202607012057';
|
|
91408
91895
|
|
|
91409
91896
|
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}`;
|
|
91410
91897
|
|