@ax2/xms-user-role
v0.6.0
Published
## Setup
Downloads
23
Readme
XMS API PAGE BUILDER
Setup
Add the dependency
yarn add @ax2/xms-user-role
How to install module
Merge resolvers and mutations into your graphql api src/graphql/resolvers.ts
Example:
import { GraphQLUpload } from 'apollo-upload-server';
import * as path from 'path';
import { mergeResolvers } from '@graphql-tools/merge';
import { loadFilesSync } from '@graphql-tools/load-files';
import { resolvers as UserRoleResolvers, mutations as UserRoleMutations } from '@ax2/xms-user-role';
const resolversArray = loadFilesSync(path.join(__dirname, './entities/**/resolver.ts'));
resolversArray.push(UserRoleResolvers);
const Queries = mergeResolvers(resolversArray);
const mutationsArray = loadFilesSync(path.join(__dirname, './entities/**/mutation.ts'));
mutationsArray.push(UserRoleMutations);
const Mutations = mergeResolvers(mutationsArray);
export const resolvers = {
...Queries,
...Mutations,
Upload: GraphQLUpload,
};
Merge the graphql type into your api src/graphql/type.ts
Example:
import * as path from 'path';
import { mergeTypeDefs } from '@graphql-tools/merge';
import { loadFilesSync } from '@graphql-tools/load-files';
import { types as UserRoleTypes } from '@ax2/xms-user-role';
const typesArray = loadFilesSync(path.join(__dirname, './entities/**/type.graphql'));
typesArray.push(UserRoleTypes);
export const typeDefs = mergeTypeDefs(typesArray);
Use package migrations src/graphql/type.ts
Example:
import * as dotenv from 'dotenv';
import { MigrateHelper } from '@ax2/xms-api-core';
dotenv.config();
// MySQL connection pool (set up on app initialisation)
const config = {};
const packages = [
'@ax2/xms-user-role'
];
MigrateHelper(config, `${__dirname}/../migrations/`, packages);
How to use migration (run from root folder of your api)
See quip link
yarn migrate up 1 --all
yarn migrate up 1 --package @ax2/xms-user-role
yarn migrate down 1 --package @ax2/xms-user-role
yarn migrate add migration create_table_mytable --package @ax2/xms-user-role
Available class
// Models
export { User, Role } from '@ax2/xms-user-role';
// Service
export { UserService } from '@ax2/xms-user-role';
// Graphql schema/resolver
export { resolvers, mutations, types } from '@ax2/xms-user-role';
// Helpers function
import { executeMigration } from '@ax2/xms-user-role';