driftdetect-core 0.1.2 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/dist/boundaries/boundary-store.d.ts +92 -0
  2. package/dist/boundaries/boundary-store.d.ts.map +1 -0
  3. package/dist/boundaries/boundary-store.js +458 -0
  4. package/dist/boundaries/boundary-store.js.map +1 -0
  5. package/dist/boundaries/index.d.ts +8 -0
  6. package/dist/boundaries/index.d.ts.map +1 -0
  7. package/dist/boundaries/index.js +8 -0
  8. package/dist/boundaries/index.js.map +1 -0
  9. package/dist/boundaries/types.d.ts +237 -0
  10. package/dist/boundaries/types.d.ts.map +1 -0
  11. package/dist/boundaries/types.js +8 -0
  12. package/dist/boundaries/types.js.map +1 -0
  13. package/dist/dna/ai-context.d.ts +10 -0
  14. package/dist/dna/ai-context.d.ts.map +1 -0
  15. package/dist/dna/ai-context.js +46 -0
  16. package/dist/dna/ai-context.js.map +1 -0
  17. package/dist/dna/dna-analyzer.d.ts +34 -0
  18. package/dist/dna/dna-analyzer.d.ts.map +1 -0
  19. package/dist/dna/dna-analyzer.js +110 -0
  20. package/dist/dna/dna-analyzer.js.map +1 -0
  21. package/dist/dna/dna-store.d.ts +13 -0
  22. package/dist/dna/dna-store.d.ts.map +1 -0
  23. package/dist/dna/dna-store.js +43 -0
  24. package/dist/dna/dna-store.js.map +1 -0
  25. package/dist/dna/gene-extractors/animation-approach.d.ts +15 -0
  26. package/dist/dna/gene-extractors/animation-approach.d.ts.map +1 -0
  27. package/dist/dna/gene-extractors/animation-approach.js +97 -0
  28. package/dist/dna/gene-extractors/animation-approach.js.map +1 -0
  29. package/dist/dna/gene-extractors/base-extractor.d.ts +53 -0
  30. package/dist/dna/gene-extractors/base-extractor.d.ts.map +1 -0
  31. package/dist/dna/gene-extractors/base-extractor.js +76 -0
  32. package/dist/dna/gene-extractors/base-extractor.js.map +1 -0
  33. package/dist/dna/gene-extractors/index.d.ts +16 -0
  34. package/dist/dna/gene-extractors/index.d.ts.map +1 -0
  35. package/dist/dna/gene-extractors/index.js +38 -0
  36. package/dist/dna/gene-extractors/index.js.map +1 -0
  37. package/dist/dna/gene-extractors/responsive-approach.d.ts +10 -0
  38. package/dist/dna/gene-extractors/responsive-approach.d.ts.map +1 -0
  39. package/dist/dna/gene-extractors/responsive-approach.js +30 -0
  40. package/dist/dna/gene-extractors/responsive-approach.js.map +1 -0
  41. package/dist/dna/gene-extractors/spacing-philosophy.d.ts +10 -0
  42. package/dist/dna/gene-extractors/spacing-philosophy.d.ts.map +1 -0
  43. package/dist/dna/gene-extractors/spacing-philosophy.js +30 -0
  44. package/dist/dna/gene-extractors/spacing-philosophy.js.map +1 -0
  45. package/dist/dna/gene-extractors/state-styling.d.ts +10 -0
  46. package/dist/dna/gene-extractors/state-styling.d.ts.map +1 -0
  47. package/dist/dna/gene-extractors/state-styling.js +29 -0
  48. package/dist/dna/gene-extractors/state-styling.js.map +1 -0
  49. package/dist/dna/gene-extractors/theming.d.ts +10 -0
  50. package/dist/dna/gene-extractors/theming.d.ts.map +1 -0
  51. package/dist/dna/gene-extractors/theming.js +30 -0
  52. package/dist/dna/gene-extractors/theming.js.map +1 -0
  53. package/dist/dna/gene-extractors/variant-handling.d.ts +13 -0
  54. package/dist/dna/gene-extractors/variant-handling.d.ts.map +1 -0
  55. package/dist/dna/gene-extractors/variant-handling.js +38 -0
  56. package/dist/dna/gene-extractors/variant-handling.js.map +1 -0
  57. package/dist/dna/health-calculator.d.ts +21 -0
  58. package/dist/dna/health-calculator.d.ts.map +1 -0
  59. package/dist/dna/health-calculator.js +113 -0
  60. package/dist/dna/health-calculator.js.map +1 -0
  61. package/dist/dna/index.d.ts +21 -0
  62. package/dist/dna/index.d.ts.map +1 -0
  63. package/dist/dna/index.js +19 -0
  64. package/dist/dna/index.js.map +1 -0
  65. package/dist/dna/mutation-detector.d.ts +10 -0
  66. package/dist/dna/mutation-detector.d.ts.map +1 -0
  67. package/dist/dna/mutation-detector.js +39 -0
  68. package/dist/dna/mutation-detector.js.map +1 -0
  69. package/dist/dna/playbook-generator.d.ts +6 -0
  70. package/dist/dna/playbook-generator.d.ts.map +1 -0
  71. package/dist/dna/playbook-generator.js +53 -0
  72. package/dist/dna/playbook-generator.js.map +1 -0
  73. package/dist/dna/types.d.ts +95 -0
  74. package/dist/dna/types.d.ts.map +1 -0
  75. package/dist/dna/types.js +8 -0
  76. package/dist/dna/types.js.map +1 -0
  77. package/dist/index.d.ts +7 -0
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +10 -0
  80. package/dist/index.js.map +1 -1
  81. package/dist/parsers/parser-manager.d.ts.map +1 -1
  82. package/dist/parsers/parser-manager.js +2 -0
  83. package/dist/parsers/parser-manager.js.map +1 -1
  84. package/dist/parsers/tree-sitter/config.d.ts +82 -0
  85. package/dist/parsers/tree-sitter/config.d.ts.map +1 -0
  86. package/dist/parsers/tree-sitter/config.js +200 -0
  87. package/dist/parsers/tree-sitter/config.js.map +1 -0
  88. package/dist/parsers/tree-sitter/csharp-ast-converter.d.ts +64 -0
  89. package/dist/parsers/tree-sitter/csharp-ast-converter.d.ts.map +1 -0
  90. package/dist/parsers/tree-sitter/csharp-ast-converter.js +271 -0
  91. package/dist/parsers/tree-sitter/csharp-ast-converter.js.map +1 -0
  92. package/dist/parsers/tree-sitter/csharp-loader.d.ts +43 -0
  93. package/dist/parsers/tree-sitter/csharp-loader.d.ts.map +1 -0
  94. package/dist/parsers/tree-sitter/csharp-loader.js +146 -0
  95. package/dist/parsers/tree-sitter/csharp-loader.js.map +1 -0
  96. package/dist/parsers/tree-sitter/index.d.ts +26 -0
  97. package/dist/parsers/tree-sitter/index.d.ts.map +1 -0
  98. package/dist/parsers/tree-sitter/index.js +47 -0
  99. package/dist/parsers/tree-sitter/index.js.map +1 -0
  100. package/dist/parsers/tree-sitter/java/annotation-extractor.d.ts +79 -0
  101. package/dist/parsers/tree-sitter/java/annotation-extractor.d.ts.map +1 -0
  102. package/dist/parsers/tree-sitter/java/annotation-extractor.js +540 -0
  103. package/dist/parsers/tree-sitter/java/annotation-extractor.js.map +1 -0
  104. package/dist/parsers/tree-sitter/java/class-extractor.d.ts +40 -0
  105. package/dist/parsers/tree-sitter/java/class-extractor.d.ts.map +1 -0
  106. package/dist/parsers/tree-sitter/java/class-extractor.js +770 -0
  107. package/dist/parsers/tree-sitter/java/class-extractor.js.map +1 -0
  108. package/dist/parsers/tree-sitter/java/index.d.ts +14 -0
  109. package/dist/parsers/tree-sitter/java/index.d.ts.map +1 -0
  110. package/dist/parsers/tree-sitter/java/index.js +25 -0
  111. package/dist/parsers/tree-sitter/java/index.js.map +1 -0
  112. package/dist/parsers/tree-sitter/java/method-extractor.d.ts +88 -0
  113. package/dist/parsers/tree-sitter/java/method-extractor.d.ts.map +1 -0
  114. package/dist/parsers/tree-sitter/java/method-extractor.js +551 -0
  115. package/dist/parsers/tree-sitter/java/method-extractor.js.map +1 -0
  116. package/dist/parsers/tree-sitter/java/types.d.ts +545 -0
  117. package/dist/parsers/tree-sitter/java/types.d.ts.map +1 -0
  118. package/dist/parsers/tree-sitter/java/types.js +81 -0
  119. package/dist/parsers/tree-sitter/java/types.js.map +1 -0
  120. package/dist/parsers/tree-sitter/loader.d.ts +50 -0
  121. package/dist/parsers/tree-sitter/loader.d.ts.map +1 -0
  122. package/dist/parsers/tree-sitter/loader.js +156 -0
  123. package/dist/parsers/tree-sitter/loader.js.map +1 -0
  124. package/dist/parsers/tree-sitter/pydantic/config-extractor.d.ts +78 -0
  125. package/dist/parsers/tree-sitter/pydantic/config-extractor.d.ts.map +1 -0
  126. package/dist/parsers/tree-sitter/pydantic/config-extractor.js +278 -0
  127. package/dist/parsers/tree-sitter/pydantic/config-extractor.js.map +1 -0
  128. package/dist/parsers/tree-sitter/pydantic/constraint-parser.d.ts +84 -0
  129. package/dist/parsers/tree-sitter/pydantic/constraint-parser.d.ts.map +1 -0
  130. package/dist/parsers/tree-sitter/pydantic/constraint-parser.js +321 -0
  131. package/dist/parsers/tree-sitter/pydantic/constraint-parser.js.map +1 -0
  132. package/dist/parsers/tree-sitter/pydantic/field-extractor.d.ts +74 -0
  133. package/dist/parsers/tree-sitter/pydantic/field-extractor.d.ts.map +1 -0
  134. package/dist/parsers/tree-sitter/pydantic/field-extractor.js +285 -0
  135. package/dist/parsers/tree-sitter/pydantic/field-extractor.js.map +1 -0
  136. package/dist/parsers/tree-sitter/pydantic/index.d.ts +18 -0
  137. package/dist/parsers/tree-sitter/pydantic/index.d.ts.map +1 -0
  138. package/dist/parsers/tree-sitter/pydantic/index.js +23 -0
  139. package/dist/parsers/tree-sitter/pydantic/index.js.map +1 -0
  140. package/dist/parsers/tree-sitter/pydantic/inheritance-resolver.d.ts +70 -0
  141. package/dist/parsers/tree-sitter/pydantic/inheritance-resolver.d.ts.map +1 -0
  142. package/dist/parsers/tree-sitter/pydantic/inheritance-resolver.js +251 -0
  143. package/dist/parsers/tree-sitter/pydantic/inheritance-resolver.js.map +1 -0
  144. package/dist/parsers/tree-sitter/pydantic/pydantic-extractor.d.ts +102 -0
  145. package/dist/parsers/tree-sitter/pydantic/pydantic-extractor.d.ts.map +1 -0
  146. package/dist/parsers/tree-sitter/pydantic/pydantic-extractor.js +399 -0
  147. package/dist/parsers/tree-sitter/pydantic/pydantic-extractor.js.map +1 -0
  148. package/dist/parsers/tree-sitter/pydantic/type-resolver.d.ts +89 -0
  149. package/dist/parsers/tree-sitter/pydantic/type-resolver.d.ts.map +1 -0
  150. package/dist/parsers/tree-sitter/pydantic/type-resolver.js +426 -0
  151. package/dist/parsers/tree-sitter/pydantic/type-resolver.js.map +1 -0
  152. package/dist/parsers/tree-sitter/pydantic/types.d.ts +177 -0
  153. package/dist/parsers/tree-sitter/pydantic/types.d.ts.map +1 -0
  154. package/dist/parsers/tree-sitter/pydantic/types.js +139 -0
  155. package/dist/parsers/tree-sitter/pydantic/types.js.map +1 -0
  156. package/dist/parsers/tree-sitter/pydantic/validator-extractor.d.ts +88 -0
  157. package/dist/parsers/tree-sitter/pydantic/validator-extractor.d.ts.map +1 -0
  158. package/dist/parsers/tree-sitter/pydantic/validator-extractor.js +315 -0
  159. package/dist/parsers/tree-sitter/pydantic/validator-extractor.js.map +1 -0
  160. package/dist/parsers/tree-sitter/python-ast-converter.d.ts +140 -0
  161. package/dist/parsers/tree-sitter/python-ast-converter.d.ts.map +1 -0
  162. package/dist/parsers/tree-sitter/python-ast-converter.js +360 -0
  163. package/dist/parsers/tree-sitter/python-ast-converter.js.map +1 -0
  164. package/dist/parsers/tree-sitter/tree-sitter-csharp-parser.d.ts +465 -0
  165. package/dist/parsers/tree-sitter/tree-sitter-csharp-parser.d.ts.map +1 -0
  166. package/dist/parsers/tree-sitter/tree-sitter-csharp-parser.js +1146 -0
  167. package/dist/parsers/tree-sitter/tree-sitter-csharp-parser.js.map +1 -0
  168. package/dist/parsers/tree-sitter/tree-sitter-python-parser.d.ts +86 -0
  169. package/dist/parsers/tree-sitter/tree-sitter-python-parser.d.ts.map +1 -0
  170. package/dist/parsers/tree-sitter/tree-sitter-python-parser.js +177 -0
  171. package/dist/parsers/tree-sitter/tree-sitter-python-parser.js.map +1 -0
  172. package/dist/parsers/tree-sitter/types.d.ts +399 -0
  173. package/dist/parsers/tree-sitter/types.d.ts.map +1 -0
  174. package/dist/parsers/tree-sitter/types.js +20 -0
  175. package/dist/parsers/tree-sitter/types.js.map +1 -0
  176. package/dist/parsers/types.d.ts +1 -1
  177. package/dist/parsers/types.d.ts.map +1 -1
  178. package/dist/scanner/file-walker.d.ts.map +1 -1
  179. package/dist/scanner/file-walker.js +5 -0
  180. package/dist/scanner/file-walker.js.map +1 -1
  181. package/dist/store/history-store.d.ts +85 -269
  182. package/dist/store/history-store.d.ts.map +1 -1
  183. package/dist/store/history-store.js +272 -624
  184. package/dist/store/history-store.js.map +1 -1
  185. package/dist/types/index.d.ts +1 -0
  186. package/dist/types/index.d.ts.map +1 -1
  187. package/dist/types/index.js +2 -0
  188. package/dist/types/index.js.map +1 -1
  189. package/dist/types/java-type-mapping.d.ts +79 -0
  190. package/dist/types/java-type-mapping.d.ts.map +1 -0
  191. package/dist/types/java-type-mapping.js +290 -0
  192. package/dist/types/java-type-mapping.js.map +1 -0
  193. package/package.json +8 -3
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Tree-sitter C# Loader
3
+ *
4
+ * Handles loading tree-sitter and tree-sitter-c-sharp with graceful fallback.
5
+ * Provides functions to check availability and access the parser/language.
6
+ *
7
+ * @requirements 3.5 - Unified AST query interface
8
+ */
9
+ import type { TreeSitterParser, TreeSitterLanguage } from './types.js';
10
+ /**
11
+ * Check if tree-sitter-c-sharp is available.
12
+ *
13
+ * This function attempts to load tree-sitter and tree-sitter-c-sharp
14
+ * on first call and caches the result.
15
+ *
16
+ * @returns true if tree-sitter-c-sharp is available and working
17
+ */
18
+ export declare function isCSharpTreeSitterAvailable(): boolean;
19
+ /**
20
+ * Get the C# language for tree-sitter.
21
+ *
22
+ * @returns TreeSitter C# language
23
+ * @throws Error if tree-sitter-c-sharp is not available
24
+ */
25
+ export declare function getCSharpLanguage(): TreeSitterLanguage;
26
+ /**
27
+ * Create a new tree-sitter parser instance configured for C#.
28
+ *
29
+ * @returns Configured TreeSitter parser
30
+ * @throws Error if tree-sitter-c-sharp is not available
31
+ */
32
+ export declare function createCSharpParser(): TreeSitterParser;
33
+ /**
34
+ * Get the loading error message if tree-sitter-c-sharp failed to load.
35
+ *
36
+ * @returns Error message or null if no error
37
+ */
38
+ export declare function getCSharpLoadingError(): string | null;
39
+ /**
40
+ * Reset the loader state (useful for testing).
41
+ */
42
+ export declare function resetCSharpLoader(): void;
43
+ //# sourceMappingURL=csharp-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csharp-loader.d.ts","sourceRoot":"","sources":["../../../src/parsers/tree-sitter/csharp-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAyBvE;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,IAAI,OAAO,CAerD;AAGD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,kBAAkB,CAUtD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,gBAAgB,CAgBrD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,IAAI,CAIrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Tree-sitter C# Loader
3
+ *
4
+ * Handles loading tree-sitter and tree-sitter-c-sharp with graceful fallback.
5
+ * Provides functions to check availability and access the parser/language.
6
+ *
7
+ * @requirements 3.5 - Unified AST query interface
8
+ */
9
+ import { createRequire } from 'node:module';
10
+ // Create require function for ESM compatibility
11
+ const require = createRequire(import.meta.url);
12
+ // ============================================
13
+ // Module State
14
+ // ============================================
15
+ /** Whether tree-sitter-c-sharp is available */
16
+ let csharpAvailable = null;
17
+ /** Cached tree-sitter module */
18
+ let cachedTreeSitter = null;
19
+ /** Cached C# language */
20
+ let cachedCSharpLanguage = null;
21
+ /** Loading error message if any */
22
+ let loadingError = null;
23
+ // ============================================
24
+ // Public API
25
+ // ============================================
26
+ /**
27
+ * Check if tree-sitter-c-sharp is available.
28
+ *
29
+ * This function attempts to load tree-sitter and tree-sitter-c-sharp
30
+ * on first call and caches the result.
31
+ *
32
+ * @returns true if tree-sitter-c-sharp is available and working
33
+ */
34
+ export function isCSharpTreeSitterAvailable() {
35
+ if (csharpAvailable !== null) {
36
+ return csharpAvailable;
37
+ }
38
+ try {
39
+ loadCSharpTreeSitter();
40
+ csharpAvailable = true;
41
+ }
42
+ catch (error) {
43
+ csharpAvailable = false;
44
+ loadingError = error instanceof Error ? error.message : 'Unknown error loading tree-sitter-c-sharp';
45
+ logDebug(`tree-sitter-c-sharp not available: ${loadingError}`);
46
+ }
47
+ return csharpAvailable;
48
+ }
49
+ /**
50
+ * Get the C# language for tree-sitter.
51
+ *
52
+ * @returns TreeSitter C# language
53
+ * @throws Error if tree-sitter-c-sharp is not available
54
+ */
55
+ export function getCSharpLanguage() {
56
+ if (!isCSharpTreeSitterAvailable()) {
57
+ throw new Error(`tree-sitter-c-sharp is not available: ${loadingError ?? 'unknown error'}`);
58
+ }
59
+ if (!cachedCSharpLanguage) {
60
+ throw new Error('tree-sitter-c-sharp language not loaded');
61
+ }
62
+ return cachedCSharpLanguage;
63
+ }
64
+ /**
65
+ * Create a new tree-sitter parser instance configured for C#.
66
+ *
67
+ * @returns Configured TreeSitter parser
68
+ * @throws Error if tree-sitter-c-sharp is not available
69
+ */
70
+ export function createCSharpParser() {
71
+ if (!isCSharpTreeSitterAvailable()) {
72
+ throw new Error(`tree-sitter-c-sharp is not available: ${loadingError ?? 'unknown error'}`);
73
+ }
74
+ if (!cachedTreeSitter) {
75
+ throw new Error('tree-sitter module not loaded');
76
+ }
77
+ const Parser = cachedTreeSitter;
78
+ const language = getCSharpLanguage();
79
+ const parser = new Parser();
80
+ parser.setLanguage(language);
81
+ return parser;
82
+ }
83
+ /**
84
+ * Get the loading error message if tree-sitter-c-sharp failed to load.
85
+ *
86
+ * @returns Error message or null if no error
87
+ */
88
+ export function getCSharpLoadingError() {
89
+ // Ensure we've attempted to load
90
+ isCSharpTreeSitterAvailable();
91
+ return loadingError;
92
+ }
93
+ /**
94
+ * Reset the loader state (useful for testing).
95
+ */
96
+ export function resetCSharpLoader() {
97
+ csharpAvailable = null;
98
+ cachedTreeSitter = null;
99
+ cachedCSharpLanguage = null;
100
+ loadingError = null;
101
+ }
102
+ // ============================================
103
+ // Internal Functions
104
+ // ============================================
105
+ /**
106
+ * Attempt to load tree-sitter and tree-sitter-c-sharp.
107
+ *
108
+ * @throws Error if loading fails
109
+ */
110
+ function loadCSharpTreeSitter() {
111
+ // Skip if already loaded
112
+ if (cachedTreeSitter && cachedCSharpLanguage) {
113
+ return;
114
+ }
115
+ try {
116
+ // Dynamic require for optional dependencies
117
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
118
+ cachedTreeSitter = require('tree-sitter');
119
+ }
120
+ catch (error) {
121
+ throw new Error(`Failed to load tree-sitter: ${error instanceof Error ? error.message : 'unknown error'}. ` +
122
+ 'Install with: pnpm add tree-sitter tree-sitter-c-sharp');
123
+ }
124
+ try {
125
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
126
+ cachedCSharpLanguage = require('tree-sitter-c-sharp');
127
+ }
128
+ catch (error) {
129
+ // Clear tree-sitter cache since we can't use it without C#
130
+ cachedTreeSitter = null;
131
+ throw new Error(`Failed to load tree-sitter-c-sharp: ${error instanceof Error ? error.message : 'unknown error'}. ` +
132
+ 'Install with: pnpm add tree-sitter-c-sharp');
133
+ }
134
+ logDebug('tree-sitter and tree-sitter-c-sharp loaded successfully');
135
+ }
136
+ /**
137
+ * Log debug message if debug mode is enabled.
138
+ *
139
+ * @param message - Message to log
140
+ */
141
+ function logDebug(message) {
142
+ if (process.env['DRIFT_PARSER_DEBUG'] === 'true') {
143
+ console.debug(`[csharp-loader] ${message}`);
144
+ }
145
+ }
146
+ //# sourceMappingURL=csharp-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csharp-loader.js","sourceRoot":"","sources":["../../../src/parsers/tree-sitter/csharp-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Tree-sitter Parser Module
3
+ *
4
+ * Public exports for tree-sitter parser integrations.
5
+ * Provides AST parsing for Python (with Pydantic support) and C# (with ASP.NET support).
6
+ *
7
+ * @requirements 3.5 - Unified AST query interface
8
+ */
9
+ export { TreeSitterPythonParser } from './tree-sitter-python-parser.js';
10
+ export type { TreeSitterPythonParseResult } from './tree-sitter-python-parser.js';
11
+ export { TreeSitterCSharpParser } from './tree-sitter-csharp-parser.js';
12
+ export type { TreeSitterCSharpParseResult, CSharpUsingInfo, CSharpNamespaceInfo, CSharpAttributeInfo, CSharpParameterInfo, CSharpMethodInfo, CSharpPropertyInfo, CSharpFieldInfo, CSharpConstructorInfo, CSharpClassInfo, CSharpRecordInfo, CSharpStructInfo, CSharpInterfaceInfo, CSharpEnumInfo, } from './tree-sitter-csharp-parser.js';
13
+ export { isTreeSitterAvailable, getTreeSitter, getPythonLanguage, createPythonParser, getLoadingError, } from './loader.js';
14
+ export { isCSharpTreeSitterAvailable, getCSharpLanguage, createCSharpParser, getCSharpLoadingError, resetCSharpLoader, } from './csharp-loader.js';
15
+ export type { PythonParserConfig } from './config.js';
16
+ export { DEFAULT_PYTHON_PARSER_CONFIG, validateConfig, mergeConfig, configFromEnv, } from './config.js';
17
+ export type { TreeSitterNode, TreeSitterTree, TreeSitterParser, TreeSitterLanguage, TreeSitterPoint, TreeSitterQuery, TreeSitterQueryMatch, TreeSitterQueryCapture, PydanticModelInfo, PydanticFieldInfo, PydanticValidatorInfo, PydanticConfigInfo, TypeInfo, FieldConstraints, } from './types.js';
18
+ export { PythonASTConverter, convertPoint, convertNodeType } from './python-ast-converter.js';
19
+ export type { ConversionOptions } from './python-ast-converter.js';
20
+ export { CSharpASTConverter, convertCSharpPoint, convertCSharpNodeType } from './csharp-ast-converter.js';
21
+ export type { CSharpConversionOptions } from './csharp-ast-converter.js';
22
+ export { PydanticExtractor, FieldExtractor, TypeResolver, ConstraintParser, ValidatorExtractor, ConfigExtractor, InheritanceResolver, modelsToContractFields, findModel, getModelNames, hasNumericConstraints, hasStringConstraints, hasAnyConstraints, mergeConstraints, createExtractionContext, PYTHON_TYPE_MAP, PYDANTIC_BASE_CLASSES, } from './pydantic/index.js';
23
+ export type { ExtractionContext, RawFieldData, FieldArgument, ParsedType, RawValidatorData, ValidatorDecoratorType, ValidatorMode, RawConfigData, ConfigValue, BaseClassInfo, } from './pydantic/index.js';
24
+ export { extractAnnotations, extractParameterAnnotations, resolveAnnotationFullName, buildImportMap, findChildrenByType, hasAnnotationArgument, getAnnotationArgument, getAnnotationValue, isWebMappingAnnotation, isStereotypeAnnotation, isValidationAnnotation, extractModifiers, deriveAccessibility, extractClasses, extractInterfaces, extractEnums, extractRecords, extractAnnotationDefinitions, extractMethod, extractConstructor, extractField, hasAnnotation, getAnnotation, isRequestHandler, isTransactional, hasSecurityAnnotation, getHttpMethod, getRequestPath, getPathVariables, getRequestBody, getQueryParameters, DEFAULT_ANNOTATION_OPTIONS, COMMON_SPRING_ANNOTATIONS, } from './java/index.js';
25
+ export type { JavaModifier, JavaAccessibility, PackageInfo, JavaImportInfo, AnnotationValueType, AnnotationArgument, AnnotationTarget, AnnotationUsage, JavaParameterInfo, JavaMethodInfo, JavaConstructorInfo, JavaFieldInfo, JavaClassInfo, JavaInterfaceInfo, JavaEnumConstant, JavaEnumInfo, JavaRecordComponent, JavaRecordInfo, AnnotationElement, AnnotationDefinition, JavaParseResult, AnnotationExtractionOptions, } from './java/index.js';
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsers/tree-sitter/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Tree-sitter Parser Module
3
+ *
4
+ * Public exports for tree-sitter parser integrations.
5
+ * Provides AST parsing for Python (with Pydantic support) and C# (with ASP.NET support).
6
+ *
7
+ * @requirements 3.5 - Unified AST query interface
8
+ */
9
+ // ============================================
10
+ // Python Parser Exports
11
+ // ============================================
12
+ export { TreeSitterPythonParser } from './tree-sitter-python-parser.js';
13
+ // ============================================
14
+ // C# Parser Exports
15
+ // ============================================
16
+ export { TreeSitterCSharpParser } from './tree-sitter-csharp-parser.js';
17
+ // ============================================
18
+ // Python Loader Exports
19
+ // ============================================
20
+ export { isTreeSitterAvailable, getTreeSitter, getPythonLanguage, createPythonParser, getLoadingError, } from './loader.js';
21
+ // ============================================
22
+ // C# Loader Exports
23
+ // ============================================
24
+ export { isCSharpTreeSitterAvailable, getCSharpLanguage, createCSharpParser, getCSharpLoadingError, resetCSharpLoader, } from './csharp-loader.js';
25
+ export { DEFAULT_PYTHON_PARSER_CONFIG, validateConfig, mergeConfig, configFromEnv, } from './config.js';
26
+ // ============================================
27
+ // AST Converter Exports
28
+ // ============================================
29
+ export { PythonASTConverter, convertPoint, convertNodeType } from './python-ast-converter.js';
30
+ export { CSharpASTConverter, convertCSharpPoint, convertCSharpNodeType } from './csharp-ast-converter.js';
31
+ // ============================================
32
+ // Pydantic Module Exports
33
+ // ============================================
34
+ export { PydanticExtractor, FieldExtractor, TypeResolver, ConstraintParser, ValidatorExtractor, ConfigExtractor, InheritanceResolver, modelsToContractFields, findModel, getModelNames, hasNumericConstraints, hasStringConstraints, hasAnyConstraints, mergeConstraints, createExtractionContext, PYTHON_TYPE_MAP, PYDANTIC_BASE_CLASSES, } from './pydantic/index.js';
35
+ // ============================================
36
+ // Java Module Exports
37
+ // ============================================
38
+ export {
39
+ // Annotation utilities
40
+ extractAnnotations, extractParameterAnnotations, resolveAnnotationFullName, buildImportMap, findChildrenByType, hasAnnotationArgument, getAnnotationArgument, getAnnotationValue, isWebMappingAnnotation, isStereotypeAnnotation, isValidationAnnotation,
41
+ // Class extraction
42
+ extractModifiers, deriveAccessibility, extractClasses, extractInterfaces, extractEnums, extractRecords, extractAnnotationDefinitions,
43
+ // Method extraction
44
+ extractMethod, extractConstructor, extractField, hasAnnotation, getAnnotation, isRequestHandler, isTransactional, hasSecurityAnnotation, getHttpMethod, getRequestPath, getPathVariables, getRequestBody, getQueryParameters,
45
+ // Constants
46
+ DEFAULT_ANNOTATION_OPTIONS, COMMON_SPRING_ANNOTATIONS, } from './java/index.js';
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsers/tree-sitter/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAGxE,+CAA+C;AAC/C,oBAAoB;AACpB,+CAA+C;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAkBxE,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,+CAA+C;AAC/C,oBAAoB;AACpB,+CAA+C;AAE/C,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,WAAW,EACX,aAAa,GACd,MAAM,aAAa,CAAC;AAyBrB,+CAA+C;AAC/C,wBAAwB;AACxB,+CAA+C;AAE/C,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG9F,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAG1G,+CAA+C;AAC/C,0BAA0B;AAC1B,+CAA+C;AAE/C,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,SAAS,EACT,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAe7B,+CAA+C;AAC/C,sBAAsB;AACtB,+CAA+C;AAE/C,OAAO;AACL,uBAAuB;AACvB,kBAAkB,EAClB,2BAA2B,EAC3B,yBAAyB,EACzB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB;AACtB,mBAAmB;AACnB,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,4BAA4B;AAC5B,oBAAoB;AACpB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,kBAAkB;AAClB,YAAY;AACZ,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Java Annotation Extractor
3
+ *
4
+ * Extracts annotation information from Java AST nodes.
5
+ * Annotations are FIRST-CLASS CITIZENS in Spring - they drive
6
+ * DI, security, web, data, and virtually everything else.
7
+ *
8
+ * Handles:
9
+ * - Marker annotations: @Service
10
+ * - Single-value annotations: @RequestMapping("/api")
11
+ * - Named argument annotations: @Transactional(readOnly = true)
12
+ * - Array value annotations: @Secured({"ADMIN", "USER"})
13
+ * - Nested annotations: @Caching(@Cacheable(...), @CacheEvict(...))
14
+ *
15
+ * @requirements Java/Spring Boot Language Support
16
+ */
17
+ import type { TreeSitterNode } from '../types.js';
18
+ import type { AnnotationUsage, AnnotationArgument, AnnotationTarget, AnnotationExtractionOptions, JavaImportInfo } from './types.js';
19
+ /**
20
+ * Extract all annotations from a node and its preceding siblings.
21
+ *
22
+ * In Java, annotations appear before the element they annotate,
23
+ * either as siblings or as children of the parent node.
24
+ *
25
+ * @param node - The AST node to extract annotations from
26
+ * @param target - What type of element these annotations are on
27
+ * @param imports - Import statements for resolving full names
28
+ * @param options - Extraction options
29
+ * @returns Array of extracted annotations
30
+ */
31
+ export declare function extractAnnotations(node: TreeSitterNode, target: AnnotationTarget, imports?: JavaImportInfo[], options?: AnnotationExtractionOptions): AnnotationUsage[];
32
+ /**
33
+ * Extract annotations specifically for a parameter node.
34
+ * Parameters have a different structure in the AST.
35
+ */
36
+ export declare function extractParameterAnnotations(paramNode: TreeSitterNode, imports?: JavaImportInfo[], options?: AnnotationExtractionOptions): AnnotationUsage[];
37
+ /**
38
+ * Resolve the fully qualified name of an annotation.
39
+ *
40
+ * @param simpleName - The simple annotation name (e.g., "GetMapping")
41
+ * @param imports - Import statements from the file
42
+ * @returns The fully qualified name or null if not resolvable
43
+ */
44
+ export declare function resolveAnnotationFullName(simpleName: string, imports: JavaImportInfo[]): string | null;
45
+ /**
46
+ * Build an import map for faster lookups.
47
+ */
48
+ export declare function buildImportMap(imports: JavaImportInfo[]): Map<string, string>;
49
+ /**
50
+ * Find all children of a specific type.
51
+ */
52
+ export declare function findChildrenByType(node: TreeSitterNode, type: string): TreeSitterNode[];
53
+ /**
54
+ * Check if an annotation has a specific argument.
55
+ */
56
+ export declare function hasAnnotationArgument(annotation: AnnotationUsage, argumentName: string): boolean;
57
+ /**
58
+ * Get an annotation argument value by name.
59
+ */
60
+ export declare function getAnnotationArgument(annotation: AnnotationUsage, argumentName: string): AnnotationArgument | undefined;
61
+ /**
62
+ * Get the single/default value of an annotation.
63
+ * This is the value when no argument name is specified.
64
+ * @example @GetMapping("/api") -> "/api"
65
+ */
66
+ export declare function getAnnotationValue(annotation: AnnotationUsage): string | undefined;
67
+ /**
68
+ * Check if an annotation is a Spring web mapping annotation.
69
+ */
70
+ export declare function isWebMappingAnnotation(annotation: AnnotationUsage): boolean;
71
+ /**
72
+ * Check if an annotation is a Spring stereotype annotation.
73
+ */
74
+ export declare function isStereotypeAnnotation(annotation: AnnotationUsage): boolean;
75
+ /**
76
+ * Check if an annotation is a validation annotation.
77
+ */
78
+ export declare function isValidationAnnotation(annotation: AnnotationUsage): boolean;
79
+ //# sourceMappingURL=annotation-extractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotation-extractor.d.ts","sourceRoot":"","sources":["../../../../src/parsers/tree-sitter/java/annotation-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAEhB,2BAA2B,EAC3B,cAAc,EACf,MAAM,YAAY,CAAC;AAqBpB;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE,cAAc,EAAO,EAC9B,OAAO,GAAE,2BAAwD,GAChE,eAAe,EAAE,CA2CnB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,EACzB,OAAO,GAAE,cAAc,EAAO,EAC9B,OAAO,GAAE,2BAAwD,GAChE,eAAe,EAAE,CAcnB;AAkVD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EAAE,GACxB,MAAM,GAAG,IAAI,CAqCf;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAa7E;AAkBD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,EAAE,CAQvF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,MAAM,GACnB,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,MAAM,GACnB,kBAAkB,GAAG,SAAS,CAEhC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,GAAG,SAAS,CAUlF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAU3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAU3E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,eAAe,GAAG,OAAO,CAsB3E"}