@apollo/federation-internals 2.0.0-preview.7 → 2.0.0

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 (109) hide show
  1. package/CHANGELOG.md +32 -3
  2. package/dist/buildSchema.d.ts.map +1 -1
  3. package/dist/buildSchema.js +51 -41
  4. package/dist/buildSchema.js.map +1 -1
  5. package/dist/coreSpec.d.ts +16 -8
  6. package/dist/coreSpec.d.ts.map +1 -1
  7. package/dist/coreSpec.js +205 -53
  8. package/dist/coreSpec.js.map +1 -1
  9. package/dist/definitions.d.ts +28 -11
  10. package/dist/definitions.d.ts.map +1 -1
  11. package/dist/definitions.js +185 -67
  12. package/dist/definitions.js.map +1 -1
  13. package/dist/directiveAndTypeSpecification.d.ts +11 -1
  14. package/dist/directiveAndTypeSpecification.d.ts.map +1 -1
  15. package/dist/directiveAndTypeSpecification.js +77 -20
  16. package/dist/directiveAndTypeSpecification.js.map +1 -1
  17. package/dist/error.d.ts +17 -0
  18. package/dist/error.d.ts.map +1 -1
  19. package/dist/error.js +54 -2
  20. package/dist/error.js.map +1 -1
  21. package/dist/extractSubgraphsFromSupergraph.d.ts.map +1 -1
  22. package/dist/extractSubgraphsFromSupergraph.js +7 -1
  23. package/dist/extractSubgraphsFromSupergraph.js.map +1 -1
  24. package/dist/federation.d.ts +22 -5
  25. package/dist/federation.d.ts.map +1 -1
  26. package/dist/federation.js +143 -86
  27. package/dist/federation.js.map +1 -1
  28. package/dist/federationSpec.d.ts +6 -2
  29. package/dist/federationSpec.d.ts.map +1 -1
  30. package/dist/federationSpec.js +47 -22
  31. package/dist/federationSpec.js.map +1 -1
  32. package/dist/inaccessibleSpec.d.ts +10 -2
  33. package/dist/inaccessibleSpec.d.ts.map +1 -1
  34. package/dist/inaccessibleSpec.js +634 -16
  35. package/dist/inaccessibleSpec.js.map +1 -1
  36. package/dist/index.d.ts +2 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +2 -0
  39. package/dist/index.js.map +1 -1
  40. package/dist/introspection.d.ts.map +1 -1
  41. package/dist/introspection.js +8 -3
  42. package/dist/introspection.js.map +1 -1
  43. package/dist/joinSpec.d.ts +5 -1
  44. package/dist/joinSpec.d.ts.map +1 -1
  45. package/dist/joinSpec.js +21 -0
  46. package/dist/joinSpec.js.map +1 -1
  47. package/dist/knownCoreFeatures.d.ts +4 -0
  48. package/dist/knownCoreFeatures.d.ts.map +1 -0
  49. package/dist/knownCoreFeatures.js +16 -0
  50. package/dist/knownCoreFeatures.js.map +1 -0
  51. package/dist/operations.d.ts +1 -0
  52. package/dist/operations.d.ts.map +1 -1
  53. package/dist/operations.js +16 -1
  54. package/dist/operations.js.map +1 -1
  55. package/dist/{sharing.d.ts → precompute.d.ts} +1 -1
  56. package/dist/precompute.d.ts.map +1 -0
  57. package/dist/{sharing.js → precompute.js} +3 -3
  58. package/dist/precompute.js.map +1 -0
  59. package/dist/schemaUpgrader.d.ts.map +1 -1
  60. package/dist/schemaUpgrader.js +17 -7
  61. package/dist/schemaUpgrader.js.map +1 -1
  62. package/dist/suggestions.d.ts +1 -1
  63. package/dist/suggestions.d.ts.map +1 -1
  64. package/dist/suggestions.js.map +1 -1
  65. package/dist/supergraphs.d.ts.map +1 -1
  66. package/dist/supergraphs.js +2 -0
  67. package/dist/supergraphs.js.map +1 -1
  68. package/dist/tagSpec.d.ts +7 -2
  69. package/dist/tagSpec.d.ts.map +1 -1
  70. package/dist/tagSpec.js +35 -14
  71. package/dist/tagSpec.js.map +1 -1
  72. package/dist/validate.js +13 -7
  73. package/dist/validate.js.map +1 -1
  74. package/dist/values.d.ts +2 -2
  75. package/dist/values.d.ts.map +1 -1
  76. package/dist/values.js +13 -11
  77. package/dist/values.js.map +1 -1
  78. package/package.json +4 -4
  79. package/src/__tests__/coreSpec.test.ts +212 -0
  80. package/src/__tests__/definitions.test.ts +75 -0
  81. package/src/__tests__/removeInaccessibleElements.test.ts +2229 -137
  82. package/src/__tests__/schemaUpgrader.test.ts +3 -2
  83. package/src/__tests__/subgraphValidation.test.ts +419 -4
  84. package/src/__tests__/values.test.ts +315 -3
  85. package/src/buildSchema.ts +98 -51
  86. package/src/coreSpec.ts +277 -65
  87. package/src/definitions.ts +317 -92
  88. package/src/directiveAndTypeSpecification.ts +98 -21
  89. package/src/error.ts +119 -1
  90. package/src/extractSubgraphsFromSupergraph.ts +7 -1
  91. package/src/federation.ts +184 -102
  92. package/src/federationSpec.ts +56 -24
  93. package/src/inaccessibleSpec.ts +985 -39
  94. package/src/index.ts +2 -0
  95. package/src/introspection.ts +8 -3
  96. package/src/joinSpec.ts +33 -3
  97. package/src/knownCoreFeatures.ts +13 -0
  98. package/src/operations.ts +15 -0
  99. package/src/{sharing.ts → precompute.ts} +3 -6
  100. package/src/schemaUpgrader.ts +29 -13
  101. package/src/suggestions.ts +1 -1
  102. package/src/supergraphs.ts +2 -0
  103. package/src/tagSpec.ts +49 -16
  104. package/src/validate.ts +20 -9
  105. package/src/values.ts +39 -12
  106. package/tsconfig.test.tsbuildinfo +1 -1
  107. package/tsconfig.tsbuildinfo +1 -1
  108. package/dist/sharing.d.ts.map +0 -1
  109. package/dist/sharing.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,10 +1,39 @@
1
1
  # CHANGELOG for `@apollo/federation-internals`
2
2
 
3
- ## vNEXT
3
+ ## v2.0.0
4
4
 
5
- > The changes noted within this `vNEXT` section have not been released yet. New PRs and commits which introduce changes should include an entry in this `vNEXT` section as part of their development. When a release is being prepared, a new header will be (manually) created below and the appropriate changes within that release will be moved into the new section.
5
+ - Previous preview release promoted to general availability! Please see previous changelog entries for full info.
6
6
 
7
- - _Nothing yet! Stay tuned!_
7
+ ## v2.0.0-preview.14
8
+
9
+ - Implement `buildSubgraphSchema` using federation internals [PR #1697](https://github.com/apollographql/federation/pull/1697)
10
+
11
+ ## v2.0.0-preview.13
12
+
13
+ - Released in sync with other federation packages but no changes to this package.
14
+
15
+ ## v2.0.0-preview.12
16
+
17
+ - Released in sync with other federation packages but no changes to this package.
18
+
19
+ ## v2.0.0-preview.11
20
+
21
+ - Add support for `@inaccessible` v0.2 [PR #1678](https://github.com/apollographql/federation/pull/1678)
22
+ - Add a level to hints, uppercase their code and related fixes [PR #1683](https://github.com/apollographql/federation/pull/1683).
23
+
24
+ ## v2.0.0-preview.10
25
+
26
+ - Released in sync with other federation packages but no changes to this package.
27
+
28
+ ## v2.0.0-preview.9
29
+
30
+ - Adds Support for `@tag/v0.2`, which allows the `@tag` directive to be additionally placed on arguments, scalars, enums, enum values, input objects, and input object fields. [PR #1652](https://github.com/apollographql/federation/pull/1652).
31
+ - Add missing `includeDeprecated` argument for `args` and `inputFields` when defining introspection fields [PR #1584](https://github.com/apollographql/federation/pull/1584)
32
+ - Adds support for the `@override` directive on fields to indicate that a field should be moved from one subgraph to another. [PR #1484](https://github.com/apollographql/federation/pull/1484)
33
+
34
+ ## v2.0.0-preview.8
35
+
36
+ - Released in sync with other federation packages but no changes to this package.
8
37
 
9
38
  ## v2.0.0-preview.7
10
39
 
@@ -1 +1 @@
1
- {"version":3,"file":"buildSchema.d.ts","sourceRoot":"","sources":["../src/buildSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EAMZ,MAAM,EAUP,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,MAAM,EASN,IAAI,EAcL,MAAM,eAAe,CAAC;AAMvB,oBAAY,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAA;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAEzF;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CAuDR;AAsOD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAE5E"}
1
+ {"version":3,"file":"buildSchema.d.ts","sourceRoot":"","sources":["../src/buildSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EAMZ,MAAM,EAUP,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,MAAM,EASN,IAAI,EAgBL,MAAM,eAAe,CAAC;AAMvB,oBAAY,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAA;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAEzF;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CAkER;AA4PD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAE5E"}
@@ -13,30 +13,32 @@ function buildSchema(source, options) {
13
13
  exports.buildSchema = buildSchema;
14
14
  function buildSchemaFromAST(documentNode, options) {
15
15
  var _a;
16
+ const errors = [];
16
17
  const schema = new definitions_1.Schema(options === null || options === void 0 ? void 0 : options.blueprint);
17
18
  const { directiveDefinitions, schemaDefinitions, schemaExtensions } = buildNamedTypeAndDirectivesShallow(documentNode, schema);
18
19
  for (const directiveDefinitionNode of directiveDefinitions) {
19
- buildDirectiveDefinitionInner(directiveDefinitionNode, schema.directive(directiveDefinitionNode.name.value));
20
+ buildDirectiveDefinitionInner(directiveDefinitionNode, schema.directive(directiveDefinitionNode.name.value), errors);
20
21
  }
21
22
  for (const schemaDefinition of schemaDefinitions) {
22
- buildSchemaDefinitionInner(schemaDefinition, schema.schemaDefinition);
23
+ buildSchemaDefinitionInner(schemaDefinition, schema.schemaDefinition, errors);
23
24
  }
24
25
  for (const schemaExtension of schemaExtensions) {
25
- buildSchemaDefinitionInner(schemaExtension, schema.schemaDefinition, schema.schemaDefinition.newExtension());
26
+ buildSchemaDefinitionInner(schemaExtension, schema.schemaDefinition, errors, schema.schemaDefinition.newExtension());
26
27
  }
27
- schema.blueprint.onDirectiveDefinitionAndSchemaParsed(schema);
28
+ errors.push(...schema.blueprint.onDirectiveDefinitionAndSchemaParsed(schema));
28
29
  for (const definitionNode of documentNode.definitions) {
29
30
  switch (definitionNode.kind) {
30
31
  case 'OperationDefinition':
31
32
  case 'FragmentDefinition':
32
- throw new graphql_1.GraphQLError("Invalid executable definition found while building schema", definitionNode);
33
+ errors.push(new graphql_1.GraphQLError("Invalid executable definition found while building schema", definitionNode));
34
+ continue;
33
35
  case 'ScalarTypeDefinition':
34
36
  case 'ObjectTypeDefinition':
35
37
  case 'InterfaceTypeDefinition':
36
38
  case 'UnionTypeDefinition':
37
39
  case 'EnumTypeDefinition':
38
40
  case 'InputObjectTypeDefinition':
39
- buildNamedTypeInner(definitionNode, schema.type(definitionNode.name.value), schema.blueprint);
41
+ buildNamedTypeInner(definitionNode, schema.type(definitionNode.name.value), schema.blueprint, errors);
40
42
  break;
41
43
  case 'ScalarTypeExtension':
42
44
  case 'ObjectTypeExtension':
@@ -47,10 +49,13 @@ function buildSchemaFromAST(documentNode, options) {
47
49
  const toExtend = schema.type(definitionNode.name.value);
48
50
  const extension = toExtend.newExtension();
49
51
  extension.sourceAST = definitionNode;
50
- buildNamedTypeInner(definitionNode, toExtend, schema.blueprint, extension);
52
+ buildNamedTypeInner(definitionNode, toExtend, schema.blueprint, errors, extension);
51
53
  break;
52
54
  }
53
55
  }
56
+ if (errors.length > 0) {
57
+ throw (0, definitions_1.ErrGraphQLValidationFailed)(errors);
58
+ }
54
59
  if ((_a = options === null || options === void 0 ? void 0 : options.validate) !== null && _a !== void 0 ? _a : true) {
55
60
  schema.validate();
56
61
  }
@@ -109,39 +114,42 @@ function getReferencedType(node, schema) {
109
114
  }
110
115
  return type;
111
116
  }
112
- function withNodeAttachedToError(operation, node) {
117
+ function withNodeAttachedToError(operation, node, errors) {
113
118
  try {
114
119
  operation();
115
120
  }
116
121
  catch (e) {
117
- if (e instanceof graphql_1.GraphQLError) {
118
- const allNodes = e.nodes ? [node, ...e.nodes] : node;
119
- throw new graphql_1.GraphQLError(e.message, allNodes, e.source, e.positions, e.path, e, e.extensions);
122
+ const causes = (0, definitions_1.errorCauses)(e);
123
+ if (causes) {
124
+ for (const cause of causes) {
125
+ const allNodes = cause.nodes ? [node, ...cause.nodes] : node;
126
+ errors.push(new graphql_1.GraphQLError(cause.message, allNodes, cause.source, cause.positions, cause.path, cause, cause.extensions));
127
+ }
120
128
  }
121
129
  else {
122
130
  throw e;
123
131
  }
124
132
  }
125
133
  }
126
- function buildSchemaDefinitionInner(schemaNode, schemaDefinition, extension) {
134
+ function buildSchemaDefinitionInner(schemaNode, schemaDefinition, errors, extension) {
127
135
  var _a, _b;
128
136
  for (const opTypeNode of (_a = schemaNode.operationTypes) !== null && _a !== void 0 ? _a : []) {
129
- withNodeAttachedToError(() => schemaDefinition.setRoot(opTypeNode.operation, opTypeNode.type.name.value).setOfExtension(extension), opTypeNode);
137
+ withNodeAttachedToError(() => schemaDefinition.setRoot(opTypeNode.operation, opTypeNode.type.name.value).setOfExtension(extension), opTypeNode, errors);
130
138
  }
131
139
  schemaDefinition.sourceAST = schemaNode;
132
140
  if ('description' in schemaNode) {
133
141
  schemaDefinition.description = (_b = schemaNode.description) === null || _b === void 0 ? void 0 : _b.value;
134
142
  }
135
- buildAppliedDirectives(schemaNode, schemaDefinition, extension);
143
+ buildAppliedDirectives(schemaNode, schemaDefinition, errors, extension);
136
144
  }
137
- function buildAppliedDirectives(elementNode, element, extension) {
145
+ function buildAppliedDirectives(elementNode, element, errors, extension) {
138
146
  var _a;
139
147
  for (const directive of (_a = elementNode.directives) !== null && _a !== void 0 ? _a : []) {
140
148
  withNodeAttachedToError(() => {
141
149
  const d = element.applyDirective(directive.name.value, buildArgs(directive));
142
150
  d.setOfExtension(extension);
143
151
  d.sourceAST = directive;
144
- }, directive);
152
+ }, directive, errors);
145
153
  }
146
154
  }
147
155
  function buildArgs(argumentsNode) {
@@ -152,7 +160,7 @@ function buildArgs(argumentsNode) {
152
160
  }
153
161
  return args;
154
162
  }
155
- function buildNamedTypeInner(definitionNode, type, blueprint, extension) {
163
+ function buildNamedTypeInner(definitionNode, type, blueprint, errors, extension) {
156
164
  var _a, _b, _c, _d, _e;
157
165
  switch (definitionNode.kind) {
158
166
  case 'ObjectTypeDefinition':
@@ -166,16 +174,16 @@ function buildNamedTypeInner(definitionNode, type, blueprint, extension) {
166
174
  }
167
175
  const field = fieldBasedType.addField(fieldNode.name.value);
168
176
  field.setOfExtension(extension);
169
- buildFieldDefinitionInner(fieldNode, field);
177
+ buildFieldDefinitionInner(fieldNode, field, errors);
170
178
  }
171
179
  for (const itfNode of (_b = definitionNode.interfaces) !== null && _b !== void 0 ? _b : []) {
172
180
  withNodeAttachedToError(() => {
173
181
  const itfName = itfNode.name.value;
174
182
  if (fieldBasedType.implementsInterface(itfName)) {
175
- throw new graphql_1.GraphQLError(`Type ${type} can only implement ${itfName} once.`);
183
+ throw new graphql_1.GraphQLError(`Type "${type}" can only implement "${itfName}" once.`);
176
184
  }
177
185
  fieldBasedType.addImplementedInterface(itfName).setOfExtension(extension);
178
- }, itfNode);
186
+ }, itfNode, errors);
179
187
  }
180
188
  break;
181
189
  case 'UnionTypeDefinition':
@@ -185,10 +193,10 @@ function buildNamedTypeInner(definitionNode, type, blueprint, extension) {
185
193
  withNodeAttachedToError(() => {
186
194
  const name = namedType.name.value;
187
195
  if (unionType.hasTypeMember(name)) {
188
- throw new graphql_1.GraphQLError(`Union type ${unionType} can only include type ${name} once.`);
196
+ throw new graphql_1.GraphQLError(`Union type "${unionType}" can only include type "${name}" once.`);
189
197
  }
190
198
  unionType.addType(name).setOfExtension(extension);
191
- }, namedType);
199
+ }, namedType, errors);
192
200
  }
193
201
  break;
194
202
  case 'EnumTypeDefinition':
@@ -200,7 +208,7 @@ function buildNamedTypeInner(definitionNode, type, blueprint, extension) {
200
208
  v.description = enumVal.description.value;
201
209
  }
202
210
  v.setOfExtension(extension);
203
- buildAppliedDirectives(enumVal, v);
211
+ buildAppliedDirectives(enumVal, v, errors);
204
212
  }
205
213
  break;
206
214
  case 'InputObjectTypeDefinition':
@@ -209,41 +217,43 @@ function buildNamedTypeInner(definitionNode, type, blueprint, extension) {
209
217
  for (const fieldNode of (_e = definitionNode.fields) !== null && _e !== void 0 ? _e : []) {
210
218
  const field = inputObjectType.addField(fieldNode.name.value);
211
219
  field.setOfExtension(extension);
212
- buildInputFieldDefinitionInner(fieldNode, field);
220
+ buildInputFieldDefinitionInner(fieldNode, field, errors);
213
221
  }
214
222
  break;
215
223
  }
216
- buildAppliedDirectives(definitionNode, type, extension);
224
+ buildAppliedDirectives(definitionNode, type, errors, extension);
217
225
  if (definitionNode.description) {
218
226
  type.description = definitionNode.description.value;
219
227
  }
220
228
  type.sourceAST = definitionNode;
221
229
  }
222
- function buildFieldDefinitionInner(fieldNode, field) {
230
+ function buildFieldDefinitionInner(fieldNode, field, errors) {
223
231
  var _a, _b;
224
232
  const type = buildTypeReferenceFromAST(fieldNode.type, field.schema());
225
- field.type = ensureOutputType(type, field.coordinate, fieldNode);
233
+ field.type = validateOutputType(type, field.coordinate, fieldNode, errors);
226
234
  for (const inputValueDef of (_a = fieldNode.arguments) !== null && _a !== void 0 ? _a : []) {
227
- buildArgumentDefinitionInner(inputValueDef, field.addArgument(inputValueDef.name.value));
235
+ buildArgumentDefinitionInner(inputValueDef, field.addArgument(inputValueDef.name.value), errors);
228
236
  }
229
- buildAppliedDirectives(fieldNode, field);
237
+ buildAppliedDirectives(fieldNode, field, errors);
230
238
  field.description = (_b = fieldNode.description) === null || _b === void 0 ? void 0 : _b.value;
231
239
  field.sourceAST = fieldNode;
232
240
  }
233
- function ensureOutputType(type, what, node) {
241
+ function validateOutputType(type, what, node, errors) {
234
242
  if ((0, definitions_1.isOutputType)(type)) {
235
243
  return type;
236
244
  }
237
245
  else {
238
- throw new graphql_1.GraphQLError(`The type of ${what} must be Output Type but got: ${type}, a ${type.kind}.`, node);
246
+ errors.push(new graphql_1.GraphQLError(`The type of "${what}" must be Output Type but got "${type}", a ${type.kind}.`, node));
247
+ return undefined;
239
248
  }
240
249
  }
241
- function ensureInputType(type, what, node) {
250
+ function validateInputType(type, what, node, errors) {
242
251
  if ((0, definitions_1.isInputType)(type)) {
243
252
  return type;
244
253
  }
245
254
  else {
246
- throw new graphql_1.GraphQLError(`The type of ${what} must be Input Type but got: ${type}, a ${type.kind}.`, node);
255
+ errors.push(new graphql_1.GraphQLError(`The type of "${what}" must be Input Type but got "${type}", a ${type.kind}.`, node));
256
+ return undefined;
247
257
  }
248
258
  }
249
259
  function builtTypeReference(encodedType, schema) {
@@ -264,28 +274,28 @@ function buildTypeReferenceFromAST(typeNode, schema) {
264
274
  return getReferencedType(typeNode, schema);
265
275
  }
266
276
  }
267
- function buildArgumentDefinitionInner(inputNode, arg) {
277
+ function buildArgumentDefinitionInner(inputNode, arg, errors) {
268
278
  var _a;
269
279
  const type = buildTypeReferenceFromAST(inputNode.type, arg.schema());
270
- arg.type = ensureInputType(type, arg.coordinate, inputNode);
280
+ arg.type = validateInputType(type, arg.coordinate, inputNode, errors);
271
281
  arg.defaultValue = buildValue(inputNode.defaultValue);
272
- buildAppliedDirectives(inputNode, arg);
282
+ buildAppliedDirectives(inputNode, arg, errors);
273
283
  arg.description = (_a = inputNode.description) === null || _a === void 0 ? void 0 : _a.value;
274
284
  arg.sourceAST = inputNode;
275
285
  }
276
- function buildInputFieldDefinitionInner(fieldNode, field) {
286
+ function buildInputFieldDefinitionInner(fieldNode, field, errors) {
277
287
  var _a;
278
288
  const type = buildTypeReferenceFromAST(fieldNode.type, field.schema());
279
- field.type = ensureInputType(type, field.coordinate, fieldNode);
289
+ field.type = validateInputType(type, field.coordinate, fieldNode, errors);
280
290
  field.defaultValue = buildValue(fieldNode.defaultValue);
281
- buildAppliedDirectives(fieldNode, field);
291
+ buildAppliedDirectives(fieldNode, field, errors);
282
292
  field.description = (_a = fieldNode.description) === null || _a === void 0 ? void 0 : _a.value;
283
293
  field.sourceAST = fieldNode;
284
294
  }
285
- function buildDirectiveDefinitionInner(directiveNode, directive) {
295
+ function buildDirectiveDefinitionInner(directiveNode, directive, errors) {
286
296
  var _a, _b;
287
297
  for (const inputValueDef of (_a = directiveNode.arguments) !== null && _a !== void 0 ? _a : []) {
288
- buildArgumentDefinitionInner(inputValueDef, directive.addArgument(inputValueDef.name.value));
298
+ buildArgumentDefinitionInner(inputValueDef, directive.addArgument(inputValueDef.name.value), errors);
289
299
  }
290
300
  directive.repeatable = directiveNode.repeatable;
291
301
  const locations = directiveNode.locations.map(({ value }) => value);
@@ -1 +1 @@
1
- {"version":3,"file":"buildSchema.js","sourceRoot":"","sources":["../src/buildSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildSchema.js","sourceRoot":"","sources":["../src/buildSchema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { ASTNode, StringValueNode } from "graphql";
1
+ import { ASTNode, GraphQLError, StringValueNode } from "graphql";
2
2
  import { CoreFeature, Directive, DirectiveDefinition, EnumType, NamedType, ScalarType, Schema, SchemaDefinition } from "./definitions";
3
+ import { DirectiveSpecification, TypeSpecification } from "./directiveAndTypeSpecification";
3
4
  export declare const coreIdentity = "https://specs.apollo.dev/core";
4
5
  export declare const linkIdentity = "https://specs.apollo.dev/link";
5
6
  export declare const linkDirectiveDefaultName = "link";
@@ -16,10 +17,11 @@ export declare abstract class FeatureDefinition {
16
17
  get version(): FeatureVersion;
17
18
  isSpecType(type: NamedType): boolean;
18
19
  isSpecDirective(directive: DirectiveDefinition): boolean;
19
- abstract addElementsToSchema(schema: Schema): void;
20
+ abstract addElementsToSchema(schema: Schema): GraphQLError[];
21
+ abstract allElementNames(): string[];
20
22
  protected nameInSchema(schema: Schema): string | undefined;
21
23
  protected directiveNameInSchema(schema: Schema, directiveName: string): string | undefined;
22
- protected typeNameInSchema(schema: Schema, directiveName: string): string | undefined;
24
+ protected typeNameInSchema(schema: Schema, typeName: string): string | undefined;
23
25
  protected rootDirective<TApplicationArgs extends {
24
26
  [key: string]: any;
25
27
  }>(schema: Schema): DirectiveDefinition<TApplicationArgs> | undefined;
@@ -29,6 +31,8 @@ export declare abstract class FeatureDefinition {
29
31
  protected type<T extends NamedType>(schema: Schema, elementName: string): T | undefined;
30
32
  protected addRootDirective(schema: Schema): DirectiveDefinition;
31
33
  protected addDirective(schema: Schema, name: string): DirectiveDefinition;
34
+ protected addDirectiveSpec(schema: Schema, spec: DirectiveSpecification): GraphQLError[];
35
+ protected addTypeSpec(schema: Schema, spec: TypeSpecification): GraphQLError[];
32
36
  protected addScalarType(schema: Schema, name: string): ScalarType;
33
37
  protected addEnumType(schema: Schema, name: string): EnumType;
34
38
  protected featureInSchema(schema: Schema): CoreFeature | undefined;
@@ -52,18 +56,22 @@ export declare type CoreImport = {
52
56
  name: string;
53
57
  as?: string;
54
58
  };
55
- export declare function extractCoreFeatureImports(directive: Directive<SchemaDefinition, CoreOrLinkDirectiveArgs>): CoreImport[];
59
+ export declare function extractCoreFeatureImports(url: FeatureUrl, directive: Directive<SchemaDefinition, CoreOrLinkDirectiveArgs>): CoreImport[];
56
60
  export declare function isCoreSpecDirectiveApplication(directive: Directive<SchemaDefinition, any>): directive is Directive<SchemaDefinition, CoreOrLinkDirectiveArgs>;
57
61
  export declare class CoreSpecDefinition extends FeatureDefinition {
62
+ private readonly directiveDefinitionSpec;
58
63
  constructor(version: FeatureVersion, identity?: string, name?: string);
59
- addElementsToSchema(_: Schema): void;
60
- addToSchema(schema: Schema, as?: string): void;
64
+ private createDefinitionArgumentSpecifications;
65
+ addElementsToSchema(_: Schema): GraphQLError[];
66
+ addToSchema(schema: Schema, as?: string): GraphQLError[];
67
+ addDefinitionsToSchema(schema: Schema, as?: string): GraphQLError[];
68
+ allElementNames(): string[];
61
69
  private supportPurposes;
62
70
  private supportImport;
63
71
  private extractFeature;
64
72
  coreDirective(schema: Schema): DirectiveDefinition<CoreOrLinkDirectiveArgs>;
65
73
  coreVersion(schema: Schema): FeatureVersion;
66
- applyFeatureToSchema(schema: Schema, feature: FeatureDefinition, as?: string, purpose?: CorePurpose): void;
74
+ applyFeatureToSchema(schema: Schema, feature: FeatureDefinition, as?: string, purpose?: CorePurpose): GraphQLError[];
67
75
  extractFeatureUrl(args: CoreOrLinkDirectiveArgs): FeatureUrl;
68
76
  urlArgName(): 'feature' | 'url';
69
77
  }
@@ -108,5 +116,5 @@ export declare class FeatureUrl {
108
116
  export declare function findCoreSpecVersion(featureUrl: FeatureUrl): CoreSpecDefinition | undefined;
109
117
  export declare const CORE_VERSIONS: FeatureDefinitions<CoreSpecDefinition>;
110
118
  export declare const LINK_VERSIONS: FeatureDefinitions<CoreSpecDefinition>;
111
- export declare function removeFeatureElements(schema: Schema, feature: CoreFeature): void;
119
+ export declare function removeAllCoreFeatures(schema: Schema): void;
112
120
  //# sourceMappingURL=coreSpec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"coreSpec.d.ts","sourceRoot":"","sources":["../src/coreSpec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coreSpec.d.ts","sourceRoot":"","sources":["../src/coreSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAqB,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEpF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAwF,SAAS,EAAe,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAiB,MAAM,eAAe,CAAC;AAQzP,OAAO,EAAmH,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAE7M,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAC5D,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAE5D,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,eAAO,MAAM,kBAAkB,WAAY,KAAK,EAAE;;;CAI9C,CAAA;AAOJ,eAAO,MAAM,YAAY,8BAGxB,CAAC;AAEF,oBAAY,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAStD,8BAAsB,iBAAiB;IACrC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;gBAEb,GAAG,EAAE,UAAU,GAAG,MAAM;IAIpC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,OAAO,IAAI,cAAc,CAE5B;IAED,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAKpC,eAAe,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO;IAKxD,QAAQ,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IAE5D,QAAQ,CAAC,eAAe,IAAI,MAAM,EAAE;IAEpC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK1D,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK1F,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKhF,SAAS,CAAC,aAAa,CAAC,gBAAgB,SAAS;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,SAAS;IAKzI,SAAS,CAAC,SAAS,CAAC,gBAAgB,SAAS;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,SAAS;IAK1J,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAKvF,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB;IAI/D,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,mBAAmB;IAIzE,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,YAAY,EAAE;IAIxF,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,YAAY,EAAE;IAI9E,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU;IAIjE,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ;IAI7D,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAQlE,QAAQ,IAAI,MAAM;CAGnB;AAED,oBAAY,iBAAiB,GAAG;IAC9B,GAAG,EAAE,SAAS,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,oBAAY,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,SAAS,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAA;CACjC,CAAA;AAED,oBAAY,uBAAuB,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;AAE5E,oBAAY,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,GAAG,UAAU,EAAE,CAyFxI;AAoBD,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC,GAAG,SAAS,IAAI,SAAS,CAAC,gBAAgB,EAAE,uBAAuB,CAAC,CA4B7J;AAkBD,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAyB;gBAErD,OAAO,EAAE,cAAc,EAAE,QAAQ,GAAE,MAAqB,EAAE,IAAI,GAAE,MAAiC;IAU7G,OAAO,CAAC,sCAAsC;IAwB9C,mBAAmB,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAO9C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAgBxD,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAqBnE,eAAe,IAAI,MAAM,EAAE;IAW3B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAWtB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,uBAAuB,CAAC;IAM3E,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc;IAK3C,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,YAAY,EAAE;IAapH,iBAAiB,CAAC,IAAI,EAAE,uBAAuB,GAAG,UAAU;IAI5D,UAAU,IAAI,SAAS,GAAG,KAAK;CAGhC;AAED,qBAAa,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB;IAKjE,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAFrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAW;gBAEnB,QAAQ,EAAE,MAAM;IAGrC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAkBzC,IAAI,CAAC,SAAS,EAAE,cAAc,GAAG,CAAC,GAAG,SAAS;IAI9C,QAAQ,IAAI,cAAc,EAAE;IAI5B,MAAM,IAAI,CAAC;CAIZ;AAKD,qBAAa,cAAc;aACG,KAAK,EAAE,MAAM;aAAkB,KAAK,EAAE,MAAM;gBAA5C,KAAK,EAAE,MAAM,EAAkB,KAAK,EAAE,MAAM;WAY1D,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc;IAmB3C,SAAS,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO;IAenD,IAAW,MAAM,WAGhB;IAUM,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM;IAyBxC,mBAAmB,CAAC,OAAO,EAAE,cAAc;IAS3C,QAAQ;IAUR,MAAM,CAAC,KAAK,EAAE,cAAc;IAInC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAoB;CAC9C;AAGD,qBAAa,UAAU;aAEH,QAAQ,EAAE,MAAM;aAChB,IAAI,EAAE,MAAM;aACZ,OAAO,EAAE,cAAc;aACvB,OAAO,CAAC;gBAHR,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,oBAAQ;WAIpB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU;WAyBhD,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,UAAU;IAUhD,SAAS,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO;IAKzC,MAAM,CAAC,KAAK,EAAE,UAAU;IAK/B,IAAI,GAAG,WAIN;IAED,IAAI,WAAW,wBAEd;IAED,IAAI,WAAW,uBAEd;IAED,IAAI,IAAI,IAAI,UAAU,CAGrB;IAED,QAAQ;CAGT;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,kBAAkB,GAAG,SAAS,CAI1F;AAED,eAAO,MAAM,aAAa,wCAEoD,CAAC;AAE/E,eAAO,MAAM,aAAa,wCAC8B,CAAC;AAKzD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,QAsEnD"}