- 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)
48 lines
1.8 KiB
HTML
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 · 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>— compare</em></h1>
|
|
</div>
|
|
<div class="meta">
|
|
<a href="/" class="masthead-link">← runs</a>
|
|
<button type="button" class="theme-toggle" id="theme-toggle" aria-label="toggle theme">◐</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 — scaffolding. Two runs selected:
|
|
</p>
|
|
<ul style="font-family: var(--mono); font-size: 0.85rem;">
|
|
<li><strong>A</strong> · {{ stem_a }} ·
|
|
<a href="/api/runs/{{ stem_a }}/frames.json" target="_blank">frames.json</a> ·
|
|
<a href="/figs/{{ stem_a }}.html" target="_blank">original plotly</a></li>
|
|
<li><strong>B</strong> · {{ stem_b }} ·
|
|
<a href="/api/runs/{{ stem_b }}/frames.json" target="_blank">frames.json</a> ·
|
|
<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>
|