jodit 4.0.0-beta.91 → 4.0.0-beta.94

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.
Files changed (87) hide show
  1. package/.nvmrc +1 -1
  2. package/CHANGELOG.md +36 -5
  3. package/README.md +7 -7
  4. package/es2015/jodit.css +1 -1
  5. package/es2015/jodit.fat.min.js +2 -2
  6. package/es2015/jodit.js +20 -10
  7. package/es2015/jodit.min.js +2 -2
  8. package/es2015/plugins/debug/debug.js +1 -1
  9. package/es2015/plugins/debug/debug.min.js +1 -1
  10. package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
  11. package/es2015/plugins/speech-recognize/speech-recognize.js +1 -1
  12. package/es2015/plugins/speech-recognize/speech-recognize.min.js +1 -1
  13. package/es2018/jodit.css +1 -1
  14. package/es2018/jodit.fat.min.js +2 -2
  15. package/es2018/jodit.js +20 -10
  16. package/es2018/jodit.min.js +2 -2
  17. package/es2018/plugins/debug/debug.js +1 -1
  18. package/es2018/plugins/debug/debug.min.js +1 -1
  19. package/es2018/plugins/speech-recognize/speech-recognize.css +1 -1
  20. package/es2018/plugins/speech-recognize/speech-recognize.js +1 -1
  21. package/es2018/plugins/speech-recognize/speech-recognize.min.js +1 -1
  22. package/es2021/jodit.css +1 -1
  23. package/es2021/jodit.fat.min.js +2 -2
  24. package/es2021/jodit.js +20 -10
  25. package/es2021/jodit.min.js +2 -2
  26. package/es2021/plugins/debug/debug.js +1 -1
  27. package/es2021/plugins/debug/debug.min.js +1 -1
  28. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  29. package/es2021/plugins/speech-recognize/speech-recognize.js +1 -1
  30. package/es2021/plugins/speech-recognize/speech-recognize.min.js +1 -1
  31. package/es2021.en/jodit.css +1 -1
  32. package/es2021.en/jodit.fat.min.js +2 -2
  33. package/es2021.en/jodit.js +20 -10
  34. package/es2021.en/jodit.min.js +2 -2
  35. package/es2021.en/plugins/debug/debug.js +1 -1
  36. package/es2021.en/plugins/debug/debug.min.js +1 -1
  37. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  38. package/es2021.en/plugins/speech-recognize/speech-recognize.js +1 -1
  39. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +1 -1
  40. package/es5/jodit.css +2 -2
  41. package/es5/jodit.fat.min.js +2 -2
  42. package/es5/jodit.js +39839 -39828
  43. package/es5/jodit.min.css +2 -2
  44. package/es5/jodit.min.js +2 -2
  45. package/es5/plugins/debug/debug.js +1 -1
  46. package/es5/plugins/debug/debug.min.js +1 -1
  47. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  48. package/es5/plugins/speech-recognize/speech-recognize.js +1 -1
  49. package/es5/plugins/speech-recognize/speech-recognize.min.js +1 -1
  50. package/esm/core/constants.js +1 -1
  51. package/esm/core/selection/selection.js +14 -5
  52. package/esm/modules/image-editor/config.js +2 -2
  53. package/esm/modules/uploader/helpers/build-data.js +3 -2
  54. package/esm/modules/widget/color-picker/color-picker.js +1 -1
  55. package/esm/plugins/about/about.js +1 -1
  56. package/esm/plugins/add-new-line/config.js +1 -1
  57. package/esm/plugins/bold/bold.js +6 -6
  58. package/esm/plugins/class-span/class-span.js +1 -1
  59. package/esm/plugins/clean-html/config.js +1 -1
  60. package/esm/plugins/clipboard/config.js +4 -4
  61. package/esm/plugins/color/config.js +1 -1
  62. package/esm/plugins/copy-format/copy-format.js +1 -1
  63. package/esm/plugins/font/config.js +2 -2
  64. package/esm/plugins/format-block/config.js +1 -1
  65. package/esm/plugins/fullsize/config.js +2 -2
  66. package/esm/plugins/hr/hr.js +1 -1
  67. package/esm/plugins/image/image.js +1 -1
  68. package/esm/plugins/indent/config.js +2 -2
  69. package/esm/plugins/index.js +3 -0
  70. package/esm/plugins/justify/justify.js +1 -1
  71. package/esm/plugins/line-height/config.js +1 -1
  72. package/esm/plugins/link/config.js +2 -2
  73. package/esm/plugins/ordered-list/config.js +2 -2
  74. package/esm/plugins/print/print.js +1 -1
  75. package/esm/plugins/redo-undo/redo-undo.js +2 -2
  76. package/esm/plugins/search/config.js +1 -1
  77. package/esm/plugins/source/config.js +1 -1
  78. package/esm/plugins/speech-recognize/config.js +1 -1
  79. package/esm/plugins/spellcheck/config.js +1 -1
  80. package/esm/plugins/symbols/config.js +1 -1
  81. package/esm/plugins/table/config.js +1 -1
  82. package/esm/plugins/video/config.js +1 -1
  83. package/esm/plugins/wrap-nodes/wrap-nodes.js +2 -2
  84. package/esm/styles/icons/index.d.ts +27 -27
  85. package/esm/styles/icons/index.js +27 -27
  86. package/package.json +1 -1
  87. package/types/styles/icons/index.d.ts +27 -27
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is awesome and usefully wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.0.0-beta.91
4
+ * Version: v4.0.0-beta.94
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is awesome and usefully wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.0.0-beta.91
4
+ * Version: v4.0.0-beta.94
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is awesome and usefully wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.0.0-beta.91
4
+ * Version: v4.0.0-beta.94
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is awesome and usefully wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.0.0-beta.91
4
+ * Version: v4.0.0-beta.94
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit - Jodit is awesome and usefully wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.0.0-beta.91
4
+ * Version: v4.0.0-beta.94
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
@@ -3,7 +3,7 @@
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
4
  * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
- export const APP_VERSION = "4.0.0-beta.91";
6
+ export const APP_VERSION = "4.0.0-beta.94";
7
7
  // prettier-ignore
8
8
  export const ES = "es2020";
9
9
  export const IS_ES_MODERN = true;
@@ -14,7 +14,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
14
14
  return c > 3 && r && Object.defineProperty(target, key, r), r;
15
15
  };
16
16
  import * as consts from "jodit/esm/core/constants.js";
17
- import { INVISIBLE_SPACE, INVISIBLE_SPACE_REG_EXP_END as INV_END, INVISIBLE_SPACE_REG_EXP_START as INV_START, IS_PROD } from "jodit/esm/core/constants.js";
17
+ import { INSEPARABLE_TAGS, INVISIBLE_SPACE, INVISIBLE_SPACE_REG_EXP_END as INV_END, INVISIBLE_SPACE_REG_EXP_START as INV_START, IS_PROD } from "jodit/esm/core/constants.js";
18
18
  import { Dom } from "jodit/esm/core/dom/dom.js";
19
19
  import { size, attr, error, $$, css, call, toArray, getScrollParent, scrollIntoViewIfNeeded } from "jodit/esm/core/helpers/index.js";
20
20
  import { autobind } from "jodit/esm/core/decorators/index.js";
@@ -817,7 +817,7 @@ export class Selection {
817
817
  const range = this.createRange();
818
818
  let start = node, last = node;
819
819
  do {
820
- if (Dom.isText(start)) {
820
+ if (Dom.isText(start) || Dom.isTag(start, INSEPARABLE_TAGS)) {
821
821
  break;
822
822
  }
823
823
  last = start;
@@ -825,7 +825,7 @@ export class Selection {
825
825
  } while (start);
826
826
  if (!start) {
827
827
  const fakeNode = this.j.createInside.text(consts.INVISIBLE_SPACE);
828
- if (!/^(img|br|input)$/i.test(last.nodeName)) {
828
+ if (!Dom.isTag(last, INSEPARABLE_TAGS)) {
829
829
  last.appendChild(fakeNode);
830
830
  last = fakeNode;
831
831
  }
@@ -833,8 +833,17 @@ export class Selection {
833
833
  start = last;
834
834
  }
835
835
  }
836
- range.selectNodeContents(start || last);
837
- range.collapse(inStart);
836
+ const workElm = start || last;
837
+ if (!Dom.isTag(workElm, INSEPARABLE_TAGS)) {
838
+ range.selectNodeContents(workElm);
839
+ range.collapse(inStart);
840
+ }
841
+ else {
842
+ inStart || Dom.isTag(workElm, 'br')
843
+ ? range.setStartBefore(workElm)
844
+ : range.setEndAfter(workElm);
845
+ range.collapse(inStart);
846
+ }
838
847
  this.selectRange(range);
839
848
  return last;
840
849
  }
@@ -5,8 +5,8 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import cropIcon from "./icons/crop.svg";
9
- import resizeIcon from "./icons/resize.svg";
8
+ import cropIcon from "./icons/crop.svg.js";
9
+ import resizeIcon from "./icons/resize.svg.js";
10
10
  Config.prototype.imageeditor = {
11
11
  min_width: 20,
12
12
  min_height: 20,
@@ -17,8 +17,9 @@ export function buildData(uploader, data) {
17
17
  return data;
18
18
  }
19
19
  const newData = new FD();
20
- Object.keys(data).forEach(key => {
21
- newData.append(key, data[key]);
20
+ const dict = data;
21
+ Object.keys(dict).forEach(key => {
22
+ newData.append(key, dict[key]);
22
23
  });
23
24
  return newData;
24
25
  }
@@ -11,7 +11,7 @@
11
11
  import { normalizeColor, hasBrowserColorPicker, isPlainObject, attr, isFunction, isArray, refs } from "jodit/esm/core/helpers/index.js";
12
12
  import { Icon } from "jodit/esm/core/ui/index.js";
13
13
  import { Dom } from "jodit/esm/core/dom/index.js";
14
- import paletteIcon from "./palette.svg";
14
+ import paletteIcon from "./palette.svg.js";
15
15
  Icon.set('palette', paletteIcon);
16
16
  /**
17
17
  * Build color picker
@@ -14,7 +14,7 @@ import * as constants from "jodit/esm/core/constants.js";
14
14
  import { pluginSystem } from "jodit/esm/core/global.js";
15
15
  import { Icon } from "jodit/esm/core/ui/icon.js";
16
16
  import { HOMEPAGE } from "jodit/esm/core/constants.js";
17
- import aboutIcon from "./about.svg";
17
+ import aboutIcon from "./about.svg.js";
18
18
  Config.prototype.controls.about = {
19
19
  exec: (editor) => {
20
20
  const dialog = editor.dlg({ closeOnClickOverlay: true }), i = editor.i18n.bind(editor);
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import enterIcon from "./enter.svg";
8
+ import enterIcon from "./enter.svg.js";
9
9
  Config.prototype.addNewLine = true;
10
10
  Config.prototype.addNewLineOnDBLClick = true;
11
11
  Config.prototype.addNewLineTagsTriggers = [
@@ -7,12 +7,12 @@ import { Config } from "jodit/esm/config.js";
7
7
  import { isArray } from "jodit/esm/core/helpers/index.js";
8
8
  import { pluginSystem } from "jodit/esm/core/global.js";
9
9
  import { Icon } from "jodit/esm/core/ui/icon.js";
10
- import boldIcon from "./icons/bold.svg";
11
- import italicIcon from "./icons/italic.svg";
12
- import strikethroughIcon from "./icons/strikethrough.svg";
13
- import subscriptIcon from "./icons/subscript.svg";
14
- import superscriptIcon from "./icons/superscript.svg";
15
- import underlineIcon from "./icons/underline.svg";
10
+ import boldIcon from "./icons/bold.svg.js";
11
+ import italicIcon from "./icons/italic.svg.js";
12
+ import strikethroughIcon from "./icons/strikethrough.svg.js";
13
+ import subscriptIcon from "./icons/subscript.svg.js";
14
+ import superscriptIcon from "./icons/superscript.svg.js";
15
+ import underlineIcon from "./icons/underline.svg.js";
16
16
  import "./interface";
17
17
  import "./config";
18
18
  /**
@@ -9,7 +9,7 @@ import { Dom } from "jodit/esm/core/dom/dom.js";
9
9
  import { memorizeExec } from "jodit/esm/core/helpers/utils/utils.js";
10
10
  import { pluginSystem } from "jodit/esm/core/global.js";
11
11
  import { Icon } from "jodit/esm/core/ui/icon.js";
12
- import classSpanIcon from "./class-span.svg";
12
+ import classSpanIcon from "./class-span.svg.js";
13
13
  Config.prototype.controls.classSpan = {
14
14
  command: 'applyClassName',
15
15
  exec: memorizeExec,
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import eraserIcon from "./eraser.svg";
8
+ import eraserIcon from "./eraser.svg.js";
9
9
  Config.prototype.cleanHTML = {
10
10
  timeout: 300,
11
11
  removeEmptyElements: true,
@@ -5,10 +5,10 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import copyIcon from "./icons/copy.svg";
9
- import cutIcon from "./icons/cut.svg";
10
- import pasteIcon from "./icons/paste.svg";
11
- import selectAllIcon from "./icons/select-all.svg";
8
+ import copyIcon from "./icons/copy.svg.js";
9
+ import cutIcon from "./icons/cut.svg.js";
10
+ import pasteIcon from "./icons/paste.svg.js";
11
+ import selectAllIcon from "./icons/select-all.svg.js";
12
12
  Config.prototype.controls.cut = {
13
13
  command: 'cut',
14
14
  isDisabled: (editor) => editor.s.isCollapsed(),
@@ -8,7 +8,7 @@ import { css, dataBind } from "jodit/esm/core/helpers/index.js";
8
8
  import { ColorPickerWidget, TabsWidget } from "jodit/esm/modules/widget/index.js";
9
9
  import { Icon } from "jodit/esm/core/ui/icon.js";
10
10
  import { Dom } from "jodit/esm/core/dom/dom.js";
11
- import brushIcon from "./brush.svg";
11
+ import brushIcon from "./brush.svg.js";
12
12
  Icon.set('brush', brushIcon);
13
13
  Config.prototype.controls.brush = {
14
14
  update(editor, button) {
@@ -8,7 +8,7 @@ import { Dom } from "jodit/esm/core/dom/dom.js";
8
8
  import { css } from "jodit/esm/core/helpers/utils/css.js";
9
9
  import { extendLang, pluginSystem } from "jodit/esm/core/global.js";
10
10
  import { Icon } from "jodit/esm/core/ui/icon.js";
11
- import copyFormatIcon from "./copy-format.svg";
11
+ import copyFormatIcon from "./copy-format.svg.js";
12
12
  import * as langs from "./langs";
13
13
  const pluginKey = 'copy-format';
14
14
  /**
@@ -6,8 +6,8 @@
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { css } from "jodit/esm/core/helpers/utils/css.js";
8
8
  import { Icon } from "jodit/esm/core/ui/icon.js";
9
- import fontsizeIcon from "./icons/fontsize.svg";
10
- import fontIcon from "./icons/font.svg";
9
+ import fontsizeIcon from "./icons/fontsize.svg.js";
10
+ import fontIcon from "./icons/font.svg.js";
11
11
  import { Dom } from "jodit/esm/core/dom/index.js";
12
12
  import { trimChars } from "jodit/esm/core/helpers/string/trim.js";
13
13
  /**
@@ -6,7 +6,7 @@
6
6
  import { Icon } from "jodit/esm/core/ui/icon.js";
7
7
  import { Config } from "jodit/esm/config.js";
8
8
  import { Dom } from "jodit/esm/core/dom/index.js";
9
- import paragraphIcon from "./paragraph.svg";
9
+ import paragraphIcon from "./paragraph.svg.js";
10
10
  Icon.set('paragraph', paragraphIcon);
11
11
  Config.prototype.controls.paragraph = {
12
12
  command: 'formatBlock',
@@ -9,8 +9,8 @@
9
9
  import { Config } from "jodit/esm/config.js";
10
10
  import * as consts from "jodit/esm/core/constants.js";
11
11
  import { Icon } from "jodit/esm/core/ui/icon.js";
12
- import fullsizeIcon from "./icons/fullsize.svg";
13
- import shrinkIcon from "./icons/shrink.svg";
12
+ import fullsizeIcon from "./icons/fullsize.svg.js";
13
+ import shrinkIcon from "./icons/shrink.svg.js";
14
14
  Config.prototype.fullsize = false;
15
15
  Config.prototype.globalFullSize = true;
16
16
  Icon.set('fullsize', fullsizeIcon).set('shrink', shrinkIcon);
@@ -7,7 +7,7 @@ import { Config } from "jodit/esm/config.js";
7
7
  import { Dom } from "jodit/esm/core/dom/index.js";
8
8
  import { pluginSystem } from "jodit/esm/core/global.js";
9
9
  import { Icon } from "jodit/esm/core/ui/icon.js";
10
- import hrIcon from "./hr.svg";
10
+ import hrIcon from "./hr.svg.js";
11
11
  Icon.set('hr', hrIcon);
12
12
  Config.prototype.controls.hr = {
13
13
  command: 'insertHorizontalRule',
@@ -9,7 +9,7 @@ import { FileSelectorWidget } from "jodit/esm/modules/widget/index.js";
9
9
  import { Config } from "jodit/esm/config.js";
10
10
  import { pluginSystem } from "jodit/esm/core/global.js";
11
11
  import { Icon } from "jodit/esm/core/ui/icon.js";
12
- import imageIcon from "./image.svg";
12
+ import imageIcon from "./image.svg.js";
13
13
  Icon.set('image', imageIcon);
14
14
  Config.prototype.controls.image = {
15
15
  popup: (editor, current, close) => {
@@ -7,8 +7,8 @@ import { Config } from "jodit/esm/config.js";
7
7
  import { Dom } from "jodit/esm/core/dom/index.js";
8
8
  import { Icon } from "jodit/esm/core/ui/icon.js";
9
9
  import { getKey } from "./helpers";
10
- import indentIcon from "./icons/indent.svg";
11
- import outdentIcon from "./icons/outdent.svg";
10
+ import indentIcon from "./icons/indent.svg.js";
11
+ import outdentIcon from "./icons/outdent.svg.js";
12
12
  Icon.set('indent', indentIcon).set('outdent', outdentIcon);
13
13
  Config.prototype.controls.indent = {
14
14
  tooltip: 'Increase Indent'
@@ -21,8 +21,11 @@ import "jodit/esm/plugins/image/image.js";
21
21
  import "jodit/esm/plugins/inline-popup/inline-popup.js";
22
22
  import "jodit/esm/plugins/link/link.js";
23
23
  import "jodit/esm/plugins/ordered-list/ordered-list.js";
24
+ import "jodit/esm/plugins/placeholder/placeholder.js";
24
25
  import "jodit/esm/plugins/powered-by-jodit/powered-by-jodit.js";
25
26
  import "jodit/esm/plugins/redo-undo/redo-undo.js";
26
27
  import "jodit/esm/plugins/size/size.js";
28
+ import "jodit/esm/plugins/stat/stat.js";
29
+ import "jodit/esm/plugins/table/table.js";
27
30
  import "jodit/esm/plugins/wrap-nodes/wrap-nodes.js";
28
31
  import "jodit/esm/plugins/dtd/dtd.js";
@@ -9,7 +9,7 @@ import { css } from "jodit/esm/core/helpers/utils/css.js";
9
9
  import { alignElement } from "jodit/esm/core/helpers/utils/align.js";
10
10
  import { pluginSystem } from "jodit/esm/core/global.js";
11
11
  import { Icon } from "jodit/esm/core/ui/icon.js";
12
- import justifyIcon from "./justify.svg";
12
+ import justifyIcon from "./justify.svg.js";
13
13
  Icon.set('justify', justifyIcon);
14
14
  Config.prototype.controls.align = {
15
15
  name: 'left',
@@ -6,7 +6,7 @@
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { memorizeExec } from "jodit/esm/core/helpers/index.js";
8
8
  import { Icon } from "jodit/esm/core/ui/icon.js";
9
- import lineHeightIcon from "./line-height.svg";
9
+ import lineHeightIcon from "./line-height.svg.js";
10
10
  Config.prototype.defaultLineHeight = null;
11
11
  Icon.set('line-height', lineHeightIcon);
12
12
  Config.prototype.controls.lineHeight = {
@@ -7,8 +7,8 @@ import { Config } from "jodit/esm/config.js";
7
7
  import { formTemplate } from "./template";
8
8
  import { Dom } from "jodit/esm/core/dom/dom.js";
9
9
  import { Icon } from "jodit/esm/core/ui/icon.js";
10
- import linkIcon from "./icons/link.svg";
11
- import unlinkIcon from "./icons/unlink.svg";
10
+ import linkIcon from "./icons/link.svg.js";
11
+ import unlinkIcon from "./icons/unlink.svg.js";
12
12
  Config.prototype.link = {
13
13
  formTemplate,
14
14
  followOnDblClick: false,
@@ -6,8 +6,8 @@
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { dataBind } from "jodit/esm/core/helpers/utils/data-bind.js";
8
8
  import { Icon } from "jodit/esm/core/ui/icon.js";
9
- import olIcon from "./icons/ol.svg";
10
- import ulIcon from "./icons/ul.svg";
9
+ import olIcon from "./icons/ol.svg.js";
10
+ import ulIcon from "./icons/ul.svg.js";
11
11
  const memoExec = (jodit, _, { control }) => {
12
12
  const key = `button${control.command}`;
13
13
  const value = (control.args && control.args[0]) ?? dataBind(jodit, key);
@@ -12,7 +12,7 @@ import { pluginSystem } from "jodit/esm/core/global.js";
12
12
  import { Icon } from "jodit/esm/core/ui/icon.js";
13
13
  import { previewBox } from "jodit/esm/core/helpers/utils/print.js";
14
14
  import { generateCriticalCSS } from "./lib/generate-critical-css";
15
- import printIcon from "./print.svg";
15
+ import printIcon from "./print.svg.js";
16
16
  Icon.set('print', printIcon);
17
17
  Config.prototype.controls.print = {
18
18
  exec: (editor) => {
@@ -8,8 +8,8 @@ import * as consts from "jodit/esm/core/constants.js";
8
8
  import { Plugin } from "jodit/esm/core/plugin/plugin.js";
9
9
  import { pluginSystem } from "jodit/esm/core/global.js";
10
10
  import { Icon } from "jodit/esm/core/ui/icon.js";
11
- import redoIcon from "./icons/redo.svg";
12
- import undoIcon from "./icons/undo.svg";
11
+ import redoIcon from "./icons/redo.svg.js";
12
+ import undoIcon from "./icons/undo.svg.js";
13
13
  Icon.set('redo', redoIcon).set('undo', undoIcon);
14
14
  Config.prototype.controls.redo = {
15
15
  mode: consts.MODE_SPLIT,
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import searchIcon from "./search.svg";
8
+ import searchIcon from "./search.svg.js";
9
9
  import "./interface";
10
10
  Config.prototype.useSearch = true;
11
11
  Config.prototype.search = {
@@ -6,7 +6,7 @@
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { IS_IE, MODE_SOURCE, MODE_SPLIT } from "jodit/esm/core/constants.js";
8
8
  import { Icon } from "jodit/esm/core/ui/icon.js";
9
- import sourceIcon from "./source.svg";
9
+ import sourceIcon from "./source.svg.js";
10
10
  Config.prototype.beautifyHTML = !IS_IE;
11
11
  Config.prototype.sourceEditor = 'ace';
12
12
  Config.prototype.sourceEditorNativeOptions = {
@@ -9,7 +9,7 @@ import { isBoolean } from "jodit/esm/core/helpers/checker/is-boolean.js";
9
9
  import { Icon } from "jodit/esm/core/ui/icon.js";
10
10
  import { RecognizeManager } from "./helpers/recognize-manager";
11
11
  import { SpeechRecognition } from "./helpers/api";
12
- import speechRecognizeIcon from "./speech-recognize.svg";
12
+ import speechRecognizeIcon from "./speech-recognize.svg.js";
13
13
  Config.prototype.speechRecognize = {
14
14
  api: SpeechRecognition,
15
15
  sound: true,
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import spellcheckIcon from "./spellcheck.svg";
8
+ import spellcheckIcon from "./spellcheck.svg.js";
9
9
  Config.prototype.spellcheck = false;
10
10
  Icon.set('spellcheck', spellcheckIcon);
11
11
  Config.prototype.controls.spellcheck = {
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { Config } from "jodit/esm/config.js";
7
7
  import { Icon } from "jodit/esm/core/ui/icon.js";
8
- import symbolsIcon from "./symbols.svg";
8
+ import symbolsIcon from "./symbols.svg.js";
9
9
  Config.prototype.usePopupForSpecialCharacters = false;
10
10
  Config.prototype.specialCharacters = [
11
11
  '!',
@@ -8,7 +8,7 @@ import { Dom } from "jodit/esm/core/dom/index.js";
8
8
  import { attr } from "jodit/esm/core/helpers/utils/index.js";
9
9
  import { $$, css, scrollIntoViewIfNeeded } from "jodit/esm/core/helpers/index.js";
10
10
  import { Icon } from "jodit/esm/core/ui/icon.js";
11
- import tableIcon from "./table.svg";
11
+ import tableIcon from "./table.svg.js";
12
12
  Config.prototype.table = {
13
13
  selectionCellStyle: 'border: 1px double #1e88e5 !important;',
14
14
  useExtraClassesOptions: false
@@ -9,7 +9,7 @@ import { convertMediaUrlToVideoEmbed } from "jodit/esm/core/helpers/index.js";
9
9
  import { UIForm, UIInput, UITextArea, UIBlock } from "jodit/esm/core/ui/form/index.js";
10
10
  import { Button } from "jodit/esm/core/ui/button/index.js";
11
11
  import { Icon } from "jodit/esm/core/ui/icon.js";
12
- import videoIcon from "./video.svg";
12
+ import videoIcon from "./video.svg.js";
13
13
  Icon.set('video', videoIcon);
14
14
  Config.prototype.controls.video = {
15
15
  popup: (editor, current, close) => {
@@ -50,10 +50,10 @@ class wrapNodes extends Plugin {
50
50
  return;
51
51
  }
52
52
  jodit.e
53
- .on('drop.wtn focus.wtn keydown.wtn mousedown.wtn afterInit.wtn', this.preprocessInput, {
53
+ .on('drop.wtn focus.wtn keydown.wtn mousedown.wtn afterInit.wtn backSpaceAfterDelete.wtn', this.preprocessInput, {
54
54
  top: true
55
55
  })
56
- .on('afterInit.wtn postProcessSetEditorValue.wtn afterCommitStyle.wtn', this.postProcessSetEditorValue);
56
+ .on('afterInit.wtn postProcessSetEditorValue.wtn afterCommitStyle.wtn backSpaceAfterDelete.wtn', this.postProcessSetEditorValue);
57
57
  }
58
58
  /** @override **/
59
59
  beforeDestruct(jodit) {
@@ -8,31 +8,31 @@
8
8
  * @packageDocumentation
9
9
  * @module icons
10
10
  */
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
11
+ import angle_down from "./angle-down.svg.js";
12
+ import angle_left from "./angle-left.svg.js";
13
+ import angle_right from "./angle-right.svg.js";
14
+ import angle_up from "./angle-up.svg.js";
15
+ import bin from "./bin.svg.js";
16
+ import cancel from "./cancel.svg.js";
17
+ import center from "./center.svg.js";
18
+ import check from "./check.svg.js";
19
+ import chevron from "./chevron.svg.js";
20
+ import dots from "./dots.svg.js";
21
+ import eye from "./eye.svg.js";
22
+ import file from "./file.svg.js";
23
+ import folder from "./folder.svg.js";
24
+ import info_circle from "./info-circle.svg.js";
25
+ import left from "./left.svg.js";
26
+ import lock from "./lock.svg.js";
27
+ import ok from "./ok.svg.js";
28
+ import pencil from "./pencil.svg.js";
29
+ import plus from "./plus.svg.js";
30
+ import resize_handler from "./resize-handler.svg.js";
31
+ import right from "./right.svg.js";
32
+ import save from "./save.svg.js";
33
+ import settings from "./settings.svg.js";
34
+ import unlock from "./unlock.svg.js";
35
+ import update from "./update.svg.js";
36
+ import upload from "./upload.svg.js";
37
+ import valign from "./valign.svg.js";
38
38
  export { angle_down, angle_left, angle_right, angle_up, bin, cancel, center, check, chevron, dots, eye, file, folder, info_circle, left, lock, ok, pencil, plus, resize_handler, right, save, settings, unlock, update, upload, valign };
@@ -8,31 +8,31 @@
8
8
  * @packageDocumentation
9
9
  * @module icons
10
10
  */
11
- import angle_down from "./angle-down.svg";
12
- import angle_left from "./angle-left.svg";
13
- import angle_right from "./angle-right.svg";
14
- import angle_up from "./angle-up.svg";
15
- import bin from "./bin.svg";
16
- import cancel from "./cancel.svg";
17
- import center from "./center.svg";
18
- import check from "./check.svg";
19
- import chevron from "./chevron.svg";
20
- import dots from "./dots.svg";
21
- import eye from "./eye.svg";
22
- import file from "./file.svg";
23
- import folder from "./folder.svg";
24
- import info_circle from "./info-circle.svg";
25
- import left from "./left.svg";
26
- import lock from "./lock.svg";
27
- import ok from "./ok.svg";
28
- import pencil from "./pencil.svg";
29
- import plus from "./plus.svg";
30
- import resize_handler from "./resize-handler.svg";
31
- import right from "./right.svg";
32
- import save from "./save.svg";
33
- import settings from "./settings.svg";
34
- import unlock from "./unlock.svg";
35
- import update from "./update.svg";
36
- import upload from "./upload.svg";
37
- import valign from "./valign.svg";
11
+ import angle_down from "./angle-down.svg.js";
12
+ import angle_left from "./angle-left.svg.js";
13
+ import angle_right from "./angle-right.svg.js";
14
+ import angle_up from "./angle-up.svg.js";
15
+ import bin from "./bin.svg.js";
16
+ import cancel from "./cancel.svg.js";
17
+ import center from "./center.svg.js";
18
+ import check from "./check.svg.js";
19
+ import chevron from "./chevron.svg.js";
20
+ import dots from "./dots.svg.js";
21
+ import eye from "./eye.svg.js";
22
+ import file from "./file.svg.js";
23
+ import folder from "./folder.svg.js";
24
+ import info_circle from "./info-circle.svg.js";
25
+ import left from "./left.svg.js";
26
+ import lock from "./lock.svg.js";
27
+ import ok from "./ok.svg.js";
28
+ import pencil from "./pencil.svg.js";
29
+ import plus from "./plus.svg.js";
30
+ import resize_handler from "./resize-handler.svg.js";
31
+ import right from "./right.svg.js";
32
+ import save from "./save.svg.js";
33
+ import settings from "./settings.svg.js";
34
+ import unlock from "./unlock.svg.js";
35
+ import update from "./update.svg.js";
36
+ import upload from "./upload.svg.js";
37
+ import valign from "./valign.svg.js";
38
38
  export { angle_down, angle_left, angle_right, angle_up, bin, cancel, center, check, chevron, dots, eye, file, folder, info_circle, left, lock, ok, pencil, plus, resize_handler, right, save, settings, unlock, update, upload, valign };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jodit",
3
- "version": "4.0.0-beta.91",
3
+ "version": "4.0.0-beta.94",
4
4
  "description": "Jodit is awesome and usefully wysiwyg editor with filebrowser",
5
5
  "main": "esm/index.js",
6
6
  "types": "types/index.d.ts",