@graphql-codegen/visitor-plugin-common 6.0.0-alpha-20250803135812-ba3d434d95a043ee91b84ec36aaff30459a29599 → 6.0.0-alpha-20250803143223-4ac576268d59b30aa3654ed2cf355ae0f3ad2bc7

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.
@@ -620,12 +620,6 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
620
620
  }
621
621
  return '';
622
622
  }
623
- // FIXME: this Name method causes a lot of type inconsistencies
624
- // because the type of nodes no longer matches the `graphql-js` types
625
- // So, we should update this and remove any relevant `as any as string` or `as unknown as string`
626
- Name(node) {
627
- return node.value;
628
- }
629
623
  ListType(node) {
630
624
  const asString = node.type;
631
625
  return this.wrapWithArray(asString);
@@ -634,7 +628,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
634
628
  return `${this.config.namespacedImportName ? this.config.namespacedImportName + '.' : ''}Scalars['${name}']['output']`;
635
629
  }
636
630
  NamedType(node) {
637
- const nameStr = node.name;
631
+ const nameStr = node.name.value;
638
632
  if (this.config.scalars[nameStr]) {
639
633
  return this._getScalar(nameStr);
640
634
  }
@@ -668,10 +662,10 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
668
662
  return {
669
663
  node: original,
670
664
  printContent: (parentNode, avoidResolverOptionals) => {
671
- const parentName = parentNode.name;
665
+ const parentName = parentNode.name.value;
672
666
  const parentType = this.schema.getType(parentName);
673
667
  const meta = {};
674
- const typeName = node.name;
668
+ const typeName = node.name.value;
675
669
  const fieldsToGenerate = this._federation.findFieldNodesToGenerate({ node: parentNode });
676
670
  const shouldGenerateField = fieldsToGenerate.some(field => field.name.value === typeName) ||
677
671
  this._federation.isResolveReferenceField(node);
@@ -721,7 +715,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
721
715
  };
722
716
  }
723
717
  const directiveMappings = node.directives
724
- ?.map(directive => this._directiveResolverMappings[directive.name])
718
+ ?.map(directive => this._directiveResolverMappings[directive.name.value])
725
719
  .filter(Boolean)
726
720
  .reverse() ?? [];
727
721
  return {
@@ -753,15 +747,15 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
753
747
  };
754
748
  }
755
749
  getFieldContextType(parentName, node) {
756
- if (this._fieldContextTypeMap[`${parentName}.${node.name}`]) {
757
- return this._fieldContextTypeMap[`${parentName}.${node.name}`].type;
750
+ if (this._fieldContextTypeMap[`${parentName}.${node.name.value}`]) {
751
+ return this._fieldContextTypeMap[`${parentName}.${node.name.value}`].type;
758
752
  }
759
753
  return 'ContextType';
760
754
  }
761
755
  getContextType(parentName, node) {
762
756
  let contextType = this.getFieldContextType(parentName, node);
763
757
  for (const directive of node.directives) {
764
- const name = directive.name;
758
+ const name = directive.name.value;
765
759
  const directiveMap = this._directiveContextTypesMap[name];
766
760
  if (directiveMap) {
767
761
  contextType = `${directiveMap.type}<${contextType}>`;
@@ -810,7 +804,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
810
804
  return `Partial<${argsType}>`;
811
805
  }
812
806
  ObjectTypeDefinition(node) {
813
- const typeName = node.name;
807
+ const typeName = node.name.value;
814
808
  const fieldsToGenerate = this._federation.findFieldNodesToGenerate({ node });
815
809
  if (fieldsToGenerate.length === 0) {
816
810
  return null;
@@ -860,7 +854,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
860
854
  .asKind(declarationKind)
861
855
  .withName(name, `<${genericTypes.join(', ')}>`)
862
856
  .withBlock(fieldsContent.join('\n'));
863
- this._collectedResolvers[node.name] = {
857
+ this._collectedResolvers[node.name.value] = {
864
858
  typename: name + '<ContextType>',
865
859
  baseGeneratedTypename: name,
866
860
  };
@@ -876,11 +870,11 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
876
870
  .map(node => node.name.value)
877
871
  .map(f => `'${f}'`)
878
872
  .join(' | ');
879
- this._collectedResolvers[node.name] = {
873
+ this._collectedResolvers[node.name.value] = {
880
874
  typename: name + '<ContextType>',
881
875
  baseGeneratedTypename: name,
882
876
  };
883
- const parentType = this.getParentTypeToUse(node.name);
877
+ const parentType = this.getParentTypeToUse(node.name.value);
884
878
  return new utils_js_1.DeclarationBlock(this._declarationBlockConfig)
885
879
  .export()
886
880
  .asKind(declarationKind)
@@ -888,13 +882,13 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
888
882
  .withBlock((0, utils_js_1.indent)(`${this.config.internalResolversPrefix}resolveType${this.config.optionalResolveType ? '?' : ''}: TypeResolveFn<${possibleTypes}, ParentType, ContextType>${this.getPunctuation(declarationKind)}`)).string;
889
883
  }
890
884
  ScalarTypeDefinition(node) {
891
- const nameAsString = node.name;
885
+ const nameAsString = node.name.value;
892
886
  const baseName = this.getTypeToUse(nameAsString);
893
887
  if (this._federation.skipScalar(nameAsString)) {
894
888
  return null;
895
889
  }
896
890
  this._hasScalars = true;
897
- this._collectedResolvers[node.name] = {
891
+ this._collectedResolvers[node.name.value] = {
898
892
  typename: 'GraphQLScalarType',
899
893
  };
900
894
  return new utils_js_1.DeclarationBlock({
@@ -908,10 +902,10 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
908
902
  .withName(this.convertName(node, {
909
903
  suffix: 'ScalarConfig',
910
904
  }), ` extends GraphQLScalarTypeConfig<${baseName}, any>`)
911
- .withBlock((0, utils_js_1.indent)(`name: '${node.name}'${this.getPunctuation('interface')}`)).string;
905
+ .withBlock((0, utils_js_1.indent)(`name: '${node.name.value}'${this.getPunctuation('interface')}`)).string;
912
906
  }
913
907
  DirectiveDefinition(node, key, parent) {
914
- if (this._federation.skipDirective(node.name)) {
908
+ if (this._federation.skipDirective(node.name.value)) {
915
909
  return null;
916
910
  }
917
911
  const directiveName = this.convertName(node, {
@@ -919,7 +913,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
919
913
  });
920
914
  const sourceNode = parent[key];
921
915
  const hasArguments = sourceNode.arguments && sourceNode.arguments.length > 0;
922
- this._collectedDirectiveResolvers[node.name] = directiveName + '<any, any, ContextType>';
916
+ this._collectedDirectiveResolvers[node.name.value] = directiveName + '<any, any, ContextType>';
923
917
  const directiveArgsTypeName = this.convertName(node, {
924
918
  suffix: 'DirectiveArgs',
925
919
  });
@@ -955,7 +949,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
955
949
  throw new Error(`buildEnumResolversExplicitMappedValues is not implemented!`);
956
950
  }
957
951
  EnumTypeDefinition(node) {
958
- const rawTypeName = node.name;
952
+ const rawTypeName = node.name.value;
959
953
  // If we have enumValues set, and it's point to an external enum - we need to allow internal values resolvers
960
954
  // In case we have enumValues set but as explicit values, no need to to do mapping since it's already
961
955
  // have type validation (the original enum has been modified by base types plugin).
@@ -982,7 +976,7 @@ class BaseResolversVisitor extends base_visitor_js_1.BaseVisitor {
982
976
  suffix: this.config.resolverTypeSuffix,
983
977
  });
984
978
  const declarationKind = 'type';
985
- const typeName = node.name;
979
+ const typeName = node.name.value;
986
980
  const implementingTypes = Object.keys(this._parsedSchemaMeta.types.interface[typeName].implementingTypes);
987
981
  this._collectedResolvers[typeName] = {
988
982
  typename: name + '<ContextType>',
@@ -616,12 +616,6 @@ export class BaseResolversVisitor extends BaseVisitor {
616
616
  }
617
617
  return '';
618
618
  }
619
- // FIXME: this Name method causes a lot of type inconsistencies
620
- // because the type of nodes no longer matches the `graphql-js` types
621
- // So, we should update this and remove any relevant `as any as string` or `as unknown as string`
622
- Name(node) {
623
- return node.value;
624
- }
625
619
  ListType(node) {
626
620
  const asString = node.type;
627
621
  return this.wrapWithArray(asString);
@@ -630,7 +624,7 @@ export class BaseResolversVisitor extends BaseVisitor {
630
624
  return `${this.config.namespacedImportName ? this.config.namespacedImportName + '.' : ''}Scalars['${name}']['output']`;
631
625
  }
632
626
  NamedType(node) {
633
- const nameStr = node.name;
627
+ const nameStr = node.name.value;
634
628
  if (this.config.scalars[nameStr]) {
635
629
  return this._getScalar(nameStr);
636
630
  }
@@ -664,10 +658,10 @@ export class BaseResolversVisitor extends BaseVisitor {
664
658
  return {
665
659
  node: original,
666
660
  printContent: (parentNode, avoidResolverOptionals) => {
667
- const parentName = parentNode.name;
661
+ const parentName = parentNode.name.value;
668
662
  const parentType = this.schema.getType(parentName);
669
663
  const meta = {};
670
- const typeName = node.name;
664
+ const typeName = node.name.value;
671
665
  const fieldsToGenerate = this._federation.findFieldNodesToGenerate({ node: parentNode });
672
666
  const shouldGenerateField = fieldsToGenerate.some(field => field.name.value === typeName) ||
673
667
  this._federation.isResolveReferenceField(node);
@@ -717,7 +711,7 @@ export class BaseResolversVisitor extends BaseVisitor {
717
711
  };
718
712
  }
719
713
  const directiveMappings = node.directives
720
- ?.map(directive => this._directiveResolverMappings[directive.name])
714
+ ?.map(directive => this._directiveResolverMappings[directive.name.value])
721
715
  .filter(Boolean)
722
716
  .reverse() ?? [];
723
717
  return {
@@ -749,15 +743,15 @@ export class BaseResolversVisitor extends BaseVisitor {
749
743
  };
750
744
  }
751
745
  getFieldContextType(parentName, node) {
752
- if (this._fieldContextTypeMap[`${parentName}.${node.name}`]) {
753
- return this._fieldContextTypeMap[`${parentName}.${node.name}`].type;
746
+ if (this._fieldContextTypeMap[`${parentName}.${node.name.value}`]) {
747
+ return this._fieldContextTypeMap[`${parentName}.${node.name.value}`].type;
754
748
  }
755
749
  return 'ContextType';
756
750
  }
757
751
  getContextType(parentName, node) {
758
752
  let contextType = this.getFieldContextType(parentName, node);
759
753
  for (const directive of node.directives) {
760
- const name = directive.name;
754
+ const name = directive.name.value;
761
755
  const directiveMap = this._directiveContextTypesMap[name];
762
756
  if (directiveMap) {
763
757
  contextType = `${directiveMap.type}<${contextType}>`;
@@ -806,7 +800,7 @@ export class BaseResolversVisitor extends BaseVisitor {
806
800
  return `Partial<${argsType}>`;
807
801
  }
808
802
  ObjectTypeDefinition(node) {
809
- const typeName = node.name;
803
+ const typeName = node.name.value;
810
804
  const fieldsToGenerate = this._federation.findFieldNodesToGenerate({ node });
811
805
  if (fieldsToGenerate.length === 0) {
812
806
  return null;
@@ -856,7 +850,7 @@ export class BaseResolversVisitor extends BaseVisitor {
856
850
  .asKind(declarationKind)
857
851
  .withName(name, `<${genericTypes.join(', ')}>`)
858
852
  .withBlock(fieldsContent.join('\n'));
859
- this._collectedResolvers[node.name] = {
853
+ this._collectedResolvers[node.name.value] = {
860
854
  typename: name + '<ContextType>',
861
855
  baseGeneratedTypename: name,
862
856
  };
@@ -872,11 +866,11 @@ export class BaseResolversVisitor extends BaseVisitor {
872
866
  .map(node => node.name.value)
873
867
  .map(f => `'${f}'`)
874
868
  .join(' | ');
875
- this._collectedResolvers[node.name] = {
869
+ this._collectedResolvers[node.name.value] = {
876
870
  typename: name + '<ContextType>',
877
871
  baseGeneratedTypename: name,
878
872
  };
879
- const parentType = this.getParentTypeToUse(node.name);
873
+ const parentType = this.getParentTypeToUse(node.name.value);
880
874
  return new DeclarationBlock(this._declarationBlockConfig)
881
875
  .export()
882
876
  .asKind(declarationKind)
@@ -884,13 +878,13 @@ export class BaseResolversVisitor extends BaseVisitor {
884
878
  .withBlock(indent(`${this.config.internalResolversPrefix}resolveType${this.config.optionalResolveType ? '?' : ''}: TypeResolveFn<${possibleTypes}, ParentType, ContextType>${this.getPunctuation(declarationKind)}`)).string;
885
879
  }
886
880
  ScalarTypeDefinition(node) {
887
- const nameAsString = node.name;
881
+ const nameAsString = node.name.value;
888
882
  const baseName = this.getTypeToUse(nameAsString);
889
883
  if (this._federation.skipScalar(nameAsString)) {
890
884
  return null;
891
885
  }
892
886
  this._hasScalars = true;
893
- this._collectedResolvers[node.name] = {
887
+ this._collectedResolvers[node.name.value] = {
894
888
  typename: 'GraphQLScalarType',
895
889
  };
896
890
  return new DeclarationBlock({
@@ -904,10 +898,10 @@ export class BaseResolversVisitor extends BaseVisitor {
904
898
  .withName(this.convertName(node, {
905
899
  suffix: 'ScalarConfig',
906
900
  }), ` extends GraphQLScalarTypeConfig<${baseName}, any>`)
907
- .withBlock(indent(`name: '${node.name}'${this.getPunctuation('interface')}`)).string;
901
+ .withBlock(indent(`name: '${node.name.value}'${this.getPunctuation('interface')}`)).string;
908
902
  }
909
903
  DirectiveDefinition(node, key, parent) {
910
- if (this._federation.skipDirective(node.name)) {
904
+ if (this._federation.skipDirective(node.name.value)) {
911
905
  return null;
912
906
  }
913
907
  const directiveName = this.convertName(node, {
@@ -915,7 +909,7 @@ export class BaseResolversVisitor extends BaseVisitor {
915
909
  });
916
910
  const sourceNode = parent[key];
917
911
  const hasArguments = sourceNode.arguments && sourceNode.arguments.length > 0;
918
- this._collectedDirectiveResolvers[node.name] = directiveName + '<any, any, ContextType>';
912
+ this._collectedDirectiveResolvers[node.name.value] = directiveName + '<any, any, ContextType>';
919
913
  const directiveArgsTypeName = this.convertName(node, {
920
914
  suffix: 'DirectiveArgs',
921
915
  });
@@ -951,7 +945,7 @@ export class BaseResolversVisitor extends BaseVisitor {
951
945
  throw new Error(`buildEnumResolversExplicitMappedValues is not implemented!`);
952
946
  }
953
947
  EnumTypeDefinition(node) {
954
- const rawTypeName = node.name;
948
+ const rawTypeName = node.name.value;
955
949
  // If we have enumValues set, and it's point to an external enum - we need to allow internal values resolvers
956
950
  // In case we have enumValues set but as explicit values, no need to to do mapping since it's already
957
951
  // have type validation (the original enum has been modified by base types plugin).
@@ -978,7 +972,7 @@ export class BaseResolversVisitor extends BaseVisitor {
978
972
  suffix: this.config.resolverTypeSuffix,
979
973
  });
980
974
  const declarationKind = 'type';
981
- const typeName = node.name;
975
+ const typeName = node.name.value;
982
976
  const implementingTypes = Object.keys(this._parsedSchemaMeta.types.interface[typeName].implementingTypes);
983
977
  this._collectedResolvers[typeName] = {
984
978
  typename: name + '<ContextType>',
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@graphql-codegen/visitor-plugin-common",
3
- "version": "6.0.0-alpha-20250803135812-ba3d434d95a043ee91b84ec36aaff30459a29599",
3
+ "version": "6.0.0-alpha-20250803143223-4ac576268d59b30aa3654ed2cf355ae0f3ad2bc7",
4
4
  "peerDependencies": {
5
5
  "graphql": "^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0"
6
6
  },
7
7
  "dependencies": {
8
8
  "@graphql-tools/optimize": "^2.0.0",
9
- "@graphql-codegen/plugin-helpers": "6.0.0-alpha-20250803135812-ba3d434d95a043ee91b84ec36aaff30459a29599",
9
+ "@graphql-codegen/plugin-helpers": "6.0.0-alpha-20250803143223-4ac576268d59b30aa3654ed2cf355ae0f3ad2bc7",
10
10
  "@graphql-tools/relay-operation-optimizer": "^7.0.0",
11
11
  "@graphql-tools/utils": "^10.0.0",
12
12
  "auto-bind": "~4.0.0",
@@ -1,5 +1,5 @@
1
1
  import { ApolloFederation, type FederationMeta } from '@graphql-codegen/plugin-helpers';
2
- import { ASTNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, FieldDefinitionNode, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLSchema, GraphQLUnionType, InputValueDefinitionNode, InterfaceTypeDefinitionNode, ListTypeNode, NamedTypeNode, NameNode, NonNullTypeNode, ObjectTypeDefinitionNode, ScalarTypeDefinitionNode, UnionTypeDefinitionNode } from 'graphql';
2
+ import { ASTNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, FieldDefinitionNode, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLSchema, GraphQLUnionType, InputValueDefinitionNode, InterfaceTypeDefinitionNode, ListTypeNode, NamedTypeNode, NonNullTypeNode, ObjectTypeDefinitionNode, ScalarTypeDefinitionNode, UnionTypeDefinitionNode } from 'graphql';
3
3
  import { BaseVisitor, BaseVisitorConvertOptions, ParsedConfig, RawConfig } from './base-visitor.cjs';
4
4
  import { ParsedMapper } from './mappers.cjs';
5
5
  import { AvoidOptionalsConfig, ConvertOptions, DeclarationKind, EnumValuesMap, NormalizedAvoidOptionalsConfig, NormalizedScalarsMap, ParsedEnumValuesMap, ResolversNonOptionalTypenameConfig } from './types.cjs';
@@ -751,7 +751,6 @@ export declare class BaseResolversVisitor<TRawConfig extends RawResolversConfig
751
751
  getRootResolver(): RootResolver;
752
752
  protected formatRootResolver(schemaTypeName: string, resolverType: string, declarationKind: DeclarationKind): string;
753
753
  getAllDirectiveResolvers(): string;
754
- Name(node: NameNode): string;
755
754
  ListType(node: ListTypeNode): string;
756
755
  protected _getScalar(name: string): string;
757
756
  NamedType(node: NamedTypeNode): string;
@@ -1,5 +1,5 @@
1
1
  import { ApolloFederation, type FederationMeta } from '@graphql-codegen/plugin-helpers';
2
- import { ASTNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, FieldDefinitionNode, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLSchema, GraphQLUnionType, InputValueDefinitionNode, InterfaceTypeDefinitionNode, ListTypeNode, NamedTypeNode, NameNode, NonNullTypeNode, ObjectTypeDefinitionNode, ScalarTypeDefinitionNode, UnionTypeDefinitionNode } from 'graphql';
2
+ import { ASTNode, DirectiveDefinitionNode, EnumTypeDefinitionNode, FieldDefinitionNode, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLSchema, GraphQLUnionType, InputValueDefinitionNode, InterfaceTypeDefinitionNode, ListTypeNode, NamedTypeNode, NonNullTypeNode, ObjectTypeDefinitionNode, ScalarTypeDefinitionNode, UnionTypeDefinitionNode } from 'graphql';
3
3
  import { BaseVisitor, BaseVisitorConvertOptions, ParsedConfig, RawConfig } from './base-visitor.js';
4
4
  import { ParsedMapper } from './mappers.js';
5
5
  import { AvoidOptionalsConfig, ConvertOptions, DeclarationKind, EnumValuesMap, NormalizedAvoidOptionalsConfig, NormalizedScalarsMap, ParsedEnumValuesMap, ResolversNonOptionalTypenameConfig } from './types.js';
@@ -751,7 +751,6 @@ export declare class BaseResolversVisitor<TRawConfig extends RawResolversConfig
751
751
  getRootResolver(): RootResolver;
752
752
  protected formatRootResolver(schemaTypeName: string, resolverType: string, declarationKind: DeclarationKind): string;
753
753
  getAllDirectiveResolvers(): string;
754
- Name(node: NameNode): string;
755
754
  ListType(node: ListTypeNode): string;
756
755
  protected _getScalar(name: string): string;
757
756
  NamedType(node: NamedTypeNode): string;