diff --git a/crates/oxc_formatter/src/write/member_expression.rs b/crates/oxc_formatter/src/write/member_expression.rs index b1f87cae15f2e..ff0b3b8617b6f 100644 --- a/crates/oxc_formatter/src/write/member_expression.rs +++ b/crates/oxc_formatter/src/write/member_expression.rs @@ -144,6 +144,7 @@ fn layout<'a>( AstNodes::StaticMemberExpression(_) | AstNodes::ComputedMemberExpression(_) | AstNodes::ChainExpression(_) + | AstNodes::TSNonNullExpression(_) ) { first_non_static_member_ancestor = first_non_static_member_ancestor.parent(); } diff --git a/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts b/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts new file mode 100644 index 0000000000000..53c217c23acd1 --- /dev/null +++ b/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts @@ -0,0 +1,3 @@ +(( + compoundConfigurationsSchema.items +)).oneOf![1].properties!.folder.enum = folderNames; diff --git a/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts.snap b/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts.snap new file mode 100644 index 0000000000000..7d8941f977e57 --- /dev/null +++ b/crates/oxc_formatter/tests/fixtures/ts/static-members/non-null-expression.ts.snap @@ -0,0 +1,14 @@ +--- +source: crates/oxc_formatter/tests/fixtures/mod.rs +--- +==================== Input ==================== +(( + compoundConfigurationsSchema.items +)).oneOf![1].properties!.folder.enum = folderNames; + +==================== Output ==================== +(( + compoundConfigurationsSchema.items +)).oneOf![1].properties!.folder.enum = folderNames; + +===================== End =====================