source_monitor 0.11.0 → 0.11.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 +5 -0
- data/Gemfile.lock +1 -1
- data/VERSION +1 -1
- data/app/views/source_monitor/dashboard/_stats.html.erb +29 -27
- data/lib/source_monitor/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9f700fdb3be3b317a91a05f04e32cd285fcb13d1acb39d3a79fb5da1da4781a0
|
|
4
|
+
data.tar.gz: 5304f346c91cb7435663e2d8cef0f12743c334d1218cf2f6fb830df127a404ba
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9689c88dc3dd352c86d91dc2e48a1555e9f2fd8cdde11ba20288532ae3287994fd844ab07dbda5e63fc4435dca9f5900008efb9fbf4d394d5dcfc2b139e5bbb1
|
|
7
|
+
data.tar.gz: 99850f35657ee948728143e17f07c69ebe4591a41612cbe3ae637113d1ec2a5f7c569158a350eaf6c5f3f05e0024103a013f3ec479210f0efa291db8841b399c
|
data/CHANGELOG.md
CHANGED
|
@@ -15,6 +15,11 @@ All notable changes to this project are documented below. The format follows [Ke
|
|
|
15
15
|
|
|
16
16
|
- No unreleased changes yet.
|
|
17
17
|
|
|
18
|
+
## [0.11.1] - 2026-03-13
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
- Dashboard health status chips (Working/Failing) no longer duplicate when the page is left open — the Turbo Stream target now wraps the entire stats partial for atomic replacement
|
|
22
|
+
|
|
18
23
|
## [0.11.0] - 2026-03-13
|
|
19
24
|
|
|
20
25
|
### Breaking Changes
|
data/Gemfile.lock
CHANGED
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.11.
|
|
1
|
+
0.11.1
|
|
@@ -1,28 +1,30 @@
|
|
|
1
|
-
<div id="source_monitor_dashboard_stats"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
<% if stats[:health_distribution]&.values&.any? { |v| v > 0 } %>
|
|
12
|
-
<div id="source_monitor_dashboard_health_distribution" class="mt-4 flex flex-wrap items-center gap-2">
|
|
13
|
-
<%
|
|
14
|
-
health_colors = {
|
|
15
|
-
"working" => "bg-green-100 text-green-700",
|
|
16
|
-
"declining" => "bg-yellow-100 text-yellow-700",
|
|
17
|
-
"improving" => "bg-sky-100 text-sky-700",
|
|
18
|
-
"failing" => "bg-rose-100 text-rose-700"
|
|
19
|
-
}
|
|
20
|
-
%>
|
|
21
|
-
<% stats[:health_distribution].each do |status, count| %>
|
|
22
|
-
<% next if count == 0 %>
|
|
23
|
-
<span class="inline-flex items-center gap-1 rounded-full px-3 py-1 text-xs font-semibold <%= health_colors[status] %>">
|
|
24
|
-
<%= status.capitalize %> <span class="font-bold"><%= count %></span>
|
|
25
|
-
</span>
|
|
26
|
-
<% end %>
|
|
1
|
+
<div id="source_monitor_dashboard_stats">
|
|
2
|
+
<div class="grid gap-5 sm:grid-cols-2 xl:grid-cols-5">
|
|
3
|
+
<%= render partial: "stat_card", collection: [
|
|
4
|
+
{ label: "Sources", value: stats[:total_sources], caption: "Total registered" },
|
|
5
|
+
{ label: "Active", value: stats[:active_sources], caption: "Fetching on schedule" },
|
|
6
|
+
{ label: "Failures", value: stats[:failed_sources], caption: "Require attention" },
|
|
7
|
+
{ label: "Items", value: stats[:total_items], caption: "Stored entries" },
|
|
8
|
+
{ label: "Fetches Today", value: stats[:fetches_today], caption: "Completed runs" }
|
|
9
|
+
], locals: { stats: stats } %>
|
|
27
10
|
</div>
|
|
28
|
-
|
|
11
|
+
|
|
12
|
+
<% if stats[:health_distribution]&.values&.any? { |v| v > 0 } %>
|
|
13
|
+
<div class="mt-4 flex flex-wrap items-center gap-2">
|
|
14
|
+
<%
|
|
15
|
+
health_colors = {
|
|
16
|
+
"working" => "bg-green-100 text-green-700",
|
|
17
|
+
"declining" => "bg-yellow-100 text-yellow-700",
|
|
18
|
+
"improving" => "bg-sky-100 text-sky-700",
|
|
19
|
+
"failing" => "bg-rose-100 text-rose-700"
|
|
20
|
+
}
|
|
21
|
+
%>
|
|
22
|
+
<% stats[:health_distribution].each do |status, count| %>
|
|
23
|
+
<% next if count == 0 %>
|
|
24
|
+
<span class="inline-flex items-center gap-1 rounded-full px-3 py-1 text-xs font-semibold <%= health_colors[status] %>">
|
|
25
|
+
<%= status.capitalize %> <span class="font-bold"><%= count %></span>
|
|
26
|
+
</span>
|
|
27
|
+
<% end %>
|
|
28
|
+
</div>
|
|
29
|
+
<% end %>
|
|
30
|
+
</div>
|