From 11cf57ce92aff4dcdb504194ea5c381ac400c5c5 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Mon, 27 Dec 2021 02:24:22 +0100 Subject: refactor: Simplify IpcRendererService and its spec --- packages/preload/src/contextBridge/SophieRendererImpl.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'packages/preload/src/contextBridge/SophieRendererImpl.ts') diff --git a/packages/preload/src/contextBridge/SophieRendererImpl.ts b/packages/preload/src/contextBridge/SophieRendererImpl.ts index 61b01e9..bbb4f65 100644 --- a/packages/preload/src/contextBridge/SophieRendererImpl.ts +++ b/packages/preload/src/contextBridge/SophieRendererImpl.ts @@ -27,16 +27,17 @@ import { SophieRenderer, } from '@sophie/shared'; -import { RendererToMainIpcService } from '../services/RendererToMainIpcService'; +import { IpcRendererService } from '../services/IpcRendererService'; class SophieRendererImpl implements SophieRenderer { - readonly #ipcService = new RendererToMainIpcService(); + readonly #ipcService; #onSharedStoreChangeCalled: boolean = false; #listener: SharedStoreListener | null = null; - constructor() { + constructor(ipcService: IpcRendererService) { + this.#ipcService = ipcService; this.#ipcService.onSharedStorePatch((patch) => { try { // `mobx-state-tree` will validate the patch, so we can safely cast here. @@ -87,8 +88,10 @@ class SophieRendererImpl implements SophieRenderer { } } -export function createSophieRenderer(): SophieRenderer { - const impl = new SophieRendererImpl(); +export function createSophieRenderer( + ipcService: IpcRendererService, +): SophieRenderer { + const impl = new SophieRendererImpl(ipcService); return { onSharedStoreChange: impl.onSharedStoreChange.bind(impl), dispatchAction: impl.dispatchAction.bind(impl), -- cgit v1.2.3-54-g00ecf