rails_event_viewer 0.1.0 → 0.1.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/README.md +59 -374
- data/app/assets/javascripts/rails_event_viewer/application.js +28 -0
- data/app/assets/javascripts/rails_event_viewer/chart.umd.min.js +19 -0
- data/app/assets/javascripts/rails_event_viewer/chartjs-adapter-date-fns.bundle.min.js +7 -0
- data/app/assets/javascripts/rails_event_viewer/chartkick.min.js +2 -0
- data/app/assets/stylesheets/rails_event_viewer/application.css +1 -32
- data/app/assets/stylesheets/rails_event_viewer/tailwind.css +19 -44
- data/app/controllers/rails_event_viewer/application_controller.rb +3 -9
- data/app/controllers/rails_event_viewer/event_types_controller.rb +2 -2
- data/app/controllers/rails_event_viewer/events_controller.rb +2 -2
- data/app/controllers/rails_event_viewer/groups_controller.rb +2 -2
- data/app/helpers/rails_event_viewer/application_helper.rb +4 -0
- data/app/models/rails_event_viewer/page.rb +35 -0
- data/app/views/layouts/rails_event_viewer/application.html.erb +5 -9
- data/app/views/rails_event_viewer/analytics/overview.html.erb +3 -3
- data/app/views/rails_event_viewer/dashboard/index.html.erb +3 -3
- data/app/views/rails_event_viewer/event_types/show.html.erb +3 -3
- data/app/views/rails_event_viewer/events/_event_row.html.erb +1 -1
- data/app/views/rails_event_viewer/events/index.html.erb +2 -2
- data/app/views/rails_event_viewer/events/show.html.erb +1 -1
- data/app/views/rails_event_viewer/groups/show.html.erb +1 -1
- data/app/views/rails_event_viewer/shared/_pagination.html.erb +13 -13
- data/config/routes.rb +2 -2
- data/lib/rails_event_viewer/engine.rb +7 -2
- data/lib/rails_event_viewer/version.rb +1 -1
- data/lib/rails_event_viewer.rb +0 -2
- metadata +7 -17
- data/lib/rails_event_viewer/pagy_countable.rb +0 -31
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<% end %>
|
|
12
12
|
</h1>
|
|
13
13
|
<div class="text-sm text-gray-500">
|
|
14
|
-
<%= @
|
|
14
|
+
<%= @pagination.count %> total events
|
|
15
15
|
</div>
|
|
16
16
|
</div>
|
|
17
17
|
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
</table>
|
|
44
44
|
</div>
|
|
45
45
|
|
|
46
|
-
<%= render "rails_event_viewer/shared/pagination",
|
|
46
|
+
<%= render "rails_event_viewer/shared/pagination", pagination: @pagination %>
|
|
47
47
|
<% else %>
|
|
48
48
|
<div class="px-6 py-12 text-center text-gray-500">
|
|
49
49
|
<svg class="mx-auto h-12 w-12 text-gray-400" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
<div class="px-6 py-4 border-b border-gray-200 flex justify-between items-center">
|
|
23
23
|
<h3 class="text-lg font-medium text-gray-900">Payload</h3>
|
|
24
24
|
<button type="button"
|
|
25
|
-
|
|
25
|
+
data-event-viewer-copy="<%= event_payload(@event).to_json %>"
|
|
26
26
|
class="text-indigo-600 hover:text-indigo-500 text-sm font-medium">
|
|
27
27
|
Copy
|
|
28
28
|
</button>
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
</div>
|
|
125
125
|
</div>
|
|
126
126
|
|
|
127
|
-
<%= render "rails_event_viewer/shared/pagination",
|
|
127
|
+
<%= render "rails_event_viewer/shared/pagination", pagination: @pagination %>
|
|
128
128
|
<% else %>
|
|
129
129
|
<div class="px-6 py-12 text-center text-gray-500">
|
|
130
130
|
No events found in this group.
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
<% if
|
|
1
|
+
<% if pagination.pages > 1 %>
|
|
2
2
|
<div class="bg-white px-4 py-3 flex items-center justify-between border-t border-gray-200 sm:px-6">
|
|
3
3
|
<div class="flex-1 flex items-center justify-between">
|
|
4
4
|
<div>
|
|
5
5
|
<p class="text-sm text-gray-700">
|
|
6
6
|
Showing
|
|
7
|
-
<span class="font-medium"><%=
|
|
7
|
+
<span class="font-medium"><%= pagination.from %></span>
|
|
8
8
|
to
|
|
9
|
-
<span class="font-medium"><%=
|
|
9
|
+
<span class="font-medium"><%= pagination.to %></span>
|
|
10
10
|
of
|
|
11
|
-
<span class="font-medium"><%=
|
|
11
|
+
<span class="font-medium"><%= pagination.count %></span>
|
|
12
12
|
results
|
|
13
13
|
</p>
|
|
14
14
|
</div>
|
|
15
15
|
<nav class="flex items-center space-x-1" aria-label="Pagination">
|
|
16
|
-
<% if
|
|
17
|
-
<%= link_to
|
|
16
|
+
<% if pagination.previous %>
|
|
17
|
+
<%= link_to page_path(pagination.previous), class: "relative inline-flex items-center px-3 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50" do %>
|
|
18
18
|
<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
|
19
19
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7" />
|
|
20
20
|
</svg>
|
|
@@ -29,18 +29,18 @@
|
|
|
29
29
|
</span>
|
|
30
30
|
<% end %>
|
|
31
31
|
|
|
32
|
-
<% (1..
|
|
33
|
-
<% if page_num ==
|
|
32
|
+
<% (1..pagination.pages).each do |page_num| %>
|
|
33
|
+
<% if page_num == pagination.page %>
|
|
34
34
|
<span class="relative inline-flex items-center px-3 py-2 text-sm font-medium text-white bg-indigo-600 border border-indigo-600 rounded-md"><%= page_num %></span>
|
|
35
|
-
<% elsif page_num == 1 || page_num ==
|
|
36
|
-
<%= link_to page_num,
|
|
37
|
-
<% elsif page_num ==
|
|
35
|
+
<% elsif page_num == 1 || page_num == pagination.pages || (page_num >= pagination.page - 2 && page_num <= pagination.page + 2) %>
|
|
36
|
+
<%= link_to page_num, page_path(page_num), class: "relative inline-flex items-center px-3 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50" %>
|
|
37
|
+
<% elsif page_num == pagination.page - 3 || page_num == pagination.page + 3 %>
|
|
38
38
|
<span class="relative inline-flex items-center px-2 py-2 text-sm font-medium text-gray-700">...</span>
|
|
39
39
|
<% end %>
|
|
40
40
|
<% end %>
|
|
41
41
|
|
|
42
|
-
<% if
|
|
43
|
-
<%= link_to
|
|
42
|
+
<% if pagination.next %>
|
|
43
|
+
<%= link_to page_path(pagination.next), class: "relative inline-flex items-center px-3 py-2 text-sm font-medium text-gray-700 bg-white border border-gray-300 rounded-md hover:bg-gray-50" do %>
|
|
44
44
|
<span class="mr-1">Next</span>
|
|
45
45
|
<svg class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor">
|
|
46
46
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7" />
|
data/config/routes.rb
CHANGED
|
@@ -13,6 +13,6 @@ RailsEventViewer::Engine.routes.draw do
|
|
|
13
13
|
get :events_by_type
|
|
14
14
|
end
|
|
15
15
|
|
|
16
|
-
resources :event_types, only: [:index, :show], param: :name
|
|
17
|
-
resources :groups, only: [:index, :show]
|
|
16
|
+
resources :event_types, only: [:index, :show], param: :name, constraints: { name: %r{[^/]+} }
|
|
17
|
+
resources :groups, only: [:index, :show], constraints: { id: %r{[^/]+} }
|
|
18
18
|
end
|
|
@@ -11,8 +11,13 @@ module RailsEventViewer
|
|
|
11
11
|
|
|
12
12
|
initializer "rails_event_viewer.assets" do |app|
|
|
13
13
|
if app.config.respond_to?(:assets)
|
|
14
|
-
app.config.assets.
|
|
15
|
-
|
|
14
|
+
app.config.assets.precompile += %w[
|
|
15
|
+
rails_event_viewer/application.css
|
|
16
|
+
rails_event_viewer/application.js
|
|
17
|
+
rails_event_viewer/chart.umd.min.js
|
|
18
|
+
rails_event_viewer/chartjs-adapter-date-fns.bundle.min.js
|
|
19
|
+
rails_event_viewer/chartkick.min.js
|
|
20
|
+
]
|
|
16
21
|
end
|
|
17
22
|
end
|
|
18
23
|
|
data/lib/rails_event_viewer.rb
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
require "pagy"
|
|
2
1
|
require "chartkick"
|
|
3
2
|
require "groupdate"
|
|
4
3
|
|
|
@@ -118,5 +117,4 @@ require "rails_event_viewer/adapter"
|
|
|
118
117
|
require "rails_event_viewer/events_relation"
|
|
119
118
|
require "rails_event_viewer/subscriber"
|
|
120
119
|
require "rails_event_viewer/json_query"
|
|
121
|
-
require "rails_event_viewer/pagy_countable"
|
|
122
120
|
require "rails_event_viewer/time_utils"
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rails_event_viewer
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Keshav Biswa
|
|
@@ -23,20 +23,6 @@ dependencies:
|
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: 8.1.0
|
|
26
|
-
- !ruby/object:Gem::Dependency
|
|
27
|
-
name: pagy
|
|
28
|
-
requirement: !ruby/object:Gem::Requirement
|
|
29
|
-
requirements:
|
|
30
|
-
- - ">="
|
|
31
|
-
- !ruby/object:Gem::Version
|
|
32
|
-
version: '43.0'
|
|
33
|
-
type: :runtime
|
|
34
|
-
prerelease: false
|
|
35
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
-
requirements:
|
|
37
|
-
- - ">="
|
|
38
|
-
- !ruby/object:Gem::Version
|
|
39
|
-
version: '43.0'
|
|
40
26
|
- !ruby/object:Gem::Dependency
|
|
41
27
|
name: chartkick
|
|
42
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -78,6 +64,10 @@ files:
|
|
|
78
64
|
- MIT-LICENSE
|
|
79
65
|
- README.md
|
|
80
66
|
- Rakefile
|
|
67
|
+
- app/assets/javascripts/rails_event_viewer/application.js
|
|
68
|
+
- app/assets/javascripts/rails_event_viewer/chart.umd.min.js
|
|
69
|
+
- app/assets/javascripts/rails_event_viewer/chartjs-adapter-date-fns.bundle.min.js
|
|
70
|
+
- app/assets/javascripts/rails_event_viewer/chartkick.min.js
|
|
81
71
|
- app/assets/stylesheets/rails_event_viewer/application.css
|
|
82
72
|
- app/assets/stylesheets/rails_event_viewer/tailwind.css
|
|
83
73
|
- app/controllers/rails_event_viewer/analytics_controller.rb
|
|
@@ -89,6 +79,7 @@ files:
|
|
|
89
79
|
- app/helpers/rails_event_viewer/application_helper.rb
|
|
90
80
|
- app/models/rails_event_viewer/application_record.rb
|
|
91
81
|
- app/models/rails_event_viewer/entry.rb
|
|
82
|
+
- app/models/rails_event_viewer/page.rb
|
|
92
83
|
- app/views/layouts/rails_event_viewer/application.html.erb
|
|
93
84
|
- app/views/rails_event_viewer/analytics/overview.html.erb
|
|
94
85
|
- app/views/rails_event_viewer/dashboard/index.html.erb
|
|
@@ -119,7 +110,6 @@ files:
|
|
|
119
110
|
- lib/rails_event_viewer/engine.rb
|
|
120
111
|
- lib/rails_event_viewer/events_relation.rb
|
|
121
112
|
- lib/rails_event_viewer/json_query.rb
|
|
122
|
-
- lib/rails_event_viewer/pagy_countable.rb
|
|
123
113
|
- lib/rails_event_viewer/subscriber.rb
|
|
124
114
|
- lib/rails_event_viewer/time_utils.rb
|
|
125
115
|
- lib/rails_event_viewer/version.rb
|
|
@@ -138,7 +128,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
138
128
|
requirements:
|
|
139
129
|
- - ">="
|
|
140
130
|
- !ruby/object:Gem::Version
|
|
141
|
-
version: '3.
|
|
131
|
+
version: '3.3'
|
|
142
132
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
143
133
|
requirements:
|
|
144
134
|
- - ">="
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
module RailsEventViewer
|
|
2
|
-
class PagyCountable
|
|
3
|
-
def initialize(relation)
|
|
4
|
-
@relation = relation
|
|
5
|
-
end
|
|
6
|
-
|
|
7
|
-
def count(*)
|
|
8
|
-
@relation.count
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def offset(value)
|
|
12
|
-
OffsetWrapper.new(@relation, value)
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
# Intermediate wrapper that captures offset and applies limit
|
|
16
|
-
class OffsetWrapper
|
|
17
|
-
def initialize(relation, offset_value)
|
|
18
|
-
@relation = relation
|
|
19
|
-
@offset_value = offset_value
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def limit(value)
|
|
23
|
-
@relation.offset(@offset_value).limit(value).to_a
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def to_a
|
|
27
|
-
@relation.offset(@offset_value).to_a
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|