Files
react-native-devtools-frontend/node_modules/just-extend
Jack Franklin b5bbcc0078 Add sinonjs@8.1.1 dependency
This will be used to build out mocking in the devtools frontend unit tests.

DISABLE_THIRD_PARTY_CHECK=message doesn't apply with this change (checked with aerotwist@).

Change-Id: Ie623b4fb35677c8c4a5e52d5e75180346da6e3fd
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2050225
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Paul Lewis <aerotwist@chromium.org>
2020-02-11 14:49:21 +00:00
..
2020-02-11 14:49:21 +00:00
2020-02-11 14:49:21 +00:00
2020-02-11 14:49:21 +00:00
2020-02-11 14:49:21 +00:00

just-extend

Part of a library of zero-dependency npm modules that do just do one thing. Guilt-free utilities for every occasion.

Try it now

import extend from 'just-extend';

var obj = {a: 3, b: 5};
extend(obj, {a: 4, c: 8}); // {a: 4, b: 5, c: 8}
obj; // {a: 4, b: 5, c: 8}

var obj = {a: 3, b: 5};
extend({}, obj, {a: 4, c: 8}); // {a: 4, b: 5, c: 8}
obj; // {a: 3, b: 5}

var arr = [1, 2, 3];
var obj = {a: 3, b: 5};
extend(obj, {c: arr}); // {a: 3, b: 5, c: [1, 2, 3]}
arr.push(4);
obj; // {a: 3, b: 5, c: [1, 2, 3, 4]}

var arr = [1, 2, 3];
var obj = {a: 3, b: 5};
extend(true, obj, {c: arr}); // {a: 3, b: 5, c: [1, 2, 3]}
arr.push(4);
obj; // {a: 3, b: 5, c: [1, 2, 3]}

extend({a: 4, b: 5}); // {a: 4, b: 5}
extend({a: 4, b: 5}, 3); {a: 4, b: 5}
extend({a: 4, b: 5}, true); {a: 4, b: 5}
extend('hello', {a: 4, b: 5}); // throws
extend(3, {a: 4, b: 5}); // throws