plugin-resolver~ PluginResolver

Plugin resolution and registry management. Caches resolved plugins and maintains a registry of discovered plugins.

Constructor

new PluginResolver(cwdopt)

Parameters:
NameTypeAttributesDefaultDescription
cwdstring<optional>
process.cwd()

Working directory for resolution

Members

cache :Map.<string, Plugin>

Type:
  • Map.<string, Plugin>

registry :PluginRegistry|null

Type:
  • PluginRegistry | null

Methods

discoverAll() → {PluginRegistry}

Discovers all available plugins from all sources.

Returns:
Type: 
PluginRegistry

filterByDetection(context) → {Array.<Plugin>}

Filters plugins by detection context (framework, libraries detected).

Parameters:
NameTypeDescription
contextDetectionContext
Returns:
Type: 
Array.<Plugin>

getByName(name) → {Plugin|undefined}

Parameters:
NameTypeDescription
namestring
Returns:
Type: 
Plugin | undefined

getByType(type) → {Array.<Plugin>}

Parameters:
NameTypeDescription
type'parser' | 'adapter' | 'provider'
Returns:
Type: 
Array.<Plugin>

loadFromConfig(configopt) → {Object}

Loads plugins from configuration with defaults.

Parameters:
NameTypeAttributesDefaultDescription
configObject<optional>
{}
Properties
NameTypeAttributesDescription
parsersArray.<string><optional>

Parser plugin names

adapterstring<optional>

Adapter plugin name

providerstring<optional>

Provider plugin name

Returns:
Type: 
Object

resolve(identifier) → {Plugin|null}

Resolves a plugin by identifier (name, path, or npm package).

Parameters:
NameTypeDescription
identifierstring

Plugin identifier

Returns:
Type: 
Plugin | null