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/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.13.
|
|
4
|
+
* Version: v4.13.6
|
|
5
5
|
* Url: https://xdsoft.net/jodit/
|
|
6
6
|
* License(s): MIT
|
|
7
7
|
*/
|
|
@@ -1849,7 +1849,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1849
1849
|
* ```
|
|
1850
1850
|
* @packageDocumentation
|
|
1851
1851
|
* @module constants
|
|
1852
|
-
*/ const APP_VERSION = "4.13.
|
|
1852
|
+
*/ const APP_VERSION = "4.13.6";
|
|
1853
1853
|
// prettier-ignore
|
|
1854
1854
|
const ES = "es2015";
|
|
1855
1855
|
const IS_ES_MODERN = true;
|
|
@@ -6179,7 +6179,7 @@ const HTML_NAMESPACE = 'http://www.w3.org/1999/xhtml';
|
|
|
6179
6179
|
// markup into a live node.
|
|
6180
6180
|
const foreign = box.querySelectorAll('math *, svg *');
|
|
6181
6181
|
for(let i = 0; i < foreign.length; i++){
|
|
6182
|
-
if (foreign[i]
|
|
6182
|
+
if (box.contains(foreign[i]) && isSmuggledForeignHtml(foreign[i])) {
|
|
6183
6183
|
jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(foreign[i]);
|
|
6184
6184
|
}
|
|
6185
6185
|
}
|
|
@@ -6287,7 +6287,8 @@ function sanitizeHTMLElement(elm, { safeJavaScriptLink, removeOnError } = {
|
|
|
6287
6287
|
// scheme (e.g. `java\tscript:`) — all of which the browser still resolves to
|
|
6288
6288
|
// `javascript:` on click. See GHSA-j839-gqq4-gf9j.
|
|
6289
6289
|
if (safeJavaScriptLink && href && isDangerousUrl(href, tagName)) {
|
|
6290
|
-
|
|
6290
|
+
const protocol = typeof location !== 'undefined' ? location.protocol : 'http:';
|
|
6291
|
+
(0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_1__.attr)(elm, 'href', protocol + '//' + href);
|
|
6291
6292
|
effected = true;
|
|
6292
6293
|
}
|
|
6293
6294
|
if (safeJavaScriptLink) {
|
|
@@ -24008,7 +24009,8 @@ class ToolbarButton extends jodit_core_ui_button__WEBPACK_IMPORTED_MODULE_20__.U
|
|
|
24008
24009
|
button.classList.remove(cn);
|
|
24009
24010
|
button.classList.add(cn + '__button');
|
|
24010
24011
|
Object.defineProperty(button, 'component', {
|
|
24011
|
-
value: this
|
|
24012
|
+
value: this,
|
|
24013
|
+
configurable: true
|
|
24012
24014
|
});
|
|
24013
24015
|
container.appendChild(button);
|
|
24014
24016
|
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_22__.Icon.get('chevron')}</span>`);
|
|
@@ -28924,15 +28926,22 @@ function filterStyleProperties(style, allowed) {
|
|
|
28924
28926
|
* @private
|
|
28925
28927
|
*/ function isRemovableNode(jodit, node, current, allow, deny) {
|
|
28926
28928
|
if (!jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(node)) {
|
|
28927
|
-
|
|
28929
|
+
// The allow/deny hashes are keyed by upper-cased tag name. HTML
|
|
28930
|
+
// `nodeName` is already upper-case, but foreign (SVG/MathML) elements
|
|
28931
|
+
// keep their original case — an SVG `<script>` reports `"script"`, so a
|
|
28932
|
+
// case-sensitive lookup let it slip past `denyTags` and execute. Normalise
|
|
28933
|
+
// to upper case so namespace can't bypass the filter. See
|
|
28934
|
+
// GHSA-45qg-252v-3f7p.
|
|
28935
|
+
const name = node.nodeName.toUpperCase();
|
|
28936
|
+
if (allow && !allow[name]) {
|
|
28928
28937
|
return true;
|
|
28929
28938
|
}
|
|
28930
28939
|
// A YouTube/Vimeo player inserted through the Video button is trusted
|
|
28931
28940
|
// editor content, so keep it even though `iframe` is denied by default
|
|
28932
28941
|
// — otherwise the embed is stripped ~300ms after insertion (#1381).
|
|
28933
28942
|
// Arbitrary/bare iframes stay denied.
|
|
28934
|
-
const isTrustedEmbed =
|
|
28935
|
-
if (!allow && deny && deny[
|
|
28943
|
+
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') || '');
|
|
28944
|
+
if (!allow && deny && deny[name] && !isTrustedEmbed) {
|
|
28936
28945
|
return true;
|
|
28937
28946
|
}
|
|
28938
28947
|
}
|