Files
splitt-the-bill/app/composables/useIdentity.ts
T
2026-07-01 15:43:18 +02:00

22 lines
632 B
TypeScript

import { readIdentity, writeIdentity } from '../utils/identity'
export function useIdentity() {
const name = useState<string | null>('identity-name', () => null)
const loaded = useState('identity-loaded', () => false)
if (import.meta.client && !loaded.value) {
const identity = readIdentity(window.localStorage)
name.value = identity?.name ?? null
loaded.value = true
}
function setName(newName: string) {
const trimmed = newName.trim()
if (!trimmed) return
name.value = trimmed
if (import.meta.client) writeIdentity(window.localStorage, { name: trimmed })
}
return { name, setName }
}