Skip to main content

@jewel998/state-machine - v0.0.5 / ImmerImmutabilityProvider

Class: ImmerImmutabilityProvider<TContext>

Type parameters

NameType
TContextextends ContextConstraint

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new ImmerImmutabilityProvider<TContext>(options?): ImmerImmutabilityProvider<TContext>

Type parameters

NameType
TContextextends ContextConstraint

Parameters

NameType
optionsObject
options.enablePatches?boolean
options.immerInstance?ImmerAPI

Returns

ImmerImmutabilityProvider<TContext>

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:39

Properties

name

Readonly name: "immer"

Implementation of

ImmutabilityProvider.name

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:35

Methods

clone

clone(context): TContext

Parameters

NameType
contextTContext

Returns

TContext

Implementation of

ImmutabilityProvider.clone

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:54


freeze

freeze(context): TContext

Parameters

NameType
contextTContext

Returns

TContext

Implementation of

ImmutabilityProvider.freeze

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:75


isImmutable

isImmutable(context): boolean

Parameters

NameType
contextTContext

Returns

boolean

Implementation of

ImmutabilityProvider.isImmutable

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:92


produce

produce<T>(base, recipe): T

Type parameters

NameType
Textends ContextConstraint

Parameters

NameType
baseT
recipe(draft: T) => void | T

Returns

T

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:105


produceWithPatches

produceWithPatches<T>(base, recipe): [T, Patch[], Patch[]]

Type parameters

NameType
Textends ContextConstraint

Parameters

NameType
baseT
recipe(draft: T) => void | T

Returns

[T, Patch[], Patch[]]

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:118


applyPatches

applyPatches<T>(base, patches): T

Type parameters

NameType
Textends ContextConstraint

Parameters

NameType
baseT
patchesPatch[]

Returns

T

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:137


current

current<T>(draft): T

Type parameters

NameType
Textends ContextConstraint

Parameters

NameType
draftT

Returns

T

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:147


original

original<T>(draft): undefined | T

Type parameters

NameType
Textends ContextConstraint

Parameters

NameType
draftT

Returns

undefined | T

Defined in

src/middleware/immutability/providers/ImmerImmutabilityProvider.ts:157