dragonflight/services/web-ui/public/editor.html

202 lines
8.5 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<title>Editor (in development) — Z-AMPP</title>
<link rel="stylesheet" href="css/common.css?v=3">
<style>
.main {
background:
radial-gradient(ellipse 70% 50% at 50% 0%, oklch(28% 0.10 266 / 0.35), transparent 60%),
radial-gradient(ellipse 60% 40% at 90% 100%, oklch(35% 0.16 266 / 0.18), transparent 65%),
var(--bg-base);
}
.uc-wrap {
min-height: calc(100vh - 56px);
display: flex; align-items: center; justify-content: center;
padding: 48px 24px;
}
.uc-card {
width: 100%;
max-width: 560px;
background: oklch(13% 0.018 250 / 0.7);
border: 1px solid oklch(28% 0.04 260 / 0.5);
border-radius: 16px;
padding: 36px 36px 32px;
text-align: center;
backdrop-filter: blur(8px);
box-shadow: 0 24px 60px -24px oklch(0% 0 0 / 0.5);
}
.uc-icon-wrap {
width: 64px; height: 64px;
margin: 0 auto 18px;
border-radius: 16px;
display: inline-flex; align-items: center; justify-content: center;
background: oklch(20% 0.08 80 / 0.35);
border: 1px solid oklch(50% 0.16 80 / 0.5);
color: oklch(85% 0.16 85);
}
.uc-icon-wrap svg { width: 32px; height: 32px; }
.uc-pill {
display: inline-flex; align-items: center; gap: 6px;
padding: 4px 10px;
border-radius: 999px;
font-size: 10px; font-weight: 700;
letter-spacing: 0.14em; text-transform: uppercase;
background: oklch(28% 0.14 80 / 0.45);
color: oklch(85% 0.16 85);
border: 1px solid oklch(50% 0.16 80 / 0.55);
margin-bottom: 14px;
}
.uc-pill::before {
content: '';
width: 6px; height: 6px;
border-radius: 50%;
background: oklch(85% 0.16 85);
box-shadow: 0 0 8px oklch(85% 0.16 85 / 0.6);
}
.uc-title {
font-size: 22px; font-weight: 600;
letter-spacing: -0.01em;
color: var(--text-primary);
margin: 0 0 10px;
}
.uc-body {
font-size: 14px; line-height: 1.6;
color: var(--text-secondary);
margin: 0 0 24px;
}
.uc-actions {
display: flex; gap: 10px; justify-content: center; flex-wrap: wrap;
}
.uc-stripes {
margin-top: 28px;
height: 8px; border-radius: 6px;
background: repeating-linear-gradient(
135deg,
oklch(28% 0.14 80 / 0.45) 0 12px,
oklch(18% 0.04 260 / 0.5) 12px 24px
);
opacity: 0.6;
}
</style>
</head>
<body>
<div class="shell">
<!-- Sidebar (kept identical to other pages so navigation works) -->
<nav class="sidebar" aria-label="Main navigation">
<div class="sidebar-brand">
<img src="img/dragon-logo.png?v=1" alt="Wild Dragon" class="sidebar-logo">
<span class="sidebar-brand-name">Z-AMPP</span>
</div>
<nav class="sidebar-nav">
<a href="home.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 7l6-5 6 5v7a1 1 0 0 1-1 1h-3v-5H6v5H3a1 1 0 0 1-1-1z"/></svg>
Home
</a>
<a href="index.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="1" y="1" width="6" height="6" rx="1"/><rect x="9" y="1" width="6" height="6" rx="1"/><rect x="1" y="9" width="6" height="6" rx="1"/><rect x="9" y="9" width="6" height="6" rx="1"/></svg>
Library
</a>
<a href="projects.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M1 4a1 1 0 0 1 1-1h4l2 2h5a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1z"/></svg>
Projects
</a>
<a href="upload.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M8 11V3M5 6l3-3 3 3"/><path d="M2 13h12"/></svg>
Ingest
</a>
<a href="recorders.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="1" y="4" width="10" height="8" rx="1"/><path d="M11 7l4-2v6l-4-2"/></svg>
Recorders
</a>
<a href="capture.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="8" cy="8" r="3"/><circle cx="8" cy="8" r="6.5"/></svg>
Capture
</a>
<a href="jobs.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 4h12M2 8h8M2 12h5"/></svg>
Jobs
</a>
<a href="editor.html" class="nav-item active">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M2 13l1.5-3.5L11 2l3 3-7.5 7.5L3 14zM10 3l3 3"/></svg>
Editor
</a>
<div class="sidebar-section-label">Admin</div>
<a href="users.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="6" cy="5" r="2.5"/><path d="M1 13c0-2.8 2.2-5 5-5s5 2.2 5 5"/><circle cx="12" cy="5" r="2"/><path d="M15 12c0-1.9-1.3-3.5-3-4"/></svg>
Users
</a>
<a href="tokens.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="6" cy="10" r="3.5"/><path d="M8.7 7.3L13 3M11.5 3.5l1.5 1.5M13.5 2.5l1 1"/></svg>
Tokens
</a>
<a href="containers.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><rect x="1" y="5" width="14" height="4" rx="1"/><rect x="1" y="10" width="14" height="4" rx="1"/><path d="M4 7h1M4 12h1"/></svg>
Containers
</a>
<a href="cluster.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="8" cy="8" r="2"/><circle cx="2" cy="3" r="1.5"/><circle cx="14" cy="3" r="1.5"/><circle cx="2" cy="13" r="1.5"/><circle cx="14" cy="13" r="1.5"/><path d="M3.1 4.1L6.5 6.5M12.9 4.1L9.5 6.5M3.1 11.9L6.5 9.5M12.9 11.9L9.5 9.5"/></svg>
Cluster
</a>
2026-05-20 14:56:04 -04:00
<a href="settings.html" class="nav-item">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5"><circle cx="8" cy="8" r="2.5"/><path d="M8 1v1.5M8 13.5V15M1 8h1.5M13.5 8H15M2.9 2.9l1.1 1.1M12 12l1.1 1.1M2.9 13.1L4 12M12 4l1.1-1.1"/></svg>
Settings
</a>
</nav>
<div class="sidebar-footer">
<div class="sidebar-user">
<div class="sidebar-user-avatar" id="userAvatar">?</div>
<div class="sidebar-user-info">
<div class="sidebar-user-name" id="userName"></div>
<div class="sidebar-user-role" id="userRole"></div>
</div>
<button class="btn btn-ghost" id="logoutBtn" title="Sign out" style="padding:0;width:24px;height:24px;flex-shrink:0;">
<svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5" width="14" height="14"><path d="M10 8H3M6 5l-3 3 3 3"/><path d="M7 3h5a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1H7"/></svg>
</button>
</div>
</div>
</nav>
<div class="main">
<header class="topbar">
<div class="topbar-left">
<span class="page-title">Editor</span>
</div>
<div class="topbar-right"></div>
</header>
<div class="uc-wrap">
<section class="uc-card" role="status" aria-live="polite">
<div class="uc-icon-wrap" aria-hidden="true">
<svg viewBox="0 0 32 32" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M6 26h20"/>
<path d="M9 22h14l-1.5-8h-11z"/>
<path d="M11 14l1-4h8l1 4"/>
<path d="M14 6h4"/>
</svg>
</div>
<span class="uc-pill">In Development</span>
<h1 class="uc-title">The editor is under construction</h1>
<p class="uc-body">
We're still wiring up the timeline editor — clip trimming, sequence
rendering, and Premiere round-tripping. It's not ready for use yet,
but it's coming. Use the sidebar to jump to Library, Recorders,
or Projects in the meantime.
</p>
<div class="uc-actions">
<a href="home.html" class="btn btn-primary btn-sm">Back to home</a>
<a href="index.html" class="btn btn-secondary btn-sm">Open library</a>
</div>
<div class="uc-stripes" aria-hidden="true"></div>
</section>
</div>
</div>
</div>
<script src="js/auth-guard.js"></script>
</body>
</html>