0.1.4 • Published 3 years ago

@megaswords/cache-manager v0.1.4

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

XMS API PAGE BUILDER

Setup

Add the dependency

yarn add @megaswords/cache-manager

How to install module

Necessary Env variables

OptionDescription
REDIS_HOSTRedis Host (default: 127.0.0.1)
REDIS_PORTRedis Port (default: 6379)
REDIS_PASSWORDRedis Password (default: '')
REDIS_PREFIXRedis prefix for cache key (default: '')
REDIS_ENABLESet to 1 to enable Redis (default: disabled)

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 CacheResolvers, mutations as CacheMutations } from '@megaswords/cache-manager';

const resolversArray = loadFilesSync(path.join(__dirname, './entities/**/resolver.ts'));
resolversArray.push(CacheResolvers);
const Queries = mergeResolvers(resolversArray);

const mutationsArray = loadFilesSync(path.join(__dirname, './entities/**/mutation.ts'));
mutationsArray.push(CacheMutations);
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 CacheTypes } from '@megaswords/cache-manager';

const typesArray = loadFilesSync(path.join(__dirname, './entities/**/type.graphql'));
typesArray.push(CacheTypes);
export const typeDefs = mergeTypeDefs(typesArray);

Available class

// Graphql schema/resolver
export { resolvers, mutations, types, redis } from '@megaswords/cache-manager';