implement view persistence class to prevent junk subscriptions

This commit is contained in:
marlon-erler
2026-04-13 22:11:49 +00:00
parent 79f4a26f23
commit 19b4d51974
8 changed files with 108 additions and 30 deletions
+6 -3
View File
@@ -7,6 +7,8 @@ import { BoardViewModelToEntry } from "../Components/boardEntry";
import TaskPageViewModel from "../../ViewModel/Pages/taskPageViewModel";
import CoreViewModel from "../../ViewModel/Global/coreViewModel";
import { PlaceholderView } from "../Components/placeholderView";
import { v4 } from "uuid";
import { ViewPersistence } from "../viewPersistence";
export function TaskPage(
coreViewModel: CoreViewModel,
@@ -19,7 +21,8 @@ export function TaskPage(
() => taskPageViewModel.selectedBoardId.value != undefined,
);
const paneContent = React.createProxyState(
const persistenceId = taskPageViewModel.chatViewModel.chatModel.id;
const pages = ViewPersistence.taskPages.setPages(persistenceId, ()=>React.createProxyState(
[taskPageViewModel.selectedBoardId],
() => {
const selectedBoardId = taskPageViewModel.selectedBoardId.value;
@@ -45,7 +48,7 @@ export function TaskPage(
return BoardPage(coreViewModel, selectedBoard);
},
);
));
return (
<div
@@ -100,7 +103,7 @@ export function TaskPage(
<div
id="board-content"
class="pane-wrapper"
children:set={paneContent}
children:set={pages}
></div>
</div>
);