merge-deeper-object 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  ## merge-deeper-object
2
- Combine the attributes of objects deeply. Compatible with both CommonJS (CJS) and ECMAScript Module (ESM) formats.
2
+ Combine the attributes of objects deeply.
3
3
 
4
4
  ## Install
5
5
  ```
6
- npm install --save @work-state/merge-deeper-object
6
+ npm install --save merge-deeper-object
7
7
  ```
8
8
 
9
9
  ## Running tests
@@ -14,7 +14,7 @@ npm run test
14
14
 
15
15
  ## Usage
16
16
  ```javascript
17
- var mergeDeeper = require('@work-state/merge-deeper-object')
17
+ var mergeDeeper = require('merge-deeper-object')
18
18
 
19
19
  var obj1 = { a: { b: { c: 1 } }, d: "d", e: { f: true } }
20
20
  var obj2 = { a: { g: "g" }, d: "dd", e: { f: false } }
package/index.js ADDED
@@ -0,0 +1,19 @@
1
+ module.exports = function mergeDeeper(object, merge) {
2
+ if (!merge || typeof merge === "string") merge = {};
3
+ [...Object.keys(merge), ...Object.getOwnPropertySymbols(merge)].map((el) => {
4
+ if (
5
+ typeof merge[el] !== typeof object[el] ||
6
+ (typeof merge[el] && typeof object[el]) !== "object"
7
+ )
8
+ object[el] = merge[el];
9
+
10
+ if (!(el in object))
11
+ object[el] =
12
+ typeof merge[el] === "object" && !Array.isArray(merge[el])
13
+ ? { ...merge[el] }
14
+ : merge[el];
15
+
16
+ mergeDeeper(object[el], merge[el]);
17
+ });
18
+ return object;
19
+ };
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
- "version": "0.1.0",
2
+ "version": "0.1.2",
3
3
  "author": "Ilyass Mabrouk",
4
4
  "license": "MIT",
5
5
  "name": "merge-deeper-object",
6
- "description": "Deep merge properties of objects. Support both CJS and ESM.",
6
+ "description": "Deep merge properties of objects.",
7
7
  "homepage": "https://github.com/work-state/merge-deeper-object",
8
8
  "repository": {
9
9
  "type": "git",
@@ -12,18 +12,11 @@
12
12
  "bugs": {
13
13
  "url": "https://github.com/work-state/merge-deeper-object/issues"
14
14
  },
15
- "types": "./lib/cjs/types/index.d.ts",
16
- "main": "./lib/cjs/index.js",
17
- "module": "./lib/esm/index.msj",
15
+ "main": "index.js",
18
16
  "files": [
19
- "lib/**/*"
17
+ "index.js"
20
18
  ],
21
19
  "scripts": {
22
- "clean": "rm -rf ./lib",
23
- "build": "npm run clean && npm run build:esm && npm run build:cjs",
24
- "build:esm": "tsc -p ./config/tsconfig.esm.json && mv lib/esm/index.js lib/esm/index.mjs",
25
- "build:cjs": "tsc -p ./config/tsconfig.cjs.json",
26
- "prepack": "npm run build",
27
20
  "test": "mocha"
28
21
  },
29
22
  "keywords": [
@@ -55,30 +48,12 @@
55
48
  "reflinks": true
56
49
  }
57
50
  },
58
- "exports": {
59
- ".": {
60
- "import": {
61
- "types": "./lib/esm/types/index.d.ts",
62
- "default": "./lib/esm/index.mjs"
63
- },
64
- "require": {
65
- "types": "./lib/cjs/types/index.d.ts",
66
- "default": "./lib/cjs/index.js"
67
- }
68
- }
69
- },
70
- "dependencies": {
71
- "typescript": "^4.9.5"
72
- },
51
+ "dependencies": {},
73
52
  "devDependencies": {
74
- "@types/chai": "^4.3.4",
75
- "@types/mocha": "^10.0.1",
76
53
  "chai": "^4.3.7",
77
- "mocha": "^10.2.0",
78
- "ts-node": "^10.9.1"
54
+ "mocha": "^10.2.0"
79
55
  },
80
56
  "directories": {
81
- "lib": "lib",
82
57
  "test": "test"
83
58
  }
84
59
  }
package/lib/cjs/index.js DELETED
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const mergeDeeper = (object, merge) => {
4
- if (!merge || typeof merge === "string")
5
- merge = {};
6
- [...Object.keys(merge), ...Object.getOwnPropertySymbols(merge)].map((el) => {
7
- if (typeof merge[el] !== typeof object[el] ||
8
- (typeof merge[el] && typeof object[el]) !== "object")
9
- object[el] = merge[el];
10
- if (!(el in object))
11
- object[el] =
12
- typeof merge[el] === "object" && !Array.isArray(merge[el])
13
- ? Object.assign({}, merge[el]) : merge[el];
14
- mergeDeeper(object[el], merge[el]);
15
- });
16
- return object;
17
- };
18
- exports.default = mergeDeeper;
@@ -1,3 +0,0 @@
1
- declare const mergeDeeper: (object: Record<any, any>, merge: Record<any, any>) => Record<any, any>;
2
- export default mergeDeeper;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,WAAW,WAAY,OAAO,GAAG,EAAE,GAAG,CAAC,SAAS,OAAO,GAAG,EAAE,GAAG,CAAC,qBAoBrE,CAAC;AAEF,eAAe,WAAW,CAAC"}
package/lib/esm/index.mjs DELETED
@@ -1,17 +0,0 @@
1
- const mergeDeeper = (object, merge) => {
2
- if (!merge || typeof merge === "string")
3
- merge = {};
4
- [...Object.keys(merge), ...Object.getOwnPropertySymbols(merge)].map((el) => {
5
- if (typeof merge[el] !== typeof object[el] ||
6
- (typeof merge[el] && typeof object[el]) !== "object")
7
- object[el] = merge[el];
8
- if (!(el in object))
9
- object[el] =
10
- typeof merge[el] === "object" && !Array.isArray(merge[el])
11
- ? { ...merge[el] }
12
- : merge[el];
13
- mergeDeeper(object[el], merge[el]);
14
- });
15
- return object;
16
- };
17
- export default mergeDeeper;
@@ -1,3 +0,0 @@
1
- declare const mergeDeeper: (object: Record<any, any>, merge: Record<any, any>) => Record<any, any>;
2
- export default mergeDeeper;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,WAAW,WAAY,OAAO,GAAG,EAAE,GAAG,CAAC,SAAS,OAAO,GAAG,EAAE,GAAG,CAAC,qBAoBrE,CAAC;AAEF,eAAe,WAAW,CAAC"}