jodit 4.14.5 → 4.14.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/es2015/jodit.css +1 -1
- package/es2015/jodit.fat.min.js +3 -3
- package/es2015/jodit.js +29 -9
- package/es2015/jodit.min.js +3 -3
- package/es2015/plugins/debug/debug.css +1 -1
- package/es2015/plugins/debug/debug.js +1 -1
- package/es2015/plugins/debug/debug.min.js +1 -1
- package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
- package/es2015/plugins/speech-recognize/speech-recognize.js +1 -1
- package/es2015/plugins/speech-recognize/speech-recognize.min.js +1 -1
- package/es2018/jodit.fat.min.js +3 -3
- package/es2018/jodit.min.js +3 -3
- package/es2018/plugins/debug/debug.min.js +1 -1
- package/es2018/plugins/speech-recognize/speech-recognize.min.js +1 -1
- package/es2021/jodit.css +1 -1
- package/es2021/jodit.fat.min.js +3 -3
- package/es2021/jodit.js +29 -9
- package/es2021/jodit.min.js +3 -3
- package/es2021/plugins/debug/debug.css +1 -1
- package/es2021/plugins/debug/debug.js +1 -1
- package/es2021/plugins/debug/debug.min.js +1 -1
- package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
- package/es2021/plugins/speech-recognize/speech-recognize.js +1 -1
- package/es2021/plugins/speech-recognize/speech-recognize.min.js +1 -1
- package/es2021.en/jodit.css +1 -1
- package/es2021.en/jodit.fat.min.js +3 -3
- package/es2021.en/jodit.js +29 -9
- package/es2021.en/jodit.min.js +3 -3
- package/es2021.en/plugins/debug/debug.css +1 -1
- package/es2021.en/plugins/debug/debug.js +1 -1
- package/es2021.en/plugins/debug/debug.min.js +1 -1
- package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
- package/es2021.en/plugins/speech-recognize/speech-recognize.js +1 -1
- package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +1 -1
- package/es5/jodit.css +2 -2
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +29 -9
- package/es5/jodit.min.css +2 -2
- package/es5/jodit.min.js +2 -2
- package/es5/plugins/debug/debug.css +1 -1
- package/es5/plugins/debug/debug.js +1 -1
- package/es5/plugins/debug/debug.min.js +1 -1
- package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
- package/es5/plugins/speech-recognize/speech-recognize.js +1 -1
- package/es5/plugins/speech-recognize/speech-recognize.min.js +1 -1
- package/es5/polyfills.fat.min.js +1 -1
- package/es5/polyfills.js +1 -1
- package/es5/polyfills.min.js +1 -1
- package/esm/core/constants.js +1 -1
- package/esm/plugins/iframe/iframe.js +28 -9
- package/package.json +1 -1
package/es2015/jodit.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* jodit - Jodit is an awesome and useful wysiwyg editor with filebrowser
|
|
3
3
|
* Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
|
|
4
|
-
* Version: v4.14.
|
|
4
|
+
* Version: v4.14.6
|
|
5
5
|
* Url: https://xdsoft.net/jodit/
|
|
6
6
|
* License(s): MIT
|
|
7
7
|
*/
|
|
@@ -1785,7 +1785,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1785
1785
|
* ```
|
|
1786
1786
|
* @packageDocumentation
|
|
1787
1787
|
* @module constants
|
|
1788
|
-
*/ const APP_VERSION = "4.14.
|
|
1788
|
+
*/ const APP_VERSION = "4.14.6";
|
|
1789
1789
|
// prettier-ignore
|
|
1790
1790
|
const ES = "es2015";
|
|
1791
1791
|
const IS_ES_MODERN = true;
|
|
@@ -32856,6 +32856,25 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeSandbox = null;
|
|
|
32856
32856
|
}
|
|
32857
32857
|
return html;
|
|
32858
32858
|
};
|
|
32859
|
+
/**
|
|
32860
|
+
* Replace the whole iframe document with the given HTML.
|
|
32861
|
+
*
|
|
32862
|
+
* The markup is parsed in an inert document first (no browsing
|
|
32863
|
+
* context: scripts do not run, sub-resources are not fetched),
|
|
32864
|
+
* sanitized there via `safeHTML`, and only then moved into the
|
|
32865
|
+
* live document. `document.write` on the live document would
|
|
32866
|
+
* execute inline scripts and event handlers while parsing,
|
|
32867
|
+
* before the sanitizer had a chance to strip them, and the
|
|
32868
|
+
* iframe is same-origin with the host page by default.
|
|
32869
|
+
* A `<script>` the cleaner is configured to keep still never
|
|
32870
|
+
* executes: nodes coming from an inert parser are flagged
|
|
32871
|
+
* "already started", exactly like `innerHTML`.
|
|
32872
|
+
* See GHSA-w3xv-x3fm-59ph.
|
|
32873
|
+
*/ const replaceDocument = (html)=>{
|
|
32874
|
+
const inert = new DOMParser().parseFromString(html, 'text/html');
|
|
32875
|
+
editor.e.fire('safeHTML', inert.documentElement);
|
|
32876
|
+
doc.replaceChild(doc.adoptNode(inert.documentElement), doc.documentElement);
|
|
32877
|
+
};
|
|
32859
32878
|
if (docMode) {
|
|
32860
32879
|
const tag = editor.element.tagName;
|
|
32861
32880
|
if (tag !== 'TEXTAREA' && tag !== 'INPUT') {
|
|
@@ -32868,19 +32887,20 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeSandbox = null;
|
|
|
32868
32887
|
if (/<(html|body)/i.test(value)) {
|
|
32869
32888
|
const old = doc.documentElement.outerHTML;
|
|
32870
32889
|
if (clearMarkers(old) !== clearMarkers(value)) {
|
|
32871
|
-
|
|
32872
|
-
doc.write(editor.o.iframeDoctype + clearMarkers(value));
|
|
32873
|
-
doc.close();
|
|
32890
|
+
replaceDocument(clearMarkers(value));
|
|
32874
32891
|
editor.editor = doc.body;
|
|
32875
|
-
editor.e.fire('safeHTML', editor.editor);
|
|
32876
32892
|
toggleEditable();
|
|
32877
32893
|
editor.e.fire('prepareWYSIWYGEditor');
|
|
32878
32894
|
editor.e.stopPropagation('beforeSetNativeEditorValue');
|
|
32879
32895
|
}
|
|
32880
|
-
|
|
32881
|
-
doc.body.innerHTML = value;
|
|
32896
|
+
return true;
|
|
32882
32897
|
}
|
|
32883
|
-
|
|
32898
|
+
// A partial value goes through the regular
|
|
32899
|
+
// path: `clean-html` sanitizes it and the
|
|
32900
|
+
// editor assigns it to `doc.body` via
|
|
32901
|
+
// `innerHTML`. Writing the raw value here
|
|
32902
|
+
// would fire its event handlers first.
|
|
32903
|
+
return false;
|
|
32884
32904
|
}, {
|
|
32885
32905
|
top: true
|
|
32886
32906
|
});
|