@aurodesignsystem-dev/auro-formkit 0.0.0-pr1503.3 → 0.0.0-pr1503.5

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 (190) hide show
  1. package/components/bibtemplate/dist/index.js +1 -1
  2. package/components/bibtemplate/dist/registered.js +1 -1
  3. package/components/checkbox/demo/accessibility.md +1 -1
  4. package/components/checkbox/demo/customize.html +1 -2
  5. package/components/checkbox/demo/customize.min.js +23 -8
  6. package/components/checkbox/demo/getting-started.min.js +23 -8
  7. package/components/checkbox/demo/index.min.js +23 -8
  8. package/components/checkbox/dist/index.js +23 -8
  9. package/components/checkbox/dist/registered.js +23 -8
  10. package/components/combobox/README.md +1 -1
  11. package/components/combobox/demo/accessibility.md +1 -1
  12. package/components/combobox/demo/api.md +2 -2
  13. package/components/combobox/demo/customize.html +1 -2
  14. package/components/combobox/demo/customize.md +166 -142
  15. package/components/combobox/demo/customize.min.js +2515 -2316
  16. package/components/combobox/demo/getting-started.min.js +2515 -2312
  17. package/components/combobox/demo/index.md +2 -1
  18. package/components/combobox/demo/index.min.js +2515 -2312
  19. package/components/combobox/demo/keyboard-behavior.md +3 -146
  20. package/components/combobox/demo/readme.md +1 -1
  21. package/components/combobox/demo/why-combobox.md +2 -2
  22. package/components/combobox/dist/auro-combobox.d.ts +49 -15
  23. package/components/combobox/dist/index.js +1462 -753
  24. package/components/combobox/dist/registered.js +1462 -753
  25. package/components/counter/demo/customize.min.js +188 -244
  26. package/components/counter/demo/index.min.js +188 -244
  27. package/components/counter/dist/auro-counter.d.ts +0 -8
  28. package/components/counter/dist/index.js +188 -244
  29. package/components/counter/dist/registered.js +188 -244
  30. package/components/datepicker/demo/accessibility.md +20 -10
  31. package/components/datepicker/demo/api.md +65 -62
  32. package/components/datepicker/demo/customize.md +180 -40
  33. package/components/datepicker/demo/customize.min.js +1690 -777
  34. package/components/datepicker/demo/getting-started.md +118 -2
  35. package/components/datepicker/demo/index.min.js +1690 -759
  36. package/components/datepicker/demo/keyboard-behavior.md +3 -3
  37. package/components/datepicker/demo/voiceover.md +4 -4
  38. package/components/datepicker/demo/why-datepicker.md +2 -2
  39. package/components/datepicker/dist/{src/auro-calendar-cell.d.ts → auro-calendar-cell.d.ts} +48 -3
  40. package/components/datepicker/dist/{src/auro-calendar.d.ts → auro-calendar.d.ts} +188 -10
  41. package/components/datepicker/dist/{src/auro-datepicker.d.ts → auro-datepicker.d.ts} +89 -6
  42. package/components/datepicker/dist/blackoutUtils.d.ts +43 -0
  43. package/components/datepicker/dist/index.js +1690 -759
  44. package/components/datepicker/dist/registered.js +1690 -759
  45. package/components/dropdown/demo/customize.html +3 -0
  46. package/components/dropdown/demo/customize.min.js +142 -208
  47. package/components/dropdown/demo/getting-started.min.js +131 -207
  48. package/components/dropdown/demo/index.min.js +131 -207
  49. package/components/dropdown/dist/auro-dropdown.d.ts +17 -1
  50. package/components/dropdown/dist/index.js +131 -207
  51. package/components/dropdown/dist/registered.js +131 -207
  52. package/components/form/demo/api.md +3 -3
  53. package/components/form/demo/customize.html +6 -6
  54. package/components/form/demo/customize.md +535 -135
  55. package/components/form/demo/customize.min.js +6307 -4378
  56. package/components/form/demo/getting-started.md +344 -96
  57. package/components/form/demo/getting-started.min.js +6255 -4378
  58. package/components/form/demo/index.min.js +6206 -4378
  59. package/components/form/demo/registerDemoDeps.min.js +5827 -4333
  60. package/components/form/dist/auro-form.d.ts +128 -10
  61. package/components/form/dist/index.js +377 -43
  62. package/components/form/dist/registered.js +377 -43
  63. package/components/input/demo/accessibility.md +1 -1
  64. package/components/input/demo/api.md +58 -57
  65. package/components/input/demo/customize.html +1 -2
  66. package/components/input/demo/customize.md +62 -61
  67. package/components/input/demo/customize.min.js +396 -275
  68. package/components/input/demo/getting-started.min.js +396 -275
  69. package/components/input/demo/index.min.js +396 -275
  70. package/components/input/dist/auro-input.d.ts +1 -1
  71. package/components/input/dist/base-input.d.ts +60 -81
  72. package/components/input/dist/index.js +409 -276
  73. package/components/input/dist/registered.js +396 -275
  74. package/components/input/dist/utilities.d.ts +10 -1
  75. package/components/menu/demo/accessibility.md +9 -4
  76. package/components/menu/demo/api.md +48 -45
  77. package/components/menu/demo/css-only.md +26 -19
  78. package/components/menu/demo/customize.md +307 -75
  79. package/components/menu/demo/design.md +1 -1
  80. package/components/menu/demo/getting-started.md +144 -7
  81. package/components/menu/demo/index.min.js +961 -1341
  82. package/components/menu/demo/keyboard-behavior.md +83 -4
  83. package/components/menu/demo/voiceover.md +21 -14
  84. package/components/menu/demo/why-menu.md +8 -9
  85. package/components/menu/dist/auro-menu-utils.d.ts +19 -0
  86. package/components/menu/dist/auro-menu.d.ts +97 -116
  87. package/components/menu/dist/auro-menuoption.d.ts +39 -133
  88. package/components/menu/dist/index.js +823 -1309
  89. package/components/menu/dist/registered.js +835 -1309
  90. package/components/radio/demo/accessibility.md +1 -1
  91. package/components/radio/demo/customize.min.js +23 -8
  92. package/components/radio/demo/getting-started.min.js +23 -8
  93. package/components/radio/demo/index.min.js +23 -8
  94. package/components/radio/dist/index.js +23 -8
  95. package/components/radio/dist/registered.js +23 -8
  96. package/components/select/demo/accessibility.md +6 -1
  97. package/components/select/demo/api.md +3 -2
  98. package/components/select/demo/customize.html +1 -2
  99. package/components/select/demo/customize.md +210 -5
  100. package/components/select/demo/customize.min.js +1613 -1854
  101. package/components/select/demo/design.md +10 -10
  102. package/components/select/demo/getting-started.md +1 -1
  103. package/components/select/demo/getting-started.min.js +1617 -1903
  104. package/components/select/demo/index.md +2 -2
  105. package/components/select/demo/index.min.js +1613 -1854
  106. package/components/select/demo/keyboard-behavior.md +81 -54
  107. package/components/select/demo/voiceover.md +28 -15
  108. package/components/select/dist/auro-select.d.ts +70 -12
  109. package/components/select/dist/index.js +580 -315
  110. package/components/select/dist/registered.js +580 -315
  111. package/components/select/dist/selectUtils.d.ts +24 -0
  112. package/custom-elements.json +8071 -7919
  113. package/package.json +7 -3
  114. package/components/checkbox/demo/customize.js +0 -22
  115. package/components/checkbox/demo/demo-support.js +0 -1
  116. package/components/checkbox/demo/getting-started.js +0 -22
  117. package/components/checkbox/demo/index.js +0 -8
  118. package/components/checkbox/demo/styles.scss +0 -1
  119. package/components/combobox/demo/customize.js +0 -24
  120. package/components/combobox/demo/demo-support.js +0 -1
  121. package/components/combobox/demo/getting-started.js +0 -21
  122. package/components/combobox/demo/index.js +0 -23
  123. package/components/combobox/demo/styles.scss +0 -1
  124. package/components/counter/demo/customize.js +0 -21
  125. package/components/counter/demo/demo-support.js +0 -1
  126. package/components/counter/demo/index.js +0 -21
  127. package/components/counter/demo/styles.scss +0 -1
  128. package/components/datepicker/demo/customize.js +0 -19
  129. package/components/datepicker/demo/demo-support.js +0 -1
  130. package/components/datepicker/demo/index.js +0 -23
  131. package/components/datepicker/demo/styles.scss +0 -1
  132. package/components/dropdown/demo/customize.js +0 -9
  133. package/components/dropdown/demo/demo-support.js +0 -1
  134. package/components/dropdown/demo/getting-started.js +0 -9
  135. package/components/dropdown/demo/index.js +0 -16
  136. package/components/dropdown/demo/styles.scss +0 -1
  137. package/components/form/demo/customize.js +0 -9
  138. package/components/form/demo/demo-support.js +0 -1
  139. package/components/form/demo/getting-started.js +0 -9
  140. package/components/form/demo/index.js +0 -5
  141. package/components/form/demo/registerDemoDeps.js +0 -23
  142. package/components/form/demo/styles.scss +0 -1
  143. package/components/input/demo/customize.js +0 -25
  144. package/components/input/demo/demo-support.js +0 -1
  145. package/components/input/demo/getting-started.js +0 -8
  146. package/components/input/demo/index.js +0 -8
  147. package/components/input/demo/styles.css +0 -974
  148. package/components/input/demo/styles.scss +0 -1
  149. package/components/menu/demo/demo-support.js +0 -1
  150. package/components/menu/demo/index.js +0 -25
  151. package/components/menu/demo/styles.scss +0 -1
  152. package/components/menu/dist/auro-menu.context.d.ts +0 -238
  153. package/components/radio/demo/customize.js +0 -22
  154. package/components/radio/demo/demo-support.js +0 -1
  155. package/components/radio/demo/getting-started.js +0 -24
  156. package/components/radio/demo/index.js +0 -8
  157. package/components/radio/demo/styles.scss +0 -1
  158. package/components/select/demo/customize.js +0 -11
  159. package/components/select/demo/demo-support.js +0 -1
  160. package/components/select/demo/getting-started.js +0 -26
  161. package/components/select/demo/index.js +0 -11
  162. package/components/select/demo/styles.scss +0 -1
  163. /package/components/counter/dist/styles/{counter-wrapper-color-css.d.ts → counter-group-color-css.d.ts} +0 -0
  164. /package/components/datepicker/dist/{src/auro-calendar-month.d.ts → auro-calendar-month.d.ts} +0 -0
  165. /package/components/datepicker/dist/{src/buttonVersion.d.ts → buttonVersion.d.ts} +0 -0
  166. /package/components/datepicker/dist/{src/datepickerKeyboardStrategy.d.ts → datepickerKeyboardStrategy.d.ts} +0 -0
  167. /package/components/datepicker/dist/{src/iconVersion.d.ts → iconVersion.d.ts} +0 -0
  168. /package/components/datepicker/dist/{src/index.d.ts → index.d.ts} +0 -0
  169. /package/components/datepicker/dist/{src/popoverVersion.d.ts → popoverVersion.d.ts} +0 -0
  170. /package/components/datepicker/dist/{src/styles → styles}/classic/color-css.d.ts +0 -0
  171. /package/components/datepicker/dist/{src/styles → styles}/classic/style-css.d.ts +0 -0
  172. /package/components/datepicker/dist/{src/styles → styles}/color-calendar-css.d.ts +0 -0
  173. /package/components/datepicker/dist/{src/styles → styles}/color-cell-css.d.ts +0 -0
  174. /package/components/datepicker/dist/{src/styles → styles}/color-css.d.ts +0 -0
  175. /package/components/datepicker/dist/{src/styles → styles}/color-month-css.d.ts +0 -0
  176. /package/components/datepicker/dist/{src/styles → styles}/shapeSize-css.d.ts +0 -0
  177. /package/components/datepicker/dist/{src/styles → styles}/snowflake/color-css.d.ts +0 -0
  178. /package/components/datepicker/dist/{src/styles → styles}/snowflake/style-css.d.ts +0 -0
  179. /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-cell-css.d.ts +0 -0
  180. /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-css.d.ts +0 -0
  181. /package/components/datepicker/dist/{src/styles → styles}/style-auro-calendar-month-css.d.ts +0 -0
  182. /package/components/datepicker/dist/{src/styles → styles}/style-css.d.ts +0 -0
  183. /package/components/datepicker/dist/{src/styles → styles}/tokens-css.d.ts +0 -0
  184. /package/components/datepicker/dist/{src/utilities.d.ts → utilities.d.ts} +0 -0
  185. /package/components/datepicker/dist/{src/utilitiesCalendar.d.ts → utilitiesCalendar.d.ts} +0 -0
  186. /package/components/datepicker/dist/{src/utilitiesCalendarRender.d.ts → utilitiesCalendarRender.d.ts} +0 -0
  187. /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/day.d.ts +0 -0
  188. /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker-calendar.d.ts +0 -0
  189. /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker-cell.d.ts +0 -0
  190. /package/components/datepicker/dist/{src/vendor → vendor}/wc-range-datepicker/range-datepicker.d.ts +0 -0
@@ -30,7 +30,7 @@
30
30
  </thead>
31
31
  <tbody>
32
32
  <tr>
33
- <td rowspan="8">ArrowDown</td>
33
+ <td rowspan="2">ArrowDown</td>
34
34
  <td rowspan="2">-</td>
35
35
  <td>Collapsed, list options have been populated</td>
36
36
  <td>
@@ -51,77 +51,7 @@
51
51
  </td>
52
52
  </tr>
53
53
  <tr>
54
- <td rowspan="2">Meta (Command / Windows key)</td>
55
- <td>Collapsed, list options have been populated</td>
56
- <td>
57
- Trigger input element, <strong>NOT</strong> the trigger input clear button
58
- </td>
59
- <td>
60
- Opens the bib.
61
- <div class="note">
62
- <strong>Note:</strong> On Windows, <code>Meta</code> + arrow key combinations are reserved by the operating system for window management. Windows users should use <code>Control</code> or <code>Alt</code> instead.
63
- </div>
64
- </td>
65
- </tr>
66
- <tr>
67
- <td>Expanded</td>
68
- <td>
69
- Input element, <strong>NOT</strong> the input clear button
70
- <div class="note">
71
- <strong>Note:</strong> Includes both trigger and bib content inputs.
72
- </div>
73
- </td>
74
- <td>
75
- Advances the <code>focused</code> option to the last enabled option in the list.
76
- </td>
77
- </tr>
78
- <tr>
79
- <td rowspan="2">Alt (Option)</td>
80
- <td>Collapsed, list options have been populated</td>
81
- <td>
82
- Trigger input element, <strong>NOT</strong> the trigger input clear button
83
- </td>
84
- <td>Opens the bib.</td>
85
- </tr>
86
- <tr>
87
- <td>Expanded</td>
88
- <td>
89
- Input element, <strong>NOT</strong> the input clear button
90
- <div class="note">
91
- <strong>Note:</strong> Includes both trigger and bib content inputs.
92
- </div>
93
- </td>
94
- <td>
95
- Advances the <code>focused</code> option to the last enabled option in the list.
96
- </td>
97
- </tr>
98
- <tr>
99
- <td rowspan="2">Control</td>
100
- <td>Collapsed, list options have been populated</td>
101
- <td>
102
- Trigger input element, <strong>NOT</strong> the trigger input clear button
103
- </td>
104
- <td>
105
- Opens the bib.
106
- <div class="note">
107
- <strong>Note:</strong> On macOS, <code>Control</code> + arrow key combinations are reserved by the operating system for Mission Control and Application Windows. macOS users should use <code>Meta</code> or <code>Alt</code> instead.
108
- </div>
109
- </td>
110
- </tr>
111
- <tr>
112
- <td>Expanded</td>
113
- <td>
114
- Input element, <strong>NOT</strong> the input clear button
115
- <div class="note">
116
- <strong>Note:</strong> Includes both trigger and bib content inputs.
117
- </div>
118
- </td>
119
- <td>
120
- Advances the <code>focused</code> option to the last enabled option in the list.
121
- </td>
122
- </tr>
123
- <tr>
124
- <td rowspan="8">ArrowUp</td>
54
+ <td rowspan="2">ArrowUp</td>
125
55
  <td rowspan="2">-</td>
126
56
  <td>Collapsed, list options have been populated</td>
127
57
  <td>
@@ -142,76 +72,6 @@
142
72
  </td>
143
73
  </tr>
144
74
  <tr>
145
- <td rowspan="2">Meta (Command / Windows key)</td>
146
- <td>Collapsed, list options have been populated</td>
147
- <td>
148
- Trigger input element, <strong>NOT</strong> the trigger input clear button
149
- </td>
150
- <td>
151
- Opens the bib.
152
- <div class="note">
153
- <strong>Note:</strong> On Windows, <code>Meta</code> + arrow key combinations are reserved by the operating system for window management. Windows users should use <code>Control</code> or <code>Alt</code> instead.
154
- </div>
155
- </td>
156
- </tr>
157
- <tr>
158
- <td>Expanded</td>
159
- <td>
160
- Input element, <strong>NOT</strong> the input clear button
161
- <div class="note">
162
- <strong>Note:</strong> Includes both trigger and bib content inputs.
163
- </div>
164
- </td>
165
- <td>
166
- Advances the <code>focused</code> option to the first enabled option in the list.
167
- </td>
168
- </tr>
169
- <tr>
170
- <td rowspan="2">Alt (Option)</td>
171
- <td>Collapsed, list options have been populated</td>
172
- <td>
173
- Input element, <strong>NOT</strong> the input clear button
174
- </td>
175
- <td>Opens the bib.</td>
176
- </tr>
177
- <tr>
178
- <td>Expanded</td>
179
- <td>
180
- Input element, <strong>NOT</strong> the input clear button
181
- <div class="note">
182
- <strong>Note:</strong> Includes both trigger and bib content inputs.
183
- </div>
184
- </td>
185
- <td>
186
- Advances the <code>focused</code> option to the first enabled option in the list.
187
- </td>
188
- </tr>
189
- <tr>
190
- <td rowspan="2">Control</td>
191
- <td>Collapsed, list options have been populated</td>
192
- <td>
193
- Trigger input element, <strong>NOT</strong> the trigger input clear button
194
- </td>
195
- <td>
196
- Opens the bib.
197
- <div class="note">
198
- <strong>Note:</strong> On macOS, <code>Control</code> + arrow key combinations are reserved by the operating system for Mission Control and Application Windows. macOS users should use <code>Meta</code> or <code>Alt</code> instead.
199
- </div>
200
- </td>
201
- </tr>
202
- <tr>
203
- <td>Expanded</td>
204
- <td>
205
- Input element, <strong>NOT</strong> the input clear button
206
- <div class="note">
207
- <strong>Note:</strong> Includes both trigger and bib content inputs.
208
- </div>
209
- </td>
210
- <td>
211
- Advances the <code>focused</code> option to the first enabled option in the list.
212
- </td>
213
- </tr>
214
- <tr>
215
75
  <td>End</td>
216
76
  <td>-</td>
217
77
  <td>Expanded</td>
@@ -315,10 +175,7 @@
315
175
  </div>
316
176
  </td>
317
177
  <td>
318
- Advances the <code>focused</code> option to the first enabled option in the list.
319
- <div class="note">
320
- <strong>Note:</strong> the bib will <strong>NOT</strong> close and the page will <strong>NOT</strong> navigate to the previous focusable element in the tabindex order.
321
- </div>
178
+ The current <code>focused</code> option is selected, the bib is closed and <strong>focus</strong> is moved to the previous focusable element on the page.
322
179
  </td>
323
180
  </tr>
324
181
  </tbody>
@@ -24,7 +24,7 @@ The following sections are editable by making changes to the following files:
24
24
  <p>The component supports two modes:</p>
25
25
  <ul>
26
26
  <li><strong>Suggestion (default)</strong> — The user may type any value. The menu provides suggestions but does not restrict input.</li>
27
- <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>
27
+ <li><strong>Filter</strong> — Typing filters the available options and sets the component's <code>value</code> to the typed text, but the input is not considered valid until a menu option is selected. Validation surfaces <code>valueMissing</code> until the typed value matches a chosen option.</li>
28
28
  </ul>
29
29
  <p>Common use cases:</p>
30
30
  <ul>
@@ -4,7 +4,7 @@
4
4
  <p>Native <code>&lt;datalist&gt;</code> support varies between browsers. Some announce suggestion counts, others do not. Keyboard behavior is inconsistent, and there is no standard way to communicate selection state to screen readers.</p>
5
5
  <p><code>auro-combobox</code> provides:</p>
6
6
  <ul>
7
- <li><strong>ARIA combobox pattern</strong> — The input carries <code>aria-expanded</code>, <code>aria-owns</code>, and <code>aria-haspopup</code> to properly describe the relationship between the input and the suggestions list.</li>
7
+ <li><strong>ARIA combobox pattern</strong> — The input carries <code>role="combobox"</code>, <code>aria-expanded</code>, and <code>aria-controls</code> to properly describe the relationship between the input and the suggestions list.</li>
8
8
  <li><strong>Active descendant tracking</strong> — <code>aria-activedescendant</code> moves with keyboard navigation so screen readers announce the highlighted option without moving DOM focus.</li>
9
9
  <li><strong>Live region announcements</strong> — Selections are announced via <code>aria-live="polite"</code>, and validation errors use <code>aria-live="assertive"</code>.</li>
10
10
  <li><strong>Full keyboard navigation</strong> — Arrow keys navigate options, Enter selects, Escape closes, Home/End jump to boundaries. A dedicated keyboard strategy handles all interactions.</li>
@@ -14,7 +14,7 @@
14
14
  <p><code>auro-combobox</code> supports two modes:</p>
15
15
  <ul>
16
16
  <li><strong>Suggestion mode</strong> (default) — The user can type any value. Suggestions are offered but not required.</li>
17
- <li><strong>Filter mode</strong> — The user must select from the available options. Typed text filters the list but cannot be submitted as a value. Validation enforces this constraint.</li>
17
+ <li><strong>Filter mode</strong> — Typing filters the list and sets the component's <code>value</code> to the typed text, but validation keeps the input invalid until a menu option is selected. Consumers relying on <code>value</code> as a "committed selection" should gate on <code>validity</code>.</li>
18
18
  </ul>
19
19
  <auro-header level="2" id="realtimeFiltering">Real-time filtering</auro-header>
20
20
  <p><code>&lt;datalist&gt;</code> filtering is browser-controlled and cannot be customized. Some browsers match from the start of the option text, others match anywhere.</p>
@@ -49,6 +49,7 @@ export class AuroCombobox extends AuroElement {
49
49
  state: boolean;
50
50
  type: ArrayConstructor;
51
51
  reflect: boolean;
52
+ hasChanged(newVal: any, oldVal: any): any;
52
53
  };
53
54
  /**
54
55
  * Sets the behavior of the combobox, "filter" or "suggestion".
@@ -244,6 +245,8 @@ export class AuroCombobox extends AuroElement {
244
245
  };
245
246
  /**
246
247
  * If set, the `icon` attribute will be applied to the trigger `auro-input` element.
248
+ * Icon rendering is currently limited to `type="credit-card"`. Setting `triggerIcon`
249
+ * without a supported `type` propagates the attribute but does not render a visible icon.
247
250
  */
248
251
  triggerIcon: {
249
252
  type: BooleanConstructor;
@@ -271,7 +274,7 @@ export class AuroCombobox extends AuroElement {
271
274
  reflect: boolean;
272
275
  };
273
276
  /**
274
- * Value selected for the dropdown menu.
277
+ * Value selected for the dropdown menu. When set programmatically or as a preset attribute, the value must match a selectable option. If it matches an option marked `disabled` or `static`, the selection is rejected: `value` and `optionSelected` are cleared to `undefined`. `hidden` options (including those filtered out by type-ahead) remain selectable by value.
275
278
  */
276
279
  value: {
277
280
  type: StringConstructor;
@@ -302,17 +305,6 @@ export class AuroCombobox extends AuroElement {
302
305
  reflect: boolean;
303
306
  attribute: boolean;
304
307
  };
305
- /**
306
- * Deferred aria-expanded state for the trigger input.
307
- * Delays the "true" transition so VoiceOver finishes its character echo
308
- * before announcing "expanded".
309
- * @private
310
- */
311
- triggerExpandedState: {
312
- type: BooleanConstructor;
313
- reflect: boolean;
314
- attribute: boolean;
315
- };
316
308
  };
317
309
  static get styles(): import("lit").CSSResult[];
318
310
  /**
@@ -359,8 +351,6 @@ export class AuroCombobox extends AuroElement {
359
351
  availableOptions: any[] | any[] | undefined;
360
352
  dropdownId: any;
361
353
  dropdownOpen: any;
362
- triggerExpandedState: boolean | undefined;
363
- _expandedTimeout: number | null | undefined;
364
354
  _inFullscreenTransition: boolean | undefined;
365
355
  errorMessage: any;
366
356
  isHiddenWhileLoading: boolean | undefined;
@@ -371,6 +361,18 @@ export class AuroCombobox extends AuroElement {
371
361
  touched: boolean | undefined;
372
362
  validation: AuroFormValidation | undefined;
373
363
  validity: any;
364
+ _userTyped: boolean | undefined;
365
+ _pendingTimers: Set<any> | undefined;
366
+ /**
367
+ * Wraps setTimeout and records the timer id so disconnectedCallback
368
+ * can cancel any outstanding callbacks. The id is removed from the set
369
+ * once the callback fires so the set doesn't grow unbounded.
370
+ * @param {Function} fn - Callback to run.
371
+ * @param {number} ms - Delay in milliseconds.
372
+ * @returns {number} The timer id.
373
+ * @private
374
+ */
375
+ private _scheduleTimer;
374
376
  /**
375
377
  * Returns the current value of the input element within the combobox.
376
378
  * @returns {string|undefined} The value of the input element, or undefined if the input is not present.
@@ -411,9 +413,29 @@ export class AuroCombobox extends AuroElement {
411
413
  * @private
412
414
  */
413
415
  private updateTriggerTextDisplay;
416
+ /**
417
+ * Writes nextValue to the trigger input and the bib input when their current
418
+ * value differs, then re-asserts imask after Lit's update flushes.
419
+ * @param {string} nextValue - The value to write to both inputs.
420
+ * @returns {Promise<void>} Resolves after both inputs flush and imask
421
+ * re-asserts; resolves immediately when no sync is needed.
422
+ * @private
423
+ */
424
+ private syncInputValuesAcrossTriggerAndBib;
425
+ _syncingDisplayValue: boolean | undefined;
414
426
  /**
415
427
  * Processes hidden state of all menu options and determines if there are any available options not hidden.
416
428
  * @private
429
+ * @param {object} [options={}] - Optional flag bag.
430
+ * @param {boolean} [options.preferComboboxValue=false] - When true,
431
+ * handleMenuOptions matches the selected option against `this.value`
432
+ * first instead of `this.input.value`. Needed on mount and re-mount
433
+ * because under `persistInput` the consumer's typedValue prop can drift
434
+ * from the framework value (Svelte `{#key}` re-mount after a swap, or
435
+ * SPA preselect after route change) and the old input-first match would
436
+ * then pick the stale text. Only handleSlotChange passes this; typing
437
+ * and clearing paths keep the input-first match so user clears aren't
438
+ * undone.
417
439
  * @returns {void}
418
440
  */
419
441
  private handleMenuOptions;
@@ -483,7 +505,10 @@ export class AuroCombobox extends AuroElement {
483
505
  private configureMenu;
484
506
  menu: Element | null | undefined;
485
507
  defaultMenuShape: string | null | undefined;
508
+ _pendingMenuValueSync: boolean | undefined;
486
509
  value: any;
510
+ _suppressClearBtnFocusOnSelection: boolean | undefined;
511
+ _programmaticFilterRefresh: boolean | undefined;
487
512
  /**
488
513
  * Binds all behavior needed to the input after rendering.
489
514
  * @private
@@ -513,6 +538,15 @@ export class AuroCombobox extends AuroElement {
513
538
  */
514
539
  private handleInputValueChange;
515
540
  _syncingBibValue: boolean | undefined;
541
+ /**
542
+ * Handles input value changes originating from the trigger input.
543
+ * Refreshes menu options and filtering, delegates to handleInputValueChange
544
+ * for value synchronization, and manages fullscreen bib focus.
545
+ * @private
546
+ * @param {Event} event - The input event from the trigger input element.
547
+ * @returns {void}
548
+ */
549
+ private handleTriggerInputValueChange;
516
550
  /**
517
551
  * Binds all behavior needed to the combobox after rendering.
518
552
  * @private
@@ -544,13 +578,13 @@ export class AuroCombobox extends AuroElement {
544
578
  * @returns {void}
545
579
  */
546
580
  clear(): void;
581
+ _clearing: boolean | undefined;
547
582
  /**
548
583
  * Validates value.
549
584
  * @param {boolean} [force=false] - Whether to force validation.
550
585
  */
551
586
  validate(force?: boolean): void;
552
587
  updated(changedProperties: any): void;
553
- hasValue: boolean | undefined;
554
588
  /**
555
589
  * Applies slotted nodes to a target element with a new slot name.
556
590
  * @private