diff options
author | Minteck <contact@minteck.org> | 2022-06-04 08:51:01 +0200 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-06-04 08:51:01 +0200 |
commit | 383285ecd5292bf9a825e05904955b937de84cc9 (patch) | |
tree | 0a53b6f02c1604b078044567c03dc1b6c944c8c2 /node_modules/dot-prop/readme.md | |
download | equestriadb-383285ecd5292bf9a825e05904955b937de84cc9.tar.gz equestriadb-383285ecd5292bf9a825e05904955b937de84cc9.tar.bz2 equestriadb-383285ecd5292bf9a825e05904955b937de84cc9.zip |
Initial commit
Diffstat (limited to 'node_modules/dot-prop/readme.md')
-rw-r--r-- | node_modules/dot-prop/readme.md | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/node_modules/dot-prop/readme.md b/node_modules/dot-prop/readme.md new file mode 100644 index 0000000..4170565 --- /dev/null +++ b/node_modules/dot-prop/readme.md @@ -0,0 +1,117 @@ +# dot-prop [![Build Status](https://travis-ci.org/sindresorhus/dot-prop.svg?branch=master)](https://travis-ci.org/sindresorhus/dot-prop) + +> Get, set, or delete a property from a nested object using a dot path + + +## Install + +``` +$ npm install dot-prop +``` + + +## Usage + +```js +const dotProp = require('dot-prop'); + +// Getter +dotProp.get({foo: {bar: 'unicorn'}}, 'foo.bar'); +//=> 'unicorn' + +dotProp.get({foo: {bar: 'a'}}, 'foo.notDefined.deep'); +//=> undefined + +dotProp.get({foo: {bar: 'a'}}, 'foo.notDefined.deep', 'default value'); +//=> 'default value' + +dotProp.get({foo: {'dot.dot': 'unicorn'}}, 'foo.dot\\.dot'); +//=> 'unicorn' + +// Setter +const object = {foo: {bar: 'a'}}; +dotProp.set(object, 'foo.bar', 'b'); +console.log(object); +//=> {foo: {bar: 'b'}} + +const foo = dotProp.set({}, 'foo.bar', 'c'); +console.log(foo); +//=> {foo: {bar: 'c'}} + +dotProp.set(object, 'foo.baz', 'x'); +console.log(object); +//=> {foo: {bar: 'b', baz: 'x'}} + +// Has +dotProp.has({foo: {bar: 'unicorn'}}, 'foo.bar'); +//=> true + +// Deleter +const object = {foo: {bar: 'a'}}; +dotProp.delete(object, 'foo.bar'); +console.log(object); +//=> {foo: {}} + +object.foo.bar = {x: 'y', y: 'x'}; +dotProp.delete(object, 'foo.bar.x'); +console.log(object); +//=> {foo: {bar: {y: 'x'}}} +``` + + +## API + +### get(object, path, defaultValue?) + +### set(object, path, value) + +Returns the object. + +### has(object, path) + +### delete(object, path) + +Returns a boolean of whether the property existed before being deleted. + +#### object + +Type: `object` + +Object to get, set, or delete the `path` value. + +You are allowed to pass in `undefined` as the object to the `get` and `has` functions. + +#### path + +Type: `string` + +Path of the property in the object, using `.` to separate each nested key. + +Use `\\.` if you have a `.` in the key. + +The following path components are invalid and results in `undefined` being returned: `__proto__`, `prototype`, `constructor`. + +#### value + +Type: `unknown` + +Value to set at `path`. + +#### defaultValue + +Type: `unknown` + +Default value. + + +--- + +<div align="center"> + <b> + <a href="https://tidelift.com/subscription/pkg/npm-dot-prop?utm_source=npm-dot-prop&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a> + </b> + <br> + <sub> + Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies. + </sub> +</div> |