jodit 4.2.25 → 4.2.32

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 (169) hide show
  1. package/.nvmrc +1 -1
  2. package/CHANGELOG.md +119 -5
  3. package/es2015/jodit.css +14 -2
  4. package/es2015/jodit.fat.min.css +1 -1
  5. package/es2015/jodit.fat.min.js +2 -2
  6. package/es2015/jodit.js +422 -284
  7. package/es2015/jodit.min.css +1 -1
  8. package/es2015/jodit.min.js +2 -2
  9. package/es2015/plugins/debug/debug.js +1 -1
  10. package/es2015/plugins/debug/debug.min.js +1 -1
  11. package/es2015/plugins/speech-recognize/speech-recognize.css +1 -1
  12. package/es2015/plugins/speech-recognize/speech-recognize.js +25 -18
  13. package/es2015/plugins/speech-recognize/speech-recognize.min.js +2 -2
  14. package/es2018/jodit.css +14 -2
  15. package/es2018/jodit.fat.min.css +1 -1
  16. package/es2018/jodit.fat.min.js +2 -2
  17. package/es2018/jodit.js +416 -278
  18. package/es2018/jodit.min.css +1 -1
  19. package/es2018/jodit.min.js +2 -2
  20. package/es2018/plugins/debug/debug.js +1 -1
  21. package/es2018/plugins/debug/debug.min.js +1 -1
  22. package/es2018/plugins/speech-recognize/speech-recognize.css +1 -1
  23. package/es2018/plugins/speech-recognize/speech-recognize.js +25 -18
  24. package/es2018/plugins/speech-recognize/speech-recognize.min.js +2 -2
  25. package/es2021/jodit.css +14 -2
  26. package/es2021/jodit.fat.min.css +1 -1
  27. package/es2021/jodit.fat.min.js +2 -2
  28. package/es2021/jodit.js +416 -278
  29. package/es2021/jodit.min.css +1 -1
  30. package/es2021/jodit.min.js +2 -2
  31. package/es2021/plugins/debug/debug.js +1 -1
  32. package/es2021/plugins/debug/debug.min.js +1 -1
  33. package/es2021/plugins/speech-recognize/speech-recognize.css +1 -1
  34. package/es2021/plugins/speech-recognize/speech-recognize.js +25 -18
  35. package/es2021/plugins/speech-recognize/speech-recognize.min.js +2 -2
  36. package/es2021.en/jodit.css +14 -2
  37. package/es2021.en/jodit.fat.min.css +1 -1
  38. package/es2021.en/jodit.fat.min.js +2 -2
  39. package/es2021.en/jodit.js +391 -272
  40. package/es2021.en/jodit.min.css +1 -1
  41. package/es2021.en/jodit.min.js +2 -2
  42. package/es2021.en/plugins/debug/debug.js +1 -1
  43. package/es2021.en/plugins/debug/debug.min.js +1 -1
  44. package/es2021.en/plugins/speech-recognize/speech-recognize.css +1 -1
  45. package/es2021.en/plugins/speech-recognize/speech-recognize.js +25 -18
  46. package/es2021.en/plugins/speech-recognize/speech-recognize.min.js +2 -2
  47. package/es5/164.fat.min.js +10 -0
  48. package/es5/164.js +4939 -0
  49. package/es5/164.min.js +10 -0
  50. package/es5/5.fat.min.js +10 -0
  51. package/es5/5.js +76 -0
  52. package/es5/5.min.js +10 -0
  53. package/es5/jodit.css +21 -6
  54. package/es5/jodit.fat.min.css +1 -1
  55. package/es5/jodit.fat.min.js +2 -2
  56. package/es5/jodit.js +817 -5709
  57. package/es5/jodit.min.css +3 -3
  58. package/es5/jodit.min.js +2 -2
  59. package/es5/plugins/debug/debug.js +1 -1
  60. package/es5/plugins/debug/debug.min.js +1 -1
  61. package/es5/plugins/speech-recognize/speech-recognize.css +1 -1
  62. package/es5/plugins/speech-recognize/speech-recognize.js +26 -19
  63. package/es5/plugins/speech-recognize/speech-recognize.min.js +2 -2
  64. package/esm/config.js +3 -7
  65. package/esm/core/async/async.js +2 -1
  66. package/esm/core/constants.d.ts +2 -0
  67. package/esm/core/constants.js +12 -8
  68. package/esm/core/decorators/watch/watch.js +0 -1
  69. package/esm/core/dom/dom.d.ts +2 -1
  70. package/esm/core/dom/dom.js +12 -6
  71. package/esm/core/event-emitter/event-emitter.js +3 -3
  72. package/esm/core/global.js +16 -3
  73. package/esm/core/helpers/array/to-array.d.ts +1 -6
  74. package/esm/core/helpers/array/to-array.js +1 -1
  75. package/esm/core/helpers/async/set-timeout.d.ts +0 -3
  76. package/esm/core/helpers/async/set-timeout.js +3 -2
  77. package/esm/core/helpers/checker/has-browser-color-picker.d.ts +0 -3
  78. package/esm/core/helpers/checker/has-browser-color-picker.js +2 -1
  79. package/esm/core/helpers/checker/is-url.d.ts +0 -3
  80. package/esm/core/helpers/checker/is-url.js +2 -1
  81. package/esm/core/helpers/html/apply-styles.js +3 -3
  82. package/esm/core/helpers/html/clean-from-word.js +2 -1
  83. package/esm/core/helpers/html/htmlspecialchars.d.ts +0 -3
  84. package/esm/core/helpers/html/htmlspecialchars.js +2 -1
  85. package/esm/core/helpers/normalize/normalize-key-aliases.js +2 -1
  86. package/esm/core/helpers/normalize/normalize-size.d.ts +1 -1
  87. package/esm/core/helpers/size/get-scroll-parent.js +3 -2
  88. package/esm/core/helpers/utils/complete-url.js +2 -1
  89. package/esm/core/helpers/utils/convert-media-url-to-video-embed.js +2 -1
  90. package/esm/core/helpers/utils/default-language.js +3 -2
  91. package/esm/core/helpers/utils/reset.js +3 -3
  92. package/esm/core/request/ajax.js +2 -1
  93. package/esm/core/selection/selection.js +1 -0
  94. package/esm/core/selection/style/api/has-same-style.js +15 -10
  95. package/esm/core/selection/style/api/toggle-attributes.js +2 -1
  96. package/esm/core/selection/style/commit-style.d.ts +1 -1
  97. package/esm/core/ui/button/tooltip/tooltip.d.ts +1 -0
  98. package/esm/core/ui/button/tooltip/tooltip.js +11 -5
  99. package/esm/core/ui/form/inputs/file/file.d.ts +1 -0
  100. package/esm/core/ui/form/inputs/file/file.js +1 -0
  101. package/esm/core/ui/form/validators/input.d.ts +3 -3
  102. package/esm/core/ui/form/validators/select.d.ts +1 -1
  103. package/esm/jodit.js +3 -0
  104. package/esm/modules/file-browser/config.js +9 -1
  105. package/esm/modules/file-browser/data-provider.js +0 -1
  106. package/esm/modules/file-browser/file-browser.js +0 -1
  107. package/esm/modules/table/table.d.ts +2 -3
  108. package/esm/modules/table/table.js +27 -35
  109. package/esm/modules/toolbar/button/button.d.ts +1 -1
  110. package/esm/plugins/add-new-line/add-new-line.js +4 -1
  111. package/esm/plugins/backspace/cases/check-remove-char.js +1 -0
  112. package/esm/plugins/clean-html/config.d.ts +3 -3
  113. package/esm/plugins/clean-html/helpers/visitor/filters/fill-empty-paragraph.js +9 -1
  114. package/esm/plugins/hotkeys/hotkeys.js +4 -2
  115. package/esm/plugins/iframe/config.d.ts +15 -3
  116. package/esm/plugins/iframe/config.js +1 -0
  117. package/esm/plugins/iframe/iframe.js +3 -0
  118. package/esm/plugins/indent/helpers.d.ts +1 -1
  119. package/esm/plugins/inline-popup/config/items/a.d.ts +2 -2
  120. package/esm/plugins/inline-popup/config/items/cells.d.ts +1 -1
  121. package/esm/plugins/inline-popup/config/items/img.d.ts +1 -1
  122. package/esm/plugins/search/config.js +2 -2
  123. package/esm/plugins/search/helpers/highlight-text-ranges.js +3 -1
  124. package/esm/plugins/select-cells/select-cells.js +1 -1
  125. package/esm/plugins/source/editor/engines/ace.d.ts +0 -1
  126. package/esm/plugins/speech-recognize/config.js +1 -1
  127. package/esm/plugins/speech-recognize/helpers/api.d.ts +1 -1
  128. package/esm/plugins/speech-recognize/helpers/api.js +5 -2
  129. package/esm/plugins/speech-recognize/helpers/sound.js +6 -4
  130. package/esm/plugins/stat/config.d.ts +1 -0
  131. package/esm/plugins/stat/config.js +1 -0
  132. package/esm/plugins/stat/stat.js +14 -3
  133. package/esm/plugins/symbols/langs/index.d.ts +2 -1
  134. package/esm/plugins/symbols/langs/index.js +2 -1
  135. package/esm/plugins/symbols/langs/ua.d.ts +1 -0
  136. package/esm/plugins/symbols/langs/ua.js +9 -0
  137. package/esm/plugins/table/config.js +19 -3
  138. package/esm/polyfills.d.ts +10 -0
  139. package/esm/polyfills.js +54 -0
  140. package/esm/tsconfig.json +1 -1
  141. package/package.json +1 -1
  142. package/types/core/constants.d.ts +2 -0
  143. package/types/core/dom/dom.d.ts +2 -1
  144. package/types/core/helpers/array/to-array.d.ts +1 -6
  145. package/types/core/helpers/async/set-timeout.d.ts +0 -3
  146. package/types/core/helpers/checker/has-browser-color-picker.d.ts +0 -3
  147. package/types/core/helpers/checker/is-url.d.ts +0 -3
  148. package/types/core/helpers/html/htmlspecialchars.d.ts +0 -3
  149. package/types/core/helpers/normalize/normalize-size.d.ts +1 -1
  150. package/types/core/selection/style/commit-style.d.ts +1 -1
  151. package/types/core/ui/button/tooltip/tooltip.d.ts +1 -0
  152. package/types/core/ui/form/inputs/file/file.d.ts +1 -0
  153. package/types/core/ui/form/validators/input.d.ts +3 -3
  154. package/types/core/ui/form/validators/select.d.ts +1 -1
  155. package/types/modules/table/table.d.ts +2 -3
  156. package/types/modules/toolbar/button/button.d.ts +1 -1
  157. package/types/plugins/clean-html/config.d.ts +3 -3
  158. package/types/plugins/iframe/config.d.ts +15 -3
  159. package/types/plugins/indent/helpers.d.ts +1 -1
  160. package/types/plugins/inline-popup/config/items/a.d.ts +2 -2
  161. package/types/plugins/inline-popup/config/items/cells.d.ts +1 -1
  162. package/types/plugins/inline-popup/config/items/img.d.ts +1 -1
  163. package/types/plugins/source/editor/engines/ace.d.ts +0 -1
  164. package/types/plugins/speech-recognize/helpers/api.d.ts +1 -1
  165. package/types/plugins/stat/config.d.ts +1 -0
  166. package/types/plugins/symbols/langs/index.d.ts +2 -1
  167. package/types/plugins/symbols/langs/ua.d.ts +1 -0
  168. package/types/polyfills.d.ts +10 -0
  169. package/types/tsconfig.json +1 -1
@@ -22,7 +22,7 @@ declare module 'jodit/config' {
22
22
  *
23
23
  * @example
24
24
  * ```javascript
25
- * new Jodit('#editor', {
25
+ * Jodit.make('#editor', {
26
26
  * iframe: true,
27
27
  * iframeBaseUrl: 'https://xdsoft.net/jodit/docs/',
28
28
  * });
@@ -41,7 +41,7 @@ declare module 'jodit/config' {
41
41
  * Custom style to be used inside the iframe to display content.
42
42
  * @example
43
43
  * ```javascript
44
- * new Jodit('#editor', {
44
+ * Jodit.make('#editor', {
45
45
  * iframe: true,
46
46
  * iframeStyle: 'html{margin: 0px;}',
47
47
  * })
@@ -53,13 +53,25 @@ declare module 'jodit/config' {
53
53
  *
54
54
  * @example
55
55
  * ```javascript
56
- * new Jodit('#editor', {
56
+ * Jodit.make('#editor', {
57
57
  * iframe: true,
58
58
  * iframeCSSLinks: ['styles/default.css'],
59
59
  * })
60
60
  * ```
61
61
  */
62
62
  iframeCSSLinks: string[];
63
+ /**
64
+ * Custom sandbox attribute for the iframe.
65
+ * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#sandbox
66
+ * ```javascript
67
+ * Jodit.make('#editor', {
68
+ * iframe: true,
69
+ * iframeSandbox: 'allow-same-origin allow-scripts'
70
+ * });
71
+ * ```
72
+ * Empty string value means that all restrictions are enabled.
73
+ */
74
+ iframeSandbox: string | null;
63
75
  }
64
76
  }
65
77
  export {};
@@ -7,4 +7,4 @@
7
7
  * Get style rule key for current direction
8
8
  * @internal
9
9
  */
10
- export declare const getKey: (direction: string, box: HTMLElement) => 'marginLeft' | 'marginRight' | 'paddingLeft' | 'paddingRight';
10
+ export declare const getKey: (direction: string, box: HTMLElement) => "marginLeft" | "marginRight" | "paddingLeft" | "paddingRight";
@@ -6,6 +6,6 @@
6
6
  /**
7
7
  * @module plugins/inline-popup
8
8
  */
9
- import type { IControlType, IJodit } from "../../../../types";
10
- declare const _default: (string | IControlType<IJodit | import("../../../../types").IViewBased<import("../../../../types").IViewOptions> | import("../../../../types").IFileBrowser<import("../../../../types").IFileBrowserOptions>, import("../../../../types").IToolbarButton>)[];
9
+ import type { IControlType } from "../../../../types";
10
+ declare const _default: Array<IControlType | string>;
11
11
  export default _default;
@@ -7,5 +7,5 @@
7
7
  * @module plugins/inline-popup
8
8
  */
9
9
  import type { IControlType } from "../../../../types";
10
- declare const _default: (string | IControlType<import("../../../../types").IJodit | import("../../../../types").IViewBased<import("../../../../types").IViewOptions> | import("../../../../types").IFileBrowser<import("../../../../types").IFileBrowserOptions>, import("../../../../types").IToolbarButton>)[];
10
+ declare const _default: Array<IControlType | string>;
11
11
  export default _default;
@@ -8,5 +8,5 @@
8
8
  */
9
9
  import type { IControlType, IJodit } from "../../../../types";
10
10
  export declare const align: IControlType<IJodit>;
11
- declare const _default: (string | IControlType<IJodit | import("../../../../types").IViewBased<import("../../../../types").IViewOptions> | import("../../../../types").IFileBrowser<import("../../../../types").IFileBrowserOptions>, import("../../../../types").IToolbarButton>)[];
11
+ declare const _default: Array<IControlType | string>;
12
12
  export default _default;
@@ -1,4 +1,3 @@
1
- /// <reference types="ace" />
2
1
  /*!
3
2
  * Jodit Editor (https://xdsoft.net/jodit/)
4
3
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -7,4 +7,4 @@
7
7
  * @module plugins/speech-recognize
8
8
  */
9
9
  import type { ISpeechRecognizeConstructor } from "../interface";
10
- export declare const SpeechRecognition: ISpeechRecognizeConstructor;
10
+ export declare const SpeechRecognition: ISpeechRecognizeConstructor | undefined;
@@ -7,6 +7,7 @@ declare module 'jodit/config' {
7
7
  interface Config {
8
8
  showCharsCounter: boolean;
9
9
  countHTMLChars: boolean;
10
+ countTextSpaces: boolean;
10
11
  showWordsCounter: boolean;
11
12
  }
12
13
  }
@@ -22,6 +22,7 @@ import * as pl from "./pl.js";
22
22
  import * as pt_br from "./pt_br.js";
23
23
  import * as ru from "./ru.js";
24
24
  import * as tr from "./tr.js";
25
+ import * as ua from "./ua.js";
25
26
  import * as zh_cn from "./zh_cn.js";
26
27
  import * as zh_tw from "./zh_tw.js";
27
- export { ar, cs_cz, de, es, fa, fi, fr, he, hu, id, it, ja, ko, mn, nl, pl, pt_br, ru, tr, zh_cn, zh_tw };
28
+ export { ar, cs_cz, de, es, fa, fi, fr, he, hu, id, it, ja, ko, mn, nl, pl, pt_br, ru, tr, ua, zh_cn, zh_tw };
@@ -0,0 +1 @@
1
+ export let symbols: string;
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * Jodit Editor (https://xdsoft.net/jodit/)
3
+ * Released under MIT see LICENSE.txt in the project root for license information.
4
+ * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+ import "classlist-polyfill";
7
+ import "es6-promise/auto";
8
+ import "core-js/es/symbol";
9
+ import "core-js/es/array/find-index";
10
+ import "core-js/es/array/from";
@@ -35,7 +35,7 @@
35
35
 
36
36
  "importHelpers": true,
37
37
 
38
- "lib": ["es5", "esnext", "DOM", "scripthost", "es2015.iterable"],
38
+ "lib": ["esnext", "DOM", "scripthost", "es2015.iterable"],
39
39
 
40
40
  "baseUrl": ".",
41
41
  "paths": {