@flowscripter/dynamic-plugin-framework
    Preparing search index...

    Class NpmPluginManager

    BaseMarketplacePluginManager for the npm ecosystem.

    Combines one or more NpmjsPluginRepository remotes with a local NpmPluginRepository (backed by node_modules). Plugins are installed and removed by shelling out to bun/npm, or via an injected SpawnInterface if setSpawn has been called.

    Hierarchy (View Summary)

    Implements

    Index
    fetchInterface: FetchInterface | undefined

    repository used to load installed plugins.

    marketplace repositories used for search and as install sources.

    • Check whether a plugin (and, optionally, a specific version of it) is available from any of the configured remote marketplace repositories, via a direct targeted lookup - not the fuzzy/ranked search.

      Each remote is checked in order via its MarketplacePluginRepository.getPlugin, which performs a targeted lookup rather than scanning all plugins. Returns true as soon as any remote has a match.

      Note: a MarketplacePluginRepository exposes a single "current" VersionedPluginDescriptor per plugin ID (typically the latest published version), not a full version history. When version is given, this checks whether that current version matches - it does not confirm whether an older version was ever published.

      Parameters

      • pluginId: string

        the plugin ID to check for (as returned by VersionedPluginDescriptor.pluginId).

      • Optionalversion: string

        optional exact version to additionally check for.

      Returns Promise<boolean>

      true if the plugin (and version, if given) is found in at least one configured remote, false otherwise.

    • Instantiate a specific Extension.

      Parameters

      • extensionHandle: string

        the opaque handle for the Extension provided by this Extension Manager instance via ExtensionInfo.extensionHandle.

      • OptionalhostData: Map<string, string>

        optional data to be passed in to the Extension when instantiating it.

      Returns Promise<unknown>

      an Extension instance implementing an Extension Point.