stimeo-ui 0.16.0 → 0.17.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 (115) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -0
  3. data/README.md +8 -1
  4. data/dist/cable/index.js +363 -436
  5. data/dist/controllers/accordion_controller.js +166 -55
  6. data/dist/controllers/alert_dialog_controller.js +862 -221
  7. data/dist/controllers/announcer_controller.js +135 -198
  8. data/dist/controllers/aspect_ratio_controller.js +0 -10
  9. data/dist/controllers/auto_submit_controller.js +271 -127
  10. data/dist/controllers/avatar_controller.js +171 -105
  11. data/dist/controllers/breadcrumb_controller.js +0 -130
  12. data/dist/controllers/bulk_select_controller.js +262 -52
  13. data/dist/controllers/calendar_controller.js +175 -209
  14. data/dist/controllers/carousel_controller.js +461 -399
  15. data/dist/controllers/character_counter_controller.js +246 -156
  16. data/dist/controllers/checkbox_controller.js +32 -74
  17. data/dist/controllers/clipboard_controller.js +168 -147
  18. data/dist/controllers/collapsible_controller.js +301 -120
  19. data/dist/controllers/color_picker_controller.js +149 -139
  20. data/dist/controllers/combobox_controller.js +360 -133
  21. data/dist/controllers/command_palette_controller.js +970 -358
  22. data/dist/controllers/conditional_fields_controller.js +166 -124
  23. data/dist/controllers/confirm_controller.js +939 -248
  24. data/dist/controllers/context_menu_controller.js +256 -128
  25. data/dist/controllers/count_up_controller.js +73 -21
  26. data/dist/controllers/countdown_controller.js +183 -148
  27. data/dist/controllers/currency_input_controller.js +134 -158
  28. data/dist/controllers/data_grid_controller.js +114 -186
  29. data/dist/controllers/date_range_picker_controller.js +288 -206
  30. data/dist/controllers/dialog_controller.js +858 -223
  31. data/dist/controllers/direct_upload_controller.js +73 -153
  32. data/dist/controllers/dirty_form_controller.js +14 -48
  33. data/dist/controllers/dismissible_controller.js +175 -21
  34. data/dist/controllers/drawer_controller.js +933 -341
  35. data/dist/controllers/dropdown_controller.js +312 -82
  36. data/dist/controllers/editable_controller.js +158 -68
  37. data/dist/controllers/empty_state_controller.js +67 -53
  38. data/dist/controllers/file_dropzone_controller.js +311 -207
  39. data/dist/controllers/filter_controller.js +67 -39
  40. data/dist/controllers/flash_controller.js +172 -314
  41. data/dist/controllers/focus_controller.js +654 -240
  42. data/dist/controllers/form_field_controller.js +147 -132
  43. data/dist/controllers/form_validation_controller.js +13 -86
  44. data/dist/controllers/frame_loading_controller.js +264 -213
  45. data/dist/controllers/highlight_controller.js +107 -75
  46. data/dist/controllers/hover_card_controller.js +309 -118
  47. data/dist/controllers/idle_controller.js +267 -101
  48. data/dist/controllers/input_mask_controller.js +71 -72
  49. data/dist/controllers/intersection_controller.js +147 -106
  50. data/dist/controllers/lazy_frame_controller.js +9 -65
  51. data/dist/controllers/listbox_controller.js +306 -204
  52. data/dist/controllers/local_time_controller.js +54 -64
  53. data/dist/controllers/masonry_controller.js +70 -93
  54. data/dist/controllers/menu_controller.js +214 -156
  55. data/dist/controllers/menubar_controller.js +170 -329
  56. data/dist/controllers/meter_controller.js +151 -67
  57. data/dist/controllers/multi_select_controller.js +593 -358
  58. data/dist/controllers/navigation_menu_controller.js +124 -232
  59. data/dist/controllers/nested_form_controller.js +352 -182
  60. data/dist/controllers/network_status_controller.js +242 -54
  61. data/dist/controllers/number_input_controller.js +320 -263
  62. data/dist/controllers/optimistic_controller.js +16 -76
  63. data/dist/controllers/otp_controller.js +198 -193
  64. data/dist/controllers/overflow_indicator_controller.js +116 -113
  65. data/dist/controllers/overflow_menu_controller.js +343 -283
  66. data/dist/controllers/pagination_controller.js +295 -119
  67. data/dist/controllers/password_reveal_controller.js +389 -121
  68. data/dist/controllers/password_strength_controller.js +99 -153
  69. data/dist/controllers/persist_controller.js +237 -103
  70. data/dist/controllers/pointer_drag_controller.js +185 -165
  71. data/dist/controllers/popover_controller.js +236 -97
  72. data/dist/controllers/portal_controller.js +209 -76
  73. data/dist/controllers/preview_guard_controller.js +232 -116
  74. data/dist/controllers/progress_controller.js +125 -56
  75. data/dist/controllers/radio_group_controller.js +117 -137
  76. data/dist/controllers/range_slider_controller.js +192 -105
  77. data/dist/controllers/rating_controller.js +418 -207
  78. data/dist/controllers/read_more_controller.js +134 -63
  79. data/dist/controllers/reading_progress_controller.js +147 -135
  80. data/dist/controllers/relative_time_controller.js +145 -110
  81. data/dist/controllers/{reset_before_cache_controller.js → reset_on_restore_controller.js} +97 -38
  82. data/dist/controllers/resizable_controller.js +255 -139
  83. data/dist/controllers/roving_controller.js +39 -84
  84. data/dist/controllers/scroll_area_controller.js +428 -225
  85. data/dist/controllers/scroll_restore_controller.js +0 -53
  86. data/dist/controllers/scroll_visibility_controller.js +395 -145
  87. data/dist/controllers/scrollspy_controller.js +181 -242
  88. data/dist/controllers/separator_controller.js +267 -140
  89. data/dist/controllers/sidebar_controller.js +1023 -386
  90. data/dist/controllers/skeleton_controller.js +248 -97
  91. data/dist/controllers/slider_controller.js +159 -79
  92. data/dist/controllers/smart_sticky_header_controller.js +162 -63
  93. data/dist/controllers/sortable_controller.js +0 -112
  94. data/dist/controllers/spinner_controller.js +277 -169
  95. data/dist/controllers/step_indicator_controller.js +99 -46
  96. data/dist/controllers/stepper_controller.js +114 -73
  97. data/dist/controllers/stick_to_bottom_controller.js +262 -138
  98. data/dist/controllers/sticky_observer_controller.js +214 -49
  99. data/dist/controllers/submit_once_controller.js +294 -205
  100. data/dist/controllers/switch_controller.js +33 -60
  101. data/dist/controllers/tabs_controller.js +35 -29
  102. data/dist/controllers/tags_input_controller.js +136 -145
  103. data/dist/controllers/textarea_autosize_controller.js +71 -58
  104. data/dist/controllers/theme_controller.js +130 -112
  105. data/dist/controllers/time_picker_controller.js +146 -80
  106. data/dist/controllers/toast_controller.js +186 -297
  107. data/dist/controllers/toggle_group_controller.js +95 -136
  108. data/dist/controllers/toolbar_controller.js +68 -98
  109. data/dist/controllers/tooltip_controller.js +158 -124
  110. data/dist/controllers/transition_controller.js +123 -119
  111. data/dist/controllers/tree_view_controller.js +150 -345
  112. data/dist/index.js +6370 -9346
  113. data/dist/positioning/index.js +148 -47
  114. data/lib/stimeo/ui/version.rb +1 -1
  115. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 725d3da54257b2c556c30de96e34c325ed04ccfd06a9c065484aab388f5f969c
4
- data.tar.gz: ea9c6e5c0c2fd7dea325e6769af6b51f51e74a179575cbb05695cf965a141357
3
+ metadata.gz: 0ab94f6bcd6de9b272ef9049a92e84b7e69af7d955dee82d24fef5dc09f61682
4
+ data.tar.gz: 180f338981fd0e02a0c5dc9b30032eedfcdb0841d5734524d02d00862bbfad57
5
5
  SHA512:
6
- metadata.gz: b080427c85f5accf04f627e757046fac13eda2a48b0ea1e27c548fbd035cb8bc90ddfcbfdb79f3bd63c7899e16649d873efcbdc6a964c5a4e2682271ccf48749
7
- data.tar.gz: b0d2bcd93e2beb311c4fe4e9a09f843b89cdc87e43ad88f8fd5a13e5146e939b8b9abce3adda89922c486337a141d854cfe74778a04b6249780554761cb3d4d5
6
+ metadata.gz: f65e42f9fdbe28e84af7ecc703f2bd92620bbe75ef197dfd478255286f23278625a1bc3c57237c3390b60c3f0d1714ffdc60ddb6584a334187e2775dbc36072a
7
+ data.tar.gz: 8c832a6e93363515f8343913f2456113086812f7d6fbd63f8751b2279cecb8e3682482978cd5adee9354fd871fbae0b328d38797fdcd7a81e4a8703016bf78a8
data/CHANGELOG.md CHANGED
@@ -7,6 +7,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
  While the version is `0.x`, the public API (the `stimeo--*` data attributes) may
8
8
  change between releases.
9
9
 
10
+ ## [Unreleased]
11
+
12
+ ## [0.17.0] - 2026-10-04
13
+
14
+ ### Changed
15
+
16
+ - **Breaking** Replace `reset-before-cache` with `reset-on-restore` (class, export,
17
+ and subpath).
18
+ Reset runs on restoration; remove `dispatchReset` and `:request` bindings.
19
+ Restored drawers and command palettes start closed.
20
+ - **Breaking** Rename calendar, combobox, and command-palette `selectByClick`, and
21
+ tree-view `onClick`, to `select`; replace calendar `selectDayElement` with
22
+ `select(element)`.
23
+ Accordion `toggle`, theme `set`, and scrollspy `scrollTo` require owned targets.
24
+ - **Breaking** State events are silent for unchanged state and superseded pending
25
+ reports.
26
+ For child edits within partial checkbox groups, use the children's native `change`.
27
+ Number Values and action params enforce finite values and their declared domains.
28
+ Update Inspector integrations to schema v15 and run `stimeo check` before deploying.
29
+ - Target actions accept owned elements; user state reports include `detail.reason`.
30
+ Toast duration, persist debounce, and count-up duration changes apply to the next
31
+ operation. Portal destination changes update mounts; Cable params cannot replace
32
+ the declared channel.
33
+
34
+ ### Fixed
35
+
36
+ - Preserve live state across Turbo caching, repair derived state after retained
37
+ morphs, and restore focus reliably across nested layers and Shadow DOM.
38
+
10
39
  ## [0.16.0] - 2026-09-26
11
40
 
12
41
  Minor release with no new components. Widgets now report their own state
@@ -1278,6 +1307,8 @@ Initial public alpha: 101 behavior-only, accessible Stimulus controllers driven
1278
1307
  by `data-*` attributes, shipping no CSS. Published to npm (with provenance) and
1279
1308
  RubyGems.
1280
1309
 
1310
+ [Unreleased]: https://github.com/taiyaky/stimeo-ui/compare/v0.17.0...HEAD
1311
+ [0.17.0]: https://github.com/taiyaky/stimeo-ui/releases/tag/v0.17.0
1281
1312
  [0.16.0]: https://github.com/taiyaky/stimeo-ui/releases/tag/v0.16.0
1282
1313
  [0.15.0]: https://github.com/taiyaky/stimeo-ui/releases/tag/v0.15.0
1283
1314
  [0.14.0]: https://github.com/taiyaky/stimeo-ui/releases/tag/v0.14.0
data/README.md CHANGED
@@ -62,7 +62,14 @@ registerStimeo(application); // registers every stimeo--* controller
62
62
  ```
63
63
 
64
64
  Need only a few controllers? Import them individually from
65
- `stimeo-ui/controllers/*` and register them under your own identifiers.
65
+ `stimeo-ui/controllers/*` and register them under your own identifiers. Each
66
+ file loads on its own, yet the coordination between components — which layer
67
+ Escape closes, a focus trap's `Tab` and background, the value two components
68
+ lend the same attribute — is kept once per page, whichever files the
69
+ controllers came from, `stimeo-ui` itself included.
70
+ Copies of the same controller also share dirty-form confirmations, highlight
71
+ deadlines and portal origins. Opt-in Cable copies share the consumer, subscriptions
72
+ and peer departure decisions; generated ARIA ids stay distinct across copies too.
66
73
 
67
74
  - **Peer dependencies:** `@hotwired/stimulus` (always), `@floating-ui/dom` (only
68
75
  if you use the opt-in `stimeo-ui/positioning` module — tooltips, popovers, etc.