diff --git a/src/lib/components/ImportModal.svelte b/src/lib/components/ImportModal.svelte index b52235e..62ec48f 100644 --- a/src/lib/components/ImportModal.svelte +++ b/src/lib/components/ImportModal.svelte @@ -54,9 +54,7 @@ async function importCharacter() { if (!charData) return; - const char = await roster.create(charData.template); - Object.assign(char.data, charData.data); - roster.scheduleSave(char); + await roster.create(charData.template, charData.data); onClose(); } diff --git a/src/lib/state.svelte.ts b/src/lib/state.svelte.ts index 0b7d615..c841477 100644 --- a/src/lib/state.svelte.ts +++ b/src/lib/state.svelte.ts @@ -33,11 +33,11 @@ export const roster = { } }, - async create(template: Template) { + async create(template: Template, data: Record = {}) { const char: Character = { id: crypto.randomUUID(), template: $state.snapshot(template), - data: {} + data: { ...data } }; characters.push(char); activeId = char.id;