This pr replaces `{{{ }}}` usage by a {{html-safe}} helper. While it doesn't solve the underlying issue, it gives us a path forward without risking breaking too much existing behavior.
Also introduces an htmlSafe computed macro:
```
import { htmlSafe } from "discourse/lib/computed";
htmlDescription: htmlSafe("description")
```
Overtime {{html-safe}} usage should be removed and moved to components properties or specialized components/helpers.
28 lines
530 B
JavaScript
28 lines
530 B
JavaScript
import { next } from "@ember/runloop";
|
|
import { htmlSafe } from "@ember/template";
|
|
import Component from "@ember/component";
|
|
|
|
export default Component.extend({
|
|
text: null,
|
|
|
|
init() {
|
|
this._super(...arguments);
|
|
|
|
this.set("text", htmlSafe(this.text));
|
|
},
|
|
|
|
didInsertElement() {
|
|
this._super(...arguments);
|
|
|
|
next(null, () => {
|
|
const $this = $(this.element);
|
|
|
|
if ($this) {
|
|
$this.find("br").replaceWith(" ");
|
|
$this.find("hr").remove();
|
|
$this.ellipsis();
|
|
}
|
|
});
|
|
}
|
|
});
|