Files
react-native-devtools-frontend/node_modules/omit-deep-lodash
Tim van der Lippe 912cec0c68 Add istanbul-diff to node_modules
DISABLE_THIRD_PARTY_CHECK=Adding istanbul-diff to node_modules

Bug: chromium:1044881
Change-Id: Ia80f499622132ce9b2c0890147fecdd4530886c7
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2024871
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
2020-01-28 15:21:23 +00:00
..
2020-01-28 15:21:23 +00:00
2020-01-28 15:21:23 +00:00
2020-01-28 15:21:23 +00:00
2020-01-28 15:21:23 +00:00
2020-01-28 15:21:23 +00:00
2020-01-28 15:21:23 +00:00

omit-deep-lodash

Omit object key/values recursively

Sometimes we need to omit things from an object recursively. omit-deep did this in a great manner but hadn't been updated for quite some time and didn't really work with Arrays. omit-deep-lodash solves this and uses only lodash as external dependency.

The code for this module uses new features in the Javascript language, but the code is transpiled by Babel to ES2015 so most projects who needs it should be able to use it.

Note! All non-omitted properties that are objects lose their prototype chains and thus their true type. This implementation is thus best used for simple JSON type objects like data objects and not typed object graphs where members have objects with constructors.

Install

Install with npm

$ npm i omit-deep-lodash --save

Usage

const omitDeep = require("omit-deep-lodash");

omitDeep({a: "a", b: "b", c: {b: "b", d: {b: "b", f: "f"}}}, "b");
//=> {a: "a", c: {d: {f: "f"}}}

omitDeep({a: "a", b: "b", c: {b: "b", d: {b: "b", f: "f"}}}, "a", "b");
//=> {c: {d: {f: "f"}}}

Running tests

Install dev dependencies:

$ npm i -d && npm test

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue

Author

License

Released under the MIT license.