UNPKG

@prodigyems/graphql-sequelize

Version:

GraphQL & Relay for MySQL & Postgres via Sequelize

38 lines (33 loc) 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = argsToFindOptions; var _replaceWhereOperators = require("./replaceWhereOperators"); function argsToFindOptions(args, filterableAttributes, filterableAttributesFields, allowedModels, requiredAttributes) { var result = {}; if (args) { Object.keys(args).forEach(function (key) { if (typeof args[key] !== "undefined") { if (key === "limit") { result.limit = parseInt(args[key], 10); } else if (key === "offset") { result.offset = parseInt(args[key], 10); } else if (key === "order") { if (args[key].indexOf("reverse:") === 0) { result.order = [[args[key].substring(8), "DESC"]]; } else { result.order = [[args[key], "ASC"]]; } } else if (key === "where") { // setup where result.where = (0, _replaceWhereOperators.replaceWhereOperators)(args.where, filterableAttributes, filterableAttributesFields, allowedModels, requiredAttributes); } else if (~filterableAttributes.indexOf(key)) { result.where = result.where || {}; result.where[key] = args[key]; } } }); } return result; }