@gqlkit-ts/cli 0.5.0 → 0.5.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/README.md CHANGED
@@ -5,9 +5,11 @@
5
5
  **Just types and functions** — write TypeScript, generate GraphQL.
6
6
 
7
7
  [![gqlkit Documents](https://img.shields.io/badge/docs-gqlkit.izumin.dev-blue?logo=nextra&labelColor=%23313244&color=%23f5c2e7)](https://gqlkit.izumin.dev)
8
- [![NPM Version](https://img.shields.io/npm/v/%40gqlkit-ts%2Fcli?logo=npm&labelColor=%23313244&color=%23CB3837)](https://www.npmjs.com/package/@gqlkit-ts/cli)
9
8
  [![License](https://img.shields.io/github/license/izumin5210/gqlkit?labelColor=%23313244&color=%23a6e3a1)](./LICENSE)
10
9
 
10
+ [![@gqlkit-ts/cli Version](https://img.shields.io/npm/v/%40gqlkit-ts%2Fcli?logo=npm&label=%40gqlkit-ts%2Fcli&labelColor=313244&color=CB3837)](https://www.npmjs.com/package/@gqlkit-ts/cli)
11
+ [![@gqlkit-ts/runtime Version](https://img.shields.io/npm/v/%40gqlkit-ts%2Fruntime?logo=npm&label=%40gqlkit-ts%2Fruntime&labelColor=313244&color=CB3837)](https://www.npmjs.com/package/@gqlkit-ts/runtime)
12
+
11
13
  </div>
12
14
 
13
15
  ## How it works
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/gen-orchestrator/orchestrator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAqCnC,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,4BAA4B,CAAC;AAQpC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC;IACpE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AAsqBD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAsC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC9C;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/gen-orchestrator/orchestrator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAqCnC,OAAO,KAAK,EACV,UAAU,EAGX,MAAM,4BAA4B,CAAC;AAQpC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC;IACpE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AA6qBD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAsC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC9C;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
@@ -294,11 +294,15 @@ function collectTypeNamesStep(ctx) {
294
294
  if (ctx.aborted || !ctx.program)
295
295
  return ctx;
296
296
  const result = collectDeclaredTypeNames(ctx.program, ctx.sourceFiles);
297
+ const diagnostics = [...ctx.diagnostics, ...result.diagnostics];
298
+ const hasDiagnosticErrors = result.diagnostics.some((d) => d.severity === "error");
297
299
  return {
298
300
  ...ctx,
299
301
  knownTypeNames: result.typeNames,
300
302
  knownTypeSymbols: result.typeSymbols,
301
303
  underlyingSymbolToTypeName: result.underlyingSymbolToTypeName,
304
+ diagnostics,
305
+ aborted: hasDiagnosticErrors,
302
306
  };
303
307
  }
304
308
  function prepareScalarConfig(config) {
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/gen-orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/gen-orchestrator/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import ts from "typescript";
2
+ import type { Diagnostic } from "../types/index.js";
2
3
  export interface TypeNameCollectionResult {
3
4
  readonly typeNames: ReadonlySet<string>;
4
5
  readonly typeSymbols: ReadonlyMap<string, ts.Symbol>;
@@ -8,6 +9,11 @@ export interface TypeNameCollectionResult {
8
9
  * This allows recognizing `ExternalUser` as `User` in field types.
9
10
  */
10
11
  readonly underlyingSymbolToTypeName: ReadonlyMap<ts.Symbol, string>;
12
+ /**
13
+ * Diagnostics collected during type name collection.
14
+ * Contains errors for duplicate type exports.
15
+ */
16
+ readonly diagnostics: ReadonlyArray<Diagnostic>;
11
17
  }
12
18
  /**
13
19
  * Collects all declared type names from exported type declarations.
@@ -1 +1 @@
1
- {"version":3,"file":"type-name-collector.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/extractor/type-name-collector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAM5B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IACrD;;;;OAIG;IACH,QAAQ,CAAC,0BAA0B,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GACjC,wBAAwB,CAqF1B"}
1
+ {"version":3,"file":"type-name-collector.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/extractor/type-name-collector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAS5B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAiBpD,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IACrD;;;;OAIG;IACH,QAAQ,CAAC,0BAA0B,EAAE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpE;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CACjD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GACjC,wBAAwB,CA0H1B"}
@@ -1,5 +1,12 @@
1
1
  import ts from "typescript";
2
+ import { getSourceLocationFromNode, } from "../../shared/source-location.js";
2
3
  import { isExported, resolveOriginalSymbol, } from "../../shared/typescript-utils.js";
4
+ /**
5
+ * Formats a source location as a human-readable string.
6
+ */
7
+ function formatLocation(location) {
8
+ return `${location.file}:${location.line}`;
9
+ }
3
10
  /**
4
11
  * Collects all declared type names from exported type declarations.
5
12
  *
@@ -15,7 +22,42 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
15
22
  const typeNames = new Set();
16
23
  const typeSymbols = new Map();
17
24
  const underlyingSymbolToTypeName = new Map();
25
+ const diagnostics = [];
18
26
  const checker = program.getTypeChecker();
27
+ const typeLocations = new Map();
28
+ /**
29
+ * Registers a type name and checks for duplicates.
30
+ * Returns true if this is a new type, false if it's a duplicate.
31
+ */
32
+ function registerTypeName(name, location, symbol) {
33
+ const resolvedSymbol = symbol
34
+ ? resolveOriginalSymbol(symbol, checker)
35
+ : null;
36
+ const existing = typeLocations.get(name);
37
+ if (existing) {
38
+ // Check if both symbols resolve to the same underlying type
39
+ // (e.g., re-exports of the same type from different files)
40
+ if (resolvedSymbol &&
41
+ existing.symbol &&
42
+ resolvedSymbol === existing.symbol) {
43
+ // Same underlying type - not a true duplicate, skip silently
44
+ return false;
45
+ }
46
+ diagnostics.push({
47
+ code: "DUPLICATE_TYPE_EXPORT",
48
+ message: `Type '${name}' is exported from multiple files. First defined at ${formatLocation(existing.location)}.`,
49
+ severity: "error",
50
+ location,
51
+ });
52
+ return false;
53
+ }
54
+ typeLocations.set(name, { location, symbol: resolvedSymbol });
55
+ typeNames.add(name);
56
+ if (resolvedSymbol) {
57
+ typeSymbols.set(name, resolvedSymbol);
58
+ }
59
+ return true;
60
+ }
19
61
  for (const filePath of sourceFiles) {
20
62
  const sourceFile = program.getSourceFile(filePath);
21
63
  if (!sourceFile)
@@ -24,10 +66,10 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
24
66
  // Direct type declarations
25
67
  if (ts.isTypeAliasDeclaration(node) && isExported(node)) {
26
68
  const name = node.name.getText(sourceFile);
27
- typeNames.add(name);
69
+ const location = getSourceLocationFromNode(node);
28
70
  const symbol = checker.getSymbolAtLocation(node.name);
29
- if (symbol) {
30
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
71
+ const isNew = registerTypeName(name, location, symbol);
72
+ if (isNew && symbol) {
31
73
  // For type aliases like `type User = ExternalUser;`,
32
74
  // also track the underlying type's symbol
33
75
  const type = checker.getTypeAtLocation(node.type);
@@ -39,19 +81,15 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
39
81
  }
40
82
  if (ts.isInterfaceDeclaration(node) && isExported(node)) {
41
83
  const name = node.name.getText(sourceFile);
42
- typeNames.add(name);
84
+ const location = getSourceLocationFromNode(node);
43
85
  const symbol = checker.getSymbolAtLocation(node.name);
44
- if (symbol) {
45
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
46
- }
86
+ registerTypeName(name, location, symbol);
47
87
  }
48
88
  if (ts.isEnumDeclaration(node) && isExported(node)) {
49
89
  const name = node.name.getText(sourceFile);
50
- typeNames.add(name);
90
+ const location = getSourceLocationFromNode(node);
51
91
  const symbol = checker.getSymbolAtLocation(node.name);
52
- if (symbol) {
53
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
54
- }
92
+ registerTypeName(name, location, symbol);
55
93
  }
56
94
  // Re-exports: `export type { ... } from "..."` or `export type * from "..."`
57
95
  if (ts.isExportDeclaration(node) && node.isTypeOnly) {
@@ -61,11 +99,9 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
61
99
  for (const element of node.exportClause.elements) {
62
100
  // Use the exported name (element.name), not the property name
63
101
  const name = element.name.getText(sourceFile);
64
- typeNames.add(name);
102
+ const location = getSourceLocationFromNode(element);
65
103
  const symbol = checker.getSymbolAtLocation(element.name);
66
- if (symbol) {
67
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
68
- }
104
+ registerTypeName(name, location, symbol);
69
105
  }
70
106
  }
71
107
  }
@@ -78,8 +114,8 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
78
114
  const name = exp.getName();
79
115
  // Check if the export is a type (not a value)
80
116
  if (isTypeExport(exp)) {
81
- typeNames.add(name);
82
- typeSymbols.set(name, resolveOriginalSymbol(exp, checker));
117
+ const location = getSourceLocationFromNode(node);
118
+ registerTypeName(name, location, exp);
83
119
  }
84
120
  }
85
121
  }
@@ -87,7 +123,7 @@ export function collectDeclaredTypeNames(program, sourceFiles) {
87
123
  }
88
124
  });
89
125
  }
90
- return { typeNames, typeSymbols, underlyingSymbolToTypeName };
126
+ return { typeNames, typeSymbols, underlyingSymbolToTypeName, diagnostics };
91
127
  }
92
128
  /**
93
129
  * Checks if a symbol represents a type export (not a value export).
@@ -1 +1 @@
1
- {"version":3,"file":"type-name-collector.js","sourceRoot":"","sources":["../../../src/type-extractor/extractor/type-name-collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-name-collector.js","sourceRoot":"","sources":["../../../src/type-extractor/extractor/type-name-collector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,yBAAyB,GAE1B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EACV,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAW1C;;GAEG;AACH,SAAS,cAAc,CAAC,QAAwB;IAC9C,OAAO,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC7C,CAAC;AAkBD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAmB,EACnB,WAAkC;IAElC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;IACjD,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAqB,CAAC;IAChE,MAAM,WAAW,GAAiB,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAEzC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEjE;;;OAGG;IACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,QAAwB,EACxB,MAA6B;QAE7B,MAAM,cAAc,GAAG,MAAM;YAC3B,CAAC,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC;YACxC,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,4DAA4D;YAC5D,2DAA2D;YAC3D,IACE,cAAc;gBACd,QAAQ,CAAC,MAAM;gBACf,cAAc,KAAK,QAAQ,CAAC,MAAM,EAClC,CAAC;gBACD,6DAA6D;gBAC7D,OAAO,KAAK,CAAC;YACf,CAAC;YACD,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,uBAAuB;gBAC7B,OAAO,EAAE,SAAS,IAAI,uDAAuD,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG;gBACjH,QAAQ,EAAE,OAAO;gBACjB,QAAQ;aACT,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;QAC9D,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,cAAc,EAAE,CAAC;YACnB,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,WAAW,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU;YAAE,SAAS;QAE1B,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;YACnC,2BAA2B;YAC3B,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAEvD,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;oBACpB,qDAAqD;oBACrD,0CAA0C;oBAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBAChB,MAAM,gBAAgB,GAAG,qBAAqB,CAC5C,IAAI,CAAC,MAAM,EACX,OAAO,CACR,CAAC;wBACF,0BAA0B,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;gBAClD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC3C,CAAC;YAED,6EAA6E;YAC7E,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBACtB,0DAA0D;oBAC1D,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;wBACzC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;4BACjD,8DAA8D;4BAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;4BAC9C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAE,CAAC;4BACrD,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;4BACzD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;wBAC3C,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBAChC,kDAAkD;oBAClD,MAAM,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAC9C,IAAI,CAAC,eAAe,CACrB,CAAC;oBACF,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;wBACzD,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;4BAC1B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;4BAC3B,8CAA8C;4BAC9C,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gCACtB,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;gCAClD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;4BACxC,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,0BAA0B,EAAE,WAAW,EAAE,CAAC;AAC7E,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,MAAiB;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,CACL,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QACnC,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC;QACxC,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC;QACxC,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CACpC,CAAC;AACJ,CAAC"}
@@ -3,7 +3,7 @@ export interface SourceLocation {
3
3
  readonly line: number;
4
4
  readonly column: number;
5
5
  }
6
- export type DiagnosticCode = "DIRECTORY_NOT_FOUND" | "PARSE_ERROR" | "UNSUPPORTED_SYNTAX" | "RESERVED_TYPE_NAME" | "UNRESOLVED_REFERENCE" | "NAMING_CONVENTION_MISMATCH" | "INVALID_RESOLVER_SIGNATURE" | "UNSUPPORTED_RETURN_TYPE" | "UNSUPPORTED_ARG_TYPE" | "UNKNOWN_TARGET_TYPE" | "PARENT_TYPE_MISMATCH" | "MISSING_PARENT_TYPE" | "UNSUPPORTED_ENUM_TYPE" | "INVALID_ENUM_MEMBER" | "INVALID_INPUT_TYPE" | "UNKNOWN_ARGUMENT_TYPE" | "OUTPUT_TYPE_IN_INPUT" | "CIRCULAR_INPUT_REFERENCE" | "UNKNOWN_BRANDED_SCALAR" | "INVALID_SCALAR_IMPORT" | "CONFLICTING_SCALAR_TYPE" | "INVALID_DEFINE_CALL" | "CONFIG_SYNTAX_ERROR" | "CONFIG_FILE_NOT_FOUND" | "CONFIG_MISSING_PROPERTY" | "CONFIG_INVALID_TYPE" | "CONFIG_INVALID_PATH" | "CONFIG_BUILTIN_OVERRIDE" | "CONFIG_DUPLICATE_MAPPING" | "CONFIG_DUPLICATE_TYPE" | "CONFIG_INVALID_OUTPUT_TYPE" | "CONFIG_INVALID_OUTPUT_PATH" | "CONFIG_INVALID_SOURCE_DIR" | "CONFIG_INVALID_IGNORE_GLOBS" | "CONFIG_INVALID_HOOK_TYPE" | "CONFIG_INVALID_HOOK_COMMAND" | "CONFIG_INVALID_ONLY_VALUE" | "CONFIG_INVALID_IMPORT_EXTENSION" | "CUSTOM_SCALAR_TYPE_NOT_FOUND" | "TSCONFIG_NOT_FOUND" | "TSCONFIG_PARSE_ERROR" | "TSCONFIG_INVALID" | "ONEOF_FIELD_NAME_CONFLICT" | "ONEOF_MULTIPLE_PROPERTIES" | "ONEOF_EMPTY_OBJECT" | "ONEOF_INVALID_FIELD_TYPE" | "ONEOF_DUPLICATE_PROPERTY" | "ONEOF_MIXED_MEMBERS" | "ONEOF_NAMED_TYPE_UNION" | "MULTIPLE_INPUT_TYPES" | "MISSING_INPUT_TYPE" | "MISSING_OUTPUT_TYPE" | "EMPTY_DIRECTIVE_NAME" | "UNRESOLVABLE_ARGUMENT" | "UNRESOLVABLE_ARG_TYPE" | "INVALID_LOCATION" | "INVALID_DIRECTIVE_LOCATION" | "UNSUPPORTED_DIRECTIVE_LOCATION" | "UNDEFINED_DIRECTIVE" | "INTERFACE_NOT_FOUND" | "INTERFACE_NOT_INTERFACE" | "INTERFACE_MISSING_FIELD" | "INTERFACE_FIELD_TYPE_MISMATCH" | "INTERFACE_CIRCULAR_REFERENCE" | "UNRESOLVABLE_DEFAULT_VALUE" | "AUTO_TYPE_NAME_COLLISION_USER" | "AUTO_TYPE_NAME_COLLISION_AUTO" | "MODULE_RESOLUTION_ERROR" | "SKIPPED_FIELD" | "SKIPPED_ENUM_VALUE" | "INDEX_SIGNATURE_ONLY" | "UNKNOWN_ABSTRACT_TYPE" | "INVALID_ABSTRACT_TYPE_KIND" | "INVALID_OBJECT_TYPE_KIND" | "DUPLICATE_RESOLVE_TYPE" | "DUPLICATE_IS_TYPE_OF" | "MISSING_ABSTRACT_TYPE_RESOLVER" | "DUPLICATE_ENUM_VALUE" | "DUPLICATE_ENUM_VALUE_AFTER_CONVERSION" | "INVALID_ENUM_MEMBER_NAME" | "AMBIGUOUS_SCALAR_BASE_TYPE" | "INLINE_UNION_PRIMITIVE_MEMBER" | "INLINE_UNION_ENUM_MEMBER" | "INLINE_UNION_UNRESOLVABLE_MEMBER" | "MISSING_TYPENAME_PROPERTY" | "INVALID_TYPENAME_TYPE" | "OPTIONAL_TYPENAME_PROPERTY" | "NULLABLE_TYPENAME_PROPERTY" | "TYPENAME_FIELD_STRUCTURE_MISMATCH" | "DUPLICATE_TYPENAME_VALUE" | "IGNORE_FIELD_NOT_FOUND" | "IGNORE_ALL_FIELDS";
6
+ export type DiagnosticCode = "DIRECTORY_NOT_FOUND" | "PARSE_ERROR" | "UNSUPPORTED_SYNTAX" | "RESERVED_TYPE_NAME" | "UNRESOLVED_REFERENCE" | "NAMING_CONVENTION_MISMATCH" | "INVALID_RESOLVER_SIGNATURE" | "UNSUPPORTED_RETURN_TYPE" | "UNSUPPORTED_ARG_TYPE" | "UNKNOWN_TARGET_TYPE" | "PARENT_TYPE_MISMATCH" | "MISSING_PARENT_TYPE" | "UNSUPPORTED_ENUM_TYPE" | "INVALID_ENUM_MEMBER" | "INVALID_INPUT_TYPE" | "UNKNOWN_ARGUMENT_TYPE" | "OUTPUT_TYPE_IN_INPUT" | "CIRCULAR_INPUT_REFERENCE" | "UNKNOWN_BRANDED_SCALAR" | "INVALID_SCALAR_IMPORT" | "CONFLICTING_SCALAR_TYPE" | "INVALID_DEFINE_CALL" | "CONFIG_SYNTAX_ERROR" | "CONFIG_FILE_NOT_FOUND" | "CONFIG_MISSING_PROPERTY" | "CONFIG_INVALID_TYPE" | "CONFIG_INVALID_PATH" | "CONFIG_BUILTIN_OVERRIDE" | "CONFIG_DUPLICATE_MAPPING" | "CONFIG_DUPLICATE_TYPE" | "CONFIG_INVALID_OUTPUT_TYPE" | "CONFIG_INVALID_OUTPUT_PATH" | "CONFIG_INVALID_SOURCE_DIR" | "CONFIG_INVALID_IGNORE_GLOBS" | "CONFIG_INVALID_HOOK_TYPE" | "CONFIG_INVALID_HOOK_COMMAND" | "CONFIG_INVALID_ONLY_VALUE" | "CONFIG_INVALID_IMPORT_EXTENSION" | "CUSTOM_SCALAR_TYPE_NOT_FOUND" | "TSCONFIG_NOT_FOUND" | "TSCONFIG_PARSE_ERROR" | "TSCONFIG_INVALID" | "ONEOF_FIELD_NAME_CONFLICT" | "ONEOF_MULTIPLE_PROPERTIES" | "ONEOF_EMPTY_OBJECT" | "ONEOF_INVALID_FIELD_TYPE" | "ONEOF_DUPLICATE_PROPERTY" | "ONEOF_MIXED_MEMBERS" | "ONEOF_NAMED_TYPE_UNION" | "MULTIPLE_INPUT_TYPES" | "MISSING_INPUT_TYPE" | "MISSING_OUTPUT_TYPE" | "EMPTY_DIRECTIVE_NAME" | "UNRESOLVABLE_ARGUMENT" | "UNRESOLVABLE_ARG_TYPE" | "INVALID_LOCATION" | "INVALID_DIRECTIVE_LOCATION" | "UNSUPPORTED_DIRECTIVE_LOCATION" | "UNDEFINED_DIRECTIVE" | "INTERFACE_NOT_FOUND" | "INTERFACE_NOT_INTERFACE" | "INTERFACE_MISSING_FIELD" | "INTERFACE_FIELD_TYPE_MISMATCH" | "INTERFACE_CIRCULAR_REFERENCE" | "UNRESOLVABLE_DEFAULT_VALUE" | "AUTO_TYPE_NAME_COLLISION_USER" | "AUTO_TYPE_NAME_COLLISION_AUTO" | "MODULE_RESOLUTION_ERROR" | "SKIPPED_FIELD" | "SKIPPED_ENUM_VALUE" | "INDEX_SIGNATURE_ONLY" | "UNKNOWN_ABSTRACT_TYPE" | "INVALID_ABSTRACT_TYPE_KIND" | "INVALID_OBJECT_TYPE_KIND" | "DUPLICATE_RESOLVE_TYPE" | "DUPLICATE_IS_TYPE_OF" | "MISSING_ABSTRACT_TYPE_RESOLVER" | "DUPLICATE_ENUM_VALUE" | "DUPLICATE_ENUM_VALUE_AFTER_CONVERSION" | "INVALID_ENUM_MEMBER_NAME" | "AMBIGUOUS_SCALAR_BASE_TYPE" | "INLINE_UNION_PRIMITIVE_MEMBER" | "INLINE_UNION_ENUM_MEMBER" | "INLINE_UNION_UNRESOLVABLE_MEMBER" | "MISSING_TYPENAME_PROPERTY" | "INVALID_TYPENAME_TYPE" | "OPTIONAL_TYPENAME_PROPERTY" | "NULLABLE_TYPENAME_PROPERTY" | "TYPENAME_FIELD_STRUCTURE_MISMATCH" | "DUPLICATE_TYPENAME_VALUE" | "IGNORE_FIELD_NOT_FOUND" | "IGNORE_ALL_FIELDS" | "DUPLICATE_TYPE_EXPORT";
7
7
  export interface Diagnostic {
8
8
  readonly code: DiagnosticCode;
9
9
  readonly message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/types/diagnostics.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,cAAc,GACtB,qBAAqB,GACrB,aAAa,GACb,oBAAoB,GACpB,oBAAoB,GACpB,sBAAsB,GACtB,4BAA4B,GAC5B,4BAA4B,GAC5B,yBAAyB,GACzB,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,qBAAqB,GACrB,uBAAuB,GACvB,qBAAqB,GACrB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,GACtB,0BAA0B,GAC1B,wBAAwB,GACxB,uBAAuB,GACvB,yBAAyB,GACzB,qBAAqB,GACrB,qBAAqB,GACrB,uBAAuB,GACvB,yBAAyB,GACzB,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,0BAA0B,GAC1B,uBAAuB,GACvB,4BAA4B,GAC5B,4BAA4B,GAC5B,2BAA2B,GAC3B,6BAA6B,GAC7B,0BAA0B,GAC1B,6BAA6B,GAC7B,2BAA2B,GAC3B,iCAAiC,GACjC,8BAA8B,GAC9B,oBAAoB,GACpB,sBAAsB,GACtB,kBAAkB,GAClB,2BAA2B,GAC3B,2BAA2B,GAC3B,oBAAoB,GACpB,0BAA0B,GAC1B,0BAA0B,GAC1B,qBAAqB,GACrB,wBAAwB,GACxB,sBAAsB,GACtB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,kBAAkB,GAClB,4BAA4B,GAC5B,gCAAgC,GAChC,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,yBAAyB,GACzB,+BAA+B,GAC/B,8BAA8B,GAC9B,4BAA4B,GAC5B,+BAA+B,GAC/B,+BAA+B,GAC/B,yBAAyB,GACzB,eAAe,GACf,oBAAoB,GACpB,sBAAsB,GACtB,uBAAuB,GACvB,4BAA4B,GAC5B,0BAA0B,GAC1B,wBAAwB,GACxB,sBAAsB,GACtB,gCAAgC,GAChC,sBAAsB,GACtB,uCAAuC,GACvC,0BAA0B,GAC1B,4BAA4B,GAC5B,+BAA+B,GAC/B,0BAA0B,GAC1B,kCAAkC,GAClC,2BAA2B,GAC3B,uBAAuB,GACvB,4BAA4B,GAC5B,4BAA4B,GAC5B,mCAAmC,GACnC,0BAA0B,GAC1B,wBAAwB,GACxB,mBAAmB,CAAC;AAExB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/type-extractor/types/diagnostics.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,cAAc,GACtB,qBAAqB,GACrB,aAAa,GACb,oBAAoB,GACpB,oBAAoB,GACpB,sBAAsB,GACtB,4BAA4B,GAC5B,4BAA4B,GAC5B,yBAAyB,GACzB,sBAAsB,GACtB,qBAAqB,GACrB,sBAAsB,GACtB,qBAAqB,GACrB,uBAAuB,GACvB,qBAAqB,GACrB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,GACtB,0BAA0B,GAC1B,wBAAwB,GACxB,uBAAuB,GACvB,yBAAyB,GACzB,qBAAqB,GACrB,qBAAqB,GACrB,uBAAuB,GACvB,yBAAyB,GACzB,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,0BAA0B,GAC1B,uBAAuB,GACvB,4BAA4B,GAC5B,4BAA4B,GAC5B,2BAA2B,GAC3B,6BAA6B,GAC7B,0BAA0B,GAC1B,6BAA6B,GAC7B,2BAA2B,GAC3B,iCAAiC,GACjC,8BAA8B,GAC9B,oBAAoB,GACpB,sBAAsB,GACtB,kBAAkB,GAClB,2BAA2B,GAC3B,2BAA2B,GAC3B,oBAAoB,GACpB,0BAA0B,GAC1B,0BAA0B,GAC1B,qBAAqB,GACrB,wBAAwB,GACxB,sBAAsB,GACtB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GACtB,uBAAuB,GACvB,uBAAuB,GACvB,kBAAkB,GAClB,4BAA4B,GAC5B,gCAAgC,GAChC,qBAAqB,GACrB,qBAAqB,GACrB,yBAAyB,GACzB,yBAAyB,GACzB,+BAA+B,GAC/B,8BAA8B,GAC9B,4BAA4B,GAC5B,+BAA+B,GAC/B,+BAA+B,GAC/B,yBAAyB,GACzB,eAAe,GACf,oBAAoB,GACpB,sBAAsB,GACtB,uBAAuB,GACvB,4BAA4B,GAC5B,0BAA0B,GAC1B,wBAAwB,GACxB,sBAAsB,GACtB,gCAAgC,GAChC,sBAAsB,GACtB,uCAAuC,GACvC,0BAA0B,GAC1B,4BAA4B,GAC5B,+BAA+B,GAC/B,0BAA0B,GAC1B,kCAAkC,GAClC,2BAA2B,GAC3B,uBAAuB,GACvB,4BAA4B,GAC5B,4BAA4B,GAC5B,mCAAmC,GACnC,0BAA0B,GAC1B,wBAAwB,GACxB,mBAAmB,GACnB,uBAAuB,CAAC;AAE5B,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;CAC9C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gqlkit-ts/cli",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "Just types and functions — write TypeScript, generate GraphQL.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -514,11 +514,18 @@ function collectTypeNamesStep(ctx: PipelineContext): PipelineContext {
514
514
 
515
515
  const result = collectDeclaredTypeNames(ctx.program, ctx.sourceFiles);
516
516
 
517
+ const diagnostics = [...ctx.diagnostics, ...result.diagnostics];
518
+ const hasDiagnosticErrors = result.diagnostics.some(
519
+ (d) => d.severity === "error",
520
+ );
521
+
517
522
  return {
518
523
  ...ctx,
519
524
  knownTypeNames: result.typeNames,
520
525
  knownTypeSymbols: result.typeSymbols,
521
526
  underlyingSymbolToTypeName: result.underlyingSymbolToTypeName,
527
+ diagnostics,
528
+ aborted: hasDiagnosticErrors,
522
529
  };
523
530
  }
524
531
 
@@ -1,8 +1,28 @@
1
1
  import ts from "typescript";
2
+ import {
3
+ getSourceLocationFromNode,
4
+ type SourceLocation,
5
+ } from "../../shared/source-location.js";
2
6
  import {
3
7
  isExported,
4
8
  resolveOriginalSymbol,
5
9
  } from "../../shared/typescript-utils.js";
10
+ import type { Diagnostic } from "../types/index.js";
11
+
12
+ /**
13
+ * Tracks location and symbol of a type declaration for duplicate detection.
14
+ */
15
+ interface TypeDeclarationLocation {
16
+ readonly location: SourceLocation;
17
+ readonly symbol: ts.Symbol | null;
18
+ }
19
+
20
+ /**
21
+ * Formats a source location as a human-readable string.
22
+ */
23
+ function formatLocation(location: SourceLocation): string {
24
+ return `${location.file}:${location.line}`;
25
+ }
6
26
 
7
27
  export interface TypeNameCollectionResult {
8
28
  readonly typeNames: ReadonlySet<string>;
@@ -13,6 +33,11 @@ export interface TypeNameCollectionResult {
13
33
  * This allows recognizing `ExternalUser` as `User` in field types.
14
34
  */
15
35
  readonly underlyingSymbolToTypeName: ReadonlyMap<ts.Symbol, string>;
36
+ /**
37
+ * Diagnostics collected during type name collection.
38
+ * Contains errors for duplicate type exports.
39
+ */
40
+ readonly diagnostics: ReadonlyArray<Diagnostic>;
16
41
  }
17
42
 
18
43
  /**
@@ -33,8 +58,51 @@ export function collectDeclaredTypeNames(
33
58
  const typeNames = new Set<string>();
34
59
  const typeSymbols = new Map<string, ts.Symbol>();
35
60
  const underlyingSymbolToTypeName = new Map<ts.Symbol, string>();
61
+ const diagnostics: Diagnostic[] = [];
36
62
  const checker = program.getTypeChecker();
37
63
 
64
+ const typeLocations = new Map<string, TypeDeclarationLocation>();
65
+
66
+ /**
67
+ * Registers a type name and checks for duplicates.
68
+ * Returns true if this is a new type, false if it's a duplicate.
69
+ */
70
+ function registerTypeName(
71
+ name: string,
72
+ location: SourceLocation,
73
+ symbol: ts.Symbol | undefined,
74
+ ): boolean {
75
+ const resolvedSymbol = symbol
76
+ ? resolveOriginalSymbol(symbol, checker)
77
+ : null;
78
+ const existing = typeLocations.get(name);
79
+ if (existing) {
80
+ // Check if both symbols resolve to the same underlying type
81
+ // (e.g., re-exports of the same type from different files)
82
+ if (
83
+ resolvedSymbol &&
84
+ existing.symbol &&
85
+ resolvedSymbol === existing.symbol
86
+ ) {
87
+ // Same underlying type - not a true duplicate, skip silently
88
+ return false;
89
+ }
90
+ diagnostics.push({
91
+ code: "DUPLICATE_TYPE_EXPORT",
92
+ message: `Type '${name}' is exported from multiple files. First defined at ${formatLocation(existing.location)}.`,
93
+ severity: "error",
94
+ location,
95
+ });
96
+ return false;
97
+ }
98
+ typeLocations.set(name, { location, symbol: resolvedSymbol });
99
+ typeNames.add(name);
100
+ if (resolvedSymbol) {
101
+ typeSymbols.set(name, resolvedSymbol);
102
+ }
103
+ return true;
104
+ }
105
+
38
106
  for (const filePath of sourceFiles) {
39
107
  const sourceFile = program.getSourceFile(filePath);
40
108
  if (!sourceFile) continue;
@@ -43,11 +111,11 @@ export function collectDeclaredTypeNames(
43
111
  // Direct type declarations
44
112
  if (ts.isTypeAliasDeclaration(node) && isExported(node)) {
45
113
  const name = node.name.getText(sourceFile);
46
- typeNames.add(name);
114
+ const location = getSourceLocationFromNode(node)!;
47
115
  const symbol = checker.getSymbolAtLocation(node.name);
48
- if (symbol) {
49
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
116
+ const isNew = registerTypeName(name, location, symbol);
50
117
 
118
+ if (isNew && symbol) {
51
119
  // For type aliases like `type User = ExternalUser;`,
52
120
  // also track the underlying type's symbol
53
121
  const type = checker.getTypeAtLocation(node.type);
@@ -62,19 +130,15 @@ export function collectDeclaredTypeNames(
62
130
  }
63
131
  if (ts.isInterfaceDeclaration(node) && isExported(node)) {
64
132
  const name = node.name.getText(sourceFile);
65
- typeNames.add(name);
133
+ const location = getSourceLocationFromNode(node)!;
66
134
  const symbol = checker.getSymbolAtLocation(node.name);
67
- if (symbol) {
68
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
69
- }
135
+ registerTypeName(name, location, symbol);
70
136
  }
71
137
  if (ts.isEnumDeclaration(node) && isExported(node)) {
72
138
  const name = node.name.getText(sourceFile);
73
- typeNames.add(name);
139
+ const location = getSourceLocationFromNode(node)!;
74
140
  const symbol = checker.getSymbolAtLocation(node.name);
75
- if (symbol) {
76
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
77
- }
141
+ registerTypeName(name, location, symbol);
78
142
  }
79
143
 
80
144
  // Re-exports: `export type { ... } from "..."` or `export type * from "..."`
@@ -85,11 +149,9 @@ export function collectDeclaredTypeNames(
85
149
  for (const element of node.exportClause.elements) {
86
150
  // Use the exported name (element.name), not the property name
87
151
  const name = element.name.getText(sourceFile);
88
- typeNames.add(name);
152
+ const location = getSourceLocationFromNode(element)!;
89
153
  const symbol = checker.getSymbolAtLocation(element.name);
90
- if (symbol) {
91
- typeSymbols.set(name, resolveOriginalSymbol(symbol, checker));
92
- }
154
+ registerTypeName(name, location, symbol);
93
155
  }
94
156
  }
95
157
  } else if (node.moduleSpecifier) {
@@ -103,8 +165,8 @@ export function collectDeclaredTypeNames(
103
165
  const name = exp.getName();
104
166
  // Check if the export is a type (not a value)
105
167
  if (isTypeExport(exp)) {
106
- typeNames.add(name);
107
- typeSymbols.set(name, resolveOriginalSymbol(exp, checker));
168
+ const location = getSourceLocationFromNode(node)!;
169
+ registerTypeName(name, location, exp);
108
170
  }
109
171
  }
110
172
  }
@@ -113,7 +175,7 @@ export function collectDeclaredTypeNames(
113
175
  });
114
176
  }
115
177
 
116
- return { typeNames, typeSymbols, underlyingSymbolToTypeName };
178
+ return { typeNames, typeSymbols, underlyingSymbolToTypeName, diagnostics };
117
179
  }
118
180
 
119
181
  /**
@@ -96,7 +96,8 @@ export type DiagnosticCode =
96
96
  | "TYPENAME_FIELD_STRUCTURE_MISMATCH"
97
97
  | "DUPLICATE_TYPENAME_VALUE"
98
98
  | "IGNORE_FIELD_NOT_FOUND"
99
- | "IGNORE_ALL_FIELDS";
99
+ | "IGNORE_ALL_FIELDS"
100
+ | "DUPLICATE_TYPE_EXPORT";
100
101
 
101
102
  export interface Diagnostic {
102
103
  readonly code: DiagnosticCode;