Skip to content

craft-hub / HostExtensionManager

Class: HostExtensionManager ​

Defined in: packages/craft-hub/src/host-extensions.ts:33

Manage trusted host extensions independently of declarative Marketplace plugins. Only a trusted host installation flow may register modules. Registration never imports code; startup imports only the saved module list, never a changed manifest.

Constructors ​

Constructor ​

new HostExtensionManager(dataDir): HostExtensionManager

Defined in: packages/craft-hub/src/host-extensions.ts:39

Parameters ​

dataDir ​

string

Returns ​

HostExtensionManager

Properties ​

path ​

readonly path: string

Defined in: packages/craft-hub/src/host-extensions.ts:34

Methods ​

install() ​

install(extension): Promise<void>

Defined in: packages/craft-hub/src/host-extensions.ts:64

Persist an installation after the host has obtained explicit trust for its exact modules.

Parameters ​

extension ​
enabled ​

boolean = ...

id ​

string = ...

manifestPath ​

string = ...

modules ​

string[] = ...

name ​

string = ...

Returns ​

Promise<void>


load() ​

load(builtinPlugins?, preloadedModules?): Promise<LoadCraftHubPluginsResult>

Defined in: packages/craft-hub/src/host-extensions.ts:86

Load saved extensions on startup, isolating failures and preserving host-owned providers.

Parameters ​

builtinPlugins? ​

CraftHubPlugin[] = []

preloadedModules? ​

string[] = []

Returns ​

Promise<LoadCraftHubPluginsResult>


prepare() ​

prepare(input): object

Defined in: packages/craft-hub/src/host-extensions.ts:54

Prepare a reviewable installation from a host-supplied module list, without importing it.

Parameters ​

input ​
id ​

string

manifestPath ​

string

modules ​

string[]

name ​

string

Returns ​

object

enabled ​

enabled: boolean

id ​

id: string

manifestPath ​

manifestPath: string

modules ​

modules: string[]

name ​

name: string


remove() ​

remove(id): Promise<void>

Defined in: packages/craft-hub/src/host-extensions.ts:81

Remove registration only; local source files and Marketplace plugins are retained.

Parameters ​

id ​

string

Returns ​

Promise<void>


setEnabled() ​

setEnabled(id, enabled): Promise<void>

Defined in: packages/craft-hub/src/host-extensions.ts:70

Save whether an installed extension should load on the next startup.

Parameters ​

id ​

string

enabled ​

boolean

Returns ​

Promise<void>


status() ​

status(): Promise<HostExtensionStatus>

Defined in: packages/craft-hub/src/host-extensions.ts:44

Inspect saved extensions without executing their code.

Returns ​

Promise<HostExtensionStatus>

Released under the MIT License.