aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/utils/objects.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js/utils/objects.js')
-rw-r--r--src/js/utils/objects.js40
1 files changed, 20 insertions, 20 deletions
diff --git a/src/js/utils/objects.js b/src/js/utils/objects.js
index 225bb459..a327e488 100644
--- a/src/js/utils/objects.js
+++ b/src/js/utils/objects.js
@@ -6,37 +6,37 @@ import is from './is';
// Clone nested objects
export function cloneDeep(object) {
- return JSON.parse(JSON.stringify(object));
+ return JSON.parse(JSON.stringify(object));
}
// Get a nested value in an object
export function getDeep(object, path) {
- return path.split('.').reduce((obj, key) => obj && obj[key], object);
+ return path.split('.').reduce((obj, key) => obj && obj[key], object);
}
// Deep extend destination object with N more objects
export function extend(target = {}, ...sources) {
- if (!sources.length) {
- return target;
- }
+ if (!sources.length) {
+ return target;
+ }
- const source = sources.shift();
+ const source = sources.shift();
- if (!is.object(source)) {
- return target;
- }
+ if (!is.object(source)) {
+ return target;
+ }
- Object.keys(source).forEach(key => {
- if (is.object(source[key])) {
- if (!Object.keys(target).includes(key)) {
- Object.assign(target, { [key]: {} });
- }
+ Object.keys(source).forEach(key => {
+ if (is.object(source[key])) {
+ if (!Object.keys(target).includes(key)) {
+ Object.assign(target, { [key]: {} });
+ }
- extend(target[key], source[key]);
- } else {
- Object.assign(target, { [key]: source[key] });
- }
- });
+ extend(target[key], source[key]);
+ } else {
+ Object.assign(target, { [key]: source[key] });
+ }
+ });
- return extend(target, ...sources);
+ return extend(target, ...sources);
}