UNPKG

objection

Version:
30 lines (23 loc) 768 B
'use strict'; const jsonApi = require('./postgresJsonApi'); const { ObjectionToKnexConvertingOperation } = require('../ObjectionToKnexConvertingOperation'); class WhereJsonPostgresOperation extends ObjectionToKnexConvertingOperation { onBuildKnex(knexBuilder, builder) { const args = this.getKnexArgs(builder); const rawArgs = jsonApi.whereJsonbRefOnLeftJsonbValOrRefOnRightRawQueryParams( args[0], this.opt.operator, args[1], this.opt.prefix, ); if (this.opt.bool === 'or') { knexBuilder = knexBuilder.orWhereRaw.apply(knexBuilder, rawArgs); } else { knexBuilder = knexBuilder.whereRaw.apply(knexBuilder, rawArgs); } return knexBuilder; } } module.exports = { WhereJsonPostgresOperation, };