UNPKG

jsonblade

Version:

A powerful and modular JSON template engine with extensible filters

47 lines 1.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.objectFilters = void 0; exports.registerObjectFilters = registerObjectFilters; const filter_registry_1 = require("../filter-registry"); const objectFilters = { json: (v) => JSON.stringify(v), keys: (v) => { if (v && typeof v === "object" && !Array.isArray(v)) { return Object.keys(v); } return []; }, values: (v) => { if (v && typeof v === "object" && !Array.isArray(v)) { return Object.values(v); } return []; }, get: (v, ...args) => { const key = args[0]; if (v && typeof v === "object" && key) { return v[key]; } return null; }, has: (v, ...args) => { const key = args[0]; if (v && typeof v === "object" && key) { return key in v; } return false; }, entries: (v) => { if (v && typeof v === "object" && !Array.isArray(v)) { return Object.entries(v); } return []; }, }; exports.objectFilters = objectFilters; function registerObjectFilters() { Object.entries(objectFilters).forEach(([name, fn]) => { (0, filter_registry_1.registerFilter)(name, fn); }); } //# sourceMappingURL=object-filters.js.map