@aurodesignsystem-dev/auro-formkit 0.0.0-pr1515.4 → 0.0.0-pr1518.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 (58) 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/customize.min.js +8 -6
  4. package/components/checkbox/demo/getting-started.min.js +8 -6
  5. package/components/checkbox/demo/index.min.js +8 -6
  6. package/components/checkbox/dist/index.js +8 -6
  7. package/components/checkbox/dist/registered.js +8 -6
  8. package/components/combobox/README.md +1 -1
  9. package/components/combobox/demo/customize.md +2 -10
  10. package/components/combobox/demo/customize.min.js +383 -467
  11. package/components/combobox/demo/getting-started.min.js +383 -463
  12. package/components/combobox/demo/index.md +1 -1
  13. package/components/combobox/demo/index.min.js +383 -463
  14. package/components/combobox/demo/keyboard-behavior.md +2 -142
  15. package/components/combobox/demo/readme.md +1 -1
  16. package/components/combobox/demo/why-combobox.md +2 -2
  17. package/components/combobox/dist/auro-combobox.d.ts +30 -14
  18. package/components/combobox/dist/index.js +383 -463
  19. package/components/combobox/dist/registered.js +383 -463
  20. package/components/counter/demo/customize.min.js +10 -8
  21. package/components/counter/demo/index.min.js +10 -8
  22. package/components/counter/dist/index.js +10 -8
  23. package/components/counter/dist/registered.js +10 -8
  24. package/components/datepicker/demo/customize.min.js +226 -206
  25. package/components/datepicker/demo/index.min.js +226 -206
  26. package/components/datepicker/dist/auro-calendar-cell.d.ts +6 -0
  27. package/components/datepicker/dist/auro-calendar.d.ts +30 -1
  28. package/components/datepicker/dist/index.js +226 -206
  29. package/components/datepicker/dist/registered.js +226 -206
  30. package/components/dropdown/demo/customize.min.js +1 -1
  31. package/components/dropdown/demo/getting-started.min.js +1 -1
  32. package/components/dropdown/demo/index.min.js +1 -1
  33. package/components/dropdown/dist/index.js +1 -1
  34. package/components/dropdown/dist/registered.js +1 -1
  35. package/components/form/demo/customize.min.js +712 -856
  36. package/components/form/demo/getting-started.min.js +712 -856
  37. package/components/form/demo/index.min.js +712 -856
  38. package/components/form/demo/registerDemoDeps.min.js +712 -856
  39. package/components/input/demo/customize.min.js +67 -159
  40. package/components/input/demo/getting-started.min.js +67 -159
  41. package/components/input/demo/index.min.js +67 -159
  42. package/components/input/dist/auro-input.d.ts +1 -1
  43. package/components/input/dist/base-input.d.ts +3 -51
  44. package/components/input/dist/index.js +67 -159
  45. package/components/input/dist/registered.js +67 -159
  46. package/components/input/dist/utilities.d.ts +1 -1
  47. package/components/radio/demo/customize.min.js +8 -6
  48. package/components/radio/demo/getting-started.min.js +8 -6
  49. package/components/radio/demo/index.min.js +8 -6
  50. package/components/radio/dist/index.js +8 -6
  51. package/components/radio/dist/registered.js +8 -6
  52. package/components/select/demo/customize.min.js +10 -8
  53. package/components/select/demo/getting-started.min.js +10 -8
  54. package/components/select/demo/index.min.js +10 -8
  55. package/components/select/dist/index.js +10 -8
  56. package/components/select/dist/registered.js +10 -8
  57. package/custom-elements.json +1472 -1668
  58. package/package.json +1 -1
@@ -253,6 +253,12 @@ export class AuroCalendarCell extends LitElement {
253
253
  * Buttons stay tabindex="-1" because DOM focus stays on the grid wrapper —
254
254
  * arrow keys move the active cell imperatively and the live region carries
255
255
  * the SR announcement.
256
+ *
257
+ * Refuses to activate out-of-range cells: those are aria-hidden, have no
258
+ * click/focus handlers, and are filtered out of `getFocusableCells`. The
259
+ * active class showing on a disabled cell would be visually misleading,
260
+ * so this guard is the single source of truth across every code path
261
+ * that might call setActive (keyboard nav, focus restore, cell click).
256
262
  * @returns {void}
257
263
  */
258
264
  setActive(): void;
@@ -151,6 +151,14 @@ export class AuroCalendar extends RangeDatepicker {
151
151
  * @private
152
152
  */
153
153
  private activeCellDate;
154
+ /**
155
+ * Cached reference to the active cell host. Set by setActiveCell and
156
+ * refreshed by scrollToActiveCell when its cache check misses (stale
157
+ * or missing). Lets scrollToActiveCell skip a full cell scan on each
158
+ * arrow key.
159
+ * @private
160
+ */
161
+ private _activeCell;
154
162
  /**
155
163
  * Whether the #calendarGrid wrapper currently has focus.
156
164
  * Used to determine whether the visualFocus ring should be shown.
@@ -463,7 +471,28 @@ export class AuroCalendar extends RangeDatepicker {
463
471
  */
464
472
  private hoveredDateChanged;
465
473
  /**
466
- * Scrolls the calendar to ensure the month containing the active cell is visible.
474
+ * Scrolls the calendar so the active cell is visible.
475
+ *
476
+ * Walks the flat tree (rendered, slot-aware) outward from the active
477
+ * cell's button and calls `scrollBy` on every vertically-scrollable
478
+ * ancestor by whatever delta still separates the cell from that
479
+ * ancestor's viewport. Native `scrollIntoView` is not used because the
480
+ * cell sits inside multiple nested scroll containers (the dropdown bib's
481
+ * `<dialog>`, the bibtemplate's `#bodyContainer`) and the algorithm only
482
+ * scrolls one of them on its own, leaving the cell short of the
483
+ * viewport in mobile fullscreen.
484
+ *
485
+ * Uses `behavior: 'auto'` (the spec's universally-supported non-animated
486
+ * value) so each `scrollBy` resolves synchronously and the next
487
+ * iteration's `getBoundingClientRect` reads post-scroll positions
488
+ * accurately. This also satisfies `prefers-reduced-motion` users — the
489
+ * scroll containers do not set CSS `scroll-behavior: smooth`, so `auto`
490
+ * is effectively instant.
491
+ *
492
+ * The active cell is looked up from the cache populated by
493
+ * `setActiveCell`. On a cache miss (stale or absent) the cache is
494
+ * refreshed from a single full scan so subsequent calls stay on the
495
+ * fast path.
467
496
  * @private
468
497
  * @returns {void}
469
498
  */