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
package/es2021/jodit.js CHANGED
@@ -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
  */
@@ -2402,8 +2402,8 @@ __webpack_require__.r(__webpack_exports__);
2402
2402
  * Released under MIT see LICENSE.txt in the project root for license information.
2403
2403
  * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
2404
2404
  */
2405
- const APP_VERSION = "2.0.0-beta.28";
2406
- // eslint-disable-next-line prettier/prettier
2405
+ const APP_VERSION = "2.0.0-beta.32";
2406
+ // prettier-ignore
2407
2407
  const ES = "es2021";
2408
2408
  const IS_ES_MODERN = true;
2409
2409
  const IS_ES_NEXT = true;
@@ -3369,8 +3369,8 @@ function watch(observeFields, opts) {
3369
3369
  /* harmony export */ });
3370
3370
  /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11612);
3371
3371
  /* harmony import */ var jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71350);
3372
- /* harmony import */ var jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1558);
3373
- /* harmony import */ var jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75208);
3372
+ /* harmony import */ var jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(84621);
3373
+ /* harmony import */ var jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(73076);
3374
3374
  /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(98478);
3375
3375
  /*!
3376
3376
  * Jodit Editor (https://xdsoft.net/jodit/)
@@ -3497,7 +3497,7 @@ class Dom {
3497
3497
  }
3498
3498
  }
3499
3499
  if (withAttributes && Dom.isElement(elm) && Dom.isElement(tag)) {
3500
- (0,jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .qo)(elm.attributes).forEach(attr => {
3500
+ (0,jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .q)(elm.attributes).forEach(attr => {
3501
3501
  tag.setAttribute(attr.name, attr.value);
3502
3502
  });
3503
3503
  }
@@ -3541,7 +3541,7 @@ class Dom {
3541
3541
  else {
3542
3542
  cond = condNoEmptyElement;
3543
3543
  }
3544
- const emptyText = (node) => node.nodeValue == null || (0,jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(node.nodeValue).length === 0;
3544
+ const emptyText = (node) => node.nodeValue == null || (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(node.nodeValue).length === 0;
3545
3545
  if (Dom.isText(node)) {
3546
3546
  return emptyText(node);
3547
3547
  }
@@ -3819,14 +3819,14 @@ class Dom {
3819
3819
  static findNotEmptySibling(node, left) {
3820
3820
  return Dom.findSibling(node, left, n => {
3821
3821
  return (!Dom.isEmptyTextNode(n) &&
3822
- Boolean(!Dom.isText(n) || (n.nodeValue?.length && (0,jodit_core_helpers_string__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n.nodeValue))));
3822
+ Boolean(!Dom.isText(n) || (n.nodeValue?.length && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_3__/* .trim */ .fy)(n.nodeValue))));
3823
3823
  });
3824
3824
  }
3825
3825
  /**
3826
3826
  * Returns the nearest non-empty neighbor
3827
3827
  */
3828
3828
  static findNotEmptyNeighbor(node, left, root) {
3829
- 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);
3829
+ 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);
3830
3830
  }
3831
3831
  static sibling(node, left) {
3832
3832
  return left ? node.previousSibling : node.nextSibling;
@@ -3943,7 +3943,7 @@ class Dom {
3943
3943
  */
3944
3944
  static moveContent(from, to, inStart = false, filter = () => true) {
3945
3945
  const fragment = (from.ownerDocument || document).createDocumentFragment();
3946
- (0,jodit_core_helpers_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .qo)(from.childNodes)
3946
+ (0,jodit_core_helpers_array_to_array__WEBPACK_IMPORTED_MODULE_2__/* .toArray */ .q)(from.childNodes)
3947
3947
  .filter(elm => {
3948
3948
  if (filter(elm)) {
3949
3949
  return true;
@@ -6279,7 +6279,7 @@ function applyStyles(html) {
6279
6279
  }
6280
6280
  });
6281
6281
  convertedString = iframeDoc.firstChild
6282
- ? (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(iframeDoc.body.innerHTML)
6282
+ ? (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(iframeDoc.body.innerHTML)
6283
6283
  : '';
6284
6284
  }
6285
6285
  }
@@ -6291,7 +6291,7 @@ function applyStyles(html) {
6291
6291
  if (convertedString) {
6292
6292
  html = convertedString;
6293
6293
  }
6294
- return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(html
6294
+ return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(html
6295
6295
  .replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g, '')
6296
6296
  .replace(/<!--[^>]*>/g, ''));
6297
6297
  }
@@ -6379,7 +6379,7 @@ function cleanFromWord(html) {
6379
6379
  if (convertedString) {
6380
6380
  html = convertedString;
6381
6381
  }
6382
- html = html.split(/(\n)/).filter(jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f).join('\n');
6382
+ html = html.split(/(\n)/).filter(jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy).join('\n');
6383
6383
  return html
6384
6384
  .replace(/<(\/)?(html|colgroup|col|o:p)[^>]*>/g, '')
6385
6385
  .replace(/<!--[^>]*>/g, '');
@@ -6610,7 +6610,7 @@ function stripTags(html, doc = document, exclude = null) {
6610
6610
  pr.insertBefore(doc.createTextNode(' '), nx);
6611
6611
  }
6612
6612
  });
6613
- return restoreTags((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(tmp.innerText));
6613
+ return restoreTags((0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(tmp.innerText));
6614
6614
  }
6615
6615
  function restoreTags(content) {
6616
6616
  return content.replace(/%%%(\/)?jodit(-single)?-([\w\n]+)%%%/g, (_, isClosed, isSingle, tag) => `<${isClosed ? '/' : ''}${tag}>`);
@@ -6690,6 +6690,7 @@ __webpack_require__.r(__webpack_exports__);
6690
6690
  /* harmony export */ stripTags: function() { return /* reexport safe */ _html__WEBPACK_IMPORTED_MODULE_5__.oN; },
6691
6691
  /* harmony export */ toArray: function() { return /* reexport safe */ _array__WEBPACK_IMPORTED_MODULE_1__.qo; },
6692
6692
  /* harmony export */ trim: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.fy; },
6693
+ /* harmony export */ trimChars: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.cE; },
6693
6694
  /* harmony export */ trimInv: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.as; },
6694
6695
  /* harmony export */ ucfirst: function() { return /* reexport safe */ _string__WEBPACK_IMPORTED_MODULE_8__.Ps; }
6695
6696
  /* harmony export */ });
@@ -6803,7 +6804,7 @@ const normalizeColor = (colorInput) => {
6803
6804
  if (!color) {
6804
6805
  return false;
6805
6806
  }
6806
- color = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(color.toUpperCase());
6807
+ color = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(color.toUpperCase());
6807
6808
  color = color.substring(1);
6808
6809
  if (color.length === 3) {
6809
6810
  for (let i = 0; i < 3; i += 1) {
@@ -6911,7 +6912,7 @@ function normalizeKeyAliases(keys) {
6911
6912
  return keys
6912
6913
  .replace(/\+\+/g, '+add')
6913
6914
  .split(/[\s]*\+[\s]*/)
6914
- .map(key => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(key.toLowerCase()))
6915
+ .map(key => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(key.toLowerCase()))
6915
6916
  .map(key => jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.KEY_ALIASES[key] || key)
6916
6917
  .sort((a, b) => {
6917
6918
  if (order[a] && !order[b]) {
@@ -6983,7 +6984,7 @@ const normalizeLicense = (license, count = 8) => {
6983
6984
  */
6984
6985
  const normalizePath = (...path) => {
6985
6986
  return path
6986
- .filter(part => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(part).length)
6987
+ .filter(part => (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(part).length)
6987
6988
  .map((part, index) => {
6988
6989
  part = part.replace(/([^:])[\\/]+/g, '$1/');
6989
6990
  if (index) {
@@ -7059,9 +7060,9 @@ const normalizeRelativePath = (path) => {
7059
7060
  /**
7060
7061
  * Normalize value to CSS meters
7061
7062
  */
7062
- const normalizeSize = (value) => {
7063
+ const normalizeSize = (value, units) => {
7063
7064
  if (/^[0-9]+$/.test(value.toString())) {
7064
- return value + 'px';
7065
+ return value + units;
7065
7066
  }
7066
7067
  return value.toString();
7067
7068
  };
@@ -7555,9 +7556,10 @@ function i18n(key, params, options) {
7555
7556
  /* harmony export */ Pz: function() { return /* reexport safe */ _stringify__WEBPACK_IMPORTED_MODULE_4__.P; },
7556
7557
  /* harmony export */ Qy: function() { return /* reexport safe */ _fuzzy_search_index__WEBPACK_IMPORTED_MODULE_1__.Q; },
7557
7558
  /* harmony export */ ag: function() { return /* reexport safe */ _i18n__WEBPACK_IMPORTED_MODULE_2__.a; },
7558
- /* harmony export */ as: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.a; },
7559
+ /* harmony export */ as: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.as; },
7560
+ /* harmony export */ cE: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.cE; },
7559
7561
  /* harmony export */ eV: function() { return /* reexport safe */ _camel_case__WEBPACK_IMPORTED_MODULE_0__.e; },
7560
- /* harmony export */ fy: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.f; },
7562
+ /* harmony export */ fy: function() { return /* reexport safe */ _trim__WEBPACK_IMPORTED_MODULE_5__.fy; },
7561
7563
  /* harmony export */ gB: function() { return /* reexport safe */ _i18n__WEBPACK_IMPORTED_MODULE_2__.g; },
7562
7564
  /* harmony export */ gP: function() { return /* reexport safe */ _kebab_case__WEBPACK_IMPORTED_MODULE_3__.g; }
7563
7565
  /* harmony export */ });
@@ -7664,8 +7666,9 @@ function stringify(value, options = {}) {
7664
7666
 
7665
7667
  "use strict";
7666
7668
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7667
- /* harmony export */ a: function() { return /* binding */ trimInv; },
7668
- /* harmony export */ f: function() { return /* binding */ trim; }
7669
+ /* harmony export */ as: function() { return /* binding */ trimInv; },
7670
+ /* harmony export */ cE: function() { return /* binding */ trimChars; },
7671
+ /* harmony export */ fy: function() { return /* binding */ trim; }
7669
7672
  /* harmony export */ });
7670
7673
  /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11612);
7671
7674
  /*!
@@ -7686,6 +7689,11 @@ function trim(value) {
7686
7689
  .replace((0,jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.SPACE_REG_EXP_END)(), '')
7687
7690
  .replace((0,jodit_core_constants__WEBPACK_IMPORTED_MODULE_0__.SPACE_REG_EXP_START)(), '');
7688
7691
  }
7692
+ function trimChars(value, chars) {
7693
+ return value
7694
+ .replace(RegExp(`[${chars}]+$`), '')
7695
+ .replace(RegExp(`^[${chars}]+`), '');
7696
+ }
7689
7697
  /**
7690
7698
  * Trim only invisible chars
7691
7699
  */
@@ -8297,6 +8305,7 @@ const convertMediaUrlToVideoEmbed = (url, width = 400, height = 345) => {
8297
8305
  * Get the value of a computed style property for the first element in the set of matched elements or set one or
8298
8306
  * more CSS properties for every matched element
8299
8307
  *
8308
+ * @param element - HTML element
8300
8309
  * @param key - An object of property-value pairs to set. A CSS property name.
8301
8310
  * @param value - A value to set for the property.
8302
8311
  * @param onlyStyleMode - Get value from style attribute, without calculating
@@ -11766,7 +11775,7 @@ function extractSelectedPart(wrapper, font, jodit) {
11766
11775
  */
11767
11776
  function extractAndMove(wrapper, range, left) {
11768
11777
  const fragment = range.extractContents();
11769
- if ((!fragment.textContent || !(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(fragment.textContent).length) &&
11778
+ if ((!fragment.textContent || !(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(fragment.textContent).length) &&
11770
11779
  fragment.firstChild) {
11771
11780
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.unwrap(fragment.firstChild);
11772
11781
  }
@@ -11987,16 +11996,19 @@ void 0;
11987
11996
  void 0;
11988
11997
  void 0;
11989
11998
  /**
11990
- * Element has the similar styles
11999
+ * Element has the similar styles keys
11991
12000
  */
11992
12001
  function hasSameStyleKeys(elm, rules) {
11993
12002
  return Boolean(!jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTag(elm, 'font') &&
11994
12003
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isHTMLElement(elm) &&
11995
12004
  Object.keys(rules).every(property => {
11996
12005
  const value = (0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_2__/* .css */ .i)(elm, property, true);
11997
- return !(0,jodit_core_helpers_checker_is_void__WEBPACK_IMPORTED_MODULE_3__/* .isVoid */ .n)(value);
12006
+ return value !== '';
11998
12007
  }));
11999
12008
  }
12009
+ const elm2 = document.createElement('div');
12010
+ elm2.style.color = 'red';
12011
+ void 0;
12000
12012
  void 0;
12001
12013
  void 0;
12002
12014
 
@@ -12018,8 +12030,8 @@ void 0;
12018
12030
  /* harmony export */ iN: function() { return /* reexport safe */ _toggle_attributes__WEBPACK_IMPORTED_MODULE_0__.i; },
12019
12031
  /* harmony export */ ig: function() { return /* reexport safe */ _extract__WEBPACK_IMPORTED_MODULE_4__.i; },
12020
12032
  /* harmony export */ pe: function() { return /* reexport safe */ _is_same_attributes__WEBPACK_IMPORTED_MODULE_9__.p; },
12021
- /* harmony export */ re: function() { return /* reexport safe */ _wrap__WEBPACK_IMPORTED_MODULE_13__.r; },
12022
- /* harmony export */ ys: function() { return /* reexport safe */ _is_suit_element__WEBPACK_IMPORTED_MODULE_11__.ys; }
12033
+ /* harmony export */ qb: function() { return /* reexport safe */ _is_suit_element__WEBPACK_IMPORTED_MODULE_11__.qb; },
12034
+ /* harmony export */ re: function() { return /* reexport safe */ _wrap__WEBPACK_IMPORTED_MODULE_13__.r; }
12023
12035
  /* harmony export */ });
12024
12036
  /* harmony import */ var _toggle_attributes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(91335);
12025
12037
  /* harmony import */ var _list_toggle_ordered_list__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(70839);
@@ -12175,7 +12187,7 @@ function elementsEqualAttributes(elm1, elm2) {
12175
12187
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
12176
12188
  /* harmony export */ Dd: function() { return /* binding */ isSameStyleChild; },
12177
12189
  /* harmony export */ fB: function() { return /* binding */ isSuitElement; },
12178
- /* harmony export */ ys: function() { return /* binding */ findSuitClosest; }
12190
+ /* harmony export */ qb: function() { return /* binding */ suitableClosest; }
12179
12191
  /* harmony export */ });
12180
12192
  /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44913);
12181
12193
  /* harmony import */ var _is_normal_node__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16640);
@@ -12191,25 +12203,35 @@ function elementsEqualAttributes(elm1, elm2) {
12191
12203
  * @param commitStyle - style commit
12192
12204
  * @param elm - checked item
12193
12205
  * @param strict - strict mode - false - the default tag is suitable for us if it is also in the commit
12206
+ * @param strictStyle - strict style mode - true - the element has the same style keys as in the commit, but not their values
12194
12207
  * @private
12195
12208
  */
12196
- function isSuitElement(commitStyle, elm, strict) {
12197
- if (!elm) {
12209
+ function isSuitElement(commitStyle, elm, strict, strictStyle = true) {
12210
+ if (!elm || !(0,_is_normal_node__WEBPACK_IMPORTED_MODULE_1__/* .isNormalNode */ .c)(elm)) {
12198
12211
  return false;
12199
12212
  }
12200
12213
  const { element, elementIsDefault, options } = commitStyle;
12214
+ if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isList(elm) && commitStyle.elementIsList) {
12215
+ return true;
12216
+ }
12217
+ const elmIsSame = jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTag(elm, element);
12218
+ if (elmIsSame && !(elementIsDefault && strict)) {
12219
+ return true;
12220
+ }
12201
12221
  const elmHasSameStyle = Boolean(options.attributes?.style &&
12202
- (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyle */ .k)(elm, options.attributes.style));
12203
- const elmIsSame = elm.nodeName.toLowerCase() === element ||
12204
- (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isList(elm) && commitStyle.elementIsList);
12205
- if (((!elementIsDefault || !strict) && elmIsSame) ||
12206
- (elmHasSameStyle && (0,_is_normal_node__WEBPACK_IMPORTED_MODULE_1__/* .isNormalNode */ .c)(elm) && !commitStyle.elementIsList)) {
12222
+ (strictStyle
12223
+ ? (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyle */ .k)(elm, options.attributes.style)
12224
+ : (0,_has_same_style__WEBPACK_IMPORTED_MODULE_2__/* .hasSameStyleKeys */ .Y)(elm, options.attributes.style)));
12225
+ if (elmHasSameStyle && !commitStyle.elementIsList) {
12207
12226
  return true;
12208
12227
  }
12209
- return Boolean(!elmIsSame && !strict && elementIsDefault && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isInlineBlock(elm));
12228
+ return !elmIsSame && !strict && elementIsDefault && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isInlineBlock(elm);
12210
12229
  }
12211
- function findSuitClosest(commitStyle, element, root) {
12212
- return jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.closest(element, node => isSuitElement(commitStyle, node, true), root);
12230
+ /**
12231
+ * @private
12232
+ */
12233
+ function suitableClosest(commitStyle, element, root) {
12234
+ return jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.closest(element, node => isSuitElement(commitStyle, node, true, false), root);
12213
12235
  }
12214
12236
  /**
12215
12237
  * Inside the parent element there is a block with the same styles
@@ -12219,6 +12241,7 @@ function findSuitClosest(commitStyle, element, root) {
12219
12241
  * <p>|test<strong>test</strong>|</p>
12220
12242
  * ```
12221
12243
  * Apply `{element:'strong'}`
12244
+ * @private
12222
12245
  */
12223
12246
  function isSameStyleChild(commitStyle, elm) {
12224
12247
  const { element, options } = commitStyle;
@@ -12945,7 +12968,7 @@ const transactions = {
12945
12968
  if (elm) {
12946
12969
  return { ...value, next: states.ELEMENT, element: elm };
12947
12970
  }
12948
- const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .findSuitClosest */ .ys)(style, element, jodit.editor);
12971
+ const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .suitableClosest */ .qb)(style, element, jodit.editor);
12949
12972
  if (style.elementIsList && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isList(suit)) {
12950
12973
  return { ...value, next: states.LIST };
12951
12974
  }
@@ -12993,7 +13016,7 @@ const transactions = {
12993
13016
  [states.EXTRACT]: {
12994
13017
  exec(value) {
12995
13018
  const { element, jodit, style } = value;
12996
- const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .findSuitClosest */ .ys)(style, element, jodit.editor);
13019
+ const suit = (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .suitableClosest */ .qb)(style, element, jodit.editor);
12997
13020
  void 0;
12998
13021
  if (!style.elementIsBlock) {
12999
13022
  (0,jodit_core_selection_style_api__WEBPACK_IMPORTED_MODULE_1__/* .extractSelectedPart */ .ig)(suit, element, jodit);
@@ -13691,6 +13714,7 @@ let UIButton = class UIButton extends jodit_core_ui_element__WEBPACK_IMPORTED_MO
13691
13714
  UIButton = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
13692
13715
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.component
13693
13716
  ], UIButton);
13717
+
13694
13718
  function Button(jodit, stateOrText, text, variant) {
13695
13719
  const button = new UIButton(jodit);
13696
13720
  button.state.tabIndex = jodit.o.allowTabNavigation ? 0 : -1;
@@ -13799,6 +13823,7 @@ UIButtonGroup = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
13799
13823
  ], UIButtonGroup);
13800
13824
 
13801
13825
 
13826
+
13802
13827
  /***/ }),
13803
13828
 
13804
13829
  /***/ 29788:
@@ -13855,9 +13880,9 @@ UIButtonGroup = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
13855
13880
  var UITooltip_1;
13856
13881
 
13857
13882
  /**
13858
- * [[include:plugins/tooltip/README.md]]
13883
+ * [[include:core/ui/button/tooltip/README.md]]
13859
13884
  * @packageDocumentation
13860
- * @module plugins/tooltip
13885
+ * @module ui/button
13861
13886
  */
13862
13887
 
13863
13888
 
@@ -14028,6 +14053,7 @@ UITooltip = UITooltip_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */
14028
14053
  ], UITooltip);
14029
14054
 
14030
14055
 
14056
+
14031
14057
  /***/ }),
14032
14058
 
14033
14059
  /***/ 84789:
@@ -14187,6 +14213,7 @@ UIElement = UIElement_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
14187
14213
  ], UIElement);
14188
14214
 
14189
14215
 
14216
+
14190
14217
  /***/ }),
14191
14218
 
14192
14219
  /***/ 87043:
@@ -14207,7 +14234,7 @@ UIElement = UIElement_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
14207
14234
  */
14208
14235
 
14209
14236
  /**
14210
- * @module ui/form/block
14237
+ * @module ui/form
14211
14238
  */
14212
14239
 
14213
14240
 
@@ -14237,6 +14264,7 @@ UIBlock = (0,tslib__WEBPACK_IMPORTED_MODULE_2__/* .__decorate */ .gn)([
14237
14264
  ], UIBlock);
14238
14265
 
14239
14266
 
14267
+
14240
14268
  /***/ }),
14241
14269
 
14242
14270
  /***/ 23741:
@@ -14320,6 +14348,7 @@ UIForm = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .gn)([
14320
14348
  ], UIForm);
14321
14349
 
14322
14350
 
14351
+
14323
14352
  /***/ }),
14324
14353
 
14325
14354
  /***/ 61916:
@@ -14402,6 +14431,7 @@ UITextArea = UITextArea_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate
14402
14431
  ], UITextArea);
14403
14432
 
14404
14433
 
14434
+
14405
14435
  /***/ }),
14406
14436
 
14407
14437
  /***/ 98341:
@@ -14491,6 +14521,7 @@ UICheckbox = UICheckbox_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate
14491
14521
  ], UICheckbox);
14492
14522
 
14493
14523
 
14524
+
14494
14525
  /***/ }),
14495
14526
 
14496
14527
  /***/ 12411:
@@ -14564,6 +14595,7 @@ UIFileInput = (0,tslib__WEBPACK_IMPORTED_MODULE_2__/* .__decorate */ .gn)([
14564
14595
  ], UIFileInput);
14565
14596
 
14566
14597
 
14598
+
14567
14599
  /***/ }),
14568
14600
 
14569
14601
  /***/ 78862:
@@ -14837,6 +14869,7 @@ UIInput = UIInput_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn
14837
14869
  ], UIInput);
14838
14870
 
14839
14871
 
14872
+
14840
14873
  /***/ }),
14841
14874
 
14842
14875
  /***/ 54214:
@@ -14927,6 +14960,7 @@ UISelect = UISelect_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .
14927
14960
  ], UISelect);
14928
14961
 
14929
14962
 
14963
+
14930
14964
  /***/ }),
14931
14965
 
14932
14966
  /***/ 71713:
@@ -14975,7 +15009,7 @@ __webpack_require__.r(__webpack_exports__);
14975
15009
  * Input is required
14976
15010
  */
14977
15011
  const required = function (input) {
14978
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(input.value).length) {
15012
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(input.value).length) {
14979
15013
  input.error = 'Please fill out this field';
14980
15014
  return false;
14981
15015
  }
@@ -14985,7 +15019,7 @@ const required = function (input) {
14985
15019
  * Input value should be valid URL
14986
15020
  */
14987
15021
  const url = function (input) {
14988
- 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))) {
15022
+ 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))) {
14989
15023
  input.error = 'Please enter a web address';
14990
15024
  return false;
14991
15025
  }
@@ -15013,7 +15047,7 @@ const url = function (input) {
15013
15047
  * Select is required
15014
15048
  */
15015
15049
  const required = function (select) {
15016
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(select.value).length) {
15050
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(select.value).length) {
15017
15051
  select.error = 'Please fill out this field';
15018
15052
  return false;
15019
15053
  }
@@ -15058,7 +15092,6 @@ var UIGroup_1;
15058
15092
 
15059
15093
 
15060
15094
  let UIGroup = UIGroup_1 = class UIGroup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u {
15061
- /** @override */
15062
15095
  className() {
15063
15096
  return 'UIGroup';
15064
15097
  }
@@ -15076,7 +15109,6 @@ let UIGroup = UIGroup_1 = class UIGroup extends jodit_core_ui_element__WEBPACK_I
15076
15109
  stack.push(...elm);
15077
15110
  }
15078
15111
  else if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(elm, UIGroup_1)) {
15079
- // @ts-ignore
15080
15112
  stack.push(...elm.elements);
15081
15113
  }
15082
15114
  else {
@@ -15178,6 +15210,7 @@ UIGroup = UIGroup_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn
15178
15210
  ], UIGroup);
15179
15211
 
15180
15212
 
15213
+
15181
15214
  /***/ }),
15182
15215
 
15183
15216
  /***/ 5217:
@@ -15320,7 +15353,14 @@ let UIList = class UIList extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MO
15320
15353
  }
15321
15354
  default:
15322
15355
  lastBtnSeparator = false;
15323
- elm = this.makeButton(control, target);
15356
+ switch (control.component) {
15357
+ case 'select':
15358
+ elm = this.makeSelect(control, target);
15359
+ break;
15360
+ case 'button':
15361
+ default:
15362
+ elm = this.makeButton(control, target);
15363
+ }
15324
15364
  }
15325
15365
  if (elm) {
15326
15366
  if (!group) {
@@ -15355,11 +15395,16 @@ let UIList = class UIList extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MO
15355
15395
  this.update();
15356
15396
  return this;
15357
15397
  }
15398
+ makeSelect(control, target) {
15399
+ throw new Error('Not implemented behaviour');
15400
+ }
15358
15401
  /**
15359
15402
  * Create button instance
15360
15403
  */
15361
15404
  makeButton(control, target) {
15362
- return new jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_5__/* .UIButton */ .y3(this.j);
15405
+ return new jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_5__/* .UIButton */ .y3(this.j, {
15406
+ name: control.name
15407
+ });
15363
15408
  }
15364
15409
  };
15365
15410
  (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
@@ -15370,6 +15415,7 @@ UIList = (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
15370
15415
  ], UIList);
15371
15416
 
15372
15417
 
15418
+
15373
15419
  /***/ }),
15374
15420
 
15375
15421
  /***/ 82388:
@@ -15403,6 +15449,7 @@ UISeparator = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
15403
15449
  ], UISeparator);
15404
15450
 
15405
15451
 
15452
+
15406
15453
  /***/ }),
15407
15454
 
15408
15455
  /***/ 41131:
@@ -15436,6 +15483,7 @@ UISpacer = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
15436
15483
  ], UISpacer);
15437
15484
 
15438
15485
 
15486
+
15439
15487
  /***/ }),
15440
15488
 
15441
15489
  /***/ 77549:
@@ -15540,10 +15588,17 @@ function findControlType(path, controls) {
15540
15588
  else {
15541
15589
  key = namespaceOrKey;
15542
15590
  }
15591
+ const list = store[key]?.list;
15543
15592
  return store[key]
15544
15593
  ? {
15545
15594
  name: key,
15546
- ...(0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.ConfigFlatten)(store[key])
15595
+ ...(0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.ConfigFlatten)(store[key]),
15596
+ list: (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__.isArray)(list)
15597
+ ? list.reduce((acc, k) => {
15598
+ acc[k] = k;
15599
+ return acc;
15600
+ }, {})
15601
+ : list
15547
15602
  }
15548
15603
  : undefined;
15549
15604
  }
@@ -15650,7 +15705,10 @@ class Icon {
15650
15705
  let iconElement;
15651
15706
  const { name, iconURL, fill } = icon;
15652
15707
  const clearName = name.replace(/[^a-zA-Z0-9]/g, '_');
15653
- const iconFromEvent = jodit.o.getIcon?.(name, clearName);
15708
+ let iconFromEvent;
15709
+ if (!/<svg/.test(name)) {
15710
+ iconFromEvent = jodit.o.getIcon?.(name, clearName);
15711
+ }
15654
15712
  const cacheKey = `${name}${iconURL}${fill}${iconFromEvent ?? ''}`;
15655
15713
  if (jodit.o.cache && this.__cache.has(cacheKey)) {
15656
15714
  return this.__cache.get(cacheKey)?.cloneNode(true);
@@ -15766,15 +15824,16 @@ Icon.__cache = new Map();
15766
15824
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
15767
15825
  /* harmony export */ G: function() { return /* binding */ Popup; }
15768
15826
  /* harmony export */ });
15769
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(97582);
15827
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(97582);
15770
15828
  /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(44913);
15771
15829
  /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(95582);
15772
15830
  /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52378);
15773
15831
  /* 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__);
15774
- /* harmony import */ var jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(84789);
15775
- /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(50526);
15776
- /* harmony import */ var jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(79467);
15777
- /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(81160);
15832
+ /* harmony import */ var jodit_core_ui_group_group__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(91630);
15833
+ /* harmony import */ var jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(84789);
15834
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(50526);
15835
+ /* harmony import */ var jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(79467);
15836
+ /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(81160);
15778
15837
  /*!
15779
15838
  * Jodit Editor (https://xdsoft.net/jodit/)
15780
15839
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -15794,6 +15853,7 @@ Icon.__cache = new Map();
15794
15853
 
15795
15854
 
15796
15855
 
15856
+
15797
15857
  const EVENTS_FOR_AUTOCLOSE = [
15798
15858
  'escape',
15799
15859
  'cut',
@@ -15801,25 +15861,28 @@ const EVENTS_FOR_AUTOCLOSE = [
15801
15861
  'backSpaceAfterDelete',
15802
15862
  'beforeCommandDelete'
15803
15863
  ];
15804
- class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u {
15805
- /** @override */
15864
+ class Popup extends jodit_core_ui_group_group__WEBPACK_IMPORTED_MODULE_3__/* .UIGroup */ .q {
15806
15865
  className() {
15807
15866
  return 'Popup';
15808
15867
  }
15809
- /** @override */
15868
+ appendChildToContainer(childContainer) {
15869
+ const content = this.getElm('content');
15870
+ void 0;
15871
+ content.appendChild(childContainer);
15872
+ }
15810
15873
  updateParentElement(target) {
15811
- if (target !== this && jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(target, Popup)) {
15812
- this.childrenPopups.forEach(popup => {
15874
+ if (target !== this && jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__/* .Component */ .w.isInstanceOf(target, Popup)) {
15875
+ this.__childrenPopups.forEach(popup => {
15813
15876
  if (!target.closest(popup) && popup.isOpened) {
15814
15877
  popup.close();
15815
15878
  }
15816
15879
  });
15817
- if (!this.childrenPopups.has(target)) {
15880
+ if (!this.__childrenPopups.has(target)) {
15818
15881
  this.j.e.on(target, 'beforeClose', () => {
15819
- this.childrenPopups.delete(target);
15882
+ this.__childrenPopups.delete(target);
15820
15883
  });
15821
15884
  }
15822
- this.childrenPopups.add(target);
15885
+ this.__childrenPopups.add(target);
15823
15886
  }
15824
15887
  return super.updateParentElement(target);
15825
15888
  }
@@ -15827,21 +15890,18 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15827
15890
  * Set popup content
15828
15891
  */
15829
15892
  setContent(content) {
15830
- jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.detach(this.container);
15831
- const box = this.j.c.div(`${this.componentName}__content`);
15832
- let elm;
15833
- if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_5__/* .Component */ .w.isInstanceOf(content, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u)) {
15834
- elm = content.container;
15835
- content.parentElement = this;
15893
+ if (this.allChildren.length) {
15894
+ throw new Error('Remove children');
15836
15895
  }
15837
- else if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.isString)(content)) {
15838
- elm = this.j.c.fromHTML(content);
15896
+ if (jodit_core_component_component__WEBPACK_IMPORTED_MODULE_6__/* .Component */ .w.isInstanceOf(content, jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u)) {
15897
+ this.append(content);
15839
15898
  }
15840
15899
  else {
15841
- elm = content;
15900
+ const elm = (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.isString)(content)
15901
+ ? this.j.c.fromHTML(content)
15902
+ : content;
15903
+ this.appendChildToContainer(elm);
15842
15904
  }
15843
- box.appendChild(elm);
15844
- this.container.appendChild(box);
15845
15905
  this.updatePosition();
15846
15906
  return this;
15847
15907
  }
@@ -15850,17 +15910,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15850
15910
  */
15851
15911
  open(getBound, keepPosition = false, parentContainer) {
15852
15912
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.markOwner)(this.jodit, this.container);
15853
- this.calculateZIndex();
15913
+ this.__calculateZIndex();
15854
15914
  this.isOpened = true;
15855
- this.addGlobalListeners();
15856
- this.targetBound = !keepPosition
15915
+ this.__addGlobalListeners();
15916
+ this.__targetBound = !keepPosition
15857
15917
  ? getBound
15858
15918
  : this.getKeepBound(getBound);
15859
15919
  if (parentContainer) {
15860
15920
  parentContainer.appendChild(this.container);
15861
15921
  }
15862
15922
  else {
15863
- const popupContainer = (0,jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .getContainer */ .ZO)(this.jodit, Popup);
15923
+ const popupContainer = (0,jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .getContainer */ .ZO)(this.jodit, Popup);
15864
15924
  if (parentContainer !== this.container.parentElement) {
15865
15925
  popupContainer.appendChild(this.container);
15866
15926
  }
@@ -15870,7 +15930,7 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15870
15930
  this.j.e.fire('afterOpenPopup', this);
15871
15931
  return this;
15872
15932
  }
15873
- calculateZIndex() {
15933
+ __calculateZIndex() {
15874
15934
  if (this.container.style.zIndex) {
15875
15935
  return;
15876
15936
  }
@@ -15896,7 +15956,7 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15896
15956
  return;
15897
15957
  }
15898
15958
  if (!pe.parentElement && pe.container.parentElement) {
15899
- 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);
15959
+ 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);
15900
15960
  if (elm) {
15901
15961
  pe = elm;
15902
15962
  continue;
@@ -15935,22 +15995,22 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
15935
15995
  if (!this.isOpened) {
15936
15996
  return this;
15937
15997
  }
15938
- const [pos, strategy] = this.calculatePosition(this.targetBound(), this.viewBound(), (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.position)(this.container, this.j));
15998
+ const [pos, strategy] = this.__calculatePosition(this.__targetBound(), this.viewBound(), (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.position)(this.container, this.j));
15939
15999
  this.setMod('strategy', strategy);
15940
16000
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.css)(this.container, {
15941
16001
  left: pos.left,
15942
16002
  top: pos.top
15943
16003
  });
15944
- this.childrenPopups.forEach(popup => popup.updatePosition());
16004
+ this.__childrenPopups.forEach(popup => popup.updatePosition());
15945
16005
  return this;
15946
16006
  }
15947
- throttleUpdatePosition() {
16007
+ __throttleUpdatePosition() {
15948
16008
  this.updatePosition();
15949
16009
  }
15950
16010
  /**
15951
16011
  * Calculate start point
15952
16012
  */
15953
- calculatePosition(target, view, container, defaultStrategy = this.strategy) {
16013
+ __calculatePosition(target, view, container, defaultStrategy = this.strategy) {
15954
16014
  const x = {
15955
16015
  left: target.left,
15956
16016
  right: target.left - (container.width - target.width)
@@ -16011,17 +16071,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
16011
16071
  return this;
16012
16072
  }
16013
16073
  this.isOpened = false;
16014
- this.childrenPopups.forEach(popup => popup.close());
16074
+ this.__childrenPopups.forEach(popup => popup.close());
16015
16075
  this.j.e.fire(this, 'beforeClose');
16016
16076
  this.j.e.fire('beforePopupClose', this);
16017
- this.removeGlobalListeners();
16077
+ this.__removeGlobalListeners();
16018
16078
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.safeRemove(this.container);
16019
16079
  return this;
16020
16080
  }
16021
16081
  /**
16022
16082
  * Close popup if click was in outside
16023
16083
  */
16024
- closeOnOutsideClick(e) {
16084
+ __closeOnOutsideClick(e) {
16025
16085
  if (!this.isOpened || this.isOwnClick(e)) {
16026
16086
  return;
16027
16087
  }
@@ -16031,17 +16091,17 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
16031
16091
  if (!e.target) {
16032
16092
  return false;
16033
16093
  }
16034
- const box = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .u.closestElement(e.target, Popup);
16094
+ const box = jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_4__/* .UIElement */ .u.closestElement(e.target, Popup);
16035
16095
  return Boolean(box && (this === box || box.closest(this)));
16036
16096
  }
16037
- addGlobalListeners() {
16038
- const up = this.throttleUpdatePosition, ow = this.ow;
16039
- jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .eventEmitter */ .TB.on('closeAllPopups', this.close);
16097
+ __addGlobalListeners() {
16098
+ const up = this.__throttleUpdatePosition, ow = this.ow;
16099
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .eventEmitter */ .TB.on('closeAllPopups', this.close);
16040
16100
  if (this.smart) {
16041
16101
  this.j.e
16042
16102
  .on(EVENTS_FOR_AUTOCLOSE, this.close)
16043
- .on('mousedown touchstart', this.closeOnOutsideClick)
16044
- .on(ow, 'mousedown touchstart', this.closeOnOutsideClick);
16103
+ .on('mousedown touchstart', this.__closeOnOutsideClick)
16104
+ .on(ow, 'mousedown touchstart', this.__closeOnOutsideClick);
16045
16105
  }
16046
16106
  this.j.e
16047
16107
  .on('closeAllPopups', this.close)
@@ -16053,14 +16113,14 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
16053
16113
  box && this.j.e.on(box, 'scroll mousewheel', up);
16054
16114
  });
16055
16115
  }
16056
- removeGlobalListeners() {
16057
- const up = this.throttleUpdatePosition, ow = this.ow;
16058
- jodit_core_global__WEBPACK_IMPORTED_MODULE_6__/* .eventEmitter */ .TB.off('closeAllPopups', this.close);
16116
+ __removeGlobalListeners() {
16117
+ const up = this.__throttleUpdatePosition, ow = this.ow;
16118
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_7__/* .eventEmitter */ .TB.off('closeAllPopups', this.close);
16059
16119
  if (this.smart) {
16060
16120
  this.j.e
16061
16121
  .off(EVENTS_FOR_AUTOCLOSE, this.close)
16062
- .off('mousedown touchstart', this.closeOnOutsideClick)
16063
- .off(ow, 'mousedown touchstart', this.closeOnOutsideClick);
16122
+ .off('mousedown touchstart', this.__closeOnOutsideClick)
16123
+ .off(ow, 'mousedown touchstart', this.__closeOnOutsideClick);
16064
16124
  }
16065
16125
  this.j.e
16066
16126
  .off('closeAllPopups', this.close)
@@ -16090,28 +16150,33 @@ class Popup extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElem
16090
16150
  width: this.ow.innerWidth,
16091
16151
  height: this.ow.innerHeight
16092
16152
  });
16093
- this.childrenPopups = new Set();
16153
+ this.__childrenPopups = new Set();
16094
16154
  (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_1__.attr)(this.container, 'role', 'popup');
16095
16155
  }
16156
+ render() {
16157
+ return `<div>
16158
+ <div class="&__content"></div>
16159
+ </div>`;
16160
+ }
16096
16161
  /** @override **/
16097
16162
  destruct() {
16098
16163
  this.close();
16099
16164
  return super.destruct();
16100
16165
  }
16101
16166
  }
16102
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
16103
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16167
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16168
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16104
16169
  ], Popup.prototype, "updatePosition", null);
16105
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
16106
- (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.throttle)(10),
16107
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16108
- ], Popup.prototype, "throttleUpdatePosition", null);
16109
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
16110
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16170
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16171
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.throttle)(10),
16172
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16173
+ ], Popup.prototype, "__throttleUpdatePosition", null);
16174
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16175
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16111
16176
  ], Popup.prototype, "close", null);
16112
- (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
16113
- jodit_core_decorators__WEBPACK_IMPORTED_MODULE_4__.autobind
16114
- ], Popup.prototype, "closeOnOutsideClick", null);
16177
+ (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
16178
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
16179
+ ], Popup.prototype, "__closeOnOutsideClick", null);
16115
16180
 
16116
16181
 
16117
16182
  /***/ }),
@@ -16304,7 +16369,7 @@ class ViewWithToolbar extends jodit_core_view_view__WEBPACK_IMPORTED_MODULE_0__/
16304
16369
  /** @override **/
16305
16370
  constructor(options, isJodit = false) {
16306
16371
  super(options, isJodit);
16307
- this.toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeCollection */ .R)(this);
16372
+ this.toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeCollection */ .RP)(this);
16308
16373
  this.defaultToolbarContainer = this.c.div('jodit-toolbar__box');
16309
16374
  this.registeredButtons = new Set();
16310
16375
  this.groupToButtons = {};
@@ -16613,6 +16678,7 @@ View.esModern = jodit_core_constants__WEBPACK_IMPORTED_MODULE_2__.IS_ES_MODERN;
16613
16678
  View = View_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
16614
16679
  (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)
16615
16680
  ], View);
16681
+
16616
16682
  View.defaultOptions = {
16617
16683
  extraButtons: [],
16618
16684
  cache: true,
@@ -17974,6 +18040,7 @@ Jodit.core = {
17974
18040
  Jodit = Jodit_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
17975
18041
  (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_5__.derive)(jodit_core_traits_dlgs__WEBPACK_IMPORTED_MODULE_6__/* .Dlgs */ .l)
17976
18042
  ], Jodit);
18043
+
17977
18044
  function addClassNames(className, elm) {
17978
18045
  if (className) {
17979
18046
  className.split(/\s+/).forEach(cn => elm.classList.add(cn));
@@ -18157,6 +18224,7 @@ ContextMenu = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
18157
18224
  ], ContextMenu);
18158
18225
 
18159
18226
 
18227
+
18160
18228
  /***/ }),
18161
18229
 
18162
18230
  /***/ 24040:
@@ -18899,6 +18967,7 @@ Dialog = (0,tslib__WEBPACK_IMPORTED_MODULE_13__/* .__decorate */ .gn)([
18899
18967
  ], Dialog);
18900
18968
 
18901
18969
 
18970
+
18902
18971
  /***/ }),
18903
18972
 
18904
18973
  /***/ 2932:
@@ -19587,7 +19656,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.filebrowser
19587
19656
  },
19588
19657
  filter: {
19589
19658
  isInput: true,
19590
- getContent: (filebrowser, _, b) => {
19659
+ getContent: (filebrowser, b) => {
19591
19660
  const oldInput = b.container.querySelector('.jodit-input');
19592
19661
  if (oldInput) {
19593
19662
  return oldInput;
@@ -20523,6 +20592,7 @@ let FileBrowser = class FileBrowser extends jodit_core_view_view_with_toolbar__W
20523
20592
  FileBrowser = (0,tslib__WEBPACK_IMPORTED_MODULE_19__/* .__decorate */ .gn)([
20524
20593
  (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_10__.derive)(jodit_core_traits_dlgs__WEBPACK_IMPORTED_MODULE_15__/* .Dlgs */ .l)
20525
20594
  ], FileBrowser);
20595
+
20526
20596
  /**
20527
20597
  * @private
20528
20598
  */
@@ -22163,6 +22233,7 @@ ImageEditor.calcValueByPercent = (value, percent) => {
22163
22233
  ImageEditor = ImageEditor_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_8__/* .__decorate */ .gn)([
22164
22234
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_6__.component
22165
22235
  ], ImageEditor);
22236
+
22166
22237
  /**
22167
22238
  * Open Image Editor
22168
22239
  */
@@ -22317,10 +22388,11 @@ __webpack_require__.r(__webpack_exports__);
22317
22388
  /* harmony export */ Snapshot: function() { return /* reexport safe */ _history_snapshot__WEBPACK_IMPORTED_MODULE_16__.a; },
22318
22389
  /* harmony export */ StatusBar: function() { return /* reexport safe */ _status_bar_status_bar__WEBPACK_IMPORTED_MODULE_18__.A; },
22319
22390
  /* harmony export */ Table: function() { return /* reexport safe */ _table_table__WEBPACK_IMPORTED_MODULE_19__.i; },
22320
- /* harmony export */ ToolbarButton: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.h; },
22391
+ /* harmony export */ ToolbarButton: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.hA; },
22321
22392
  /* harmony export */ ToolbarCollection: function() { return /* reexport safe */ _toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_21__.n; },
22322
- /* harmony export */ ToolbarContent: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.c; },
22393
+ /* harmony export */ ToolbarContent: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.c_; },
22323
22394
  /* harmony export */ ToolbarEditorCollection: function() { return /* reexport safe */ _toolbar_collection_editor_collection__WEBPACK_IMPORTED_MODULE_20__.N; },
22395
+ /* harmony export */ ToolbarSelect: function() { return /* reexport safe */ _toolbar_button__WEBPACK_IMPORTED_MODULE_22__.vT; },
22324
22396
  /* harmony export */ UIBlock: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.eC; },
22325
22397
  /* harmony export */ UIButton: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.y3; },
22326
22398
  /* harmony export */ UICheckbox: function() { return /* reexport safe */ jodit_core_ui__WEBPACK_IMPORTED_MODULE_9__.mA; },
@@ -22441,6 +22513,7 @@ UIMessage = (0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__decorate */ .gn)([
22441
22513
  ], UIMessage);
22442
22514
 
22443
22515
 
22516
+
22444
22517
  /***/ }),
22445
22518
 
22446
22519
  /***/ 15964:
@@ -22548,6 +22621,7 @@ UIMessages = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
22548
22621
  ], UIMessages);
22549
22622
 
22550
22623
 
22624
+
22551
22625
  /***/ }),
22552
22626
 
22553
22627
  /***/ 66529:
@@ -22656,6 +22730,7 @@ StatusBar = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
22656
22730
  ], StatusBar);
22657
22731
 
22658
22732
 
22733
+
22659
22734
  /***/ }),
22660
22735
 
22661
22736
  /***/ 2871:
@@ -23362,25 +23437,26 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23362
23437
  }
23363
23438
  /** @override **/
23364
23439
  update() {
23365
- // @ts-ignore
23366
- window.__onupdate = (window.__onupdate ?? 0) + 1;
23367
23440
  const { control, state } = this, tc = this.closest(jodit_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_7__/* .ToolbarCollection */ .n);
23368
- state.disabled = this.calculateDisabledStatus(tc);
23369
- state.activated = this.calculateActivatedStatus(tc);
23370
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(control.update) && tc) {
23371
- control.update(this, tc.jodit);
23441
+ if (!tc) {
23442
+ return;
23372
23443
  }
23373
- super.update();
23444
+ const value = control.value?.(tc.jodit, this);
23445
+ if (value !== undefined) {
23446
+ state.value = value;
23447
+ }
23448
+ state.disabled = this.__calculateDisabledStatus(tc);
23449
+ state.activated = this.__calculateActivatedStatus(tc);
23450
+ control.update?.(tc.jodit, this);
23374
23451
  }
23375
23452
  /**
23376
23453
  * Calculates whether the button is active
23377
23454
  */
23378
- calculateActivatedStatus(tc) {
23455
+ __calculateActivatedStatus(tc) {
23379
23456
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isJoditObject)(this.j) && !this.j.editorIsActive) {
23380
23457
  return false;
23381
23458
  }
23382
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(this.control.isActive) &&
23383
- this.control.isActive(this.j, this.control, this)) {
23459
+ if (this.control.isActive?.(this.j, this)) {
23384
23460
  return true;
23385
23461
  }
23386
23462
  return Boolean(tc && tc.shouldBeActive(this));
@@ -23388,7 +23464,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23388
23464
  /**
23389
23465
  * Calculates whether an element is blocked for the user
23390
23466
  */
23391
- calculateDisabledStatus(tc) {
23467
+ __calculateDisabledStatus(tc) {
23392
23468
  if (this.j.o.disabled) {
23393
23469
  return true;
23394
23470
  }
@@ -23397,8 +23473,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23397
23473
  !this.j.o.activeButtonsInReadOnly.includes(this.control.name))) {
23398
23474
  return true;
23399
23475
  }
23400
- if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(this.control.isDisabled) &&
23401
- this.control.isDisabled(this.j, this.control, this)) {
23476
+ if (this.control.isDisabled?.(this.j, this)) {
23402
23477
  return true;
23403
23478
  }
23404
23479
  return Boolean(tc && tc.shouldBeDisabled(this));
@@ -23533,7 +23608,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23533
23608
  */
23534
23609
  onTriggerClick(e) {
23535
23610
  if (this.openedPopup) {
23536
- this.closePopup();
23611
+ this.__closePopup();
23537
23612
  return;
23538
23613
  }
23539
23614
  const { control: ctr } = this;
@@ -23541,14 +23616,14 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23541
23616
  actionTrigger: this
23542
23617
  };
23543
23618
  if (ctr.list) {
23544
- return this.openControlList(ctr);
23619
+ return this.__openControlList(ctr);
23545
23620
  }
23546
23621
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(ctr.popup)) {
23547
23622
  const popup = this.openPopup();
23548
23623
  popup.parentElement = this;
23549
23624
  if (this.j.e.fire((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.camelCase)(`before-${ctr.name}-open-popup`), this.target, ctr, popup) !== false) {
23550
23625
  const target = this.toolbar?.getTarget(this) ?? this.target ?? null;
23551
- const elm = ctr.popup(this.j, target, ctr, this.closePopup, this);
23626
+ const elm = ctr.popup(this.j, target, this.__closePopup, this);
23552
23627
  if (elm) {
23553
23628
  popup
23554
23629
  .setContent((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isString)(elm) ? this.j.c.fromHTML(elm) : elm)
@@ -23569,9 +23644,9 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23569
23644
  /**
23570
23645
  * Create and open popup list
23571
23646
  */
23572
- openControlList(control) {
23647
+ __openControlList(control) {
23573
23648
  const controls = this.jodit.options.controls ?? {}, getControl = (key) => (0,jodit_core_ui_helpers_get_control_type__WEBPACK_IMPORTED_MODULE_9__/* .findControlType */ .z)(key, controls);
23574
- const list = control.list, menu = this.openPopup(), toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__/* .makeCollection */ .R)(this.j);
23649
+ const list = control.list, menu = this.openPopup(), toolbar = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_4__/* .makeCollection */ .RP)(this.j);
23575
23650
  menu.parentElement = this;
23576
23651
  toolbar.parentElement = menu;
23577
23652
  toolbar.mode = 'vertical';
@@ -23608,6 +23683,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23608
23683
  data: control.data,
23609
23684
  command: control.command,
23610
23685
  isActive: control.isChildActive,
23686
+ value: control.value,
23611
23687
  isDisabled: control.isChildDisabled,
23612
23688
  mode: control.mode,
23613
23689
  args: [...(control.args ? control.args : []), key, value]
@@ -23620,7 +23696,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23620
23696
  toolbar.build((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isArray)(list)
23621
23697
  ? list.map(getButton)
23622
23698
  : (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.keys)(list, false).map(key => getButton(key, list[key])), this.target);
23623
- menu.setContent(toolbar.container).open(() => (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.container), false, this.j.o.allowTabNavigation ? this.container : undefined);
23699
+ menu.setContent(toolbar).open(() => (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.container), false, this.j.o.allowTabNavigation ? this.container : undefined);
23624
23700
  this.state.activated = true;
23625
23701
  }
23626
23702
  onOutsideClick(e) {
@@ -23631,18 +23707,18 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23631
23707
  !jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isNode(e.target) ||
23632
23708
  (!jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.isOrContains(this.container, e.target) &&
23633
23709
  !this.openedPopup.isOwnClick(e))) {
23634
- this.closePopup();
23710
+ this.__closePopup();
23635
23711
  }
23636
23712
  }
23637
23713
  openPopup() {
23638
- this.closePopup();
23714
+ this.__closePopup();
23639
23715
  this.openedPopup = new jodit_core_ui_popup_popup__WEBPACK_IMPORTED_MODULE_3__/* .Popup */ .G(this.j, false);
23640
23716
  this.j.e
23641
23717
  .on(this.ow, 'mousedown touchstart', this.onOutsideClick)
23642
23718
  .on('escape closeAllPopups', this.onOutsideClick);
23643
23719
  return this.openedPopup;
23644
23720
  }
23645
- closePopup() {
23721
+ __closePopup() {
23646
23722
  if (this.openedPopup) {
23647
23723
  this.j.e
23648
23724
  .off(this.ow, 'mousedown touchstart', this.onOutsideClick)
@@ -23681,7 +23757,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23681
23757
  }
23682
23758
  }
23683
23759
  if (ctr.list) {
23684
- return this.openControlList(ctr);
23760
+ return this.__openControlList(ctr);
23685
23761
  }
23686
23762
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.isFunction)(ctr.popup)) {
23687
23763
  return this.onTriggerClick(originalEvent);
@@ -23694,7 +23770,7 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23694
23770
  }
23695
23771
  }
23696
23772
  destruct() {
23697
- this.closePopup();
23773
+ this.__closePopup();
23698
23774
  return super.destruct();
23699
23775
  }
23700
23776
  };
@@ -23712,12 +23788,13 @@ let ToolbarButton = class ToolbarButton extends jodit_core_ui_button__WEBPACK_IM
23712
23788
  ], ToolbarButton.prototype, "onOutsideClick", null);
23713
23789
  (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
23714
23790
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
23715
- ], ToolbarButton.prototype, "closePopup", null);
23791
+ ], ToolbarButton.prototype, "__closePopup", null);
23716
23792
  ToolbarButton = (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
23717
23793
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
23718
23794
  ], ToolbarButton);
23719
23795
 
23720
23796
 
23797
+
23721
23798
  /***/ }),
23722
23799
 
23723
23800
  /***/ 75482:
@@ -23753,7 +23830,7 @@ let ToolbarContent = class ToolbarContent extends jodit_core_ui_button__WEBPACK_
23753
23830
  }
23754
23831
  /** @override */
23755
23832
  update() {
23756
- const content = this.control.getContent(this.j, this.control, this);
23833
+ const content = this.control.getContent(this.j, this);
23757
23834
  if ((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.isString)(content) || content.parentNode !== this.container) {
23758
23835
  jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.detach(this.container);
23759
23836
  this.container.appendChild((0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.isString)(content) ? this.j.create.fromHTML(content) : content);
@@ -23777,6 +23854,7 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23777
23854
  ], ToolbarContent);
23778
23855
 
23779
23856
 
23857
+
23780
23858
  /***/ }),
23781
23859
 
23782
23860
  /***/ 63782:
@@ -23784,11 +23862,13 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23784
23862
 
23785
23863
  "use strict";
23786
23864
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
23787
- /* harmony export */ c: function() { return /* reexport safe */ _content__WEBPACK_IMPORTED_MODULE_1__.c; },
23788
- /* harmony export */ h: function() { return /* reexport safe */ _button__WEBPACK_IMPORTED_MODULE_0__.h; }
23865
+ /* harmony export */ c_: function() { return /* reexport safe */ _content__WEBPACK_IMPORTED_MODULE_1__.c; },
23866
+ /* harmony export */ hA: function() { return /* reexport safe */ _button__WEBPACK_IMPORTED_MODULE_0__.h; },
23867
+ /* harmony export */ vT: function() { return /* reexport safe */ _select_select__WEBPACK_IMPORTED_MODULE_2__.v; }
23789
23868
  /* harmony export */ });
23790
23869
  /* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(34288);
23791
23870
  /* harmony import */ var _content__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(75482);
23871
+ /* harmony import */ var _select_select__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(24440);
23792
23872
  /*!
23793
23873
  * Jodit Editor (https://xdsoft.net/jodit/)
23794
23874
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -23801,6 +23881,62 @@ ToolbarContent = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
23801
23881
 
23802
23882
 
23803
23883
 
23884
+
23885
+ /***/ }),
23886
+
23887
+ /***/ 24440:
23888
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
23889
+
23890
+ "use strict";
23891
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
23892
+ /* harmony export */ v: function() { return /* binding */ ToolbarSelect; }
23893
+ /* harmony export */ });
23894
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(97582);
23895
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(50526);
23896
+ /* harmony import */ var jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4682);
23897
+ /* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(34288);
23898
+ /*!
23899
+ * Jodit Editor (https://xdsoft.net/jodit/)
23900
+ * Released under MIT see LICENSE.txt in the project root for license information.
23901
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
23902
+ */
23903
+
23904
+ /**
23905
+ * @module modules/toolbar/button
23906
+ */
23907
+
23908
+
23909
+
23910
+
23911
+ let ToolbarSelect = class ToolbarSelect extends _button__WEBPACK_IMPORTED_MODULE_1__/* .ToolbarButton */ .h {
23912
+ className() {
23913
+ return 'ToolbarSelect';
23914
+ }
23915
+ update() {
23916
+ super.update();
23917
+ this.state.icon.name = '';
23918
+ const { list, data } = this.control;
23919
+ if (list) {
23920
+ let key = this.state.value ||
23921
+ (data && (0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_2__/* .isString */ .H)(data.currentValue)
23922
+ ? data.currentValue
23923
+ : undefined);
23924
+ if (!key) {
23925
+ const keys = Object.keys(list);
23926
+ key = keys[0];
23927
+ }
23928
+ const text = (list[key.toString()] || key).toString();
23929
+ this.state.text =
23930
+ this.control.textTemplate?.(this.jodit, text) ?? text;
23931
+ }
23932
+ }
23933
+ };
23934
+ ToolbarSelect = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
23935
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_0__.component
23936
+ ], ToolbarSelect);
23937
+
23938
+
23939
+
23804
23940
  /***/ }),
23805
23941
 
23806
23942
  /***/ 60731:
@@ -23844,7 +23980,10 @@ let ToolbarCollection = class ToolbarCollection extends jodit_core_ui__WEBPACK_I
23844
23980
  return button || null;
23845
23981
  }
23846
23982
  makeButton(control, target = null) {
23847
- return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeButton */ .g)(this.j, control, target);
23983
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeButton */ .gu)(this.j, control, target);
23984
+ }
23985
+ makeSelect(control, target = null) {
23986
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeSelect */ .OT)(this.j, control, target);
23848
23987
  }
23849
23988
  /**
23850
23989
  * Button should be active
@@ -23930,6 +24069,7 @@ ToolbarCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)(
23930
24069
  ], ToolbarCollection);
23931
24070
 
23932
24071
 
24072
+
23933
24073
  /***/ }),
23934
24074
 
23935
24075
  /***/ 99332:
@@ -24076,6 +24216,7 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
24076
24216
  ], ToolbarEditorCollection);
24077
24217
 
24078
24218
 
24219
+
24079
24220
  /***/ }),
24080
24221
 
24081
24222
  /***/ 45429:
@@ -24083,14 +24224,16 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
24083
24224
 
24084
24225
  "use strict";
24085
24226
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
24086
- /* harmony export */ R: function() { return /* binding */ makeCollection; },
24087
- /* harmony export */ g: function() { return /* binding */ makeButton; }
24227
+ /* harmony export */ OT: function() { return /* binding */ makeSelect; },
24228
+ /* harmony export */ RP: function() { return /* binding */ makeCollection; },
24229
+ /* harmony export */ gu: function() { return /* binding */ makeButton; }
24088
24230
  /* harmony export */ });
24089
24231
  /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(95582);
24090
24232
  /* harmony import */ var _collection_collection__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60731);
24091
24233
  /* harmony import */ var _collection_editor_collection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(99332);
24092
24234
  /* harmony import */ var _button_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34288);
24093
24235
  /* harmony import */ var _button_content__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75482);
24236
+ /* harmony import */ var _button_select_select__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(24440);
24094
24237
  /*!
24095
24238
  * Jodit Editor (https://xdsoft.net/jodit/)
24096
24239
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -24101,6 +24244,7 @@ ToolbarEditorCollection = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */
24101
24244
 
24102
24245
 
24103
24246
 
24247
+
24104
24248
  /**
24105
24249
  * Collection factory
24106
24250
  */
@@ -24130,6 +24274,9 @@ function makeButton(jodit, control, target = null) {
24130
24274
  button.state.tabIndex = jodit.o.allowTabNavigation ? 0 : -1;
24131
24275
  return button;
24132
24276
  }
24277
+ function makeSelect(view, control, target = null) {
24278
+ return new _button_select_select__WEBPACK_IMPORTED_MODULE_5__/* .ToolbarSelect */ .v(view, control, target);
24279
+ }
24133
24280
 
24134
24281
 
24135
24282
  /***/ }),
@@ -26508,12 +26655,7 @@ function bold(editor) {
26508
26655
  : cssOptions[key];
26509
26656
  });
26510
26657
  editor.s.commitStyle({
26511
- element: control.tags ? control.tags[0] : undefined,
26512
- attributes: cssRules
26513
- ? {
26514
- style: cssRules
26515
- }
26516
- : {}
26658
+ element: control.tags ? control.tags[0] : undefined
26517
26659
  });
26518
26660
  editor.synchronizeValues();
26519
26661
  return false;
@@ -26657,29 +26799,29 @@ jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.classSpan =
26657
26799
  'warning',
26658
26800
  'error'
26659
26801
  ],
26660
- isChildActive: (editor, control) => {
26802
+ isChildActive: (editor, button) => {
26661
26803
  const current = editor.s.current();
26662
26804
  if (current) {
26663
26805
  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;
26664
- return Boolean(control.args &&
26665
- currentBpx.classList.contains(control.args[0].toString()));
26806
+ return Boolean(button.control.args &&
26807
+ currentBpx.classList.contains(button.control.args[0].toString()));
26666
26808
  }
26667
26809
  return false;
26668
26810
  },
26669
- isActive: (editor, control) => {
26811
+ isActive: (editor, btn) => {
26670
26812
  const current = editor.s.current();
26671
26813
  if (current) {
26672
26814
  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;
26673
26815
  let present = false;
26674
- control.list &&
26675
- Object.keys(control.list).forEach((className) => {
26816
+ btn.control.list &&
26817
+ Object.keys(btn.control.list).forEach((className) => {
26676
26818
  if (currentBpx.classList.contains(className)) {
26677
26819
  present = true;
26678
26820
  }
26679
26821
  });
26680
26822
  return Boolean(currentBpx &&
26681
26823
  currentBpx !== editor.editor &&
26682
- control.list !== undefined &&
26824
+ btn.control.list !== undefined &&
26683
26825
  present);
26684
26826
  }
26685
26827
  return false;
@@ -26932,9 +27074,9 @@ function getHash(tags) {
26932
27074
  const tagsHash = {};
26933
27075
  if ((0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_1__/* .isString */ .H)(tags)) {
26934
27076
  tags.split(separator).map((elm) => {
26935
- elm = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(elm);
27077
+ elm = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(elm);
26936
27078
  const attr = attributesReg.exec(elm), allowAttributes = {}, attributeMap = (attrName) => {
26937
- attrName = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(attrName);
27079
+ attrName = (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(attrName);
26938
27080
  const val = attrReg.exec(attrName);
26939
27081
  if (val) {
26940
27082
  allowAttributes[val[1]] = val[2];
@@ -27432,7 +27574,7 @@ function isRemovableNode(jodit, node, current, allow, deny) {
27432
27574
  jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isElement(node) &&
27433
27575
  node.nodeName.match(jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_INLINE) != null &&
27434
27576
  !jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isTemporary(node) &&
27435
- (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(node.innerHTML).length === 0 &&
27577
+ (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(node.innerHTML).length === 0 &&
27436
27578
  (current == null || !jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isOrContains(node, current)));
27437
27579
  }
27438
27580
 
@@ -27695,7 +27837,7 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('color
27695
27837
 
27696
27838
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_3__/* .Icon */ .J.set('brush', (_brush_svg__WEBPACK_IMPORTED_MODULE_5___default()));
27697
27839
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.brush = {
27698
- update(button, editor) {
27840
+ update(editor, button) {
27699
27841
  const color = (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_1__.dataBind)(button, 'color');
27700
27842
  const update = (key, value) => {
27701
27843
  if (value && value !== (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_1__.css)(editor.editor, key).toString()) {
@@ -27717,7 +27859,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.brush = {
27717
27859
  button.state.icon.fill = '';
27718
27860
  button.state.activated = false;
27719
27861
  },
27720
- popup: (editor, current, self, close, button) => {
27862
+ popup: (editor, current, close, button) => {
27721
27863
  let colorHEX = '', bg_color = '', tabs = [], currentElement = null;
27722
27864
  if (current && current !== editor.editor && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isNode(current)) {
27723
27865
  if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isElement(current) &&
@@ -28415,7 +28557,7 @@ class deleteCommand extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Pl
28415
28557
  if (current && jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.isTag(current.firstChild, 'br')) {
28416
28558
  jodit.s.removeNode(current.firstChild);
28417
28559
  }
28418
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .f)(jodit.editor.textContent || '') &&
28560
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_2__/* .trim */ .fy)(jodit.editor.textContent || '') &&
28419
28561
  !jodit.editor.querySelector('img,table,jodit,iframe,hr') &&
28420
28562
  (!current || !jodit_core_dom__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .i.closest(current, 'table', jodit.editor))) {
28421
28563
  jodit.editor.innerHTML = '';
@@ -29712,7 +29854,7 @@ function wrapText(fake, jodit) {
29712
29854
 
29713
29855
 
29714
29856
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.file = {
29715
- popup: (editor, current, self, close) => {
29857
+ popup: (editor, current, close) => {
29716
29858
  const insert = (url, title = '') => {
29717
29859
  editor.s.insertNode(editor.createInside.fromHTML(`<a href="${url}" title="${title}">${title || url}</a>`));
29718
29860
  };
@@ -29844,13 +29986,14 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('focus
29844
29986
 
29845
29987
  "use strict";
29846
29988
  /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
29847
- /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(44913);
29848
- /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98478);
29849
- /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(10503);
29850
- /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(39007);
29851
- /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_4__);
29852
- /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23358);
29853
- /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_icons_font_svg__WEBPACK_IMPORTED_MODULE_5__);
29989
+ /* harmony import */ var jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(18002);
29990
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10503);
29991
+ /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(39007);
29992
+ /* harmony import */ var _icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_icons_fontsize_svg__WEBPACK_IMPORTED_MODULE_2__);
29993
+ /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23358);
29994
+ /* harmony import */ var _icons_font_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_icons_font_svg__WEBPACK_IMPORTED_MODULE_3__);
29995
+ /* harmony import */ var jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8138);
29996
+ /* harmony import */ var jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(73076);
29854
29997
  /*!
29855
29998
  * Jodit Editor (https://xdsoft.net/jodit/)
29856
29999
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -29862,75 +30005,87 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('focus
29862
30005
 
29863
30006
 
29864
30007
 
30008
+
29865
30009
  /**
29866
30010
  * Default font-size points
29867
30011
  */
29868
30012
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.defaultFontSizePoints = 'px';
29869
- 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()));
30013
+ 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()));
29870
30014
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fontsize = {
29871
30015
  command: 'fontsize',
29872
30016
  data: {
29873
- cssRule: 'font-size'
29874
- },
29875
- list: [
29876
- '8',
29877
- '9',
29878
- '10',
29879
- '11',
29880
- '12',
29881
- '14',
29882
- '16',
29883
- '18',
29884
- '24',
29885
- '30',
29886
- '36',
29887
- '48',
29888
- '60',
29889
- '72',
29890
- '96'
29891
- ],
29892
- exec: (editor, event, { control }) => (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.memorizeExec)(editor, event, { control }, (value) => {
29893
- if (control.command?.toLowerCase() === 'fontsize') {
29894
- return `${value}${editor.o.defaultFontSizePoints}`;
30017
+ cssRule: 'font-size',
30018
+ normalise: (v, editor) => {
30019
+ if (/pt$/i.test(v) && editor.o.defaultFontSizePoints === 'pt') {
30020
+ return v.replace(/pt$/i, '');
30021
+ }
30022
+ return v;
29895
30023
  }
29896
- return value;
29897
- }),
30024
+ },
30025
+ list: [8, 9, 10, 11, 12, 14, 16, 18, 24, 30, 32, 34, 36, 48, 60, 72, 96],
30026
+ textTemplate: (editor, value) => {
30027
+ return value + editor.o.defaultFontSizePoints;
30028
+ },
29898
30029
  childTemplate: (editor, key, value) => {
29899
30030
  return `${value}${editor.o.defaultFontSizePoints}`;
29900
30031
  },
29901
30032
  tooltip: 'Font size',
29902
- isChildActive: (editor, control) => {
29903
- const current = editor.s.current(), cssKey = control.data?.cssRule || 'font-size', normalize = control.data?.normalize ||
29904
- ((v) => {
29905
- if (/pt$/i.test(v) &&
29906
- editor.o.defaultFontSizePoints === 'pt') {
29907
- return v.replace(/pt$/i, '');
29908
- }
29909
- return v;
29910
- });
29911
- if (current) {
29912
- 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;
29913
- const value = (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.css)(currentBpx, cssKey);
29914
- return Boolean(value &&
29915
- control.args &&
29916
- normalize(control.args[0].toString()) ===
29917
- normalize(value.toString()));
30033
+ value: (editor, button) => {
30034
+ const current = editor.s.current();
30035
+ if (!current) {
30036
+ return;
29918
30037
  }
29919
- return false;
30038
+ 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);
30039
+ if (!box) {
30040
+ return;
30041
+ }
30042
+ const control = button.control;
30043
+ const cssKey = control.data?.cssRule || 'font-size';
30044
+ const value = (0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(box, cssKey);
30045
+ return value.toString();
30046
+ },
30047
+ isChildActive: (editor, button) => {
30048
+ const value = button.state.value;
30049
+ const normalize = button.control.data?.normalize ?? ((v) => v);
30050
+ return Boolean(value &&
30051
+ button.control.args &&
30052
+ normalize(button.control.args[0].toString()) ===
30053
+ normalize(value.toString()));
30054
+ },
30055
+ isActive: (editor, button) => {
30056
+ const value = button.state.value;
30057
+ if (!value) {
30058
+ return false;
30059
+ }
30060
+ const normalize = button.control.data?.normalize ?? ((v) => v);
30061
+ let keySet = button.control.data.cacheListSet;
30062
+ if (!keySet) {
30063
+ const keys = Object.keys(button.control.list).map(normalize);
30064
+ keySet = new Set(keys);
30065
+ button.control.data.cacheListSet = keySet;
30066
+ }
30067
+ return keySet.has(normalize(value.toString()));
29920
30068
  }
29921
30069
  };
29922
30070
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font = {
29923
30071
  ...jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fontsize,
29924
30072
  command: 'fontname',
30073
+ textTemplate: (j, value) => {
30074
+ const [first] = value.split(',');
30075
+ return (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_5__/* .trimChars */ .cE)(first, '"\'');
30076
+ },
29925
30077
  list: {
29926
30078
  '': 'Default',
29927
- 'helvetica,sans-serif': 'Helvetica',
29928
- 'arial,helvetica,sans-serif': 'Arial',
29929
- 'georgia,palatino,serif': 'Georgia',
29930
- 'impact,charcoal,sans-serif': 'Impact',
29931
- 'tahoma,geneva,sans-serif': 'Tahoma',
29932
- 'times new roman,times,serif': 'Times New Roman',
29933
- 'verdana,geneva,sans-serif': 'Verdana'
30079
+ 'Arial, Helvetica, sans-serif': 'Arial',
30080
+ "'Courier New', Courier, monospace": 'Courier New',
30081
+ 'Georgia, Palatino, serif': 'Georgia',
30082
+ "'Lucida Sans Unicode', 'Lucida Grande', sans-serif": 'Lucida Sans Unicode',
30083
+ 'Tahoma, Geneva, sans-serif': 'Tahoma',
30084
+ "'Times New Roman', Times, serif": 'Times New Roman',
30085
+ "'Trebuchet MS', Helvetica, sans-serif": 'Trebuchet MS',
30086
+ 'Helvetica, sans-serif': 'Helvetica',
30087
+ 'Impact, Charcoal, sans-serif': 'Impact',
30088
+ 'Verdana, Geneva, sans-serif': 'Verdana'
29934
30089
  },
29935
30090
  childTemplate: (editor, key, value) => {
29936
30091
  let isAvailable = false;
@@ -29948,7 +30103,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font = {
29948
30103
  return v
29949
30104
  .toLowerCase()
29950
30105
  .replace(/['"]+/g, '')
29951
- .replace(/[^a-z0-9]+/g, ',');
30106
+ .replace(/[^a-z0-9-]+/g, ',');
29952
30107
  }
29953
30108
  },
29954
30109
  tooltip: 'Font family'
@@ -29992,7 +30147,7 @@ function font(editor) {
29992
30147
  editor.s.commitStyle({
29993
30148
  attributes: {
29994
30149
  style: {
29995
- fontSize: (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.normalizeSize)(third)
30150
+ fontSize: (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.normalizeSize)(third, editor.o.defaultFontSizePoints)
29996
30151
  }
29997
30152
  }
29998
30153
  });
@@ -30019,18 +30174,15 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('font'
30019
30174
 
30020
30175
  /***/ }),
30021
30176
 
30022
- /***/ 8001:
30023
- /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
30177
+ /***/ 7263:
30178
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
30024
30179
 
30025
30180
  "use strict";
30026
- /* unused harmony export formatBlock */
30027
- /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
30028
- /* harmony import */ var jodit_modules___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8079);
30029
- /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(95582);
30030
- /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(81160);
30031
- /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10503);
30032
- /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(88989);
30033
- /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_paragraph_svg__WEBPACK_IMPORTED_MODULE_5__);
30181
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(10503);
30182
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(77628);
30183
+ /* harmony import */ var jodit_core_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8138);
30184
+ /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(88989);
30185
+ /* harmony import */ var _paragraph_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_paragraph_svg__WEBPACK_IMPORTED_MODULE_3__);
30034
30186
  /*!
30035
30187
  * Jodit Editor (https://xdsoft.net/jodit/)
30036
30188
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -30040,38 +30192,32 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_1__/* .pluginSystem */ .pw.add('font'
30040
30192
 
30041
30193
 
30042
30194
 
30043
-
30044
-
30045
- jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__/* .Icon */ .J.set('paragraph', (_paragraph_svg__WEBPACK_IMPORTED_MODULE_5___default()));
30046
- jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.paragraph = {
30195
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__/* .Icon */ .J.set('paragraph', (_paragraph_svg__WEBPACK_IMPORTED_MODULE_3___default()));
30196
+ jodit_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.paragraph = {
30047
30197
  command: 'formatBlock',
30048
- update(button, editor) {
30198
+ value(editor, button) {
30049
30199
  const control = button.control, current = editor.s.current();
30050
- if (current && editor.o.textIcons) {
30051
- const currentBox = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor) ||
30052
- editor.editor, currentValue = currentBox.nodeName.toLowerCase(), list = control.list;
30053
- if (button &&
30054
- control.data &&
30055
- control.data.currentValue !== currentValue &&
30056
- list &&
30057
- list[currentValue]) {
30058
- if (editor.o.textIcons) {
30059
- button.state.text = currentValue;
30060
- }
30061
- else {
30062
- button.state.icon.name = currentValue;
30063
- }
30064
- control.data.currentValue = currentValue;
30200
+ 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);
30201
+ return currentBox?.nodeName.toLowerCase() ?? control.data?.currentValue;
30202
+ },
30203
+ update(editor, button) {
30204
+ const control = button.control, current = editor.s.current();
30205
+ if (!current) {
30206
+ return false;
30207
+ }
30208
+ const currentValue = button.state.value, list = control.list;
30209
+ if (list && list[currentValue.toString()]) {
30210
+ if (editor.o.textIcons) {
30211
+ button.state.text = list[currentValue.toString()].toString();
30065
30212
  }
30066
30213
  }
30067
30214
  return false;
30068
30215
  },
30069
- exec: jodit_core_helpers__WEBPACK_IMPORTED_MODULE_2__.memorizeExec,
30070
30216
  data: {
30071
- currentValue: 'left'
30217
+ currentValue: 'p'
30072
30218
  },
30073
30219
  list: {
30074
- p: 'Normal',
30220
+ p: 'Paragraph',
30075
30221
  h1: 'Heading 1',
30076
30222
  h2: 'Heading 2',
30077
30223
  h3: 'Heading 3',
@@ -30079,32 +30225,34 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.paragraph =
30079
30225
  blockquote: 'Quote',
30080
30226
  pre: 'Code'
30081
30227
  },
30082
- isChildActive: (editor, control) => {
30083
- const current = editor.s.current();
30084
- if (current) {
30085
- const currentBox = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
30086
- return Boolean(currentBox &&
30087
- currentBox !== editor.editor &&
30088
- control.args !== undefined &&
30089
- currentBox.nodeName.toLowerCase() === control.args[0]);
30090
- }
30091
- return false;
30228
+ isChildActive: (editor, button) => {
30229
+ return Boolean(button.state.value === button.control?.args?.[0]);
30092
30230
  },
30093
- isActive: (editor, control) => {
30094
- const current = editor.s.current();
30095
- if (current) {
30096
- const currentBpx = jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
30097
- return Boolean(currentBpx &&
30098
- currentBpx !== editor.editor &&
30099
- control.list !== undefined &&
30100
- !jodit_modules___WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(currentBpx, 'p') &&
30101
- control.list[currentBpx.nodeName.toLowerCase()] !== undefined);
30102
- }
30103
- return false;
30231
+ isActive: (editor, button) => {
30232
+ return (button.state.value !== editor.o.enter &&
30233
+ Boolean(button.control.list?.[button.state.value]));
30104
30234
  },
30105
30235
  childTemplate: (e, key, value) => `<${key} style="margin:0;padding:0"><span>${e.i18n(value)}</span></${key}>`,
30106
30236
  tooltip: 'Insert format block'
30107
30237
  };
30238
+
30239
+
30240
+ /***/ }),
30241
+
30242
+ /***/ 8001:
30243
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
30244
+
30245
+ "use strict";
30246
+ /* unused harmony export formatBlock */
30247
+ /* harmony import */ var jodit_core_global__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81160);
30248
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7263);
30249
+ /*!
30250
+ * Jodit Editor (https://xdsoft.net/jodit/)
30251
+ * Released under MIT see LICENSE.txt in the project root for license information.
30252
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
30253
+ */
30254
+
30255
+
30108
30256
  /**
30109
30257
  * Process command - `formatblock`
30110
30258
  */
@@ -30121,7 +30269,7 @@ function formatBlock(editor) {
30121
30269
  return false;
30122
30270
  });
30123
30271
  }
30124
- jodit_core_global__WEBPACK_IMPORTED_MODULE_3__/* .pluginSystem */ .pw.add('formatBlock', formatBlock);
30272
+ jodit_core_global__WEBPACK_IMPORTED_MODULE_0__/* .pluginSystem */ .pw.add('formatBlock', formatBlock);
30125
30273
 
30126
30274
 
30127
30275
  /***/ }),
@@ -30158,7 +30306,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.fullsize = {
30158
30306
  exec: (editor) => {
30159
30307
  editor.toggleFullSize();
30160
30308
  },
30161
- update(button, editor) {
30309
+ update(editor, button) {
30162
30310
  const mode = editor.isFullSize ? 'shrink' : 'fullsize';
30163
30311
  button.state.activated = editor.isFullSize;
30164
30312
  if (editor.o.textIcons) {
@@ -30764,14 +30912,16 @@ function iframe(editor) {
30764
30912
  if (opt.height === 'auto') {
30765
30913
  doc.documentElement &&
30766
30914
  (doc.documentElement.style.overflowY = 'hidden');
30767
- const resizeIframe = editor.async.throttle(() => {
30768
- if (editor.editor &&
30769
- editor.iframe &&
30770
- opt.height === 'auto') {
30771
- const style = editor.ew.getComputedStyle(editor.editor), marginOffset = parseInt(style.marginTop || '0', 10) +
30772
- parseInt(style.marginBottom || '0', 10);
30773
- (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.css)(editor.iframe, 'height', editor.editor.offsetHeight + marginOffset);
30774
- }
30915
+ const resizeIframe = editor.async.throttle((...args) => {
30916
+ editor.async.requestAnimationFrame(() => {
30917
+ if (editor.editor &&
30918
+ editor.iframe &&
30919
+ opt.height === 'auto') {
30920
+ const style = editor.ew.getComputedStyle(editor.editor), marginOffset = parseInt(style.marginTop || '0', 10) +
30921
+ parseInt(style.marginBottom || '0', 10);
30922
+ (0,jodit_core_helpers___WEBPACK_IMPORTED_MODULE_0__.css)(editor.iframe, 'height', editor.editor.offsetHeight + marginOffset);
30923
+ }
30924
+ });
30775
30925
  }, editor.defaultTimeout / 2);
30776
30926
  editor.e
30777
30927
  .on('change afterInit afterSetMode resize', resizeIframe)
@@ -30781,7 +30931,7 @@ function iframe(editor) {
30781
30931
  const resizeObserver = new ResizeObserver(resizeIframe);
30782
30932
  resizeObserver.observe(doc.body);
30783
30933
  editor.e.on('beforeDestruct', () => {
30784
- resizeObserver.unobserve(doc.body);
30934
+ resizeObserver.disconnect();
30785
30935
  });
30786
30936
  }
30787
30937
  }
@@ -30820,6 +30970,9 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('ifram
30820
30970
  * Released under MIT see LICENSE.txt in the project root for license information.
30821
30971
  * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
30822
30972
  */
30973
+ /**
30974
+ * @module plugins/image-processor
30975
+ */
30823
30976
 
30824
30977
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.imageProcessor = {
30825
30978
  replaceDataURIToBlobIdInView: true
@@ -31732,7 +31885,7 @@ function positionTab(editor) {
31732
31885
 
31733
31886
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .J.set('image', (_image_svg__WEBPACK_IMPORTED_MODULE_6___default()));
31734
31887
  jodit_config__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.controls.image = {
31735
- popup: (editor, current, ignore, close) => {
31888
+ popup: (editor, current, close) => {
31736
31889
  let sourceImage = null;
31737
31890
  if (current &&
31738
31891
  !jodit_core_dom__WEBPACK_IMPORTED_MODULE_0__/* .Dom */ .i.isText(current) &&
@@ -32220,7 +32373,7 @@ const cmd = (control) => control.args && (0,jodit_core_helpers_checker__WEBPACK_
32220
32373
  /* harmony default export */ __webpack_exports__.Z = ([
32221
32374
  {
32222
32375
  name: 'brush',
32223
- popup: (editor, _, _1, close) => {
32376
+ popup: (editor, _, close) => {
32224
32377
  if (!(0,jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__/* .isJoditObject */ .Zu)(editor)) {
32225
32378
  return;
32226
32379
  }
@@ -32540,7 +32693,7 @@ class inlinePopup extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Plug
32540
32693
  return new jodit_core_ui_popup__WEBPACK_IMPORTED_MODULE_2__/* .Popup */ .G(this.jodit, false);
32541
32694
  }
32542
32695
  get toolbar() {
32543
- return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_1__/* .makeCollection */ .R)(this.jodit, this.popup);
32696
+ return (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_1__/* .makeCollection */ .RP)(this.jodit, this.popup);
32544
32697
  }
32545
32698
  onClick(node) {
32546
32699
  const elements = this.elmsList, target = jodit_core_dom__WEBPACK_IMPORTED_MODULE_4__/* .Dom */ .i.isTag(node, 'img')
@@ -32801,7 +32954,7 @@ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_4__/* .Icon */ .J.set('justify', (_j
32801
32954
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32802
32955
  name: 'left',
32803
32956
  tooltip: 'Align',
32804
- update(button, editor) {
32957
+ update(editor, button) {
32805
32958
  const control = button.control, current = editor.s.current();
32806
32959
  if (current) {
32807
32960
  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) ||
@@ -32814,8 +32967,8 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32814
32967
  if (control.data &&
32815
32968
  control.data.currentValue !== currentValue &&
32816
32969
  control.list &&
32817
- control.list.indexOf(currentValue) !== -1) {
32818
- if (editor.o.textIcons) {
32970
+ control.list[currentValue]) {
32971
+ if (editor.o.textIcons || control.component === 'select') {
32819
32972
  button.state.text = currentValue;
32820
32973
  }
32821
32974
  else {
@@ -32827,11 +32980,12 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.align = {
32827
32980
  },
32828
32981
  isActive: (editor, btn) => {
32829
32982
  const current = editor.s.current();
32830
- if (current && btn.defaultValue) {
32831
- 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;
32832
- return (btn.defaultValue.indexOf((0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(currentBox, 'text-align').toString()) === -1);
32983
+ if (!current || !btn.control.defaultValue) {
32984
+ return false;
32833
32985
  }
32834
- return false;
32986
+ 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) ||
32987
+ editor.editor;
32988
+ return (btn.control.defaultValue.indexOf((0,jodit_core_helpers_utils_css__WEBPACK_IMPORTED_MODULE_6__/* .css */ .i)(currentBox, 'text-align').toString()) === -1);
32835
32989
  },
32836
32990
  defaultValue: ['left', 'start', 'inherit'],
32837
32991
  data: {
@@ -33701,7 +33855,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.link = {
33701
33855
  const current = editor.s.current();
33702
33856
  return Boolean(current && jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom */ .i.closest(current, 'a', editor.editor));
33703
33857
  },
33704
- popup: (editor, current, self, close) => {
33858
+ popup: (editor, current, close) => {
33705
33859
  return editor.e.fire('generateLinkForm.link', current, close);
33706
33860
  },
33707
33861
  tags: ['a'],
@@ -34253,11 +34407,11 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mobileTapTimeout = 30
34253
34407
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.toolbarAdaptive = true;
34254
34408
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.dots = {
34255
34409
  mode: jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.MODE_SOURCE + jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.MODE_WYSIWYG,
34256
- popup: (editor, current, control, close, button) => {
34257
- let store = control.data;
34410
+ popup: (editor, current, close, button) => {
34411
+ let store = button.control.data;
34258
34412
  if (store === undefined) {
34259
34413
  store = {
34260
- toolbar: (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeCollection */ .R)(editor),
34414
+ toolbar: (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_2__/* .makeCollection */ .RP)(editor),
34261
34415
  rebuild: () => {
34262
34416
  if (button) {
34263
34417
  const buttons = editor.e.fire('getDiffButtons.mobile', button.closest(jodit_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_4__/* .ToolbarCollection */ .n));
@@ -34271,7 +34425,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.dots = {
34271
34425
  }
34272
34426
  }
34273
34427
  };
34274
- control.data = store;
34428
+ button.control.data = store;
34275
34429
  }
34276
34430
  store.rebuild();
34277
34431
  return store.toolbar;
@@ -36221,6 +36375,7 @@ resizeHandler.requires = ['size'];
36221
36375
  resizeHandler = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn)([
36222
36376
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_2__.autobind
36223
36377
  ], resizeHandler);
36378
+
36224
36379
  jodit_core_global__WEBPACK_IMPORTED_MODULE_4__/* .pluginSystem */ .pw.add('resizeHandler', resizeHandler);
36225
36380
 
36226
36381
 
@@ -37568,6 +37723,7 @@ UISearch = (0,tslib__WEBPACK_IMPORTED_MODULE_5__/* .__decorate */ .gn)([
37568
37723
  ], UISearch);
37569
37724
 
37570
37725
 
37726
+
37571
37727
  /***/ }),
37572
37728
 
37573
37729
  /***/ 31882:
@@ -38285,6 +38441,7 @@ let size = class size extends jodit_core_plugin_plugin__WEBPACK_IMPORTED_MODULE_
38285
38441
  size = (0,tslib__WEBPACK_IMPORTED_MODULE_6__/* .__decorate */ .gn)([
38286
38442
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
38287
38443
  ], size);
38444
+
38288
38445
  jodit_core_global__WEBPACK_IMPORTED_MODULE_2__/* .pluginSystem */ .pw.add('size', size);
38289
38446
 
38290
38447
 
@@ -40143,7 +40300,7 @@ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__/* .Icon */ .J.set('symbols', (_s
40143
40300
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.symbols = {
40144
40301
  hotkeys: ['ctrl+shift+i', 'cmd+shift+i'],
40145
40302
  tooltip: 'Insert Special Character',
40146
- popup: (editor, current, control, close) => {
40303
+ popup: (editor, current, close) => {
40147
40304
  const container = editor.e.fire('generateSpecialCharactersTable.symbols');
40148
40305
  if (container) {
40149
40306
  if (editor.o.usePopupForSpecialCharacters) {
@@ -41139,7 +41296,8 @@ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.table = {
41139
41296
  'table table-dark': 'Bootstrap Dark'
41140
41297
  }
41141
41298
  },
41142
- popup: (editor, current, control, close, button) => {
41299
+ popup: (editor, current, close, button) => {
41300
+ const control = button.control;
41143
41301
  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;
41144
41302
  const generateExtraClasses = () => {
41145
41303
  if (!editor.o.table.useExtraClassesOptions) {
@@ -41318,7 +41476,7 @@ jodit_core_global__WEBPACK_IMPORTED_MODULE_0__/* .pluginSystem */ .pw.add('table
41318
41476
 
41319
41477
  jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .J.set('video', (_video_svg__WEBPACK_IMPORTED_MODULE_6___default()));
41320
41478
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.video = {
41321
- popup: (editor, current, control, close) => {
41479
+ popup: (editor, current, close) => {
41322
41480
  const formLink = new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIForm */ .x4(editor, [
41323
41481
  new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIBlock */ .eC(editor, [
41324
41482
  new jodit_core_ui_form__WEBPACK_IMPORTED_MODULE_3__/* .UIInput */ .u3(editor, {
@@ -41681,7 +41839,7 @@ class xpath extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_4__/* .Plugin */
41681
41839
  };
41682
41840
  this.appendSelectAll = () => {
41683
41841
  this.removeSelectAll();
41684
- this.selectAllButton = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeButton */ .g)(this.j, {
41842
+ this.selectAllButton = (0,jodit_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_5__/* .makeButton */ .gu)(this.j, {
41685
41843
  name: 'selectall',
41686
41844
  ...this.j.o.controls.selectall
41687
41845
  });
@@ -41895,23 +42053,23 @@ __webpack_require__.r(__webpack_exports__);
41895
42053
  */
41896
42054
 
41897
42055
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.font.list = {
41898
- 'andale mono,monospace': 'Andale Mono',
41899
- 'arial,helvetica,sans-serif': 'Arial',
41900
- 'arial black,sans-serif': 'Arial Black',
41901
- 'book antiqua,palatino,serif': 'Book Antiqua',
41902
- 'comic sans ms,sans-serif': 'Comic Sans MS',
41903
- 'courier new,courier,monospace': 'Courier New',
41904
- 'georgia,palatino,serif': 'Georgia',
41905
- 'helvetica,arial,sans-serif': 'Helvetica',
41906
- 'impact,charcoal,sans-serif': 'Impact',
41907
- 'symbol,sans-serif': 'Symbol',
41908
- 'tahoma,arial,helvetica,sans-serif': 'Tahoma',
41909
- 'terminal,monaco,monospace': 'Terminal',
41910
- 'times new roman,times,serif': 'Times New Roman',
41911
- 'trebuchet ms,geneva,sans-serif': 'Trebuchet MS',
41912
- 'verdana,geneva,sans-serif': 'Verdana',
41913
- webdings: 'Webdings',
41914
- 'wingdings,zapf dingbats': 'Wingdings'
42056
+ "'Andale mono', monospace'": 'Andale Mono',
42057
+ 'Arial, Helvetica, sans-serif': 'Arial',
42058
+ "'Arial black', sans-serif": 'Arial Black',
42059
+ "'Book antiqua', palatino, serif": 'Book Antiqua',
42060
+ "'Comic Sans MS', sans-serif": 'Comic Sans MS',
42061
+ "'Courier new', Courier, monospace": 'Courier New',
42062
+ 'Georgia, Palatino, serif': 'Georgia',
42063
+ 'Helvetica, Arial, sans-serif': 'Helvetica',
42064
+ 'Impact, Charcoal, sans-serif': 'Impact',
42065
+ 'Symbol, sans-serif': 'Symbol',
42066
+ 'Tahoma, Arial, Helvetica, sans-serif': 'Tahoma',
42067
+ 'Terminal, Monaco, monospace': 'Terminal',
42068
+ "'Times new roman', Times, serif": 'Times New Roman',
42069
+ "'Trebuchet ms', Geneva, sans-serif": 'Trebuchet MS',
42070
+ 'Verdana, Geneva, sans-serif': 'Verdana',
42071
+ Webdings: 'Webdings',
42072
+ "Wingdings, 'Zapf dingbats'": 'Wingdings'
41915
42073
  };
41916
42074
  jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.loadExternalConfig = true;
41917
42075
 
@@ -42367,6 +42525,7 @@ Autocomplete = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
42367
42525
  ], Autocomplete);
42368
42526
 
42369
42527
 
42528
+
42370
42529
  /***/ }),
42371
42530
 
42372
42531
  /***/ 91381:
@@ -42675,7 +42834,7 @@ const clearClassName = (elm) => {
42675
42834
  // Normalize or remove class
42676
42835
  if (elm.attributes.class) {
42677
42836
  elm.attributes.class = elm.attributes.class.replace(/(el\d+)|(font\d+)|msonormal|msolistparagraph\w*/gi, '');
42678
- if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .f)(elm.attributes.class)) {
42837
+ if (!(0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_0__/* .trim */ .fy)(elm.attributes.class)) {
42679
42838
  elm.attributes.class = null;
42680
42839
  }
42681
42840
  }
@@ -43636,7 +43795,7 @@ function innerHTML(elm, filter = () => true, removeEmpty = true, allowedStylePro
43636
43795
  let result = elm
43637
43796
  .map((e) => html(e, filter, removeEmpty, allowedStyleProps))
43638
43797
  .join('');
43639
- if (elm.name === 'p' && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .f)(result).length === 0) {
43798
+ if (elm.name === 'p' && (0,jodit_core_helpers_string_trim__WEBPACK_IMPORTED_MODULE_1__/* .trim */ .fy)(result).length === 0) {
43640
43799
  result = '&nbsp;';
43641
43800
  }
43642
43801
  return result;
@@ -43731,6 +43890,7 @@ let Style = class Style {
43731
43890
  Style = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
43732
43891
  jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.autobind
43733
43892
  ], Style);
43893
+
43734
43894
  function readStyles(style) {
43735
43895
  return uniqueMax((style ?? '')
43736
43896
  .replace(/&quot;/g, '"')
@@ -44050,7 +44210,7 @@ function transformWordToHtml(jodit, body, removeStyles, rtf) {
44050
44210
  elm.style.clear();
44051
44211
  }, true);
44052
44212
  }
44053
- 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));
44213
+ 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));
44054
44214
  }
44055
44215
 
44056
44216