agentmap 0.5.0 → 0.7.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 (64) hide show
  1. package/dist/cli.js +12 -4
  2. package/dist/cli.js.map +1 -1
  3. package/dist/extract/definitions.d.ts.map +1 -1
  4. package/dist/extract/definitions.js +195 -316
  5. package/dist/extract/definitions.js.map +1 -1
  6. package/dist/extract/definitions.test.js +749 -20
  7. package/dist/extract/definitions.test.js.map +1 -1
  8. package/dist/extract/markdown.d.ts.map +1 -1
  9. package/dist/extract/markdown.js +13 -1
  10. package/dist/extract/markdown.js.map +1 -1
  11. package/dist/extract/marker.d.ts.map +1 -1
  12. package/dist/extract/marker.js +87 -6
  13. package/dist/extract/marker.js.map +1 -1
  14. package/dist/extract/marker.test.js +142 -4
  15. package/dist/extract/marker.test.js.map +1 -1
  16. package/dist/index.d.ts +10 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +33 -1
  19. package/dist/index.js.map +1 -1
  20. package/dist/languages/cpp.d.ts +30 -0
  21. package/dist/languages/cpp.d.ts.map +1 -0
  22. package/dist/languages/cpp.js +116 -0
  23. package/dist/languages/cpp.js.map +1 -0
  24. package/dist/languages/go.d.ts +26 -0
  25. package/dist/languages/go.d.ts.map +1 -0
  26. package/dist/languages/go.js +65 -0
  27. package/dist/languages/go.js.map +1 -0
  28. package/dist/languages/index.d.ts +90 -0
  29. package/dist/languages/index.d.ts.map +1 -0
  30. package/dist/languages/index.js +209 -0
  31. package/dist/languages/index.js.map +1 -0
  32. package/dist/languages/javascript.d.ts +18 -0
  33. package/dist/languages/javascript.d.ts.map +1 -0
  34. package/dist/languages/javascript.js +23 -0
  35. package/dist/languages/javascript.js.map +1 -0
  36. package/dist/languages/python.d.ts +23 -0
  37. package/dist/languages/python.d.ts.map +1 -0
  38. package/dist/languages/python.js +35 -0
  39. package/dist/languages/python.js.map +1 -0
  40. package/dist/languages/rust.d.ts +26 -0
  41. package/dist/languages/rust.d.ts.map +1 -0
  42. package/dist/languages/rust.js +65 -0
  43. package/dist/languages/rust.js.map +1 -0
  44. package/dist/languages/typescript.d.ts +30 -0
  45. package/dist/languages/typescript.d.ts.map +1 -0
  46. package/dist/languages/typescript.js +68 -0
  47. package/dist/languages/typescript.js.map +1 -0
  48. package/dist/languages/zig.d.ts +38 -0
  49. package/dist/languages/zig.d.ts.map +1 -0
  50. package/dist/languages/zig.js +104 -0
  51. package/dist/languages/zig.js.map +1 -0
  52. package/dist/map/builder.d.ts.map +1 -1
  53. package/dist/map/builder.js +4 -1
  54. package/dist/map/builder.js.map +1 -1
  55. package/dist/parser/languages.d.ts +2 -4
  56. package/dist/parser/languages.d.ts.map +1 -1
  57. package/dist/parser/languages.js +4 -29
  58. package/dist/parser/languages.js.map +1 -1
  59. package/dist/scanner.d.ts.map +1 -1
  60. package/dist/scanner.js +27 -49
  61. package/dist/scanner.js.map +1 -1
  62. package/dist/types.d.ts +6 -2
  63. package/dist/types.d.ts.map +1 -1
  64. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/languages/javascript.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,WAAW,IAAI,aAAa,EAC5B,gBAAgB,IAAI,kBAAkB,EACtC,UAAU,IAAI,YAAY,EAC1B,YAAY,IAAI,cAAc,EAC/B,MAAM,iBAAiB,CAAA;AAExB,eAAO,MAAM,EAAE,EAAG,YAAqB,CAAA;AACvC,eAAO,MAAM,UAAU,UAAkC,CAAA;AACzD,eAAO,MAAM,OAAO,uDAAuD,CAAA;AAG3E,eAAO,MAAM,cAAc,UAAgD,CAAA;AAC3E,eAAO,MAAM,WAAW,UAAwB,CAAA;AAChD,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,eAAe,EAAE,MAAM,EAAO,CAAA;AAC3C,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,WAAW,UAA0B,CAAA;AAGlD,eAAO,MAAM,UAAU,qBAAe,CAAA;AACtC,eAAO,MAAM,YAAY,uBAAiB,CAAA;AAC1C,eAAO,MAAM,WAAW,sBAAgB,CAAA;AACxC,eAAO,MAAM,gBAAgB,2BAAqB,CAAA;AAGlD,eAAO,MAAM,eAAe,UAAe,CAAA"}
@@ -0,0 +1,23 @@
1
+ // JavaScript language support for agentmap.
2
+ // Shares most implementation with TypeScript.
3
+ import { extractName as tsExtractName, extractConstName as tsExtractConstName, isExported as tsIsExported, unwrapExport as tsUnwrapExport, } from './typescript.js';
4
+ export const id = 'javascript';
5
+ export const extensions = ['.js', '.jsx', '.mjs', '.cjs'];
6
+ export const grammar = 'tree-sitter-javascript/tree-sitter-javascript.wasm';
7
+ // AST node types
8
+ export const FUNCTION_TYPES = ['function_declaration', 'method_definition'];
9
+ export const CLASS_TYPES = ['class_declaration'];
10
+ export const STRUCT_TYPES = [];
11
+ export const TRAIT_TYPES = [];
12
+ export const INTERFACE_TYPES = [];
13
+ export const TYPE_TYPES = [];
14
+ export const ENUM_TYPES = [];
15
+ export const CONST_TYPES = ['lexical_declaration'];
16
+ // Reuse TypeScript implementations
17
+ export const isExported = tsIsExported;
18
+ export const unwrapExport = tsUnwrapExport;
19
+ export const extractName = tsExtractName;
20
+ export const extractConstName = tsExtractConstName;
21
+ // Comment handling
22
+ export const commentPrefixes = ['//', '/*'];
23
+ //# sourceMappingURL=javascript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javascript.js","sourceRoot":"","sources":["../../src/languages/javascript.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,8CAA8C;AAG9C,OAAO,EACL,WAAW,IAAI,aAAa,EAC5B,gBAAgB,IAAI,kBAAkB,EACtC,UAAU,IAAI,YAAY,EAC1B,YAAY,IAAI,cAAc,GAC/B,MAAM,iBAAiB,CAAA;AAExB,MAAM,CAAC,MAAM,EAAE,GAAG,YAAqB,CAAA;AACvC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AACzD,MAAM,CAAC,MAAM,OAAO,GAAG,oDAAoD,CAAA;AAE3E,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAA;AAC3E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,mBAAmB,CAAC,CAAA;AAChD,MAAM,CAAC,MAAM,YAAY,GAAa,EAAE,CAAA;AACxC,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAa,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA;AACtC,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA;AACtC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,qBAAqB,CAAC,CAAA;AAElD,mCAAmC;AACnC,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAA;AACtC,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAA;AAC1C,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAA;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAA;AAElD,mBAAmB;AACnB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -0,0 +1,23 @@
1
+ import type { SyntaxNode } from '../types.js';
2
+ export declare const id: "python";
3
+ export declare const extensions: string[];
4
+ export declare const grammar = "tree-sitter-python/tree-sitter-python.wasm";
5
+ export declare const FUNCTION_TYPES: string[];
6
+ export declare const CLASS_TYPES: string[];
7
+ export declare const STRUCT_TYPES: string[];
8
+ export declare const TRAIT_TYPES: string[];
9
+ export declare const INTERFACE_TYPES: string[];
10
+ export declare const TYPE_TYPES: string[];
11
+ export declare const ENUM_TYPES: string[];
12
+ export declare const CONST_TYPES: string[];
13
+ /**
14
+ * Python doesn't have explicit exports - everything is importable
15
+ */
16
+ export declare function isExported(_node: SyntaxNode): boolean;
17
+ /**
18
+ * Extract name from a Python node
19
+ */
20
+ export declare function extractName(node: SyntaxNode): string | null;
21
+ export declare const commentPrefixes: string[];
22
+ export declare const docstringType = "string";
23
+ //# sourceMappingURL=python.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/languages/python.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,eAAO,MAAM,EAAE,EAAG,QAAiB,CAAA;AACnC,eAAO,MAAM,UAAU,UAAkB,CAAA;AACzC,eAAO,MAAM,OAAO,+CAA+C,CAAA;AAGnE,eAAO,MAAM,cAAc,UAA0B,CAAA;AACrD,eAAO,MAAM,WAAW,UAAuB,CAAA;AAC/C,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,eAAe,EAAE,MAAM,EAAO,CAAA;AAC3C,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AAEvC;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAQ3D;AAGD,eAAO,MAAM,eAAe,UAAQ,CAAA;AACpC,eAAO,MAAM,aAAa,WAAW,CAAA"}
@@ -0,0 +1,35 @@
1
+ // Python language support for agentmap.
2
+ export const id = 'python';
3
+ export const extensions = ['.py', '.pyi'];
4
+ export const grammar = 'tree-sitter-python/tree-sitter-python.wasm';
5
+ // AST node types
6
+ export const FUNCTION_TYPES = ['function_definition'];
7
+ export const CLASS_TYPES = ['class_definition'];
8
+ export const STRUCT_TYPES = [];
9
+ export const TRAIT_TYPES = [];
10
+ export const INTERFACE_TYPES = [];
11
+ export const TYPE_TYPES = [];
12
+ export const ENUM_TYPES = [];
13
+ export const CONST_TYPES = []; // Python constants handled separately
14
+ /**
15
+ * Python doesn't have explicit exports - everything is importable
16
+ */
17
+ export function isExported(_node) {
18
+ return false;
19
+ }
20
+ /**
21
+ * Extract name from a Python node
22
+ */
23
+ export function extractName(node) {
24
+ for (let i = 0; i < node.childCount; i++) {
25
+ const child = node.child(i);
26
+ if (child?.type === 'identifier') {
27
+ return child.text;
28
+ }
29
+ }
30
+ return null;
31
+ }
32
+ // Comment handling
33
+ export const commentPrefixes = ['#'];
34
+ export const docstringType = 'string'; // Python uses docstrings
35
+ //# sourceMappingURL=python.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/languages/python.ts"],"names":[],"mappings":"AAAA,wCAAwC;AAIxC,MAAM,CAAC,MAAM,EAAE,GAAG,QAAiB,CAAA;AACnC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AACzC,MAAM,CAAC,MAAM,OAAO,GAAG,4CAA4C,CAAA;AAEnE,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,qBAAqB,CAAC,CAAA;AACrD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAa,EAAE,CAAA;AACxC,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAa,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA;AACtC,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA;AACtC,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA,CAAE,sCAAsC;AAE/E;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB;IAC1C,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,mBAAmB;AACnB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,CAAA;AACpC,MAAM,CAAC,MAAM,aAAa,GAAG,QAAQ,CAAA,CAAE,yBAAyB"}
@@ -0,0 +1,26 @@
1
+ import type { SyntaxNode } from '../types.js';
2
+ export declare const id: "rust";
3
+ export declare const extensions: string[];
4
+ export declare const grammar = "tree-sitter-rust/tree-sitter-rust.wasm";
5
+ export declare const FUNCTION_TYPES: string[];
6
+ export declare const CLASS_TYPES: string[];
7
+ export declare const STRUCT_TYPES: string[];
8
+ export declare const TRAIT_TYPES: string[];
9
+ export declare const INTERFACE_TYPES: string[];
10
+ export declare const TYPE_TYPES: string[];
11
+ export declare const ENUM_TYPES: string[];
12
+ export declare const CONST_TYPES: string[];
13
+ /**
14
+ * Check if a Rust node has 'pub' visibility modifier
15
+ */
16
+ export declare function isExported(node: SyntaxNode): boolean;
17
+ /**
18
+ * Extract name from a Rust node
19
+ */
20
+ export declare function extractName(node: SyntaxNode): string | null;
21
+ /**
22
+ * Extract name from const/static declaration
23
+ */
24
+ export declare function extractConstName(node: SyntaxNode): string | null;
25
+ export declare const commentPrefixes: string[];
26
+ //# sourceMappingURL=rust.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rust.d.ts","sourceRoot":"","sources":["../../src/languages/rust.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,eAAO,MAAM,EAAE,EAAG,MAAe,CAAA;AACjC,eAAO,MAAM,UAAU,UAAU,CAAA;AACjC,eAAO,MAAM,OAAO,2CAA2C,CAAA;AAG/D,eAAO,MAAM,cAAc,UAAoB,CAAA;AAC/C,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,YAAY,UAAkB,CAAA;AAC3C,eAAO,MAAM,WAAW,UAAiB,CAAA;AACzC,eAAO,MAAM,eAAe,EAAE,MAAM,EAAO,CAAA;AAC3C,eAAO,MAAM,UAAU,UAAgB,CAAA;AACvC,eAAO,MAAM,UAAU,UAAgB,CAAA;AACvC,eAAO,MAAM,WAAW,UAAgC,CAAA;AAExD;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CASpD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAkB3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAEhE;AAWD,eAAO,MAAM,eAAe,UAA6B,CAAA"}
@@ -0,0 +1,65 @@
1
+ // Rust language support for agentmap.
2
+ export const id = 'rust';
3
+ export const extensions = ['.rs'];
4
+ export const grammar = 'tree-sitter-rust/tree-sitter-rust.wasm';
5
+ // AST node types
6
+ export const FUNCTION_TYPES = ['function_item'];
7
+ export const CLASS_TYPES = []; // Rust has structs/traits, not classes
8
+ export const STRUCT_TYPES = ['struct_item'];
9
+ export const TRAIT_TYPES = ['trait_item'];
10
+ export const INTERFACE_TYPES = []; // Rust traits handled in TRAIT_TYPES
11
+ export const TYPE_TYPES = ['type_item'];
12
+ export const ENUM_TYPES = ['enum_item'];
13
+ export const CONST_TYPES = ['const_item', 'static_item'];
14
+ /**
15
+ * Check if a Rust node has 'pub' visibility modifier
16
+ */
17
+ export function isExported(node) {
18
+ for (let i = 0; i < node.childCount; i++) {
19
+ const child = node.child(i);
20
+ if (child?.type === 'visibility_modifier') {
21
+ return child.text.startsWith('pub');
22
+ }
23
+ if (child?.type === 'identifier' || child?.type === 'type_identifier')
24
+ break;
25
+ }
26
+ return false;
27
+ }
28
+ /**
29
+ * Extract name from a Rust node
30
+ */
31
+ export function extractName(node) {
32
+ if (node.type === 'impl_item') {
33
+ const typeNode = node.childForFieldName('type');
34
+ if (typeNode) {
35
+ const ident = typeNode.type === 'type_identifier'
36
+ ? typeNode
37
+ : findChild(typeNode, 'type_identifier');
38
+ return ident?.text ?? null;
39
+ }
40
+ }
41
+ for (let i = 0; i < node.childCount; i++) {
42
+ const child = node.child(i);
43
+ if (child?.type === 'identifier' || child?.type === 'type_identifier') {
44
+ return child.text;
45
+ }
46
+ }
47
+ return null;
48
+ }
49
+ /**
50
+ * Extract name from const/static declaration
51
+ */
52
+ export function extractConstName(node) {
53
+ return extractName(node);
54
+ }
55
+ function findChild(node, type) {
56
+ for (let i = 0; i < node.childCount; i++) {
57
+ const child = node.child(i);
58
+ if (child?.type === type)
59
+ return child;
60
+ }
61
+ return null;
62
+ }
63
+ // Comment handling
64
+ export const commentPrefixes = ['//', '/*', '//!', '///'];
65
+ //# sourceMappingURL=rust.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rust.js","sourceRoot":"","sources":["../../src/languages/rust.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { SyntaxNode } from '../types.js';
2
+ export declare const id: "typescript";
3
+ export declare const extensions: string[];
4
+ export declare const grammar = "tree-sitter-typescript/tree-sitter-tsx.wasm";
5
+ export declare const FUNCTION_TYPES: string[];
6
+ export declare const CLASS_TYPES: string[];
7
+ export declare const STRUCT_TYPES: string[];
8
+ export declare const TRAIT_TYPES: string[];
9
+ export declare const INTERFACE_TYPES: string[];
10
+ export declare const TYPE_TYPES: string[];
11
+ export declare const ENUM_TYPES: string[];
12
+ export declare const CONST_TYPES: string[];
13
+ /**
14
+ * Check if a node is an export statement
15
+ */
16
+ export declare function isExported(node: SyntaxNode): boolean;
17
+ /**
18
+ * Unwrap export statement to get the actual declaration
19
+ */
20
+ export declare function unwrapExport(node: SyntaxNode): SyntaxNode;
21
+ /**
22
+ * Extract name from a TypeScript/JavaScript node
23
+ */
24
+ export declare function extractName(node: SyntaxNode): string | null;
25
+ /**
26
+ * Extract name from const/let declaration
27
+ */
28
+ export declare function extractConstName(node: SyntaxNode): string | null;
29
+ export declare const commentPrefixes: string[];
30
+ //# sourceMappingURL=typescript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/languages/typescript.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,eAAO,MAAM,EAAE,EAAG,YAAqB,CAAA;AACvC,eAAO,MAAM,UAAU,UAAkC,CAAA;AACzD,eAAO,MAAM,OAAO,gDAAgD,CAAA;AAGpE,eAAO,MAAM,cAAc,UAAgD,CAAA;AAC3E,eAAO,MAAM,WAAW,UAAsD,CAAA;AAC9E,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,eAAe,UAA4B,CAAA;AACxD,eAAO,MAAM,UAAU,UAA6B,CAAA;AACpD,eAAO,MAAM,UAAU,UAAuB,CAAA;AAC9C,eAAO,MAAM,WAAW,UAA0B,CAAA;AAElD;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEpD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAWzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAY3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAShE;AAGD,eAAO,MAAM,eAAe,UAAe,CAAA"}
@@ -0,0 +1,68 @@
1
+ // TypeScript language support for agentmap.
2
+ export const id = 'typescript';
3
+ export const extensions = ['.ts', '.tsx', '.mts', '.cts'];
4
+ export const grammar = 'tree-sitter-typescript/tree-sitter-tsx.wasm';
5
+ // AST node types
6
+ export const FUNCTION_TYPES = ['function_declaration', 'method_definition'];
7
+ export const CLASS_TYPES = ['class_declaration', 'abstract_class_declaration'];
8
+ export const STRUCT_TYPES = [];
9
+ export const TRAIT_TYPES = [];
10
+ export const INTERFACE_TYPES = ['interface_declaration'];
11
+ export const TYPE_TYPES = ['type_alias_declaration'];
12
+ export const ENUM_TYPES = ['enum_declaration'];
13
+ export const CONST_TYPES = ['lexical_declaration'];
14
+ /**
15
+ * Check if a node is an export statement
16
+ */
17
+ export function isExported(node) {
18
+ return node.type === 'export_statement';
19
+ }
20
+ /**
21
+ * Unwrap export statement to get the actual declaration
22
+ */
23
+ export function unwrapExport(node) {
24
+ if (node.type === 'export_statement') {
25
+ for (let i = 0; i < node.childCount; i++) {
26
+ const child = node.child(i);
27
+ if (!child)
28
+ continue;
29
+ if (child.type !== 'export' && !child.type.includes('comment') && child.type !== 'default') {
30
+ return child;
31
+ }
32
+ }
33
+ }
34
+ return node;
35
+ }
36
+ /**
37
+ * Extract name from a TypeScript/JavaScript node
38
+ */
39
+ export function extractName(node) {
40
+ for (let i = 0; i < node.childCount; i++) {
41
+ const child = node.child(i);
42
+ if (!child)
43
+ continue;
44
+ if (child.type === 'identifier' || child.type === 'type_identifier') {
45
+ return child.text;
46
+ }
47
+ if (child.type === 'property_identifier') {
48
+ return child.text;
49
+ }
50
+ }
51
+ return null;
52
+ }
53
+ /**
54
+ * Extract name from const/let declaration
55
+ */
56
+ export function extractConstName(node) {
57
+ for (let i = 0; i < node.childCount; i++) {
58
+ const child = node.child(i);
59
+ if (child?.type === 'variable_declarator') {
60
+ const nameNode = child.childForFieldName('name');
61
+ return nameNode?.text ?? null;
62
+ }
63
+ }
64
+ return null;
65
+ }
66
+ // Comment handling
67
+ export const commentPrefixes = ['//', '/*'];
68
+ //# sourceMappingURL=typescript.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../src/languages/typescript.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAI5C,MAAM,CAAC,MAAM,EAAE,GAAG,YAAqB,CAAA;AACvC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AACzD,MAAM,CAAC,MAAM,OAAO,GAAG,6CAA6C,CAAA;AAEpE,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAA;AAC3E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,mBAAmB,EAAE,4BAA4B,CAAC,CAAA;AAC9E,MAAM,CAAC,MAAM,YAAY,GAAa,EAAE,CAAA;AACxC,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,uBAAuB,CAAC,CAAA;AACxD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,wBAAwB,CAAC,CAAA;AACpD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,qBAAqB,CAAC,CAAA;AAElD;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAgB;IACzC,OAAO,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAgB;IAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC3B,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC3F,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACpE,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;YACzC,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAgB;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,qBAAqB,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;YAChD,OAAO,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAA;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,mBAAmB;AACnB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -0,0 +1,38 @@
1
+ import type { SyntaxNode, DefinitionType } from '../types.js';
2
+ export declare const id: "zig";
3
+ export declare const extensions: string[];
4
+ export declare const grammar = "@tree-sitter-grammars/tree-sitter-zig/tree-sitter-zig.wasm";
5
+ export declare const FUNCTION_TYPES: string[];
6
+ export declare const CLASS_TYPES: string[];
7
+ export declare const STRUCT_TYPES: string[];
8
+ export declare const TRAIT_TYPES: string[];
9
+ export declare const INTERFACE_TYPES: string[];
10
+ export declare const TYPE_TYPES: string[];
11
+ export declare const ENUM_TYPES: string[];
12
+ export declare const CONST_TYPES: string[];
13
+ /**
14
+ * Check if a Zig node has 'pub' modifier
15
+ */
16
+ export declare function isExported(node: SyntaxNode): boolean;
17
+ /**
18
+ * Check if a Zig variable_declaration uses 'const' (not 'var')
19
+ */
20
+ export declare function isConst(node: SyntaxNode): boolean;
21
+ /**
22
+ * Check if a Zig variable_declaration contains a struct/enum/union declaration
23
+ */
24
+ export declare function getTypeDeclaration(node: SyntaxNode): DefinitionType | null;
25
+ /**
26
+ * Check if a Zig function has 'extern' modifier
27
+ */
28
+ export declare function isExtern(node: SyntaxNode): boolean;
29
+ /**
30
+ * Extract name from a Zig node
31
+ */
32
+ export declare function extractName(node: SyntaxNode): string | null;
33
+ /**
34
+ * Extract name from const/var declaration
35
+ */
36
+ export declare function extractConstName(node: SyntaxNode): string | null;
37
+ export declare const commentPrefixes: string[];
38
+ //# sourceMappingURL=zig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zig.d.ts","sourceRoot":"","sources":["../../src/languages/zig.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE7D,eAAO,MAAM,EAAE,EAAG,KAAc,CAAA;AAChC,eAAO,MAAM,UAAU,UAAW,CAAA;AAClC,eAAO,MAAM,OAAO,+DAA+D,CAAA;AAGnF,eAAO,MAAM,cAAc,UAA+C,CAAA;AAC1E,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,YAAY,EAAE,MAAM,EAAO,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAM,EAAO,CAAA;AACvC,eAAO,MAAM,eAAe,EAAE,MAAM,EAAO,CAAA;AAC3C,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,UAAU,EAAE,MAAM,EAAO,CAAA;AACtC,eAAO,MAAM,WAAW,UAA2B,CAAA;AAEnD;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAOpD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAOjD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,cAAc,GAAG,IAAI,CAQ1E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAOlD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAyB3D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAEhE;AAGD,eAAO,MAAM,eAAe,UAAe,CAAA"}
@@ -0,0 +1,104 @@
1
+ // Zig language support for agentmap.
2
+ export const id = 'zig';
3
+ export const extensions = ['.zig'];
4
+ export const grammar = '@tree-sitter-grammars/tree-sitter-zig/tree-sitter-zig.wasm';
5
+ // AST node types
6
+ export const FUNCTION_TYPES = ['function_declaration', 'test_declaration'];
7
+ export const CLASS_TYPES = []; // Zig has structs/unions, not classes
8
+ export const STRUCT_TYPES = []; // Handled via variable_declaration with struct value
9
+ export const TRAIT_TYPES = [];
10
+ export const INTERFACE_TYPES = [];
11
+ export const TYPE_TYPES = [];
12
+ export const ENUM_TYPES = []; // Handled via variable_declaration with enum value
13
+ export const CONST_TYPES = ['variable_declaration'];
14
+ /**
15
+ * Check if a Zig node has 'pub' modifier
16
+ */
17
+ export function isExported(node) {
18
+ for (let i = 0; i < node.childCount; i++) {
19
+ const child = node.child(i);
20
+ if (child?.type === 'pub')
21
+ return true;
22
+ if (child?.type === 'identifier' || child?.type === 'block')
23
+ break;
24
+ }
25
+ return false;
26
+ }
27
+ /**
28
+ * Check if a Zig variable_declaration uses 'const' (not 'var')
29
+ */
30
+ export function isConst(node) {
31
+ for (let i = 0; i < node.childCount; i++) {
32
+ const child = node.child(i);
33
+ if (child?.type === 'const')
34
+ return true;
35
+ if (child?.type === 'var')
36
+ return false;
37
+ }
38
+ return false;
39
+ }
40
+ /**
41
+ * Check if a Zig variable_declaration contains a struct/enum/union declaration
42
+ */
43
+ export function getTypeDeclaration(node) {
44
+ for (let i = 0; i < node.childCount; i++) {
45
+ const child = node.child(i);
46
+ if (child?.type === 'struct_declaration')
47
+ return 'struct';
48
+ if (child?.type === 'union_declaration')
49
+ return 'union';
50
+ if (child?.type === 'enum_declaration')
51
+ return 'enum';
52
+ }
53
+ return null;
54
+ }
55
+ /**
56
+ * Check if a Zig function has 'extern' modifier
57
+ */
58
+ export function isExtern(node) {
59
+ for (let i = 0; i < node.childCount; i++) {
60
+ const child = node.child(i);
61
+ if (child?.type === 'extern')
62
+ return true;
63
+ if (child?.type === 'block' || child?.type === 'fn')
64
+ break;
65
+ }
66
+ return false;
67
+ }
68
+ /**
69
+ * Extract name from a Zig node
70
+ */
71
+ export function extractName(node) {
72
+ if (node.type === 'test_declaration') {
73
+ for (let i = 0; i < node.childCount; i++) {
74
+ const child = node.child(i);
75
+ if (child?.type === 'string') {
76
+ const text = child.text;
77
+ if (text.startsWith('"') && text.endsWith('"')) {
78
+ return text.slice(1, -1);
79
+ }
80
+ return text;
81
+ }
82
+ if (child?.type === 'identifier') {
83
+ return child.text;
84
+ }
85
+ }
86
+ return null;
87
+ }
88
+ for (let i = 0; i < node.childCount; i++) {
89
+ const child = node.child(i);
90
+ if (child?.type === 'identifier') {
91
+ return child.text;
92
+ }
93
+ }
94
+ return null;
95
+ }
96
+ /**
97
+ * Extract name from const/var declaration
98
+ */
99
+ export function extractConstName(node) {
100
+ return extractName(node);
101
+ }
102
+ // Comment handling
103
+ export const commentPrefixes = ['//', '/*'];
104
+ //# sourceMappingURL=zig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zig.js","sourceRoot":"","sources":["../../src/languages/zig.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAIrC,MAAM,CAAC,MAAM,EAAE,GAAG,KAAc,CAAA;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAM,CAAC,CAAA;AAClC,MAAM,CAAC,MAAM,OAAO,GAAG,4DAA4D,CAAA;AAEnF,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAA;AAC1E,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA,CAAE,sCAAsC;AAC/E,MAAM,CAAC,MAAM,YAAY,GAAa,EAAE,CAAA,CAAE,qDAAqD;AAC/F,MAAM,CAAC,MAAM,WAAW,GAAa,EAAE,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAa,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA;AACtC,MAAM,CAAC,MAAM,UAAU,GAAa,EAAE,CAAA,CAAE,mDAAmD;AAC3F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,sBAAsB,CAAC,CAAA;AAEnD;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAgB;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK;YAAE,OAAO,IAAI,CAAA;QACtC,IAAI,KAAK,EAAE,IAAI,KAAK,YAAY,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO;YAAE,MAAK;IACpE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAgB;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAA;QACxC,IAAI,KAAK,EAAE,IAAI,KAAK,KAAK;YAAE,OAAO,KAAK,CAAA;IACzC,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,oBAAoB;YAAE,OAAO,QAAQ,CAAA;QACzD,IAAI,KAAK,EAAE,IAAI,KAAK,mBAAmB;YAAE,OAAO,OAAO,CAAA;QACvD,IAAI,KAAK,EAAE,IAAI,KAAK,kBAAkB;YAAE,OAAO,MAAM,CAAA;IACvD,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAgB;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;QACzC,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO,IAAI,KAAK,EAAE,IAAI,KAAK,IAAI;YAAE,MAAK;IAC5D,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;gBACvB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC1B,CAAC;gBACD,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;gBACjC,OAAO,KAAK,CAAC,IAAI,CAAA;YACnB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,IAAI,KAAK,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC,IAAI,CAAA;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAgB;IAC/C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED,mBAAmB;AACnB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/map/builder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAyB,UAAU,EAAiB,OAAO,EAAE,MAAM,aAAa,CAAA;AAE5F;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CASzE;AAwFD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM/C"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/map/builder.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAyB,UAAU,EAAiB,OAAO,EAAE,MAAM,aAAa,CAAA;AAE5F;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CASzE;AA4FD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM/C"}
@@ -25,7 +25,7 @@ function formatFileDiff(diff) {
25
25
  return parts.join('');
26
26
  }
27
27
  /**
28
- * Format a definition as a string like "line 13, function, exported, updated (+5-2)"
28
+ * Format a definition as a string like "line 13, function, exported, extern, updated (+5-2)"
29
29
  */
30
30
  function formatDefinition(def) {
31
31
  const lineStr = `line ${def.line}`;
@@ -33,6 +33,9 @@ function formatDefinition(def) {
33
33
  if (def.exported) {
34
34
  parts.push('exported');
35
35
  }
36
+ if (def.extern) {
37
+ parts.push('extern');
38
+ }
36
39
  // Add diff info if present
37
40
  if (def.diff) {
38
41
  // Format as +N-M or just +N or -M
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/map/builder.ts"],"names":[],"mappings":"AAAA,iDAAiD;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAG/B;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAqB,EAAE,QAAgB;IAC9D,MAAM,IAAI,GAAY,EAAE,CAAA;IAExB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC1B,CAAC;IAED,oBAAoB;IACpB,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAA;AAC7B,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,IAAmB;IACzC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IAC9B,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACvB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAe;IACvC,MAAM,OAAO,GAAG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAA;IAElC,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;IAEjC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACxB,CAAC;IAED,2BAA2B;IAC3B,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,kCAAkC;QAClC,MAAM,SAAS,GAAa,EAAE,CAAA;QAC9B,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACvB,SAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QACtC,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACzB,SAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAA;QACxC,CAAC;QAED,+DAA+D;QAC/D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;QAC1D,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,IAAa,EAAE,MAAkB;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,OAAO,GAAG,IAAI,CAAA;IAElB,sCAAsC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QACnB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,GAAG,CAAY,CAAA;IACnC,CAAC;IAED,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACxC,MAAM,KAAK,GAAc,EAAE,CAAA;IAE3B,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;IACxC,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAA;QACf,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,0BAA0B;IAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACvC,oDAAoD;IACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC9B,OAAO,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;AACpD,CAAC"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/map/builder.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  import Parser from 'web-tree-sitter';
2
2
  import type { Language } from '../types.js';
3
- /**
4
- * File extension to language mapping
5
- */
6
- export declare const LANGUAGE_EXTENSIONS: Record<string, Language>;
3
+ import { LANGUAGE_EXTENSIONS } from '../languages/index.js';
4
+ export { LANGUAGE_EXTENSIONS };
7
5
  /**
8
6
  * Detect language from file path extension
9
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../src/parser/languages.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAK3C;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAaxD,CAAA;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAGhE;AAoCD;;GAEG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAU9E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
1
+ {"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../src/parser/languages.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,EAAE,mBAAmB,EAAiB,MAAM,uBAAuB,CAAA;AAK1E,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAE9B;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAGhE;AAyBD;;GAEG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAU9E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
@@ -1,24 +1,10 @@
1
1
  // Language detection and grammar loading for tree-sitter.
2
2
  import Parser from 'web-tree-sitter';
3
3
  import { createRequire } from 'module';
4
+ import { LANGUAGE_EXTENSIONS, GRAMMAR_PATHS } from '../languages/index.js';
4
5
  const require = createRequire(import.meta.url);
5
- /**
6
- * File extension to language mapping
7
- */
8
- export const LANGUAGE_EXTENSIONS = {
9
- '.ts': 'typescript',
10
- '.tsx': 'typescript',
11
- '.mts': 'typescript',
12
- '.cts': 'typescript',
13
- '.js': 'javascript',
14
- '.jsx': 'javascript',
15
- '.mjs': 'javascript',
16
- '.cjs': 'javascript',
17
- '.py': 'python',
18
- '.pyi': 'python',
19
- '.rs': 'rust',
20
- '.go': 'go',
21
- };
6
+ // Re-export for backwards compatibility
7
+ export { LANGUAGE_EXTENSIONS };
22
8
  /**
23
9
  * Detect language from file path extension
24
10
  */
@@ -30,18 +16,7 @@ export function detectLanguage(filepath) {
30
16
  * Get the WASM grammar path for a language
31
17
  */
32
18
  function getGrammarPath(language) {
33
- switch (language) {
34
- case 'typescript':
35
- return require.resolve('tree-sitter-typescript/tree-sitter-tsx.wasm');
36
- case 'javascript':
37
- return require.resolve('tree-sitter-javascript/tree-sitter-javascript.wasm');
38
- case 'python':
39
- return require.resolve('tree-sitter-python/tree-sitter-python.wasm');
40
- case 'rust':
41
- return require.resolve('tree-sitter-rust/tree-sitter-rust.wasm');
42
- case 'go':
43
- return require.resolve('tree-sitter-go/tree-sitter-go.wasm');
44
- }
19
+ return require.resolve(GRAMMAR_PATHS[language]);
45
20
  }
46
21
  /**
47
22
  * Cache for loaded grammars
@@ -1 +1 @@
1
- {"version":3,"file":"languages.js","sourceRoot":"","sources":["../../src/parser/languages.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAE1D,OAAO,MAAM,MAAM,iBAAiB,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA6B;IAC3D,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,IAAI;CACZ,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,OAAO,mBAAmB,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,QAAkB;IACxC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,OAAO,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAA;QACvE,KAAK,YAAY;YACf,OAAO,OAAO,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAA;QAC9E,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAA;QACtE,KAAK,MAAM;YACT,OAAO,OAAO,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAA;QAClE,KAAK,IAAI;YACP,OAAO,OAAO,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAA;IAChE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAA;AAEzD;;GAEG;AACH,IAAI,iBAAiB,GAAG,KAAK,CAAA;AAC7B,KAAK,UAAU,gBAAgB;IAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACnB,iBAAiB,GAAG,IAAI,CAAA;IAC1B,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB;IAClD,MAAM,gBAAgB,EAAE,CAAA;IAExB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACzC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACnC,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,YAAY,CAAC,KAAK,EAAE,CAAA;AACtB,CAAC"}
1
+ {"version":3,"file":"languages.js","sourceRoot":"","sources":["../../src/parser/languages.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAE1D,OAAO,MAAM,MAAM,iBAAiB,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE9C,wCAAwC;AACxC,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAE9B;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,OAAO,mBAAmB,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,QAAkB;IACxC,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAA;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAA;AAEzD;;GAEG;AACH,IAAI,iBAAiB,GAAG,KAAK,CAAA;AAC7B,KAAK,UAAU,gBAAgB;IAC7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACnB,iBAAiB,GAAG,IAAI,CAAA;IAC1B,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,QAAkB;IAClD,MAAM,gBAAgB,EAAE,CAAA;IAExB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACzC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACrC,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChD,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACnC,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,YAAY,CAAC,KAAK,EAAE,CAAA;AACtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAA2B,MAAM,YAAY,CAAA;AAiFtF;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA6DxF"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAA2B,MAAM,YAAY,CAAA;AAuDtF;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAqExF"}