Skip to content

A set of utility functions that recursively operate on JavaScript objects

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE.txt
Unknown
COPYING.txt
Notifications You must be signed in to change notification settings

mfederczuk/deeptools

Repository files navigation

DeepTools

version: 2.0.0-rc01 Changelog

About

DeepTools is a set of JavaScript utility functions that recursively operate on objects.

Usage

function deepCopy<T>(obj: T): T;

Creates a deep copy of obj.

function deepEquals(obj1: unknown, obj2: unknown): boolean;

Checks if obj1 and obj2 are equal by recursing through their properties.

function deepFreeze<T>(arr: T[][]): readonly (readonly Readonly<T>[])[];

Recursively freezes arr, all of arr's items and all items of arr's items.

function deepFreeze<T>(arr: T[]): readonly Readonly<T>[];

Recursively freezes arr and all of its items.

function deepFreeze<T>(obj: T): Readonly<T>;

Recursively freezes obj and all of its properties.

function safeCopy<T>(arr: T[][]): readonly (readonly Readonly<T>[])[];
function safeCopy<T>(arr: T[]): readonly Readonly<T>[];

Creates a safe copy of arr by creating a deep frozen copy of it.

function safeCopy<T>(obj: T): Readonly<T>;

Creates a safe copy of obj by creating a deep frozen copy of it.

Installation

Using npm:

npm i @mfederczuk/deeptools

Using yarn:

yarn add @mfederczuk/deeptools

Contributing

Read through the Contribution Guidelines if you want to contribute to this project.

License

DeepTools is licensed under the GNU General Public License v3.0 or later.
For more information about copying and licensing, see the COPYING.txt file.