@eddeee888/gcg-typescript-resolver-files 0.2.1 → 0.4.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 +191 -30
- package/package.json +5 -5
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.d.ts +8 -0
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.js +35 -0
- package/src/addVirtualTypesFileToTsMorphProject/addVirtualTypesFileToTsMorphProject.js.map +1 -0
- package/src/addVirtualTypesFileToTsMorphProject/index.d.ts +1 -0
- package/src/addVirtualTypesFileToTsMorphProject/index.js +5 -0
- package/src/addVirtualTypesFileToTsMorphProject/index.js.map +1 -0
- package/src/defineConfig.d.ts +5 -0
- package/src/defineConfig.js +19 -0
- package/src/defineConfig.js.map +1 -0
- package/src/generateResolverFiles/addExternalResolverImport.d.ts +1 -0
- package/src/generateResolverFiles/addExternalResolverImport.js +1 -0
- package/src/generateResolverFiles/addExternalResolverImport.js.map +1 -1
- package/src/generateResolverFiles/addResolverMainFile.d.ts +4 -1
- package/src/generateResolverFiles/addResolverMainFile.js +71 -50
- package/src/generateResolverFiles/addResolverMainFile.js.map +1 -1
- package/src/generateResolverFiles/ensureObjectTypeResolversAreGenerated.d.ts +6 -0
- package/src/generateResolverFiles/ensureObjectTypeResolversAreGenerated.js +80 -0
- package/src/generateResolverFiles/ensureObjectTypeResolversAreGenerated.js.map +1 -0
- package/src/generateResolverFiles/generateResolverFiles.js +3 -3
- package/src/generateResolverFiles/generateResolverFiles.js.map +1 -1
- package/src/generateResolverFiles/getVariableStatementWithExpectedIdentifier.d.ts +6 -0
- package/src/generateResolverFiles/getVariableStatementWithExpectedIdentifier.js +27 -0
- package/src/generateResolverFiles/getVariableStatementWithExpectedIdentifier.js.map +1 -0
- package/src/generateResolverFiles/handleGraphQLObjectType.js +6 -2
- package/src/generateResolverFiles/handleGraphQLObjectType.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLRootObjectTypeField.js +9 -2
- package/src/generateResolverFiles/handleGraphQLRootObjectTypeField.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLScalarType.js +2 -1
- package/src/generateResolverFiles/handleGraphQLScalarType.js.map +1 -1
- package/src/generateResolverFiles/handleGraphQLUninionType.js +2 -1
- package/src/generateResolverFiles/handleGraphQLUninionType.js.map +1 -1
- package/src/generateResolverFiles/postProcessFiles.d.ts +8 -0
- package/src/generateResolverFiles/postProcessFiles.js +73 -0
- package/src/generateResolverFiles/postProcessFiles.js.map +1 -0
- package/src/generateResolverFiles/types.d.ts +19 -3
- package/src/generateResolverFiles/visitNamedType.js +28 -11
- package/src/generateResolverFiles/visitNamedType.js.map +1 -1
- package/src/generateTypeDefsFiles/generateTypeDefsContent.js.map +1 -0
- package/src/generateTypeDefsFiles/generateTypeDefsFiles.d.ts +13 -0
- package/src/generateTypeDefsFiles/generateTypeDefsFiles.js +60 -0
- package/src/generateTypeDefsFiles/generateTypeDefsFiles.js.map +1 -0
- package/src/generateTypeDefsFiles/index.d.ts +1 -0
- package/src/{generateTypeDefsContent → generateTypeDefsFiles}/index.js +1 -1
- package/src/{generateTypeDefsContent → generateTypeDefsFiles}/index.js.map +1 -1
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.d.ts +11 -0
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.js +70 -0
- package/src/getGraphQLObjectTypeResolversToGenerate/getGraphQLObjectTypeResolversToGenerate.js.map +1 -0
- package/src/getGraphQLObjectTypeResolversToGenerate/index.d.ts +1 -0
- package/src/getGraphQLObjectTypeResolversToGenerate/index.js +5 -0
- package/src/getGraphQLObjectTypeResolversToGenerate/index.js.map +1 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +3 -1
- package/src/index.js.map +1 -1
- package/src/parseGraphQLSchema/index.d.ts +1 -0
- package/src/{getPluginsConfig → parseGraphQLSchema}/index.js +1 -1
- package/src/parseGraphQLSchema/index.js.map +1 -0
- package/src/parseGraphQLSchema/parseGraphQLSchema.d.ts +16 -0
- package/src/{getPluginsConfig/getPluginsConfig.js → parseGraphQLSchema/parseGraphQLSchema.js} +15 -10
- package/src/parseGraphQLSchema/parseGraphQLSchema.js.map +1 -0
- package/src/parseSources/parseSources.d.ts +0 -1
- package/src/parseSources/parseSources.js +2 -3
- package/src/parseSources/parseSources.js.map +1 -1
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.d.ts +3 -2
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js +51 -10
- package/src/parseTypeMappers/collectTypeMappersFromSourceFile.js.map +1 -1
- package/src/parseTypeMappers/parseTypeMappers.d.ts +7 -2
- package/src/parseTypeMappers/parseTypeMappers.js +10 -8
- package/src/parseTypeMappers/parseTypeMappers.js.map +1 -1
- package/src/preset.d.ts +2 -1
- package/src/preset.js +90 -44
- package/src/preset.js.map +1 -1
- package/src/utils/cwd.d.ts +4 -0
- package/src/utils/cwd.js +12 -0
- package/src/utils/cwd.js.map +1 -0
- package/src/utils/getNodePropertyMap.d.ts +9 -0
- package/src/utils/getNodePropertyMap.js +57 -0
- package/src/utils/getNodePropertyMap.js.map +1 -0
- package/src/utils/index.d.ts +5 -2
- package/src/utils/index.js +5 -16
- package/src/utils/index.js.map +1 -1
- package/src/utils/isRootObjectType.d.ts +1 -1
- package/src/utils/isWhitelistedModule.d.ts +5 -0
- package/src/utils/isWhitelistedModule.js +16 -0
- package/src/utils/isWhitelistedModule.js.map +1 -0
- package/src/utils/normalizeRelativePath.d.ts +1 -0
- package/src/utils/normalizeRelativePath.js +11 -0
- package/src/utils/normalizeRelativePath.js.map +1 -0
- package/src/utils/parseLocationForWhitelistedModule.js +7 -9
- package/src/utils/parseLocationForWhitelistedModule.js.map +1 -1
- package/src/utils/relativeModulePath.d.ts +1 -0
- package/src/utils/relativeModulePath.js +11 -0
- package/src/utils/relativeModulePath.js.map +1 -0
- package/src/validatePresetConfig/validatePresetConfig.d.ts +23 -4
- package/src/validatePresetConfig/validatePresetConfig.js +57 -17
- package/src/validatePresetConfig/validatePresetConfig.js.map +1 -1
- package/src/generateResolverFiles/fixExistingResolvers.d.ts +0 -2
- package/src/generateResolverFiles/fixExistingResolvers.js +0 -62
- package/src/generateResolverFiles/fixExistingResolvers.js.map +0 -1
- package/src/generateTypeDefsContent/generateTypeDefsContent.js.map +0 -1
- package/src/generateTypeDefsContent/index.d.ts +0 -1
- package/src/getPluginsConfig/getPluginsConfig.d.ts +0 -13
- package/src/getPluginsConfig/getPluginsConfig.js.map +0 -1
- package/src/getPluginsConfig/index.d.ts +0 -1
- package/src/getPluginsConfig/index.js.map +0 -1
- /package/src/{generateTypeDefsContent → generateTypeDefsFiles}/generateTypeDefsContent.d.ts +0 -0
- /package/src/{generateTypeDefsContent → generateTypeDefsFiles}/generateTypeDefsContent.js +0 -0
|
@@ -2,68 +2,108 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validatePresetConfig = void 0;
|
|
4
4
|
const path = require("path");
|
|
5
|
-
const
|
|
5
|
+
const fs = require("fs");
|
|
6
|
+
const preset_1 = require("../preset");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
6
8
|
const defaultResolverRelativeTargetDirMap = {
|
|
7
9
|
modules: 'resolvers',
|
|
8
10
|
merged: '',
|
|
9
11
|
};
|
|
10
12
|
const defaultTypeDefsFilePath = './typeDefs.generated.ts';
|
|
11
|
-
const validatePresetConfig = ({ resolverTypesPath = './types.generated.ts', resolverRelativeTargetDir, resolverMainFile = 'resolvers.generated.ts', typeDefsFilePath = defaultTypeDefsFilePath, mappersFileExtension = '.mappers.ts', mappersSuffix = 'Mapper', mode = 'modules', whitelistedModules, blacklistedModules, externalResolvers = {}, typesPluginsConfig = {}, }) => {
|
|
13
|
+
const validatePresetConfig = ({ resolverTypesPath = './types.generated.ts', resolverRelativeTargetDir, resolverMainFile = 'resolvers.generated.ts', resolverMainFileMode = 'merged', typeDefsFilePath = defaultTypeDefsFilePath, typeDefsFileMode: inputTypeDefsFileMode = 'merged', mappersFileExtension = '.mappers.ts', mappersSuffix = 'Mapper', mode = 'modules', whitelistedModules, blacklistedModules, externalResolvers = {}, typesPluginsConfig = {}, tsConfigFilePath = './tsconfig.json', fixObjectTypeResolvers = 'smart', }) => {
|
|
12
14
|
if (mode !== 'merged' && mode !== 'modules') {
|
|
13
|
-
throw new Error(
|
|
15
|
+
throw new Error(printError('presetConfig.mode must be "merged" or "modules" (default is "modules")', 'Validation'));
|
|
16
|
+
}
|
|
17
|
+
if (fixObjectTypeResolvers !== 'smart' &&
|
|
18
|
+
fixObjectTypeResolvers !== 'disabled') {
|
|
19
|
+
throw new Error(printError('presetConfig.fixObjectTypeResolvers must be "smart" or "disabled" (default is "smart")', 'Validation'));
|
|
20
|
+
}
|
|
21
|
+
if (resolverMainFileMode !== 'merged' && resolverMainFileMode !== 'modules') {
|
|
22
|
+
throw new Error(printError('presetConfig.resolverMainFileMode must be "merged" or "modules" (default is "merged")', 'Validation'));
|
|
23
|
+
}
|
|
24
|
+
let typeDefsFileMode = inputTypeDefsFileMode;
|
|
25
|
+
if (mode === 'merged') {
|
|
26
|
+
// If mode is `merged`, `typeDefsFileMode` is also `merged` because there's no whitelisted or modules concepts
|
|
27
|
+
typeDefsFileMode = 'merged';
|
|
28
|
+
console.warn(printWarning(`presetConfig.typeDefsFileMode has automatically been set to "merged" because presetConfig.mode is "merged"`));
|
|
29
|
+
}
|
|
30
|
+
if (typeDefsFileMode !== 'merged' &&
|
|
31
|
+
typeDefsFileMode !== 'modules' &&
|
|
32
|
+
typeDefsFileMode !== 'mergedWhitelisted') {
|
|
33
|
+
throw new Error(printError('presetConfig.typeDefsFileMode must be "merged", "mergedWhitelisted" or "modules" (default is "merged")', 'Validation'));
|
|
14
34
|
}
|
|
15
35
|
if (!resolverTypesPath) {
|
|
16
|
-
throw new Error(
|
|
36
|
+
throw new Error(printError('presetConfig.resolverTypesPath is required', 'Validation'));
|
|
17
37
|
}
|
|
18
38
|
const finalResolverRelativeTargetDir = resolverRelativeTargetDir === undefined
|
|
19
39
|
? defaultResolverRelativeTargetDirMap[mode]
|
|
20
40
|
: resolverRelativeTargetDir;
|
|
21
41
|
if (path.extname(resolverMainFile) === '') {
|
|
22
|
-
throw new Error(
|
|
42
|
+
throw new Error(printError('presetConfig.mainFile must be a valid file name', 'Validation'));
|
|
23
43
|
}
|
|
24
44
|
if (whitelistedModules) {
|
|
25
45
|
if (!Array.isArray(whitelistedModules)) {
|
|
26
|
-
throw new Error(
|
|
46
|
+
throw new Error(printError('presetConfig.whitelistedModules must be an array if provided', 'Validation'));
|
|
27
47
|
}
|
|
28
48
|
if (mode !== 'modules') {
|
|
29
|
-
throw new Error(
|
|
49
|
+
throw new Error(printError('presetConfig.whitelistedModules can only be used with presetConfig.mode == "modules"', 'Validation'));
|
|
30
50
|
}
|
|
31
51
|
}
|
|
32
52
|
if (blacklistedModules) {
|
|
33
53
|
if (!Array.isArray(blacklistedModules)) {
|
|
34
|
-
throw new Error(
|
|
54
|
+
throw new Error(printError('presetConfig.blacklistedModules must be an array if provided', 'Validation'));
|
|
35
55
|
}
|
|
36
56
|
if (mode !== 'modules') {
|
|
37
|
-
throw new Error(
|
|
57
|
+
throw new Error(printError('presetConfig.blacklistedModules can only be used with presetConfig.mode == "modules"', 'Validation'));
|
|
38
58
|
}
|
|
39
59
|
}
|
|
40
|
-
|
|
41
|
-
throw new Error('Invalid typescriptPluginConfig. Should not see this.');
|
|
42
|
-
}
|
|
60
|
+
const validatedTypesPluginsConfig = validateTypesPluginsConfig(typesPluginsConfig);
|
|
43
61
|
let finalTypeDefsFilePath = typeDefsFilePath;
|
|
44
62
|
if (finalTypeDefsFilePath === true) {
|
|
45
63
|
finalTypeDefsFilePath = defaultTypeDefsFilePath;
|
|
46
64
|
}
|
|
65
|
+
const tsMorphProjectOptions = {
|
|
66
|
+
skipAddingFilesFromTsConfig: true, // avoid long startup time by NOT loading files included by tsconfig.json. We only use this virtually anyways so we don't need all the files
|
|
67
|
+
};
|
|
68
|
+
if (tsConfigFilePath) {
|
|
69
|
+
const absoluteTsConfigFilePath = path.join((0, utils_1.cwd)(), tsConfigFilePath);
|
|
70
|
+
if (fs.existsSync(absoluteTsConfigFilePath)) {
|
|
71
|
+
tsMorphProjectOptions.tsConfigFilePath = absoluteTsConfigFilePath;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
console.warn(printWarning(`Unable to find TypeScript config at ${absoluteTsConfigFilePath}. Use presetConfig.tsConfigFilePath to set a custom value. Otherwise, type analysis may not work correctly.`));
|
|
75
|
+
}
|
|
76
|
+
}
|
|
47
77
|
return {
|
|
48
78
|
resolverTypesPath,
|
|
49
79
|
resolverRelativeTargetDir: finalResolverRelativeTargetDir,
|
|
50
80
|
resolverMainFile,
|
|
81
|
+
resolverMainFileMode,
|
|
51
82
|
typeDefsFilePath: finalTypeDefsFilePath,
|
|
83
|
+
typeDefsFileMode,
|
|
52
84
|
mode,
|
|
53
85
|
mappersFileExtension,
|
|
54
86
|
mappersSuffix,
|
|
55
87
|
whitelistedModules: whitelistedModules || [],
|
|
56
88
|
blacklistedModules: blacklistedModules || [],
|
|
57
89
|
externalResolvers,
|
|
58
|
-
typesPluginsConfig,
|
|
90
|
+
typesPluginsConfig: validatedTypesPluginsConfig,
|
|
91
|
+
tsMorphProjectOptions,
|
|
92
|
+
fixObjectTypeResolvers,
|
|
59
93
|
};
|
|
60
94
|
};
|
|
61
95
|
exports.validatePresetConfig = validatePresetConfig;
|
|
62
96
|
const validateTypesPluginsConfig = (config) => {
|
|
63
|
-
|
|
64
|
-
if (typeof
|
|
65
|
-
throw new Error(
|
|
97
|
+
const scalarsOption = config.scalars || {};
|
|
98
|
+
if (typeof scalarsOption === 'string') {
|
|
99
|
+
throw new Error(printError('presetConfig.typesPluginsConfig.scalars of type "string" is not supported', 'Validation'));
|
|
66
100
|
}
|
|
67
|
-
return
|
|
101
|
+
return Object.assign(Object.assign({}, config), { scalars: scalarsOption });
|
|
102
|
+
};
|
|
103
|
+
const printError = (input, type) => {
|
|
104
|
+
return `[${preset_1.presetName}] ERROR: ${type} - ${input}`;
|
|
105
|
+
};
|
|
106
|
+
const printWarning = (input) => {
|
|
107
|
+
return `[${preset_1.presetName}] WARN: ${input}`;
|
|
68
108
|
};
|
|
69
109
|
//# sourceMappingURL=validatePresetConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validatePresetConfig.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/validatePresetConfig/validatePresetConfig.ts"],"names":[],"mappings":";;;AAAA,6BAA6B;
|
|
1
|
+
{"version":3,"file":"validatePresetConfig.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/validatePresetConfig/validatePresetConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fixExistingResolvers = void 0;
|
|
4
|
-
const fs_1 = require("fs");
|
|
5
|
-
const ts_morph_1 = require("ts-morph");
|
|
6
|
-
const path = require("path");
|
|
7
|
-
const fixExistingResolvers = ({ result, }) => {
|
|
8
|
-
const existingResolverFiles = Object.entries(result.files).reduce((res, [filePath, file]) => {
|
|
9
|
-
if ((0, fs_1.existsSync)(filePath) && file.__filetype !== 'file') {
|
|
10
|
-
res[filePath] = file;
|
|
11
|
-
}
|
|
12
|
-
return res;
|
|
13
|
-
}, {});
|
|
14
|
-
const project = new ts_morph_1.Project();
|
|
15
|
-
project.addSourceFilesAtPaths(Object.keys(existingResolverFiles));
|
|
16
|
-
const sourceFiles = project.getSourceFiles();
|
|
17
|
-
sourceFiles.forEach((sourceFile) => {
|
|
18
|
-
const normalizedRelativePath = path.relative(process.cwd(), sourceFile.getFilePath());
|
|
19
|
-
const file = existingResolverFiles[normalizedRelativePath];
|
|
20
|
-
if (!file) {
|
|
21
|
-
throw new Error(`Unable to find resolver file: ${normalizedRelativePath}`);
|
|
22
|
-
}
|
|
23
|
-
// TODO: Check missing import
|
|
24
|
-
// ...
|
|
25
|
-
// Check expected identifier
|
|
26
|
-
let isExpectedIdentifierExportedInVariableStatement = false;
|
|
27
|
-
const variableStatementWithExpectedIdentifier = sourceFile.getVariableStatement((statement) => {
|
|
28
|
-
let hasExpectedIdentifier = false;
|
|
29
|
-
statement
|
|
30
|
-
.getDeclarationList()
|
|
31
|
-
.getDeclarations()
|
|
32
|
-
.forEach((declarationNode) => {
|
|
33
|
-
if (declarationNode.getName() === file.mainImportIdentifier) {
|
|
34
|
-
hasExpectedIdentifier = true;
|
|
35
|
-
if (statement.isExported()) {
|
|
36
|
-
isExpectedIdentifierExportedInVariableStatement = true;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
return hasExpectedIdentifier;
|
|
41
|
-
});
|
|
42
|
-
if (!variableStatementWithExpectedIdentifier) {
|
|
43
|
-
// Did not find variable statement with expected identifier, add it to the end with a warning
|
|
44
|
-
sourceFile.addStatements('/* WARNING: The following resolver was missing from this file. Make sure it is properly implemented or there could be runtime errors. */');
|
|
45
|
-
sourceFile.addStatements(file.meta.variableStatement);
|
|
46
|
-
}
|
|
47
|
-
else if (variableStatementWithExpectedIdentifier &&
|
|
48
|
-
!isExpectedIdentifierExportedInVariableStatement) {
|
|
49
|
-
// If has identifier but not exported
|
|
50
|
-
// Add export keyword to statement
|
|
51
|
-
const isExpectedIdentifierExported = Boolean(sourceFile.getExportedDeclarations().get(file.mainImportIdentifier));
|
|
52
|
-
if (!isExpectedIdentifierExported) {
|
|
53
|
-
variableStatementWithExpectedIdentifier.setIsExported(true);
|
|
54
|
-
}
|
|
55
|
-
// else, if identifier's been exported do nothing
|
|
56
|
-
}
|
|
57
|
-
// Overwrite existing files with fixes
|
|
58
|
-
result.files[normalizedRelativePath] = Object.assign(Object.assign({}, file), { content: sourceFile.getText() });
|
|
59
|
-
});
|
|
60
|
-
};
|
|
61
|
-
exports.fixExistingResolvers = fixExistingResolvers;
|
|
62
|
-
//# sourceMappingURL=fixExistingResolvers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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,MAAM,EAAE;YACtD,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,iBAAiB,CAAC,CAAC;SACvD;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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateTypeDefsContent.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/generateTypeDefsContent/generateTypeDefsContent.ts"],"names":[],"mappings":";;;AAAA,qCAAgC;AAMzB,MAAM,uBAAuB,GAAG,CAAC,EACtC,SAAS,GACqB,EAAU,EAAE;IAC1C,MAAM,YAAY,GAAG,IAAA,eAAK,EAAC,SAAS,CAAC,CAAC;IACtC,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAExD,OAAO;4BACmB,kBAAkB,6BAA6B,CAAC;AAC5E,CAAC,CAAC;AARW,QAAA,uBAAuB,2BAQlC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './generateTypeDefsContent';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { GraphQLSchema } from 'graphql';
|
|
2
|
-
import type { ParseSourcesResult } from '../parseSources';
|
|
3
|
-
import type { TypeMappersMap } from '../parseTypeMappers';
|
|
4
|
-
interface GetPluginsConfigParams {
|
|
5
|
-
schemaAst: GraphQLSchema;
|
|
6
|
-
sourceMap: ParseSourcesResult['sourceMap'];
|
|
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, sourceMap, typeMappersMap, whitelistedModules, blacklistedModules, }: GetPluginsConfigParams) => GetPluginsConfigResult;
|
|
13
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
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,SAAS,EACT,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,SAAS;YACT,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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './getPluginsConfig';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/typescript-resolver-files/src/getPluginsConfig/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC"}
|
|
File without changes
|
|
File without changes
|