UNPKG

@allgemein/expressions

Version:
32 lines 1.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LikeDesc = void 0; exports.Like = Like; const _ = require("lodash"); const KeyDesc_1 = require("./KeyDesc"); const OpDesc_1 = require("./OpDesc"); class LikeDesc extends OpDesc_1.OpDesc { constructor(key, value) { super(key, value); this.type = 'like'; } lookup(source) { const value = this.value instanceof KeyDesc_1.KeyDesc ? source[this.value.key] : _.clone(this.value.value); const key = this.key; return function (target) { return (new RegExp(value.replace('%%', '.*'))).test(target[key]); }; } for(source, keyMap = {}) { const value = this.value instanceof KeyDesc_1.KeyDesc ? source[this.value.key] : _.clone(this.value.value); const key = _.get(keyMap, this.key, this.key); let c = {}; c[key] = value; return c; } } exports.LikeDesc = LikeDesc; function Like(key, value) { return new LikeDesc(key, value); } //# sourceMappingURL=LikeDesc.js.map