@eddeee888/gcg-typescript-resolver-files 0.0.1 → 0.0.3

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 (49) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +10 -10
  3. package/package.json +2 -1
  4. package/src/index.d.ts +1 -1
  5. package/src/index.js +3 -4
  6. package/src/index.js.map +1 -1
  7. package/src/preset.d.ts +11 -0
  8. package/src/preset.js +76 -0
  9. package/src/preset.js.map +1 -0
  10. package/src/run/addExternalResolverImport.d.ts +7 -0
  11. package/src/run/addExternalResolverImport.js +99 -0
  12. package/src/run/addExternalResolverImport.js.map +1 -0
  13. package/src/run/addResolversMainFile.d.ts +2 -8
  14. package/src/run/addResolversMainFile.js +77 -20
  15. package/src/run/addResolversMainFile.js.map +1 -1
  16. package/src/run/fixExistingResolvers.d.ts +2 -2
  17. package/src/run/fixExistingResolvers.js +5 -5
  18. package/src/run/fixExistingResolvers.js.map +1 -1
  19. package/src/run/handleGraphQLObjectType.d.ts +1 -2
  20. package/src/run/handleGraphQLObjectType.js +10 -15
  21. package/src/run/handleGraphQLObjectType.js.map +1 -1
  22. package/src/run/handleGraphQLRootObjectTypeField.d.ts +2 -0
  23. package/src/run/handleGraphQLRootObjectTypeField.js +25 -0
  24. package/src/run/handleGraphQLRootObjectTypeField.js.map +1 -0
  25. package/src/run/handleGraphQLScalarType.d.ts +2 -0
  26. package/src/run/handleGraphQLScalarType.js +26 -0
  27. package/src/run/handleGraphQLScalarType.js.map +1 -0
  28. package/src/run/handleGraphQLUninionType.d.ts +1 -2
  29. package/src/run/handleGraphQLUninionType.js +10 -14
  30. package/src/run/handleGraphQLUninionType.js.map +1 -1
  31. package/src/run/run.d.ts +2 -2
  32. package/src/run/run.js +43 -29
  33. package/src/run/run.js.map +1 -1
  34. package/src/run/visitNamedType.d.ts +15 -0
  35. package/src/run/visitNamedType.js +102 -0
  36. package/src/run/visitNamedType.js.map +1 -0
  37. package/src/types.d.ts +43 -16
  38. package/src/utils.d.ts +3 -2
  39. package/src/utils.js +34 -12
  40. package/src/utils.js.map +1 -1
  41. package/src/plugin.d.ts +0 -18
  42. package/src/plugin.js +0 -64
  43. package/src/plugin.js.map +0 -1
  44. package/src/run/handleGraphQLRootObjectType.d.ts +0 -3
  45. package/src/run/handleGraphQLRootObjectType.js +0 -44
  46. package/src/run/handleGraphQLRootObjectType.js.map +0 -1
  47. package/src/run/parseLocation.d.ts +0 -7
  48. package/src/run/parseLocation.js +0 -37
  49. package/src/run/parseLocation.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @eddeee888/gcg-typescript-resolver-files
2
2
 
3
+ ## 0.0.3
4
+
5
+ ### Patch Changes
6
+
7
+ - 5065768: Turn to preset to better integrate with codegen
8
+
9
+ ## 0.0.2
10
+
11
+ ### Patch Changes
12
+
13
+ - 0a99233: Implement generating logic for Scalar type
14
+ - b2fe4da: Implement config.externalResolvers
15
+
3
16
  ## 0.0.1
4
17
 
5
18
  ### Patch Changes
package/README.md CHANGED
@@ -25,18 +25,18 @@ generates:
25
25
  - typescript-resolvers
26
26
 
27
27
  src/graphql/resolvers:
28
- plugins:
29
- - '@eddeee888/gcg-typescript-resolver-files'
30
- config:
28
+ preset: '@eddeee888/gcg-typescript-resolver-files'
29
+ presetConfig:
31
30
  resolverTypesPath: ./types.generated.ts
32
31
  ```
33
32
 
34
33
  ## Config
35
34
 
36
- | Name | Type | Description |
37
- | -------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
38
- | `resolverTypesPath` | `string` | (Required) Relative path to type file generated by `typescript-resolvers` plugin. |
39
- | `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. |
40
- | `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>` |
41
- | `mainFile` | `string` | File that puts all generated resolvers together. Relative from `baseOutputDir` |
42
- | `whitelistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Whitelists modules to generate files and main file for. Useful for gradual migrations. |
35
+ | Name | Type | Description |
36
+ | -------------------- | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
37
+ | `resolverTypesPath` | `string` | (Required) Relative path to type file generated by `typescript-resolvers` plugin. |
38
+ | `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. |
39
+ | `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>` |
40
+ | `mainFile` | `string` | File that puts all generated resolvers together. Relative from `baseOutputDir` |
41
+ | `whitelistedModules` | `Array<string>` | (Only works with `config.mode=modules`) Whitelists modules to generate files and main file for. Useful for gradual migrations. |
42
+ | `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'`. |
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@eddeee888/gcg-typescript-resolver-files",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "dependencies": {
5
+ "@graphql-codegen/add": "^3.2.1",
5
6
  "@graphql-codegen/plugin-helpers": "^2.7.1",
6
7
  "graphql": "^16.6.0",
7
8
  "ts-morph": "^16.0.0"
package/src/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { plugin, validate } from './plugin';
1
+ export { preset } from './preset';
package/src/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validate = exports.plugin = void 0;
4
- var plugin_1 = require("./plugin");
5
- Object.defineProperty(exports, "plugin", { enumerable: true, get: function () { return plugin_1.plugin; } });
6
- Object.defineProperty(exports, "validate", { enumerable: true, get: function () { return plugin_1.validate; } });
3
+ exports.preset = void 0;
4
+ var preset_1 = require("./preset");
5
+ Object.defineProperty(exports, "preset", { enumerable: true, get: function () { return preset_1.preset; } });
7
6
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/typescript-resolver-files/src/index.ts"],"names":[],"mappings":";;;AAAA,mCAA4C;AAAnC,gGAAA,MAAM,OAAA;AAAE,kGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/typescript-resolver-files/src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA"}
@@ -0,0 +1,11 @@
1
+ import type { Types } from '@graphql-codegen/plugin-helpers';
2
+ interface ParsedPresetConfig {
3
+ resolverTypesPath: string;
4
+ relativeTargetDir: string;
5
+ mainFile: string;
6
+ mode: 'merged' | 'modules';
7
+ whitelistedModules: string[];
8
+ externalResolvers: Record<string, string>;
9
+ }
10
+ export declare const preset: Types.OutputPreset<ParsedPresetConfig>;
11
+ export {};
package/src/preset.js ADDED
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.preset = void 0;
4
+ const path = require("path");
5
+ const addPlugin = require("@graphql-codegen/add");
6
+ const utils_1 = require("./utils");
7
+ const run_1 = require("./run");
8
+ const presetName = '@eddeee888/gcg-typescript-resolver-files';
9
+ exports.preset = {
10
+ buildGeneratesSection: ({ schema, schemaAst, presetConfig: rawPresetConfig, baseOutputDir, }) => {
11
+ if (!schemaAst) {
12
+ throw new Error('Missing schemaAst');
13
+ }
14
+ const sources = schemaAst.extensions.extendedSources;
15
+ if (!Array.isArray(sources) || sources.length === 0) {
16
+ throw new Error('Empty Sources. Make sure schema files are parsed correctly.');
17
+ }
18
+ const sourcesMap = (0, utils_1.parseSources)(sources);
19
+ const { resolverTypesPath: relativeResolverTypesPathFromBaseOutputDir, relativeTargetDir, mainFile, mode, whitelistedModules, externalResolvers, } = validatePresetConfig(rawPresetConfig);
20
+ const resolverTypesPath = path.join(baseOutputDir, relativeResolverTypesPathFromBaseOutputDir);
21
+ const result = {
22
+ files: {},
23
+ externalImports: {},
24
+ };
25
+ (0, run_1.run)({
26
+ config: {
27
+ schema: schemaAst,
28
+ sourcesMap,
29
+ baseOutputDir,
30
+ resolverTypesPath,
31
+ relativeTargetDir,
32
+ mainFile,
33
+ mode,
34
+ whitelistedModules,
35
+ externalResolvers,
36
+ },
37
+ result,
38
+ });
39
+ return Object.entries(result.files).map(([filename, { content }]) => ({
40
+ filename,
41
+ pluginMap: { add: addPlugin },
42
+ plugins: [{ add: { content } }],
43
+ schema,
44
+ config: {},
45
+ documents: [],
46
+ }));
47
+ },
48
+ };
49
+ const validatePresetConfig = ({ resolverTypesPath, relativeTargetDir = '', mainFile = 'index.ts', mode = 'modules', whitelistedModules, externalResolvers = {}, }) => {
50
+ if (!resolverTypesPath) {
51
+ throw new Error(`Validation Error - ${presetName} - presetConfig.resolverTypesPath is required`);
52
+ }
53
+ if (path.extname(mainFile) === '') {
54
+ throw new Error(`Validation Error - ${presetName} - presetConfig.mainFile must be a valid file name`);
55
+ }
56
+ if (mode !== 'merged' && mode !== 'modules') {
57
+ throw new Error(`Validation Error - ${presetName} - presetConfig.mode must be "merged" or "modules" (default is "modules")`);
58
+ }
59
+ if (whitelistedModules) {
60
+ if (!Array.isArray(whitelistedModules)) {
61
+ throw new Error(`Validation Error - ${presetName} - presetConfig.whitelistedModules must be an array if provided`);
62
+ }
63
+ if (mode !== 'modules') {
64
+ throw new Error(`Validation Error - ${presetName} - presetConfig.whitelistedModules can only be used with presetConfig.mode == "modules"`);
65
+ }
66
+ }
67
+ return {
68
+ resolverTypesPath,
69
+ relativeTargetDir,
70
+ mainFile,
71
+ mode: mode,
72
+ whitelistedModules: whitelistedModules || [],
73
+ externalResolvers,
74
+ };
75
+ };
76
+ //# sourceMappingURL=preset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preset.js","sourceRoot":"","sources":["../../../../packages/typescript-resolver-files/src/preset.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAC7B,kDAAkD;AAElD,mCAAuC;AAEvC,+BAA4B;AAW5B,MAAM,UAAU,GAAG,0CAA0C,CAAC;AAEjD,QAAA,MAAM,GAA2C;IAC5D,qBAAqB,EAAE,CAAC,EACtB,MAAM,EACN,SAAS,EACT,YAAY,EAAE,eAAe,EAC7B,aAAa,GACd,EAAE,EAAE;QACH,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACnD,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;SACH;QAED,MAAM,UAAU,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;QAEzC,MAAM,EACJ,iBAAiB,EAAE,0CAA0C,EAC7D,iBAAiB,EACjB,QAAQ,EACR,IAAI,EACJ,kBAAkB,EAClB,iBAAiB,GAClB,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAE1C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CACjC,aAAa,EACb,0CAA0C,CAC3C,CAAC;QAEF,MAAM,MAAM,GAAyB;YACnC,KAAK,EAAE,EAAE;YACT,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,IAAA,SAAG,EAAC;YACF,MAAM,EAAE;gBACN,MAAM,EAAE,SAAS;gBACjB,UAAU;gBACV,aAAa;gBACb,iBAAiB;gBACjB,iBAAiB;gBACjB,QAAQ;gBACR,IAAI;gBACJ,kBAAkB;gBAClB,iBAAiB;aAClB;YACD,MAAM;SACP,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACpE,QAAQ;YACR,SAAS,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE;YAC7B,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC;YAC/B,MAAM;YACN,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,EAAE;SACd,CAAC,CAAC,CAAC;IACN,CAAC;CACF,CAAC;AAUF,MAAM,oBAAoB,GAAG,CAAC,EAC5B,iBAAiB,EACjB,iBAAiB,GAAG,EAAE,EACtB,QAAQ,GAAG,UAAU,EACrB,IAAI,GAAG,SAAS,EAChB,kBAAkB,EAClB,iBAAiB,GAAG,EAAE,GACN,EAAsB,EAAE;IACxC,IAAI,CAAC,iBAAiB,EAAE;QACtB,MAAM,IAAI,KAAK,CACb,sBAAsB,UAAU,+CAA+C,CAChF,CAAC;KACH;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,IAAI,KAAK,CACb,sBAAsB,UAAU,oDAAoD,CACrF,CAAC;KACH;IAED,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;QAC3C,MAAM,IAAI,KAAK,CACb,sBAAsB,UAAU,2EAA2E,CAC5G,CAAC;KACH;IAED,IAAI,kBAAkB,EAAE;QACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;YACtC,MAAM,IAAI,KAAK,CACb,sBAAsB,UAAU,iEAAiE,CAClG,CAAC;SACH;QAED,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,sBAAsB,UAAU,yFAAyF,CAC1H,CAAC;SACH;KACF;IAED,OAAO;QACL,iBAAiB;QACjB,iBAAiB;QACjB,QAAQ;QACR,IAAI,EAAE,IAAI;QACV,kBAAkB,EAAE,kBAAkB,IAAI,EAAE;QAC5C,iBAAiB;KAClB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { RunContext } from '../types';
2
+ interface AddExternalResolverImportParams {
3
+ normalizedResolverName: string;
4
+ configImportSyntax: string;
5
+ }
6
+ export declare const addExternalResolverImport: (params: AddExternalResolverImportParams, { result }: RunContext) => void;
7
+ export {};
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addExternalResolverImport = void 0;
4
+ const utils_1 = require("../utils");
5
+ const addExternalResolverImport = (params, { result }) => {
6
+ const { importIdentifier, identifierUsage, moduleImport } = parseImportSyntax(params);
7
+ result.externalImports[moduleImport] =
8
+ result.externalImports[moduleImport] ||
9
+ {
10
+ importLineMeta: {
11
+ isTypeImport: false,
12
+ module: moduleImport,
13
+ namedImports: [],
14
+ defaultImport: undefined,
15
+ },
16
+ identifierUsages: [],
17
+ };
18
+ const externalImport = result.externalImports[moduleImport];
19
+ switch (importIdentifier.__type) {
20
+ case 'default':
21
+ if (externalImport.importLineMeta.defaultImport &&
22
+ externalImport.importLineMeta.defaultImport !==
23
+ importIdentifier.defaultImport) {
24
+ throw new Error(`There can be only one default import from '${moduleImport}'. Current: ${externalImport.importLineMeta.defaultImport}. New: ${importIdentifier.defaultImport}`);
25
+ }
26
+ externalImport.importLineMeta.defaultImport =
27
+ importIdentifier.defaultImport;
28
+ break;
29
+ case 'named':
30
+ externalImport.importLineMeta.namedImports.push(importIdentifier.namedImport);
31
+ break;
32
+ case 'namedWithAlias':
33
+ externalImport.importLineMeta.namedImports.push({
34
+ propertyName: importIdentifier.propertyName,
35
+ identifierName: importIdentifier.identifierName,
36
+ });
37
+ break;
38
+ default:
39
+ // importIdentifier is `never` unless new __type is added
40
+ // i.e. this is here for typesafety
41
+ return importIdentifier;
42
+ }
43
+ externalImport.identifierUsages.push(identifierUsage);
44
+ };
45
+ exports.addExternalResolverImport = addExternalResolverImport;
46
+ const parseImportSyntax = ({ configImportSyntax, normalizedResolverName, }) => {
47
+ const isAbsoluteImport = configImportSyntax[0] === '~';
48
+ const importStringWithoutRelativity = isAbsoluteImport
49
+ ? configImportSyntax.slice(1)
50
+ : configImportSyntax;
51
+ const [rawModuleName, importIdentifier] = importStringWithoutRelativity.split('#');
52
+ const moduleImport = isAbsoluteImport
53
+ ? rawModuleName
54
+ : (0, utils_1.normalizeRelativePath)(rawModuleName);
55
+ if (importIdentifier.startsWith('default')) {
56
+ if (!importIdentifier.startsWith('default as ')) {
57
+ throw new Error(`Invalid import syntax. "${configImportSyntax}": Default import must include identifier name e.g. moduleName#default as Identifier`);
58
+ }
59
+ const [_, defaultImportIdentifier] = importIdentifier.split('default as ');
60
+ return {
61
+ importIdentifier: {
62
+ __type: 'default',
63
+ defaultImport: defaultImportIdentifier,
64
+ },
65
+ identifierUsage: {
66
+ identifierName: defaultImportIdentifier,
67
+ normalizedResolverName,
68
+ },
69
+ moduleImport,
70
+ };
71
+ }
72
+ const namedImportParts = importIdentifier.split(' as ');
73
+ if (namedImportParts.length === 1) {
74
+ return {
75
+ importIdentifier: {
76
+ __type: 'named',
77
+ namedImport: namedImportParts[0],
78
+ },
79
+ identifierUsage: {
80
+ identifierName: namedImportParts[0],
81
+ normalizedResolverName,
82
+ },
83
+ moduleImport,
84
+ };
85
+ }
86
+ return {
87
+ importIdentifier: {
88
+ __type: 'namedWithAlias',
89
+ propertyName: namedImportParts[0],
90
+ identifierName: namedImportParts[1],
91
+ },
92
+ identifierUsage: {
93
+ identifierName: namedImportParts[1],
94
+ normalizedResolverName,
95
+ },
96
+ moduleImport,
97
+ };
98
+ };
99
+ //# sourceMappingURL=addExternalResolverImport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addExternalResolverImport.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/addExternalResolverImport.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,2 @@
1
- import type { RunResult } from '../types';
2
- interface AddResolversMainFileParams {
3
- baseOutputDir: string;
4
- resolverTypesPath: string;
5
- mainFile: string;
6
- }
7
- export declare const addResolversMainFile: ({ baseOutputDir, resolverTypesPath, mainFile }: AddResolversMainFileParams, result: RunResult) => void;
8
- export {};
1
+ import type { RunContext } from '../types';
2
+ export declare const addResolversMainFile: ({ config: { baseOutputDir, resolverTypesPath, mainFile }, result, }: RunContext) => void;
@@ -3,27 +3,44 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addResolversMainFile = void 0;
4
4
  const path = require("path");
5
5
  const utils_1 = require("../utils");
6
- const addResolversMainFile = ({ baseOutputDir, resolverTypesPath, mainFile }, result) => {
6
+ const addResolversMainFile = ({ config: { baseOutputDir, resolverTypesPath, mainFile }, result, }) => {
7
7
  const filename = path.join(baseOutputDir, mainFile.split('/').join(path.sep));
8
8
  const outputDir = path.dirname(filename);
9
- // Make sure to create target dir to main file, in case mainFile is a path!
10
- result.dirs[outputDir] = true;
11
9
  const relativePathToResolverTypes = (0, utils_1.relativeModulePath)(outputDir, resolverTypesPath);
12
- const pathToResolverModule = (0, utils_1.printImportModule)(relativePathToResolverTypes);
13
10
  const resolversDetails = Object.entries(result.files).reduce((res, [filepath, file]) => {
14
11
  if (file.__filetype === 'file') {
15
12
  return res;
16
13
  }
17
- const pathToModule = (0, utils_1.printImportModule)((0, utils_1.relativeModulePath)(outputDir, filepath));
18
- res.importLines.push(`import { ${file.mainImportIdentifier} } from '${pathToModule}'`);
14
+ // Non Root Object fields that was generated
19
15
  if (!file.meta.belongsToRootObject) {
20
- res.objectTypes.push(file.mainImportIdentifier);
16
+ res.importLines.push((0, utils_1.printImportLine)({
17
+ isTypeImport: false,
18
+ module: (0, utils_1.relativeModulePath)(outputDir, filepath),
19
+ namedImports: [file.mainImportIdentifier],
20
+ }));
21
+ res.objectTypes.push({
22
+ propertyName: file.mainImportIdentifier,
23
+ identifierName: file.mainImportIdentifier,
24
+ });
21
25
  return res;
22
26
  }
27
+ // Root object fields
28
+ const identifierName = file.meta.normalizedResolverName
29
+ .split('.')
30
+ .join('_');
31
+ const fieldMapping = {
32
+ propertyName: file.mainImportIdentifier,
33
+ identifierName,
34
+ };
35
+ res.importLines.push((0, utils_1.printImportLine)({
36
+ isTypeImport: false,
37
+ module: (0, utils_1.relativeModulePath)(outputDir, filepath),
38
+ namedImports: [fieldMapping],
39
+ }));
23
40
  const rootObjectMap = {
24
- Query: () => res.queryFields.push(file.mainImportIdentifier),
25
- Mutation: () => res.mutationFields.push(file.mainImportIdentifier),
26
- Subscription: () => res.subscriptionFields.push(file.mainImportIdentifier),
41
+ Query: () => res.queryFields.push(fieldMapping),
42
+ Mutation: () => res.mutationFields.push(fieldMapping),
43
+ Subscription: () => res.subscriptionFields.push(fieldMapping),
27
44
  };
28
45
  rootObjectMap[file.meta.belongsToRootObject]();
29
46
  return res;
@@ -34,36 +51,76 @@ const addResolversMainFile = ({ baseOutputDir, resolverTypesPath, mainFile }, re
34
51
  subscriptionFields: [],
35
52
  objectTypes: [],
36
53
  });
54
+ Object.entries(result.externalImports).reduce((res, [module, meta]) => {
55
+ res.importLines.push((0, utils_1.printImportLine)({
56
+ isTypeImport: false,
57
+ module,
58
+ namedImports: meta.importLineMeta.namedImports,
59
+ defaultImport: meta.importLineMeta.defaultImport,
60
+ }));
61
+ meta.identifierUsages.forEach((usage) => {
62
+ const resolverNameParts = usage.normalizedResolverName.split('.');
63
+ // Only 1 part, this is a GraphQL ObjectType
64
+ if (resolverNameParts.length === 1) {
65
+ res.objectTypes.push({
66
+ propertyName: resolverNameParts[0],
67
+ identifierName: usage.identifierName,
68
+ });
69
+ return;
70
+ }
71
+ // 2+ parts, treat as 2 parts. This is a GraphQL ObjectType with field e.g. Query.me, Mutation.updateUser
72
+ const [rootObjectType, field] = resolverNameParts;
73
+ if (!(0, utils_1.isRootObjectType)(rootObjectType)) {
74
+ throw new Error(`Unexpected root object type found: ${rootObjectType}`);
75
+ }
76
+ const fieldMapping = {
77
+ identifierName: usage.identifierName,
78
+ propertyName: field,
79
+ };
80
+ const rootObjectMap = {
81
+ Query: () => res.queryFields.push(fieldMapping),
82
+ Mutation: () => res.mutationFields.push(fieldMapping),
83
+ Subscription: () => res.subscriptionFields.push(fieldMapping),
84
+ };
85
+ rootObjectMap[rootObjectType]();
86
+ });
87
+ return res;
88
+ }, resolversDetails);
37
89
  const resolversIdentifier = 'resolvers';
38
90
  const resolversTypeName = 'Resolvers'; // Generated type from typescript-resolvers plugin
39
91
  const queries = resolversDetails.queryFields.length > 0
40
92
  ? `Query: { ${resolversDetails.queryFields
41
- .map((field) => field)
42
- .join(',\n')} },`
93
+ .map(printObjectMapping)
94
+ .join(',')} },`
43
95
  : '';
44
96
  const mutations = resolversDetails.mutationFields.length > 0
45
97
  ? `Mutation: { ${resolversDetails.mutationFields
46
- .map((field) => field)
47
- .join(',\n')} },`
98
+ .map(printObjectMapping)
99
+ .join(',')} },`
48
100
  : '';
49
101
  const suscriptions = resolversDetails.subscriptionFields.length > 0
50
102
  ? `Subscription: { ${resolversDetails.subscriptionFields
51
- .map((field) => field)
52
- .join(',\n')} },`
103
+ .map(printObjectMapping)
104
+ .join(',')} },`
53
105
  : '';
54
106
  result.files[filename] = {
55
107
  __filetype: 'file',
56
108
  content: `/* This file was automatically generated. DO NOT UPDATE MANUALLY. */
57
- import type { ${resolversTypeName} } from '${pathToResolverModule}';
58
- ${resolversDetails.importLines.map((line) => line).join(';\n')}
109
+ ${(0, utils_1.printImportLine)({
110
+ isTypeImport: true,
111
+ module: relativePathToResolverTypes,
112
+ namedImports: [resolversTypeName],
113
+ })}
114
+ ${resolversDetails.importLines.map((line) => line).join('\n')}
59
115
  export const ${resolversIdentifier}: ${resolversTypeName} = {
60
116
  ${queries}
61
117
  ${mutations}
62
118
  ${suscriptions}
63
- ${resolversDetails.objectTypes.map((type) => type).join(',\n')}
119
+ ${resolversDetails.objectTypes.map(printObjectMapping).join(',\n')}
64
120
  }`,
65
- mainImportIdentifier: 'resolvers',
121
+ mainImportIdentifier: resolversIdentifier,
66
122
  };
67
123
  };
68
124
  exports.addResolversMainFile = addResolversMainFile;
125
+ const printObjectMapping = ({ propertyName, identifierName, }) => `${propertyName}: ${identifierName}`;
69
126
  //# sourceMappingURL=addResolversMainFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addResolversMainFile.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/addResolversMainFile.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAE7B,oCAAiE;AAO1D,MAAM,oBAAoB,GAAG,CAClC,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAA8B,EAC1E,MAAiB,EACX,EAAE;IACR,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzC,2EAA2E;IAC3E,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAE9B,MAAM,2BAA2B,GAAG,IAAA,0BAAkB,EACpD,SAAS,EACT,iBAAiB,CAClB,CAAC;IACF,MAAM,oBAAoB,GAAG,IAAA,yBAAiB,EAAC,2BAA2B,CAAC,CAAC;IAE5E,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAO1D,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE;QACxB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;YAC9B,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,YAAY,GAAG,IAAA,yBAAiB,EACpC,IAAA,0BAAkB,EAAC,SAAS,EAAE,QAAQ,CAAC,CACxC,CAAC;QACF,GAAG,CAAC,WAAW,CAAC,IAAI,CAClB,YAAY,IAAI,CAAC,oBAAoB,YAAY,YAAY,GAAG,CACjE,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAClC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAChD,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,aAAa,GAAuC;YACxD,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;YAC5D,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;YAClE,YAAY,EAAE,GAAG,EAAE,CACjB,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;SACzD,CAAC;QACF,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAE/C,OAAO,GAAG,CAAC;IACb,CAAC,EACD;QACE,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,EAAE;QACf,cAAc,EAAE,EAAE;QAClB,kBAAkB,EAAE,EAAE;QACtB,WAAW,EAAE,EAAE;KAChB,CACF,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CAAC;IACxC,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,kDAAkD;IAEzF,MAAM,OAAO,GACX,gBAAgB,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACrC,CAAC,CAAC,YAAY,gBAAgB,CAAC,WAAW;aACrC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;aACrB,IAAI,CAAC,KAAK,CAAC,KAAK;QACrB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,SAAS,GACb,gBAAgB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,eAAe,gBAAgB,CAAC,cAAc;aAC3C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;aACrB,IAAI,CAAC,KAAK,CAAC,KAAK;QACrB,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,YAAY,GAChB,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;QAC5C,CAAC,CAAC,mBAAmB,gBAAgB,CAAC,kBAAkB;aACnD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;aACrB,IAAI,CAAC,KAAK,CAAC,KAAK;QACrB,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;QACvB,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE;oBACO,iBAAiB,YAAY,oBAAoB;MAC/D,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;mBAC/C,mBAAmB,KAAK,iBAAiB;QACpD,OAAO;QACP,SAAS;QACT,YAAY;QACZ,gBAAgB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;MAC9D;QACF,oBAAoB,EAAE,WAAW;KAClC,CAAC;AACJ,CAAC,CAAC;AA7FW,QAAA,oBAAoB,wBA6F/B"}
1
+ {"version":3,"file":"addResolversMainFile.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/addResolversMainFile.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import type { RunResult } from '../types';
2
- export declare const fixExistingResolvers: (result: RunResult) => void;
1
+ import type { RunContext } from '../types';
2
+ export declare const fixExistingResolvers: ({ result }: RunContext) => 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;
@@ -15,10 +15,10 @@ const fixExistingResolvers = (result) => {
15
15
  project.addSourceFilesAtPaths(Object.keys(existingResolverFiles));
16
16
  const sourceFiles = project.getSourceFiles();
17
17
  sourceFiles.forEach((sourceFile) => {
18
- const normalisedRelativePath = path.relative(process.cwd(), sourceFile.getFilePath());
19
- const file = existingResolverFiles[normalisedRelativePath];
18
+ const normalizedRelativePath = path.relative(process.cwd(), sourceFile.getFilePath());
19
+ const file = existingResolverFiles[normalizedRelativePath];
20
20
  if (!file) {
21
- throw new Error(`Unable to find resolver file: ${normalisedRelativePath}`);
21
+ throw new Error(`Unable to find resolver file: ${normalizedRelativePath}`);
22
22
  }
23
23
  // TODO: Check missing import
24
24
  // ...
@@ -58,7 +58,7 @@ const fixExistingResolvers = (result) => {
58
58
  // else, if identifier's been exported do nothing
59
59
  }
60
60
  // Overwrite existing files with fixes
61
- result.files[normalisedRelativePath] = Object.assign(Object.assign({}, file), { content: sourceFile.getText() });
61
+ result.files[normalizedRelativePath] = Object.assign(Object.assign({}, file), { content: sourceFile.getText() });
62
62
  });
63
63
  };
64
64
  exports.fixExistingResolvers = fixExistingResolvers;
@@ -1 +1 @@
1
- {"version":3,"file":"fixExistingResolvers.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/fixExistingResolvers.ts"],"names":[],"mappings":";;;AAAA,2BAAgC;AAChC,uCAAmC;AACnC,6BAA6B;AAGtB,MAAM,oBAAoB,GAAG,CAAC,MAAiB,EAAE,EAAE;IACxD,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;YAEL,IAAI,CAAC,qBAAqB,EAAE;gBAC1B,OAAO,KAAK,CAAC;aACd;YACD,OAAO,IAAI,CAAC;QACd,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;AA9EW,QAAA,oBAAoB,wBA8E/B"}
1
+ {"version":3,"file":"fixExistingResolvers.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/fixExistingResolvers.ts"],"names":[],"mappings":";;;AAAA,2BAAgC;AAChC,uCAAmC;AACnC,6BAA6B;AAGtB,MAAM,oBAAoB,GAAG,CAAC,EAAE,MAAM,EAAc,EAAQ,EAAE;IACnE,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;YAEL,IAAI,CAAC,qBAAqB,EAAE;gBAC1B,OAAO,KAAK,CAAC;aACd;YACD,OAAO,IAAI,CAAC;QACd,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;AA9EW,QAAA,oBAAoB,wBA8E/B"}
@@ -1,3 +1,2 @@
1
- import type { GraphQLObjectType } from 'graphql';
2
1
  import type { GraphQLTypeHandler } from '../types';
3
- export declare const handleGraphQLObjectType: GraphQLTypeHandler<GraphQLObjectType>;
2
+ export declare const handleGraphQLObjectType: GraphQLTypeHandler;
@@ -1,27 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handleGraphQLObjectType = void 0;
4
- const path = require("path");
5
4
  const utils_1 = require("../utils");
6
- const handleGraphQLObjectType = ({ type, outputDir }, { resolverTypesPath }, result) => {
7
- const fieldFilePath = path.join(outputDir, `${type.name}.ts`);
8
- if (result.files[fieldFilePath]) {
9
- throw new Error(`Unexpected duplication in field filename. Type: ${type.name}, file: ${fieldFilePath}`);
10
- }
11
- result.dirs[outputDir] = true;
12
- const resolverTypeName = `${type.name}Resolvers`; // Generated type from typescript-resolvers plugin
13
- const relativePathToResolverTypes = (0, utils_1.relativeModulePath)(outputDir, resolverTypesPath);
14
- const pathToResolverModule = (0, utils_1.printImportModule)(relativePathToResolverTypes);
15
- const resolverVariableStatement = `export const ${type.name}: ${resolverTypeName} = {
16
- /* Implement ${type.name} resolver logic here */
17
- };`;
5
+ const handleGraphQLObjectType = ({ fieldFilePath, resolverName, normalizedResolverName, resolversTypeMeta }, { result }) => {
6
+ const resolverVariableStatement = `export const ${resolverName}: ${resolversTypeMeta.typeString} = { /* Implement ${resolverName} resolver logic here */ };`;
18
7
  result.files[fieldFilePath] = {
19
8
  __filetype: 'resolver',
20
- content: `import type { ${resolverTypeName} } from '${pathToResolverModule}';
9
+ content: `
10
+ ${(0, utils_1.printImportLine)({
11
+ isTypeImport: true,
12
+ module: resolversTypeMeta.module,
13
+ namedImports: [resolversTypeMeta.typeNamedImport],
14
+ })}
21
15
  ${resolverVariableStatement}`,
22
- mainImportIdentifier: type.name,
16
+ mainImportIdentifier: resolverName,
23
17
  meta: {
24
18
  belongsToRootObject: null,
19
+ normalizedResolverName,
25
20
  resolverVariableStatement,
26
21
  },
27
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"handleGraphQLObjectType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/handleGraphQLObjectType.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;AAG7B,oCAAiE;AAE1D,MAAM,uBAAuB,GAA0C,CAC5E,EAAE,IAAI,EAAE,SAAS,EAAE,EACnB,EAAE,iBAAiB,EAAE,EACrB,MAAM,EACN,EAAE;IACF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC;IAC9D,IAAI,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CACb,mDAAmD,IAAI,CAAC,IAAI,WAAW,aAAa,EAAE,CACvF,CAAC;KACH;IAED,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAE9B,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,kDAAkD;IACpG,MAAM,2BAA2B,GAAG,IAAA,0BAAkB,EACpD,SAAS,EACT,iBAAiB,CAClB,CAAC;IACF,MAAM,oBAAoB,GAAG,IAAA,yBAAiB,EAAC,2BAA2B,CAAC,CAAC;IAC5E,MAAM,yBAAyB,GAAG,gBAAgB,IAAI,CAAC,IAAI,KAAK,gBAAgB;iBACjE,IAAI,CAAC,IAAI;GACvB,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,iBAAiB,gBAAgB,YAAY,oBAAoB;MACxE,yBAAyB,EAAE;QAC7B,oBAAoB,EAAE,IAAI,CAAC,IAAI;QAC/B,IAAI,EAAE;YACJ,mBAAmB,EAAE,IAAI;YACzB,yBAAyB;SAC1B;KACF,CAAC;AACJ,CAAC,CAAC;AAjCW,QAAA,uBAAuB,2BAiClC"}
1
+ {"version":3,"file":"handleGraphQLObjectType.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/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"}
@@ -0,0 +1,2 @@
1
+ import type { GraphQLTypeHandler } from '../types';
2
+ export declare const handleGraphQLRootObjectTypeField: GraphQLTypeHandler;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleGraphQLRootObjectTypeField = void 0;
4
+ const utils_1 = require("../utils");
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 */ };`;
7
+ result.files[fieldFilePath] = {
8
+ __filetype: 'resolver',
9
+ content: `
10
+ ${(0, utils_1.printImportLine)({
11
+ isTypeImport: true,
12
+ module: resolversTypeMeta.module,
13
+ namedImports: [resolversTypeMeta.typeNamedImport],
14
+ })}
15
+ ${resolverVariableStatement}`,
16
+ mainImportIdentifier: resolverName,
17
+ meta: {
18
+ belongsToRootObject,
19
+ resolverVariableStatement,
20
+ normalizedResolverName,
21
+ },
22
+ };
23
+ };
24
+ exports.handleGraphQLRootObjectTypeField = handleGraphQLRootObjectTypeField;
25
+ //# sourceMappingURL=handleGraphQLRootObjectTypeField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGraphQLRootObjectTypeField.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/run/handleGraphQLRootObjectTypeField.ts"],"names":[],"mappings":";;;AACA,oCAA2C;AAEpC,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,KAAK,iBAAiB,CAAC,UAAU,oDAAoD,sBAAsB,4BAA4B,CAAC;IAEtM,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"}
@@ -0,0 +1,2 @@
1
+ import type { GraphQLTypeHandler } from '../types';
2
+ export declare const handleGraphQLScalarType: GraphQLTypeHandler;