/opt/canhelp/node_modules/kysely/dist/cjs/parser
NameSizeModeActions
binary-operation-parser.d.ts22100644editdlrm
binary-operation-parser.js40300644editdlrm
coalesce-parser.d.ts21780644editdlrm
coalesce-parser.js770644editdlrm
collate-parser.d.ts710644editdlrm
collate-parser.js770644editdlrm
data-type-parser.d.ts3730644editdlrm
data-type-parser.js6850644editdlrm
default-value-parser.d.ts3040644editdlrm
default-value-parser.js5160644editdlrm
delete-from-parser.d.ts8200644editdlrm
delete-from-parser.js770644editdlrm
expression-parser.d.ts16310644editdlrm
expression-parser.js14530644editdlrm
fetch-parser.d.ts1800644editdlrm
fetch-parser.js7180644editdlrm
group-by-parser.d.ts6340644editdlrm
group-by-parser.js6980644editdlrm
identifier-parser.d.ts1770644editdlrm
identifier-parser.js8120644editdlrm
insert-values-parser.d.ts11750644editdlrm
insert-values-parser.js30290644editdlrm
join-parser.d.ts9070644editdlrm
join-parser.js13360644editdlrm
merge-into-parser.d.ts6000644editdlrm
merge-into-parser.js770644editdlrm
merge-parser.d.ts5700644editdlrm
merge-parser.js14740644editdlrm
on-commit-action-parse.d.ts1630644editdlrm
on-commit-action-parse.js4060644editdlrm
on-modify-action-parser.d.ts1890644editdlrm
on-modify-action-parser.js4360644editdlrm
order-by-parser.d.ts17020644editdlrm
order-by-parser.js33230644editdlrm
parse-utils.d.ts7260644editdlrm
parse-utils.js18480644editdlrm
partition-by-parser.d.ts6120644editdlrm
partition-by-parser.js4640644editdlrm
reference-parser.d.ts36160644editdlrm
reference-parser.js48160644editdlrm
returning-parser.d.ts9260644editdlrm
returning-parser.js770644editdlrm
savepoint-parser.d.ts5350644editdlrm
savepoint-parser.js5620644editdlrm
select-from-parser.d.ts7250644editdlrm
select-from-parser.js770644editdlrm
select-parser.d.ts42300644editdlrm
select-parser.js21730644editdlrm
set-operation-parser.d.ts5650644editdlrm
set-operation-parser.js8850644editdlrm
table-parser.d.ts26920644editdlrm
table-parser.js20290644editdlrm
top-parser.d.ts1720644editdlrm
top-parser.js8340644editdlrm
tuple-parser.d.ts20940644editdlrm
tuple-parser.js770644editdlrm
unary-operation-parser.d.ts6970644editdlrm
unary-operation-parser.js8350644editdlrm
update-parser.d.ts9040644editdlrm
update-parser.js770644editdlrm
update-set-parser.d.ts14840644editdlrm
update-set-parser.js13880644editdlrm
value-parser.d.ts13320644editdlrm
value-parser.js17910644editdlrm
with-parser.d.ts30020644editdlrm
with-parser.js17670644editdlrm
Edit: /opt/canhelp/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js (4030B)
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseValueBinaryOperationOrExpression = parseValueBinaryOperationOrExpression; exports.parseValueBinaryOperation = parseValueBinaryOperation; exports.parseReferentialBinaryOperation = parseReferentialBinaryOperation; exports.parseFilterObject = parseFilterObject; exports.parseFilterList = parseFilterList; const binary_operation_node_js_1 = require("../operation-node/binary-operation-node.js"); const object_utils_js_1 = require("../util/object-utils.js"); const operation_node_source_js_1 = require("../operation-node/operation-node-source.js"); const operator_node_js_1 = require("../operation-node/operator-node.js"); const reference_parser_js_1 = require("./reference-parser.js"); const value_parser_js_1 = require("./value-parser.js"); const value_node_js_1 = require("../operation-node/value-node.js"); const and_node_js_1 = require("../operation-node/and-node.js"); const parens_node_js_1 = require("../operation-node/parens-node.js"); const or_node_js_1 = require("../operation-node/or-node.js"); function parseValueBinaryOperationOrExpression(args) { if (args.length === 3) { return parseValueBinaryOperation(args[0], args[1], args[2]); } else if (args.length === 1) { return (0, value_parser_js_1.parseValueExpression)(args[0]); } throw new Error(`invalid arguments: ${JSON.stringify(args)}`); } function parseValueBinaryOperation(left, operator, right) { if (isIsOperator(operator) && needsIsOperator(right)) { return binary_operation_node_js_1.BinaryOperationNode.create((0, reference_parser_js_1.parseReferenceExpression)(left), parseOperator(operator), value_node_js_1.ValueNode.createImmediate(right)); } return binary_operation_node_js_1.BinaryOperationNode.create((0, reference_parser_js_1.parseReferenceExpression)(left), parseOperator(operator), (0, value_parser_js_1.parseValueExpressionOrList)(right)); } function parseReferentialBinaryOperation(left, operator, right) { return binary_operation_node_js_1.BinaryOperationNode.create((0, reference_parser_js_1.parseReferenceExpression)(left), parseOperator(operator), (0, reference_parser_js_1.parseReferenceExpression)(right)); } function parseFilterObject(obj, combinator) { return parseFilterList(Object.entries(obj) .filter(([, v]) => !(0, object_utils_js_1.isUndefined)(v)) .map(([k, v]) => parseValueBinaryOperation(k, needsIsOperator(v) ? 'is' : '=', v)), combinator); } function parseFilterList(list, combinator, withParens = true) { const combine = combinator === 'and' ? and_node_js_1.AndNode.create : or_node_js_1.OrNode.create; if (list.length === 0) { return binary_operation_node_js_1.BinaryOperationNode.create(value_node_js_1.ValueNode.createImmediate(1), operator_node_js_1.OperatorNode.create('='), value_node_js_1.ValueNode.createImmediate(combinator === 'and' ? 1 : 0)); } let node = toOperationNode(list[0]); for (let i = 1; i < list.length; ++i) { node = combine(node, toOperationNode(list[i])); } if (list.length > 1 && withParens) { return parens_node_js_1.ParensNode.create(node); } return node; } function isIsOperator(operator) { return operator === 'is' || operator === 'is not'; } function needsIsOperator(value) { return (0, object_utils_js_1.isNull)(value) || (0, object_utils_js_1.isBoolean)(value); } function parseOperator(operator) { if ((0, object_utils_js_1.isString)(operator) && operator_node_js_1.OPERATORS.includes(operator)) { return operator_node_js_1.OperatorNode.create(operator); } if ((0, operation_node_source_js_1.isOperationNodeSource)(operator)) { return operator.toOperationNode(); } throw new Error(`invalid operator ${JSON.stringify(operator)}`); } function toOperationNode(nodeOrSource) { return (0, operation_node_source_js_1.isOperationNodeSource)(nodeOrSource) ? nodeOrSource.toOperationNode() : nodeOrSource; }