@eddeee888/gcg-typescript-resolver-files 0.7.4 → 0.8.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.
- package/README.md +85 -1
- package/package.json +4 -3
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.d.ts +1 -1
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.js +10 -10
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.js.map +1 -1
- package/src/defineConfig.js +2 -1
- package/src/defineConfig.js.map +1 -1
- package/src/generateResolverFiles/addResolverMainFiles.js +2 -1
- package/src/generateResolverFiles/addResolverMainFiles.js.map +1 -1
- package/src/generateResolverFiles/generateResolverFiles.js +2 -1
- package/src/generateResolverFiles/generateResolverFiles.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLInterfaceType.js +5 -1
- package/src/generateResolverFiles/handleGraphQLInterfaceType.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLObjectType.js +5 -1
- package/src/generateResolverFiles/handleGraphQLObjectType.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLRootObjectTypeField.js +23 -3
- package/src/generateResolverFiles/handleGraphQLRootObjectTypeField.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLScalarType.js +5 -1
- package/src/generateResolverFiles/handleGraphQLScalarType.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLUnionType.js +5 -1
- package/src/generateResolverFiles/handleGraphQLUnionType.js.map +1 -1
- package/src/generateResolverFiles/postProcessFiles.js +2 -1
- package/src/generateResolverFiles/postProcessFiles.js.map +1 -1
- package/src/generateResolverFiles/visitNamedType.js +1 -1
- package/src/generateResolverFiles/visitNamedType.js.map +1 -1
- package/src/generateTypeDefsFiles/generateTypeDefsFiles.js +2 -1
- package/src/generateTypeDefsFiles/generateTypeDefsFiles.js.map +1 -1
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.d.ts +3 -2
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.js +5 -2
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.js.map +1 -1
- package/src/normalizeAddConfigPath/normalizeAddConfigPath.d.ts +1 -1
- package/src/normalizeAddConfigPath/normalizeAddConfigPath.js +2 -1
- package/src/normalizeAddConfigPath/normalizeAddConfigPath.js.map +1 -1
- package/src/parseGraphQLSchema/parseGraphQLSchema.js +3 -3
- package/src/parseGraphQLSchema/parseGraphQLSchema.js.map +1 -1
- package/src/parseSources/parseSources.js +2 -1
- package/src/parseSources/parseSources.js.map +1 -1
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.d.ts +3 -2
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js +12 -4
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js.map +1 -1
- package/src/parseTypeMappers/parseTypeMappers.js +3 -1
- package/src/parseTypeMappers/parseTypeMappers.js.map +1 -1
- package/src/preset.js +10 -6
- package/src/preset.js.map +1 -1
- package/src/utils/cwd.js +2 -1
- package/src/utils/cwd.js.map +1 -1
- package/src/utils/fmt.d.ts +1 -0
- package/src/utils/fmt.js +5 -2
- package/src/utils/fmt.js.map +1 -1
- package/src/utils/getNodePropertyMap.d.ts +5 -2
- package/src/utils/getNodePropertyMap.js +15 -70
- package/src/utils/getNodePropertyMap.js.map +1 -1
- package/src/utils/index.d.ts +2 -0
- package/src/utils/index.js +2 -0
- package/src/utils/index.js.map +1 -1
- package/src/utils/isMatchResolverNamePattern.d.ts +7 -0
- package/src/utils/isMatchResolverNamePattern.js +24 -0
- package/src/utils/isMatchResolverNamePattern.js.map +1 -0
- package/src/utils/logger.d.ts +4 -0
- package/src/utils/logger.js +17 -0
- package/src/utils/logger.js.map +1 -0
- package/src/utils/relativeModulePath.js +2 -1
- package/src/utils/relativeModulePath.js.map +1 -1
- package/src/validatePresetConfig/validatePresetConfig.d.ts +13 -12
- package/src/validatePresetConfig/validatePresetConfig.js +39 -27
- package/src/validatePresetConfig/validatePresetConfig.js.map +1 -1
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validatePresetConfig = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const fs = require("fs");
|
|
5
|
+
const path = tslib_1.__importStar(require("path"));
|
|
6
|
+
const fs = tslib_1.__importStar(require("fs"));
|
|
7
7
|
const utils_1 = require("../utils");
|
|
8
8
|
const defaultResolverRelativeTargetDirMap = {
|
|
9
9
|
modules: 'resolvers',
|
|
@@ -19,10 +19,11 @@ const validatePresetConfig = ({ add, resolverTypesPath = './types.generated.ts',
|
|
|
19
19
|
fixObjectTypeResolvers !== 'disabled') {
|
|
20
20
|
throw new Error(utils_1.fmt.error('presetConfig.fixObjectTypeResolvers must be "smart" or "disabled" (default is "smart")', 'Validation'));
|
|
21
21
|
}
|
|
22
|
-
if (resolverGeneration !== '
|
|
22
|
+
if (typeof resolverGeneration !== 'object' &&
|
|
23
|
+
resolverGeneration !== 'disabled' &&
|
|
23
24
|
resolverGeneration !== 'recommended' &&
|
|
24
25
|
resolverGeneration !== 'all') {
|
|
25
|
-
throw new Error(utils_1.fmt.error('presetConfig.resolverGeneration must be "disabled", "recommended" or "all" (default is "recommended")', 'Validation'));
|
|
26
|
+
throw new Error(utils_1.fmt.error('presetConfig.resolverGeneration must be an object, "disabled", "recommended" or "all" (default is "recommended")', 'Validation'));
|
|
26
27
|
}
|
|
27
28
|
if (resolverMainFileMode !== 'merged' && resolverMainFileMode !== 'modules') {
|
|
28
29
|
throw new Error(utils_1.fmt.error('presetConfig.resolverMainFileMode must be "merged" or "modules" (default is "merged")', 'Validation'));
|
|
@@ -31,7 +32,7 @@ const validatePresetConfig = ({ add, resolverTypesPath = './types.generated.ts',
|
|
|
31
32
|
if (mode === 'merged') {
|
|
32
33
|
// If mode is `merged`, `typeDefsFileMode` is also `merged` because there's no whitelisted or modules concepts
|
|
33
34
|
typeDefsFileMode = 'merged';
|
|
34
|
-
|
|
35
|
+
utils_1.logger.warn(`presetConfig.typeDefsFileMode has automatically been set to "merged" because presetConfig.mode is "merged"`);
|
|
35
36
|
}
|
|
36
37
|
if (typeDefsFileMode !== 'merged' &&
|
|
37
38
|
typeDefsFileMode !== 'modules' &&
|
|
@@ -81,7 +82,7 @@ const validatePresetConfig = ({ add, resolverTypesPath = './types.generated.ts',
|
|
|
81
82
|
tsMorphProjectOptions.tsConfigFilePath = absoluteTsConfigFilePath;
|
|
82
83
|
}
|
|
83
84
|
else {
|
|
84
|
-
|
|
85
|
+
utils_1.logger.warn(`Unable to find TypeScript config at ${absoluteTsConfigFilePath}. Use presetConfig.tsConfigFilePath to set a custom value. Otherwise, type analysis may not work correctly.`);
|
|
85
86
|
}
|
|
86
87
|
}
|
|
87
88
|
const validatedAdd = validateAddOption(add);
|
|
@@ -125,34 +126,45 @@ const validateTypesPluginsConfig = (config) => {
|
|
|
125
126
|
const parseResolverGeneration = (resolverGeneration) => {
|
|
126
127
|
if (resolverGeneration === 'all') {
|
|
127
128
|
return {
|
|
128
|
-
query:
|
|
129
|
-
mutation:
|
|
130
|
-
subscription:
|
|
131
|
-
scalar:
|
|
132
|
-
object:
|
|
133
|
-
union:
|
|
134
|
-
interface:
|
|
129
|
+
query: '*',
|
|
130
|
+
mutation: '*',
|
|
131
|
+
subscription: '*',
|
|
132
|
+
scalar: '*',
|
|
133
|
+
object: '*',
|
|
134
|
+
union: '*',
|
|
135
|
+
interface: '*',
|
|
135
136
|
};
|
|
136
137
|
}
|
|
137
138
|
else if (resolverGeneration === 'recommended') {
|
|
138
139
|
return {
|
|
139
|
-
query:
|
|
140
|
-
mutation:
|
|
141
|
-
subscription:
|
|
142
|
-
scalar:
|
|
143
|
-
object:
|
|
144
|
-
union:
|
|
145
|
-
interface:
|
|
140
|
+
query: '*',
|
|
141
|
+
mutation: '*',
|
|
142
|
+
subscription: '*',
|
|
143
|
+
scalar: '*',
|
|
144
|
+
object: '*',
|
|
145
|
+
union: '',
|
|
146
|
+
interface: '',
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
else if (resolverGeneration === 'disabled') {
|
|
150
|
+
return {
|
|
151
|
+
query: '',
|
|
152
|
+
mutation: '',
|
|
153
|
+
subscription: '',
|
|
154
|
+
scalar: '',
|
|
155
|
+
object: '',
|
|
156
|
+
union: '',
|
|
157
|
+
interface: '',
|
|
146
158
|
};
|
|
147
159
|
}
|
|
148
160
|
return {
|
|
149
|
-
query:
|
|
150
|
-
mutation:
|
|
151
|
-
subscription:
|
|
152
|
-
scalar:
|
|
153
|
-
object:
|
|
154
|
-
union:
|
|
155
|
-
interface:
|
|
161
|
+
query: resolverGeneration.query || '',
|
|
162
|
+
mutation: resolverGeneration.mutation || '',
|
|
163
|
+
subscription: resolverGeneration.subscription || '',
|
|
164
|
+
scalar: resolverGeneration.scalar || '',
|
|
165
|
+
object: resolverGeneration.object || '',
|
|
166
|
+
union: resolverGeneration.union || '',
|
|
167
|
+
interface: resolverGeneration.interface || '',
|
|
156
168
|
};
|
|
157
169
|
};
|
|
158
170
|
const validateAddOption = (add) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validatePresetConfig.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/validatePresetConfig/validatePresetConfig.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"validatePresetConfig.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/validatePresetConfig/validatePresetConfig.ts"],"names":[],"mappings":"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"}
|