@aurodesignsystem-dev/auro-formkit 0.0.0-pr1456.1 → 0.0.0-pr1457.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 (281) hide show
  1. package/components/bibtemplate/dist/iconVersion.d.ts +1 -1
  2. package/components/bibtemplate/dist/index.js +10 -10
  3. package/components/bibtemplate/dist/registered.js +10 -10
  4. package/components/checkbox/README.md +26 -56
  5. package/components/checkbox/demo/accessibility.html +48 -0
  6. package/components/checkbox/demo/accessibility.md +44 -0
  7. package/components/checkbox/demo/api.html +17 -26
  8. package/components/checkbox/demo/api.md +0 -396
  9. package/components/checkbox/demo/api.min.js +2 -2106
  10. package/components/checkbox/demo/customize.html +51 -0
  11. package/components/checkbox/demo/customize.md +361 -0
  12. package/components/checkbox/demo/demo-support.js +60 -0
  13. package/components/checkbox/demo/demo-support.min.js +55732 -0
  14. package/components/checkbox/demo/design.html +51 -0
  15. package/components/checkbox/demo/design.md +149 -0
  16. package/components/checkbox/demo/getting-started.html +51 -0
  17. package/components/checkbox/demo/getting-started.md +261 -0
  18. package/components/checkbox/demo/index.html +17 -21
  19. package/components/checkbox/demo/index.md +158 -45
  20. package/components/checkbox/demo/index.min.js +2 -3
  21. package/components/checkbox/demo/install.md +82 -0
  22. package/components/checkbox/demo/keyboard-behavior.html +48 -0
  23. package/components/checkbox/demo/readme.html +10 -18
  24. package/components/checkbox/demo/readme.md +26 -56
  25. package/components/checkbox/demo/styles.min.css +1 -0
  26. package/components/checkbox/demo/styles.scss +1 -0
  27. package/components/checkbox/demo/voiceover.html +48 -0
  28. package/components/checkbox/demo/voiceover.md +37 -0
  29. package/components/checkbox/dist/auro-checkbox-group.d.ts +6 -6
  30. package/components/checkbox/dist/auro-checkbox.d.ts +8 -9
  31. package/components/checkbox/dist/index.js +2 -3
  32. package/components/checkbox/dist/registered.js +2 -3
  33. package/components/combobox/README.md +41 -66
  34. package/components/combobox/demo/accessibility.html +50 -0
  35. package/components/combobox/demo/accessibility.md +77 -0
  36. package/components/combobox/demo/api.html +8 -20
  37. package/components/combobox/demo/api.md +54 -2334
  38. package/components/combobox/demo/api.min.js +3 -17971
  39. package/components/combobox/demo/customize.html +52 -0
  40. package/components/combobox/demo/customize.js +24 -0
  41. package/components/combobox/demo/customize.md +1249 -0
  42. package/components/combobox/demo/customize.min.js +177 -0
  43. package/components/combobox/demo/demo-support.js +60 -0
  44. package/components/combobox/demo/demo-support.min.js +55732 -0
  45. package/components/combobox/demo/design.html +53 -0
  46. package/components/combobox/demo/design.md +283 -0
  47. package/components/combobox/demo/getting-started.html +52 -0
  48. package/components/combobox/demo/getting-started.js +21 -0
  49. package/components/combobox/demo/getting-started.md +397 -0
  50. package/components/combobox/demo/getting-started.min.js +12 -0
  51. package/components/combobox/demo/index.html +16 -22
  52. package/components/combobox/demo/index.js +3 -2
  53. package/components/combobox/demo/index.md +298 -188
  54. package/components/combobox/demo/index.min.js +13 -17956
  55. package/components/combobox/demo/install.md +77 -0
  56. package/components/combobox/demo/{keyboardBehavior.html → keyboard-behavior.html} +5 -11
  57. package/components/combobox/demo/keyboard-behavior.md +276 -0
  58. package/components/combobox/demo/readme.html +5 -11
  59. package/components/combobox/demo/readme.md +41 -66
  60. package/components/combobox/demo/registered.min.js +18095 -0
  61. package/components/combobox/demo/styles.css +974 -0
  62. package/components/combobox/demo/styles.min.css +1 -0
  63. package/components/combobox/demo/styles.scss +1 -0
  64. package/components/combobox/demo/swap-value.min.js +16 -0
  65. package/components/combobox/demo/voiceover.html +59 -0
  66. package/components/combobox/demo/voiceover.md +118 -0
  67. package/components/combobox/dist/auro-combobox.d.ts +35 -35
  68. package/components/combobox/dist/index.js +183 -46
  69. package/components/combobox/dist/registered.js +183 -46
  70. package/components/counter/README.md +37 -55
  71. package/components/counter/demo/api.md +745 -813
  72. package/components/counter/demo/api.min.js +182 -44
  73. package/components/counter/demo/index.md +28 -32
  74. package/components/counter/demo/index.min.js +182 -44
  75. package/components/counter/demo/keyboard-behavior.md +127 -0
  76. package/components/counter/demo/readme.md +37 -55
  77. package/components/counter/dist/auro-counter-group.d.ts +2 -2
  78. package/components/counter/dist/auro-counter.d.ts +10 -10
  79. package/components/counter/dist/index.js +181 -43
  80. package/components/counter/dist/registered.js +181 -43
  81. package/components/datepicker/README.md +23 -51
  82. package/components/datepicker/demo/accessibility.html +50 -0
  83. package/components/datepicker/demo/accessibility.md +64 -0
  84. package/components/datepicker/demo/api.md +0 -1774
  85. package/components/datepicker/demo/api.min.js +2 -24475
  86. package/components/datepicker/demo/auro-datepicker.min.js +24613 -0
  87. package/components/datepicker/demo/customize.html +52 -0
  88. package/components/datepicker/demo/customize.md +723 -0
  89. package/components/datepicker/demo/demo-support.js +60 -0
  90. package/components/datepicker/demo/demo-support.min.js +55732 -0
  91. package/components/datepicker/demo/design.html +54 -0
  92. package/components/datepicker/demo/design.md +158 -0
  93. package/components/datepicker/demo/getting-started.html +52 -0
  94. package/components/datepicker/demo/getting-started.md +237 -0
  95. package/components/datepicker/demo/index.html +14 -35
  96. package/components/datepicker/demo/index.md +201 -152
  97. package/components/datepicker/demo/index.min.js +1 -24474
  98. package/components/datepicker/demo/keyboard-behavior.html +12 -33
  99. package/components/datepicker/demo/readme.md +23 -51
  100. package/components/datepicker/demo/styles.min.css +1 -0
  101. package/components/datepicker/demo/styles.scss +1 -0
  102. package/components/datepicker/demo/voiceover.html +59 -0
  103. package/components/datepicker/demo/voiceover.md +98 -0
  104. package/components/datepicker/dist/index.js +194 -57
  105. package/components/datepicker/dist/registered.js +194 -57
  106. package/components/datepicker/dist/{auro-calendar-cell.d.ts → src/auro-calendar-cell.d.ts} +2 -2
  107. package/components/datepicker/dist/{auro-datepicker.d.ts → src/auro-datepicker.d.ts} +13 -13
  108. package/components/datepicker/dist/src/iconVersion.d.ts +2 -0
  109. package/components/datepicker/dist/{utilities.d.ts → src/utilities.d.ts} +4 -4
  110. package/components/datepicker/dist/{utilitiesCalendar.d.ts → src/utilitiesCalendar.d.ts} +3 -3
  111. package/components/datepicker/dist/{vendor → src/vendor}/wc-range-datepicker/range-datepicker-calendar.d.ts +2 -2
  112. package/components/datepicker/dist/{vendor → src/vendor}/wc-range-datepicker/range-datepicker.d.ts +1 -1
  113. package/components/dropdown/README.md +35 -53
  114. package/components/dropdown/demo/api.md +717 -773
  115. package/components/dropdown/demo/api.min.js +161 -23
  116. package/components/dropdown/demo/index.md +120 -130
  117. package/components/dropdown/demo/index.min.js +161 -23
  118. package/components/dropdown/demo/{keyboardBehavior.md → keyboard-behavior.md} +52 -57
  119. package/components/dropdown/demo/readme.md +35 -53
  120. package/components/dropdown/dist/auro-dropdown.d.ts +22 -22
  121. package/components/dropdown/dist/auro-dropdownBib.d.ts +3 -3
  122. package/components/dropdown/dist/dropdownBibKeyboardStrategy.d.ts +1 -1
  123. package/components/dropdown/dist/iconVersion.d.ts +1 -1
  124. package/components/dropdown/dist/index.js +160 -22
  125. package/components/dropdown/dist/registered.js +160 -22
  126. package/components/form/README.md +14 -34
  127. package/components/form/demo/api.md +156 -162
  128. package/components/form/demo/api.min.js +756 -208
  129. package/components/form/demo/index.md +27 -33
  130. package/components/form/demo/index.min.js +756 -208
  131. package/components/form/demo/keyboard-behavior.md +38 -0
  132. package/components/form/demo/readme.md +14 -34
  133. package/components/input/README.md +28 -53
  134. package/components/input/demo/accessibility.html +37 -0
  135. package/components/input/demo/accessibility.md +69 -0
  136. package/components/input/demo/api.html +17 -23
  137. package/components/input/demo/api.js +4 -23
  138. package/components/input/demo/api.md +67 -1359
  139. package/components/input/demo/api.min.js +1 -7453
  140. package/components/input/demo/auro-input.min.js +7362 -0
  141. package/components/input/demo/customize.html +53 -0
  142. package/components/input/demo/customize.js +25 -0
  143. package/components/input/demo/customize.md +1372 -0
  144. package/components/input/demo/customize.min.js +71 -0
  145. package/components/input/demo/demo-support.js +60 -0
  146. package/components/input/demo/demo-support.min.js +55732 -0
  147. package/components/input/demo/design.html +38 -0
  148. package/components/input/demo/design.md +224 -0
  149. package/components/input/demo/getting-started.html +52 -0
  150. package/components/input/demo/getting-started.js +8 -0
  151. package/components/input/demo/getting-started.md +312 -0
  152. package/components/input/demo/getting-started.min.js +9 -0
  153. package/components/input/demo/index.html +16 -23
  154. package/components/input/demo/index.js +0 -11
  155. package/components/input/demo/index.md +180 -154
  156. package/components/input/demo/index.min.js +1 -7373
  157. package/components/input/demo/keyboard-behavior.html +37 -0
  158. package/components/input/demo/readme.md +28 -53
  159. package/components/input/demo/styles.css +974 -0
  160. package/components/input/demo/styles.min.css +1 -0
  161. package/components/input/demo/styles.scss +1 -0
  162. package/components/input/demo/voiceover.html +37 -0
  163. package/components/input/demo/voiceover.md +70 -0
  164. package/components/input/dist/auro-input.d.ts +1 -1
  165. package/components/input/dist/base-input.d.ts +29 -30
  166. package/components/input/dist/iconVersion.d.ts +1 -1
  167. package/components/input/dist/index.js +10 -11
  168. package/components/input/dist/registered.js +10 -11
  169. package/components/menu/README.md +24 -42
  170. package/components/menu/demo/api.md +785 -829
  171. package/components/menu/demo/api.min.js +7 -7
  172. package/components/menu/demo/index.md +33 -35
  173. package/components/menu/demo/index.min.js +7 -7
  174. package/components/menu/demo/keyboard-behavior.md +18 -0
  175. package/components/menu/demo/readme.md +24 -42
  176. package/components/menu/dist/auro-menu-utils.d.ts +1 -1
  177. package/components/menu/dist/auro-menu.context.d.ts +3 -3
  178. package/components/menu/dist/auro-menu.d.ts +4 -4
  179. package/components/menu/dist/auro-menuoption.d.ts +6 -6
  180. package/components/menu/dist/index.js +6 -6
  181. package/components/menu/dist/registered.js +6 -6
  182. package/components/radio/README.md +22 -49
  183. package/components/radio/demo/accessibility.html +51 -0
  184. package/components/radio/demo/accessibility.md +44 -0
  185. package/components/radio/demo/api.html +13 -20
  186. package/components/radio/demo/api.md +44 -621
  187. package/components/radio/demo/api.min.js +1 -1
  188. package/components/radio/demo/customize.html +53 -0
  189. package/components/radio/demo/customize.md +368 -0
  190. package/components/radio/demo/demo-support.js +60 -0
  191. package/components/radio/demo/design.html +52 -0
  192. package/components/radio/demo/design.md +143 -0
  193. package/components/radio/demo/getting-started.html +54 -0
  194. package/components/radio/demo/getting-started.md +296 -0
  195. package/components/radio/demo/index.html +16 -19
  196. package/components/radio/demo/index.md +124 -63
  197. package/components/radio/demo/index.min.js +1 -1
  198. package/components/radio/demo/keyboard-behavior.html +51 -0
  199. package/components/radio/demo/keyboard-behavior.md +72 -0
  200. package/components/radio/demo/layout.md +30 -0
  201. package/components/radio/demo/readme.html +11 -17
  202. package/components/radio/demo/readme.md +22 -49
  203. package/components/radio/demo/styles.css +974 -0
  204. package/components/radio/demo/voiceover.html +51 -0
  205. package/components/radio/demo/voiceover.md +43 -0
  206. package/components/radio/dist/auro-radio-group.d.ts +9 -9
  207. package/components/radio/dist/auro-radio.d.ts +8 -8
  208. package/components/radio/dist/index.js +1 -1
  209. package/components/radio/dist/registered.js +1 -1
  210. package/components/select/README.md +50 -68
  211. package/components/select/demo/accessibility.html +50 -0
  212. package/components/select/demo/accessibility.md +76 -0
  213. package/components/select/demo/api.html +5 -17
  214. package/components/select/demo/api.md +52 -2422
  215. package/components/select/demo/customize.html +52 -0
  216. package/components/select/demo/customize.js +11 -0
  217. package/components/select/demo/customize.md +1049 -0
  218. package/components/select/demo/customize.min.js +12 -0
  219. package/components/select/demo/demo-support.js +60 -0
  220. package/components/select/demo/demo-support.min.js +55732 -0
  221. package/components/select/demo/design.html +51 -0
  222. package/components/select/demo/design.md +391 -0
  223. package/components/select/demo/getting-started.html +52 -0
  224. package/components/select/demo/getting-started.js +26 -0
  225. package/components/select/demo/getting-started.md +412 -0
  226. package/components/select/demo/getting-started.min.js +56 -0
  227. package/components/select/demo/index.html +18 -35
  228. package/components/select/demo/index.js +5 -3
  229. package/components/select/demo/index.md +165 -345
  230. package/components/select/demo/index.min.js +6 -10484
  231. package/components/select/demo/install.md +95 -0
  232. package/components/select/demo/keyboard-behavior.html +8 -39
  233. package/components/select/demo/keyboard-behavior.md +249 -0
  234. package/components/select/demo/keyboardBehavior.html +5 -38
  235. package/components/select/demo/layout.html +51 -0
  236. package/components/select/demo/readme.html +5 -13
  237. package/components/select/demo/readme.md +50 -68
  238. package/components/select/demo/{api.min.js → registered.min.js} +179 -151
  239. package/components/select/demo/styles.min.css +1 -0
  240. package/components/select/demo/styles.scss +1 -0
  241. package/components/select/demo/voiceover.html +48 -0
  242. package/components/select/demo/voiceover.md +183 -0
  243. package/components/select/dist/auro-select.d.ts +11 -11
  244. package/components/select/dist/index.js +171 -33
  245. package/components/select/dist/registered.js +171 -33
  246. package/custom-elements.json +1491 -1494
  247. package/package.json +37 -30
  248. package/components/checkbox/demo/keyboardBehavior.md +0 -0
  249. package/components/combobox/demo/keyboardBehavior.md +0 -281
  250. package/components/counter/demo/keyboardBehavior.md +0 -127
  251. package/components/datepicker/demo/keyboardBehavior.md +0 -19
  252. package/components/datepicker/dist/iconVersion.d.ts +0 -2
  253. package/components/form/demo/keyboardBehavior.md +0 -0
  254. package/components/input/demo/keyboardBehavior.md +0 -0
  255. package/components/menu/demo/keyboardBehavior.md +0 -0
  256. package/components/radio/demo/keyboardBehavior.md +0 -0
  257. package/components/select/demo/api.js +0 -39
  258. package/components/select/demo/keyboardBehavior.md +0 -245
  259. /package/components/datepicker/dist/{auro-calendar-month.d.ts → src/auro-calendar-month.d.ts} +0 -0
  260. /package/components/datepicker/dist/{auro-calendar.d.ts → src/auro-calendar.d.ts} +0 -0
  261. /package/components/datepicker/dist/{buttonVersion.d.ts → src/buttonVersion.d.ts} +0 -0
  262. /package/components/datepicker/dist/{datepickerKeyboardStrategy.d.ts → src/datepickerKeyboardStrategy.d.ts} +0 -0
  263. /package/components/datepicker/dist/{index.d.ts → src/index.d.ts} +0 -0
  264. /package/components/datepicker/dist/{popoverVersion.d.ts → src/popoverVersion.d.ts} +0 -0
  265. /package/components/datepicker/dist/{styles → src/styles}/classic/color-css.d.ts +0 -0
  266. /package/components/datepicker/dist/{styles → src/styles}/classic/style-css.d.ts +0 -0
  267. /package/components/datepicker/dist/{styles → src/styles}/color-calendar-css.d.ts +0 -0
  268. /package/components/datepicker/dist/{styles → src/styles}/color-cell-css.d.ts +0 -0
  269. /package/components/datepicker/dist/{styles → src/styles}/color-css.d.ts +0 -0
  270. /package/components/datepicker/dist/{styles → src/styles}/color-month-css.d.ts +0 -0
  271. /package/components/datepicker/dist/{styles → src/styles}/shapeSize-css.d.ts +0 -0
  272. /package/components/datepicker/dist/{styles → src/styles}/snowflake/color-css.d.ts +0 -0
  273. /package/components/datepicker/dist/{styles → src/styles}/snowflake/style-css.d.ts +0 -0
  274. /package/components/datepicker/dist/{styles → src/styles}/style-auro-calendar-cell-css.d.ts +0 -0
  275. /package/components/datepicker/dist/{styles → src/styles}/style-auro-calendar-css.d.ts +0 -0
  276. /package/components/datepicker/dist/{styles → src/styles}/style-auro-calendar-month-css.d.ts +0 -0
  277. /package/components/datepicker/dist/{styles → src/styles}/style-css.d.ts +0 -0
  278. /package/components/datepicker/dist/{styles → src/styles}/tokens-css.d.ts +0 -0
  279. /package/components/datepicker/dist/{utilitiesCalendarRender.d.ts → src/utilitiesCalendarRender.d.ts} +0 -0
  280. /package/components/datepicker/dist/{vendor → src/vendor}/wc-range-datepicker/day.d.ts +0 -0
  281. /package/components/datepicker/dist/{vendor → src/vendor}/wc-range-datepicker/range-datepicker-cell.d.ts +0 -0
@@ -0,0 +1,37 @@
1
+ <auro-header level="1" id="overview">Checkbox - VoiceOver Behavior</auro-header>
2
+ <p>This page documents the VoiceOver experience when using the <code>&lt;auro-checkbox&gt;</code> component. It covers announcements and gestures for interacting with checkbox groups.</p>
3
+ <auro-header level="2" id="voiceOverInteractiveAnnouncements">Interactive Announcements</auro-header>
4
+ <auro-header level="3" id="voiceOverFocusAnnouncement">Focus</auro-header>
5
+ <p>When focus moves to a checkbox the following is announced:</p>
6
+ <ol>
7
+ <li><strong>Label:</strong> The checkbox label text (default slot content)</li>
8
+ <li><strong>State:</strong> <em>"checked"</em> or <em>"unchecked"</em></li>
9
+ <li><strong>Role:</strong> <em>"checkbox"</em></li>
10
+ <li>
11
+ <strong>State hints:</strong>
12
+ <table class="compressed body-xs">
13
+ <thead>
14
+ <tr>
15
+ <th>State</th>
16
+ <th>What gets announced</th>
17
+ </tr>
18
+ </thead>
19
+ <tbody>
20
+ <tr>
21
+ <td>Disabled</td>
22
+ <td><em>"dimmed"</em></td>
23
+ </tr>
24
+ <tr>
25
+ <td>Invalid</td>
26
+ <td><em>"invalid data"</em></td>
27
+ </tr>
28
+ </tbody>
29
+ </table>
30
+ </li>
31
+ </ol>
32
+ <auro-header level="3" id="voiceOverGroupContext">Group Context</auro-header>
33
+ <p>When entering a checkbox group, VoiceOver announces the legend text followed by <em>"group"</em> to provide context for the set of related checkboxes.</p>
34
+ <auro-header level="3" id="voiceOverToggle">Toggle Announcement</auro-header>
35
+ <p>When the user toggles a checkbox via <kbd>Space</kbd> or double-tap, VoiceOver announces the new state: <em>"checked"</em> or <em>"unchecked"</em>.</p>
36
+ <auro-header level="3" id="voiceOverNavigation">Navigation</auro-header>
37
+ <p>Each checkbox is an independent tab stop. Users navigate between checkboxes using <kbd>Tab</kbd> / <kbd>Shift+Tab</kbd> or VoiceOver's swipe gestures. Arrow key navigation within a group is not currently supported.</p>
@@ -95,12 +95,12 @@ export class AuroCheckboxGroup extends LitElement {
95
95
  */
96
96
  static register(name?: string): void;
97
97
  _initializeDefaults(): void;
98
- appearance: string;
98
+ appearance: string | undefined;
99
99
  validity: any;
100
100
  disabled: any;
101
- required: boolean;
102
- horizontal: boolean;
103
- onDark: boolean;
101
+ required: boolean | undefined;
102
+ horizontal: boolean | undefined;
103
+ onDark: boolean | undefined;
104
104
  /**
105
105
  * Indicates whether the checkbox group is in a dirty state (has been interacted with).
106
106
  * @type {boolean}
@@ -141,7 +141,7 @@ export class AuroCheckboxGroup extends LitElement {
141
141
  */
142
142
  private handleValueUpdate;
143
143
  firstUpdated(): void;
144
- focusWithin: boolean;
144
+ focusWithin: boolean | undefined;
145
145
  /**
146
146
  * Helper method that handles the state of preselected checkboxes.
147
147
  * @private
@@ -154,7 +154,7 @@ export class AuroCheckboxGroup extends LitElement {
154
154
  * @returns {void}
155
155
  */
156
156
  private handleItems;
157
- checkboxes: Element[];
157
+ checkboxes: Element[] | undefined;
158
158
  /**
159
159
  * Resets component to initial state.
160
160
  * @returns {void}
@@ -46,7 +46,6 @@ export class AuroCheckbox extends LitElement {
46
46
  */
47
47
  id: {
48
48
  type: StringConstructor;
49
- reflect: boolean;
50
49
  };
51
50
  /**
52
51
  * The id for input node.
@@ -133,12 +132,12 @@ export class AuroCheckbox extends LitElement {
133
132
  */
134
133
  static register(name?: string): void;
135
134
  _initializeDefaults(): void;
136
- appearance: string;
135
+ appearance: string | undefined;
137
136
  checked: any;
138
- disabled: boolean;
139
- error: boolean;
140
- onDark: boolean;
141
- touched: boolean;
137
+ disabled: boolean | undefined;
138
+ error: boolean | undefined;
139
+ onDark: boolean | undefined;
140
+ touched: boolean | undefined;
142
141
  /**
143
142
  * @private
144
143
  */
@@ -172,8 +171,8 @@ export class AuroCheckbox extends LitElement {
172
171
  * @returns {HTMLElement}
173
172
  */
174
173
  private generateIconHtml;
175
- dom: Document;
176
- svg: ChildNode;
174
+ dom: Document | undefined;
175
+ svg: ChildNode | null | undefined;
177
176
  /**
178
177
  * Resets component to initial state.
179
178
  * @returns {void}
@@ -186,7 +185,7 @@ export class AuroCheckbox extends LitElement {
186
185
  */
187
186
  private updateAriaLabel;
188
187
  firstUpdated(): void;
189
- inputId: string;
188
+ inputId: string | undefined;
190
189
  /**
191
190
  * Handles keydown event to toggle the checkbox with Space key.
192
191
  * @private
@@ -190,8 +190,7 @@ class AuroCheckbox extends LitElement {
190
190
  * The id global attribute defines an identifier (ID) which must be unique in the whole document.
191
191
  */
192
192
  id: {
193
- type: String,
194
- reflect: true
193
+ type: String
195
194
  },
196
195
 
197
196
  /**
@@ -1635,7 +1634,7 @@ class AuroHelpText extends LitElement {
1635
1634
  }
1636
1635
  }
1637
1636
 
1638
- var formkitVersion = '202605011845';
1637
+ var formkitVersion = '202605041857';
1639
1638
 
1640
1639
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1641
1640
  // See LICENSE in the project root for license information.
@@ -190,8 +190,7 @@ class AuroCheckbox extends LitElement {
190
190
  * The id global attribute defines an identifier (ID) which must be unique in the whole document.
191
191
  */
192
192
  id: {
193
- type: String,
194
- reflect: true
193
+ type: String
195
194
  },
196
195
 
197
196
  /**
@@ -1635,7 +1634,7 @@ class AuroHelpText extends LitElement {
1635
1634
  }
1636
1635
  }
1637
1636
 
1638
- var formkitVersion = '202605011845';
1637
+ var formkitVersion = '202605041857';
1639
1638
 
1640
1639
  // Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
1641
1640
  // See LICENSE in the project root for license information.
@@ -21,9 +21,19 @@ The following sections are editable by making changes to the following files:
21
21
 
22
22
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/description.md) -->
23
23
  <!-- The below content is automatically added from ./docs/partials/description.md -->
24
- `<auro-combobox>` is the combination of [dropdown](http://auro.alaskaair.com/components/auro/dropdown), [input](http://auro.alaskaair.com/components/auro/input), and [menu](http://auro.alaskaair.com/components/auro/menu) and allows users to filter search results from a predefined list as they type. When the user starts typing in the text input, a dropdown of a menu shows up to display options that match the user’s search.
25
-
26
- By default, `auro-combobox` behaves as a suggestion list. This means any value may be typed into the combobox and the menu list presented effectively provides sample or suggestion options. With the use of the `persistInput` attribute the `auro-combobox` behaves as a filter of menu options. In this mode. typing into the input field will execute the filter but will not set the `value` of the combobox. The combobox value is set by selecting a menu option. Clicking the `X` clear button in the input will remove the current value of the HTML5 input causing the menu filter to reset as well as remove the current value of the combobox.
24
+ <p><code>&lt;auro-combobox&gt;</code> combines a text input with a filterable dropdown menu, letting users either type a value or pick one from a list. As the user types, the menu narrows to show only matching options.</p>
25
+ <p>The component supports two modes:</p>
26
+ <ul>
27
+ <li><strong>Suggestion (default)</strong> — The user may type any value. The menu provides suggestions but does not restrict input.</li>
28
+ <li><strong>Filter</strong> — The user must select from the menu. Typing filters the available options but does not set the component's value. The value is only set when a menu option is selected.</li>
29
+ </ul>
30
+ <p>Common use cases:</p>
31
+ <ul>
32
+ <li><strong>Airport or city search</strong> — Type a city name or airport code to filter a long list of destinations.</li>
33
+ <li><strong>Country or region selection</strong> — Quickly find and select from a large set of geographic options.</li>
34
+ <li><strong>Autocomplete fields</strong> — Provide type-ahead suggestions for form fields where the set of valid values is known.</li>
35
+ <li><strong>Search with suggestions</strong> — Offer recommended results while still allowing freeform input.</li>
36
+ </ul>
27
37
  <!-- AURO-GENERATED-CONTENT:END -->
28
38
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/readmeAddlInfo.md) -->
29
39
  <!-- The below content is automatically added from ./docs/partials/readmeAddlInfo.md -->
@@ -50,11 +60,7 @@ The `<auro-combobox>` element should be used in situations where users may:
50
60
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/templates/componentInstall.md) -->
51
61
  <!-- The below content is automatically added from ../../docs/templates/componentInstall.md -->
52
62
 
53
- #### NPM Installation
54
-
55
- ```shell
56
- $ npm i @aurodesignsystem/auro-formkit
57
- ```
63
+ <pre class="language-shell"><code class="language-shell">$ npm i @aurodesignsystem/</code></pre>
58
64
  <!-- AURO-GENERATED-CONTENT:END -->
59
65
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=../../docs/templates/gettingStarted.md) -->
60
66
  <!-- The below content is automatically added from ../../docs/templates/gettingStarted.md -->
@@ -63,13 +69,11 @@ $ npm i @aurodesignsystem/auro-formkit
63
69
 
64
70
  When using TypeScript set `moduleResolution` to `bundler`, add the following to your `tsconfig.json`:
65
71
 
66
- ```json
67
- {
72
+ <pre class="language-json"><code class="language-json">{
68
73
  "compilerOptions": {
69
74
  "moduleResolution": "bundler"
70
75
  }
71
- }
72
- ```
76
+ }</code></pre>
73
77
 
74
78
  This configuration enables proper module resolution for the component's TypeScript files.
75
79
  <!-- AURO-GENERATED-CONTENT:END -->
@@ -80,9 +84,7 @@ This configuration enables proper module resolution for the component's TypeScri
80
84
  <!-- The below content is automatically added from ../../docs/templates/bundleInstallDescription.md -->
81
85
  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.
82
86
 
83
- ```html
84
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@latest/auro-combobox/+esm"></script>
85
- ```
87
+ <pre class="language-html"><code class="language-html">&lt;script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/@latest/auro-combobox/+esm"&gt;&lt;/script&gt;</code></pre>
86
88
  <!-- AURO-GENERATED-CONTENT:END -->
87
89
 
88
90
  ## Formkit Development
@@ -96,63 +98,36 @@ Running the `dev` command will open a `localhost` development server for all com
96
98
 
97
99
  To only develop a single component, use the `--filter` flag:
98
100
 
99
- ```shell
100
- npx turbo dev --filter=@aurodesignsystem/auro-input
101
- ```
101
+ <pre class="language-shell"><code class="language-shell">npx turbo dev --filter=@aurodesignsystem/auro-input</code></pre>
102
102
  <!-- AURO-GENERATED-CONTENT:END -->
103
103
  <!-- AURO-GENERATED-CONTENT:START (FILE:src=./docs/partials/customRegistration.md) -->
104
- <!-- The below content is automatically added from ./docs/partials/customRegistration.md -->
104
+ <!-- The below content is automatically added from ./docs/partials/customRegistration.md -->
105
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../../../docs/partials/customRegistrationDescription.md) -->
106
+ <!-- The below content is automatically added from ./../../../docs/partials/customRegistrationDescription.md -->
107
+ <p>Every Auro component consists of a JavaScript <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes">class</a> and a <a href="https://developer.mozilla.org/en-US/docs/Web/API/CustomElementRegistry/define">custom element registration</a>. The class defines the component's behavior, and the registration maps it to an HTML tag name so it can be used in markup.</p>
108
+ <p>The default import (shown above) handles both steps automatically, registering the component under its standard tag name.</p>
109
+ <p>If you need multiple versions of the same component on a single page — for example, when two projects depend on different versions — you can register the class under a custom tag name to avoid conflicts.</p>
110
+ <p>To do this, import the component class directly and call its <code>register(name)</code> method with a unique name:</p>
111
+ <!-- AURO-GENERATED-CONTENT:END -->
105
112
 
106
- ## Custom Component Registration for Version Management
107
-
108
- 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.
109
-
110
- When you install the component as described on the `Install` page, the class is imported automatically, and the component is registered globally for you.
111
-
112
- 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.
113
-
114
- You can do this by importing only the component class and using the `register(name)` method with a unique name:
115
-
116
- ```js
117
- // Import the class only
113
+ <pre class="language-js"><code class="language-js">// Import the class only
118
114
  import { AuroCombobox } from '@aurodesignsystem/auro-formkit/auro-combobox/class';
119
-
115
+
120
116
  // Register with a custom name if desired
121
- AuroCombobox.register('custom-combobox');
122
- ```
117
+ AuroCombobox.register('custom-combobox');</code></pre>
123
118
 
124
119
  This will create a new custom element `<custom-combobox>` that behaves exactly like `<auro-combobox>`, allowing both to coexist on the same page without interfering with each other.
125
120
 
126
- <div class="exampleWrapper exampleWrapper--flex">
127
- <custom-combobox>
128
- <span slot="bib.fullscreen.headline">Bib Header</span>
129
- <span slot="label">Name</span>
130
- <auro-menu>
131
- <auro-menuoption value="Apples" id="option-0">Apples</auro-menuoption>
132
- <auro-menuoption value="Oranges" id="option-1">Oranges</auro-menuoption>
133
- <auro-menuoption value="Peaches" id="option-2">Peaches</auro-menuoption>
134
- <auro-menuoption value="Grapes" id="option-3">Grapes</auro-menuoption>
135
- <auro-menuoption value="Cherries" id="option-4">Cherries</auro-menuoption>
136
- <auro-menuoption static nomatch>No matching option</auro-menuoption>
137
- </auro-menu>
138
- </custom-combobox>
139
- </div>
140
- <auro-accordion alignRight>
141
- <span slot="trigger">See code</span>
142
-
143
- ```html
144
- <custom-combobox>
145
- <span slot="bib.fullscreen.headline">Bib Header</span>
146
- <span slot="label">Name</span>
147
- <auro-menu>
148
- <auro-menuoption value="Apples" id="option-0">Apples</auro-menuoption>
149
- <auro-menuoption value="Oranges" id="option-1">Oranges</auro-menuoption>
150
- <auro-menuoption value="Peaches" id="option-2">Peaches</auro-menuoption>
151
- <auro-menuoption value="Grapes" id="option-3">Grapes</auro-menuoption>
152
- <auro-menuoption value="Cherries" id="option-4">Cherries</auro-menuoption>
153
- <auro-menuoption static nomatch>No matching option</auro-menuoption>
154
- </auro-menu>
155
- </custom-combobox>
156
- ```
157
- </auro-accordion>
121
+ <pre class="language-html"><code class="language-html">&lt;custom-combobox&gt;
122
+ &lt;span slot="bib.fullscreen.headline"&gt;Bib Header&lt;/span&gt;
123
+ &lt;span slot="label"&gt;Name&lt;/span&gt;
124
+ &lt;auro-menu&gt;
125
+ &lt;auro-menuoption value="Apples" id="option-0"&gt;Apples&lt;/auro-menuoption&gt;
126
+ &lt;auro-menuoption value="Oranges" id="option-1"&gt;Oranges&lt;/auro-menuoption&gt;
127
+ &lt;auro-menuoption value="Peaches" id="option-2"&gt;Peaches&lt;/auro-menuoption&gt;
128
+ &lt;auro-menuoption value="Grapes" id="option-3"&gt;Grapes&lt;/auro-menuoption&gt;
129
+ &lt;auro-menuoption value="Cherries" id="option-4"&gt;Cherries&lt;/auro-menuoption&gt;
130
+ &lt;auro-menuoption static nomatch&gt;No matching option&lt;/auro-menuoption&gt;
131
+ &lt;/auro-menu&gt;
132
+ &lt;/custom-combobox&gt;</code></pre>
158
133
  <!-- AURO-GENERATED-CONTENT:END -->
@@ -0,0 +1,50 @@
1
+ <!--
2
+ Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
3
+ See LICENSE in the project root for license information.
4
+
5
+ HTML in this document is standardized and NOT to be edited.
6
+ All demo code should be added/edited in ./demo/accessibility.md
7
+
8
+ With the exception of adding custom elements if needed for the demo.
9
+
10
+ ----------------------- DO NOT EDIT -----------------------------
11
+
12
+ -->
13
+
14
+ <!DOCTYPE html>
15
+ <html lang="en">
16
+ <head>
17
+ <meta charset="UTF-8" />
18
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
19
+ <title>Auro Web Component Demo | auro-combobox | Accessibility</title>
20
+
21
+ <!-- highlight.js Stylesheet -->
22
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.9.0/build/styles/github.min.css"/>
23
+
24
+ <!-- Legacy reference is still needed to support auro-combobox's use of legacy token values at this time -->
25
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/legacy/auro-classic/CSSCustomProperties.css"/>
26
+
27
+ <!-- Design Token Alaska Theme -->
28
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/themes/alaska/CSSCustomProperties--alaska.min.css"/>
29
+
30
+ <!-- Webcore Stylesheet Alaska Theme -->
31
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/bundled/themes/alaska.global.min.css" />
32
+
33
+ <!-- Demo Specific Styles -->
34
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/demoWrapper.css" />
35
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/elementDemoStyles.css" />
36
+ <link rel="stylesheet" type="text/css" href="./styles.min.css" />
37
+ </head>
38
+ <body class="auro-markdown">
39
+ <main></main>
40
+
41
+ <script type="module">
42
+ import { renderPage } from './demo-support.js';
43
+ await renderPage('./accessibility.md');
44
+ </script>
45
+
46
+ <!-- If additional elements are needed for the demo, add them here. -->
47
+ <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-header@latest/+esm" type="module"></script>
48
+ <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-hyperlink@latest/+esm" type="module"></script>
49
+ </body>
50
+ </html>
@@ -0,0 +1,77 @@
1
+ <auro-header level="1" id="overview">Combobox - Accessibility</auro-header>
2
+ <div class="contentWrapper">
3
+ <div class="mainContent">
4
+ <div class="scrollWrapper">
5
+ The `auro-combobox` component follows the <a href="https://www.w3.org/WAI/ARIA/apg/patterns/combobox/" target="_blank">W3C APG Combobox</a> pattern. This page documents the ARIA semantics, screen reader announcements, and other accessibility behaviors built into the component.
6
+
7
+ For keyboard interaction details, see the <a href="./keyboard-behavior.html">Keyboard Behavior</a> page.
8
+
9
+ <auro-header level="2" id="ariaRolesAndAttributes">ARIA Roles and Attributes</auro-header>
10
+ <auro-header level="3" id="trigger">Trigger</auro-header>
11
+ The trigger element exposes the following ARIA attributes:
12
+
13
+ | Attribute | Value | Description |
14
+ |---|---|---|
15
+ | `role` | `combobox` | Identifies the trigger as a combobox control. |
16
+ | `aria-expanded` | `true` / `false` | Reflects whether the bib (listbox) is currently open. |
17
+ | `aria-controls` | `{bib-id}` | References the bib element that the trigger controls. |
18
+ | `aria-labelledby` | `{label-id}` | Associates the trigger with its visible label text. |
19
+ | `aria-activedescendant` | `{option-id}` | Points to the currently highlighted option when the bib is open. Cleared when the bib closes. |
20
+ | `aria-autocomplete` | `list` / `both` | Indicates the type of autocomplete behavior provided by the combobox. |
21
+
22
+ <auro-header level="3" id="menuOptions">Menu Options</auro-header>
23
+ Each menu option exposes the following ARIA attributes:
24
+
25
+ | Attribute | Value | Description |
26
+ |---|---|---|
27
+ | `role` | `option` | Identifies each item as a selectable option. |
28
+ | `aria-selected` | `true` / `false` | Indicates whether the option is currently selected. |
29
+ | `aria-setsize` | `{count}` | Total number of options available, so screen readers can announce "option X of Y." |
30
+ | `aria-posinset` | `{index}` | The 1-based position of the option within the set. |
31
+
32
+ <auro-header level="3" id="helpTextAndErrors">Help Text and Errors</auro-header>
33
+ - Help text is associated with the component so screen readers can announce contextual guidance.
34
+ - When validation fails, the error message is rendered with `role="alert"` and `aria-live="assertive"` to ensure it is announced immediately.
35
+
36
+ <auro-header level="2" id="activeDescendant">Active Descendant</auro-header>
37
+ Focus management in `auro-combobox` follows the **active descendant** pattern rather than moving DOM focus between options:
38
+
39
+ 1. When the bib opens, focus remains on the **input** element.
40
+ 2. Arrow keys update `aria-activedescendant` on the input to reference the currently highlighted option.
41
+ 3. This allows screen readers to announce each option as the user navigates without moving focus away from the input.
42
+
43
+ When the bib closes, `aria-activedescendant` is cleared so stale references are not announced.
44
+
45
+ <auro-header level="2" id="screenReaderAnnouncements">Screen Reader Announcements</auro-header>
46
+ The component uses a visually hidden live region (`aria-live="polite"`) to announce state changes:
47
+
48
+ - **Option highlighted** — When an option becomes active (via arrow keys or type-ahead), the live region announces the option text along with its selected state (e.g. "Apples, not selected").
49
+ - **Option selected** — After an option is selected, the live region announces the selected value (e.g. "Apples, selected"). This announcement is slightly delayed to avoid being overridden by the bib's collapse announcement.
50
+
51
+ <auro-header level="2" id="accessibleLabels">Accessible Labels</auro-header>
52
+ - The `label` slot content is used as the accessible name for both the input (via `aria-labelledby`) and the menu (via `aria-label`).
53
+ - A label is required. Without it, assistive technology users will not have context for what the combobox controls.
54
+ - The `(optional)` label is automatically appended when the `required` attribute is not set.
55
+
56
+ <auro-header level="2" id="fullscreenBehavior">Fullscreen (Modal) Behavior</auro-header>
57
+ On smaller viewports, the bib opens as a fullscreen modal dialog:
58
+
59
+ - The dialog is opened with `showModal()`, which provides **native focus trapping** — only elements inside the dialog are reachable via Tab.
60
+ - Content outside the dialog is automatically made **inert** by the browser, preventing interaction with the page behind it.
61
+ - The dialog receives an accessible label derived from the component's `label` slot text via `aria-labelledby`.
62
+ - A close button inside the dialog is focused when the modal opens, giving screen reader users an immediate action to dismiss it.
63
+ - Touch scrolling on the page behind the dialog is blocked to prevent the background from scrolling into view.
64
+
65
+ <auro-header level="2" id="reducedMotion">Reduced Motion</auro-header>
66
+ The component respects the `prefers-reduced-motion` media query. When the user has requested reduced motion, scroll animations (e.g. scrolling the selected or active option into view) use instant scrolling instead of smooth scrolling.
67
+
68
+ <auro-header level="2" id="formParticipation">Form Participation</auro-header>
69
+ A hidden native `<input>` element is rendered alongside the custom component with `aria-hidden="true"`. This element:
70
+
71
+ - Participates in HTML form submissions, ensuring the selected value is included in form data.
72
+ - Supports the `required` and `disabled` attributes.
73
+ - Is invisible and unreachable by assistive technology — all user interaction goes through the custom component.
74
+
75
+ </div>
76
+ </div>
77
+ </div>
@@ -18,8 +18,8 @@
18
18
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
19
19
  <title>Auro Web Component Demo | auro-combobox</title>
20
20
 
21
- <!-- Prism.js Stylesheet -->
22
- <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/prismjs@1.24.1/themes/prism.css"/>
21
+ <!-- highlight.js Stylesheet -->
22
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.9.0/build/styles/github.min.css"/>
23
23
 
24
24
  <!-- Legacy reference is still needed to support auro-combobox's use of legacy token values at this time -->
25
25
  <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/legacy/auro-classic/CSSCustomProperties.css"/>
@@ -33,33 +33,21 @@
33
33
  <!-- Demo Specific Styles -->
34
34
  <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/demoWrapper.css" />
35
35
  <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/elementDemoStyles.css" />
36
+ <link rel="stylesheet" type="text/css" href="./styles.min.css" />
36
37
  </head>
37
38
  <body class="auro-markdown">
38
39
  <main></main>
39
40
 
40
- <script type="module">
41
- import 'https://cdn.jsdelivr.net/npm/marked@latest/marked.min.js';
42
- import 'https://cdn.jsdelivr.net/npm/prismjs@latest/prism.js';
43
- fetch('./api.md')
44
- .then((response) => response.text())
45
- .then((text) => {
46
- const rawHtml = marked.parse(text);
47
- document.querySelector('main').innerHTML = rawHtml;
48
- Prism.highlightAll();
49
- });
50
- </script>
51
-
52
41
  <!-- If additional elements are needed for the demo, add them here. -->
53
42
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-accordion@latest/+esm" type="module"></script>
54
43
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-button@latest/+esm" type="module"></script>
55
44
  <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-icon@latest/+esm" type="module"></script>
56
- <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-dialog@latest/+esm" type="module"></script>
57
- <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-drawer@latest/+esm" type="module"></script>
58
- <script src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-loader@latest/+esm" type="module"></script>
59
-
60
- <script type="module" data-demo-script="true">
61
- import { initExamples } from "./api.min.js"
45
+ <script type="module">
46
+ import { renderPage } from './demo-support.js';
47
+ await renderPage('./api.md');
48
+ import { initExamples } from "./api.min.js";
62
49
  initExamples();
63
50
  </script>
51
+ <script src="./api.min.js" data-demo-script="true" type="module"></script>
64
52
  </body>
65
53
  </html>