@topgroup/diginext
Version:
A BUILD SERVER & CLI to deploy apps to any Kubernetes clusters.
35 lines (34 loc) • 1.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.replaceObjectIdsToStrings = exports.traverseObjectAndTransformValue = void 0;
const mongodb_1 = require("./mongodb");
function traverseObjectAndTransformValue(obj, transform) {
if (typeof obj === "string" ||
typeof obj === "number" ||
typeof obj === "boolean" ||
typeof obj === "function" ||
obj instanceof Date ||
mongodb_1.MongoDB.isObjectId(obj)) {
return obj;
}
else if (typeof obj === "object" && obj !== null) {
for (const key in obj) {
const value = obj[key];
if (typeof value === "object" && value !== null) {
obj[key] = traverseObjectAndTransformValue(value, transform);
}
else {
obj[key] = transform([key, value]);
}
}
// return obj;
}
else {
return obj;
}
}
exports.traverseObjectAndTransformValue = traverseObjectAndTransformValue;
function replaceObjectIdsToStrings(obj) {
return JSON.parse(JSON.stringify(obj));
}
exports.replaceObjectIdsToStrings = replaceObjectIdsToStrings;