Skip to main content
Module

x/flowscripter_dynamic_plugin_framework/mod.ts>DefaultPluginManager

Dynamic plugin framework for Deno based on Javascript Modules and import() function.
class DefaultPluginManager
implements PluginManager
import { DefaultPluginManager } from "https://deno.land/x/flowscripter_dynamic_plugin_framework@v1.1.3/mod.ts";

Default implementation of a PluginManager.

Constructors

new
DefaultPluginManager(
pluginRepositories: Array<PluginRepository>,
extensionPointRegistry?: ExtensionPointRegistry,
extensionRegistry?: ExtensionRegistry,
)

Constructor configures the instance using the optionally specified ExtensionPointRegistry and ExtensionRegistry.

Properties

private
readonly
extensionPointRegistry: ExtensionPointRegistry
private
readonly
extensionRegistry: ExtensionRegistry
private
readonly
pluginRepositories: Array<PluginRepository>
private
readonly
pluginRepositoriesByExtensionHandle: Map<string, PluginRepository>

Methods

getRegisteredExtensions(extensionPoint: string): Promise<ReadonlyArray<ExtensionInfo>>
instantiate(extensionHandle: string, hostData?: Map<string, string>): Promise<unknown>
registerExtensions(extensionPoint: string): Promise<void>