megareviewer 0.0.0-stage → 0.2.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 (78) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +64 -2
  3. package/dist/THIRD_PARTY_LICENSES.txt +1844 -0
  4. package/dist/cli.js +26 -0
  5. package/dist/grammars/queries/c_sharp.scm +26 -0
  6. package/dist/grammars/queries/go.scm +16 -0
  7. package/dist/grammars/queries/java.scm +18 -0
  8. package/dist/grammars/queries/javascript.scm +23 -0
  9. package/dist/grammars/queries/jsx.scm +6 -0
  10. package/dist/grammars/queries/python.scm +17 -0
  11. package/dist/grammars/queries/rust.scm +23 -0
  12. package/dist/grammars/queries/typescript.scm +29 -0
  13. package/dist/grammars/tree-sitter-c_sharp.wasm +0 -0
  14. package/dist/grammars/tree-sitter-go.wasm +0 -0
  15. package/dist/grammars/tree-sitter-java.wasm +0 -0
  16. package/dist/grammars/tree-sitter-javascript.wasm +0 -0
  17. package/dist/grammars/tree-sitter-python.wasm +0 -0
  18. package/dist/grammars/tree-sitter-rust.wasm +0 -0
  19. package/dist/grammars/tree-sitter-tsx.wasm +0 -0
  20. package/dist/grammars/tree-sitter-typescript.wasm +0 -0
  21. package/dist/grammars/web-tree-sitter.wasm +0 -0
  22. package/dist/server.js +62996 -0
  23. package/dist/web/assets/c-Cz4nF6n_.js +1 -0
  24. package/dist/web/assets/c-SSSlmE39.js +1 -0
  25. package/dist/web/assets/core-B6rr2vvd.js +12 -0
  26. package/dist/web/assets/cpp-Cts1PyIS.js +1 -0
  27. package/dist/web/assets/cpp-DzjeI0uH.js +1 -0
  28. package/dist/web/assets/csharp-dmMxLVLW.js +1 -0
  29. package/dist/web/assets/css-BGIxQoYs.js +1 -0
  30. package/dist/web/assets/css-DgaLhXQH.js +1 -0
  31. package/dist/web/assets/diff-woXpYk--.js +1 -0
  32. package/dist/web/assets/docker-IyjqRm3v.js +1 -0
  33. package/dist/web/assets/engine-javascript-D-6se_EF.js +141 -0
  34. package/dist/web/assets/github-dark-default-DXG-b-1a.js +1 -0
  35. package/dist/web/assets/github-light-default-BXViO-2h.js +1 -0
  36. package/dist/web/assets/go-rLFTqkRN.js +1 -0
  37. package/dist/web/assets/graphql-BHtseKAV.js +1 -0
  38. package/dist/web/assets/graphql-f69H1Mm0.js +1 -0
  39. package/dist/web/assets/html-BMn1ogTm.js +1 -0
  40. package/dist/web/assets/html-BWDvXlHg.js +1 -0
  41. package/dist/web/assets/index-ClcSjEKy.css +1 -0
  42. package/dist/web/assets/index-DwjurLQh.js +65 -0
  43. package/dist/web/assets/ini-B5eOa1yu.js +1 -0
  44. package/dist/web/assets/java-BtIQNnN0.js +1 -0
  45. package/dist/web/assets/java-_ATy9zCa.js +1 -0
  46. package/dist/web/assets/javascript-BzbQS41l.js +1 -0
  47. package/dist/web/assets/javascript-CpIGwZ_Y.js +1 -0
  48. package/dist/web/assets/json-B88Oqtu5.js +1 -0
  49. package/dist/web/assets/json-C3WlssX3.js +1 -0
  50. package/dist/web/assets/jsonc-CYpm1nAK.js +1 -0
  51. package/dist/web/assets/jsx-C4yDKi0A.js +1 -0
  52. package/dist/web/assets/jsx-D3KKoC5L.js +1 -0
  53. package/dist/web/assets/kotlin-DhhofPvG.js +1 -0
  54. package/dist/web/assets/make-Dixweg8N.js +1 -0
  55. package/dist/web/assets/markdown-BYOwaDjH.js +1 -0
  56. package/dist/web/assets/php-CUj1wjLQ.js +1 -0
  57. package/dist/web/assets/python-gzcpVVnB.js +1 -0
  58. package/dist/web/assets/ruby-DAHFNlv9.js +1 -0
  59. package/dist/web/assets/rust-DpiIf5JO.js +1 -0
  60. package/dist/web/assets/scss-8bKmll0B.js +1 -0
  61. package/dist/web/assets/shellscript-CVTB3cr6.js +1 -0
  62. package/dist/web/assets/shellscript-CqHdAlCp.js +1 -0
  63. package/dist/web/assets/sql-CNu3Or2W.js +1 -0
  64. package/dist/web/assets/sql-CfM2IJm3.js +1 -0
  65. package/dist/web/assets/svelte-DAcAPYhA.js +1 -0
  66. package/dist/web/assets/swift-CyEgAFGc.js +1 -0
  67. package/dist/web/assets/toml-CcmNWLt0.js +1 -0
  68. package/dist/web/assets/tsx-BOvsFOI6.js +1 -0
  69. package/dist/web/assets/tsx-CGosfAUg.js +1 -0
  70. package/dist/web/assets/typescript-Bb1J8qyy.js +1 -0
  71. package/dist/web/assets/typescript-j_1H8WHN.js +1 -0
  72. package/dist/web/assets/vue-DfeOw4hL.js +1 -0
  73. package/dist/web/assets/xml-DuKfbPI6.js +1 -0
  74. package/dist/web/assets/xml-WY0zc4PG.js +1 -0
  75. package/dist/web/assets/yaml-DDA_XMNu.js +1 -0
  76. package/dist/web/assets/yaml-DijMHRDA.js +1 -0
  77. package/dist/web/index.html +14 -0
  78. package/package.json +76 -4
package/dist/cli.js ADDED
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env node
2
+
3
+ // src/domain/shared/hash.ts
4
+ var utf8 = new TextEncoder();
5
+
6
+ // src/cli/args.ts
7
+ var EXIT = { ok: 0, config: 1, usage: 2 };
8
+
9
+ // src/cli/node-version.ts
10
+ var MIN_NODE = { major: 22, minor: 13 };
11
+ var MIN_NODE_TEXT = `${MIN_NODE.major}.${MIN_NODE.minor}`;
12
+ var NODE_FIX = `Install Node ${MIN_NODE_TEXT} or later, e.g. the current LTS from https://nodejs.org.`;
13
+ var nodeSupported = (version) => {
14
+ const [major = Number.NaN, minor = Number.NaN] = version.split(".").map(Number);
15
+ return major > MIN_NODE.major || major === MIN_NODE.major && minor >= MIN_NODE.minor;
16
+ };
17
+ var nodeVersionProblem = (version) => nodeSupported(version) ? null : `megareviewer needs Node ${MIN_NODE_TEXT} or later, but this is Node ${version}. ${NODE_FIX}`;
18
+
19
+ // src/cli/bin.ts
20
+ var problem = nodeVersionProblem(process.versions.node);
21
+ if (problem === null) {
22
+ await import(new URL("./server.js", import.meta.url).href);
23
+ } else {
24
+ console.error(problem);
25
+ process.exitCode = EXIT.config;
26
+ }
@@ -0,0 +1,26 @@
1
+ ; Definitions
2
+
3
+ (local_function_statement name: (identifier) @name) @definition.function
4
+ (method_declaration name: (identifier) @name) @definition.method
5
+ (constructor_declaration name: (identifier) @name) @definition.method
6
+ (property_declaration name: (identifier) @name) @definition.method
7
+ (class_declaration name: (identifier) @name) @definition.class
8
+ (record_declaration name: (identifier) @name) @definition.class
9
+ (struct_declaration name: (identifier) @name) @definition.class
10
+ (interface_declaration name: (identifier) @name) @definition.type
11
+ (enum_declaration name: (identifier) @name) @definition.type
12
+ (delegate_declaration name: (identifier) @name) @definition.type
13
+ (field_declaration (variable_declaration (variable_declarator name: (identifier) @name))) @definition.variable
14
+
15
+ ; References. C# has no separate node for type names, so types are matched by position.
16
+
17
+ (invocation_expression function: (identifier) @reference)
18
+ (object_creation_expression type: (identifier) @reference)
19
+ (member_access_expression expression: (identifier) @reference)
20
+ (member_access_expression name: (identifier) @reference)
21
+ (variable_declaration type: (identifier) @reference)
22
+ (parameter type: (identifier) @reference)
23
+ (method_declaration returns: (identifier) @reference)
24
+ (base_list (identifier) @reference)
25
+ (generic_name (identifier) @reference)
26
+ (type_argument_list (identifier) @reference)
@@ -0,0 +1,16 @@
1
+ ; Definitions. Package-level variables and constants are visible to the whole package.
2
+
3
+ (function_declaration name: (identifier) @name) @definition.function
4
+ (method_declaration name: (field_identifier) @name) @definition.method
5
+ (type_declaration (type_spec name: (type_identifier) @name type: (struct_type)) @definition.class)
6
+ (type_declaration (type_spec name: (type_identifier) @name) @definition.type)
7
+ (type_declaration (type_alias name: (type_identifier) @name) @definition.type)
8
+ (source_file (var_declaration (var_spec name: (identifier) @name) @definition.variable))
9
+ (source_file (const_declaration (const_spec name: (identifier) @name) @definition.variable))
10
+
11
+ ; References
12
+
13
+ (call_expression function: (identifier) @reference)
14
+ (selector_expression operand: (identifier) @reference)
15
+ (selector_expression field: (field_identifier) @reference)
16
+ (type_identifier) @reference
@@ -0,0 +1,18 @@
1
+ ; Definitions
2
+
3
+ (method_declaration name: (identifier) @name) @definition.method
4
+ (constructor_declaration name: (identifier) @name) @definition.method
5
+ (class_declaration name: (identifier) @name) @definition.class
6
+ (record_declaration name: (identifier) @name) @definition.class
7
+ (enum_declaration name: (identifier) @name) @definition.type
8
+ (interface_declaration name: (identifier) @name) @definition.type
9
+ (annotation_type_declaration name: (identifier) @name) @definition.type
10
+ (field_declaration declarator: (variable_declarator name: (identifier) @name)) @definition.variable
11
+
12
+ ; References
13
+
14
+ (method_invocation name: (identifier) @reference)
15
+ (method_invocation object: (identifier) @reference)
16
+ (field_access object: (identifier) @reference)
17
+ (field_access field: (identifier) @reference)
18
+ (type_identifier) @reference
@@ -0,0 +1,23 @@
1
+ ; Definitions. Earlier patterns win, so a function assigned to a variable is a function.
2
+
3
+ (function_declaration name: (identifier) @name) @definition.function
4
+ (generator_function_declaration name: (identifier) @name) @definition.function
5
+ (variable_declarator
6
+ name: (identifier) @name
7
+ value: [(arrow_function) (function_expression) (generator_function)]) @definition.function
8
+ (method_definition name: (property_identifier) @name) @definition.method
9
+ (class_declaration name: (identifier) @name) @definition.class
10
+ (program (lexical_declaration (variable_declarator name: (identifier) @name) @definition.variable))
11
+ (program (variable_declaration (variable_declarator name: (identifier) @name) @definition.variable))
12
+ (export_statement
13
+ declaration: (lexical_declaration (variable_declarator name: (identifier) @name) @definition.variable))
14
+ (export_statement
15
+ declaration: (variable_declaration (variable_declarator name: (identifier) @name) @definition.variable))
16
+
17
+ ; References
18
+
19
+ (call_expression function: (identifier) @reference)
20
+ (new_expression constructor: (identifier) @reference)
21
+ (class_heritage (identifier) @reference)
22
+ (member_expression object: (identifier) @reference)
23
+ (member_expression property: (property_identifier) @reference)
@@ -0,0 +1,6 @@
1
+ ; References to components
2
+
3
+ (jsx_opening_element name: (identifier) @reference)
4
+ (jsx_self_closing_element name: (identifier) @reference)
5
+ (jsx_opening_element name: (member_expression property: (property_identifier) @reference))
6
+ (jsx_self_closing_element name: (member_expression property: (property_identifier) @reference))
@@ -0,0 +1,17 @@
1
+ ; Definitions. Earlier patterns win, so a function in a class is a method.
2
+
3
+ (class_definition
4
+ body: (block (function_definition name: (identifier) @name) @definition.method))
5
+ (class_definition
6
+ body: (block (decorated_definition definition: (function_definition name: (identifier) @name) @definition.method)))
7
+ (function_definition name: (identifier) @name) @definition.function
8
+ (class_definition name: (identifier) @name) @definition.class
9
+ (module (expression_statement (assignment left: (identifier) @name) @definition.variable))
10
+
11
+ ; References
12
+
13
+ (call function: (identifier) @reference)
14
+ (attribute object: (identifier) @reference)
15
+ (attribute attribute: (identifier) @reference)
16
+ (type (identifier) @reference)
17
+ (type (generic_type (identifier) @reference))
@@ -0,0 +1,23 @@
1
+ ; Definitions. Earlier patterns win, so a function in an impl or trait is a method.
2
+
3
+ (impl_item body: (declaration_list (function_item name: (identifier) @name) @definition.method))
4
+ (trait_item body: (declaration_list (function_item name: (identifier) @name) @definition.method))
5
+ (trait_item body: (declaration_list (function_signature_item name: (identifier) @name) @definition.method))
6
+ (function_item name: (identifier) @name) @definition.function
7
+ (macro_definition name: (identifier) @name) @definition.function
8
+ (struct_item name: (type_identifier) @name) @definition.class
9
+ (enum_item name: (type_identifier) @name) @definition.type
10
+ (union_item name: (type_identifier) @name) @definition.type
11
+ (trait_item name: (type_identifier) @name) @definition.type
12
+ (type_item name: (type_identifier) @name) @definition.type
13
+ (const_item name: (identifier) @name) @definition.variable
14
+ (static_item name: (identifier) @name) @definition.variable
15
+
16
+ ; References
17
+
18
+ (call_expression function: (identifier) @reference)
19
+ (call_expression function: (scoped_identifier name: (identifier) @reference))
20
+ (field_expression value: (identifier) @reference)
21
+ (field_expression field: (field_identifier) @reference)
22
+ (macro_invocation macro: (identifier) @reference)
23
+ (type_identifier) @reference
@@ -0,0 +1,29 @@
1
+ ; Definitions. Earlier patterns win, so a function assigned to a variable is a function.
2
+
3
+ (function_declaration name: (identifier) @name) @definition.function
4
+ (generator_function_declaration name: (identifier) @name) @definition.function
5
+ (function_signature name: (identifier) @name) @definition.function
6
+ (variable_declarator
7
+ name: (identifier) @name
8
+ value: [(arrow_function) (function_expression) (generator_function)]) @definition.function
9
+ (method_definition name: (property_identifier) @name) @definition.method
10
+ (class_declaration name: (type_identifier) @name) @definition.class
11
+ (abstract_class_declaration name: (type_identifier) @name) @definition.class
12
+ (interface_declaration name: (type_identifier) @name) @definition.type
13
+ (type_alias_declaration name: (type_identifier) @name) @definition.type
14
+ (enum_declaration name: (identifier) @name) @definition.type
15
+ (program (lexical_declaration (variable_declarator name: (identifier) @name) @definition.variable))
16
+ (program (variable_declaration (variable_declarator name: (identifier) @name) @definition.variable))
17
+ (export_statement
18
+ declaration: (lexical_declaration (variable_declarator name: (identifier) @name) @definition.variable))
19
+ (export_statement
20
+ declaration: (variable_declaration (variable_declarator name: (identifier) @name) @definition.variable))
21
+
22
+ ; References
23
+
24
+ (call_expression function: (identifier) @reference)
25
+ (new_expression constructor: (identifier) @reference)
26
+ (extends_clause value: (identifier) @reference)
27
+ (member_expression object: (identifier) @reference)
28
+ (member_expression property: (property_identifier) @reference)
29
+ (type_identifier) @reference