imuty
v1.0.0
Published
Simple and lightweight library allowing you to **immutably** update object (or part of the object).
Downloads
1
Readme
imuty
Simple and lightweight library allowing you to immutably update object (or part of the object).
API
Table of Contents
isValidPath
Returns true if the argument is a valid path. (Path must be an array of string or numbers).
Parameters
path
any
Returns boolean
setIn
Sets a value on a given path in the object. If one of the arguments is invalid an error is thrown.
Parameters
object
Object object in which the value should be setpath
Array<(number | string)> path in the object where to set the valuevalue
any value to be set
Returns Object with the value set
getIn
Returns a value found in an object on a given path. If there is no value on the path returns defaultValue instead. If the path is not a valid path object, an error is thrown.
Parameters
object
Object object from which to get the valuepath
Array<(number | string)> path to the value in the objectdefaultValue
any value to be returned if the path is not part of the object
Returns any value on the path or defaultValue
multiSetIn
Allows you to specify multiple object transformations at once. Each transformation must be a two element array, where the first element is the path of the transformation and the second is the value of the transformation.
Transformations are applied from left to right.
Parameters
object
Object object in which the transformation should be appliedtransforms
...[Array<(number | string)>, any] transformations to be applied
Returns Object with all transformations applied
pathExists
Returns true if the path exists in given object.
Parameters
Returns boolean
filterObject
Filters an object by the paths provided.
Parameters
Returns Object with filtered properties from the object
mergeIn
Merges the path of the object found on a given path with the properties of value object.
Parameters
Returns Object that is merged with the value on a given path