From 50c2b5b01959011aefeb7c8990edfe5fafa00281 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 12 Dec 2018 21:53:16 -0500 Subject: [PATCH] add braces around instrumented block-less if statements etc --- src/compile/render-dom/index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/compile/render-dom/index.ts b/src/compile/render-dom/index.ts index 763e13abc1..c86ad1c5e7 100644 --- a/src/compile/render-dom/index.ts +++ b/src/compile/render-dom/index.ts @@ -163,7 +163,7 @@ export default function dom( } }, - leave(node) { + leave(node, parent) { if (map.has(node)) { scope = scope.parent; } @@ -211,6 +211,9 @@ export default function dom( } else { code.prependRight(node.start, `${insert}; `); } + } else if (parent && /(If|For(In|Of)?|While)Statement/.test(parent.type) && node.type !== 'BlockStatement') { + code.prependRight(node.start, '{ '); + code.appendLeft(node.end, `${code.original[node.end - 1] === ';' ? '' : ';'} ${insert}; }`); } else { code.appendLeft(node.end, `${code.original[node.end - 1] === ';' ? '' : ';'} ${insert};`); }