diff --git a/crates/oxc_formatter/src/parentheses/expression.rs b/crates/oxc_formatter/src/parentheses/expression.rs index d80759f8a94ac..1a9621177dc7b 100644 --- a/crates/oxc_formatter/src/parentheses/expression.rs +++ b/crates/oxc_formatter/src/parentheses/expression.rs @@ -897,7 +897,9 @@ fn type_cast_like_needs_parens(span: Span, parent: &AstNodes<'_>) -> bool { | AstNodes::SpreadElement(_) | AstNodes::JSXSpreadAttribute(_) // static member - | AstNodes::StaticMemberExpression(_) => true, + | AstNodes::StaticMemberExpression(_) + // private field member + | AstNodes::PrivateFieldExpression(_) => true, AstNodes::ComputedMemberExpression(member) => { member.object.span() == span } diff --git a/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts b/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts new file mode 100644 index 0000000000000..98f33ac616542 --- /dev/null +++ b/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts @@ -0,0 +1,8 @@ +class X { + #selectClause: unknown; + + test(columns: unknown) { + (this as any).#selectClause = columns; + } +} + diff --git a/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts.snap b/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts.snap new file mode 100644 index 0000000000000..ee9c55ec1baf0 --- /dev/null +++ b/crates/oxc_formatter/tests/fixtures/ts/parenthesis/as-private-field.ts.snap @@ -0,0 +1,37 @@ +--- +source: crates/oxc_formatter/tests/fixtures/mod.rs +--- +==================== Input ==================== +class X { + #selectClause: unknown; + + test(columns: unknown) { + (this as any).#selectClause = columns; + } +} + + +==================== Output ==================== +------------------ +{ printWidth: 80 } +------------------ +class X { + #selectClause: unknown; + + test(columns: unknown) { + (this as any).#selectClause = columns; + } +} + +------------------- +{ printWidth: 100 } +------------------- +class X { + #selectClause: unknown; + + test(columns: unknown) { + (this as any).#selectClause = columns; + } +} + +===================== End =====================