]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/types/register-client-option.model.ts
Merge branch 'release/3.3.0' into develop
[github/Chocobozzz/PeerTube.git] / client / src / types / register-client-option.model.ts
index 243d74dea7257a85d6a41211ba2d5277c7cc0bb1..59bcbc5ffc79fd9384683631314d5a5d05c50ff3 100644 (file)
@@ -1,15 +1,52 @@
-import { RegisterClientHookOptions } from '@shared/models/plugins/register-client-hook.model'
+import {
+  RegisterClientFormFieldOptions,
+  RegisterClientHookOptions,
+  RegisterClientSettingsScript,
+  RegisterClientVideoFieldOptions,
+  ServerConfig
+} from '@shared/models'
 
 export type RegisterClientOptions = {
   registerHook: (options: RegisterClientHookOptions) => void
 
+  registerVideoField: (commonOptions: RegisterClientFormFieldOptions, videoFormOptions: RegisterClientVideoFieldOptions) => void
+
+  registerSettingsScript: (options: RegisterClientSettingsScript) => void
+
   peertubeHelpers: RegisterClientHelpers
 }
 
 export type RegisterClientHelpers = {
   getBaseStaticRoute: () => string
 
+  getBaseRouterRoute: () => string
+
+  isLoggedIn: () => boolean
+
+  getAuthHeader: () => { 'Authorization': string } | undefined
+
   getSettings: () => Promise<{ [ name: string ]: string }>
 
+  getServerConfig: () => Promise<ServerConfig>
+
+  notifier: {
+    info: (text: string, title?: string, timeout?: number) => void,
+    error: (text: string, title?: string, timeout?: number) => void,
+    success: (text: string, title?: string, timeout?: number) => void
+  }
+
+  showModal: (input: {
+    title: string,
+    content: string,
+    close?: boolean,
+    cancel?: { value: string, action?: () => void },
+    confirm?: { value: string, action?: () => void }
+  }) => void
+
+  markdownRenderer: {
+    textMarkdownToHTML: (textMarkdown: string) => Promise<string>
+    enhancedMarkdownToHTML: (enhancedMarkdown: string) => Promise<string>
+  }
+
   translate: (toTranslate: string) => Promise<string>
 }