From 344339bd13b229430b0cb42dd43e325eb44a2066 Mon Sep 17 00:00:00 2001 From: David Sherret Date: Mon, 20 Jun 2022 11:14:52 -0400 Subject: [PATCH] fix: do not blank line after function type's parameters sometimes --- src/generation/generate.rs | 2 +- tests/specs/issues/issue0382.txt | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 tests/specs/issues/issue0382.txt diff --git a/src/generation/generate.rs b/src/generation/generate.rs index 78e5f84a..e9fa2f6a 100644 --- a/src/generation/generate.rs +++ b/src/generation/generate.rs @@ -6847,7 +6847,7 @@ fn gen_close_paren_with_type<'a>(opts: GenCloseParenWithTypeOptions<'a>, context items.push_condition(if_true( "newLineIfHeaderHangingAndTypeNodeMultipleLines", Rc::new(move |context| { - if !has_type_node { + if !has_type_node || context.writer_info.is_start_of_line() { return Some(false); } diff --git a/tests/specs/issues/issue0382.txt b/tests/specs/issues/issue0382.txt new file mode 100644 index 00000000..f0e303dd --- /dev/null +++ b/tests/specs/issues/issue0382.txt @@ -0,0 +1,22 @@ +~~ deno: true ~~ +== should not add trailing blank line after parameters in function type == +// this is weird code, but it's set to maintain type argument newlines +type TestingTestTesttttttt = + T extends Testing ? ( + ...args: Test + ) => Other< + Test, + Test + > + : never; + +[expect] +// this is weird code, but it's set to maintain type argument newlines +type TestingTestTesttttttt = + T extends Testing ? ( + ...args: Test + ) => Other< + Test, + Test + > + : never;