mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-23 20:25:56 +00:00
Canonicalize Proxmox web interface links
This commit is contained in:
@@ -2364,8 +2364,11 @@ instead of page-local table columns or one-off external-link anchors.
|
||||
`frontend-modern/src/components/shared/WebInterfaceNameLink.tsx` owns the
|
||||
resource-name link shell, new-tab safety attributes, row-click/key propagation
|
||||
containment, fallback text, and accessible launch labels. Workload guest rows
|
||||
and standalone machine rows compose that primitive so a saved URL is opened by
|
||||
clicking the resource name on every comparable runtime table.
|
||||
standalone machine rows, and Proxmox node rows compose that primitive so a saved
|
||||
or inferred URL is opened by clicking the resource name on every comparable
|
||||
runtime table. Runtime/platform tables must not add separate `Web` columns,
|
||||
page-local external-link anchors, or duplicated new-tab safety handling for
|
||||
that launch affordance.
|
||||
Shared-template drift enforcement is registry-backed:
|
||||
`frontend-modern/scripts/shared-template-registry.json` is the canonical list of
|
||||
standardized repeated affordances, required consumers, and forbidden local
|
||||
|
||||
@@ -5199,6 +5199,7 @@
|
||||
"frontend-modern/src/features/proxmox/ProxmoxBackupServersTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxCephTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxCoverageTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/proxmoxHostTableModel.ts",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxMailGatewayTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxNodesTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxRecoverableTable.tsx",
|
||||
@@ -5365,6 +5366,7 @@
|
||||
"frontend-modern/src/features/proxmox/ProxmoxBackupServersTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxCephTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxCoverageTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/proxmoxHostTableModel.ts",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxMailGatewayTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxNodesTable.tsx",
|
||||
"frontend-modern/src/features/proxmox/ProxmoxRecoverableTable.tsx",
|
||||
|
||||
@@ -142,6 +142,7 @@ cross-source deduplication.
|
||||
120. `frontend-modern/src/features/proxmox/ProxmoxMailGatewayTable.tsx`
|
||||
121. `frontend-modern/src/features/proxmox/ProxmoxRecoverableTable.tsx`
|
||||
122. `frontend-modern/src/features/proxmox/ProxmoxReplicationTable.tsx`
|
||||
122a. `frontend-modern/src/features/proxmox/proxmoxHostTableModel.ts`
|
||||
123. `frontend-modern/src/features/truenas/TrueNASAlertsTable.tsx`
|
||||
124. `frontend-modern/src/features/truenas/TrueNASAppsTable.tsx`
|
||||
125. `frontend-modern/src/features/truenas/TrueNASNetworkSharesTable.tsx`
|
||||
@@ -222,6 +223,13 @@ affordance itself must compose
|
||||
`PlatformResourceDetailTableRow.tsx` contract. Future platform tables must not
|
||||
add page-local chevron buttons, bespoke `aria-expanded` handling, or local
|
||||
event-propagation variants for row detail expansion.
|
||||
The split also applies to web-interface launch affordances. Unified-resource
|
||||
tables own whether a row has a saved, inferred, or source-native web-interface
|
||||
URL and how that URL is derived, but the visible launch affordance belongs on
|
||||
the resource name through the shared `WebInterfaceNameLink` primitive. Proxmox
|
||||
host table columns are governed by `proxmoxHostTableModel.ts`; that model must
|
||||
not reintroduce a separate `Web` column or move the web-interface launch back
|
||||
into a page-local icon cell.
|
||||
Product-originated resource references may arrive as registered unified
|
||||
resource IDs, source-specific IDs, or canonical identity aliases. The
|
||||
unified-resource registry owns resolving those references through
|
||||
|
||||
Reference in New Issue
Block a user