@aurodesignsystem-dev/auro-formkit 0.0.0-pr1483.0 → 0.0.0-pr1483.1

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.
Files changed (41) hide show
  1. package/components/checkbox/demo/customize.min.js +2 -233
  2. package/components/checkbox/demo/getting-started.min.js +2 -233
  3. package/components/checkbox/demo/index.min.js +2 -233
  4. package/components/checkbox/dist/index.js +2 -233
  5. package/components/checkbox/dist/registered.js +2 -233
  6. package/components/combobox/demo/customize.min.js +5 -236
  7. package/components/combobox/demo/getting-started.min.js +5 -236
  8. package/components/combobox/demo/index.min.js +5 -236
  9. package/components/combobox/dist/index.js +5 -236
  10. package/components/combobox/dist/registered.js +5 -236
  11. package/components/counter/demo/customize.min.js +3 -234
  12. package/components/counter/demo/index.min.js +3 -234
  13. package/components/counter/dist/index.js +2 -233
  14. package/components/counter/dist/registered.js +2 -233
  15. package/components/datepicker/demo/index.min.js +6 -5
  16. package/components/datepicker/dist/index.js +6 -5
  17. package/components/datepicker/dist/registered.js +6 -5
  18. package/components/dropdown/demo/customize.min.js +1 -1
  19. package/components/dropdown/demo/getting-started.min.js +1 -1
  20. package/components/dropdown/demo/index.min.js +1 -1
  21. package/components/dropdown/dist/index.js +1 -1
  22. package/components/dropdown/dist/registered.js +1 -1
  23. package/components/form/demo/customize.min.js +168 -1322
  24. package/components/form/demo/getting-started.min.js +168 -1322
  25. package/components/form/demo/index.min.js +168 -1322
  26. package/components/form/demo/registerDemoDeps.min.js +168 -1322
  27. package/components/input/demo/customize.min.js +2 -2
  28. package/components/input/demo/getting-started.min.js +2 -2
  29. package/components/input/demo/index.min.js +2 -2
  30. package/components/input/dist/index.js +2 -2
  31. package/components/input/dist/registered.js +2 -2
  32. package/components/radio/demo/index.min.js +2 -233
  33. package/components/radio/dist/index.js +2 -233
  34. package/components/radio/dist/registered.js +2 -233
  35. package/components/select/demo/customize.min.js +3 -234
  36. package/components/select/demo/getting-started.min.js +3 -234
  37. package/components/select/demo/index.min.js +3 -234
  38. package/components/select/dist/index.js +3 -234
  39. package/components/select/dist/registered.js +3 -234
  40. package/custom-elements.json +1444 -1444
  41. package/package.json +1 -1
@@ -4601,7 +4601,7 @@ try {
4601
4601
  * @param {string} format - Date format to parse.
4602
4602
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
4603
4603
  */
4604
- function getDateParts$7(dateStr, format) {
4604
+ function getDateParts$3(dateStr, format) {
4605
4605
  if (!dateStr) {
4606
4606
  return undefined;
4607
4607
  }
@@ -4660,7 +4660,7 @@ function getDateParts$7(dateStr, format) {
4660
4660
  return result;
4661
4661
  }
4662
4662
 
4663
- function isCalendarDate$7(year, month, day) {
4663
+ function isCalendarDate$3(year, month, day) {
4664
4664
  let yearNumber = Number(year);
4665
4665
  const monthNumber = Number(month);
4666
4666
  const dayNumber = Number(day);
@@ -4684,7 +4684,7 @@ function isCalendarDate$7(year, month, day) {
4684
4684
  const date = new Date(stringified.replace(/[.-]/g, "/"));
4685
4685
 
4686
4686
  return (
4687
- !Number.isNaN(date.getTime()) && toISOFormatString$7(date) === stringified
4687
+ !Number.isNaN(date.getTime()) && toISOFormatString$3(date) === stringified
4688
4688
  );
4689
4689
  }
4690
4690
 
@@ -4699,11 +4699,11 @@ function isCalendarDate$7(year, month, day) {
4699
4699
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
4700
4700
  * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
4701
4701
  */
4702
- function parseDate$7(dateStr, format = "mm/dd/yyyy") {
4702
+ function parseDate$3(dateStr, format = "mm/dd/yyyy") {
4703
4703
  if (!dateStr || !format) {
4704
4704
  return undefined;
4705
4705
  }
4706
- const result = getDateParts$7(dateStr.trim(), format);
4706
+ const result = getDateParts$3(dateStr.trim(), format);
4707
4707
 
4708
4708
  if (!result) {
4709
4709
  return undefined;
@@ -4714,7 +4714,7 @@ function parseDate$7(dateStr, format = "mm/dd/yyyy") {
4714
4714
  const month = lowerFormat.includes("mm") ? result.month : "01";
4715
4715
  const day = lowerFormat.includes("dd") ? result.day : "01";
4716
4716
 
4717
- if (isCalendarDate$7(year, month, day)) {
4717
+ if (isCalendarDate$3(year, month, day)) {
4718
4718
  return result;
4719
4719
  }
4720
4720
 
@@ -4729,7 +4729,7 @@ function parseDate$7(dateStr, format = "mm/dd/yyyy") {
4729
4729
  * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
4730
4730
  * @returns {String} Returns the date as a string.
4731
4731
  */
4732
- function getDateAsString$7(date, locale = undefined) {
4732
+ function getDateAsString$3(date, locale = undefined) {
4733
4733
  return date.toLocaleDateString(locale, {
4734
4734
  year: "numeric",
4735
4735
  month: "2-digit",
@@ -4743,12 +4743,12 @@ function getDateAsString$7(date, locale = undefined) {
4743
4743
  * @param {String} format - Date format to validate against.
4744
4744
  * @returns {String}
4745
4745
  */
4746
- function toNorthAmericanFormat$7(dateStr, format) {
4746
+ function toNorthAmericanFormat$3(dateStr, format) {
4747
4747
  if (format === "mm/dd/yyyy") {
4748
4748
  return dateStr;
4749
4749
  }
4750
4750
 
4751
- const parsedDate = parseDate$7(dateStr, format);
4751
+ const parsedDate = parseDate$3(dateStr, format);
4752
4752
 
4753
4753
  if (!parsedDate) {
4754
4754
  throw new Error(
@@ -4768,13 +4768,13 @@ function toNorthAmericanFormat$7(dateStr, format) {
4768
4768
  * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
4769
4769
  * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
4770
4770
  */
4771
- function isValidDate$7(dateStr, format = "yyyy-mm-dd") {
4771
+ function isValidDate$3(dateStr, format = "yyyy-mm-dd") {
4772
4772
  try {
4773
4773
  if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
4774
4774
  return false;
4775
4775
  }
4776
4776
 
4777
- if (parseDate$7(dateStr, format)) {
4777
+ if (parseDate$3(dateStr, format)) {
4778
4778
  return true;
4779
4779
  }
4780
4780
  } catch (error) {
@@ -4790,7 +4790,7 @@ function isValidDate$7(dateStr, format = "yyyy-mm-dd") {
4790
4790
  * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
4791
4791
  * @throws {Error} Throws an error when the input is not a valid Date instance.
4792
4792
  */
4793
- function toISOFormatString$7(date) {
4793
+ function toISOFormatString$3(date) {
4794
4794
  if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
4795
4795
  throw new Error(
4796
4796
  "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
@@ -4807,23 +4807,23 @@ function toISOFormatString$7(date) {
4807
4807
  * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
4808
4808
  * @throws {Error} Throws when parsing fails for non-ISO string input.
4809
4809
  */
4810
- function stringToDateInstance$7(dateStr, format = "yyyy-mm-dd") {
4810
+ function stringToDateInstance$3(dateStr, format = "yyyy-mm-dd") {
4811
4811
  if (typeof dateStr !== "string") {
4812
4812
  return null;
4813
4813
  }
4814
4814
 
4815
- const { month, day, year } = parseDate$7(dateStr, format);
4815
+ const { month, day, year } = parseDate$3(dateStr, format);
4816
4816
  return new Date(`${year}/${month}/${day}`);
4817
4817
  }
4818
4818
 
4819
- const dateFormatter$7 = {
4820
- parseDate: parseDate$7,
4821
- getDateParts: getDateParts$7,
4822
- getDateAsString: getDateAsString$7,
4823
- toNorthAmericanFormat: toNorthAmericanFormat$7,
4824
- isValidDate: isValidDate$7,
4825
- toISOFormatString: toISOFormatString$7,
4826
- stringToDateInstance: stringToDateInstance$7,
4819
+ const dateFormatter$3 = {
4820
+ parseDate: parseDate$3,
4821
+ getDateParts: getDateParts$3,
4822
+ getDateAsString: getDateAsString$3,
4823
+ toNorthAmericanFormat: toNorthAmericanFormat$3,
4824
+ isValidDate: isValidDate$3,
4825
+ toISOFormatString: toISOFormatString$3,
4826
+ stringToDateInstance: stringToDateInstance$3,
4827
4827
  };
4828
4828
 
4829
4829
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
@@ -5130,7 +5130,7 @@ let AuroFormValidation$7 = class AuroFormValidation {
5130
5130
  }
5131
5131
 
5132
5132
  // Validate that the date passed was the correct format and is a valid date
5133
- if (elem.value && !dateFormatter$7.isValidDate(elem.inputElement.value, elem.format)) {
5133
+ if (elem.value && !elem.valueObject) {
5134
5134
  elem.validity = 'patternMismatch';
5135
5135
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
5136
5136
  return;
@@ -11155,7 +11155,7 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
11155
11155
  return inputValue;
11156
11156
  }
11157
11157
 
11158
- return dateFormatter$7.toISOFormatString(parsedDate);
11158
+ return dateFormatter$3.toISOFormatString(parsedDate);
11159
11159
  }
11160
11160
 
11161
11161
  /**
@@ -11172,7 +11172,7 @@ let AuroInputUtilities$2 = class AuroInputUtilities {
11172
11172
  return value;
11173
11173
  }
11174
11174
 
11175
- if (!dateFormatter$7.isValidDate(value)) {
11175
+ if (!dateFormatter$3.isValidDate(value)) {
11176
11176
  // For ISO-pattern strings that fail range validation (e.g. '2024-99-99'),
11177
11177
  // return '' so inputElement stays empty and format-based validation is not triggered.
11178
11178
  return (/^\d{4}-\d{2}-\d{2}$/u).test(value) ? '' : value;
@@ -12180,7 +12180,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$7 {
12180
12180
 
12181
12181
  // objectProperty wins over valueProperty when both changed
12182
12182
  if (objectPropertyChanged && this[objectProperty]) {
12183
- this[valueProperty] = dateFormatter$7.toISOFormatString(this[objectProperty]);
12183
+ this[valueProperty] = dateFormatter$3.toISOFormatString(this[objectProperty]);
12184
12184
  return;
12185
12185
  }
12186
12186
 
@@ -12195,13 +12195,13 @@ let BaseInput$2 = class BaseInput extends AuroElement$7 {
12195
12195
  valueProperty === 'value' &&
12196
12196
  changedProperties.get('value') === undefined &&
12197
12197
  this[objectProperty] instanceof Date &&
12198
- this[valueProperty] === dateFormatter$7.toISOFormatString(this[objectProperty])
12198
+ this[valueProperty] === dateFormatter$3.toISOFormatString(this[objectProperty])
12199
12199
  ) {
12200
12200
  return;
12201
12201
  }
12202
12202
 
12203
- if (dateFormatter$7.isValidDate(this[valueProperty])) {
12204
- this.setDateObjectProperty(objectProperty, dateFormatter$7.stringToDateInstance(this[valueProperty]));
12203
+ if (dateFormatter$3.isValidDate(this[valueProperty])) {
12204
+ this.setDateObjectProperty(objectProperty, dateFormatter$3.stringToDateInstance(this[valueProperty]));
12205
12205
  } else {
12206
12206
  this.setDateObjectProperty(objectProperty, undefined);
12207
12207
  }
@@ -12234,7 +12234,7 @@ let BaseInput$2 = class BaseInput extends AuroElement$7 {
12234
12234
  if (
12235
12235
  this.util.isFullDateFormat(this.type, this.format) &&
12236
12236
  this.value &&
12237
- dateFormatter$7.isValidDate(this.value) &&
12237
+ dateFormatter$3.isValidDate(this.value) &&
12238
12238
  this.valueObject instanceof Date &&
12239
12239
  !Number.isNaN(this.valueObject.getTime()) &&
12240
12240
  typeof maskOptions.format === 'function'
@@ -12964,7 +12964,7 @@ let AuroHelpText$9 = class AuroHelpText extends i$4 {
12964
12964
  }
12965
12965
  };
12966
12966
 
12967
- var formkitVersion$9 = '202605271728';
12967
+ var formkitVersion$9 = '202605271820';
12968
12968
 
12969
12969
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
12970
12970
  // See LICENSE in the project root for license information.
@@ -13710,7 +13710,7 @@ let AuroInput$2 = class AuroInput extends BaseInput$2 {
13710
13710
  * @param {string} format - Date format to parse.
13711
13711
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
13712
13712
  */
13713
- function getDateParts$1$1(dateStr, format) {
13713
+ function getDateParts$1(dateStr, format) {
13714
13714
  if (!dateStr) {
13715
13715
  return undefined;
13716
13716
  }
@@ -13769,7 +13769,7 @@ function getDateParts$1$1(dateStr, format) {
13769
13769
  return result;
13770
13770
  }
13771
13771
 
13772
- function isCalendarDate$1$1(year, month, day) {
13772
+ function isCalendarDate$1(year, month, day) {
13773
13773
  let yearNumber = Number(year);
13774
13774
  const monthNumber = Number(month);
13775
13775
  const dayNumber = Number(day);
@@ -13793,7 +13793,7 @@ function isCalendarDate$1$1(year, month, day) {
13793
13793
  const date = new Date(stringified.replace(/[.-]/g, "/"));
13794
13794
 
13795
13795
  return (
13796
- !Number.isNaN(date.getTime()) && toISOFormatString$1$1(date) === stringified
13796
+ !Number.isNaN(date.getTime()) && toISOFormatString$1(date) === stringified
13797
13797
  );
13798
13798
  }
13799
13799
 
@@ -13808,11 +13808,11 @@ function isCalendarDate$1$1(year, month, day) {
13808
13808
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
13809
13809
  * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
13810
13810
  */
13811
- function parseDate$1$1(dateStr, format = "mm/dd/yyyy") {
13811
+ function parseDate$1(dateStr, format = "mm/dd/yyyy") {
13812
13812
  if (!dateStr || !format) {
13813
13813
  return undefined;
13814
13814
  }
13815
- const result = getDateParts$1$1(dateStr.trim(), format);
13815
+ const result = getDateParts$1(dateStr.trim(), format);
13816
13816
 
13817
13817
  if (!result) {
13818
13818
  return undefined;
@@ -13823,7 +13823,7 @@ function parseDate$1$1(dateStr, format = "mm/dd/yyyy") {
13823
13823
  const month = lowerFormat.includes("mm") ? result.month : "01";
13824
13824
  const day = lowerFormat.includes("dd") ? result.day : "01";
13825
13825
 
13826
- if (isCalendarDate$1$1(year, month, day)) {
13826
+ if (isCalendarDate$1(year, month, day)) {
13827
13827
  return result;
13828
13828
  }
13829
13829
 
@@ -13838,7 +13838,7 @@ function parseDate$1$1(dateStr, format = "mm/dd/yyyy") {
13838
13838
  * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
13839
13839
  * @returns {String} Returns the date as a string.
13840
13840
  */
13841
- function getDateAsString$1$1(date, locale = undefined) {
13841
+ function getDateAsString$1(date, locale = undefined) {
13842
13842
  return date.toLocaleDateString(locale, {
13843
13843
  year: "numeric",
13844
13844
  month: "2-digit",
@@ -13852,12 +13852,12 @@ function getDateAsString$1$1(date, locale = undefined) {
13852
13852
  * @param {String} format - Date format to validate against.
13853
13853
  * @returns {String}
13854
13854
  */
13855
- function toNorthAmericanFormat$1$1(dateStr, format) {
13855
+ function toNorthAmericanFormat$1(dateStr, format) {
13856
13856
  if (format === "mm/dd/yyyy") {
13857
13857
  return dateStr;
13858
13858
  }
13859
13859
 
13860
- const parsedDate = parseDate$1$1(dateStr, format);
13860
+ const parsedDate = parseDate$1(dateStr, format);
13861
13861
 
13862
13862
  if (!parsedDate) {
13863
13863
  throw new Error(
@@ -13877,13 +13877,13 @@ function toNorthAmericanFormat$1$1(dateStr, format) {
13877
13877
  * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
13878
13878
  * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
13879
13879
  */
13880
- function isValidDate$1$1(dateStr, format = "yyyy-mm-dd") {
13880
+ function isValidDate$1(dateStr, format = "yyyy-mm-dd") {
13881
13881
  try {
13882
13882
  if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
13883
13883
  return false;
13884
13884
  }
13885
13885
 
13886
- if (parseDate$1$1(dateStr, format)) {
13886
+ if (parseDate$1(dateStr, format)) {
13887
13887
  return true;
13888
13888
  }
13889
13889
  } catch (error) {
@@ -13899,7 +13899,7 @@ function isValidDate$1$1(dateStr, format = "yyyy-mm-dd") {
13899
13899
  * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
13900
13900
  * @throws {Error} Throws an error when the input is not a valid Date instance.
13901
13901
  */
13902
- function toISOFormatString$1$1(date) {
13902
+ function toISOFormatString$1(date) {
13903
13903
  if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
13904
13904
  throw new Error(
13905
13905
  "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
@@ -13916,23 +13916,23 @@ function toISOFormatString$1$1(date) {
13916
13916
  * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
13917
13917
  * @throws {Error} Throws when parsing fails for non-ISO string input.
13918
13918
  */
13919
- function stringToDateInstance$1$1(dateStr, format = "yyyy-mm-dd") {
13919
+ function stringToDateInstance$1(dateStr, format = "yyyy-mm-dd") {
13920
13920
  if (typeof dateStr !== "string") {
13921
13921
  return null;
13922
13922
  }
13923
13923
 
13924
- const { month, day, year } = parseDate$1$1(dateStr, format);
13924
+ const { month, day, year } = parseDate$1(dateStr, format);
13925
13925
  return new Date(`${year}/${month}/${day}`);
13926
13926
  }
13927
13927
 
13928
- const dateFormatter$1$1 = {
13929
- parseDate: parseDate$1$1,
13930
- getDateParts: getDateParts$1$1,
13931
- getDateAsString: getDateAsString$1$1,
13932
- toNorthAmericanFormat: toNorthAmericanFormat$1$1,
13933
- isValidDate: isValidDate$1$1,
13934
- toISOFormatString: toISOFormatString$1$1,
13935
- stringToDateInstance: stringToDateInstance$1$1,
13928
+ const dateFormatter$1 = {
13929
+ parseDate: parseDate$1,
13930
+ getDateParts: getDateParts$1,
13931
+ getDateAsString: getDateAsString$1,
13932
+ toNorthAmericanFormat: toNorthAmericanFormat$1,
13933
+ isValidDate: isValidDate$1,
13934
+ toISOFormatString: toISOFormatString$1,
13935
+ stringToDateInstance: stringToDateInstance$1,
13936
13936
  };
13937
13937
 
13938
13938
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
@@ -14239,7 +14239,7 @@ let AuroFormValidation$1$1 = class AuroFormValidation {
14239
14239
  }
14240
14240
 
14241
14241
  // Validate that the date passed was the correct format and is a valid date
14242
- if (elem.value && !dateFormatter$1$1.isValidDate(elem.inputElement.value, elem.format)) {
14242
+ if (elem.value && !elem.valueObject) {
14243
14243
  elem.validity = 'patternMismatch';
14244
14244
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
14245
14245
  return;
@@ -14521,7 +14521,7 @@ class AuroDatepickerUtilities {
14521
14521
  toCustomFormat(isoStr, format) {
14522
14522
  if (!isoStr || !format) return undefined;
14523
14523
  try {
14524
- const date = dateFormatter$1$1.stringToDateInstance(isoStr);
14524
+ const date = dateFormatter$1.stringToDateInstance(isoStr);
14525
14525
  const year = String(date.getFullYear()).padStart(4, '0');
14526
14526
  const month = String(date.getMonth() + 1).padStart(2, '0');
14527
14527
  const day = String(date.getDate()).padStart(2, '0');
@@ -14569,7 +14569,7 @@ class AuroDatepickerUtilities {
14569
14569
  if (!date) return undefined;
14570
14570
  try {
14571
14571
  const d = date instanceof Date ? date : new Date(date);
14572
- return dateFormatter$1$1.toISOFormatString(d);
14572
+ return dateFormatter$1.toISOFormatString(d);
14573
14573
  } catch {
14574
14574
  return undefined;
14575
14575
  }
@@ -14623,13 +14623,13 @@ class UtilitiesCalendarRender {
14623
14623
  */
14624
14624
  updateCentralDate(elem, date) {
14625
14625
  // if date is already iso formatted string, we can skip the conversion and validation step
14626
- if (typeof date === 'string' && dateFormatter$1$1.isValidDate(date)) {
14626
+ if (typeof date === 'string' && dateFormatter$1.isValidDate(date)) {
14627
14627
  elem.centralDate = date;
14628
14628
  return;
14629
14629
  }
14630
14630
 
14631
14631
  // Accept Date objects, Unix timestamps (numbers), and ISO strings
14632
- const dateObj = date instanceof Date || typeof date === 'number' ? new Date(date) : dateFormatter$1$1.stringToDateInstance(date);
14632
+ const dateObj = date instanceof Date || typeof date === 'number' ? new Date(date) : dateFormatter$1.stringToDateInstance(date);
14633
14633
 
14634
14634
  if (!dateObj || isNaN(dateObj)) {
14635
14635
  return;
@@ -14637,7 +14637,7 @@ class UtilitiesCalendarRender {
14637
14637
 
14638
14638
  dateObj.setDate(1);
14639
14639
  dateObj.setHours(0, 0, 0, 0);
14640
- elem.centralDate = dateFormatter$1$1.toISOFormatString(dateObj);
14640
+ elem.centralDate = dateFormatter$1.toISOFormatString(dateObj);
14641
14641
  }
14642
14642
 
14643
14643
  /**
@@ -14649,7 +14649,7 @@ class UtilitiesCalendarRender {
14649
14649
  determineDefinedCalendarRange(elem) {
14650
14650
  if (elem.getAttribute('calendarStartDate') && elem.getAttribute('calendarEndDate')) {
14651
14651
  // if we have a defined range of months, use that
14652
- elem.calendarRangeMonths = elem.util.monthDiff(dateFormatter$1$1.stringToDateInstance(elem.getAttribute('calendarStartDate')), dateFormatter$1$1.stringToDateInstance(elem.getAttribute('calendarEndDate')));
14652
+ elem.calendarRangeMonths = elem.util.monthDiff(dateFormatter$1.stringToDateInstance(elem.getAttribute('calendarStartDate')), dateFormatter$1.stringToDateInstance(elem.getAttribute('calendarEndDate')));
14653
14653
  } else {
14654
14654
  // if we don't have a defined range of months, use undefined
14655
14655
  elem.calendarRangeMonths = undefined;
@@ -14709,7 +14709,7 @@ class UtilitiesCalendarRender {
14709
14709
 
14710
14710
  // 3. If we didn't get a count early, restrict based on min/max date.
14711
14711
  if (!calendarCount && elem.minDate && elem.maxDate) {
14712
- const monthsInRange = this.util.monthDiff(dateFormatter$1$1.stringToDateInstance(elem.minDate), dateFormatter$1$1.stringToDateInstance(elem.maxDate));
14712
+ const monthsInRange = this.util.monthDiff(dateFormatter$1.stringToDateInstance(elem.minDate), dateFormatter$1.stringToDateInstance(elem.maxDate));
14713
14713
 
14714
14714
  if (monthsInRange < maxRenderableMonths) {
14715
14715
  calendarCount = monthsInRange;
@@ -14735,9 +14735,9 @@ class UtilitiesCalendarRender {
14735
14735
  let firstMonthDate = new Date();
14736
14736
 
14737
14737
  if (start) {
14738
- firstMonthDate = dateFormatter$1$1.stringToDateInstance(start);
14738
+ firstMonthDate = dateFormatter$1.stringToDateInstance(start);
14739
14739
  } else if (min) {
14740
- firstMonthDate = dateFormatter$1$1.stringToDateInstance(min);
14740
+ firstMonthDate = dateFormatter$1.stringToDateInstance(min);
14741
14741
  }
14742
14742
 
14743
14743
  // sets to the first day of the month
@@ -22141,8 +22141,8 @@ class CalendarUtilities {
22141
22141
  scrollMonthIntoView(elem, date) {
22142
22142
  const mobileLayout = window.innerWidth < elem.mobileBreakpoint;
22143
22143
 
22144
- if (dateFormatter$1$1.isValidDate(date) && mobileLayout) {
22145
- const dateObj = dateFormatter$1$1.stringToDateInstance(date);
22144
+ if (dateFormatter$1.isValidDate(date) && mobileLayout) {
22145
+ const dateObj = dateFormatter$1.stringToDateInstance(date);
22146
22146
  const month = dateObj.getMonth() + 1;
22147
22147
  const year = dateObj.getFullYear();
22148
22148
  const selector = `#month-${month}-${year}`;
@@ -22193,7 +22193,7 @@ class CalendarUtilities {
22193
22193
  let lastRenderableMonth = undefined; // eslint-disable-line no-undef-init
22194
22194
 
22195
22195
  if (elem.hasAttribute('calendarEndDate')) {
22196
- lastRenderableMonth = dateFormatter$1$1.stringToDateInstance(elem.getAttribute('calendarEndDate'));
22196
+ lastRenderableMonth = dateFormatter$1.stringToDateInstance(elem.getAttribute('calendarEndDate'));
22197
22197
  } else if (elem.maxDateObject) {
22198
22198
  lastRenderableMonth = elem.maxDateObject;
22199
22199
  }
@@ -22269,7 +22269,7 @@ class CalendarUtilities {
22269
22269
  newCentralDate = new Date(firstRenderedMonth).setMonth(new Date(firstRenderedMonth).getMonth() + increment, 1);
22270
22270
  }
22271
22271
 
22272
- elem.centralDate = dateFormatter$1$1.toISOFormatString(new Date(newCentralDate));
22272
+ elem.centralDate = dateFormatter$1.toISOFormatString(new Date(newCentralDate));
22273
22273
  }
22274
22274
  }
22275
22275
 
@@ -22662,7 +22662,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
22662
22662
  }
22663
22663
  };
22664
22664
 
22665
- var formkitVersion$2$1 = '202605271728';
22665
+ var formkitVersion$2$1 = '202605271820';
22666
22666
 
22667
22667
  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$3`${s$6(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$7`: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}
22668
22668
  `,u$4$1=i$7`.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}}
@@ -22922,17 +22922,17 @@ class AuroCalendar extends RangeDatepicker {
22922
22922
 
22923
22923
  /** @returns {Date|undefined} */
22924
22924
  get centralDateObject() {
22925
- return this.centralDate && dateFormatter$1$1.isValidDate(this.centralDate) ? dateFormatter$1$1.stringToDateInstance(this.centralDate) : undefined;
22925
+ return this.centralDate && dateFormatter$1.isValidDate(this.centralDate) ? dateFormatter$1.stringToDateInstance(this.centralDate) : undefined;
22926
22926
  }
22927
22927
 
22928
22928
  /** @returns {Date|undefined} */
22929
22929
  get minDateObject() {
22930
- return this.minDate && dateFormatter$1$1.isValidDate(this.minDate) ? dateFormatter$1$1.stringToDateInstance(this.minDate) : undefined;
22930
+ return this.minDate && dateFormatter$1.isValidDate(this.minDate) ? dateFormatter$1.stringToDateInstance(this.minDate) : undefined;
22931
22931
  }
22932
22932
 
22933
22933
  /** @returns {Date|undefined} */
22934
22934
  get maxDateObject() {
22935
- return this.maxDate && dateFormatter$1$1.isValidDate(this.maxDate) ? dateFormatter$1$1.stringToDateInstance(this.maxDate) : undefined;
22935
+ return this.maxDate && dateFormatter$1.isValidDate(this.maxDate) ? dateFormatter$1.stringToDateInstance(this.maxDate) : undefined;
22936
22936
  }
22937
22937
 
22938
22938
  /**
@@ -23028,7 +23028,7 @@ class AuroCalendar extends RangeDatepicker {
23028
23028
  }
23029
23029
 
23030
23030
  const newMonthDateStr = `${String(newMonth).padStart(2, '0')}/01/${newYear}`;
23031
- newMonthDate = dateFormatter$1$1.stringToDateInstance(newMonthDateStr, 'mm/dd/yyyy');
23031
+ newMonthDate = dateFormatter$1.stringToDateInstance(newMonthDateStr, 'mm/dd/yyyy');
23032
23032
 
23033
23033
  renderedHtml = u$c`${renderedHtml}${this.utilCalRender.renderCalendar(this, newMonth, newYear)}`;
23034
23034
  }
@@ -27021,7 +27021,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$4 {
27021
27021
  }
27022
27022
  };
27023
27023
 
27024
- var formkitVersion$1$2 = '202605271728';
27024
+ var formkitVersion$1$2 = '202605271820';
27025
27025
 
27026
27026
  let AuroElement$2$2 = class AuroElement extends i$4 {
27027
27027
  static get properties() {
@@ -31909,7 +31909,7 @@ try {
31909
31909
  * @param {string} format - Date format to parse.
31910
31910
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
31911
31911
  */
31912
- function getDateParts$6(dateStr, format) {
31912
+ function getDateParts$2(dateStr, format) {
31913
31913
  if (!dateStr) {
31914
31914
  return undefined;
31915
31915
  }
@@ -31968,7 +31968,7 @@ function getDateParts$6(dateStr, format) {
31968
31968
  return result;
31969
31969
  }
31970
31970
 
31971
- function isCalendarDate$6(year, month, day) {
31971
+ function isCalendarDate$2(year, month, day) {
31972
31972
  let yearNumber = Number(year);
31973
31973
  const monthNumber = Number(month);
31974
31974
  const dayNumber = Number(day);
@@ -31992,7 +31992,7 @@ function isCalendarDate$6(year, month, day) {
31992
31992
  const date = new Date(stringified.replace(/[.-]/g, "/"));
31993
31993
 
31994
31994
  return (
31995
- !Number.isNaN(date.getTime()) && toISOFormatString$6(date) === stringified
31995
+ !Number.isNaN(date.getTime()) && toISOFormatString$2(date) === stringified
31996
31996
  );
31997
31997
  }
31998
31998
 
@@ -32007,11 +32007,11 @@ function isCalendarDate$6(year, month, day) {
32007
32007
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
32008
32008
  * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
32009
32009
  */
32010
- function parseDate$6(dateStr, format = "mm/dd/yyyy") {
32010
+ function parseDate$2(dateStr, format = "mm/dd/yyyy") {
32011
32011
  if (!dateStr || !format) {
32012
32012
  return undefined;
32013
32013
  }
32014
- const result = getDateParts$6(dateStr.trim(), format);
32014
+ const result = getDateParts$2(dateStr.trim(), format);
32015
32015
 
32016
32016
  if (!result) {
32017
32017
  return undefined;
@@ -32022,7 +32022,7 @@ function parseDate$6(dateStr, format = "mm/dd/yyyy") {
32022
32022
  const month = lowerFormat.includes("mm") ? result.month : "01";
32023
32023
  const day = lowerFormat.includes("dd") ? result.day : "01";
32024
32024
 
32025
- if (isCalendarDate$6(year, month, day)) {
32025
+ if (isCalendarDate$2(year, month, day)) {
32026
32026
  return result;
32027
32027
  }
32028
32028
 
@@ -32037,7 +32037,7 @@ function parseDate$6(dateStr, format = "mm/dd/yyyy") {
32037
32037
  * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
32038
32038
  * @returns {String} Returns the date as a string.
32039
32039
  */
32040
- function getDateAsString$6(date, locale = undefined) {
32040
+ function getDateAsString$2(date, locale = undefined) {
32041
32041
  return date.toLocaleDateString(locale, {
32042
32042
  year: "numeric",
32043
32043
  month: "2-digit",
@@ -32051,12 +32051,12 @@ function getDateAsString$6(date, locale = undefined) {
32051
32051
  * @param {String} format - Date format to validate against.
32052
32052
  * @returns {String}
32053
32053
  */
32054
- function toNorthAmericanFormat$6(dateStr, format) {
32054
+ function toNorthAmericanFormat$2(dateStr, format) {
32055
32055
  if (format === "mm/dd/yyyy") {
32056
32056
  return dateStr;
32057
32057
  }
32058
32058
 
32059
- const parsedDate = parseDate$6(dateStr, format);
32059
+ const parsedDate = parseDate$2(dateStr, format);
32060
32060
 
32061
32061
  if (!parsedDate) {
32062
32062
  throw new Error(
@@ -32076,13 +32076,13 @@ function toNorthAmericanFormat$6(dateStr, format) {
32076
32076
  * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
32077
32077
  * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
32078
32078
  */
32079
- function isValidDate$6(dateStr, format = "yyyy-mm-dd") {
32079
+ function isValidDate$2(dateStr, format = "yyyy-mm-dd") {
32080
32080
  try {
32081
32081
  if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
32082
32082
  return false;
32083
32083
  }
32084
32084
 
32085
- if (parseDate$6(dateStr, format)) {
32085
+ if (parseDate$2(dateStr, format)) {
32086
32086
  return true;
32087
32087
  }
32088
32088
  } catch (error) {
@@ -32098,7 +32098,7 @@ function isValidDate$6(dateStr, format = "yyyy-mm-dd") {
32098
32098
  * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
32099
32099
  * @throws {Error} Throws an error when the input is not a valid Date instance.
32100
32100
  */
32101
- function toISOFormatString$6(date) {
32101
+ function toISOFormatString$2(date) {
32102
32102
  if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
32103
32103
  throw new Error(
32104
32104
  "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
@@ -32115,23 +32115,23 @@ function toISOFormatString$6(date) {
32115
32115
  * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
32116
32116
  * @throws {Error} Throws when parsing fails for non-ISO string input.
32117
32117
  */
32118
- function stringToDateInstance$6(dateStr, format = "yyyy-mm-dd") {
32118
+ function stringToDateInstance$2(dateStr, format = "yyyy-mm-dd") {
32119
32119
  if (typeof dateStr !== "string") {
32120
32120
  return null;
32121
32121
  }
32122
32122
 
32123
- const { month, day, year } = parseDate$6(dateStr, format);
32123
+ const { month, day, year } = parseDate$2(dateStr, format);
32124
32124
  return new Date(`${year}/${month}/${day}`);
32125
32125
  }
32126
32126
 
32127
- const dateFormatter$6 = {
32128
- parseDate: parseDate$6,
32129
- getDateParts: getDateParts$6,
32130
- getDateAsString: getDateAsString$6,
32131
- toNorthAmericanFormat: toNorthAmericanFormat$6,
32132
- isValidDate: isValidDate$6,
32133
- toISOFormatString: toISOFormatString$6,
32134
- stringToDateInstance: stringToDateInstance$6,
32127
+ const dateFormatter$2 = {
32128
+ parseDate: parseDate$2,
32129
+ getDateParts: getDateParts$2,
32130
+ getDateAsString: getDateAsString$2,
32131
+ toNorthAmericanFormat: toNorthAmericanFormat$2,
32132
+ isValidDate: isValidDate$2,
32133
+ toISOFormatString: toISOFormatString$2,
32134
+ stringToDateInstance: stringToDateInstance$2,
32135
32135
  };
32136
32136
 
32137
32137
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
@@ -32438,7 +32438,7 @@ let AuroFormValidation$6 = class AuroFormValidation {
32438
32438
  }
32439
32439
 
32440
32440
  // Validate that the date passed was the correct format and is a valid date
32441
- if (elem.value && !dateFormatter$6.isValidDate(elem.inputElement.value, elem.format)) {
32441
+ if (elem.value && !elem.valueObject) {
32442
32442
  elem.validity = 'patternMismatch';
32443
32443
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
32444
32444
  return;
@@ -38463,7 +38463,7 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
38463
38463
  return inputValue;
38464
38464
  }
38465
38465
 
38466
- return dateFormatter$6.toISOFormatString(parsedDate);
38466
+ return dateFormatter$2.toISOFormatString(parsedDate);
38467
38467
  }
38468
38468
 
38469
38469
  /**
@@ -38480,7 +38480,7 @@ let AuroInputUtilities$1 = class AuroInputUtilities {
38480
38480
  return value;
38481
38481
  }
38482
38482
 
38483
- if (!dateFormatter$6.isValidDate(value)) {
38483
+ if (!dateFormatter$2.isValidDate(value)) {
38484
38484
  // For ISO-pattern strings that fail range validation (e.g. '2024-99-99'),
38485
38485
  // return '' so inputElement stays empty and format-based validation is not triggered.
38486
38486
  return (/^\d{4}-\d{2}-\d{2}$/u).test(value) ? '' : value;
@@ -39488,7 +39488,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$2 {
39488
39488
 
39489
39489
  // objectProperty wins over valueProperty when both changed
39490
39490
  if (objectPropertyChanged && this[objectProperty]) {
39491
- this[valueProperty] = dateFormatter$6.toISOFormatString(this[objectProperty]);
39491
+ this[valueProperty] = dateFormatter$2.toISOFormatString(this[objectProperty]);
39492
39492
  return;
39493
39493
  }
39494
39494
 
@@ -39503,13 +39503,13 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$2 {
39503
39503
  valueProperty === 'value' &&
39504
39504
  changedProperties.get('value') === undefined &&
39505
39505
  this[objectProperty] instanceof Date &&
39506
- this[valueProperty] === dateFormatter$6.toISOFormatString(this[objectProperty])
39506
+ this[valueProperty] === dateFormatter$2.toISOFormatString(this[objectProperty])
39507
39507
  ) {
39508
39508
  return;
39509
39509
  }
39510
39510
 
39511
- if (dateFormatter$6.isValidDate(this[valueProperty])) {
39512
- this.setDateObjectProperty(objectProperty, dateFormatter$6.stringToDateInstance(this[valueProperty]));
39511
+ if (dateFormatter$2.isValidDate(this[valueProperty])) {
39512
+ this.setDateObjectProperty(objectProperty, dateFormatter$2.stringToDateInstance(this[valueProperty]));
39513
39513
  } else {
39514
39514
  this.setDateObjectProperty(objectProperty, undefined);
39515
39515
  }
@@ -39542,7 +39542,7 @@ let BaseInput$1 = class BaseInput extends AuroElement$1$2 {
39542
39542
  if (
39543
39543
  this.util.isFullDateFormat(this.type, this.format) &&
39544
39544
  this.value &&
39545
- dateFormatter$6.isValidDate(this.value) &&
39545
+ dateFormatter$2.isValidDate(this.value) &&
39546
39546
  this.valueObject instanceof Date &&
39547
39547
  !Number.isNaN(this.valueObject.getTime()) &&
39548
39548
  typeof maskOptions.format === 'function'
@@ -40272,7 +40272,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$4 {
40272
40272
  }
40273
40273
  };
40274
40274
 
40275
- var formkitVersion$8 = '202605271728';
40275
+ var formkitVersion$8 = '202605271820';
40276
40276
 
40277
40277
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
40278
40278
  // See LICENSE in the project root for license information.
@@ -41015,7 +41015,7 @@ function formatISODate(isoStr, format) {
41015
41015
  }
41016
41016
 
41017
41017
  try {
41018
- const date = dateFormatter$6.stringToDateInstance(isoStr);
41018
+ const date = dateFormatter$2.stringToDateInstance(isoStr);
41019
41019
 
41020
41020
  const year = String(date.getFullYear()).padStart(4, '0');
41021
41021
  const month = String(date.getMonth() + 1).padStart(2, '0');
@@ -41033,7 +41033,7 @@ function formatISODate(isoStr, format) {
41033
41033
  }
41034
41034
 
41035
41035
  const AuroInputUtil = {
41036
- toISOFormatString: dateFormatter$6.toISOFormatString,
41036
+ toISOFormatString: dateFormatter$2.toISOFormatString,
41037
41037
  formatISODate,
41038
41038
  toFormattedValue: AuroInputUtilities$1.prototype.toFormattedValue.bind(new AuroInputUtilities$1()),
41039
41039
  };
@@ -42319,7 +42319,7 @@ class AuroDatePicker extends AuroElement$6 {
42319
42319
  * @returns {void}
42320
42320
  */
42321
42321
  handleFocusDateChange() {
42322
- if (this.calendarFocusDate && dateFormatter$1$1.isValidDate(this.calendarFocusDate)) {
42322
+ if (this.calendarFocusDate && dateFormatter$1.isValidDate(this.calendarFocusDate)) {
42323
42323
  this.calendarRenderUtil.updateCentralDate(this, this.calendarFocusDateObject);
42324
42324
 
42325
42325
  this.forceScrollOnNextMobileCalendarRender = true;
@@ -42365,42 +42365,42 @@ class AuroDatePicker extends AuroElement$6 {
42365
42365
 
42366
42366
  /** @returns {Date|undefined} */
42367
42367
  get valueObject() {
42368
- return this.value && dateFormatter$1$1.isValidDate(this.value) ? dateFormatter$1$1.stringToDateInstance(this.value) : undefined;
42368
+ return this.value && dateFormatter$1.isValidDate(this.value) ? dateFormatter$1.stringToDateInstance(this.value) : undefined;
42369
42369
  }
42370
42370
 
42371
42371
  /** @returns {Date|undefined} */
42372
42372
  get valueEndObject() {
42373
- return this.valueEnd && dateFormatter$1$1.isValidDate(this.valueEnd) ? dateFormatter$1$1.stringToDateInstance(this.valueEnd) : undefined;
42373
+ return this.valueEnd && dateFormatter$1.isValidDate(this.valueEnd) ? dateFormatter$1.stringToDateInstance(this.valueEnd) : undefined;
42374
42374
  }
42375
42375
 
42376
42376
  /** @returns {Date|undefined} */
42377
42377
  get minDateObject() {
42378
- return this.minDate && dateFormatter$1$1.isValidDate(this.minDate) ? dateFormatter$1$1.stringToDateInstance(this.minDate) : undefined;
42378
+ return this.minDate && dateFormatter$1.isValidDate(this.minDate) ? dateFormatter$1.stringToDateInstance(this.minDate) : undefined;
42379
42379
  }
42380
42380
 
42381
42381
  /** @returns {Date|undefined} */
42382
42382
  get maxDateObject() {
42383
- return this.maxDate && dateFormatter$1$1.isValidDate(this.maxDate) ? dateFormatter$1$1.stringToDateInstance(this.maxDate) : undefined;
42383
+ return this.maxDate && dateFormatter$1.isValidDate(this.maxDate) ? dateFormatter$1.stringToDateInstance(this.maxDate) : undefined;
42384
42384
  }
42385
42385
 
42386
42386
  /** @returns {Date|undefined} */
42387
42387
  get calendarStartDateObject() {
42388
- return this.calendarStartDate && dateFormatter$1$1.isValidDate(this.calendarStartDate) ? dateFormatter$1$1.stringToDateInstance(this.calendarStartDate) : undefined;
42388
+ return this.calendarStartDate && dateFormatter$1.isValidDate(this.calendarStartDate) ? dateFormatter$1.stringToDateInstance(this.calendarStartDate) : undefined;
42389
42389
  }
42390
42390
 
42391
42391
  /** @returns {Date|undefined} */
42392
42392
  get calendarEndDateObject() {
42393
- return this.calendarEndDate && dateFormatter$1$1.isValidDate(this.calendarEndDate) ? dateFormatter$1$1.stringToDateInstance(this.calendarEndDate) : undefined;
42393
+ return this.calendarEndDate && dateFormatter$1.isValidDate(this.calendarEndDate) ? dateFormatter$1.stringToDateInstance(this.calendarEndDate) : undefined;
42394
42394
  }
42395
42395
 
42396
42396
  /** @returns {Date|undefined} */
42397
42397
  get centralDateObject() {
42398
- return this.centralDate && dateFormatter$1$1.isValidDate(this.centralDate) ? dateFormatter$1$1.stringToDateInstance(this.centralDate) : undefined;
42398
+ return this.centralDate && dateFormatter$1.isValidDate(this.centralDate) ? dateFormatter$1.stringToDateInstance(this.centralDate) : undefined;
42399
42399
  }
42400
42400
 
42401
42401
  /** @returns {Date|undefined} */
42402
42402
  get calendarFocusDateObject() {
42403
- return this.calendarFocusDate && dateFormatter$1$1.isValidDate(this.calendarFocusDate) ? dateFormatter$1$1.stringToDateInstance(this.calendarFocusDate) : undefined;
42403
+ return this.calendarFocusDate && dateFormatter$1.isValidDate(this.calendarFocusDate) ? dateFormatter$1.stringToDateInstance(this.calendarFocusDate) : undefined;
42404
42404
  }
42405
42405
 
42406
42406
  // ─── Vendor calendar time conversions ─────────────────────────────────────
@@ -42412,7 +42412,7 @@ class AuroDatePicker extends AuroElement$6 {
42412
42412
  * @returns {string} ISO date string (yyyy-mm-dd).
42413
42413
  */
42414
42414
  convertWcTimeToDate(time) {
42415
- return dateFormatter$1$1.toISOFormatString(new Date(time * 1000));
42415
+ return dateFormatter$1.toISOFormatString(new Date(time * 1000));
42416
42416
  }
42417
42417
 
42418
42418
  /**
@@ -42757,16 +42757,17 @@ class AuroDatePicker extends AuroElement$6 {
42757
42757
  const newDate = this.convertWcTimeToDate(time);
42758
42758
 
42759
42759
  let onEndValue = false;
42760
- if (dateFormatter$1$1.isValidDate(newDate)) {
42760
+ if (dateFormatter$1.isValidDate(newDate)) {
42761
42761
 
42762
42762
  if (this.range) {
42763
42763
  if (this.valueObject && !this.valueEndObject) {
42764
42764
  // verify the date is after this.value to insure we are setting a proper range
42765
- if (dateFormatter$1$1.stringToDateInstance(newDate) >= this.valueObject) {
42765
+ if (dateFormatter$1.stringToDateInstance(newDate) >= this.valueObject) {
42766
42766
  onEndValue = true;
42767
42767
  }
42768
42768
  } else if (this.valueObject && this.valueEndObject) {
42769
42769
  // both dateTo and dateFrom are valid, then reset dateEnd
42770
+ // set input's value as the callback restores this.valueEnd to the old value
42770
42771
  this.inputList[1].value = undefined;
42771
42772
  }
42772
42773
  }
@@ -42886,7 +42887,7 @@ class AuroDatePicker extends AuroElement$6 {
42886
42887
  if (changedProperties.has('value')) {
42887
42888
 
42888
42889
  // Change the calendar focus to the first valid date value only the first time the value is set
42889
- if (!this.calendarFocusDate && dateFormatter$1$1.isValidDate(this.value)) {
42890
+ if (!this.calendarFocusDate && dateFormatter$1.isValidDate(this.value)) {
42890
42891
  if (!this.dropdown.isPopoverVisible) {
42891
42892
  this.calendarFocusDate = this.value;
42892
42893
 
@@ -42899,7 +42900,7 @@ class AuroDatePicker extends AuroElement$6 {
42899
42900
  this.cellClickActive = false;
42900
42901
  }
42901
42902
 
42902
- if (this.value && dateFormatter$1$1.isValidDate(this.value)) {
42903
+ if (this.value && dateFormatter$1.isValidDate(this.value)) {
42903
42904
  this.calendar.dateFrom = this.convertToWcValidTime(this.valueObject);
42904
42905
  this.calendarRenderUtil.updateCentralDate(this, this.valueObject);
42905
42906
  } else {
@@ -43000,7 +43001,7 @@ class AuroDatePicker extends AuroElement$6 {
43000
43001
 
43001
43002
  // When there is no focusDate and no value, set the focusDate to the minDate
43002
43003
  const nothingSet = !this.calendarFocusDate && !this.value;
43003
- const earlierThanMinDate = this.calendarFocusDate && dateFormatter$1$1.isValidDate(this.calendarFocusDate) && this.calendarFocusDateObject < this.minDateObject;
43004
+ const earlierThanMinDate = this.calendarFocusDate && dateFormatter$1.isValidDate(this.calendarFocusDate) && this.calendarFocusDateObject < this.minDateObject;
43004
43005
 
43005
43006
  if (nothingSet || earlierThanMinDate) {
43006
43007
  this.calendarFocusDate = this.minDate;
@@ -43013,7 +43014,7 @@ class AuroDatePicker extends AuroElement$6 {
43013
43014
  // This resets the datepicker when the maxDate is set to a new value that is
43014
43015
  // an earlier date than the current value date
43015
43016
  if (changedProperties.has('maxDate')) {
43016
- if (this.maxDate && dateFormatter$1$1.isValidDate(this.maxDate)) {
43017
+ if (this.maxDate && dateFormatter$1.isValidDate(this.maxDate)) {
43017
43018
  const maxDateMonth = this.maxDateObject.getMonth() + 1;
43018
43019
  const maxDateYear = this.maxDateObject.getFullYear();
43019
43020
 
@@ -43259,7 +43260,7 @@ class AuroDatePicker extends AuroElement$6 {
43259
43260
  return u$c`
43260
43261
  <div>
43261
43262
  <div class="${e$3(displayTextClasses)}">
43262
- ${dateValue && dateFormatter$1$1.isValidDate(dateValue)
43263
+ ${dateValue && dateFormatter$1.isValidDate(dateValue)
43263
43264
  ? this.formatShortDate(dateValue)
43264
43265
  : undefined
43265
43266
  }
@@ -47426,7 +47427,7 @@ let AuroHelpText$7 = class AuroHelpText extends i$4 {
47426
47427
  }
47427
47428
  };
47428
47429
 
47429
- var formkitVersion$7 = '202605271728';
47430
+ var formkitVersion$7 = '202605271820';
47430
47431
 
47431
47432
  let AuroElement$5 = class AuroElement extends i$4 {
47432
47433
  static get properties() {
@@ -48814,237 +48815,6 @@ let p$2$2 = class p{registerComponent(t,a){customElements.get(t)||customElements
48814
48815
 
48815
48816
  var iconVersion$1$2 = '9.1.2';
48816
48817
 
48817
- /**
48818
- * @description Splits a date string into its parts according to the provided format. Does NOT validate that the result is a real calendar date — use `parseDate` when validation is required.
48819
- * @param {string} dateStr - Date string to parse.
48820
- * @param {string} format - Date format to parse.
48821
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
48822
- */
48823
- function getDateParts$5(dateStr, format) {
48824
- if (!dateStr) {
48825
- return undefined;
48826
- }
48827
-
48828
- const formatSeparatorMatch = format.match(/[/.-]/);
48829
- let valueParts;
48830
- let formatParts;
48831
-
48832
- if (formatSeparatorMatch) {
48833
- const separator = formatSeparatorMatch[0];
48834
- valueParts = dateStr.split(separator);
48835
- formatParts = format.split(separator);
48836
- } else {
48837
- if (dateStr.match(/[/.-]/)) {
48838
- throw new Error(
48839
- "AuroDatepickerUtilities | parseDate: Date string has no separators",
48840
- );
48841
- }
48842
-
48843
- if (dateStr.length !== format.length) {
48844
- throw new Error(
48845
- "AuroDatepickerUtilities | parseDate: Date string and format length do not match",
48846
- );
48847
- }
48848
-
48849
- valueParts = [dateStr];
48850
- formatParts = [format];
48851
- }
48852
-
48853
- if (valueParts.length !== formatParts.length) {
48854
- throw new Error(
48855
- `AuroDatepickerUtilities | parseDate: Date string and format do not match : ${dateStr} vs ${format}`,
48856
- );
48857
- }
48858
-
48859
- const result = formatParts.reduce((acc, part, index) => {
48860
- const value = valueParts[index];
48861
-
48862
- if (/m/iu.test(part) && part.length === value.length) {
48863
- acc.month = value;
48864
- } else if (/d/iu.test(part) && part.length === value.length) {
48865
- acc.day = value;
48866
- } else if (/y/iu.test(part) && part.length === value.length) {
48867
- acc.year = value;
48868
- }
48869
-
48870
- return acc;
48871
- }, {});
48872
-
48873
- if (!result.month && !result.day && !result.year) {
48874
- throw new Error(
48875
- "AuroDatepickerUtilities | parseDate: Unable to parse date string",
48876
- );
48877
- }
48878
-
48879
- return result;
48880
- }
48881
-
48882
- function isCalendarDate$5(year, month, day) {
48883
- let yearNumber = Number(year);
48884
- const monthNumber = Number(month);
48885
- const dayNumber = Number(day);
48886
-
48887
- if (
48888
- !Number.isInteger(yearNumber) ||
48889
- !Number.isInteger(monthNumber) ||
48890
- !Number.isInteger(dayNumber)
48891
- ) {
48892
- return false;
48893
- }
48894
-
48895
- // Handle 2-digit years by converting them to 4-digit years based on a cutoff. This allows for parsing of 2-digit year formats while still validating the resulting date.
48896
- if (yearNumber < 100 && yearNumber >= 50) {
48897
- yearNumber += 1900;
48898
- } else if (yearNumber < 50) {
48899
- yearNumber += 2000;
48900
- }
48901
-
48902
- const stringified = `${String(yearNumber).padStart(4, "0")}-${String(monthNumber).padStart(2, "0")}-${String(dayNumber).padStart(2, "0")}`;
48903
- const date = new Date(stringified.replace(/[.-]/g, "/"));
48904
-
48905
- return (
48906
- !Number.isNaN(date.getTime()) && toISOFormatString$5(date) === stringified
48907
- );
48908
- }
48909
-
48910
- /**
48911
- * @description Parses a date string into its components and validates that the result is a real calendar date. Use `getDateParts` instead when raw splitting without validation is needed (e.g. for in-progress input).
48912
- *
48913
- * Partial formats are supported: components absent from `format` default to `year → "0"`,
48914
- * `month → "01"`, `day → "01"` for calendar validation only. The returned object contains
48915
- * only the fields actually present in the format string — missing fields are never injected.
48916
- * @param {string} dateStr - Date string to parse.
48917
- * @param {string} format - Date format to parse.
48918
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
48919
- * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
48920
- */
48921
- function parseDate$5(dateStr, format = "mm/dd/yyyy") {
48922
- if (!dateStr || !format) {
48923
- return undefined;
48924
- }
48925
- const result = getDateParts$5(dateStr.trim(), format);
48926
-
48927
- if (!result) {
48928
- return undefined;
48929
- }
48930
-
48931
- const lowerFormat = format.toLowerCase();
48932
- const year = lowerFormat.includes("yy") ? result.year : "0";
48933
- const month = lowerFormat.includes("mm") ? result.month : "01";
48934
- const day = lowerFormat.includes("dd") ? result.day : "01";
48935
-
48936
- if (isCalendarDate$5(year, month, day)) {
48937
- return result;
48938
- }
48939
-
48940
- throw new Error(
48941
- `AuroDatepickerUtilities | parseDate: Date string is not a valid date ${JSON.stringify(result)} with format ${format}`,
48942
- );
48943
- }
48944
-
48945
- /**
48946
- * Convert a date object to string format.
48947
- * @param {Object} date - Date to convert to string.
48948
- * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
48949
- * @returns {String} Returns the date as a string.
48950
- */
48951
- function getDateAsString$5(date, locale = undefined) {
48952
- return date.toLocaleDateString(locale, {
48953
- year: "numeric",
48954
- month: "2-digit",
48955
- day: "2-digit",
48956
- });
48957
- }
48958
-
48959
- /**
48960
- * Converts a date string to a North American date format.
48961
- * @param {String} dateStr - Date to validate.
48962
- * @param {String} format - Date format to validate against.
48963
- * @returns {String}
48964
- */
48965
- function toNorthAmericanFormat$5(dateStr, format) {
48966
- if (format === "mm/dd/yyyy") {
48967
- return dateStr;
48968
- }
48969
-
48970
- const parsedDate = parseDate$5(dateStr, format);
48971
-
48972
- if (!parsedDate) {
48973
- throw new Error(
48974
- "AuroDatepickerUtilities | toNorthAmericanFormat: Unable to parse date string",
48975
- );
48976
- }
48977
-
48978
- const { month, day, year } = parsedDate;
48979
-
48980
- return [month, day, year].filter(Boolean).join("/");
48981
- }
48982
-
48983
- /**
48984
- * Validates that a date string matches the provided format and represents a real calendar date.
48985
- *
48986
- * @param {string} dateStr - Date string to validate.
48987
- * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
48988
- * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
48989
- */
48990
- function isValidDate$5(dateStr, format = "yyyy-mm-dd") {
48991
- try {
48992
- if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
48993
- return false;
48994
- }
48995
-
48996
- if (parseDate$5(dateStr, format)) {
48997
- return true;
48998
- }
48999
- } catch (error) {
49000
- return false;
49001
- }
49002
- return false;
49003
- }
49004
-
49005
- /**
49006
- * Converts a JavaScript Date instance to a simple ISO-like date string. This returns only the calendar date portion without any time or timezone information.
49007
- *
49008
- * @param {Date} date - Date instance to convert to an ISO-like string.
49009
- * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
49010
- * @throws {Error} Throws an error when the input is not a valid Date instance.
49011
- */
49012
- function toISOFormatString$5(date) {
49013
- if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
49014
- throw new Error(
49015
- "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
49016
- );
49017
- }
49018
- return `${String(date.getFullYear()).padStart(4, "0")}-${String(date.getMonth() + 1).padStart(2, "0")}-${String(date.getDate()).padStart(2, "0")}`;
49019
- }
49020
-
49021
- /**
49022
- * Converts a date string into a JavaScript Date instance. This method supports ISO formatted strings and other formats that can be parsed by the formatter.
49023
- *
49024
- * @param {String} dateStr - Date string to convert into a Date object.
49025
- * @param {String} format - Date format used to parse the string when it is not in ISO format.
49026
- * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
49027
- * @throws {Error} Throws when parsing fails for non-ISO string input.
49028
- */
49029
- function stringToDateInstance$5(dateStr, format = "yyyy-mm-dd") {
49030
- if (typeof dateStr !== "string") {
49031
- return null;
49032
- }
49033
-
49034
- const { month, day, year } = parseDate$5(dateStr, format);
49035
- return new Date(`${year}/${month}/${day}`);
49036
- }
49037
-
49038
- const dateFormatter$5 = {
49039
- parseDate: parseDate$5,
49040
- getDateParts: getDateParts$5,
49041
- getDateAsString: getDateAsString$5,
49042
- toNorthAmericanFormat: toNorthAmericanFormat$5,
49043
- isValidDate: isValidDate$5,
49044
- toISOFormatString: toISOFormatString$5,
49045
- stringToDateInstance: stringToDateInstance$5,
49046
- };
49047
-
49048
48818
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
49049
48819
  // See LICENSE in the project root for license information.
49050
48820
 
@@ -49266,7 +49036,7 @@ let AuroFormValidation$5 = class AuroFormValidation {
49266
49036
  }
49267
49037
 
49268
49038
  // Validate that the date passed was the correct format and is a valid date
49269
- if (elem.value && !dateFormatter$5.isValidDate(elem.inputElement.value, elem.format)) {
49039
+ if (elem.value && !elem.valueObject) {
49270
49040
  elem.validity = 'patternMismatch';
49271
49041
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
49272
49042
  return;
@@ -49836,7 +49606,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$4 {
49836
49606
  }
49837
49607
  };
49838
49608
 
49839
- var formkitVersion$6 = '202605271728';
49609
+ var formkitVersion$6 = '202605271820';
49840
49610
 
49841
49611
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
49842
49612
  // See LICENSE in the project root for license information.
@@ -52115,237 +51885,6 @@ var styleCss$1$5 = i$7`:host{display:block;padding-bottom:var(--ds-size-150, 0.7
52115
51885
 
52116
51886
  var colorCss$1$5 = i$7`:host legend{color:var(--ds-auro-radio-group-label-color)}:host([disabled]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
52117
51887
 
52118
- /**
52119
- * @description Splits a date string into its parts according to the provided format. Does NOT validate that the result is a real calendar date — use `parseDate` when validation is required.
52120
- * @param {string} dateStr - Date string to parse.
52121
- * @param {string} format - Date format to parse.
52122
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
52123
- */
52124
- function getDateParts$4(dateStr, format) {
52125
- if (!dateStr) {
52126
- return undefined;
52127
- }
52128
-
52129
- const formatSeparatorMatch = format.match(/[/.-]/);
52130
- let valueParts;
52131
- let formatParts;
52132
-
52133
- if (formatSeparatorMatch) {
52134
- const separator = formatSeparatorMatch[0];
52135
- valueParts = dateStr.split(separator);
52136
- formatParts = format.split(separator);
52137
- } else {
52138
- if (dateStr.match(/[/.-]/)) {
52139
- throw new Error(
52140
- "AuroDatepickerUtilities | parseDate: Date string has no separators",
52141
- );
52142
- }
52143
-
52144
- if (dateStr.length !== format.length) {
52145
- throw new Error(
52146
- "AuroDatepickerUtilities | parseDate: Date string and format length do not match",
52147
- );
52148
- }
52149
-
52150
- valueParts = [dateStr];
52151
- formatParts = [format];
52152
- }
52153
-
52154
- if (valueParts.length !== formatParts.length) {
52155
- throw new Error(
52156
- `AuroDatepickerUtilities | parseDate: Date string and format do not match : ${dateStr} vs ${format}`,
52157
- );
52158
- }
52159
-
52160
- const result = formatParts.reduce((acc, part, index) => {
52161
- const value = valueParts[index];
52162
-
52163
- if (/m/iu.test(part) && part.length === value.length) {
52164
- acc.month = value;
52165
- } else if (/d/iu.test(part) && part.length === value.length) {
52166
- acc.day = value;
52167
- } else if (/y/iu.test(part) && part.length === value.length) {
52168
- acc.year = value;
52169
- }
52170
-
52171
- return acc;
52172
- }, {});
52173
-
52174
- if (!result.month && !result.day && !result.year) {
52175
- throw new Error(
52176
- "AuroDatepickerUtilities | parseDate: Unable to parse date string",
52177
- );
52178
- }
52179
-
52180
- return result;
52181
- }
52182
-
52183
- function isCalendarDate$4(year, month, day) {
52184
- let yearNumber = Number(year);
52185
- const monthNumber = Number(month);
52186
- const dayNumber = Number(day);
52187
-
52188
- if (
52189
- !Number.isInteger(yearNumber) ||
52190
- !Number.isInteger(monthNumber) ||
52191
- !Number.isInteger(dayNumber)
52192
- ) {
52193
- return false;
52194
- }
52195
-
52196
- // Handle 2-digit years by converting them to 4-digit years based on a cutoff. This allows for parsing of 2-digit year formats while still validating the resulting date.
52197
- if (yearNumber < 100 && yearNumber >= 50) {
52198
- yearNumber += 1900;
52199
- } else if (yearNumber < 50) {
52200
- yearNumber += 2000;
52201
- }
52202
-
52203
- const stringified = `${String(yearNumber).padStart(4, "0")}-${String(monthNumber).padStart(2, "0")}-${String(dayNumber).padStart(2, "0")}`;
52204
- const date = new Date(stringified.replace(/[.-]/g, "/"));
52205
-
52206
- return (
52207
- !Number.isNaN(date.getTime()) && toISOFormatString$4(date) === stringified
52208
- );
52209
- }
52210
-
52211
- /**
52212
- * @description Parses a date string into its components and validates that the result is a real calendar date. Use `getDateParts` instead when raw splitting without validation is needed (e.g. for in-progress input).
52213
- *
52214
- * Partial formats are supported: components absent from `format` default to `year → "0"`,
52215
- * `month → "01"`, `day → "01"` for calendar validation only. The returned object contains
52216
- * only the fields actually present in the format string — missing fields are never injected.
52217
- * @param {string} dateStr - Date string to parse.
52218
- * @param {string} format - Date format to parse.
52219
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
52220
- * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
52221
- */
52222
- function parseDate$4(dateStr, format = "mm/dd/yyyy") {
52223
- if (!dateStr || !format) {
52224
- return undefined;
52225
- }
52226
- const result = getDateParts$4(dateStr.trim(), format);
52227
-
52228
- if (!result) {
52229
- return undefined;
52230
- }
52231
-
52232
- const lowerFormat = format.toLowerCase();
52233
- const year = lowerFormat.includes("yy") ? result.year : "0";
52234
- const month = lowerFormat.includes("mm") ? result.month : "01";
52235
- const day = lowerFormat.includes("dd") ? result.day : "01";
52236
-
52237
- if (isCalendarDate$4(year, month, day)) {
52238
- return result;
52239
- }
52240
-
52241
- throw new Error(
52242
- `AuroDatepickerUtilities | parseDate: Date string is not a valid date ${JSON.stringify(result)} with format ${format}`,
52243
- );
52244
- }
52245
-
52246
- /**
52247
- * Convert a date object to string format.
52248
- * @param {Object} date - Date to convert to string.
52249
- * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
52250
- * @returns {String} Returns the date as a string.
52251
- */
52252
- function getDateAsString$4(date, locale = undefined) {
52253
- return date.toLocaleDateString(locale, {
52254
- year: "numeric",
52255
- month: "2-digit",
52256
- day: "2-digit",
52257
- });
52258
- }
52259
-
52260
- /**
52261
- * Converts a date string to a North American date format.
52262
- * @param {String} dateStr - Date to validate.
52263
- * @param {String} format - Date format to validate against.
52264
- * @returns {String}
52265
- */
52266
- function toNorthAmericanFormat$4(dateStr, format) {
52267
- if (format === "mm/dd/yyyy") {
52268
- return dateStr;
52269
- }
52270
-
52271
- const parsedDate = parseDate$4(dateStr, format);
52272
-
52273
- if (!parsedDate) {
52274
- throw new Error(
52275
- "AuroDatepickerUtilities | toNorthAmericanFormat: Unable to parse date string",
52276
- );
52277
- }
52278
-
52279
- const { month, day, year } = parsedDate;
52280
-
52281
- return [month, day, year].filter(Boolean).join("/");
52282
- }
52283
-
52284
- /**
52285
- * Validates that a date string matches the provided format and represents a real calendar date.
52286
- *
52287
- * @param {string} dateStr - Date string to validate.
52288
- * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
52289
- * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
52290
- */
52291
- function isValidDate$4(dateStr, format = "yyyy-mm-dd") {
52292
- try {
52293
- if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
52294
- return false;
52295
- }
52296
-
52297
- if (parseDate$4(dateStr, format)) {
52298
- return true;
52299
- }
52300
- } catch (error) {
52301
- return false;
52302
- }
52303
- return false;
52304
- }
52305
-
52306
- /**
52307
- * Converts a JavaScript Date instance to a simple ISO-like date string. This returns only the calendar date portion without any time or timezone information.
52308
- *
52309
- * @param {Date} date - Date instance to convert to an ISO-like string.
52310
- * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
52311
- * @throws {Error} Throws an error when the input is not a valid Date instance.
52312
- */
52313
- function toISOFormatString$4(date) {
52314
- if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
52315
- throw new Error(
52316
- "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
52317
- );
52318
- }
52319
- return `${String(date.getFullYear()).padStart(4, "0")}-${String(date.getMonth() + 1).padStart(2, "0")}-${String(date.getDate()).padStart(2, "0")}`;
52320
- }
52321
-
52322
- /**
52323
- * Converts a date string into a JavaScript Date instance. This method supports ISO formatted strings and other formats that can be parsed by the formatter.
52324
- *
52325
- * @param {String} dateStr - Date string to convert into a Date object.
52326
- * @param {String} format - Date format used to parse the string when it is not in ISO format.
52327
- * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
52328
- * @throws {Error} Throws when parsing fails for non-ISO string input.
52329
- */
52330
- function stringToDateInstance$4(dateStr, format = "yyyy-mm-dd") {
52331
- if (typeof dateStr !== "string") {
52332
- return null;
52333
- }
52334
-
52335
- const { month, day, year } = parseDate$4(dateStr, format);
52336
- return new Date(`${year}/${month}/${day}`);
52337
- }
52338
-
52339
- const dateFormatter$4 = {
52340
- parseDate: parseDate$4,
52341
- getDateParts: getDateParts$4,
52342
- getDateAsString: getDateAsString$4,
52343
- toNorthAmericanFormat: toNorthAmericanFormat$4,
52344
- isValidDate: isValidDate$4,
52345
- toISOFormatString: toISOFormatString$4,
52346
- stringToDateInstance: stringToDateInstance$4,
52347
- };
52348
-
52349
51888
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
52350
51889
  // See LICENSE in the project root for license information.
52351
51890
 
@@ -52567,7 +52106,7 @@ let AuroFormValidation$4 = class AuroFormValidation {
52567
52106
  }
52568
52107
 
52569
52108
  // Validate that the date passed was the correct format and is a valid date
52570
- if (elem.value && !dateFormatter$4.isValidDate(elem.inputElement.value, elem.format)) {
52109
+ if (elem.value && !elem.valueObject) {
52571
52110
  elem.validity = 'patternMismatch';
52572
52111
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
52573
52112
  return;
@@ -53063,7 +52602,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$4 {
53063
52602
  }
53064
52603
  };
53065
52604
 
53066
- var formkitVersion$5 = '202605271728';
52605
+ var formkitVersion$5 = '202605271820';
53067
52606
 
53068
52607
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
53069
52608
  // See LICENSE in the project root for license information.
@@ -54092,237 +53631,6 @@ class AuroCheckbox extends i$4 {
54092
53631
  }
54093
53632
  }
54094
53633
 
54095
- /**
54096
- * @description Splits a date string into its parts according to the provided format. Does NOT validate that the result is a real calendar date — use `parseDate` when validation is required.
54097
- * @param {string} dateStr - Date string to parse.
54098
- * @param {string} format - Date format to parse.
54099
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
54100
- */
54101
- function getDateParts$3(dateStr, format) {
54102
- if (!dateStr) {
54103
- return undefined;
54104
- }
54105
-
54106
- const formatSeparatorMatch = format.match(/[/.-]/);
54107
- let valueParts;
54108
- let formatParts;
54109
-
54110
- if (formatSeparatorMatch) {
54111
- const separator = formatSeparatorMatch[0];
54112
- valueParts = dateStr.split(separator);
54113
- formatParts = format.split(separator);
54114
- } else {
54115
- if (dateStr.match(/[/.-]/)) {
54116
- throw new Error(
54117
- "AuroDatepickerUtilities | parseDate: Date string has no separators",
54118
- );
54119
- }
54120
-
54121
- if (dateStr.length !== format.length) {
54122
- throw new Error(
54123
- "AuroDatepickerUtilities | parseDate: Date string and format length do not match",
54124
- );
54125
- }
54126
-
54127
- valueParts = [dateStr];
54128
- formatParts = [format];
54129
- }
54130
-
54131
- if (valueParts.length !== formatParts.length) {
54132
- throw new Error(
54133
- `AuroDatepickerUtilities | parseDate: Date string and format do not match : ${dateStr} vs ${format}`,
54134
- );
54135
- }
54136
-
54137
- const result = formatParts.reduce((acc, part, index) => {
54138
- const value = valueParts[index];
54139
-
54140
- if (/m/iu.test(part) && part.length === value.length) {
54141
- acc.month = value;
54142
- } else if (/d/iu.test(part) && part.length === value.length) {
54143
- acc.day = value;
54144
- } else if (/y/iu.test(part) && part.length === value.length) {
54145
- acc.year = value;
54146
- }
54147
-
54148
- return acc;
54149
- }, {});
54150
-
54151
- if (!result.month && !result.day && !result.year) {
54152
- throw new Error(
54153
- "AuroDatepickerUtilities | parseDate: Unable to parse date string",
54154
- );
54155
- }
54156
-
54157
- return result;
54158
- }
54159
-
54160
- function isCalendarDate$3(year, month, day) {
54161
- let yearNumber = Number(year);
54162
- const monthNumber = Number(month);
54163
- const dayNumber = Number(day);
54164
-
54165
- if (
54166
- !Number.isInteger(yearNumber) ||
54167
- !Number.isInteger(monthNumber) ||
54168
- !Number.isInteger(dayNumber)
54169
- ) {
54170
- return false;
54171
- }
54172
-
54173
- // Handle 2-digit years by converting them to 4-digit years based on a cutoff. This allows for parsing of 2-digit year formats while still validating the resulting date.
54174
- if (yearNumber < 100 && yearNumber >= 50) {
54175
- yearNumber += 1900;
54176
- } else if (yearNumber < 50) {
54177
- yearNumber += 2000;
54178
- }
54179
-
54180
- const stringified = `${String(yearNumber).padStart(4, "0")}-${String(monthNumber).padStart(2, "0")}-${String(dayNumber).padStart(2, "0")}`;
54181
- const date = new Date(stringified.replace(/[.-]/g, "/"));
54182
-
54183
- return (
54184
- !Number.isNaN(date.getTime()) && toISOFormatString$3(date) === stringified
54185
- );
54186
- }
54187
-
54188
- /**
54189
- * @description Parses a date string into its components and validates that the result is a real calendar date. Use `getDateParts` instead when raw splitting without validation is needed (e.g. for in-progress input).
54190
- *
54191
- * Partial formats are supported: components absent from `format` default to `year → "0"`,
54192
- * `month → "01"`, `day → "01"` for calendar validation only. The returned object contains
54193
- * only the fields actually present in the format string — missing fields are never injected.
54194
- * @param {string} dateStr - Date string to parse.
54195
- * @param {string} format - Date format to parse.
54196
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
54197
- * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
54198
- */
54199
- function parseDate$3(dateStr, format = "mm/dd/yyyy") {
54200
- if (!dateStr || !format) {
54201
- return undefined;
54202
- }
54203
- const result = getDateParts$3(dateStr.trim(), format);
54204
-
54205
- if (!result) {
54206
- return undefined;
54207
- }
54208
-
54209
- const lowerFormat = format.toLowerCase();
54210
- const year = lowerFormat.includes("yy") ? result.year : "0";
54211
- const month = lowerFormat.includes("mm") ? result.month : "01";
54212
- const day = lowerFormat.includes("dd") ? result.day : "01";
54213
-
54214
- if (isCalendarDate$3(year, month, day)) {
54215
- return result;
54216
- }
54217
-
54218
- throw new Error(
54219
- `AuroDatepickerUtilities | parseDate: Date string is not a valid date ${JSON.stringify(result)} with format ${format}`,
54220
- );
54221
- }
54222
-
54223
- /**
54224
- * Convert a date object to string format.
54225
- * @param {Object} date - Date to convert to string.
54226
- * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
54227
- * @returns {String} Returns the date as a string.
54228
- */
54229
- function getDateAsString$3(date, locale = undefined) {
54230
- return date.toLocaleDateString(locale, {
54231
- year: "numeric",
54232
- month: "2-digit",
54233
- day: "2-digit",
54234
- });
54235
- }
54236
-
54237
- /**
54238
- * Converts a date string to a North American date format.
54239
- * @param {String} dateStr - Date to validate.
54240
- * @param {String} format - Date format to validate against.
54241
- * @returns {String}
54242
- */
54243
- function toNorthAmericanFormat$3(dateStr, format) {
54244
- if (format === "mm/dd/yyyy") {
54245
- return dateStr;
54246
- }
54247
-
54248
- const parsedDate = parseDate$3(dateStr, format);
54249
-
54250
- if (!parsedDate) {
54251
- throw new Error(
54252
- "AuroDatepickerUtilities | toNorthAmericanFormat: Unable to parse date string",
54253
- );
54254
- }
54255
-
54256
- const { month, day, year } = parsedDate;
54257
-
54258
- return [month, day, year].filter(Boolean).join("/");
54259
- }
54260
-
54261
- /**
54262
- * Validates that a date string matches the provided format and represents a real calendar date.
54263
- *
54264
- * @param {string} dateStr - Date string to validate.
54265
- * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
54266
- * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
54267
- */
54268
- function isValidDate$3(dateStr, format = "yyyy-mm-dd") {
54269
- try {
54270
- if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
54271
- return false;
54272
- }
54273
-
54274
- if (parseDate$3(dateStr, format)) {
54275
- return true;
54276
- }
54277
- } catch (error) {
54278
- return false;
54279
- }
54280
- return false;
54281
- }
54282
-
54283
- /**
54284
- * Converts a JavaScript Date instance to a simple ISO-like date string. This returns only the calendar date portion without any time or timezone information.
54285
- *
54286
- * @param {Date} date - Date instance to convert to an ISO-like string.
54287
- * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
54288
- * @throws {Error} Throws an error when the input is not a valid Date instance.
54289
- */
54290
- function toISOFormatString$3(date) {
54291
- if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
54292
- throw new Error(
54293
- "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
54294
- );
54295
- }
54296
- return `${String(date.getFullYear()).padStart(4, "0")}-${String(date.getMonth() + 1).padStart(2, "0")}-${String(date.getDate()).padStart(2, "0")}`;
54297
- }
54298
-
54299
- /**
54300
- * Converts a date string into a JavaScript Date instance. This method supports ISO formatted strings and other formats that can be parsed by the formatter.
54301
- *
54302
- * @param {String} dateStr - Date string to convert into a Date object.
54303
- * @param {String} format - Date format used to parse the string when it is not in ISO format.
54304
- * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
54305
- * @throws {Error} Throws when parsing fails for non-ISO string input.
54306
- */
54307
- function stringToDateInstance$3(dateStr, format = "yyyy-mm-dd") {
54308
- if (typeof dateStr !== "string") {
54309
- return null;
54310
- }
54311
-
54312
- const { month, day, year } = parseDate$3(dateStr, format);
54313
- return new Date(`${year}/${month}/${day}`);
54314
- }
54315
-
54316
- const dateFormatter$3 = {
54317
- parseDate: parseDate$3,
54318
- getDateParts: getDateParts$3,
54319
- getDateAsString: getDateAsString$3,
54320
- toNorthAmericanFormat: toNorthAmericanFormat$3,
54321
- isValidDate: isValidDate$3,
54322
- toISOFormatString: toISOFormatString$3,
54323
- stringToDateInstance: stringToDateInstance$3,
54324
- };
54325
-
54326
53634
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
54327
53635
  // See LICENSE in the project root for license information.
54328
53636
 
@@ -54544,7 +53852,7 @@ let AuroFormValidation$3 = class AuroFormValidation {
54544
53852
  }
54545
53853
 
54546
53854
  // Validate that the date passed was the correct format and is a valid date
54547
- if (elem.value && !dateFormatter$3.isValidDate(elem.inputElement.value, elem.format)) {
53855
+ if (elem.value && !elem.valueObject) {
54548
53856
  elem.validity = 'patternMismatch';
54549
53857
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
54550
53858
  return;
@@ -55044,7 +54352,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$4 {
55044
54352
  }
55045
54353
  };
55046
54354
 
55047
- var formkitVersion$4 = '202605271728';
54355
+ var formkitVersion$4 = '202605271820';
55048
54356
 
55049
54357
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
55050
54358
  // See LICENSE in the project root for license information.
@@ -55583,237 +54891,6 @@ let AuroLibraryRuntimeUtils$4$1 = class AuroLibraryRuntimeUtils {
55583
54891
  }
55584
54892
  };
55585
54893
 
55586
- /**
55587
- * @description Splits a date string into its parts according to the provided format. Does NOT validate that the result is a real calendar date — use `parseDate` when validation is required.
55588
- * @param {string} dateStr - Date string to parse.
55589
- * @param {string} format - Date format to parse.
55590
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
55591
- */
55592
- function getDateParts$1(dateStr, format) {
55593
- if (!dateStr) {
55594
- return undefined;
55595
- }
55596
-
55597
- const formatSeparatorMatch = format.match(/[/.-]/);
55598
- let valueParts;
55599
- let formatParts;
55600
-
55601
- if (formatSeparatorMatch) {
55602
- const separator = formatSeparatorMatch[0];
55603
- valueParts = dateStr.split(separator);
55604
- formatParts = format.split(separator);
55605
- } else {
55606
- if (dateStr.match(/[/.-]/)) {
55607
- throw new Error(
55608
- "AuroDatepickerUtilities | parseDate: Date string has no separators",
55609
- );
55610
- }
55611
-
55612
- if (dateStr.length !== format.length) {
55613
- throw new Error(
55614
- "AuroDatepickerUtilities | parseDate: Date string and format length do not match",
55615
- );
55616
- }
55617
-
55618
- valueParts = [dateStr];
55619
- formatParts = [format];
55620
- }
55621
-
55622
- if (valueParts.length !== formatParts.length) {
55623
- throw new Error(
55624
- `AuroDatepickerUtilities | parseDate: Date string and format do not match : ${dateStr} vs ${format}`,
55625
- );
55626
- }
55627
-
55628
- const result = formatParts.reduce((acc, part, index) => {
55629
- const value = valueParts[index];
55630
-
55631
- if (/m/iu.test(part) && part.length === value.length) {
55632
- acc.month = value;
55633
- } else if (/d/iu.test(part) && part.length === value.length) {
55634
- acc.day = value;
55635
- } else if (/y/iu.test(part) && part.length === value.length) {
55636
- acc.year = value;
55637
- }
55638
-
55639
- return acc;
55640
- }, {});
55641
-
55642
- if (!result.month && !result.day && !result.year) {
55643
- throw new Error(
55644
- "AuroDatepickerUtilities | parseDate: Unable to parse date string",
55645
- );
55646
- }
55647
-
55648
- return result;
55649
- }
55650
-
55651
- function isCalendarDate$1(year, month, day) {
55652
- let yearNumber = Number(year);
55653
- const monthNumber = Number(month);
55654
- const dayNumber = Number(day);
55655
-
55656
- if (
55657
- !Number.isInteger(yearNumber) ||
55658
- !Number.isInteger(monthNumber) ||
55659
- !Number.isInteger(dayNumber)
55660
- ) {
55661
- return false;
55662
- }
55663
-
55664
- // Handle 2-digit years by converting them to 4-digit years based on a cutoff. This allows for parsing of 2-digit year formats while still validating the resulting date.
55665
- if (yearNumber < 100 && yearNumber >= 50) {
55666
- yearNumber += 1900;
55667
- } else if (yearNumber < 50) {
55668
- yearNumber += 2000;
55669
- }
55670
-
55671
- const stringified = `${String(yearNumber).padStart(4, "0")}-${String(monthNumber).padStart(2, "0")}-${String(dayNumber).padStart(2, "0")}`;
55672
- const date = new Date(stringified.replace(/[.-]/g, "/"));
55673
-
55674
- return (
55675
- !Number.isNaN(date.getTime()) && toISOFormatString$1(date) === stringified
55676
- );
55677
- }
55678
-
55679
- /**
55680
- * @description Parses a date string into its components and validates that the result is a real calendar date. Use `getDateParts` instead when raw splitting without validation is needed (e.g. for in-progress input).
55681
- *
55682
- * Partial formats are supported: components absent from `format` default to `year → "0"`,
55683
- * `month → "01"`, `day → "01"` for calendar validation only. The returned object contains
55684
- * only the fields actually present in the format string — missing fields are never injected.
55685
- * @param {string} dateStr - Date string to parse.
55686
- * @param {string} format - Date format to parse.
55687
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
55688
- * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
55689
- */
55690
- function parseDate$1(dateStr, format = "mm/dd/yyyy") {
55691
- if (!dateStr || !format) {
55692
- return undefined;
55693
- }
55694
- const result = getDateParts$1(dateStr.trim(), format);
55695
-
55696
- if (!result) {
55697
- return undefined;
55698
- }
55699
-
55700
- const lowerFormat = format.toLowerCase();
55701
- const year = lowerFormat.includes("yy") ? result.year : "0";
55702
- const month = lowerFormat.includes("mm") ? result.month : "01";
55703
- const day = lowerFormat.includes("dd") ? result.day : "01";
55704
-
55705
- if (isCalendarDate$1(year, month, day)) {
55706
- return result;
55707
- }
55708
-
55709
- throw new Error(
55710
- `AuroDatepickerUtilities | parseDate: Date string is not a valid date ${JSON.stringify(result)} with format ${format}`,
55711
- );
55712
- }
55713
-
55714
- /**
55715
- * Convert a date object to string format.
55716
- * @param {Object} date - Date to convert to string.
55717
- * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
55718
- * @returns {String} Returns the date as a string.
55719
- */
55720
- function getDateAsString$1(date, locale = undefined) {
55721
- return date.toLocaleDateString(locale, {
55722
- year: "numeric",
55723
- month: "2-digit",
55724
- day: "2-digit",
55725
- });
55726
- }
55727
-
55728
- /**
55729
- * Converts a date string to a North American date format.
55730
- * @param {String} dateStr - Date to validate.
55731
- * @param {String} format - Date format to validate against.
55732
- * @returns {String}
55733
- */
55734
- function toNorthAmericanFormat$1(dateStr, format) {
55735
- if (format === "mm/dd/yyyy") {
55736
- return dateStr;
55737
- }
55738
-
55739
- const parsedDate = parseDate$1(dateStr, format);
55740
-
55741
- if (!parsedDate) {
55742
- throw new Error(
55743
- "AuroDatepickerUtilities | toNorthAmericanFormat: Unable to parse date string",
55744
- );
55745
- }
55746
-
55747
- const { month, day, year } = parsedDate;
55748
-
55749
- return [month, day, year].filter(Boolean).join("/");
55750
- }
55751
-
55752
- /**
55753
- * Validates that a date string matches the provided format and represents a real calendar date.
55754
- *
55755
- * @param {string} dateStr - Date string to validate.
55756
- * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
55757
- * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
55758
- */
55759
- function isValidDate$1(dateStr, format = "yyyy-mm-dd") {
55760
- try {
55761
- if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
55762
- return false;
55763
- }
55764
-
55765
- if (parseDate$1(dateStr, format)) {
55766
- return true;
55767
- }
55768
- } catch (error) {
55769
- return false;
55770
- }
55771
- return false;
55772
- }
55773
-
55774
- /**
55775
- * Converts a JavaScript Date instance to a simple ISO-like date string. This returns only the calendar date portion without any time or timezone information.
55776
- *
55777
- * @param {Date} date - Date instance to convert to an ISO-like string.
55778
- * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
55779
- * @throws {Error} Throws an error when the input is not a valid Date instance.
55780
- */
55781
- function toISOFormatString$1(date) {
55782
- if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
55783
- throw new Error(
55784
- "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
55785
- );
55786
- }
55787
- return `${String(date.getFullYear()).padStart(4, "0")}-${String(date.getMonth() + 1).padStart(2, "0")}-${String(date.getDate()).padStart(2, "0")}`;
55788
- }
55789
-
55790
- /**
55791
- * Converts a date string into a JavaScript Date instance. This method supports ISO formatted strings and other formats that can be parsed by the formatter.
55792
- *
55793
- * @param {String} dateStr - Date string to convert into a Date object.
55794
- * @param {String} format - Date format used to parse the string when it is not in ISO format.
55795
- * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
55796
- * @throws {Error} Throws when parsing fails for non-ISO string input.
55797
- */
55798
- function stringToDateInstance$1(dateStr, format = "yyyy-mm-dd") {
55799
- if (typeof dateStr !== "string") {
55800
- return null;
55801
- }
55802
-
55803
- const { month, day, year } = parseDate$1(dateStr, format);
55804
- return new Date(`${year}/${month}/${day}`);
55805
- }
55806
-
55807
- const dateFormatter$1 = {
55808
- parseDate: parseDate$1,
55809
- getDateParts: getDateParts$1,
55810
- getDateAsString: getDateAsString$1,
55811
- toNorthAmericanFormat: toNorthAmericanFormat$1,
55812
- isValidDate: isValidDate$1,
55813
- toISOFormatString: toISOFormatString$1,
55814
- stringToDateInstance: stringToDateInstance$1,
55815
- };
55816
-
55817
54894
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
55818
54895
  // See LICENSE in the project root for license information.
55819
54896
 
@@ -56035,7 +55112,7 @@ let AuroFormValidation$1 = class AuroFormValidation {
56035
55112
  }
56036
55113
 
56037
55114
  // Validate that the date passed was the correct format and is a valid date
56038
- if (elem.value && !dateFormatter$1.isValidDate(elem.inputElement.value, elem.format)) {
55115
+ if (elem.value && !elem.valueObject) {
56039
55116
  elem.validity = 'patternMismatch';
56040
55117
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
56041
55118
  return;
@@ -60473,7 +59550,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
60473
59550
  }
60474
59551
  };
60475
59552
 
60476
- var formkitVersion$2 = '202605271728';
59553
+ var formkitVersion$2 = '202605271820';
60477
59554
 
60478
59555
  let AuroElement$2$1 = class AuroElement extends i$4 {
60479
59556
  static get properties() {
@@ -65361,7 +64438,7 @@ try {
65361
64438
  * @param {string} format - Date format to parse.
65362
64439
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
65363
64440
  */
65364
- function getDateParts$2(dateStr, format) {
64441
+ function getDateParts(dateStr, format) {
65365
64442
  if (!dateStr) {
65366
64443
  return undefined;
65367
64444
  }
@@ -65420,7 +64497,7 @@ function getDateParts$2(dateStr, format) {
65420
64497
  return result;
65421
64498
  }
65422
64499
 
65423
- function isCalendarDate$2(year, month, day) {
64500
+ function isCalendarDate(year, month, day) {
65424
64501
  let yearNumber = Number(year);
65425
64502
  const monthNumber = Number(month);
65426
64503
  const dayNumber = Number(day);
@@ -65444,7 +64521,7 @@ function isCalendarDate$2(year, month, day) {
65444
64521
  const date = new Date(stringified.replace(/[.-]/g, "/"));
65445
64522
 
65446
64523
  return (
65447
- !Number.isNaN(date.getTime()) && toISOFormatString$2(date) === stringified
64524
+ !Number.isNaN(date.getTime()) && toISOFormatString(date) === stringified
65448
64525
  );
65449
64526
  }
65450
64527
 
@@ -65459,11 +64536,11 @@ function isCalendarDate$2(year, month, day) {
65459
64536
  * @returns {{ month?: string, day?: string, year?: string }|undefined}
65460
64537
  * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
65461
64538
  */
65462
- function parseDate$2(dateStr, format = "mm/dd/yyyy") {
64539
+ function parseDate(dateStr, format = "mm/dd/yyyy") {
65463
64540
  if (!dateStr || !format) {
65464
64541
  return undefined;
65465
64542
  }
65466
- const result = getDateParts$2(dateStr.trim(), format);
64543
+ const result = getDateParts(dateStr.trim(), format);
65467
64544
 
65468
64545
  if (!result) {
65469
64546
  return undefined;
@@ -65474,7 +64551,7 @@ function parseDate$2(dateStr, format = "mm/dd/yyyy") {
65474
64551
  const month = lowerFormat.includes("mm") ? result.month : "01";
65475
64552
  const day = lowerFormat.includes("dd") ? result.day : "01";
65476
64553
 
65477
- if (isCalendarDate$2(year, month, day)) {
64554
+ if (isCalendarDate(year, month, day)) {
65478
64555
  return result;
65479
64556
  }
65480
64557
 
@@ -65489,7 +64566,7 @@ function parseDate$2(dateStr, format = "mm/dd/yyyy") {
65489
64566
  * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
65490
64567
  * @returns {String} Returns the date as a string.
65491
64568
  */
65492
- function getDateAsString$2(date, locale = undefined) {
64569
+ function getDateAsString(date, locale = undefined) {
65493
64570
  return date.toLocaleDateString(locale, {
65494
64571
  year: "numeric",
65495
64572
  month: "2-digit",
@@ -65503,12 +64580,12 @@ function getDateAsString$2(date, locale = undefined) {
65503
64580
  * @param {String} format - Date format to validate against.
65504
64581
  * @returns {String}
65505
64582
  */
65506
- function toNorthAmericanFormat$2(dateStr, format) {
64583
+ function toNorthAmericanFormat(dateStr, format) {
65507
64584
  if (format === "mm/dd/yyyy") {
65508
64585
  return dateStr;
65509
64586
  }
65510
64587
 
65511
- const parsedDate = parseDate$2(dateStr, format);
64588
+ const parsedDate = parseDate(dateStr, format);
65512
64589
 
65513
64590
  if (!parsedDate) {
65514
64591
  throw new Error(
@@ -65528,13 +64605,13 @@ function toNorthAmericanFormat$2(dateStr, format) {
65528
64605
  * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
65529
64606
  * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
65530
64607
  */
65531
- function isValidDate$2(dateStr, format = "yyyy-mm-dd") {
64608
+ function isValidDate(dateStr, format = "yyyy-mm-dd") {
65532
64609
  try {
65533
64610
  if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
65534
64611
  return false;
65535
64612
  }
65536
64613
 
65537
- if (parseDate$2(dateStr, format)) {
64614
+ if (parseDate(dateStr, format)) {
65538
64615
  return true;
65539
64616
  }
65540
64617
  } catch (error) {
@@ -65550,7 +64627,7 @@ function isValidDate$2(dateStr, format = "yyyy-mm-dd") {
65550
64627
  * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
65551
64628
  * @throws {Error} Throws an error when the input is not a valid Date instance.
65552
64629
  */
65553
- function toISOFormatString$2(date) {
64630
+ function toISOFormatString(date) {
65554
64631
  if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
65555
64632
  throw new Error(
65556
64633
  "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
@@ -65567,23 +64644,23 @@ function toISOFormatString$2(date) {
65567
64644
  * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
65568
64645
  * @throws {Error} Throws when parsing fails for non-ISO string input.
65569
64646
  */
65570
- function stringToDateInstance$2(dateStr, format = "yyyy-mm-dd") {
64647
+ function stringToDateInstance(dateStr, format = "yyyy-mm-dd") {
65571
64648
  if (typeof dateStr !== "string") {
65572
64649
  return null;
65573
64650
  }
65574
64651
 
65575
- const { month, day, year } = parseDate$2(dateStr, format);
64652
+ const { month, day, year } = parseDate(dateStr, format);
65576
64653
  return new Date(`${year}/${month}/${day}`);
65577
64654
  }
65578
64655
 
65579
- const dateFormatter$2 = {
65580
- parseDate: parseDate$2,
65581
- getDateParts: getDateParts$2,
65582
- getDateAsString: getDateAsString$2,
65583
- toNorthAmericanFormat: toNorthAmericanFormat$2,
65584
- isValidDate: isValidDate$2,
65585
- toISOFormatString: toISOFormatString$2,
65586
- stringToDateInstance: stringToDateInstance$2,
64656
+ const dateFormatter = {
64657
+ parseDate,
64658
+ getDateParts,
64659
+ getDateAsString,
64660
+ toNorthAmericanFormat,
64661
+ isValidDate,
64662
+ toISOFormatString,
64663
+ stringToDateInstance,
65587
64664
  };
65588
64665
 
65589
64666
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
@@ -65890,7 +64967,7 @@ let AuroFormValidation$2 = class AuroFormValidation {
65890
64967
  }
65891
64968
 
65892
64969
  // Validate that the date passed was the correct format and is a valid date
65893
- if (elem.value && !dateFormatter$2.isValidDate(elem.inputElement.value, elem.format)) {
64970
+ if (elem.value && !elem.valueObject) {
65894
64971
  elem.validity = 'patternMismatch';
65895
64972
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
65896
64973
  return;
@@ -71915,7 +70992,7 @@ class AuroInputUtilities {
71915
70992
  return inputValue;
71916
70993
  }
71917
70994
 
71918
- return dateFormatter$2.toISOFormatString(parsedDate);
70995
+ return dateFormatter.toISOFormatString(parsedDate);
71919
70996
  }
71920
70997
 
71921
70998
  /**
@@ -71932,7 +71009,7 @@ class AuroInputUtilities {
71932
71009
  return value;
71933
71010
  }
71934
71011
 
71935
- if (!dateFormatter$2.isValidDate(value)) {
71012
+ if (!dateFormatter.isValidDate(value)) {
71936
71013
  // For ISO-pattern strings that fail range validation (e.g. '2024-99-99'),
71937
71014
  // return '' so inputElement stays empty and format-based validation is not triggered.
71938
71015
  return (/^\d{4}-\d{2}-\d{2}$/u).test(value) ? '' : value;
@@ -72940,7 +72017,7 @@ class BaseInput extends AuroElement$1$1 {
72940
72017
 
72941
72018
  // objectProperty wins over valueProperty when both changed
72942
72019
  if (objectPropertyChanged && this[objectProperty]) {
72943
- this[valueProperty] = dateFormatter$2.toISOFormatString(this[objectProperty]);
72020
+ this[valueProperty] = dateFormatter.toISOFormatString(this[objectProperty]);
72944
72021
  return;
72945
72022
  }
72946
72023
 
@@ -72955,13 +72032,13 @@ class BaseInput extends AuroElement$1$1 {
72955
72032
  valueProperty === 'value' &&
72956
72033
  changedProperties.get('value') === undefined &&
72957
72034
  this[objectProperty] instanceof Date &&
72958
- this[valueProperty] === dateFormatter$2.toISOFormatString(this[objectProperty])
72035
+ this[valueProperty] === dateFormatter.toISOFormatString(this[objectProperty])
72959
72036
  ) {
72960
72037
  return;
72961
72038
  }
72962
72039
 
72963
- if (dateFormatter$2.isValidDate(this[valueProperty])) {
72964
- this.setDateObjectProperty(objectProperty, dateFormatter$2.stringToDateInstance(this[valueProperty]));
72040
+ if (dateFormatter.isValidDate(this[valueProperty])) {
72041
+ this.setDateObjectProperty(objectProperty, dateFormatter.stringToDateInstance(this[valueProperty]));
72965
72042
  } else {
72966
72043
  this.setDateObjectProperty(objectProperty, undefined);
72967
72044
  }
@@ -72994,7 +72071,7 @@ class BaseInput extends AuroElement$1$1 {
72994
72071
  if (
72995
72072
  this.util.isFullDateFormat(this.type, this.format) &&
72996
72073
  this.value &&
72997
- dateFormatter$2.isValidDate(this.value) &&
72074
+ dateFormatter.isValidDate(this.value) &&
72998
72075
  this.valueObject instanceof Date &&
72999
72076
  !Number.isNaN(this.valueObject.getTime()) &&
73000
72077
  typeof maskOptions.format === 'function'
@@ -73724,7 +72801,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$4 {
73724
72801
  }
73725
72802
  };
73726
72803
 
73727
- var formkitVersion$1$1 = '202605271728';
72804
+ var formkitVersion$1$1 = '202605271820';
73728
72805
 
73729
72806
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
73730
72807
  // See LICENSE in the project root for license information.
@@ -74841,7 +73918,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
74841
73918
  }
74842
73919
  };
74843
73920
 
74844
- var formkitVersion$3 = '202605271728';
73921
+ var formkitVersion$3 = '202605271820';
74845
73922
 
74846
73923
  var styleCss$1$3 = i$7`.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}`;
74847
73924
 
@@ -79180,237 +78257,6 @@ var shapeSizeCss$1 = i$7`.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.
79180
78257
 
79181
78258
  var tokensCss$3 = i$7`:host(:not([ondark])),:host(:not([appearance=inverse])){--ds-auro-select-border-color: var(--ds-basic-color-border-bold, #585e67);--ds-auro-select-background-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-select-label-text-color: var(--ds-basic-color-texticon-muted, #676767);--ds-auro-select-placeholder-text-color: var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-select-text-color: var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-select-error-icon-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: transparent}:host([ondark]),:host([appearance=inverse]){--ds-auro-select-border-color: var(--ds-basic-color-border-inverse, #ffffff);--ds-auro-select-background-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-select-label-text-color: var(--ds-basic-color-texticon-inverse-muted, #ccd2db);--ds-auro-select-placeholder-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-select-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-select-error-icon-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: transparent}`;
79182
78259
 
79183
- /**
79184
- * @description Splits a date string into its parts according to the provided format. Does NOT validate that the result is a real calendar date — use `parseDate` when validation is required.
79185
- * @param {string} dateStr - Date string to parse.
79186
- * @param {string} format - Date format to parse.
79187
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
79188
- */
79189
- function getDateParts(dateStr, format) {
79190
- if (!dateStr) {
79191
- return undefined;
79192
- }
79193
-
79194
- const formatSeparatorMatch = format.match(/[/.-]/);
79195
- let valueParts;
79196
- let formatParts;
79197
-
79198
- if (formatSeparatorMatch) {
79199
- const separator = formatSeparatorMatch[0];
79200
- valueParts = dateStr.split(separator);
79201
- formatParts = format.split(separator);
79202
- } else {
79203
- if (dateStr.match(/[/.-]/)) {
79204
- throw new Error(
79205
- "AuroDatepickerUtilities | parseDate: Date string has no separators",
79206
- );
79207
- }
79208
-
79209
- if (dateStr.length !== format.length) {
79210
- throw new Error(
79211
- "AuroDatepickerUtilities | parseDate: Date string and format length do not match",
79212
- );
79213
- }
79214
-
79215
- valueParts = [dateStr];
79216
- formatParts = [format];
79217
- }
79218
-
79219
- if (valueParts.length !== formatParts.length) {
79220
- throw new Error(
79221
- `AuroDatepickerUtilities | parseDate: Date string and format do not match : ${dateStr} vs ${format}`,
79222
- );
79223
- }
79224
-
79225
- const result = formatParts.reduce((acc, part, index) => {
79226
- const value = valueParts[index];
79227
-
79228
- if (/m/iu.test(part) && part.length === value.length) {
79229
- acc.month = value;
79230
- } else if (/d/iu.test(part) && part.length === value.length) {
79231
- acc.day = value;
79232
- } else if (/y/iu.test(part) && part.length === value.length) {
79233
- acc.year = value;
79234
- }
79235
-
79236
- return acc;
79237
- }, {});
79238
-
79239
- if (!result.month && !result.day && !result.year) {
79240
- throw new Error(
79241
- "AuroDatepickerUtilities | parseDate: Unable to parse date string",
79242
- );
79243
- }
79244
-
79245
- return result;
79246
- }
79247
-
79248
- function isCalendarDate(year, month, day) {
79249
- let yearNumber = Number(year);
79250
- const monthNumber = Number(month);
79251
- const dayNumber = Number(day);
79252
-
79253
- if (
79254
- !Number.isInteger(yearNumber) ||
79255
- !Number.isInteger(monthNumber) ||
79256
- !Number.isInteger(dayNumber)
79257
- ) {
79258
- return false;
79259
- }
79260
-
79261
- // Handle 2-digit years by converting them to 4-digit years based on a cutoff. This allows for parsing of 2-digit year formats while still validating the resulting date.
79262
- if (yearNumber < 100 && yearNumber >= 50) {
79263
- yearNumber += 1900;
79264
- } else if (yearNumber < 50) {
79265
- yearNumber += 2000;
79266
- }
79267
-
79268
- const stringified = `${String(yearNumber).padStart(4, "0")}-${String(monthNumber).padStart(2, "0")}-${String(dayNumber).padStart(2, "0")}`;
79269
- const date = new Date(stringified.replace(/[.-]/g, "/"));
79270
-
79271
- return (
79272
- !Number.isNaN(date.getTime()) && toISOFormatString(date) === stringified
79273
- );
79274
- }
79275
-
79276
- /**
79277
- * @description Parses a date string into its components and validates that the result is a real calendar date. Use `getDateParts` instead when raw splitting without validation is needed (e.g. for in-progress input).
79278
- *
79279
- * Partial formats are supported: components absent from `format` default to `year → "0"`,
79280
- * `month → "01"`, `day → "01"` for calendar validation only. The returned object contains
79281
- * only the fields actually present in the format string — missing fields are never injected.
79282
- * @param {string} dateStr - Date string to parse.
79283
- * @param {string} format - Date format to parse.
79284
- * @returns {{ month?: string, day?: string, year?: string }|undefined}
79285
- * @throws {Error} Throws when the parsed result does not represent a valid calendar date.
79286
- */
79287
- function parseDate(dateStr, format = "mm/dd/yyyy") {
79288
- if (!dateStr || !format) {
79289
- return undefined;
79290
- }
79291
- const result = getDateParts(dateStr.trim(), format);
79292
-
79293
- if (!result) {
79294
- return undefined;
79295
- }
79296
-
79297
- const lowerFormat = format.toLowerCase();
79298
- const year = lowerFormat.includes("yy") ? result.year : "0";
79299
- const month = lowerFormat.includes("mm") ? result.month : "01";
79300
- const day = lowerFormat.includes("dd") ? result.day : "01";
79301
-
79302
- if (isCalendarDate(year, month, day)) {
79303
- return result;
79304
- }
79305
-
79306
- throw new Error(
79307
- `AuroDatepickerUtilities | parseDate: Date string is not a valid date ${JSON.stringify(result)} with format ${format}`,
79308
- );
79309
- }
79310
-
79311
- /**
79312
- * Convert a date object to string format.
79313
- * @param {Object} date - Date to convert to string.
79314
- * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
79315
- * @returns {String} Returns the date as a string.
79316
- */
79317
- function getDateAsString(date, locale = undefined) {
79318
- return date.toLocaleDateString(locale, {
79319
- year: "numeric",
79320
- month: "2-digit",
79321
- day: "2-digit",
79322
- });
79323
- }
79324
-
79325
- /**
79326
- * Converts a date string to a North American date format.
79327
- * @param {String} dateStr - Date to validate.
79328
- * @param {String} format - Date format to validate against.
79329
- * @returns {String}
79330
- */
79331
- function toNorthAmericanFormat(dateStr, format) {
79332
- if (format === "mm/dd/yyyy") {
79333
- return dateStr;
79334
- }
79335
-
79336
- const parsedDate = parseDate(dateStr, format);
79337
-
79338
- if (!parsedDate) {
79339
- throw new Error(
79340
- "AuroDatepickerUtilities | toNorthAmericanFormat: Unable to parse date string",
79341
- );
79342
- }
79343
-
79344
- const { month, day, year } = parsedDate;
79345
-
79346
- return [month, day, year].filter(Boolean).join("/");
79347
- }
79348
-
79349
- /**
79350
- * Validates that a date string matches the provided format and represents a real calendar date.
79351
- *
79352
- * @param {string} dateStr - Date string to validate.
79353
- * @param {string} [format="yyyy-mm-dd"] - Format of the date string.
79354
- * @returns {boolean} True when the date string is valid for the provided format, otherwise false.
79355
- */
79356
- function isValidDate(dateStr, format = "yyyy-mm-dd") {
79357
- try {
79358
- if (typeof dateStr !== "string" || !dateStr || format?.length < 8) {
79359
- return false;
79360
- }
79361
-
79362
- if (parseDate(dateStr, format)) {
79363
- return true;
79364
- }
79365
- } catch (error) {
79366
- return false;
79367
- }
79368
- return false;
79369
- }
79370
-
79371
- /**
79372
- * Converts a JavaScript Date instance to a simple ISO-like date string. This returns only the calendar date portion without any time or timezone information.
79373
- *
79374
- * @param {Date} date - Date instance to convert to an ISO-like string.
79375
- * @returns {string} A string in the format "yyyy-mm-dd" representing the provided date.
79376
- * @throws {Error} Throws an error when the input is not a valid Date instance.
79377
- */
79378
- function toISOFormatString(date) {
79379
- if (!(date instanceof Date) || Number.isNaN(date.getTime())) {
79380
- throw new Error(
79381
- "AuroDatepickerUtilities | toISOFormatString: Input must be a valid Date instance",
79382
- );
79383
- }
79384
- return `${String(date.getFullYear()).padStart(4, "0")}-${String(date.getMonth() + 1).padStart(2, "0")}-${String(date.getDate()).padStart(2, "0")}`;
79385
- }
79386
-
79387
- /**
79388
- * Converts a date string into a JavaScript Date instance. This method supports ISO formatted strings and other formats that can be parsed by the formatter.
79389
- *
79390
- * @param {String} dateStr - Date string to convert into a Date object.
79391
- * @param {String} format - Date format used to parse the string when it is not in ISO format.
79392
- * @returns {Date|null} Returns a Date instance for valid input or null for non-string input.
79393
- * @throws {Error} Throws when parsing fails for non-ISO string input.
79394
- */
79395
- function stringToDateInstance(dateStr, format = "yyyy-mm-dd") {
79396
- if (typeof dateStr !== "string") {
79397
- return null;
79398
- }
79399
-
79400
- const { month, day, year } = parseDate(dateStr, format);
79401
- return new Date(`${year}/${month}/${day}`);
79402
- }
79403
-
79404
- const dateFormatter = {
79405
- parseDate,
79406
- getDateParts,
79407
- getDateAsString,
79408
- toNorthAmericanFormat,
79409
- isValidDate,
79410
- toISOFormatString,
79411
- stringToDateInstance,
79412
- };
79413
-
79414
78260
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
79415
78261
  // See LICENSE in the project root for license information.
79416
78262
 
@@ -79715,7 +78561,7 @@ class AuroFormValidation {
79715
78561
  }
79716
78562
 
79717
78563
  // Validate that the date passed was the correct format and is a valid date
79718
- if (elem.value && !dateFormatter.isValidDate(elem.inputElement.value, elem.format)) {
78564
+ if (elem.value && !elem.valueObject) {
79719
78565
  elem.validity = 'patternMismatch';
79720
78566
  elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || 'Invalid Date Format Entered';
79721
78567
  return;
@@ -84140,7 +82986,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
84140
82986
  }
84141
82987
  };
84142
82988
 
84143
- var formkitVersion$1 = '202605271728';
82989
+ var formkitVersion$1 = '202605271820';
84144
82990
 
84145
82991
  class AuroElement extends i$4 {
84146
82992
  static get properties() {
@@ -85893,7 +84739,7 @@ class AuroHelpText extends i$4 {
85893
84739
  }
85894
84740
  }
85895
84741
 
85896
- var formkitVersion = '202605271728';
84742
+ var formkitVersion = '202605271820';
85897
84743
 
85898
84744
  var styleCss = i$7`.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}`;
85899
84745