UNPKG

@qrvey/formula-lang

Version:

QFormula support for qrvey projects

55 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AND = void 0; const constants_1 = require("../constants"); const isBooleanExpression_1 = require("../utils/isBooleanExpression"); /** * `AND` Returns true if all expressions are truthy; otherwise, it will return false. */ exports.AND = { identifier: 'AND', recursiveStartIn: 1, parameters: [ { identifier: 'LOGICAL_EXPRESSION', optional: false, expectedPrimitive: constants_1.AST_PRIMITIVES.BOOLEAN, validator: [isBooleanExpression_1.isBooleanExpression], }, { identifier: 'LOGICAL_EXPRESSION', optional: false, expectedPrimitive: constants_1.AST_PRIMITIVES.BOOLEAN, validator: [isBooleanExpression_1.isBooleanExpression], }, { identifier: 'LOGICAL_EXPRESSION', optional: true, expectedPrimitive: constants_1.AST_PRIMITIVES.BOOLEAN, validator: [isBooleanExpression_1.isBooleanExpression], }, ], transpiler: { elasticsearch, snowflake, redshift, postgresql, }, primitiveResult: constants_1.AST_PRIMITIVES.BOOLEAN, }; function elasticsearch(...args) { return `(${args.join(' && ')})`; } function sql(...args) { return `(${args.join(' AND ')})`; } function snowflake(...args) { return sql(...args); } function redshift(...args) { return sql(...args); } function postgresql(...args) { return sql(...args); } //# sourceMappingURL=and.js.map