themes-scifi-clean/blocks/status_bar.ninjatpl
Alex Dunmow dc4cc2d8b3 feat: convert to codeless .bnp — templates + manifest, Go/templ deleted (WO-WZ-021)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 15:24:40 +08:00

28 lines
1.3 KiB
Plaintext

<div data-block="scifi-clean:status_bar" class="w-full hairline-b bg-card text-card-foreground scifi-mono text-xs uppercase tracking-widest" style="position: sticky; top: 0; z-index: 30;">
<div class="max-w-6xl mx-auto px-4 py-2 flex items-center justify-between gap-4">
<div class="flex items-center gap-3">
<span class="text-muted-foreground">{{ callsign|default:"SCF-CLN" }}</span>
<span class="text-muted-foreground">|</span>
<span class="text-foreground">PUBLIC</span>
</div>
<div class="flex items-center gap-3 tabular-nums">
{% if showClock != false and showClock != "false" %}<span data-status-bar-clock="utc" class="text-muted-foreground tabular-nums">00:00:00 UTC</span>{% endif %}
{% if showBuild != false and showBuild != "false" %}<span class="text-muted-foreground">|</span>
<span class="text-foreground tabular-nums">BLD a1b2c3</span>{% endif %}
</div>
</div>
<script>
(function(){
var el = document.querySelector('[data-status-bar-clock="utc"]');
if (!el) return;
function fmt(n){ return n < 10 ? '0' + n : String(n); }
function tick(){
var d = new Date();
el.textContent = fmt(d.getUTCHours()) + ':' + fmt(d.getUTCMinutes()) + ':' + fmt(d.getUTCSeconds()) + ' UTC';
}
tick();
setInterval(tick, 1000);
})();
</script>
</div>