1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-11-23 22:36:32 +02:00

Desktop: Fixes #7920: List enabled plugins only in About Joplin and in alphabetical order (#7923)

This commit is contained in:
Julien
2023-03-17 16:41:33 +08:00
committed by GitHub
parent 37995b9ec7
commit 3a744c79ae
3 changed files with 29 additions and 4 deletions

View File

@@ -2,6 +2,7 @@ import { _ } from './locale';
import Setting from './models/Setting';
import { reg } from './registry';
import { Plugins } from './services/plugins/PluginService';
import PluginService from './services/plugins/PluginService';
interface PluginList {
completeList: string;
@@ -10,12 +11,17 @@ interface PluginList {
function getPluginLists(plugins: Plugins): PluginList {
const pluginList = [];
if (Object.keys(plugins).length > 0) {
for (const pluginId in plugins) {
pluginList.push(`${plugins[pluginId].manifest.name}: ${plugins[pluginId].manifest.version}`);
const pluginSettings = PluginService.instance().unserializePluginSettings(Setting.value('plugins.states'));
const enabledPlugins = Object.fromEntries(Object.entries(plugins).filter((p) => pluginSettings[p[0]] && pluginSettings[p[0]].enabled === true));
if (Object.keys(enabledPlugins).length > 0) {
for (const pluginId in enabledPlugins) {
pluginList.push(`${enabledPlugins[pluginId].manifest.name}: ${enabledPlugins[pluginId].manifest.version}`);
}
}
pluginList.sort();
let completeList = '';
let summary = '';
if (pluginList.length > 0) {