Skip to content

Commit 10328ba

Browse files
committed
fix: support .join without arguments
1 parent 0ca3c9d commit 10328ba

File tree

2 files changed

+5
-6
lines changed

2 files changed

+5
-6
lines changed

src/utils.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -89,16 +89,14 @@ function getParameterExpressionValue(expr: TSESTree.Expression) {
8989
return null;
9090
}
9191

92-
if (!expr.arguments[0]) {
93-
return null;
94-
}
95-
9692
if (ASTUtils.getPropertyName(expr.callee) !== "join") {
9793
return null;
9894
}
9995

100-
const joinValue = ASTUtils.getStaticValue(expr.arguments[0]);
101-
if (typeof joinValue?.value !== "string") {
96+
if (
97+
expr.arguments[0] != null &&
98+
typeof ASTUtils.getStaticValue(expr.arguments[0])?.value !== "string"
99+
) {
102100
return null;
103101
}
104102

tests/rules/valid-query.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ ruleTester.run("valid-query", rule, {
3838
"const query = `SELECT * FROM users WHERE id IN (${ids.map(() => '?').join(',')})`;db_users.prepare(query);",
3939
"db_users.prepare(`SELECT * FROM users WHERE ${ids.map(() => 'NAME LIKE ? || \\'%\\'').join(' OR ')}`);",
4040
"const query = `SELECT * FROM users WHERE ${ids.map(() => 'NAME LIKE ? || \\'%\\'').join(' OR ')}`;db_users.prepare(query);",
41+
"db_users.prepare(`SELECT * FROM users WHERE id IN (${ids.map(() => '?').join()})`);",
4142
],
4243
invalid: [
4344
{

0 commit comments

Comments
 (0)