jodit 4.13.21 → 4.13.23
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 +12 -0
- package/es2015/jodit.css +1 -1
- package/es2015/jodit.fat.min.css +1 -1
- package/es2015/jodit.fat.min.js +4 -4
- package/es2015/jodit.js +29 -34
- package/es2015/jodit.min.css +1 -1
- 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.css +1 -1
- package/es2018/jodit.fat.min.js +4 -4
- package/es2018/jodit.min.css +1 -1
- 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.css +1 -1
- package/es2021/jodit.fat.min.js +4 -4
- package/es2021/jodit.js +27 -34
- package/es2021/jodit.min.css +1 -1
- package/es2021/jodit.min.js +4 -4
- 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.css +1 -1
- package/es2021.en/jodit.fat.min.js +4 -4
- package/es2021.en/jodit.js +27 -34
- package/es2021.en/jodit.min.css +1 -1
- package/es2021.en/jodit.min.js +4 -4
- 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.css +1 -1
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +55 -34
- package/es5/jodit.min.css +3 -3
- 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 +2 -2
- package/es5/polyfills.js +213 -87
- package/es5/polyfills.min.js +2 -2
- package/esm/core/constants.js +1 -1
- package/esm/modules/uploader/helpers/data-uri-to-blob.d.ts +3 -1
- package/esm/modules/uploader/helpers/data-uri-to-blob.js +7 -8
- package/esm/plugins/clean-html/helpers/visitor/filters/remove-empty-text-node.js +7 -1
- package/esm/plugins/clean-html/helpers/visitor/filters/remove-inv-text-nodes.js +4 -1
- package/esm/plugins/image-processor/image-processor.js +11 -19
- package/package.json +1 -1
- package/types/modules/uploader/helpers/data-uri-to-blob.d.ts +3 -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.23
|
|
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.23";
|
|
1847
1847
|
// prettier-ignore
|
|
1848
1848
|
const ES = "es2021";
|
|
1849
1849
|
const IS_ES_MODERN = true;
|
|
@@ -24784,13 +24784,11 @@ function buildData(uploader, data) {
|
|
|
24784
24784
|
*/ /**
|
|
24785
24785
|
* @module modules/uploader
|
|
24786
24786
|
*/ /**
|
|
24787
|
-
* Convert dataURI to Blob
|
|
24787
|
+
* Convert dataURI to Blob. Both base64 and percent-encoded payloads are
|
|
24788
|
+
* supported — `data:image/svg+xml,%3Csvg...` is as valid as
|
|
24789
|
+
* `data:image/png;base64,...`
|
|
24788
24790
|
*/ function dataURItoBlob(dataURI) {
|
|
24789
|
-
|
|
24790
|
-
// doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this
|
|
24791
|
-
const byteString = atob(dataURI.split(',')[1]), // separate out the mime component
|
|
24792
|
-
mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0], // write the bytes of the string to an ArrayBuffer
|
|
24793
|
-
ab = new ArrayBuffer(byteString.length), ia = new Uint8Array(ab);
|
|
24791
|
+
const [header, ...rest] = dataURI.split(','), payload = rest.join(','), mimeString = header.split(':')[1]?.split(';')[0] ?? '', byteString = /;base64/i.test(header) ? atob(payload) : decodeURIComponent(payload), ab = new ArrayBuffer(byteString.length), ia = new Uint8Array(ab);
|
|
24794
24792
|
for(let i = 0; i < byteString.length; i += 1){
|
|
24795
24793
|
ia[i] = byteString.charCodeAt(i);
|
|
24796
24794
|
}
|
|
@@ -28405,7 +28403,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
28405
28403
|
* @private
|
|
28406
28404
|
*/ function removeEmptyTextNode(jodit, node, hadEffect, arg, argi, currentNode) {
|
|
28407
28405
|
if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.isText(node) && !node.nodeValue) {
|
|
28408
|
-
|
|
28406
|
+
// Restore the caret only while the editor owns focus. The walker runs
|
|
28407
|
+
// asynchronously, so the user may have already tabbed away — moving the
|
|
28408
|
+
// selection here would call `focus()` and steal focus back from the
|
|
28409
|
+
// element the user navigated to (e.g. Shift+Tab accessibility flow).
|
|
28410
|
+
if (node === currentNode && jodit.s.isFocused() && jodit.s.isCollapsed()) {
|
|
28409
28411
|
jodit.s.setCursorAfter(node);
|
|
28410
28412
|
}
|
|
28411
28413
|
jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(node);
|
|
@@ -28448,7 +28450,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
28448
28450
|
return hadEffect;
|
|
28449
28451
|
}
|
|
28450
28452
|
node.nodeValue = node.nodeValue.replace((0,jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.INVISIBLE_SPACE_REG_EXP)(), '');
|
|
28451
|
-
|
|
28453
|
+
// Same guard as in `removeEmptyTextNode`: the walker is asynchronous, so
|
|
28454
|
+
// never move the selection (it re-focuses the editor) once the user has
|
|
28455
|
+
// moved focus elsewhere.
|
|
28456
|
+
if (node === currentNode && jodit.s.isFocused() && jodit.s.isCollapsed()) {
|
|
28452
28457
|
jodit.s.setCursorAfter(node);
|
|
28453
28458
|
}
|
|
28454
28459
|
if (!node.nodeValue) {
|
|
@@ -31891,7 +31896,8 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.imageProcessor = {
|
|
|
31891
31896
|
/* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(28077);
|
|
31892
31897
|
/* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(65946);
|
|
31893
31898
|
/* harmony import */ var jodit_core_plugin__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(91206);
|
|
31894
|
-
/* harmony import */ var
|
|
31899
|
+
/* harmony import */ var jodit_modules_uploader_helpers_data_uri_to_blob__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(23112);
|
|
31900
|
+
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(51034);
|
|
31895
31901
|
/*!
|
|
31896
31902
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
31897
31903
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -31907,6 +31913,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.imageProcessor = {
|
|
|
31907
31913
|
|
|
31908
31914
|
|
|
31909
31915
|
|
|
31916
|
+
|
|
31910
31917
|
const JODIT_IMAGE_PROCESSOR_BINDED = '__jodit_imageprocessor_binded';
|
|
31911
31918
|
const JODIT_IMAGE_BLOB_ID = JODIT_IMAGE_PROCESSOR_BINDED + 'blob-id';
|
|
31912
31919
|
/**
|
|
@@ -31989,7 +31996,15 @@ function replaceDataURIToBlobUUID(editor, elm) {
|
|
|
31989
31996
|
if (typeof ArrayBuffer === 'undefined' || typeof URL === 'undefined') {
|
|
31990
31997
|
return;
|
|
31991
31998
|
}
|
|
31992
|
-
const dataUri = elm.src
|
|
31999
|
+
const dataUri = elm.src;
|
|
32000
|
+
let blob;
|
|
32001
|
+
try {
|
|
32002
|
+
blob = (0,jodit_modules_uploader_helpers_data_uri_to_blob__WEBPACK_IMPORTED_MODULE_6__.dataURItoBlob)(dataUri);
|
|
32003
|
+
} catch {
|
|
32004
|
+
// A data URI the browser accepts but we cannot decode is not worth
|
|
32005
|
+
// breaking the editor over — keep the image as it is
|
|
32006
|
+
return;
|
|
32007
|
+
}
|
|
31993
32008
|
elm.src = URL.createObjectURL(blob);
|
|
31994
32009
|
editor.e.fire('internalUpdate');
|
|
31995
32010
|
const { buffer } = editor;
|
|
@@ -31997,28 +32012,6 @@ function replaceDataURIToBlobUUID(editor, elm) {
|
|
|
31997
32012
|
list[elm.src] = dataUri;
|
|
31998
32013
|
editor.buffer.set(JODIT_IMAGE_BLOB_ID, list);
|
|
31999
32014
|
}
|
|
32000
|
-
// https://stackoverflow.com/a/12300351
|
|
32001
|
-
function dataURItoBlob(dataURI) {
|
|
32002
|
-
// convert base64 to raw binary data held in a string
|
|
32003
|
-
// doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this
|
|
32004
|
-
const byteString = atob(dataURI.split(',')[1]);
|
|
32005
|
-
// separate out the mime component
|
|
32006
|
-
const mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
|
|
32007
|
-
// write the bytes of the string to an ArrayBuffer
|
|
32008
|
-
const ab = new ArrayBuffer(byteString.length);
|
|
32009
|
-
// create a view into the buffer
|
|
32010
|
-
const ia = new Uint8Array(ab);
|
|
32011
|
-
// set the bytes of the buffer to the correct values
|
|
32012
|
-
for(let i = 0; i < byteString.length; i++){
|
|
32013
|
-
ia[i] = byteString.charCodeAt(i);
|
|
32014
|
-
}
|
|
32015
|
-
// write the ArrayBuffer to a blob, and you're done
|
|
32016
|
-
return new Blob([
|
|
32017
|
-
ab
|
|
32018
|
-
], {
|
|
32019
|
-
type: mimeString
|
|
32020
|
-
});
|
|
32021
|
-
}
|
|
32022
32015
|
jodit_core_global__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('imageProcessor', imageProcessor);
|
|
32023
32016
|
|
|
32024
32017
|
|