UNPKG

@userlab/dx

Version:

Build efficient GraphQL backend

42 lines (41 loc) 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UserQuery = exports.UserModel = exports.UserType = void 0; var graphql_1 = require("graphql"); var uuid_1 = require("uuid"); var dx_1 = require("@userlab/dx"); var role_1 = require("../role"); var fields = { id: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLID), defaultValue: uuid_1.v4, }, name: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLString), }, roleId: { type: graphql_1.GraphQLID, sqlColumn: 'role_id', }, isDisabled: { type: new graphql_1.GraphQLNonNull(graphql_1.GraphQLBoolean), sqlColumn: 'is_disabled', defaultValue: false, }, }; var relations = function () { return ({ role: { type: role_1.RoleType, sqlJoin: function (user, role) { return user + ".role_id = " + role + ".id"; }, }, }); }; var _a = dx_1.getQuery({ name: 'User', table: 'sys_user', uniqueKey: 'id', fields: fields, relations: relations, }), UserType = _a.objectType, UserModel = _a.model, user = _a.get, users = _a.connection; exports.UserType = UserType; exports.UserModel = UserModel; exports.UserQuery = { user: user, users: users };