1234567891011121314151617181920212223242526272829 |
- import { GraphQLError } from '../../error/GraphQLError';
- export function duplicateFragmentNameMessage(fragName) {
- return "There can be only one fragment named \"".concat(fragName, "\".");
- }
- /**
- * Unique fragment names
- *
- * A GraphQL document is only valid if all defined fragments have unique names.
- */
- export function UniqueFragmentNames(context) {
- var knownFragmentNames = Object.create(null);
- return {
- OperationDefinition: function OperationDefinition() {
- return false;
- },
- FragmentDefinition: function FragmentDefinition(node) {
- var fragmentName = node.name.value;
- if (knownFragmentNames[fragmentName]) {
- context.reportError(new GraphQLError(duplicateFragmentNameMessage(fragmentName), [knownFragmentNames[fragmentName], node.name]));
- } else {
- knownFragmentNames[fragmentName] = node.name;
- }
- return false;
- }
- };
- }
|