@apollo/gateway 2.0.0 → 2.0.2-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/datasources/RemoteGraphQLDataSource.js +2 -2
- package/dist/datasources/RemoteGraphQLDataSource.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/schema-helper/addExtensions.d.ts +3 -0
- package/dist/schema-helper/addExtensions.d.ts.map +1 -0
- package/dist/schema-helper/addExtensions.js +20 -0
- package/dist/schema-helper/addExtensions.js.map +1 -0
- package/dist/typings/graphql.d.ts +34 -0
- package/dist/typings/graphql.d.ts.map +1 -0
- package/dist/{schema-helper/resolverMap.js → typings/graphql.js} +1 -1
- package/dist/typings/graphql.js.map +1 -0
- package/package.json +9 -7
- package/src/__tests__/executeQueryPlan.test.ts +4 -1
- package/src/__tests__/execution-utils.ts +2 -2
- package/src/__tests__/gateway/endToEnd.test.ts +1 -1
- package/src/__tests__/gateway/extensions.test.ts +37 -0
- package/src/__tests__/gateway/lifecycle-hooks.test.ts +1 -1
- package/src/__tests__/gateway/reporting.test.ts +1 -1
- package/src/__tests__/gateway/supergraphSdl.test.ts +1 -1
- package/src/datasources/RemoteGraphQLDataSource.ts +2 -2
- package/src/datasources/__tests__/LocalGraphQLDataSource.test.ts +1 -1
- package/src/index.ts +12 -6
- package/src/schema-helper/__tests__/addExtensions.test.ts +11 -0
- package/src/schema-helper/addExtensions.ts +17 -0
- package/src/typings/graphql.ts +43 -0
- package/dist/cache.d.ts +0 -18
- package/dist/cache.d.ts.map +0 -1
- package/dist/cache.js +0 -46
- package/dist/cache.js.map +0 -1
- package/dist/schema-helper/addResolversToSchema.d.ts +0 -4
- package/dist/schema-helper/addResolversToSchema.d.ts.map +0 -1
- package/dist/schema-helper/addResolversToSchema.js +0 -62
- package/dist/schema-helper/addResolversToSchema.js.map +0 -1
- package/dist/schema-helper/error.d.ts +0 -6
- package/dist/schema-helper/error.d.ts.map +0 -1
- package/dist/schema-helper/error.js +0 -14
- package/dist/schema-helper/error.js.map +0 -1
- package/dist/schema-helper/index.d.ts +0 -4
- package/dist/schema-helper/index.d.ts.map +0 -1
- package/dist/schema-helper/index.js +0 -20
- package/dist/schema-helper/index.js.map +0 -1
- package/dist/schema-helper/resolverMap.d.ts +0 -16
- package/dist/schema-helper/resolverMap.d.ts.map +0 -1
- package/dist/schema-helper/resolverMap.js.map +0 -1
- package/dist/utilities/createHash.d.ts +0 -2
- package/dist/utilities/createHash.d.ts.map +0 -1
- package/dist/utilities/createHash.js +0 -15
- package/dist/utilities/createHash.js.map +0 -1
- package/dist/utilities/isNodeLike.d.ts +0 -3
- package/dist/utilities/isNodeLike.d.ts.map +0 -1
- package/dist/utilities/isNodeLike.js +0 -8
- package/dist/utilities/isNodeLike.js.map +0 -1
- package/src/cache.ts +0 -66
- package/src/schema-helper/addResolversToSchema.ts +0 -83
- package/src/schema-helper/error.ts +0 -11
- package/src/schema-helper/index.ts +0 -3
- package/src/schema-helper/resolverMap.ts +0 -23
- package/src/utilities/createHash.ts +0 -10
- package/src/utilities/isNodeLike.ts +0 -11
|
@@ -9,7 +9,7 @@ const apollo_server_errors_1 = require("apollo-server-errors");
|
|
|
9
9
|
const apollo_server_env_1 = require("apollo-server-env");
|
|
10
10
|
const predicates_1 = require("../utilities/predicates");
|
|
11
11
|
const types_1 = require("./types");
|
|
12
|
-
const
|
|
12
|
+
const utils_createhash_1 = require("@apollo/utils.createhash");
|
|
13
13
|
const parseCacheControlHeader_1 = require("./parseCacheControlHeader");
|
|
14
14
|
const make_fetch_happen_1 = __importDefault(require("make-fetch-happen"));
|
|
15
15
|
class RemoteGraphQLDataSource {
|
|
@@ -47,7 +47,7 @@ class RemoteGraphQLDataSource {
|
|
|
47
47
|
? options.incomingRequestContext.overallCachePolicy
|
|
48
48
|
: null;
|
|
49
49
|
if (this.apq) {
|
|
50
|
-
const apqHash = (0,
|
|
50
|
+
const apqHash = (0, utils_createhash_1.createHash)('sha256').update(request.query).digest('hex');
|
|
51
51
|
requestWithoutQuery.extensions = {
|
|
52
52
|
...request.extensions,
|
|
53
53
|
persistedQuery: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteGraphQLDataSource.js","sourceRoot":"","sources":["../../src/datasources/RemoteGraphQLDataSource.ts"],"names":[],"mappings":";;;;;;AAAA,6DAQ6B;AAC7B,+DAI8B;AAC9B,yDAAsE;AACtE,wDAAmD;AACnD,mCAA2G;AAC3G
|
|
1
|
+
{"version":3,"file":"RemoteGraphQLDataSource.js","sourceRoot":"","sources":["../../src/datasources/RemoteGraphQLDataSource.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EACL,sBAAsB,EACtB,sCAAsC,EACvC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
exports.UplinkFetcherError = exports.LocalCompose = exports.IntrospectAndCompose = exports.buildOperationContext = exports.executeQueryPlan = exports.ApolloGateway = exports.SERVICE_DEFINITION_QUERY = exports.HEALTH_CHECK_QUERY = exports.getDefaultFetcher = void 0;
|
|
21
21
|
const util_1 = require("util");
|
|
22
|
+
const utils_createhash_1 = require("@apollo/utils.createhash");
|
|
22
23
|
const apollo_server_caching_1 = require("apollo-server-caching");
|
|
23
24
|
const graphql_1 = require("graphql");
|
|
24
25
|
const loglevel_1 = __importDefault(require("loglevel"));
|
|
@@ -30,12 +31,11 @@ const types_1 = require("./datasources/types");
|
|
|
30
31
|
const RemoteGraphQLDataSource_1 = require("./datasources/RemoteGraphQLDataSource");
|
|
31
32
|
const values_1 = require("graphql/execution/values");
|
|
32
33
|
const make_fetch_happen_1 = __importDefault(require("make-fetch-happen"));
|
|
33
|
-
const cache_1 = require("./cache");
|
|
34
34
|
const query_planner_1 = require("@apollo/query-planner");
|
|
35
35
|
const config_1 = require("./config");
|
|
36
36
|
const api_1 = require("@opentelemetry/api");
|
|
37
37
|
const opentelemetry_1 = require("./utilities/opentelemetry");
|
|
38
|
-
const
|
|
38
|
+
const addExtensions_1 = require("./schema-helper/addExtensions");
|
|
39
39
|
const supergraphManagers_1 = require("./supergraphManagers");
|
|
40
40
|
Object.defineProperty(exports, "IntrospectAndCompose", { enumerable: true, get: function () { return supergraphManagers_1.IntrospectAndCompose; } });
|
|
41
41
|
Object.defineProperty(exports, "LocalCompose", { enumerable: true, get: function () { return supergraphManagers_1.LocalCompose; } });
|
|
@@ -43,7 +43,6 @@ const federation_internals_1 = require("@apollo/federation-internals");
|
|
|
43
43
|
function getDefaultFetcher() {
|
|
44
44
|
const { name, version } = require('../package.json');
|
|
45
45
|
return make_fetch_happen_1.default.defaults({
|
|
46
|
-
cacheManager: new cache_1.HttpRequestCache(),
|
|
47
46
|
headers: {
|
|
48
47
|
'apollographql-client-name': name,
|
|
49
48
|
'apollographql-client-version': version,
|
|
@@ -319,6 +318,7 @@ class ApolloGateway {
|
|
|
319
318
|
this.logger.info(`Gateway successfully loaded schema.\n\t* Mode: ${mode}${this.apolloConfig && this.apolloConfig.graphRef
|
|
320
319
|
? `\n\t* Service: ${this.apolloConfig.graphRef}`
|
|
321
320
|
: ''}`);
|
|
321
|
+
(0, addExtensions_1.addExtensions)(this.schema);
|
|
322
322
|
return {
|
|
323
323
|
schema: this.schema,
|
|
324
324
|
executor: this.executor,
|
|
@@ -336,7 +336,7 @@ class ApolloGateway {
|
|
|
336
336
|
]);
|
|
337
337
|
}
|
|
338
338
|
getIdForSupergraphSdl(supergraphSdl) {
|
|
339
|
-
return (0,
|
|
339
|
+
return (0, utils_createhash_1.createHash)('sha256').update(supergraphSdl).digest('hex');
|
|
340
340
|
}
|
|
341
341
|
async initializeSupergraphManager(supergraphManager) {
|
|
342
342
|
try {
|
|
@@ -452,7 +452,7 @@ class ApolloGateway {
|
|
|
452
452
|
if (this.queryPlanStore)
|
|
453
453
|
this.queryPlanStore.flush();
|
|
454
454
|
this.apiSchema = coreSchema.toAPISchema();
|
|
455
|
-
this.schema = wrapSchemaWithAliasResolver(this.apiSchema.toGraphQLJSSchema());
|
|
455
|
+
this.schema = (0, addExtensions_1.addExtensions)(wrapSchemaWithAliasResolver(this.apiSchema.toGraphQLJSSchema()));
|
|
456
456
|
this.queryPlanner = new query_planner_1.QueryPlanner(coreSchema);
|
|
457
457
|
if (!legacyDontNotifyOnSchemaChangeListeners) {
|
|
458
458
|
this.onSchemaChangeListeners.forEach((listener) => {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,+BAAiC;AAOjC,iEAAyD;AACzD,qCAKiB;AACjB,wDAAgC;AAChC,yDAA6E;AAykC3E,sGAzkCO,wCAAqB,OAykCP;AAxkCvB,yDAI4B;AAmkC1B,iGAtkCA,mCAAgB,OAskCA;AAlkClB,+CAG6B;AAC7B,mFAAgF;AAChF,qDAA6D;AAC7D,0EAAwC;AACxC,mCAA2C;AAE3C,yDAI+B;AAC/B,qCAiBkB;AAClB,4CAAoD;AACpD,6DAA2E;AAC3E,uDAAoD;AACpD,6DAK8B;AAqiC5B,qGAziCA,yCAAoB,OAyiCA;AACpB,6FAviCA,iCAAY,OAuiCA;AAriCd,uEAAuH;AAevH,SAAgB,iBAAiB;IAC/B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrD,OAAO,2BAAO,CAAC,QAAQ,CAAC;QACtB,YAAY,EAAE,IAAI,wBAAgB,EAAE;QAIpC,OAAO,EAAE;YACP,2BAA2B,EAAE,IAAI;YACjC,8BAA8B,EAAE,OAAO;YACvC,YAAY,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE;YAClC,cAAc,EAAE,kBAAkB;SACnC;QACD,KAAK,EAAE;YACL,OAAO,EAAE,CAAC;YAEV,MAAM,EAAE,CAAC;YAET,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,IAAI;SAChB;KACF,CAAC,CAAC;AACL,CAAC;AAtBD,8CAsBC;AAEY,QAAA,kBAAkB,GAC7B,mDAAmD,CAAC;AACzC,QAAA,wBAAwB,GACnC,2DAA2D,CAAC;AAsC9D,MAAa,aAAa;IAuCxB,YAAY,MAAsB;;QA9B1B,eAAU,GAAkB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAKhD,4BAAuB,GAAG,IAAI,GAAG,EAAmC,CAAC;QACrE,kCAA6B,GAAG,IAAI,GAAG,EAK5C,CAAC;QACI,iBAAY,GAAiB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAgBjD,cAAS,GAA4B,EAAE,CAAC;QAioBzC,aAAQ,GAAG,KAAK,EACrB,cAAgE,EAC/B,EAAE;YACnC,MAAM,cAAc,GAAG,cAAc,CAAC,aAAa;gBACjD,CAAC,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,aAAa,EAAE;gBACjD,CAAC,CAAC,EAAE,CAAC;YAEP,OAAO,sBAAM,CAAC,eAAe,CAC3B,sCAAsB,CAAC,OAAO,EAC9B,EAAE,UAAU,EAAE,cAAc,EAAE,EAC9B,KAAK,EAAE,IAAI,EAAE,EAAE;gBACb,IAAI;oBACF,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC;oBACxD,MAAM,iBAAiB,GAAG,SAAS,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;oBACpE,MAAM,gBAAgB,GAAG,IAAA,wCAAqB,EAAC;wBAC7C,MAAM,EAAE,IAAI,CAAC,MAAO;wBACpB,iBAAiB,EAAE,QAAQ;wBAC3B,aAAa,EAAE,OAAO,CAAC,aAAa;qBACrC,CAAC,CAAC;oBAIH,MAAM,gBAAgB,GAAG,IAAI,CAAC,uBAAuB,CACnD,cAAc,EACd,gBAAgB,CACjB,CAAC;oBAEF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC/B,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC/C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;qBACrC;oBACD,IAAI,SAAgC,CAAC;oBACrC,IAAI,IAAI,CAAC,cAAc,EAAE;wBACvB,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;qBAC9D;oBAED,IAAI,CAAC,SAAS,EAAE;wBACd,SAAS,GAAG,sBAAM,CAAC,eAAe,CAChC,sCAAsB,CAAC,IAAI,EAC3B,CAAC,IAAI,EAAE,EAAE;4BACP,IAAI;gCACF,MAAM,SAAS,GAAG,IAAA,4CAAqB,EACrC,IAAI,CAAC,SAAU,EACf,QAAQ,EACR,OAAO,CAAC,aAAa,CACtB,CAAC;gCAEF,OAAO,IAAI,CAAC,YAAa,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;6BACrD;4BAAC,OAAO,GAAG,EAAE;gCACZ,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;gCAC/C,MAAM,GAAG,CAAC;6BACX;oCAAS;gCACR,IAAI,CAAC,GAAG,EAAE,CAAC;6BACZ;wBACH,CAAC,CACF,CAAC;wBAEF,IAAI,IAAI,CAAC,cAAc,EAAE;4BAavB,OAAO,CAAC,OAAO,CACb,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,CACtD,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACd,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,2BAA2B,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAC5D,CACF,CAAC;yBACH;qBACF;oBAED,MAAM,UAAU,GAAe,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CACnE,CAAC,kBAAkB,EAAE,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE;wBACpD,kBAAkB,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC;wBAC7C,OAAO,kBAAkB,CAAC;oBAC5B,CAAC,EACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAe,CAClC,CAAC;oBAEF,IAAI,IAAI,CAAC,gCAAgC,EAAE;wBACzC,IAAI,CAAC,gCAAgC,CAAC;4BACpC,SAAS;4BACT,UAAU;4BACV,cAAc;4BACd,gBAAgB;yBACjB,CAAC,CAAC;qBACJ;oBAED,MAAM,QAAQ,GAAG,MAAM,IAAA,mCAAgB,EACrC,SAAS,EACT,UAAU,EACV,cAAc,EACd,gBAAgB,CACjB,CAAC;oBAEF,MAAM,mBAAmB,GACvB,IAAI,CAAC,MAAM,CAAC,6BAA6B;wBACzC,OAAO,CAAC,IAAI;wBACZ,OAAO,CAAC,IAAI,CAAC,OAAO;wBACpB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAM7D,MAAM,mBAAmB,GACvB,SAAS,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,mBAAmB,CAAC;wBAC1D,CAAC;4BAKC,IAAA,qCAAqB,EAAC,SAAS,CAAC;wBAClC,CAAC,CAAC,IAAI,CAAC;oBAEX,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,mBAAmB,EAAE;wBAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;qBACxC;oBAED,IAAI,mBAAmB,EAAE;wBAQvB,QAAQ,CAAC,UAAU,GAAG;4BACpB,uBAAuB,EAAE,mBAAmB,IAAI,IAAI;yBACrD,CAAC;qBACH;oBACD,IAAI,QAAQ,CAAC,MAAM,EAAE;wBACnB,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;qBAChD;oBACD,OAAO,QAAQ,CAAC;iBACjB;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC/C,MAAM,GAAG,CAAC;iBACX;wBAAS;oBACR,IAAI,CAAC,GAAG,EAAE,CAAC;iBACZ;YACH,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;QAtxBA,IAAI,CAAC,MAAM,GAAG;YAIZ,6BAA6B,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;YACpE,GAAG,MAAM;SACV,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAC3C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,yCAAyC,CAClD,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,iBAAiB,EAAE,CAAC;QAGtD,IAAI,CAAC,gCAAgC;YACnC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gCAAgC,CAAC;QAC3C,IAAI,CAAC,gCAAgC;YACnC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gCAAgC,CAAC;QAE3C,IAAI,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAChC,IAAI,CAAC,gBAAgB;gBACnB,MAAA,IAAI,CAAC,MAAM,CAAC,wBAAwB,mCAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;SACxE;aAAM,IAAI,IAAA,4BAAmB,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC3C,IAAI,CAAC,gBAAgB,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,gBAAgB,CAAC;SACvD;QAED,IAAI,CAAC,sCAAsC,EAAE,CAAC;QAE9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACxC,CAAC;IAEO,UAAU;QAEhB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACtB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;SAC3B;QAGD,MAAM,cAAc,GAAG,kBAAQ,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAG5D,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE;YAC9B,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACtD;aAAM;YACL,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SACrD;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,kBAAkB,CAAC,4BAAqC;QAC9D,OAAO,IAAI,wCAAgB,CAAY;YAMrC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,4BAA4B,IAAI,EAAE,CAAC;YAC/D,cAAc,EAAE,qBAAqB;SACtC,CAAC,CAAC;IACL,CAAC;IAEO,sCAAsC;QAE5C,IACE,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,gBAAgB,GAAG,KAAK,EAC7B;YACA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kEAAkE;gBAChE,8DAA8D;gBAC9D,8DAA8D;gBAC9D,qEAAqE;gBACrE,oCAAoC,CACvC,CAAC;SACH;QAID,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAA,4BAAmB,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC7D,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,2EAA2E;gBACzE,kDAAkD;gBAClD,wDAAwD,CAC3D,CAAC;SACH;QAED,IACE,IAAA,gCAAuB,EAAC,IAAI,CAAC,MAAM,CAAC;YACpC,kCAAkC,IAAI,IAAI,CAAC,MAAM;YACjD,uCAAuC,IAAI,IAAI,CAAC,MAAM,EACtD;YACA,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,yEAAyE;gBACvE,0FAA0F;gBAC1F,mGAAmG;gBACnG,eAAe,CAClB,CAAC;SACH;QAED,IAAI,8BAA8B,IAAI,IAAI,CAAC,MAAM,EAAE;YACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,6MAA6M,CAC9M,CAAC;SACH;QAED,IAAI,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,kBAAkB,IAAI,IAAI,CAAC,MAAM,EAAE;YACrE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4GAA4G;gBAC5G,oFAAoF;gBACpF,+IAA+I,CAChJ,CAAC;SACH;IACH,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAGjB;;QACC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,aAAa,EAAE;YACtC,MAAM,KAAK,CACT,iDAAiD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CACpE,CAAC;SACH;QACD,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YACnB,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YACzE,IAAI,CAAC,YAAY,GAAG;gBAClB,GAAG;gBACH,OAAO;gBACP,QAAQ,EACN,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GACR,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;aACpE,CAAC;SACH;aAAM,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YAE1B,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAC7D,IAAI,CAAC,YAAY,GAAG;gBAClB,OAAO,EAAE,UAAU;gBACnB,QAAQ,EAAE,OAAO;oBACf,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,SAAS,EAAE;oBAC3C,CAAC,CAAC,SAAS;aACd,CAAC;SACH;QAED,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAGpC,IAAI,IAAA,oCAA2B,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YAChD,MAAM,IAAI,CAAC,2BAA2B,CAAC;gBACrC,UAAU,EAAE,KAAK,IAAI,EAAE;oBACrB,OAAO;wBACL,aAAa;qBACd,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;SACJ;aAAM,IAAI,IAAA,sBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAErC,MAAM,IAAI,CAAC,2BAA2B,CACpC,IAAI,iCAAY,CAAC;gBACf,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;gBAC9C,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CACH,CAAC;SACH;aAAM,IAAI,IAAA,oDAA2C,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACnE,MAAM,iBAAiB,GACrB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,QAAQ;gBAC3C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;gBAC3B,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAChD,MAAM,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;SAC3D;aAAM,IACL,uCAAuC,IAAI,IAAI,CAAC,MAAM;YACtD,kCAAkC,IAAI,IAAI,CAAC,MAAM,EACjD;YACA,MAAM,wBAAwB,GAC5B,uCAAuC,IAAI,IAAI,CAAC,MAAM;gBACpD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,qCAAqC;gBACnD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,gCAAgC,CAAC;YAEnD,MAAM,IAAI,CAAC,2BAA2B,CACpC,IAAI,kCAAa,CAAC;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,aAAa,EAAE,IAAI,CAAC,MAAM;gBAC1B,wBAAwB;gBACxB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;aACpD,CAAC,CACH,CAAC;SACH;aAAM,IAAI,IAAA,4BAAmB,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAE3C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,8OAA8O,CAC/O,CAAC;YACF,MAAM,IAAI,CAAC,2BAA2B,CACpC,IAAI,yCAAoB,CAAC;gBACvB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBAClC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;gBACnD,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB;aACvD,CAAC,CACH,CAAC;SACH;aAAM;YAEL,MAAM,mBAAmB,GACvB,CAAA,MAAA,IAAI,CAAC,YAAY,0CAAE,QAAQ,MAAI,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,CAAA,CAAC;YAC5D,IAAI,CAAC,mBAAmB,EAAE;gBACxB,MAAM,IAAI,KAAK,CACb,0EAA0E;oBACxE,qGAAqG;oBACrG,8DAA8D;oBAC9D,8EAA8E,CACjF,CAAC;aACH;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE7D,MAAM,IAAI,CAAC,2BAA2B,CACpC,IAAI,kCAAa,CAAC;gBAChB,QAAQ,EAAE,IAAI,CAAC,YAAa,CAAC,QAAS;gBACtC,MAAM,EAAE,IAAI,CAAC,YAAa,CAAC,GAAI;gBAC/B,eAAe;gBACf,UAAU,EACR,MAAA,IAAI,CAAC,MAAM,CAAC,gBAAgB,mCAAI,eAAe,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC;gBAChE,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;gBACnD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,wBAAwB,EAAE,MAAA,IAAI,CAAC,gBAAgB,mCAAI,KAAK;aACzD,CAAC,CACH,CAAC;SACH;QAED,MAAM,IAAI,GAAG,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kDAAkD,IAAI,GACpD,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ;YAC7C,CAAC,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YAChD,CAAC,CAAC,EACN,EAAE,CACH,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAO;YACpB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,MAA4B;;QAQrD,MAAM,kBAAkB,GACtB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC;QACrD,MAAM,YAAY,GAAG,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,IAAI,CAAC;QAC5D,OAAO,CACL,MAAA,MAAA,MAAA,MAAM,CAAC,eAAe,mCACtB,CAAC,MAAM,CAAC,4BAA4B;YAClC,CAAC,CAAC,CAAC,MAAM,CAAC,4BAA4B,CAAC;YACvC,CAAC,CAAC,IAAI,CAAC,mCACT,YAAY,mCAAI;YACd,uCAAuC;YACvC,2CAA2C;SAC5C,CACF,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,aAAqB;QACjD,OAAO,IAAA,uBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;IAEO,KAAK,CAAC,2BAA2B,CACvC,iBAAoB;QAEpB,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC;gBAChD,MAAM,EAAE,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxD,WAAW,EAAE,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChE,aAAa,EAAE,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC;aAC7D,CAAC,CAAC;YACH,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAA,EAAE;gBAC1B,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;aACH;YACD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;gBACnB,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE;oBACxC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;iBACrC;qBAAM;oBACL,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+FAA+F,CAChG,CAAC;iBACH;aACF;YAED,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SAC7D;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACxC,MAAM,CAAC,CAAC;SACT;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACnC,CAAC;IASO,gCAAgC,CAAC,aAAqB;QAC5D,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACxB,KAAK,gBAAgB;gBACnB,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;YACJ,KAAK,iBAAiB;gBACpB,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;YACJ,KAAK,SAAS;gBACZ,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;YACJ,KAAK,UAAU;gBACb,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;YACJ,KAAK,QAAQ,CAAC;YACd,KAAK,aAAa;gBAEhB,MAAM;YACR;gBACE,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9C;QAED,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;QAC1C,IAAI;YACF,IAAI,CAAC,uBAAuB,CAAC;gBAC3B,aAAa;gBACb,EAAE,EAAE,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC;aAC9C,CAAC,CAAC;SACJ;gBAAS;YAER,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;SAClC;IACH,CAAC;IAMO,KAAK,CAAC,mCAAmC,CAAC,aAAqB;QACrE,MAAM,WAAW,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;QAGrE,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE;YAC/D,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG;gBAC5B,GAAG,EAAE,UAAU,CAAC,GAAG;gBACnB,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;aAC9C,CAAC;YACF,OAAO,UAAU,CAAC;QACpB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAkB,CAAC,CAAC;QAEzC,IAAI;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;SAC3C;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,sEAAsE;gBACpE,mEAAmE;gBACnE,oEAAoE;gBACpE,CAAC,CAAC,OAAO,CACZ,CAAC;SACH;IACH,CAAC;IAEO,6BAA6B,CAAC,EACpC,IAAI,EACJ,GAAG,GACuB;QAC1B,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACnD,CAAC;IAEO,uBAAuB,CAAC,MAA2B;QACzD,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,aAAa,EAAE;YACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAChE,OAAO;SACR;QAMD,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,6BAA6B,CAClE,MAAM,CAAC,aAAa,CACrB,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;QACnC,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC;QACjD,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC;QAEjD,IAAI,cAAc,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;SACvD;QAED,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,IAAI,CAAC,aAAa,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uEAAuE,CACxE,CAAC;SACH;aAAM;YACL,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAEtD,IAAI,IAAI,CAAC,gCAAgC,EAAE;gBACzC,IAAI,CAAC,gCAAgC,CACnC;oBACE,aAAa,EAAE,MAAM,CAAC,EAAE;oBACxB,aAAa;oBACb,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAE;iBACnC,EACD,qBAAqB,IAAI,qBAAqB,IAAI,cAAc;oBAC9D,CAAC,CAAC;wBACE,aAAa,EAAE,qBAAqB;wBACpC,aAAa,EAAE,qBAAqB;wBACpC,MAAM,EAAE,cAAc;qBACvB;oBACH,CAAC,CAAC,SAAS,CACd,CAAC;aACH;SACF;IACH,CAAC;IAKO,yBAAyB,CAC/B,UAAkB,EAClB,iBAAyB,EAEzB,0CAAmD,KAAK;QAExD,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,2BAA2B,CACvC,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CACnC,CAAC;QACF,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,CAAC,UAAU,CAAC,CAAC;QAGjD,IAAI,CAAC,uCAAuC,EAAE;YAC5C,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAChD,IAAI;oBACF,QAAQ,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;iBACxB;gBAAC,OAAO,CAAC,EAAE;oBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,yDAAyD;wBACvD,gCAAgC;wBAChC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAC1B,CAAC;iBACH;YACH,CAAC,CAAC,CAAC;SACJ;QAGD,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtD,IAAI;gBACF,QAAQ,CAAC;oBACP,SAAS,EAAE,IAAI,CAAC,MAAO;oBACvB,iBAAiB;iBAClB,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+DAA+D;oBAC7D,gCAAgC;oBAChC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAC1B,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAiBM,kBAAkB,CAAC,aAA4B,IAAI,CAAC,UAAU;QACnE,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CACxD,UAAU;aACP,OAAO,CAAC;YACP,IAAI,EAAE,oCAA4B,CAAC,YAAY;YAC/C,OAAO,EAAE,EAAE,KAAK,EAAE,0BAAkB,EAAE;YACtC,OAAO,EAAE,EAAE;SACZ,CAAC;aACD,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;aACxC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CACL,CACF,CAAC;IACJ,CAAC;IAEO,4BAA4B,CAClC,aAAqB;QAErB,OAAO,IAAA,4CAAqB,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAEO,6BAA6B,CAAC,aAAqB;QACzD,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,IAAA,4CAAqB,EAAC,aAAa,CAAC,CAAC;QACnE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEjC,OAAO;YACL,MAAM;YACN,aAAa;SACd,CAAC;IACJ,CAAC;IAKM,cAAc,CACnB,QAAyC;QAEzC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE3C,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC,CAAC;IACJ,CAAC;IAEM,oBAAoB,CACzB,QAGU;QAEV,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEjD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAC3B,UAAqC;QAGrC,IACE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;YAChC,UAAU,CAAC,GAAG,KAAK,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EACvD;YACA,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;SACpD;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAGrD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC;QAEvE,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,gBAAgB,CACtB,UAAqC;QAErC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAA,sBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAClD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,kCAAkC,UAAU,CAAC,IAAI,mBAAmB,CACrE,CAAC;SACH;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY;YAC7B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;YACtC,CAAC,CAAC,IAAI,iDAAuB,CAAC;gBAC1B,GAAG,EAAE,UAAU,CAAC,GAAG;aACpB,CAAC,CAAC;IACT,CAAC;IAEO,cAAc,CAAC,QAAqC;QAC1D,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE;YACjC,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;SACxC;IACH,CAAC;IAEO,4BAA4B;;QAClC,MAAM,mBAAmB,GACvB,CAAA,MAAA,IAAI,CAAC,YAAY,0CAAE,QAAQ,MAAI,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,CAAA,CAAC;QAM5D,IACE,CAAC,IAAA,wBAAe,EAAC,IAAI,CAAC,MAAM,CAAC;YAC7B,mBAAmB;YACnB,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EACxC;YAEA,IAAI,CAAC,YAAY,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAI/C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,mEAAmE;gBACjE,qCAAqC;gBACrC,wEAAwE,CAC3E,CAAC;SACH;IACH,CAAC;IAiKO,uBAAuB,CAC7B,cAAgE,EAChE,gBAAkC;QAElC,OAAO,sBAAM,CAAC,eAAe,CAAC,sCAAsB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;YACtE,IAAI;gBAEF,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,SAAS;qBACnD,mBAA2D,CAAC;gBAE/D,IAAI,CAAC,mBAAmB;oBAAE,OAAO,EAAE,CAAC;gBAEpC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,0BAAiB,EAClC,gBAAgB,CAAC,MAAM,EACvB,mBAAmB,EACnB,cAAc,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CACvC,CAAC;gBAEF,IAAI,MAAM,EAAE;oBACV,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;iBAChD;gBACD,OAAO,MAAM,IAAI,EAAE,CAAC;aACrB;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,oBAAc,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC/C,MAAM,GAAG,CAAC;aACX;oBAAS;gBACR,IAAI,CAAC,GAAG,EAAE,CAAC;aACZ;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,0BAA0B;QACtC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAExC,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;;YACd,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,gEAAgE;gBAC9D,CAAC,MAAA,CAAC,CAAC,OAAO,mCAAI,CAAC,CAAC,CACnB,CAAC;QACJ,CAAC,CAAC,CACH,CACF,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAIM,KAAK,CAAC,IAAI;QACf,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACxB,KAAK,aAAa,CAAC;YACnB,KAAK,gBAAgB;gBACnB,MAAM,KAAK,CACT,gGAAgG,CACjG,CAAC;YACJ,KAAK,SAAS;gBAEZ,OAAO;YACT,KAAK,UAAU;gBACb,MAAM,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;gBAIrC,IAAK,IAAI,CAAC,KAAsB,CAAC,KAAK,KAAK,SAAS,EAAE;oBACpD,MAAM,KAAK,CACT,0DAA0D,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAC7E,CAAC;iBACH;gBACD,OAAO;YACT,KAAK,QAAQ;gBACX,MAAM,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBAC9D,IAAI,CAAC,KAAK,GAAG;oBACX,KAAK,EAAE,UAAU;oBACjB,mBAAmB;iBACpB,CAAC;gBACF,MAAM,mBAAmB,CAAC;gBAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAClC,OAAO;YACT,KAAK,iBAAiB,CAAC,CAAC;gBACtB,MAAM,KAAK,CACT,+EAA+E,CAChF,CAAC;aACH;YACD;gBACE,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC9C;IACH,CAAC;IAEM,SAAS;QACd,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC;IACJ,CAAC;CACF;AAh6BD,sCAg6BC;AAED,aAAa,CAAC,SAAS,CAAC,cAAc,GAAG,IAAA,gBAAS,EAChD,aAAa,CAAC,SAAS,CAAC,cAAc,EACtC,qHAAqH,CACtH,CAAC;AAEF,SAAS,qBAAqB,CAAI,GAAM;IACtC,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACxD,CAAC;AAMD,SAAS,2BAA2B,CAAC,MAAqB;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE/B,IAAI,IAAA,sBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,6BAAmB,EAAC,IAAI,CAAC,EAAE;YACpD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gBAChC,KAAK,CAAC,OAAO,GAAG,uDAAoC,CAAC;YACvD,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAKD,MAAM,oBAAqB,SAAQ,KAAK;IACtC,YAAY,GAAU;QACpB,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IACpC,CAAC;CACF;AAkBD,gDAA8B;AAU9B,2DAAyD;AAAhD,wHAAA,kBAAkB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addExtensions.d.ts","sourceRoot":"","sources":["../../src/schema-helper/addExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAalE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addExtensions = void 0;
|
|
4
|
+
const { version } = require('../../package.json');
|
|
5
|
+
function addExtensions(schema) {
|
|
6
|
+
var _a;
|
|
7
|
+
schema.extensions = {
|
|
8
|
+
...schema.extensions,
|
|
9
|
+
apollo: {
|
|
10
|
+
...schema.extensions.apollo,
|
|
11
|
+
gateway: {
|
|
12
|
+
...(_a = schema.extensions.apollo) === null || _a === void 0 ? void 0 : _a.gateway,
|
|
13
|
+
version,
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
return schema;
|
|
18
|
+
}
|
|
19
|
+
exports.addExtensions = addExtensions;
|
|
20
|
+
//# sourceMappingURL=addExtensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addExtensions.js","sourceRoot":"","sources":["../../src/schema-helper/addExtensions.ts"],"names":[],"mappings":";;;AACA,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAElD,SAAgB,aAAa,CAAC,MAAqB;;IACjD,MAAM,CAAC,UAAU,GAAG;QAClB,GAAG,MAAM,CAAC,UAAU;QACpB,MAAM,EAAE;YACN,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;YAC3B,OAAO,EAAE;gBACP,GAAG,MAAA,MAAM,CAAC,UAAU,CAAC,MAAM,0CAAE,OAAO;gBACpC,OAAO;aACR;SACF;KACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAbD,sCAaC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { GraphQLResolveInfo } from 'graphql';
|
|
2
|
+
declare type GraphQLReferenceResolver<TContext> = (reference: object, context: TContext, info: GraphQLResolveInfo) => any;
|
|
3
|
+
interface ApolloSubgraphExtensions<TContext> {
|
|
4
|
+
resolveReference?: GraphQLReferenceResolver<TContext>;
|
|
5
|
+
}
|
|
6
|
+
interface ApolloGatewayExtensions {
|
|
7
|
+
version?: String;
|
|
8
|
+
}
|
|
9
|
+
declare module 'graphql/type/definition' {
|
|
10
|
+
interface GraphQLObjectTypeExtensions<_TSource = any, _TContext = any> {
|
|
11
|
+
apollo?: {
|
|
12
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
interface GraphQLInterfaceTypeExtensions<_TSource = any, _TContext = any> {
|
|
16
|
+
apollo?: {
|
|
17
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
interface GraphQLUnionTypeExtensions<_TSource = any, _TContext = any> {
|
|
21
|
+
apollo?: {
|
|
22
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
declare module 'graphql/type/schema' {
|
|
27
|
+
interface GraphQLSchemaExtensions {
|
|
28
|
+
apollo?: {
|
|
29
|
+
gateway?: ApolloGatewayExtensions;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=graphql.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../../src/typings/graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,aAAK,wBAAwB,CAAC,QAAQ,IAAI,CACxC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,kBAAkB,KACrB,GAAG,CAAC;AAET,UAAU,wBAAwB,CAAC,QAAQ;IACzC,gBAAgB,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;CACvD;AAED,UAAU,uBAAuB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,OAAO,QAAQ,yBAAyB,CAAC;IACvC,UAAU,2BAA2B,CAAC,QAAQ,GAAG,GAAG,EAAE,SAAS,GAAG,GAAG;QACnE,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;SAChD,CAAA;KACF;IAED,UAAU,8BAA8B,CAAC,QAAQ,GAAG,GAAG,EAAE,SAAS,GAAG,GAAG;QACtE,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;SAChD,CAAA;KACF;IAED,UAAU,0BAA0B,CAAC,QAAQ,GAAG,GAAG,EAAE,SAAS,GAAG,GAAG;QAClE,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;SAChD,CAAA;KACF;CACF;AAED,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,uBAAuB;QAC/B,MAAM,CAAC,EAAE;YACP,OAAO,CAAC,EAAE,uBAAuB,CAAC;SACnC,CAAA;KACF;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../src/typings/graphql.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apollo/gateway",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2-alpha.1",
|
|
4
4
|
"description": "Apollo Gateway",
|
|
5
5
|
"author": "Apollo <packages@apollographql.com>",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -25,9 +25,12 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@apollo/composition": "^2.0.
|
|
29
|
-
"@apollo/core-schema": "~0.
|
|
30
|
-
"@apollo/
|
|
28
|
+
"@apollo/composition": "^2.0.2-alpha.1",
|
|
29
|
+
"@apollo/core-schema": "~0.3.0",
|
|
30
|
+
"@apollo/federation-internals": "^2.0.2-alpha.1",
|
|
31
|
+
"@apollo/query-planner": "^2.0.2-alpha.1",
|
|
32
|
+
"@apollo/utils.createhash": "^1.0.0",
|
|
33
|
+
"@apollo/utils.isnodelike": "^1.0.0",
|
|
31
34
|
"@apollo/utils.logger": "^1.0.0",
|
|
32
35
|
"@josephg/resolvable": "^1.0.1",
|
|
33
36
|
"@opentelemetry/api": "^1.0.1",
|
|
@@ -41,11 +44,10 @@
|
|
|
41
44
|
"async-retry": "^1.3.3",
|
|
42
45
|
"loglevel": "^1.6.1",
|
|
43
46
|
"make-fetch-happen": "^8.0.0",
|
|
44
|
-
"pretty-format": "^27.0.0"
|
|
45
|
-
"sha.js": "^2.4.11"
|
|
47
|
+
"pretty-format": "^27.0.0"
|
|
46
48
|
},
|
|
47
49
|
"peerDependencies": {
|
|
48
50
|
"graphql": "^16.0.0"
|
|
49
51
|
},
|
|
50
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "7fcf0f23509f0d62fdb017c8e74a861cb304915d"
|
|
51
53
|
}
|
|
@@ -20,7 +20,10 @@ import { ApolloGateway } from '..';
|
|
|
20
20
|
import { ApolloServerBase as ApolloServer } from 'apollo-server-core';
|
|
21
21
|
import { getFederatedTestingSchema } from './execution-utils';
|
|
22
22
|
import { Schema, Operation, parseOperation, buildSchemaFromAST, arrayEquals } from '@apollo/federation-internals';
|
|
23
|
-
import {
|
|
23
|
+
import {
|
|
24
|
+
addResolversToSchema,
|
|
25
|
+
GraphQLResolverMap,
|
|
26
|
+
} from '@apollo/subgraph/src/schema-helper';
|
|
24
27
|
|
|
25
28
|
expect.addSnapshotSerializer(astSerializer);
|
|
26
29
|
expect.addSnapshotSerializer(queryPlanSerializer);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
|
-
GraphQLSchemaValidationError,
|
|
3
2
|
GraphQLSchemaModule,
|
|
4
3
|
GraphQLResolverMap,
|
|
5
|
-
|
|
4
|
+
GraphQLSchemaValidationError,
|
|
5
|
+
} from '@apollo/subgraph/src/schema-helper';
|
|
6
6
|
import { GraphQLRequest, GraphQLExecutionResult } from 'apollo-server-types';
|
|
7
7
|
import type { Logger } from '@apollo/utils.logger';
|
|
8
8
|
import { buildSubgraphSchema } from '@apollo/subgraph';
|
|
@@ -4,7 +4,7 @@ import fetch, { Response } from 'node-fetch';
|
|
|
4
4
|
import { ApolloGateway } from '../..';
|
|
5
5
|
import { fixtures } from 'apollo-federation-integration-testsuite';
|
|
6
6
|
import { ApolloServerPluginInlineTrace } from 'apollo-server-core';
|
|
7
|
-
import { GraphQLSchemaModule } from '
|
|
7
|
+
import { GraphQLSchemaModule } from '@apollo/subgraph/src/schema-helper';
|
|
8
8
|
import { buildSchema, ObjectType, ServiceDefinition } from '@apollo/federation-internals';
|
|
9
9
|
import gql from 'graphql-tag';
|
|
10
10
|
import { printSchema } from 'graphql';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ApolloGateway } from '@apollo/gateway';
|
|
2
|
+
import resolvable from '@josephg/resolvable';
|
|
3
|
+
import { GraphQLSchema } from 'graphql';
|
|
4
|
+
import { getTestingSupergraphSdl } from '../execution-utils';
|
|
5
|
+
const { version } = require('../../../package.json');
|
|
6
|
+
|
|
7
|
+
describe('addExtensions', () => {
|
|
8
|
+
let gateway: ApolloGateway;
|
|
9
|
+
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
gateway = new ApolloGateway({
|
|
12
|
+
supergraphSdl: getTestingSupergraphSdl(),
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
afterEach(async () => {
|
|
17
|
+
await gateway.stop();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('has extensions on loaded schemas', async () => {
|
|
21
|
+
const { schema } = await gateway.load();
|
|
22
|
+
expect(schema.extensions).toEqual({ apollo: { gateway: { version: version } } });
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('has extensions on schema updates', async () => {
|
|
26
|
+
const schemaChangeBlocker = resolvable<{
|
|
27
|
+
apiSchema: GraphQLSchema;
|
|
28
|
+
coreSupergraphSdl: string;
|
|
29
|
+
}>();
|
|
30
|
+
|
|
31
|
+
gateway.onSchemaLoadOrUpdate(schemaChangeBlocker.resolve);
|
|
32
|
+
gateway.load();
|
|
33
|
+
|
|
34
|
+
const { apiSchema } = await schemaChangeBlocker;
|
|
35
|
+
expect(apiSchema.extensions).toEqual({ apollo: { gateway: { version: version } } });
|
|
36
|
+
});
|
|
37
|
+
});
|
|
@@ -16,9 +16,9 @@ import {
|
|
|
16
16
|
fixtures,
|
|
17
17
|
fixturesWithUpdate,
|
|
18
18
|
} from 'apollo-federation-integration-testsuite';
|
|
19
|
+
import { createHash } from '@apollo/utils.createhash';
|
|
19
20
|
import type { Logger } from '@apollo/utils.logger';
|
|
20
21
|
import resolvable from '@josephg/resolvable';
|
|
21
|
-
import { createHash } from '../../utilities/createHash';
|
|
22
22
|
import { getTestingSupergraphSdl } from '../execution-utils';
|
|
23
23
|
|
|
24
24
|
// The order of this was specified to preserve existing test coverage. Typically
|
|
@@ -13,7 +13,7 @@ import { Plugin, Config, Refs } from 'pretty-format';
|
|
|
13
13
|
import { Report, Trace } from 'apollo-reporting-protobuf';
|
|
14
14
|
import { fixtures } from 'apollo-federation-integration-testsuite';
|
|
15
15
|
import { nockAfterEach, nockBeforeEach } from '../nockAssertions';
|
|
16
|
-
import { GraphQLSchemaModule } from '
|
|
16
|
+
import { GraphQLSchemaModule } from '@apollo/subgraph/src/schema-helper';
|
|
17
17
|
import resolvable, { Resolvable } from '@josephg/resolvable';
|
|
18
18
|
|
|
19
19
|
// Normalize specific fields that change often (eg timestamps) to static values,
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
SupergraphSdlUpdateFunction,
|
|
6
6
|
} from '@apollo/gateway';
|
|
7
7
|
import { fixturesWithUpdate } from 'apollo-federation-integration-testsuite';
|
|
8
|
-
import { createHash } from '
|
|
8
|
+
import { createHash } from '@apollo/utils.createhash';
|
|
9
9
|
import { ApolloServer } from 'apollo-server';
|
|
10
10
|
import type { Logger } from '@apollo/utils.logger';
|
|
11
11
|
import { fetch } from '../../__mocks__/make-fetch-happen-fetcher';
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
import { fetch, Request, Headers, Response } from 'apollo-server-env';
|
|
16
16
|
import { isObject } from '../utilities/predicates';
|
|
17
17
|
import { GraphQLDataSource, GraphQLDataSourceProcessOptions, GraphQLDataSourceRequestKind } from './types';
|
|
18
|
-
import
|
|
18
|
+
import { createHash } from '@apollo/utils.createhash';
|
|
19
19
|
import { parseCacheControlHeader } from './parseCacheControlHeader';
|
|
20
20
|
import fetcher from 'make-fetch-happen';
|
|
21
21
|
export class RemoteGraphQLDataSource<
|
|
@@ -112,7 +112,7 @@ export class RemoteGraphQLDataSource<
|
|
|
112
112
|
: null;
|
|
113
113
|
|
|
114
114
|
if (this.apq) {
|
|
115
|
-
const apqHash =
|
|
115
|
+
const apqHash = createHash('sha256').update(request.query).digest('hex');
|
|
116
116
|
|
|
117
117
|
// Take the original extensions and extend them with
|
|
118
118
|
// the necessary "extensions" for APQ handshaking.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LocalGraphQLDataSource } from '../LocalGraphQLDataSource';
|
|
2
2
|
import { buildSubgraphSchema } from '@apollo/subgraph';
|
|
3
3
|
import gql from 'graphql-tag';
|
|
4
|
-
import { GraphQLResolverMap } from '
|
|
4
|
+
import { GraphQLResolverMap } from '@apollo/subgraph/src/schema-helper';
|
|
5
5
|
import { GraphQLRequestContext } from 'apollo-server-types';
|
|
6
6
|
import { GraphQLDataSourceRequestKind } from '../types';
|
|
7
7
|
|
package/src/index.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
GraphQLExecutionResult,
|
|
5
5
|
GraphQLRequestContextExecutionDidStart,
|
|
6
6
|
} from 'apollo-server-types';
|
|
7
|
+
import { createHash } from '@apollo/utils.createhash';
|
|
7
8
|
import type { Logger } from '@apollo/utils.logger';
|
|
8
9
|
import { InMemoryLRUCache } from 'apollo-server-caching';
|
|
9
10
|
import {
|
|
@@ -26,7 +27,6 @@ import {
|
|
|
26
27
|
import { RemoteGraphQLDataSource } from './datasources/RemoteGraphQLDataSource';
|
|
27
28
|
import { getVariableValues } from 'graphql/execution/values';
|
|
28
29
|
import fetcher from 'make-fetch-happen';
|
|
29
|
-
import { HttpRequestCache } from './cache';
|
|
30
30
|
import { fetch } from 'apollo-server-env';
|
|
31
31
|
import {
|
|
32
32
|
QueryPlanner,
|
|
@@ -53,14 +53,19 @@ import {
|
|
|
53
53
|
} from './config';
|
|
54
54
|
import { SpanStatusCode } from '@opentelemetry/api';
|
|
55
55
|
import { OpenTelemetrySpanNames, tracer } from './utilities/opentelemetry';
|
|
56
|
-
import {
|
|
56
|
+
import { addExtensions } from './schema-helper/addExtensions';
|
|
57
57
|
import {
|
|
58
58
|
IntrospectAndCompose,
|
|
59
59
|
UplinkFetcher,
|
|
60
60
|
LegacyFetcher,
|
|
61
61
|
LocalCompose,
|
|
62
62
|
} from './supergraphManagers';
|
|
63
|
-
import {
|
|
63
|
+
import {
|
|
64
|
+
buildSupergraphSchema,
|
|
65
|
+
operationFromDocument,
|
|
66
|
+
Schema,
|
|
67
|
+
ServiceDefinition,
|
|
68
|
+
} from '@apollo/federation-internals';
|
|
64
69
|
|
|
65
70
|
type DataSourceMap = {
|
|
66
71
|
[serviceName: string]: { url?: string; dataSource: GraphQLDataSource };
|
|
@@ -78,7 +83,6 @@ type WarnedStates = {
|
|
|
78
83
|
export function getDefaultFetcher() {
|
|
79
84
|
const { name, version } = require('../package.json');
|
|
80
85
|
return fetcher.defaults({
|
|
81
|
-
cacheManager: new HttpRequestCache(),
|
|
82
86
|
// All headers should be lower-cased here, as `make-fetch-happen`
|
|
83
87
|
// treats differently cased headers as unique (unlike the `Headers` object).
|
|
84
88
|
// @see: https://git.io/JvRUa
|
|
@@ -426,6 +430,8 @@ export class ApolloGateway implements GraphQLService {
|
|
|
426
430
|
}`,
|
|
427
431
|
);
|
|
428
432
|
|
|
433
|
+
addExtensions(this.schema!);
|
|
434
|
+
|
|
429
435
|
return {
|
|
430
436
|
schema: this.schema!,
|
|
431
437
|
executor: this.executor,
|
|
@@ -635,8 +641,8 @@ export class ApolloGateway implements GraphQLService {
|
|
|
635
641
|
): void {
|
|
636
642
|
if (this.queryPlanStore) this.queryPlanStore.flush();
|
|
637
643
|
this.apiSchema = coreSchema.toAPISchema();
|
|
638
|
-
this.schema =
|
|
639
|
-
this.apiSchema.toGraphQLJSSchema(),
|
|
644
|
+
this.schema = addExtensions(
|
|
645
|
+
wrapSchemaWithAliasResolver(this.apiSchema.toGraphQLJSSchema()),
|
|
640
646
|
);
|
|
641
647
|
this.queryPlanner = new QueryPlanner(coreSchema);
|
|
642
648
|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { buildSchema } from 'graphql';
|
|
2
|
+
import { addExtensions } from '../addExtensions';
|
|
3
|
+
const { version } = require('../../../package.json');
|
|
4
|
+
|
|
5
|
+
describe('addExtensions', () => {
|
|
6
|
+
it('adds gateway extensions to a schema', async () => {
|
|
7
|
+
const schema = buildSchema('type Query { hello: String }');
|
|
8
|
+
expect(schema.extensions).toEqual({});
|
|
9
|
+
expect(addExtensions(schema).extensions).toEqual({ apollo: { gateway: { version: version } } });
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GraphQLSchema } from 'graphql';
|
|
2
|
+
const { version } = require('../../package.json');
|
|
3
|
+
|
|
4
|
+
export function addExtensions(schema: GraphQLSchema): GraphQLSchema {
|
|
5
|
+
schema.extensions = {
|
|
6
|
+
...schema.extensions,
|
|
7
|
+
apollo: {
|
|
8
|
+
...schema.extensions.apollo,
|
|
9
|
+
gateway: {
|
|
10
|
+
...schema.extensions.apollo?.gateway,
|
|
11
|
+
version,
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
return schema;
|
|
17
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { GraphQLResolveInfo } from 'graphql';
|
|
2
|
+
|
|
3
|
+
type GraphQLReferenceResolver<TContext> = (
|
|
4
|
+
reference: object,
|
|
5
|
+
context: TContext,
|
|
6
|
+
info: GraphQLResolveInfo,
|
|
7
|
+
) => any;
|
|
8
|
+
|
|
9
|
+
interface ApolloSubgraphExtensions<TContext> {
|
|
10
|
+
resolveReference?: GraphQLReferenceResolver<TContext>;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
interface ApolloGatewayExtensions {
|
|
14
|
+
version?: String;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
declare module 'graphql/type/definition' {
|
|
18
|
+
interface GraphQLObjectTypeExtensions<_TSource = any, _TContext = any> {
|
|
19
|
+
apollo?: {
|
|
20
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
interface GraphQLInterfaceTypeExtensions<_TSource = any, _TContext = any> {
|
|
25
|
+
apollo?: {
|
|
26
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
interface GraphQLUnionTypeExtensions<_TSource = any, _TContext = any> {
|
|
31
|
+
apollo?: {
|
|
32
|
+
subgraph?: ApolloSubgraphExtensions<_TContext>;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
declare module 'graphql/type/schema' {
|
|
38
|
+
interface GraphQLSchemaExtensions {
|
|
39
|
+
apollo?: {
|
|
40
|
+
gateway?: ApolloGatewayExtensions;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
package/dist/cache.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { CacheManager } from 'make-fetch-happen';
|
|
2
|
-
import { Request, Response, Headers } from 'apollo-server-env';
|
|
3
|
-
import { InMemoryLRUCache } from 'apollo-server-caching';
|
|
4
|
-
interface CachedRequest {
|
|
5
|
-
body: string;
|
|
6
|
-
status: number;
|
|
7
|
-
statusText: string;
|
|
8
|
-
headers: Headers;
|
|
9
|
-
}
|
|
10
|
-
export declare class HttpRequestCache implements CacheManager {
|
|
11
|
-
cache: InMemoryLRUCache<CachedRequest>;
|
|
12
|
-
constructor(cache?: InMemoryLRUCache<CachedRequest>);
|
|
13
|
-
delete(request: Request): Promise<boolean>;
|
|
14
|
-
put(request: Request, response: Response): Promise<Response>;
|
|
15
|
-
match(request: Request): Promise<Response | undefined>;
|
|
16
|
-
}
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=cache.d.ts.map
|
package/dist/cache.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAQzD,UAAU,aAAa;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CACpB;AAED,qBAAa,gBAAiB,YAAW,YAAY;IAE1C,KAAK,EAAE,gBAAgB,CAAC,aAAa,CAAC;gBAAtC,KAAK,GAAE,gBAAgB,CAAC,aAAa,CAE1C;IAIE,MAAM,CAAC,OAAO,EAAE,OAAO;IAOvB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;IAwBxC,KAAK,CAAC,OAAO,EAAE,OAAO;CAS7B"}
|
package/dist/cache.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.HttpRequestCache = void 0;
|
|
4
|
-
const apollo_server_env_1 = require("apollo-server-env");
|
|
5
|
-
const apollo_server_caching_1 = require("apollo-server-caching");
|
|
6
|
-
const MAX_SIZE = 5 * 1024 * 1024;
|
|
7
|
-
function cacheKey(request) {
|
|
8
|
-
return `gateway:request-cache:${request.method}:${request.url}`;
|
|
9
|
-
}
|
|
10
|
-
class HttpRequestCache {
|
|
11
|
-
constructor(cache = new apollo_server_caching_1.InMemoryLRUCache({
|
|
12
|
-
maxSize: MAX_SIZE,
|
|
13
|
-
})) {
|
|
14
|
-
this.cache = cache;
|
|
15
|
-
}
|
|
16
|
-
async delete(request) {
|
|
17
|
-
const key = cacheKey(request);
|
|
18
|
-
const entry = await this.cache.get(key);
|
|
19
|
-
await this.cache.delete(key);
|
|
20
|
-
return Boolean(entry);
|
|
21
|
-
}
|
|
22
|
-
async put(request, response) {
|
|
23
|
-
if (request.method === "HEAD" || response.status === 304) {
|
|
24
|
-
return response;
|
|
25
|
-
}
|
|
26
|
-
const body = await response.text();
|
|
27
|
-
this.cache.set(cacheKey(request), {
|
|
28
|
-
body,
|
|
29
|
-
status: response.status,
|
|
30
|
-
statusText: response.statusText,
|
|
31
|
-
headers: response.headers,
|
|
32
|
-
});
|
|
33
|
-
return new apollo_server_env_1.Response(body, response);
|
|
34
|
-
}
|
|
35
|
-
async match(request) {
|
|
36
|
-
return this.cache.get(cacheKey(request)).then(response => {
|
|
37
|
-
if (response) {
|
|
38
|
-
const { body, ...requestInit } = response;
|
|
39
|
-
return new apollo_server_env_1.Response(body, requestInit);
|
|
40
|
-
}
|
|
41
|
-
return;
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
exports.HttpRequestCache = HttpRequestCache;
|
|
46
|
-
//# sourceMappingURL=cache.js.map
|
package/dist/cache.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":";;;AACA,yDAA+D;AAC/D,iEAAyD;AAEzD,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,SAAS,QAAQ,CAAC,OAAgB;IAChC,OAAO,yBAAyB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AAClE,CAAC;AASD,MAAa,gBAAgB;IAC3B,YACS,QAAyC,IAAI,wCAAgB,CAAC;QACnE,OAAO,EAAE,QAAQ;KAClB,CAAC;QAFK,UAAK,GAAL,KAAK,CAEV;IACD,CAAC;IAGJ,KAAK,CAAC,MAAM,CAAC,OAAgB;QAC3B,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAgB,EAAE,QAAkB;QAQ5C,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YACxD,OAAO,QAAQ,CAAC;SACjB;QAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAChC,IAAI;YACJ,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC,CAAC;QAEH,OAAO,IAAI,4BAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAgB;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACvD,IAAI,QAAQ,EAAE;gBACZ,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,GAAG,QAAQ,CAAC;gBAC1C,OAAO,IAAI,4BAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;aACxC;YACD,OAAO;QACT,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAhDD,4CAgDC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addResolversToSchema.d.ts","sourceRoot":"","sources":["../../src/schema-helper/addResolversToSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAOd,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,QAoEnC"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.addResolversToSchema = void 0;
|
|
4
|
-
const graphql_1 = require("graphql");
|
|
5
|
-
function addResolversToSchema(schema, resolvers) {
|
|
6
|
-
for (const [typeName, fieldConfigs] of Object.entries(resolvers)) {
|
|
7
|
-
const type = schema.getType(typeName);
|
|
8
|
-
if ((0, graphql_1.isAbstractType)(type)) {
|
|
9
|
-
for (const [fieldName, fieldConfig] of Object.entries(fieldConfigs)) {
|
|
10
|
-
if (fieldName.startsWith("__")) {
|
|
11
|
-
type[fieldName.substring(2)] = fieldConfig;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
if ((0, graphql_1.isScalarType)(type)) {
|
|
16
|
-
for (const fn in fieldConfigs) {
|
|
17
|
-
type[fn] = fieldConfigs[fn];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
if ((0, graphql_1.isEnumType)(type)) {
|
|
21
|
-
const values = type.getValues();
|
|
22
|
-
const newValues = {};
|
|
23
|
-
values.forEach(value => {
|
|
24
|
-
let newValue = fieldConfigs[value.name];
|
|
25
|
-
if (newValue === undefined) {
|
|
26
|
-
newValue = value.name;
|
|
27
|
-
}
|
|
28
|
-
newValues[value.name] = {
|
|
29
|
-
value: newValue,
|
|
30
|
-
deprecationReason: value.deprecationReason,
|
|
31
|
-
description: value.description,
|
|
32
|
-
astNode: value.astNode,
|
|
33
|
-
extensions: undefined
|
|
34
|
-
};
|
|
35
|
-
});
|
|
36
|
-
Object.assign(type, new graphql_1.GraphQLEnumType({
|
|
37
|
-
...type.toConfig(),
|
|
38
|
-
values: newValues
|
|
39
|
-
}));
|
|
40
|
-
}
|
|
41
|
-
if (!(0, graphql_1.isObjectType)(type))
|
|
42
|
-
continue;
|
|
43
|
-
const fieldMap = type.getFields();
|
|
44
|
-
for (const [fieldName, fieldConfig] of Object.entries(fieldConfigs)) {
|
|
45
|
-
if (fieldName.startsWith("__")) {
|
|
46
|
-
type[fieldName.substring(2)] = fieldConfig;
|
|
47
|
-
continue;
|
|
48
|
-
}
|
|
49
|
-
const field = fieldMap[fieldName];
|
|
50
|
-
if (!field)
|
|
51
|
-
continue;
|
|
52
|
-
if (typeof fieldConfig === "function") {
|
|
53
|
-
field.resolve = fieldConfig;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
field.resolve = fieldConfig.resolve;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.addResolversToSchema = addResolversToSchema;
|
|
62
|
-
//# sourceMappingURL=addResolversToSchema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addResolversToSchema.js","sourceRoot":"","sources":["../../src/schema-helper/addResolversToSchema.ts"],"names":[],"mappings":";;;AAAA,qCAQiB;AAIjB,SAAgB,oBAAoB,CAClC,MAAqB,EACrB,SAAkC;IAElC,KAAK,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAChE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEtC,IAAI,IAAA,wBAAc,EAAC,IAAI,CAAC,EAAE;YACxB,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBACnE,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;oBAC7B,IAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;iBACrD;aACF;SACF;QAED,IAAI,IAAA,sBAAY,EAAC,IAAI,CAAC,EAAE;YACtB,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE;gBAC5B,IAAY,CAAC,EAAE,CAAC,GAAI,YAAoB,CAAC,EAAE,CAAC,CAAC;aAC/C;SACF;QAED,IAAI,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAChC,MAAM,SAAS,GAA8C,EAAE,CAAC;YAChE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACrB,IAAI,QAAQ,GAAI,YAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjD,IAAI,QAAQ,KAAK,SAAS,EAAE;oBAC1B,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;iBACvB;gBAED,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;oBACtB,KAAK,EAAE,QAAQ;oBACf,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC1C,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,UAAU,EAAE,SAAS;iBACtB,CAAC;YACJ,CAAC,CAAC,CAAC;YAIH,MAAM,CAAC,MAAM,CACX,IAAI,EACJ,IAAI,yBAAe,CAAC;gBAClB,GAAG,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,EAAE,SAAS;aAClB,CAAC,CACH,CAAC;SACH;QAED,IAAI,CAAC,IAAA,sBAAY,EAAC,IAAI,CAAC;YAAE,SAAS;QAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAElC,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACnE,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;gBAC7B,IAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;gBACpD,SAAS;aACV;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE;gBACrC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC;aAC7B;iBAAM;gBACL,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;aACrC;SACF;KACF;AACH,CAAC;AAtED,oDAsEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/schema-helper/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,4BAA6B,SAAQ,KAAK;IAClC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC;gBAAnC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC;CAOvD"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GraphQLSchemaValidationError = void 0;
|
|
4
|
-
class GraphQLSchemaValidationError extends Error {
|
|
5
|
-
constructor(errors) {
|
|
6
|
-
super();
|
|
7
|
-
this.errors = errors;
|
|
8
|
-
this.name = this.constructor.name;
|
|
9
|
-
Error.captureStackTrace(this, this.constructor);
|
|
10
|
-
this.message = errors.map(error => error.message).join("\n\n");
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
exports.GraphQLSchemaValidationError = GraphQLSchemaValidationError;
|
|
14
|
-
//# sourceMappingURL=error.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/schema-helper/error.ts"],"names":[],"mappings":";;;AAEA,MAAa,4BAA6B,SAAQ,KAAK;IACrD,YAAmB,MAAmC;QACpD,KAAK,EAAE,CAAC;QADS,WAAM,GAAN,MAAM,CAA6B;QAGpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;CACF;AARD,oEAQC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema-helper/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,SAAS,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./resolverMap"), exports);
|
|
18
|
-
__exportStar(require("./addResolversToSchema"), exports);
|
|
19
|
-
__exportStar(require("./error"), exports);
|
|
20
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema-helper/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,yDAAuC;AACvC,0CAAwB"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { GraphQLFieldResolver, GraphQLScalarType, DocumentNode } from 'graphql';
|
|
2
|
-
export interface GraphQLSchemaModule {
|
|
3
|
-
typeDefs: DocumentNode;
|
|
4
|
-
resolvers?: GraphQLResolverMap<any>;
|
|
5
|
-
}
|
|
6
|
-
export interface GraphQLResolverMap<TContext = {}> {
|
|
7
|
-
[typeName: string]: {
|
|
8
|
-
[fieldName: string]: GraphQLFieldResolver<any, TContext> | {
|
|
9
|
-
requires?: string;
|
|
10
|
-
resolve: GraphQLFieldResolver<any, TContext>;
|
|
11
|
-
};
|
|
12
|
-
} | GraphQLScalarType | {
|
|
13
|
-
[enumValue: string]: string | number;
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=resolverMap.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolverMap.d.ts","sourceRoot":"","sources":["../../src/schema-helper/resolverMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEhF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;CACrC;AAGD,MAAM,WAAW,kBAAkB,CAAC,QAAQ,GAAG,EAAE;IAC/C,CAAC,QAAQ,EAAE,MAAM,GACb;QACE,CAAC,SAAS,EAAE,MAAM,GACd,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC,GACnC;YACE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,OAAO,EAAE,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SAC9C,CAAC;KACP,GACD,iBAAiB,GACjB;QACE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;KACtC,CAAC;CACP"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolverMap.js","sourceRoot":"","sources":["../../src/schema-helper/resolverMap.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createHash.d.ts","sourceRoot":"","sources":["../../src/utilities/createHash.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,QAAQ,EAAE,IAAI,CAO/D"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createHash = void 0;
|
|
7
|
-
const isNodeLike_1 = __importDefault(require("./isNodeLike"));
|
|
8
|
-
function createHash(kind) {
|
|
9
|
-
if (isNodeLike_1.default) {
|
|
10
|
-
return module.require('crypto').createHash(kind);
|
|
11
|
-
}
|
|
12
|
-
return require('sha.js')(kind);
|
|
13
|
-
}
|
|
14
|
-
exports.createHash = createHash;
|
|
15
|
-
//# sourceMappingURL=createHash.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createHash.js","sourceRoot":"","sources":["../../src/utilities/createHash.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAsC;AAEtC,SAAgB,UAAU,CAAE,IAAY;IACtC,IAAI,oBAAU,EAAE;QAGd,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAClD;IACD,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAPD,gCAOC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isNodeLike.d.ts","sourceRoot":"","sources":["../../src/utilities/isNodeLike.ts"],"names":[],"mappings":";AAAA,wBAU4C"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = typeof process === 'object' &&
|
|
4
|
-
process &&
|
|
5
|
-
process.release &&
|
|
6
|
-
process.versions &&
|
|
7
|
-
typeof process.versions.node === 'string';
|
|
8
|
-
//# sourceMappingURL=isNodeLike.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isNodeLike.js","sourceRoot":"","sources":["../../src/utilities/isNodeLike.ts"],"names":[],"mappings":";;AAAA,kBAAe,OAAO,OAAO,KAAK,QAAQ;IACxC,OAAO;IAKP,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;IAGhB,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC"}
|
package/src/cache.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { CacheManager } from 'make-fetch-happen';
|
|
2
|
-
import { Request, Response, Headers } from 'apollo-server-env';
|
|
3
|
-
import { InMemoryLRUCache } from 'apollo-server-caching';
|
|
4
|
-
|
|
5
|
-
const MAX_SIZE = 5 * 1024 * 1024; // 5MB
|
|
6
|
-
|
|
7
|
-
function cacheKey(request: Request) {
|
|
8
|
-
return `gateway:request-cache:${request.method}:${request.url}`;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
interface CachedRequest {
|
|
12
|
-
body: string;
|
|
13
|
-
status: number;
|
|
14
|
-
statusText: string;
|
|
15
|
-
headers: Headers;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export class HttpRequestCache implements CacheManager {
|
|
19
|
-
constructor(
|
|
20
|
-
public cache: InMemoryLRUCache<CachedRequest> = new InMemoryLRUCache({
|
|
21
|
-
maxSize: MAX_SIZE,
|
|
22
|
-
}),
|
|
23
|
-
) {}
|
|
24
|
-
|
|
25
|
-
// Return true if entry exists, else false
|
|
26
|
-
async delete(request: Request) {
|
|
27
|
-
const key = cacheKey(request);
|
|
28
|
-
const entry = await this.cache.get(key);
|
|
29
|
-
await this.cache.delete(key);
|
|
30
|
-
return Boolean(entry);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
async put(request: Request, response: Response) {
|
|
34
|
-
// A `HEAD` request has no body to cache and a 304 response could have
|
|
35
|
-
// only been negotiated by using a cached body that was still valid.
|
|
36
|
-
// Therefore, we do NOT write to the cache in either of these cases.
|
|
37
|
-
// Without avoiding this, we will invalidate the cache, thus causing
|
|
38
|
-
// subsequent conditional requests (e.g., `If-None-Match: "MD%") to be
|
|
39
|
-
// lacking content to conditionally request against and necessitating
|
|
40
|
-
// a full request/response.
|
|
41
|
-
if (request.method === "HEAD" || response.status === 304) {
|
|
42
|
-
return response;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
const body = await response.text();
|
|
46
|
-
|
|
47
|
-
this.cache.set(cacheKey(request), {
|
|
48
|
-
body,
|
|
49
|
-
status: response.status,
|
|
50
|
-
statusText: response.statusText,
|
|
51
|
-
headers: response.headers,
|
|
52
|
-
});
|
|
53
|
-
|
|
54
|
-
return new Response(body, response);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
async match(request: Request) {
|
|
58
|
-
return this.cache.get(cacheKey(request)).then(response => {
|
|
59
|
-
if (response) {
|
|
60
|
-
const { body, ...requestInit } = response;
|
|
61
|
-
return new Response(body, requestInit);
|
|
62
|
-
}
|
|
63
|
-
return;
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
GraphQLSchema,
|
|
3
|
-
isObjectType,
|
|
4
|
-
GraphQLEnumType,
|
|
5
|
-
isAbstractType,
|
|
6
|
-
isScalarType,
|
|
7
|
-
isEnumType,
|
|
8
|
-
GraphQLEnumValueConfig,
|
|
9
|
-
} from 'graphql';
|
|
10
|
-
|
|
11
|
-
import { GraphQLResolverMap } from './resolverMap';
|
|
12
|
-
|
|
13
|
-
export function addResolversToSchema(
|
|
14
|
-
schema: GraphQLSchema,
|
|
15
|
-
resolvers: GraphQLResolverMap<any>
|
|
16
|
-
) {
|
|
17
|
-
for (const [typeName, fieldConfigs] of Object.entries(resolvers)) {
|
|
18
|
-
const type = schema.getType(typeName);
|
|
19
|
-
|
|
20
|
-
if (isAbstractType(type)) {
|
|
21
|
-
for (const [fieldName, fieldConfig] of Object.entries(fieldConfigs)) {
|
|
22
|
-
if (fieldName.startsWith("__")) {
|
|
23
|
-
(type as any)[fieldName.substring(2)] = fieldConfig;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
if (isScalarType(type)) {
|
|
29
|
-
for (const fn in fieldConfigs) {
|
|
30
|
-
(type as any)[fn] = (fieldConfigs as any)[fn];
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
if (isEnumType(type)) {
|
|
35
|
-
const values = type.getValues();
|
|
36
|
-
const newValues: { [key: string]: GraphQLEnumValueConfig } = {};
|
|
37
|
-
values.forEach(value => {
|
|
38
|
-
let newValue = (fieldConfigs as any)[value.name];
|
|
39
|
-
if (newValue === undefined) {
|
|
40
|
-
newValue = value.name;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
newValues[value.name] = {
|
|
44
|
-
value: newValue,
|
|
45
|
-
deprecationReason: value.deprecationReason,
|
|
46
|
-
description: value.description,
|
|
47
|
-
astNode: value.astNode,
|
|
48
|
-
extensions: undefined
|
|
49
|
-
};
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
// In place updating hack to get around pulling in the full
|
|
53
|
-
// schema walking and immutable updating machinery from graphql-tools
|
|
54
|
-
Object.assign(
|
|
55
|
-
type,
|
|
56
|
-
new GraphQLEnumType({
|
|
57
|
-
...type.toConfig(),
|
|
58
|
-
values: newValues
|
|
59
|
-
})
|
|
60
|
-
);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
if (!isObjectType(type)) continue;
|
|
64
|
-
|
|
65
|
-
const fieldMap = type.getFields();
|
|
66
|
-
|
|
67
|
-
for (const [fieldName, fieldConfig] of Object.entries(fieldConfigs)) {
|
|
68
|
-
if (fieldName.startsWith("__")) {
|
|
69
|
-
(type as any)[fieldName.substring(2)] = fieldConfig;
|
|
70
|
-
continue;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
const field = fieldMap[fieldName];
|
|
74
|
-
if (!field) continue;
|
|
75
|
-
|
|
76
|
-
if (typeof fieldConfig === "function") {
|
|
77
|
-
field.resolve = fieldConfig;
|
|
78
|
-
} else {
|
|
79
|
-
field.resolve = fieldConfig.resolve;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { GraphQLError } from "graphql";
|
|
2
|
-
|
|
3
|
-
export class GraphQLSchemaValidationError extends Error {
|
|
4
|
-
constructor(public errors: ReadonlyArray<GraphQLError>) {
|
|
5
|
-
super();
|
|
6
|
-
|
|
7
|
-
this.name = this.constructor.name;
|
|
8
|
-
Error.captureStackTrace(this, this.constructor);
|
|
9
|
-
this.message = errors.map(error => error.message).join("\n\n");
|
|
10
|
-
}
|
|
11
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { GraphQLFieldResolver, GraphQLScalarType, DocumentNode } from 'graphql';
|
|
2
|
-
|
|
3
|
-
export interface GraphQLSchemaModule {
|
|
4
|
-
typeDefs: DocumentNode;
|
|
5
|
-
resolvers?: GraphQLResolverMap<any>;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
9
|
-
export interface GraphQLResolverMap<TContext = {}> {
|
|
10
|
-
[typeName: string]:
|
|
11
|
-
| {
|
|
12
|
-
[fieldName: string]:
|
|
13
|
-
| GraphQLFieldResolver<any, TContext>
|
|
14
|
-
| {
|
|
15
|
-
requires?: string;
|
|
16
|
-
resolve: GraphQLFieldResolver<any, TContext>;
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
| GraphQLScalarType
|
|
20
|
-
| {
|
|
21
|
-
[enumValue: string]: string | number;
|
|
22
|
-
};
|
|
23
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import isNodeLike from './isNodeLike';
|
|
2
|
-
|
|
3
|
-
export function createHash (kind: string): import('crypto').Hash {
|
|
4
|
-
if (isNodeLike) {
|
|
5
|
-
// Use module.require instead of just require to avoid bundling whatever
|
|
6
|
-
// crypto polyfills a non-Node bundler might fall back to.
|
|
7
|
-
return module.require('crypto').createHash(kind);
|
|
8
|
-
}
|
|
9
|
-
return require('sha.js')(kind);
|
|
10
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export default typeof process === 'object' &&
|
|
2
|
-
process &&
|
|
3
|
-
// We used to check `process.release.name === "node"`, however that doesn't
|
|
4
|
-
// account for certain forks of Node.js which are otherwise identical to
|
|
5
|
-
// Node.js. For example, NodeSource's N|Solid reports itself as "nsolid",
|
|
6
|
-
// though it's mostly the same build of Node.js with an extra addon.
|
|
7
|
-
process.release &&
|
|
8
|
-
process.versions &&
|
|
9
|
-
// The one thing which is present on both Node.js and N|Solid (a fork of
|
|
10
|
-
// Node.js), is `process.versions.node` being defined.
|
|
11
|
-
typeof process.versions.node === 'string';
|