ui improovements

This commit is contained in:
pavel 2026-05-14 22:52:59 +02:00
commit 950139010e
7 changed files with 67 additions and 0 deletions

View file

@ -15,8 +15,10 @@ async function init() {
document.getElementById('workspaceForm').addEventListener('submit', createWorkspace);
document.getElementById('createForm').addEventListener('submit', createProject);
document.getElementById('refreshCaddyBtn').addEventListener('click', loadCaddyConfig);
await refreshWorkspaces();
await refreshProjects();
await loadCaddyConfig();
}
async function refreshWorkspaces() {
@ -52,6 +54,7 @@ function renderProjects() {
<p class="meta">workspace: ${escapeHtml(p.workspace)} (${escapeHtml(p.unix_user)})</p>
<p class="meta">slug: ${escapeHtml(p.slug)} | service: ${escapeHtml(p.service_name)}</p>
<p class="meta">app target: 127.0.0.1:${escapeHtml(p.target_port)} | route host: ${escapeHtml(p.route_host || 'not set')}</p>
<p class="meta">app url: ${p.app_url ? `<a class="link" href="${escapeHtml(p.app_url)}" target="_blank" rel="noreferrer">${escapeHtml(p.app_url)}</a>` : 'not set'}</p>
<p class="meta">deploy webhook: <code>${escapeHtml(p.webhook_url || 'n/a')}</code></p>
<p class="meta">provisioning: ${escapeHtml(p.provision_state || 'unknown')}${p.provision_error ? ` | error: ${escapeHtml(p.provision_error)}` : ''}</p>
<p>${escapeHtml(p.description || '')}</p>
@ -194,6 +197,17 @@ async function createWorkspace(e) {
}
}
async function loadCaddyConfig() {
const out = document.getElementById('caddyConfigOut');
out.textContent = 'Loading Caddy config...';
try {
const cfg = await api('/api/caddy/config');
out.textContent = JSON.stringify(cfg, null, 2);
} catch (err) {
out.textContent = `Error: ${err.message}`;
}
}
function escapeHtml(s) {
return String(s)
.replaceAll('&', '&amp;')