diff --git a/README.md b/README.md index aaf9216..8320569 100644 --- a/README.md +++ b/README.md @@ -78,11 +78,12 @@ var editor = EditorJS({ All properties are optional. -| Field | Type | Description | -| ------------ | ---------- | --------------------------- | -| placeholder | `string` | header's placeholder string | -| levels | `number[]` | enabled heading levels | -| defaultLevel | `number` | default heading level | +| Field | Type | Description | +| --------------- | ---------- | ----------------------------------- | +| placeholder | `string` | header's placeholder string | +| levels | `number[]` | enabled heading levels | +| defaultLevel | `number` | default heading level | +| allowLineBreaks | `bool` | allow line breaks. default: `false` | ```javascript var editor = EditorJS({ @@ -95,7 +96,8 @@ var editor = EditorJS({ config: { placeholder: 'Enter a header', levels: [2, 3, 4], - defaultLevel: 3 + defaultLevel: 3, + allowLineBreaks: true } } } diff --git a/src/index.js b/src/index.js index 8230e7c..4b79498 100644 --- a/src/index.js +++ b/src/index.js @@ -227,10 +227,14 @@ class Header { * @public */ save(toolsContent) { - return { - text: toolsContent.innerHTML, + const sanitizerConfig = { + br: !(typeof this._settings.allowLineBreaks === 'undefined' || this._settings.allowLineBreaks === false), + } + + return Object.assign({}, { + text: this.api.sanitizer.clean(toolsContent.innerHTML, sanitizerConfig), level: this.currentLevel.number, - }; + }); } /** @@ -249,7 +253,9 @@ class Header { static get sanitize() { return { level: false, - text: {}, + text: { + br: true, + }, }; }