Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

@sms/plugin-sdk

Interfaces

Cap

Defined in: packages/core/plugin-sdk/src/runtime.ts:6

The plugin-side runtime: builds the cap object handed to plugin code and answers the host’s calls (‘activate’, ‘fn’). Transport-agnostic — the executor supplies hostCall.

Methods

contribute()
contribute(point, item): Promise<void>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:10

Contribute an item to an extension point. Functions in the item become callable from the host.

Parameters
ParameterType
pointstring
itemunknown
Returns

Promise<void>

get()
get<T>(key): Promise<T>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:12

Read a JSON snapshot of an injected key.

Type Parameters
Type ParameterDefault type
Tunknown
Parameters
ParameterType
keystring
Returns

Promise<T>

invoke()
invoke<T>(
   key, 
   method, 
   ...args
): Promise<T>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:14

Call a method on an injected service.

Type Parameters
Type ParameterDefault type
Tunknown
Parameters
ParameterType
keystring
methodstring
argsunknown[]
Returns

Promise<T>

log()
log(...args): void;

Defined in: packages/core/plugin-sdk/src/runtime.ts:15

Parameters
ParameterType
argsunknown[]
Returns

void

provide()
provide(key, value): Promise<void>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:8

Provide a service. Methods on the value become callable from the host.

Parameters
ParameterType
keystring
valueunknown
Returns

Promise<void>


Channel

Defined in: packages/core/plugin-sdk/src/channel.ts:10

Methods

call()
call(
   method, 
   args, 
   timeoutMs?
): Promise<unknown>;

Defined in: packages/core/plugin-sdk/src/channel.ts:11

Parameters
ParameterType
methodstring
argsunknown
timeoutMs?number
Returns

Promise<unknown>

close()
close(reason?): void;

Defined in: packages/core/plugin-sdk/src/channel.ts:13

Parameters
ParameterType
reason?string
Returns

void

receive()
receive(msg): void;

Defined in: packages/core/plugin-sdk/src/channel.ts:12

Parameters
ParameterType
msgRpcMessage
Returns

void


PluginModule

Defined in: packages/core/plugin-sdk/src/runtime.ts:20

Properties

activate?
optional activate?: Activate;

Defined in: packages/core/plugin-sdk/src/runtime.ts:22

default?
optional default?: 
  | Activate
  | {
  activate?: Activate;
};

Defined in: packages/core/plugin-sdk/src/runtime.ts:21


PluginRuntime

Defined in: packages/core/plugin-sdk/src/runtime.ts:25

Properties

cap
cap: Cap;

Defined in: packages/core/plugin-sdk/src/runtime.ts:26

Methods

handle()
handle(method, args): Promise<unknown>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:28

Handle a call coming from the host.

Parameters
ParameterType
methodstring
argsunknown
Returns

Promise<unknown>


RpcMessage

Defined in: packages/core/plugin-sdk/src/channel.ts:2

Tiny request/response multiplexer used on both sides of an Executor boundary.

Properties

args?
optional args?: unknown;

Defined in: packages/core/plugin-sdk/src/channel.ts:5

error?
optional error?: string;

Defined in: packages/core/plugin-sdk/src/channel.ts:7

id
id: number;

Defined in: packages/core/plugin-sdk/src/channel.ts:3

method?
optional method?: string;

Defined in: packages/core/plugin-sdk/src/channel.ts:4

result?
optional result?: unknown;

Defined in: packages/core/plugin-sdk/src/channel.ts:6

Type Aliases

Activate

type Activate = (cap) => void | Promise<void>;

Defined in: packages/core/plugin-sdk/src/runtime.ts:18

Parameters

ParameterType
capCap

Returns

void | Promise<void>

Functions

createChannel()

function createChannel(post, handle): Channel;

Defined in: packages/core/plugin-sdk/src/channel.ts:16

Parameters

ParameterType
post(msg) => void
handle(method, args) => Promise<unknown>

Returns

Channel


createPluginRuntime()

function createPluginRuntime(hostCall, loadModule): PluginRuntime;

Defined in: packages/core/plugin-sdk/src/runtime.ts:31

Parameters

ParameterType
hostCall(method, args) => Promise<unknown>
loadModule() => Promise<PluginModule>

Returns

PluginRuntime


resolveActivate()

function resolveActivate(mod): Activate | undefined;

Defined in: packages/core/plugin-sdk/src/runtime.ts:89

Parameters

ParameterType
modPluginModule

Returns

Activate | undefined