@aurodesignsystem-dev/auro-formkit 0.0.0-pr1608.0 → 0.0.0-pr1609.0

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 (48) hide show
  1. package/components/checkbox/demo/customize.min.js +10 -31
  2. package/components/checkbox/demo/getting-started.min.js +10 -31
  3. package/components/checkbox/demo/index.min.js +10 -31
  4. package/components/checkbox/dist/auro-checkbox-group.d.ts +0 -4
  5. package/components/checkbox/dist/index.js +10 -31
  6. package/components/checkbox/dist/registered.js +10 -31
  7. package/components/combobox/demo/customize.min.js +46 -4
  8. package/components/combobox/demo/getting-started.min.js +46 -4
  9. package/components/combobox/demo/index.min.js +46 -4
  10. package/components/combobox/dist/index.js +46 -4
  11. package/components/combobox/dist/registered.js +46 -4
  12. package/components/counter/demo/customize.min.js +45 -3
  13. package/components/counter/demo/getting-started.min.js +45 -3
  14. package/components/counter/demo/index.min.js +45 -3
  15. package/components/counter/dist/index.js +45 -3
  16. package/components/counter/dist/registered.js +45 -3
  17. package/components/datepicker/demo/customize.min.js +46 -4
  18. package/components/datepicker/demo/getting-started.min.js +46 -4
  19. package/components/datepicker/demo/index.min.js +46 -4
  20. package/components/datepicker/dist/index.js +46 -4
  21. package/components/datepicker/dist/registered.js +46 -4
  22. package/components/dropdown/demo/customize.min.js +44 -2
  23. package/components/dropdown/demo/getting-started.min.js +45 -3
  24. package/components/dropdown/demo/index.min.js +44 -2
  25. package/components/dropdown/dist/index.js +44 -2
  26. package/components/dropdown/dist/registered.js +44 -2
  27. package/components/form/demo/customize.min.js +205 -83
  28. package/components/form/demo/getting-started.min.js +205 -83
  29. package/components/form/demo/index.min.js +205 -83
  30. package/components/form/demo/registerDemoDeps.min.js +205 -83
  31. package/components/input/demo/customize.min.js +1 -1
  32. package/components/input/demo/getting-started.min.js +1 -1
  33. package/components/input/demo/index.min.js +1 -1
  34. package/components/input/dist/index.js +1 -1
  35. package/components/input/dist/registered.js +1 -1
  36. package/components/radio/demo/customize.min.js +8 -33
  37. package/components/radio/demo/getting-started.min.js +8 -33
  38. package/components/radio/demo/index.min.js +8 -33
  39. package/components/radio/dist/auro-radio-group.d.ts +0 -4
  40. package/components/radio/dist/index.js +8 -33
  41. package/components/radio/dist/registered.js +8 -33
  42. package/components/select/demo/customize.min.js +45 -3
  43. package/components/select/demo/getting-started.min.js +45 -3
  44. package/components/select/demo/index.min.js +45 -3
  45. package/components/select/dist/index.js +45 -3
  46. package/components/select/dist/registered.js +45 -3
  47. package/custom-elements.json +1510 -1510
  48. package/package.json +3 -3
@@ -1046,22 +1046,6 @@ class AuroDependencyVersioning {
1046
1046
  }
1047
1047
  }
1048
1048
 
1049
- /**
1050
- * Class for generating unique hashes based on the current timestamp.
1051
- * This can be used to create unique identifiers for elements or data within an application,
1052
- * ensuring that each identifier is distinct and can be easily generated without the need
1053
- * for external libraries or complex algorithms.
1054
- */
1055
- class UniqueId {
1056
- /**
1057
- * Creates a unique hash based on the current timestamp.
1058
- * @returns {Function} Timestamp as a base-36 string
1059
- */
1060
- create() {
1061
- return Date.now().toString(36);
1062
- }
1063
- }
1064
-
1065
1049
  var styleCss$1 = i$5`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}.displayFlex legend+slot{display:flex;white-space:nowrap}fieldset{all:unset}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
1066
1050
 
1067
1051
  var colorCss$1 = i$5`:host{color:var(--ds-auro-checkbox-group-text-color)}:host([disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
@@ -1300,7 +1284,7 @@ class AuroHelpText extends i$2 {
1300
1284
  }
1301
1285
  }
1302
1286
 
1303
- var formkitVersion = '202609021913';
1287
+ var formkitVersion = '202609022123';
1304
1288
 
1305
1289
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1306
1290
  // See LICENSE in the project root for license information.
@@ -1377,11 +1361,6 @@ class AuroCheckboxGroup extends i$2 {
1377
1361
  * @private
1378
1362
  */
1379
1363
  this.helpTextTag = versioning.generateTag('auro-formkit-checkbox-helptext', formkitVersion, AuroHelpText);
1380
-
1381
- /**
1382
- * @private
1383
- */
1384
- this.uniqueId = new UniqueId().create();
1385
1364
  }
1386
1365
 
1387
1366
  static get styles() {
@@ -1667,10 +1646,8 @@ class AuroCheckboxGroup extends i$2 {
1667
1646
  this.checkboxes.forEach((el) => {
1668
1647
  if (this.validity && this.validity !== 'valid') {
1669
1648
  el.setAttribute('error', true);
1670
- el.setAttribute('aria-invalid', 'true');
1671
1649
  } else {
1672
1650
  el.removeAttribute('error');
1673
- el.removeAttribute('aria-invalid');
1674
1651
  }
1675
1652
  });
1676
1653
  }
@@ -1696,6 +1673,12 @@ class AuroCheckboxGroup extends i$2 {
1696
1673
  }
1697
1674
 
1698
1675
  if (changedProperties.has('error')) {
1676
+ if (this.error) {
1677
+ this.setAttribute('aria-invalid', true);
1678
+ } else {
1679
+ this.removeAttribute('aria-invalid');
1680
+ }
1681
+
1699
1682
  this.validate(true);
1700
1683
  }
1701
1684
  }
@@ -1714,11 +1697,7 @@ class AuroCheckboxGroup extends i$2 {
1714
1697
  };
1715
1698
 
1716
1699
  return u`
1717
- <fieldset
1718
- class="${e(groupClasses)}"
1719
- aria-invalid="${o$1(this.validity && this.validity !== 'valid' ? 'true' : undefined)}"
1720
- aria-describedby="${this.uniqueId}"
1721
- >
1700
+ <fieldset class="${e(groupClasses)}">
1722
1701
  <legend>
1723
1702
  <slot name="legend"></slot>
1724
1703
  ${this.required ? undefined : u`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1728,11 +1707,11 @@ class AuroCheckboxGroup extends i$2 {
1728
1707
 
1729
1708
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1730
1709
  ? u`
1731
- <${this.helpTextTag} id="${this.uniqueId}" part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1710
+ <${this.helpTextTag} part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1732
1711
  <slot name="helpText"></slot>
1733
1712
  </${this.helpTextTag}>`
1734
1713
  : u`
1735
- <${this.helpTextTag} id="${this.uniqueId}" error appearance="${this.onDark ? 'inverse' : this.appearance}" role="alert" aria-live="assertive" part="helpText">
1714
+ <${this.helpTextTag} error appearance="${this.onDark ? 'inverse' : this.appearance}"" role="alert" aria-live="assertive" part="helpText">
1736
1715
  ${this.errorMessage}
1737
1716
  </${this.helpTextTag}>`
1738
1717
  }
@@ -1046,22 +1046,6 @@ class AuroDependencyVersioning {
1046
1046
  }
1047
1047
  }
1048
1048
 
1049
- /**
1050
- * Class for generating unique hashes based on the current timestamp.
1051
- * This can be used to create unique identifiers for elements or data within an application,
1052
- * ensuring that each identifier is distinct and can be easily generated without the need
1053
- * for external libraries or complex algorithms.
1054
- */
1055
- class UniqueId {
1056
- /**
1057
- * Creates a unique hash based on the current timestamp.
1058
- * @returns {Function} Timestamp as a base-36 string
1059
- */
1060
- create() {
1061
- return Date.now().toString(36);
1062
- }
1063
- }
1064
-
1065
1049
  var styleCss$1 = i$5`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}.displayFlex legend+slot{display:flex;white-space:nowrap}fieldset{all:unset}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
1066
1050
 
1067
1051
  var colorCss$1 = i$5`:host{color:var(--ds-auro-checkbox-group-text-color)}:host([disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
@@ -1300,7 +1284,7 @@ class AuroHelpText extends i$2 {
1300
1284
  }
1301
1285
  }
1302
1286
 
1303
- var formkitVersion = '202609021913';
1287
+ var formkitVersion = '202609022123';
1304
1288
 
1305
1289
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1306
1290
  // See LICENSE in the project root for license information.
@@ -1377,11 +1361,6 @@ class AuroCheckboxGroup extends i$2 {
1377
1361
  * @private
1378
1362
  */
1379
1363
  this.helpTextTag = versioning.generateTag('auro-formkit-checkbox-helptext', formkitVersion, AuroHelpText);
1380
-
1381
- /**
1382
- * @private
1383
- */
1384
- this.uniqueId = new UniqueId().create();
1385
1364
  }
1386
1365
 
1387
1366
  static get styles() {
@@ -1667,10 +1646,8 @@ class AuroCheckboxGroup extends i$2 {
1667
1646
  this.checkboxes.forEach((el) => {
1668
1647
  if (this.validity && this.validity !== 'valid') {
1669
1648
  el.setAttribute('error', true);
1670
- el.setAttribute('aria-invalid', 'true');
1671
1649
  } else {
1672
1650
  el.removeAttribute('error');
1673
- el.removeAttribute('aria-invalid');
1674
1651
  }
1675
1652
  });
1676
1653
  }
@@ -1696,6 +1673,12 @@ class AuroCheckboxGroup extends i$2 {
1696
1673
  }
1697
1674
 
1698
1675
  if (changedProperties.has('error')) {
1676
+ if (this.error) {
1677
+ this.setAttribute('aria-invalid', true);
1678
+ } else {
1679
+ this.removeAttribute('aria-invalid');
1680
+ }
1681
+
1699
1682
  this.validate(true);
1700
1683
  }
1701
1684
  }
@@ -1714,11 +1697,7 @@ class AuroCheckboxGroup extends i$2 {
1714
1697
  };
1715
1698
 
1716
1699
  return u`
1717
- <fieldset
1718
- class="${e(groupClasses)}"
1719
- aria-invalid="${o$1(this.validity && this.validity !== 'valid' ? 'true' : undefined)}"
1720
- aria-describedby="${this.uniqueId}"
1721
- >
1700
+ <fieldset class="${e(groupClasses)}">
1722
1701
  <legend>
1723
1702
  <slot name="legend"></slot>
1724
1703
  ${this.required ? undefined : u`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1728,11 +1707,11 @@ class AuroCheckboxGroup extends i$2 {
1728
1707
 
1729
1708
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1730
1709
  ? u`
1731
- <${this.helpTextTag} id="${this.uniqueId}" part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1710
+ <${this.helpTextTag} part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1732
1711
  <slot name="helpText"></slot>
1733
1712
  </${this.helpTextTag}>`
1734
1713
  : u`
1735
- <${this.helpTextTag} id="${this.uniqueId}" error appearance="${this.onDark ? 'inverse' : this.appearance}" role="alert" aria-live="assertive" part="helpText">
1714
+ <${this.helpTextTag} error appearance="${this.onDark ? 'inverse' : this.appearance}"" role="alert" aria-live="assertive" part="helpText">
1736
1715
  ${this.errorMessage}
1737
1716
  </${this.helpTextTag}>`
1738
1717
  }
@@ -1046,22 +1046,6 @@ class AuroDependencyVersioning {
1046
1046
  }
1047
1047
  }
1048
1048
 
1049
- /**
1050
- * Class for generating unique hashes based on the current timestamp.
1051
- * This can be used to create unique identifiers for elements or data within an application,
1052
- * ensuring that each identifier is distinct and can be easily generated without the need
1053
- * for external libraries or complex algorithms.
1054
- */
1055
- class UniqueId {
1056
- /**
1057
- * Creates a unique hash based on the current timestamp.
1058
- * @returns {Function} Timestamp as a base-36 string
1059
- */
1060
- create() {
1061
- return Date.now().toString(36);
1062
- }
1063
- }
1064
-
1065
1049
  var styleCss$1 = i$5`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}.displayFlex legend+slot{display:flex;white-space:nowrap}fieldset{all:unset}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
1066
1050
 
1067
1051
  var colorCss$1 = i$5`:host{color:var(--ds-auro-checkbox-group-text-color)}:host([disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
@@ -1300,7 +1284,7 @@ class AuroHelpText extends i$2 {
1300
1284
  }
1301
1285
  }
1302
1286
 
1303
- var formkitVersion = '202609021913';
1287
+ var formkitVersion = '202609022123';
1304
1288
 
1305
1289
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1306
1290
  // See LICENSE in the project root for license information.
@@ -1377,11 +1361,6 @@ class AuroCheckboxGroup extends i$2 {
1377
1361
  * @private
1378
1362
  */
1379
1363
  this.helpTextTag = versioning.generateTag('auro-formkit-checkbox-helptext', formkitVersion, AuroHelpText);
1380
-
1381
- /**
1382
- * @private
1383
- */
1384
- this.uniqueId = new UniqueId().create();
1385
1364
  }
1386
1365
 
1387
1366
  static get styles() {
@@ -1667,10 +1646,8 @@ class AuroCheckboxGroup extends i$2 {
1667
1646
  this.checkboxes.forEach((el) => {
1668
1647
  if (this.validity && this.validity !== 'valid') {
1669
1648
  el.setAttribute('error', true);
1670
- el.setAttribute('aria-invalid', 'true');
1671
1649
  } else {
1672
1650
  el.removeAttribute('error');
1673
- el.removeAttribute('aria-invalid');
1674
1651
  }
1675
1652
  });
1676
1653
  }
@@ -1696,6 +1673,12 @@ class AuroCheckboxGroup extends i$2 {
1696
1673
  }
1697
1674
 
1698
1675
  if (changedProperties.has('error')) {
1676
+ if (this.error) {
1677
+ this.setAttribute('aria-invalid', true);
1678
+ } else {
1679
+ this.removeAttribute('aria-invalid');
1680
+ }
1681
+
1699
1682
  this.validate(true);
1700
1683
  }
1701
1684
  }
@@ -1714,11 +1697,7 @@ class AuroCheckboxGroup extends i$2 {
1714
1697
  };
1715
1698
 
1716
1699
  return u`
1717
- <fieldset
1718
- class="${e(groupClasses)}"
1719
- aria-invalid="${o$1(this.validity && this.validity !== 'valid' ? 'true' : undefined)}"
1720
- aria-describedby="${this.uniqueId}"
1721
- >
1700
+ <fieldset class="${e(groupClasses)}">
1722
1701
  <legend>
1723
1702
  <slot name="legend"></slot>
1724
1703
  ${this.required ? undefined : u`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1728,11 +1707,11 @@ class AuroCheckboxGroup extends i$2 {
1728
1707
 
1729
1708
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1730
1709
  ? u`
1731
- <${this.helpTextTag} id="${this.uniqueId}" part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1710
+ <${this.helpTextTag} part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1732
1711
  <slot name="helpText"></slot>
1733
1712
  </${this.helpTextTag}>`
1734
1713
  : u`
1735
- <${this.helpTextTag} id="${this.uniqueId}" error appearance="${this.onDark ? 'inverse' : this.appearance}" role="alert" aria-live="assertive" part="helpText">
1714
+ <${this.helpTextTag} error appearance="${this.onDark ? 'inverse' : this.appearance}"" role="alert" aria-live="assertive" part="helpText">
1736
1715
  ${this.errorMessage}
1737
1716
  </${this.helpTextTag}>`
1738
1717
  }
@@ -141,10 +141,6 @@ export class AuroCheckboxGroup extends LitElement {
141
141
  * @private
142
142
  */
143
143
  private helpTextTag;
144
- /**
145
- * @private
146
- */
147
- private uniqueId;
148
144
  /**
149
145
  * Helper method to handle checkbox value changing.
150
146
  * @private
@@ -999,22 +999,6 @@ class AuroDependencyVersioning {
999
999
  }
1000
1000
  }
1001
1001
 
1002
- /**
1003
- * Class for generating unique hashes based on the current timestamp.
1004
- * This can be used to create unique identifiers for elements or data within an application,
1005
- * ensuring that each identifier is distinct and can be easily generated without the need
1006
- * for external libraries or complex algorithms.
1007
- */
1008
- class UniqueId {
1009
- /**
1010
- * Creates a unique hash based on the current timestamp.
1011
- * @returns {Function} Timestamp as a base-36 string
1012
- */
1013
- create() {
1014
- return Date.now().toString(36);
1015
- }
1016
- }
1017
-
1018
1002
  var styleCss$1 = css`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}.displayFlex legend+slot{display:flex;white-space:nowrap}fieldset{all:unset}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
1019
1003
 
1020
1004
  var colorCss$1 = css`:host{color:var(--ds-auro-checkbox-group-text-color)}:host([disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
@@ -1253,7 +1237,7 @@ class AuroHelpText extends LitElement {
1253
1237
  }
1254
1238
  }
1255
1239
 
1256
- var formkitVersion = '202609021913';
1240
+ var formkitVersion = '202609022123';
1257
1241
 
1258
1242
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1259
1243
  // See LICENSE in the project root for license information.
@@ -1330,11 +1314,6 @@ class AuroCheckboxGroup extends LitElement {
1330
1314
  * @private
1331
1315
  */
1332
1316
  this.helpTextTag = versioning.generateTag('auro-formkit-checkbox-helptext', formkitVersion, AuroHelpText);
1333
-
1334
- /**
1335
- * @private
1336
- */
1337
- this.uniqueId = new UniqueId().create();
1338
1317
  }
1339
1318
 
1340
1319
  static get styles() {
@@ -1620,10 +1599,8 @@ class AuroCheckboxGroup extends LitElement {
1620
1599
  this.checkboxes.forEach((el) => {
1621
1600
  if (this.validity && this.validity !== 'valid') {
1622
1601
  el.setAttribute('error', true);
1623
- el.setAttribute('aria-invalid', 'true');
1624
1602
  } else {
1625
1603
  el.removeAttribute('error');
1626
- el.removeAttribute('aria-invalid');
1627
1604
  }
1628
1605
  });
1629
1606
  }
@@ -1649,6 +1626,12 @@ class AuroCheckboxGroup extends LitElement {
1649
1626
  }
1650
1627
 
1651
1628
  if (changedProperties.has('error')) {
1629
+ if (this.error) {
1630
+ this.setAttribute('aria-invalid', true);
1631
+ } else {
1632
+ this.removeAttribute('aria-invalid');
1633
+ }
1634
+
1652
1635
  this.validate(true);
1653
1636
  }
1654
1637
  }
@@ -1667,11 +1650,7 @@ class AuroCheckboxGroup extends LitElement {
1667
1650
  };
1668
1651
 
1669
1652
  return html$1`
1670
- <fieldset
1671
- class="${classMap(groupClasses)}"
1672
- aria-invalid="${ifDefined(this.validity && this.validity !== 'valid' ? 'true' : undefined)}"
1673
- aria-describedby="${this.uniqueId}"
1674
- >
1653
+ <fieldset class="${classMap(groupClasses)}">
1675
1654
  <legend>
1676
1655
  <slot name="legend"></slot>
1677
1656
  ${this.required ? undefined : html$1`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1681,11 +1660,11 @@ class AuroCheckboxGroup extends LitElement {
1681
1660
 
1682
1661
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1683
1662
  ? html$1`
1684
- <${this.helpTextTag} id="${this.uniqueId}" part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1663
+ <${this.helpTextTag} part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1685
1664
  <slot name="helpText"></slot>
1686
1665
  </${this.helpTextTag}>`
1687
1666
  : html$1`
1688
- <${this.helpTextTag} id="${this.uniqueId}" error appearance="${this.onDark ? 'inverse' : this.appearance}" role="alert" aria-live="assertive" part="helpText">
1667
+ <${this.helpTextTag} error appearance="${this.onDark ? 'inverse' : this.appearance}"" role="alert" aria-live="assertive" part="helpText">
1689
1668
  ${this.errorMessage}
1690
1669
  </${this.helpTextTag}>`
1691
1670
  }
@@ -999,22 +999,6 @@ class AuroDependencyVersioning {
999
999
  }
1000
1000
  }
1001
1001
 
1002
- /**
1003
- * Class for generating unique hashes based on the current timestamp.
1004
- * This can be used to create unique identifiers for elements or data within an application,
1005
- * ensuring that each identifier is distinct and can be easily generated without the need
1006
- * for external libraries or complex algorithms.
1007
- */
1008
- class UniqueId {
1009
- /**
1010
- * Creates a unique hash based on the current timestamp.
1011
- * @returns {Function} Timestamp as a base-36 string
1012
- */
1013
- create() {
1014
- return Date.now().toString(36);
1015
- }
1016
- }
1017
-
1018
1002
  var styleCss$1 = css`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}.displayFlex legend+slot{display:flex;white-space:nowrap}fieldset{all:unset}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
1019
1003
 
1020
1004
  var colorCss$1 = css`:host{color:var(--ds-auro-checkbox-group-text-color)}:host([disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]),:host([appearance=inverse]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]),:host([appearance=inverse][disabled]){--ds-auro-checkbox-group-text-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
@@ -1253,7 +1237,7 @@ class AuroHelpText extends LitElement {
1253
1237
  }
1254
1238
  }
1255
1239
 
1256
- var formkitVersion = '202609021913';
1240
+ var formkitVersion = '202609022123';
1257
1241
 
1258
1242
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1259
1243
  // See LICENSE in the project root for license information.
@@ -1330,11 +1314,6 @@ class AuroCheckboxGroup extends LitElement {
1330
1314
  * @private
1331
1315
  */
1332
1316
  this.helpTextTag = versioning.generateTag('auro-formkit-checkbox-helptext', formkitVersion, AuroHelpText);
1333
-
1334
- /**
1335
- * @private
1336
- */
1337
- this.uniqueId = new UniqueId().create();
1338
1317
  }
1339
1318
 
1340
1319
  static get styles() {
@@ -1620,10 +1599,8 @@ class AuroCheckboxGroup extends LitElement {
1620
1599
  this.checkboxes.forEach((el) => {
1621
1600
  if (this.validity && this.validity !== 'valid') {
1622
1601
  el.setAttribute('error', true);
1623
- el.setAttribute('aria-invalid', 'true');
1624
1602
  } else {
1625
1603
  el.removeAttribute('error');
1626
- el.removeAttribute('aria-invalid');
1627
1604
  }
1628
1605
  });
1629
1606
  }
@@ -1649,6 +1626,12 @@ class AuroCheckboxGroup extends LitElement {
1649
1626
  }
1650
1627
 
1651
1628
  if (changedProperties.has('error')) {
1629
+ if (this.error) {
1630
+ this.setAttribute('aria-invalid', true);
1631
+ } else {
1632
+ this.removeAttribute('aria-invalid');
1633
+ }
1634
+
1652
1635
  this.validate(true);
1653
1636
  }
1654
1637
  }
@@ -1667,11 +1650,7 @@ class AuroCheckboxGroup extends LitElement {
1667
1650
  };
1668
1651
 
1669
1652
  return html$1`
1670
- <fieldset
1671
- class="${classMap(groupClasses)}"
1672
- aria-invalid="${ifDefined(this.validity && this.validity !== 'valid' ? 'true' : undefined)}"
1673
- aria-describedby="${this.uniqueId}"
1674
- >
1653
+ <fieldset class="${classMap(groupClasses)}">
1675
1654
  <legend>
1676
1655
  <slot name="legend"></slot>
1677
1656
  ${this.required ? undefined : html$1`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1681,11 +1660,11 @@ class AuroCheckboxGroup extends LitElement {
1681
1660
 
1682
1661
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1683
1662
  ? html$1`
1684
- <${this.helpTextTag} id="${this.uniqueId}" part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1663
+ <${this.helpTextTag} part="helpText" appearance="${this.onDark ? 'inverse' : this.appearance}">
1685
1664
  <slot name="helpText"></slot>
1686
1665
  </${this.helpTextTag}>`
1687
1666
  : html$1`
1688
- <${this.helpTextTag} id="${this.uniqueId}" error appearance="${this.onDark ? 'inverse' : this.appearance}" role="alert" aria-live="assertive" part="helpText">
1667
+ <${this.helpTextTag} error appearance="${this.onDark ? 'inverse' : this.appearance}"" role="alert" aria-live="assertive" part="helpText">
1689
1668
  ${this.errorMessage}
1690
1669
  </${this.helpTextTag}>`
1691
1670
  }
@@ -3003,6 +3003,48 @@ const computePosition = (reference, floating, options) => {
3003
3003
  });
3004
3004
  };
3005
3005
 
3006
+ /**
3007
+ * Generates a v4 UUID with a three-tier fallback for insecure contexts.
3008
+ *
3009
+ * Tier 1 (secure contexts): crypto.randomUUID() — native, fully random.
3010
+ * Tier 2 (insecure contexts): crypto.getRandomValues() — available on all
3011
+ * modern browsers regardless of secure-context status.
3012
+ * Tier 3 (last resort, no crypto API): new Date().getTime() — lower entropy,
3013
+ * but sufficient for element IDs where collision risk is negligible.
3014
+ *
3015
+ * See: https://w3c.github.io/webcrypto/#dom-crypto-randomuuid (secure-context restriction)
3016
+ */
3017
+ function generateUUID() {
3018
+ let uuid;
3019
+
3020
+ if (
3021
+ typeof crypto !== "undefined" &&
3022
+ typeof crypto.randomUUID === "function"
3023
+ ) {
3024
+ uuid = crypto.randomUUID();
3025
+ } else if (
3026
+ typeof crypto !== "undefined" &&
3027
+ typeof crypto.getRandomValues === "function"
3028
+ ) {
3029
+ const bytes = new Uint8Array(16);
3030
+ crypto.getRandomValues(bytes);
3031
+ bytes[6] = (bytes[6] & 0x0f) | 0x40;
3032
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
3033
+ const hex = Array.from(bytes).map((b) => b.toString(16).padStart(2, "0"));
3034
+ uuid = `${hex.slice(0, 4).join("")}-${hex.slice(4, 6).join("")}-${hex.slice(6, 8).join("")}-${hex.slice(8, 10).join("")}-${hex.slice(10).join("")}`;
3035
+ } else {
3036
+ let d = new Date().getTime();
3037
+ uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
3038
+ const r = (d % 16) | 0;
3039
+ d = (d - r) / 16 || new Date().getTime();
3040
+ return (c === "x" ? r : (r & 0x3) | 0x8).toString(16);
3041
+ });
3042
+ }
3043
+
3044
+ // CSS selectors require IDs starting with a letter; replace a leading digit with 'a'.
3045
+ return /^[0-9]/.test(uuid) ? `a${uuid.slice(1)}` : uuid;
3046
+ }
3047
+
3006
3048
  /* eslint-disable line-comment-position, no-inline-comments */
3007
3049
 
3008
3050
 
@@ -4021,7 +4063,7 @@ class AuroFloatingUI {
4021
4063
 
4022
4064
  this.id = element.getAttribute("id");
4023
4065
  if (!this.id) {
4024
- this.id = window.crypto.randomUUID();
4066
+ this.id = generateUUID();
4025
4067
  element.setAttribute("id", this.id);
4026
4068
  }
4027
4069
 
@@ -5066,7 +5108,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
5066
5108
  }
5067
5109
  };
5068
5110
 
5069
- var formkitVersion$2 = '202609021913';
5111
+ var formkitVersion$2 = '202609022123';
5070
5112
 
5071
5113
  /**
5072
5114
  * AuroElement is the shared base class for layout-aware Auro form components.
@@ -18935,7 +18977,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18935
18977
  }
18936
18978
  };
18937
18979
 
18938
- var formkitVersion$1 = '202609021913';
18980
+ var formkitVersion$1 = '202609022123';
18939
18981
 
18940
18982
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
18941
18983
  // See LICENSE in the project root for license information.
@@ -20127,7 +20169,7 @@ class AuroBibtemplate extends i$3 {
20127
20169
  }
20128
20170
  }
20129
20171
 
20130
- var formkitVersion = '202609021913';
20172
+ var formkitVersion = '202609022123';
20131
20173
 
20132
20174
  var styleCss$3 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
20133
20175
 
@@ -3003,6 +3003,48 @@ const computePosition = (reference, floating, options) => {
3003
3003
  });
3004
3004
  };
3005
3005
 
3006
+ /**
3007
+ * Generates a v4 UUID with a three-tier fallback for insecure contexts.
3008
+ *
3009
+ * Tier 1 (secure contexts): crypto.randomUUID() — native, fully random.
3010
+ * Tier 2 (insecure contexts): crypto.getRandomValues() — available on all
3011
+ * modern browsers regardless of secure-context status.
3012
+ * Tier 3 (last resort, no crypto API): new Date().getTime() — lower entropy,
3013
+ * but sufficient for element IDs where collision risk is negligible.
3014
+ *
3015
+ * See: https://w3c.github.io/webcrypto/#dom-crypto-randomuuid (secure-context restriction)
3016
+ */
3017
+ function generateUUID() {
3018
+ let uuid;
3019
+
3020
+ if (
3021
+ typeof crypto !== "undefined" &&
3022
+ typeof crypto.randomUUID === "function"
3023
+ ) {
3024
+ uuid = crypto.randomUUID();
3025
+ } else if (
3026
+ typeof crypto !== "undefined" &&
3027
+ typeof crypto.getRandomValues === "function"
3028
+ ) {
3029
+ const bytes = new Uint8Array(16);
3030
+ crypto.getRandomValues(bytes);
3031
+ bytes[6] = (bytes[6] & 0x0f) | 0x40;
3032
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
3033
+ const hex = Array.from(bytes).map((b) => b.toString(16).padStart(2, "0"));
3034
+ uuid = `${hex.slice(0, 4).join("")}-${hex.slice(4, 6).join("")}-${hex.slice(6, 8).join("")}-${hex.slice(8, 10).join("")}-${hex.slice(10).join("")}`;
3035
+ } else {
3036
+ let d = new Date().getTime();
3037
+ uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
3038
+ const r = (d % 16) | 0;
3039
+ d = (d - r) / 16 || new Date().getTime();
3040
+ return (c === "x" ? r : (r & 0x3) | 0x8).toString(16);
3041
+ });
3042
+ }
3043
+
3044
+ // CSS selectors require IDs starting with a letter; replace a leading digit with 'a'.
3045
+ return /^[0-9]/.test(uuid) ? `a${uuid.slice(1)}` : uuid;
3046
+ }
3047
+
3006
3048
  /* eslint-disable line-comment-position, no-inline-comments */
3007
3049
 
3008
3050
 
@@ -4021,7 +4063,7 @@ class AuroFloatingUI {
4021
4063
 
4022
4064
  this.id = element.getAttribute("id");
4023
4065
  if (!this.id) {
4024
- this.id = window.crypto.randomUUID();
4066
+ this.id = generateUUID();
4025
4067
  element.setAttribute("id", this.id);
4026
4068
  }
4027
4069
 
@@ -5066,7 +5108,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
5066
5108
  }
5067
5109
  };
5068
5110
 
5069
- var formkitVersion$2 = '202609021913';
5111
+ var formkitVersion$2 = '202609022123';
5070
5112
 
5071
5113
  /**
5072
5114
  * AuroElement is the shared base class for layout-aware Auro form components.
@@ -18935,7 +18977,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18935
18977
  }
18936
18978
  };
18937
18979
 
18938
- var formkitVersion$1 = '202609021913';
18980
+ var formkitVersion$1 = '202609022123';
18939
18981
 
18940
18982
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
18941
18983
  // See LICENSE in the project root for license information.
@@ -20127,7 +20169,7 @@ class AuroBibtemplate extends i$3 {
20127
20169
  }
20128
20170
  }
20129
20171
 
20130
- var formkitVersion = '202609021913';
20172
+ var formkitVersion = '202609022123';
20131
20173
 
20132
20174
  var styleCss$3 = i$6`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
20133
20175