mirror of
https://github.com/th-ch/youtube-music.git
synced 2026-01-11 18:41:47 +00:00
fix: plugin load
This commit is contained in:
@ -1,27 +1,16 @@
|
||||
import { deepmerge } from '@fastify/deepmerge';
|
||||
|
||||
import store from './store';
|
||||
import defaultConfig from './defaults';
|
||||
|
||||
import { restart } from '../providers/app-controls';
|
||||
import { Entries } from '../utils/type-utils';
|
||||
|
||||
interface Plugin {
|
||||
enabled: boolean;
|
||||
}
|
||||
import type { PluginBaseConfig } from '../plugins/utils/builder';
|
||||
|
||||
type DefaultPluginsConfig = typeof defaultConfig.plugins;
|
||||
const deepmergeFn = deepmerge();
|
||||
|
||||
export function getEnabled() {
|
||||
const plugins = deepmergeFn(defaultConfig.plugins, (store.get('plugins') as DefaultPluginsConfig));
|
||||
return (Object.entries(plugins) as Entries<DefaultPluginsConfig>).filter(([, options]) =>
|
||||
(options as Plugin).enabled,
|
||||
);
|
||||
export function getPlugins() {
|
||||
return store.get('plugins') as Record<string, PluginBaseConfig>;
|
||||
}
|
||||
|
||||
export function isEnabled(plugin: string) {
|
||||
const pluginConfig = (store.get('plugins') as Record<string, Plugin>)[plugin];
|
||||
const pluginConfig = (store.get('plugins') as Record<string, PluginBaseConfig>)[plugin];
|
||||
return pluginConfig !== undefined && pluginConfig.enabled;
|
||||
}
|
||||
|
||||
@ -69,7 +58,7 @@ export function disable(plugin: string) {
|
||||
|
||||
export default {
|
||||
isEnabled,
|
||||
getEnabled,
|
||||
getPlugins,
|
||||
enable,
|
||||
disable,
|
||||
setOptions,
|
||||
|
||||
Reference in New Issue
Block a user