@hexaijs/plugin-contracts-generator 0.2.1 → 0.2.2

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.
Files changed (94) hide show
  1. package/dist/ast-utils.d.ts +6 -0
  2. package/dist/ast-utils.d.ts.map +1 -0
  3. package/dist/ast-utils.js +73 -0
  4. package/dist/ast-utils.js.map +1 -0
  5. package/dist/class-analyzer.d.ts +16 -0
  6. package/dist/class-analyzer.d.ts.map +1 -0
  7. package/dist/class-analyzer.js +114 -0
  8. package/dist/class-analyzer.js.map +1 -0
  9. package/dist/cli.d.ts +32 -1
  10. package/dist/cli.d.ts.map +1 -0
  11. package/dist/cli.js +223 -2471
  12. package/dist/cli.js.map +1 -1
  13. package/dist/config-loader.d.ts +24 -0
  14. package/dist/config-loader.d.ts.map +1 -0
  15. package/dist/config-loader.js +126 -0
  16. package/dist/config-loader.js.map +1 -0
  17. package/dist/context-config.d.ts +44 -0
  18. package/dist/context-config.d.ts.map +1 -0
  19. package/dist/context-config.js +140 -0
  20. package/dist/context-config.js.map +1 -0
  21. package/dist/domain/index.d.ts +2 -0
  22. package/dist/domain/index.d.ts.map +1 -0
  23. package/dist/domain/index.js +2 -0
  24. package/dist/domain/index.js.map +1 -0
  25. package/dist/domain/types.d.ts +182 -0
  26. package/dist/domain/types.d.ts.map +1 -0
  27. package/dist/domain/types.js +49 -0
  28. package/dist/domain/types.js.map +1 -0
  29. package/dist/errors.d.ts +72 -0
  30. package/dist/errors.d.ts.map +1 -0
  31. package/dist/errors.js +112 -0
  32. package/dist/errors.js.map +1 -0
  33. package/dist/file-copier.d.ts +84 -0
  34. package/dist/file-copier.d.ts.map +1 -0
  35. package/dist/file-copier.js +721 -0
  36. package/dist/file-copier.js.map +1 -0
  37. package/dist/file-graph-resolver.d.ts +42 -0
  38. package/dist/file-graph-resolver.d.ts.map +1 -0
  39. package/dist/file-graph-resolver.js +138 -0
  40. package/dist/file-graph-resolver.js.map +1 -0
  41. package/dist/file-system.d.ts +26 -0
  42. package/dist/file-system.d.ts.map +1 -0
  43. package/dist/file-system.js +30 -0
  44. package/dist/file-system.js.map +1 -0
  45. package/dist/hexai-plugin.d.ts +16 -0
  46. package/dist/hexai-plugin.d.ts.map +1 -0
  47. package/dist/hexai-plugin.js +56 -0
  48. package/dist/hexai-plugin.js.map +1 -0
  49. package/dist/import-analyzer.d.ts +6 -0
  50. package/dist/import-analyzer.d.ts.map +1 -0
  51. package/dist/import-analyzer.js +39 -0
  52. package/dist/import-analyzer.js.map +1 -0
  53. package/dist/index.d.ts +39 -459
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +56 -2712
  56. package/dist/index.js.map +1 -1
  57. package/dist/logger.d.ts +21 -0
  58. package/dist/logger.d.ts.map +1 -0
  59. package/dist/logger.js +43 -0
  60. package/dist/logger.js.map +1 -0
  61. package/dist/parser.d.ts +32 -0
  62. package/dist/parser.d.ts.map +1 -0
  63. package/dist/parser.js +202 -0
  64. package/dist/parser.js.map +1 -0
  65. package/dist/pipeline.d.ts +57 -0
  66. package/dist/pipeline.d.ts.map +1 -0
  67. package/dist/pipeline.js +148 -0
  68. package/dist/pipeline.js.map +1 -0
  69. package/dist/reexport-generator.d.ts +81 -0
  70. package/dist/reexport-generator.d.ts.map +1 -0
  71. package/dist/reexport-generator.js +171 -0
  72. package/dist/reexport-generator.js.map +1 -0
  73. package/dist/registry-generator.d.ts +27 -0
  74. package/dist/registry-generator.d.ts.map +1 -0
  75. package/dist/registry-generator.js +104 -0
  76. package/dist/registry-generator.js.map +1 -0
  77. package/dist/runtime/index.d.ts +2 -23
  78. package/dist/runtime/index.d.ts.map +1 -0
  79. package/dist/runtime/index.js +1 -38
  80. package/dist/runtime/index.js.map +1 -1
  81. package/dist/runtime/message-registry.d.ts +23 -0
  82. package/dist/runtime/message-registry.d.ts.map +1 -0
  83. package/dist/runtime/message-registry.js +35 -0
  84. package/dist/runtime/message-registry.js.map +1 -0
  85. package/dist/scanner.d.ts +21 -0
  86. package/dist/scanner.d.ts.map +1 -0
  87. package/dist/scanner.js +49 -0
  88. package/dist/scanner.js.map +1 -0
  89. package/dist/test-utils.d.ts +23 -0
  90. package/dist/test-utils.d.ts.map +1 -0
  91. package/dist/test-utils.js +188 -0
  92. package/dist/test-utils.js.map +1 -0
  93. package/package.json +69 -60
  94. package/dist/cli-DajurpEQ.d.ts +0 -277
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Base error class for all contracts-generator errors.
3
+ * Allows catching all library errors with `instanceof MessageParserError`.
4
+ */
5
+ export declare class MessageParserError extends Error {
6
+ constructor(message: string, options?: ErrorOptions);
7
+ }
8
+ /**
9
+ * Base class for configuration-related errors.
10
+ */
11
+ export declare class ConfigurationError extends MessageParserError {
12
+ constructor(message: string, options?: ErrorOptions);
13
+ }
14
+ /**
15
+ * Error thrown when loading application.config.ts fails.
16
+ */
17
+ export declare class ConfigLoadError extends ConfigurationError {
18
+ constructor(message: string, options?: ErrorOptions);
19
+ }
20
+ /**
21
+ * Base class for file system operation errors.
22
+ */
23
+ export declare class FileSystemError extends MessageParserError {
24
+ readonly path: string;
25
+ constructor(message: string, path: string, options?: ErrorOptions);
26
+ }
27
+ /**
28
+ * Error thrown when a required file is not found.
29
+ */
30
+ export declare class FileNotFoundError extends FileSystemError {
31
+ constructor(path: string, options?: ErrorOptions);
32
+ }
33
+ /**
34
+ * Error thrown when reading a file fails.
35
+ */
36
+ export declare class FileReadError extends FileSystemError {
37
+ constructor(path: string, options?: ErrorOptions);
38
+ }
39
+ /**
40
+ * Error thrown when writing a file fails.
41
+ */
42
+ export declare class FileWriteError extends FileSystemError {
43
+ constructor(path: string, options?: ErrorOptions);
44
+ }
45
+ /**
46
+ * Base class for parsing errors.
47
+ */
48
+ export declare class ParseError extends MessageParserError {
49
+ constructor(message: string, options?: ErrorOptions);
50
+ }
51
+ /**
52
+ * Error thrown when JSON parsing fails.
53
+ */
54
+ export declare class JsonParseError extends ParseError {
55
+ readonly filePath?: string;
56
+ constructor(message: string, filePath?: string, options?: ErrorOptions);
57
+ }
58
+ /**
59
+ * Base class for module/path resolution errors.
60
+ */
61
+ export declare class ResolutionError extends MessageParserError {
62
+ constructor(message: string, options?: ErrorOptions);
63
+ }
64
+ /**
65
+ * Error thrown when module resolution fails.
66
+ */
67
+ export declare class ModuleResolutionError extends ResolutionError {
68
+ readonly moduleSpecifier: string;
69
+ readonly fromFile: string;
70
+ constructor(moduleSpecifier: string, fromFile: string, options?: ErrorOptions);
71
+ }
72
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACJ;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;IACtD,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACJ;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;IACnD,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACJ;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;IACnD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,YAAY,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAIhE;CACJ;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IAClD,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAG/C;CACJ;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,eAAe;IAC9C,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAG/C;CACJ;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,eAAe;IAC/C,YAAY,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAG/C;CACJ;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,kBAAkB;IAC9C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACJ;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC1C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAE3B,YAAY,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAOrE;CACJ;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;IACnD,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACJ;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;IACtD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,YAAY,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAQ5E;CACJ"}
package/dist/errors.js ADDED
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Base error class for all contracts-generator errors.
3
+ * Allows catching all library errors with `instanceof MessageParserError`.
4
+ */
5
+ export class MessageParserError extends Error {
6
+ constructor(message, options) {
7
+ super(message, options);
8
+ this.name = "MessageParserError";
9
+ }
10
+ }
11
+ /**
12
+ * Base class for configuration-related errors.
13
+ */
14
+ export class ConfigurationError extends MessageParserError {
15
+ constructor(message, options) {
16
+ super(message, options);
17
+ this.name = "ConfigurationError";
18
+ }
19
+ }
20
+ /**
21
+ * Error thrown when loading application.config.ts fails.
22
+ */
23
+ export class ConfigLoadError extends ConfigurationError {
24
+ constructor(message, options) {
25
+ super(message, options);
26
+ this.name = "ConfigLoadError";
27
+ }
28
+ }
29
+ /**
30
+ * Base class for file system operation errors.
31
+ */
32
+ export class FileSystemError extends MessageParserError {
33
+ path;
34
+ constructor(message, path, options) {
35
+ super(message, options);
36
+ this.name = "FileSystemError";
37
+ this.path = path;
38
+ }
39
+ }
40
+ /**
41
+ * Error thrown when a required file is not found.
42
+ */
43
+ export class FileNotFoundError extends FileSystemError {
44
+ constructor(path, options) {
45
+ super(`File not found: ${path}`, path, options);
46
+ this.name = "FileNotFoundError";
47
+ }
48
+ }
49
+ /**
50
+ * Error thrown when reading a file fails.
51
+ */
52
+ export class FileReadError extends FileSystemError {
53
+ constructor(path, options) {
54
+ super(`Failed to read file: ${path}`, path, options);
55
+ this.name = "FileReadError";
56
+ }
57
+ }
58
+ /**
59
+ * Error thrown when writing a file fails.
60
+ */
61
+ export class FileWriteError extends FileSystemError {
62
+ constructor(path, options) {
63
+ super(`Failed to write file: ${path}`, path, options);
64
+ this.name = "FileWriteError";
65
+ }
66
+ }
67
+ /**
68
+ * Base class for parsing errors.
69
+ */
70
+ export class ParseError extends MessageParserError {
71
+ constructor(message, options) {
72
+ super(message, options);
73
+ this.name = "ParseError";
74
+ }
75
+ }
76
+ /**
77
+ * Error thrown when JSON parsing fails.
78
+ */
79
+ export class JsonParseError extends ParseError {
80
+ filePath;
81
+ constructor(message, filePath, options) {
82
+ const fullMessage = filePath
83
+ ? `Failed to parse JSON in ${filePath}: ${message}`
84
+ : `Failed to parse JSON: ${message}`;
85
+ super(fullMessage, options);
86
+ this.name = "JsonParseError";
87
+ this.filePath = filePath;
88
+ }
89
+ }
90
+ /**
91
+ * Base class for module/path resolution errors.
92
+ */
93
+ export class ResolutionError extends MessageParserError {
94
+ constructor(message, options) {
95
+ super(message, options);
96
+ this.name = "ResolutionError";
97
+ }
98
+ }
99
+ /**
100
+ * Error thrown when module resolution fails.
101
+ */
102
+ export class ModuleResolutionError extends ResolutionError {
103
+ moduleSpecifier;
104
+ fromFile;
105
+ constructor(moduleSpecifier, fromFile, options) {
106
+ super(`Failed to resolve module '${moduleSpecifier}' from '${fromFile}'`, options);
107
+ this.name = "ModuleResolutionError";
108
+ this.moduleSpecifier = moduleSpecifier;
109
+ this.fromFile = fromFile;
110
+ }
111
+ }
112
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IACzC,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,kBAAkB;IACtD,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACrC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,kBAAkB;IACnD,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,kBAAkB;IAC1C,IAAI,CAAS;IAEtB,YAAY,OAAe,EAAE,IAAY,EAAE,OAAsB;QAC7D,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,eAAe;IAClD,YAAY,IAAY,EAAE,OAAsB;QAC5C,KAAK,CAAC,mBAAmB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACpC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,eAAe;IAC9C,YAAY,IAAY,EAAE,OAAsB;QAC5C,KAAK,CAAC,wBAAwB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAChC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,eAAe;IAC/C,YAAY,IAAY,EAAE,OAAsB;QAC5C,KAAK,CAAC,yBAAyB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IACjC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,kBAAkB;IAC9C,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,UAAU;IACjC,QAAQ,CAAU;IAE3B,YAAY,OAAe,EAAE,QAAiB,EAAE,OAAsB;QAClE,MAAM,WAAW,GAAG,QAAQ;YACxB,CAAC,CAAC,2BAA2B,QAAQ,KAAK,OAAO,EAAE;YACnD,CAAC,CAAC,yBAAyB,OAAO,EAAE,CAAC;QACzC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,kBAAkB;IACnD,YAAY,OAAe,EAAE,OAAsB;QAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,eAAe;IAC7C,eAAe,CAAS;IACxB,QAAQ,CAAS;IAE1B,YAAY,eAAuB,EAAE,QAAgB,EAAE,OAAsB;QACzE,KAAK,CACD,6BAA6B,eAAe,WAAW,QAAQ,GAAG,EAClE,OAAO,CACV,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
@@ -0,0 +1,84 @@
1
+ import type { FileGraph } from "./file-graph-resolver.js";
2
+ import { FileSystem } from "./file-system.js";
3
+ import type { MessageType, DecoratorNames } from "./domain/index.js";
4
+ export interface CopyOptions {
5
+ sourceRoot: string;
6
+ outputDir: string;
7
+ fileGraph: FileGraph;
8
+ pathAliasRewrites?: Map<string, string>;
9
+ removeDecorators?: boolean;
10
+ responseTypesToExport?: Map<string, string[]>;
11
+ messageTypes?: readonly MessageType[];
12
+ decoratorNames?: DecoratorNames;
13
+ }
14
+ export interface CopyResult {
15
+ copiedFiles: string[];
16
+ rewrittenImports: Map<string, string[]>;
17
+ }
18
+ export interface FileCopierOptions {
19
+ fileSystem?: FileSystem;
20
+ }
21
+ export declare class FileCopier {
22
+ private readonly fs;
23
+ constructor(options?: FileCopierOptions);
24
+ copyFiles(options: CopyOptions): Promise<CopyResult>;
25
+ private preprocessEntryFiles;
26
+ private expandTransitiveDependencies;
27
+ private resolveNodeContent;
28
+ private applyTransformations;
29
+ generateBarrelExport(copiedFiles: string[], outputDir: string): string;
30
+ private readFileContent;
31
+ private writeOutputFile;
32
+ private processExcludedImports;
33
+ private processDecoratorRemoval;
34
+ private processTypeExports;
35
+ private processInternalPathAliases;
36
+ private processExternalPathAliases;
37
+ private createExportStatement;
38
+ private rewriteInternalPathAliases;
39
+ private isExternalOrRelativeImport;
40
+ private resolveInternalImport;
41
+ private rewriteModuleSpecifier;
42
+ private computeRelativePath;
43
+ private applyPathAliasRewrites;
44
+ private escapeRegex;
45
+ private removeExcludedImports;
46
+ private findExcludedModuleSpecifiers;
47
+ private createExcludedImportsVisitor;
48
+ private isImportFromExcludedModule;
49
+ private isExportFromExcludedModule;
50
+ private removeContractDecorators;
51
+ private createDecoratorRemovalVisitor;
52
+ private processContractGeneratorImport;
53
+ private createImportWithFilteredBindings;
54
+ private removeContractDecoratorsFromClass;
55
+ private extractDecoratorName;
56
+ private isDecoratorCallExpression;
57
+ private hasExportModifier;
58
+ private prependExportModifier;
59
+ private addExportToTypes;
60
+ private createExportAdditionVisitor;
61
+ private addExportToTypeAlias;
62
+ private addExportToInterface;
63
+ private transformSourceFile;
64
+ private extractSymbolsFromEntry;
65
+ private buildDecoratorToMessageTypeMap;
66
+ private findTargetClasses;
67
+ private computeRelatedTypeNames;
68
+ private collectUsedIdentifiers;
69
+ private collectDecoratorIdentifier;
70
+ private collectLocalTypeDeclarations;
71
+ private addToDeclarationMap;
72
+ private resolveIncludedLocalTypes;
73
+ private collectTypeIdentifiersFromNodes;
74
+ private collectComputedPropertyIdentifier;
75
+ private generateExtractedOutput;
76
+ private buildImportMap;
77
+ private filterImports;
78
+ private appendImportStatements;
79
+ private appendLocalTypeDeclarations;
80
+ private appendTargetClasses;
81
+ private appendNodeWithExport;
82
+ private nodeHasExportKeyword;
83
+ }
84
+ //# sourceMappingURL=file-copier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-copier.d.ts","sourceRoot":"","sources":["../src/file-copier.ts"],"names":[],"mappings":"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"}