Skip to content

utils/assignReactiveObject

Classes

AssignReactiveObjectError

Error thrown when an invalid value is passed to a function.

Extends

  • Error

Constructors

Constructor

new AssignReactiveObjectError(message, code): AssignReactiveObjectError

Parameters
message

string

The error message.

code

string

The error code.

Returns

AssignReactiveObjectError

Overrides

Error.constructor

Properties

code

code: string

name

name: string

Inherited from

Error.name

Type Aliases

validateTargetAndSourceResult

validateTargetAndSourceResult = object

The validated target and source values returned by the reactive-object assignment validator.

Type Parameters


ValidTargetOrSource

ValidTargetOrSource = Ref | object | any[]

targets and sources must be refs, objects, or arrays and refs must ultimately resolve to objects or arrays

Type Parameters

Functions

addOrUpdateReactiveObject()

addOrUpdateReactiveObject(target, source, exclude?, addedKeys?, sameKeys?, doNotSetUndefinedKeys?): boolean

Adds to a target the missing keys from a source, and updates a target with mutually shared keys from a source.

Parameters

target

any

The object receiving values.

source

any

The object providing values.

exclude?

any[]

Keys to exclude from the addition or update.

addedKeys?

any[] | Set<any>

Precaulcated array of keys to add, if available. Otherwise, the keys will be calculated.

sameKeys?

any[] | Set<any>

Precaulcated array of keys to update, if available. Otherwise, the keys will be calculated.

doNotSetUndefinedKeys?

boolean = true

If true, do not update keys in the target that are undefined in the source.

Returns

boolean

True if any keys were added or updated, false otherwise.


addOrUpdateReactiveObjectDeep()

addOrUpdateReactiveObjectDeep(target, source, exclude?): boolean

Recursively change a target to match a source, where keys present in the source are added to the target, and keys present in both are updated in the target. Missing keys are not removed.

Parameters

target

any

The object receiving updates.

source

any

The object providing updates.

exclude?

any[]

Keys to exclude from the update.

Returns

boolean

True if any keys were added or updated, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.


addReactiveObject()

addReactiveObject(target, source, exclude?, addedKeys?): boolean

Adds to a target the missing keys from a source. addedKeys can be precalculated to avoid recalculation.

Parameters

target

any

The object receiving values.

source

any

The object providing values.

exclude?

any[]

Keys to exclude from the addition.

addedKeys?

any[] | Set<any>

Precaulcated array of keys to add, if available. Otherwise, the keys will be calculated.

Returns

boolean

True if any keys were added, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.


assignReactiveArray()

assignReactiveArray(target, source): boolean

Change a target to match a source, where keys missing from the source are removed from the target, keys present in the source are added to the target, and keys present in both are updated in the target. This function is optimized for arrays.

Parameters

target

any

The array receiving updates.

source

any

The reactive array to assign.

Returns

boolean

True if any keys were added, updated, or removed, false otherwise.


assignReactiveObject()

assignReactiveObject(target, source, exclude?): boolean

Change a target to match a source, where keys missing from the source are removed from the target, keys present in the source are added to the target, and keys present in both are updated in the target.

Parameters

target

any

The target object or array.

source

any

The reactive object to assign.

exclude?

any[]

Keys to exclude from the assignment.

Returns

boolean

True if any keys were added, updated, or removed, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.


assignReactiveObjectDeep()

assignReactiveObjectDeep(target, source, exclude?): boolean

Recursively change a target to match a source, where keys missing from the source are removed from the target, keys present in the source are added to the target, and keys present in both are updated in the target.

Parameters

target

any

The object receiving updates.

source

any

The object providing updates.

exclude?

any[]

Keys to exclude from the assignment.

Returns

boolean

True if any keys were added, updated, or removed, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.


trimReactiveObject()

trimReactiveObject(target, source, exclude?, removedKeys?): boolean

Removes keys from a target that are not present in a source.

Parameters

target

any

The object receiving trimming.

source

any

The object that provides the allowed set of keys for calculating removedKeys.

exclude?

any[]

Keys to exclude from removal.

removedKeys?

any[] | Set<any>

An array to store removed keys.

Returns

boolean

True if any keys were removed, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.


updateReactiveObject()

updateReactiveObject(target, source, exclude?, sameKeys?): boolean

Updates a target with mutually shared keys from a source. sameKeys can be precalculated to avoid recalculation.

Parameters

target

any

The object receiving values.

source

any

The object providing values.

exclude?

any[]

Keys to exclude from the update.

sameKeys?

any[] | Set<any>

Precaulcated array of keys to update, if available. Otherwise, the keys will be calculated.

Returns

boolean

True if any keys were updated, false otherwise.

Throws

If either target or source are not ultimately objects or arrays.