stimeo-ui 0.17.0 → 0.18.1
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +136 -2
- data/README.md +19 -10
- data/dist/cable/index.js +22 -14
- data/dist/controllers/accordion_controller.js +14 -6
- data/dist/controllers/alert_dialog_controller.js +145 -118
- data/dist/controllers/announcer_controller.js +113 -17
- data/dist/controllers/auto_submit_controller.js +185 -60
- data/dist/controllers/avatar_controller.js +55 -43
- data/dist/controllers/bulk_select_controller.js +64 -50
- data/dist/controllers/calendar_controller.js +55 -53
- data/dist/controllers/carousel_controller.js +124 -86
- data/dist/controllers/character_counter_controller.js +291 -95
- data/dist/controllers/checkbox_controller.js +6 -0
- data/dist/controllers/clipboard_controller.js +118 -27
- data/dist/controllers/collapsible_controller.js +52 -49
- data/dist/controllers/color_picker_controller.js +29 -7
- data/dist/controllers/combobox_controller.js +210 -71
- data/dist/controllers/command_palette_controller.js +290 -140
- data/dist/controllers/conditional_fields_controller.js +145 -58
- data/dist/controllers/confirm_controller.js +145 -118
- data/dist/controllers/context_menu_controller.js +138 -73
- data/dist/controllers/countdown_controller.js +109 -21
- data/dist/controllers/currency_input_controller.js +446 -72
- data/dist/controllers/data_grid_controller.js +134 -28
- data/dist/controllers/date_range_picker_controller.js +93 -72
- data/dist/controllers/dialog_controller.js +145 -118
- data/dist/controllers/direct_upload_controller.js +24 -14
- data/dist/controllers/dirty_form_controller.js +68 -31
- data/dist/controllers/dismissible_controller.js +66 -46
- data/dist/controllers/drawer_controller.js +145 -118
- data/dist/controllers/dropdown_controller.js +76 -63
- data/dist/controllers/editable_controller.js +200 -62
- data/dist/controllers/empty_state_controller.js +13 -6
- data/dist/controllers/file_dropzone_controller.js +55 -48
- data/dist/controllers/filter_controller.js +9 -2
- data/dist/controllers/flash_controller.js +66 -33
- data/dist/controllers/focus_controller.js +39 -14
- data/dist/controllers/form_field_controller.js +52 -43
- data/dist/controllers/form_validation_controller.js +18 -11
- data/dist/controllers/frame_loading_controller.js +55 -48
- data/dist/controllers/hover_card_controller.js +67 -61
- data/dist/controllers/idle_controller.js +10 -6
- data/dist/controllers/input_mask_controller.js +434 -24
- data/dist/controllers/intersection_controller.js +3 -0
- data/dist/controllers/lazy_frame_controller.js +15 -3
- data/dist/controllers/listbox_controller.js +260 -79
- data/dist/controllers/local_time_controller.js +48 -13
- data/dist/controllers/masonry_controller.js +11 -4
- data/dist/controllers/menu_controller.js +138 -82
- data/dist/controllers/menubar_controller.js +65 -19
- data/dist/controllers/meter_controller.js +270 -24
- data/dist/controllers/multi_select_controller.js +272 -95
- data/dist/controllers/navigation_menu_controller.js +67 -19
- data/dist/controllers/nested_form_controller.js +98 -64
- data/dist/controllers/network_status_controller.js +70 -52
- data/dist/controllers/number_input_controller.js +344 -94
- data/dist/controllers/optimistic_controller.js +29 -11
- data/dist/controllers/otp_controller.js +502 -104
- data/dist/controllers/overflow_indicator_controller.js +6 -0
- data/dist/controllers/overflow_menu_controller.js +136 -21
- data/dist/controllers/pagination_controller.js +47 -14
- data/dist/controllers/password_reveal_controller.js +52 -49
- data/dist/controllers/password_strength_controller.js +13 -6
- data/dist/controllers/persist_controller.js +48 -128
- data/dist/controllers/pointer_drag_controller.js +255 -24
- data/dist/controllers/popover_controller.js +91 -65
- data/dist/controllers/portal_controller.js +6 -0
- data/dist/controllers/preview_guard_controller.js +14 -3
- data/dist/controllers/progress_controller.js +271 -27
- data/dist/controllers/radio_group_controller.js +167 -80
- data/dist/controllers/range_slider_controller.js +27 -7
- data/dist/controllers/rating_controller.js +93 -57
- data/dist/controllers/read_more_controller.js +10 -6
- data/dist/controllers/reading_progress_controller.js +22 -5
- data/dist/controllers/relative_time_controller.js +75 -11
- data/dist/controllers/reset_on_restore_controller.js +6 -0
- data/dist/controllers/resizable_controller.js +55 -22
- data/dist/controllers/roving_controller.js +10 -4
- data/dist/controllers/scroll_area_controller.js +129 -88
- data/dist/controllers/scroll_restore_controller.js +14 -2
- data/dist/controllers/scroll_visibility_controller.js +93 -60
- data/dist/controllers/scrollspy_controller.js +11 -5
- data/dist/controllers/separator_controller.js +59 -43
- data/dist/controllers/sidebar_controller.js +150 -122
- data/dist/controllers/skeleton_controller.js +55 -48
- data/dist/controllers/slider_controller.js +27 -6
- data/dist/controllers/smart_sticky_header_controller.js +13 -5
- data/dist/controllers/sortable_controller.js +27 -14
- data/dist/controllers/spinner_controller.js +55 -48
- data/dist/controllers/step_indicator_controller.js +6 -0
- data/dist/controllers/stepper_controller.js +6 -0
- data/dist/controllers/stick_to_bottom_controller.js +19 -8
- data/dist/controllers/sticky_observer_controller.js +49 -43
- data/dist/controllers/submit_once_controller.js +145 -85
- data/dist/controllers/switch_controller.js +172 -28
- data/dist/controllers/tabs_controller.js +6 -1
- data/dist/controllers/tags_input_controller.js +157 -28
- data/dist/controllers/textarea_autosize_controller.js +40 -19
- data/dist/controllers/theme_controller.js +10 -4
- data/dist/controllers/time_picker_controller.js +192 -54
- data/dist/controllers/toast_controller.js +58 -27
- data/dist/controllers/toggle_group_controller.js +158 -56
- data/dist/controllers/toolbar_controller.js +150 -21
- data/dist/controllers/tree_view_controller.js +134 -25
- data/dist/index.js +2515 -1315
- data/dist/positioning/index.js +6 -0
- data/lib/generators/stimeo/install/install_generator.rb +7 -2
- data/lib/generators/stimeo/install/templates/stimeo.js +19 -6
- data/lib/stimeo/ui/version.rb +1 -1
- metadata +2 -2
data/dist/positioning/index.js
CHANGED
|
@@ -28,6 +28,9 @@ var MicrotaskCoalescer = class {
|
|
|
28
28
|
this.#queued = false;
|
|
29
29
|
this.#generation += 1;
|
|
30
30
|
}
|
|
31
|
+
get pending() {
|
|
32
|
+
return this.#queued;
|
|
33
|
+
}
|
|
31
34
|
schedule() {
|
|
32
35
|
if (!this.#active || this.#queued) return;
|
|
33
36
|
this.#queued = true;
|
|
@@ -58,6 +61,9 @@ var MorphRenderWatcher = class {
|
|
|
58
61
|
schedule() {
|
|
59
62
|
this.#pass.schedule();
|
|
60
63
|
}
|
|
64
|
+
get pending() {
|
|
65
|
+
return this.#pass.pending;
|
|
66
|
+
}
|
|
61
67
|
disconnect() {
|
|
62
68
|
this.#listeners.dispose();
|
|
63
69
|
this.#pass.cancel();
|
|
@@ -12,8 +12,10 @@ module Stimeo
|
|
|
12
12
|
# Sets up an importmap-rails app to use Stimeo UI without npm:
|
|
13
13
|
# 1. vendors the gem's prebuilt JS into vendor/javascript/stimeo/
|
|
14
14
|
# 2. pins "stimeo-ui" in config/importmap.rb
|
|
15
|
-
# 3. registers
|
|
16
|
-
# application (app/javascript/controllers/stimeo.js)
|
|
15
|
+
# 3. registers the "stimeo-ui" entry point's controllers (registerStimeo) with the
|
|
16
|
+
# app's Stimulus application (app/javascript/controllers/stimeo.js); the
|
|
17
|
+
# positioning and cable subpaths stay opt-in: their pins and registrations
|
|
18
|
+
# are written commented out in config/importmap.rb and controllers/stimeo.js
|
|
17
19
|
#
|
|
18
20
|
# Re-running is safe: the vendor copy is refreshed in place, while pins
|
|
19
21
|
# and imports are only appended when missing — so after a gem update you
|
|
@@ -60,6 +62,9 @@ module Stimeo
|
|
|
60
62
|
pin "stimeo-ui", to: "stimeo/index.js"
|
|
61
63
|
# Opt-in positioning module — also pin @floating-ui/dom if you enable it:
|
|
62
64
|
# pin "stimeo-ui/positioning", to: "stimeo/positioning/index.js"
|
|
65
|
+
# Opt-in cable module — also pin @rails/actioncable if you enable it:
|
|
66
|
+
# pin "stimeo-ui/cable", to: "stimeo/cable/index.js"
|
|
67
|
+
# pin "@rails/actioncable", to: "actioncable.esm.js"
|
|
63
68
|
RUBY
|
|
64
69
|
end
|
|
65
70
|
end
|
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
// Registers
|
|
1
|
+
// Registers the controllers of the "stimeo-ui" entry point with the app's
|
|
2
|
+
// Stimulus application. The opt-in "stimeo-ui/positioning" and "stimeo-ui/cable"
|
|
3
|
+
// entry points register theirs separately (registerPositioning / registerCable):
|
|
4
|
+
// pin the entry point and its peer in config/importmap.rb, then uncomment its
|
|
5
|
+
// import and call below. An app that already owns an Action Cable consumer passes
|
|
6
|
+
// it to setCableConsumer (also from "stimeo-ui/cable") before registerCable, so
|
|
7
|
+
// both share one websocket.
|
|
2
8
|
// Generated by `rails g stimeo:install`. Safe to edit.
|
|
3
9
|
//
|
|
4
|
-
// To cherry-pick instead of registering
|
|
5
|
-
// individually from "stimeo-ui/controllers/<name>" and register under
|
|
6
|
-
// identifiers. Note: with a JS bundler this works as-is; with
|
|
7
|
-
// each "stimeo-ui/controllers/<name>" needs its own pin
|
|
8
|
-
// pins the "stimeo-ui" entrypoint), so add those pins to
|
|
10
|
+
// To cherry-pick instead of registering the whole entry point, import controllers
|
|
11
|
+
// individually from "stimeo-ui/controllers/<name>_controller" and register under
|
|
12
|
+
// your own identifiers. Note: with a JS bundler this works as-is; with
|
|
13
|
+
// importmap-rails each "stimeo-ui/controllers/<name>_controller" needs its own pin
|
|
14
|
+
// (this generator only pins the "stimeo-ui" entrypoint), so add those pins to
|
|
15
|
+
// config/importmap.rb.
|
|
9
16
|
import { application } from "controllers/application";
|
|
10
17
|
import { registerStimeo } from "stimeo-ui";
|
|
11
18
|
|
|
12
19
|
registerStimeo(application);
|
|
20
|
+
|
|
21
|
+
// import { registerPositioning } from "stimeo-ui/positioning";
|
|
22
|
+
// registerPositioning(application);
|
|
23
|
+
|
|
24
|
+
// import { registerCable } from "stimeo-ui/cable";
|
|
25
|
+
// registerCable(application);
|
data/lib/stimeo/ui/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: stimeo-ui
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.18.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Stimeo Labs
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-10-
|
|
11
|
+
date: 2026-10-31 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: railties
|