UNPKG

@clipboard-health/rules-engine

Version:

A pure functional rules engine to keep logic-dense code simple, reliable, understandable, and explainable.

17 lines 506 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.all = all; /** * Run all rules that return true for `runIf`. * * @param rules The rules to run. */ function all(...rules) { return { runIf: (input) => rules.some((rule) => rule.runIf(input)), run: (context) => rules .filter((rule) => rule.runIf(context.input)) .reduce((previousContext, rule) => rule.run(previousContext), context), }; } //# sourceMappingURL=all.js.map