Add JSON import/export for full encounter state

Export and import encounter, undo/redo history, and player characters
as a downloadable .json file. Export/import actions are in the action
bar overflow menu. Import validates using existing rehydration functions
and shows a confirmation dialog when replacing a non-empty encounter.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Lukas
2026-03-27 14:28:39 +01:00
parent f6766b729d
commit fba83bebd6
19 changed files with 1339 additions and 2 deletions

View File

@@ -444,6 +444,7 @@ export function useEncounter() {
return {
encounter,
undoRedoState,
events,
isEmpty,
hasTempHp,
@@ -469,6 +470,8 @@ export function useEncounter() {
addFromPlayerCharacter,
undo: undoAction,
redo: redoAction,
setEncounter,
setUndoRedoState,
makeStore,
withUndo,
} as const;