diff --git a/queries/ecma/injections.scm b/queries/ecma/injections.scm new file mode 100644 index 0000000..21aaa47 --- /dev/null +++ b/queries/ecma/injections.scm @@ -0,0 +1,26 @@ +; extends + +(call_expression + function: (member_expression + object: [ + (identifier) @_obj + (member_expression + property: (property_identifier) @_obj) + (member_expression + property: (private_property_identifier) @_obj) + ] + property: (property_identifier) @_name) + arguments: [ + (arguments + (template_string) @injection.content) + (arguments + (string) @injection.content) + (template_string) @injection.content + ] + (#any-of? @_obj "db" "database" "#db") + (#any-of? @_name + "exec" "query" "execute" "executeQuery" "executeUpdate" "executeBatch" "prepareStatement" "run" + "prepare" "prepareQuery" "prepareUpdate" "prepareBatch") + (#set! injection.language "sql") + (#offset! @injection.content 0 1 0 -1) + (#set! injection.include-children)) diff --git a/queries/json/injections.scm b/queries/json/injections.scm new file mode 100644 index 0000000..7077997 --- /dev/null +++ b/queries/json/injections.scm @@ -0,0 +1,11 @@ +; extends + +(pair + key: (string + (string_content) @_key) + value: (object + (pair + value: (string + (string_content) @injection.content))) + (#eq? @_key "scripts") + (#set! injection.language "bash"))