From af506f40edb1c9c339cc86baf40baccf2dc6da62 Mon Sep 17 00:00:00 2001 From: vantezzen Date: Fri, 18 Oct 2019 20:53:41 +0200 Subject: Develop local server feature --- src/stores/RequestStore.js | 9 +++++++++ src/stores/SettingsStore.js | 14 +++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) (limited to 'src/stores') diff --git a/src/stores/RequestStore.js b/src/stores/RequestStore.js index 2587d4eef..a92f4c685 100644 --- a/src/stores/RequestStore.js +++ b/src/stores/RequestStore.js @@ -1,3 +1,4 @@ +import { ipcRenderer } from 'electron'; import { action, computed, observable } from 'mobx'; import ms from 'ms'; @@ -12,6 +13,8 @@ export default class RequestStore extends Store { @observable showRequiredRequestsError = false; + @observable localServerPort = 45569; + retries = 0; retryDelay = ms('2s'); @@ -29,6 +32,12 @@ export default class RequestStore extends Store { setup() { this.userInfoRequest = this.stores.user.getUserInfoRequest; this.servicesRequest = this.stores.services.allServicesRequest; + + ipcRenderer.on('localServerPort', (event, data) => { + if (data.port) { + this.localServerPort = data.port; + } + }); } @computed get areRequiredRequestsSuccessful() { diff --git a/src/stores/SettingsStore.js b/src/stores/SettingsStore.js index 8c4cd47eb..df0fc77e9 100644 --- a/src/stores/SettingsStore.js +++ b/src/stores/SettingsStore.js @@ -9,7 +9,7 @@ import Request from './lib/Request'; import { getLocale } from '../helpers/i18n-helpers'; import { API } from '../environment'; -import { DEFAULT_APP_SETTINGS, FILE_SYSTEM_SETTINGS_TYPES } from '../config'; +import { DEFAULT_APP_SETTINGS, FILE_SYSTEM_SETTINGS_TYPES, LOCAL_SERVER } from '../config'; import { SPELLCHECKER_LOCALES } from '../i18n/languages'; const debug = require('debug')('Ferdi:SettingsStore'); @@ -52,6 +52,18 @@ export default class SettingsStore extends Store { ), ); + reaction( + () => this.all.app.server, + (server) => { + if (server === LOCAL_SERVER) { + ipcRenderer.send('startLocalServer'); + } + }, + { + fireImmediately: true, + }, + ); + reaction( () => this.all.app.locked, () => { -- cgit v1.2.3-70-g09d2