wip: trying to fix electron-store issue

Co-authored-by: JellyBrick <shlee1503@naver.com>
This commit is contained in:
Su-Yong
2023-11-11 21:48:51 +09:00
parent 6ab3cf9ac9
commit bb2e865880
8 changed files with 49 additions and 44 deletions

View File

@ -1,8 +1,7 @@
import is from 'electron-is';
import { app, BrowserWindow, clipboard, dialog, Menu } from 'electron';
import prompt from 'custom-electron-prompt';
import { deepmerge as createDeepmerge } from '@fastify/deepmerge';
import { deepmerge } from 'deepmerge-ts';
import { restart } from './providers/app-controls';
import config from './config';
@ -24,8 +23,6 @@ const inAppMenuActive = config.plugins.isEnabled('in-app-menu');
const betaPlugins = ['crossfade', 'lumiastream'];
const deepmerge = createDeepmerge();
const pluginEnabledMenu = (plugin: string, label = '', hasSubmenu = false, refreshMenu: (() => void ) | undefined = undefined): Electron.MenuItemConstructorOptions => ({
label: label || plugin,
type: 'checkbox',
@ -56,7 +53,7 @@ export const mainMenuTemplate = async (win: BrowserWindow): Promise<MenuTemplate
Key extends keyof PluginBuilderList,
Config extends PluginBaseConfig = PluginBuilderList[Key]['config'],
>(name: Key): MenuPluginContext<Config> => ({
getConfig: () => deepmerge(pluginBuilders[name].config, config.get(`plugins.${name}`) ?? {}) as Config,
getConfig: () => deepmerge(pluginBuilders[name].config, config.get(`plugins.${name}`) ?? {}) as unknown as Config,
setConfig: (newConfig) => {
config.setPartial(`plugins.${name}`, newConfig);
},