mirror of
https://github.com/ether/etherpad-lite.git
synced 2026-05-05 20:26:49 +02:00
* Enforce 2-space indentation across codebase Convert all 4-space indented source files to 2-space to match .editorconfig and project contributor guidelines. 74 files converted: admin UI components, type definitions, security modules, test files, helpers, and utilities. No functional changes — 2882 insertions, 2882 deletions (pure whitespace). Fixes #7353 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Limit admin tests to chromium and firefox Webkit is already tested in the dedicated frontend-tests workflow. Running it again in admin tests causes flaky failures due to slow socket connections and external API timeouts on webkit CI runners. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
18 lines
733 B
TypeScript
18 lines
733 B
TypeScript
import {PackageData} from "ep_etherpad-lite/node/types/PackageInfo";
|
|
import {writeFileSync} from "fs";
|
|
import {installedPluginsPath} from "ep_etherpad-lite/static/js/pluginfw/installer";
|
|
const pluginsModule = require('ep_etherpad-lite/static/js/pluginfw/plugins');
|
|
|
|
export const persistInstalledPlugins = async () => {
|
|
const plugins:PackageData[] = []
|
|
const installedPlugins = {plugins: plugins};
|
|
for (const pkg of Object.values(await pluginsModule.getPackages()) as PackageData[]) {
|
|
installedPlugins.plugins.push({
|
|
name: pkg.name,
|
|
version: pkg.version,
|
|
});
|
|
}
|
|
installedPlugins.plugins = [...new Set(installedPlugins.plugins)];
|
|
writeFileSync(installedPluginsPath, JSON.stringify(installedPlugins));
|
|
};
|