From 260806e69019b05c20b1f702eb608d303490cbc1 Mon Sep 17 00:00:00 2001 From: padreug Date: Sun, 10 Aug 2025 18:54:50 +0200 Subject: [PATCH] refactor: Simplify subscription details display in RelayHubDemo component - Remove the subscription details section from RelayHubStatus.vue to streamline the component. - Implement a toggle button in RelayHubDemo.vue to show/hide subscription details, enhancing user interaction. - Update the layout and messaging for better clarity when no active subscriptions are present, improving overall user experience. --- src/components/RelayHubStatus.vue | 141 ------------------------------ src/pages/RelayHubDemo.vue | 63 +++++++++---- 2 files changed, 48 insertions(+), 156 deletions(-) diff --git a/src/components/RelayHubStatus.vue b/src/components/RelayHubStatus.vue index c4e52db..1ee5bb1 100644 --- a/src/components/RelayHubStatus.vue +++ b/src/components/RelayHubStatus.vue @@ -60,41 +60,6 @@
Local: {{ activeSubscriptions.size }}
Global: {{ totalSubscriptionCount }}
- - -
-
Subscription Details:
-
-
-
- ID: {{ sub.id }} -
-
- Filters: {{ sub.filters.length }} filter(s) -
-
- {{ JSON.stringify(filter) }} -
-
-
-
- Relays: {{ sub.relays.join(', ') }} -
-
-
-
- -
- No active subscriptions found -
@@ -111,7 +76,6 @@ const { connectedRelayCount, totalRelayCount, totalSubscriptionCount, - subscriptionDetails, connectionHealth, connect, disconnect, @@ -369,109 +333,4 @@ const { .dark .subscription-count { color: #60a5fa; } - -.subscription-details { - margin-top: 1rem; - padding: 1rem; - background-color: #f1f5f9; - border-radius: 0.375rem; -} - -.dark .subscription-details { - background-color: #334155; -} - -.subscription-details h5 { - margin: 0 0 0.75rem 0; - color: #475569; - font-size: 0.875rem; - font-weight: 600; -} - -.dark .subscription-details h5 { - color: #94a3b8; -} - -.subscription-list { - /* Individual subscription items handle their own spacing */ -} - -.subscription-item { - padding: 0.75rem; - background-color: white; - border: 1px solid #e2e8f0; - border-radius: 0.375rem; - margin-bottom: 0.75rem; -} - -.dark .subscription-item { - background-color: #1e293b; - border-color: #475569; -} - -.subscription-item:last-child { - margin-bottom: 0; -} - -.subscription-id { - margin-bottom: 0.5rem; - font-family: monospace; - font-size: 0.875rem; - color: #1e293b; -} - -.dark .subscription-id { - color: #f1f5f9; -} - -.subscription-filters { - margin-bottom: 0.5rem; - color: #64748b; -} - -.dark .subscription-filters { - color: #94a3b8; -} - -.filter-details { - margin-top: 0.25rem; - margin-left: 1rem; -} - -.filter-item { - margin-bottom: 0.25rem; -} - -.filter-item code { - background-color: #f8fafc; - padding: 0.125rem 0.25rem; - border-radius: 0.25rem; - font-size: 0.75rem; - color: #475569; -} - -.dark .filter-item code { - background-color: #475569; - color: #e2e8f0; -} - -.subscription-relays { - font-size: 0.875rem; - color: #64748b; -} - -.dark .subscription-relays { - color: #94a3b8; -} - -.no-subscriptions { - text-align: center; - color: #94a3b8; - font-style: italic; - padding: 1rem; -} - -.dark .no-subscriptions { - color: #64748b; -} diff --git a/src/pages/RelayHubDemo.vue b/src/pages/RelayHubDemo.vue index 6ffdd5f..b5bcc13 100644 --- a/src/pages/RelayHubDemo.vue +++ b/src/pages/RelayHubDemo.vue @@ -16,26 +16,52 @@
-

Subscription Details

-
-
+

Subscription Details

+ +
+ +
+
+
+
+ {{ sub.id }} +
+
+
Filters: {{ sub.filters.length }} filter(s)
+
+ Relays: {{ sub.relays.join(', ') }} +
+
+ No active subscriptions +
-
- No active subscriptions + +
+
+ Click "Show Details" to view subscription information +
@@ -189,6 +215,13 @@ const subscriptionEvents = ref([]) const pageVisible = ref(!document.hidden) const networkOnline = ref(navigator.onLine) +// Subscription details visibility state +const showSubscriptionDetails = ref(false) + +const toggleSubscriptionDetails = () => { + showSubscriptionDetails.value = !showSubscriptionDetails.value +} + // Test connection const testConnection = async () => { try {