Describe the bug
dprint-plugin-typescript version: x.x.x
config:
{ "lineWidth": 80, "memberExpression.linePerExpression": true, "semiColons": "asi", "indentWidth": 2 }
Input Code
const func =
() =>
(arg1: {
a: number;
b: number;
}) =>
(arg2: { c: number }) =>
(arg3: undefined): undefined => arg3
Expected Output
const func =
() =>
(arg1: {
a: number;
b: number;
}) =>
(arg2: { c: number }) =>
(arg3: undefined): undefined => arg3
Actual Output
const func = () =>
(arg1: {
a: number
b: number
}) =>
(arg2: { c: number }) =>
(arg3: undefined): undefined => arg3
Notice the first arrow head not starting on it's own line.
If the second arrow header is put on a single line, the following is formatted correctly (unchanged):
const func =
() =>
(arg1: { a: number; b: number }) =>
(arg2: { c: number }) =>
(arg3: undefined): undefined => arg3