diff --git a/packages/web/src/App.svelte b/packages/web/src/App.svelte index 75b78a7..22ab213 100644 --- a/packages/web/src/App.svelte +++ b/packages/web/src/App.svelte @@ -1252,6 +1252,7 @@
Wiz-War sixth edition + {__BUILD_STAMP__} {#if local.active} hotseat @@ -2448,6 +2449,12 @@ text-transform: uppercase; color: #8d8672; } + .mast-version { + font-family: "Courier Prime", monospace; + font-size: 0.65rem; + letter-spacing: 0.06em; + color: #6b6454; + } .mast-room { margin-left: auto; font-size: 0.85rem; color: #a49c86; } .mast-room b { color: #e9e1cb; letter-spacing: 0.12em; } .mast-audience { font-size: 0.85rem; color: #a49c86; white-space: nowrap; } diff --git a/packages/web/src/vite-env.d.ts b/packages/web/src/vite-env.d.ts new file mode 100644 index 0000000..a737a71 --- /dev/null +++ b/packages/web/src/vite-env.d.ts @@ -0,0 +1,5 @@ +/// +/// + +/** Build moment, yyyy.mm.dd.hh.mm — injected by vite.config.ts. */ +declare const __BUILD_STAMP__: string; diff --git a/packages/web/vite.config.ts b/packages/web/vite.config.ts index 8a6f4b5..40c6bde 100644 --- a/packages/web/vite.config.ts +++ b/packages/web/vite.config.ts @@ -1,6 +1,20 @@ import { defineConfig } from "vite"; import { svelte } from "@sveltejs/vite-plugin-svelte"; +// Deploys build locally moments before rsync, so build time IS deploy time. +const now = new Date(); +const pad = (n: number) => String(n).padStart(2, "0"); +const stamp = [ + now.getFullYear(), + pad(now.getMonth() + 1), + pad(now.getDate()), + pad(now.getHours()), + pad(now.getMinutes()), +].join("."); + export default defineConfig({ plugins: [svelte()], + define: { + __BUILD_STAMP__: JSON.stringify(stamp), + }, });