UNPKG

@goatlab/fluent

Version:

Readable query Interface & API generator for TS and Node

26 lines (25 loc) 843 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.clearEmpties = void 0; const bson_1 = require("bson"); const clearEmpties = object => { Object.entries(object).forEach(([k, v]) => { if (v && typeof v === 'object') (0, exports.clearEmpties)(v); if ((v && typeof v === 'object' && !Object.keys(v).length) || v === null || v === undefined || v.length === 0) { if (Array.isArray(object)) { if (!(object[k] instanceof bson_1.ObjectId)) { object.splice(k, 1); } } else if (!(v instanceof Date) && !(v instanceof bson_1.ObjectId)) { delete object[k]; } } }); return object; }; exports.clearEmpties = clearEmpties;