@graphql-tools/import 6.3.0 → 6.3.1

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/es5/index.cjs.js CHANGED
@@ -100,7 +100,7 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
100
100
  finally { if (e_3) throw e_3.error; }
101
101
  }
102
102
  var definitionsByName = new Map();
103
- var dependenciesByDefinitionName = new Map();
103
+ var dependenciesByDefinitionName_1 = new Map();
104
104
  if (otherLines) {
105
105
  var fileDefinitionMap = new Map();
106
106
  // To prevent circular dependency
@@ -118,10 +118,10 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
118
118
  }
119
119
  var definitionsSet = definitionsByName.get(definitionName);
120
120
  definitionsSet.add(definition);
121
- if (!dependenciesByDefinitionName.has(definitionName)) {
122
- dependenciesByDefinitionName.set(definitionName, new Set());
121
+ if (!dependenciesByDefinitionName_1.has(definitionName)) {
122
+ dependenciesByDefinitionName_1.set(definitionName, new Set());
123
123
  }
124
- var dependencySet = dependenciesByDefinitionName.get(definitionName);
124
+ var dependencySet = dependenciesByDefinitionName_1.get(definitionName);
125
125
  switch (definition.kind) {
126
126
  case graphql.Kind.OPERATION_DEFINITION:
127
127
  visitOperationDefinitionNode(definition, dependencySet);
@@ -130,10 +130,10 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
130
130
  visitFragmentDefinitionNode(definition, dependencySet);
131
131
  break;
132
132
  case graphql.Kind.OBJECT_TYPE_DEFINITION:
133
- visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);
133
+ visitObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);
134
134
  break;
135
135
  case graphql.Kind.INTERFACE_TYPE_DEFINITION:
136
- visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);
136
+ visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);
137
137
  break;
138
138
  case graphql.Kind.UNION_TYPE_DEFINITION:
139
139
  visitUnionTypeDefinitionNode(definition, dependencySet);
@@ -142,10 +142,10 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
142
142
  visitEnumTypeDefinitionNode(definition, dependencySet);
143
143
  break;
144
144
  case graphql.Kind.INPUT_OBJECT_TYPE_DEFINITION:
145
- visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);
145
+ visitInputObjectTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);
146
146
  break;
147
147
  case graphql.Kind.DIRECTIVE_DEFINITION:
148
- visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName);
148
+ visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);
149
149
  break;
150
150
  case graphql.Kind.SCALAR_TYPE_DEFINITION:
151
151
  visitScalarDefinitionNode(definition, dependencySet);
@@ -154,10 +154,10 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
154
154
  visitSchemaDefinitionNode(definition, dependencySet);
155
155
  break;
156
156
  case graphql.Kind.OBJECT_TYPE_EXTENSION:
157
- visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);
157
+ visitObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName_1);
158
158
  break;
159
159
  case graphql.Kind.INTERFACE_TYPE_EXTENSION:
160
- visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);
160
+ visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName_1);
161
161
  break;
162
162
  case graphql.Kind.UNION_TYPE_EXTENSION:
163
163
  visitUnionTypeExtensionNode(definition, dependencySet);
@@ -166,7 +166,7 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
166
166
  visitEnumTypeExtensionNode(definition, dependencySet);
167
167
  break;
168
168
  case graphql.Kind.INPUT_OBJECT_TYPE_EXTENSION:
169
- visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName);
169
+ visitInputObjectTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName_1);
170
170
  break;
171
171
  case graphql.Kind.SCALAR_TYPE_EXTENSION:
172
172
  visitScalarExtensionNode(definition, dependencySet);
@@ -182,16 +182,16 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
182
182
  }
183
183
  var definitionsSet_1 = definitionsByName.get(definitionName_1);
184
184
  definitionsSet_1.add(tslib.__assign(tslib.__assign({}, definition), { fields: [field] }));
185
- if (!dependenciesByDefinitionName.has(definitionName_1)) {
186
- dependenciesByDefinitionName.set(definitionName_1, new Set());
185
+ if (!dependenciesByDefinitionName_1.has(definitionName_1)) {
186
+ dependenciesByDefinitionName_1.set(definitionName_1, new Set());
187
187
  }
188
- var dependencySet_1 = dependenciesByDefinitionName.get(definitionName_1);
188
+ var dependencySet_1 = dependenciesByDefinitionName_1.get(definitionName_1);
189
189
  switch (field.kind) {
190
190
  case graphql.Kind.FIELD_DEFINITION:
191
- visitFieldDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName);
191
+ visitFieldDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName_1);
192
192
  break;
193
193
  case graphql.Kind.INPUT_VALUE_DEFINITION:
194
- visitInputValueDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName);
194
+ visitInputValueDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName_1);
195
195
  break;
196
196
  }
197
197
  }
@@ -233,7 +233,7 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
233
233
  }
234
234
  finally { if (e_13) throw e_13.error; }
235
235
  }
236
- var dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);
236
+ var dependenciesOfDefinition = dependenciesByDefinitionName_1.get(definitionName);
237
237
  try {
238
238
  for (var dependenciesOfDefinition_1 = (e_14 = void 0, tslib.__values(dependenciesOfDefinition)), dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next(); !dependenciesOfDefinition_1_1.done; dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next()) {
239
239
  var dependencyName = dependenciesOfDefinition_1_1.value;
@@ -357,48 +357,65 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
357
357
  }
358
358
  else {
359
359
  var fileDefinitionMap_1 = visitedFiles.get(filePath);
360
- var _loop_2 = function (definitionName) {
361
- var e_15, _0;
362
- var addDefinition = function (definition) {
363
- var e_16, _a;
364
- definitionsWithDependencies.add(definition);
360
+ var addDefinition_1 = function (definition, definitionName, definitionSet) {
361
+ var e_15, _a;
362
+ if (!definitionSet.has(definition)) {
363
+ definitionSet.add(definition);
365
364
  // Regenerate field exports if some fields are imported after visitor
366
365
  if ('fields' in definition) {
367
366
  var _loop_3 = function (field) {
368
367
  var fieldName = field.name.value;
369
368
  var fieldDefinitionName = definition.name.value + '.' + fieldName;
370
- var allImportedDefinitions_1 = allImportedDefinitionsMap_1.get(definitionName);
371
- allImportedDefinitions_1 === null || allImportedDefinitions_1 === void 0 ? void 0 : allImportedDefinitions_1.forEach(function (importedDefinition) {
369
+ var allImportedDefinitions = allImportedDefinitionsMap_1.get(definitionName);
370
+ allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(function (importedDefinition) {
372
371
  if (!fileDefinitionMap_1.has(fieldDefinitionName)) {
373
372
  fileDefinitionMap_1.set(fieldDefinitionName, new Set());
374
373
  }
375
374
  var definitionsWithDeps = fileDefinitionMap_1.get(fieldDefinitionName);
376
- definitionsWithDeps.add(importedDefinition);
375
+ addDefinition_1(importedDefinition, fieldDefinitionName, definitionsWithDeps);
376
+ });
377
+ var newDependencySet = new Set();
378
+ switch (field.kind) {
379
+ case graphql.Kind.FIELD_DEFINITION:
380
+ visitFieldDefinitionNode(field, newDependencySet);
381
+ break;
382
+ case graphql.Kind.INPUT_VALUE_DEFINITION:
383
+ visitInputValueDefinitionNode(field, newDependencySet);
384
+ break;
385
+ }
386
+ newDependencySet.forEach(function (dependencyName) {
387
+ var definitionsInCurrentFile = fileDefinitionMap_1.get(dependencyName);
388
+ definitionsInCurrentFile === null || definitionsInCurrentFile === void 0 ? void 0 : definitionsInCurrentFile.forEach(function (def) { return addDefinition_1(def, definitionName, definitionSet); });
389
+ var definitionsFromImports = allImportedDefinitionsMap_1.get(dependencyName);
390
+ definitionsFromImports === null || definitionsFromImports === void 0 ? void 0 : definitionsFromImports.forEach(function (def) { return addDefinition_1(def, definitionName, definitionSet); });
377
391
  });
378
392
  };
379
393
  try {
380
- for (var _b = (e_16 = void 0, tslib.__values(definition.fields)), _c = _b.next(); !_c.done; _c = _b.next()) {
394
+ for (var _b = tslib.__values(definition.fields), _c = _b.next(); !_c.done; _c = _b.next()) {
381
395
  var field = _c.value;
382
396
  _loop_3(field);
383
397
  }
384
398
  }
385
- catch (e_16_1) { e_16 = { error: e_16_1 }; }
399
+ catch (e_15_1) { e_15 = { error: e_15_1 }; }
386
400
  finally {
387
401
  try {
388
402
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
389
403
  }
390
- finally { if (e_16) throw e_16.error; }
404
+ finally { if (e_15) throw e_15.error; }
391
405
  }
392
406
  }
393
- };
407
+ }
408
+ };
409
+ var _loop_2 = function (definitionName) {
410
+ var e_16, _0;
394
411
  var definitionsWithDependencies = fileDefinitionMap_1.get(definitionName);
395
412
  var allImportedDefinitions = allImportedDefinitionsMap_1.get(definitionName);
396
413
  allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(function (importedDefinition) {
397
- addDefinition(importedDefinition);
414
+ addDefinition_1(importedDefinition, definitionName, definitionsWithDependencies);
398
415
  });
399
- var dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);
416
+ var dependenciesOfDefinition = dependenciesByDefinitionName_1.get(definitionName);
400
417
  try {
401
- for (var dependenciesOfDefinition_2 = (e_15 = void 0, tslib.__values(dependenciesOfDefinition)), dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next(); !dependenciesOfDefinition_2_1.done; dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next()) {
418
+ for (var dependenciesOfDefinition_2 = (e_16 = void 0, tslib.__values(dependenciesOfDefinition)), dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next(); !dependenciesOfDefinition_2_1.done; dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next()) {
402
419
  var dependencyName = dependenciesOfDefinition_2_1.value;
403
420
  // If that dependency cannot be found both in imports and this file, throw an error
404
421
  if (!allImportedDefinitionsMap_1.has(dependencyName) && !definitionsByName.has(dependencyName)) {
@@ -406,16 +423,16 @@ function visitFile(filePath, cwd, visitedFiles, predefinedImports) {
406
423
  }
407
424
  var dependencyDefinitionsFromImports = allImportedDefinitionsMap_1.get(dependencyName);
408
425
  dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(function (dependencyDefinition) {
409
- addDefinition(dependencyDefinition);
426
+ addDefinition_1(dependencyDefinition, definitionName, definitionsWithDependencies);
410
427
  });
411
428
  }
412
429
  }
413
- catch (e_15_1) { e_15 = { error: e_15_1 }; }
430
+ catch (e_16_1) { e_16 = { error: e_16_1 }; }
414
431
  finally {
415
432
  try {
416
433
  if (dependenciesOfDefinition_2_1 && !dependenciesOfDefinition_2_1.done && (_0 = dependenciesOfDefinition_2.return)) _0.call(dependenciesOfDefinition_2);
417
434
  }
418
- finally { if (e_15) throw e_15.error; }
435
+ finally { if (e_16) throw e_16.error; }
419
436
  }
420
437
  };
421
438
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../../dist-es5/import/src/index.js"],"sourcesContent":["import { __assign, __read, __values } from \"tslib\";\n/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, print, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nimport { cwd as cwdFactory } from 'process';\nvar builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nvar builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nvar IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nvar IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd, predefinedImports, visitedFiles) {\n var e_1, _a, e_2, _b;\n if (cwd === void 0) { cwd = cwdFactory(); }\n if (predefinedImports === void 0) { predefinedImports = {}; }\n if (visitedFiles === void 0) { visitedFiles = new Map(); }\n var set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n var definitionStrSet = new Set();\n var definitionsStr = '';\n try {\n for (var _c = __values(set.values()), _d = _c.next(); !_d.done; _d = _c.next()) {\n var defs = _d.value;\n try {\n for (var defs_1 = (e_2 = void 0, __values(defs)), defs_1_1 = defs_1.next(); !defs_1_1.done; defs_1_1 = defs_1.next()) {\n var def = defs_1_1.value;\n var defStr = print(def);\n if (!definitionStrSet.has(defStr)) {\n definitionStrSet.add(defStr);\n definitionsStr += defStr + '\\n';\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (defs_1_1 && !defs_1_1.done && (_b = defs_1.return)) _b.call(defs_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return (definitionsStr === null || definitionsStr === void 0 ? void 0 : definitionsStr.length)\n ? parse(new Source(definitionsStr, filePath))\n : {\n kind: Kind.DOCUMENT,\n definitions: [],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n var e_3, _a, e_4, _b, e_5, _c, e_6, _d, e_7, _e, e_8, _f, e_9, _g, e_10, _h, e_11, _j, e_12, _k;\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n var fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n var importLines = [];\n var otherLines = '';\n try {\n for (var _l = __values(fileContent.split('\\n')), _m = _l.next(); !_m.done; _m = _l.next()) {\n var line = _m.value;\n var 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 }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_m && !_m.done && (_a = _l.return)) _a.call(_l);\n }\n finally { if (e_3) throw e_3.error; }\n }\n var definitionsByName = new Map();\n var dependenciesByDefinitionName = new Map();\n if (otherLines) {\n var fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n var document_1 = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n try {\n for (var _o = __values(document_1.definitions), _p = _o.next(); !_p.done; _p = _o.next()) {\n var definition = _p.value;\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n var definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n var definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName.has(definitionName)) {\n dependenciesByDefinitionName.set(definitionName, new Set());\n }\n var 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 try {\n for (var _q = (e_5 = void 0, __values(definition.fields)), _r = _q.next(); !_r.done; _r = _q.next()) {\n var field = _r.value;\n var definitionName_1 = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName_1)) {\n definitionsByName.set(definitionName_1, new Set());\n }\n var definitionsSet_1 = definitionsByName.get(definitionName_1);\n definitionsSet_1.add(__assign(__assign({}, definition), { fields: [field] }));\n if (!dependenciesByDefinitionName.has(definitionName_1)) {\n dependenciesByDefinitionName.set(definitionName_1, new Set());\n }\n var dependencySet_1 = dependenciesByDefinitionName.get(definitionName_1);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName);\n break;\n }\n }\n }\n catch (e_5_1) { e_5 = { error: e_5_1 }; }\n finally {\n try {\n if (_r && !_r.done && (_c = _q.return)) _c.call(_q);\n }\n finally { if (e_5) throw e_5.error; }\n }\n }\n }\n }\n }\n catch (e_4_1) { e_4 = { error: e_4_1 }; }\n finally {\n try {\n if (_p && !_p.done && (_b = _o.return)) _b.call(_o);\n }\n finally { if (e_4) throw e_4.error; }\n }\n var _loop_1 = function (definitionName, definitions) {\n var e_13, _y, e_14, _z;\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n var definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n try {\n for (var definitions_1 = (e_13 = void 0, __values(definitions)), definitions_1_1 = definitions_1.next(); !definitions_1_1.done; definitions_1_1 = definitions_1.next()) {\n var definition = definitions_1_1.value;\n definitionsWithDependencies.add(definition);\n }\n }\n catch (e_13_1) { e_13 = { error: e_13_1 }; }\n finally {\n try {\n if (definitions_1_1 && !definitions_1_1.done && (_y = definitions_1.return)) _y.call(definitions_1);\n }\n finally { if (e_13) throw e_13.error; }\n }\n var dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n try {\n for (var dependenciesOfDefinition_1 = (e_14 = void 0, __values(dependenciesOfDefinition)), dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next(); !dependenciesOfDefinition_1_1.done; dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next()) {\n var dependencyName = dependenciesOfDefinition_1_1.value;\n var dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(function (dependencyDefinition) {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n catch (e_14_1) { e_14 = { error: e_14_1 }; }\n finally {\n try {\n if (dependenciesOfDefinition_1_1 && !dependenciesOfDefinition_1_1.done && (_z = dependenciesOfDefinition_1.return)) _z.call(dependenciesOfDefinition_1);\n }\n finally { if (e_14) throw e_14.error; }\n }\n };\n try {\n for (var definitionsByName_1 = __values(definitionsByName), definitionsByName_1_1 = definitionsByName_1.next(); !definitionsByName_1_1.done; definitionsByName_1_1 = definitionsByName_1.next()) {\n var _s = __read(definitionsByName_1_1.value, 2), definitionName = _s[0], definitions = _s[1];\n _loop_1(definitionName, definitions);\n }\n }\n catch (e_6_1) { e_6 = { error: e_6_1 }; }\n finally {\n try {\n if (definitionsByName_1_1 && !definitionsByName_1_1.done && (_d = definitionsByName_1.return)) _d.call(definitionsByName_1);\n }\n finally { if (e_6) throw e_6.error; }\n }\n }\n var allImportedDefinitionsMap_1 = new Map();\n try {\n for (var importLines_1 = __values(importLines), importLines_1_1 = importLines_1.next(); !importLines_1_1.done; importLines_1_1 = importLines_1.next()) {\n var line = importLines_1_1.value;\n var _t = parseImportLine(line.replace('#', '').trim()), imports = _t.imports, from = _t.from;\n var importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n try {\n for (var importFileDefinitionMap_1 = (e_8 = void 0, __values(importFileDefinitionMap)), importFileDefinitionMap_1_1 = importFileDefinitionMap_1.next(); !importFileDefinitionMap_1_1.done; importFileDefinitionMap_1_1 = importFileDefinitionMap_1.next()) {\n var _u = __read(importFileDefinitionMap_1_1.value, 2), importedDefinitionName = _u[0], importedDefinitions = _u[1];\n var _v = __read(importedDefinitionName.split('.'), 1), importedDefinitionTypeName = _v[0];\n if (!allImportedDefinitionsMap_1.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap_1.set(importedDefinitionTypeName, new Set());\n }\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(importedDefinitionTypeName);\n try {\n for (var importedDefinitions_1 = (e_9 = void 0, __values(importedDefinitions)), importedDefinitions_1_1 = importedDefinitions_1.next(); !importedDefinitions_1_1.done; importedDefinitions_1_1 = importedDefinitions_1.next()) {\n var importedDefinition = importedDefinitions_1_1.value;\n allImportedDefinitions.add(importedDefinition);\n }\n }\n catch (e_9_1) { e_9 = { error: e_9_1 }; }\n finally {\n try {\n if (importedDefinitions_1_1 && !importedDefinitions_1_1.done && (_g = importedDefinitions_1.return)) _g.call(importedDefinitions_1);\n }\n finally { if (e_9) throw e_9.error; }\n }\n }\n }\n catch (e_8_1) { e_8 = { error: e_8_1 }; }\n finally {\n try {\n if (importFileDefinitionMap_1_1 && !importFileDefinitionMap_1_1.done && (_f = importFileDefinitionMap_1.return)) _f.call(importFileDefinitionMap_1);\n }\n finally { if (e_8) throw e_8.error; }\n }\n }\n else {\n try {\n for (var imports_1 = (e_10 = void 0, __values(imports)), imports_1_1 = imports_1.next(); !imports_1_1.done; imports_1_1 = imports_1.next()) {\n var importedDefinitionName = imports_1_1.value;\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n var _w = __read(importedDefinitionName.split('.'), 1), importedDefinitionTypeName = _w[0];\n if (!allImportedDefinitionsMap_1.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap_1.set(importedDefinitionTypeName, new Set());\n }\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(importedDefinitionTypeName);\n var importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(importedDefinitionName + \" is not exported by \" + from + \" imported by \" + filePath);\n }\n try {\n for (var importedDefinitions_2 = (e_11 = void 0, __values(importedDefinitions)), importedDefinitions_2_1 = importedDefinitions_2.next(); !importedDefinitions_2_1.done; importedDefinitions_2_1 = importedDefinitions_2.next()) {\n var importedDefinition = importedDefinitions_2_1.value;\n allImportedDefinitions.add(importedDefinition);\n }\n }\n catch (e_11_1) { e_11 = { error: e_11_1 }; }\n finally {\n try {\n if (importedDefinitions_2_1 && !importedDefinitions_2_1.done && (_j = importedDefinitions_2.return)) _j.call(importedDefinitions_2);\n }\n finally { if (e_11) throw e_11.error; }\n }\n }\n }\n catch (e_10_1) { e_10 = { error: e_10_1 }; }\n finally {\n try {\n if (imports_1_1 && !imports_1_1.done && (_h = imports_1.return)) _h.call(imports_1);\n }\n finally { if (e_10) throw e_10.error; }\n }\n }\n }\n }\n catch (e_7_1) { e_7 = { error: e_7_1 }; }\n finally {\n try {\n if (importLines_1_1 && !importLines_1_1.done && (_e = importLines_1.return)) _e.call(importLines_1);\n }\n finally { if (e_7) throw e_7.error; }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap_1);\n }\n else {\n var fileDefinitionMap_1 = visitedFiles.get(filePath);\n var _loop_2 = function (definitionName) {\n var e_15, _0;\n var addDefinition = function (definition) {\n var e_16, _a;\n definitionsWithDependencies.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n var _loop_3 = function (field) {\n var fieldName = field.name.value;\n var fieldDefinitionName = definition.name.value + '.' + fieldName;\n var allImportedDefinitions_1 = allImportedDefinitionsMap_1.get(definitionName);\n allImportedDefinitions_1 === null || allImportedDefinitions_1 === void 0 ? void 0 : allImportedDefinitions_1.forEach(function (importedDefinition) {\n if (!fileDefinitionMap_1.has(fieldDefinitionName)) {\n fileDefinitionMap_1.set(fieldDefinitionName, new Set());\n }\n var definitionsWithDeps = fileDefinitionMap_1.get(fieldDefinitionName);\n definitionsWithDeps.add(importedDefinition);\n });\n };\n try {\n for (var _b = (e_16 = void 0, __values(definition.fields)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var field = _c.value;\n _loop_3(field);\n }\n }\n catch (e_16_1) { e_16 = { error: e_16_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_16) throw e_16.error; }\n }\n }\n };\n var definitionsWithDependencies = fileDefinitionMap_1.get(definitionName);\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(function (importedDefinition) {\n addDefinition(importedDefinition);\n });\n var dependenciesOfDefinition = dependenciesByDefinitionName.get(definitionName);\n try {\n for (var dependenciesOfDefinition_2 = (e_15 = void 0, __values(dependenciesOfDefinition)), dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next(); !dependenciesOfDefinition_2_1.done; dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next()) {\n var dependencyName = dependenciesOfDefinition_2_1.value;\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap_1.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(\"Couldn't find type \" + dependencyName + \" in any of the schemas.\");\n }\n var dependencyDefinitionsFromImports = allImportedDefinitionsMap_1.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(function (dependencyDefinition) {\n addDefinition(dependencyDefinition);\n });\n }\n }\n catch (e_15_1) { e_15 = { error: e_15_1 }; }\n finally {\n try {\n if (dependenciesOfDefinition_2_1 && !dependenciesOfDefinition_2_1.done && (_0 = dependenciesOfDefinition_2.return)) _0.call(dependenciesOfDefinition_2);\n }\n finally { if (e_15) throw e_15.error; }\n }\n };\n try {\n for (var definitionsByName_2 = __values(definitionsByName), definitionsByName_2_1 = definitionsByName_2.next(); !definitionsByName_2_1.done; definitionsByName_2_1 = definitionsByName_2.next()) {\n var _x = __read(definitionsByName_2_1.value, 1), definitionName = _x[0];\n _loop_2(definitionName);\n }\n }\n catch (e_12_1) { e_12 = { error: e_12_1 }; }\n finally {\n try {\n if (definitionsByName_2_1 && !definitionsByName_2_1.done && (_k = definitionsByName_2.return)) _k.call(definitionsByName_2);\n }\n finally { if (e_12) throw e_12.error; }\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 var _a = __read(importLine.match(IMPORT_FROM_REGEX), 5), wildcard = _a[1], importsString = _a[2], from = _a[4];\n if (from) {\n // Extract imported types\n var imports = wildcard === '*' ? ['*'] : importsString.split(',').map(function (d) { return d.trim(); });\n // Return information about the import line\n return { imports: imports, from: from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n var _b = __read(importLine.match(IMPORT_DEFAULT_REGEX), 3), from = _b[2];\n if (from) {\n return { imports: ['*'], from: 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 var dirName = dirname(filePath);\n try {\n var 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(function (selectionNode) { return 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(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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 var 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(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(function (directiveNode) { return 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 var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.types.forEach(function (namedTypeNode) { return 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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\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(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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 var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.types.forEach(function (namedTypeNode) { return 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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.operationTypes.forEach(function (operationTypeDefinitionNode) {\n return visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet);\n });\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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":["cwdFactory","join","__values","print","parse","Source","Kind","isAbsolute","readFileSync","__assign","__read","dirname","realpathSync"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../../dist-es5/import/src/index.js"],"sourcesContent":["import { __assign, __read, __values } from \"tslib\";\n/* eslint-disable no-unused-expressions */\nimport { Source, parse, Kind, print, } from 'graphql';\nimport { readFileSync, realpathSync } from 'fs';\nimport { dirname, join, isAbsolute } from 'path';\nimport resolveFrom from 'resolve-from';\nimport { cwd as cwdFactory } from 'process';\nvar builtinTypes = ['String', 'Float', 'Int', 'Boolean', 'ID', 'Upload'];\nvar builtinDirectives = [\n 'deprecated',\n 'skip',\n 'include',\n 'cacheControl',\n 'key',\n 'external',\n 'requires',\n 'provides',\n 'connection',\n 'client',\n 'specifiedBy',\n];\nvar IMPORT_FROM_REGEX = /^import\\s+(\\*|(.*))\\s+from\\s+('|\")(.*)('|\");?$/;\nvar IMPORT_DEFAULT_REGEX = /^import\\s+('|\")(.*)('|\");?$/;\nexport function processImport(filePath, cwd, predefinedImports, visitedFiles) {\n var e_1, _a, e_2, _b;\n if (cwd === void 0) { cwd = cwdFactory(); }\n if (predefinedImports === void 0) { predefinedImports = {}; }\n if (visitedFiles === void 0) { visitedFiles = new Map(); }\n var set = visitFile(filePath, join(cwd + '/root.graphql'), visitedFiles, predefinedImports);\n var definitionStrSet = new Set();\n var definitionsStr = '';\n try {\n for (var _c = __values(set.values()), _d = _c.next(); !_d.done; _d = _c.next()) {\n var defs = _d.value;\n try {\n for (var defs_1 = (e_2 = void 0, __values(defs)), defs_1_1 = defs_1.next(); !defs_1_1.done; defs_1_1 = defs_1.next()) {\n var def = defs_1_1.value;\n var defStr = print(def);\n if (!definitionStrSet.has(defStr)) {\n definitionStrSet.add(defStr);\n definitionsStr += defStr + '\\n';\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (defs_1_1 && !defs_1_1.done && (_b = defs_1.return)) _b.call(defs_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return (definitionsStr === null || definitionsStr === void 0 ? void 0 : definitionsStr.length)\n ? parse(new Source(definitionsStr, filePath))\n : {\n kind: Kind.DOCUMENT,\n definitions: [],\n };\n}\nfunction visitFile(filePath, cwd, visitedFiles, predefinedImports) {\n var e_3, _a, e_4, _b, e_5, _c, e_6, _d, e_7, _e, e_8, _f, e_9, _g, e_10, _h, e_11, _j, e_12, _k;\n if (!isAbsolute(filePath) && !(filePath in predefinedImports)) {\n filePath = resolveFilePath(cwd, filePath);\n }\n if (!visitedFiles.has(filePath)) {\n var fileContent = filePath in predefinedImports ? predefinedImports[filePath] : readFileSync(filePath, 'utf8');\n var importLines = [];\n var otherLines = '';\n try {\n for (var _l = __values(fileContent.split('\\n')), _m = _l.next(); !_m.done; _m = _l.next()) {\n var line = _m.value;\n var 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 }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_m && !_m.done && (_a = _l.return)) _a.call(_l);\n }\n finally { if (e_3) throw e_3.error; }\n }\n var definitionsByName = new Map();\n var dependenciesByDefinitionName_1 = new Map();\n if (otherLines) {\n var fileDefinitionMap = new Map();\n // To prevent circular dependency\n visitedFiles.set(filePath, fileDefinitionMap);\n var document_1 = parse(new Source(otherLines, filePath), {\n noLocation: true,\n });\n try {\n for (var _o = __values(document_1.definitions), _p = _o.next(); !_p.done; _p = _o.next()) {\n var definition = _p.value;\n if ('name' in definition || definition.kind === Kind.SCHEMA_DEFINITION) {\n var definitionName = 'name' in definition ? definition.name.value : 'schema';\n if (!definitionsByName.has(definitionName)) {\n definitionsByName.set(definitionName, new Set());\n }\n var definitionsSet = definitionsByName.get(definitionName);\n definitionsSet.add(definition);\n if (!dependenciesByDefinitionName_1.has(definitionName)) {\n dependenciesByDefinitionName_1.set(definitionName, new Set());\n }\n var dependencySet = dependenciesByDefinitionName_1.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_1);\n break;\n case Kind.INTERFACE_TYPE_DEFINITION:\n visitInterfaceTypeDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);\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_1);\n break;\n case Kind.DIRECTIVE_DEFINITION:\n visitDirectiveDefinitionNode(definition, dependencySet, dependenciesByDefinitionName_1);\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_1);\n break;\n case Kind.INTERFACE_TYPE_EXTENSION:\n visitInterfaceTypeExtensionNode(definition, dependencySet, dependenciesByDefinitionName_1);\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_1);\n break;\n case Kind.SCALAR_TYPE_EXTENSION:\n visitScalarExtensionNode(definition, dependencySet);\n break;\n }\n if ('fields' in definition) {\n try {\n for (var _q = (e_5 = void 0, __values(definition.fields)), _r = _q.next(); !_r.done; _r = _q.next()) {\n var field = _r.value;\n var definitionName_1 = definition.name.value + '.' + field.name.value;\n if (!definitionsByName.has(definitionName_1)) {\n definitionsByName.set(definitionName_1, new Set());\n }\n var definitionsSet_1 = definitionsByName.get(definitionName_1);\n definitionsSet_1.add(__assign(__assign({}, definition), { fields: [field] }));\n if (!dependenciesByDefinitionName_1.has(definitionName_1)) {\n dependenciesByDefinitionName_1.set(definitionName_1, new Set());\n }\n var dependencySet_1 = dependenciesByDefinitionName_1.get(definitionName_1);\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName_1);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, dependencySet_1, dependenciesByDefinitionName_1);\n break;\n }\n }\n }\n catch (e_5_1) { e_5 = { error: e_5_1 }; }\n finally {\n try {\n if (_r && !_r.done && (_c = _q.return)) _c.call(_q);\n }\n finally { if (e_5) throw e_5.error; }\n }\n }\n }\n }\n }\n catch (e_4_1) { e_4 = { error: e_4_1 }; }\n finally {\n try {\n if (_p && !_p.done && (_b = _o.return)) _b.call(_o);\n }\n finally { if (e_4) throw e_4.error; }\n }\n var _loop_1 = function (definitionName, definitions) {\n var e_13, _y, e_14, _z;\n if (!fileDefinitionMap.has(definitionName)) {\n fileDefinitionMap.set(definitionName, new Set());\n }\n var definitionsWithDependencies = fileDefinitionMap.get(definitionName);\n try {\n for (var definitions_1 = (e_13 = void 0, __values(definitions)), definitions_1_1 = definitions_1.next(); !definitions_1_1.done; definitions_1_1 = definitions_1.next()) {\n var definition = definitions_1_1.value;\n definitionsWithDependencies.add(definition);\n }\n }\n catch (e_13_1) { e_13 = { error: e_13_1 }; }\n finally {\n try {\n if (definitions_1_1 && !definitions_1_1.done && (_y = definitions_1.return)) _y.call(definitions_1);\n }\n finally { if (e_13) throw e_13.error; }\n }\n var dependenciesOfDefinition = dependenciesByDefinitionName_1.get(definitionName);\n try {\n for (var dependenciesOfDefinition_1 = (e_14 = void 0, __values(dependenciesOfDefinition)), dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next(); !dependenciesOfDefinition_1_1.done; dependenciesOfDefinition_1_1 = dependenciesOfDefinition_1.next()) {\n var dependencyName = dependenciesOfDefinition_1_1.value;\n var dependencyDefinitions = definitionsByName.get(dependencyName);\n dependencyDefinitions === null || dependencyDefinitions === void 0 ? void 0 : dependencyDefinitions.forEach(function (dependencyDefinition) {\n definitionsWithDependencies.add(dependencyDefinition);\n });\n }\n }\n catch (e_14_1) { e_14 = { error: e_14_1 }; }\n finally {\n try {\n if (dependenciesOfDefinition_1_1 && !dependenciesOfDefinition_1_1.done && (_z = dependenciesOfDefinition_1.return)) _z.call(dependenciesOfDefinition_1);\n }\n finally { if (e_14) throw e_14.error; }\n }\n };\n try {\n for (var definitionsByName_1 = __values(definitionsByName), definitionsByName_1_1 = definitionsByName_1.next(); !definitionsByName_1_1.done; definitionsByName_1_1 = definitionsByName_1.next()) {\n var _s = __read(definitionsByName_1_1.value, 2), definitionName = _s[0], definitions = _s[1];\n _loop_1(definitionName, definitions);\n }\n }\n catch (e_6_1) { e_6 = { error: e_6_1 }; }\n finally {\n try {\n if (definitionsByName_1_1 && !definitionsByName_1_1.done && (_d = definitionsByName_1.return)) _d.call(definitionsByName_1);\n }\n finally { if (e_6) throw e_6.error; }\n }\n }\n var allImportedDefinitionsMap_1 = new Map();\n try {\n for (var importLines_1 = __values(importLines), importLines_1_1 = importLines_1.next(); !importLines_1_1.done; importLines_1_1 = importLines_1.next()) {\n var line = importLines_1_1.value;\n var _t = parseImportLine(line.replace('#', '').trim()), imports = _t.imports, from = _t.from;\n var importFileDefinitionMap = visitFile(from, filePath, visitedFiles, predefinedImports);\n if (imports.includes('*')) {\n try {\n for (var importFileDefinitionMap_1 = (e_8 = void 0, __values(importFileDefinitionMap)), importFileDefinitionMap_1_1 = importFileDefinitionMap_1.next(); !importFileDefinitionMap_1_1.done; importFileDefinitionMap_1_1 = importFileDefinitionMap_1.next()) {\n var _u = __read(importFileDefinitionMap_1_1.value, 2), importedDefinitionName = _u[0], importedDefinitions = _u[1];\n var _v = __read(importedDefinitionName.split('.'), 1), importedDefinitionTypeName = _v[0];\n if (!allImportedDefinitionsMap_1.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap_1.set(importedDefinitionTypeName, new Set());\n }\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(importedDefinitionTypeName);\n try {\n for (var importedDefinitions_1 = (e_9 = void 0, __values(importedDefinitions)), importedDefinitions_1_1 = importedDefinitions_1.next(); !importedDefinitions_1_1.done; importedDefinitions_1_1 = importedDefinitions_1.next()) {\n var importedDefinition = importedDefinitions_1_1.value;\n allImportedDefinitions.add(importedDefinition);\n }\n }\n catch (e_9_1) { e_9 = { error: e_9_1 }; }\n finally {\n try {\n if (importedDefinitions_1_1 && !importedDefinitions_1_1.done && (_g = importedDefinitions_1.return)) _g.call(importedDefinitions_1);\n }\n finally { if (e_9) throw e_9.error; }\n }\n }\n }\n catch (e_8_1) { e_8 = { error: e_8_1 }; }\n finally {\n try {\n if (importFileDefinitionMap_1_1 && !importFileDefinitionMap_1_1.done && (_f = importFileDefinitionMap_1.return)) _f.call(importFileDefinitionMap_1);\n }\n finally { if (e_8) throw e_8.error; }\n }\n }\n else {\n try {\n for (var imports_1 = (e_10 = void 0, __values(imports)), imports_1_1 = imports_1.next(); !imports_1_1.done; imports_1_1 = imports_1.next()) {\n var importedDefinitionName = imports_1_1.value;\n if (importedDefinitionName.endsWith('.*')) {\n // Adding whole type means the same thing with adding every single field\n importedDefinitionName = importedDefinitionName.replace('.*', '');\n }\n var _w = __read(importedDefinitionName.split('.'), 1), importedDefinitionTypeName = _w[0];\n if (!allImportedDefinitionsMap_1.has(importedDefinitionTypeName)) {\n allImportedDefinitionsMap_1.set(importedDefinitionTypeName, new Set());\n }\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(importedDefinitionTypeName);\n var importedDefinitions = importFileDefinitionMap.get(importedDefinitionName);\n if (!importedDefinitions) {\n throw new Error(importedDefinitionName + \" is not exported by \" + from + \" imported by \" + filePath);\n }\n try {\n for (var importedDefinitions_2 = (e_11 = void 0, __values(importedDefinitions)), importedDefinitions_2_1 = importedDefinitions_2.next(); !importedDefinitions_2_1.done; importedDefinitions_2_1 = importedDefinitions_2.next()) {\n var importedDefinition = importedDefinitions_2_1.value;\n allImportedDefinitions.add(importedDefinition);\n }\n }\n catch (e_11_1) { e_11 = { error: e_11_1 }; }\n finally {\n try {\n if (importedDefinitions_2_1 && !importedDefinitions_2_1.done && (_j = importedDefinitions_2.return)) _j.call(importedDefinitions_2);\n }\n finally { if (e_11) throw e_11.error; }\n }\n }\n }\n catch (e_10_1) { e_10 = { error: e_10_1 }; }\n finally {\n try {\n if (imports_1_1 && !imports_1_1.done && (_h = imports_1.return)) _h.call(imports_1);\n }\n finally { if (e_10) throw e_10.error; }\n }\n }\n }\n }\n catch (e_7_1) { e_7 = { error: e_7_1 }; }\n finally {\n try {\n if (importLines_1_1 && !importLines_1_1.done && (_e = importLines_1.return)) _e.call(importLines_1);\n }\n finally { if (e_7) throw e_7.error; }\n }\n if (!otherLines) {\n visitedFiles.set(filePath, allImportedDefinitionsMap_1);\n }\n else {\n var fileDefinitionMap_1 = visitedFiles.get(filePath);\n var addDefinition_1 = function (definition, definitionName, definitionSet) {\n var e_15, _a;\n if (!definitionSet.has(definition)) {\n definitionSet.add(definition);\n // Regenerate field exports if some fields are imported after visitor\n if ('fields' in definition) {\n var _loop_3 = function (field) {\n var fieldName = field.name.value;\n var fieldDefinitionName = definition.name.value + '.' + fieldName;\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(function (importedDefinition) {\n if (!fileDefinitionMap_1.has(fieldDefinitionName)) {\n fileDefinitionMap_1.set(fieldDefinitionName, new Set());\n }\n var definitionsWithDeps = fileDefinitionMap_1.get(fieldDefinitionName);\n addDefinition_1(importedDefinition, fieldDefinitionName, definitionsWithDeps);\n });\n var newDependencySet = new Set();\n switch (field.kind) {\n case Kind.FIELD_DEFINITION:\n visitFieldDefinitionNode(field, newDependencySet, dependenciesByDefinitionName_1);\n break;\n case Kind.INPUT_VALUE_DEFINITION:\n visitInputValueDefinitionNode(field, newDependencySet, dependenciesByDefinitionName_1);\n break;\n }\n newDependencySet.forEach(function (dependencyName) {\n var definitionsInCurrentFile = fileDefinitionMap_1.get(dependencyName);\n definitionsInCurrentFile === null || definitionsInCurrentFile === void 0 ? void 0 : definitionsInCurrentFile.forEach(function (def) { return addDefinition_1(def, definitionName, definitionSet); });\n var definitionsFromImports = allImportedDefinitionsMap_1.get(dependencyName);\n definitionsFromImports === null || definitionsFromImports === void 0 ? void 0 : definitionsFromImports.forEach(function (def) { return addDefinition_1(def, definitionName, definitionSet); });\n });\n };\n try {\n for (var _b = __values(definition.fields), _c = _b.next(); !_c.done; _c = _b.next()) {\n var field = _c.value;\n _loop_3(field);\n }\n }\n catch (e_15_1) { e_15 = { error: e_15_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_15) throw e_15.error; }\n }\n }\n }\n };\n var _loop_2 = function (definitionName) {\n var e_16, _0;\n var definitionsWithDependencies = fileDefinitionMap_1.get(definitionName);\n var allImportedDefinitions = allImportedDefinitionsMap_1.get(definitionName);\n allImportedDefinitions === null || allImportedDefinitions === void 0 ? void 0 : allImportedDefinitions.forEach(function (importedDefinition) {\n addDefinition_1(importedDefinition, definitionName, definitionsWithDependencies);\n });\n var dependenciesOfDefinition = dependenciesByDefinitionName_1.get(definitionName);\n try {\n for (var dependenciesOfDefinition_2 = (e_16 = void 0, __values(dependenciesOfDefinition)), dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next(); !dependenciesOfDefinition_2_1.done; dependenciesOfDefinition_2_1 = dependenciesOfDefinition_2.next()) {\n var dependencyName = dependenciesOfDefinition_2_1.value;\n // If that dependency cannot be found both in imports and this file, throw an error\n if (!allImportedDefinitionsMap_1.has(dependencyName) && !definitionsByName.has(dependencyName)) {\n throw new Error(\"Couldn't find type \" + dependencyName + \" in any of the schemas.\");\n }\n var dependencyDefinitionsFromImports = allImportedDefinitionsMap_1.get(dependencyName);\n dependencyDefinitionsFromImports === null || dependencyDefinitionsFromImports === void 0 ? void 0 : dependencyDefinitionsFromImports.forEach(function (dependencyDefinition) {\n addDefinition_1(dependencyDefinition, definitionName, definitionsWithDependencies);\n });\n }\n }\n catch (e_16_1) { e_16 = { error: e_16_1 }; }\n finally {\n try {\n if (dependenciesOfDefinition_2_1 && !dependenciesOfDefinition_2_1.done && (_0 = dependenciesOfDefinition_2.return)) _0.call(dependenciesOfDefinition_2);\n }\n finally { if (e_16) throw e_16.error; }\n }\n };\n try {\n for (var definitionsByName_2 = __values(definitionsByName), definitionsByName_2_1 = definitionsByName_2.next(); !definitionsByName_2_1.done; definitionsByName_2_1 = definitionsByName_2.next()) {\n var _x = __read(definitionsByName_2_1.value, 1), definitionName = _x[0];\n _loop_2(definitionName);\n }\n }\n catch (e_12_1) { e_12 = { error: e_12_1 }; }\n finally {\n try {\n if (definitionsByName_2_1 && !definitionsByName_2_1.done && (_k = definitionsByName_2.return)) _k.call(definitionsByName_2);\n }\n finally { if (e_12) throw e_12.error; }\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 var _a = __read(importLine.match(IMPORT_FROM_REGEX), 5), wildcard = _a[1], importsString = _a[2], from = _a[4];\n if (from) {\n // Extract imported types\n var imports = wildcard === '*' ? ['*'] : importsString.split(',').map(function (d) { return d.trim(); });\n // Return information about the import line\n return { imports: imports, from: from };\n }\n }\n else if (IMPORT_DEFAULT_REGEX.test(importLine)) {\n var _b = __read(importLine.match(IMPORT_DEFAULT_REGEX), 3), from = _b[2];\n if (from) {\n return { imports: ['*'], from: 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 var dirName = dirname(filePath);\n try {\n var 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(function (selectionNode) { return 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(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitFragmentSpreadNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n}\nfunction visitInlineFragmentNode(node, dependencySet) {\n node.selectionSet.selections.forEach(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitFragmentDefinitionNode(node, dependencySet) {\n dependencySet.add(node.name.value);\n node.selectionSet.selections.forEach(function (selectionNode) { return visitSelectionNode(selectionNode, dependencySet); });\n}\nfunction visitObjectTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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 var 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(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_b = node.directives) === null || _b === void 0 ? void 0 : _b.forEach(function (directiveNode) { return 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 var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n visitTypeNode(node.type, dependencySet, dependenciesByDefinitionName);\n}\nfunction visitInterfaceTypeDefinitionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.types.forEach(function (namedTypeNode) { return 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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\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(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n}\nfunction visitObjectTypeExtensionNode(node, dependencySet, dependenciesByDefinitionName) {\n var _a, _b, _c;\n var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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 var typeName = node.name.value;\n dependencySet.add(typeName);\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (fieldDefinitionNode) {\n return visitFieldDefinitionNode(fieldDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n (_c = node.interfaces) === null || _c === void 0 ? void 0 : _c.forEach(function (namedTypeNode) {\n visitNamedTypeNode(namedTypeNode, dependencySet);\n var 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.types.forEach(function (namedTypeNode) { return 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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n (_b = node.fields) === null || _b === void 0 ? void 0 : _b.forEach(function (inputValueDefinitionNode) {\n return visitInputValueDefinitionNode(inputValueDefinitionNode, dependencySet, dependenciesByDefinitionName);\n });\n}\nfunction visitSchemaDefinitionNode(node, dependencySet) {\n var _a;\n dependencySet.add('schema');\n (_a = node.directives) === null || _a === void 0 ? void 0 : _a.forEach(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n node.operationTypes.forEach(function (operationTypeDefinitionNode) {\n return visitOperationTypeDefinitionNode(operationTypeDefinitionNode, dependencySet);\n });\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(function (directiveNode) { return 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(function (directiveNode) { return visitDirectiveNode(directiveNode, dependencySet); });\n}\nfunction visitOperationTypeDefinitionNode(node, dependencySet) {\n visitNamedTypeNode(node.type, dependencySet);\n}\n//# sourceMappingURL=index.js.map"],"names":["cwdFactory","join","__values","print","parse","Source","Kind","isAbsolute","readFileSync","__assign","__read","dirname","realpathSync"],"mappings":"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"}