@apollo/federation-internals 2.1.0-alpha.0 → 2.1.0-alpha.3

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 (82) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/buildSchema.d.ts.map +1 -1
  3. package/dist/buildSchema.js +24 -13
  4. package/dist/buildSchema.js.map +1 -1
  5. package/dist/coreSpec.d.ts.map +1 -1
  6. package/dist/coreSpec.js +15 -42
  7. package/dist/coreSpec.js.map +1 -1
  8. package/dist/definitions.d.ts +47 -8
  9. package/dist/definitions.d.ts.map +1 -1
  10. package/dist/definitions.js +186 -121
  11. package/dist/definitions.js.map +1 -1
  12. package/dist/directiveAndTypeSpecification.js +14 -48
  13. package/dist/directiveAndTypeSpecification.js.map +1 -1
  14. package/dist/error.d.ts +20 -17
  15. package/dist/error.d.ts.map +1 -1
  16. package/dist/error.js +42 -7
  17. package/dist/error.js.map +1 -1
  18. package/dist/extractSubgraphsFromSupergraph.d.ts.map +1 -1
  19. package/dist/extractSubgraphsFromSupergraph.js +9 -0
  20. package/dist/extractSubgraphsFromSupergraph.js.map +1 -1
  21. package/dist/federation.d.ts +5 -1
  22. package/dist/federation.d.ts.map +1 -1
  23. package/dist/federation.js +83 -128
  24. package/dist/federation.js.map +1 -1
  25. package/dist/federationSpec.d.ts +13 -9
  26. package/dist/federationSpec.d.ts.map +1 -1
  27. package/dist/federationSpec.js +27 -5
  28. package/dist/federationSpec.js.map +1 -1
  29. package/dist/inaccessibleSpec.js +44 -67
  30. package/dist/inaccessibleSpec.js.map +1 -1
  31. package/dist/operations.d.ts +48 -21
  32. package/dist/operations.d.ts.map +1 -1
  33. package/dist/operations.js +334 -52
  34. package/dist/operations.js.map +1 -1
  35. package/dist/print.d.ts +1 -1
  36. package/dist/print.d.ts.map +1 -1
  37. package/dist/print.js +1 -1
  38. package/dist/print.js.map +1 -1
  39. package/dist/schemaUpgrader.js +2 -8
  40. package/dist/schemaUpgrader.js.map +1 -1
  41. package/dist/supergraphs.d.ts.map +1 -1
  42. package/dist/supergraphs.js +4 -4
  43. package/dist/supergraphs.js.map +1 -1
  44. package/dist/tagSpec.d.ts.map +1 -1
  45. package/dist/tagSpec.js +1 -3
  46. package/dist/tagSpec.js.map +1 -1
  47. package/dist/utils.d.ts +9 -0
  48. package/dist/utils.d.ts.map +1 -1
  49. package/dist/utils.js +31 -1
  50. package/dist/utils.js.map +1 -1
  51. package/dist/validate.d.ts.map +1 -1
  52. package/dist/validate.js +26 -22
  53. package/dist/validate.js.map +1 -1
  54. package/dist/validation/KnownTypeNamesInFederationRule.js +1 -1
  55. package/dist/validation/KnownTypeNamesInFederationRule.js.map +1 -1
  56. package/dist/values.d.ts.map +1 -1
  57. package/dist/values.js +19 -18
  58. package/dist/values.js.map +1 -1
  59. package/package.json +2 -2
  60. package/src/__tests__/definitions.test.ts +18 -0
  61. package/src/__tests__/operations.test.ts +217 -99
  62. package/src/__tests__/subgraphValidation.test.ts +77 -0
  63. package/src/buildSchema.ts +30 -23
  64. package/src/coreSpec.ts +47 -43
  65. package/src/definitions.ts +281 -125
  66. package/src/directiveAndTypeSpecification.ts +50 -48
  67. package/src/error.ts +94 -41
  68. package/src/extractSubgraphsFromSupergraph.ts +20 -0
  69. package/src/federation.ts +158 -136
  70. package/src/federationSpec.ts +32 -5
  71. package/src/inaccessibleSpec.ts +209 -196
  72. package/src/operations.ts +525 -76
  73. package/src/print.ts +1 -1
  74. package/src/schemaUpgrader.ts +8 -8
  75. package/src/supergraphs.ts +5 -4
  76. package/src/tagSpec.ts +2 -3
  77. package/src/utils.ts +40 -0
  78. package/src/validate.ts +60 -52
  79. package/src/validation/KnownTypeNamesInFederationRule.ts +1 -1
  80. package/src/values.ts +19 -18
  81. package/tsconfig.test.tsbuildinfo +1 -1
  82. package/tsconfig.tsbuildinfo +1 -1
@@ -1,21 +1,25 @@
1
1
  import { Schema } from "./definitions";
2
2
  import { FeatureDefinition, FeatureDefinitions, FeatureVersion } from "./coreSpec";
3
+ import { DirectiveSpecification } from "./directiveAndTypeSpecification";
3
4
  import { GraphQLError } from "graphql";
4
5
  export declare const federationIdentity = "https://specs.apollo.dev/federation";
5
6
  export declare const fieldSetTypeSpec: import("./directiveAndTypeSpecification").TypeSpecification;
6
- export declare const keyDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
7
- export declare const extendsDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
8
- export declare const externalDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
9
- export declare const requiresDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
10
- export declare const providesDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
11
- export declare const shareableDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
12
- export declare const overrideDirectiveSpec: import("./directiveAndTypeSpecification").DirectiveSpecification;
13
- export declare const FEDERATION2_ONLY_SPEC_DIRECTIVES: import("./directiveAndTypeSpecification").DirectiveSpecification[];
14
- export declare const FEDERATION2_SPEC_DIRECTIVES: import("./directiveAndTypeSpecification").DirectiveSpecification[];
7
+ export declare const keyDirectiveSpec: DirectiveSpecification;
8
+ export declare const extendsDirectiveSpec: DirectiveSpecification;
9
+ export declare const externalDirectiveSpec: DirectiveSpecification;
10
+ export declare const requiresDirectiveSpec: DirectiveSpecification;
11
+ export declare const providesDirectiveSpec: DirectiveSpecification;
12
+ export declare const shareableDirectiveSpec: DirectiveSpecification;
13
+ export declare const overrideDirectiveSpec: DirectiveSpecification;
14
+ export declare const composeDirectiveSpec: DirectiveSpecification;
15
+ export declare const FEDERATION2_ONLY_SPEC_DIRECTIVES: DirectiveSpecification[];
16
+ export declare const FEDERATION2_1_ONLY_SPEC_DIRECTIVES: DirectiveSpecification[];
17
+ export declare const FEDERATION2_SPEC_DIRECTIVES: DirectiveSpecification[];
15
18
  export declare const ALL_FEDERATION_DIRECTIVES_DEFAULT_NAMES: string[];
16
19
  export declare const FEDERATION_SPEC_TYPES: import("./directiveAndTypeSpecification").TypeSpecification[];
17
20
  export declare class FederationSpecDefinition extends FeatureDefinition {
18
21
  constructor(version: FeatureVersion);
22
+ private allFedDirectives;
19
23
  addElementsToSchema(schema: Schema): GraphQLError[];
20
24
  allElementNames(): string[];
21
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"federationSpec.d.ts","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,MAAM,EACP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAM/F,OAAO,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAO1D,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAExE,eAAO,MAAM,gBAAgB,6DAAsD,CAAC;AAEpF,eAAO,MAAM,gBAAgB,kEAW3B,CAAC;AAEH,eAAO,MAAM,oBAAoB,kEAG/B,CAAC;AAEH,eAAO,MAAM,qBAAqB,kEAOhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,kEAOhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,kEAOhC,CAAC;AAEH,eAAO,MAAM,sBAAsB,kEAGjC,CAAC;AAEH,eAAO,MAAM,qBAAqB,kEAOhC,CAAC;AAYH,eAAO,MAAM,gCAAgC,oEAI5C,CAAC;AAGF,eAAO,MAAM,2BAA2B,oEAQvC,CAAC;AAKF,eAAO,MAAM,uCAAuC,UAAuD,CAAC;AAE5G,eAAO,MAAM,qBAAqB,+DAEjC,CAAA;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,EAAE,cAAc;IAInC,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IAanD,eAAe,IAAI,MAAM,EAAE;CAK5B;AAED,eAAO,MAAM,mBAAmB,8CAC8B,CAAC"}
1
+ {"version":3,"file":"federationSpec.d.ts","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,MAAM,EACP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAC/F,OAAO,EAIL,sBAAsB,EACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAO1D,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAExE,eAAO,MAAM,gBAAgB,6DAAsD,CAAC;AAEpF,eAAO,MAAM,gBAAgB,wBAW3B,CAAC;AAEH,eAAO,MAAM,oBAAoB,wBAG/B,CAAC;AAEH,eAAO,MAAM,qBAAqB,wBAOhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,wBAOhC,CAAC;AAEH,eAAO,MAAM,qBAAqB,wBAOhC,CAAC;AAEH,eAAO,MAAM,sBAAsB,wBAGjC,CAAC;AAEH,eAAO,MAAM,qBAAqB,wBAOhC,CAAC;AAEH,eAAO,MAAM,oBAAoB,wBAQ/B,CAAA;AAYF,eAAO,MAAM,gCAAgC,0BAI5C,CAAC;AAEF,eAAO,MAAM,kCAAkC,0BAE9C,CAAC;AAYF,eAAO,MAAM,2BAA2B,0BAIvC,CAAC;AAKF,eAAO,MAAM,uCAAuC,UAAuD,CAAC;AAE5G,eAAO,MAAM,qBAAqB,+DAEjC,CAAA;AAED,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,EAAE,cAAc;IAInC,OAAO,CAAC,gBAAgB;IAMxB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IAanD,eAAe,IAAI,MAAM,EAAE;CAK5B;AAED,eAAO,MAAM,mBAAmB,8CAE8B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FEDERATION_VERSIONS = exports.FederationSpecDefinition = exports.FEDERATION_SPEC_TYPES = exports.ALL_FEDERATION_DIRECTIVES_DEFAULT_NAMES = exports.FEDERATION2_SPEC_DIRECTIVES = exports.FEDERATION2_ONLY_SPEC_DIRECTIVES = exports.overrideDirectiveSpec = exports.shareableDirectiveSpec = exports.providesDirectiveSpec = exports.requiresDirectiveSpec = exports.externalDirectiveSpec = exports.extendsDirectiveSpec = exports.keyDirectiveSpec = exports.fieldSetTypeSpec = exports.federationIdentity = void 0;
3
+ exports.FEDERATION_VERSIONS = exports.FederationSpecDefinition = exports.FEDERATION_SPEC_TYPES = exports.ALL_FEDERATION_DIRECTIVES_DEFAULT_NAMES = exports.FEDERATION2_SPEC_DIRECTIVES = exports.FEDERATION2_1_ONLY_SPEC_DIRECTIVES = exports.FEDERATION2_ONLY_SPEC_DIRECTIVES = exports.composeDirectiveSpec = exports.overrideDirectiveSpec = exports.shareableDirectiveSpec = exports.providesDirectiveSpec = exports.requiresDirectiveSpec = exports.externalDirectiveSpec = exports.extendsDirectiveSpec = exports.keyDirectiveSpec = exports.fieldSetTypeSpec = exports.federationIdentity = void 0;
4
4
  const definitions_1 = require("./definitions");
5
5
  const coreSpec_1 = require("./coreSpec");
6
6
  const directiveAndTypeSpecification_1 = require("./directiveAndTypeSpecification");
@@ -64,6 +64,15 @@ exports.overrideDirectiveSpec = (0, directiveAndTypeSpecification_1.createDirect
64
64
  errors: [],
65
65
  }),
66
66
  });
67
+ exports.composeDirectiveSpec = (0, directiveAndTypeSpecification_1.createDirectiveSpecification)({
68
+ name: 'composeDirective',
69
+ locations: [graphql_1.DirectiveLocation.SCHEMA],
70
+ repeatable: true,
71
+ argumentFct: (schema) => ({
72
+ args: [{ name: 'name', type: schema.stringType() }],
73
+ errors: [],
74
+ }),
75
+ });
67
76
  function fieldsArgument(schema) {
68
77
  return { name: 'fields', type: fieldSetType(schema) };
69
78
  }
@@ -77,14 +86,21 @@ exports.FEDERATION2_ONLY_SPEC_DIRECTIVES = [
77
86
  inaccessibleSpec_1.INACCESSIBLE_VERSIONS.latest().inaccessibleDirectiveSpec,
78
87
  exports.overrideDirectiveSpec,
79
88
  ];
80
- exports.FEDERATION2_SPEC_DIRECTIVES = [
89
+ exports.FEDERATION2_1_ONLY_SPEC_DIRECTIVES = [
90
+ exports.composeDirectiveSpec,
91
+ ];
92
+ const PRE_FEDERATION2_SPEC_DIRECTIVES = [
81
93
  exports.keyDirectiveSpec,
82
94
  exports.requiresDirectiveSpec,
83
95
  exports.providesDirectiveSpec,
84
96
  exports.externalDirectiveSpec,
85
97
  tagSpec_1.TAG_VERSIONS.latest().tagDirectiveSpec,
86
98
  exports.extendsDirectiveSpec,
99
+ ];
100
+ exports.FEDERATION2_SPEC_DIRECTIVES = [
101
+ ...PRE_FEDERATION2_SPEC_DIRECTIVES,
87
102
  ...exports.FEDERATION2_ONLY_SPEC_DIRECTIVES,
103
+ ...exports.FEDERATION2_1_ONLY_SPEC_DIRECTIVES,
88
104
  ];
89
105
  exports.ALL_FEDERATION_DIRECTIVES_DEFAULT_NAMES = exports.FEDERATION2_SPEC_DIRECTIVES.map((spec) => spec.name);
90
106
  exports.FEDERATION_SPEC_TYPES = [
@@ -94,24 +110,30 @@ class FederationSpecDefinition extends coreSpec_1.FeatureDefinition {
94
110
  constructor(version) {
95
111
  super(new coreSpec_1.FeatureUrl(exports.federationIdentity, 'federation', version));
96
112
  }
113
+ allFedDirectives() {
114
+ return PRE_FEDERATION2_SPEC_DIRECTIVES
115
+ .concat(exports.FEDERATION2_ONLY_SPEC_DIRECTIVES)
116
+ .concat(this.url.version >= (new coreSpec_1.FeatureVersion(2, 1)) ? exports.FEDERATION2_1_ONLY_SPEC_DIRECTIVES : []);
117
+ }
97
118
  addElementsToSchema(schema) {
98
119
  const feature = this.featureInSchema(schema);
99
120
  (0, utils_1.assert)(feature, 'The federation specification should have been added to the schema before this is called');
100
121
  let errors = [];
101
122
  errors = errors.concat(this.addTypeSpec(schema, exports.fieldSetTypeSpec));
102
- for (const directive of exports.FEDERATION2_SPEC_DIRECTIVES) {
123
+ for (const directive of this.allFedDirectives()) {
103
124
  errors = errors.concat(this.addDirectiveSpec(schema, directive));
104
125
  }
105
126
  return errors;
106
127
  }
107
128
  allElementNames() {
108
- return exports.FEDERATION2_SPEC_DIRECTIVES.map((spec) => `@${spec.name}`).concat([
129
+ return this.allFedDirectives().map((spec) => `@${spec.name}`).concat([
109
130
  exports.fieldSetTypeSpec.name,
110
131
  ]);
111
132
  }
112
133
  }
113
134
  exports.FederationSpecDefinition = FederationSpecDefinition;
114
135
  exports.FEDERATION_VERSIONS = new coreSpec_1.FeatureDefinitions(exports.federationIdentity)
115
- .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 0)));
136
+ .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 0)))
137
+ .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 1)));
116
138
  (0, knownCoreFeatures_1.registerKnownFeature)(exports.FEDERATION_VERSIONS);
117
139
  //# sourceMappingURL=federationSpec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"federationSpec.js","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"federationSpec.js","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"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"}
@@ -42,9 +42,7 @@ class InaccessibleSpecDefinition extends coreSpec_1.FeatureDefinition {
42
42
  const hasRepeatable = definition.repeatable;
43
43
  const hasValidLocations = definition.locations.every(loc => this.inaccessibleLocations.includes(loc));
44
44
  if (hasUnknownArguments || hasRepeatable || !hasValidLocations) {
45
- return error_1.ERRORS.DIRECTIVE_DEFINITION_INVALID.err({
46
- message: `Found invalid @inaccessible directive definition. Please ensure the directive definition in your schema's definitions matches the following:\n\t${this.printedInaccessibleDefinition}`,
47
- });
45
+ return error_1.ERRORS.DIRECTIVE_DEFINITION_INVALID.err(`Found invalid @inaccessible directive definition. Please ensure the directive definition in your schema's definitions matches the following:\n\t${this.printedInaccessibleDefinition}`);
48
46
  }
49
47
  return undefined;
50
48
  }
@@ -163,8 +161,7 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
163
161
  if (hasBuiltInName(type)) {
164
162
  const inaccessibleElements = fetchInaccessibleElementsDeep(type);
165
163
  if (inaccessibleElements.length > 0) {
166
- errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err({
167
- message: `Built-in type "${type.coordinate}" cannot use @inaccessible.`,
164
+ errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err(`Built-in type "${type.coordinate}" cannot use @inaccessible.`, {
168
165
  nodes: type.sourceAST,
169
166
  extensions: {
170
167
  inaccessible_elements: inaccessibleElements
@@ -177,8 +174,7 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
177
174
  else if (isFeatureDefinition(type)) {
178
175
  const inaccessibleElements = fetchInaccessibleElementsDeep(type);
179
176
  if (inaccessibleElements.length > 0) {
180
- errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err({
181
- message: `Core feature type "${type.coordinate}" cannot use @inaccessible.`,
177
+ errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err(`Core feature type "${type.coordinate}" cannot use @inaccessible.`, {
182
178
  nodes: type.sourceAST,
183
179
  extensions: {
184
180
  inaccessible_elements: inaccessibleElements
@@ -195,9 +191,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
195
191
  referencer instanceof definitions_1.ArgumentDefinition ||
196
192
  referencer instanceof definitions_1.InputFieldDefinition) {
197
193
  if (isInAPISchema(referencer)) {
198
- errors.push(error_1.ERRORS.REFERENCED_INACCESSIBLE.err({
199
- message: `Type "${type.coordinate}" is @inaccessible but is referenced` +
200
- ` by "${referencer.coordinate}", which is in the API schema.`,
194
+ errors.push(error_1.ERRORS.REFERENCED_INACCESSIBLE.err(`Type "${type.coordinate}" is @inaccessible but is referenced` +
195
+ ` by "${referencer.coordinate}", which is in the API schema.`, {
201
196
  nodes: type.sourceAST,
202
197
  extensions: {
203
198
  inaccessible_elements: [type.coordinate],
@@ -208,9 +203,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
208
203
  }
209
204
  else if (referencer instanceof definitions_1.SchemaDefinition) {
210
205
  if (type === referencer.rootType('query')) {
211
- errors.push(error_1.ERRORS.QUERY_ROOT_TYPE_INACCESSIBLE.err({
212
- message: `Type "${type.coordinate}" is @inaccessible but is the root` +
213
- ` query type, which must be in the API schema.`,
206
+ errors.push(error_1.ERRORS.QUERY_ROOT_TYPE_INACCESSIBLE.err(`Type "${type.coordinate}" is @inaccessible but is the root` +
207
+ ` query type, which must be in the API schema.`, {
214
208
  nodes: type.sourceAST,
215
209
  extensions: {
216
210
  inaccessible_elements: [type.coordinate],
@@ -230,10 +224,9 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
230
224
  isEmpty = false;
231
225
  }
232
226
  if (isEmpty) {
233
- errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err({
234
- message: `Type "${type.coordinate}" is in the API schema but all of its` +
235
- ` ${(type instanceof definitions_1.InputObjectType) ? 'input ' : ''}fields` +
236
- ` are @inaccessible.`,
227
+ errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err(`Type "${type.coordinate}" is in the API schema but all of its` +
228
+ ` ${(type instanceof definitions_1.InputObjectType) ? 'input ' : ''}fields` +
229
+ ` are @inaccessible.`, {
237
230
  nodes: type.sourceAST,
238
231
  extensions: {
239
232
  inaccessible_elements: type.fields()
@@ -250,9 +243,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
250
243
  isEmpty = false;
251
244
  }
252
245
  if (isEmpty) {
253
- errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err({
254
- message: `Type "${type.coordinate}" is in the API schema but all of its` +
255
- ` members are @inaccessible.`,
246
+ errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err(`Type "${type.coordinate}" is in the API schema but all of its` +
247
+ ` members are @inaccessible.`, {
256
248
  nodes: type.sourceAST,
257
249
  extensions: {
258
250
  inaccessible_elements: type.types()
@@ -269,9 +261,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
269
261
  isEmpty = false;
270
262
  }
271
263
  if (isEmpty) {
272
- errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err({
273
- message: `Type "${type.coordinate}" is in the API schema but all of its` +
274
- ` values are @inaccessible.`,
264
+ errors.push(error_1.ERRORS.ONLY_INACCESSIBLE_CHILDREN.err(`Type "${type.coordinate}" is in the API schema but all of its` +
265
+ ` values are @inaccessible.`, {
275
266
  nodes: type.sourceAST,
276
267
  extensions: {
277
268
  inaccessible_elements: type.values
@@ -298,11 +289,10 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
298
289
  for (const implementedInterface of implementedInterfaces) {
299
290
  const implementedField = implementedInterface.field(field.name);
300
291
  if (implementedField && isInAPISchema(implementedField)) {
301
- errors.push(error_1.ERRORS.IMPLEMENTED_BY_INACCESSIBLE.err({
302
- message: `Field "${field.coordinate}" is @inaccessible but` +
303
- ` implements the interface field` +
304
- ` "${implementedField.coordinate}", which is in the API` +
305
- ` schema.`,
292
+ errors.push(error_1.ERRORS.IMPLEMENTED_BY_INACCESSIBLE.err(`Field "${field.coordinate}" is @inaccessible but` +
293
+ ` implements the interface field` +
294
+ ` "${implementedField.coordinate}", which is in the API` +
295
+ ` schema.`, {
306
296
  nodes: field.sourceAST,
307
297
  extensions: {
308
298
  inaccessible_elements: [field.coordinate],
@@ -316,9 +306,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
316
306
  for (const argument of field.arguments()) {
317
307
  if (isInaccessible(argument)) {
318
308
  if (argument.isRequired()) {
319
- errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err({
320
- message: `Argument "${argument.coordinate}" is @inaccessible but` +
321
- ` is a required argument of its field.`,
309
+ errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err(`Argument "${argument.coordinate}" is @inaccessible but` +
310
+ ` is a required argument of its field.`, {
322
311
  nodes: argument.sourceAST,
323
312
  extensions: {
324
313
  inaccessible_elements: [argument.coordinate],
@@ -336,11 +325,10 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
336
325
  " did not implement one of this type's field's arguments.");
337
326
  if (isInAPISchema(implementingArgument) &&
338
327
  implementingArgument.isRequired()) {
339
- errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err({
340
- message: `Argument "${argument.coordinate}" is @inaccessible` +
341
- ` but is implemented by the required argument` +
342
- ` "${implementingArgument.coordinate}", which is` +
343
- ` in the API schema.`,
328
+ errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err(`Argument "${argument.coordinate}" is @inaccessible` +
329
+ ` but is implemented by the required argument` +
330
+ ` "${implementingArgument.coordinate}", which is` +
331
+ ` in the API schema.`, {
344
332
  nodes: argument.sourceAST,
345
333
  extensions: {
346
334
  inaccessible_elements: [argument.coordinate],
@@ -356,11 +344,10 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
356
344
  .field(field.name)) === null || _a === void 0 ? void 0 : _a.argument(argument.name);
357
345
  if (implementedArgument &&
358
346
  isInAPISchema(implementedArgument)) {
359
- errors.push(error_1.ERRORS.IMPLEMENTED_BY_INACCESSIBLE.err({
360
- message: `Argument "${argument.coordinate}" is @inaccessible` +
361
- ` but implements the interface argument` +
362
- ` "${implementedArgument.coordinate}", which is in` +
363
- ` the API schema.`,
347
+ errors.push(error_1.ERRORS.IMPLEMENTED_BY_INACCESSIBLE.err(`Argument "${argument.coordinate}" is @inaccessible` +
348
+ ` but implements the interface argument` +
349
+ ` "${implementedArgument.coordinate}", which is in` +
350
+ ` the API schema.`, {
364
351
  nodes: argument.sourceAST,
365
352
  extensions: {
366
353
  inaccessible_elements: [argument.coordinate],
@@ -380,9 +367,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
380
367
  for (const inputField of type.fields()) {
381
368
  if (isInaccessible(inputField)) {
382
369
  if (inputField.isRequired()) {
383
- errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err({
384
- message: `Input field "${inputField.coordinate}" is @inaccessible` +
385
- ` but is a required input field of its type.`,
370
+ errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err(`Input field "${inputField.coordinate}" is @inaccessible` +
371
+ ` but is a required input field of its type.`, {
386
372
  nodes: inputField.sourceAST,
387
373
  extensions: {
388
374
  inaccessible_elements: [inputField.coordinate],
@@ -395,10 +381,9 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
395
381
  const referencers = (_b = defaultValueReferencers.get(inputField)) !== null && _b !== void 0 ? _b : [];
396
382
  for (const referencer of referencers) {
397
383
  if (isInAPISchema(referencer)) {
398
- errors.push(error_1.ERRORS.DEFAULT_VALUE_USES_INACCESSIBLE.err({
399
- message: `Input field "${inputField.coordinate}" is @inaccessible` +
400
- ` but is used in the default value of` +
401
- ` "${referencer.coordinate}", which is in the API schema.`,
384
+ errors.push(error_1.ERRORS.DEFAULT_VALUE_USES_INACCESSIBLE.err(`Input field "${inputField.coordinate}" is @inaccessible` +
385
+ ` but is used in the default value of` +
386
+ ` "${referencer.coordinate}", which is in the API schema.`, {
402
387
  nodes: type.sourceAST,
403
388
  extensions: {
404
389
  inaccessible_elements: [type.coordinate],
@@ -418,10 +403,9 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
418
403
  const referencers = (_c = defaultValueReferencers.get(enumValue)) !== null && _c !== void 0 ? _c : [];
419
404
  for (const referencer of referencers) {
420
405
  if (isInAPISchema(referencer)) {
421
- errors.push(error_1.ERRORS.DEFAULT_VALUE_USES_INACCESSIBLE.err({
422
- message: `Enum value "${enumValue.coordinate}" is @inaccessible` +
423
- ` but is used in the default value of` +
424
- ` "${referencer.coordinate}", which is in the API schema.`,
406
+ errors.push(error_1.ERRORS.DEFAULT_VALUE_USES_INACCESSIBLE.err(`Enum value "${enumValue.coordinate}" is @inaccessible` +
407
+ ` but is used in the default value of` +
408
+ ` "${referencer.coordinate}", which is in the API schema.`, {
425
409
  nodes: type.sourceAST,
426
410
  extensions: {
427
411
  inaccessible_elements: [type.coordinate],
@@ -435,15 +419,12 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
435
419
  }
436
420
  }
437
421
  }
438
- const executableDirectiveLocationSet = new Set(definitions_1.executableDirectiveLocations);
439
422
  for (const directive of schema.allDirectives()) {
440
- const typeSystemLocations = directive.locations.filter((loc) => !executableDirectiveLocationSet.has(loc));
423
+ const typeSystemLocations = directive.locations.filter((loc) => (0, definitions_1.isTypeSystemDirectiveLocation)(loc));
441
424
  if (hasBuiltInName(directive)) {
442
425
  const inaccessibleElements = fetchInaccessibleElementsDeep(directive);
443
426
  if (inaccessibleElements.length > 0) {
444
- errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err({
445
- message: `Built-in directive "${directive.coordinate}" cannot use` +
446
- ` @inaccessible.`,
427
+ errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err(`Built-in directive "${directive.coordinate}" cannot use @inaccessible.`, {
447
428
  nodes: directive.sourceAST,
448
429
  extensions: {
449
430
  inaccessible_elements: inaccessibleElements
@@ -456,9 +437,7 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
456
437
  else if (isFeatureDefinition(directive)) {
457
438
  const inaccessibleElements = fetchInaccessibleElementsDeep(directive);
458
439
  if (inaccessibleElements.length > 0) {
459
- errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err({
460
- message: `Core feature directive "${directive.coordinate}" cannot use` +
461
- ` @inaccessible.`,
440
+ errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err(`Core feature directive "${directive.coordinate}" cannot use @inaccessible.`, {
462
441
  nodes: directive.sourceAST,
463
442
  extensions: {
464
443
  inaccessible_elements: inaccessibleElements
@@ -471,10 +450,9 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
471
450
  else if (typeSystemLocations.length > 0) {
472
451
  const inaccessibleElements = fetchInaccessibleElementsDeep(directive);
473
452
  if (inaccessibleElements.length > 0) {
474
- errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err({
475
- message: `Directive "${directive.coordinate}" cannot use @inaccessible` +
476
- ` because it may be applied to these type-system locations:` +
477
- ` ${typeSystemLocations.join(', ')}.`,
453
+ errors.push(error_1.ERRORS.DISALLOWED_INACCESSIBLE.err(`Directive "${directive.coordinate}" cannot use @inaccessible` +
454
+ ` because it may be applied to these type-system locations:` +
455
+ ` ${typeSystemLocations.join(', ')}.`, {
478
456
  nodes: directive.sourceAST,
479
457
  extensions: {
480
458
  inaccessible_elements: inaccessibleElements
@@ -488,9 +466,8 @@ function validateInaccessibleElements(schema, coreFeatures, inaccessibleSpec, in
488
466
  for (const argument of directive.arguments()) {
489
467
  if (argument.isRequired()) {
490
468
  if (isInaccessible(argument)) {
491
- errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err({
492
- message: `Argument "${argument.coordinate}" is @inaccessible but is a` +
493
- ` required argument of its directive.`,
469
+ errors.push(error_1.ERRORS.REQUIRED_INACCESSIBLE.err(`Argument "${argument.coordinate}" is @inaccessible but is a` +
470
+ ` required argument of its directive.`, {
494
471
  nodes: argument.sourceAST,
495
472
  extensions: {
496
473
  inaccessible_elements: [argument.coordinate],
@@ -1 +1 @@
1
- {"version":3,"file":"inaccessibleSpec.js","sourceRoot":"","sources":["../src/inaccessibleSpec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inaccessibleSpec.js","sourceRoot":"","sources":["../src/inaccessibleSpec.ts"],"names":[],"mappings":"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"}