rails_pulse 0.1.4 → 0.2.2

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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +78 -0
  3. data/Rakefile +152 -3
  4. data/app/assets/images/rails_pulse/rails-pulse-logo.png +0 -0
  5. data/app/assets/stylesheets/rails_pulse/components/datepicker.css +191 -0
  6. data/app/assets/stylesheets/rails_pulse/components/switch.css +36 -0
  7. data/app/assets/stylesheets/rails_pulse/components/tags.css +98 -0
  8. data/app/assets/stylesheets/rails_pulse/components/utilities.css +26 -0
  9. data/app/controllers/concerns/response_range_concern.rb +15 -2
  10. data/app/controllers/concerns/tag_filter_concern.rb +26 -0
  11. data/app/controllers/concerns/time_range_concern.rb +27 -8
  12. data/app/controllers/rails_pulse/application_controller.rb +73 -0
  13. data/app/controllers/rails_pulse/queries_controller.rb +4 -1
  14. data/app/controllers/rails_pulse/requests_controller.rb +40 -8
  15. data/app/controllers/rails_pulse/routes_controller.rb +4 -2
  16. data/app/controllers/rails_pulse/tags_controller.rb +51 -0
  17. data/app/helpers/rails_pulse/application_helper.rb +2 -0
  18. data/app/helpers/rails_pulse/form_helper.rb +75 -0
  19. data/app/helpers/rails_pulse/tags_helper.rb +29 -0
  20. data/app/javascript/rails_pulse/application.js +6 -0
  21. data/app/javascript/rails_pulse/controllers/custom_range_controller.js +115 -0
  22. data/app/javascript/rails_pulse/controllers/datepicker_controller.js +48 -0
  23. data/app/javascript/rails_pulse/controllers/global_filters_controller.js +110 -0
  24. data/app/models/concerns/taggable.rb +61 -0
  25. data/app/models/rails_pulse/queries/tables/index.rb +10 -2
  26. data/app/models/rails_pulse/query.rb +2 -0
  27. data/app/models/rails_pulse/request.rb +9 -1
  28. data/app/models/rails_pulse/route.rb +2 -0
  29. data/app/models/rails_pulse/routes/tables/index.rb +10 -2
  30. data/app/services/rails_pulse/summary_service.rb +2 -0
  31. data/app/views/layouts/rails_pulse/_global_filters.html.erb +84 -0
  32. data/app/views/layouts/rails_pulse/_menu_items.html.erb +5 -5
  33. data/app/views/layouts/rails_pulse/application.html.erb +8 -5
  34. data/app/views/rails_pulse/components/_page_header.html.erb +20 -0
  35. data/app/views/rails_pulse/operations/show.html.erb +1 -1
  36. data/app/views/rails_pulse/queries/_table.html.erb +3 -1
  37. data/app/views/rails_pulse/queries/index.html.erb +3 -7
  38. data/app/views/rails_pulse/queries/show.html.erb +3 -7
  39. data/app/views/rails_pulse/requests/_table.html.erb +3 -1
  40. data/app/views/rails_pulse/requests/index.html.erb +44 -62
  41. data/app/views/rails_pulse/requests/show.html.erb +1 -1
  42. data/app/views/rails_pulse/routes/_requests_table.html.erb +3 -1
  43. data/app/views/rails_pulse/routes/_table.html.erb +3 -1
  44. data/app/views/rails_pulse/routes/index.html.erb +4 -8
  45. data/app/views/rails_pulse/routes/show.html.erb +3 -7
  46. data/app/views/rails_pulse/tags/_tag_manager.html.erb +73 -0
  47. data/config/routes.rb +5 -0
  48. data/db/rails_pulse_schema.rb +3 -0
  49. data/lib/generators/rails_pulse/install_generator.rb +21 -2
  50. data/lib/generators/rails_pulse/templates/db/rails_pulse_schema.rb +3 -0
  51. data/lib/generators/rails_pulse/templates/rails_pulse.rb +21 -0
  52. data/lib/generators/rails_pulse/upgrade_generator.rb +145 -29
  53. data/lib/rails_pulse/configuration.rb +16 -1
  54. data/lib/rails_pulse/version.rb +1 -1
  55. data/public/rails-pulse-assets/rails-pulse-icons.js +16 -15
  56. data/public/rails-pulse-assets/rails-pulse-icons.js.map +1 -1
  57. data/public/rails-pulse-assets/rails-pulse.css +1 -1
  58. data/public/rails-pulse-assets/rails-pulse.css.map +1 -1
  59. data/public/rails-pulse-assets/rails-pulse.js +73 -69
  60. data/public/rails-pulse-assets/rails-pulse.js.map +4 -4
  61. metadata +17 -3
  62. data/app/views/rails_pulse/components/_breadcrumbs.html.erb +0 -12
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_pulse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rails Pulse
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-10-13 00:00:00.000000000 Z
10
+ date: 2025-10-19 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: rails
@@ -173,6 +173,7 @@ files:
173
173
  - Rakefile
174
174
  - app/assets/images/rails_pulse/dashboard.png
175
175
  - app/assets/images/rails_pulse/menu.svg
176
+ - app/assets/images/rails_pulse/rails-pulse-logo.png
176
177
  - app/assets/images/rails_pulse/request.png
177
178
  - app/assets/stylesheets/rails_pulse/application.css
178
179
  - app/assets/stylesheets/rails_pulse/components/alert.css
@@ -184,6 +185,7 @@ files:
184
185
  - app/assets/stylesheets/rails_pulse/components/chart.css
185
186
  - app/assets/stylesheets/rails_pulse/components/collapsible.css
186
187
  - app/assets/stylesheets/rails_pulse/components/csp_safe_positioning.css
188
+ - app/assets/stylesheets/rails_pulse/components/datepicker.css
187
189
  - app/assets/stylesheets/rails_pulse/components/descriptive_list.css
188
190
  - app/assets/stylesheets/rails_pulse/components/dialog.css
189
191
  - app/assets/stylesheets/rails_pulse/components/flash.css
@@ -195,10 +197,13 @@ files:
195
197
  - app/assets/stylesheets/rails_pulse/components/row.css
196
198
  - app/assets/stylesheets/rails_pulse/components/sidebar_menu.css
197
199
  - app/assets/stylesheets/rails_pulse/components/skeleton.css
200
+ - app/assets/stylesheets/rails_pulse/components/switch.css
198
201
  - app/assets/stylesheets/rails_pulse/components/table.css
202
+ - app/assets/stylesheets/rails_pulse/components/tags.css
199
203
  - app/assets/stylesheets/rails_pulse/components/utilities.css
200
204
  - app/controllers/concerns/chart_table_concern.rb
201
205
  - app/controllers/concerns/response_range_concern.rb
206
+ - app/controllers/concerns/tag_filter_concern.rb
202
207
  - app/controllers/concerns/time_range_concern.rb
203
208
  - app/controllers/concerns/zoom_range_concern.rb
204
209
  - app/controllers/rails_pulse/application_controller.rb
@@ -209,20 +214,26 @@ files:
209
214
  - app/controllers/rails_pulse/queries_controller.rb
210
215
  - app/controllers/rails_pulse/requests_controller.rb
211
216
  - app/controllers/rails_pulse/routes_controller.rb
217
+ - app/controllers/rails_pulse/tags_controller.rb
212
218
  - app/helpers/rails_pulse/application_helper.rb
213
219
  - app/helpers/rails_pulse/breadcrumbs_helper.rb
214
220
  - app/helpers/rails_pulse/chart_formatters.rb
215
221
  - app/helpers/rails_pulse/chart_helper.rb
222
+ - app/helpers/rails_pulse/form_helper.rb
216
223
  - app/helpers/rails_pulse/formatting_helper.rb
217
224
  - app/helpers/rails_pulse/status_helper.rb
218
225
  - app/helpers/rails_pulse/table_helper.rb
226
+ - app/helpers/rails_pulse/tags_helper.rb
219
227
  - app/javascript/rails_pulse/application.js
220
228
  - app/javascript/rails_pulse/controllers/collapsible_controller.js
221
229
  - app/javascript/rails_pulse/controllers/color_scheme_controller.js
222
230
  - app/javascript/rails_pulse/controllers/context_menu_controller.js
231
+ - app/javascript/rails_pulse/controllers/custom_range_controller.js
232
+ - app/javascript/rails_pulse/controllers/datepicker_controller.js
223
233
  - app/javascript/rails_pulse/controllers/dialog_controller.js
224
234
  - app/javascript/rails_pulse/controllers/expandable_rows_controller.js
225
235
  - app/javascript/rails_pulse/controllers/form_controller.js
236
+ - app/javascript/rails_pulse/controllers/global_filters_controller.js
226
237
  - app/javascript/rails_pulse/controllers/icon_controller.js
227
238
  - app/javascript/rails_pulse/controllers/index_controller.js
228
239
  - app/javascript/rails_pulse/controllers/menu_controller.js
@@ -236,6 +247,7 @@ files:
236
247
  - app/jobs/rails_pulse/cleanup_job.rb
237
248
  - app/jobs/rails_pulse/summary_job.rb
238
249
  - app/mailers/rails_pulse/application_mailer.rb
250
+ - app/models/concerns/taggable.rb
239
251
  - app/models/rails_pulse/application_record.rb
240
252
  - app/models/rails_pulse/dashboard/charts/average_response_time.rb
241
253
  - app/models/rails_pulse/dashboard/charts/p95_response_time.rb
@@ -270,15 +282,16 @@ files:
270
282
  - app/services/rails_pulse/query_analysis_service.rb
271
283
  - app/services/rails_pulse/sql_query_normalizer.rb
272
284
  - app/services/rails_pulse/summary_service.rb
285
+ - app/views/layouts/rails_pulse/_global_filters.html.erb
273
286
  - app/views/layouts/rails_pulse/_menu_items.html.erb
274
287
  - app/views/layouts/rails_pulse/_sidebar_menu.html.erb
275
288
  - app/views/layouts/rails_pulse/application.html.erb
276
- - app/views/rails_pulse/components/_breadcrumbs.html.erb
277
289
  - app/views/rails_pulse/components/_code_panel.html.erb
278
290
  - app/views/rails_pulse/components/_empty_state.html.erb
279
291
  - app/views/rails_pulse/components/_metric_card.html.erb
280
292
  - app/views/rails_pulse/components/_metric_row.html.erb
281
293
  - app/views/rails_pulse/components/_operation_details_popover.html.erb
294
+ - app/views/rails_pulse/components/_page_header.html.erb
282
295
  - app/views/rails_pulse/components/_panel.html.erb
283
296
  - app/views/rails_pulse/components/_sparkline_stats.html.erb
284
297
  - app/views/rails_pulse/components/_table.html.erb
@@ -316,6 +329,7 @@ files:
316
329
  - app/views/rails_pulse/skeletons/_metric_card.html.erb
317
330
  - app/views/rails_pulse/skeletons/_panel.html.erb
318
331
  - app/views/rails_pulse/skeletons/_table.html.erb
332
+ - app/views/rails_pulse/tags/_tag_manager.html.erb
319
333
  - config/importmap.rb
320
334
  - config/initializers/rails_charts_csp_patch.rb
321
335
  - config/initializers/rails_pulse.rb
@@ -1,12 +0,0 @@
1
- <nav class="breadcrumb mis-2" aria-label="Breadcrumb">
2
- <% breadcrumbs.each_with_index do |crumb, index| %>
3
- <% if crumb[:current] %>
4
- <span class="text-primary" aria-disabled="true" aria-current="page" role="link"><%= crumb[:title] %></span>
5
- <% else %>
6
- <%= link_to crumb[:title], crumb[:path] %>
7
- <% end %>
8
- <% unless index == breadcrumbs.length - 1 %>
9
- <%= rails_pulse_icon 'chevron-right', width: 14, height: 14, class: "breadcrumb-separator mbe-1" %>
10
- <% end %>
11
- <% end %>
12
- </nav>