@aurodesignsystem/auro-formkit 5.9.0 → 5.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/CHANGELOG.md +13 -4
  2. package/README.md +4 -4
  3. package/components/bibtemplate/dist/iconVersion.d.ts +1 -1
  4. package/components/bibtemplate/dist/index.js +2 -2
  5. package/components/bibtemplate/dist/registered.js +2 -2
  6. package/components/checkbox/README.md +62 -62
  7. package/components/checkbox/demo/api.js +1 -1
  8. package/components/checkbox/demo/api.md +127 -84
  9. package/components/checkbox/demo/api.min.js +125 -42
  10. package/components/checkbox/demo/index.md +9 -281
  11. package/components/checkbox/demo/index.min.js +125 -42
  12. package/components/checkbox/demo/readme.html +3 -4
  13. package/components/checkbox/demo/readme.md +62 -62
  14. package/components/checkbox/dist/auro-checkbox-group.d.ts +7 -8
  15. package/components/checkbox/dist/auro-checkbox.d.ts +74 -20
  16. package/components/checkbox/dist/index.js +125 -42
  17. package/components/checkbox/dist/registered.js +125 -42
  18. package/components/combobox/README.md +76 -74
  19. package/components/combobox/demo/api.html +1 -0
  20. package/components/combobox/demo/api.js +11 -12
  21. package/components/combobox/demo/api.md +1302 -875
  22. package/components/combobox/demo/api.min.js +416 -492
  23. package/components/combobox/demo/index.html +1 -7
  24. package/components/combobox/demo/index.js +0 -19
  25. package/components/combobox/demo/index.md +43 -723
  26. package/components/combobox/demo/index.min.js +369 -302
  27. package/components/combobox/demo/readme.html +3 -4
  28. package/components/combobox/demo/readme.md +76 -74
  29. package/components/combobox/dist/auro-combobox.d.ts +42 -42
  30. package/components/combobox/dist/index.js +204 -210
  31. package/components/combobox/dist/registered.js +204 -210
  32. package/components/counter/README.md +81 -66
  33. package/components/counter/demo/api.html +1 -2
  34. package/components/counter/demo/api.js +2 -2
  35. package/components/counter/demo/api.md +777 -259
  36. package/components/counter/demo/api.min.js +119 -171
  37. package/components/counter/demo/index.html +0 -2
  38. package/components/counter/demo/index.md +20 -329
  39. package/components/counter/demo/index.min.js +117 -152
  40. package/components/counter/demo/readme.html +3 -4
  41. package/components/counter/demo/readme.md +81 -66
  42. package/components/counter/dist/auro-counter-group.d.ts +21 -36
  43. package/components/counter/dist/auro-counter-wrapper.d.ts +1 -6
  44. package/components/counter/dist/auro-counter.d.ts +5 -8
  45. package/components/counter/dist/index.js +117 -152
  46. package/components/counter/dist/registered.js +117 -152
  47. package/components/datepicker/README.md +57 -61
  48. package/components/datepicker/demo/api.js +8 -8
  49. package/components/datepicker/demo/api.md +720 -561
  50. package/components/datepicker/demo/api.min.js +678 -2769
  51. package/components/datepicker/demo/index.md +65 -117
  52. package/components/datepicker/demo/index.min.js +678 -2769
  53. package/components/datepicker/demo/readme.html +3 -4
  54. package/components/datepicker/demo/readme.md +57 -61
  55. package/components/datepicker/dist/auro-calendar.d.ts +60 -34
  56. package/components/datepicker/dist/auro-datepicker.d.ts +32 -32
  57. package/components/datepicker/dist/iconVersion.d.ts +1 -1
  58. package/components/datepicker/dist/index.js +505 -2596
  59. package/components/datepicker/dist/popoverVersion.d.ts +1 -1
  60. package/components/datepicker/dist/registered.js +505 -2596
  61. package/components/dropdown/README.md +78 -62
  62. package/components/dropdown/demo/api.js +4 -4
  63. package/components/dropdown/demo/api.md +520 -478
  64. package/components/dropdown/demo/api.min.js +80 -95
  65. package/components/dropdown/demo/index.md +65 -119
  66. package/components/dropdown/demo/index.min.js +70 -85
  67. package/components/dropdown/demo/readme.html +3 -4
  68. package/components/dropdown/demo/readme.md +78 -62
  69. package/components/dropdown/dist/auro-dropdown.d.ts +42 -33
  70. package/components/dropdown/dist/iconVersion.d.ts +1 -1
  71. package/components/dropdown/dist/index.js +70 -85
  72. package/components/dropdown/dist/registered.js +70 -85
  73. package/components/form/README.md +16 -58
  74. package/components/form/demo/api.md +16 -21
  75. package/components/form/demo/api.min.js +13 -8
  76. package/components/form/demo/index.md +38 -39
  77. package/components/form/demo/index.min.js +13 -8
  78. package/components/form/demo/readme.md +16 -58
  79. package/components/form/demo/working.html +1 -1
  80. package/components/form/dist/auro-form.d.ts +15 -3
  81. package/components/form/dist/index.js +13 -8
  82. package/components/form/dist/registered.js +13 -8
  83. package/components/input/README.md +55 -60
  84. package/components/input/demo/api.js +3 -5
  85. package/components/input/demo/api.md +558 -537
  86. package/components/input/demo/api.min.js +102 -115
  87. package/components/input/demo/index.js +0 -1
  88. package/components/input/demo/index.md +90 -203
  89. package/components/input/demo/index.min.js +87 -99
  90. package/components/input/demo/readme.html +3 -4
  91. package/components/input/demo/readme.md +55 -60
  92. package/components/input/dist/auro-input.d.ts +6 -5
  93. package/components/input/dist/base-input.d.ts +68 -69
  94. package/components/input/dist/iconVersion.d.ts +1 -1
  95. package/components/input/dist/index.js +87 -82
  96. package/components/input/dist/registered.js +87 -82
  97. package/components/menu/README.md +61 -61
  98. package/components/menu/demo/api.js +6 -8
  99. package/components/menu/demo/api.md +520 -577
  100. package/components/menu/demo/api.min.js +199 -97
  101. package/components/menu/demo/index.js +0 -5
  102. package/components/menu/demo/index.md +36 -119
  103. package/components/menu/demo/index.min.js +164 -101
  104. package/components/menu/demo/readme.html +3 -4
  105. package/components/menu/demo/readme.md +61 -61
  106. package/components/menu/dist/auro-menu.context.d.ts +5 -0
  107. package/components/menu/dist/auro-menu.d.ts +75 -37
  108. package/components/menu/dist/auro-menuoption.d.ts +38 -13
  109. package/components/menu/dist/index.js +164 -50
  110. package/components/menu/dist/registered.js +164 -50
  111. package/components/radio/README.md +61 -57
  112. package/components/radio/demo/api.js +2 -2
  113. package/components/radio/demo/api.md +241 -170
  114. package/components/radio/demo/api.min.js +154 -77
  115. package/components/radio/demo/index.md +22 -99
  116. package/components/radio/demo/index.min.js +145 -68
  117. package/components/radio/demo/readme.html +3 -4
  118. package/components/radio/demo/readme.md +61 -57
  119. package/components/radio/dist/auro-radio-group.d.ts +67 -35
  120. package/components/radio/dist/auro-radio.d.ts +56 -33
  121. package/components/radio/dist/index.js +145 -68
  122. package/components/radio/dist/registered.js +145 -68
  123. package/components/select/README.md +68 -65
  124. package/components/select/demo/api.html +1 -0
  125. package/components/select/demo/api.js +7 -7
  126. package/components/select/demo/api.md +1305 -625
  127. package/components/select/demo/api.min.js +357 -262
  128. package/components/select/demo/index.html +0 -2
  129. package/components/select/demo/index.md +25 -833
  130. package/components/select/demo/index.min.js +356 -230
  131. package/components/select/demo/readme.html +3 -4
  132. package/components/select/demo/readme.md +68 -65
  133. package/components/select/dist/auro-select.d.ts +99 -90
  134. package/components/select/dist/index.js +192 -180
  135. package/components/select/dist/registered.js +192 -180
  136. package/package.json +9 -4
@@ -134,22 +134,16 @@ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
134
134
  }
135
135
  };
136
136
 
137
- /* eslint-disable max-lines */
138
- // Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
137
+ /* eslint-disable max-lines, no-underscore-dangle */
138
+ // Copyright (c) 2026 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
139
139
  // See LICENSE in the project root for license information.
140
140
 
141
141
 
142
142
  /**
143
- * @attr {Boolean} checked - If set to true, the radio button will be filled.
144
- * @attr {Boolean} disabled - If set to true, the radio button will be non-clickable.
145
- * @attr {Boolean} required - Defines element as required.
146
- * @attr {Boolean} error - If set to true, sets an error state on the radio button.
147
- * @attr {Boolean} onDark - DEPRECATED - use `appearance` instead.
148
- * @event toggleSelected - Notifies that the component has toggled the checked/selected state.
149
- *
150
- * @prop {string} id - The id global attribute defines an identifier (ID) which must be unique in the whole document.
151
- * @attr id
143
+ * The `auro-radio` element is used to a button that allows the user to select one option from a set.
144
+ * @customElement auro-radio
152
145
  *
146
+ * @event toggleSelected - Notifies that the component has toggled the checked/selected state.
153
147
  * @event {CustomEvent<any>} change - (Deprecated) Notifies when checked value is changed.
154
148
  * @event {InputEvent} input - Notifies when when checked value is changed by user's interface.
155
149
  * @event focusSelected - Notifies that the component has gained focus.
@@ -161,12 +155,14 @@ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
161
155
  * @csspart radio-input - apply css to a specific checkbox's input.
162
156
  * @csspart radio-label - apply css to a specific checkbox's label.
163
157
  */
164
-
165
- // build the component class
166
158
  class AuroRadio extends i$2 {
167
159
  constructor() {
168
160
  super();
169
161
 
162
+ this._initializeDefaults();
163
+ }
164
+
165
+ _initializeDefaults() {
170
166
  this.appearance = "default";
171
167
  this.checked = false;
172
168
  this.disabled = false;
@@ -196,45 +192,44 @@ class AuroRadio extends i$2 {
196
192
 
197
193
  /**
198
194
  * Defines whether the component will be on lighter or darker backgrounds.
199
- * @property {'default', 'inverse'}
195
+ * @type {'default' | 'inverse'}
200
196
  * @default 'default'
201
197
  */
202
198
  appearance: {
203
199
  type: String,
204
200
  reflect: true
205
201
  },
202
+
203
+ /**
204
+ * If set to true, the radio button will be filled.
205
+ */
206
206
  checked: {
207
207
  type: Boolean,
208
208
  reflect: true
209
209
  },
210
+
211
+ /**
212
+ * If set to true, the radio button will be non-clickable.
213
+ */
210
214
  disabled: {
211
215
  type: Boolean,
212
216
  reflect: true
213
217
  },
214
- required: {
215
- type: Boolean,
216
- reflect: true
217
- },
218
+
219
+ /**
220
+ * If set to true, sets an error state on the radio button.
221
+ */
218
222
  error: {
219
223
  type: Boolean,
220
224
  reflect: true
221
225
  },
222
- onDark: {
223
- type: Boolean,
224
- reflect: true
225
- },
226
- label: { type: String },
227
- name: { type: String },
228
- value: { type: String },
229
226
 
230
227
  /**
231
- * Whether or not the radio button has been touched by the user.
232
- * @private
228
+ * The id global attribute defines an identifier (ID) which must be unique in the whole document.
233
229
  */
234
- touched: {
235
- type: Boolean,
236
- reflect: true,
237
- attribute: false
230
+ id: {
231
+ type: String,
232
+ reflect: true
238
233
  },
239
234
 
240
235
  /**
@@ -247,6 +242,32 @@ class AuroRadio extends i$2 {
247
242
  attribute: false
248
243
  },
249
244
 
245
+ /**
246
+ * Label for the radio button.
247
+ */
248
+ label: { type: String },
249
+
250
+ /**
251
+ * Name for the radio button group.
252
+ */
253
+ name: { type: String },
254
+
255
+ /**
256
+ * DEPRECATED - use `appearance="inverse"` instead.
257
+ */
258
+ onDark: {
259
+ type: Boolean,
260
+ reflect: true
261
+ },
262
+
263
+ /**
264
+ * Defines element as required.
265
+ */
266
+ required: {
267
+ type: Boolean,
268
+ reflect: true
269
+ },
270
+
250
271
  /**
251
272
  * Don't add to api.md since changing of this can easily break a11y.
252
273
  * @private
@@ -254,13 +275,28 @@ class AuroRadio extends i$2 {
254
275
  role: {
255
276
  type: String,
256
277
  reflect: true
257
- }
278
+ },
279
+
280
+ /**
281
+ * Whether or not the radio button has been touched by the user.
282
+ * @private
283
+ */
284
+ touched: {
285
+ type: Boolean,
286
+ reflect: true,
287
+ attribute: false
288
+ },
289
+
290
+ /**
291
+ * The value of the radio button.
292
+ */
293
+ value: { type: String }
258
294
  };
259
295
  }
260
296
 
261
297
  /**
262
298
  * This will register this element with the browser.
263
- * @param {string} [name="auro-radio"] - The name of element that you want to register to.
299
+ * @param {string} [name="auro-radio"] - The name of the element that you want to register.
264
300
  *
265
301
  * @example
266
302
  * AuroRadio.register("custom-radio") // This will resgiter this element to <custom-radio/>
@@ -1584,7 +1620,7 @@ class AuroHelpText extends i$2 {
1584
1620
  }
1585
1621
  }
1586
1622
 
1587
- var formkitVersion = '202511191711';
1623
+ var formkitVersion = '202601271813';
1588
1624
 
1589
1625
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
1590
1626
  // See LICENSE in the project root for license information.
@@ -1592,18 +1628,12 @@ var formkitVersion = '202511191711';
1592
1628
 
1593
1629
 
1594
1630
  /* eslint no-magic-numbers: ["error", { "ignore": [0, 1, -1] }] */
1595
- /* eslint-disable max-lines, lit/binding-positions, lit/no-invalid-html */
1631
+ /* eslint-disable max-lines, lit/binding-positions, lit/no-invalid-html, no-underscore-dangle */
1596
1632
 
1597
1633
  /**
1598
- * @attr {String} validity - Specifies the `validityState` this element is in.
1599
- * @attr {String} setCustomValidity - Sets a custom help text message to display for all validityStates.
1600
- * @attr {String} setCustomValidityCustomError - Custom help text message to display when validity = `customError`.
1601
- * @attr {String} setCustomValidityValueMissing - Custom help text message to display when validity = `valueMissing`.
1602
- * @attr {String} error - When defined, sets persistent validity to `customError` and sets `setCustomValidity` = attribute value.
1603
- * @attr {Boolean} noValidate - If set, disables auto-validation on blur.
1604
- * @attr {Boolean} onDark - DEPRECATED - use `appearance` instead.
1605
- * @attr {Boolean} required - Populates the `required` attribute on the element. Used for client-side validation.
1606
- * @attr {Object} optionSelected - Specifies the current selected radio button.
1634
+ * The `auro-radio-group` element is used to group a set `auro-radio` elements.
1635
+ * @customElement auro-radio-group
1636
+ *
1607
1637
  * @csspart radio-group - Apply css to the fieldset element in the shadow DOM
1608
1638
  * @slot {HTMLSlotElement} legend - Allows for the legend to be overridden.
1609
1639
  * @slot {HTMLSlotElement} optionalLabel - Allows overriding the optional display text "(optional)", which appears next to the label.
@@ -1616,6 +1646,10 @@ class AuroRadioGroup extends i$2 {
1616
1646
  constructor() {
1617
1647
  super();
1618
1648
 
1649
+ this._initializeDefaults();
1650
+ }
1651
+
1652
+ _initializeDefaults() {
1619
1653
  this.appearance = "default";
1620
1654
  this.disabled = false;
1621
1655
  this.horizontal = false;
@@ -1671,7 +1705,7 @@ class AuroRadioGroup extends i$2 {
1671
1705
 
1672
1706
  /**
1673
1707
  * Defines whether the component will be on lighter or darker backgrounds.
1674
- * @property {'default', 'inverse'}
1708
+ * @type {'default' | 'inverse'}
1675
1709
  * @default 'default'
1676
1710
  */
1677
1711
  appearance: {
@@ -1679,51 +1713,91 @@ class AuroRadioGroup extends i$2 {
1679
1713
  reflect: true
1680
1714
  },
1681
1715
 
1682
- disabled: {
1716
+ /**
1717
+ * If true, all radio buttons will be disabled.
1718
+ */
1719
+ disabled: {
1683
1720
  type: Boolean,
1684
1721
  reflect: true
1685
1722
  },
1686
- horizontal: { type: Boolean },
1687
- error: {
1723
+
1724
+ /**
1725
+ * If true, sets persistent validity to `customError` and sets `setCustomValidity` = attribute value.
1726
+ */
1727
+ error: {
1688
1728
  type: String,
1689
1729
  reflect: true
1690
1730
  },
1691
- value: {
1692
- type: String
1731
+
1732
+ /**
1733
+ * Indicates whether the legend slot is set or not.
1734
+ * @private
1735
+ */
1736
+ hasLegend: {
1737
+ type: Boolean,
1738
+ reflect: false,
1739
+ attribute: false
1693
1740
  },
1741
+
1742
+ /**
1743
+ * If true, displays radio buttons horizontally.
1744
+ */
1745
+ horizontal: { type: Boolean },
1746
+
1747
+ /**
1748
+ * If true, disables auto-validation on blur.
1749
+ */
1694
1750
  noValidate: {
1695
1751
  type: Boolean,
1696
1752
  reflect: true
1697
1753
  },
1754
+
1755
+ /**
1756
+ * DEPRECATED - use `appearance="inverse"` instead.
1757
+ */
1698
1758
  onDark: {
1699
1759
  type: Boolean,
1700
1760
  reflect: true
1701
1761
  },
1762
+
1763
+ /**
1764
+ * Specifies the current selected radio button.
1765
+ */
1766
+ optionSelected: {
1767
+ type: Object
1768
+ },
1769
+
1770
+ /**
1771
+ * Populates the `required` attribute on the element. Used for client-side validation.
1772
+ */
1702
1773
  required: {
1703
1774
  type: Boolean,
1704
1775
  reflect: true
1705
1776
  },
1777
+
1778
+ /**
1779
+ * Sets a custom help text message to display for all validityStates.
1780
+ */
1706
1781
  setCustomValidity: {
1707
1782
  type: String
1708
1783
  },
1784
+
1785
+ /**
1786
+ * Custom help text message to display when validity = `customError`.
1787
+ */
1709
1788
  setCustomValidityCustomError: {
1710
1789
  type: String
1711
1790
  },
1791
+
1792
+ /**
1793
+ * Custom help text message to display when validity = `valueMissing`.
1794
+ */
1712
1795
  setCustomValidityValueMissing: {
1713
1796
  type: String
1714
1797
  },
1715
- validity: {
1716
- type: String,
1717
- reflect: true
1718
- },
1719
- optionSelected: {
1720
- type: Object
1721
- },
1722
1798
 
1723
1799
  /**
1724
1800
  * Indicates whether the radio group is in a dirty state (has been interacted with).
1725
- * @type {boolean}
1726
- * @default false
1727
1801
  * @private
1728
1802
  */
1729
1803
  touched: {
@@ -1733,22 +1807,25 @@ class AuroRadioGroup extends i$2 {
1733
1807
  },
1734
1808
 
1735
1809
  /**
1736
- * Indicates whether the legend slot is set or not.
1737
- * @type {boolean}
1738
- * @default false
1739
- * @private
1810
+ * Specifies the `validityState` this element is in.
1740
1811
  */
1741
- hasLegend: {
1742
- type: Boolean,
1743
- reflect: false,
1744
- attribute: false
1812
+ validity: {
1813
+ type: String,
1814
+ reflect: true
1815
+ },
1816
+
1817
+ /**
1818
+ * Specifies the current value of the selected radio button.
1819
+ */
1820
+ value: {
1821
+ type: String
1745
1822
  }
1746
1823
  };
1747
1824
  }
1748
1825
 
1749
1826
  /**
1750
1827
  * This will register this element with the browser.
1751
- * @param {string} [name="auro-radio-group"] - The name of element that you want to register to.
1828
+ * @param {string} [name="auro-radio-group"] - The name of the element that you want to register.
1752
1829
  *
1753
1830
  * @example
1754
1831
  * AuroRadioGroup.register("custom-radio-group") // This will register this element to <custom-radio-group/>
@@ -48,10 +48,9 @@
48
48
  Prism.highlightAll();
49
49
  })
50
50
  </script>
51
- <script type="module">
52
- import { initExamples } from "./index.min.js";
51
+ <script src="./index.min.js" data-demo-script="true" type="module"></script>
53
52
 
54
- initExamples();
55
- </script>
53
+ <!-- If additional elements are needed for the demo, add them here. -->
54
+ <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-accordion@latest/+esm" type="module"></script>
56
55
  </body>
57
56
  </html>
@@ -18,6 +18,7 @@ The following sections are editable by making changes to the following files:
18
18
  -->
19
19
 
20
20
  # Radio
21
+
21
22
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/description.md) -->
22
23
  <!-- The below content is automatically added from ./docs/partials/description.md -->
23
24
  `<auro-radio>` is a [HTML custom element](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements) that is rendered as a small circle, which is filled or highlighted when selected. Only one `<auro-radio>` component in a given `<auro-radio-group>` can be selected at the same time.
@@ -27,7 +28,19 @@ The following sections are editable by making changes to the following files:
27
28
  <!-- AURO-GENERATED-CONTENT This file is to be used for any additional content that should be included in the README.md which is specific to this component. -->
28
29
  <!-- AURO-GENERATED-CONTENT:END -->
29
30
 
31
+ ## Radio Use Cases
32
+
33
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/useCases.md) -->
34
+ <!-- The below content is automatically added from ./docs/partials/useCases.md -->
35
+ The `<auro-radio>` element is designed to be a single component for the use of creating an input `type="radio"` with an associated `<label>` that meets all use case and accessibility standards.
36
+
37
+ The following examples illustrate fully functional `<auro-radio>` elements wrapped with the `<auro-radio-group>` element. The `<auro-radio-group>` element is REQUIRED in order to mantain the relationship between individual `<auro-radio>` elements for functional radio button actions.
38
+
39
+ **Note**: The `<auro-radio>` element is only for to for use as a set of two or more `<auro-radio>` elements within an `<auro-radio-group>` element.
40
+ <!-- AURO-GENERATED-CONTENT:END -->
41
+
30
42
  ## Getting Started
43
+
31
44
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/templates/componentInstall.md) -->
32
45
  <!-- The below content is automatically added from ../../docs/templates/componentInstall.md -->
33
46
 
@@ -40,30 +53,7 @@ $ npm i @aurodesignsystem/auro-formkit
40
53
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/templates/gettingStarted.md) -->
41
54
  <!-- The below content is automatically added from ../../docs/templates/gettingStarted.md -->
42
55
 
43
- ### Import Options
44
-
45
- #### Automatic Registration
46
-
47
- For automatic registration, simply import the component:
48
-
49
- ```javascript
50
- // Registers <auro-radio> automatically
51
- import '@aurodesignsystem/auro-formkit/auro-radio';
52
- ```
53
-
54
- #### Custom Registration
55
-
56
- To protect from versioning conflicts with other instances of the component being loaded, it is recommended to use our static `AuroRadio.register('custom-radio')` method on the component class and pass in a unique name.
57
-
58
- ```javascript
59
- // Import the class only
60
- import { AuroRadio } from '@aurodesignsystem/auro-formkit/auro-radio/class';
61
-
62
- // Register with a custom name if desired
63
- AuroRadio.register('custom-radio');
64
- ```
65
-
66
- #### TypeScript Module Resolution
56
+ ### TypeScript Module Resolution
67
57
 
68
58
  When using TypeScript set `moduleResolution` to `bundler`, add the following to your `tsconfig.json`:
69
59
 
@@ -76,25 +66,10 @@ When using TypeScript set `moduleResolution` to `bundler`, add the following to
76
66
  ```
77
67
 
78
68
  This configuration enables proper module resolution for the component's TypeScript files.
79
- <!-- AURO-GENERATED-CONTENT:END -->
80
- **Reference component in HTML**
81
-
82
- <!-- AURO-GENERATED-CONTENT:START (CODE:src=./apiExamples/basic.html) -->
83
- <!-- The below code snippet is automatically added from ./apiExamples/basic.html -->
84
-
85
- ```html
86
- <auro-radio id="basicRadio1" label="Yes" name="radioDemo" value="yes"></auro-radio>
87
- ```
88
- <!-- AURO-GENERATED-CONTENT:END -->
89
-
90
- ### Design Token CSS Custom Property dependency
91
-
92
- <!-- AURO-GENERATED-CONTENT:START (REMOTE:url=https://raw.githubusercontent.com/AlaskaAirlines/WC-Generator/master/componentDocs/partials/development/designTokens.md) -->
93
- The use of any Auro custom element has a dependency on the [Auro Design Tokens](https://auro.alaskaair.com/getting-started/developers/design-tokens).
94
-
95
69
  <!-- AURO-GENERATED-CONTENT:END -->
96
70
 
97
71
  ## Install from CDN
72
+
98
73
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/templates/bundleInstallDescription.md) -->
99
74
  <!-- The below content is automatically added from ../../docs/templates/bundleInstallDescription.md -->
100
75
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
@@ -104,23 +79,7 @@ In cases where the project is not able to process JS assets, there are pre-proce
104
79
  ```
105
80
  <!-- AURO-GENERATED-CONTENT:END -->
106
81
 
107
- ## UI development browser support
108
- <!-- AURO-GENERATED-CONTENT:START (REMOTE:url=https://raw.githubusercontent.com/AlaskaAirlines/WC-Generator/master/componentDocs/partials/browserSupport.md) -->
109
- For the most up to date information on [UI development browser support](https://auro.alaskaair.com/support/browsersSupport)
110
-
111
- <!-- AURO-GENERATED-CONTENT:END -->
112
-
113
- ## auro-radio use cases
114
- <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/useCases.md) -->
115
- <!-- The below content is automatically added from ./docs/partials/useCases.md -->
116
- The `<auro-radio>` element is designed to be a single component for the use of creating an input `type="radio"` with an associated `<label>` that meets all use case and accessibility standards.
117
-
118
- The following examples illustrate fully functional `<auro-radio>` elements wrapped with the `<auro-radio-group>` element. The `<auro-radio-group>` element is REQUIRED in order to mantain the relationship between individual `<auro-radio>` elements for functional radio button actions.
119
-
120
- **Note**: The `<auro-radio>` element is only for to for use as a set of two or more `<auro-radio>` elements within an `<auro-radio-group>` element.
121
- <!-- AURO-GENERATED-CONTENT:END -->
122
-
123
- ## Formkit development
82
+ ## Formkit Development
124
83
 
125
84
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/partials/developmentDescription.md) -->
126
85
  <!-- The below content is automatically added from ../../docs/partials/developmentDescription.md -->
@@ -134,4 +93,49 @@ To only develop a single component, use the `--filter` flag:
134
93
  ```shell
135
94
  npx turbo dev --filter=@aurodesignsystem/auro-input
136
95
  ```
96
+ <!-- AURO-GENERATED-CONTENT:END -->
97
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/customRegistration.md) -->
98
+ <!-- The below content is automatically added from ./docs/partials/customRegistration.md -->
99
+
100
+ ## Custom Component Registration for Version Management
101
+
102
+ There are two key parts to every Auro component: the <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes">class</a> and the custom element definition. The class defines the component’s behavior, while the custom element registers it under a specific name so it can be used in HTML.
103
+
104
+ When you install the component as described on the `Install` page, the class is imported automatically, and the component is registered globally for you.
105
+
106
+ However, if you need to load multiple versions of the same component on a single page (for example, when two projects depend on different versions), you can manually register the class under a custom element name to avoid conflicts.
107
+
108
+ You can do this by importing only the component class and using the `register(name)` method with a unique name:
109
+
110
+ ```js
111
+ // Import the class only
112
+ import { AuroRadio, AuroRadioGroup } from '@aurodesignsystem/auro-formkit/auro-radio/class';
113
+
114
+ // Register with a custom name if desired
115
+ AuroRadio.register('custom-radio');
116
+ AuroRadioGroup.register('custom-radio-group');
117
+ ```
118
+
119
+ This will create a new custom element `<custom-radio>` and `<custom-radio-group>` that behaves exactly like `<auro-radio>` and `<auro-radio-group>`, allowing both to coexist on the same page without interfering with each other.
120
+
121
+ <div class="exampleWrapper exampleWrapper--flex">
122
+ <custom-radio-group>
123
+ <span slot="legend">Form label goes here</span>
124
+ <custom-radio id="customRadio1" label="Yes" name="radioDemo" value="yes"></custom-radio>
125
+ <custom-radio id="customRadio2" label="No" name="radioDemo" value="no"></custom-radio>
126
+ <custom-radio id="customRadio3" label="Maybe" name="radioDemo" value="maybe"></custom-radio>
127
+ </custom-radio-group>
128
+ </div>
129
+ <auro-accordion alignRight>
130
+ <span slot="trigger">See code</span>
131
+
132
+ ```html
133
+ <custom-radio-group>
134
+ <span slot="legend">Form label goes here</span>
135
+ <custom-radio id="customRadio1" label="Yes" name="radioDemo" value="yes"></custom-radio>
136
+ <custom-radio id="customRadio2" label="No" name="radioDemo" value="no"></custom-radio>
137
+ <custom-radio id="customRadio3" label="Maybe" name="radioDemo" value="maybe"></custom-radio>
138
+ </custom-radio-group>
139
+ ```
140
+ </auro-accordion>
137
141
  <!-- AURO-GENERATED-CONTENT:END -->