diff --git a/transforms/angle-brackets/transform.js b/transforms/angle-brackets/transform.js
index c4a2ade9d..8613f4543 100755
--- a/transforms/angle-brackets/transform.js
+++ b/transforms/angle-brackets/transform.js
@@ -149,6 +149,10 @@ function transformAttrs(tagName, attrs) {
} else {
_value = b.text(a.value.original || _EMPTY_STRING_);
}
+
+ if (_value.chars && _value.chars.length > 0) {
+ _value.chars = JSON.stringify(_value.chars).slice(1, -1);
+ }
return b.attr(_key, _value);
});
}
diff --git a/transforms/angle-brackets/transform.test.js b/transforms/angle-brackets/transform.test.js
index b4607a831..bd5de683f 100644
--- a/transforms/angle-brackets/transform.test.js
+++ b/transforms/angle-brackets/transform.test.js
@@ -68,6 +68,20 @@ test('boolean-values', () => {
`);
});
+test('string-preserve-quotes', () => {
+ let input = '{{foo-bar placeholder="Choose a \\"thing\\"..."}}';
+ // eslint-disable-next-line prettier/prettier
+ expect(runTest('string-preserve-quotes.hbs', input)).toMatch('