jodit 4.13.3 → 4.13.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 +24 -0
- package/es2015/jodit.css +1 -1
- package/es2015/jodit.fat.min.js +14 -14
- package/es2015/jodit.js +17 -8
- package/es2015/jodit.min.js +4 -4
- 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 +4 -4
- package/es2018/jodit.min.js +4 -4
- 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 +5 -5
- package/es2021/jodit.js +17 -8
- package/es2021/jodit.min.js +5 -5
- 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 +5 -5
- package/es2021.en/jodit.js +17 -8
- package/es2021.en/jodit.min.js +5 -5
- 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 +17 -8
- 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/core/helpers/html/safe-html.js +3 -2
- package/esm/modules/toolbar/button/button.js +2 -1
- package/esm/plugins/clean-html/helpers/visitor/filters/try-remove-node.js +10 -3
- 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.13.
|
|
4
|
+
* Version: v4.13.6
|
|
5
5
|
* Url: https://xdsoft.net/jodit/
|
|
6
6
|
* License(s): MIT
|
|
7
7
|
*/
|
|
@@ -1843,7 +1843,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1843
1843
|
* ```
|
|
1844
1844
|
* @packageDocumentation
|
|
1845
1845
|
* @module constants
|
|
1846
|
-
*/ const APP_VERSION = "4.13.
|
|
1846
|
+
*/ const APP_VERSION = "4.13.6";
|
|
1847
1847
|
// prettier-ignore
|
|
1848
1848
|
const ES = "es2021";
|
|
1849
1849
|
const IS_ES_MODERN = true;
|
|
@@ -6156,7 +6156,7 @@ const HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';
|
|
|
6156
6156
|
// markup into a live node.
|
|
6157
6157
|
const foreign = box.querySelectorAll('math *, svg *');
|
|
6158
6158
|
for(let i = 0; i < foreign.length; i++){
|
|
6159
|
-
if (foreign[i]
|
|
6159
|
+
if (box.contains(foreign[i]) && isSmuggledForeignHtml(foreign[i])) {
|
|
6160
6160
|
jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(foreign[i]);
|
|
6161
6161
|
}
|
|
6162
6162
|
}
|
|
@@ -6264,7 +6264,8 @@ function sanitizeHTMLElement(elm, { safeJavaScriptLink, removeOnError } = {
|
|
|
6264
6264
|
// scheme (e.g. `java\tscript:`) — all of which the browser still resolves to
|
|
6265
6265
|
// `javascript:` on click. See GHSA-j839-gqq4-gf9j.
|
|
6266
6266
|
if (safeJavaScriptLink && href && isDangerousUrl(href, tagName)) {
|
|
6267
|
-
|
|
6267
|
+
const protocol = typeof location !== 'undefined' ? location.protocol : 'http:';
|
|
6268
|
+
(0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_1__.attr)(elm, 'href', protocol + '//' + href);
|
|
6268
6269
|
effected = true;
|
|
6269
6270
|
}
|
|
6270
6271
|
if (safeJavaScriptLink) {
|
|
@@ -23801,7 +23802,8 @@ class ToolbarButton extends jodit_core_ui_button__WEBPACK_IMPORTED_MODULE_18__.U
|
|
|
23801
23802
|
button.classList.remove(cn);
|
|
23802
23803
|
button.classList.add(cn + '__button');
|
|
23803
23804
|
Object.defineProperty(button, 'component', {
|
|
23804
|
-
value: this
|
|
23805
|
+
value: this,
|
|
23806
|
+
configurable: true
|
|
23805
23807
|
});
|
|
23806
23808
|
container.appendChild(button);
|
|
23807
23809
|
const trigger = this.j.c.fromHTML(`<span role="button" aria-haspopup="true" aria-expanded="false" class="${cn}__trigger">${jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_20__.Icon.get('chevron')}</span>`);
|
|
@@ -28649,15 +28651,22 @@ function filterStyleProperties(style, allowed) {
|
|
|
28649
28651
|
* @private
|
|
28650
28652
|
*/ function isRemovableNode(jodit, node, current, allow, deny) {
|
|
28651
28653
|
if (!jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(node)) {
|
|
28652
|
-
|
|
28654
|
+
// The allow/deny hashes are keyed by upper-cased tag name. HTML
|
|
28655
|
+
// `nodeName` is already upper-case, but foreign (SVG/MathML) elements
|
|
28656
|
+
// keep their original case — an SVG `<script>` reports `"script"`, so a
|
|
28657
|
+
// case-sensitive lookup let it slip past `denyTags` and execute. Normalise
|
|
28658
|
+
// to upper case so namespace can't bypass the filter. See
|
|
28659
|
+
// GHSA-45qg-252v-3f7p.
|
|
28660
|
+
const name = node.nodeName.toUpperCase();
|
|
28661
|
+
if (allow && !allow[name]) {
|
|
28653
28662
|
return true;
|
|
28654
28663
|
}
|
|
28655
28664
|
// A YouTube/Vimeo player inserted through the Video button is trusted
|
|
28656
28665
|
// editor content, so keep it even though `iframe` is denied by default
|
|
28657
28666
|
// — otherwise the embed is stripped ~300ms after insertion (#1381).
|
|
28658
28667
|
// Arbitrary/bare iframes stay denied.
|
|
28659
|
-
const isTrustedEmbed =
|
|
28660
|
-
if (!allow && deny && deny[
|
|
28668
|
+
const isTrustedEmbed = name === 'IFRAME' && (0,_is_allowed_media_embed__WEBPACK_IMPORTED_MODULE_4__.isAllowedMediaEmbed)((0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__.attr)(node, 'src') || '');
|
|
28669
|
+
if (!allow && deny && deny[name] && !isTrustedEmbed) {
|
|
28661
28670
|
return true;
|
|
28662
28671
|
}
|
|
28663
28672
|
}
|