diff options
Diffstat (limited to 'packages/renderer/src/stores/RendererStore.ts')
-rw-r--r-- | packages/renderer/src/stores/RendererStore.ts | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/packages/renderer/src/stores/RendererStore.ts b/packages/renderer/src/stores/RendererStore.ts index f48d484..7052162 100644 --- a/packages/renderer/src/stores/RendererStore.ts +++ b/packages/renderer/src/stores/RendererStore.ts | |||
@@ -66,27 +66,28 @@ export default RendererStore; | |||
66 | * the newly created store via `ipc`. | 66 | * the newly created store via `ipc`. |
67 | * | 67 | * |
68 | * @param ipc The `sophieRenderer` context bridge. | 68 | * @param ipc The `sophieRenderer` context bridge. |
69 | * @returns A promise that resolves to the store once it was initialized. | ||
69 | */ | 70 | */ |
70 | export function createAndConnectRendererStore( | 71 | export async function createAndConnectRendererStore( |
71 | ipc: SophieRenderer, | 72 | ipc: SophieRenderer, |
72 | ): RendererStore { | 73 | ): Promise<RendererStore> { |
73 | const env: RendererEnv = { | 74 | const env: RendererEnv = { |
74 | dispatchMainAction: ipc.dispatchAction, | 75 | dispatchMainAction: ipc.dispatchAction, |
75 | }; | 76 | }; |
76 | const store = RendererStore.create({}, env); | 77 | const store = RendererStore.create({}, env); |
77 | 78 | ||
78 | ipc | 79 | try { |
79 | .onSharedStoreChange({ | 80 | await ipc.onSharedStoreChange({ |
80 | onSnapshot(snapshot) { | 81 | onSnapshot(snapshot) { |
81 | applySnapshot(store.shared, snapshot); | 82 | applySnapshot(store.shared, snapshot); |
82 | }, | 83 | }, |
83 | onPatch(patch) { | 84 | onPatch(patch) { |
84 | applyPatch(store.shared, patch); | 85 | applyPatch(store.shared, patch); |
85 | }, | 86 | }, |
86 | }) | ||
87 | .catch((error) => { | ||
88 | log.error('Failed to connect to shared store', error); | ||
89 | }); | 87 | }); |
88 | } catch (error) { | ||
89 | log.error('Failed to connect to shared store', error); | ||
90 | } | ||
90 | 91 | ||
91 | return store; | 92 | return store; |
92 | } | 93 | } |