feat: show build date/time on login screen across all apps

- Add BUILD_TIME and BUILD_HASH exports to all version.ts files
- Add getBuildDefines() to all vite.config.ts for compile-time injection
- Add buildTime prop to shared LoginPage component
- Display formatted date/time next to version number (e.g. "v1.0.0 · 21.03.2026 10:30")
- Add app.d.ts type declarations for __BUILD_TIME__ and __BUILD_HASH__

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-03-21 12:40:57 +01:00
parent a6a5265332
commit fc5dfe2f0f
69 changed files with 210 additions and 34 deletions

View file

@ -1,3 +1,6 @@
declare const __BUILD_HASH__: string;
declare const __BUILD_TIME__: string;
// See https://kit.svelte.dev/docs/types#app
// for information about these interfaces
declare global {

View file

@ -1 +1,4 @@
export const APP_VERSION = '0.1.0';
export const BUILD_TIME: string =
typeof __BUILD_TIME__ !== 'undefined' ? __BUILD_TIME__ : new Date().toISOString();
export const BUILD_HASH: string = typeof __BUILD_HASH__ !== 'undefined' ? __BUILD_HASH__ : 'dev';

View file

@ -8,7 +8,7 @@
import { QuestionsLogo } from '@manacore/shared-branding';
import { authStore } from '$lib/stores/auth.svelte';
import { apiClient } from '$lib/api/client';
import { APP_VERSION } from '$lib/version';
import { APP_VERSION, BUILD_TIME } from '$lib/version';
import '$lib/i18n';
// Get redirect URL from query params or sessionStorage
@ -70,4 +70,5 @@
{verified}
{initialEmail}
version={APP_VERSION}
buildTime={BUILD_TIME}
/>

View file

@ -3,7 +3,7 @@ import tailwindcss from '@tailwindcss/vite';
import { defineConfig } from 'vite';
import { SvelteKitPWA } from '@vite-pwa/sveltekit';
import { createPWAConfig } from '@manacore/shared-pwa';
import { MANACORE_SHARED_PACKAGES } from '@manacore/shared-vite-config';
import { MANACORE_SHARED_PACKAGES, getBuildDefines } from '@manacore/shared-vite-config';
export default defineConfig({
plugins: [
@ -28,4 +28,7 @@ export default defineConfig({
optimizeDeps: {
exclude: [...MANACORE_SHARED_PACKAGES],
},
define: {
...getBuildDefines(),
},
});