@bhbr/copycat 1.0.0 → 1.0.1
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/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/{copycat.js → index.js} +11 -7
- package/dist/index.js.map +1 -0
- package/package.json +11 -12
- package/dist/copycat.d.ts +0 -3
- package/dist/copycat.d.ts.map +0 -1
- package/dist/copycat.js.map +0 -1
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,wBAAgB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAwClC;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAM,GAAG,GAAG,CAuF1E"}
|
|
@@ -43,9 +43,9 @@ export function deepCopy(obj, memo = []) {
|
|
|
43
43
|
// must be tracked and their identity retained.
|
|
44
44
|
// This is done via memoization and the reason
|
|
45
45
|
// why this implementation is so convoluted
|
|
46
|
-
if (obj
|
|
47
|
-
if (typeof obj
|
|
48
|
-
let copy = obj
|
|
46
|
+
if (obj['deepCopy'] !== undefined) {
|
|
47
|
+
if (typeof obj['deepCopy'] === 'function') {
|
|
48
|
+
let copy = obj['deepCopy']();
|
|
49
49
|
if (copy !== undefined) {
|
|
50
50
|
return copy;
|
|
51
51
|
}
|
|
@@ -82,7 +82,7 @@ export function deepCopy(obj, memo = []) {
|
|
|
82
82
|
}
|
|
83
83
|
let newObj;
|
|
84
84
|
if (isInstanceOf(obj, 'Element')) {
|
|
85
|
-
newObj = document.createElement(obj
|
|
85
|
+
newObj = document.createElement(obj['namespaceURI'], obj['localName']);
|
|
86
86
|
}
|
|
87
87
|
else {
|
|
88
88
|
newObj = Object.create(obj.constructor.prototype);
|
|
@@ -104,10 +104,14 @@ export function deepCopy(obj, memo = []) {
|
|
|
104
104
|
newObj[key] = copiedValue;
|
|
105
105
|
}
|
|
106
106
|
else {
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
if (typeof value == 'object') {
|
|
108
|
+
newObj[key] = deepCopy(value, memo);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
newObj[key] = value;
|
|
112
|
+
}
|
|
109
113
|
}
|
|
110
114
|
}
|
|
111
115
|
return newObj;
|
|
112
116
|
}
|
|
113
|
-
//# sourceMappingURL=
|
|
117
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bhbr/copycat",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Some functions for object copying (deep and shallow)",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "./dist/
|
|
7
|
-
"types": "./dist/
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
8
|
"exports": {
|
|
9
9
|
".": {
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"types": "./dist/index.d.ts"
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"files": [
|
|
15
|
-
"dist/
|
|
16
|
-
"dist/
|
|
17
|
-
"dist/copycat.js.map",
|
|
18
|
-
"dist/copycat.d.ts.map"
|
|
15
|
+
"dist/",
|
|
16
|
+
"!dist/_tests"
|
|
19
17
|
],
|
|
20
18
|
"scripts": {
|
|
21
|
-
"build": "
|
|
22
|
-
"test": "node dist/_tests/
|
|
19
|
+
"build": "./build.sh",
|
|
20
|
+
"test": "node dist/_tests/tests.js",
|
|
23
21
|
"prepack": "npm run build"
|
|
24
22
|
},
|
|
25
23
|
"repository": {
|
|
@@ -37,6 +35,7 @@
|
|
|
37
35
|
"@bhbr/upper-class": "^1.0.1"
|
|
38
36
|
},
|
|
39
37
|
"devDependencies": {
|
|
40
|
-
"@bhbr/tsts": "^1.1.3"
|
|
38
|
+
"@bhbr/tsts": "^1.1.3",
|
|
39
|
+
"@bhbr/egalite": "^1.2.0"
|
|
41
40
|
}
|
|
42
41
|
}
|
package/dist/copycat.d.ts
DELETED
package/dist/copycat.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"copycat.d.ts","sourceRoot":"","sources":["../src/copycat.ts"],"names":[],"mappings":"AAGA,wBAAgB,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAwClC;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,GAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAM,GAAG,GAAG,CAoFvE"}
|
package/dist/copycat.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"copycat.js","sourceRoot":"","sources":["../src/copycat.ts"],"names":[],"mappings":"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"}
|