UNPKG

@genkit-ai/core

Version:

Genkit AI framework core libraries.

59 lines 1.51 kB
function deleteUndefinedProps(obj) { for (const prop in obj) { if (obj[prop] === void 0) { delete obj[prop]; } else { if (typeof obj[prop] === "object") { deleteUndefinedProps(obj[prop]); } } } } function stripUndefinedProps(input) { if (input === void 0 || input === null || Array.isArray(input) || typeof input !== "object") { return input; } const out = {}; for (const key in input) { if (input[key] !== void 0) { out[key] = stripUndefinedProps(input[key]); } } return out; } function getCurrentEnv() { return process.env.GENKIT_ENV || "prod"; } function isDevEnv() { return getCurrentEnv() === "dev"; } function featureMetadataPrefix(name) { return `feature:${name}`; } function deepEqual(a, b) { if (a === b) return true; if (a == null || b == null) return a === b; if (typeof a !== typeof b) return false; if (typeof a !== "object") return false; if (Array.isArray(a)) { if (!Array.isArray(b) || a.length !== b.length) return false; return a.every((v, i) => deepEqual(v, b[i])); } const aObj = a; const bObj = b; const aKeys = Object.keys(aObj).sort(); const bKeys = Object.keys(bObj).sort(); if (aKeys.length !== bKeys.length) return false; return aKeys.every( (key, i) => key === bKeys[i] && deepEqual(aObj[key], bObj[key]) ); } export { deepEqual, deleteUndefinedProps, featureMetadataPrefix, getCurrentEnv, isDevEnv, stripUndefinedProps }; //# sourceMappingURL=utils.mjs.map