@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.
- package/dist/argumentCompositionStrategies.d.ts +12 -7
- package/dist/argumentCompositionStrategies.d.ts.map +1 -1
- package/dist/argumentCompositionStrategies.js +26 -7
- package/dist/argumentCompositionStrategies.js.map +1 -1
- package/dist/authenticatedSpec.d.ts +13 -0
- package/dist/authenticatedSpec.d.ts.map +1 -0
- package/dist/authenticatedSpec.js +36 -0
- package/dist/authenticatedSpec.js.map +1 -0
- package/dist/coreSpec.d.ts +6 -5
- package/dist/coreSpec.d.ts.map +1 -1
- package/dist/coreSpec.js +42 -32
- package/dist/coreSpec.js.map +1 -1
- package/dist/definitions.d.ts +2 -3
- package/dist/definitions.d.ts.map +1 -1
- package/dist/definitions.js +12 -7
- package/dist/definitions.js.map +1 -1
- package/dist/directiveAndTypeSpecification.d.ts +8 -8
- package/dist/directiveAndTypeSpecification.d.ts.map +1 -1
- package/dist/directiveAndTypeSpecification.js +21 -16
- package/dist/directiveAndTypeSpecification.js.map +1 -1
- package/dist/error.d.ts +1 -1
- package/dist/extractSubgraphsFromSupergraph.d.ts +1 -1
- package/dist/extractSubgraphsFromSupergraph.d.ts.map +1 -1
- package/dist/extractSubgraphsFromSupergraph.js +450 -295
- package/dist/extractSubgraphsFromSupergraph.js.map +1 -1
- package/dist/federation.d.ts +10 -5
- package/dist/federation.d.ts.map +1 -1
- package/dist/federation.js +58 -16
- package/dist/federation.js.map +1 -1
- package/dist/federationSpec.d.ts +3 -1
- package/dist/federationSpec.d.ts.map +1 -1
- package/dist/federationSpec.js +12 -3
- package/dist/federationSpec.js.map +1 -1
- package/dist/inaccessibleSpec.d.ts +1 -1
- package/dist/inaccessibleSpec.d.ts.map +1 -1
- package/dist/inaccessibleSpec.js +4 -4
- package/dist/inaccessibleSpec.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/joinSpec.d.ts +19 -17
- package/dist/joinSpec.d.ts.map +1 -1
- package/dist/joinSpec.js +3 -3
- package/dist/joinSpec.js.map +1 -1
- package/dist/requiresScopesSpec.d.ts +16 -0
- package/dist/requiresScopesSpec.d.ts.map +1 -0
- package/dist/requiresScopesSpec.js +55 -0
- package/dist/requiresScopesSpec.js.map +1 -0
- package/dist/supergraphs.d.ts +19 -4
- package/dist/supergraphs.d.ts.map +1 -1
- package/dist/supergraphs.js +40 -14
- package/dist/supergraphs.js.map +1 -1
- package/dist/tagSpec.d.ts +1 -1
- package/dist/tagSpec.d.ts.map +1 -1
- package/dist/tagSpec.js +4 -4
- package/dist/tagSpec.js.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +11 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/argumentCompositionStrategies.ts +32 -9
- package/src/authenticatedSpec.ts +62 -0
- package/src/coreSpec.ts +57 -35
- package/src/definitions.ts +22 -9
- package/src/directiveAndTypeSpecification.ts +25 -24
- package/src/error.ts +2 -2
- package/src/extractSubgraphsFromSupergraph.ts +647 -393
- package/src/federation.ts +95 -16
- package/src/federationSpec.ts +13 -5
- package/src/inaccessibleSpec.ts +4 -4
- package/src/index.ts +2 -1
- package/src/joinSpec.ts +23 -13
- package/src/precompute.ts +1 -1
- package/src/requiresScopesSpec.ts +76 -0
- package/src/supergraphs.ts +64 -16
- package/src/tagSpec.ts +4 -4
- package/src/utils.ts +10 -0
|
@@ -1,34 +1,39 @@
|
|
|
1
|
-
import { InputType,
|
|
1
|
+
import { InputType, Schema } from "./definitions";
|
|
2
|
+
type TypeSupportValidator = (schema: Schema, type: InputType) => {
|
|
3
|
+
valid: boolean;
|
|
4
|
+
supportedMsg?: string;
|
|
5
|
+
};
|
|
2
6
|
export type ArgumentCompositionStrategy = {
|
|
3
7
|
name: string;
|
|
4
|
-
|
|
8
|
+
isTypeSupported: TypeSupportValidator;
|
|
5
9
|
mergeValues: (values: any[]) => any;
|
|
6
10
|
};
|
|
7
11
|
export declare const ARGUMENT_COMPOSITION_STRATEGIES: {
|
|
8
12
|
MAX: {
|
|
9
13
|
name: string;
|
|
10
|
-
|
|
14
|
+
isTypeSupported: TypeSupportValidator;
|
|
11
15
|
mergeValues: (values: any[]) => number;
|
|
12
16
|
};
|
|
13
17
|
MIN: {
|
|
14
18
|
name: string;
|
|
15
|
-
|
|
19
|
+
isTypeSupported: TypeSupportValidator;
|
|
16
20
|
mergeValues: (values: any[]) => number;
|
|
17
21
|
};
|
|
18
22
|
SUM: {
|
|
19
23
|
name: string;
|
|
20
|
-
|
|
24
|
+
isTypeSupported: TypeSupportValidator;
|
|
21
25
|
mergeValues: (values: any[]) => any;
|
|
22
26
|
};
|
|
23
27
|
INTERSECTION: {
|
|
24
28
|
name: string;
|
|
25
|
-
|
|
29
|
+
isTypeSupported: TypeSupportValidator;
|
|
26
30
|
mergeValues: (values: any[]) => any;
|
|
27
31
|
};
|
|
28
32
|
UNION: {
|
|
29
33
|
name: string;
|
|
30
|
-
|
|
34
|
+
isTypeSupported: TypeSupportValidator;
|
|
31
35
|
mergeValues: (values: any[]) => any;
|
|
32
36
|
};
|
|
33
37
|
};
|
|
38
|
+
export {};
|
|
34
39
|
//# sourceMappingURL=argumentCompositionStrategies.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argumentCompositionStrategies.d.ts","sourceRoot":"","sources":["../src/argumentCompositionStrategies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"argumentCompositionStrategies.d.ts","sourceRoot":"","sources":["../src/argumentCompositionStrategies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAe,MAAM,EAA6B,MAAM,eAAe,CAAA;AAIzF,KAAK,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,KAAK;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3G,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,oBAAoB,CAAC;IACtC,WAAW,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;CACrC,CAAA;AAqBD,eAAO,MAAM,+BAA+B;;;;8BAIlB,GAAG,EAAE;;;;;8BAKL,GAAG,EAAE;;;;;8BAKL,GAAG,EAAE;;;;;8BAKL,GAAG,EAAE;;;;;8BAKL,GAAG,EAAE;;CAM9B,CAAA"}
|
|
@@ -2,32 +2,51 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ARGUMENT_COMPOSITION_STRATEGIES = void 0;
|
|
4
4
|
const definitions_1 = require("./definitions");
|
|
5
|
+
const types_1 = require("./types");
|
|
6
|
+
const values_1 = require("./values");
|
|
7
|
+
function supportFixedTypes(types) {
|
|
8
|
+
return (schema, type) => {
|
|
9
|
+
const supported = types(schema);
|
|
10
|
+
if (!supported.some((t) => (0, types_1.sameType)(t, type))) {
|
|
11
|
+
return { valid: false, supportedMsg: `type(s) ${supported.join(', ')}` };
|
|
12
|
+
}
|
|
13
|
+
return { valid: true };
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function supportAnyNonNullArray() {
|
|
17
|
+
return (_, type) => {
|
|
18
|
+
if (!(0, definitions_1.isNonNullType)(type) || !(0, definitions_1.isListType)(type.ofType)) {
|
|
19
|
+
return { valid: false, supportedMsg: 'non nullable list types of any type' };
|
|
20
|
+
}
|
|
21
|
+
return { valid: true };
|
|
22
|
+
};
|
|
23
|
+
}
|
|
5
24
|
exports.ARGUMENT_COMPOSITION_STRATEGIES = {
|
|
6
25
|
MAX: {
|
|
7
26
|
name: 'MAX',
|
|
8
|
-
|
|
27
|
+
isTypeSupported: supportFixedTypes((schema) => [new definitions_1.NonNullType(schema.intType())]),
|
|
9
28
|
mergeValues: (values) => Math.max(...values),
|
|
10
29
|
},
|
|
11
30
|
MIN: {
|
|
12
31
|
name: 'MIN',
|
|
13
|
-
|
|
32
|
+
isTypeSupported: supportFixedTypes((schema) => [new definitions_1.NonNullType(schema.intType())]),
|
|
14
33
|
mergeValues: (values) => Math.min(...values),
|
|
15
34
|
},
|
|
16
35
|
SUM: {
|
|
17
36
|
name: 'SUM',
|
|
18
|
-
|
|
37
|
+
isTypeSupported: supportFixedTypes((schema) => [new definitions_1.NonNullType(schema.intType())]),
|
|
19
38
|
mergeValues: (values) => values.reduce((acc, val) => acc + val, 0),
|
|
20
39
|
},
|
|
21
40
|
INTERSECTION: {
|
|
22
41
|
name: 'INTERSECTION',
|
|
23
|
-
|
|
24
|
-
mergeValues: (values) => values.reduce((acc, val) => acc.filter((
|
|
42
|
+
isTypeSupported: supportAnyNonNullArray(),
|
|
43
|
+
mergeValues: (values) => values.reduce((acc, val) => acc.filter((v1) => val.some((v2) => (0, values_1.valueEquals)(v1, v2))), values[0]),
|
|
25
44
|
},
|
|
26
45
|
UNION: {
|
|
27
46
|
name: 'UNION',
|
|
28
|
-
|
|
47
|
+
isTypeSupported: supportAnyNonNullArray(),
|
|
29
48
|
mergeValues: (values) => values.reduce((acc, val) => {
|
|
30
|
-
const newValues = val.filter((
|
|
49
|
+
const newValues = val.filter((v1) => !acc.some((v2) => (0, values_1.valueEquals)(v1, v2)));
|
|
31
50
|
return acc.concat(newValues);
|
|
32
51
|
}, []),
|
|
33
52
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argumentCompositionStrategies.js","sourceRoot":"","sources":["../src/argumentCompositionStrategies.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"argumentCompositionStrategies.js","sourceRoot":"","sources":["../src/argumentCompositionStrategies.ts"],"names":[],"mappings":";;;AAAA,+CAAyF;AACzF,mCAAmC;AACnC,qCAAuC;AAUvC,SAAS,iBAAiB,CAAC,KAAsC;IAC/D,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE;YAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;SAC1E;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;QACjB,IAAI,CAAC,IAAA,2BAAa,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,wBAAU,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACpD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,qCAAqC,EAAC,CAAC;SAC7E;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC,CAAC;AACJ,CAAC;AAEY,QAAA,+BAA+B,GAAG;IAC7C,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,eAAe,EAAE,iBAAiB,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3F,WAAW,EAAE,CAAC,MAAa,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;KACpD;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,eAAe,EAAE,iBAAiB,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3F,WAAW,EAAE,CAAC,MAAa,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;KACpD;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,eAAe,EAAE,iBAAiB,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3F,WAAW,EAAE,CAAC,MAAa,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC;KAC1E;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,cAAc;QACpB,eAAe,EAAE,sBAAsB,EAAE;QACzC,WAAW,EAAE,CAAC,MAAa,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,IAAA,oBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;KAC5I;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,eAAe,EAAE,sBAAsB,EAAE;QACzC,WAAW,EAAE,CAAC,MAAa,EAAE,EAAE,CAC7B,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACzB,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,IAAA,oBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YACvF,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC,EAAE,EAAE,CAAC;KACT;CACF,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CorePurpose, FeatureDefinition, FeatureDefinitions, FeatureVersion } from "./coreSpec";
|
|
2
|
+
import { DirectiveDefinition, Schema } from "./definitions";
|
|
3
|
+
export declare class AuthenticatedSpecDefinition extends FeatureDefinition {
|
|
4
|
+
static readonly directiveName = "authenticated";
|
|
5
|
+
static readonly identity: string;
|
|
6
|
+
constructor(version: FeatureVersion, minimumFederationVersion: FeatureVersion);
|
|
7
|
+
authenticatedDirective(schema: Schema): DirectiveDefinition<{
|
|
8
|
+
name: string;
|
|
9
|
+
}>;
|
|
10
|
+
get defaultCorePurpose(): CorePurpose;
|
|
11
|
+
}
|
|
12
|
+
export declare const AUTHENTICATED_VERSIONS: FeatureDefinitions<AuthenticatedSpecDefinition>;
|
|
13
|
+
//# sourceMappingURL=authenticatedSpec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authenticatedSpec.d.ts","sourceRoot":"","sources":["../src/authenticatedSpec.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAElB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5D,qBAAa,2BAA4B,SAAQ,iBAAiB;IAChE,gBAAuB,aAAa,mBAAmB;IACvD,gBAAuB,QAAQ,SAA2E;gBAE9F,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,cAAc;IAwB7E,sBAAsB,CACpB,MAAM,EAAE,MAAM,GACb,mBAAmB,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAIxC,IAAI,kBAAkB,IAAI,WAAW,CAEpC;CACF;AAED,eAAO,MAAM,sBAAsB,iDAQhC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AUTHENTICATED_VERSIONS = exports.AuthenticatedSpecDefinition = void 0;
|
|
4
|
+
const graphql_1 = require("graphql");
|
|
5
|
+
const coreSpec_1 = require("./coreSpec");
|
|
6
|
+
const directiveAndTypeSpecification_1 = require("./directiveAndTypeSpecification");
|
|
7
|
+
const knownCoreFeatures_1 = require("./knownCoreFeatures");
|
|
8
|
+
class AuthenticatedSpecDefinition extends coreSpec_1.FeatureDefinition {
|
|
9
|
+
constructor(version, minimumFederationVersion) {
|
|
10
|
+
super(new coreSpec_1.FeatureUrl(AuthenticatedSpecDefinition.identity, AuthenticatedSpecDefinition.directiveName, version), minimumFederationVersion);
|
|
11
|
+
this.registerDirective((0, directiveAndTypeSpecification_1.createDirectiveSpecification)({
|
|
12
|
+
name: AuthenticatedSpecDefinition.directiveName,
|
|
13
|
+
locations: [
|
|
14
|
+
graphql_1.DirectiveLocation.FIELD_DEFINITION,
|
|
15
|
+
graphql_1.DirectiveLocation.OBJECT,
|
|
16
|
+
graphql_1.DirectiveLocation.INTERFACE,
|
|
17
|
+
graphql_1.DirectiveLocation.SCALAR,
|
|
18
|
+
graphql_1.DirectiveLocation.ENUM,
|
|
19
|
+
],
|
|
20
|
+
composes: true,
|
|
21
|
+
supergraphSpecification: () => exports.AUTHENTICATED_VERSIONS.latest(),
|
|
22
|
+
}));
|
|
23
|
+
}
|
|
24
|
+
authenticatedDirective(schema) {
|
|
25
|
+
return this.directive(schema, AuthenticatedSpecDefinition.directiveName);
|
|
26
|
+
}
|
|
27
|
+
get defaultCorePurpose() {
|
|
28
|
+
return 'SECURITY';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.AuthenticatedSpecDefinition = AuthenticatedSpecDefinition;
|
|
32
|
+
AuthenticatedSpecDefinition.directiveName = "authenticated";
|
|
33
|
+
AuthenticatedSpecDefinition.identity = `https://specs.apollo.dev/${AuthenticatedSpecDefinition.directiveName}`;
|
|
34
|
+
exports.AUTHENTICATED_VERSIONS = new coreSpec_1.FeatureDefinitions(AuthenticatedSpecDefinition.identity).add(new AuthenticatedSpecDefinition(new coreSpec_1.FeatureVersion(0, 1), new coreSpec_1.FeatureVersion(2, 5)));
|
|
35
|
+
(0, knownCoreFeatures_1.registerKnownFeature)(exports.AUTHENTICATED_VERSIONS);
|
|
36
|
+
//# sourceMappingURL=authenticatedSpec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authenticatedSpec.js","sourceRoot":"","sources":["../src/authenticatedSpec.ts"],"names":[],"mappings":";;;AAAA,qCAA4C;AAC5C,yCAMoB;AAEpB,mFAA+E;AAC/E,2DAA2D;AAE3D,MAAa,2BAA4B,SAAQ,4BAAiB;IAIhE,YAAY,OAAuB,EAAE,wBAAwC;QAC3E,KAAK,CACH,IAAI,qBAAU,CACZ,2BAA2B,CAAC,QAAQ,EACpC,2BAA2B,CAAC,aAAa,EACzC,OAAO,CACR,EACD,wBAAwB,CACzB,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,IAAA,4DAA4B,EAAC;YAClD,IAAI,EAAE,2BAA2B,CAAC,aAAa;YAC/C,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,8BAAsB,CAAC,MAAM,EAAE;SAC/D,CAAC,CAAC,CAAC;IACN,CAAC;IAED,sBAAsB,CACpB,MAAc;QAEd,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,2BAA2B,CAAC,aAAa,CAAE,CAAC;IAC5E,CAAC;IAED,IAAI,kBAAkB;QACpB,OAAO,UAAU,CAAC;IACpB,CAAC;;AApCH,kEAqCC;AApCwB,yCAAa,GAAG,eAAe,CAAC;AAChC,oCAAQ,GAAG,4BAA4B,2BAA2B,CAAC,aAAa,EAAE,CAAC;AAqC/F,QAAA,sBAAsB,GACjC,IAAI,6BAAkB,CACpB,2BAA2B,CAAC,QAAQ,CACrC,CAAC,GAAG,CACH,IAAI,2BAA2B,CAC7B,IAAI,yBAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EACxB,IAAI,yBAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CACzB,CACF,CAAC;AAEJ,IAAA,wCAAoB,EAAC,8BAAsB,CAAC,CAAC"}
|
package/dist/coreSpec.d.ts
CHANGED
|
@@ -8,12 +8,14 @@ export declare const ErrCoreCheckFailed: (causes: GraphQLError[]) => GraphQLErro
|
|
|
8
8
|
export declare const corePurposes: ("SECURITY" | "EXECUTION")[];
|
|
9
9
|
export type CorePurpose = typeof corePurposes[number];
|
|
10
10
|
export declare abstract class FeatureDefinition {
|
|
11
|
+
readonly minimumFederationVersion?: FeatureVersion | undefined;
|
|
11
12
|
readonly url: FeatureUrl;
|
|
12
13
|
private readonly _directiveSpecs;
|
|
13
14
|
private readonly _typeSpecs;
|
|
14
|
-
constructor(url: FeatureUrl | string);
|
|
15
|
+
constructor(url: FeatureUrl | string, minimumFederationVersion?: FeatureVersion | undefined);
|
|
15
16
|
protected registerDirective(spec: DirectiveSpecification): void;
|
|
16
17
|
protected registerType(spec: TypeSpecification): void;
|
|
18
|
+
protected registerSubFeature(subFeature: FeatureDefinition): void;
|
|
17
19
|
directiveSpecs(): readonly DirectiveSpecification[];
|
|
18
20
|
directiveSpec(name: string): DirectiveSpecification | undefined;
|
|
19
21
|
typeSpecs(): readonly TypeSpecification[];
|
|
@@ -36,8 +38,6 @@ export declare abstract class FeatureDefinition {
|
|
|
36
38
|
protected type<T extends NamedType>(schema: Schema, elementName: string): T | undefined;
|
|
37
39
|
protected addRootDirective(schema: Schema): DirectiveDefinition;
|
|
38
40
|
protected addDirective(schema: Schema, name: string): DirectiveDefinition;
|
|
39
|
-
protected addDirectiveSpec(schema: Schema, spec: DirectiveSpecification): GraphQLError[];
|
|
40
|
-
protected addTypeSpec(schema: Schema, spec: TypeSpecification): GraphQLError[];
|
|
41
41
|
protected addScalarType(schema: Schema, name: string): ScalarType;
|
|
42
42
|
protected addEnumType(schema: Schema, name: string): EnumType;
|
|
43
43
|
protected featureInSchema(schema: Schema): CoreFeature | undefined;
|
|
@@ -67,11 +67,11 @@ export declare function extractCoreFeatureImports(url: FeatureUrl, directive: Di
|
|
|
67
67
|
export declare function isCoreSpecDirectiveApplication(directive: Directive<SchemaDefinition, any>): directive is Directive<SchemaDefinition, CoreOrLinkDirectiveArgs>;
|
|
68
68
|
export declare class CoreSpecDefinition extends FeatureDefinition {
|
|
69
69
|
private readonly directiveDefinitionSpec;
|
|
70
|
-
constructor(version: FeatureVersion, identity?: string, name?: string);
|
|
70
|
+
constructor(version: FeatureVersion, minimumFederationVersion?: FeatureVersion, identity?: string, name?: string);
|
|
71
71
|
private createDefinitionArgumentSpecifications;
|
|
72
72
|
addElementsToSchema(_: Schema): GraphQLError[];
|
|
73
73
|
addToSchema(schema: Schema, alias?: string): GraphQLError[];
|
|
74
|
-
addDefinitionsToSchema(schema: Schema, as?: string): GraphQLError[];
|
|
74
|
+
addDefinitionsToSchema(schema: Schema, as?: string, imports?: CoreImport[]): GraphQLError[];
|
|
75
75
|
allElementNames(): string[];
|
|
76
76
|
private supportPurposes;
|
|
77
77
|
private supportImport;
|
|
@@ -90,6 +90,7 @@ export declare class FeatureDefinitions<T extends FeatureDefinition = FeatureDef
|
|
|
90
90
|
find(requested: FeatureVersion): T | undefined;
|
|
91
91
|
versions(): FeatureVersion[];
|
|
92
92
|
latest(): T;
|
|
93
|
+
getMinimumRequiredVersion(fedVersion: FeatureVersion): T;
|
|
93
94
|
}
|
|
94
95
|
export declare class FeatureVersion {
|
|
95
96
|
readonly major: number;
|
package/dist/coreSpec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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,EAA6B,MAAM,eAAe,CAAC;AAOrQ,OAAO,EAAmH,iCAAiC,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEhP,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAC5D,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAE5D,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,eAAO,MAAM,kBAAkB,WAAY,YAAY,EAAE,iBAAuE,CAAC;AAOjI,eAAO,MAAM,YAAY,8BAGxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAStD,8BAAsB,iBAAiB;
|
|
1
|
+
{"version":3,"file":"coreSpec.d.ts","sourceRoot":"","sources":["../src/coreSpec.ts"],"names":[],"mappings":"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"}
|
package/dist/coreSpec.js
CHANGED
|
@@ -30,7 +30,8 @@ function purposesDescription(purpose) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
class FeatureDefinition {
|
|
33
|
-
constructor(url) {
|
|
33
|
+
constructor(url, minimumFederationVersion) {
|
|
34
|
+
this.minimumFederationVersion = minimumFederationVersion;
|
|
34
35
|
this._directiveSpecs = new utils_1.MapWithCachedArrays();
|
|
35
36
|
this._typeSpecs = new utils_1.MapWithCachedArrays();
|
|
36
37
|
this.url = typeof url === 'string' ? FeatureUrl.parse(url) : url;
|
|
@@ -41,6 +42,14 @@ class FeatureDefinition {
|
|
|
41
42
|
registerType(spec) {
|
|
42
43
|
this._typeSpecs.set(spec.name, spec);
|
|
43
44
|
}
|
|
45
|
+
registerSubFeature(subFeature) {
|
|
46
|
+
for (const typeSpec of subFeature.typeSpecs()) {
|
|
47
|
+
this.registerType(typeSpec);
|
|
48
|
+
}
|
|
49
|
+
for (const directiveSpec of subFeature.directiveSpecs()) {
|
|
50
|
+
this.registerDirective(directiveSpec);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
44
53
|
directiveSpecs() {
|
|
45
54
|
return this._directiveSpecs.values();
|
|
46
55
|
}
|
|
@@ -69,13 +78,13 @@ class FeatureDefinition {
|
|
|
69
78
|
}
|
|
70
79
|
addElementsToSchema(schema) {
|
|
71
80
|
const feature = this.featureInSchema(schema);
|
|
72
|
-
(0, utils_1.assert)(feature,
|
|
81
|
+
(0, utils_1.assert)(feature, () => `The ${this.url} specification should have been added to the schema before this is called`);
|
|
73
82
|
let errors = [];
|
|
74
83
|
for (const type of this.typeSpecs()) {
|
|
75
|
-
errors = errors.concat(
|
|
84
|
+
errors = errors.concat(type.checkOrAdd(schema, feature));
|
|
76
85
|
}
|
|
77
86
|
for (const directive of this.directiveSpecs()) {
|
|
78
|
-
errors = errors.concat(
|
|
87
|
+
errors = errors.concat(directive.checkOrAdd(schema, feature));
|
|
79
88
|
}
|
|
80
89
|
return errors;
|
|
81
90
|
}
|
|
@@ -113,12 +122,6 @@ class FeatureDefinition {
|
|
|
113
122
|
addDirective(schema, name) {
|
|
114
123
|
return schema.addDirectiveDefinition(this.directiveNameInSchema(schema, name));
|
|
115
124
|
}
|
|
116
|
-
addDirectiveSpec(schema, spec) {
|
|
117
|
-
return spec.checkOrAdd(schema, this.directiveNameInSchema(schema, spec.name));
|
|
118
|
-
}
|
|
119
|
-
addTypeSpec(schema, spec) {
|
|
120
|
-
return spec.checkOrAdd(schema, this.typeNameInSchema(schema, spec.name));
|
|
121
|
-
}
|
|
122
125
|
addScalarType(schema, name) {
|
|
123
126
|
return schema.addType(new definitions_1.ScalarType(this.typeNameInSchema(schema, name)));
|
|
124
127
|
}
|
|
@@ -128,7 +131,7 @@ class FeatureDefinition {
|
|
|
128
131
|
featureInSchema(schema) {
|
|
129
132
|
const features = schema.coreFeatures;
|
|
130
133
|
if (!features) {
|
|
131
|
-
throw buildError(`Schema is not a core schema (add @
|
|
134
|
+
throw buildError(`Schema is not a core schema (add @link first)`);
|
|
132
135
|
}
|
|
133
136
|
return features.getByIdentity(this.identity);
|
|
134
137
|
}
|
|
@@ -265,8 +268,8 @@ const linkPurposeTypeSpec = (0, directiveAndTypeSpecification_1.createEnumTypeSp
|
|
|
265
268
|
});
|
|
266
269
|
const linkImportTypeSpec = (0, directiveAndTypeSpecification_1.createScalarTypeSpecification)({ name: 'Import' });
|
|
267
270
|
class CoreSpecDefinition extends FeatureDefinition {
|
|
268
|
-
constructor(version, identity = exports.linkIdentity, name = exports.linkDirectiveDefaultName) {
|
|
269
|
-
super(new FeatureUrl(identity, name, version));
|
|
271
|
+
constructor(version, minimumFederationVersion, identity = exports.linkIdentity, name = exports.linkDirectiveDefaultName) {
|
|
272
|
+
super(new FeatureUrl(identity, name, version), minimumFederationVersion);
|
|
270
273
|
this.directiveDefinitionSpec = (0, directiveAndTypeSpecification_1.createDirectiveSpecification)({
|
|
271
274
|
name,
|
|
272
275
|
locations: [graphql_1.DirectiveLocation.SCHEMA],
|
|
@@ -283,26 +286,18 @@ class CoreSpecDefinition extends FeatureDefinition {
|
|
|
283
286
|
if (this.supportPurposes()) {
|
|
284
287
|
args.push({
|
|
285
288
|
name: 'for',
|
|
286
|
-
type: (schema,
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
if (errors.length > 0) {
|
|
290
|
-
return errors;
|
|
291
|
-
}
|
|
292
|
-
return schema.type(purposeName);
|
|
289
|
+
type: (schema, feature) => {
|
|
290
|
+
(0, utils_1.assert)(feature, "Shouldn't be added without being attached to a @link spec");
|
|
291
|
+
return schema.type(feature.typeNameInSchema(linkPurposeTypeSpec.name));
|
|
293
292
|
},
|
|
294
293
|
});
|
|
295
294
|
}
|
|
296
295
|
if (this.supportImport()) {
|
|
297
296
|
args.push({
|
|
298
297
|
name: 'import',
|
|
299
|
-
type: (schema,
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
if (errors.length > 0) {
|
|
303
|
-
return errors;
|
|
304
|
-
}
|
|
305
|
-
return new definitions_1.ListType(schema.type(importName));
|
|
298
|
+
type: (schema, feature) => {
|
|
299
|
+
(0, utils_1.assert)(feature, "Shouldn't be added without being attached to a @link spec");
|
|
300
|
+
return new definitions_1.ListType(schema.type(feature.typeNameInSchema(linkImportTypeSpec.name)));
|
|
306
301
|
}
|
|
307
302
|
});
|
|
308
303
|
}
|
|
@@ -330,7 +325,7 @@ class CoreSpecDefinition extends FeatureDefinition {
|
|
|
330
325
|
}
|
|
331
326
|
return [];
|
|
332
327
|
}
|
|
333
|
-
addDefinitionsToSchema(schema, as) {
|
|
328
|
+
addDefinitionsToSchema(schema, as, imports = []) {
|
|
334
329
|
const existingCore = schema.coreFeatures;
|
|
335
330
|
if (existingCore) {
|
|
336
331
|
if (existingCore.coreItself.url.identity === this.identity) {
|
|
@@ -341,7 +336,12 @@ class CoreSpecDefinition extends FeatureDefinition {
|
|
|
341
336
|
}
|
|
342
337
|
}
|
|
343
338
|
const nameInSchema = as !== null && as !== void 0 ? as : this.url.name;
|
|
344
|
-
|
|
339
|
+
const feature = new definitions_1.CoreFeature(this.url, nameInSchema, new definitions_1.Directive(nameInSchema), imports);
|
|
340
|
+
let errors = [];
|
|
341
|
+
errors = errors.concat(linkPurposeTypeSpec.checkOrAdd(schema, feature));
|
|
342
|
+
errors = errors.concat(linkImportTypeSpec.checkOrAdd(schema, feature));
|
|
343
|
+
errors = errors.concat(this.directiveDefinitionSpec.checkOrAdd(schema, feature));
|
|
344
|
+
return errors;
|
|
345
345
|
}
|
|
346
346
|
allElementNames() {
|
|
347
347
|
const names = [`@${this.url.name}`];
|
|
@@ -424,6 +424,16 @@ class FeatureDefinitions {
|
|
|
424
424
|
(0, utils_1.assert)(this._definitions.length > 0, 'Trying to get latest when no definitions exist');
|
|
425
425
|
return this._definitions[0];
|
|
426
426
|
}
|
|
427
|
+
getMinimumRequiredVersion(fedVersion) {
|
|
428
|
+
var _a;
|
|
429
|
+
const def = this._definitions.find(def => def.minimumFederationVersion ? fedVersion >= def.minimumFederationVersion : true);
|
|
430
|
+
(0, utils_1.assert)(def, `No compatible definition exists for federation version ${fedVersion}`);
|
|
431
|
+
const latestMajor = this.latest().version.major;
|
|
432
|
+
if (def.version.major !== latestMajor) {
|
|
433
|
+
return (_a = (0, utils_1.findLast)(this._definitions, def => def.version.major === latestMajor)) !== null && _a !== void 0 ? _a : this.latest();
|
|
434
|
+
}
|
|
435
|
+
return def;
|
|
436
|
+
}
|
|
427
437
|
}
|
|
428
438
|
exports.FeatureDefinitions = FeatureDefinitions;
|
|
429
439
|
class FeatureVersion {
|
|
@@ -547,10 +557,10 @@ function findCoreSpecVersion(featureUrl) {
|
|
|
547
557
|
}
|
|
548
558
|
exports.findCoreSpecVersion = findCoreSpecVersion;
|
|
549
559
|
exports.CORE_VERSIONS = new FeatureDefinitions(exports.coreIdentity)
|
|
550
|
-
.add(new CoreSpecDefinition(new FeatureVersion(0, 1), exports.coreIdentity, 'core'))
|
|
551
|
-
.add(new CoreSpecDefinition(new FeatureVersion(0, 2), exports.coreIdentity, 'core'));
|
|
560
|
+
.add(new CoreSpecDefinition(new FeatureVersion(0, 1), undefined, exports.coreIdentity, 'core'))
|
|
561
|
+
.add(new CoreSpecDefinition(new FeatureVersion(0, 2), new FeatureVersion(2, 0), exports.coreIdentity, 'core'));
|
|
552
562
|
exports.LINK_VERSIONS = new FeatureDefinitions(exports.linkIdentity)
|
|
553
|
-
.add(new CoreSpecDefinition(new FeatureVersion(1, 0)));
|
|
563
|
+
.add(new CoreSpecDefinition(new FeatureVersion(1, 0), new FeatureVersion(2, 0)));
|
|
554
564
|
(0, knownCoreFeatures_1.registerKnownFeature)(exports.CORE_VERSIONS);
|
|
555
565
|
(0, knownCoreFeatures_1.registerKnownFeature)(exports.LINK_VERSIONS);
|
|
556
566
|
function removeAllCoreFeatures(schema) {
|
package/dist/coreSpec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreSpec.js","sourceRoot":"","sources":["../src/coreSpec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"coreSpec.js","sourceRoot":"","sources":["../src/coreSpec.ts"],"names":[],"mappings":"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"}
|
package/dist/definitions.d.ts
CHANGED
|
@@ -188,9 +188,7 @@ declare abstract class BaseExtensionMember<TExtended extends ExtendableElement>
|
|
|
188
188
|
protected abstract removeInner(): void;
|
|
189
189
|
}
|
|
190
190
|
export declare class SchemaBlueprint {
|
|
191
|
-
onMissingDirectiveDefinition(_schema: Schema,
|
|
192
|
-
[key: string]: any;
|
|
193
|
-
}): DirectiveDefinition | GraphQLError[] | undefined;
|
|
191
|
+
onMissingDirectiveDefinition(_schema: Schema, _directive: Directive): DirectiveDefinition | GraphQLError[] | undefined;
|
|
194
192
|
onDirectiveDefinitionAndSchemaParsed(_: Schema): GraphQLError[];
|
|
195
193
|
ignoreParsedField(_type: NamedType, _fieldName: string): boolean;
|
|
196
194
|
onConstructed(_: Schema): void;
|
|
@@ -305,6 +303,7 @@ export declare class Schema {
|
|
|
305
303
|
addDirectiveDefinition(name: string): DirectiveDefinition;
|
|
306
304
|
addDirectiveDefinition(directive: DirectiveDefinition): DirectiveDefinition;
|
|
307
305
|
invalidate(): void;
|
|
306
|
+
assumeValid(): void;
|
|
308
307
|
validate(): void;
|
|
309
308
|
clone(builtIns?: SchemaBlueprint): Schema;
|
|
310
309
|
private getBuiltInDirective;
|