UNPKG

map-transform-cjs

Version:
73 lines (72 loc) 2.39 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/utils/modifyOperationObject.ts var modifyOperationObject_exports = {}; __export(modifyOperationObject_exports, { default: () => modifyOperationObject }); module.exports = __toCommonJS(modifyOperationObject_exports); var createTransformWithPath = ($transform, path, operator) => ({ $transform, path, ...operator && { operator } }); var createValueTransform = ({ $value, ...rest }) => ({ ...rest, $transform: "value", value: $value }); var createAndTransform = ({ $and, ...rest }) => ({ ...rest, ...createTransformWithPath("logical", $and, "AND") }); var createOrTransform = ({ $or, ...rest }) => ({ ...rest, ...createTransformWithPath("logical", $or, "OR") }); var createNotTransform = ({ $not, ...rest }) => ({ ...rest, ...createTransformWithPath("not", $not) }); var createMergeTransform = ({ $merge, ...rest }) => ({ ...rest, ...createTransformWithPath("merge", $merge) }); function modifyOperationObject(rawOperation, modify) { const operation = typeof modify === "function" ? modify(rawOperation) : rawOperation; if (operation.hasOwnProperty("$value")) { return createValueTransform(operation); } else if (operation.hasOwnProperty("$and")) { return createAndTransform(operation); } else if (operation.hasOwnProperty("$or")) { return createOrTransform(operation); } else if (operation.hasOwnProperty("$not")) { return createNotTransform(operation); } else if (operation.hasOwnProperty("$merge")) { return createMergeTransform(operation); } return operation; } //# sourceMappingURL=modifyOperationObject.cjs.map