@loaders.gl/loader-utils 4.1.0-alpha.3 → 4.1.0-alpha.5
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.cjs
CHANGED
|
@@ -129,13 +129,17 @@ var nodeVersion = matches && parseFloat(matches[1]) || 0;
|
|
|
129
129
|
function mergeLoaderOptions(baseOptions, newOptions) {
|
|
130
130
|
return mergeOptionsRecursively(baseOptions || {}, newOptions);
|
|
131
131
|
}
|
|
132
|
-
function mergeOptionsRecursively(baseOptions, newOptions) {
|
|
132
|
+
function mergeOptionsRecursively(baseOptions, newOptions, level = 0) {
|
|
133
|
+
if (level > 3) {
|
|
134
|
+
return newOptions;
|
|
135
|
+
}
|
|
133
136
|
const options = { ...baseOptions };
|
|
134
137
|
for (const [key, newValue] of Object.entries(newOptions)) {
|
|
135
138
|
if (newValue && typeof newValue === "object" && !Array.isArray(newValue)) {
|
|
136
139
|
options[key] = mergeOptionsRecursively(
|
|
137
140
|
options[key] || {},
|
|
138
|
-
newOptions[key]
|
|
141
|
+
newOptions[key],
|
|
142
|
+
level + 1
|
|
139
143
|
);
|
|
140
144
|
} else {
|
|
141
145
|
options[key] = newOptions[key];
|
package/dist/json-loader.js
CHANGED
|
@@ -2,12 +2,16 @@ export function mergeLoaderOptions(baseOptions, newOptions) {
|
|
|
2
2
|
return mergeOptionsRecursively(baseOptions || {}, newOptions);
|
|
3
3
|
}
|
|
4
4
|
function mergeOptionsRecursively(baseOptions, newOptions) {
|
|
5
|
+
let level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
6
|
+
if (level > 3) {
|
|
7
|
+
return newOptions;
|
|
8
|
+
}
|
|
5
9
|
const options = {
|
|
6
10
|
...baseOptions
|
|
7
11
|
};
|
|
8
12
|
for (const [key, newValue] of Object.entries(newOptions)) {
|
|
9
13
|
if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {
|
|
10
|
-
options[key] = mergeOptionsRecursively(options[key] || {}, newOptions[key]);
|
|
14
|
+
options[key] = mergeOptionsRecursively(options[key] || {}, newOptions[key], level + 1);
|
|
11
15
|
} else {
|
|
12
16
|
options[key] = newOptions[key];
|
|
13
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-loader-options.js","names":["mergeLoaderOptions","baseOptions","newOptions","mergeOptionsRecursively","options","key","newValue","Object","entries","Array","isArray"],"sources":["../../../src/lib/option-utils/merge-loader-options.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport {LoaderOptions} from '../../loader-types';\n\n/**\n *\n * @param baseOptions Can be undefined, in which case a fresh options object will be minted\n * @param newOptions\n * @returns\n */\nexport function mergeLoaderOptions<Options extends LoaderOptions>(\n baseOptions: Options | undefined,\n newOptions: Options\n): Options {\n return mergeOptionsRecursively(baseOptions || {}, newOptions) as Options;\n}\n\nfunction mergeOptionsRecursively(\n baseOptions: Record<string, unknown>,\n newOptions: Record<string, unknown
|
|
1
|
+
{"version":3,"file":"merge-loader-options.js","names":["mergeLoaderOptions","baseOptions","newOptions","mergeOptionsRecursively","level","arguments","length","undefined","options","key","newValue","Object","entries","Array","isArray"],"sources":["../../../src/lib/option-utils/merge-loader-options.ts"],"sourcesContent":["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport {LoaderOptions} from '../../loader-types';\n\n/**\n *\n * @param baseOptions Can be undefined, in which case a fresh options object will be minted\n * @param newOptions\n * @returns\n */\nexport function mergeLoaderOptions<Options extends LoaderOptions>(\n baseOptions: Options | undefined,\n newOptions: Options\n): Options {\n return mergeOptionsRecursively(baseOptions || {}, newOptions) as Options;\n}\n\nfunction mergeOptionsRecursively(\n baseOptions: Record<string, unknown>,\n newOptions: Record<string, unknown>,\n level = 0\n): Record<string, unknown> {\n // Sanity check (jest test runner overwrites the console object which can lead to infinite recursion)\n if (level > 3) {\n return newOptions;\n }\n\n const options = {...baseOptions};\n for (const [key, newValue] of Object.entries(newOptions)) {\n if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {\n options[key] = mergeOptionsRecursively(\n (options[key] as Record<string, unknown>) || {},\n newOptions[key] as Record<string, unknown>,\n level + 1\n );\n // Object.assign(options[key] as object, newOptions[key]);\n } else {\n options[key] = newOptions[key];\n }\n }\n return options as Record<string, unknown>;\n}\n"],"mappings":"AAYA,OAAO,SAASA,kBAAkBA,CAChCC,WAAgC,EAChCC,UAAmB,EACV;EACT,OAAOC,uBAAuB,CAACF,WAAW,IAAI,CAAC,CAAC,EAAEC,UAAU,CAAC;AAC/D;AAEA,SAASC,uBAAuBA,CAC9BF,WAAoC,EACpCC,UAAmC,EAEV;EAAA,IADzBE,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC;EAGT,IAAID,KAAK,GAAG,CAAC,EAAE;IACb,OAAOF,UAAU;EACnB;EAEA,MAAMM,OAAO,GAAG;IAAC,GAAGP;EAAW,CAAC;EAChC,KAAK,MAAM,CAACQ,GAAG,EAAEC,QAAQ,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACV,UAAU,CAAC,EAAE;IACxD,IAAIQ,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,IAAI,CAACG,KAAK,CAACC,OAAO,CAACJ,QAAQ,CAAC,EAAE;MACxEF,OAAO,CAACC,GAAG,CAAC,GAAGN,uBAAuB,CACnCK,OAAO,CAACC,GAAG,CAAC,IAAgC,CAAC,CAAC,EAC/CP,UAAU,CAACO,GAAG,CAAC,EACfL,KAAK,GAAG,CACV,CAAC;IAEH,CAAC,MAAM;MACLI,OAAO,CAACC,GAAG,CAAC,GAAGP,UAAU,CAACO,GAAG,CAAC;IAChC;EACF;EACA,OAAOD,OAAO;AAChB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/loader-utils",
|
|
3
|
-
"version": "4.1.0-alpha.
|
|
3
|
+
"version": "4.1.0-alpha.5",
|
|
4
4
|
"description": "Framework-independent loaders for 3D graphics formats",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"scripts": {},
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"@babel/runtime": "^7.3.1",
|
|
50
|
-
"@loaders.gl/worker-utils": "4.1.0-alpha.
|
|
50
|
+
"@loaders.gl/worker-utils": "4.1.0-alpha.5",
|
|
51
51
|
"@probe.gl/stats": "^4.0.2"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "3250842d8cc0fc8b76a575168c1fd57e5a66b6ba"
|
|
54
54
|
}
|
|
@@ -19,14 +19,21 @@ export function mergeLoaderOptions<Options extends LoaderOptions>(
|
|
|
19
19
|
|
|
20
20
|
function mergeOptionsRecursively(
|
|
21
21
|
baseOptions: Record<string, unknown>,
|
|
22
|
-
newOptions: Record<string, unknown
|
|
22
|
+
newOptions: Record<string, unknown>,
|
|
23
|
+
level = 0
|
|
23
24
|
): Record<string, unknown> {
|
|
25
|
+
// Sanity check (jest test runner overwrites the console object which can lead to infinite recursion)
|
|
26
|
+
if (level > 3) {
|
|
27
|
+
return newOptions;
|
|
28
|
+
}
|
|
29
|
+
|
|
24
30
|
const options = {...baseOptions};
|
|
25
31
|
for (const [key, newValue] of Object.entries(newOptions)) {
|
|
26
32
|
if (newValue && typeof newValue === 'object' && !Array.isArray(newValue)) {
|
|
27
33
|
options[key] = mergeOptionsRecursively(
|
|
28
34
|
(options[key] as Record<string, unknown>) || {},
|
|
29
|
-
newOptions[key] as Record<string, unknown
|
|
35
|
+
newOptions[key] as Record<string, unknown>,
|
|
36
|
+
level + 1
|
|
30
37
|
);
|
|
31
38
|
// Object.assign(options[key] as object, newOptions[key]);
|
|
32
39
|
} else {
|