Skip to content

Commit 89f8cca

Browse files
author
Arthur Ozga
committed
mapped type indent
1 parent e0438db commit 89f8cca

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/compiler/checker.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2516,7 +2516,8 @@ namespace ts {
25162516
const readonlyToken = type.declaration && type.declaration.readonlyToken ? createToken(SyntaxKind.ReadonlyKeyword) : undefined;
25172517
const questionToken = type.declaration && type.declaration.questionToken ? createToken(SyntaxKind.QuestionToken) : undefined;
25182518

2519-
return createMappedTypeNode(readonlyToken, typeParameterNode, questionToken, templateTypeNode);
2519+
const mappedTypeNode = createMappedTypeNode(readonlyToken, typeParameterNode, questionToken, templateTypeNode);
2520+
return setEmitFlags(mappedTypeNode, EmitFlags.SingleLine);
25202521
}
25212522

25222523
function createAnonymousTypeNode(type: ObjectType): TypeNode {

src/compiler/emitter.ts

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1004,9 +1004,15 @@ namespace ts {
10041004
}
10051005

10061006
function emitMappedType(node: MappedTypeNode) {
1007+
const emitFlags = getEmitFlags(node);
10071008
write("{");
1008-
writeLine();
1009-
increaseIndent();
1009+
if (emitFlags & EmitFlags.SingleLine) {
1010+
write(" ");
1011+
}
1012+
else {
1013+
writeLine();
1014+
increaseIndent();
1015+
}
10101016
writeIfPresent(node.readonlyToken, "readonly ");
10111017
write("[");
10121018
emit(node.typeParameter.name);
@@ -1017,8 +1023,13 @@ namespace ts {
10171023
write(": ");
10181024
emit(node.type);
10191025
write(";");
1020-
writeLine();
1021-
decreaseIndent();
1026+
if (emitFlags & EmitFlags.SingleLine) {
1027+
write(" ");
1028+
}
1029+
else {
1030+
writeLine();
1031+
decreaseIndent();
1032+
}
10221033
write("}");
10231034
}
10241035

0 commit comments

Comments
 (0)