UNPKG

@aptpod/data-viz-visual-parts-sdk

Version:

Visual Parts SDK for VM2M Data Visualizer

41 lines 1.22 kB
import { createPluginsKey } from '../namespace'; import { getValue } from '../window'; import { validate } from '../plugin'; import { ScriptLoader } from './script-loader'; /** @internal */ export class Dispatcher { constructor() { this.dispose = () => { this.scriptLoader.dispose(); this.plugins.length = 0; }; this.load = async ({ scriptURL, }) => { const loadedRes = await this.scriptLoader.load(scriptURL); if (!loadedRes) { return { succeed: false, error: new Error('load error'), }; } const pluginsKey = createPluginsKey(); const plugins = parsePlugins(getValue(pluginsKey)); this.plugins = plugins; return { succeed: true, data: undefined, }; }; this.getPlugins = () => { return this.plugins; }; this.scriptLoader = new ScriptLoader(); this.plugins = []; } } const parsePlugins = (plugins) => { if (validate(plugins)) { return plugins; } return []; }; //# sourceMappingURL=index.js.map