@theguild/federation-composition
Version:
Open Source Composition library for Apollo Federation
18 lines (17 loc) • 696 B
JavaScript
import { GraphQLError } from 'graphql';
import { validateDirectiveAgainstOriginal } from '../../../helpers.js';
export function InterfaceObjectRules(context) {
return {
DirectiveDefinition(node) {
validateDirectiveAgainstOriginal(node, 'interfaceObject', context);
},
Directive(node) {
if (!context.isAvailableFederationDirective('interfaceObject', node)) {
return;
}
context.reportError(new GraphQLError(`@interfaceObject is not yet supported. See https://github.com/the-guild-org/federation/issues/7`, {
extensions: { code: 'UNSUPPORTED_FEATURE' },
}));
},
};
}