jodit-pro 2.0.0-beta.28 → 2.0.0-beta.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 (346) hide show
  1. package/es2015/jodit.css +320 -41
  2. package/es2015/jodit.fat.min.css +1 -1
  3. package/es2015/jodit.fat.min.js +2 -2
  4. package/es2015/jodit.js +499 -333
  5. package/es2015/jodit.min.css +1 -1
  6. package/es2015/jodit.min.js +2 -2
  7. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  8. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  9. package/es2015/plugins/backup/backup.css +1 -1
  10. package/es2015/plugins/backup/backup.js +3 -1
  11. package/es2015/plugins/backup/backup.min.js +1 -1
  12. package/es2015/plugins/button-generator/button-generator.css +1 -1
  13. package/es2015/plugins/button-generator/button-generator.js +6 -1
  14. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  15. package/es2015/plugins/change-case/change-case.js +1 -1
  16. package/es2015/plugins/change-case/change-case.min.js +1 -1
  17. package/es2015/plugins/color-picker/color-picker.css +1 -1
  18. package/es2015/plugins/color-picker/color-picker.js +2 -1
  19. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  20. package/es2015/plugins/emoji/emoji.css +1 -1
  21. package/es2015/plugins/emoji/emoji.js +4 -3
  22. package/es2015/plugins/emoji/emoji.min.js +2 -2
  23. package/es2015/plugins/export-docs/export-docs.js +1 -1
  24. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  25. package/es2015/plugins/finder/finder.css +1 -1
  26. package/es2015/plugins/finder/finder.js +21 -2
  27. package/es2015/plugins/finder/finder.min.js +2 -2
  28. package/es2015/plugins/google-maps/google-maps.css +1 -1
  29. package/es2015/plugins/google-maps/google-maps.js +9 -1
  30. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  31. package/es2015/plugins/google-search/google-search.js +1 -1
  32. package/es2015/plugins/google-search/google-search.min.js +1 -1
  33. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  34. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  35. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  36. package/es2015/plugins/iframe-editor/iframe-editor.js +2 -1
  37. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  38. package/es2015/plugins/keyboard/keyboard.css +1 -1
  39. package/es2015/plugins/keyboard/keyboard.js +2 -1
  40. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  41. package/es2015/plugins/mobile-view/mobile-view.js +13 -16
  42. package/es2015/plugins/mobile-view/mobile-view.min.js +2 -2
  43. package/es2015/plugins/page-break/page-break.js +1 -1
  44. package/es2015/plugins/page-break/page-break.min.js +1 -1
  45. package/es2015/plugins/paste-code/paste-code.css +1 -1
  46. package/es2015/plugins/paste-code/paste-code.js +2 -1
  47. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  48. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  49. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  50. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  51. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  52. package/es2015/plugins/todo-list/todo-list.css +1 -1
  53. package/es2015/plugins/todo-list/todo-list.js +1 -1
  54. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  55. package/es2015/plugins/translate/translate.css +1 -1
  56. package/es2015/plugins/translate/translate.js +3 -1
  57. package/es2015/plugins/translate/translate.min.js +1 -1
  58. package/es2015/plugins/tune-block/tune-block.css +1 -1
  59. package/es2015/plugins/tune-block/tune-block.js +5 -4
  60. package/es2015/plugins/tune-block/tune-block.min.js +2 -2
  61. package/es2018/jodit.css +320 -41
  62. package/es2018/jodit.fat.min.css +1 -1
  63. package/es2018/jodit.fat.min.js +2 -2
  64. package/es2018/jodit.js +500 -332
  65. package/es2018/jodit.min.css +1 -1
  66. package/es2018/jodit.min.js +2 -2
  67. package/es2018/plugins/autocomplete/autocomplete.js +1 -1
  68. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  69. package/es2018/plugins/backup/backup.css +1 -1
  70. package/es2018/plugins/backup/backup.js +3 -1
  71. package/es2018/plugins/backup/backup.min.js +1 -1
  72. package/es2018/plugins/button-generator/button-generator.css +1 -1
  73. package/es2018/plugins/button-generator/button-generator.js +6 -1
  74. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  75. package/es2018/plugins/change-case/change-case.js +1 -1
  76. package/es2018/plugins/change-case/change-case.min.js +1 -1
  77. package/es2018/plugins/color-picker/color-picker.css +1 -1
  78. package/es2018/plugins/color-picker/color-picker.js +2 -1
  79. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  80. package/es2018/plugins/emoji/emoji.css +1 -1
  81. package/es2018/plugins/emoji/emoji.js +4 -3
  82. package/es2018/plugins/emoji/emoji.min.js +2 -2
  83. package/es2018/plugins/export-docs/export-docs.js +1 -1
  84. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  85. package/es2018/plugins/finder/finder.css +1 -1
  86. package/es2018/plugins/finder/finder.js +21 -2
  87. package/es2018/plugins/finder/finder.min.js +2 -2
  88. package/es2018/plugins/google-maps/google-maps.css +1 -1
  89. package/es2018/plugins/google-maps/google-maps.js +9 -1
  90. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  91. package/es2018/plugins/google-search/google-search.js +1 -1
  92. package/es2018/plugins/google-search/google-search.min.js +1 -1
  93. package/es2018/plugins/highlight-signature/highlight-signature.js +1 -1
  94. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  95. package/es2018/plugins/iframe-editor/iframe-editor.css +1 -1
  96. package/es2018/plugins/iframe-editor/iframe-editor.js +2 -1
  97. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  98. package/es2018/plugins/keyboard/keyboard.css +1 -1
  99. package/es2018/plugins/keyboard/keyboard.js +2 -1
  100. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  101. package/es2018/plugins/mobile-view/mobile-view.js +13 -16
  102. package/es2018/plugins/mobile-view/mobile-view.min.js +2 -2
  103. package/es2018/plugins/page-break/page-break.js +1 -1
  104. package/es2018/plugins/page-break/page-break.min.js +1 -1
  105. package/es2018/plugins/paste-code/paste-code.css +1 -1
  106. package/es2018/plugins/paste-code/paste-code.js +2 -1
  107. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  108. package/es2018/plugins/paste-from-word/paste-from-word.js +1 -1
  109. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  110. package/es2018/plugins/show-blocks/show-blocks.js +1 -1
  111. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  112. package/es2018/plugins/todo-list/todo-list.css +1 -1
  113. package/es2018/plugins/todo-list/todo-list.js +1 -1
  114. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  115. package/es2018/plugins/translate/translate.css +1 -1
  116. package/es2018/plugins/translate/translate.js +3 -1
  117. package/es2018/plugins/translate/translate.min.js +1 -1
  118. package/es2018/plugins/tune-block/tune-block.css +1 -1
  119. package/es2018/plugins/tune-block/tune-block.js +5 -4
  120. package/es2018/plugins/tune-block/tune-block.min.js +2 -2
  121. package/es2021/jodit.css +320 -41
  122. package/es2021/jodit.fat.min.css +1 -1
  123. package/es2021/jodit.fat.min.js +2 -2
  124. package/es2021/jodit.js +490 -330
  125. package/es2021/jodit.min.css +1 -1
  126. package/es2021/jodit.min.js +2 -2
  127. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  128. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  129. package/es2021/plugins/backup/backup.css +1 -1
  130. package/es2021/plugins/backup/backup.js +3 -1
  131. package/es2021/plugins/backup/backup.min.js +1 -1
  132. package/es2021/plugins/button-generator/button-generator.css +1 -1
  133. package/es2021/plugins/button-generator/button-generator.js +6 -1
  134. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  135. package/es2021/plugins/change-case/change-case.js +1 -1
  136. package/es2021/plugins/change-case/change-case.min.js +1 -1
  137. package/es2021/plugins/color-picker/color-picker.css +1 -1
  138. package/es2021/plugins/color-picker/color-picker.js +2 -1
  139. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  140. package/es2021/plugins/emoji/emoji.css +1 -1
  141. package/es2021/plugins/emoji/emoji.js +4 -3
  142. package/es2021/plugins/emoji/emoji.min.js +2 -2
  143. package/es2021/plugins/export-docs/export-docs.js +1 -1
  144. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  145. package/es2021/plugins/finder/finder.css +1 -1
  146. package/es2021/plugins/finder/finder.js +21 -2
  147. package/es2021/plugins/finder/finder.min.js +2 -2
  148. package/es2021/plugins/google-maps/google-maps.css +1 -1
  149. package/es2021/plugins/google-maps/google-maps.js +9 -1
  150. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  151. package/es2021/plugins/google-search/google-search.js +1 -1
  152. package/es2021/plugins/google-search/google-search.min.js +1 -1
  153. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  154. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  155. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  156. package/es2021/plugins/iframe-editor/iframe-editor.js +2 -1
  157. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  158. package/es2021/plugins/keyboard/keyboard.css +1 -1
  159. package/es2021/plugins/keyboard/keyboard.js +2 -1
  160. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  161. package/es2021/plugins/mobile-view/mobile-view.js +13 -15
  162. package/es2021/plugins/mobile-view/mobile-view.min.js +2 -2
  163. package/es2021/plugins/page-break/page-break.js +1 -1
  164. package/es2021/plugins/page-break/page-break.min.js +1 -1
  165. package/es2021/plugins/paste-code/paste-code.css +1 -1
  166. package/es2021/plugins/paste-code/paste-code.js +2 -1
  167. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  168. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  169. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  170. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  171. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  172. package/es2021/plugins/todo-list/todo-list.css +1 -1
  173. package/es2021/plugins/todo-list/todo-list.js +1 -1
  174. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  175. package/es2021/plugins/translate/translate.css +1 -1
  176. package/es2021/plugins/translate/translate.js +3 -1
  177. package/es2021/plugins/translate/translate.min.js +1 -1
  178. package/es2021/plugins/tune-block/tune-block.css +1 -1
  179. package/es2021/plugins/tune-block/tune-block.js +5 -4
  180. package/es2021/plugins/tune-block/tune-block.min.js +2 -2
  181. package/es2021.en/jodit.css +320 -41
  182. package/es2021.en/jodit.fat.min.css +1 -1
  183. package/es2021.en/jodit.fat.min.js +2 -2
  184. package/es2021.en/jodit.js +490 -330
  185. package/es2021.en/jodit.min.css +1 -1
  186. package/es2021.en/jodit.min.js +2 -2
  187. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  188. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  189. package/es2021.en/plugins/backup/backup.css +1 -1
  190. package/es2021.en/plugins/backup/backup.js +3 -1
  191. package/es2021.en/plugins/backup/backup.min.js +1 -1
  192. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  193. package/es2021.en/plugins/button-generator/button-generator.js +6 -1
  194. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  195. package/es2021.en/plugins/change-case/change-case.js +1 -1
  196. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  197. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  198. package/es2021.en/plugins/color-picker/color-picker.js +2 -1
  199. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  200. package/es2021.en/plugins/emoji/emoji.css +1 -1
  201. package/es2021.en/plugins/emoji/emoji.js +4 -3
  202. package/es2021.en/plugins/emoji/emoji.min.js +2 -2
  203. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  204. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  205. package/es2021.en/plugins/finder/finder.css +1 -1
  206. package/es2021.en/plugins/finder/finder.js +21 -2
  207. package/es2021.en/plugins/finder/finder.min.js +2 -2
  208. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  209. package/es2021.en/plugins/google-maps/google-maps.js +9 -1
  210. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  211. package/es2021.en/plugins/google-search/google-search.js +1 -1
  212. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  213. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  214. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  215. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  216. package/es2021.en/plugins/iframe-editor/iframe-editor.js +2 -1
  217. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  218. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  219. package/es2021.en/plugins/keyboard/keyboard.js +2 -1
  220. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  221. package/es2021.en/plugins/mobile-view/mobile-view.js +13 -15
  222. package/es2021.en/plugins/mobile-view/mobile-view.min.js +2 -2
  223. package/es2021.en/plugins/page-break/page-break.js +1 -1
  224. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  225. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  226. package/es2021.en/plugins/paste-code/paste-code.js +2 -1
  227. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  228. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  229. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  230. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  231. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  232. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  233. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  234. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  235. package/es2021.en/plugins/translate/translate.css +1 -1
  236. package/es2021.en/plugins/translate/translate.js +3 -1
  237. package/es2021.en/plugins/translate/translate.min.js +1 -1
  238. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  239. package/es2021.en/plugins/tune-block/tune-block.js +5 -4
  240. package/es2021.en/plugins/tune-block/tune-block.min.js +2 -2
  241. package/es5/jodit.css +397 -54
  242. package/es5/jodit.fat.min.css +1 -1
  243. package/es5/jodit.fat.min.js +2 -2
  244. package/es5/jodit.js +645 -465
  245. package/es5/jodit.min.css +3 -3
  246. package/es5/jodit.min.js +2 -2
  247. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  248. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  249. package/es5/plugins/backup/backup.css +1 -1
  250. package/es5/plugins/backup/backup.js +5 -3
  251. package/es5/plugins/backup/backup.min.js +2 -2
  252. package/es5/plugins/button-generator/button-generator.css +1 -1
  253. package/es5/plugins/button-generator/button-generator.js +8 -3
  254. package/es5/plugins/button-generator/button-generator.min.js +2 -2
  255. package/es5/plugins/change-case/change-case.js +2 -1
  256. package/es5/plugins/change-case/change-case.min.js +1 -1
  257. package/es5/plugins/color-picker/color-picker.css +1 -1
  258. package/es5/plugins/color-picker/color-picker.js +3 -1
  259. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  260. package/es5/plugins/emoji/emoji.css +1 -1
  261. package/es5/plugins/emoji/emoji.js +5 -3
  262. package/es5/plugins/emoji/emoji.min.js +2 -2
  263. package/es5/plugins/export-docs/export-docs.js +3 -3
  264. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  265. package/es5/plugins/finder/finder.css +1 -1
  266. package/es5/plugins/finder/finder.js +33 -19
  267. package/es5/plugins/finder/finder.min.js +2 -2
  268. package/es5/plugins/google-maps/google-maps.css +1 -1
  269. package/es5/plugins/google-maps/google-maps.js +25 -22
  270. package/es5/plugins/google-maps/google-maps.min.js +2 -2
  271. package/es5/plugins/google-search/google-search.js +2 -1
  272. package/es5/plugins/google-search/google-search.min.js +1 -1
  273. package/es5/plugins/highlight-signature/highlight-signature.js +2 -1
  274. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  275. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  276. package/es5/plugins/iframe-editor/iframe-editor.js +3 -1
  277. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  278. package/es5/plugins/keyboard/keyboard.css +1 -1
  279. package/es5/plugins/keyboard/keyboard.js +9 -13
  280. package/es5/plugins/keyboard/keyboard.min.js +2 -2
  281. package/es5/plugins/mobile-view/mobile-view.js +15 -17
  282. package/es5/plugins/mobile-view/mobile-view.min.js +2 -2
  283. package/es5/plugins/page-break/page-break.js +2 -1
  284. package/es5/plugins/page-break/page-break.min.js +1 -1
  285. package/es5/plugins/paste-code/paste-code.css +1 -1
  286. package/es5/plugins/paste-code/paste-code.js +5 -6
  287. package/es5/plugins/paste-code/paste-code.min.js +2 -2
  288. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  289. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  290. package/es5/plugins/show-blocks/show-blocks.js +3 -3
  291. package/es5/plugins/show-blocks/show-blocks.min.js +2 -2
  292. package/es5/plugins/todo-list/todo-list.css +1 -1
  293. package/es5/plugins/todo-list/todo-list.js +3 -3
  294. package/es5/plugins/todo-list/todo-list.min.js +2 -2
  295. package/es5/plugins/translate/translate.css +1 -1
  296. package/es5/plugins/translate/translate.js +6 -5
  297. package/es5/plugins/translate/translate.min.js +2 -2
  298. package/es5/plugins/tune-block/tune-block.css +1 -1
  299. package/es5/plugins/tune-block/tune-block.js +6 -4
  300. package/es5/plugins/tune-block/tune-block.min.js +2 -2
  301. package/esm/config.js +1 -1
  302. package/esm/core/ui/form/range/range.js +1 -1
  303. package/esm/plugins/autocomplete/ui/autocomplete.js +1 -1
  304. package/esm/plugins/backup/ui/box.js +1 -1
  305. package/esm/plugins/backup/ui/list.js +1 -1
  306. package/esm/plugins/button-generator/ui/button/button.js +2 -2
  307. package/esm/plugins/button-generator/ui/generator/button-generator.js +1 -1
  308. package/esm/plugins/button-generator/ui/preview/preview.js +2 -2
  309. package/esm/plugins/color-picker/ui/input/color-input.js +1 -1
  310. package/esm/plugins/emoji/config.js +1 -1
  311. package/esm/plugins/emoji/ui/emoji.js +1 -1
  312. package/esm/plugins/finder/browser.js +1 -1
  313. package/esm/plugins/finder/helpers/context-menu.js +1 -1
  314. package/esm/plugins/finder/helpers/history-manager.js +1 -1
  315. package/esm/plugins/finder/helpers/loading-manager.js +1 -1
  316. package/esm/plugins/finder/helpers/persistent-store.js +2 -2
  317. package/esm/plugins/finder/ui/folder/folder.js +1 -1
  318. package/esm/plugins/finder/ui/header/header.js +1 -1
  319. package/esm/plugins/finder/ui/item/item.js +1 -1
  320. package/esm/plugins/finder/ui/lightboox/lightbox.js +1 -1
  321. package/esm/plugins/finder/ui/panel/panel.js +1 -1
  322. package/esm/plugins/finder/ui/preview/preview.js +2 -2
  323. package/esm/plugins/finder/ui/progress/progress.js +2 -2
  324. package/esm/plugins/finder/ui/settings/settings.js +1 -1
  325. package/esm/plugins/finder/ui/sidebar/sidebar.js +2 -2
  326. package/esm/plugins/finder/ui/source/source.js +1 -1
  327. package/esm/plugins/finder/ui/sources/sources.js +1 -1
  328. package/esm/plugins/finder/ui/statusbar/statusbar.js +1 -1
  329. package/esm/plugins/finder/ui/tree/tree.js +1 -1
  330. package/esm/plugins/finder/ui/virtual-scroll/virtual-scroll.js +1 -1
  331. package/esm/plugins/google-maps/ui/editors/marker/marker.js +1 -1
  332. package/esm/plugins/google-maps/ui/editors/polygon/polygon.js +1 -1
  333. package/esm/plugins/google-maps/ui/editors/polyline/polyline.js +1 -1
  334. package/esm/plugins/google-maps/ui/maps-controls/maps-controls.js +1 -1
  335. package/esm/plugins/google-maps/ui/maps-props/maps-props.js +1 -1
  336. package/esm/plugins/google-maps/ui/wysiwyg/wysiwyg.js +1 -1
  337. package/esm/plugins/iframe-editor/ui/iframe-editor/iframe-editor.js +1 -1
  338. package/esm/plugins/keyboard/ui/keyboard/keyboard.js +1 -1
  339. package/esm/plugins/mobile-view/config.js +1 -1
  340. package/esm/plugins/paste-code/paste-code.js +1 -1
  341. package/esm/plugins/paste-from-word/element/style.js +1 -1
  342. package/esm/plugins/translate/ui/list/list.js +1 -1
  343. package/esm/plugins/translate/ui/settings/settings.js +1 -1
  344. package/esm/plugins/tune-block/config.js +1 -1
  345. package/esm/plugins/tune-block/ui/tuner/tuner.js +1 -1
  346. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v2.0.0-beta.28
4
+ * Version: v2.0.0-beta.32
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -2269,8 +2269,8 @@ __webpack_require__.r(__webpack_exports__);
2269
2269
  * Released under MIT see LICENSE.txt in the project root for license information.
2270
2270
  * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
2271
2271
  */
2272
- const APP_VERSION = "2.0.0-beta.28";
2273
- // eslint-disable-next-line prettier/prettier
2272
+ const APP_VERSION = "2.0.0-beta.32";
2273
+ // prettier-ignore
2274
2274
  const ES = "es2021";
2275
2275
  const IS_ES_MODERN = true;
2276
2276
  const IS_ES_NEXT = true;
@@ -3236,8 +3236,8 @@ function watch(observeFields, opts) {
3236
3236
  /* harmony export */ });
3237
3237
  /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11612);
3238
3238
  /* harmony import */ var jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71350);
3239
- /* harmony import */ var jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1558);
3240
- /* harmony import */ var jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75208);
3239
+ /* harmony import */ var jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(84621);
3240
+ /* harmony import */ var jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(73076);
3241
3241
  /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(98478);
3242
3242
  /*!
3243
3243
  * Jodit Editor (https://xdsoft.net/jodit/)
@@ -3364,7 +3364,7 @@ class Dom {
3364
3364
  }
3365
3365
  }
3366
3366
  if (withAttributes && Dom.isElement(elm) && Dom.isElement(tag)) {
3367
- (0,jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .qo)(elm.attributes).forEach(attr => {
3367
+ (0,jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .q)(elm.attributes).forEach(attr => {
3368
3368
  tag.setAttribute(attr.name, attr.value);
3369
3369
  });
3370
3370
  }
@@ -3408,7 +3408,7 @@ class Dom {
3408
3408
  else {
3409
3409
  cond = condNoEmptyElement;
3410
3410
  }
3411
- const emptyText = (node) => node.nodeValue == null || (0,jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(node.nodeValue).length === 0;
3411
+ const emptyText = (node) => node.nodeValue == null || (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(node.nodeValue).length === 0;
3412
3412
  if (Dom.isText(node)) {
3413
3413
  return emptyText(node);
3414
3414
  }
@@ -3686,14 +3686,14 @@ class Dom {
3686
3686
  static findNotEmptySibling(node, left) {
3687
3687
  return Dom.findSibling(node, left, n => {
3688
3688
  return (!Dom.isEmptyTextNode(n) &&
3689
- Boolean(!Dom.isText(n) || (n.nodeValue?.length && (0,jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n.nodeValue))));
3689
+ Boolean(!Dom.isText(n) || (n.nodeValue?.length && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n.nodeValue))));
3690
3690
  });
3691
3691
  }
3692
3692
  /**
3693
3693
  * Returns the nearest non-empty neighbor
3694
3694
  */
3695
3695
  static findNotEmptyNeighbor(node, left, root) {
3696
- return (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_4__.call)(left ? Dom.prev : Dom.next, node, n => Boolean(n && (!Dom.isText(n) || (0,jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n?.nodeValue || '').length)), root);
3696
+ return (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_4__.call)(left ? Dom.prev : Dom.next, node, n => Boolean(n && (!Dom.isText(n) || (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n?.nodeValue || '').length)), root);
3697
3697
  }
3698
3698
  static sibling(node, left) {
3699
3699
  return left ? node.previousSibling : node.nextSibling;
@@ -3810,7 +3810,7 @@ class Dom {
3810
3810
  */
3811
3811
  static moveContent(from, to, inStart = false, filter = () => true) {
3812
3812
  const fragment = (from.ownerDocument || document).createDocumentFragment();
3813
- (0,jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .qo)(from.childNodes)
3813
+ (0,jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .q)(from.childNodes)
3814
3814
  .filter(elm => {
3815
3815
  if (filter(elm)) {
3816
3816
  return true;
@@ -6146,7 +6146,7 @@ function applyStyles(html) {
6146
6146
  }
6147
6147
  });
6148
6148
  convertedString = iframeDoc.firstChild
6149
- ? (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(iframeDoc.body.innerHTML)
6149
+ ? (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(iframeDoc.body.innerHTML)
6150
6150
  : '';
6151
6151
  }
6152
6152
  }
@@ -6158,7 +6158,7 @@ function applyStyles(html) {
6158
6158
  if (convertedString) {
6159
6159
  html = convertedString;
6160
6160
  }
6161
- return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(html
6161
+ return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(html
6162
6162
  .replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g, '')
6163
6163
  .replace(/<!--[^>]*>/g, ''));
6164
6164
  }
@@ -6246,7 +6246,7 @@ function cleanFromWord(html) {
6246
6246
  if (convertedString) {
6247
6247
  html = convertedString;
6248
6248
  }
6249
- html = html.split(/(\n)/).filter(jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f).join('\n');
6249
+ html = html.split(/(\n)/).filter(jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy).join('\n');
6250
6250
  return html
6251
6251
  .replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g, '')
6252
6252
  .replace(/<!--[^>]*>/g, '');
@@ -6477,7 +6477,7 @@ function stripTags(html, doc = document, exclude = null) {
6477
6477
  pr.insertBefore(doc.createTextNode(' '), nx);
6478
6478
  }
6479
6479
  });
6480
- return restoreTags((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(tmp.innerText));
6480
+ return restoreTags((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(tmp.innerText));
6481
6481
  }
6482
6482
  function restoreTags(content) {
6483
6483
  return content.replace(/%%%(\/)?jodit(-single)?-([\w\n]+)%%%/g, (_, isClosed, isSingle, tag) => `<${isClosed ? '/' : ''}${tag}>`);
@@ -6557,6 +6557,7 @@ __webpack_require__.r(__webpack_exports__);
6557
6557
  /* harmony export */ stripTags: function() { return /* reexport safe */ _html__WEBPACK_IMPORTED_MODULE_5__.oN; },
6558
6558
  /* harmony export */ toArray: function() { return /* reexport safe */ _array__WEBPACK_IMPORTED_MODULE_1__.qo; },
6559
6559
  /* harmony export */ trim: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.fy; },
6560
+ /* harmony export */ trimChars: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.cE; },
6560
6561
  /* harmony export */ trimInv: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.as; },
6561
6562
  /* harmony export */ ucfirst: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.Ps; }
6562
6563
  /* harmony export */ });
@@ -6670,7 +6671,7 @@ const normalizeColor = (colorInput) => {
6670
6671
  if (!color) {
6671
6672
  return false;
6672
6673
  }
6673
- color = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(color.toUpperCase());
6674
+ color = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(color.toUpperCase());
6674
6675
  color = color.substring(1);
6675
6676
  if (color.length === 3) {
6676
6677
  for (let i = 0; i < 3; i += 1) {
@@ -6778,7 +6779,7 @@ function normalizeKeyAliases(keys) {
6778
6779
  return keys
6779
6780
  .replace(/\+\+/g, '+add')
6780
6781
  .split(/[\s]*\+[\s]*/)
6781
- .map(key => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(key.toLowerCase()))
6782
+ .map(key => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(key.toLowerCase()))
6782
6783
  .map(key => jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.KEY_ALIASES[key] || key)
6783
6784
  .sort((a, b) => {
6784
6785
  if (order[a] && !order[b]) {
@@ -6850,7 +6851,7 @@ const normalizeLicense = (license, count = 8) => {
6850
6851
  */
6851
6852
  const normalizePath = (...path) => {
6852
6853
  return path
6853
- .filter(part => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(part).length)
6854
+ .filter(part => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(part).length)
6854
6855
  .map((part, index) => {
6855
6856
  part = part.replace(/([^:])[\\/]+/g, '$1/');
6856
6857
  if (index) {
@@ -6926,9 +6927,9 @@ const normalizeRelativePath = (path) => {
6926
6927
  /**
6927
6928
  * Normalize value to CSS meters
6928
6929
  */
6929
- const normalizeSize = (value) => {
6930
+ const normalizeSize = (value, units) => {
6930
6931
  if (/^[0-9]+$/.test(value.toString())) {
6931
- return value + 'px';
6932
+ return value + units;
6932
6933
  }
6933
6934
  return value.toString();
6934
6935
  };
@@ -7422,9 +7423,10 @@ function i18n(key, params, options) {
7422
7423
  /* harmony export */ Pz: function() { return /* reexport safe */ _stringify__WEBPACK_IMPORTED_MODULE_4__.P; },
7423
7424
  /* harmony export */ Qy: function() { return /* reexport safe */ _fuzzy_search_index__WEBPACK_IMPORTED_MODULE_1__.Q; },
7424
7425
  /* harmony export */ ag: function() { return /* reexport safe */ _i18n__WEBPACK_IMPORTED_MODULE_2__.a; },
7425
- /* harmony export */ as: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.a; },
7426
+ /* harmony export */ as: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.as; },
7427
+ /* harmony export */ cE: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.cE; },
7426
7428
  /* harmony export */ eV: function() { return /* reexport safe */ _camel_case__WEBPACK_IMPORTED_MODULE_0__.e; },
7427
- /* harmony export */ fy: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.f; },
7429
+ /* harmony export */ fy: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.fy; },
7428
7430
  /* harmony export */ gB: function() { return /* reexport safe */ _i18n__WEBPACK_IMPORTED_MODULE_2__.g; },
7429
7431
  /* harmony export */ gP: function() { return /* reexport safe */ _kebab_case__WEBPACK_IMPORTED_MODULE_3__.g; }
7430
7432
  /* harmony export */ });
@@ -7531,8 +7533,9 @@ function stringify(value, options = {}) {
7531
7533
 
7532
7534
  "use strict";
7533
7535
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7534
- /* harmony export */ a: function() { return /* binding */ trimInv; },
7535
- /* harmony export */ f: function() { return /* binding */ trim; }
7536
+ /* harmony export */ as: function() { return /* binding */ trimInv; },
7537
+ /* harmony export */ cE: function() { return /* binding */ trimChars; },
7538
+ /* harmony export */ fy: function() { return /* binding */ trim; }
7536
7539
  /* harmony export */ });
7537
7540
  /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11612);
7538
7541
  /*!
@@ -7553,6 +7556,11 @@ function trim(value) {
7553
7556
  .replace((0,jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.SPACE_REG_EXP_END)(), '')
7554
7557
  .replace((0,jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.SPACE_REG_EXP_START)(), '');
7555
7558
  }
7559
+ function trimChars(value, chars) {
7560
+ return value
7561
+ .replace(RegExp(`[${chars}]+$`), '')
7562
+ .replace(RegExp(`^[${chars}]+`), '');
7563
+ }
7556
7564
  /**
7557
7565
  * Trim only invisible chars
7558
7566
  */
@@ -8164,6 +8172,7 @@ const convertMediaUrlToVideoEmbed = (url, width = 400, height = 345) => {
8164
8172
  * Get the value of a computed style property for the first element in the set of matched elements or set one or
8165
8173
  * more CSS properties for every matched element
8166
8174
  *
8175
+ * @param element - HTML element
8167
8176
  * @param key - An object of property-value pairs to set. A CSS property name.
8168
8177
  * @param value - A value to set for the property.
8169
8178
  * @param onlyStyleMode - Get value from style attribute, without calculating
@@ -11633,7 +11642,7 @@ function extractSelectedPart(wrapper, font, jodit) {
11633
11642
  */
11634
11643
  function extractAndMove(wrapper, range, left) {
11635
11644
  const fragment = range.extractContents();
11636
- if ((!fragment.textContent || !(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(fragment.textContent).length) &&
11645
+ if ((!fragment.textContent || !(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(fragment.textContent).length) &&
11637
11646
  fragment.firstChild) {
11638
11647
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.unwrap(fragment.firstChild);
11639
11648
  }
@@ -11854,16 +11863,19 @@ void 0;
11854
11863
  void 0;
11855
11864
  void 0;
11856
11865
  /**
11857
- * Element has the similar styles
11866
+ * Element has the similar styles keys
11858
11867
  */
11859
11868
  function hasSameStyleKeys(elm, rules) {
11860
11869
  return Boolean(!jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTag(elm, 'font') &&
11861
11870
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isHTMLElement(elm) &&
11862
11871
  Object.keys(rules).every(property => {
11863
11872
  const value = (0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_2__/* .css */ .i)(elm, property, true);
11864
- return !(0,jodit_core_helpers_checker_is_void__WEBPACK_IMPORTED_MODULE_3__/* .isVoid */ .n)(value);
11873
+ return value !== '';
11865
11874
  }));
11866
11875
  }
11876
+ const elm2 = document.createElement('div');
11877
+ elm2.style.color = 'red';
11878
+ void 0;
11867
11879
  void 0;
11868
11880
  void 0;
11869
11881
 
@@ -11885,8 +11897,8 @@ void 0;
11885
11897
  /* harmony export */ iN: function() { return /* reexport safe */ _toggle_attributes__WEBPACK_IMPORTED_MODULE_0__.i; },
11886
11898
  /* harmony export */ ig: function() { return /* reexport safe */ _extract__WEBPACK_IMPORTED_MODULE_4__.i; },
11887
11899
  /* harmony export */ pe: function() { return /* reexport safe */ _is_same_attributes__WEBPACK_IMPORTED_MODULE_9__.p; },
11888
- /* harmony export */ re: function() { return /* reexport safe */ _wrap__WEBPACK_IMPORTED_MODULE_13__.r; },
11889
- /* harmony export */ ys: function() { return /* reexport safe */ _is_suit_element__WEBPACK_IMPORTED_MODULE_11__.ys; }
11900
+ /* harmony export */ qb: function() { return /* reexport safe */ _is_suit_element__WEBPACK_IMPORTED_MODULE_11__.qb; },
11901
+ /* harmony export */ re: function() { return /* reexport safe */ _wrap__WEBPACK_IMPORTED_MODULE_13__.r; }
11890
11902
  /* harmony export */ });
11891
11903
  /* harmony import */ var _toggle_attributes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(91335);
11892
11904
  /* harmony import */ var _list_toggle_ordered_list__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(70839);
@@ -12042,7 +12054,7 @@ function elementsEqualAttributes(elm1, elm2) {
12042
12054
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12043
12055
  /* harmony export */ Dd: function() { return /* binding */ isSameStyleChild; },
12044
12056
  /* harmony export */ fB: function() { return /* binding */ isSuitElement; },
12045
- /* harmony export */ ys: function() { return /* binding */ findSuitClosest; }
12057
+ /* harmony export */ qb: function() { return /* binding */ suitableClosest; }
12046
12058
  /* harmony export */ });
12047
12059
  /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44913);
12048
12060
  /* harmony import */ var _is_normal_node__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16640);
@@ -12058,25 +12070,35 @@ function elementsEqualAttributes(elm1, elm2) {
12058
12070
  * @param commitStyle - style commit
12059
12071
  * @param elm - checked item
12060
12072
  * @param strict - strict mode - false - the default tag is suitable for us if it is also in the commit
12073
+ * @param strictStyle - strict style mode - true - the element has the same style keys as in the commit, but not their values
12061
12074
  * @private
12062
12075
  */
12063
- function isSuitElement(commitStyle, elm, strict) {
12064
- if (!elm) {
12076
+ function isSuitElement(commitStyle, elm, strict, strictStyle = true) {
12077
+ if (!elm || !(0,_is_normal_node__WEBPACK_IMPORTED_MODULE_1__/* .isNormalNode */ .c)(elm)) {
12065
12078
  return false;
12066
12079
  }
12067
12080
  const { element, elementIsDefault, options } = commitStyle;
12081
+ if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isList(elm) && commitStyle.elementIsList) {
12082
+ return true;
12083
+ }
12084
+ const elmIsSame = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTag(elm, element);
12085
+ if (elmIsSame && !(elementIsDefault && strict)) {
12086
+ return true;
12087
+ }
12068
12088
  const elmHasSameStyle = Boolean(options.attributes?.style &&
12069
- (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyle */ .k)(elm, options.attributes.style));
12070
- const elmIsSame = elm.nodeName.toLowerCase() === element ||
12071
- (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isList(elm) && commitStyle.elementIsList);
12072
- if (((!elementIsDefault || !strict) && elmIsSame) ||
12073
- (elmHasSameStyle && (0,_is_normal_node__WEBPACK_IMPORTED_MODULE_1__/* .isNormalNode */ .c)(elm) && !commitStyle.elementIsList)) {
12089
+ (strictStyle
12090
+ ? (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyle */ .k)(elm, options.attributes.style)
12091
+ : (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyleKeys */ .Y)(elm, options.attributes.style)));
12092
+ if (elmHasSameStyle && !commitStyle.elementIsList) {
12074
12093
  return true;
12075
12094
  }
12076
- return Boolean(!elmIsSame && !strict && elementIsDefault && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isInlineBlock(elm));
12095
+ return !elmIsSame && !strict && elementIsDefault && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isInlineBlock(elm);
12077
12096
  }
12078
- function findSuitClosest(commitStyle, element, root) {
12079
- return jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.closest(element, node => isSuitElement(commitStyle, node, true), root);
12097
+ /**
12098
+ * @private
12099
+ */
12100
+ function suitableClosest(commitStyle, element, root) {
12101
+ return jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.closest(element, node => isSuitElement(commitStyle, node, true, false), root);
12080
12102
  }
12081
12103
  /**
12082
12104
  * Inside the parent element there is a block with the same styles
@@ -12086,6 +12108,7 @@ function findSuitClosest(commitStyle, element, root) {
12086
12108
  * <p>|test<strong>test</strong>|</p>
12087
12109
  * ```
12088
12110
  * Apply `{element:'strong'}`
12111
+ * @private
12089
12112
  */
12090
12113
  function isSameStyleChild(commitStyle, elm) {
12091
12114
  const { element, options } = commitStyle;
@@ -12812,7 +12835,7 @@ const transactions = {
12812
12835
  if (elm) {
12813
12836
  return { ...value, next: states.ELEMENT, element: elm };
12814
12837
  }
12815
- const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .findSuitClosest */ .ys)(style, element, jodit.editor);
12838
+ const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .suitableClosest */ .qb)(style, element, jodit.editor);
12816
12839
  if (style.elementIsList && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isList(suit)) {
12817
12840
  return { ...value, next: states.LIST };
12818
12841
  }
@@ -12860,7 +12883,7 @@ const transactions = {
12860
12883
  [states.EXTRACT]: {
12861
12884
  exec(value) {
12862
12885
  const { element, jodit, style } = value;
12863
- const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .findSuitClosest */ .ys)(style, element, jodit.editor);
12886
+ const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .suitableClosest */ .qb)(style, element, jodit.editor);
12864
12887
  void 0;
12865
12888
  if (!style.elementIsBlock) {
12866
12889
  (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .extractSelectedPart */ .ig)(suit, element, jodit);
@@ -13558,6 +13581,7 @@ let UIButton = class UIButton extends jodit_core_ui_element__WEBPACK_IMPORTED_MO
13558
13581
  UIButton = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
13559
13582
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.component
13560
13583
  ], UIButton);
13584
+
13561
13585
  function Button(jodit, stateOrText, text, variant) {
13562
13586
  const button = new UIButton(jodit);
13563
13587
  button.state.tabIndex = jodit.o.allowTabNavigation ? 0 : -1;
@@ -13666,6 +13690,7 @@ UIButtonGroup = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
13666
13690
  ], UIButtonGroup);
13667
13691
 
13668
13692
 
13693
+
13669
13694
  /***/ }),
13670
13695
 
13671
13696
  /***/ 29788:
@@ -13722,9 +13747,9 @@ UIButtonGroup = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
13722
13747
  var UITooltip_1;
13723
13748
 
13724
13749
  /**
13725
- * [[include:plugins/tooltip/README.md]]
13750
+ * [[include:core/ui/button/tooltip/README.md]]
13726
13751
  * @packageDocumentation
13727
- * @module plugins/tooltip
13752
+ * @module ui/button
13728
13753
  */
13729
13754
 
13730
13755
 
@@ -13895,6 +13920,7 @@ UITooltip = UITooltip_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */
13895
13920
  ], UITooltip);
13896
13921
 
13897
13922
 
13923
+
13898
13924
  /***/ }),
13899
13925
 
13900
13926
  /***/ 84789:
@@ -14054,6 +14080,7 @@ UIElement = UIElement_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
14054
14080
  ], UIElement);
14055
14081
 
14056
14082
 
14083
+
14057
14084
  /***/ }),
14058
14085
 
14059
14086
  /***/ 87043:
@@ -14074,7 +14101,7 @@ UIElement = UIElement_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
14074
14101
  */
14075
14102
 
14076
14103
  /**
14077
- * @module ui/form/block
14104
+ * @module ui/form
14078
14105
  */
14079
14106
 
14080
14107
 
@@ -14104,6 +14131,7 @@ UIBlock = (0,tslib__WEBPACK_IMPORTED_MODULE_2__/* .__decorate */ .gn)([
14104
14131
  ], UIBlock);
14105
14132
 
14106
14133
 
14134
+
14107
14135
  /***/ }),
14108
14136
 
14109
14137
  /***/ 23741:
@@ -14187,6 +14215,7 @@ UIForm = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .gn)([
14187
14215
  ], UIForm);
14188
14216
 
14189
14217
 
14218
+
14190
14219
  /***/ }),
14191
14220
 
14192
14221
  /***/ 61916:
@@ -14269,6 +14298,7 @@ UITextArea = UITextArea_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate
14269
14298
  ], UITextArea);
14270
14299
 
14271
14300
 
14301
+
14272
14302
  /***/ }),
14273
14303
 
14274
14304
  /***/ 98341:
@@ -14358,6 +14388,7 @@ UICheckbox = UICheckbox_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate
14358
14388
  ], UICheckbox);
14359
14389
 
14360
14390
 
14391
+
14361
14392
  /***/ }),
14362
14393
 
14363
14394
  /***/ 12411:
@@ -14431,6 +14462,7 @@ UIFileInput = (0,tslib__WEBPACK_IMPORTED_MODULE_2__/* .__decorate */ .gn)([
14431
14462
  ], UIFileInput);
14432
14463
 
14433
14464
 
14465
+
14434
14466
  /***/ }),
14435
14467
 
14436
14468
  /***/ 78862:
@@ -14704,6 +14736,7 @@ UIInput = UIInput_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn
14704
14736
  ], UIInput);
14705
14737
 
14706
14738
 
14739
+
14707
14740
  /***/ }),
14708
14741
 
14709
14742
  /***/ 54214:
@@ -14794,6 +14827,7 @@ UISelect = UISelect_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .
14794
14827
  ], UISelect);
14795
14828
 
14796
14829
 
14830
+
14797
14831
  /***/ }),
14798
14832
 
14799
14833
  /***/ 71713:
@@ -14842,7 +14876,7 @@ __webpack_require__.r(__webpack_exports__);
14842
14876
  * Input is required
14843
14877
  */
14844
14878
  const required = function (input) {
14845
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(input.value).length) {
14879
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(input.value).length) {
14846
14880
  input.error = 'Please fill out this field';
14847
14881
  return false;
14848
14882
  }
@@ -14852,7 +14886,7 @@ const required = function (input) {
14852
14886
  * Input value should be valid URL
14853
14887
  */
14854
14888
  const url = function (input) {
14855
- if (!(0,jodit_core_helpers_checker_is_url__WEBPACK_IMPORTED_MODULE_1__/* .isURL */ .P)((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(input.value))) {
14889
+ if (!(0,jodit_core_helpers_checker_is_url__WEBPACK_IMPORTED_MODULE_1__/* .isURL */ .P)((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(input.value))) {
14856
14890
  input.error = 'Please enter a web address';
14857
14891
  return false;
14858
14892
  }
@@ -14880,7 +14914,7 @@ const url = function (input) {
14880
14914
  * Select is required
14881
14915
  */
14882
14916
  const required = function (select) {
14883
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(select.value).length) {
14917
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(select.value).length) {
14884
14918
  select.error = 'Please fill out this field';
14885
14919
  return false;
14886
14920
  }
@@ -14925,7 +14959,6 @@ var UIGroup_1;
14925
14959
 
14926
14960
 
14927
14961
  let UIGroup = UIGroup_1 = class UIGroup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u {
14928
- /** @override */
14929
14962
  className() {
14930
14963
  return 'UIGroup';
14931
14964
  }
@@ -14943,7 +14976,6 @@ let UIGroup = UIGroup_1 = class UIGroup extends jodit_core_ui_element__WEBPACK_I
14943
14976
  stack.push(...elm);
14944
14977
  }
14945
14978
  else if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(elm, UIGroup_1)) {
14946
- // @ts-ignore
14947
14979
  stack.push(...elm.elements);
14948
14980
  }
14949
14981
  else {
@@ -15045,6 +15077,7 @@ UIGroup = UIGroup_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn
15045
15077
  ], UIGroup);
15046
15078
 
15047
15079
 
15080
+
15048
15081
  /***/ }),
15049
15082
 
15050
15083
  /***/ 5217:
@@ -15187,7 +15220,14 @@ let UIList = class UIList extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MO
15187
15220
  }
15188
15221
  default:
15189
15222
  lastBtnSeparator = false;
15190
- elm = this.makeButton(control, target);
15223
+ switch (control.component) {
15224
+ case 'select':
15225
+ elm = this.makeSelect(control, target);
15226
+ break;
15227
+ case 'button':
15228
+ default:
15229
+ elm = this.makeButton(control, target);
15230
+ }
15191
15231
  }
15192
15232
  if (elm) {
15193
15233
  if (!group) {
@@ -15222,11 +15262,16 @@ let UIList = class UIList extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MO
15222
15262
  this.update();
15223
15263
  return this;
15224
15264
  }
15265
+ makeSelect(control, target) {
15266
+ throw new Error('Not implemented behaviour');
15267
+ }
15225
15268
  /**
15226
15269
  * Create button instance
15227
15270
  */
15228
15271
  makeButton(control, target) {
15229
- return new jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_5__/* .UIButton */ .y3(this.j);
15272
+ return new jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_5__/* .UIButton */ .y3(this.j, {
15273
+ name: control.name
15274
+ });
15230
15275
  }
15231
15276
  };
15232
15277
  (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
@@ -15237,6 +15282,7 @@ UIList = (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
15237
15282
  ], UIList);
15238
15283
 
15239
15284
 
15285
+
15240
15286
  /***/ }),
15241
15287
 
15242
15288
  /***/ 82388:
@@ -15270,6 +15316,7 @@ UISeparator = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
15270
15316
  ], UISeparator);
15271
15317
 
15272
15318
 
15319
+
15273
15320
  /***/ }),
15274
15321
 
15275
15322
  /***/ 41131:
@@ -15303,6 +15350,7 @@ UISpacer = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
15303
15350
  ], UISpacer);
15304
15351
 
15305
15352
 
15353
+
15306
15354
  /***/ }),
15307
15355
 
15308
15356
  /***/ 77549:
@@ -15407,10 +15455,17 @@ function findControlType(path, controls) {
15407
15455
  else {
15408
15456
  key = namespaceOrKey;
15409
15457
  }
15458
+ const list = store[key]?.list;
15410
15459
  return store[key]
15411
15460
  ? {
15412
15461
  name: key,
15413
- ...(0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.ConfigFlatten)(store[key])
15462
+ ...(0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.ConfigFlatten)(store[key]),
15463
+ list: (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.isArray)(list)
15464
+ ? list.reduce((acc, k) => {
15465
+ acc[k] = k;
15466
+ return acc;
15467
+ }, {})
15468
+ : list
15414
15469
  }
15415
15470
  : undefined;
15416
15471
  }
@@ -15517,7 +15572,10 @@ class Icon {
15517
15572
  let iconElement;
15518
15573
  const { name, iconURL, fill } = icon;
15519
15574
  const clearName = name.replace(/[^a-zA-Z0-9]/g, '_');
15520
- const iconFromEvent = jodit.o.getIcon?.(name, clearName);
15575
+ let iconFromEvent;
15576
+ if (!/<svg/.test(name)) {
15577
+ iconFromEvent = jodit.o.getIcon?.(name, clearName);
15578
+ }
15521
15579
  const cacheKey = `${name}${iconURL}${fill}${iconFromEvent ?? ''}`;
15522
15580
  if (jodit.o.cache && this.__cache.has(cacheKey)) {
15523
15581
  return this.__cache.get(cacheKey)?.cloneNode(true);
@@ -15633,15 +15691,16 @@ Icon.__cache = new Map();
15633
15691
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
15634
15692
  /* harmony export */ G: function() { return /* binding */ Popup; }
15635
15693
  /* harmony export */ });
15636
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(97582);
15694
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(97582);
15637
15695
  /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44913);
15638
15696
  /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(95582);
15639
15697
  /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52378);
15640
15698
  /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2__);
15641
- /* harmony import */ var jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(84789);
15642
- /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50526);
15643
- /* harmony import */ var jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(79467);
15644
- /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(81160);
15699
+ /* harmony import */ var jodit_core_ui_group_group__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(91630);
15700
+ /* harmony import */ var jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(84789);
15701
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(50526);
15702
+ /* harmony import */ var jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(79467);
15703
+ /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(81160);
15645
15704
  /*!
15646
15705
  * Jodit Editor (https://xdsoft.net/jodit/)
15647
15706
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -15661,6 +15720,7 @@ Icon.__cache = new Map();
15661
15720
 
15662
15721
 
15663
15722
 
15723
+
15664
15724
  const EVENTS_FOR_AUTOCLOSE = [
15665
15725
  'escape',
15666
15726
  'cut',
@@ -15668,25 +15728,28 @@ const EVENTS_FOR_AUTOCLOSE = [
15668
15728
  'backSpaceAfterDelete',
15669
15729
  'beforeCommandDelete'
15670
15730
  ];
15671
- class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u {
15672
- /** @override */
15731
+ class Popup extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MODULE_3__/* .UIGroup */ .q {
15673
15732
  className() {
15674
15733
  return 'Popup';
15675
15734
  }
15676
- /** @override */
15735
+ appendChildToContainer(childContainer) {
15736
+ const content = this.getElm('content');
15737
+ void 0;
15738
+ content.appendChild(childContainer);
15739
+ }
15677
15740
  updateParentElement(target) {
15678
- if (target !== this && jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(target, Popup)) {
15679
- this.childrenPopups.forEach(popup => {
15741
+ if (target !== this && jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__/* .Component */ .w.isInstanceOf(target, Popup)) {
15742
+ this.__childrenPopups.forEach(popup => {
15680
15743
  if (!target.closest(popup) && popup.isOpened) {
15681
15744
  popup.close();
15682
15745
  }
15683
15746
  });
15684
- if (!this.childrenPopups.has(target)) {
15747
+ if (!this.__childrenPopups.has(target)) {
15685
15748
  this.j.e.on(target, 'beforeClose', () => {
15686
- this.childrenPopups.delete(target);
15749
+ this.__childrenPopups.delete(target);
15687
15750
  });
15688
15751
  }
15689
- this.childrenPopups.add(target);
15752
+ this.__childrenPopups.add(target);
15690
15753
  }
15691
15754
  return super.updateParentElement(target);
15692
15755
  }
@@ -15694,21 +15757,18 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15694
15757
  * Set popup content
15695
15758
  */
15696
15759
  setContent(content) {
15697
- jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.detach(this.container);
15698
- const box = this.j.c.div(`${this.componentName}__content`);
15699
- let elm;
15700
- if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(content, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u)) {
15701
- elm = content.container;
15702
- content.parentElement = this;
15760
+ if (this.allChildren.length) {
15761
+ throw new Error('Remove children');
15703
15762
  }
15704
- else if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.isString)(content)) {
15705
- elm = this.j.c.fromHTML(content);
15763
+ if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__/* .Component */ .w.isInstanceOf(content, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u)) {
15764
+ this.append(content);
15706
15765
  }
15707
15766
  else {
15708
- elm = content;
15767
+ const elm = (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.isString)(content)
15768
+ ? this.j.c.fromHTML(content)
15769
+ : content;
15770
+ this.appendChildToContainer(elm);
15709
15771
  }
15710
- box.appendChild(elm);
15711
- this.container.appendChild(box);
15712
15772
  this.updatePosition();
15713
15773
  return this;
15714
15774
  }
@@ -15717,17 +15777,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15717
15777
  */
15718
15778
  open(getBound, keepPosition = false, parentContainer) {
15719
15779
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.markOwner)(this.jodit, this.container);
15720
- this.calculateZIndex();
15780
+ this.__calculateZIndex();
15721
15781
  this.isOpened = true;
15722
- this.addGlobalListeners();
15723
- this.targetBound = !keepPosition
15782
+ this.__addGlobalListeners();
15783
+ this.__targetBound = !keepPosition
15724
15784
  ? getBound
15725
15785
  : this.getKeepBound(getBound);
15726
15786
  if (parentContainer) {
15727
15787
  parentContainer.appendChild(this.container);
15728
15788
  }
15729
15789
  else {
15730
- const popupContainer = (0,jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .getContainer */ .ZO)(this.jodit, Popup);
15790
+ const popupContainer = (0,jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .getContainer */ .ZO)(this.jodit, Popup);
15731
15791
  if (parentContainer !== this.container.parentElement) {
15732
15792
  popupContainer.appendChild(this.container);
15733
15793
  }
@@ -15737,7 +15797,7 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15737
15797
  this.j.e.fire('afterOpenPopup', this);
15738
15798
  return this;
15739
15799
  }
15740
- calculateZIndex() {
15800
+ __calculateZIndex() {
15741
15801
  if (this.container.style.zIndex) {
15742
15802
  return;
15743
15803
  }
@@ -15763,7 +15823,7 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15763
15823
  return;
15764
15824
  }
15765
15825
  if (!pe.parentElement && pe.container.parentElement) {
15766
- const elm = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u.closestElement(pe.container.parentElement, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u);
15826
+ const elm = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u.closestElement(pe.container.parentElement, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u);
15767
15827
  if (elm) {
15768
15828
  pe = elm;
15769
15829
  continue;
@@ -15802,22 +15862,22 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15802
15862
  if (!this.isOpened) {
15803
15863
  return this;
15804
15864
  }
15805
- const [pos, strategy] = this.calculatePosition(this.targetBound(), this.viewBound(), (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.position)(this.container, this.j));
15865
+ const [pos, strategy] = this.__calculatePosition(this.__targetBound(), this.viewBound(), (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.position)(this.container, this.j));
15806
15866
  this.setMod('strategy', strategy);
15807
15867
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.css)(this.container, {
15808
15868
  left: pos.left,
15809
15869
  top: pos.top
15810
15870
  });
15811
- this.childrenPopups.forEach(popup => popup.updatePosition());
15871
+ this.__childrenPopups.forEach(popup => popup.updatePosition());
15812
15872
  return this;
15813
15873
  }
15814
- throttleUpdatePosition() {
15874
+ __throttleUpdatePosition() {
15815
15875
  this.updatePosition();
15816
15876
  }
15817
15877
  /**
15818
15878
  * Calculate start point
15819
15879
  */
15820
- calculatePosition(target, view, container, defaultStrategy = this.strategy) {
15880
+ __calculatePosition(target, view, container, defaultStrategy = this.strategy) {
15821
15881
  const x = {
15822
15882
  left: target.left,
15823
15883
  right: target.left - (container.width - target.width)
@@ -15878,17 +15938,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15878
15938
  return this;
15879
15939
  }
15880
15940
  this.isOpened = false;
15881
- this.childrenPopups.forEach(popup => popup.close());
15941
+ this.__childrenPopups.forEach(popup => popup.close());
15882
15942
  this.j.e.fire(this, 'beforeClose');
15883
15943
  this.j.e.fire('beforePopupClose', this);
15884
- this.removeGlobalListeners();
15944
+ this.__removeGlobalListeners();
15885
15945
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.safeRemove(this.container);
15886
15946
  return this;
15887
15947
  }
15888
15948
  /**
15889
15949
  * Close popup if click was in outside
15890
15950
  */
15891
- closeOnOutsideClick(e) {
15951
+ __closeOnOutsideClick(e) {
15892
15952
  if (!this.isOpened || this.isOwnClick(e)) {
15893
15953
  return;
15894
15954
  }
@@ -15898,17 +15958,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15898
15958
  if (!e.target) {
15899
15959
  return false;
15900
15960
  }
15901
- const box = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u.closestElement(e.target, Popup);
15961
+ const box = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u.closestElement(e.target, Popup);
15902
15962
  return Boolean(box && (this === box || box.closest(this)));
15903
15963
  }
15904
- addGlobalListeners() {
15905
- const up = this.throttleUpdatePosition, ow = this.ow;
15906
- jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .eventEmitter */ .TB.on('closeAllPopups', this.close);
15964
+ __addGlobalListeners() {
15965
+ const up = this.__throttleUpdatePosition, ow = this.ow;
15966
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .eventEmitter */ .TB.on('closeAllPopups', this.close);
15907
15967
  if (this.smart) {
15908
15968
  this.j.e
15909
15969
  .on(EVENTS_FOR_AUTOCLOSE, this.close)
15910
- .on('mousedown touchstart', this.closeOnOutsideClick)
15911
- .on(ow, 'mousedown touchstart', this.closeOnOutsideClick);
15970
+ .on('mousedown touchstart', this.__closeOnOutsideClick)
15971
+ .on(ow, 'mousedown touchstart', this.__closeOnOutsideClick);
15912
15972
  }
15913
15973
  this.j.e
15914
15974
  .on('closeAllPopups', this.close)
@@ -15920,14 +15980,14 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15920
15980
  box && this.j.e.on(box, 'scroll mousewheel', up);
15921
15981
  });
15922
15982
  }
15923
- removeGlobalListeners() {
15924
- const up = this.throttleUpdatePosition, ow = this.ow;
15925
- jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .eventEmitter */ .TB.off('closeAllPopups', this.close);
15983
+ __removeGlobalListeners() {
15984
+ const up = this.__throttleUpdatePosition, ow = this.ow;
15985
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .eventEmitter */ .TB.off('closeAllPopups', this.close);
15926
15986
  if (this.smart) {
15927
15987
  this.j.e
15928
15988
  .off(EVENTS_FOR_AUTOCLOSE, this.close)
15929
- .off('mousedown touchstart', this.closeOnOutsideClick)
15930
- .off(ow, 'mousedown touchstart', this.closeOnOutsideClick);
15989
+ .off('mousedown touchstart', this.__closeOnOutsideClick)
15990
+ .off(ow, 'mousedown touchstart', this.__closeOnOutsideClick);
15931
15991
  }
15932
15992
  this.j.e
15933
15993
  .off('closeAllPopups', this.close)
@@ -15957,28 +16017,33 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15957
16017
  width: this.ow.innerWidth,
15958
16018
  height: this.ow.innerHeight
15959
16019
  });
15960
- this.childrenPopups = new Set();
16020
+ this.__childrenPopups = new Set();
15961
16021
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.attr)(this.container, 'role', 'popup');
15962
16022
  }
16023
+ render() {
16024
+ return `<div>
16025
+ <div class="&__content"></div>
16026
+ </div>`;
16027
+ }
15963
16028
  /** @override **/
15964
16029
  destruct() {
15965
16030
  this.close();
15966
16031
  return super.destruct();
15967
16032
  }
15968
16033
  }
15969
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
15970
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16034
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16035
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
15971
16036
  ], Popup.prototype, "updatePosition", null);
15972
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
15973
- (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.throttle)(10),
15974
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
15975
- ], Popup.prototype, "throttleUpdatePosition", null);
15976
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
15977
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16037
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16038
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.throttle)(10),
16039
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16040
+ ], Popup.prototype, "__throttleUpdatePosition", null);
16041
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16042
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
15978
16043
  ], Popup.prototype, "close", null);
15979
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
15980
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
15981
- ], Popup.prototype, "closeOnOutsideClick", null);
16044
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16045
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16046
+ ], Popup.prototype, "__closeOnOutsideClick", null);
15982
16047
 
15983
16048
 
15984
16049
  /***/ }),
@@ -16171,7 +16236,7 @@ class ViewWithToolbar extends jodit_core_view_view__WEBPACK_IMPORTED_MODULE_0__/
16171
16236
  /** @override **/
16172
16237
  constructor(options, isJodit = false) {
16173
16238
  super(options, isJodit);
16174
- this.toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeCollection */ .R)(this);
16239
+ this.toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeCollection */ .RP)(this);
16175
16240
  this.defaultToolbarContainer = this.c.div('jodit-toolbar__box');
16176
16241
  this.registeredButtons = new Set();
16177
16242
  this.groupToButtons = {};
@@ -16480,6 +16545,7 @@ View.esModern = jodit_core_constants__WEBPACK_IMPORTED_MODULE_2__.IS_ES_MODERN;
16480
16545
  View = View_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
16481
16546
  (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.derive)(jodit_core_traits_mods__WEBPACK_IMPORTED_MODULE_10__/* .Mods */ .$, jodit_core_traits_elms__WEBPACK_IMPORTED_MODULE_6__/* .Elms */ .F)
16482
16547
  ], View);
16548
+
16483
16549
  View.defaultOptions = {
16484
16550
  extraButtons: [],
16485
16551
  cache: true,
@@ -17841,6 +17907,7 @@ Jodit.core = {
17841
17907
  Jodit = Jodit_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
17842
17908
  (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.derive)(jodit_core_traits_dlgs__WEBPACK_IMPORTED_MODULE_6__/* .Dlgs */ .l)
17843
17909
  ], Jodit);
17910
+
17844
17911
  function addClassNames(className, elm) {
17845
17912
  if (className) {
17846
17913
  className.split(/\s+/).forEach(cn => elm.classList.add(cn));
@@ -18007,6 +18074,7 @@ ContextMenu = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
18007
18074
  ], ContextMenu);
18008
18075
 
18009
18076
 
18077
+
18010
18078
  /***/ }),
18011
18079
 
18012
18080
  /***/ 24040:
@@ -18749,6 +18817,7 @@ Dialog = (0,tslib__WEBPACK_IMPORTED_MODULE_13__/* .__decorate */ .gn)([
18749
18817
  ], Dialog);
18750
18818
 
18751
18819
 
18820
+
18752
18821
  /***/ }),
18753
18822
 
18754
18823
  /***/ 2932:
@@ -19437,7 +19506,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.filebrowser
19437
19506
  },
19438
19507
  filter: {
19439
19508
  isInput: true,
19440
- getContent: (filebrowser, _, b) => {
19509
+ getContent: (filebrowser, b) => {
19441
19510
  const oldInput = b.container.querySelector('.jodit-input');
19442
19511
  if (oldInput) {
19443
19512
  return oldInput;
@@ -20373,6 +20442,7 @@ let FileBrowser = class FileBrowser extends jodit_core_view_view_with_toolbar__W
20373
20442
  FileBrowser = (0,tslib__WEBPACK_IMPORTED_MODULE_19__/* .__decorate */ .gn)([
20374
20443
  (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_10__.derive)(jodit_core_traits_dlgs__WEBPACK_IMPORTED_MODULE_15__/* .Dlgs */ .l)
20375
20444
  ], FileBrowser);
20445
+
20376
20446
  /**
20377
20447
  * @private
20378
20448
  */
@@ -22013,6 +22083,7 @@ ImageEditor.calcValueByPercent = (value, percent) => {
22013
22083
  ImageEditor = ImageEditor_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
22014
22084
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_6__.component
22015
22085
  ], ImageEditor);
22086
+
22016
22087
  /**
22017
22088
  * Open Image Editor
22018
22089
  */
@@ -22167,10 +22238,11 @@ __webpack_require__.r(__webpack_exports__);
22167
22238
  /* harmony export */ Snapshot: function() { return /* reexport safe */ _history_snapshot__WEBPACK_IMPORTED_MODULE_16__.a; },
22168
22239
  /* harmony export */ StatusBar: function() { return /* reexport safe */ _status_bar_status_bar__WEBPACK_IMPORTED_MODULE_18__.A; },
22169
22240
  /* harmony export */ Table: function() { return /* reexport safe */ _table_table__WEBPACK_IMPORTED_MODULE_19__.i; },
22170
- /* harmony export */ ToolbarButton: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.h; },
22241
+ /* harmony export */ ToolbarButton: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.hA; },
22171
22242
  /* harmony export */ ToolbarCollection: function() { return /* reexport safe */ _toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_21__.n; },
22172
- /* harmony export */ ToolbarContent: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.c; },
22243
+ /* harmony export */ ToolbarContent: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.c_; },
22173
22244
  /* harmony export */ ToolbarEditorCollection: function() { return /* reexport safe */ _toolbar_collection_editor_collection__WEBPACK_IMPORTED_MODULE_20__.N; },
22245
+ /* harmony export */ ToolbarSelect: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.vT; },
22174
22246
  /* harmony export */ UIBlock: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.eC; },
22175
22247
  /* harmony export */ UIButton: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.y3; },
22176
22248
  /* harmony export */ UICheckbox: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.mA; },
@@ -22291,6 +22363,7 @@ UIMessage = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
22291
22363
  ], UIMessage);
22292
22364
 
22293
22365
 
22366
+
22294
22367
  /***/ }),
22295
22368
 
22296
22369
  /***/ 15964:
@@ -22398,6 +22471,7 @@ UIMessages = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
22398
22471
  ], UIMessages);
22399
22472
 
22400
22473
 
22474
+
22401
22475
  /***/ }),
22402
22476
 
22403
22477
  /***/ 66529:
@@ -22506,6 +22580,7 @@ StatusBar = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
22506
22580
  ], StatusBar);
22507
22581
 
22508
22582
 
22583
+
22509
22584
  /***/ }),
22510
22585
 
22511
22586
  /***/ 2871:
@@ -23212,25 +23287,26 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23212
23287
  }
23213
23288
  /** @override **/
23214
23289
  update() {
23215
- // @ts-ignore
23216
- window.__onupdate = (window.__onupdate ?? 0) + 1;
23217
23290
  const { control, state } = this, tc = this.closest(jodit_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_7__/* .ToolbarCollection */ .n);
23218
- state.disabled = this.calculateDisabledStatus(tc);
23219
- state.activated = this.calculateActivatedStatus(tc);
23220
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(control.update) && tc) {
23221
- control.update(this, tc.jodit);
23291
+ if (!tc) {
23292
+ return;
23222
23293
  }
23223
- super.update();
23294
+ const value = control.value?.(tc.jodit, this);
23295
+ if (value !== undefined) {
23296
+ state.value = value;
23297
+ }
23298
+ state.disabled = this.__calculateDisabledStatus(tc);
23299
+ state.activated = this.__calculateActivatedStatus(tc);
23300
+ control.update?.(tc.jodit, this);
23224
23301
  }
23225
23302
  /**
23226
23303
  * Calculates whether the button is active
23227
23304
  */
23228
- calculateActivatedStatus(tc) {
23305
+ __calculateActivatedStatus(tc) {
23229
23306
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isJoditObject)(this.j) && !this.j.editorIsActive) {
23230
23307
  return false;
23231
23308
  }
23232
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(this.control.isActive) &&
23233
- this.control.isActive(this.j, this.control, this)) {
23309
+ if (this.control.isActive?.(this.j, this)) {
23234
23310
  return true;
23235
23311
  }
23236
23312
  return Boolean(tc && tc.shouldBeActive(this));
@@ -23238,7 +23314,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23238
23314
  /**
23239
23315
  * Calculates whether an element is blocked for the user
23240
23316
  */
23241
- calculateDisabledStatus(tc) {
23317
+ __calculateDisabledStatus(tc) {
23242
23318
  if (this.j.o.disabled) {
23243
23319
  return true;
23244
23320
  }
@@ -23247,8 +23323,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23247
23323
  !this.j.o.activeButtonsInReadOnly.includes(this.control.name))) {
23248
23324
  return true;
23249
23325
  }
23250
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(this.control.isDisabled) &&
23251
- this.control.isDisabled(this.j, this.control, this)) {
23326
+ if (this.control.isDisabled?.(this.j, this)) {
23252
23327
  return true;
23253
23328
  }
23254
23329
  return Boolean(tc && tc.shouldBeDisabled(this));
@@ -23383,7 +23458,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23383
23458
  */
23384
23459
  onTriggerClick(e) {
23385
23460
  if (this.openedPopup) {
23386
- this.closePopup();
23461
+ this.__closePopup();
23387
23462
  return;
23388
23463
  }
23389
23464
  const { control: ctr } = this;
@@ -23391,14 +23466,14 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23391
23466
  actionTrigger: this
23392
23467
  };
23393
23468
  if (ctr.list) {
23394
- return this.openControlList(ctr);
23469
+ return this.__openControlList(ctr);
23395
23470
  }
23396
23471
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(ctr.popup)) {
23397
23472
  const popup = this.openPopup();
23398
23473
  popup.parentElement = this;
23399
23474
  if (this.j.e.fire((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.camelCase)(`before-${ctr.name}-open-popup`), this.target, ctr, popup) !== false) {
23400
23475
  const target = this.toolbar?.getTarget(this) ?? this.target ?? null;
23401
- const elm = ctr.popup(this.j, target, ctr, this.closePopup, this);
23476
+ const elm = ctr.popup(this.j, target, this.__closePopup, this);
23402
23477
  if (elm) {
23403
23478
  popup
23404
23479
  .setContent((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isString)(elm) ? this.j.c.fromHTML(elm) : elm)
@@ -23419,9 +23494,9 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23419
23494
  /**
23420
23495
  * Create and open popup list
23421
23496
  */
23422
- openControlList(control) {
23497
+ __openControlList(control) {
23423
23498
  const controls = this.jodit.options.controls ?? {}, getControl = (key) => (0,jodit_core_ui_helpers_get_control_type__WEBPACK_IMPORTED_MODULE_9__/* .findControlType */ .z)(key, controls);
23424
- const list = control.list, menu = this.openPopup(), toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__/* .makeCollection */ .R)(this.j);
23499
+ const list = control.list, menu = this.openPopup(), toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__/* .makeCollection */ .RP)(this.j);
23425
23500
  menu.parentElement = this;
23426
23501
  toolbar.parentElement = menu;
23427
23502
  toolbar.mode = 'vertical';
@@ -23458,6 +23533,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23458
23533
  data: control.data,
23459
23534
  command: control.command,
23460
23535
  isActive: control.isChildActive,
23536
+ value: control.value,
23461
23537
  isDisabled: control.isChildDisabled,
23462
23538
  mode: control.mode,
23463
23539
  args: [...(control.args ? control.args : []), key, value]
@@ -23470,7 +23546,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23470
23546
  toolbar.build((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isArray)(list)
23471
23547
  ? list.map(getButton)
23472
23548
  : (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.keys)(list, false).map(key => getButton(key, list[key])), this.target);
23473
- menu.setContent(toolbar.container).open(() => (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.container), false, this.j.o.allowTabNavigation ? this.container : undefined);
23549
+ menu.setContent(toolbar).open(() => (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.container), false, this.j.o.allowTabNavigation ? this.container : undefined);
23474
23550
  this.state.activated = true;
23475
23551
  }
23476
23552
  onOutsideClick(e) {
@@ -23481,18 +23557,18 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23481
23557
  !jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isNode(e.target) ||
23482
23558
  (!jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isOrContains(this.container, e.target) &&
23483
23559
  !this.openedPopup.isOwnClick(e))) {
23484
- this.closePopup();
23560
+ this.__closePopup();
23485
23561
  }
23486
23562
  }
23487
23563
  openPopup() {
23488
- this.closePopup();
23564
+ this.__closePopup();
23489
23565
  this.openedPopup = new jodit_core_ui_popup_popup__WEBPACK_IMPORTED_MODULE_3__/* .Popup */ .G(this.j, false);
23490
23566
  this.j.e
23491
23567
  .on(this.ow, 'mousedown touchstart', this.onOutsideClick)
23492
23568
  .on('escape closeAllPopups', this.onOutsideClick);
23493
23569
  return this.openedPopup;
23494
23570
  }
23495
- closePopup() {
23571
+ __closePopup() {
23496
23572
  if (this.openedPopup) {
23497
23573
  this.j.e
23498
23574
  .off(this.ow, 'mousedown touchstart', this.onOutsideClick)
@@ -23531,7 +23607,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23531
23607
  }
23532
23608
  }
23533
23609
  if (ctr.list) {
23534
- return this.openControlList(ctr);
23610
+ return this.__openControlList(ctr);
23535
23611
  }
23536
23612
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(ctr.popup)) {
23537
23613
  return this.onTriggerClick(originalEvent);
@@ -23544,7 +23620,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23544
23620
  }
23545
23621
  }
23546
23622
  destruct() {
23547
- this.closePopup();
23623
+ this.__closePopup();
23548
23624
  return super.destruct();
23549
23625
  }
23550
23626
  };
@@ -23562,12 +23638,13 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23562
23638
  ], ToolbarButton.prototype, "onOutsideClick", null);
23563
23639
  (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
23564
23640
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
23565
- ], ToolbarButton.prototype, "closePopup", null);
23641
+ ], ToolbarButton.prototype, "__closePopup", null);
23566
23642
  ToolbarButton = (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
23567
23643
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
23568
23644
  ], ToolbarButton);
23569
23645
 
23570
23646
 
23647
+
23571
23648
  /***/ }),
23572
23649
 
23573
23650
  /***/ 75482:
@@ -23603,7 +23680,7 @@ let ToolbarContent = class ToolbarContent extends jodit_core_ui_button__WEBPACK_
23603
23680
  }
23604
23681
  /** @override */
23605
23682
  update() {
23606
- const content = this.control.getContent(this.j, this.control, this);
23683
+ const content = this.control.getContent(this.j, this);
23607
23684
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.isString)(content) || content.parentNode !== this.container) {
23608
23685
  jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.detach(this.container);
23609
23686
  this.container.appendChild((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.isString)(content) ? this.j.create.fromHTML(content) : content);
@@ -23627,6 +23704,7 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23627
23704
  ], ToolbarContent);
23628
23705
 
23629
23706
 
23707
+
23630
23708
  /***/ }),
23631
23709
 
23632
23710
  /***/ 63782:
@@ -23634,11 +23712,13 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23634
23712
 
23635
23713
  "use strict";
23636
23714
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
23637
- /* harmony export */ c: function() { return /* reexport safe */ _content__WEBPACK_IMPORTED_MODULE_1__.c; },
23638
- /* harmony export */ h: function() { return /* reexport safe */ _button__WEBPACK_IMPORTED_MODULE_0__.h; }
23715
+ /* harmony export */ c_: function() { return /* reexport safe */ _content__WEBPACK_IMPORTED_MODULE_1__.c; },
23716
+ /* harmony export */ hA: function() { return /* reexport safe */ _button__WEBPACK_IMPORTED_MODULE_0__.h; },
23717
+ /* harmony export */ vT: function() { return /* reexport safe */ _select_select__WEBPACK_IMPORTED_MODULE_2__.v; }
23639
23718
  /* harmony export */ });
23640
23719
  /* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(34288);
23641
23720
  /* harmony import */ var _content__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(75482);
23721
+ /* harmony import */ var _select_select__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(24440);
23642
23722
  /*!
23643
23723
  * Jodit Editor (https://xdsoft.net/jodit/)
23644
23724
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -23651,6 +23731,62 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23651
23731
 
23652
23732
 
23653
23733
 
23734
+
23735
+ /***/ }),
23736
+
23737
+ /***/ 24440:
23738
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23739
+
23740
+ "use strict";
23741
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
23742
+ /* harmony export */ v: function() { return /* binding */ ToolbarSelect; }
23743
+ /* harmony export */ });
23744
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(97582);
23745
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(50526);
23746
+ /* harmony import */ var jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4682);
23747
+ /* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(34288);
23748
+ /*!
23749
+ * Jodit Editor (https://xdsoft.net/jodit/)
23750
+ * Released under MIT see LICENSE.txt in the project root for license information.
23751
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
23752
+ */
23753
+
23754
+ /**
23755
+ * @module modules/toolbar/button
23756
+ */
23757
+
23758
+
23759
+
23760
+
23761
+ let ToolbarSelect = class ToolbarSelect extends _button__WEBPACK_IMPORTED_MODULE_1__/* .ToolbarButton */ .h {
23762
+ className() {
23763
+ return 'ToolbarSelect';
23764
+ }
23765
+ update() {
23766
+ super.update();
23767
+ this.state.icon.name = '';
23768
+ const { list, data } = this.control;
23769
+ if (list) {
23770
+ let key = this.state.value ||
23771
+ (data && (0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_2__/* .isString */ .H)(data.currentValue)
23772
+ ? data.currentValue
23773
+ : undefined);
23774
+ if (!key) {
23775
+ const keys = Object.keys(list);
23776
+ key = keys[0];
23777
+ }
23778
+ const text = (list[key.toString()] || key).toString();
23779
+ this.state.text =
23780
+ this.control.textTemplate?.(this.jodit, text) ?? text;
23781
+ }
23782
+ }
23783
+ };
23784
+ ToolbarSelect = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
23785
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_0__.component
23786
+ ], ToolbarSelect);
23787
+
23788
+
23789
+
23654
23790
  /***/ }),
23655
23791
 
23656
23792
  /***/ 60731:
@@ -23694,7 +23830,10 @@ let ToolbarCollection = class ToolbarCollection extends jodit_core_ui__WEBPACK_I
23694
23830
  return button || null;
23695
23831
  }
23696
23832
  makeButton(control, target = null) {
23697
- return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeButton */ .g)(this.j, control, target);
23833
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeButton */ .gu)(this.j, control, target);
23834
+ }
23835
+ makeSelect(control, target = null) {
23836
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeSelect */ .OT)(this.j, control, target);
23698
23837
  }
23699
23838
  /**
23700
23839
  * Button should be active
@@ -23780,6 +23919,7 @@ ToolbarCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)(
23780
23919
  ], ToolbarCollection);
23781
23920
 
23782
23921
 
23922
+
23783
23923
  /***/ }),
23784
23924
 
23785
23925
  /***/ 99332:
@@ -23926,6 +24066,7 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
23926
24066
  ], ToolbarEditorCollection);
23927
24067
 
23928
24068
 
24069
+
23929
24070
  /***/ }),
23930
24071
 
23931
24072
  /***/ 45429:
@@ -23933,14 +24074,16 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
23933
24074
 
23934
24075
  "use strict";
23935
24076
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
23936
- /* harmony export */ R: function() { return /* binding */ makeCollection; },
23937
- /* harmony export */ g: function() { return /* binding */ makeButton; }
24077
+ /* harmony export */ OT: function() { return /* binding */ makeSelect; },
24078
+ /* harmony export */ RP: function() { return /* binding */ makeCollection; },
24079
+ /* harmony export */ gu: function() { return /* binding */ makeButton; }
23938
24080
  /* harmony export */ });
23939
24081
  /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(95582);
23940
24082
  /* harmony import */ var _collection_collection__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60731);
23941
24083
  /* harmony import */ var _collection_editor_collection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(99332);
23942
24084
  /* harmony import */ var _button_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34288);
23943
24085
  /* harmony import */ var _button_content__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75482);
24086
+ /* harmony import */ var _button_select_select__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(24440);
23944
24087
  /*!
23945
24088
  * Jodit Editor (https://xdsoft.net/jodit/)
23946
24089
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -23951,6 +24094,7 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
23951
24094
 
23952
24095
 
23953
24096
 
24097
+
23954
24098
  /**
23955
24099
  * Collection factory
23956
24100
  */
@@ -23980,6 +24124,9 @@ function makeButton(jodit, control, target = null) {
23980
24124
  button.state.tabIndex = jodit.o.allowTabNavigation ? 0 : -1;
23981
24125
  return button;
23982
24126
  }
24127
+ function makeSelect(view, control, target = null) {
24128
+ return new _button_select_select__WEBPACK_IMPORTED_MODULE_5__/* .ToolbarSelect */ .v(view, control, target);
24129
+ }
23983
24130
 
23984
24131
 
23985
24132
  /***/ }),
@@ -26358,12 +26505,7 @@ function bold(editor) {
26358
26505
  : cssOptions[key];
26359
26506
  });
26360
26507
  editor.s.commitStyle({
26361
- element: control.tags ? control.tags[0] : undefined,
26362
- attributes: cssRules
26363
- ? {
26364
- style: cssRules
26365
- }
26366
- : {}
26508
+ element: control.tags ? control.tags[0] : undefined
26367
26509
  });
26368
26510
  editor.synchronizeValues();
26369
26511
  return false;
@@ -26507,29 +26649,29 @@ jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.classSpan =
26507
26649
  'warning',
26508
26650
  'error'
26509
26651
  ],
26510
- isChildActive: (editor, control) => {
26652
+ isChildActive: (editor, button) => {
26511
26653
  const current = editor.s.current();
26512
26654
  if (current) {
26513
26655
  const currentBpx = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isElement, editor.editor) || editor.editor;
26514
- return Boolean(control.args &&
26515
- currentBpx.classList.contains(control.args[0].toString()));
26656
+ return Boolean(button.control.args &&
26657
+ currentBpx.classList.contains(button.control.args[0].toString()));
26516
26658
  }
26517
26659
  return false;
26518
26660
  },
26519
- isActive: (editor, control) => {
26661
+ isActive: (editor, btn) => {
26520
26662
  const current = editor.s.current();
26521
26663
  if (current) {
26522
26664
  const currentBpx = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isElement, editor.editor) || editor.editor;
26523
26665
  let present = false;
26524
- control.list &&
26525
- Object.keys(control.list).forEach((className) => {
26666
+ btn.control.list &&
26667
+ Object.keys(btn.control.list).forEach((className) => {
26526
26668
  if (currentBpx.classList.contains(className)) {
26527
26669
  present = true;
26528
26670
  }
26529
26671
  });
26530
26672
  return Boolean(currentBpx &&
26531
26673
  currentBpx !== editor.editor &&
26532
- control.list !== undefined &&
26674
+ btn.control.list !== undefined &&
26533
26675
  present);
26534
26676
  }
26535
26677
  return false;
@@ -26782,9 +26924,9 @@ function getHash(tags) {
26782
26924
  const tagsHash = {};
26783
26925
  if ((0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_1__/* .isString */ .H)(tags)) {
26784
26926
  tags.split(separator).map((elm) => {
26785
- elm = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(elm);
26927
+ elm = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(elm);
26786
26928
  const attr = attributesReg.exec(elm), allowAttributes = {}, attributeMap = (attrName) => {
26787
- attrName = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(attrName);
26929
+ attrName = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(attrName);
26788
26930
  const val = attrReg.exec(attrName);
26789
26931
  if (val) {
26790
26932
  allowAttributes[val[1]] = val[2];
@@ -27282,7 +27424,7 @@ function isRemovableNode(jodit, node, current, allow, deny) {
27282
27424
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isElement(node) &&
27283
27425
  node.nodeName.match(jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_INLINE) != null &&
27284
27426
  !jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTemporary(node) &&
27285
- (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(node.innerHTML).length === 0 &&
27427
+ (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(node.innerHTML).length === 0 &&
27286
27428
  (current == null || !jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isOrContains(node, current)));
27287
27429
  }
27288
27430
 
@@ -27545,7 +27687,7 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('color
27545
27687
 
27546
27688
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_3__/* .Icon */ .J.set('brush', (_brush_svg__WEBPACK_IMPORTED_MODULE_5___default()));
27547
27689
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.brush = {
27548
- update(button, editor) {
27690
+ update(editor, button) {
27549
27691
  const color = (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_1__.dataBind)(button, 'color');
27550
27692
  const update = (key, value) => {
27551
27693
  if (value && value !== (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_1__.css)(editor.editor, key).toString()) {
@@ -27567,7 +27709,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.brush = {
27567
27709
  button.state.icon.fill = '';
27568
27710
  button.state.activated = false;
27569
27711
  },
27570
- popup: (editor, current, self, close, button) => {
27712
+ popup: (editor, current, close, button) => {
27571
27713
  let colorHEX = '', bg_color = '', tabs = [], currentElement = null;
27572
27714
  if (current && current !== editor.editor && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isNode(current)) {
27573
27715
  if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isElement(current) &&
@@ -27887,7 +28029,7 @@ class deleteCommand extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Pl
27887
28029
  if (current && jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isTag(current.firstChild, 'br')) {
27888
28030
  jodit.s.removeNode(current.firstChild);
27889
28031
  }
27890
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(jodit.editor.textContent || '') &&
28032
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(jodit.editor.textContent || '') &&
27891
28033
  !jodit.editor.querySelector('img,table,jodit,iframe,hr') &&
27892
28034
  (!current || !jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, 'table', jodit.editor))) {
27893
28035
  jodit.editor.innerHTML = '';
@@ -29184,7 +29326,7 @@ function wrapText(fake, jodit) {
29184
29326
 
29185
29327
 
29186
29328
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.file = {
29187
- popup: (editor, current, self, close) => {
29329
+ popup: (editor, current, close) => {
29188
29330
  const insert = (url, title = '') => {
29189
29331
  editor.s.insertNode(editor.createInside.fromHTML(`<a href="${url}" title="${title}">${title || url}</a>`));
29190
29332
  };
@@ -29316,13 +29458,14 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('focus
29316
29458
 
29317
29459
  "use strict";
29318
29460
  /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
29319
- /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(44913);
29320
- /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98478);
29321
- /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(10503);
29322
- /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(39007);
29323
- /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4__);
29324
- /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23358);
29325
- /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_icons_font_svg__WEBPACK_IMPORTED_MODULE_5__);
29461
+ /* harmony import */ var jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(18002);
29462
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10503);
29463
+ /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39007);
29464
+ /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2__);
29465
+ /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23358);
29466
+ /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_icons_font_svg__WEBPACK_IMPORTED_MODULE_3__);
29467
+ /* harmony import */ var jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8138);
29468
+ /* harmony import */ var jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(73076);
29326
29469
  /*!
29327
29470
  * Jodit Editor (https://xdsoft.net/jodit/)
29328
29471
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -29334,75 +29477,87 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('focus
29334
29477
 
29335
29478
 
29336
29479
 
29480
+
29337
29481
  /**
29338
29482
  * Default font-size points
29339
29483
  */
29340
29484
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.defaultFontSizePoints = 'px';
29341
- jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_3__/* .Icon */ .J.set('font', (_icons_font_svg__WEBPACK_IMPORTED_MODULE_5___default())).set('fontsize', (_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4___default()));
29485
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__/* .Icon */ .J.set('font', (_icons_font_svg__WEBPACK_IMPORTED_MODULE_3___default())).set('fontsize', (_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2___default()));
29342
29486
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fontsize = {
29343
29487
  command: 'fontsize',
29344
29488
  data: {
29345
- cssRule: 'font-size'
29346
- },
29347
- list: [
29348
- '8',
29349
- '9',
29350
- '10',
29351
- '11',
29352
- '12',
29353
- '14',
29354
- '16',
29355
- '18',
29356
- '24',
29357
- '30',
29358
- '36',
29359
- '48',
29360
- '60',
29361
- '72',
29362
- '96'
29363
- ],
29364
- exec: (editor, event, { control }) => (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.memorizeExec)(editor, event, { control }, (value) => {
29365
- if (control.command?.toLowerCase() === 'fontsize') {
29366
- return `${value}${editor.o.defaultFontSizePoints}`;
29489
+ cssRule: 'font-size',
29490
+ normalise: (v, editor) => {
29491
+ if (/pt$/i.test(v) && editor.o.defaultFontSizePoints === 'pt') {
29492
+ return v.replace(/pt$/i, '');
29493
+ }
29494
+ return v;
29367
29495
  }
29368
- return value;
29369
- }),
29496
+ },
29497
+ list: [8, 9, 10, 11, 12, 14, 16, 18, 24, 30, 32, 34, 36, 48, 60, 72, 96],
29498
+ textTemplate: (editor, value) => {
29499
+ return value + editor.o.defaultFontSizePoints;
29500
+ },
29370
29501
  childTemplate: (editor, key, value) => {
29371
29502
  return `${value}${editor.o.defaultFontSizePoints}`;
29372
29503
  },
29373
29504
  tooltip: 'Font size',
29374
- isChildActive: (editor, control) => {
29375
- const current = editor.s.current(), cssKey = control.data?.cssRule || 'font-size', normalize = control.data?.normalize ||
29376
- ((v) => {
29377
- if (/pt$/i.test(v) &&
29378
- editor.o.defaultFontSizePoints === 'pt') {
29379
- return v.replace(/pt$/i, '');
29380
- }
29381
- return v;
29382
- });
29383
- if (current) {
29384
- const currentBpx = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isElement, editor.editor) || editor.editor;
29385
- const value = (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.css)(currentBpx, cssKey);
29386
- return Boolean(value &&
29387
- control.args &&
29388
- normalize(control.args[0].toString()) ===
29389
- normalize(value.toString()));
29505
+ value: (editor, button) => {
29506
+ const current = editor.s.current();
29507
+ if (!current) {
29508
+ return;
29390
29509
  }
29391
- return false;
29510
+ const box = jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.closest(current, jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isElement, editor.editor);
29511
+ if (!box) {
29512
+ return;
29513
+ }
29514
+ const control = button.control;
29515
+ const cssKey = control.data?.cssRule || 'font-size';
29516
+ const value = (0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(box, cssKey);
29517
+ return value.toString();
29518
+ },
29519
+ isChildActive: (editor, button) => {
29520
+ const value = button.state.value;
29521
+ const normalize = button.control.data?.normalize ?? ((v) => v);
29522
+ return Boolean(value &&
29523
+ button.control.args &&
29524
+ normalize(button.control.args[0].toString()) ===
29525
+ normalize(value.toString()));
29526
+ },
29527
+ isActive: (editor, button) => {
29528
+ const value = button.state.value;
29529
+ if (!value) {
29530
+ return false;
29531
+ }
29532
+ const normalize = button.control.data?.normalize ?? ((v) => v);
29533
+ let keySet = button.control.data.cacheListSet;
29534
+ if (!keySet) {
29535
+ const keys = Object.keys(button.control.list).map(normalize);
29536
+ keySet = new Set(keys);
29537
+ button.control.data.cacheListSet = keySet;
29538
+ }
29539
+ return keySet.has(normalize(value.toString()));
29392
29540
  }
29393
29541
  };
29394
29542
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font = {
29395
29543
  ...jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fontsize,
29396
29544
  command: 'fontname',
29545
+ textTemplate: (j, value) => {
29546
+ const [first] = value.split(',');
29547
+ return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_5__/* .trimChars */ .cE)(first, '"\'');
29548
+ },
29397
29549
  list: {
29398
29550
  '': 'Default',
29399
- 'helvetica,sans-serif': 'Helvetica',
29400
- 'arial,helvetica,sans-serif': 'Arial',
29401
- 'georgia,palatino,serif': 'Georgia',
29402
- 'impact,charcoal,sans-serif': 'Impact',
29403
- 'tahoma,geneva,sans-serif': 'Tahoma',
29404
- 'times new roman,times,serif': 'Times New Roman',
29405
- 'verdana,geneva,sans-serif': 'Verdana'
29551
+ 'Arial, Helvetica, sans-serif': 'Arial',
29552
+ "'Courier New', Courier, monospace": 'Courier New',
29553
+ 'Georgia, Palatino, serif': 'Georgia',
29554
+ "'Lucida Sans Unicode', 'Lucida Grande', sans-serif": 'Lucida Sans Unicode',
29555
+ 'Tahoma, Geneva, sans-serif': 'Tahoma',
29556
+ "'Times New Roman', Times, serif": 'Times New Roman',
29557
+ "'Trebuchet MS', Helvetica, sans-serif": 'Trebuchet MS',
29558
+ 'Helvetica, sans-serif': 'Helvetica',
29559
+ 'Impact, Charcoal, sans-serif': 'Impact',
29560
+ 'Verdana, Geneva, sans-serif': 'Verdana'
29406
29561
  },
29407
29562
  childTemplate: (editor, key, value) => {
29408
29563
  let isAvailable = false;
@@ -29420,7 +29575,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font = {
29420
29575
  return v
29421
29576
  .toLowerCase()
29422
29577
  .replace(/['"]+/g, '')
29423
- .replace(/[^a-z0-9]+/g, ',');
29578
+ .replace(/[^a-z0-9-]+/g, ',');
29424
29579
  }
29425
29580
  },
29426
29581
  tooltip: 'Font family'
@@ -29464,7 +29619,7 @@ function font(editor) {
29464
29619
  editor.s.commitStyle({
29465
29620
  attributes: {
29466
29621
  style: {
29467
- fontSize: (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.normalizeSize)(third)
29622
+ fontSize: (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.normalizeSize)(third, editor.o.defaultFontSizePoints)
29468
29623
  }
29469
29624
  }
29470
29625
  });
@@ -29491,18 +29646,15 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('font'
29491
29646
 
29492
29647
  /***/ }),
29493
29648
 
29494
- /***/ 8001:
29495
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
29649
+ /***/ 7263:
29650
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
29496
29651
 
29497
29652
  "use strict";
29498
- /* unused harmony export formatBlock */
29499
- /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
29500
- /* harmony import */ var jodit_modules___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8079);
29501
- /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(95582);
29502
- /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(81160);
29503
- /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10503);
29504
- /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(88989);
29505
- /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_paragraph_svg__WEBPACK_IMPORTED_MODULE_5__);
29653
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(10503);
29654
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(77628);
29655
+ /* harmony import */ var jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8138);
29656
+ /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(88989);
29657
+ /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_paragraph_svg__WEBPACK_IMPORTED_MODULE_3__);
29506
29658
  /*!
29507
29659
  * Jodit Editor (https://xdsoft.net/jodit/)
29508
29660
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -29512,38 +29664,32 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('font'
29512
29664
 
29513
29665
 
29514
29666
 
29515
-
29516
-
29517
- jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__/* .Icon */ .J.set('paragraph', (_paragraph_svg__WEBPACK_IMPORTED_MODULE_5___default()));
29518
- jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.paragraph = {
29667
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__/* .Icon */ .J.set('paragraph', (_paragraph_svg__WEBPACK_IMPORTED_MODULE_3___default()));
29668
+ jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.paragraph = {
29519
29669
  command: 'formatBlock',
29520
- update(button, editor) {
29670
+ value(editor, button) {
29521
29671
  const control = button.control, current = editor.s.current();
29522
- if (current && editor.o.textIcons) {
29523
- const currentBox = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor) ||
29524
- editor.editor, currentValue = currentBox.nodeName.toLowerCase(), list = control.list;
29525
- if (button &&
29526
- control.data &&
29527
- control.data.currentValue !== currentValue &&
29528
- list &&
29529
- list[currentValue]) {
29530
- if (editor.o.textIcons) {
29531
- button.state.text = currentValue;
29532
- }
29533
- else {
29534
- button.state.icon.name = currentValue;
29535
- }
29536
- control.data.currentValue = currentValue;
29672
+ const currentBox = jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.closest(current, jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isBlock, editor.editor);
29673
+ return currentBox?.nodeName.toLowerCase() ?? control.data?.currentValue;
29674
+ },
29675
+ update(editor, button) {
29676
+ const control = button.control, current = editor.s.current();
29677
+ if (!current) {
29678
+ return false;
29679
+ }
29680
+ const currentValue = button.state.value, list = control.list;
29681
+ if (list && list[currentValue.toString()]) {
29682
+ if (editor.o.textIcons) {
29683
+ button.state.text = list[currentValue.toString()].toString();
29537
29684
  }
29538
29685
  }
29539
29686
  return false;
29540
29687
  },
29541
- exec: jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.memorizeExec,
29542
29688
  data: {
29543
- currentValue: 'left'
29689
+ currentValue: 'p'
29544
29690
  },
29545
29691
  list: {
29546
- p: 'Normal',
29692
+ p: 'Paragraph',
29547
29693
  h1: 'Heading 1',
29548
29694
  h2: 'Heading 2',
29549
29695
  h3: 'Heading 3',
@@ -29551,32 +29697,34 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.paragraph =
29551
29697
  blockquote: 'Quote',
29552
29698
  pre: 'Code'
29553
29699
  },
29554
- isChildActive: (editor, control) => {
29555
- const current = editor.s.current();
29556
- if (current) {
29557
- const currentBox = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
29558
- return Boolean(currentBox &&
29559
- currentBox !== editor.editor &&
29560
- control.args !== undefined &&
29561
- currentBox.nodeName.toLowerCase() === control.args[0]);
29562
- }
29563
- return false;
29700
+ isChildActive: (editor, button) => {
29701
+ return Boolean(button.state.value === button.control?.args?.[0]);
29564
29702
  },
29565
- isActive: (editor, control) => {
29566
- const current = editor.s.current();
29567
- if (current) {
29568
- const currentBpx = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
29569
- return Boolean(currentBpx &&
29570
- currentBpx !== editor.editor &&
29571
- control.list !== undefined &&
29572
- !jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(currentBpx, 'p') &&
29573
- control.list[currentBpx.nodeName.toLowerCase()] !== undefined);
29574
- }
29575
- return false;
29703
+ isActive: (editor, button) => {
29704
+ return (button.state.value !== editor.o.enter &&
29705
+ Boolean(button.control.list?.[button.state.value]));
29576
29706
  },
29577
29707
  childTemplate: (e, key, value) => `<${key} style="margin:0;padding:0"><span>${e.i18n(value)}</span></${key}>`,
29578
29708
  tooltip: 'Insert format block'
29579
29709
  };
29710
+
29711
+
29712
+ /***/ }),
29713
+
29714
+ /***/ 8001:
29715
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
29716
+
29717
+ "use strict";
29718
+ /* unused harmony export formatBlock */
29719
+ /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81160);
29720
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7263);
29721
+ /*!
29722
+ * Jodit Editor (https://xdsoft.net/jodit/)
29723
+ * Released under MIT see LICENSE.txt in the project root for license information.
29724
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
29725
+ */
29726
+
29727
+
29580
29728
  /**
29581
29729
  * Process command - `formatblock`
29582
29730
  */
@@ -29593,7 +29741,7 @@ function formatBlock(editor) {
29593
29741
  return false;
29594
29742
  });
29595
29743
  }
29596
- jodit_core_global__WEBPACK_IMPORTED_MODULE_3__/* .pluginSystem */ .pw.add('formatBlock', formatBlock);
29744
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_0__/* .pluginSystem */ .pw.add('formatBlock', formatBlock);
29597
29745
 
29598
29746
 
29599
29747
  /***/ }),
@@ -29630,7 +29778,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fullsize = {
29630
29778
  exec: (editor) => {
29631
29779
  editor.toggleFullSize();
29632
29780
  },
29633
- update(button, editor) {
29781
+ update(editor, button) {
29634
29782
  const mode = editor.isFullSize ? 'shrink' : 'fullsize';
29635
29783
  button.state.activated = editor.isFullSize;
29636
29784
  if (editor.o.textIcons) {
@@ -30236,14 +30384,16 @@ function iframe(editor) {
30236
30384
  if (opt.height === 'auto') {
30237
30385
  doc.documentElement &&
30238
30386
  (doc.documentElement.style.overflowY = 'hidden');
30239
- const resizeIframe = editor.async.throttle(() => {
30240
- if (editor.editor &&
30241
- editor.iframe &&
30242
- opt.height === 'auto') {
30243
- const style = editor.ew.getComputedStyle(editor.editor), marginOffset = parseInt(style.marginTop || '0', 10) +
30244
- parseInt(style.marginBottom || '0', 10);
30245
- (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.css)(editor.iframe, 'height', editor.editor.offsetHeight + marginOffset);
30246
- }
30387
+ const resizeIframe = editor.async.throttle((...args) => {
30388
+ editor.async.requestAnimationFrame(() => {
30389
+ if (editor.editor &&
30390
+ editor.iframe &&
30391
+ opt.height === 'auto') {
30392
+ const style = editor.ew.getComputedStyle(editor.editor), marginOffset = parseInt(style.marginTop || '0', 10) +
30393
+ parseInt(style.marginBottom || '0', 10);
30394
+ (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.css)(editor.iframe, 'height', editor.editor.offsetHeight + marginOffset);
30395
+ }
30396
+ });
30247
30397
  }, editor.defaultTimeout / 2);
30248
30398
  editor.e
30249
30399
  .on('change afterInit afterSetMode resize', resizeIframe)
@@ -30253,7 +30403,7 @@ function iframe(editor) {
30253
30403
  const resizeObserver = new ResizeObserver(resizeIframe);
30254
30404
  resizeObserver.observe(doc.body);
30255
30405
  editor.e.on('beforeDestruct', () => {
30256
- resizeObserver.unobserve(doc.body);
30406
+ resizeObserver.disconnect();
30257
30407
  });
30258
30408
  }
30259
30409
  }
@@ -30292,6 +30442,9 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('ifram
30292
30442
  * Released under MIT see LICENSE.txt in the project root for license information.
30293
30443
  * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
30294
30444
  */
30445
+ /**
30446
+ * @module plugins/image-processor
30447
+ */
30295
30448
 
30296
30449
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.imageProcessor = {
30297
30450
  replaceDataURIToBlobIdInView: true
@@ -31204,7 +31357,7 @@ function positionTab(editor) {
31204
31357
 
31205
31358
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .J.set('image', (_image_svg__WEBPACK_IMPORTED_MODULE_6___default()));
31206
31359
  jodit_config__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.controls.image = {
31207
- popup: (editor, current, ignore, close) => {
31360
+ popup: (editor, current, close) => {
31208
31361
  let sourceImage = null;
31209
31362
  if (current &&
31210
31363
  !jodit_core_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isText(current) &&
@@ -31692,7 +31845,7 @@ const cmd = (control) => control.args && (0,jodit_core_helpers_checker__WEBPACK_
31692
31845
  /* harmony default export */ __webpack_exports__.Z = ([
31693
31846
  {
31694
31847
  name: 'brush',
31695
- popup: (editor, _, _1, close) => {
31848
+ popup: (editor, _, close) => {
31696
31849
  if (!(0,jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__/* .isJoditObject */ .Zu)(editor)) {
31697
31850
  return;
31698
31851
  }
@@ -32012,7 +32165,7 @@ class inlinePopup extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Plug
32012
32165
  return new jodit_core_ui_popup__WEBPACK_IMPORTED_MODULE_2__/* .Popup */ .G(this.jodit, false);
32013
32166
  }
32014
32167
  get toolbar() {
32015
- return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_1__/* .makeCollection */ .R)(this.jodit, this.popup);
32168
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_1__/* .makeCollection */ .RP)(this.jodit, this.popup);
32016
32169
  }
32017
32170
  onClick(node) {
32018
32171
  const elements = this.elmsList, target = jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isTag(node, 'img')
@@ -32273,7 +32426,7 @@ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__/* .Icon */ .J.set('justify', (_j
32273
32426
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32274
32427
  name: 'left',
32275
32428
  tooltip: 'Align',
32276
- update(button, editor) {
32429
+ update(editor, button) {
32277
32430
  const control = button.control, current = editor.s.current();
32278
32431
  if (current) {
32279
32432
  const currentBox = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isBlock, editor.editor) ||
@@ -32286,8 +32439,8 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32286
32439
  if (control.data &&
32287
32440
  control.data.currentValue !== currentValue &&
32288
32441
  control.list &&
32289
- control.list.indexOf(currentValue) !== -1) {
32290
- if (editor.o.textIcons) {
32442
+ control.list[currentValue]) {
32443
+ if (editor.o.textIcons || control.component === 'select') {
32291
32444
  button.state.text = currentValue;
32292
32445
  }
32293
32446
  else {
@@ -32299,11 +32452,12 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32299
32452
  },
32300
32453
  isActive: (editor, btn) => {
32301
32454
  const current = editor.s.current();
32302
- if (current && btn.defaultValue) {
32303
- const currentBox = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isBlock, editor.editor) || editor.editor;
32304
- return (btn.defaultValue.indexOf((0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(currentBox, 'text-align').toString()) === -1);
32455
+ if (!current || !btn.control.defaultValue) {
32456
+ return false;
32305
32457
  }
32306
- return false;
32458
+ const currentBox = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isBlock, editor.editor) ||
32459
+ editor.editor;
32460
+ return (btn.control.defaultValue.indexOf((0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(currentBox, 'text-align').toString()) === -1);
32307
32461
  },
32308
32462
  defaultValue: ['left', 'start', 'inherit'],
32309
32463
  data: {
@@ -32795,7 +32949,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.link = {
32795
32949
  const current = editor.s.current();
32796
32950
  return Boolean(current && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.closest(current, 'a', editor.editor));
32797
32951
  },
32798
- popup: (editor, current, self, close) => {
32952
+ popup: (editor, current, close) => {
32799
32953
  return editor.e.fire('generateLinkForm.link', current, close);
32800
32954
  },
32801
32955
  tags: ['a'],
@@ -33347,11 +33501,11 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mobileTapTimeout = 30
33347
33501
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.toolbarAdaptive = true;
33348
33502
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.dots = {
33349
33503
  mode: jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.MODE_SOURCE + jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.MODE_WYSIWYG,
33350
- popup: (editor, current, control, close, button) => {
33351
- let store = control.data;
33504
+ popup: (editor, current, close, button) => {
33505
+ let store = button.control.data;
33352
33506
  if (store === undefined) {
33353
33507
  store = {
33354
- toolbar: (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeCollection */ .R)(editor),
33508
+ toolbar: (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeCollection */ .RP)(editor),
33355
33509
  rebuild: () => {
33356
33510
  if (button) {
33357
33511
  const buttons = editor.e.fire('getDiffButtons.mobile', button.closest(jodit_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_4__/* .ToolbarCollection */ .n));
@@ -33365,7 +33519,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.dots = {
33365
33519
  }
33366
33520
  }
33367
33521
  };
33368
- control.data = store;
33522
+ button.control.data = store;
33369
33523
  }
33370
33524
  store.rebuild();
33371
33525
  return store.toolbar;
@@ -35315,6 +35469,7 @@ resizeHandler.requires = ['size'];
35315
35469
  resizeHandler = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn)([
35316
35470
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_2__.autobind
35317
35471
  ], resizeHandler);
35472
+
35318
35473
  jodit_core_global__WEBPACK_IMPORTED_MODULE_4__/* .pluginSystem */ .pw.add('resizeHandler', resizeHandler);
35319
35474
 
35320
35475
 
@@ -36662,6 +36817,7 @@ UISearch = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .gn)([
36662
36817
  ], UISearch);
36663
36818
 
36664
36819
 
36820
+
36665
36821
  /***/ }),
36666
36822
 
36667
36823
  /***/ 31882:
@@ -37379,6 +37535,7 @@ let size = class size extends jodit_core_plugin_plugin__WEBPACK_IMPORTED_MODULE_
37379
37535
  size = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn)([
37380
37536
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
37381
37537
  ], size);
37538
+
37382
37539
  jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('size', size);
37383
37540
 
37384
37541
 
@@ -38859,7 +39016,7 @@ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__/* .Icon */ .J.set('symbols', (_s
38859
39016
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.symbols = {
38860
39017
  hotkeys: ['ctrl+shift+i', 'cmd+shift+i'],
38861
39018
  tooltip: 'Insert Special Character',
38862
- popup: (editor, current, control, close) => {
39019
+ popup: (editor, current, close) => {
38863
39020
  const container = editor.e.fire('generateSpecialCharactersTable.symbols');
38864
39021
  if (container) {
38865
39022
  if (editor.o.usePopupForSpecialCharacters) {
@@ -39477,7 +39634,8 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.table = {
39477
39634
  'table table-dark': 'Bootstrap Dark'
39478
39635
  }
39479
39636
  },
39480
- popup: (editor, current, control, close, button) => {
39637
+ popup: (editor, current, close, button) => {
39638
+ const control = button.control;
39481
39639
  const default_rows_count = control.data && control.data.rows ? control.data.rows : 10, default_cols_count = control.data && control.data.cols ? control.data.cols : 10;
39482
39640
  const generateExtraClasses = () => {
39483
39641
  if (!editor.o.table.useExtraClassesOptions) {
@@ -39656,7 +39814,7 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_0__/* .pluginSystem */ .pw.add('table
39656
39814
 
39657
39815
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .J.set('video', (_video_svg__WEBPACK_IMPORTED_MODULE_6___default()));
39658
39816
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.video = {
39659
- popup: (editor, current, control, close) => {
39817
+ popup: (editor, current, close) => {
39660
39818
  const formLink = new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIForm */ .x4(editor, [
39661
39819
  new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIBlock */ .eC(editor, [
39662
39820
  new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIInput */ .u3(editor, {
@@ -40019,7 +40177,7 @@ class xpath extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_4__/* .Plugin */
40019
40177
  };
40020
40178
  this.appendSelectAll = () => {
40021
40179
  this.removeSelectAll();
40022
- this.selectAllButton = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeButton */ .g)(this.j, {
40180
+ this.selectAllButton = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeButton */ .gu)(this.j, {
40023
40181
  name: 'selectall',
40024
40182
  ...this.j.o.controls.selectall
40025
40183
  });
@@ -40233,23 +40391,23 @@ __webpack_require__.r(__webpack_exports__);
40233
40391
  */
40234
40392
 
40235
40393
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font.list = {
40236
- 'andale mono,monospace': 'Andale Mono',
40237
- 'arial,helvetica,sans-serif': 'Arial',
40238
- 'arial black,sans-serif': 'Arial Black',
40239
- 'book antiqua,palatino,serif': 'Book Antiqua',
40240
- 'comic sans ms,sans-serif': 'Comic Sans MS',
40241
- 'courier new,courier,monospace': 'Courier New',
40242
- 'georgia,palatino,serif': 'Georgia',
40243
- 'helvetica,arial,sans-serif': 'Helvetica',
40244
- 'impact,charcoal,sans-serif': 'Impact',
40245
- 'symbol,sans-serif': 'Symbol',
40246
- 'tahoma,arial,helvetica,sans-serif': 'Tahoma',
40247
- 'terminal,monaco,monospace': 'Terminal',
40248
- 'times new roman,times,serif': 'Times New Roman',
40249
- 'trebuchet ms,geneva,sans-serif': 'Trebuchet MS',
40250
- 'verdana,geneva,sans-serif': 'Verdana',
40251
- webdings: 'Webdings',
40252
- 'wingdings,zapf dingbats': 'Wingdings'
40394
+ "'Andale mono', monospace'": 'Andale Mono',
40395
+ 'Arial, Helvetica, sans-serif': 'Arial',
40396
+ "'Arial black', sans-serif": 'Arial Black',
40397
+ "'Book antiqua', palatino, serif": 'Book Antiqua',
40398
+ "'Comic Sans MS', sans-serif": 'Comic Sans MS',
40399
+ "'Courier new', Courier, monospace": 'Courier New',
40400
+ 'Georgia, Palatino, serif': 'Georgia',
40401
+ 'Helvetica, Arial, sans-serif': 'Helvetica',
40402
+ 'Impact, Charcoal, sans-serif': 'Impact',
40403
+ 'Symbol, sans-serif': 'Symbol',
40404
+ 'Tahoma, Arial, Helvetica, sans-serif': 'Tahoma',
40405
+ 'Terminal, Monaco, monospace': 'Terminal',
40406
+ "'Times new roman', Times, serif": 'Times New Roman',
40407
+ "'Trebuchet ms', Geneva, sans-serif": 'Trebuchet MS',
40408
+ 'Verdana, Geneva, sans-serif': 'Verdana',
40409
+ Webdings: 'Webdings',
40410
+ "Wingdings, 'Zapf dingbats'": 'Wingdings'
40253
40411
  };
40254
40412
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.loadExternalConfig = true;
40255
40413
 
@@ -40705,6 +40863,7 @@ Autocomplete = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
40705
40863
  ], Autocomplete);
40706
40864
 
40707
40865
 
40866
+
40708
40867
  /***/ }),
40709
40868
 
40710
40869
  /***/ 91381:
@@ -41013,7 +41172,7 @@ const clearClassName = (elm) => {
41013
41172
  // Normalize or remove class
41014
41173
  if (elm.attributes.class) {
41015
41174
  elm.attributes.class = elm.attributes.class.replace(/(el\d+)|(font\d+)|msonormal|msolistparagraph\w*/gi, '');
41016
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(elm.attributes.class)) {
41175
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(elm.attributes.class)) {
41017
41176
  elm.attributes.class = null;
41018
41177
  }
41019
41178
  }
@@ -41974,7 +42133,7 @@ function innerHTML(elm, filter = () => true, removeEmpty = true, allowedStylePro
41974
42133
  let result = elm
41975
42134
  .map((e) => html(e, filter, removeEmpty, allowedStyleProps))
41976
42135
  .join('');
41977
- if (elm.name === 'p' && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(result).length === 0) {
42136
+ if (elm.name === 'p' && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(result).length === 0) {
41978
42137
  result = '&nbsp;';
41979
42138
  }
41980
42139
  return result;
@@ -42069,6 +42228,7 @@ let Style = class Style {
42069
42228
  Style = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
42070
42229
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
42071
42230
  ], Style);
42231
+
42072
42232
  function readStyles(style) {
42073
42233
  return uniqueMax((style ?? '')
42074
42234
  .replace(/&quot;/g, '"')
@@ -42388,7 +42548,7 @@ function transformWordToHtml(jodit, body, removeStyles, rtf) {
42388
42548
  elm.style.clear();
42389
42549
  }, true);
42390
42550
  }
42391
- return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)((0,jodit_pro_plugins_paste_from_word_element__WEBPACK_IMPORTED_MODULE_2__/* .innerHTML */ .C7)(body, (elm) => !elm.isComment, true, jodit.o.pasteFromWord.allowedStyleProps));
42551
+ return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)((0,jodit_pro_plugins_paste_from_word_element__WEBPACK_IMPORTED_MODULE_2__/* .innerHTML */ .C7)(body, (elm) => !elm.isComment, true, jodit.o.pasteFromWord.allowedStyleProps));
42392
42552
  }
42393
42553
 
42394
42554