Skip to main content

Abstract Class: AbstractSubscribableMap<K, V>

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:13

An abstract implementation of a subscribable set which allows adding, removing, and notifying subscribers.

Extended by​

Type Parameters​

Type Parameter
K
V

Implements​

Constructors​

Constructor​

new AbstractSubscribableMap<K, V>(): AbstractSubscribableMap<K, V>

Returns​

AbstractSubscribableMap<K, V>

Properties​

initialNotifyFunc()​

protected readonly initialNotifyFunc: (sub) => void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:28

A function which sends initial notifications to subscriptions.

Notifies a subscription of this map's current state.

Parameters​

ParameterTypeDescription
subHandlerSubscription<SubscribableMapHandler<K, V>>The subscription to notify.

Returns​

void


isSubscribable​

readonly isSubscribable: true = true

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:14

Flags this object as a Subscribable.

Implementation of​

Subscribable.isSubscribable


isSubscribableMap​

readonly isSubscribableMap: true = true

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:15

Flags this object as a SubscribableMap.

Implementation of​

SubscribableMap.isSubscribableMap


notifyDepth​

protected notifyDepth: number = 0

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:25


onSubDestroyedFunc()​

protected readonly onSubDestroyedFunc: (sub) => void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:31

A function which responds to when a subscription to this subscribable is destroyed.

Responds to when a subscription to this map is destroyed.

Parameters​

ParameterTypeDescription
subHandlerSubscription<SubscribableMapHandler<K, V>>The destroyed subscription.

Returns​

void


singletonSub?​

protected optional singletonSub: HandlerSubscription<SubscribableMapHandler<K, V>>

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:22


subs?​

protected optional subs: HandlerSubscription<SubscribableMapHandler<K, V>>[]

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:24

Accessors​

size​

Get Signature​

get size(): number

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:18

The number of elements contained in this map.

Returns​

number

The number of elements contained in this map.

Implementation of​

SubscribableMap.size

Methods​

addSubscription()​

protected addSubscription(sub): void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:37

Adds a subscription to this map.

Parameters​

ParameterTypeDescription
subHandlerSubscription<SubscribableMapHandler<K, V>>The subscription to add.

Returns​

void


get()​

abstract get(): ReadonlyMap<K, V>

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:49

Gets a read-only version of this map.

Returns​

ReadonlyMap<K, V>

A read-only version of this map.

Implementation of​

Subscribable.get


getValue()​

getValue(key): V | undefined

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:57

Gets the value stored under a given key in this map.

Parameters​

ParameterTypeDescription
keyKThe key under which the value to get is stored.

Returns​

V | undefined

The value stored under the specified key in this map, or undefined if this map does not contain the specified key.

Implementation of​

SubscribableMap.getValue


has()​

has(key): boolean

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:52

Checks whether this map contains a key.

Parameters​

ParameterTypeDescription
keyKThe key to check.

Returns​

boolean

Whether this map contains the specified key.

Implementation of​

SubscribableMap.has


initialNotify()​

protected initialNotify(sub): void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:160

Notifies a subscription of this map's current state.

Parameters​

ParameterTypeDescription
subHandlerSubscription<SubscribableMapHandler<K, V>>The subscription to notify.

Returns​

void


map()​

Call Signature​

map<M>(fn, equalityFunc?): MappedSubject<[ReadonlyMap<K, V>], M>

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:193

Maps this subscribable to a new subscribable.

Type Parameters​
Type Parameter
M
Parameters​
ParameterTypeDescription
fn(input, previousVal?) => MThe function to use to map to the new subscribable.
equalityFunc?(a, b) => booleanThe function to use to check for equality between mapped values. Defaults to the strict equality comparison (===).
Returns​

MappedSubject<[ReadonlyMap<K, V>], M>

The mapped subscribable.

Implementation of​

Subscribable.map

Call Signature​

map<M>(fn, equalityFunc, mutateFunc, initialVal): MappedSubject<[ReadonlyMap<K, V>], M>

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:202

Maps this subscribable to a new subscribable with a persistent, cached value which is mutated when it changes.

Type Parameters​
Type Parameter
M
Parameters​
ParameterTypeDescription
fn(input, previousVal?) => MThe function to use to map to the new subscribable.
equalityFunc(a, b) => booleanThe function to use to check for equality between mapped values.
mutateFunc(oldVal, newVal) => voidThe function to use to change the value of the mapped subscribable.
initialValMThe initial value of the mapped subscribable.
Returns​

MappedSubject<[ReadonlyMap<K, V>], M>

The mapped subscribable.

Implementation of​

Subscribable.map


notify()​

protected notify(type, key, value): void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:82

Notifies subscriptions of a change in this map.

Parameters​

ParameterTypeDescription
typeSubscribableMapEventTypeThe type of change.
keyKThe key related to the change.
valueVThe value related to the change.

Returns​

void


onSubDestroyed()​

protected onSubDestroyed(sub): void

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:171

Responds to when a subscription to this map is destroyed.

Parameters​

ParameterTypeDescription
subHandlerSubscription<SubscribableMapHandler<K, V>>The destroyed subscription.

Returns​

void


pipe()​

Call Signature​

pipe(to, paused?): Subscription

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:230

Subscribes to and pipes this subscribable's state to a mutable subscribable. Whenever an update of this subscribable's state is received through the subscription, it will be used as an input to change the other subscribable's state.

Parameters​
ParameterTypeDescription
toMutableSubscribable<any, ReadonlyMap<K, V>>The mutable subscribable to which to pipe this subscribable's state.
paused?booleanWhether the new subscription should be initialized as paused. Defaults to false.
Returns​

Subscription

The new subscription.

Implementation of​

Subscribable.pipe

Call Signature​

pipe<OI, OV>(to, map, paused?): Subscription

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:242

Subscribes to and pipes mapped inputs from another subscribable. Whenever an update of the other subscribable's state is received through the subscription, it will be transformed by the specified mapping function, and the transformed state will be used as an input to change this subscribable's state.

Type Parameters​
Type ParameterDefault typeDescription
OI-The input type of the mutable subscribable to which to pipe.
OVunknownThe value type of the mutable subscribable to which to pipe.
Parameters​
ParameterTypeDescription
toMutableSubscribable<any, OI>The mutable subscribable to which to pipe this subscribable's mapped state.
map(fromVal, toVal) => OIThe function to use to transform inputs.
paused?booleanWhether the new subscription should be initialized as paused. Defaults to false.
Returns​

Subscription

The new subscription.

Implementation of​

Subscribable.pipe

Call Signature​

pipe(to, paused?): Subscription

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:251

Subscribes to and pipes this map's state to a mutable subscribable map. Whenever a key-value pair added, changed, or removed event is received through the subscription, the same key-value pair will be added to, changed, or removed from the other map.

Parameters​
ParameterTypeDescription
toMutableSubscribableMap<K, V>The mutable subscribable map to which to pipe this map's state.
paused?booleanWhether the new subscription should be initialized as paused. Defaults to false.
Returns​

Subscription

The new subscription.

Implementation of​

SubscribableMap.pipe


sub()​

sub(handler, initialNotify, paused): Subscription

Defined in: src/sdk/sub/AbstractSubscribableMap.ts:62

Subscribes to changes in this map's state.

Parameters​

ParameterTypeDefault valueDescription
handlerSubscribableMapHandler<K, V>undefinedA function which is called when this map's state changes.
initialNotifybooleanfalseWhether to immediately invoke the callback function with this map's current state. Defaults to false. This argument is ignored if the subscription is initialized as paused.
pausedbooleanfalseWhether the new subscription should be initialized as paused. Defaults to false.

Returns​

Subscription

The new subscription.

Implementation of​

Subscribable.sub