jodit 4.13.19 → 4.13.21

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 (53) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/es2015/jodit.css +1 -1
  3. package/es2015/jodit.fat.min.js +3 -3
  4. package/es2015/jodit.js +33 -11
  5. package/es2015/jodit.min.js +9 -9
  6. package/es2015/plugins/debug/debug.css +1 -1
  7. package/es2015/plugins/debug/debug.js +1 -1
  8. package/es2015/plugins/debug/debug.min.js +1 -1
  9. package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
  10. package/es2015/plugins/speech-recognize/speech-recognize.js +1 -1
  11. package/es2015/plugins/speech-recognize/speech-recognize.min.js +1 -1
  12. package/es2018/jodit.fat.min.js +3 -3
  13. package/es2018/jodit.min.js +3 -3
  14. package/es2018/plugins/debug/debug.min.js +1 -1
  15. package/es2018/plugins/speech-recognize/speech-recognize.min.js +1 -1
  16. package/es2021/jodit.css +1 -1
  17. package/es2021/jodit.fat.min.js +4 -4
  18. package/es2021/jodit.js +33 -11
  19. package/es2021/jodit.min.js +4 -4
  20. package/es2021/plugins/debug/debug.css +1 -1
  21. package/es2021/plugins/debug/debug.js +1 -1
  22. package/es2021/plugins/debug/debug.min.js +1 -1
  23. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  24. package/es2021/plugins/speech-recognize/speech-recognize.js +1 -1
  25. package/es2021/plugins/speech-recognize/speech-recognize.min.js +1 -1
  26. package/es2021.en/jodit.css +1 -1
  27. package/es2021.en/jodit.fat.min.js +4 -4
  28. package/es2021.en/jodit.js +33 -11
  29. package/es2021.en/jodit.min.js +4 -4
  30. package/es2021.en/plugins/debug/debug.css +1 -1
  31. package/es2021.en/plugins/debug/debug.js +1 -1
  32. package/es2021.en/plugins/debug/debug.min.js +1 -1
  33. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  34. package/es2021.en/plugins/speech-recognize/speech-recognize.js +1 -1
  35. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +1 -1
  36. package/es5/jodit.css +2 -2
  37. package/es5/jodit.fat.min.js +2 -2
  38. package/es5/jodit.js +43 -11
  39. package/es5/jodit.min.css +2 -2
  40. package/es5/jodit.min.js +2 -2
  41. package/es5/plugins/debug/debug.css +1 -1
  42. package/es5/plugins/debug/debug.js +1 -1
  43. package/es5/plugins/debug/debug.min.js +1 -1
  44. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  45. package/es5/plugins/speech-recognize/speech-recognize.js +1 -1
  46. package/es5/plugins/speech-recognize/speech-recognize.min.js +1 -1
  47. package/es5/polyfills.fat.min.js +1 -1
  48. package/es5/polyfills.js +1 -1
  49. package/es5/polyfills.min.js +1 -1
  50. package/esm/core/constants.js +1 -1
  51. package/esm/core/helpers/utils/scroll-into-view.js +5 -1
  52. package/esm/plugins/search/ui/search.js +24 -4
  53. package/package.json +1 -1
@@ -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.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
5
5
  * Url: https://xdsoft.net/jodit/
6
6
  * License(s): MIT
7
7
  */
package/es5/polyfills.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.19
4
+ * Version: v4.13.21
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 an awesome and useful wysiwyg editor with filebrowser
3
3
  * Author: Chupurnov <chupurnov@gmail.com> (https://xdsoft.net/jodit/)
4
- * Version: v4.13.19
4
+ * Version: v4.13.21
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-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
- export const APP_VERSION = "4.13.19";
6
+ export const APP_VERSION = "4.13.21";
7
7
  // prettier-ignore
8
8
  export const ES = "es2020";
9
9
  export const IS_ES_MODERN = true;
@@ -61,7 +61,11 @@ export function scrollIntoViewIfNeeded(elm, root, doc) {
61
61
  root.scrollTop < alignBottom ? alignBottom : elm.offsetTop;
62
62
  }
63
63
  if (!inView(elm, root, doc)) {
64
- elm.scrollIntoView();
64
+ // `block: 'nearest'` scrolls the page the minimal distance (one
65
+ // line while typing), while the default `block: 'start'` aligns
66
+ // the element to the viewport top and the page jumps like
67
+ // PageDown was pressed
68
+ elm.scrollIntoView({ block: 'nearest' });
65
69
  }
66
70
  }
67
71
  }
@@ -72,11 +72,28 @@ let UISearch = class UISearch extends UIElement {
72
72
  this.replaceButton = replaceBtn;
73
73
  this.currentBox = current;
74
74
  this.countBox = count;
75
+ const closeAction = () => this.close();
76
+ const replaceAction = () => void jodit.e.fire(this, 'pressReplaceButton');
77
+ const nextAction = () => void jodit.e.fire('searchNext');
78
+ const prevAction = () => void jodit.e.fire('searchPrevious');
79
+ // Pointer activation is handled on `pointerdown` (returning `false`
80
+ // there keeps the focus and selection intact), but activating a
81
+ // native button from the keyboard (Enter/Space) fires only `click`
82
+ // with `detail === 0` — handle that path separately. Pointer clicks
83
+ // arrive with `detail >= 1`, so the action does not run twice.
84
+ // See https://github.com/xdan/jodit/issues/1440
85
+ const onKeyboardActivate = (action) => (e) => {
86
+ if (!e.detail) {
87
+ e.preventDefault();
88
+ action();
89
+ }
90
+ };
75
91
  jodit.e
76
92
  .on(this.closeButton, 'pointerdown', () => {
77
- this.close();
93
+ closeAction();
78
94
  return false;
79
95
  })
96
+ .on(this.closeButton, 'click', onKeyboardActivate(closeAction))
80
97
  .on(this.queryInput, 'input', () => {
81
98
  this.currentIndex = 0;
82
99
  })
@@ -87,17 +104,20 @@ let UISearch = class UISearch extends UIElement {
87
104
  }
88
105
  })
89
106
  .on(this.replaceButton, 'pointerdown', () => {
90
- jodit.e.fire(this, 'pressReplaceButton');
107
+ replaceAction();
91
108
  return false;
92
109
  })
110
+ .on(this.replaceButton, 'click', onKeyboardActivate(replaceAction))
93
111
  .on(next, 'pointerdown', () => {
94
- void jodit.e.fire('searchNext');
112
+ nextAction();
95
113
  return false;
96
114
  })
115
+ .on(next, 'click', onKeyboardActivate(nextAction))
97
116
  .on(prev, 'pointerdown', () => {
98
- jodit.e.fire('searchPrevious');
117
+ prevAction();
99
118
  return false;
100
119
  })
120
+ .on(prev, 'click', onKeyboardActivate(prevAction))
101
121
  .on(this.queryInput, 'input', () => {
102
122
  this.setMod('empty-query', !trim(this.queryInput.value).length);
103
123
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jodit",
3
- "version": "4.13.19",
3
+ "version": "4.13.21",
4
4
  "description": "Jodit is an awesome and useful wysiwyg editor with filebrowser",
5
5
  "main": "esm/index.js",
6
6
  "types": "types/index.d.ts",