You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
3.5 KiB
107 lines
3.5 KiB
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>Iron</title>
|
|
<link rel="stylesheet" href="/assets/styles.css" />
|
|
</head>
|
|
<body>
|
|
<div class="page-shell">
|
|
<aside class="hero-panel">
|
|
<p class="eyebrow">Iron Gateway</p>
|
|
<h1>One personal drive, one calm control plane.</h1>
|
|
<p class="lede">
|
|
Log in to browse your namespace, inspect storage health, and grow this gateway into
|
|
the multi-backend drive defined by the project MVP.
|
|
</p>
|
|
<div class="hero-card">
|
|
<div>
|
|
<span class="label">Current shell</span>
|
|
<strong>Auth + browser entry</strong>
|
|
</div>
|
|
<div>
|
|
<span class="label">Next up</span>
|
|
<strong>Upload UI and S3 runtime path</strong>
|
|
</div>
|
|
</div>
|
|
</aside>
|
|
|
|
<main class="workspace-panel">
|
|
<section id="login-card" class="card">
|
|
<div class="card-header">
|
|
<p class="eyebrow">Local Login</p>
|
|
<h2>Enter the gateway</h2>
|
|
</div>
|
|
<form id="login-form" class="stack-form">
|
|
<label>
|
|
<span>Username</span>
|
|
<input id="username" name="username" type="text" autocomplete="username" required />
|
|
</label>
|
|
<label>
|
|
<span>Password</span>
|
|
<input
|
|
id="password"
|
|
name="password"
|
|
type="password"
|
|
autocomplete="current-password"
|
|
required
|
|
/>
|
|
</label>
|
|
<button type="submit">Sign in</button>
|
|
<p id="login-error" class="error" hidden></p>
|
|
</form>
|
|
</section>
|
|
|
|
<section id="app-card" class="card" hidden>
|
|
<div class="toolbar">
|
|
<div>
|
|
<p class="eyebrow">Workspace</p>
|
|
<h2 id="welcome-title">Signed in</h2>
|
|
</div>
|
|
<div class="toolbar-actions">
|
|
<button id="refresh-button" type="button" class="ghost">Refresh</button>
|
|
<button id="logout-button" type="button" class="ghost">Logout</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="status-grid">
|
|
<article class="status-card">
|
|
<span class="label">Session</span>
|
|
<strong id="session-user">Unknown</strong>
|
|
</article>
|
|
<article class="status-card">
|
|
<span class="label">Root Directory</span>
|
|
<strong id="root-name">/</strong>
|
|
</article>
|
|
<article class="status-card">
|
|
<span class="label">Backends</span>
|
|
<strong id="backend-count">0</strong>
|
|
</article>
|
|
</div>
|
|
|
|
<section class="panel-grid">
|
|
<div class="subpanel">
|
|
<div class="subpanel-header">
|
|
<h3>Root Items</h3>
|
|
<span id="items-count" class="pill">0 items</span>
|
|
</div>
|
|
<ul id="root-items" class="item-list"></ul>
|
|
</div>
|
|
|
|
<div class="subpanel">
|
|
<div class="subpanel-header">
|
|
<h3>Configured Backends</h3>
|
|
</div>
|
|
<ul id="backends-list" class="item-list"></ul>
|
|
</div>
|
|
</section>
|
|
|
|
<p id="app-error" class="error" hidden></p>
|
|
</section>
|
|
</main>
|
|
</div>
|
|
|
|
<script src="/assets/app.js" type="module"></script>
|
|
</body>
|
|
</html>
|
|
|