3x-ui/sub
MHSanaei aaaa1a015f
feat(frontend): migrate subpage.html to Vue 3 SPA
The subscription info page was the last page still rendered by Go
templates. Move it to the Vite multi-page setup so the whole panel
loads through one toolchain.

Frontend: SubPage.vue mounts at /sub/<id>?html=1 and reads window.__SUB_PAGE_DATA__
for the parsed view-model (traffic / quota / expiry + rendered share
links). Fix descriptions borders against the light-theme card by
painting the row divider on each cell's bottom edge — AD-Vue's <tr>
border doesn't render reliably under border-collapse:collapse.

Backend: serveSubPage reads dist/subpage.html, injects
window.__X_UI_BASE_PATH__ + window.__SUB_PAGE_DATA__ before </head>,
and rewrites Vite's absolute /assets/ URLs when the panel runs under
a URL prefix. Drop the legacy template-FuncMap wiring and switch the
sub server's static mount from web/assets to web/dist/assets.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-08 19:44:50 +02:00
..
default.json dokodemo-door, socks renamed to mixed, tunnel 2025-09-09 13:57:40 +02:00
sub.go feat(frontend): migrate subpage.html to Vue 3 SPA 2026-05-08 19:44:50 +02:00
subClashService.go feat: add configurable auto-restart on client auto-disable 2026-05-04 23:19:25 +02:00
subController.go feat(frontend): migrate subpage.html to Vue 3 SPA 2026-05-08 19:44:50 +02:00
subJsonService.go fix: get client reverse tag in the outbound 2026-05-06 00:50:40 +02:00
subService.go refactor(xhttp): split fields by direction, expand outbound coverage 2026-05-07 19:26:40 +02:00