diff --git a/crates/oxc_prettier/src/format/class.rs b/crates/oxc_prettier/src/format/class.rs index 00a692105..c44a5da5c 100644 --- a/crates/oxc_prettier/src/format/class.rs +++ b/crates/oxc_prettier/src/format/class.rs @@ -9,6 +9,13 @@ pub(super) fn print_class<'a>(p: &mut Prettier<'a>, class: &Class<'a>) -> Doc<'a parts.push(id.format(p)); parts.push(ss!(" ")); } + + if let Some(super_class) = &class.super_class { + parts.push(ss!("extends ")); + parts.push(super_class.format(p)); + parts.push(ss!(" ")); + } + parts.push(class.body.format(p)); Doc::Array(parts) } diff --git a/tasks/prettier_conformance/prettier.snap.md b/tasks/prettier_conformance/prettier.snap.md index 8a3476785..4f2f9187d 100644 --- a/tasks/prettier_conformance/prettier.snap.md +++ b/tasks/prettier_conformance/prettier.snap.md @@ -1,4 +1,4 @@ -Compatibility: 124/601 (20.63%) +Compatibility: 127/601 (21.13%) # Failed @@ -149,7 +149,6 @@ Compatibility: 124/601 (20.63%) * class-comment/superclass.js ### class-extends -* class-extends/complex.js * class-extends/extends.js * class-extends/tuple-and-record.js @@ -160,13 +159,11 @@ Compatibility: 124/601 (20.63%) ### classes * classes/asi.js * classes/assignment.js -* classes/binary.js * classes/class-fields-features.js * classes/empty.js * classes/method.js * classes/new.js * classes/property.js -* classes/super.js ### classes/keyword-property * classes/keyword-property/async.js