@tree-house/serializer
Version:
Json de/serialization made for consistency
20 lines (19 loc) • 654 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.constructMeta = void 0;
const lodash_1 = require("lodash");
const getTotalCount = (data, totalCount) => (0, lodash_1.isNil)(totalCount) ? data.length : totalCount;
const constructMeta = (data, resource, config = {}) => {
const meta = {
type: resource,
...(0, lodash_1.omit)(config, ['type']),
};
if ((0, lodash_1.isArray)(data)) {
return Object.assign(meta, {
count: data.length,
totalCount: getTotalCount(data, config.totalCount),
});
}
return meta;
};
exports.constructMeta = constructMeta;