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/es2021.en/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
|
*/
|
|
@@ -1779,7 +1779,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1779
1779
|
* ```
|
|
1780
1780
|
* @packageDocumentation
|
|
1781
1781
|
* @module constants
|
|
1782
|
-
*/ const APP_VERSION = "4.14.
|
|
1782
|
+
*/ const APP_VERSION = "4.14.6";
|
|
1783
1783
|
// prettier-ignore
|
|
1784
1784
|
const ES = "es2021";
|
|
1785
1785
|
const IS_ES_MODERN = true;
|
|
@@ -32239,6 +32239,25 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeSandbox = null;
|
|
|
32239
32239
|
}
|
|
32240
32240
|
return html;
|
|
32241
32241
|
};
|
|
32242
|
+
/**
|
|
32243
|
+
* Replace the whole iframe document with the given HTML.
|
|
32244
|
+
*
|
|
32245
|
+
* The markup is parsed in an inert document first (no browsing
|
|
32246
|
+
* context: scripts do not run, sub-resources are not fetched),
|
|
32247
|
+
* sanitized there via `safeHTML`, and only then moved into the
|
|
32248
|
+
* live document. `document.write` on the live document would
|
|
32249
|
+
* execute inline scripts and event handlers while parsing,
|
|
32250
|
+
* before the sanitizer had a chance to strip them, and the
|
|
32251
|
+
* iframe is same-origin with the host page by default.
|
|
32252
|
+
* A `<script>` the cleaner is configured to keep still never
|
|
32253
|
+
* executes: nodes coming from an inert parser are flagged
|
|
32254
|
+
* "already started", exactly like `innerHTML`.
|
|
32255
|
+
* See GHSA-w3xv-x3fm-59ph.
|
|
32256
|
+
*/ const replaceDocument = (html)=>{
|
|
32257
|
+
const inert = new DOMParser().parseFromString(html, 'text/html');
|
|
32258
|
+
editor.e.fire('safeHTML', inert.documentElement);
|
|
32259
|
+
doc.replaceChild(doc.adoptNode(inert.documentElement), doc.documentElement);
|
|
32260
|
+
};
|
|
32242
32261
|
if (docMode) {
|
|
32243
32262
|
const tag = editor.element.tagName;
|
|
32244
32263
|
if (tag !== 'TEXTAREA' && tag !== 'INPUT') {
|
|
@@ -32251,19 +32270,20 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeSandbox = null;
|
|
|
32251
32270
|
if (/<(html|body)/i.test(value)) {
|
|
32252
32271
|
const old = doc.documentElement.outerHTML;
|
|
32253
32272
|
if (clearMarkers(old) !== clearMarkers(value)) {
|
|
32254
|
-
|
|
32255
|
-
doc.write(editor.o.iframeDoctype + clearMarkers(value));
|
|
32256
|
-
doc.close();
|
|
32273
|
+
replaceDocument(clearMarkers(value));
|
|
32257
32274
|
editor.editor = doc.body;
|
|
32258
|
-
editor.e.fire('safeHTML', editor.editor);
|
|
32259
32275
|
toggleEditable();
|
|
32260
32276
|
editor.e.fire('prepareWYSIWYGEditor');
|
|
32261
32277
|
editor.e.stopPropagation('beforeSetNativeEditorValue');
|
|
32262
32278
|
}
|
|
32263
|
-
|
|
32264
|
-
doc.body.innerHTML = value;
|
|
32279
|
+
return true;
|
|
32265
32280
|
}
|
|
32266
|
-
|
|
32281
|
+
// A partial value goes through the regular
|
|
32282
|
+
// path: `clean-html` sanitizes it and the
|
|
32283
|
+
// editor assigns it to `doc.body` via
|
|
32284
|
+
// `innerHTML`. Writing the raw value here
|
|
32285
|
+
// would fire its event handlers first.
|
|
32286
|
+
return false;
|
|
32267
32287
|
}, {
|
|
32268
32288
|
top: true
|
|
32269
32289
|
});
|