Interface: MappedSubscribable<T>
A subscribable which is mapped from another subscribable.
Type parameters
Name |
---|
T |
Hierarchy
Subscribable
<T
>↳
MappedSubscribable
Implemented by
Properties
canInitialNotify
• Readonly
canInitialNotify: boolean
Whether this subscription supports initial notifications on resume.
Inherited from
Defined in
src/sdk/sub/Subscription.ts:25
isAlive
• Readonly
isAlive: boolean
Whether the subscription to the parent subscribable is alive. While alive, this subscribable will update its state based on its parent's state, unless it is paused. Once dead, this subscribable will no longer update its state, and cannot be resumed again.
Overrides
Defined in
src/sdk/sub/Subscribable.ts:82
isPaused
• Readonly
isPaused: boolean
Whether the subscription to the parent subscribable is paused. While paused, this subscribable will not update its state until it is resumed.
Overrides
Defined in
src/sdk/sub/Subscribable.ts:88
isSubscribable
• Readonly
isSubscribable: true
Flags this object as a Subscribable.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:9
Methods
destroy
▸ destroy(): void
Destroys the subscription to the parent subscribable.
Returns
void
Overrides
Defined in
src/sdk/sub/Subscribable.ts:112
get
▸ get(): T
Gets this item's state.
Returns
T
This item's state.
Inherited from
Defined in
src/sdk/sub/Accessible.ts:9
map
▸ map<M
>(fn
, equalityFunc?
): MappedSubscribable
<M
>
Maps this subscribable to a new subscribable.
Type parameters
Name |
---|
M |
Parameters
Name | Type | Description |
---|---|---|
fn | (input : T , previousVal? : M ) => M | The function to use to map to the new subscribable. |
equalityFunc? | (a : M , b : M ) => boolean | The function to use to check for equality between mapped values. Defaults to the strict equality comparison (=== ). |
Returns
The mapped subscribable.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:36
▸ map<M
>(fn
, equalityFunc
, mutateFunc
, initialVal
): MappedSubscribable
<M
>
Maps this subscribable to a new subscribable with a persistent, cached value which is mutated when it changes.
Type parameters
Name |
---|
M |
Parameters
Name | Type | Description |
---|---|---|
fn | (input : T , previousVal? : M ) => M | The function to use to map to the new subscribable. |
equalityFunc | (a : M , b : M ) => boolean | The function to use to check for equality between mapped values. |
mutateFunc | (oldVal : M , newVal : M ) => void | The function to use to change the value of the mapped subscribable. |
initialVal | M | The initial value of the mapped subscribable. |
Returns
The mapped subscribable.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:45
pause
▸ pause(): this
Pauses the subscription to the parent subscribable. Once paused, this subscribable will not update its state until it is resumed.
Returns
this
This subscribable, after it has been paused.
Throws
Error if the subscription to the parent subscribable is not alive.
Overrides
Defined in
src/sdk/sub/Subscribable.ts:96
pipe
▸ pipe(to
, paused?
): Subscription
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
Name | Type | Description |
---|---|---|
to | MutableSubscribable <any , T > | The mutable subscribable to which to pipe this subscribable's state. |
paused? | boolean | Whether the new subscription should be initialized as paused. Defaults to false . |
Returns
The new subscription.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:60
▸ pipe<M
>(to
, map
, paused?
): Subscription
Subscribes to this subscribable's state and pipes a mapped version to a mutable subscribable. Whenever an update of this 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 the other subscribable's state.
Type parameters
Name |
---|
M |
Parameters
Name | Type | Description |
---|---|---|
to | MutableSubscribable <any , M > | The mutable subscribable to which to pipe this subscribable's mapped state. |
map | (fromVal : T , toVal : M ) => M | The function to use to transform inputs. |
paused? | boolean | Whether the new subscription should be initialized as paused. Defaults to false . |
Returns
The new subscription.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:70
resume
▸ resume(): this
Resumes the subscription to the parent subscribable. Once resumed, this subscribable will immediately begin to update its state based its parent's state.
Any initialNotify
argument passed to this method is ignored. This subscribable is always immediately notified of
its parent's state when resumed.
Returns
this
This subscribable, after it has been resumed.
Throws
Error if the subscription to the parent subscribable is not alive.
Overrides
Defined in
src/sdk/sub/Subscribable.ts:107
sub
▸ sub(handler
, initialNotify?
, paused?
): Subscription
Subscribes to changes in this subscribable's state.
Parameters
Name | Type | Description |
---|---|---|
handler | (value : T ) => void | A function which is called when this subscribable's state changes. |
initialNotify? | boolean | Whether to immediately invoke the callback function with this subscribable's current state. Defaults to false . This argument is ignored if the subscription is initialized as paused. |
paused? | boolean | Whether the new subscription should be initialized as paused. Defaults to false . |
Returns
The new subscription.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:19
unsub
▸ unsub(handler
): void
Unsubscribes a callback function from this subscribable.
Parameters
Name | Type | Description |
---|---|---|
handler | (value : T ) => void | The function to unsubscribe. |
Returns
void
Deprecated
This method has been deprecated in favor of using the Subscription object returned by .sub()
to manage subscriptions.
Inherited from
Defined in
src/sdk/sub/Subscribable.ts:27