Skip to content

Welshman Docs / @welshman/app / CollectionPlugin

Abstract Class: CollectionPlugin<T> ​

Defined in: plugins/base.ts:166

A keyed collection derived from events, whose index stays subscribed for the life of the app.

Extended by ​

Type Parameters ​

T ​

T

Constructors ​

Constructor ​

new CollectionPlugin<T>(app, index, loadOptions?): CollectionPlugin<T>

Defined in: plugins/base.ts:174

Parameters ​

app ​

IApp

index ​

ItemCollection<T>

loadOptions? ​

MakeLoadItemOptions

Returns ​

CollectionPlugin<T>

Properties ​

all ​

all: Projection<T[]>

Defined in: plugins/base.ts:167


app ​

protected readonly app: IApp

Defined in: plugins/base.ts:175


forceLoad ​

forceLoad: (key, ...args) => Promise<Maybe<T>>

Defined in: plugins/base.ts:170

Parameters ​

key ​

string

args ​

...any[]

Returns ​

Promise<Maybe<T>>


index ​

readonly index: ItemCollection<T>

Defined in: plugins/base.ts:176


load ​

load: (key, ...args) => Promise<Maybe<T>>

Defined in: plugins/base.ts:169

Parameters ​

key ​

string

args ​

...any[]

Returns ​

Promise<Maybe<T>>


one ​

one: (key?, ...args) => Readable<Maybe<T>>

Defined in: plugins/base.ts:168

Parameters ​

key? ​

string

args ​

...any[]

Returns ​

Readable<Maybe<T>>

Methods ​

fetch() ​

abstract fetch(key, ...args): Promise<unknown>

Defined in: plugins/base.ts:172

Parameters ​

key ​

string

args ​

...any[]

Returns ​

Promise<unknown>


get() ​

get(key): T | undefined

Defined in: plugins/base.ts:190

Parameters ​

key ​

string

Returns ​

T | undefined


project() ​

project<U>(key, read): Projection<U>

Defined in: plugins/base.ts:192

Type Parameters ​

U ​

U

Parameters ​

key ​

string

read ​

(item) => U

Returns ​

Projection<U>