Files
kapteins-daagbok/client/src/services/appTourStorage.ts
T
elpatron 53eee9a3ad Add public read-only demo at /demo without account.
Let visitors explore ship data, crew, and sample log entries from the login page, with onboarding tour support and a fix for GPS track rendering when fileType is missing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-30 10:11:53 +02:00

26 lines
821 B
TypeScript

export const PUBLIC_DEMO_TOUR_USER_ID = '__public_demo__'
export function getTourCompletedKey(userId: string): string {
return `app_tour_completed_${userId}`
}
export function isTourCompleted(userId: string | null): boolean {
if (!userId) return true
return localStorage.getItem(getTourCompletedKey(userId)) === '1'
}
export function markTourCompleted(userId: string): void {
localStorage.setItem(getTourCompletedKey(userId), '1')
}
export function clearTourCompleted(userId: string): void {
localStorage.removeItem(getTourCompletedKey(userId))
}
export function resolveTourUserId(options?: { demoMode?: boolean }): string | null {
const activeUserId = localStorage.getItem('active_userid')
if (activeUserId) return activeUserId
if (options?.demoMode) return PUBLIC_DEMO_TOUR_USER_ID
return null
}