@apollo/gateway 2.4.3 → 2.4.4

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.
Files changed (119) hide show
  1. package/package.json +4 -4
  2. package/src/dataRewrites.ts +1 -1
  3. package/src/supergraphManagers/UplinkSupergraphManager/__tests__/loadSupergraphSdlFromStorage.test.ts +1 -3
  4. package/dist/__generated__/graphqlTypes.d.ts +0 -160
  5. package/dist/__generated__/graphqlTypes.d.ts.map +0 -1
  6. package/dist/__generated__/graphqlTypes.js +0 -30
  7. package/dist/__generated__/graphqlTypes.js.map +0 -1
  8. package/dist/config.d.ts +0 -138
  9. package/dist/config.d.ts.map +0 -1
  10. package/dist/config.js +0 -60
  11. package/dist/config.js.map +0 -1
  12. package/dist/dataRewrites.d.ts +0 -5
  13. package/dist/dataRewrites.d.ts.map +0 -1
  14. package/dist/dataRewrites.js +0 -103
  15. package/dist/dataRewrites.js.map +0 -1
  16. package/dist/datasources/LocalGraphQLDataSource.d.ts +0 -10
  17. package/dist/datasources/LocalGraphQLDataSource.d.ts.map +0 -1
  18. package/dist/datasources/LocalGraphQLDataSource.js +0 -31
  19. package/dist/datasources/LocalGraphQLDataSource.js.map +0 -1
  20. package/dist/datasources/RemoteGraphQLDataSource.d.ts +0 -24
  21. package/dist/datasources/RemoteGraphQLDataSource.d.ts.map +0 -1
  22. package/dist/datasources/RemoteGraphQLDataSource.js +0 -180
  23. package/dist/datasources/RemoteGraphQLDataSource.js.map +0 -1
  24. package/dist/datasources/index.d.ts +0 -4
  25. package/dist/datasources/index.d.ts.map +0 -1
  26. package/dist/datasources/index.js +0 -8
  27. package/dist/datasources/index.js.map +0 -1
  28. package/dist/datasources/parseCacheControlHeader.d.ts +0 -2
  29. package/dist/datasources/parseCacheControlHeader.d.ts.map +0 -1
  30. package/dist/datasources/parseCacheControlHeader.js +0 -16
  31. package/dist/datasources/parseCacheControlHeader.js.map +0 -1
  32. package/dist/datasources/types.d.ts +0 -23
  33. package/dist/datasources/types.d.ts.map +0 -1
  34. package/dist/datasources/types.js +0 -10
  35. package/dist/datasources/types.js.map +0 -1
  36. package/dist/executeQueryPlan.d.ts +0 -15
  37. package/dist/executeQueryPlan.d.ts.map +0 -1
  38. package/dist/executeQueryPlan.js +0 -539
  39. package/dist/executeQueryPlan.js.map +0 -1
  40. package/dist/index.d.ts +0 -113
  41. package/dist/index.d.ts.map +0 -1
  42. package/dist/index.js +0 -590
  43. package/dist/index.js.map +0 -1
  44. package/dist/logger.d.ts +0 -3
  45. package/dist/logger.d.ts.map +0 -1
  46. package/dist/logger.js +0 -15
  47. package/dist/logger.js.map +0 -1
  48. package/dist/operationContext.d.ts +0 -17
  49. package/dist/operationContext.d.ts.map +0 -1
  50. package/dist/operationContext.js +0 -38
  51. package/dist/operationContext.js.map +0 -1
  52. package/dist/resultShaping.d.ts +0 -12
  53. package/dist/resultShaping.d.ts.map +0 -1
  54. package/dist/resultShaping.js +0 -229
  55. package/dist/resultShaping.js.map +0 -1
  56. package/dist/schema-helper/addExtensions.d.ts +0 -3
  57. package/dist/schema-helper/addExtensions.d.ts.map +0 -1
  58. package/dist/schema-helper/addExtensions.js +0 -23
  59. package/dist/schema-helper/addExtensions.js.map +0 -1
  60. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts +0 -31
  61. package/dist/supergraphManagers/IntrospectAndCompose/index.d.ts.map +0 -1
  62. package/dist/supergraphManagers/IntrospectAndCompose/index.js +0 -112
  63. package/dist/supergraphManagers/IntrospectAndCompose/index.js.map +0 -1
  64. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts +0 -12
  65. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.d.ts.map +0 -1
  66. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.js +0 -57
  67. package/dist/supergraphManagers/IntrospectAndCompose/loadServicesFromRemoteEndpoint.js.map +0 -1
  68. package/dist/supergraphManagers/LegacyFetcher/index.d.ts +0 -33
  69. package/dist/supergraphManagers/LegacyFetcher/index.d.ts.map +0 -1
  70. package/dist/supergraphManagers/LegacyFetcher/index.js +0 -149
  71. package/dist/supergraphManagers/LegacyFetcher/index.js.map +0 -1
  72. package/dist/supergraphManagers/LocalCompose/index.d.ts +0 -19
  73. package/dist/supergraphManagers/LocalCompose/index.d.ts.map +0 -1
  74. package/dist/supergraphManagers/LocalCompose/index.js +0 -55
  75. package/dist/supergraphManagers/LocalCompose/index.js.map +0 -1
  76. package/dist/supergraphManagers/UplinkSupergraphManager/index.d.ts +0 -63
  77. package/dist/supergraphManagers/UplinkSupergraphManager/index.d.ts.map +0 -1
  78. package/dist/supergraphManagers/UplinkSupergraphManager/index.js +0 -210
  79. package/dist/supergraphManagers/UplinkSupergraphManager/index.js.map +0 -1
  80. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.d.ts +0 -30
  81. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.d.ts.map +0 -1
  82. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.js +0 -145
  83. package/dist/supergraphManagers/UplinkSupergraphManager/loadSupergraphSdlFromStorage.js.map +0 -1
  84. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.d.ts +0 -14
  85. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.d.ts.map +0 -1
  86. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.js +0 -85
  87. package/dist/supergraphManagers/UplinkSupergraphManager/outOfBandReporter.js.map +0 -1
  88. package/dist/supergraphManagers/index.d.ts +0 -6
  89. package/dist/supergraphManagers/index.d.ts.map +0 -1
  90. package/dist/supergraphManagers/index.js +0 -27
  91. package/dist/supergraphManagers/index.js.map +0 -1
  92. package/dist/typings/graphql.d.ts +0 -11
  93. package/dist/typings/graphql.d.ts.map +0 -1
  94. package/dist/typings/graphql.js +0 -3
  95. package/dist/typings/graphql.js.map +0 -1
  96. package/dist/utilities/array.d.ts +0 -5
  97. package/dist/utilities/array.d.ts.map +0 -1
  98. package/dist/utilities/array.js +0 -46
  99. package/dist/utilities/array.js.map +0 -1
  100. package/dist/utilities/assert.d.ts +0 -2
  101. package/dist/utilities/assert.d.ts.map +0 -1
  102. package/dist/utilities/assert.js +0 -10
  103. package/dist/utilities/assert.js.map +0 -1
  104. package/dist/utilities/deepMerge.d.ts +0 -2
  105. package/dist/utilities/deepMerge.d.ts.map +0 -1
  106. package/dist/utilities/deepMerge.js +0 -34
  107. package/dist/utilities/deepMerge.js.map +0 -1
  108. package/dist/utilities/graphql.d.ts +0 -5
  109. package/dist/utilities/graphql.d.ts.map +0 -1
  110. package/dist/utilities/graphql.js +0 -28
  111. package/dist/utilities/graphql.js.map +0 -1
  112. package/dist/utilities/opentelemetry.d.ts +0 -10
  113. package/dist/utilities/opentelemetry.d.ts.map +0 -1
  114. package/dist/utilities/opentelemetry.js +0 -19
  115. package/dist/utilities/opentelemetry.js.map +0 -1
  116. package/dist/utilities/predicates.d.ts +0 -2
  117. package/dist/utilities/predicates.d.ts.map +0 -1
  118. package/dist/utilities/predicates.js +0 -11
  119. package/dist/utilities/predicates.js.map +0 -1
@@ -1,24 +0,0 @@
1
- import { GraphQLDataSource, GraphQLDataSourceProcessOptions } from './types';
2
- import { ResponsePath } from '@apollo/query-planner';
3
- import { Request as NodeFetchRequest } from 'node-fetch';
4
- import { Fetcher, FetcherResponse } from '@apollo/utils.fetcher';
5
- import { GraphQLError } from 'graphql';
6
- import { GatewayGraphQLRequestContext, GatewayGraphQLResponse } from '@apollo/server-gateway-interface';
7
- export declare class RemoteGraphQLDataSource<TContext extends Record<string, any> = Record<string, any>> implements GraphQLDataSource<TContext> {
8
- fetcher: Fetcher;
9
- constructor(config?: Partial<RemoteGraphQLDataSource<TContext>> & object & ThisType<RemoteGraphQLDataSource<TContext>>);
10
- url: string;
11
- apq: boolean;
12
- honorSubgraphCacheControlHeader: boolean;
13
- process(options: GraphQLDataSourceProcessOptions<TContext>): Promise<GatewayGraphQLResponse>;
14
- private sendRequest;
15
- willSendRequest?(options: GraphQLDataSourceProcessOptions<TContext>): void | Promise<void>;
16
- private respond;
17
- didReceiveResponse?(requestContext: Required<Pick<GatewayGraphQLRequestContext<TContext>, 'request' | 'response' | 'context'>> & {
18
- pathInIncomingRequest?: ResponsePath;
19
- }): GatewayGraphQLResponse | Promise<GatewayGraphQLResponse>;
20
- didEncounterError(error: Error, _fetchRequest: NodeFetchRequest, _fetchResponse?: FetcherResponse, _context?: TContext): void;
21
- parseBody(fetchResponse: FetcherResponse, _fetchRequest?: NodeFetchRequest, _context?: TContext): Promise<object | string>;
22
- errorFromResponse(response: FetcherResponse): Promise<GraphQLError>;
23
- }
24
- //# sourceMappingURL=RemoteGraphQLDataSource.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RemoteGraphQLDataSource.d.ts","sourceRoot":"","sources":["../../src/datasources/RemoteGraphQLDataSource.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,+BAA+B,EAAgC,MAAM,SAAS,CAAC;AAE3G,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,EAA+B,OAAO,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,OAAO,EAAsB,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,YAAY,EAA0B,MAAM,SAAS,CAAC;AAC/D,OAAO,EAA+D,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAErK,qBAAa,uBAAuB,CAClC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAC1D,YAAW,iBAAiB,CAAC,QAAQ,CAAC;IAEtC,OAAO,EAAE,OAAO,CAAC;gBAGf,MAAM,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,GACjD,MAAM,GACN,QAAQ,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAkB/C,GAAG,EAAG,MAAM,CAAC;IAoBb,GAAG,EAAE,OAAO,CAAS;IAMrB,+BAA+B,EAAE,OAAO,CAAQ;IAE1C,OAAO,CACX,OAAO,EAAE,+BAA+B,CAAC,QAAQ,CAAC,GACjD,OAAO,CAAC,sBAAsB,CAAC;YAyGpB,WAAW;IAsDlB,eAAe,CAAC,CACrB,OAAO,EAAE,+BAA+B,CAAC,QAAQ,CAAC,GACjD,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAET,OAAO;IA4Cd,kBAAkB,CAAC,CACxB,cAAc,EAAE,QAAQ,CACtB,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,CACjF,GAAG;QAAE,qBAAqB,CAAC,EAAE,YAAY,CAAA;KAAE,GAC3C,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAEpD,iBAAiB,CACtB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,gBAAgB,EAC/B,cAAc,CAAC,EAAE,eAAe,EAChC,QAAQ,CAAC,EAAE,QAAQ;IAKd,SAAS,CACd,aAAa,EAAE,eAAe,EAC9B,aAAa,CAAC,EAAE,gBAAgB,EAChC,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IASd,iBAAiB,CAAC,QAAQ,EAAE,eAAe;CAsBzD"}
@@ -1,180 +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.RemoteGraphQLDataSource = void 0;
7
- const predicates_1 = require("../utilities/predicates");
8
- const types_1 = require("./types");
9
- const utils_createhash_1 = require("@apollo/utils.createhash");
10
- const parseCacheControlHeader_1 = require("./parseCacheControlHeader");
11
- const make_fetch_happen_1 = __importDefault(require("make-fetch-happen"));
12
- const node_fetch_1 = require("node-fetch");
13
- const graphql_1 = require("graphql");
14
- class RemoteGraphQLDataSource {
15
- constructor(config) {
16
- this.apq = false;
17
- this.honorSubgraphCacheControlHeader = true;
18
- this.fetcher = make_fetch_happen_1.default.defaults({
19
- maxSockets: Infinity,
20
- retry: false,
21
- });
22
- if (config) {
23
- return Object.assign(this, config);
24
- }
25
- }
26
- async process(options) {
27
- var _a;
28
- const { request, context: originalContext } = options;
29
- const pathInIncomingRequest = options.kind === types_1.GraphQLDataSourceRequestKind.INCOMING_OPERATION
30
- ? options.pathInIncomingRequest
31
- : undefined;
32
- const context = originalContext;
33
- const headers = new node_fetch_1.Headers();
34
- if ((_a = request.http) === null || _a === void 0 ? void 0 : _a.headers) {
35
- for (const [name, value] of request.http.headers) {
36
- headers.append(name, value);
37
- }
38
- }
39
- headers.set('Content-Type', 'application/json');
40
- request.http = {
41
- method: 'POST',
42
- url: this.url,
43
- headers,
44
- };
45
- if (this.willSendRequest) {
46
- await this.willSendRequest(options);
47
- }
48
- if (!request.query) {
49
- throw new Error('Missing query');
50
- }
51
- const { query, ...requestWithoutQuery } = request;
52
- const overallCachePolicy = this.honorSubgraphCacheControlHeader &&
53
- options.kind === types_1.GraphQLDataSourceRequestKind.INCOMING_OPERATION &&
54
- options.incomingRequestContext.overallCachePolicy &&
55
- 'restrict' in options.incomingRequestContext.overallCachePolicy
56
- ? options.incomingRequestContext.overallCachePolicy
57
- : null;
58
- if (this.apq) {
59
- const apqHash = (0, utils_createhash_1.createHash)('sha256').update(request.query).digest('hex');
60
- requestWithoutQuery.extensions = {
61
- ...request.extensions,
62
- persistedQuery: {
63
- version: 1,
64
- sha256Hash: apqHash,
65
- },
66
- };
67
- const apqOptimisticResponse = await this.sendRequest(requestWithoutQuery, context);
68
- if (!apqOptimisticResponse.errors ||
69
- !apqOptimisticResponse.errors.find((error) => error.message === 'PersistedQueryNotFound')) {
70
- return this.respond({
71
- response: apqOptimisticResponse,
72
- request: requestWithoutQuery,
73
- context,
74
- overallCachePolicy,
75
- pathInIncomingRequest
76
- });
77
- }
78
- }
79
- const requestWithQuery = {
80
- query,
81
- ...requestWithoutQuery,
82
- };
83
- const response = await this.sendRequest(requestWithQuery, context);
84
- return this.respond({
85
- response,
86
- request: requestWithQuery,
87
- context,
88
- overallCachePolicy,
89
- pathInIncomingRequest
90
- });
91
- }
92
- async sendRequest(request, context) {
93
- if (!request.http) {
94
- throw new Error("Internal error: Only 'http' requests are supported.");
95
- }
96
- const { http, ...requestWithoutHttp } = request;
97
- const stringifiedRequestWithoutHttp = JSON.stringify(requestWithoutHttp);
98
- const requestInit = {
99
- method: http.method,
100
- headers: Object.fromEntries(http.headers),
101
- body: stringifiedRequestWithoutHttp,
102
- };
103
- const fetchRequest = new node_fetch_1.Request(http.url, requestInit);
104
- let fetchResponse;
105
- try {
106
- fetchResponse = await this.fetcher(http.url, requestInit);
107
- if (!fetchResponse.ok) {
108
- throw await this.errorFromResponse(fetchResponse);
109
- }
110
- const body = await this.parseBody(fetchResponse, fetchRequest, context);
111
- if (!(0, predicates_1.isObject)(body)) {
112
- throw new Error(`Expected JSON response body, but received: ${body}`);
113
- }
114
- return {
115
- ...body,
116
- http: fetchResponse,
117
- };
118
- }
119
- catch (error) {
120
- this.didEncounterError(error, fetchRequest, fetchResponse, context);
121
- throw error;
122
- }
123
- }
124
- async respond({ response, request, context, overallCachePolicy, pathInIncomingRequest }) {
125
- var _a;
126
- const processedResponse = typeof this.didReceiveResponse === 'function'
127
- ? await this.didReceiveResponse({ response, request, context, pathInIncomingRequest })
128
- : response;
129
- if (overallCachePolicy) {
130
- const parsed = (0, parseCacheControlHeader_1.parseCacheControlHeader)((_a = response.http) === null || _a === void 0 ? void 0 : _a.headers.get('cache-control'));
131
- const hint = { maxAge: 0 };
132
- const maxAge = parsed['max-age'];
133
- if (typeof maxAge === 'string' && maxAge.match(/^[0-9]+$/)) {
134
- hint.maxAge = +maxAge;
135
- }
136
- if (parsed['private'] === true) {
137
- hint.scope = 'PRIVATE';
138
- }
139
- if (parsed['public'] === true) {
140
- hint.scope = 'PUBLIC';
141
- }
142
- overallCachePolicy.restrict(hint);
143
- }
144
- return processedResponse;
145
- }
146
- didEncounterError(error, _fetchRequest, _fetchResponse, _context) {
147
- throw error;
148
- }
149
- parseBody(fetchResponse, _fetchRequest, _context) {
150
- const contentType = fetchResponse.headers.get('Content-Type');
151
- if (contentType && contentType.startsWith('application/json')) {
152
- return fetchResponse.json();
153
- }
154
- else {
155
- return fetchResponse.text();
156
- }
157
- }
158
- async errorFromResponse(response) {
159
- const body = await this.parseBody(response);
160
- const extensions = {
161
- response: {
162
- url: response.url,
163
- status: response.status,
164
- statusText: response.statusText,
165
- body,
166
- },
167
- };
168
- if (response.status === 401) {
169
- extensions.code = 'UNAUTHENTICATED';
170
- }
171
- else if (response.status === 403) {
172
- extensions.code = 'FORBIDDEN';
173
- }
174
- return new graphql_1.GraphQLError(`${response.status}: ${response.statusText}`, {
175
- extensions,
176
- });
177
- }
178
- }
179
- exports.RemoteGraphQLDataSource = RemoteGraphQLDataSource;
180
- //# sourceMappingURL=RemoteGraphQLDataSource.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RemoteGraphQLDataSource.js","sourceRoot":"","sources":["../../src/datasources/RemoteGraphQLDataSource.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export { LocalGraphQLDataSource } from './LocalGraphQLDataSource';
2
- export { RemoteGraphQLDataSource } from './RemoteGraphQLDataSource';
3
- export { GraphQLDataSource, GraphQLDataSourceProcessOptions } from './types';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/datasources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC"}
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RemoteGraphQLDataSource = exports.LocalGraphQLDataSource = void 0;
4
- var LocalGraphQLDataSource_1 = require("./LocalGraphQLDataSource");
5
- Object.defineProperty(exports, "LocalGraphQLDataSource", { enumerable: true, get: function () { return LocalGraphQLDataSource_1.LocalGraphQLDataSource; } });
6
- var RemoteGraphQLDataSource_1 = require("./RemoteGraphQLDataSource");
7
- Object.defineProperty(exports, "RemoteGraphQLDataSource", { enumerable: true, get: function () { return RemoteGraphQLDataSource_1.RemoteGraphQLDataSource; } });
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/datasources/index.ts"],"names":[],"mappings":";;;AAAA,mEAAkE;AAAzD,gIAAA,sBAAsB,OAAA;AAC/B,qEAAoE;AAA3D,kIAAA,uBAAuB,OAAA"}
@@ -1,2 +0,0 @@
1
- export declare function parseCacheControlHeader(header: string | null | undefined): Record<string, string | true>;
2
- //# sourceMappingURL=parseCacheControlHeader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseCacheControlHeader.d.ts","sourceRoot":"","sources":["../../src/datasources/parseCacheControlHeader.ts"],"names":[],"mappings":"AA6BA,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAChC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAW/B"}
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseCacheControlHeader = void 0;
4
- function parseCacheControlHeader(header) {
5
- const cc = {};
6
- if (!header)
7
- return cc;
8
- const parts = header.trim().split(/\s*,\s*/);
9
- for (const part of parts) {
10
- const [k, v] = part.split(/\s*=\s*/, 2);
11
- cc[k] = v === undefined ? true : v.replace(/^"|"$/g, '');
12
- }
13
- return cc;
14
- }
15
- exports.parseCacheControlHeader = parseCacheControlHeader;
16
- //# sourceMappingURL=parseCacheControlHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseCacheControlHeader.js","sourceRoot":"","sources":["../../src/datasources/parseCacheControlHeader.ts"],"names":[],"mappings":";;;AA6BA,SAAgB,uBAAuB,CACrC,MAAiC;IAEjC,MAAM,EAAE,GAAkC,EAAE,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACxC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;KAC1D;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAbD,0DAaC"}
@@ -1,23 +0,0 @@
1
- import { ResponsePath } from '@apollo/query-planner';
2
- import { GatewayGraphQLResponse, GatewayGraphQLRequestContext } from '@apollo/server-gateway-interface';
3
- export interface GraphQLDataSource<TContext extends Record<string, any> = Record<string, any>> {
4
- process(options: GraphQLDataSourceProcessOptions<TContext>): Promise<GatewayGraphQLResponse>;
5
- }
6
- export declare enum GraphQLDataSourceRequestKind {
7
- INCOMING_OPERATION = "incoming operation",
8
- HEALTH_CHECK = "health check",
9
- LOADING_SCHEMA = "loading schema"
10
- }
11
- export type GraphQLDataSourceProcessOptions<TContext extends Record<string, any> = Record<string, any>> = {
12
- request: GatewayGraphQLRequestContext<TContext>['request'];
13
- } & ({
14
- kind: GraphQLDataSourceRequestKind.INCOMING_OPERATION;
15
- incomingRequestContext: GatewayGraphQLRequestContext<TContext>;
16
- context: GatewayGraphQLRequestContext<TContext>['context'];
17
- document?: GatewayGraphQLRequestContext<TContext>['document'];
18
- pathInIncomingRequest?: ResponsePath;
19
- } | {
20
- kind: GraphQLDataSourceRequestKind.HEALTH_CHECK | GraphQLDataSourceRequestKind.LOADING_SCHEMA;
21
- context: Record<string, any>;
22
- });
23
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/datasources/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAExG,MAAM,WAAW,iBAAiB,CAChC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAE1D,OAAO,CACL,OAAO,EAAE,+BAA+B,CAAC,QAAQ,CAAC,GACjD,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC;AAED,oBAAY,4BAA4B;IACtC,kBAAkB,uBAAuB;IACzC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;CAClC;AAED,MAAM,MAAM,+BAA+B,CACzC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IACxD;IAIF,OAAO,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC;CAC5D,GAAG,CACA;IACE,IAAI,EAAE,4BAA4B,CAAC,kBAAkB,CAAC;IAMtD,sBAAsB,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAS/D,OAAO,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC;IAQ3D,QAAQ,CAAC,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC;IAM9D,qBAAqB,CAAC,EAAE,YAAY,CAAC;CACtC,GACD;IACE,IAAI,EACA,4BAA4B,CAAC,YAAY,GACzC,4BAA4B,CAAC,cAAc,CAAC;IAIhD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B,CACJ,CAAC"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GraphQLDataSourceRequestKind = void 0;
4
- var GraphQLDataSourceRequestKind;
5
- (function (GraphQLDataSourceRequestKind) {
6
- GraphQLDataSourceRequestKind["INCOMING_OPERATION"] = "incoming operation";
7
- GraphQLDataSourceRequestKind["HEALTH_CHECK"] = "health check";
8
- GraphQLDataSourceRequestKind["LOADING_SCHEMA"] = "loading schema";
9
- })(GraphQLDataSourceRequestKind = exports.GraphQLDataSourceRequestKind || (exports.GraphQLDataSourceRequestKind = {}));
10
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/datasources/types.ts"],"names":[],"mappings":";;;AAWA,IAAY,4BAIX;AAJD,WAAY,4BAA4B;IACtC,yEAAyC,CAAA;IACzC,6DAA6B,CAAA;IAC7B,iEAAiC,CAAA;AACnC,CAAC,EAJW,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAIvC"}
@@ -1,15 +0,0 @@
1
- import { GraphQLFieldResolver, GraphQLSchema } from 'graphql';
2
- import { GraphQLDataSource } from './datasources/types';
3
- import { OperationContext } from './operationContext';
4
- import { QueryPlan, ResponsePath } from '@apollo/query-planner';
5
- import { Schema } from '@apollo/federation-internals';
6
- import { GatewayGraphQLRequestContext, GatewayExecutionResult } from '@apollo/server-gateway-interface';
7
- export type ServiceMap = {
8
- [serviceName: string]: GraphQLDataSource;
9
- };
10
- type ResultMap = Record<string, any>;
11
- export declare function executeQueryPlan(queryPlan: QueryPlan, serviceMap: ServiceMap, requestContext: GatewayGraphQLRequestContext, operationContext: OperationContext, supergraphSchema: GraphQLSchema, apiSchema: Schema): Promise<GatewayExecutionResult>;
12
- export declare function generateHydratedPaths(parent: ResponsePath, path: ResponsePath, data: ResultMap | null, result: ResponsePath[]): void;
13
- export declare const defaultFieldResolverWithAliasSupport: GraphQLFieldResolver<any, any>;
14
- export {};
15
- //# sourceMappingURL=executeQueryPlan.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"executeQueryPlan.d.ts","sourceRoot":"","sources":["../src/executeQueryPlan.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,oBAAoB,EAEpB,aAAa,EASd,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,iBAAiB,EAAgC,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAGL,SAAS,EACT,YAAY,EAKb,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EAAmF,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACvI,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAIxG,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAC1C,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAsFrC,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,4BAA4B,EAC5C,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,aAAa,EAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,sBAAsB,CAAC,CA8JjC;AA4ZD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,SAAS,GAAG,IAAI,EACtB,MAAM,EAAE,YAAY,EAAE,QAmCvB;AAuID,eAAO,MAAM,oCAAoC,EAAE,oBAAoB,CACrE,GAAG,EACH,GAAG,CAYJ,CAAC"}