UNPKG

@foxpage/foxpage-core

Version:

foxpage core

28 lines (27 loc) 807 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.executeObject = void 0; const lodash_1 = require("lodash"); const string_1 = require("./string"); /** * parse object * * @export * @param {*} val * @param {Record<string, any>} values * @param {string[]} messages * @return {*} {*} */ function executeObject(val, values, messages = []) { if (typeof val === 'string') { return (0, string_1.executeString)(val, values, messages); } else if ((0, lodash_1.isPlainObject)(val)) { return (0, lodash_1.mapValues)(val, childVar => executeObject(childVar, values, messages)); } else if (Array.isArray(val)) { return val.map(v => executeObject(v, values, messages)); } return val; } exports.executeObject = executeObject;