@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
|
@@ -5455,8 +5455,21 @@ let AuroFormValidation$7 = class AuroFormValidation {
|
|
|
5455
5455
|
return;
|
|
5456
5456
|
}
|
|
5457
5457
|
|
|
5458
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
5458
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
5459
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
5459
5460
|
if (elem.value && !elem.valueObject) {
|
|
5461
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
5462
|
+
|
|
5463
|
+
if (isPartialDateFormat) {
|
|
5464
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
5465
|
+
elem.validity = 'patternMismatch';
|
|
5466
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
5467
|
+
}
|
|
5468
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
5469
|
+
return;
|
|
5470
|
+
}
|
|
5471
|
+
|
|
5472
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
5460
5473
|
elem.validity = 'patternMismatch';
|
|
5461
5474
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
5462
5475
|
return;
|
|
@@ -11386,10 +11399,11 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
11386
11399
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
11387
11400
|
|
|
11388
11401
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
11389
|
-
const
|
|
11402
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
11403
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
11390
11404
|
return {
|
|
11391
11405
|
mask: IMask$3.MaskedRange,
|
|
11392
|
-
from:
|
|
11406
|
+
from: fromValue,
|
|
11393
11407
|
to: maxValue,
|
|
11394
11408
|
lazy: true,
|
|
11395
11409
|
placeholderChar: '',
|
|
@@ -11397,7 +11411,8 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
11397
11411
|
return value.toString().padStart(dateFormat.length, '0');
|
|
11398
11412
|
},
|
|
11399
11413
|
parse(str) {
|
|
11400
|
-
|
|
11414
|
+
const num = parseInt(str, 10);
|
|
11415
|
+
return isNaN(num) ? null : num;
|
|
11401
11416
|
}
|
|
11402
11417
|
};
|
|
11403
11418
|
}
|
|
@@ -11461,6 +11476,49 @@ let AuroInputUtilities$3 = class AuroInputUtilities {
|
|
|
11461
11476
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
11462
11477
|
}
|
|
11463
11478
|
|
|
11479
|
+
/**
|
|
11480
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
11481
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
11482
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
11483
|
+
* @param {string} value - The user-facing display value.
|
|
11484
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
11485
|
+
* @returns {boolean}
|
|
11486
|
+
*/
|
|
11487
|
+
isValidPartialDate(value, format$1) {
|
|
11488
|
+
if (!value || !format$1) {
|
|
11489
|
+
return false;
|
|
11490
|
+
}
|
|
11491
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
11492
|
+
|
|
11493
|
+
if (normalizedFormat === 'dd') {
|
|
11494
|
+
const num = Number(value);
|
|
11495
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
11496
|
+
}
|
|
11497
|
+
if (normalizedFormat === 'yy') {
|
|
11498
|
+
const num = Number(value);
|
|
11499
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
11500
|
+
}
|
|
11501
|
+
if (normalizedFormat === 'yyyy') {
|
|
11502
|
+
const num = Number(value);
|
|
11503
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
11504
|
+
}
|
|
11505
|
+
|
|
11506
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
11507
|
+
// Use the 1st of the current month as the reference so that formats
|
|
11508
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
11509
|
+
const referenceDate = new Date();
|
|
11510
|
+
referenceDate.setDate(1);
|
|
11511
|
+
const parsed = parse$3(value, dateFnsMask, referenceDate);
|
|
11512
|
+
if (!isValid$3(parsed) || format$3(parsed, dateFnsMask) !== value) {
|
|
11513
|
+
return false;
|
|
11514
|
+
}
|
|
11515
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
11516
|
+
const year = parsed.getFullYear();
|
|
11517
|
+
return year >= 1900 && year <= 2100;
|
|
11518
|
+
}
|
|
11519
|
+
return true;
|
|
11520
|
+
}
|
|
11521
|
+
|
|
11464
11522
|
/**
|
|
11465
11523
|
* Converts a display string to its model value.
|
|
11466
11524
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -12080,6 +12138,13 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12080
12138
|
type: String
|
|
12081
12139
|
},
|
|
12082
12140
|
|
|
12141
|
+
/**
|
|
12142
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
12143
|
+
*/
|
|
12144
|
+
setCustomValidityPatternMismatch: {
|
|
12145
|
+
type: String
|
|
12146
|
+
},
|
|
12147
|
+
|
|
12083
12148
|
/**
|
|
12084
12149
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
12085
12150
|
*/
|
|
@@ -12150,7 +12215,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12150
12215
|
|
|
12151
12216
|
/**
|
|
12152
12217
|
* Populates the `type` attribute on the input.
|
|
12153
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
12218
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
12154
12219
|
* @default 'text'
|
|
12155
12220
|
*/
|
|
12156
12221
|
type: {
|
|
@@ -12175,7 +12240,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$6 {
|
|
|
12175
12240
|
|
|
12176
12241
|
/**
|
|
12177
12242
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
12178
|
-
*
|
|
12243
|
+
* 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.
|
|
12179
12244
|
*/
|
|
12180
12245
|
value: {
|
|
12181
12246
|
type: String
|
|
@@ -13298,7 +13363,7 @@ let AuroHelpText$8 = class AuroHelpText extends i$3 {
|
|
|
13298
13363
|
}
|
|
13299
13364
|
};
|
|
13300
13365
|
|
|
13301
|
-
var formkitVersion$8 = '
|
|
13366
|
+
var formkitVersion$8 = '202607012057';
|
|
13302
13367
|
|
|
13303
13368
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
13304
13369
|
// See LICENSE in the project root for license information.
|
|
@@ -14573,8 +14638,21 @@ let AuroFormValidation$1$1 = class AuroFormValidation {
|
|
|
14573
14638
|
return;
|
|
14574
14639
|
}
|
|
14575
14640
|
|
|
14576
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
14641
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
14642
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
14577
14643
|
if (elem.value && !elem.valueObject) {
|
|
14644
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
14645
|
+
|
|
14646
|
+
if (isPartialDateFormat) {
|
|
14647
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
14648
|
+
elem.validity = 'patternMismatch';
|
|
14649
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
14650
|
+
}
|
|
14651
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
14652
|
+
return;
|
|
14653
|
+
}
|
|
14654
|
+
|
|
14655
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
14578
14656
|
elem.validity = 'patternMismatch';
|
|
14579
14657
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
14580
14658
|
return;
|
|
@@ -24427,10 +24505,11 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
24427
24505
|
const dateFormat = format || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
24428
24506
|
|
|
24429
24507
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
24430
|
-
const
|
|
24508
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
24509
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
24431
24510
|
return {
|
|
24432
24511
|
mask: IMask$1.MaskedRange,
|
|
24433
|
-
from:
|
|
24512
|
+
from: fromValue,
|
|
24434
24513
|
to: maxValue,
|
|
24435
24514
|
lazy: true,
|
|
24436
24515
|
placeholderChar: '',
|
|
@@ -24438,7 +24517,8 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
24438
24517
|
return value.toString().padStart(dateFormat.length, '0');
|
|
24439
24518
|
},
|
|
24440
24519
|
parse(str) {
|
|
24441
|
-
|
|
24520
|
+
const num = parseInt(str, 10);
|
|
24521
|
+
return isNaN(num) ? null : num;
|
|
24442
24522
|
}
|
|
24443
24523
|
};
|
|
24444
24524
|
}
|
|
@@ -24502,6 +24582,49 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
|
|
|
24502
24582
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
24503
24583
|
}
|
|
24504
24584
|
|
|
24585
|
+
/**
|
|
24586
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
24587
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
24588
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
24589
|
+
* @param {string} value - The user-facing display value.
|
|
24590
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
24591
|
+
* @returns {boolean}
|
|
24592
|
+
*/
|
|
24593
|
+
isValidPartialDate(value, format) {
|
|
24594
|
+
if (!value || !format) {
|
|
24595
|
+
return false;
|
|
24596
|
+
}
|
|
24597
|
+
const normalizedFormat = format.toLowerCase();
|
|
24598
|
+
|
|
24599
|
+
if (normalizedFormat === 'dd') {
|
|
24600
|
+
const num = Number(value);
|
|
24601
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
24602
|
+
}
|
|
24603
|
+
if (normalizedFormat === 'yy') {
|
|
24604
|
+
const num = Number(value);
|
|
24605
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
24606
|
+
}
|
|
24607
|
+
if (normalizedFormat === 'yyyy') {
|
|
24608
|
+
const num = Number(value);
|
|
24609
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
24610
|
+
}
|
|
24611
|
+
|
|
24612
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
24613
|
+
// Use the 1st of the current month as the reference so that formats
|
|
24614
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
24615
|
+
const referenceDate = new Date();
|
|
24616
|
+
referenceDate.setDate(1);
|
|
24617
|
+
const parsed = parse$1(value, dateFnsMask, referenceDate);
|
|
24618
|
+
if (!isValid$1(parsed) || format$1(parsed, dateFnsMask) !== value) {
|
|
24619
|
+
return false;
|
|
24620
|
+
}
|
|
24621
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
24622
|
+
const year = parsed.getFullYear();
|
|
24623
|
+
return year >= 1900 && year <= 2100;
|
|
24624
|
+
}
|
|
24625
|
+
return true;
|
|
24626
|
+
}
|
|
24627
|
+
|
|
24505
24628
|
/**
|
|
24506
24629
|
* Converts a display string to its model value.
|
|
24507
24630
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -26431,6 +26554,41 @@ class AuroCalendarCell extends i$3 {
|
|
|
26431
26554
|
btn.classList.remove('inRange', 'lastHoveredDate', 'rangeDepartDate');
|
|
26432
26555
|
}
|
|
26433
26556
|
|
|
26557
|
+
/**
|
|
26558
|
+
* Re-applies the committed-range classes (inRange / rangeDepartDate /
|
|
26559
|
+
* rangeReturnDate) imperatively from the cell's current `day`,
|
|
26560
|
+
* `dateFrom`, and `dateTo`. Used after month navigation flushes:
|
|
26561
|
+
* classMap in `renderCellButton` tracks its own previous state, so a
|
|
26562
|
+
* preceding imperative `classList.remove` (from
|
|
26563
|
+
* `clearRangePreviewClasses`) leaves classMap thinking the class is
|
|
26564
|
+
* still applied. On re-render with the same class-value, classMap emits
|
|
26565
|
+
* no delta and the class stays missing in the DOM. Re-toggling
|
|
26566
|
+
* imperatively resyncs the DOM with the committed range.
|
|
26567
|
+
*
|
|
26568
|
+
* Delegates to the same `isInRange` / `isDepartDate` / `isReturnDate`
|
|
26569
|
+
* helpers `renderCellButton` uses, so the two code paths cannot drift
|
|
26570
|
+
* (including whatever timestamp normalization those helpers apply).
|
|
26571
|
+
* @returns {void}
|
|
26572
|
+
*/
|
|
26573
|
+
applyCommittedRangeClasses() {
|
|
26574
|
+
if (!this.day) return;
|
|
26575
|
+
// Fall back to a shadowRoot query when `_cachedButton` hasn't
|
|
26576
|
+
// populated yet — this method's whole job is recovering from stale
|
|
26577
|
+
// DOM after a month re-render, so no-oping on a cache miss defeats
|
|
26578
|
+
// the fix (mirrors the fallback in `clearActive()`).
|
|
26579
|
+
const btn = this._cachedButton || this.shadowRoot?.querySelector('button.day');
|
|
26580
|
+
if (!btn) return;
|
|
26581
|
+
|
|
26582
|
+
const hasRange = this.datepicker?.hasAttribute('range');
|
|
26583
|
+
const inRange = hasRange && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo);
|
|
26584
|
+
const isDepart = hasRange && this.isDepartDate(this.day, this.dateFrom) && this.dateTo;
|
|
26585
|
+
const isReturn = hasRange && this.isReturnDate(this.day, this.dateFrom, this.dateTo);
|
|
26586
|
+
|
|
26587
|
+
btn.classList.toggle('inRange', Boolean(inRange));
|
|
26588
|
+
btn.classList.toggle('rangeDepartDate', Boolean(isDepart));
|
|
26589
|
+
btn.classList.toggle('rangeReturnDate', Boolean(isReturn));
|
|
26590
|
+
}
|
|
26591
|
+
|
|
26434
26592
|
renderCellButton() {
|
|
26435
26593
|
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
26436
26594
|
const blackout = this.isBlackout();
|
|
@@ -27575,7 +27733,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$3 {
|
|
|
27575
27733
|
}
|
|
27576
27734
|
};
|
|
27577
27735
|
|
|
27578
|
-
var formkitVersion$2$1 = '
|
|
27736
|
+
var formkitVersion$2$1 = '202607012057';
|
|
27579
27737
|
|
|
27580
27738
|
let l$1$2 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[.]/g,"_"),o}generateTag(o,s,a){const r=this.generateElementName(o,s),i=i$2`${s$3(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1$2 = class d{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}getSlotText(t,e){const o=t.shadowRoot?.querySelector(`slot[name="${e}"]`),s=(o?.assignedNodes({flatten:true})||[]).map(t=>t.textContent?.trim()).join(" ").trim();return s||null}};let h$1$2 = class h{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}};var c$1$3=i$6`:host{color:var(--ds-auro-loader-color)}:host>span{background-color:var(--ds-auro-loader-background-color);border-color:var(--ds-auro-loader-border-color)}:host([onlight]),:host([appearance=brand]){--ds-auro-loader-color: var(--ds-basic-color-brand-primary, #01426a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-loader-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([orbit])>span{--ds-auro-loader-background-color: transparent}:host([orbit])>span:nth-child(1){--ds-auro-loader-border-color: currentcolor;opacity:.25}:host([orbit])>span:nth-child(2){--ds-auro-loader-border-color: currentcolor;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
|
|
27581
27739
|
`,u$4$2=i$6`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}:host,:host>span{position:relative}:host{width:2rem;height:2rem;display:inline-block;font-size:0}:host>span{position:absolute;display:inline-block;float:none;top:0;left:0;width:2rem;height:2rem;border-radius:100%;border-style:solid;border-width:0;box-sizing:border-box}:host([xs]),:host([xs])>span{width:1.2rem;height:1.2rem}:host([sm]),:host([sm])>span{width:3rem;height:3rem}:host([md]),:host([md])>span{width:5rem;height:5rem}:host([lg]),:host([lg])>span{width:8rem;height:8rem}:host{--margin: .375rem;--margin-xs: .2rem;--margin-sm: .5rem;--margin-md: .75rem;--margin-lg: 1rem}:host([pulse]),:host([pulse])>span{position:relative}:host([pulse]){width:calc(3rem + var(--margin) * 6);height:calc(1rem + var(--margin) * 2)}:host([pulse])>span{width:1rem;height:1rem;margin:var(--margin);animation:pulse 1.5s ease infinite}:host([pulse][xs]){width:calc(1.95rem + var(--margin-xs) * 6);height:calc(.65rem + var(--margin-xs) * 2)}:host([pulse][xs])>span{margin:var(--margin-xs);width:.65rem;height:.65rem}:host([pulse][sm]){width:calc(6rem + var(--margin-sm) * 6);height:calc(2rem + var(--margin-sm) * 2)}:host([pulse][sm])>span{margin:var(--margin-sm);width:2rem;height:2rem}:host([pulse][md]){width:calc(9rem + var(--margin-md) * 6);height:calc(3rem + var(--margin-md) * 2)}:host([pulse][md])>span{margin:var(--margin-md);width:3rem;height:3rem}:host([pulse][lg]){width:calc(15rem + var(--margin-lg) * 6);height:calc(5rem + var(--margin-lg) * 2)}:host([pulse][lg])>span{margin:var(--margin-lg);width:5rem;height:5rem}:host([pulse])>span:nth-child(1){animation-delay:-.4s}:host([pulse])>span:nth-child(2){animation-delay:-.2s}:host([pulse])>span:nth-child(3){animation-delay:0ms}@keyframes pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}:host([orbit]),:host([orbit])>span{opacity:1}:host([orbit])>span{border-width:5px}:host([orbit])>span:nth-child(2){animation:orbit 2s linear infinite}:host([orbit][sm])>span{border-width:8px}:host([orbit][md])>span{border-width:13px}:host([orbit][lg])>span{border-width:21px}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host([ringworm])>svg{animation:rotate 2s linear infinite;height:100%;width:100%;stroke:currentcolor;stroke-width:8}:host([ringworm]) .path{stroke-dashoffset:0;animation:ringworm 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes ringworm{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}:host([laser]){position:static;width:100%;display:block;height:0;overflow:hidden;font-size:unset}:host([laser])>span{position:fixed;width:100%;height:.25rem;border-radius:0;z-index:100}:host([laser])>span:nth-child(1){border-color:currentcolor;opacity:.25}:host([laser])>span:nth-child(2){border-color:currentcolor;animation:laser 2s linear infinite;opacity:1;width:50%}:host([laser][sm])>span:nth-child(2){width:20%}:host([laser][md])>span:nth-child(2){width:30%}:host([laser][lg])>span:nth-child(2){width:50%;animation-duration:1.5s}:host([laser][xl])>span:nth-child(2){width:80%;animation-duration:1.5s}@keyframes laser{0%{left:-100%}to{left:110%}}:host>.no-animation{display:none}@media (prefers-reduced-motion: reduce){:host{display:flex;align-items:center;justify-content:center}:host>span{opacity:1}:host>.loader{display:none}:host>svg{display:none}:host>.no-animation{display:block}}
|
|
@@ -27920,6 +28078,11 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27920
28078
|
if (!opts.skipActiveUpdate) {
|
|
27921
28079
|
this.updateActiveCellForVisibleMonth();
|
|
27922
28080
|
}
|
|
28081
|
+
// clearRangePreview above strips classMap-managed range classes from
|
|
28082
|
+
// the DOM; classMap's private state still thinks they're applied, so
|
|
28083
|
+
// it won't re-add them on the post-nav re-render. Re-apply imperatively
|
|
28084
|
+
// after both months and their cell button caches have settled.
|
|
28085
|
+
this.scheduleCommittedRangeClassRefresh();
|
|
27923
28086
|
this.announceMonthChange();
|
|
27924
28087
|
}
|
|
27925
28088
|
|
|
@@ -27938,6 +28101,11 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
27938
28101
|
if (!opts.skipActiveUpdate) {
|
|
27939
28102
|
this.updateActiveCellForVisibleMonth();
|
|
27940
28103
|
}
|
|
28104
|
+
// clearRangePreview above strips classMap-managed range classes from
|
|
28105
|
+
// the DOM; classMap's private state still thinks they're applied, so
|
|
28106
|
+
// it won't re-add them on the post-nav re-render. Re-apply imperatively
|
|
28107
|
+
// after both months and their cell button caches have settled.
|
|
28108
|
+
this.scheduleCommittedRangeClassRefresh();
|
|
27941
28109
|
this.announceMonthChange();
|
|
27942
28110
|
}
|
|
27943
28111
|
|
|
@@ -29016,9 +29184,14 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
29016
29184
|
* @private
|
|
29017
29185
|
* @param {Object} [options] - Optional settings.
|
|
29018
29186
|
* @param {boolean} [options.force=false] - When true, clears classes even
|
|
29019
|
-
* when both dateFrom and dateTo are set. Used by month nav handlers
|
|
29020
|
-
*
|
|
29021
|
-
*
|
|
29187
|
+
* when both dateFrom and dateTo are set. Used by month nav handlers to
|
|
29188
|
+
* strip the imperative-only `lastHoveredDate` before the re-render.
|
|
29189
|
+
* The other two classes (`inRange`, `rangeDepartDate`) are classMap-
|
|
29190
|
+
* managed and get stripped as a side effect here; because classMap
|
|
29191
|
+
* remembers what it last emitted and does not diff against the actual
|
|
29192
|
+
* DOM, the following month re-render will NOT re-add them on its own.
|
|
29193
|
+
* Nav handlers must schedule `refreshCommittedRangeClasses` (via
|
|
29194
|
+
* `scheduleCommittedRangeClassRefresh`) to resync them.
|
|
29022
29195
|
* @returns {void}
|
|
29023
29196
|
*/
|
|
29024
29197
|
clearRangePreview(options) {
|
|
@@ -29033,6 +29206,57 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
29033
29206
|
});
|
|
29034
29207
|
}
|
|
29035
29208
|
|
|
29209
|
+
/**
|
|
29210
|
+
* Re-applies the committed-range classes across every focusable cell
|
|
29211
|
+
* after a month navigation. classMap in the cell tracks its own
|
|
29212
|
+
* previous state: once `clearRangePreview({ force: true })` strips
|
|
29213
|
+
* `inRange`/`rangeDepartDate` imperatively before the re-render,
|
|
29214
|
+
* classMap's next diff sees the same class-value it emitted before and
|
|
29215
|
+
* produces no delta, leaving the DOM without the classes even though a
|
|
29216
|
+
* full range is committed. Re-applying imperatively resyncs the two
|
|
29217
|
+
* months' cells with `dateFrom`/`dateTo`.
|
|
29218
|
+
*
|
|
29219
|
+
* Iterates `getAllFocusableCells()` — out-of-range cells (blocked by
|
|
29220
|
+
* `min`/`max`) can never carry range classes anyway, so skipping them
|
|
29221
|
+
* is correct and cheaper than a whole-grid walk.
|
|
29222
|
+
*
|
|
29223
|
+
* The cell's `applyCommittedRangeClasses` reuses the same
|
|
29224
|
+
* `isInRange`/`isDepartDate`/`isReturnDate` helpers `renderCellButton`
|
|
29225
|
+
* uses, so we don't parse dateFrom/dateTo here — the helpers already
|
|
29226
|
+
* normalize their inputs (midnight-truncation, string→int) internally.
|
|
29227
|
+
* @private
|
|
29228
|
+
* @returns {void}
|
|
29229
|
+
*/
|
|
29230
|
+
refreshCommittedRangeClasses() {
|
|
29231
|
+
if (this.noRange || !this.dateFrom || !this.dateTo) {
|
|
29232
|
+
return;
|
|
29233
|
+
}
|
|
29234
|
+
|
|
29235
|
+
const allCells = this.getAllFocusableCells();
|
|
29236
|
+
allCells.forEach((cell) => {
|
|
29237
|
+
cell.applyCommittedRangeClasses();
|
|
29238
|
+
});
|
|
29239
|
+
}
|
|
29240
|
+
|
|
29241
|
+
/**
|
|
29242
|
+
* Schedules `refreshCommittedRangeClasses` to run after the month
|
|
29243
|
+
* re-render has flushed and the cells' button caches have refreshed.
|
|
29244
|
+
* Both `handlePrevMonth` and `handleNextMonth` need this exact call
|
|
29245
|
+
* shape; keeping it in one place prevents them from drifting apart.
|
|
29246
|
+
*
|
|
29247
|
+
* Bails synchronously when a full committed range isn't set — otherwise
|
|
29248
|
+
* every prev/next click in single-date mode (or before the user picks
|
|
29249
|
+
* both dates in range mode) pays for an unused double-rAF hop.
|
|
29250
|
+
* @private
|
|
29251
|
+
* @returns {void}
|
|
29252
|
+
*/
|
|
29253
|
+
scheduleCommittedRangeClassRefresh() {
|
|
29254
|
+
if (this.noRange || !this.dateFrom || !this.dateTo) {
|
|
29255
|
+
return;
|
|
29256
|
+
}
|
|
29257
|
+
this._afterMonthRender(() => this.refreshCommittedRangeClasses());
|
|
29258
|
+
}
|
|
29259
|
+
|
|
29036
29260
|
/**
|
|
29037
29261
|
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
29038
29262
|
* as a reactive property. Instead, handles the range preview imperatively.
|
|
@@ -33327,7 +33551,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$3 {
|
|
|
33327
33551
|
}
|
|
33328
33552
|
};
|
|
33329
33553
|
|
|
33330
|
-
var formkitVersion$1$3 = '
|
|
33554
|
+
var formkitVersion$1$3 = '202607012057';
|
|
33331
33555
|
|
|
33332
33556
|
let AuroElement$2$2 = class AuroElement extends i$3 {
|
|
33333
33557
|
static get properties() {
|
|
@@ -34079,6 +34303,23 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
34079
34303
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
34080
34304
|
this.trigger.focus();
|
|
34081
34305
|
}
|
|
34306
|
+
|
|
34307
|
+
|
|
34308
|
+
if (!this.isPopoverVisible) {
|
|
34309
|
+
// wait til the bib gets fully closed and rendered
|
|
34310
|
+
setTimeout(() => {
|
|
34311
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
34312
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
34313
|
+
if (this.isPopoverVisible ||
|
|
34314
|
+
// eslint-disable-next-line no-extra-parens
|
|
34315
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
34316
|
+
document.activeElement !== document.body)) {
|
|
34317
|
+
return;
|
|
34318
|
+
}
|
|
34319
|
+
// Restore focus to the trigger.
|
|
34320
|
+
this.trigger.focus();
|
|
34321
|
+
});
|
|
34322
|
+
}
|
|
34082
34323
|
}
|
|
34083
34324
|
|
|
34084
34325
|
firstUpdated() {
|
|
@@ -39004,8 +39245,21 @@ let AuroFormValidation$6 = class AuroFormValidation {
|
|
|
39004
39245
|
return;
|
|
39005
39246
|
}
|
|
39006
39247
|
|
|
39007
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
39248
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
39249
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
39008
39250
|
if (elem.value && !elem.valueObject) {
|
|
39251
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
39252
|
+
|
|
39253
|
+
if (isPartialDateFormat) {
|
|
39254
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
39255
|
+
elem.validity = 'patternMismatch';
|
|
39256
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
39257
|
+
}
|
|
39258
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
39259
|
+
return;
|
|
39260
|
+
}
|
|
39261
|
+
|
|
39262
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
39009
39263
|
elem.validity = 'patternMismatch';
|
|
39010
39264
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
39011
39265
|
return;
|
|
@@ -44935,10 +45189,11 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
44935
45189
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
44936
45190
|
|
|
44937
45191
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
44938
|
-
const
|
|
45192
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
45193
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
44939
45194
|
return {
|
|
44940
45195
|
mask: IMask$2.MaskedRange,
|
|
44941
|
-
from:
|
|
45196
|
+
from: fromValue,
|
|
44942
45197
|
to: maxValue,
|
|
44943
45198
|
lazy: true,
|
|
44944
45199
|
placeholderChar: '',
|
|
@@ -44946,7 +45201,8 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
44946
45201
|
return value.toString().padStart(dateFormat.length, '0');
|
|
44947
45202
|
},
|
|
44948
45203
|
parse(str) {
|
|
44949
|
-
|
|
45204
|
+
const num = parseInt(str, 10);
|
|
45205
|
+
return isNaN(num) ? null : num;
|
|
44950
45206
|
}
|
|
44951
45207
|
};
|
|
44952
45208
|
}
|
|
@@ -45010,6 +45266,49 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
|
|
|
45010
45266
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
45011
45267
|
}
|
|
45012
45268
|
|
|
45269
|
+
/**
|
|
45270
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
45271
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
45272
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
45273
|
+
* @param {string} value - The user-facing display value.
|
|
45274
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
45275
|
+
* @returns {boolean}
|
|
45276
|
+
*/
|
|
45277
|
+
isValidPartialDate(value, format$1) {
|
|
45278
|
+
if (!value || !format$1) {
|
|
45279
|
+
return false;
|
|
45280
|
+
}
|
|
45281
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
45282
|
+
|
|
45283
|
+
if (normalizedFormat === 'dd') {
|
|
45284
|
+
const num = Number(value);
|
|
45285
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
45286
|
+
}
|
|
45287
|
+
if (normalizedFormat === 'yy') {
|
|
45288
|
+
const num = Number(value);
|
|
45289
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
45290
|
+
}
|
|
45291
|
+
if (normalizedFormat === 'yyyy') {
|
|
45292
|
+
const num = Number(value);
|
|
45293
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
45294
|
+
}
|
|
45295
|
+
|
|
45296
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
45297
|
+
// Use the 1st of the current month as the reference so that formats
|
|
45298
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
45299
|
+
const referenceDate = new Date();
|
|
45300
|
+
referenceDate.setDate(1);
|
|
45301
|
+
const parsed = parse$2(value, dateFnsMask, referenceDate);
|
|
45302
|
+
if (!isValid$2(parsed) || format$2(parsed, dateFnsMask) !== value) {
|
|
45303
|
+
return false;
|
|
45304
|
+
}
|
|
45305
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
45306
|
+
const year = parsed.getFullYear();
|
|
45307
|
+
return year >= 1900 && year <= 2100;
|
|
45308
|
+
}
|
|
45309
|
+
return true;
|
|
45310
|
+
}
|
|
45311
|
+
|
|
45013
45312
|
/**
|
|
45014
45313
|
* Converts a display string to its model value.
|
|
45015
45314
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -45629,6 +45928,13 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45629
45928
|
type: String
|
|
45630
45929
|
},
|
|
45631
45930
|
|
|
45931
|
+
/**
|
|
45932
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
45933
|
+
*/
|
|
45934
|
+
setCustomValidityPatternMismatch: {
|
|
45935
|
+
type: String
|
|
45936
|
+
},
|
|
45937
|
+
|
|
45632
45938
|
/**
|
|
45633
45939
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
45634
45940
|
*/
|
|
@@ -45699,7 +46005,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45699
46005
|
|
|
45700
46006
|
/**
|
|
45701
46007
|
* Populates the `type` attribute on the input.
|
|
45702
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
46008
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
45703
46009
|
* @default 'text'
|
|
45704
46010
|
*/
|
|
45705
46011
|
type: {
|
|
@@ -45724,7 +46030,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$3 {
|
|
|
45724
46030
|
|
|
45725
46031
|
/**
|
|
45726
46032
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
45727
|
-
*
|
|
46033
|
+
* 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.
|
|
45728
46034
|
*/
|
|
45729
46035
|
value: {
|
|
45730
46036
|
type: String
|
|
@@ -46847,7 +47153,7 @@ let AuroHelpText$1$3 = class AuroHelpText extends i$3 {
|
|
|
46847
47153
|
}
|
|
46848
47154
|
};
|
|
46849
47155
|
|
|
46850
|
-
var formkitVersion$7 = '
|
|
47156
|
+
var formkitVersion$7 = '202607012057';
|
|
46851
47157
|
|
|
46852
47158
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
46853
47159
|
// See LICENSE in the project root for license information.
|
|
@@ -51143,8 +51449,21 @@ let AuroFormValidation$5 = class AuroFormValidation {
|
|
|
51143
51449
|
return;
|
|
51144
51450
|
}
|
|
51145
51451
|
|
|
51146
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
51452
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
51453
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
51147
51454
|
if (elem.value && !elem.valueObject) {
|
|
51455
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
51456
|
+
|
|
51457
|
+
if (isPartialDateFormat) {
|
|
51458
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
51459
|
+
elem.validity = 'patternMismatch';
|
|
51460
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
51461
|
+
}
|
|
51462
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
51463
|
+
return;
|
|
51464
|
+
}
|
|
51465
|
+
|
|
51466
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
51148
51467
|
elem.validity = 'patternMismatch';
|
|
51149
51468
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
51150
51469
|
return;
|
|
@@ -51716,7 +52035,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$3 {
|
|
|
51716
52035
|
}
|
|
51717
52036
|
};
|
|
51718
52037
|
|
|
51719
|
-
var formkitVersion$1$2 = '
|
|
52038
|
+
var formkitVersion$1$2 = '202607012057';
|
|
51720
52039
|
|
|
51721
52040
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
51722
52041
|
// See LICENSE in the project root for license information.
|
|
@@ -56044,7 +56363,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$3 {
|
|
|
56044
56363
|
}
|
|
56045
56364
|
};
|
|
56046
56365
|
|
|
56047
|
-
var formkitVersion$6 = '
|
|
56366
|
+
var formkitVersion$6 = '202607012057';
|
|
56048
56367
|
|
|
56049
56368
|
let AuroElement$1$2 = class AuroElement extends i$3 {
|
|
56050
56369
|
static get properties() {
|
|
@@ -56796,6 +57115,23 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$1$2 {
|
|
|
56796
57115
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
56797
57116
|
this.trigger.focus();
|
|
56798
57117
|
}
|
|
57118
|
+
|
|
57119
|
+
|
|
57120
|
+
if (!this.isPopoverVisible) {
|
|
57121
|
+
// wait til the bib gets fully closed and rendered
|
|
57122
|
+
setTimeout(() => {
|
|
57123
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
57124
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
57125
|
+
if (this.isPopoverVisible ||
|
|
57126
|
+
// eslint-disable-next-line no-extra-parens
|
|
57127
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
57128
|
+
document.activeElement !== document.body)) {
|
|
57129
|
+
return;
|
|
57130
|
+
}
|
|
57131
|
+
// Restore focus to the trigger.
|
|
57132
|
+
this.trigger.focus();
|
|
57133
|
+
});
|
|
57134
|
+
}
|
|
56799
57135
|
}
|
|
56800
57136
|
|
|
56801
57137
|
firstUpdated() {
|
|
@@ -59495,8 +59831,21 @@ let AuroFormValidation$4 = class AuroFormValidation {
|
|
|
59495
59831
|
return;
|
|
59496
59832
|
}
|
|
59497
59833
|
|
|
59498
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
59834
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
59835
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
59499
59836
|
if (elem.value && !elem.valueObject) {
|
|
59837
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
59838
|
+
|
|
59839
|
+
if (isPartialDateFormat) {
|
|
59840
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
59841
|
+
elem.validity = 'patternMismatch';
|
|
59842
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
59843
|
+
}
|
|
59844
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
59845
|
+
return;
|
|
59846
|
+
}
|
|
59847
|
+
|
|
59848
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
59500
59849
|
elem.validity = 'patternMismatch';
|
|
59501
59850
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
59502
59851
|
return;
|
|
@@ -59994,7 +60343,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$3 {
|
|
|
59994
60343
|
}
|
|
59995
60344
|
};
|
|
59996
60345
|
|
|
59997
|
-
var formkitVersion$5 = '
|
|
60346
|
+
var formkitVersion$5 = '202607012057';
|
|
59998
60347
|
|
|
59999
60348
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
60000
60349
|
// See LICENSE in the project root for license information.
|
|
@@ -61243,8 +61592,21 @@ let AuroFormValidation$3 = class AuroFormValidation {
|
|
|
61243
61592
|
return;
|
|
61244
61593
|
}
|
|
61245
61594
|
|
|
61246
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
61595
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
61596
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
61247
61597
|
if (elem.value && !elem.valueObject) {
|
|
61598
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
61599
|
+
|
|
61600
|
+
if (isPartialDateFormat) {
|
|
61601
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
61602
|
+
elem.validity = 'patternMismatch';
|
|
61603
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
61604
|
+
}
|
|
61605
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
61606
|
+
return;
|
|
61607
|
+
}
|
|
61608
|
+
|
|
61609
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
61248
61610
|
elem.validity = 'patternMismatch';
|
|
61249
61611
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
61250
61612
|
return;
|
|
@@ -61746,7 +62108,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$3 {
|
|
|
61746
62108
|
}
|
|
61747
62109
|
};
|
|
61748
62110
|
|
|
61749
|
-
var formkitVersion$4 = '
|
|
62111
|
+
var formkitVersion$4 = '202607012057';
|
|
61750
62112
|
|
|
61751
62113
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
61752
62114
|
// See LICENSE in the project root for license information.
|
|
@@ -62505,8 +62867,21 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
62505
62867
|
return;
|
|
62506
62868
|
}
|
|
62507
62869
|
|
|
62508
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
62870
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
62871
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
62509
62872
|
if (elem.value && !elem.valueObject) {
|
|
62873
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
62874
|
+
|
|
62875
|
+
if (isPartialDateFormat) {
|
|
62876
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
62877
|
+
elem.validity = 'patternMismatch';
|
|
62878
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
62879
|
+
}
|
|
62880
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
62881
|
+
return;
|
|
62882
|
+
}
|
|
62883
|
+
|
|
62884
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
62510
62885
|
elem.validity = 'patternMismatch';
|
|
62511
62886
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
62512
62887
|
return;
|
|
@@ -66954,7 +67329,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
|
|
|
66954
67329
|
}
|
|
66955
67330
|
};
|
|
66956
67331
|
|
|
66957
|
-
var formkitVersion$2 = '
|
|
67332
|
+
var formkitVersion$2 = '202607012057';
|
|
66958
67333
|
|
|
66959
67334
|
let AuroElement$2$1 = class AuroElement extends i$3 {
|
|
66960
67335
|
static get properties() {
|
|
@@ -67706,6 +68081,23 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
67706
68081
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
67707
68082
|
this.trigger.focus();
|
|
67708
68083
|
}
|
|
68084
|
+
|
|
68085
|
+
|
|
68086
|
+
if (!this.isPopoverVisible) {
|
|
68087
|
+
// wait til the bib gets fully closed and rendered
|
|
68088
|
+
setTimeout(() => {
|
|
68089
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
68090
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
68091
|
+
if (this.isPopoverVisible ||
|
|
68092
|
+
// eslint-disable-next-line no-extra-parens
|
|
68093
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
68094
|
+
document.activeElement !== document.body)) {
|
|
68095
|
+
return;
|
|
68096
|
+
}
|
|
68097
|
+
// Restore focus to the trigger.
|
|
68098
|
+
this.trigger.focus();
|
|
68099
|
+
});
|
|
68100
|
+
}
|
|
67709
68101
|
}
|
|
67710
68102
|
|
|
67711
68103
|
firstUpdated() {
|
|
@@ -72631,8 +73023,21 @@ let AuroFormValidation$2 = class AuroFormValidation {
|
|
|
72631
73023
|
return;
|
|
72632
73024
|
}
|
|
72633
73025
|
|
|
72634
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
73026
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
73027
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
72635
73028
|
if (elem.value && !elem.valueObject) {
|
|
73029
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
73030
|
+
|
|
73031
|
+
if (isPartialDateFormat) {
|
|
73032
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
73033
|
+
elem.validity = 'patternMismatch';
|
|
73034
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
73035
|
+
}
|
|
73036
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
73037
|
+
return;
|
|
73038
|
+
}
|
|
73039
|
+
|
|
73040
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
72636
73041
|
elem.validity = 'patternMismatch';
|
|
72637
73042
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
72638
73043
|
return;
|
|
@@ -78562,10 +78967,11 @@ class AuroInputUtilities {
|
|
|
78562
78967
|
const dateFormat = format$1 || this.overrideFormat || pattern || 'mm/dd/yyyy';
|
|
78563
78968
|
|
|
78564
78969
|
if (dateFormat === 'dd' || dateFormat === 'yy' || dateFormat === 'yyyy') {
|
|
78565
|
-
const
|
|
78970
|
+
const fromValue = dateFormat === 'yyyy' ? 1900 : (dateFormat === 'yy' ? 0 : 1);
|
|
78971
|
+
const maxValue = dateFormat === 'dd' ? 31 : (dateFormat === 'yy' ? 99 : 2100);
|
|
78566
78972
|
return {
|
|
78567
78973
|
mask: IMask.MaskedRange,
|
|
78568
|
-
from:
|
|
78974
|
+
from: fromValue,
|
|
78569
78975
|
to: maxValue,
|
|
78570
78976
|
lazy: true,
|
|
78571
78977
|
placeholderChar: '',
|
|
@@ -78573,7 +78979,8 @@ class AuroInputUtilities {
|
|
|
78573
78979
|
return value.toString().padStart(dateFormat.length, '0');
|
|
78574
78980
|
},
|
|
78575
78981
|
parse(str) {
|
|
78576
|
-
|
|
78982
|
+
const num = parseInt(str, 10);
|
|
78983
|
+
return isNaN(num) ? null : num;
|
|
78577
78984
|
}
|
|
78578
78985
|
};
|
|
78579
78986
|
}
|
|
@@ -78637,6 +79044,49 @@ class AuroInputUtilities {
|
|
|
78637
79044
|
return type === 'date' && normalizedFormat.includes('yy') && normalizedFormat.includes('mm') && normalizedFormat.includes('dd');
|
|
78638
79045
|
}
|
|
78639
79046
|
|
|
79047
|
+
/**
|
|
79048
|
+
* Validates a value against a partial date format (one that lacks yy/mm/dd all three).
|
|
79049
|
+
* Day- and year-only formats (dd/yy/yyyy) are checked as integer ranges; other partial formats use
|
|
79050
|
+
* a date-fns parse + round-trip to confirm both validity and exact formatting.
|
|
79051
|
+
* @param {string} value - The user-facing display value.
|
|
79052
|
+
* @param {string} format - The partial date format string (e.g. "mm/yyyy", "yyyy", "dd").
|
|
79053
|
+
* @returns {boolean}
|
|
79054
|
+
*/
|
|
79055
|
+
isValidPartialDate(value, format$1) {
|
|
79056
|
+
if (!value || !format$1) {
|
|
79057
|
+
return false;
|
|
79058
|
+
}
|
|
79059
|
+
const normalizedFormat = format$1.toLowerCase();
|
|
79060
|
+
|
|
79061
|
+
if (normalizedFormat === 'dd') {
|
|
79062
|
+
const num = Number(value);
|
|
79063
|
+
return (/^\d{2}$/u).test(value) && num >= 1 && num <= 31;
|
|
79064
|
+
}
|
|
79065
|
+
if (normalizedFormat === 'yy') {
|
|
79066
|
+
const num = Number(value);
|
|
79067
|
+
return (/^\d{2}$/u).test(value) && num >= 0 && num <= 99;
|
|
79068
|
+
}
|
|
79069
|
+
if (normalizedFormat === 'yyyy') {
|
|
79070
|
+
const num = Number(value);
|
|
79071
|
+
return (/^\d{4}$/u).test(value) && num >= 1900 && num <= 2100;
|
|
79072
|
+
}
|
|
79073
|
+
|
|
79074
|
+
const dateFnsMask = this.toDateFnsMask(normalizedFormat);
|
|
79075
|
+
// Use the 1st of the current month as the reference so that formats
|
|
79076
|
+
// omitting a day (e.g. MM/yyyy) never roll over on days 29–31.
|
|
79077
|
+
const referenceDate = new Date();
|
|
79078
|
+
referenceDate.setDate(1);
|
|
79079
|
+
const parsed = parse(value, dateFnsMask, referenceDate);
|
|
79080
|
+
if (!isValid(parsed) || format(parsed, dateFnsMask) !== value) {
|
|
79081
|
+
return false;
|
|
79082
|
+
}
|
|
79083
|
+
if (normalizedFormat.includes('yyyy')) {
|
|
79084
|
+
const year = parsed.getFullYear();
|
|
79085
|
+
return year >= 1900 && year <= 2100;
|
|
79086
|
+
}
|
|
79087
|
+
return true;
|
|
79088
|
+
}
|
|
79089
|
+
|
|
78640
79090
|
/**
|
|
78641
79091
|
* Converts a display string to its model value.
|
|
78642
79092
|
* For full date formats, converts the display string to an ISO date string.
|
|
@@ -79256,6 +79706,13 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79256
79706
|
type: String
|
|
79257
79707
|
},
|
|
79258
79708
|
|
|
79709
|
+
/**
|
|
79710
|
+
* Custom help text message to display when validity = `patternMismatch`.
|
|
79711
|
+
*/
|
|
79712
|
+
setCustomValidityPatternMismatch: {
|
|
79713
|
+
type: String
|
|
79714
|
+
},
|
|
79715
|
+
|
|
79259
79716
|
/**
|
|
79260
79717
|
* Custom help text message to display when validity = `rangeOverflow`.
|
|
79261
79718
|
*/
|
|
@@ -79326,7 +79783,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79326
79783
|
|
|
79327
79784
|
/**
|
|
79328
79785
|
* Populates the `type` attribute on the input.
|
|
79329
|
-
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number'}
|
|
79786
|
+
* @type {'text' | 'password' | 'email' | 'credit-card' | 'tel' | 'number' | 'date'}
|
|
79330
79787
|
* @default 'text'
|
|
79331
79788
|
*/
|
|
79332
79789
|
type: {
|
|
@@ -79351,7 +79808,7 @@ class BaseInput extends AuroElement$1$1 {
|
|
|
79351
79808
|
|
|
79352
79809
|
/**
|
|
79353
79810
|
* Populates the `value` attribute on the input. Can also be read to retrieve the current value of the input.
|
|
79354
|
-
*
|
|
79811
|
+
* 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.
|
|
79355
79812
|
*/
|
|
79356
79813
|
value: {
|
|
79357
79814
|
type: String
|
|
@@ -80474,7 +80931,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$3 {
|
|
|
80474
80931
|
}
|
|
80475
80932
|
};
|
|
80476
80933
|
|
|
80477
|
-
var formkitVersion$1$1 = '
|
|
80934
|
+
var formkitVersion$1$1 = '202607012057';
|
|
80478
80935
|
|
|
80479
80936
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
80480
80937
|
// See LICENSE in the project root for license information.
|
|
@@ -81600,7 +82057,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$3 {
|
|
|
81600
82057
|
}
|
|
81601
82058
|
};
|
|
81602
82059
|
|
|
81603
|
-
var formkitVersion$3 = '
|
|
82060
|
+
var formkitVersion$3 = '202607012057';
|
|
81604
82061
|
|
|
81605
82062
|
var styleCss$1$3 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
|
|
81606
82063
|
|
|
@@ -85934,8 +86391,21 @@ class AuroFormValidation {
|
|
|
85934
86391
|
return;
|
|
85935
86392
|
}
|
|
85936
86393
|
|
|
85937
|
-
// Validate that the date passed was the correct format and is a valid date
|
|
86394
|
+
// Validate that the date passed was the correct format and is a valid date.
|
|
86395
|
+
// For partial date formats, valueObject is never populated; validate them directly.
|
|
85938
86396
|
if (elem.value && !elem.valueObject) {
|
|
86397
|
+
const isPartialDateFormat = elem.util && !elem.util.isFullDateFormat(elem.type, elem.format);
|
|
86398
|
+
|
|
86399
|
+
if (isPartialDateFormat) {
|
|
86400
|
+
if (!elem.util.isValidPartialDate(elem.value, elem.format)) {
|
|
86401
|
+
elem.validity = 'patternMismatch';
|
|
86402
|
+
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
86403
|
+
}
|
|
86404
|
+
// Partial date format — validate directly and skip max/min checks since valueObject is undefined.
|
|
86405
|
+
return;
|
|
86406
|
+
}
|
|
86407
|
+
|
|
86408
|
+
// Full date format with no valueObject means the value is not a valid calendar date.
|
|
85939
86409
|
elem.validity = 'patternMismatch';
|
|
85940
86410
|
elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
|
|
85941
86411
|
return;
|
|
@@ -90423,7 +90893,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
|
|
|
90423
90893
|
}
|
|
90424
90894
|
};
|
|
90425
90895
|
|
|
90426
|
-
var formkitVersion$1 = '
|
|
90896
|
+
var formkitVersion$1 = '202607012057';
|
|
90427
90897
|
|
|
90428
90898
|
class AuroElement extends i$3 {
|
|
90429
90899
|
static get properties() {
|
|
@@ -91175,6 +91645,23 @@ class AuroDropdown extends AuroElement {
|
|
|
91175
91645
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
91176
91646
|
this.trigger.focus();
|
|
91177
91647
|
}
|
|
91648
|
+
|
|
91649
|
+
|
|
91650
|
+
if (!this.isPopoverVisible) {
|
|
91651
|
+
// wait til the bib gets fully closed and rendered
|
|
91652
|
+
setTimeout(() => {
|
|
91653
|
+
// Skip if the bib re-opened, or if focus moved intentionally outside the dropdown (not to body).
|
|
91654
|
+
// Restore focus to trigger when focus is still inside the bib (:focus-within) or fell to body.
|
|
91655
|
+
if (this.isPopoverVisible ||
|
|
91656
|
+
// eslint-disable-next-line no-extra-parens
|
|
91657
|
+
(!this.bibContent?.matches(':focus-within') &&
|
|
91658
|
+
document.activeElement !== document.body)) {
|
|
91659
|
+
return;
|
|
91660
|
+
}
|
|
91661
|
+
// Restore focus to the trigger.
|
|
91662
|
+
this.trigger.focus();
|
|
91663
|
+
});
|
|
91664
|
+
}
|
|
91178
91665
|
}
|
|
91179
91666
|
|
|
91180
91667
|
firstUpdated() {
|
|
@@ -92445,7 +92932,7 @@ class AuroHelpText extends i$3 {
|
|
|
92445
92932
|
}
|
|
92446
92933
|
}
|
|
92447
92934
|
|
|
92448
|
-
var formkitVersion = '
|
|
92935
|
+
var formkitVersion = '202607012057';
|
|
92449
92936
|
|
|
92450
92937
|
var styleCss = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.body-default{font-size:var(--wcss-body-default-font-size, 1rem);font-weight:var(--wcss-body-default-weight, );line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-default-emphasized{font-size:var(--wcss-body-default-emphasized-font-size, 1rem);font-weight:var(--wcss-body-default-emphasized-weight, );line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);font-weight:var(--wcss-body-lg-weight, );line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg,.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg-emphasized{font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);font-weight:var(--wcss-body-lg-emphasized-weight, );line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, 0.875rem);font-weight:var(--wcss-body-sm-weight, );line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-sm-emphasized{font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);font-weight:var(--wcss-body-sm-emphasized-weight, );line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-size:var(--wcss-body-xs-font-size, 0.75rem);font-weight:var(--wcss-body-xs-weight, );line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs,.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs-emphasized{font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);font-weight:var(--wcss-body-xs-emphasized-weight, );line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-size:var(--wcss-body-2xs-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-weight, );line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs,.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-2xs-emphasized{font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-emphasized-weight, );line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 300);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 300);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-outline-color: var(--ds-auro-select-outline-color)}:host{display:inline-block;text-align:left;vertical-align:top}:host([layout*=emphasized]) [auro-dropdown],:host([layout*=snowflake]) [auro-dropdown]{--ds-auro-select-border-color: transparent}:host([layout*=emphasized]) .mainContent,:host([layout*=snowflake]) .mainContent{text-align:center}.mainContent{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;align-items:center;justify-content:center}.valueContainer [slot=displayValue]{display:none}.accents{display:flex;flex-direction:row;align-items:center;justify-content:center}::slotted([slot=typeIcon]){margin-right:var(--ds-size-100, 0.5rem)}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;width:100%;align-items:center;justify-content:center}:host([layout*=emphasized]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-300, 1.5rem)}:host([layout*=snowflake]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-200, 1rem)}:host([layout*=snowflake]) label{padding-block:var(--ds-size-25, 0.125rem)}:host([layout*=classic]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem)}:host([layout*=classic]) .mainContent{align-items:start}:host([layout*=classic]) label{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) .value{height:auto}label{color:var(--ds-auro-select-label-text-color)}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown],:host([appearance=inverse]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([fluid]){width:100%}:host([disabled]){pointer-events:none;user-select:none}:host([disabled]:not([ondark])) [auro-dropdown],:host([disabled]:not([appearance=inverse])) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-border-subtle, #dddddd)}:host(:not([layout*=classic])[disabled][ondark]) [auro-dropdown],:host(:not([layout*=classic])[disabled][appearance=inverse]) [auro-dropdown]{--ds-auro-select-border-color: transparent}`;
|
|
92451
92938
|
|