@graphql-tools/import 6.2.4-alpha-dee550e0.0 → 6.2.5

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/index.cjs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../dist/import/src/index.js"],"sourcesContent":["/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs-extra';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nconst builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nconst builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nconst IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nconst IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd = process.cwd(), predefinedImports = {}) {\n const visitedFiles = new Map();\n const set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n const definitionSet = new Set();\n for (const defs of set.values()) {\n for (const def of defs) {\n definitionSet.add(def);\n }\n }\n return {\n kind: Kind.DOCUMENT,\n definitions: [...definitionSet],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n const fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n const importLines = [];\n let otherLines = '';\n for (const line of fileContent.split('\\n')) {\n const trimmedLine = line.trim();\n if (trimmedLine.startsWith('#import ') || trimmedLine.startsWith('# import ')) {\n importLines.push(trimmedLine);\n }\n else if (trimmedLine) {\n otherLines += line + '\\n';\n }\n }\n const definitionsByName = new Map();\n const dependenciesByDefinitionName = new Map();\n if (otherLines) {\n const fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n const document = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n for (const definition of document.definitions) {\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n const definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (definition.kind) {\n case Kind.OPERATION_DEFINITION:\n visitOperationDefinitionNode(definition, dependencySet);\n break;\n case Kind.FRAGMENT_DEFINITION:\n visitFragmentDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_DEFINITION:\n visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_DEFINITION:\n visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_DEFINITION:\n visitUnionTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_DEFINITION:\n visitEnumTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.DIRECTIVE_DEFINITION:\n visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_DEFINITION:\n visitScalarDefinitionNode(definition, dependencySet);\n break;\n case Kind.SCHEMA_DEFINITION:\n visitSchemaDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_EXTENSION:\n visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_EXTENSION:\n visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_EXTENSION:\n visitUnionTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_EXTENSION:\n visitEnumTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_EXTENSION:\n visitScalarExtensionNode(definition, dependencySet);\n break;\n }\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const definitionName = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add({\n ...definition,\n fields: [field],\n });\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n }\n }\n }\n }\n }\n for (const [definitionName, definitions] of definitionsByName) {\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n for (const definition of definitions) {\n definitionsWithDependencies.add(definition);\n }\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n const dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(dependencyDefinition => {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n }\n const allImportedDefinitionsMap = new Map();\n for (const line of importLines) {\n const { imports, from } = parseImportLine(line.replace('#', '').trim());\n const importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n for (const [importedDefinitionName, importedDefinitions] of importFileDefinitionMap) {\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n else {\n for (let importedDefinitionName of imports) {\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n const importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(`${importedDefinitionName} is not exported by ${from} imported by ${filePath}`);\n }\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap);\n }\n else {\n const fileDefinitionMap = visitedFiles.get(filePath);\n for (const [definitionName] of definitionsByName) {\n const addDefinition = (definition) => {\n definitionsWithDependencies.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const fieldName = field.name.value;\n const fieldDefinitionName = definition.name.value + '.' + fieldName;\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n if (!fileDefinitionMap.has(fieldDefinitionName)) {\n fileDefinitionMap.set(fieldDefinitionName, new Set());\n }\n const definitionsWithDeps = fileDefinitionMap.get(fieldDefinitionName);\n definitionsWithDeps.add(importedDefinition);\n });\n }\n }\n };\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n addDefinition(importedDefinition);\n });\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(`Couldn't find type ${dependencyName} in any of the schemas.`);\n }\n const dependencyDefinitionsFromImports = allImportedDefinitionsMap.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(dependencyDefinition => {\n addDefinition(dependencyDefinition);\n });\n }\n }\n }\n }\n return visitedFiles.get(filePath);\n}\nexport function parseImportLine(importLine) {\n if (IMPORT_FROM_REGEX.test(importLine)) {\n // Apply regex to import line\n // Extract matches into named variables\n const [, wildcard, importsString, , from] = importLine.match(IMPORT_FROM_REGEX);\n if (from) {\n // Extract imported types\n const imports = wildcard === '*' ? ['*'] : importsString.split(',').map(d => d.trim());\n // Return information about the import line\n return { imports, from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n const [, , from] = importLine.match(IMPORT_DEFAULT_REGEX);\n if (from) {\n return { imports: ['*'], from };\n }\n }\n throw new Error(`\n Import statement is not valid:\n > ${importLine}\n If you want to have comments starting with '# import', please use ''' instead!\n You can only have 'import' statements in the following pattern;\n # import [Type].[Field] from [File]\n `);\n}\nfunction resolveFilePath(filePath, importFrom) {\n const dirName = dirname(filePath);\n try {\n const fullPath = join(dirName, importFrom);\n return realpathSync(fullPath);\n }\n catch (e) {\n if (e.code === 'ENOENT') {\n return resolveFrom(dirName, importFrom);\n }\n }\n}\nfunction visitOperationDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitSelectionNode(node, dependencySet) {\n switch (node.kind) {\n case Kind.FIELD:\n visitFieldNode(node, dependencySet);\n break;\n case Kind.FRAGMENT_SPREAD:\n visitFragmentSpreadNode(node, dependencySet);\n break;\n case Kind.INLINE_FRAGMENT:\n visitInlineFragmentNode(node, dependencySet);\n break;\n }\n}\nfunction visitFieldNode(node, dependencySet) {\n var _a;\n (_a = node.selectionSet) === null || _a === void 0 ? void 0 : _a.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitDirectiveNode(node, dependencySet) {\n const directiveName = node.name.value;\n if (!builtinDirectives.includes(directiveName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitFieldDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n switch (node.kind) {\n case Kind.LIST_TYPE:\n visitListTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NON_NULL_TYPE:\n visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NAMED_TYPE:\n visitNamedTypeNode(node, dependencySet);\n break;\n }\n}\nfunction visitListTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNamedTypeNode(node, dependencySet) {\n const namedTypeName = node.name.value;\n if (!builtinTypes.includes(namedTypeName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitInputValueDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitDirectiveDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitInterfaceTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.operationTypes.forEach(operationTypeDefinitionNode => visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet));\n}\nfunction visitScalarDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitScalarExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":["join","Kind","isAbsolute","readFileSync","parse","Source","dirname","realpathSync"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../dist/import/src/index.js"],"sourcesContent":["/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nconst builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nconst builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nconst IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nconst IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd = process.cwd(), predefinedImports = {}) {\n const visitedFiles = new Map();\n const set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n const definitionSet = new Set();\n for (const defs of set.values()) {\n for (const def of defs) {\n definitionSet.add(def);\n }\n }\n return {\n kind: Kind.DOCUMENT,\n definitions: [...definitionSet],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n const fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n const importLines = [];\n let otherLines = '';\n for (const line of fileContent.split('\\n')) {\n const trimmedLine = line.trim();\n if (trimmedLine.startsWith('#import ') || trimmedLine.startsWith('# import ')) {\n importLines.push(trimmedLine);\n }\n else if (trimmedLine) {\n otherLines += line + '\\n';\n }\n }\n const definitionsByName = new Map();\n const dependenciesByDefinitionName = new Map();\n if (otherLines) {\n const fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n const document = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n for (const definition of document.definitions) {\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n const definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (definition.kind) {\n case Kind.OPERATION_DEFINITION:\n visitOperationDefinitionNode(definition, dependencySet);\n break;\n case Kind.FRAGMENT_DEFINITION:\n visitFragmentDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_DEFINITION:\n visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_DEFINITION:\n visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_DEFINITION:\n visitUnionTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_DEFINITION:\n visitEnumTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.DIRECTIVE_DEFINITION:\n visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_DEFINITION:\n visitScalarDefinitionNode(definition, dependencySet);\n break;\n case Kind.SCHEMA_DEFINITION:\n visitSchemaDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_EXTENSION:\n visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_EXTENSION:\n visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_EXTENSION:\n visitUnionTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_EXTENSION:\n visitEnumTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_EXTENSION:\n visitScalarExtensionNode(definition, dependencySet);\n break;\n }\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const definitionName = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add({\n ...definition,\n fields: [field],\n });\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n }\n }\n }\n }\n }\n for (const [definitionName, definitions] of definitionsByName) {\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n for (const definition of definitions) {\n definitionsWithDependencies.add(definition);\n }\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n const dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(dependencyDefinition => {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n }\n const allImportedDefinitionsMap = new Map();\n for (const line of importLines) {\n const { imports, from } = parseImportLine(line.replace('#', '').trim());\n const importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n for (const [importedDefinitionName, importedDefinitions] of importFileDefinitionMap) {\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n else {\n for (let importedDefinitionName of imports) {\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n const importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(`${importedDefinitionName} is not exported by ${from} imported by ${filePath}`);\n }\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap);\n }\n else {\n const fileDefinitionMap = visitedFiles.get(filePath);\n for (const [definitionName] of definitionsByName) {\n const addDefinition = (definition) => {\n definitionsWithDependencies.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const fieldName = field.name.value;\n const fieldDefinitionName = definition.name.value + '.' + fieldName;\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n if (!fileDefinitionMap.has(fieldDefinitionName)) {\n fileDefinitionMap.set(fieldDefinitionName, new Set());\n }\n const definitionsWithDeps = fileDefinitionMap.get(fieldDefinitionName);\n definitionsWithDeps.add(importedDefinition);\n });\n }\n }\n };\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n addDefinition(importedDefinition);\n });\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(`Couldn't find type ${dependencyName} in any of the schemas.`);\n }\n const dependencyDefinitionsFromImports = allImportedDefinitionsMap.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(dependencyDefinition => {\n addDefinition(dependencyDefinition);\n });\n }\n }\n }\n }\n return visitedFiles.get(filePath);\n}\nexport function parseImportLine(importLine) {\n if (IMPORT_FROM_REGEX.test(importLine)) {\n // Apply regex to import line\n // Extract matches into named variables\n const [, wildcard, importsString, , from] = importLine.match(IMPORT_FROM_REGEX);\n if (from) {\n // Extract imported types\n const imports = wildcard === '*' ? ['*'] : importsString.split(',').map(d => d.trim());\n // Return information about the import line\n return { imports, from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n const [, , from] = importLine.match(IMPORT_DEFAULT_REGEX);\n if (from) {\n return { imports: ['*'], from };\n }\n }\n throw new Error(`\n Import statement is not valid:\n > ${importLine}\n If you want to have comments starting with '# import', please use ''' instead!\n You can only have 'import' statements in the following pattern;\n # import [Type].[Field] from [File]\n `);\n}\nfunction resolveFilePath(filePath, importFrom) {\n const dirName = dirname(filePath);\n try {\n const fullPath = join(dirName, importFrom);\n return realpathSync(fullPath);\n }\n catch (e) {\n if (e.code === 'ENOENT') {\n return resolveFrom(dirName, importFrom);\n }\n }\n}\nfunction visitOperationDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitSelectionNode(node, dependencySet) {\n switch (node.kind) {\n case Kind.FIELD:\n visitFieldNode(node, dependencySet);\n break;\n case Kind.FRAGMENT_SPREAD:\n visitFragmentSpreadNode(node, dependencySet);\n break;\n case Kind.INLINE_FRAGMENT:\n visitInlineFragmentNode(node, dependencySet);\n break;\n }\n}\nfunction visitFieldNode(node, dependencySet) {\n var _a;\n (_a = node.selectionSet) === null || _a === void 0 ? void 0 : _a.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitDirectiveNode(node, dependencySet) {\n const directiveName = node.name.value;\n if (!builtinDirectives.includes(directiveName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitFieldDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n switch (node.kind) {\n case Kind.LIST_TYPE:\n visitListTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NON_NULL_TYPE:\n visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NAMED_TYPE:\n visitNamedTypeNode(node, dependencySet);\n break;\n }\n}\nfunction visitListTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNamedTypeNode(node, dependencySet) {\n const namedTypeName = node.name.value;\n if (!builtinTypes.includes(namedTypeName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitInputValueDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitDirectiveDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitInterfaceTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.operationTypes.forEach(operationTypeDefinitionNode => visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet));\n}\nfunction visitScalarDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitScalarExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":["join","Kind","isAbsolute","readFileSync","parse","Source","dirname","realpathSync"],"mappings":"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"}
package/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Kind, parse, Source } from 'graphql';
2
- import { readFileSync, realpathSync } from 'fs-extra';
2
+ import { readFileSync, realpathSync } from 'fs';
3
3
  import { join, isAbsolute, dirname } from 'path';
4
4
  import resolveFrom from 'resolve-from';
5
5
 
package/index.esm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../../dist/import/src/index.js"],"sourcesContent":["/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs-extra';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nconst builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nconst builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nconst IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nconst IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd = process.cwd(), predefinedImports = {}) {\n const visitedFiles = new Map();\n const set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n const definitionSet = new Set();\n for (const defs of set.values()) {\n for (const def of defs) {\n definitionSet.add(def);\n }\n }\n return {\n kind: Kind.DOCUMENT,\n definitions: [...definitionSet],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n const fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n const importLines = [];\n let otherLines = '';\n for (const line of fileContent.split('\\n')) {\n const trimmedLine = line.trim();\n if (trimmedLine.startsWith('#import ') || trimmedLine.startsWith('# import ')) {\n importLines.push(trimmedLine);\n }\n else if (trimmedLine) {\n otherLines += line + '\\n';\n }\n }\n const definitionsByName = new Map();\n const dependenciesByDefinitionName = new Map();\n if (otherLines) {\n const fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n const document = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n for (const definition of document.definitions) {\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n const definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (definition.kind) {\n case Kind.OPERATION_DEFINITION:\n visitOperationDefinitionNode(definition, dependencySet);\n break;\n case Kind.FRAGMENT_DEFINITION:\n visitFragmentDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_DEFINITION:\n visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_DEFINITION:\n visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_DEFINITION:\n visitUnionTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_DEFINITION:\n visitEnumTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.DIRECTIVE_DEFINITION:\n visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_DEFINITION:\n visitScalarDefinitionNode(definition, dependencySet);\n break;\n case Kind.SCHEMA_DEFINITION:\n visitSchemaDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_EXTENSION:\n visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_EXTENSION:\n visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_EXTENSION:\n visitUnionTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_EXTENSION:\n visitEnumTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_EXTENSION:\n visitScalarExtensionNode(definition, dependencySet);\n break;\n }\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const definitionName = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add({\n ...definition,\n fields: [field],\n });\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n }\n }\n }\n }\n }\n for (const [definitionName, definitions] of definitionsByName) {\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n for (const definition of definitions) {\n definitionsWithDependencies.add(definition);\n }\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n const dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(dependencyDefinition => {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n }\n const allImportedDefinitionsMap = new Map();\n for (const line of importLines) {\n const { imports, from } = parseImportLine(line.replace('#', '').trim());\n const importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n for (const [importedDefinitionName, importedDefinitions] of importFileDefinitionMap) {\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n else {\n for (let importedDefinitionName of imports) {\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n const importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(`${importedDefinitionName} is not exported by ${from} imported by ${filePath}`);\n }\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap);\n }\n else {\n const fileDefinitionMap = visitedFiles.get(filePath);\n for (const [definitionName] of definitionsByName) {\n const addDefinition = (definition) => {\n definitionsWithDependencies.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const fieldName = field.name.value;\n const fieldDefinitionName = definition.name.value + '.' + fieldName;\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n if (!fileDefinitionMap.has(fieldDefinitionName)) {\n fileDefinitionMap.set(fieldDefinitionName, new Set());\n }\n const definitionsWithDeps = fileDefinitionMap.get(fieldDefinitionName);\n definitionsWithDeps.add(importedDefinition);\n });\n }\n }\n };\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n addDefinition(importedDefinition);\n });\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(`Couldn't find type ${dependencyName} in any of the schemas.`);\n }\n const dependencyDefinitionsFromImports = allImportedDefinitionsMap.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(dependencyDefinition => {\n addDefinition(dependencyDefinition);\n });\n }\n }\n }\n }\n return visitedFiles.get(filePath);\n}\nexport function parseImportLine(importLine) {\n if (IMPORT_FROM_REGEX.test(importLine)) {\n // Apply regex to import line\n // Extract matches into named variables\n const [, wildcard, importsString, , from] = importLine.match(IMPORT_FROM_REGEX);\n if (from) {\n // Extract imported types\n const imports = wildcard === '*' ? ['*'] : importsString.split(',').map(d => d.trim());\n // Return information about the import line\n return { imports, from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n const [, , from] = importLine.match(IMPORT_DEFAULT_REGEX);\n if (from) {\n return { imports: ['*'], from };\n }\n }\n throw new Error(`\n Import statement is not valid:\n > ${importLine}\n If you want to have comments starting with '# import', please use ''' instead!\n You can only have 'import' statements in the following pattern;\n # import [Type].[Field] from [File]\n `);\n}\nfunction resolveFilePath(filePath, importFrom) {\n const dirName = dirname(filePath);\n try {\n const fullPath = join(dirName, importFrom);\n return realpathSync(fullPath);\n }\n catch (e) {\n if (e.code === 'ENOENT') {\n return resolveFrom(dirName, importFrom);\n }\n }\n}\nfunction visitOperationDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitSelectionNode(node, dependencySet) {\n switch (node.kind) {\n case Kind.FIELD:\n visitFieldNode(node, dependencySet);\n break;\n case Kind.FRAGMENT_SPREAD:\n visitFragmentSpreadNode(node, dependencySet);\n break;\n case Kind.INLINE_FRAGMENT:\n visitInlineFragmentNode(node, dependencySet);\n break;\n }\n}\nfunction visitFieldNode(node, dependencySet) {\n var _a;\n (_a = node.selectionSet) === null || _a === void 0 ? void 0 : _a.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitDirectiveNode(node, dependencySet) {\n const directiveName = node.name.value;\n if (!builtinDirectives.includes(directiveName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitFieldDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n switch (node.kind) {\n case Kind.LIST_TYPE:\n visitListTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NON_NULL_TYPE:\n visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NAMED_TYPE:\n visitNamedTypeNode(node, dependencySet);\n break;\n }\n}\nfunction visitListTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNamedTypeNode(node, dependencySet) {\n const namedTypeName = node.name.value;\n if (!builtinTypes.includes(namedTypeName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitInputValueDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitDirectiveDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitInterfaceTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.operationTypes.forEach(operationTypeDefinitionNode => visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet));\n}\nfunction visitScalarDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitScalarExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../../dist/import/src/index.js"],"sourcesContent":["/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nconst builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nconst builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nconst IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nconst IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd = process.cwd(), predefinedImports = {}) {\n const visitedFiles = new Map();\n const set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n const definitionSet = new Set();\n for (const defs of set.values()) {\n for (const def of defs) {\n definitionSet.add(def);\n }\n }\n return {\n kind: Kind.DOCUMENT,\n definitions: [...definitionSet],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n const fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n const importLines = [];\n let otherLines = '';\n for (const line of fileContent.split('\\n')) {\n const trimmedLine = line.trim();\n if (trimmedLine.startsWith('#import ') || trimmedLine.startsWith('# import ')) {\n importLines.push(trimmedLine);\n }\n else if (trimmedLine) {\n otherLines += line + '\\n';\n }\n }\n const definitionsByName = new Map();\n const dependenciesByDefinitionName = new Map();\n if (otherLines) {\n const fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n const document = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n for (const definition of document.definitions) {\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n const definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (definition.kind) {\n case Kind.OPERATION_DEFINITION:\n visitOperationDefinitionNode(definition, dependencySet);\n break;\n case Kind.FRAGMENT_DEFINITION:\n visitFragmentDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_DEFINITION:\n visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_DEFINITION:\n visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_DEFINITION:\n visitUnionTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_DEFINITION:\n visitEnumTypeDefinitionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.DIRECTIVE_DEFINITION:\n visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_DEFINITION:\n visitScalarDefinitionNode(definition, dependencySet);\n break;\n case Kind.SCHEMA_DEFINITION:\n visitSchemaDefinitionNode(definition, dependencySet);\n break;\n case Kind.OBJECT_TYPE_EXTENSION:\n visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INTERFACE_TYPE_EXTENSION:\n visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.UNION_TYPE_EXTENSION:\n visitUnionTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.ENUM_TYPE_EXTENSION:\n visitEnumTypeExtensionNode(definition, dependencySet);\n break;\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.SCALAR_TYPE_EXTENSION:\n visitScalarExtensionNode(definition, dependencySet);\n break;\n }\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const definitionName = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n const definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add({\n ...definition,\n fields: [field],\n });\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n const dependencySet = dependenciesByDefinitionName.get(definitionName);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet, dependenciesByDefinitionName);\n break;\n }\n }\n }\n }\n }\n for (const [definitionName, definitions] of definitionsByName) {\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n for (const definition of definitions) {\n definitionsWithDependencies.add(definition);\n }\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n const dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(dependencyDefinition => {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n }\n const allImportedDefinitionsMap = new Map();\n for (const line of importLines) {\n const { imports, from } = parseImportLine(line.replace('#', '').trim());\n const importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n for (const [importedDefinitionName, importedDefinitions] of importFileDefinitionMap) {\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n else {\n for (let importedDefinitionName of imports) {\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n const [importedDefinitionTypeName] = importedDefinitionName.split('.');\n if (!allImportedDefinitionsMap.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap.set(importedDefinitionTypeName, new Set());\n }\n const allImportedDefinitions = allImportedDefinitionsMap.get(importedDefinitionTypeName);\n const importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(`${importedDefinitionName} is not exported by ${from} imported by ${filePath}`);\n }\n for (const importedDefinition of importedDefinitions) {\n allImportedDefinitions.add(importedDefinition);\n }\n }\n }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap);\n }\n else {\n const fileDefinitionMap = visitedFiles.get(filePath);\n for (const [definitionName] of definitionsByName) {\n const addDefinition = (definition) => {\n definitionsWithDependencies.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n for (const field of definition.fields) {\n const fieldName = field.name.value;\n const fieldDefinitionName = definition.name.value + '.' + fieldName;\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n if (!fileDefinitionMap.has(fieldDefinitionName)) {\n fileDefinitionMap.set(fieldDefinitionName, new Set());\n }\n const definitionsWithDeps = fileDefinitionMap.get(fieldDefinitionName);\n definitionsWithDeps.add(importedDefinition);\n });\n }\n }\n };\n const definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n const allImportedDefinitions = allImportedDefinitionsMap.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(importedDefinition => {\n addDefinition(importedDefinition);\n });\n const dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n for (const dependencyName of dependenciesOfDefinition) {\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(`Couldn't find type ${dependencyName} in any of the schemas.`);\n }\n const dependencyDefinitionsFromImports = allImportedDefinitionsMap.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(dependencyDefinition => {\n addDefinition(dependencyDefinition);\n });\n }\n }\n }\n }\n return visitedFiles.get(filePath);\n}\nexport function parseImportLine(importLine) {\n if (IMPORT_FROM_REGEX.test(importLine)) {\n // Apply regex to import line\n // Extract matches into named variables\n const [, wildcard, importsString, , from] = importLine.match(IMPORT_FROM_REGEX);\n if (from) {\n // Extract imported types\n const imports = wildcard === '*' ? ['*'] : importsString.split(',').map(d => d.trim());\n // Return information about the import line\n return { imports, from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n const [, , from] = importLine.match(IMPORT_DEFAULT_REGEX);\n if (from) {\n return { imports: ['*'], from };\n }\n }\n throw new Error(`\n Import statement is not valid:\n > ${importLine}\n If you want to have comments starting with '# import', please use ''' instead!\n You can only have 'import' statements in the following pattern;\n # import [Type].[Field] from [File]\n `);\n}\nfunction resolveFilePath(filePath, importFrom) {\n const dirName = dirname(filePath);\n try {\n const fullPath = join(dirName, importFrom);\n return realpathSync(fullPath);\n }\n catch (e) {\n if (e.code === 'ENOENT') {\n return resolveFrom(dirName, importFrom);\n }\n }\n}\nfunction visitOperationDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitSelectionNode(node, dependencySet) {\n switch (node.kind) {\n case Kind.FIELD:\n visitFieldNode(node, dependencySet);\n break;\n case Kind.FRAGMENT_SPREAD:\n visitFragmentSpreadNode(node, dependencySet);\n break;\n case Kind.INLINE_FRAGMENT:\n visitInlineFragmentNode(node, dependencySet);\n break;\n }\n}\nfunction visitFieldNode(node, dependencySet) {\n var _a;\n (_a = node.selectionSet) === null || _a === void 0 ? void 0 : _a.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(selectionNode => visitSelectionNode(selectionNode, dependencySet));\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitDirectiveNode(node, dependencySet) {\n const directiveName = node.name.value;\n if (!builtinDirectives.includes(directiveName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitFieldDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n switch (node.kind) {\n case Kind.LIST_TYPE:\n visitListTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NON_NULL_TYPE:\n visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName);\n break;\n case Kind.NAMED_TYPE:\n visitNamedTypeNode(node, dependencySet);\n break;\n }\n}\nfunction visitListTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNonNullTypeNode(node, dependencySet, dependenciesByDefinitionName) {\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitNamedTypeNode(node, dependencySet) {\n const namedTypeName = node.name.value;\n if (!builtinTypes.includes(namedTypeName)) {\n dependencySet.add(node.name.value);\n }\n}\nfunction visitInputValueDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitDirectiveDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.arguments) === null || _a === void 0 ? void 0 : _a.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(namedTypeNode => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitInterfaceTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n const typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(fieldDefinitionNode => visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName));\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach((namedTypeNode) => {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n const interfaceName = namedTypeNode.name.value;\n // interface should be dependent to the type as well\n if (!dependenciesByDefinitionName.has(interfaceName)) {\n dependenciesByDefinitionName.set(interfaceName, new Set());\n }\n dependenciesByDefinitionName.get(interfaceName).add(typeName);\n });\n}\nfunction visitUnionTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.types.forEach(namedTypeNode => visitNamedTypeNode(namedTypeNode, dependencySet));\n}\nfunction visitEnumTypeExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitInputObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(inputValueDefinitionNode => visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName));\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n node.operationTypes.forEach(operationTypeDefinitionNode => visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet));\n}\nfunction visitScalarDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitScalarExtensionNode(node, dependencySet) {\n var _a;\n dependencySet.add(node.name.value);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(directiveNode => visitDirectiveNode(directiveNode, dependencySet));\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@graphql-tools/import",
3
- "version": "6.2.4-alpha-dee550e0.0",
3
+ "version": "6.2.5",
4
4
  "description": "A set of utils for faster development of GraphQL tools",
5
5
  "sideEffects": false,
6
6
  "peerDependencies": {
7
7
  "graphql": "^14.0.0 || ^15.0.0"
8
8
  },
9
9
  "dependencies": {
10
- "fs-extra": "9.0.1",
11
10
  "resolve-from": "5.0.0",
12
11
  "tslib": "~2.0.1"
13
12
  },
@@ -19,8 +18,5 @@
19
18
  "typings": "index.d.ts",
20
19
  "typescript": {
21
20
  "definition": "index.d.ts"
22
- },
23
- "publishConfig": {
24
- "access": "public"
25
21
  }
26
- }
22
+ }