Skip to content

Commit 5b7688c

Browse files
committed
fix: enhance setup member name check to handle quoted strings
1 parent 3de70ed commit 5b7688c

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

crates/biome_js_analyze/src/lint/nursery/no_vue_setup_props_reactivity_loss.rs

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -304,10 +304,23 @@ fn extract_setup_from_object_member(
304304
}
305305

306306
fn is_member_named_setup(name: &biome_js_syntax::AnyJsObjectMemberName) -> bool {
307-
if let Some(lit) = name.as_js_literal_member_name() {
308-
return lit.value().is_ok_and(|tok| tok.text_trimmed() == "setup");
307+
match name {
308+
biome_js_syntax::AnyJsObjectMemberName::JsLiteralMemberName(lit) => {
309+
lit.value().is_ok_and(|tok| {
310+
let text = tok.text_trimmed();
311+
if (text.starts_with('"') && text.ends_with('"'))
312+
|| (text.starts_with('\'') && text.ends_with('\''))
313+
{
314+
let inner = &text[1..text.len() - 1];
315+
inner == "setup"
316+
} else {
317+
text == "setup"
318+
}
319+
})
320+
}
321+
biome_js_syntax::AnyJsObjectMemberName::JsComputedMemberName(_) => false,
322+
biome_js_syntax::AnyJsObjectMemberName::JsMetavariable(_) => false,
309323
}
310-
false
311324
}
312325
fn get_function_first_parameter(func: &SetupFunction) -> Option<AnyJsBindingPattern> {
313326
match func {

0 commit comments

Comments
 (0)