https://github.com/borderless/assign
Tiny, opinionated deep assign implementation
https://github.com/borderless/assign
Last synced: 9 months ago
JSON representation
Tiny, opinionated deep assign implementation
- Host: GitHub
- URL: https://github.com/borderless/assign
- Owner: borderless
- License: mit
- Created: 2020-03-10T01:49:36.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-12-12T06:14:36.000Z (over 2 years ago)
- Last Synced: 2024-10-29T19:20:14.613Z (over 1 year ago)
- Language: TypeScript
- Homepage:
- Size: 398 KB
- Stars: 6
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Assign
[![NPM version][npm-image]][npm-url]
[![NPM downloads][downloads-image]][downloads-url]
[![Build status][travis-image]][travis-url]
[![Test coverage][coveralls-image]][coveralls-url]
> Tiny, opinionated deep assign implementation.
## Installation
```sh
npm install @borderless/assign --save
```
## Usage
```js
import { assign } from "@borderless/assign";
// Merges objects.
assign({ a: 10 }, { b: 10 }); //=> { a: 10, b: 10 }
// Deep merge of objects.
assign({ a: { b: true }, { a: { c: false } }); //=> { a: { b: true, c: false } }
// Pushes to arrays, overwrites primitives.
assign({ a: 10, b: [1] }, { a: 20, b: [2, 3] }); //=> { a: 20, b: [1, 2, 3] }
```
## License
MIT
[npm-image]: https://img.shields.io/npm/v/@borderless/assign.svg?style=flat
[npm-url]: https://npmjs.org/package/@borderless/assign
[downloads-image]: https://img.shields.io/npm/dm/@borderless/assign.svg?style=flat
[downloads-url]: https://npmjs.org/package/@borderless/assign
[travis-image]: https://img.shields.io/travis/borderless/assign.svg?style=flat
[travis-url]: https://travis-ci.org/borderless/assign
[coveralls-image]: https://img.shields.io/coveralls/borderless/assign.svg?style=flat
[coveralls-url]: https://coveralls.io/r/borderless/assign?branch=master