From 65d65a5c1367c6ae0ee2cd95b971212f0cb8b68b Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Thu, 26 Jul 2018 14:50:45 +0200 Subject: [PATCH] fix(glimmer): better formatting of boolean attributes (and also ...attributes) (#4891) --- src/language-handlebars/printer-glimmer.js | 6 +++++- tests/html_glimmer/__snapshots__/jsfmt.spec.js.snap | 11 +++++++++++ tests/html_glimmer/component.hbs | 6 ++++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/language-handlebars/printer-glimmer.js b/src/language-handlebars/printer-glimmer.js index 61e6ca3e..cce610c7 100644 --- a/src/language-handlebars/printer-glimmer.js +++ b/src/language-handlebars/printer-glimmer.js @@ -168,7 +168,11 @@ function print(path, options, print) { ); } case "AttrNode": { - const quote = n.value.type === "TextNode" ? '"' : ""; + const isText = n.value.type === "TextNode"; + if (isText && n.value.chars === "") { + return concat([n.name]); + } + const quote = isText ? '"' : ""; return concat([n.name, "=", quote, path.call(print, "value"), quote]); } case "ConcatStatement": { diff --git a/tests/html_glimmer/__snapshots__/jsfmt.spec.js.snap b/tests/html_glimmer/__snapshots__/jsfmt.spec.js.snap index 9423c13d..ab84adb8 100644 --- a/tests/html_glimmer/__snapshots__/jsfmt.spec.js.snap +++ b/tests/html_glimmer/__snapshots__/jsfmt.spec.js.snap @@ -139,6 +139,12 @@ exports[`component.hbs - glimmer-verify 1`] = ` {{@greeting}}, {{@name}}! + + + + + +
Hello
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ {{@greeting}} @@ -148,6 +154,11 @@ exports[`component.hbs - glimmer-verify 1`] = ` + + +
+ Hello +
`; exports[`concat-statement.hbs - glimmer-verify 1`] = ` diff --git a/tests/html_glimmer/component.hbs b/tests/html_glimmer/component.hbs index 2426214a..69cd3d2d 100644 --- a/tests/html_glimmer/component.hbs +++ b/tests/html_glimmer/component.hbs @@ -2,3 +2,9 @@ {{@greeting}}, {{@name}}! + + + + + +
Hello