aboutsummaryrefslogtreecommitdiffhomepage
path: root/shared
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2019-07-08 15:54:08 +0200
committerChocobozzz <chocobozzz@cpy.re>2019-07-24 10:58:16 +0200
commit18a6f04c071f7a0735eb39b8c67fd51a082d1a31 (patch)
treeb9fb0637878390d32b5c73d02b8eee2ef48cbfa5 /shared
parent2c0539420d77339e6afe8d7920b44af4c0dcb1e6 (diff)
downloadPeerTube-18a6f04c071f7a0735eb39b8c67fd51a082d1a31.tar.gz
PeerTube-18a6f04c071f7a0735eb39b8c67fd51a082d1a31.tar.zst
PeerTube-18a6f04c071f7a0735eb39b8c67fd51a082d1a31.zip
WIP plugins: hook on client side
Diffstat (limited to 'shared')
-rw-r--r--shared/models/plugins/plugin-scope.type.ts1
-rw-r--r--shared/models/plugins/register.model.ts2
-rw-r--r--shared/models/server/server-config.model.ts10
3 files changed, 12 insertions, 1 deletions
diff --git a/shared/models/plugins/plugin-scope.type.ts b/shared/models/plugins/plugin-scope.type.ts
new file mode 100644
index 000000000..b63ae43ec
--- /dev/null
+++ b/shared/models/plugins/plugin-scope.type.ts
@@ -0,0 +1 @@
export type PluginScope = 'common' | 'video-watch'
diff --git a/shared/models/plugins/register.model.ts b/shared/models/plugins/register.model.ts
index 3817007ae..0ed2157bd 100644
--- a/shared/models/plugins/register.model.ts
+++ b/shared/models/plugins/register.model.ts
@@ -1,4 +1,4 @@
1export type RegisterHookOptions = { 1export interface RegisterHookOptions {
2 target: string 2 target: string
3 handler: Function 3 handler: Function
4 priority?: number 4 priority?: number
diff --git a/shared/models/server/server-config.model.ts b/shared/models/server/server-config.model.ts
index d937e9c05..c259a849a 100644
--- a/shared/models/server/server-config.model.ts
+++ b/shared/models/server/server-config.model.ts
@@ -1,4 +1,12 @@
1import { NSFWPolicyType } from '../videos/nsfw-policy.type' 1import { NSFWPolicyType } from '../videos/nsfw-policy.type'
2import { ClientScript } from '../plugins/plugin-package-json.model'
3
4export type ServerConfigPlugin = {
5 name: string
6 version: string
7 description: string
8 clientScripts: { [name: string]: ClientScript }
9}
2 10
3export interface ServerConfig { 11export interface ServerConfig {
4 serverVersion: string 12 serverVersion: string
@@ -16,6 +24,8 @@ export interface ServerConfig {
16 } 24 }
17 } 25 }
18 26
27 plugins: ServerConfigPlugin[]
28
19 email: { 29 email: {
20 enabled: boolean 30 enabled: boolean
21 } 31 }