@eddeee888/gcg-typescript-resolver-files 0.0.6 → 0.1.0

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 (96) hide show
  1. package/README.md +70 -14
  2. package/package.json +28 -4
  3. package/src/{run → generateResolverFiles}/addExternalResolverImport.d.ts +2 -2
  4. package/src/{run → generateResolverFiles}/addExternalResolverImport.js +0 -0
  5. package/src/generateResolverFiles/addExternalResolverImport.js.map +1 -0
  6. package/src/generateResolverFiles/addResolverMainFile.d.ts +2 -0
  7. package/src/{run/addResolversMainFile.js → generateResolverFiles/addResolverMainFile.js} +5 -5
  8. package/src/generateResolverFiles/addResolverMainFile.js.map +1 -0
  9. package/src/generateResolverFiles/fixExistingResolvers.d.ts +2 -0
  10. package/src/{run → generateResolverFiles}/fixExistingResolvers.js +2 -5
  11. package/src/generateResolverFiles/fixExistingResolvers.js.map +1 -0
  12. package/src/generateResolverFiles/generateResolverFiles.d.ts +2 -0
  13. package/src/{run/run.js → generateResolverFiles/generateResolverFiles.js} +10 -15
  14. package/src/generateResolverFiles/generateResolverFiles.js.map +1 -0
  15. package/src/{run → generateResolverFiles}/handleGraphQLObjectType.d.ts +1 -1
  16. package/src/{run → generateResolverFiles}/handleGraphQLObjectType.js +0 -0
  17. package/src/generateResolverFiles/handleGraphQLObjectType.js.map +1 -0
  18. package/src/{run → generateResolverFiles}/handleGraphQLRootObjectTypeField.d.ts +1 -1
  19. package/src/{run → generateResolverFiles}/handleGraphQLRootObjectTypeField.js +1 -1
  20. package/src/generateResolverFiles/handleGraphQLRootObjectTypeField.js.map +1 -0
  21. package/src/{run → generateResolverFiles}/handleGraphQLScalarType.d.ts +1 -1
  22. package/src/{run → generateResolverFiles}/handleGraphQLScalarType.js +0 -0
  23. package/src/generateResolverFiles/handleGraphQLScalarType.js.map +1 -0
  24. package/src/{run → generateResolverFiles}/handleGraphQLUninionType.d.ts +1 -1
  25. package/src/{run → generateResolverFiles}/handleGraphQLUninionType.js +0 -0
  26. package/src/generateResolverFiles/handleGraphQLUninionType.js.map +1 -0
  27. package/src/generateResolverFiles/index.d.ts +2 -0
  28. package/src/generateResolverFiles/index.js +8 -0
  29. package/src/generateResolverFiles/index.js.map +1 -0
  30. package/src/{types.d.ts → generateResolverFiles/types.d.ts} +6 -19
  31. package/src/{types.js → generateResolverFiles/types.js} +0 -0
  32. package/src/generateResolverFiles/types.js.map +1 -0
  33. package/src/{run → generateResolverFiles}/visitNamedType.d.ts +3 -2
  34. package/src/{run → generateResolverFiles}/visitNamedType.js +7 -15
  35. package/src/generateResolverFiles/visitNamedType.js.map +1 -0
  36. package/src/getPluginsConfig/getPluginsConfig.d.ts +13 -0
  37. package/src/getPluginsConfig/getPluginsConfig.js +52 -0
  38. package/src/getPluginsConfig/getPluginsConfig.js.map +1 -0
  39. package/src/getPluginsConfig/index.d.ts +1 -0
  40. package/src/getPluginsConfig/index.js +5 -0
  41. package/src/getPluginsConfig/index.js.map +1 -0
  42. package/src/parseSources/index.d.ts +1 -0
  43. package/src/parseSources/index.js +5 -0
  44. package/src/parseSources/index.js.map +1 -0
  45. package/src/parseSources/parseSources.d.ts +10 -0
  46. package/src/parseSources/parseSources.js +23 -0
  47. package/src/parseSources/parseSources.js.map +1 -0
  48. package/src/parseTypeMappers/collectTypeMappersFromSourceFile.d.ts +7 -0
  49. package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js +72 -0
  50. package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js.map +1 -0
  51. package/src/parseTypeMappers/index.d.ts +1 -0
  52. package/src/parseTypeMappers/index.js +5 -0
  53. package/src/parseTypeMappers/index.js.map +1 -0
  54. package/src/parseTypeMappers/parseTypeMappers.d.ts +14 -0
  55. package/src/parseTypeMappers/parseTypeMappers.js +22 -0
  56. package/src/parseTypeMappers/parseTypeMappers.js.map +1 -0
  57. package/src/preset.d.ts +4 -12
  58. package/src/preset.js +35 -35
  59. package/src/preset.js.map +1 -1
  60. package/src/utils/index.d.ts +6 -0
  61. package/src/utils/index.js +24 -0
  62. package/src/utils/index.js.map +1 -0
  63. package/src/utils/isNativeNamedType.d.ts +2 -0
  64. package/src/utils/isNativeNamedType.js +18 -0
  65. package/src/utils/isNativeNamedType.js.map +1 -0
  66. package/src/utils/isRootObjectType.d.ts +2 -0
  67. package/src/utils/isRootObjectType.js +8 -0
  68. package/src/utils/isRootObjectType.js.map +1 -0
  69. package/src/utils/parseLocationForWhitelistedModule.d.ts +9 -0
  70. package/src/utils/parseLocationForWhitelistedModule.js +24 -0
  71. package/src/utils/parseLocationForWhitelistedModule.js.map +1 -0
  72. package/src/utils/printImportLine.d.ts +10 -0
  73. package/src/utils/printImportLine.js +29 -0
  74. package/src/utils/printImportLine.js.map +1 -0
  75. package/src/run/addExternalResolverImport.js.map +0 -1
  76. package/src/run/addResolversMainFile.d.ts +0 -2
  77. package/src/run/addResolversMainFile.js.map +0 -1
  78. package/src/run/checkIfModuleIsWhitelisted.d.ts +0 -7
  79. package/src/run/checkIfModuleIsWhitelisted.js +0 -16
  80. package/src/run/checkIfModuleIsWhitelisted.js.map +0 -1
  81. package/src/run/fixExistingResolvers.d.ts +0 -2
  82. package/src/run/fixExistingResolvers.js.map +0 -1
  83. package/src/run/handleGraphQLObjectType.js.map +0 -1
  84. package/src/run/handleGraphQLRootObjectTypeField.js.map +0 -1
  85. package/src/run/handleGraphQLScalarType.js.map +0 -1
  86. package/src/run/handleGraphQLUninionType.js.map +0 -1
  87. package/src/run/index.d.ts +0 -1
  88. package/src/run/index.js +0 -6
  89. package/src/run/index.js.map +0 -1
  90. package/src/run/run.d.ts +0 -2
  91. package/src/run/run.js.map +0 -1
  92. package/src/run/visitNamedType.js.map +0 -1
  93. package/src/types.js.map +0 -1
  94. package/src/utils.d.ts +0 -7
  95. package/src/utils.js +0 -64
  96. package/src/utils.js.map +0 -1
package/README.md CHANGED
@@ -2,10 +2,11 @@
2
2
 
3
3
  This [GraphQL Code Generator](https://www.the-guild.dev/graphql/codegen) plugin creates resolvers given GraphQL schema.
4
4
 
5
- This relies on types generated from [@graphql-codegen/typescript-resolvers](https://the-guild.dev/graphql/codegen/plugins/typescript/typescript-resolvers) plugin.
5
+ This relies on types generated from [typescript](https://the-guild.dev/graphql/codegen/plugins/typescript/typescript) and [@graphql-codegen/typescript-resolvers](https://the-guild.dev/graphql/codegen/plugins/typescript/typescript-resolvers) plugins.
6
6
 
7
7
  ```bash
8
8
  yarn add -D @eddeee888/gcg-typescript-resolver-files
9
+ yarn add graphql-scalars
9
10
  ```
10
11
 
11
12
  ## Features
@@ -14,27 +15,82 @@ yarn add -D @eddeee888/gcg-typescript-resolver-files
14
15
  - Does _NOT_ overwrite existing resolver logic
15
16
  - Detects missing / wrong resolver exports and adds them to resolver files
16
17
  - Automatically sets up GraphQL Scalars with types and config from [graphql-scalars](https://github.com/Urigo/graphql-scalars) with ability to opt-out
18
+ - Automatically extracts object type mapper interfaces and types (marked with `Mapper` suffix) from accompanying `.mappers.ts` files in each module. For example, if the schema file is `/path/to/schema.graphql`, the mapper file is `/path/to/schema.mappers.ts`.
17
19
 
18
20
  ## Example
19
21
 
22
+ ### Setup
23
+
24
+ ```graphql
25
+ # src/graphql/modules/base/schema.graphqls
26
+ type Query
27
+ ```
28
+
29
+ ```graphql
30
+ # src/graphql/modules/user/schema.graphqls
31
+ extend type Query {
32
+ user(id: ID!): User
33
+ }
34
+
35
+ type User {
36
+ id: ID!
37
+ fullName: String!
38
+ }
39
+
40
+ type Address {
41
+ id: ID!
42
+ address: String!
43
+ }
44
+ ```
45
+
46
+ ````ts
47
+ // src/graphql/modules/user/schema.mappers.graphqls
48
+
49
+ // Exporting the following Mapper interfaces and types is the equivalent of this codegen config:
50
+ // ```yml
51
+ // mappers:
52
+ // Address: './user/schema.mappers#AddressMapper'
53
+ // User: './user/schema.mappers#UserMapper'
54
+ // ```
55
+
56
+ export { Address as AddressMapper } from 'address-package';
57
+
58
+ export interface UserMapper {
59
+ id: string;
60
+ firstName: string;
61
+ lastName: string;
62
+ }
63
+ ````
64
+
20
65
  ```yml
66
+ # codegen.yml
21
67
  schema: '**/*.graphqls'
22
68
  generates:
23
- src/graphql/resolvers:
69
+ src/graphql/modules:
24
70
  preset: '@eddeee888/gcg-typescript-resolver-files'
25
- presetConfig:
26
- resolverTypesPath: ./types.generated.ts
27
71
  ```
28
72
 
73
+ ### Result
74
+
75
+ Running codegen will generate the following files:
76
+
77
+ - `src/graphql/modules/user/resolvers/Query/user.ts`
78
+ - `src/graphql/modules/user/resolvers/User.ts`
79
+ - `src/graphql/modules/user/resolvers/Address.ts`
80
+ - `src/graphql/modules/resolvers.generated.ts`
81
+ - `src/graphql/modules/types.generated.ts`
82
+
29
83
  ## Config
30
84
 
31
- | Name | Type | Description |
32
- | -------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
33
- | `resolverTypesPath` | `string` | (Required) Relative path to type file generated by `typescript-resolvers` plugin. |
34
- | `mode` | `merged` or `modules` | (Default: `modules`) How files are collocated. `modules` detects containing dir of a schema file as "modules", then split resolvers into those modules. `merged` treats `baseOutputDir` as the one and only module and generates resolvers. |
35
- | `relativeTargetDir` | `string` | Relative path to target dir. For `config.mode=merged`, files will be generated into `<baseOutputDir>/<relativeTargetDir>`. For `config.mode=modules`, files will be generated into `<baseOutputDir>/<moduleName>/<relativeTargetDir>` |
36
- | `mainFile` | `string` | File that puts all generated resolvers together. Relative from `baseOutputDir` |
37
- | `whitelistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Whitelists modules to generate files and entries in main file. By default all modules are whitelisted. Useful for gradual migrations. |
38
- | `blacklistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Blacklists modules to avoid generate files and entries in main file. Useful for gradual migrations. |
39
- | `externalResolvers` | `Record<string, string>` | Map of relative or absolute path (prefixed with `~`) to external or existing resolvers. e.g. `DateTime: ~graphql-scalars#DateTimeResolver`, `Query.me: '~@org/meResolver#default as meResolver'`, `User: 'otherResolvers#User as UserResolver'`. |
40
- | `typesPluginsConfig` | `(@graphql-codegen/typescript).TypeScriptPluginConfig & (@graphql-codegen/typescript-resolvers).TypeScriptResolversPluginConfig` | Takes [typescript config](https://www.the-guild.dev/graphql/codegen/plugins/typescript/typescript) and [typescript-resolvers config](https://www.the-guild.dev/graphql/codegen/plugins/typescript/typescript-resolvers) to override the defaults |
85
+ | Name | Type | Description |
86
+ | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
87
+ | `mode` | `merged` or `modules` | (Default: `modules`) How files are collocated. `modules` detects containing dir of a schema file as "modules", then split resolvers into those modules. `merged` treats `baseOutputDir` as the one and only module and generates resolvers. |
88
+ | `resolverTypesPath` | `string` | (Default: `./types.generated.ts`) Relative path to type file generated by `typescript-resolvers` plugin. |
89
+ | `resolverRelativeTargetDir` | `string` | (Default: `resolvers`) Relative path to target dir. For `config.mode=merged`, files will be generated into `<baseOutputDir>/<resolverRelativeTargetDir>`. For `config.mode=modules`, files will be generated into `<baseOutputDir>/<moduleName>/<resolverRelativeTargetDir>` |
90
+ | `resolverMainFile` | `string` | (Default: `resolvers.generated.ts`) File that puts all generated resolvers together. Relative from `baseOutputDir` |
91
+ | `whitelistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Whitelists modules to generate files and entries in main file. By default all modules are whitelisted. Useful for gradual migrations. |
92
+ | `blacklistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Blacklists modules to avoid generate files and entries in main file. Useful for gradual migrations. |
93
+ | `externalResolvers` | `Record<string, string>` | Map of relative or absolute path (prefixed with `~`) to external or existing resolvers. e.g. `DateTime: ~graphql-scalars#DateTimeResolver`, `Query.me: '~@org/meResolver#default as meResolver'`, `User: 'otherResolvers#User as UserResolver'`. |
94
+ | `typesPluginsConfig` | `(@graphql-codegen/typescript).TypeScriptPluginConfig & (@graphql-codegen/typescript-resolvers).TypeScriptResolversPluginConfig` | Takes [typescript config](https://www.the-guild.dev/graphql/codegen/plugins/typescript/typescript) and [typescript-resolvers config](https://www.the-guild.dev/graphql/codegen/plugins/typescript/typescript-resolvers) to override the defaults |
95
+ | `mappersFileExtension` | `string` | (Default: `.mappers.ts`) The files with this extension provides mappers interfaces and types for the schema files in the same dir. |
96
+ | `mappersSuffix` | `string` | (Default: `Mapper`) Exported interfaces and types with this suffix from `mappersFile` in each module are put into the mappers object of [@graphql-codegen/typescript-resolvers](https://the-guild.dev/graphql/codegen/plugins/typescript/typescript-resolvers) . |
package/package.json CHANGED
@@ -1,13 +1,37 @@
1
1
  {
2
2
  "name": "@eddeee888/gcg-typescript-resolver-files",
3
- "version": "0.0.6",
3
+ "version": "0.1.0",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "https://github.com/eddeee888/graphql-code-generator-plugins.git",
7
+ "directory": "packages/typescript-resolver-files"
8
+ },
9
+ "homepage": "https://github.com/eddeee888/graphql-code-generator-plugins/blob/master/packages/typescript-resolver-files/README.md",
10
+ "keywords": [
11
+ "plugins",
12
+ "graphql",
13
+ "code",
14
+ "generator",
15
+ "resolvers",
16
+ "types",
17
+ "interfaces",
18
+ "codegen",
19
+ "node",
20
+ "typescript",
21
+ "ts",
22
+ "typings"
23
+ ],
24
+ "author": "Eddy Nguyen <ch@eddeee888.me>",
25
+ "license": "MIT",
26
+ "peerDependencies": {
27
+ "graphql": "^15.0.0 || ^16.0.0",
28
+ "graphql-scalars": "^1.20.1"
29
+ },
4
30
  "dependencies": {
5
31
  "@graphql-codegen/add": "^3.2.1",
32
+ "@graphql-codegen/plugin-helpers": "^2.7.1",
6
33
  "@graphql-codegen/typescript": "^2.8.1",
7
34
  "@graphql-codegen/typescript-resolvers": "^2.7.5",
8
- "@graphql-codegen/plugin-helpers": "^2.7.1",
9
- "graphql": "^16.6.0",
10
- "graphql-scalars": "^1.20.1",
11
35
  "ts-morph": "^16.0.0"
12
36
  },
13
37
  "publishConfig": {
@@ -1,7 +1,7 @@
1
- import type { RunContext } from '../types';
1
+ import type { GenerateResolverFilesContext } from './types';
2
2
  interface AddExternalResolverImportParams {
3
3
  normalizedResolverName: string;
4
4
  configImportSyntax: string;
5
5
  }
6
- export declare const addExternalResolverImport: (params: AddExternalResolverImportParams, { result }: RunContext) => void;
6
+ export declare const addExternalResolverImport: (params: AddExternalResolverImportParams, { result }: GenerateResolverFilesContext) => void;
7
7
  export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addExternalResolverImport.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/addExternalResolverImport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { GenerateResolverFilesContext } from './types';
2
+ export declare const addResolverMainFile: ({ config: { baseOutputDir, resolverTypesPath, resolverMainFile }, result, }: GenerateResolverFilesContext) => void;
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addResolversMainFile = void 0;
3
+ exports.addResolverMainFile = void 0;
4
4
  const path = require("path");
5
5
  const utils_1 = require("../utils");
6
- const addResolversMainFile = ({ config: { baseOutputDir, resolverTypesPath, mainFile }, result, }) => {
7
- const filename = path.join(baseOutputDir, mainFile.split('/').join(path.sep));
6
+ const addResolverMainFile = ({ config: { baseOutputDir, resolverTypesPath, resolverMainFile }, result, }) => {
7
+ const filename = path.join(baseOutputDir, resolverMainFile.split('/').join(path.sep));
8
8
  const outputDir = path.dirname(filename);
9
9
  const relativePathToResolverTypes = (0, utils_1.relativeModulePath)(outputDir, resolverTypesPath);
10
10
  const resolversDetails = Object.entries(result.files).reduce((res, [filepath, file]) => {
@@ -121,6 +121,6 @@ const addResolversMainFile = ({ config: { baseOutputDir, resolverTypesPath, main
121
121
  mainImportIdentifier: resolversIdentifier,
122
122
  };
123
123
  };
124
- exports.addResolversMainFile = addResolversMainFile;
124
+ exports.addResolverMainFile = addResolverMainFile;
125
125
  const printObjectMapping = ({ propertyName, identifierName, }) => `${propertyName}: ${identifierName}`;
126
- //# sourceMappingURL=addResolversMainFile.js.map
126
+ //# sourceMappingURL=addResolverMainFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addResolverMainFile.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/addResolverMainFile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { GenerateResolverFilesContext } from './types';
2
+ export declare const fixExistingResolvers: ({ result, }: GenerateResolverFilesContext) => void;
@@ -4,7 +4,7 @@ exports.fixExistingResolvers = void 0;
4
4
  const fs_1 = require("fs");
5
5
  const ts_morph_1 = require("ts-morph");
6
6
  const path = require("path");
7
- const fixExistingResolvers = ({ result }) => {
7
+ const fixExistingResolvers = ({ result, }) => {
8
8
  const existingResolverFiles = Object.entries(result.files).reduce((res, [filePath, file]) => {
9
9
  if ((0, fs_1.existsSync)(filePath) && file.__filetype === 'resolver') {
10
10
  res[filePath] = file;
@@ -37,10 +37,7 @@ const fixExistingResolvers = ({ result }) => {
37
37
  }
38
38
  }
39
39
  });
40
- if (!hasExpectedIdentifier) {
41
- return false;
42
- }
43
- return true;
40
+ return hasExpectedIdentifier;
44
41
  });
45
42
  if (!variableStatementWithExpectedIdentifier) {
46
43
  // Did not find variable statement with expected identifier, add it to the end with a warning
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixExistingResolvers.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/fixExistingResolvers.ts"],"names":[],"mappings":";;;AAAA,2BAAgC;AAChC,uCAAmC;AACnC,6BAA6B;AAGtB,MAAM,oBAAoB,GAAG,CAAC,EACnC,MAAM,GACuB,EAAQ,EAAE;IACvC,MAAM,qBAAqB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAE/D,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE;QAC1B,IAAI,IAAA,eAAU,EAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE;YAC1D,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;SACtB;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,OAAO,GAAG,IAAI,kBAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAC7C,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACjC,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAC1C,OAAO,CAAC,GAAG,EAAE,EACb,UAAU,CAAC,WAAW,EAAE,CACzB,CAAC;QACF,MAAM,IAAI,GAAG,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CACb,iCAAiC,sBAAsB,EAAE,CAC1D,CAAC;SACH;QAED,6BAA6B;QAC7B,MAAM;QAEN,4BAA4B;QAC5B,IAAI,+CAA+C,GAAG,KAAK,CAAC;QAC5D,MAAM,uCAAuC,GAC3C,UAAU,CAAC,oBAAoB,CAAC,CAAC,SAAS,EAAE,EAAE;YAC5C,IAAI,qBAAqB,GAAG,KAAK,CAAC;YAClC,SAAS;iBACN,kBAAkB,EAAE;iBACpB,eAAe,EAAE;iBACjB,OAAO,CAAC,CAAC,eAAe,EAAE,EAAE;gBAC3B,IAAI,eAAe,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,oBAAoB,EAAE;oBAC3D,qBAAqB,GAAG,IAAI,CAAC;oBAC7B,IAAI,SAAS,CAAC,UAAU,EAAE,EAAE;wBAC1B,+CAA+C,GAAG,IAAI,CAAC;qBACxD;iBACF;YACH,CAAC,CAAC,CAAC;YACL,OAAO,qBAAqB,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,uCAAuC,EAAE;YAC5C,6FAA6F;YAC7F,UAAU,CAAC,aAAa,CACtB,0IAA0I,CAC3I,CAAC;YACF,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;SAC/D;aAAM,IACL,uCAAuC;YACvC,CAAC,+CAA+C,EAChD;YACA,qCAAqC;YACrC,kCAAkC;YAClC,MAAM,4BAA4B,GAAG,OAAO,CAC1C,UAAU,CAAC,uBAAuB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CACpE,CAAC;YACF,IAAI,CAAC,4BAA4B,EAAE;gBACjC,uCAAuC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;aAC7D;YACD,iDAAiD;SAClD;QAED,sCAAsC;QACtC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,mCAC/B,IAAI,KACP,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,GAC9B,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA5EW,QAAA,oBAAoB,wBA4E/B"}
@@ -0,0 +1,2 @@
1
+ import type { GenerateResolverFilesContext } from './types';
2
+ export declare const generateResolverFiles: (ctx: GenerateResolverFilesContext) => void;
@@ -1,24 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.run = void 0;
3
+ exports.generateResolverFiles = void 0;
4
4
  const graphql_1 = require("graphql");
5
5
  const utils_1 = require("../utils");
6
- const addResolversMainFile_1 = require("./addResolversMainFile");
6
+ const addResolverMainFile_1 = require("./addResolverMainFile");
7
7
  const fixExistingResolvers_1 = require("./fixExistingResolvers");
8
8
  const handleGraphQLRootObjectTypeField_1 = require("./handleGraphQLRootObjectTypeField");
9
9
  const handleGraphQLObjectType_1 = require("./handleGraphQLObjectType");
10
10
  const handleGraphQLUninionType_1 = require("./handleGraphQLUninionType");
11
11
  const handleGraphQLScalarType_1 = require("./handleGraphQLScalarType");
12
12
  const visitNamedType_1 = require("./visitNamedType");
13
- const run = (ctx) => {
13
+ const generateResolverFiles = (ctx) => {
14
14
  Object.entries(ctx.config.schema.getTypeMap()).forEach(([schemaType, namedType]) => {
15
- const isPredefinedScalar = (0, graphql_1.isSpecifiedScalarType)(namedType);
16
- const isIntrospection = (0, graphql_1.isIntrospectionType)(namedType);
17
- // Ignore certain types:
18
- // 1. introspection types i.e. with `__` prefixes
19
- // 2. base scalars e.g. Boolean, Int, etc.
20
- // 3. Other natives (mostly base scalars) which was not defined in the schema i.e. no `astNode`
21
- if (isPredefinedScalar || isIntrospection || !namedType.astNode) {
15
+ var _a;
16
+ if ((0, utils_1.isNativeNamedType)(namedType)) {
22
17
  return;
23
18
  }
24
19
  //
@@ -30,7 +25,7 @@ const run = (ctx) => {
30
25
  UnionType: handleGraphQLUninionType_1.handleGraphQLUninionType,
31
26
  ScalarType: handleGraphQLScalarType_1.handleGraphQLScalarType,
32
27
  };
33
- if ((0, graphql_1.isObjectType)(namedType) && (0, utils_1.isRootObjectType)(schemaType)) {
28
+ if ((0, utils_1.isRootObjectType)(schemaType) && (0, graphql_1.isObjectType)(namedType)) {
34
29
  Object.entries(namedType.getFields()).forEach(([fieldName, fieldNode]) => {
35
30
  var _a;
36
31
  return (0, visitNamedType_1.visitNamedType)({
@@ -47,14 +42,14 @@ const run = (ctx) => {
47
42
  namedType,
48
43
  resolverName: namedType.name,
49
44
  belongsToRootObject: null,
50
- location: namedType.astNode.loc,
45
+ location: (_a = namedType.astNode) === null || _a === void 0 ? void 0 : _a.loc,
51
46
  visitor,
52
47
  }, ctx);
53
48
  });
54
49
  // Check to see which resolver file exists already
55
50
  (0, fixExistingResolvers_1.fixExistingResolvers)(ctx);
56
51
  // Put all resolvers into a barrel file (or main file)
57
- (0, addResolversMainFile_1.addResolversMainFile)(ctx);
52
+ (0, addResolverMainFile_1.addResolverMainFile)(ctx);
58
53
  };
59
- exports.run = run;
60
- //# sourceMappingURL=run.js.map
54
+ exports.generateResolverFiles = generateResolverFiles;
55
+ //# sourceMappingURL=generateResolverFiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateResolverFiles.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/generateResolverFiles.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AACvC,oCAA+D;AAC/D,+DAA4D;AAC5D,iEAA8D;AAC9D,yFAAsF;AACtF,uEAAoE;AACpE,yEAAsE;AACtE,uEAAoE;AACpE,qDAAwE;AAGjE,MAAM,qBAAqB,GAAG,CACnC,GAAiC,EAC3B,EAAE;IACR,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CACpD,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE;;QAC1B,IAAI,IAAA,yBAAiB,EAAC,SAAS,CAAC,EAAE;YAChC,OAAO;SACR;QAED,EAAE;QACF,oBAAoB;QACpB,EAAE;QACF,MAAM,OAAO,GAAoC;YAC/C,mBAAmB,EAAE,mEAAgC;YACrD,UAAU,EAAE,iDAAuB;YACnC,SAAS,EAAE,mDAAwB;YACnC,UAAU,EAAE,iDAAuB;SACpC,CAAC;QAEF,IAAI,IAAA,wBAAgB,EAAC,UAAU,CAAC,IAAI,IAAA,sBAAY,EAAC,SAAS,CAAC,EAAE;YAC3D,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAC3C,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;;gBACzB,OAAA,IAAA,+BAAc,EACZ;oBACE,SAAS;oBACT,YAAY,EAAE,SAAS;oBACvB,mBAAmB,EAAE,UAAU;oBAC/B,QAAQ,EAAE,MAAA,SAAS,CAAC,OAAO,0CAAE,GAAG;oBAChC,OAAO;iBACR,EACD,GAAG,CACJ,CAAA;aAAA,CACJ,CAAC;YACF,OAAO;SACR;QAED,IAAA,+BAAc,EACZ;YACE,SAAS;YACT,YAAY,EAAE,SAAS,CAAC,IAAI;YAC5B,mBAAmB,EAAE,IAAI;YACzB,QAAQ,EAAE,MAAA,SAAS,CAAC,OAAO,0CAAE,GAAG;YAChC,OAAO;SACR,EACD,GAAG,CACJ,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,kDAAkD;IAClD,IAAA,2CAAoB,EAAC,GAAG,CAAC,CAAC;IAE1B,sDAAsD;IACtD,IAAA,yCAAmB,EAAC,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC;AAtDW,QAAA,qBAAqB,yBAsDhC"}
@@ -1,2 +1,2 @@
1
- import type { GraphQLTypeHandler } from '../types';
1
+ import type { GraphQLTypeHandler } from './types';
2
2
  export declare const handleGraphQLObjectType: GraphQLTypeHandler;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGraphQLObjectType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/handleGraphQLObjectType.ts"],"names":[],"mappings":";;;AACA,oCAA2C;AAEpC,MAAM,uBAAuB,GAAuB,CACzD,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,EAC1E,EAAE,MAAM,EAAE,EACV,EAAE;IACF,MAAM,yBAAyB,GAAG,gBAAgB,YAAY,KAAK,iBAAiB,CAAC,UAAU,qBAAqB,YAAY,4BAA4B,CAAC;IAE7J,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;MACP,IAAA,uBAAe,EAAC;YAChB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,YAAY,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC;SAClD,CAAC;MACA,yBAAyB,EAAE;QAC7B,oBAAoB,EAAE,YAAY;QAClC,IAAI,EAAE;YACJ,mBAAmB,EAAE,IAAI;YACzB,sBAAsB;YACtB,yBAAyB;SAC1B;KACF,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,uBAAuB,2BAsBlC"}
@@ -1,2 +1,2 @@
1
- import type { GraphQLTypeHandler } from '../types';
1
+ import type { GraphQLTypeHandler } from './types';
2
2
  export declare const handleGraphQLRootObjectTypeField: GraphQLTypeHandler;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleGraphQLRootObjectTypeField = void 0;
4
4
  const utils_1 = require("../utils");
5
5
  const handleGraphQLRootObjectTypeField = ({ fieldFilePath, resolverName, belongsToRootObject, normalizedResolverName, resolversTypeMeta, }, { result }) => {
6
- const resolverVariableStatement = `export const ${resolverName}: ${resolversTypeMeta.typeString} = async (_parent, _arg, _ctx) => { /* Implement ${normalizedResolverName} resolver logic here */ };`;
6
+ const resolverVariableStatement = `export const ${resolverName}: NonNullable<${resolversTypeMeta.typeString}> = async (_parent, _arg, _ctx) => { /* Implement ${normalizedResolverName} resolver logic here */ };`;
7
7
  result.files[fieldFilePath] = {
8
8
  __filetype: 'resolver',
9
9
  content: `
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGraphQLRootObjectTypeField.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/handleGraphQLRootObjectTypeField.ts"],"names":[],"mappings":";;;AAAA,oCAA2C;AAGpC,MAAM,gCAAgC,GAAuB,CAClE,EACE,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,GAClB,EACD,EAAE,MAAM,EAAE,EACV,EAAE;IACF,MAAM,yBAAyB,GAAG,gBAAgB,YAAY,iBAAiB,iBAAiB,CAAC,UAAU,qDAAqD,sBAAsB,4BAA4B,CAAC;IAEnN,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;UACH,IAAA,uBAAe,EAAC;YAChB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,YAAY,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC;SAClD,CAAC;UACA,yBAAyB,EAAE;QACjC,oBAAoB,EAAE,YAAY;QAClC,IAAI,EAAE;YACJ,mBAAmB;YACnB,yBAAyB;YACzB,sBAAsB;SACvB;KACF,CAAC;AACJ,CAAC,CAAC;AA5BW,QAAA,gCAAgC,oCA4B3C"}
@@ -1,2 +1,2 @@
1
- import type { GraphQLTypeHandler } from '../types';
1
+ import type { GraphQLTypeHandler } from './types';
2
2
  export declare const handleGraphQLScalarType: GraphQLTypeHandler;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGraphQLScalarType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/handleGraphQLScalarType.ts"],"names":[],"mappings":";;;AAAA,oCAA2C;AAG3C,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAEvC,MAAM,uBAAuB,GAAuB,CACzD,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,EACvD,EAAE,MAAM,EAAE,EACV,EAAE;IACF,MAAM,yBAAyB,GAAG,gBAAgB,YAAY,KAAK,iBAAiB,qBAAqB,YAAY,0BAA0B,CAAC;IAEhJ,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;MACP,IAAA,uBAAe,EAAC;YAChB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,CAAC,iBAAiB,CAAC;SAClC,CAAC;MACA,yBAAyB,EAAE;QAC7B,oBAAoB,EAAE,YAAY;QAClC,IAAI,EAAE;YACJ,mBAAmB,EAAE,IAAI;YACzB,sBAAsB;YACtB,yBAAyB;SAC1B;KACF,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,uBAAuB,2BAsBlC"}
@@ -1,2 +1,2 @@
1
- import type { GraphQLTypeHandler } from '../types';
1
+ import type { GraphQLTypeHandler } from './types';
2
2
  export declare const handleGraphQLUninionType: GraphQLTypeHandler;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGraphQLUninionType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/handleGraphQLUninionType.ts"],"names":[],"mappings":";;;AAAA,oCAA2C;AAGpC,MAAM,wBAAwB,GAAuB,CAC1D,EAAE,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,EAC1E,EAAE,MAAM,EAAE,EACV,EAAE;IACF,MAAM,yBAAyB,GAAG,gBAAgB,YAAY,KAAK,iBAAiB,CAAC,UAAU,sDAAsD,CAAC;IAEtJ,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;MACP,IAAA,uBAAe,EAAC;YAChB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,YAAY,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC;SAClD,CAAC;MACA,yBAAyB,EAAE;QAC7B,oBAAoB,EAAE,YAAY;QAClC,IAAI,EAAE;YACJ,mBAAmB,EAAE,IAAI;YACzB,sBAAsB;YACtB,yBAAyB;SAC1B;KACF,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,wBAAwB,4BAsBnC"}
@@ -0,0 +1,2 @@
1
+ export { generateResolverFiles } from './generateResolverFiles';
2
+ export * from './types';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateResolverFiles = void 0;
4
+ const tslib_1 = require("tslib");
5
+ var generateResolverFiles_1 = require("./generateResolverFiles");
6
+ Object.defineProperty(exports, "generateResolverFiles", { enumerable: true, get: function () { return generateResolverFiles_1.generateResolverFiles; } });
7
+ tslib_1.__exportStar(require("./types"), exports);
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/index.ts"],"names":[],"mappings":";;;;AAAA,iEAAgE;AAAvD,8HAAA,qBAAqB,OAAA;AAC9B,kDAAwB"}
@@ -1,5 +1,6 @@
1
1
  import type { GraphQLSchema } from 'graphql';
2
- import type { Source } from '@graphql-tools/utils';
2
+ import type { SourcesMap } from '../parseSources';
3
+ import type { ImportLineMeta, RootObjectType } from '../utils';
3
4
  interface BaseVirtualFile {
4
5
  __filetype: string;
5
6
  content: string;
@@ -16,27 +17,14 @@ export interface ResolverFile extends BaseVirtualFile {
16
17
  normalizedResolverName: string;
17
18
  };
18
19
  }
19
- export declare type SourcesMap = Record<string, {
20
- source: Source;
21
- moduleName: string;
22
- }>;
23
- export interface ImportLineMeta {
24
- isTypeImport: boolean;
25
- module: string;
26
- namedImports: (string | {
27
- propertyName: string;
28
- identifierName: string;
29
- })[];
30
- defaultImport?: string;
31
- }
32
- export interface RunContext {
20
+ export interface GenerateResolverFilesContext {
33
21
  config: {
34
22
  schema: GraphQLSchema;
35
23
  sourcesMap: SourcesMap;
36
24
  baseOutputDir: string;
37
25
  resolverTypesPath: string;
38
- relativeTargetDir: string;
39
- mainFile: string;
26
+ resolverRelativeTargetDir: string;
27
+ resolverMainFile: string;
40
28
  mode: 'merged' | 'modules';
41
29
  whitelistedModules: string[];
42
30
  blacklistedModules: string[];
@@ -53,7 +41,6 @@ export interface RunContext {
53
41
  }>;
54
42
  };
55
43
  }
56
- export declare type RootObjectType = 'Query' | 'Mutation' | 'Subscription';
57
44
  export interface GraphQLTypeHandlerParams {
58
45
  fieldFilePath: string;
59
46
  resolverName: string;
@@ -65,5 +52,5 @@ export interface GraphQLTypeHandlerParams {
65
52
  typeString: `${string}Resolvers` | `${RootObjectType}Resolvers['${string}']`;
66
53
  };
67
54
  }
68
- export declare type GraphQLTypeHandler = (params: GraphQLTypeHandlerParams, ctx: RunContext) => void;
55
+ export declare type GraphQLTypeHandler = (params: GraphQLTypeHandlerParams, ctx: GenerateResolverFilesContext) => void;
69
56
  export {};
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/types.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import { GraphQLNamedType, Location } from 'graphql';
2
- import { GraphQLTypeHandler, RootObjectType, RunContext } from '../types';
2
+ import { RootObjectType } from '../utils';
3
+ import { GraphQLTypeHandler, GenerateResolverFilesContext } from './types';
3
4
  export interface VisitNamedTypeParams {
4
5
  namedType: GraphQLNamedType;
5
6
  resolverName: string;
@@ -12,4 +13,4 @@ export interface VisitNamedTypeParams {
12
13
  };
13
14
  location?: Location;
14
15
  }
15
- export declare const visitNamedType: ({ namedType, resolverName, belongsToRootObject, location, visitor, }: VisitNamedTypeParams, ctx: RunContext) => void;
16
+ export declare const visitNamedType: ({ namedType, resolverName, belongsToRootObject, location, visitor, }: VisitNamedTypeParams, ctx: GenerateResolverFilesContext) => void;
@@ -5,7 +5,6 @@ const path = require("path");
5
5
  const graphql_1 = require("graphql");
6
6
  const utils_1 = require("../utils");
7
7
  const addExternalResolverImport_1 = require("./addExternalResolverImport");
8
- const checkIfModuleIsWhitelisted_1 = require("./checkIfModuleIsWhitelisted");
9
8
  const visitNamedType = ({ namedType, resolverName, belongsToRootObject, location, visitor, }, ctx) => {
10
9
  const normalizedResolverName = normalizeResolverName(resolverName, belongsToRootObject);
11
10
  const externalResolverImportSyntax = ctx.config.externalResolvers[normalizedResolverName];
@@ -41,30 +40,23 @@ exports.visitNamedType = visitNamedType;
41
40
  * Parse location to see which module it belongs to.
42
41
  * Also check against whitelisted and blacklisted to see if need to generate file.
43
42
  */
44
- const parseLocationForOutputDir = (nestedDirs, { config: { mode, sourcesMap, whitelistedModules, blacklistedModules, baseOutputDir, relativeTargetDir, }, }, location) => {
45
- if (!location) {
46
- throw new Error('Location is invalid');
47
- }
43
+ const parseLocationForOutputDir = (nestedDirs, { config: { mode, sourcesMap, whitelistedModules, blacklistedModules, baseOutputDir, resolverRelativeTargetDir, }, }, location) => {
48
44
  // If mode is "merged", there's only one module:
49
45
  // - always generate a.k.a it's always whitelisted
50
46
  // - put them together at degsinated relativeTargetDir
51
47
  if (mode === 'merged') {
52
- return path.join(baseOutputDir, relativeTargetDir, ...nestedDirs);
48
+ return path.join(baseOutputDir, resolverRelativeTargetDir, ...nestedDirs);
53
49
  }
54
50
  // 2. mode is "modules", each module is the folder containing the schema files
55
51
  // This means one or multiple schema files can add up to one module
56
- const sourceFilename = location.source.name;
57
- const sourceFile = sourcesMap[sourceFilename];
58
- if (!sourceFile) {
59
- throw new Error(`Unable to find ${sourceFilename} in sourcesMap`);
60
- }
61
- const isWhitelistedModule = (0, checkIfModuleIsWhitelisted_1.checkIfModuleIsWhitelisted)({
62
- moduleName: sourceFile.moduleName,
52
+ const parsedSource = (0, utils_1.parseLocationForWhitelistedModule)({
53
+ location,
54
+ sourcesMap,
63
55
  whitelistedModules,
64
56
  blacklistedModules,
65
57
  });
66
- return isWhitelistedModule
67
- ? path.join(baseOutputDir, sourceFile.moduleName, relativeTargetDir, ...nestedDirs)
58
+ return parsedSource
59
+ ? path.join(baseOutputDir, parsedSource.moduleName, resolverRelativeTargetDir, ...nestedDirs)
68
60
  : undefined;
69
61
  };
70
62
  const validateAndPrepareForGraphQLTypeHandler = ({ resolverName, normalizedResolverName, outputDir, belongsToRootObject, }, { config, result }) => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visitNamedType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateResolverFiles/visitNamedType.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { GraphQLSchema } from 'graphql';
2
+ import type { SourcesMap } from '../parseSources';
3
+ import type { TypeMappersMap } from '../parseTypeMappers';
4
+ interface GetPluginsConfigParams {
5
+ schemaAst: GraphQLSchema;
6
+ sourcesMap: SourcesMap;
7
+ typeMappersMap: TypeMappersMap;
8
+ whitelistedModules: string[];
9
+ blacklistedModules: string[];
10
+ }
11
+ declare type GetPluginsConfigResult = Record<'defaultScalarTypesMap' | 'defaultScalarExternalResolvers' | 'defaultTypeMappers', Record<string, string>>;
12
+ export declare const getPluginsConfig: ({ schemaAst, sourcesMap, typeMappersMap, whitelistedModules, blacklistedModules, }: GetPluginsConfigParams) => GetPluginsConfigResult;
13
+ export {};
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPluginsConfig = void 0;
4
+ const graphql_1 = require("graphql");
5
+ const graphql_scalars_1 = require("graphql-scalars");
6
+ const utils_1 = require("../utils");
7
+ const getPluginsConfig = ({ schemaAst, sourcesMap, typeMappersMap, whitelistedModules, blacklistedModules, }) => {
8
+ return Object.entries(schemaAst.getTypeMap()).reduce((res, [schemaType, namedType]) => {
9
+ var _a;
10
+ if ((0, utils_1.isNativeNamedType)(namedType)) {
11
+ return res;
12
+ }
13
+ const parsedSource = (0, utils_1.parseLocationForWhitelistedModule)({
14
+ location: (_a = namedType.astNode) === null || _a === void 0 ? void 0 : _a.loc,
15
+ sourcesMap,
16
+ whitelistedModules,
17
+ blacklistedModules,
18
+ });
19
+ if (!parsedSource) {
20
+ return res;
21
+ }
22
+ if ((0, graphql_1.isScalarType)(namedType)) {
23
+ handleScalarType(schemaType, res);
24
+ }
25
+ if (!(0, utils_1.isRootObjectType)(schemaType) && (0, graphql_1.isObjectType)(namedType)) {
26
+ const typeMapperDetails = typeMappersMap[schemaType];
27
+ if (typeMapperDetails) {
28
+ res.defaultTypeMappers[typeMapperDetails.schemaType] =
29
+ typeMapperDetails.configImportPath;
30
+ }
31
+ }
32
+ return res;
33
+ }, {
34
+ defaultScalarTypesMap: {},
35
+ defaultScalarExternalResolvers: {},
36
+ defaultTypeMappers: {},
37
+ });
38
+ };
39
+ exports.getPluginsConfig = getPluginsConfig;
40
+ const handleScalarType = (schemaType, result) => {
41
+ const scalarResolver = graphql_scalars_1.resolvers[schemaType];
42
+ if (!scalarResolver) {
43
+ return;
44
+ }
45
+ if (scalarResolver.extensions.codegenScalarType &&
46
+ typeof scalarResolver.extensions.codegenScalarType === 'string') {
47
+ result.defaultScalarTypesMap[schemaType] =
48
+ scalarResolver.extensions.codegenScalarType;
49
+ }
50
+ result.defaultScalarExternalResolvers[schemaType] = `~graphql-scalars#${scalarResolver.name}Resolver`;
51
+ };
52
+ //# sourceMappingURL=getPluginsConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPluginsConfig.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/getPluginsConfig/getPluginsConfig.ts"],"names":[],"mappings":";;;AAAA,qCAAoE;AACpE,qDAA+D;AAG/D,oCAIkB;AAiBX,MAAM,gBAAgB,GAAG,CAAC,EAC/B,SAAS,EACT,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,kBAAkB,GACK,EAA0B,EAAE;IACnD,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAClD,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE;;QAC/B,IAAI,IAAA,yBAAiB,EAAC,SAAS,CAAC,EAAE;YAChC,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,YAAY,GAAG,IAAA,yCAAiC,EAAC;YACrD,QAAQ,EAAE,MAAA,SAAS,CAAC,OAAO,0CAAE,GAAG;YAChC,UAAU;YACV,kBAAkB;YAClB,kBAAkB;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,GAAG,CAAC;SACZ;QAED,IAAI,IAAA,sBAAY,EAAC,SAAS,CAAC,EAAE;YAC3B,gBAAgB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;SACnC;QAED,IAAI,CAAC,IAAA,wBAAgB,EAAC,UAAU,CAAC,IAAI,IAAA,sBAAY,EAAC,SAAS,CAAC,EAAE;YAC5D,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,iBAAiB,EAAE;gBACrB,GAAG,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC;oBAClD,iBAAiB,CAAC,gBAAgB,CAAC;aACtC;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EACD;QACE,qBAAqB,EAAE,EAAE;QACzB,8BAA8B,EAAE,EAAE;QAClC,kBAAkB,EAAE,EAAE;KACvB,CACF,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,gBAAgB,oBA2C3B;AAEF,MAAM,gBAAgB,GAAG,CACvB,UAAkB,EAClB,MAA8B,EACxB,EAAE;IACR,MAAM,cAAc,GAAG,2BAAe,CAAC,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC,cAAc,EAAE;QACnB,OAAO;KACR;IAED,IACE,cAAc,CAAC,UAAU,CAAC,iBAAiB;QAC3C,OAAO,cAAc,CAAC,UAAU,CAAC,iBAAiB,KAAK,QAAQ,EAC/D;QACA,MAAM,CAAC,qBAAqB,CAAC,UAAU,CAAC;YACtC,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC;KAC/C;IAED,MAAM,CAAC,8BAA8B,CACnC,UAAU,CACX,GAAG,oBAAoB,cAAc,CAAC,IAAI,UAAU,CAAC;AACxD,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './getPluginsConfig';