dr-sandbox/app/web/templates/compare.html
Michael Pilosov e680867f8b compare: selection UX on runs list + /compare placeholder page
- per-run checkbox when embedding HTML exists; cap at 2 selected
- sticky 'compare selected' button opens /compare?a=&b= in new tab
- selection state persists across the 3s htmx poll via a Set keyed by stem
- /compare stub validates stems, renders scaffolding (three.js UI next)
2026-04-22 14:19:26 -06:00

48 lines
1.8 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>embedding notebook &middot; compare</title>
<link rel="stylesheet" href="/static/style.css?v=20" />
<script>
(function(){try{
var t=localStorage.getItem('theme');
if(!t)t=matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light';
document.documentElement.setAttribute('data-theme',t);
}catch(e){}})();
</script>
</head>
<body>
<header class="masthead">
<div>
<h1 class="title">embedding notebook <em>&mdash; compare</em></h1>
</div>
<div class="meta">
<a href="/" class="masthead-link">&larr; runs</a>
<button type="button" class="theme-toggle" id="theme-toggle" aria-label="toggle theme">&#9680;</button>
</div>
</header>
<section style="padding: 2rem 1.2rem; max-width: 72ch; margin: 0 auto; font-family: var(--serif);">
<p style="color: var(--mute);">
Comparison page &mdash; scaffolding. Two runs selected:
</p>
<ul style="font-family: var(--mono); font-size: 0.85rem;">
<li><strong>A</strong> &middot; {{ stem_a }} &middot;
<a href="/api/runs/{{ stem_a }}/frames.json" target="_blank">frames.json</a> &middot;
<a href="/figs/{{ stem_a }}.html" target="_blank">original plotly</a></li>
<li><strong>B</strong> &middot; {{ stem_b }} &middot;
<a href="/api/runs/{{ stem_b }}/frames.json" target="_blank">frames.json</a> &middot;
<a href="/figs/{{ stem_b }}.html" target="_blank">original plotly</a></li>
</ul>
<p style="color: var(--faint); font-size: 0.85rem; font-style: italic;">
Three.js side-by-side animation UI will render here (next phase).
</p>
</section>
<script src="/static/theme.js?v=11"></script>
</body>
</html>