@apollo/federation-internals 2.4.11 → 2.5.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.
Files changed (79) hide show
  1. package/dist/argumentCompositionStrategies.d.ts +12 -7
  2. package/dist/argumentCompositionStrategies.d.ts.map +1 -1
  3. package/dist/argumentCompositionStrategies.js +26 -7
  4. package/dist/argumentCompositionStrategies.js.map +1 -1
  5. package/dist/authenticatedSpec.d.ts +13 -0
  6. package/dist/authenticatedSpec.d.ts.map +1 -0
  7. package/dist/authenticatedSpec.js +36 -0
  8. package/dist/authenticatedSpec.js.map +1 -0
  9. package/dist/coreSpec.d.ts +6 -5
  10. package/dist/coreSpec.d.ts.map +1 -1
  11. package/dist/coreSpec.js +42 -32
  12. package/dist/coreSpec.js.map +1 -1
  13. package/dist/definitions.d.ts +2 -3
  14. package/dist/definitions.d.ts.map +1 -1
  15. package/dist/definitions.js +12 -7
  16. package/dist/definitions.js.map +1 -1
  17. package/dist/directiveAndTypeSpecification.d.ts +8 -8
  18. package/dist/directiveAndTypeSpecification.d.ts.map +1 -1
  19. package/dist/directiveAndTypeSpecification.js +21 -16
  20. package/dist/directiveAndTypeSpecification.js.map +1 -1
  21. package/dist/error.d.ts +1 -1
  22. package/dist/extractSubgraphsFromSupergraph.d.ts +1 -1
  23. package/dist/extractSubgraphsFromSupergraph.d.ts.map +1 -1
  24. package/dist/extractSubgraphsFromSupergraph.js +450 -295
  25. package/dist/extractSubgraphsFromSupergraph.js.map +1 -1
  26. package/dist/federation.d.ts +10 -5
  27. package/dist/federation.d.ts.map +1 -1
  28. package/dist/federation.js +58 -16
  29. package/dist/federation.js.map +1 -1
  30. package/dist/federationSpec.d.ts +3 -1
  31. package/dist/federationSpec.d.ts.map +1 -1
  32. package/dist/federationSpec.js +12 -3
  33. package/dist/federationSpec.js.map +1 -1
  34. package/dist/inaccessibleSpec.d.ts +1 -1
  35. package/dist/inaccessibleSpec.d.ts.map +1 -1
  36. package/dist/inaccessibleSpec.js +4 -4
  37. package/dist/inaccessibleSpec.js.map +1 -1
  38. package/dist/index.d.ts +2 -1
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +2 -1
  41. package/dist/index.js.map +1 -1
  42. package/dist/joinSpec.d.ts +19 -17
  43. package/dist/joinSpec.d.ts.map +1 -1
  44. package/dist/joinSpec.js +3 -3
  45. package/dist/joinSpec.js.map +1 -1
  46. package/dist/requiresScopesSpec.d.ts +16 -0
  47. package/dist/requiresScopesSpec.d.ts.map +1 -0
  48. package/dist/requiresScopesSpec.js +55 -0
  49. package/dist/requiresScopesSpec.js.map +1 -0
  50. package/dist/supergraphs.d.ts +19 -4
  51. package/dist/supergraphs.d.ts.map +1 -1
  52. package/dist/supergraphs.js +40 -14
  53. package/dist/supergraphs.js.map +1 -1
  54. package/dist/tagSpec.d.ts +1 -1
  55. package/dist/tagSpec.d.ts.map +1 -1
  56. package/dist/tagSpec.js +4 -4
  57. package/dist/tagSpec.js.map +1 -1
  58. package/dist/utils.d.ts +1 -0
  59. package/dist/utils.d.ts.map +1 -1
  60. package/dist/utils.js +11 -1
  61. package/dist/utils.js.map +1 -1
  62. package/package.json +1 -1
  63. package/src/argumentCompositionStrategies.ts +32 -9
  64. package/src/authenticatedSpec.ts +62 -0
  65. package/src/coreSpec.ts +57 -35
  66. package/src/definitions.ts +22 -9
  67. package/src/directiveAndTypeSpecification.ts +25 -24
  68. package/src/error.ts +2 -2
  69. package/src/extractSubgraphsFromSupergraph.ts +647 -393
  70. package/src/federation.ts +95 -16
  71. package/src/federationSpec.ts +13 -5
  72. package/src/inaccessibleSpec.ts +4 -4
  73. package/src/index.ts +2 -1
  74. package/src/joinSpec.ts +23 -13
  75. package/src/precompute.ts +1 -1
  76. package/src/requiresScopesSpec.ts +76 -0
  77. package/src/supergraphs.ts +64 -16
  78. package/src/tagSpec.ts +4 -4
  79. package/src/utils.ts +10 -0
@@ -14,7 +14,9 @@ export declare enum FederationDirectiveName {
14
14
  TAG = "tag",
15
15
  INACCESSIBLE = "inaccessible",
16
16
  COMPOSE_DIRECTIVE = "composeDirective",
17
- INTERFACE_OBJECT = "interfaceObject"
17
+ INTERFACE_OBJECT = "interfaceObject",
18
+ AUTHENTICATED = "authenticated",
19
+ REQUIRES_SCOPES = "requiresScopes"
18
20
  }
19
21
  export declare const FEDERATION1_TYPES: import("./directiveAndTypeSpecification").TypeSpecification[];
20
22
  export declare const FEDERATION1_DIRECTIVES: import("./directiveAndTypeSpecification").DirectiveSpecification[];
@@ -1 +1 @@
1
- {"version":3,"file":"federationSpec.d.ts","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAa/F,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAExE,oBAAY,kBAAkB;IAC5B,SAAS,aAAa;CACvB;AAED,oBAAY,uBAAuB;IACjC,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,GAAG,QAAQ;IACX,YAAY,iBAAiB;IAC7B,iBAAiB,qBAAqB;IACtC,gBAAgB,oBAAoB;CACrC;AAsDD,eAAO,MAAM,iBAAiB,+DAAwB,CAAC;AACvD,eAAO,MAAM,sBAAsB,oEAA6B,CAAC;AASjE,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,EAAE,cAAc;CA4CpC;AAED,eAAO,MAAM,mBAAmB,8CAK8B,CAAC"}
1
+ {"version":3,"file":"federationSpec.d.ts","sourceRoot":"","sources":["../src/federationSpec.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAe/F,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAExE,oBAAY,kBAAkB;IAC5B,SAAS,aAAa;CACvB;AAED,oBAAY,uBAAuB;IACjC,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,GAAG,QAAQ;IACX,YAAY,iBAAiB;IAC7B,iBAAiB,qBAAqB;IACtC,gBAAgB,oBAAoB;IACpC,aAAa,kBAAkB;IAC/B,eAAe,mBAAmB;CACnC;AAsDD,eAAO,MAAM,iBAAiB,+DAAwB,CAAC;AACvD,eAAO,MAAM,sBAAsB,oEAA6B,CAAC;AASjE,qBAAa,wBAAyB,SAAQ,iBAAiB;gBACjD,OAAO,EAAE,cAAc;CA+CpC;AAED,eAAO,MAAM,mBAAmB,8CAM8B,CAAC"}
@@ -10,6 +10,8 @@ const tagSpec_1 = require("./tagSpec");
10
10
  const federation_1 = require("./federation");
11
11
  const knownCoreFeatures_1 = require("./knownCoreFeatures");
12
12
  const inaccessibleSpec_1 = require("./inaccessibleSpec");
13
+ const authenticatedSpec_1 = require("./authenticatedSpec");
14
+ const requiresScopesSpec_1 = require("./requiresScopesSpec");
13
15
  exports.federationIdentity = 'https://specs.apollo.dev/federation';
14
16
  var FederationTypeName;
15
17
  (function (FederationTypeName) {
@@ -28,6 +30,8 @@ var FederationDirectiveName;
28
30
  FederationDirectiveName["INACCESSIBLE"] = "inaccessible";
29
31
  FederationDirectiveName["COMPOSE_DIRECTIVE"] = "composeDirective";
30
32
  FederationDirectiveName["INTERFACE_OBJECT"] = "interfaceObject";
33
+ FederationDirectiveName["AUTHENTICATED"] = "authenticated";
34
+ FederationDirectiveName["REQUIRES_SCOPES"] = "requiresScopes";
31
35
  })(FederationDirectiveName || (exports.FederationDirectiveName = FederationDirectiveName = {}));
32
36
  const fieldSetTypeSpec = (0, directiveAndTypeSpecification_1.createScalarTypeSpecification)({ name: FederationTypeName.FIELD_SET });
33
37
  const fieldsArgument = { name: 'fields', type: (schema) => fieldSetType(schema) };
@@ -91,7 +95,7 @@ class FederationSpecDefinition extends coreSpec_1.FeatureDefinition {
91
95
  locations: [graphql_1.DirectiveLocation.OBJECT, graphql_1.DirectiveLocation.FIELD_DEFINITION],
92
96
  repeatable: version >= (new coreSpec_1.FeatureVersion(2, 2)),
93
97
  }));
94
- this.registerDirective(inaccessibleSpec_1.INACCESSIBLE_VERSIONS.latest().inaccessibleDirectiveSpec);
98
+ this.registerSubFeature(inaccessibleSpec_1.INACCESSIBLE_VERSIONS.getMinimumRequiredVersion(version));
95
99
  this.registerDirective((0, directiveAndTypeSpecification_1.createDirectiveSpecification)({
96
100
  name: FederationDirectiveName.OVERRIDE,
97
101
  locations: [graphql_1.DirectiveLocation.FIELD_DEFINITION],
@@ -110,7 +114,11 @@ class FederationSpecDefinition extends coreSpec_1.FeatureDefinition {
110
114
  name: FederationDirectiveName.INTERFACE_OBJECT,
111
115
  locations: [graphql_1.DirectiveLocation.OBJECT],
112
116
  }));
113
- this.registerDirective(tagSpec_1.TAG_VERSIONS.find(new coreSpec_1.FeatureVersion(0, 3)).tagDirectiveSpec);
117
+ this.registerSubFeature(tagSpec_1.TAG_VERSIONS.find(new coreSpec_1.FeatureVersion(0, 3)));
118
+ }
119
+ if (version >= (new coreSpec_1.FeatureVersion(2, 5))) {
120
+ this.registerSubFeature(authenticatedSpec_1.AUTHENTICATED_VERSIONS.find(new coreSpec_1.FeatureVersion(0, 1)));
121
+ this.registerSubFeature(requiresScopesSpec_1.REQUIRES_SCOPES_VERSIONS.find(new coreSpec_1.FeatureVersion(0, 1)));
114
122
  }
115
123
  }
116
124
  }
@@ -120,6 +128,7 @@ exports.FEDERATION_VERSIONS = new coreSpec_1.FeatureDefinitions(exports.federati
120
128
  .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 1)))
121
129
  .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 2)))
122
130
  .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 3)))
123
- .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 4)));
131
+ .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 4)))
132
+ .add(new FederationSpecDefinition(new coreSpec_1.FeatureVersion(2, 5)));
124
133
  (0, knownCoreFeatures_1.registerKnownFeature)(exports.FEDERATION_VERSIONS);
125
134
  //# 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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"}
@@ -7,7 +7,7 @@ export declare class InaccessibleSpecDefinition extends FeatureDefinition {
7
7
  readonly inaccessibleLocations: DirectiveLocation[];
8
8
  readonly inaccessibleDirectiveSpec: DirectiveSpecification;
9
9
  private readonly printedInaccessibleDefinition;
10
- constructor(version: FeatureVersion);
10
+ constructor(version: FeatureVersion, minimumFederationVersion?: FeatureVersion);
11
11
  isV01(): boolean;
12
12
  inaccessibleDirective(schema: Schema): DirectiveDefinition<Record<string, never>> | undefined;
13
13
  checkCompatibleDirective(definition: DirectiveDefinition): GraphQLError | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"inaccessibleSpec.d.ts","sourceRoot":"","sources":["../src/inaccessibleSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5G,OAAO,EAGL,mBAAmB,EAmBnB,MAAM,EAIP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG1D,OAAO,EAAgC,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGvG,eAAO,MAAM,oBAAoB,0CAA0C,CAAC;AAE5E,qBAAa,0BAA2B,SAAQ,iBAAiB;IAC/D,SAAgB,qBAAqB,EAAE,iBAAiB,EAAE,CAAC;IAC3D,SAAgB,yBAAyB,EAAE,sBAAsB,CAAC;IAClE,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAS;gBAE3C,OAAO,EAAE,cAAc;IA6BnC,KAAK;IAIL,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,SAAS;IAI7F,wBAAwB,CAAC,UAAU,EAAE,mBAAmB,GAAG,YAAY,GAAG,SAAS;IAYnF,IAAI,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAEhD;CACF;AAED,eAAO,MAAM,qBAAqB,gDAE8B,CAAC;AAIjE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,QAkDxD"}
1
+ {"version":3,"file":"inaccessibleSpec.d.ts","sourceRoot":"","sources":["../src/inaccessibleSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5G,OAAO,EAGL,mBAAmB,EAmBnB,MAAM,EAIP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG1D,OAAO,EAAgC,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGvG,eAAO,MAAM,oBAAoB,0CAA0C,CAAC;AAE5E,qBAAa,0BAA2B,SAAQ,iBAAiB;IAC/D,SAAgB,qBAAqB,EAAE,iBAAiB,EAAE,CAAC;IAC3D,SAAgB,yBAAyB,EAAE,sBAAsB,CAAC;IAClE,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAS;gBAE3C,OAAO,EAAE,cAAc,EAAE,wBAAwB,CAAC,EAAE,cAAc;IA6B9E,KAAK;IAIL,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,SAAS;IAI7F,wBAAwB,CAAC,UAAU,EAAE,mBAAmB,GAAG,YAAY,GAAG,SAAS;IAYnF,IAAI,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAEhD;CACF;AAED,eAAO,MAAM,qBAAqB,gDAEwD,CAAC;AAI3F,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,QAkDxD"}
@@ -10,8 +10,8 @@ const directiveAndTypeSpecification_1 = require("./directiveAndTypeSpecification
10
10
  const utils_1 = require("./utils");
11
11
  exports.inaccessibleIdentity = 'https://specs.apollo.dev/inaccessible';
12
12
  class InaccessibleSpecDefinition extends coreSpec_1.FeatureDefinition {
13
- constructor(version) {
14
- super(new coreSpec_1.FeatureUrl(exports.inaccessibleIdentity, 'inaccessible', version));
13
+ constructor(version, minimumFederationVersion) {
14
+ super(new coreSpec_1.FeatureUrl(exports.inaccessibleIdentity, 'inaccessible', version), minimumFederationVersion);
15
15
  this.inaccessibleLocations = [
16
16
  graphql_1.DirectiveLocation.FIELD_DEFINITION,
17
17
  graphql_1.DirectiveLocation.OBJECT,
@@ -27,7 +27,7 @@ class InaccessibleSpecDefinition extends coreSpec_1.FeatureDefinition {
27
27
  name: 'inaccessible',
28
28
  locations: this.inaccessibleLocations,
29
29
  composes: true,
30
- supergraphSpecification: () => exports.INACCESSIBLE_VERSIONS.latest(),
30
+ supergraphSpecification: (fedVersion) => exports.INACCESSIBLE_VERSIONS.getMinimumRequiredVersion(fedVersion),
31
31
  });
32
32
  this.registerDirective(this.inaccessibleDirectiveSpec);
33
33
  }
@@ -53,7 +53,7 @@ class InaccessibleSpecDefinition extends coreSpec_1.FeatureDefinition {
53
53
  exports.InaccessibleSpecDefinition = InaccessibleSpecDefinition;
54
54
  exports.INACCESSIBLE_VERSIONS = new coreSpec_1.FeatureDefinitions(exports.inaccessibleIdentity)
55
55
  .add(new InaccessibleSpecDefinition(new coreSpec_1.FeatureVersion(0, 1)))
56
- .add(new InaccessibleSpecDefinition(new coreSpec_1.FeatureVersion(0, 2)));
56
+ .add(new InaccessibleSpecDefinition(new coreSpec_1.FeatureVersion(0, 2), new coreSpec_1.FeatureVersion(2, 0)));
57
57
  (0, knownCoreFeatures_1.registerKnownFeature)(exports.INACCESSIBLE_VERSIONS);
58
58
  function removeInaccessibleElements(schema) {
59
59
  schema.validate();
@@ -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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"}
package/dist/index.d.ts CHANGED
@@ -13,7 +13,6 @@ export * from './tagSpec';
13
13
  export * from './inaccessibleSpec';
14
14
  export * from './federationSpec';
15
15
  export * from './supergraphs';
16
- export * from './extractSubgraphsFromSupergraph';
17
16
  export * from './error';
18
17
  export * from './schemaUpgrader';
19
18
  export * from './suggestions';
@@ -21,4 +20,6 @@ export * from './graphQLJSSchemaToAST';
21
20
  export * from './directiveAndTypeSpecification';
22
21
  export { coreFeatureDefinitionIfKnown } from './knownCoreFeatures';
23
22
  export * from './argumentCompositionStrategies';
23
+ export * from './authenticatedSpec';
24
+ export * from './requiresScopesSpec';
24
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,kCAAkC,CAAC;AACjD,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,cAAc,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -30,7 +30,6 @@ __exportStar(require("./tagSpec"), exports);
30
30
  __exportStar(require("./inaccessibleSpec"), exports);
31
31
  __exportStar(require("./federationSpec"), exports);
32
32
  __exportStar(require("./supergraphs"), exports);
33
- __exportStar(require("./extractSubgraphsFromSupergraph"), exports);
34
33
  __exportStar(require("./error"), exports);
35
34
  __exportStar(require("./schemaUpgrader"), exports);
36
35
  __exportStar(require("./suggestions"), exports);
@@ -39,4 +38,6 @@ __exportStar(require("./directiveAndTypeSpecification"), exports);
39
38
  var knownCoreFeatures_1 = require("./knownCoreFeatures");
40
39
  Object.defineProperty(exports, "coreFeatureDefinitionIfKnown", { enumerable: true, get: function () { return knownCoreFeatures_1.coreFeatureDefinitionIfKnown; } });
41
40
  __exportStar(require("./argumentCompositionStrategies"), exports);
41
+ __exportStar(require("./authenticatedSpec"), exports);
42
+ __exportStar(require("./requiresScopesSpec"), exports);
42
43
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,gDAA8B;AAC9B,0CAAwB;AACxB,2CAAyB;AACzB,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,6CAA2B;AAC3B,4CAA0B;AAC1B,qDAAmC;AACnC,mDAAiC;AACjC,gDAA8B;AAC9B,mEAAiD;AACjD,0CAAwB;AACxB,mDAAiC;AACjC,gDAA8B;AAC9B,yDAAuC;AACvC,kEAAgD;AAChD,yDAAmE;AAA1D,iIAAA,4BAA4B,OAAA;AACrC,kEAAgD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,gDAA8B;AAC9B,0CAAwB;AACxB,2CAAyB;AACzB,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,6CAA2B;AAC3B,4CAA0B;AAC1B,qDAAmC;AACnC,mDAAiC;AACjC,gDAA8B;AAC9B,0CAAwB;AACxB,mDAAiC;AACjC,gDAA8B;AAC9B,yDAAuC;AACvC,kEAAgD;AAChD,yDAAmE;AAA1D,iIAAA,4BAA4B,OAAA;AACrC,kEAAgD;AAChD,sDAAoC;AACpC,uDAAqC"}
@@ -3,8 +3,24 @@ import { CorePurpose, FeatureDefinition, FeatureDefinitions, FeatureVersion } fr
3
3
  import { DirectiveDefinition, EnumType, ScalarType, Schema } from "./definitions";
4
4
  import { Subgraphs } from "./federation";
5
5
  export declare const joinIdentity = "https://specs.apollo.dev/join";
6
+ export type JoinTypeDirectiveArguments = {
7
+ graph: string;
8
+ key?: string;
9
+ extension?: boolean;
10
+ resolvable?: boolean;
11
+ isInterfaceObject?: boolean;
12
+ };
13
+ export type JoinFieldDirectiveArguments = {
14
+ graph?: string;
15
+ requires?: string;
16
+ provides?: string;
17
+ override?: string;
18
+ type?: string;
19
+ external?: boolean;
20
+ usedOverridden?: boolean;
21
+ };
6
22
  export declare class JoinSpecDefinition extends FeatureDefinition {
7
- constructor(version: FeatureVersion);
23
+ constructor(version: FeatureVersion, minimumFederationVersion?: FeatureVersion);
8
24
  private isV01;
9
25
  addElementsToSchema(schema: Schema): GraphQLError[];
10
26
  allElementNames(): string[];
@@ -15,26 +31,12 @@ export declare class JoinSpecDefinition extends FeatureDefinition {
15
31
  name: string;
16
32
  url: string;
17
33
  }>;
18
- typeDirective(schema: Schema): DirectiveDefinition<{
19
- graph: string;
20
- key?: string;
21
- extension?: boolean;
22
- resolvable?: boolean;
23
- isInterfaceObject?: boolean;
24
- }>;
34
+ typeDirective(schema: Schema): DirectiveDefinition<JoinTypeDirectiveArguments>;
25
35
  implementsDirective(schema: Schema): DirectiveDefinition<{
26
36
  graph: string;
27
37
  interface: string;
28
38
  }> | undefined;
29
- fieldDirective(schema: Schema): DirectiveDefinition<{
30
- graph?: string;
31
- requires?: string;
32
- provides?: string;
33
- override?: string;
34
- type?: string;
35
- external?: boolean;
36
- usedOverridden?: boolean;
37
- }>;
39
+ fieldDirective(schema: Schema): DirectiveDefinition<JoinFieldDirectiveArguments>;
38
40
  unionMemberDirective(schema: Schema): DirectiveDefinition<{
39
41
  graph: string;
40
42
  member: string;
@@ -1 +1 @@
1
- {"version":3,"file":"joinSpec.d.ts","sourceRoot":"","sources":["../src/joinSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5G,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,MAAM,EAEP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAY,SAAS,EAAE,MAAM,cAAc,CAAC;AAInD,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAmB5D,qBAAa,kBAAmB,SAAQ,iBAAiB;gBAC3C,OAAO,EAAE,cAAc;IAInC,OAAO,CAAC,KAAK;IAIb,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IA4EnD,eAAe,IAAI,MAAM,EAAE;IAgB3B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IA+B5E,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAI1C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAInC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC;IAIhF,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAC,CAAC;IAIzJ,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIxG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAClD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;IAIF,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAItG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIpF,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIhF,IAAI,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAEhD;CACF;AAQD,eAAO,MAAM,aAAa,wCAG8B,CAAC"}
1
+ {"version":3,"file":"joinSpec.d.ts","sourceRoot":"","sources":["../src/joinSpec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAc,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5G,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,UAAU,EACV,MAAM,EAEP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAY,SAAS,EAAE,MAAM,cAAc,CAAC;AAInD,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAmB5D,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAA;AAED,qBAAa,kBAAmB,SAAQ,iBAAiB;gBAC3C,OAAO,EAAE,cAAc,EAAE,wBAAwB,CAAC,EAAE,cAAc;IAI9E,OAAO,CAAC,KAAK;IAIb,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE;IA4EnD,eAAe,IAAI,MAAM,EAAE;IAgB3B,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IA+B5E,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAI1C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;IAInC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC;IAIhF,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,0BAA0B,CAAC;IAI9E,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIxG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,2BAA2B,CAAC;IAIhF,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAItG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIpF,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC,GAAG,SAAS;IAIhF,IAAI,kBAAkB,IAAI,WAAW,GAAG,SAAS,CAEhD;CACF;AAQD,eAAO,MAAM,aAAa,wCAGwD,CAAC"}
package/dist/joinSpec.js CHANGED
@@ -19,8 +19,8 @@ function sanitizeGraphQLName(name) {
19
19
  return toUpper;
20
20
  }
21
21
  class JoinSpecDefinition extends coreSpec_1.FeatureDefinition {
22
- constructor(version) {
23
- super(new coreSpec_1.FeatureUrl(exports.joinIdentity, 'join', version));
22
+ constructor(version, minimumFederationVersion) {
23
+ super(new coreSpec_1.FeatureUrl(exports.joinIdentity, 'join', version), minimumFederationVersion);
24
24
  }
25
25
  isV01() {
26
26
  return this.version.equals(new coreSpec_1.FeatureVersion(0, 1));
@@ -155,6 +155,6 @@ exports.JoinSpecDefinition = JoinSpecDefinition;
155
155
  exports.JOIN_VERSIONS = new coreSpec_1.FeatureDefinitions(exports.joinIdentity)
156
156
  .add(new JoinSpecDefinition(new coreSpec_1.FeatureVersion(0, 1)))
157
157
  .add(new JoinSpecDefinition(new coreSpec_1.FeatureVersion(0, 2)))
158
- .add(new JoinSpecDefinition(new coreSpec_1.FeatureVersion(0, 3)));
158
+ .add(new JoinSpecDefinition(new coreSpec_1.FeatureVersion(0, 3), new coreSpec_1.FeatureVersion(2, 0)));
159
159
  (0, knownCoreFeatures_1.registerKnownFeature)(exports.JOIN_VERSIONS);
160
160
  //# sourceMappingURL=joinSpec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"joinSpec.js","sourceRoot":"","sources":["../src/joinSpec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"joinSpec.js","sourceRoot":"","sources":["../src/joinSpec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { CorePurpose, FeatureDefinition, FeatureDefinitions, FeatureVersion } from "./coreSpec";
2
+ import { DirectiveDefinition, Schema } from "./definitions";
3
+ export declare enum RequiresScopesTypeName {
4
+ SCOPE = "Scope"
5
+ }
6
+ export declare class RequiresScopesSpecDefinition extends FeatureDefinition {
7
+ static readonly directiveName = "requiresScopes";
8
+ static readonly identity: string;
9
+ constructor(version: FeatureVersion);
10
+ requiresScopesDirective(schema: Schema): DirectiveDefinition<{
11
+ name: string;
12
+ }>;
13
+ get defaultCorePurpose(): CorePurpose;
14
+ }
15
+ export declare const REQUIRES_SCOPES_VERSIONS: FeatureDefinitions<RequiresScopesSpecDefinition>;
16
+ //# sourceMappingURL=requiresScopesSpec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requiresScopesSpec.d.ts","sourceRoot":"","sources":["../src/requiresScopesSpec.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAElB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAyB,MAAM,EAAE,MAAM,eAAe,CAAC;AAMnF,oBAAY,sBAAsB;IAChC,KAAK,UAAU;CAChB;AAED,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,gBAAuB,aAAa,oBAAoB;IACxD,gBAAuB,QAAQ,SAC4C;gBAE/D,OAAO,EAAE,cAAc;IAoCnC,uBAAuB,CACrB,MAAM,EAAE,MAAM,GACb,mBAAmB,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAIxC,IAAI,kBAAkB,IAAI,WAAW,CAEpC;CACF;AAED,eAAO,MAAM,wBAAwB,kDAG8B,CAAC"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.REQUIRES_SCOPES_VERSIONS = exports.RequiresScopesSpecDefinition = exports.RequiresScopesTypeName = void 0;
4
+ const graphql_1 = require("graphql");
5
+ const coreSpec_1 = require("./coreSpec");
6
+ const definitions_1 = require("./definitions");
7
+ const directiveAndTypeSpecification_1 = require("./directiveAndTypeSpecification");
8
+ const knownCoreFeatures_1 = require("./knownCoreFeatures");
9
+ const argumentCompositionStrategies_1 = require("./argumentCompositionStrategies");
10
+ const utils_1 = require("./utils");
11
+ var RequiresScopesTypeName;
12
+ (function (RequiresScopesTypeName) {
13
+ RequiresScopesTypeName["SCOPE"] = "Scope";
14
+ })(RequiresScopesTypeName || (exports.RequiresScopesTypeName = RequiresScopesTypeName = {}));
15
+ class RequiresScopesSpecDefinition extends coreSpec_1.FeatureDefinition {
16
+ constructor(version) {
17
+ super(new coreSpec_1.FeatureUrl(RequiresScopesSpecDefinition.identity, RequiresScopesSpecDefinition.directiveName, version));
18
+ this.registerType((0, directiveAndTypeSpecification_1.createScalarTypeSpecification)({ name: RequiresScopesTypeName.SCOPE }));
19
+ this.registerDirective((0, directiveAndTypeSpecification_1.createDirectiveSpecification)({
20
+ name: RequiresScopesSpecDefinition.directiveName,
21
+ args: [{
22
+ name: 'scopes',
23
+ type: (schema, feature) => {
24
+ (0, utils_1.assert)(feature, "Shouldn't be added without being attached to a @link spec");
25
+ const scopeName = feature.typeNameInSchema(RequiresScopesTypeName.SCOPE);
26
+ const scopeType = schema.type(scopeName);
27
+ (0, utils_1.assert)(scopeType, () => `Expected "${scopeName}" to be defined`);
28
+ return new definitions_1.NonNullType(new definitions_1.ListType(new definitions_1.NonNullType(scopeType)));
29
+ },
30
+ compositionStrategy: argumentCompositionStrategies_1.ARGUMENT_COMPOSITION_STRATEGIES.UNION,
31
+ }],
32
+ locations: [
33
+ graphql_1.DirectiveLocation.FIELD_DEFINITION,
34
+ graphql_1.DirectiveLocation.OBJECT,
35
+ graphql_1.DirectiveLocation.INTERFACE,
36
+ graphql_1.DirectiveLocation.SCALAR,
37
+ graphql_1.DirectiveLocation.ENUM,
38
+ ],
39
+ composes: true,
40
+ supergraphSpecification: () => exports.REQUIRES_SCOPES_VERSIONS.latest(),
41
+ }));
42
+ }
43
+ requiresScopesDirective(schema) {
44
+ return this.directive(schema, RequiresScopesSpecDefinition.directiveName);
45
+ }
46
+ get defaultCorePurpose() {
47
+ return 'SECURITY';
48
+ }
49
+ }
50
+ exports.RequiresScopesSpecDefinition = RequiresScopesSpecDefinition;
51
+ RequiresScopesSpecDefinition.directiveName = "requiresScopes";
52
+ RequiresScopesSpecDefinition.identity = `https://specs.apollo.dev/${RequiresScopesSpecDefinition.directiveName}`;
53
+ exports.REQUIRES_SCOPES_VERSIONS = new coreSpec_1.FeatureDefinitions(RequiresScopesSpecDefinition.identity).add(new RequiresScopesSpecDefinition(new coreSpec_1.FeatureVersion(0, 1)));
54
+ (0, knownCoreFeatures_1.registerKnownFeature)(exports.REQUIRES_SCOPES_VERSIONS);
55
+ //# sourceMappingURL=requiresScopesSpec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requiresScopesSpec.js","sourceRoot":"","sources":["../src/requiresScopesSpec.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAC5C,yCAMoB;AACpB,+CAAmF;AACnF,mFAA8G;AAC9G,2DAA2D;AAC3D,mFAAkF;AAClF,mCAAiC;AAEjC,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;AACjB,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC;AAED,MAAa,4BAA6B,SAAQ,4BAAiB;IAKjE,YAAY,OAAuB;QACjC,KAAK,CACH,IAAI,qBAAU,CACZ,4BAA4B,CAAC,QAAQ,EACrC,4BAA4B,CAAC,aAAa,EAC1C,OAAO,CACR,CACF,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,IAAA,6DAA6B,EAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEzF,IAAI,CAAC,iBAAiB,CAAC,IAAA,4DAA4B,EAAC;YAClD,IAAI,EAAE,4BAA4B,CAAC,aAAa;YAChD,IAAI,EAAE,CAAC;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;wBACxB,IAAA,cAAM,EAAC,OAAO,EAAE,2DAA2D,CAAC,CAAC;wBAC7E,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;wBACzE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACzC,IAAA,cAAM,EAAC,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa,SAAS,iBAAiB,CAAC,CAAC;wBACjE,OAAO,IAAI,yBAAW,CAAC,IAAI,sBAAQ,CAAC,IAAI,yBAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBACnE,CAAC;oBACD,mBAAmB,EAAE,+DAA+B,CAAC,KAAK;iBAC3D,CAAC;YACF,SAAS,EAAE;gBACT,2BAAiB,CAAC,gBAAgB;gBAClC,2BAAiB,CAAC,MAAM;gBACxB,2BAAiB,CAAC,SAAS;gBAC3B,2BAAiB,CAAC,MAAM;gBACxB,2BAAiB,CAAC,IAAI;aACvB;YACD,QAAQ,EAAE,IAAI;YACd,uBAAuB,EAAE,GAAG,EAAE,CAAC,gCAAwB,CAAC,MAAM,EAAE;SACjE,CAAC,CAAC,CAAC;IACN,CAAC;IAED,uBAAuB,CACrB,MAAc;QAEd,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,4BAA4B,CAAC,aAAa,CAAE,CAAC;IAC7E,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,UAAU,CAAC;IACpB,CAAC;;AAjDH,oEAkDC;AAjDwB,0CAAa,GAAG,gBAAgB,CAAC;AACjC,qCAAQ,GAC7B,4BAA4B,4BAA4B,CAAC,aAAa,EAAE,CAAC;AAiDhE,QAAA,wBAAwB,GACnC,IAAI,6BAAkB,CACpB,4BAA4B,CAAC,QAAQ,CACtC,CAAC,GAAG,CAAC,IAAI,4BAA4B,CAAC,IAAI,yBAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpE,IAAA,wCAAoB,EAAC,gCAAwB,CAAC,CAAC"}
@@ -1,10 +1,25 @@
1
1
  import { DocumentNode } from "graphql";
2
2
  import { CoreFeatures, Schema } from "./definitions";
3
3
  import { JoinSpecDefinition } from "./joinSpec";
4
- export declare function buildSupergraphSchema(supergraphSdl: string | DocumentNode): [Schema, {
5
- name: string;
6
- url: string;
7
- }[]];
4
+ import { Subgraphs } from ".";
5
+ export declare const DEFAULT_SUPPORTED_SUPERGRAPH_FEATURES: Set<string>;
8
6
  export declare function validateSupergraph(supergraph: Schema): [CoreFeatures, JoinSpecDefinition];
9
7
  export declare function isFed1Supergraph(supergraph: Schema): boolean;
8
+ export declare class Supergraph {
9
+ readonly schema: Schema;
10
+ private readonly shouldValidate;
11
+ private readonly containedSubgraphs;
12
+ private _subgraphs?;
13
+ constructor(schema: Schema, supportedFeatures?: Set<string> | null, shouldValidate?: boolean);
14
+ static build(supergraphSdl: string | DocumentNode, options?: {
15
+ supportedFeatures?: Set<string>;
16
+ validateSupergraph?: boolean;
17
+ }): Supergraph;
18
+ subgraphsMetadata(): readonly {
19
+ name: string;
20
+ url: string;
21
+ }[];
22
+ subgraphs(): Subgraphs;
23
+ apiSchema(): Schema;
24
+ }
10
25
  //# sourceMappingURL=supergraphs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"supergraphs.d.ts","sourceRoot":"","sources":["../src/supergraphs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,EAAc,MAAM,eAAe,CAAC;AACjE,OAAO,EAAgB,kBAAkB,EAAiB,MAAM,YAAY,CAAC;AAoB7E,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY,GAAG,CAAC,MAAM,EAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAC,EAAE,CAAC,CAUnH;AAsCD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAezF;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D"}
1
+ {"version":3,"file":"supergraphs.d.ts","sourceRoot":"","sources":["../src/supergraphs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,EAAc,MAAM,eAAe,CAAC;AACjE,OAAO,EAAgB,kBAAkB,EAAiB,MAAM,YAAY,CAAC;AAI7E,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;AAE9B,eAAO,MAAM,qCAAqC,aAWhD,CAAC;AAwCH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAezF;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,qBAAa,UAAU;IAMnB,QAAQ,CAAC,MAAM,EAAE,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAPjC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAyC;IAE5E,OAAO,CAAC,UAAU,CAAC,CAAY;gBAGpB,MAAM,EAAE,MAAM,EACvB,iBAAiB,GAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAA4C,EAC5D,cAAc,GAAE,OAAc;IAiBjD,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY,EAAE,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE;IAe9H,iBAAiB,IAAI,SAAS;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,EAAE;IAI3D,SAAS,IAAI,SAAS;IAUtB,SAAS,IAAI,MAAM;CAGpB"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isFed1Supergraph = exports.validateSupergraph = exports.buildSupergraphSchema = void 0;
3
+ exports.Supergraph = exports.isFed1Supergraph = exports.validateSupergraph = exports.DEFAULT_SUPPORTED_SUPERGRAPH_FEATURES = void 0;
4
4
  const coreSpec_1 = require("./coreSpec");
5
5
  const definitions_1 = require("./definitions");
6
6
  const joinSpec_1 = require("./joinSpec");
7
7
  const buildSchema_1 = require("./buildSchema");
8
8
  const extractSubgraphsFromSupergraph_1 = require("./extractSubgraphsFromSupergraph");
9
9
  const error_1 = require("./error");
10
- const SUPPORTED_FEATURES = new Set([
10
+ exports.DEFAULT_SUPPORTED_SUPERGRAPH_FEATURES = new Set([
11
11
  'https://specs.apollo.dev/core/v0.1',
12
12
  'https://specs.apollo.dev/core/v0.2',
13
13
  'https://specs.apollo.dev/join/v0.1',
@@ -20,17 +20,7 @@ const SUPPORTED_FEATURES = new Set([
20
20
  'https://specs.apollo.dev/inaccessible/v0.2',
21
21
  ]);
22
22
  const coreVersionZeroDotOneUrl = coreSpec_1.FeatureUrl.parse('https://specs.apollo.dev/core/v0.1');
23
- function buildSupergraphSchema(supergraphSdl) {
24
- const schema = typeof supergraphSdl === 'string'
25
- ? (0, buildSchema_1.buildSchema)(supergraphSdl, { validate: false })
26
- : (0, buildSchema_1.buildSchemaFromAST)(supergraphSdl, { validate: false });
27
- const [coreFeatures] = validateSupergraph(schema);
28
- checkFeatureSupport(coreFeatures);
29
- schema.validate();
30
- return [schema, (0, extractSubgraphsFromSupergraph_1.extractSubgraphsNamesAndUrlsFromSupergraph)(schema)];
31
- }
32
- exports.buildSupergraphSchema = buildSupergraphSchema;
33
- function checkFeatureSupport(coreFeatures) {
23
+ function checkFeatureSupport(coreFeatures, supportedFeatures) {
34
24
  const errors = [];
35
25
  const coreItself = coreFeatures.coreItself;
36
26
  if (coreItself.url.equals(coreVersionZeroDotOneUrl)) {
@@ -44,7 +34,7 @@ function checkFeatureSupport(coreFeatures) {
44
34
  }
45
35
  for (const feature of coreFeatures.allFeatures()) {
46
36
  if (feature.url.equals(coreVersionZeroDotOneUrl) || feature.purpose === 'EXECUTION' || feature.purpose === 'SECURITY') {
47
- if (!SUPPORTED_FEATURES.has(feature.url.base.toString())) {
37
+ if (!supportedFeatures.has(feature.url.base.toString())) {
48
38
  errors.push(error_1.ERRORS.UNSUPPORTED_LINKED_FEATURE.err(`feature ${feature.url} is for: ${feature.purpose} but is unsupported`, { nodes: feature.directive.sourceAST }));
49
39
  }
50
40
  }
@@ -73,4 +63,40 @@ function isFed1Supergraph(supergraph) {
73
63
  return validateSupergraph(supergraph)[1].version.equals(new coreSpec_1.FeatureVersion(0, 1));
74
64
  }
75
65
  exports.isFed1Supergraph = isFed1Supergraph;
66
+ class Supergraph {
67
+ constructor(schema, supportedFeatures = exports.DEFAULT_SUPPORTED_SUPERGRAPH_FEATURES, shouldValidate = true) {
68
+ this.schema = schema;
69
+ this.shouldValidate = shouldValidate;
70
+ const [coreFeatures] = validateSupergraph(schema);
71
+ if (supportedFeatures !== null) {
72
+ checkFeatureSupport(coreFeatures, supportedFeatures);
73
+ }
74
+ if (shouldValidate) {
75
+ schema.validate();
76
+ }
77
+ else {
78
+ schema.assumeValid();
79
+ }
80
+ this.containedSubgraphs = (0, extractSubgraphsFromSupergraph_1.extractSubgraphsNamesAndUrlsFromSupergraph)(schema);
81
+ }
82
+ static build(supergraphSdl, options) {
83
+ const schema = typeof supergraphSdl === 'string'
84
+ ? (0, buildSchema_1.buildSchema)(supergraphSdl, { validate: false })
85
+ : (0, buildSchema_1.buildSchemaFromAST)(supergraphSdl, { validate: false });
86
+ return new Supergraph(schema, options === null || options === void 0 ? void 0 : options.supportedFeatures, options === null || options === void 0 ? void 0 : options.validateSupergraph);
87
+ }
88
+ subgraphsMetadata() {
89
+ return this.containedSubgraphs;
90
+ }
91
+ subgraphs() {
92
+ if (!this._subgraphs) {
93
+ this._subgraphs = (0, extractSubgraphsFromSupergraph_1.extractSubgraphsFromSupergraph)(this.schema, this.shouldValidate);
94
+ }
95
+ return this._subgraphs;
96
+ }
97
+ apiSchema() {
98
+ return this.schema.toAPISchema();
99
+ }
100
+ }
101
+ exports.Supergraph = Supergraph;
76
102
  //# sourceMappingURL=supergraphs.js.map