UNPKG

@thisisagile/easy

Version:

Straightforward library for building domain-driven microservice architectures

80 lines (79 loc) 2.39 kB
import { isValid } from "../chunk-XAIHCZT4.mjs"; import "../chunk-OFGI5FLG.mjs"; import "../chunk-NCEWAKOZ.mjs"; import "../chunk-Q3WMGUO2.mjs"; import "../chunk-5HENJTR6.mjs"; import "../chunk-FKZ4MOTX.mjs"; import "../chunk-WSBULPUZ.mjs"; import "../chunk-JVDKV5HE.mjs"; import "../chunk-WTFW6DLP.mjs"; import "../chunk-NDCIZJXB.mjs"; import "../chunk-MCCIBDEH.mjs"; import "../chunk-H2762RTS.mjs"; import "../chunk-A7C3XND3.mjs"; import "../chunk-JSON7A4X.mjs"; import { toArray } from "../chunk-CO2AFYVD.mjs"; import "../chunk-BDA5LB4S.mjs"; import { ofGet } from "../chunk-SJGQU3OG.mjs"; import "../chunk-ZHXKBOK2.mjs"; import { on } from "../chunk-ZPNFXK7Y.mjs"; import "../chunk-DXQSIBC7.mjs"; import "../chunk-PIRWVOO2.mjs"; import { isDefined, isEmpty, isIn, isObject, isString, isTrue } from "../chunk-DEJ7A5PY.mjs"; import "../chunk-4N72FQFX.mjs"; // src/types/Parser.ts var Parser = class { constructor(value, valid = true) { this.value = value; this.valid = valid; } if = { equals: (pred) => this.evaluate(isTrue, pred), empty: (pred) => this.evaluate(isEmpty, pred), defined: (pred) => this.evaluate(isDefined, pred), valid: (pred) => this.evaluate(isValid, pred), in: (...items) => this.evaluate(() => isIn(this.value, toArray(...items))), is: { object: (pred) => this.evaluate(isObject, pred), string: (pred) => this.evaluate(isString, pred), instance: (c, pred) => this.evaluate(() => this.value instanceof c, pred) }, not: { empty: (pred) => this.evaluateNot(isEmpty, pred), defined: (pred) => this.evaluateNot(isDefined, pred), valid: (pred) => this.evaluateNot(isValid, pred), isObject: (pred) => this.evaluateNot(isObject, pred), in: (...items) => this.evaluate(() => !isIn(this.value, toArray(...items))), is: { object: (pred) => this.evaluateNot(isObject, pred), string: (pred) => this.evaluateNot(isString, pred), instance: (c, pred) => this.evaluate(() => !(this.value instanceof c), pred) } } }; evaluate(meta, pred) { return on(this, (t) => t.valid = ofGet(meta, pred ? ofGet(pred, this.value) : this.value)); } evaluateNot(meta, pred) { return on(this, (t) => t.valid = !ofGet(meta, pred ? ofGet(pred, this.value) : this.value)); } }; export { Parser }; //# sourceMappingURL=Parser.mjs.map