aboutsummaryrefslogtreecommitdiffstats
path: root/packages/renderer/src/stores
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2022-01-20 19:13:45 +0100
committerLibravatar Kristóf Marussy <kristof@marussy.com>2022-02-08 21:43:16 +0100
commitcef1c2fd221e81424195026645386370662ef398 (patch)
tree77fc9d044adef735adb2c2acc0ba3e74858aa1f8 /packages/renderer/src/stores
parentrefactor: Rename main services to infrastructure (diff)
downloadsophie-cef1c2fd221e81424195026645386370662ef398.tar.gz
sophie-cef1c2fd221e81424195026645386370662ef398.tar.zst
sophie-cef1c2fd221e81424195026645386370662ef398.zip
feat: Add selected service field to SharedStore
Lets the main process see which service is currently selected. Signed-off-by: Kristóf Marussy <kristof@marussy.com>
Diffstat (limited to 'packages/renderer/src/stores')
-rw-r--r--packages/renderer/src/stores/RendererStore.ts9
-rw-r--r--packages/renderer/src/stores/SharedStore.ts2
2 files changed, 11 insertions, 0 deletions
diff --git a/packages/renderer/src/stores/RendererStore.ts b/packages/renderer/src/stores/RendererStore.ts
index d0e7843..731ca28 100644
--- a/packages/renderer/src/stores/RendererStore.ts
+++ b/packages/renderer/src/stores/RendererStore.ts
@@ -42,8 +42,17 @@ export const rendererStore = types
42 get services(): Service[] { 42 get services(): Service[] {
43 return this.config.services; 43 return this.config.services;
44 }, 44 },
45 get selectedService(): Service | undefined {
46 return self.shared.selectedService;
47 },
45 })) 48 }))
46 .actions((self) => ({ 49 .actions((self) => ({
50 setSelectedServiceId(serviceId: string): void {
51 getEnv(self).dispatchMainAction({
52 action: 'set-selected-service-id',
53 serviceId,
54 });
55 },
47 setBrowserViewBounds(browserViewBounds: BrowserViewBounds): void { 56 setBrowserViewBounds(browserViewBounds: BrowserViewBounds): void {
48 getEnv(self).dispatchMainAction({ 57 getEnv(self).dispatchMainAction({
49 action: 'set-browser-view-bounds', 58 action: 'set-browser-view-bounds',
diff --git a/packages/renderer/src/stores/SharedStore.ts b/packages/renderer/src/stores/SharedStore.ts
index baaf061..962f7e2 100644
--- a/packages/renderer/src/stores/SharedStore.ts
+++ b/packages/renderer/src/stores/SharedStore.ts
@@ -22,9 +22,11 @@ import { sharedStore as originalSharedStore } from '@sophie/shared';
22import { Instance, types } from 'mobx-state-tree'; 22import { Instance, types } from 'mobx-state-tree';
23 23
24import { config } from './Config'; 24import { config } from './Config';
25import { service } from './Service';
25 26
26export const sharedStore = originalSharedStore.props({ 27export const sharedStore = originalSharedStore.props({
27 config: types.optional(config, {}), 28 config: types.optional(config, {}),
29 selectedService: types.safeReference(service),
28}); 30});
29 31
30export interface SharedStore extends Instance<typeof sharedStore> {} 32export interface SharedStore extends Instance<typeof sharedStore> {}