Break out helper functions from the frontend's managers and stores (#3920)

* Move destructor call to each manager/store constructor for safety

* Break out utility functions
This commit is contained in:
Keavon Chambers
2026-03-20 14:22:46 -07:00
committed by GitHub
parent 0c7b5cd534
commit 64fd12a1a0
19 changed files with 846 additions and 826 deletions
+2 -1
View File
@@ -3,6 +3,8 @@ import type { Editor } from "@graphite/editor";
let editorRef: Editor | undefined = undefined;
export function createHyperlinkManager(editor: Editor) {
destroyHyperlinkManager();
editorRef = editor;
editor.subscriptions.subscribeFrontendMessage("TriggerVisitLink", async (data) => {
@@ -19,6 +21,5 @@ export function destroyHyperlinkManager() {
// Self-accepting HMR: tear down the old instance and re-create with the new module's code
import.meta.hot?.accept((newModule) => {
destroyHyperlinkManager();
if (editorRef) newModule?.createHyperlinkManager(editorRef);
});