"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.defaultOperators = void 0; const comparable_1 = require("../drop/comparable"); const underscore_1 = require("../util/underscore"); const boolean_1 = require("../render/boolean"); exports.defaultOperators = { '==': (l, r) => { if ((0, comparable_1.isComparable)(l)) return l.equals(r); if ((0, comparable_1.isComparable)(r)) return r.equals(l); return (0, underscore_1.toValue)(l) === (0, underscore_1.toValue)(r); }, '!=': (l, r) => { if ((0, comparable_1.isComparable)(l)) return !l.equals(r); if ((0, comparable_1.isComparable)(r)) return !r.equals(l); return (0, underscore_1.toValue)(l) !== (0, underscore_1.toValue)(r); }, '>': (l, r) => { if ((0, comparable_1.isComparable)(l)) return l.gt(r); if ((0, comparable_1.isComparable)(r)) return r.lt(l); return (0, underscore_1.toValue)(l) > (0, underscore_1.toValue)(r); }, '<': (l, r) => { if ((0, comparable_1.isComparable)(l)) return l.lt(r); if ((0, comparable_1.isComparable)(r)) return r.gt(l); return (0, underscore_1.toValue)(l) < (0, underscore_1.toValue)(r); }, '>=': (l, r) => { if ((0, comparable_1.isComparable)(l)) return l.geq(r); if ((0, comparable_1.isComparable)(r)) return r.leq(l); return (0, underscore_1.toValue)(l) >= (0, underscore_1.toValue)(r); }, '<=': (l, r) => { if ((0, comparable_1.isComparable)(l)) return l.leq(r); if ((0, comparable_1.isComparable)(r)) return r.geq(l); return (0, underscore_1.toValue)(l) <= (0, underscore_1.toValue)(r); }, 'contains': (l, r) => { l = (0, underscore_1.toValue)(l); r = (0, underscore_1.toValue)(r); return l && (0, underscore_1.isFunction)(l.indexOf) ? l.indexOf(r) > -1 : false; }, 'and': (l, r, ctx) => (0, boolean_1.isTruthy)((0, underscore_1.toValue)(l), ctx) && (0, boolean_1.isTruthy)((0, underscore_1.toValue)(r), ctx), 'or': (l, r, ctx) => (0, boolean_1.isTruthy)((0, underscore_1.toValue)(l), ctx) || (0, boolean_1.isTruthy)((0, underscore_1.toValue)(r), ctx) }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGlxdWlkanMvcmVuZGVyL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFpRDtBQUVqRCxtREFBd0Q7QUFDeEQsK0NBQTRDO0FBTS9CLFFBQUEsZ0JBQWdCLEdBQWM7SUFDekMsSUFBSSxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFO1FBQ3ZCLElBQUksSUFBQSx5QkFBWSxFQUFDLENBQUMsQ0FBQztZQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUN2QyxJQUFJLElBQUEseUJBQVksRUFBQyxDQUFDLENBQUM7WUFBRSxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDdkMsT0FBTyxJQUFBLG9CQUFPLEVBQUMsQ0FBQyxDQUFDLEtBQUssSUFBQSxvQkFBTyxFQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFDRCxJQUFJLEVBQUUsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUU7UUFDdkIsSUFBSSxJQUFBLHlCQUFZLEVBQUMsQ0FBQyxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDeEMsSUFBSSxJQUFBLHlCQUFZLEVBQUMsQ0FBQyxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDeEMsT0FBTyxJQUFBLG9CQUFPLEVBQUMsQ0FBQyxDQUFDLEtBQUssSUFBQSxvQkFBTyxFQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ2xDLENBQUM7SUFDRCxHQUFHLEVBQUUsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUU7UUFDdEIsSUFBSSxJQUFBLHlCQUFZLEVBQUMsQ0FBQyxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENB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