/ queries / javascript / completion.scm
completion.scm
 1  ; ERROR node patterns (for incomplete syntax)
 2  (ERROR
 3    (identifier) @object
 4  ) @completion_target
 5  
 6  (ERROR
 7    (member_expression) @object
 8  ) @completion_target
 9  
10  ; Nested member_expression - captures "process.env" from "process.env.X"
11  (member_expression
12    object: (member_expression) @object
13  ) @completion_target
14  
15  ; Nested subscript with string - captures "process.env" from process.env["X"]
16  (subscript_expression
17    object: (member_expression) @object
18    index: (string)
19  ) @completion_target
20  
21  ; import.meta.env.VAR - dot access on import.meta.env
22  (member_expression
23    object: (member_expression
24      object: (member_expression
25        object: (import)
26        property: (property_identifier) @meta)
27      property: (property_identifier) @env)
28    (#eq? @meta "meta")
29    (#eq? @env "env")
30  ) @completion_target
31  
32  ; import.meta.env["VAR"] - subscript on import.meta.env
33  (subscript_expression
34    object: (member_expression
35      object: (member_expression
36        object: (import)
37        property: (property_identifier) @meta)
38      property: (property_identifier) @env)
39    index: (string)
40    (#eq? @meta "meta")
41    (#eq? @env "env")
42  ) @completion_target
43  
44  ; Generic member_expression - captures "env" from "env.X"
45  (member_expression
46    object: (_) @object
47  ) @completion_target
48  
49  ; Generic subscript with string - captures "env" from env["X"]
50  (subscript_expression
51    object: (_) @object
52    index: (string)
53  ) @completion_target