*Rename PluginAPI to PluginApiManager

*Rename RelayPluginAPI to PluginAPI
This commit is contained in:
Derrick Hammer 2022-08-26 22:14:02 -04:00
parent ba20b1f36e
commit c2dfe1f162
Signed by: pcfreak30
GPG Key ID: C997C339BE476FF2
2 changed files with 11 additions and 11 deletions

View File

@ -1,15 +1,15 @@
import { globby } from "globby"; import { globby } from "globby";
import config from "./config.js"; import config from "./config.js";
import { getRpcServer } from "./rpc/server.js"; import { getRpcServer } from "./rpc/server.js";
import { RelayPluginAPI, RPCMethod, Plugin } from "./types.js"; import { PluginAPI, RPCMethod, Plugin } from "./types.js";
import slugify from "slugify"; import slugify from "slugify";
let pluginApi: PluginAPI; let pluginApi: PluginApiManager;
const sanitizeName = (name: string) => const sanitizeName = (name: string) =>
slugify(name, { lower: true, strict: true }); slugify(name, { lower: true, strict: true });
export class PluginAPI { export class PluginApiManager {
private registeredPlugins: Map<string, Plugin> = new Map<string, Plugin>(); private registeredPlugins: Map<string, Plugin> = new Map<string, Plugin>();
public async loadPlugin(moduleName: string): Promise<Plugin> { public async loadPlugin(moduleName: string): Promise<Plugin> {
@ -47,7 +47,7 @@ export class PluginAPI {
return plugin; return plugin;
} }
private getPluginAPI(pluginName: string): RelayPluginAPI { private getPluginAPI(pluginName: string): PluginAPI {
return { return {
config, config,
registerMethod: (methodName: string, method: RPCMethod): void => { registerMethod: (methodName: string, method: RPCMethod): void => {
@ -58,12 +58,12 @@ export class PluginAPI {
} }
} }
export function getPluginAPI(): PluginAPI { export function getPluginAPI(): PluginApiManager {
if (!pluginApi) { if (!pluginApi) {
pluginApi = new PluginAPI(); pluginApi = new PluginApiManager();
} }
return pluginApi as PluginAPI; return pluginApi as PluginApiManager;
} }
export async function loadPlugins() { export async function loadPlugins() {

View File

@ -1,5 +1,5 @@
import { JSONSchemaType } from "ajv"; import { JSONSchemaType } from "ajv";
import { PluginAPI } from "./plugin.js"; import { PluginApiManager } from "./plugin.js";
export interface RPCRequest { export interface RPCRequest {
bypassCache?: boolean; bypassCache?: boolean;
@ -55,13 +55,13 @@ export interface StreamFileResponse {
done: boolean; done: boolean;
} }
export interface RelayPluginAPI { export interface PluginAPI {
config: any; config: any;
registerMethod: (methodName: string, method: RPCMethod) => void; registerMethod: (methodName: string, method: RPCMethod) => void;
loadPlugin: PluginAPI["loadPlugin"]; loadPlugin: PluginApiManager["loadPlugin"];
} }
export type PluginFunction = (api: RelayPluginAPI) => Promise<void>; export type PluginFunction = (api: PluginAPI) => Promise<void>;
export interface Plugin { export interface Plugin {
name: string; name: string;