left4me/l4d2web/templates
mwiegand fa686f11e3
feat(l4d2-web): server + overlay detail — live-refresh via HTMX, restructured
Vendors HTMX 2.0.4 (the prior file was a 1-line stub) and uses it to poll
two new partials on a 2s tick while a job is in flight:

- /servers/<id>/actions → state badge, filtered action buttons,
  last-job sentence, live job log (SSE) while a Start/Stop/Reset job
  is running. When the job is terminal the partial re-renders without
  hx-trigger and polling stops.
- /overlays/<id>/build-status → build state badge, last-build
  sentence, live job log while a build_overlay job is running. Same
  terminal-state stop behavior.

Server detail restructure:
- Editable name moves out of the page body into a Rename modal
  triggered from a link next to Delete in the page footer.
- Compact dl with Port (linked as steam://run/550//+connect <host>:<port>)
  and Blueprint.
- Actions row: state badge + state-filtered buttons (start/stop, reset)
  + last-job sentence. Drift warning when desired ≠ actual.
- Recent Jobs table removed.

Overlay detail restructure:
- Single panel, dl Type/Scope, no separate Last build row, no Builds
  section.
- Script form gets two compound submits: "Save and build" and
  "Save, reset and rebuild". Standalone Rebuild/Wipe gone.
- Build status state badge + last-build sentence under the editor;
  action buttons hide while a build is in flight.
- Rename modal in the page footer next to Delete.

sse.js binds on htmx:load (covers initial document and post-swap inserts)
and closes EventSources on htmx:beforeCleanupElement to avoid leaking
streams across swaps.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 01:27:30 +02:00
..
_job_table.html feat(l4d2-web): managed global map overlays with daily refresh 2026-05-08 08:05:14 +02:00
_overlay_build_status.html feat(l4d2-web): server + overlay detail — live-refresh via HTMX, restructured 2026-05-09 01:27:30 +02:00
_overlay_file_node.html fix(l4d2-web): file tree fetches in plain JS — vendored htmx is a stub 2026-05-08 20:23:04 +02:00
_overlay_file_tree.html feat(l4d2-web): overlay detail Files section with HTMX file tree + downloads 2026-05-08 20:16:25 +02:00
_overlay_item_table.html feat(l4d2-web): workshop overlay UI (routes + templates) 2026-05-07 16:50:54 +02:00
_server_actions.html feat(l4d2-web): server + overlay detail — live-refresh via HTMX, restructured 2026-05-09 01:27:30 +02:00
admin.html refactor(l4d2-web): detail-page UI — single panel, soft border, footer Delete 2026-05-09 01:26:57 +02:00
admin_jobs.html feat(l4d2-web): add job pages and cancellation 2026-05-06 15:05:13 +02:00
admin_users.html feat(l4d2-web): add admin landing and system pages 2026-05-06 12:09:36 +02:00
base.html feat(l4d2-web): overlay detail Files section with HTMX file tree + downloads 2026-05-08 20:16:25 +02:00
blueprint_detail.html feat(l4d2-web): per-overlay server.cfg aliases — expose checkbox + auto-exec 2026-05-09 01:26:31 +02:00
blueprints.html fix(l4d2-web): textareas — monospace font, consistent rows on blueprint forms 2026-05-08 20:52:12 +02:00
dashboard.html feat(l4d2-web): add neutral shell and theme tokens 2026-05-06 12:06:23 +02:00
job_detail.html refactor(l4d2-web): detail-page UI — single panel, soft border, footer Delete 2026-05-09 01:26:57 +02:00
login.html feat(l4d2-web): add login page and safe redirects 2026-05-06 12:52:22 +02:00
overlay_detail.html feat(l4d2-web): server + overlay detail — live-refresh via HTMX, restructured 2026-05-09 01:27:30 +02:00
overlay_jobs.html feat(l4d2-web): per-overlay job list + redirect to job after build-triggering edits 2026-05-08 17:44:22 +02:00
overlays.html feat(l4d2-web): script overlay UI 2026-05-08 15:50:36 +02:00
server_detail.html feat(l4d2-web): server + overlay detail — live-refresh via HTMX, restructured 2026-05-09 01:27:30 +02:00
server_jobs.html feat(l4d2-web): add job pages and cancellation 2026-05-06 15:05:13 +02:00
servers.html feat(l4d2-web): server identity by id, name as display label 2026-05-08 19:22:09 +02:00