UNPKG

json-processing

Version:

JSON Processing Tool

16 lines (15 loc) 727 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const jsonpath_1 = __importDefault(require("jsonpath")); const lodash_1 = __importDefault(require("lodash")); exports.default = (path, mapper = (v) => v) => (object) => process(path, object, mapper); function process(path, object, mapper) { if (lodash_1.default.isFunction(path)) return path(object); if (lodash_1.default.isObject(path)) return lodash_1.default.mapValues(path, entry => process(entry, object, mapper)); return mapper(jsonpath_1.default.value(object, `$${path}`)); }