jodit-pro 4.9.21 → 4.9.22

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 (286) hide show
  1. package/es2015/jodit.css +1 -1
  2. package/es2015/jodit.fat.min.js +5 -5
  3. package/es2015/jodit.js +187 -64
  4. package/es2015/jodit.min.js +4 -4
  5. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  6. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  7. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  8. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  9. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  10. package/es2015/plugins/backup/backup.css +1 -1
  11. package/es2015/plugins/backup/backup.js +1 -1
  12. package/es2015/plugins/backup/backup.min.js +1 -1
  13. package/es2015/plugins/button-generator/button-generator.css +1 -1
  14. package/es2015/plugins/button-generator/button-generator.js +1 -1
  15. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  16. package/es2015/plugins/change-case/change-case.js +1 -1
  17. package/es2015/plugins/change-case/change-case.min.js +1 -1
  18. package/es2015/plugins/color-picker/color-picker.css +1 -1
  19. package/es2015/plugins/color-picker/color-picker.js +1 -1
  20. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  21. package/es2015/plugins/emoji/emoji.css +1 -1
  22. package/es2015/plugins/emoji/emoji.js +1 -1
  23. package/es2015/plugins/emoji/emoji.min.js +1 -1
  24. package/es2015/plugins/export-docs/export-docs.js +1 -1
  25. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  26. package/es2015/plugins/finder/finder.css +1 -1
  27. package/es2015/plugins/finder/finder.js +1 -1
  28. package/es2015/plugins/finder/finder.min.js +1 -1
  29. package/es2015/plugins/google-maps/google-maps.css +1 -1
  30. package/es2015/plugins/google-maps/google-maps.js +1 -1
  31. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  32. package/es2015/plugins/google-search/google-search.js +1 -1
  33. package/es2015/plugins/google-search/google-search.min.js +1 -1
  34. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  35. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  36. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  37. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  38. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  39. package/es2015/plugins/keyboard/keyboard.css +1 -1
  40. package/es2015/plugins/keyboard/keyboard.js +1 -1
  41. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  42. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  43. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  44. package/es2015/plugins/page-break/page-break.js +1 -1
  45. package/es2015/plugins/page-break/page-break.min.js +1 -1
  46. package/es2015/plugins/paste-code/paste-code.css +1 -1
  47. package/es2015/plugins/paste-code/paste-code.js +1 -1
  48. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  49. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  50. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  51. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  52. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  53. package/es2015/plugins/style/style.css +1 -1
  54. package/es2015/plugins/style/style.js +1 -1
  55. package/es2015/plugins/style/style.min.js +1 -1
  56. package/es2015/plugins/todo-list/todo-list.css +1 -1
  57. package/es2015/plugins/todo-list/todo-list.js +1 -1
  58. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  59. package/es2015/plugins/translate/translate.css +1 -1
  60. package/es2015/plugins/translate/translate.js +1 -1
  61. package/es2015/plugins/translate/translate.min.js +1 -1
  62. package/es2015/plugins/tune-block/tune-block.css +1 -1
  63. package/es2015/plugins/tune-block/tune-block.js +1 -1
  64. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  65. package/es2018/jodit.fat.min.js +5 -5
  66. package/es2018/jodit.min.js +4 -4
  67. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  68. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  69. package/es2018/plugins/backup/backup.min.js +1 -1
  70. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  71. package/es2018/plugins/change-case/change-case.min.js +1 -1
  72. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  73. package/es2018/plugins/emoji/emoji.min.js +1 -1
  74. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  75. package/es2018/plugins/finder/finder.min.js +1 -1
  76. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  77. package/es2018/plugins/google-search/google-search.min.js +1 -1
  78. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  79. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  80. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  81. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  82. package/es2018/plugins/page-break/page-break.min.js +1 -1
  83. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  84. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  85. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  86. package/es2018/plugins/style/style.min.js +1 -1
  87. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  88. package/es2018/plugins/translate/translate.min.js +1 -1
  89. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  90. package/es2021/jodit.css +1 -1
  91. package/es2021/jodit.fat.min.js +5 -5
  92. package/es2021/jodit.js +187 -64
  93. package/es2021/jodit.min.js +4 -4
  94. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  95. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  96. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  97. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  98. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  99. package/es2021/plugins/backup/backup.css +1 -1
  100. package/es2021/plugins/backup/backup.js +1 -1
  101. package/es2021/plugins/backup/backup.min.js +1 -1
  102. package/es2021/plugins/button-generator/button-generator.css +1 -1
  103. package/es2021/plugins/button-generator/button-generator.js +1 -1
  104. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  105. package/es2021/plugins/change-case/change-case.js +1 -1
  106. package/es2021/plugins/change-case/change-case.min.js +1 -1
  107. package/es2021/plugins/color-picker/color-picker.css +1 -1
  108. package/es2021/plugins/color-picker/color-picker.js +1 -1
  109. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  110. package/es2021/plugins/emoji/emoji.css +1 -1
  111. package/es2021/plugins/emoji/emoji.js +1 -1
  112. package/es2021/plugins/emoji/emoji.min.js +1 -1
  113. package/es2021/plugins/export-docs/export-docs.js +1 -1
  114. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  115. package/es2021/plugins/finder/finder.css +1 -1
  116. package/es2021/plugins/finder/finder.js +1 -1
  117. package/es2021/plugins/finder/finder.min.js +1 -1
  118. package/es2021/plugins/google-maps/google-maps.css +1 -1
  119. package/es2021/plugins/google-maps/google-maps.js +1 -1
  120. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  121. package/es2021/plugins/google-search/google-search.js +1 -1
  122. package/es2021/plugins/google-search/google-search.min.js +1 -1
  123. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  124. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  125. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  126. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  127. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  128. package/es2021/plugins/keyboard/keyboard.css +1 -1
  129. package/es2021/plugins/keyboard/keyboard.js +1 -1
  130. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  131. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  132. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  133. package/es2021/plugins/page-break/page-break.js +1 -1
  134. package/es2021/plugins/page-break/page-break.min.js +1 -1
  135. package/es2021/plugins/paste-code/paste-code.css +1 -1
  136. package/es2021/plugins/paste-code/paste-code.js +1 -1
  137. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  138. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  139. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  140. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  141. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  142. package/es2021/plugins/style/style.css +1 -1
  143. package/es2021/plugins/style/style.js +1 -1
  144. package/es2021/plugins/style/style.min.js +1 -1
  145. package/es2021/plugins/todo-list/todo-list.css +1 -1
  146. package/es2021/plugins/todo-list/todo-list.js +1 -1
  147. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  148. package/es2021/plugins/translate/translate.css +1 -1
  149. package/es2021/plugins/translate/translate.js +1 -1
  150. package/es2021/plugins/translate/translate.min.js +1 -1
  151. package/es2021/plugins/tune-block/tune-block.css +1 -1
  152. package/es2021/plugins/tune-block/tune-block.js +1 -1
  153. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  154. package/es2021.en/jodit.css +1 -1
  155. package/es2021.en/jodit.fat.min.js +5 -5
  156. package/es2021.en/jodit.js +187 -64
  157. package/es2021.en/jodit.min.js +4 -4
  158. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  159. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  160. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  161. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  162. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  163. package/es2021.en/plugins/backup/backup.css +1 -1
  164. package/es2021.en/plugins/backup/backup.js +1 -1
  165. package/es2021.en/plugins/backup/backup.min.js +1 -1
  166. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  167. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  168. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  169. package/es2021.en/plugins/change-case/change-case.js +1 -1
  170. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  171. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  172. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  173. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  174. package/es2021.en/plugins/emoji/emoji.css +1 -1
  175. package/es2021.en/plugins/emoji/emoji.js +1 -1
  176. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  177. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  178. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  179. package/es2021.en/plugins/finder/finder.css +1 -1
  180. package/es2021.en/plugins/finder/finder.js +1 -1
  181. package/es2021.en/plugins/finder/finder.min.js +1 -1
  182. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  183. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  184. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  185. package/es2021.en/plugins/google-search/google-search.js +1 -1
  186. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  187. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  188. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  189. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  190. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  191. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  192. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  193. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  194. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  195. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  196. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  197. package/es2021.en/plugins/page-break/page-break.js +1 -1
  198. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  199. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  200. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  201. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  202. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  203. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  204. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  205. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  206. package/es2021.en/plugins/style/style.css +1 -1
  207. package/es2021.en/plugins/style/style.js +1 -1
  208. package/es2021.en/plugins/style/style.min.js +1 -1
  209. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  210. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  211. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  212. package/es2021.en/plugins/translate/translate.css +1 -1
  213. package/es2021.en/plugins/translate/translate.js +1 -1
  214. package/es2021.en/plugins/translate/translate.min.js +1 -1
  215. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  216. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  217. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  218. package/es5/jodit.css +2 -2
  219. package/es5/jodit.fat.min.js +2 -2
  220. package/es5/jodit.js +196 -64
  221. package/es5/jodit.min.css +2 -2
  222. package/es5/jodit.min.js +2 -2
  223. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  224. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  225. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  226. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  227. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  228. package/es5/plugins/backup/backup.css +1 -1
  229. package/es5/plugins/backup/backup.js +1 -1
  230. package/es5/plugins/backup/backup.min.js +1 -1
  231. package/es5/plugins/button-generator/button-generator.css +1 -1
  232. package/es5/plugins/button-generator/button-generator.js +1 -1
  233. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  234. package/es5/plugins/change-case/change-case.js +1 -1
  235. package/es5/plugins/change-case/change-case.min.js +1 -1
  236. package/es5/plugins/color-picker/color-picker.css +1 -1
  237. package/es5/plugins/color-picker/color-picker.js +1 -1
  238. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  239. package/es5/plugins/emoji/emoji.css +1 -1
  240. package/es5/plugins/emoji/emoji.js +1 -1
  241. package/es5/plugins/emoji/emoji.min.js +1 -1
  242. package/es5/plugins/export-docs/export-docs.js +1 -1
  243. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  244. package/es5/plugins/finder/finder.css +1 -1
  245. package/es5/plugins/finder/finder.js +1 -1
  246. package/es5/plugins/finder/finder.min.js +1 -1
  247. package/es5/plugins/google-maps/google-maps.css +1 -1
  248. package/es5/plugins/google-maps/google-maps.js +1 -1
  249. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  250. package/es5/plugins/google-search/google-search.js +1 -1
  251. package/es5/plugins/google-search/google-search.min.js +1 -1
  252. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  253. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  254. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  255. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  256. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  257. package/es5/plugins/keyboard/keyboard.css +1 -1
  258. package/es5/plugins/keyboard/keyboard.js +1 -1
  259. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  260. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  261. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  262. package/es5/plugins/page-break/page-break.js +1 -1
  263. package/es5/plugins/page-break/page-break.min.js +1 -1
  264. package/es5/plugins/paste-code/paste-code.css +1 -1
  265. package/es5/plugins/paste-code/paste-code.js +1 -1
  266. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  267. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  268. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  269. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  270. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  271. package/es5/plugins/style/style.css +1 -1
  272. package/es5/plugins/style/style.js +1 -1
  273. package/es5/plugins/style/style.min.js +1 -1
  274. package/es5/plugins/todo-list/todo-list.css +1 -1
  275. package/es5/plugins/todo-list/todo-list.js +1 -1
  276. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  277. package/es5/plugins/translate/translate.css +1 -1
  278. package/es5/plugins/translate/translate.js +1 -1
  279. package/es5/plugins/translate/translate.min.js +1 -1
  280. package/es5/plugins/tune-block/tune-block.css +1 -1
  281. package/es5/plugins/tune-block/tune-block.js +1 -1
  282. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  283. package/es5/polyfills.fat.min.js +1 -1
  284. package/es5/polyfills.js +1 -1
  285. package/es5/polyfills.min.js +1 -1
  286. package/package.json +1 -1
package/es2015/jodit.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.21
4
+ * Version: v4.9.22
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -4906,7 +4906,96 @@ __webpack_require__.r(__webpack_exports__);
4906
4906
 
4907
4907
  let ConfigPrototype = {};
4908
4908
  /**
4909
- * Default Editor's Configuration
4909
+ * Default Editor's Configuration.
4910
+ *
4911
+ * This class holds all default option values for the Jodit editor.
4912
+ * It uses a **private constructor** and a **lazy singleton** pattern — the single instance
4913
+ * is created on the first access to {@link Config.defaultOptions} (also available as `Jodit.defaultOptions`).
4914
+ *
4915
+ * ## How options are resolved
4916
+ *
4917
+ * When you create an editor with `Jodit.make('#editor', userOptions)`, the library
4918
+ * calls {@link ConfigProto}(userOptions, Config.defaultOptions). `ConfigProto` does
4919
+ * **not** deep-clone the defaults. Instead it creates a new object whose JavaScript
4920
+ * prototype is `Config.defaultOptions`:
4921
+ *
4922
+ * ```
4923
+ * userOptions ──[[Prototype]]──► Config.defaultOptions
4924
+ * ```
4925
+ *
4926
+ * Any key present in `userOptions` shadows the default;
4927
+ * any key **not** present falls through to `Config.defaultOptions` via the prototype chain.
4928
+ * Nested plain objects are recursively prototyped in the same way, so partial overrides
4929
+ * of nested options work automatically:
4930
+ *
4931
+ * ```js
4932
+ * // Only override `dialogWidth`; all other `image.*` defaults are still available
4933
+ * Jodit.make('#editor', {
4934
+ * image: { dialogWidth: 500 }
4935
+ * });
4936
+ * ```
4937
+ *
4938
+ * ## How plugins extend the config
4939
+ *
4940
+ * Each plugin adds its own defaults by assigning to `Config.prototype` and augmenting
4941
+ * the TypeScript type with `declare module`:
4942
+ *
4943
+ * ```ts
4944
+ * // 1. Type augmentation (compile-time)
4945
+ * declare module 'jodit/config' {
4946
+ * interface Config {
4947
+ * toolbarSticky: boolean;
4948
+ * }
4949
+ * }
4950
+ *
4951
+ * // 2. Runtime default
4952
+ * Config.prototype.toolbarSticky = true;
4953
+ * ```
4954
+ *
4955
+ * Because the constructor runs `Object.assign(this, ConfigPrototype)` (where
4956
+ * `ConfigPrototype` is captured as `Config.prototype` after the class definition),
4957
+ * all prototype-level values — including those added by plugins — are materialized
4958
+ * as own properties on the singleton. This means `Config.defaultOptions` always
4959
+ * contains every registered option as an own, enumerable property.
4960
+ *
4961
+ * ## Changing global defaults
4962
+ *
4963
+ * You can modify `Jodit.defaultOptions` **before** creating editors to change
4964
+ * defaults globally:
4965
+ *
4966
+ * ```js
4967
+ * Jodit.defaultOptions.language = 'de';
4968
+ * Jodit.defaultOptions.theme = 'dark';
4969
+ *
4970
+ * // Both editors inherit the new defaults
4971
+ * Jodit.make('#editor1');
4972
+ * Jodit.make('#editor2');
4973
+ * ```
4974
+ *
4975
+ * ## `Jodit.atom` — preventing deep merge
4976
+ *
4977
+ * By default, `ConfigProto` deep-merges nested plain objects and arrays.
4978
+ * Wrap a value with `Jodit.atom(value)` to make it **atomic** — it will completely
4979
+ * replace the default instead of being merged:
4980
+ *
4981
+ * ```js
4982
+ * Jodit.make('#editor', {
4983
+ * controls: {
4984
+ * fontsize: {
4985
+ * // Replace the entire list rather than merging with the default one
4986
+ * list: Jodit.atom([8, 9, 10])
4987
+ * }
4988
+ * }
4989
+ * });
4990
+ * ```
4991
+ *
4992
+ * `Jodit.atom` calls {@link markAsAtomic}, which sets a non-enumerable
4993
+ * `isAtom` flag on the object. `ConfigProto` checks this flag and skips
4994
+ * recursive merging when it is present. Note: top-level arrays (depth 0)
4995
+ * are always treated as atomic — they replace rather than merge.
4996
+ *
4997
+ * @see {@link ConfigProto} for the full merge algorithm
4998
+ * @see {@link markAsAtomic} / {@link isAtom} for the atom marker implementation
4910
4999
  */ class Config {
4911
5000
  static get defaultOptions() {
4912
5001
  if (!Config.__defaultOptions) {
@@ -4916,31 +5005,32 @@ let ConfigPrototype = {};
4916
5005
  }
4917
5006
  constructor(){
4918
5007
  /**
4919
- * Use cache for heavy methods
5008
+ * When enabled, the editor caches the results of expensive computations (e.g. toolbar rebuilds)
5009
+ * to improve performance. Disable for debugging or when options change frequently at runtime.
4920
5010
  */ this.cache = true;
4921
5011
  /**
4922
5012
  * Timeout of all asynchronous methods
4923
5013
  */ this.defaultTimeout = 100;
4924
- this.namespace = '';
5014
+ /**
5015
+ * Prefix used for CSS class names and local-storage keys to avoid collisions
5016
+ * when multiple editor instances or applications share the same page.
5017
+ */ this.namespace = '';
4925
5018
  /**
4926
5019
  * Editor loads completely without plugins. Useful when debugging your own plugin.
4927
5020
  */ this.safeMode = false;
4928
5021
  /**
4929
5022
  * Editor's width
4930
5023
  *
4931
- * @example
4932
5024
  * ```javascript
4933
5025
  * Jodit.make('.editor', {
4934
5026
  * width: '100%',
4935
5027
  * })
4936
5028
  * ```
4937
- * @example
4938
5029
  * ```javascript
4939
5030
  * Jodit.make('.editor', {
4940
5031
  * width: 600, // equivalent for '600px'
4941
5032
  * })
4942
5033
  * ```
4943
- * @example
4944
5034
  * ```javascript
4945
5035
  * Jodit.make('.editor', {
4946
5036
  * width: 'auto', // autosize
@@ -4950,19 +5040,16 @@ let ConfigPrototype = {};
4950
5040
  /**
4951
5041
  * Editor's height
4952
5042
  *
4953
- * @example
4954
5043
  * ```javascript
4955
5044
  * Jodit.make('.editor', {
4956
5045
  * height: '100%',
4957
5046
  * })
4958
5047
  * ```
4959
- * @example
4960
5048
  * ```javascript
4961
5049
  * Jodit.make('.editor', {
4962
5050
  * height: 600, // equivalent for '600px'
4963
5051
  * })
4964
5052
  * ```
4965
- * @example
4966
5053
  * ```javascript
4967
5054
  * Jodit.make('.editor', {
4968
5055
  * height: 'auto', // default - autosize
@@ -4999,7 +5086,32 @@ let ConfigPrototype = {};
4999
5086
  * });
5000
5087
  * ```
5001
5088
  */ this.preset = 'custom';
5002
- this.presets = {
5089
+ /**
5090
+ * Dictionary of named configuration presets. Each key is a preset name and the value
5091
+ * is a partial options object that will be merged into the editor config when
5092
+ * {@link Config.preset} matches the key.
5093
+ *
5094
+ * ```javascript
5095
+ * // Use a built-in preset
5096
+ * Jodit.make('#editor', {
5097
+ * preset: 'inline'
5098
+ * });
5099
+ * ```
5100
+ *
5101
+ * ```javascript
5102
+ * // Define and use a custom preset
5103
+ * Jodit.defaultOptions.presets.myCompact = {
5104
+ * toolbarButtonSize: 'small',
5105
+ * showCharsCounter: false,
5106
+ * showWordsCounter: false,
5107
+ * showXPathInStatusbar: false
5108
+ * };
5109
+ *
5110
+ * Jodit.make('#editor', {
5111
+ * preset: 'myCompact'
5112
+ * });
5113
+ * ```
5114
+ */ this.presets = {
5003
5115
  inline: {
5004
5116
  inline: true,
5005
5117
  toolbar: false,
@@ -5011,7 +5123,10 @@ let ConfigPrototype = {};
5011
5123
  showPlaceholder: false
5012
5124
  }
5013
5125
  };
5014
- this.ownerDocument = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.globalDocument;
5126
+ /**
5127
+ * The Document object the editor operates within. Defaults to the current `document`.
5128
+ * Override when the editor is created inside an iframe or a different browsing context.
5129
+ */ this.ownerDocument = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.globalDocument;
5015
5130
  /**
5016
5131
  * Allows you to specify the window in which the editor will be created. Default - window
5017
5132
  * This is necessary if you are creating the editor inside an iframe but the code is running in the parent window
@@ -5042,7 +5157,9 @@ let ConfigPrototype = {};
5042
5157
  * ```
5043
5158
  */ this.shadowRoot = null;
5044
5159
  /**
5045
- * z-index For editor
5160
+ * Base CSS `z-index` for the editor UI (toolbar, popups, dialogs).
5161
+ * Set to a higher value when other page elements overlap the editor.
5162
+ * `0` means no explicit z-index is applied.
5046
5163
  */ this.zIndex = 0;
5047
5164
  /**
5048
5165
  * Change the read-only state of the editor
@@ -5078,7 +5195,6 @@ let ConfigPrototype = {};
5078
5195
  /**
5079
5196
  * Size of icons in the toolbar (can be "small", "middle", "large")
5080
5197
  *
5081
- * @example
5082
5198
  * ```javascript
5083
5199
  * const editor = Jodit.make(".dark_editor", {
5084
5200
  * toolbarButtonSize: "small"
@@ -5089,11 +5205,13 @@ let ConfigPrototype = {};
5089
5205
  * Allow navigation in the toolbar of the editor by Tab key
5090
5206
  */ this.allowTabNavigation = false;
5091
5207
  /**
5092
- * Inline editing mode
5208
+ * When enabled, the editor renders without its own container chrome (toolbar, borders, statusbar).
5209
+ * The editable area becomes the element itself. Typically combined with
5210
+ * `toolbarInline: true` so a floating toolbar appears on selection.
5093
5211
  */ this.inline = false;
5094
5212
  /**
5095
5213
  * Theme (can be "dark")
5096
- * @example
5214
+ *
5097
5215
  * ```javascript
5098
5216
  * const editor = Jodit.make(".dark_editor", {
5099
5217
  * theme: "dark"
@@ -5106,10 +5224,9 @@ let ConfigPrototype = {};
5106
5224
  /**
5107
5225
  * Class name that can be appended to the editable area
5108
5226
  *
5109
- * @see [[Config.iframeCSSLinks]]
5110
- * @see [[Config.iframeStyle]]
5227
+ * @see {@link Config.iframeCSSLinks}
5228
+ * @see {@link Config.iframeStyle}
5111
5229
  *
5112
- * @example
5113
5230
  * ```javascript
5114
5231
  * Jodit.make('#editor', {
5115
5232
  * editorClassName: 'some_my_class'
@@ -5125,7 +5242,7 @@ let ConfigPrototype = {};
5125
5242
  */ this.editorClassName = false;
5126
5243
  /**
5127
5244
  * Class name that can be appended to the main editor container
5128
- * @example
5245
+ *
5129
5246
  * ```javascript
5130
5247
  * const jodit = Jodit.make('#editor', {
5131
5248
  * className: 'some_my_class'
@@ -5145,7 +5262,7 @@ let ConfigPrototype = {};
5145
5262
  /**
5146
5263
  * The internal styles of the editable area. They are intended to change
5147
5264
  * not the appearance of the editor, but to change the appearance of the content.
5148
- * @example
5265
+ *
5149
5266
  * ```javascript
5150
5267
  * Jodit.make('#editor', {
5151
5268
  * style: {
@@ -5156,13 +5273,14 @@ let ConfigPrototype = {};
5156
5273
  * ```
5157
5274
  */ this.style = false;
5158
5275
  /**
5276
+ * Inline CSS styles applied to the outer editor container element.
5277
+ * Use this to style the editor wrapper (borders, background, etc.) without affecting content.
5159
5278
  *
5160
- * @example
5161
5279
  * ```javascript
5162
5280
  * Jodit.make('#editor', {
5163
- * editorStyle: {
5164
- * font: '12px Arial',
5165
- * color: '#0c0c0c'
5281
+ * containerStyle: {
5282
+ * border: '1px solid #ccc',
5283
+ * background: '#f9f9f9'
5166
5284
  * }
5167
5285
  * });
5168
5286
  * ```
@@ -5171,7 +5289,6 @@ let ConfigPrototype = {};
5171
5289
  * Dictionary of variable values in css, a complete list can be found here
5172
5290
  * https://github.com/xdan/jodit/blob/main/src/styles/variables.less#L25
5173
5291
  *
5174
- * @example
5175
5292
  * ```js
5176
5293
  * const editor = Jodit.make('#editor', {
5177
5294
  * styleValues: {
@@ -5183,9 +5300,9 @@ let ConfigPrototype = {};
5183
5300
  * ```
5184
5301
  */ this.styleValues = {};
5185
5302
  /**
5186
- * After all, changes in editors for textarea will call change trigger
5303
+ * When enabled, the editor dispatches a native `change` event on the original
5304
+ * `<textarea>` element whenever the content changes, so standard DOM listeners work.
5187
5305
  *
5188
- * @example
5189
5306
  * ```javascript
5190
5307
  * const editor = Jodit.make('#editor');
5191
5308
  * document.getElementById('editor').addEventListener('change', function () {
@@ -5199,7 +5316,6 @@ let ConfigPrototype = {};
5199
5316
  * the page element direction. 'ltr' – Indicates a Left-To-Right text direction (like in English).
5200
5317
  * 'rtl' – Indicates a Right-To-Left text direction (like in Arabic).
5201
5318
  *
5202
- * @example
5203
5319
  * ```javascript
5204
5320
  * Jodit.make('.editor', {
5205
5321
  * direction: 'rtl'
@@ -5211,7 +5327,6 @@ let ConfigPrototype = {};
5211
5327
  * (navigator.language && navigator.language.substr(0, 2)) ||
5212
5328
  * (navigator.browserLanguage && navigator.browserLanguage.substr(0, 2)) || 'en'
5213
5329
  *
5214
- * @example
5215
5330
  * ```html
5216
5331
  * <!-- include in you page lang file -->
5217
5332
  * <script src="jodit/lang/de.js"></script>
@@ -5225,7 +5340,6 @@ let ConfigPrototype = {};
5225
5340
  /**
5226
5341
  * if true all Lang.i18n(key) return `{key}`
5227
5342
  *
5228
- * @example
5229
5343
  * ```html
5230
5344
  * <script>
5231
5345
  * var editor = Jodit.make('.editor', {
@@ -5239,7 +5353,6 @@ let ConfigPrototype = {};
5239
5353
  /**
5240
5354
  * Collection of language pack data `{en: {'Type something': 'Type something', ...}}`
5241
5355
  *
5242
- * @example
5243
5356
  * ```javascript
5244
5357
  * const editor = Jodit.make('#editor', {
5245
5358
  * language: 'ru',
@@ -5271,11 +5384,11 @@ let ConfigPrototype = {};
5271
5384
  * Delay before show tooltip
5272
5385
  */ this.showTooltipDelay = 200;
5273
5386
  /**
5274
- * Instead of create custop tooltip - use native title tooltips
5387
+ * Instead of creating a custom tooltip, use the browser's native title tooltips
5275
5388
  */ this.useNativeTooltip = false;
5276
5389
  /**
5277
- * Default insert method
5278
- * @default insert_as_html
5390
+ * How pasted content is inserted into the editor by default.
5391
+ * Possible values: `insert_as_html`, `insert_as_text`, `insert_only_text`, `insert_clear_html`.
5279
5392
  */ this.defaultActionOnPaste = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSERT_AS_HTML;
5280
5393
  // TODO
5281
5394
  // autosave: false, // false or url
@@ -5288,7 +5401,6 @@ let ConfigPrototype = {};
5288
5401
  /**
5289
5402
  * When this option is enabled, the editor's content will be placed in an iframe and isolated from the rest of the page.
5290
5403
  *
5291
- * @example
5292
5404
  * ```javascript
5293
5405
  * Jodit.make('#editor', {
5294
5406
  * iframe: true,
@@ -5300,7 +5412,7 @@ let ConfigPrototype = {};
5300
5412
  /**
5301
5413
  * Allow editing the entire HTML document(html, head)
5302
5414
  * \> Works together with the iframe option.
5303
- * @example
5415
+ *
5304
5416
  * ```js
5305
5417
  * const editor = Jodit.make('#editor', {
5306
5418
  * iframe: true,
@@ -5319,7 +5431,7 @@ let ConfigPrototype = {};
5319
5431
  /**
5320
5432
  * Jodit.MODE_WYSIWYG The HTML editor allows you to write like MSWord,
5321
5433
  * Jodit.MODE_SOURCE syntax highlighting source editor
5322
- * @example
5434
+ *
5323
5435
  * ```javascript
5324
5436
  * var editor = Jodit.make('#editor', {
5325
5437
  * defaultMode: Jodit.MODE_SPLIT
@@ -5328,11 +5440,11 @@ let ConfigPrototype = {};
5328
5440
  * ```
5329
5441
  */ this.defaultMode = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.MODE_WYSIWYG;
5330
5442
  /**
5331
- * Use split mode
5443
+ * When enabled, the editor displays both the WYSIWYG view and the source-code view side by side.
5332
5444
  */ this.useSplitMode = false;
5333
5445
  /**
5334
5446
  * The colors in HEX representation to select a color for the background and for the text in colorpicker
5335
- * @example
5447
+ *
5336
5448
  * ```javascript
5337
5449
  * Jodit.make('#editor', {
5338
5450
  * colors: ['#ff0000', '#00ff00', '#0000ff']
@@ -5428,7 +5540,7 @@ let ConfigPrototype = {};
5428
5540
  };
5429
5541
  /**
5430
5542
  * The default tab color picker
5431
- * @example
5543
+ *
5432
5544
  * ```javascript
5433
5545
  * Jodit.make('#editor2', {
5434
5546
  * colorPickerDefaultTab: 'color'
@@ -5436,11 +5548,11 @@ let ConfigPrototype = {};
5436
5548
  * ```
5437
5549
  */ this.colorPickerDefaultTab = 'background';
5438
5550
  /**
5439
- * Image size defaults to a larger image
5551
+ * Default width (in pixels) applied to images inserted into the editor
5440
5552
  */ this.imageDefaultWidth = 300;
5441
5553
  /**
5442
5554
  * Do not display these buttons that are on the list
5443
- * @example
5555
+ *
5444
5556
  * ```javascript
5445
5557
  * Jodit.make('#editor2', {
5446
5558
  * removeButtons: ['hr', 'source']
@@ -5449,7 +5561,7 @@ let ConfigPrototype = {};
5449
5561
  */ this.removeButtons = [];
5450
5562
  /**
5451
5563
  * Do not init these plugins
5452
- * @example
5564
+ *
5453
5565
  * ```typescript
5454
5566
  * var editor = Jodit.make('.editor', {
5455
5567
  * disablePlugins: 'table,iframe'
@@ -5462,7 +5574,7 @@ let ConfigPrototype = {};
5462
5574
  */ this.disablePlugins = [];
5463
5575
  /**
5464
5576
  * Init and download extra plugins
5465
- * @example
5577
+ *
5466
5578
  * ```typescript
5467
5579
  * var editor = Jodit.make('.editor', {
5468
5580
  * extraPlugins: ['emoji']
@@ -5471,14 +5583,13 @@ let ConfigPrototype = {};
5471
5583
  * It will try load %SCRIPT_PATH%/plugins/emoji/emoji.js and after load will try init it
5472
5584
  */ this.extraPlugins = [];
5473
5585
  /**
5474
- * These buttons list will be added to the option. Buttons
5586
+ * Additional buttons appended to the {@link Config.buttons} list
5475
5587
  */ this.extraButtons = [];
5476
5588
  /**
5477
5589
  * By default, you can only install an icon from the Jodit suite.
5478
5590
  * You can add your icon to the set using the `Jodit.modules.Icon.set (name, svg Code)` method.
5479
5591
  * But for a declarative declaration, you can use this option.
5480
5592
  *
5481
- * @example
5482
5593
  * ```js
5483
5594
  * Jodit.modules.Icon.set('someIcon', '<svg><path.../></svg>');
5484
5595
  * const editor = Jodit.make({
@@ -5487,8 +5598,9 @@ let ConfigPrototype = {};
5487
5598
  * icon: 'someIcon'
5488
5599
  * }]
5489
5600
  * });
5601
+ * ```
5490
5602
  *
5491
- * @example
5603
+ * ```js
5492
5604
  * const editor = Jodit.make({
5493
5605
  * extraIcons: {
5494
5606
  * someIcon: '<svg><path.../></svg>'
@@ -5499,7 +5611,7 @@ let ConfigPrototype = {};
5499
5611
  * }]
5500
5612
  * });
5501
5613
  * ```
5502
- * @example
5614
+ *
5503
5615
  * ```js
5504
5616
  * const editor = Jodit.make({
5505
5617
  * extraButtons: [{
@@ -5511,7 +5623,7 @@ let ConfigPrototype = {};
5511
5623
  */ this.extraIcons = {};
5512
5624
  /**
5513
5625
  * Default attributes for created inside editor elements
5514
- * @example
5626
+ *
5515
5627
  * ```js
5516
5628
  * const editor2 = Jodit.make('#editor', {
5517
5629
  * createAttributes: {
@@ -5531,7 +5643,7 @@ let ConfigPrototype = {};
5531
5643
  * expect(ul.className).equals('ui-test');
5532
5644
  * ```
5533
5645
  * Or JSX in React
5534
- * @example
5646
+ *
5535
5647
  * ```jsx
5536
5648
  * import React, {useState, useRef} from 'react';
5537
5649
  * import JoditEditor from "jodit-react";
@@ -5563,7 +5675,7 @@ let ConfigPrototype = {};
5563
5675
  /**
5564
5676
  * The list of buttons that appear in the editor's toolbar on large places (≥ options.sizeLG).
5565
5677
  * Note - this is not the width of the device, the width of the editor
5566
- * @example
5678
+ *
5567
5679
  * ```javascript
5568
5680
  * Jodit.make('#editor', {
5569
5681
  * buttons: ['bold', 'italic', 'source'],
@@ -5571,7 +5683,7 @@ let ConfigPrototype = {};
5571
5683
  * buttonsXS: ['bold', 'fullsize'],
5572
5684
  * });
5573
5685
  * ```
5574
- * @example
5686
+ *
5575
5687
  * ```javascript
5576
5688
  * Jodit.make('#editor2', {
5577
5689
  * buttons: [{
@@ -5595,7 +5707,7 @@ let ConfigPrototype = {};
5595
5707
  * }]
5596
5708
  * });
5597
5709
  * ```
5598
- * @example
5710
+ *
5599
5711
  * ```javascript
5600
5712
  * Jodit.make('#editor2', {
5601
5713
  * buttons: Jodit.defaultOptions.buttons.concat([{
@@ -5716,7 +5828,7 @@ let ConfigPrototype = {};
5716
5828
  * ```
5717
5829
  */ this.events = {};
5718
5830
  /**
5719
- * Buttons in toolbat without SVG - only texts
5831
+ * Buttons in toolbar without SVG - only texts
5720
5832
  */ this.textIcons = false;
5721
5833
  /**
5722
5834
  * Element for dialog container
@@ -25893,9 +26005,10 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.toolbarStickyOffset = 0
25893
26005
  /* harmony import */ var _decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55153);
25894
26006
  /* harmony import */ var _dom_dom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2748);
25895
26007
  /* harmony import */ var _helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(70799);
25896
- /* harmony import */ var _traits_elms_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(14316);
25897
- /* harmony import */ var _traits_mods_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(34176);
25898
- /* harmony import */ var _icon_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12153);
26008
+ /* harmony import */ var _helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29960);
26009
+ /* harmony import */ var _traits_elms_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(14316);
26010
+ /* harmony import */ var _traits_mods_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(34176);
26011
+ /* harmony import */ var _icon_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12153);
25899
26012
  /*!
25900
26013
  * Jodit Editor (https://xdsoft.net/jodit/)
25901
26014
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -25914,7 +26027,11 @@ var UIElement_1;
25914
26027
 
25915
26028
 
25916
26029
 
26030
+
25917
26031
  let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPACK_IMPORTED_MODULE_0__.ViewComponent {
26032
+ getRole() {
26033
+ return '';
26034
+ }
25918
26035
  get parentElement() {
25919
26036
  return this.__parentElement;
25920
26037
  }
@@ -26003,7 +26120,7 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
26003
26120
  return result;
26004
26121
  }
26005
26122
  parseTemplate(result) {
26006
- return this.j.c.fromHTML(result.replace(/\*([^*]+?)\*/g, (_, name)=>_icon_js__WEBPACK_IMPORTED_MODULE_6__.Icon.get(name) || '').replace(/&_/g, this.componentName + '_').replace(/~([^~]+?)~/g, (_, s)=>this.i18n(s)));
26123
+ return this.j.c.fromHTML(result.replace(/\*([^*]+?)\*/g, (_, name)=>_icon_js__WEBPACK_IMPORTED_MODULE_7__.Icon.get(name) || '').replace(/&_/g, this.componentName + '_').replace(/~([^~]+?)~/g, (_, s)=>this.i18n(s)));
26007
26124
  }
26008
26125
  /** @override */ destruct() {
26009
26126
  _dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.safeRemove(this.container);
@@ -26016,6 +26133,8 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
26016
26133
  this.__parentElement = null;
26017
26134
  this.mods = {};
26018
26135
  this.container = this.createContainer(options);
26136
+ const role = this.getRole();
26137
+ role && (0,_helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_4__.attr)(this.container, 'role', role);
26019
26138
  Object.defineProperty(this.container, 'component', {
26020
26139
  value: this,
26021
26140
  configurable: true
@@ -26023,7 +26142,7 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
26023
26142
  }
26024
26143
  };
26025
26144
  UIElement = UIElement_1 = __decorate([
26026
- (0,_decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__.derive)(_traits_mods_js__WEBPACK_IMPORTED_MODULE_5__.Mods, _traits_elms_js__WEBPACK_IMPORTED_MODULE_4__.Elms)
26145
+ (0,_decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__.derive)(_traits_mods_js__WEBPACK_IMPORTED_MODULE_6__.Mods, _traits_elms_js__WEBPACK_IMPORTED_MODULE_5__.Elms)
26027
26146
  ], UIElement);
26028
26147
 
26029
26148
 
@@ -33533,6 +33652,9 @@ let UIGroup = UIGroup_1 = class UIGroup extends _element_js__WEBPACK_IMPORTED_MO
33533
33652
  className() {
33534
33653
  return 'UIGroup';
33535
33654
  }
33655
+ getRole() {
33656
+ return 'list';
33657
+ }
33536
33658
  /**
33537
33659
  * All group children
33538
33660
  */ get allChildren() {
@@ -41472,6 +41594,9 @@ let ToolbarButton = class ToolbarButton extends _core_ui_button_index_js__WEBPAC
41472
41594
  className() {
41473
41595
  return 'ToolbarButton';
41474
41596
  }
41597
+ getRole() {
41598
+ return 'listitem';
41599
+ }
41475
41600
  /**
41476
41601
  * Get parent toolbar
41477
41602
  */ get toolbar() {
@@ -41539,7 +41664,6 @@ let ToolbarButton = class ToolbarButton extends _core_ui_button_index_js__WEBPAC
41539
41664
  const cn = this.componentName;
41540
41665
  const container = this.j.c.span(cn);
41541
41666
  const button = super.createContainer();
41542
- (0,_core_helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_14__.attr)(container, 'role', 'listitem');
41543
41667
  button.classList.remove(cn);
41544
41668
  button.classList.add(cn + '__button');
41545
41669
  Object.defineProperty(button, 'component', {
@@ -44526,13 +44650,12 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.maxWidth = '100%';
44526
44650
  /**
44527
44651
  * Editor's min-height
44528
44652
  *
44529
- * @example
44530
44653
  * ```javascript
44531
44654
  * Jodit.make('.editor', {
44532
44655
  * minHeight: '30%' //min-height: 30%
44533
44656
  * })
44534
44657
  * ```
44535
- * @example
44658
+ *
44536
44659
  * ```javascript
44537
44660
  * Jodit.make('.editor', {
44538
44661
  * minHeight: 200 //min-height: 200px
@@ -45590,7 +45713,7 @@ __webpack_require__.r(__webpack_exports__);
45590
45713
  * ```
45591
45714
  * @packageDocumentation
45592
45715
  * @module constants
45593
- */ const APP_VERSION = "4.9.21";
45716
+ */ const APP_VERSION = "4.9.22";
45594
45717
  // prettier-ignore
45595
45718
  const ES = "es2015";
45596
45719
  const IS_ES_MODERN = true;