This commit is contained in:
24
node_modules/@mapbox/mapbox-gl-style-spec/util/unbundle_jsonlint.js
generated
vendored
Normal file
24
node_modules/@mapbox/mapbox-gl-style-spec/util/unbundle_jsonlint.js
generated
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
// @flow
|
||||
|
||||
// Turn jsonlint-lines-primitives objects into primitive objects
|
||||
export function unbundle(value: mixed): mixed {
|
||||
if (value instanceof Number || value instanceof String || value instanceof Boolean) {
|
||||
return value.valueOf();
|
||||
} else {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
|
||||
export function deepUnbundle(value: mixed): mixed {
|
||||
if (Array.isArray(value)) {
|
||||
return value.map(deepUnbundle);
|
||||
} else if (value instanceof Object && !(value instanceof Number || value instanceof String || value instanceof Boolean)) {
|
||||
const unbundledValue: { [key: string]: mixed } = {};
|
||||
for (const key in value) {
|
||||
unbundledValue[key] = deepUnbundle(value[key]);
|
||||
}
|
||||
return unbundledValue;
|
||||
}
|
||||
|
||||
return unbundle(value);
|
||||
}
|
||||
Reference in New Issue
Block a user