Move Proxmox and Synology to their own top-level pages

Same move as Docker/Tailscale/Semaphore/Gitea: each was buried inside
the generic Integrations browsing view. Give them dedicated pages too
— this was the last pair, so every integration type with a browsing UI
now has its own page.

New web/src/pages/{Proxmox,Synology}.tsx reuse the existing, unchanged
API routes and adapters (no server changes) with their own integration
picker scoped to just that type. Added matching nav items and routes.
Synology stays read-only, matching its original design.

Removed the corresponding state/handlers/tables from Integrations.tsx
(296 lines). It's now down to just the "Manage integrations" CRUD
table plus a browsing dropdown whose six branches are all redirects to
the type's own page — genuinely pointless now that every type has
moved out, worth simplifying separately.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
bobbanandClaude Sonnet 5 committed 2026-09-16 00:21:07 +02:00
1 parent 8fef68c27a
commit 95bd831d81
6 files changed
+451 -300

No files matched your search

+10 -10
View File
@@ -34,11 +34,17 @@ All modules from the original plan are built:
Proxmox for VM/LXC-backed servers, or from the agent's own hardware
report for everything else. Proxmox-linked servers also get
start/stop/restart buttons right on the detail page.
- **Tailscale**, **Semaphore**, **Gitea**, and **Docker** each get their
own top-level page (backed by the matching integration) instead of
living inside a shared Integrations browsing view:
- **Tailscale**, **Proxmox**, **Synology**, **Semaphore**, **Gitea**,
and **Docker** each get their own top-level page (backed by the
matching integration) instead of living inside a shared Integrations
browsing view:
- **Tailscale** — device list with online/authorized status, and
authorize/deauthorize/remove actions; a live device-count widget.
- **Proxmox** — VM/LXC status across every node in the cluster, with
start/restart/shutdown/stop actions; a live running/total widget.
Supports self-signed certificates (common in homelab setups).
- **Synology** — volume and disk health (read-only by design).
Supports self-signed certificates.
- **Semaphore** — Ansible run status per template across every
project, with a "Run" action to trigger a template; a live
template-count widget (with a last-failed warning).
@@ -51,13 +57,7 @@ All modules from the original plan are built:
running/total widget.
Add/edit/enable/disable/remove each integration's credential itself
under Integrations → Manage integrations, same as Proxmox and
Synology (which stay on the Integrations page).
- **Integrations → Proxmox** — VM/LXC status across every node in the
cluster, with start/stop/restart actions; a live running/total widget.
Supports self-signed certificates (common in homelab Proxmox setups).
- **Integrations → Synology** — volume and disk health (read-only by
design). Supports self-signed certificates.
under Integrations → Manage integrations.
- **Settings** (admin-only) — notification channels (Gotify, ntfy, SMTP,
generic webhook) with per-channel test buttons, per-event toggles (DNS
record added/updated/deleted, daily secret-expiry reminder with a