graphql-config
Advanced tools
Comparing version 0.0.0-experimental-bd1eb44.c3e to 0.0.0-experimental-df1cdf4.81c
@@ -6,3 +6,3 @@ import { LoadersRegistry } from './loaders'; | ||
loaders: { | ||
schema: Pick<LoadersRegistry, 'register' | 'use'>; | ||
schema: Pick<LoadersRegistry, 'register'>; | ||
documents: Pick<LoadersRegistry, 'register'>; | ||
@@ -9,0 +9,0 @@ }; |
@@ -6,4 +6,2 @@ import { IGraphQLConfig, IGraphQLProject, IGraphQLProjects, IGraphQLProjectLegacy } from '../types'; | ||
export declare function isLegacyProjectConfig(config: IGraphQLConfig): config is IGraphQLProjectLegacy; | ||
export declare type MiddlewareFn<T> = (input: T) => T; | ||
export declare function useMiddleware<T>(fns: Array<MiddlewareFn<T>>): (input: T) => T; | ||
//# sourceMappingURL=utils.d.ts.map |
@@ -385,10 +385,2 @@ 'use strict'; | ||
} | ||
function useMiddleware(fns) { | ||
return function (input) { | ||
if (fns.length) { | ||
return fns.reduce(function (obj, cb) { return cb(obj); }, input); | ||
} | ||
return input; | ||
}; | ||
} | ||
@@ -575,3 +567,2 @@ var GraphQLProjectConfig = /** @class */ (function () { | ||
this._loaders = []; | ||
this._middlewares = []; | ||
this.cwd = cwd; | ||
@@ -584,5 +575,2 @@ } | ||
}; | ||
LoadersRegistry.prototype.use = function (middleware) { | ||
this._middlewares.push(middleware); | ||
}; | ||
LoadersRegistry.prototype.loadTypeDefs = function (pointer, options) { | ||
@@ -610,13 +598,4 @@ return __awaiter(this, void 0, void 0, function () { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var _a; | ||
return __generator(this, function (_b) { | ||
switch (_b.label) { | ||
case 0: | ||
if (!this._middlewares.length) { | ||
return [2 /*return*/, core.loadSchema(pointer, this.createOptions(options))]; | ||
} | ||
_a = this.buildSchemaFromSources; | ||
return [4 /*yield*/, core.loadTypedefs(pointer, __assign({ filterKinds: core.OPERATION_KINDS }, this.createOptions(options)))]; | ||
case 1: return [2 /*return*/, _a.apply(this, [_b.sent()])]; | ||
} | ||
return __generator(this, function (_a) { | ||
return [2 /*return*/, core.loadSchema(pointer, this.createOptions(options))]; | ||
}); | ||
@@ -626,6 +605,3 @@ }); | ||
LoadersRegistry.prototype.loadSchemaSync = function (pointer, options) { | ||
if (!this._middlewares.length) { | ||
return core.loadSchemaSync(pointer, this.createOptions(options)); | ||
} | ||
return this.buildSchemaFromSources(core.loadTypedefsSync(pointer, __assign({ filterKinds: core.OPERATION_KINDS }, this.createOptions(options)))); | ||
return core.loadSchemaSync(pointer, this.createOptions(options)); | ||
}; | ||
@@ -635,7 +611,2 @@ LoadersRegistry.prototype.createOptions = function (options) { | ||
}; | ||
LoadersRegistry.prototype.buildSchemaFromSources = function (sources) { | ||
var documents = sources.map(function (source) { return source.document; }); | ||
var document = schemaMerging.mergeTypeDefs(documents); | ||
return graphql.buildASTSchema(useMiddleware(this._middlewares)(document)); | ||
}; | ||
return LoadersRegistry; | ||
@@ -642,0 +613,0 @@ }()); |
import { normalize, isAbsolute, relative, dirname } from 'path'; | ||
import { parse, print, buildASTSchema } from 'graphql'; | ||
import { parse, print } from 'graphql'; | ||
import { mergeTypeDefs } from '@graphql-toolkit/schema-merging'; | ||
@@ -379,10 +379,2 @@ import minimatch from 'minimatch'; | ||
} | ||
function useMiddleware(fns) { | ||
return function (input) { | ||
if (fns.length) { | ||
return fns.reduce(function (obj, cb) { return cb(obj); }, input); | ||
} | ||
return input; | ||
}; | ||
} | ||
@@ -569,3 +561,2 @@ var GraphQLProjectConfig = /** @class */ (function () { | ||
this._loaders = []; | ||
this._middlewares = []; | ||
this.cwd = cwd; | ||
@@ -578,5 +569,2 @@ } | ||
}; | ||
LoadersRegistry.prototype.use = function (middleware) { | ||
this._middlewares.push(middleware); | ||
}; | ||
LoadersRegistry.prototype.loadTypeDefs = function (pointer, options) { | ||
@@ -604,13 +592,4 @@ return __awaiter(this, void 0, void 0, function () { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var _a; | ||
return __generator(this, function (_b) { | ||
switch (_b.label) { | ||
case 0: | ||
if (!this._middlewares.length) { | ||
return [2 /*return*/, loadSchema(pointer, this.createOptions(options))]; | ||
} | ||
_a = this.buildSchemaFromSources; | ||
return [4 /*yield*/, loadTypedefs(pointer, __assign({ filterKinds: OPERATION_KINDS }, this.createOptions(options)))]; | ||
case 1: return [2 /*return*/, _a.apply(this, [_b.sent()])]; | ||
} | ||
return __generator(this, function (_a) { | ||
return [2 /*return*/, loadSchema(pointer, this.createOptions(options))]; | ||
}); | ||
@@ -620,6 +599,3 @@ }); | ||
LoadersRegistry.prototype.loadSchemaSync = function (pointer, options) { | ||
if (!this._middlewares.length) { | ||
return loadSchemaSync(pointer, this.createOptions(options)); | ||
} | ||
return this.buildSchemaFromSources(loadTypedefsSync(pointer, __assign({ filterKinds: OPERATION_KINDS }, this.createOptions(options)))); | ||
return loadSchemaSync(pointer, this.createOptions(options)); | ||
}; | ||
@@ -629,7 +605,2 @@ LoadersRegistry.prototype.createOptions = function (options) { | ||
}; | ||
LoadersRegistry.prototype.buildSchemaFromSources = function (sources) { | ||
var documents = sources.map(function (source) { return source.document; }); | ||
var document = mergeTypeDefs(documents); | ||
return buildASTSchema(useMiddleware(this._middlewares)(document)); | ||
}; | ||
return LoadersRegistry; | ||
@@ -636,0 +607,0 @@ }()); |
import { Source, Loader } from '@graphql-toolkit/common'; | ||
import { UnnormalizedTypeDefPointer, LoadTypedefsOptions } from '@graphql-toolkit/core'; | ||
import { GraphQLSchema, DocumentNode } from 'graphql'; | ||
import { MiddlewareFn } from './helpers/utils'; | ||
import { GraphQLSchema } from 'graphql'; | ||
declare type Pointer = UnnormalizedTypeDefPointer | UnnormalizedTypeDefPointer[]; | ||
@@ -9,3 +8,2 @@ declare type Options = Partial<LoadTypedefsOptions>; | ||
private _loaders; | ||
private _middlewares; | ||
private readonly cwd; | ||
@@ -16,3 +14,2 @@ constructor({ cwd }: { | ||
register(loader: Loader): void; | ||
use(middleware: MiddlewareFn<DocumentNode>): void; | ||
loadTypeDefs(pointer: Pointer, options?: Options): Promise<Source[]>; | ||
@@ -25,5 +22,4 @@ loadTypeDefsSync(pointer: Pointer, options?: Options): Source[]; | ||
private createOptions; | ||
private buildSchemaFromSources; | ||
} | ||
export {}; | ||
//# sourceMappingURL=loaders.d.ts.map |
{ | ||
"name": "graphql-config", | ||
"version": "0.0.0-experimental-bd1eb44.c3e", | ||
"version": "0.0.0-experimental-df1cdf4.81c", | ||
"description": "The easiest way to configure your development environment with your GraphQL schema (supported by most tools, editors & IDEs)", | ||
@@ -31,8 +31,8 @@ "peerDependencies": { | ||
"dependencies": { | ||
"@graphql-toolkit/common": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/core": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/graphql-file-loader": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/json-file-loader": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/schema-merging": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/url-loader": "0.9.10-alpha-661ca91.15+661ca91", | ||
"@graphql-toolkit/common": "0.9.10-alpha-154620d.14+b7764d5", | ||
"@graphql-toolkit/core": "0.9.10-alpha-154620d.14+b7764d5", | ||
"@graphql-toolkit/graphql-file-loader": "0.9.10-alpha-154620d.14+b7764d5", | ||
"@graphql-toolkit/json-file-loader": "0.9.10-alpha-154620d.14+b7764d5", | ||
"@graphql-toolkit/schema-merging": "0.9.10-alpha-154620d.14+b7764d5", | ||
"@graphql-toolkit/url-loader": "0.9.10-alpha-154620d.14+b7764d5", | ||
"cosmiconfig": "6.0.0", | ||
@@ -39,0 +39,0 @@ "globby": "11.0.0", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
89052
1874
Updated@graphql-toolkit/common@0.9.10-alpha-154620d.14+b7764d5
Updated@graphql-toolkit/core@0.9.10-alpha-154620d.14+b7764d5
Updated@graphql-toolkit/graphql-file-loader@0.9.10-alpha-154620d.14+b7764d5
Updated@graphql-toolkit/json-file-loader@0.9.10-alpha-154620d.14+b7764d5
Updated@graphql-toolkit/schema-merging@0.9.10-alpha-154620d.14+b7764d5
Updated@graphql-toolkit/url-loader@0.9.10-alpha-154620d.14+b7764d5