milens 0.4.0 → 0.4.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 (59) hide show
  1. package/LICENSE +75 -75
  2. package/README.md +479 -453
  3. package/dist/analyzer/config.d.ts +8 -0
  4. package/dist/analyzer/config.d.ts.map +1 -0
  5. package/dist/analyzer/config.js +132 -0
  6. package/dist/analyzer/config.js.map +1 -0
  7. package/dist/analyzer/engine.d.ts.map +1 -1
  8. package/dist/analyzer/engine.js +77 -4
  9. package/dist/analyzer/engine.js.map +1 -1
  10. package/dist/analyzer/enrich.d.ts +18 -0
  11. package/dist/analyzer/enrich.d.ts.map +1 -0
  12. package/dist/analyzer/enrich.js +139 -0
  13. package/dist/analyzer/enrich.js.map +1 -0
  14. package/dist/analyzer/resolver.d.ts +10 -1
  15. package/dist/analyzer/resolver.d.ts.map +1 -1
  16. package/dist/analyzer/resolver.js +309 -18
  17. package/dist/analyzer/resolver.js.map +1 -1
  18. package/dist/cli.js +478 -32
  19. package/dist/cli.js.map +1 -1
  20. package/dist/parser/extract.d.ts +2 -0
  21. package/dist/parser/extract.d.ts.map +1 -1
  22. package/dist/parser/extract.js +27 -3
  23. package/dist/parser/extract.js.map +1 -1
  24. package/dist/parser/lang-go.js +22 -22
  25. package/dist/parser/lang-go.js.map +1 -1
  26. package/dist/parser/lang-java.d.ts.map +1 -1
  27. package/dist/parser/lang-java.js +29 -25
  28. package/dist/parser/lang-java.js.map +1 -1
  29. package/dist/parser/lang-js.d.ts.map +1 -1
  30. package/dist/parser/lang-js.js +60 -43
  31. package/dist/parser/lang-js.js.map +1 -1
  32. package/dist/parser/lang-php.d.ts.map +1 -1
  33. package/dist/parser/lang-php.js +39 -33
  34. package/dist/parser/lang-php.js.map +1 -1
  35. package/dist/parser/lang-py.js +31 -31
  36. package/dist/parser/lang-ruby.d.ts +4 -0
  37. package/dist/parser/lang-ruby.d.ts.map +1 -0
  38. package/dist/parser/lang-ruby.js +50 -0
  39. package/dist/parser/lang-ruby.js.map +1 -0
  40. package/dist/parser/lang-rust.js +24 -24
  41. package/dist/parser/lang-ts.d.ts.map +1 -1
  42. package/dist/parser/lang-ts.js +73 -57
  43. package/dist/parser/lang-ts.js.map +1 -1
  44. package/dist/parser/languages.d.ts.map +1 -1
  45. package/dist/parser/languages.js +2 -1
  46. package/dist/parser/languages.js.map +1 -1
  47. package/dist/server/mcp.d.ts.map +1 -1
  48. package/dist/server/mcp.js +883 -95
  49. package/dist/server/mcp.js.map +1 -1
  50. package/dist/skills.js +100 -88
  51. package/dist/skills.js.map +1 -1
  52. package/dist/store/db.d.ts +62 -0
  53. package/dist/store/db.d.ts.map +1 -1
  54. package/dist/store/db.js +244 -59
  55. package/dist/store/db.js.map +1 -1
  56. package/dist/store/schema.sql +83 -60
  57. package/dist/types.d.ts +14 -0
  58. package/dist/types.d.ts.map +1 -1
  59. package/package.json +60 -60
@@ -119,15 +119,17 @@ const SYMBOL_QUERY_TYPES = [
119
119
  { key: 'enums', kind: 'enum' },
120
120
  { key: 'structs', kind: 'struct' },
121
121
  { key: 'traits', kind: 'trait' },
122
+ { key: 'modules', kind: 'module' },
122
123
  ];
123
124
  // Container kinds for method → parent resolution
124
- const CONTAINER_KINDS = new Set(['class', 'struct', 'trait']);
125
+ const CONTAINER_KINDS = new Set(['class', 'struct', 'trait', 'module']);
125
126
  // ── Universal symbol extractor ──
126
127
  export function extractFromTree(tree, lang, spec, filePath) {
127
128
  const symbols = [];
128
129
  const imports = [];
129
130
  const calls = [];
130
131
  const heritage = [];
132
+ const reExports = [];
131
133
  const exportedNames = new Set();
132
134
  const root = tree.rootNode;
133
135
  function runQuery(queryStr) {
@@ -192,7 +194,7 @@ export function extractFromTree(tree, lang, spec, filePath) {
192
194
  continue;
193
195
  // Filter: if query captures @_req (require() pattern), verify identifier text
194
196
  const reqCapture = captureText(match, '_req');
195
- if (reqCapture && reqCapture !== 'require')
197
+ if (reqCapture && reqCapture !== 'require' && reqCapture !== 'require_relative')
196
198
  continue;
197
199
  const cleanSource = source.replace(/^['"]|['"]$/g, '');
198
200
  const names = collectImportNames(defNode);
@@ -242,6 +244,28 @@ export function extractFromTree(tree, lang, spec, filePath) {
242
244
  });
243
245
  }
244
246
  }
245
- return { symbols, imports, calls, heritage, exportedNames };
247
+ // ── Extract re-exports (export { X } from './y', export * from './y') ──
248
+ if (spec.queries.reExports) {
249
+ for (const match of runQuery(spec.queries.reExports)) {
250
+ const source = captureText(match, 'source');
251
+ const defNode = captureNode(match, 'def');
252
+ if (!source || !defNode)
253
+ continue;
254
+ const cleanSource = source.replace(/^['"]|['"]$/g, '');
255
+ const names = [];
256
+ // Collect re-exported names from export_clause
257
+ for (const capture of match.captures) {
258
+ if (capture.name === 'name')
259
+ names.push(capture.node.text);
260
+ }
261
+ reExports.push({
262
+ filePath,
263
+ modulePath: cleanSource,
264
+ names,
265
+ line: defNode.startPosition.row + 1,
266
+ });
267
+ }
268
+ }
269
+ return { symbols, imports, calls, heritage, exportedNames, reExports };
246
270
  }
247
271
  //# sourceMappingURL=extract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/parser/extract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/parser/extract.ts"],"names":[],"mappings":"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"}
@@ -5,33 +5,33 @@ const spec = {
5
5
  extensions: ['.go'],
6
6
  wasmName: 'tree-sitter-go',
7
7
  queries: {
8
- functions: `[
9
- (function_declaration name: (identifier) @name) @def
10
- (const_declaration (const_spec name: (identifier) @name)) @def
11
- (var_declaration (var_spec name: (identifier) @name)) @def
8
+ functions: `[
9
+ (function_declaration name: (identifier) @name) @def
10
+ (const_declaration (const_spec name: (identifier) @name)) @def
11
+ (var_declaration (var_spec name: (identifier) @name)) @def
12
12
  ]`,
13
- methods: `(method_declaration
14
- name: (field_identifier) @name
13
+ methods: `(method_declaration
14
+ name: (field_identifier) @name
15
15
  ) @def`,
16
- structs: `(type_declaration
17
- (type_spec
18
- name: (type_identifier) @name
19
- type: (struct_type)
20
- )
16
+ structs: `(type_declaration
17
+ (type_spec
18
+ name: (type_identifier) @name
19
+ type: (struct_type)
20
+ )
21
21
  ) @def`,
22
- interfaces: `(type_declaration
23
- (type_spec
24
- name: (type_identifier) @name
25
- type: (interface_type)
26
- )
22
+ interfaces: `(type_declaration
23
+ (type_spec
24
+ name: (type_identifier) @name
25
+ type: (interface_type)
26
+ )
27
27
  ) @def`,
28
- imports: `(import_spec
29
- path: (interpreted_string_literal) @source
28
+ imports: `(import_spec
29
+ path: (interpreted_string_literal) @source
30
30
  ) @def`,
31
- calls: `
32
- (call_expression function: (identifier) @callee) @def
33
- (call_expression function: (selector_expression field: (field_identifier) @callee)) @def
34
- `,
31
+ calls: `[
32
+ (call_expression function: (identifier) @callee) @def
33
+ (call_expression function: (selector_expression operand: (_) @receiver field: (field_identifier) @callee)) @def
34
+ ]`,
35
35
  },
36
36
  resolveImport(raw, fromFile, root, _aliases) {
37
37
  // Go imports are package paths — only resolve local packages
@@ -1 +1 @@
1
- {"version":3,"file":"lang-go.js","sourceRoot":"","sources":["../../src/parser/lang-go.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAW,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,IAAI;IACR,UAAU,EAAE,CAAC,KAAK,CAAC;IACnB,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE;QACP,SAAS,EAAE;;;;MAIT;QACF,OAAO,EAAE;;WAEF;QACP,OAAO,EAAE;;;;;WAKF;QACP,UAAU,EAAE;;;;;WAKL;QACP,OAAO,EAAE;;WAEF;QACP,KAAK,EAAE;;;KAGN;KACF;IACD,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACzC,6DAA6D;QAC7D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,kBAAkB;QAC5D,+CAA+C;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrC,IAAI,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-go.js","sourceRoot":"","sources":["../../src/parser/lang-go.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAW,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,IAAI;IACR,UAAU,EAAE,CAAC,KAAK,CAAC;IACnB,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE;QACP,SAAS,EAAE;;;;MAIT;QACF,OAAO,EAAE;;WAEF;QACP,OAAO,EAAE;;;;;WAKF;QACP,UAAU,EAAE;;;;;WAKL;QACP,OAAO,EAAE;;WAEF;QACP,KAAK,EAAE;;;MAGL;KACH;IACD,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACzC,6DAA6D;QAC7D,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,kBAAkB;QAC5D,+CAA+C;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrC,IAAI,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lang-java.d.ts","sourceRoot":"","sources":["../../src/parser/lang-java.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QAkDX,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-java.d.ts","sourceRoot":"","sources":["../../src/parser/lang-java.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QAsDX,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -5,37 +5,41 @@ const spec = {
5
5
  extensions: ['.java'],
6
6
  wasmName: 'tree-sitter-java',
7
7
  queries: {
8
- classes: `[
9
- (class_declaration name: (identifier) @name) @def
10
- (record_declaration name: (identifier) @name) @def
8
+ classes: `[
9
+ (class_declaration name: (identifier) @name) @def
10
+ (record_declaration name: (identifier) @name) @def
11
11
  ]`,
12
12
  interfaces: `(interface_declaration name: (identifier) @name) @def`,
13
- methods: `[
14
- (method_declaration name: (identifier) @name) @def
15
- (constructor_declaration name: (identifier) @name) @def
13
+ methods: `[
14
+ (method_declaration name: (identifier) @name) @def
15
+ (constructor_declaration name: (identifier) @name) @def
16
16
  ]`,
17
17
  enums: `(enum_declaration name: (identifier) @name) @def`,
18
- imports: `[
19
- (import_declaration (scoped_identifier) @source) @def
20
- (import_declaration "static" (scoped_identifier) @source) @def
18
+ imports: `[
19
+ (import_declaration (scoped_identifier) @source) @def
20
+ (import_declaration "static" (scoped_identifier) @source) @def
21
21
  ]`,
22
- calls: `[
23
- (method_invocation
24
- name: (identifier) @callee
25
- ) @def
26
- (object_creation_expression type: (type_identifier) @callee) @def
27
- (marker_annotation name: (identifier) @callee) @def
28
- (annotation name: (identifier) @callee) @def
22
+ calls: `[
23
+ (method_invocation
24
+ object: (_) @receiver
25
+ name: (identifier) @callee
26
+ ) @def
27
+ (method_invocation
28
+ name: (identifier) @callee
29
+ ) @def
30
+ (object_creation_expression type: (type_identifier) @callee) @def
31
+ (marker_annotation name: (identifier) @callee) @def
32
+ (annotation name: (identifier) @callee) @def
29
33
  ]`,
30
- heritage: `[
31
- (class_declaration
32
- name: (identifier) @child
33
- (superclass (type_identifier) @parent)
34
- ) @def
35
- (class_declaration
36
- name: (identifier) @child
37
- (super_interfaces (type_list (type_identifier) @parent))
38
- ) @def
34
+ heritage: `[
35
+ (class_declaration
36
+ name: (identifier) @child
37
+ (superclass (type_identifier) @parent)
38
+ ) @def
39
+ (class_declaration
40
+ name: (identifier) @child
41
+ (super_interfaces (type_list (type_identifier) @parent))
42
+ ) @def
39
43
  ]`,
40
44
  },
41
45
  resolveImport(raw, _fromFile, root, _aliases) {
@@ -1 +1 @@
1
- {"version":3,"file":"lang-java.js","sourceRoot":"","sources":["../../src/parser/lang-java.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,CAAC,OAAO,CAAC;IACrB,QAAQ,EAAE,kBAAkB;IAC5B,OAAO,EAAE;QACP,OAAO,EAAE;;;MAGP;QACF,UAAU,EAAE,uDAAuD;QACnE,OAAO,EAAE;;;MAGP;QACF,KAAK,EAAE,kDAAkD;QACzD,OAAO,EAAE;;;MAGP;QACF,KAAK,EAAE;;;;;;;MAOL;QACF,QAAQ,EAAE;;;;;;;;;MASR;KACH;IACD,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ;QAC1C,+CAA+C;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC;QACjD,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChF,6CAA6C;QAC7C,KAAK,MAAM,MAAM,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC;YACjD,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-java.js","sourceRoot":"","sources":["../../src/parser/lang-java.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,CAAC,OAAO,CAAC;IACrB,QAAQ,EAAE,kBAAkB;IAC5B,OAAO,EAAE;QACP,OAAO,EAAE;;;MAGP;QACF,UAAU,EAAE,uDAAuD;QACnE,OAAO,EAAE;;;MAGP;QACF,KAAK,EAAE,kDAAkD;QACzD,OAAO,EAAE;;;MAGP;QACF,KAAK,EAAE;;;;;;;;;;;MAWL;QACF,QAAQ,EAAE;;;;;;;;;MASR;KACH;IACD,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ;QAC1C,+CAA+C;QAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC;QACjD,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChF,6CAA6C;QAC7C,KAAK,MAAM,MAAM,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC;YACjD,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lang-js.d.ts","sourceRoot":"","sources":["../../src/parser/lang-js.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QAmEX,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-js.d.ts","sourceRoot":"","sources":["../../src/parser/lang-js.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QAqFX,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -5,56 +5,73 @@ const spec = {
5
5
  extensions: ['.js', '.jsx', '.mjs', '.cjs'],
6
6
  wasmName: 'tree-sitter-javascript',
7
7
  queries: {
8
- functions: `[
9
- (function_declaration name: (identifier) @name) @def
10
- (lexical_declaration
11
- (variable_declarator
12
- name: (identifier) @name
13
- value: (arrow_function)
14
- )
15
- ) @def
8
+ functions: `[
9
+ (function_declaration name: (identifier) @name) @def
10
+ (lexical_declaration
11
+ (variable_declarator
12
+ name: (identifier) @name
13
+ value: (arrow_function)
14
+ )
15
+ ) @def
16
16
  ]`,
17
17
  classes: `(class_declaration name: (identifier) @name) @def`,
18
18
  methods: `(method_definition name: (property_identifier) @name) @def`,
19
- imports: `[
20
- (import_statement
21
- source: (string (string_fragment) @source)
22
- ) @def
23
- (lexical_declaration
24
- (variable_declarator
25
- value: (call_expression
26
- function: (identifier) @_req
27
- arguments: (arguments (string (string_fragment) @source))
28
- )
29
- )
30
- ) @def
19
+ imports: `[
20
+ (import_statement
21
+ source: (string (string_fragment) @source)
22
+ ) @def
23
+ (lexical_declaration
24
+ (variable_declarator
25
+ value: (call_expression
26
+ function: (identifier) @_req
27
+ arguments: (arguments (string (string_fragment) @source))
28
+ )
29
+ )
30
+ ) @def
31
31
  ]`,
32
- exports: `[
33
- (export_statement
34
- declaration: (function_declaration name: (identifier) @name)
35
- )
36
- (export_statement
37
- declaration: (class_declaration name: (identifier) @name)
38
- )
39
- (export_statement
40
- declaration: (lexical_declaration
41
- (variable_declarator name: (identifier) @name)
42
- )
43
- )
44
- (export_statement
45
- (export_clause (export_specifier name: (identifier) @name))
46
- )
32
+ exports: `[
33
+ (export_statement
34
+ declaration: (function_declaration name: (identifier) @name)
35
+ )
36
+ (export_statement
37
+ declaration: (class_declaration name: (identifier) @name)
38
+ )
39
+ (export_statement
40
+ declaration: (lexical_declaration
41
+ (variable_declarator name: (identifier) @name)
42
+ )
43
+ )
44
+ (export_statement
45
+ (export_clause (export_specifier name: (identifier) @name))
46
+ )
47
47
  ]`,
48
- calls: `
49
- (call_expression function: (identifier) @callee) @def
50
- (call_expression function: (member_expression property: (property_identifier) @callee)) @def
51
- `,
52
- heritage: `(class_declaration
53
- name: (identifier) @child
54
- (class_heritage (identifier) @parent)
48
+ calls: `[
49
+ (call_expression function: (identifier) @callee) @def
50
+ (call_expression function: (member_expression object: (_) @receiver property: (property_identifier) @callee)) @def
51
+ ]`,
52
+ heritage: `(class_declaration
53
+ name: (identifier) @child
54
+ (class_heritage (identifier) @parent)
55
55
  ) @def`,
56
+ reExports: `[
57
+ (export_statement
58
+ source: (string (string_fragment) @source)
59
+ (export_clause (export_specifier name: (identifier) @name))
60
+ ) @def
61
+ (export_statement
62
+ source: (string (string_fragment) @source)
63
+ "*"
64
+ ) @def
65
+ ]`,
56
66
  },
57
- resolveImport(raw, fromFile, root, _aliases) {
67
+ resolveImport(raw, fromFile, root, aliases) {
68
+ // Check aliases first (e.g. @ → src)
69
+ for (const [alias, target] of Object.entries(aliases)) {
70
+ if (raw.startsWith(alias + '/') || raw === alias) {
71
+ raw = raw.replace(alias, target);
72
+ break;
73
+ }
74
+ }
58
75
  if (!raw.startsWith('.') && !raw.startsWith('/'))
59
76
  return null;
60
77
  const dir = dirname(join(root, fromFile));
@@ -1 +1 @@
1
- {"version":3,"file":"lang-js.js","sourceRoot":"","sources":["../../src/parser/lang-js.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,YAAY;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,QAAQ,EAAE,wBAAwB;IAClC,OAAO,EAAE;QACP,SAAS,EAAE;;;;;;;;MAQT;QACF,OAAO,EAAE,mDAAmD;QAC5D,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE;;;;;;;;;;;;MAYP;QACF,OAAO,EAAE;;;;;;;;;;;;;;;MAeP;QACF,KAAK,EAAE;;;KAGN;QACD,QAAQ,EAAE;;;WAGH;KACR;IACD,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACzC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5B,MAAM,UAAU,GAAG;YACjB,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,MAAM,EAAE,IAAI,GAAG,MAAM;YAC1C,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;SAChD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-js.js","sourceRoot":"","sources":["../../src/parser/lang-js.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,YAAY;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,QAAQ,EAAE,wBAAwB;IAClC,OAAO,EAAE;QACP,SAAS,EAAE;;;;;;;;MAQT;QACF,OAAO,EAAE,mDAAmD;QAC5D,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE;;;;;;;;;;;;MAYP;QACF,OAAO,EAAE;;;;;;;;;;;;;;;MAeP;QACF,KAAK,EAAE;;;MAGL;QACF,QAAQ,EAAE;;;WAGH;QACP,SAAS,EAAE;;;;;;;;;MAST;KACH;IACD,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO;QACxC,qCAAqC;QACrC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBACjD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACjC,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5B,MAAM,UAAU,GAAG;YACjB,IAAI,GAAG,KAAK,EAAE,IAAI,GAAG,MAAM,EAAE,IAAI,GAAG,MAAM;YAC1C,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;SAChD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lang-php.d.ts","sourceRoot":"","sources":["../../src/parser/lang-php.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QA8DX,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-php.d.ts","sourceRoot":"","sources":["../../src/parser/lang-php.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QAoEX,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -5,45 +5,51 @@ const spec = {
5
5
  extensions: ['.php'],
6
6
  wasmName: 'tree-sitter-php',
7
7
  queries: {
8
- functions: `[
9
- (function_definition name: (name) @name) @def
10
- (const_declaration (const_element (name) @name)) @def
8
+ functions: `[
9
+ (function_definition name: (name) @name) @def
10
+ (const_declaration (const_element (name) @name)) @def
11
11
  ]`,
12
12
  classes: `(class_declaration name: (name) @name) @def`,
13
13
  interfaces: `(interface_declaration name: (name) @name) @def`,
14
14
  traits: `(trait_declaration name: (name) @name) @def`,
15
15
  methods: `(method_declaration name: (name) @name) @def`,
16
- imports: `[
17
- (namespace_use_declaration
18
- (namespace_use_clause (qualified_name) @source)
19
- ) @def
20
- (expression_statement
21
- (include_expression (string (string_content) @source))
22
- ) @def
16
+ imports: `[
17
+ (namespace_use_declaration
18
+ (namespace_use_clause (qualified_name) @source)
19
+ ) @def
20
+ (expression_statement
21
+ (include_expression (string (string_content) @source))
22
+ ) @def
23
23
  ]`,
24
- calls: `
25
- (function_call_expression
26
- function: (name) @callee
27
- ) @def
28
- (member_call_expression
29
- name: (name) @callee
30
- ) @def
31
- `,
32
- heritage: `[
33
- (class_declaration
34
- name: (name) @child
35
- (base_clause (name) @parent)
36
- ) @def
37
- (class_declaration
38
- name: (name) @child
39
- (class_interface_clause (name) @parent)
40
- ) @def
41
- (class_declaration
42
- body: (declaration_list
43
- (use_declaration (name) @parent)
44
- )
45
- name: (name) @child
46
- ) @def
24
+ calls: `[
25
+ (function_call_expression
26
+ function: (name) @callee
27
+ ) @def
28
+ (member_call_expression
29
+ object: (_) @receiver
30
+ name: (name) @callee
31
+ ) @def
32
+ (scoped_call_expression
33
+ scope: (name) @receiver
34
+ name: (name) @callee
35
+ ) @def
36
+ (object_creation_expression (name) @callee) @def
37
+ ]`,
38
+ heritage: `[
39
+ (class_declaration
40
+ name: (name) @child
41
+ (base_clause (name) @parent)
42
+ ) @def
43
+ (class_declaration
44
+ name: (name) @child
45
+ (class_interface_clause (name) @parent)
46
+ ) @def
47
+ (class_declaration
48
+ name: (name) @child
49
+ body: (declaration_list
50
+ (use_declaration (name) @parent)
51
+ )
52
+ ) @def
47
53
  ]`,
48
54
  },
49
55
  resolveImport(raw, _fromFile, root, aliases) {
@@ -1 +1 @@
1
- {"version":3,"file":"lang-php.js","sourceRoot":"","sources":["../../src/parser/lang-php.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,KAAK;IACT,UAAU,EAAE,CAAC,MAAM,CAAC;IACpB,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE;QACP,SAAS,EAAE;;;MAGT;QACF,OAAO,EAAE,6CAA6C;QACtD,UAAU,EAAE,iDAAiD;QAC7D,MAAM,EAAE,6CAA6C;QACrD,OAAO,EAAE,8CAA8C;QACvD,OAAO,EAAE;;;;;;;MAOP;QACF,KAAK,EAAE;;;;;;;KAON;QACD,QAAQ,EAAE;;;;;;;;;;;;;;;MAeR;KACH;IACD,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO;QACzC,4EAA4E;QAC5E,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC;gBACjD,IAAI,UAAU,CAAC,SAAS,CAAC;oBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,oCAAoC;QACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"lang-php.js","sourceRoot":"","sources":["../../src/parser/lang-php.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,KAAK;IACT,UAAU,EAAE,CAAC,MAAM,CAAC;IACpB,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE;QACP,SAAS,EAAE;;;MAGT;QACF,OAAO,EAAE,6CAA6C;QACtD,UAAU,EAAE,iDAAiD;QAC7D,MAAM,EAAE,6CAA6C;QACrD,OAAO,EAAE,8CAA8C;QACvD,OAAO,EAAE;;;;;;;MAOP;QACF,KAAK,EAAE;;;;;;;;;;;;;MAaL;QACF,QAAQ,EAAE;;;;;;;;;;;;;;;MAeR;KACH;IACD,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO;QACzC,4EAA4E;QAC5E,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC;gBACjD,IAAI,UAAU,CAAC,SAAS,CAAC;oBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,oCAAoC;QACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,IAAI,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -5,43 +5,43 @@ const spec = {
5
5
  extensions: ['.py'],
6
6
  wasmName: 'tree-sitter-python',
7
7
  queries: {
8
- functions: `[
9
- (module (function_definition name: (identifier) @name) @def)
10
- (module (decorated_definition definition: (function_definition name: (identifier) @name) @def))
8
+ functions: `[
9
+ (module (function_definition name: (identifier) @name) @def)
10
+ (module (decorated_definition definition: (function_definition name: (identifier) @name) @def))
11
11
  ]`,
12
- classes: `[
13
- (class_definition name: (identifier) @name) @def
14
- (decorated_definition definition: (class_definition name: (identifier) @name) @def)
12
+ classes: `[
13
+ (class_definition name: (identifier) @name) @def
14
+ (decorated_definition definition: (class_definition name: (identifier) @name) @def)
15
15
  ]`,
16
- methods: `[
17
- (class_definition body: (block (function_definition name: (identifier) @name) @def))
18
- (class_definition body: (block (decorated_definition definition: (function_definition name: (identifier) @name) @def)))
16
+ methods: `[
17
+ (class_definition body: (block (function_definition name: (identifier) @name) @def))
18
+ (class_definition body: (block (decorated_definition definition: (function_definition name: (identifier) @name) @def)))
19
19
  ]`,
20
- imports: `[
21
- (import_from_statement
22
- module_name: (dotted_name) @source
23
- ) @def
24
- (import_statement
25
- name: (dotted_name) @source
26
- ) @def
20
+ imports: `[
21
+ (import_from_statement
22
+ module_name: (dotted_name) @source
23
+ ) @def
24
+ (import_statement
25
+ name: (dotted_name) @source
26
+ ) @def
27
27
  ]`,
28
- exports: `(module
29
- (expression_statement
30
- (assignment
31
- left: (identifier) @_all
32
- right: (list (string (string_content) @name))
33
- )
34
- )
28
+ exports: `(module
29
+ (expression_statement
30
+ (assignment
31
+ left: (identifier) @_all
32
+ right: (list (string (string_content) @name))
33
+ )
34
+ )
35
35
  )`,
36
- calls: `[
37
- (call function: (identifier) @callee) @def
38
- (call function: (attribute attribute: (identifier) @callee)) @def
39
- (decorator (identifier) @callee) @def
40
- (decorator (call function: (identifier) @callee)) @def
36
+ calls: `[
37
+ (call function: (identifier) @callee) @def
38
+ (call function: (attribute object: (_) @receiver attribute: (identifier) @callee)) @def
39
+ (decorator (identifier) @callee) @def
40
+ (decorator (call function: (identifier) @callee)) @def
41
41
  ]`,
42
- heritage: `(class_definition
43
- name: (identifier) @child
44
- superclasses: (argument_list (identifier) @parent)
42
+ heritage: `(class_definition
43
+ name: (identifier) @child
44
+ superclasses: (argument_list (identifier) @parent)
45
45
  ) @def`,
46
46
  },
47
47
  resolveImport(raw, fromFile, root, _aliases) {
@@ -0,0 +1,4 @@
1
+ import type { LangSpec } from './extract.js';
2
+ declare const spec: LangSpec;
3
+ export default spec;
4
+ //# sourceMappingURL=lang-ruby.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lang-ruby.d.ts","sourceRoot":"","sources":["../../src/parser/lang-ruby.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,QAAA,MAAM,IAAI,EAAE,QA2CX,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { join, dirname, relative } from 'node:path';
2
+ import { existsSync } from 'node:fs';
3
+ const spec = {
4
+ id: 'ruby',
5
+ extensions: ['.rb', '.rake'],
6
+ wasmName: 'tree-sitter-ruby',
7
+ queries: {
8
+ classes: `(class name: (constant) @name) @def`,
9
+ modules: `(module name: (constant) @name) @def`,
10
+ methods: `[
11
+ (method name: (identifier) @name) @def
12
+ (singleton_method name: (identifier) @name) @def
13
+ ]`,
14
+ imports: `(call
15
+ method: (identifier) @_req
16
+ arguments: (argument_list (string (string_content) @source))
17
+ ) @def`,
18
+ calls: `[
19
+ (call method: (identifier) @callee) @def
20
+ (call receiver: (_) @receiver method: (identifier) @callee) @def
21
+ ]`,
22
+ heritage: `[
23
+ (class name: (constant) @child superclass: (superclass (constant) @parent)) @def
24
+ (class name: (constant) @child superclass: (superclass (scope_resolution name: (constant) @parent))) @def
25
+ ]`,
26
+ },
27
+ resolveImport(raw, fromFile, root, _aliases) {
28
+ // Relative paths (require_relative)
29
+ if (raw.startsWith('.')) {
30
+ const dir = dirname(join(root, fromFile));
31
+ const candidate = join(dir, raw) + '.rb';
32
+ if (existsSync(candidate))
33
+ return relative(root, candidate).replace(/\\/g, '/');
34
+ return null;
35
+ }
36
+ // Absolute paths from load path / Rails conventions
37
+ const candidates = [
38
+ join(root, raw) + '.rb',
39
+ join(root, 'lib', raw) + '.rb',
40
+ join(root, 'app', raw) + '.rb',
41
+ ];
42
+ for (const p of candidates) {
43
+ if (existsSync(p))
44
+ return relative(root, p).replace(/\\/g, '/');
45
+ }
46
+ return null;
47
+ },
48
+ };
49
+ export default spec;
50
+ //# sourceMappingURL=lang-ruby.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lang-ruby.js","sourceRoot":"","sources":["../../src/parser/lang-ruby.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrC,MAAM,IAAI,GAAa;IACrB,EAAE,EAAE,MAAM;IACV,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,kBAAkB;IAC5B,OAAO,EAAE;QACP,OAAO,EAAE,qCAAqC;QAC9C,OAAO,EAAE,sCAAsC;QAC/C,OAAO,EAAE;;;MAGP;QACF,OAAO,EAAE;;;WAGF;QACP,KAAK,EAAE;;;MAGL;QACF,QAAQ,EAAE;;;MAGR;KACH;IACD,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACzC,oCAAoC;QACpC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;YACzC,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAChF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,oDAAoD;QACpD,MAAM,UAAU,GAAG;YACjB,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,KAAK;YACvB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK;YAC9B,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK;SAC/B,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,CAAC,CAAC;gBAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,eAAe,IAAI,CAAC"}