aboutsummaryrefslogtreecommitdiffhomepage
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/helpers/custom-validators/plugins.ts4
-rw-r--r--server/lib/plugins/plugin-manager.ts14
2 files changed, 9 insertions, 9 deletions
diff --git a/server/helpers/custom-validators/plugins.ts b/server/helpers/custom-validators/plugins.ts
index f2d4efb32..60b29dc89 100644
--- a/server/helpers/custom-validators/plugins.ts
+++ b/server/helpers/custom-validators/plugins.ts
@@ -2,7 +2,7 @@ import { exists, isArray, isSafePath } from './misc'
2import validator from 'validator' 2import validator from 'validator'
3import { PluginType } from '../../../shared/models/plugins/plugin.type' 3import { PluginType } from '../../../shared/models/plugins/plugin.type'
4import { CONSTRAINTS_FIELDS } from '../../initializers/constants' 4import { CONSTRAINTS_FIELDS } from '../../initializers/constants'
5import { PluginPackageJson } from '../../../shared/models/plugins/plugin-package-json.model' 5import { PluginPackageJSON } from '../../../shared/models/plugins/plugin-package-json.model'
6import { isUrlValid } from './activitypub/misc' 6import { isUrlValid } from './activitypub/misc'
7 7
8const PLUGINS_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.PLUGINS 8const PLUGINS_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.PLUGINS
@@ -84,7 +84,7 @@ function isThemeNameValid (name: string) {
84 return isPluginNameValid(name) 84 return isPluginNameValid(name)
85} 85}
86 86
87function isPackageJSONValid (packageJSON: PluginPackageJson, pluginType: PluginType) { 87function isPackageJSONValid (packageJSON: PluginPackageJSON, pluginType: PluginType) {
88 let result = true 88 let result = true
89 const badFields: string[] = [] 89 const badFields: string[] = []
90 90
diff --git a/server/lib/plugins/plugin-manager.ts b/server/lib/plugins/plugin-manager.ts
index 6c2f4764e..ff00ab9e8 100644
--- a/server/lib/plugins/plugin-manager.ts
+++ b/server/lib/plugins/plugin-manager.ts
@@ -5,7 +5,7 @@ import { basename, join } from 'path'
5import { decachePlugin } from '@server/helpers/decache' 5import { decachePlugin } from '@server/helpers/decache'
6import { MOAuthTokenUser, MUser } from '@server/types/models' 6import { MOAuthTokenUser, MUser } from '@server/types/models'
7import { getCompleteLocale } from '@shared/core-utils' 7import { getCompleteLocale } from '@shared/core-utils'
8import { ClientScript, PluginPackageJson, PluginTranslation, PluginTranslationPaths, RegisterServerHookOptions } from '@shared/models' 8import { ClientScriptJSON, PluginPackageJSON, PluginTranslation, PluginTranslationPathsJSON, RegisterServerHookOptions } from '@shared/models'
9import { getHookType, internalRunHook } from '../../../shared/core-utils/plugins/hooks' 9import { getHookType, internalRunHook } from '../../../shared/core-utils/plugins/hooks'
10import { PluginType } from '../../../shared/models/plugins/plugin.type' 10import { PluginType } from '../../../shared/models/plugins/plugin.type'
11import { ServerHook, ServerHookName } from '../../../shared/models/plugins/server/server-hook.model' 11import { ServerHook, ServerHookName } from '../../../shared/models/plugins/server/server-hook.model'
@@ -31,7 +31,7 @@ export interface RegisteredPlugin {
31 path: string 31 path: string
32 32
33 staticDirs: { [name: string]: string } 33 staticDirs: { [name: string]: string }
34 clientScripts: { [name: string]: ClientScript } 34 clientScripts: { [name: string]: ClientScriptJSON }
35 35
36 css: string[] 36 css: string[]
37 37
@@ -392,7 +392,7 @@ export class PluginManager implements ServerHook {
392 registerHelpers = result.registerStore 392 registerHelpers = result.registerStore
393 } 393 }
394 394
395 const clientScripts: { [id: string]: ClientScript } = {} 395 const clientScripts: { [id: string]: ClientScriptJSON } = {}
396 for (const c of packageJSON.clientScripts) { 396 for (const c of packageJSON.clientScripts) {
397 clientScripts[c.script] = c 397 clientScripts[c.script] = c
398 } 398 }
@@ -415,7 +415,7 @@ export class PluginManager implements ServerHook {
415 await this.addTranslations(plugin, npmName, packageJSON.translations) 415 await this.addTranslations(plugin, npmName, packageJSON.translations)
416 } 416 }
417 417
418 private async registerPlugin (plugin: PluginModel, pluginPath: string, packageJSON: PluginPackageJson) { 418 private async registerPlugin (plugin: PluginModel, pluginPath: string, packageJSON: PluginPackageJSON) {
419 const npmName = PluginModel.buildNpmName(plugin.name, plugin.type) 419 const npmName = PluginModel.buildNpmName(plugin.name, plugin.type)
420 420
421 // Delete cache if needed 421 // Delete cache if needed
@@ -442,7 +442,7 @@ export class PluginManager implements ServerHook {
442 442
443 // ###################### Translations ###################### 443 // ###################### Translations ######################
444 444
445 private async addTranslations (plugin: PluginModel, npmName: string, translationPaths: PluginTranslationPaths) { 445 private async addTranslations (plugin: PluginModel, npmName: string, translationPaths: PluginTranslationPathsJSON) {
446 for (const locale of Object.keys(translationPaths)) { 446 for (const locale of Object.keys(translationPaths)) {
447 const path = translationPaths[locale] 447 const path = translationPaths[locale]
448 const json = await readJSON(join(this.getPluginPath(plugin.name, plugin.type), path)) 448 const json = await readJSON(join(this.getPluginPath(plugin.name, plugin.type), path))
@@ -513,7 +513,7 @@ export class PluginManager implements ServerHook {
513 private getPackageJSON (pluginName: string, pluginType: PluginType) { 513 private getPackageJSON (pluginName: string, pluginType: PluginType) {
514 const pluginPath = join(this.getPluginPath(pluginName, pluginType), 'package.json') 514 const pluginPath = join(this.getPluginPath(pluginName, pluginType), 'package.json')
515 515
516 return readJSON(pluginPath) as Promise<PluginPackageJson> 516 return readJSON(pluginPath) as Promise<PluginPackageJSON>
517 } 517 }
518 518
519 private getPluginPath (pluginName: string, pluginType: PluginType) { 519 private getPluginPath (pluginName: string, pluginType: PluginType) {
@@ -572,7 +572,7 @@ export class PluginManager implements ServerHook {
572 } 572 }
573 } 573 }
574 574
575 private sanitizeAndCheckPackageJSONOrThrow (packageJSON: PluginPackageJson, pluginType: PluginType) { 575 private sanitizeAndCheckPackageJSONOrThrow (packageJSON: PluginPackageJSON, pluginType: PluginType) {
576 if (!packageJSON.staticDirs) packageJSON.staticDirs = {} 576 if (!packageJSON.staticDirs) packageJSON.staticDirs = {}
577 if (!packageJSON.css) packageJSON.css = [] 577 if (!packageJSON.css) packageJSON.css = []
578 if (!packageJSON.clientScripts) packageJSON.clientScripts = [] 578 if (!packageJSON.clientScripts) packageJSON.clientScripts = []