jodit-pro 4.9.27 → 4.9.33

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 (338) hide show
  1. package/CHANGELOG.md +50 -1
  2. package/config.js +1 -0
  3. package/es2015/jodit.css +1 -1
  4. package/es2015/jodit.fat.min.css +1 -1
  5. package/es2015/jodit.fat.min.js +15 -15
  6. package/es2015/jodit.js +15 -10
  7. package/es2015/jodit.min.js +5 -5
  8. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  9. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  10. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  11. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  12. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  13. package/es2015/plugins/backup/backup.css +1 -1
  14. package/es2015/plugins/backup/backup.js +1 -1
  15. package/es2015/plugins/backup/backup.min.js +1 -1
  16. package/es2015/plugins/button-generator/button-generator.css +1 -1
  17. package/es2015/plugins/button-generator/button-generator.js +1 -1
  18. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  19. package/es2015/plugins/change-case/change-case.js +1 -1
  20. package/es2015/plugins/change-case/change-case.min.js +1 -1
  21. package/es2015/plugins/color-picker/color-picker.css +1 -1
  22. package/es2015/plugins/color-picker/color-picker.js +1 -1
  23. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  24. package/es2015/plugins/emoji/emoji.css +1 -1
  25. package/es2015/plugins/emoji/emoji.js +1 -1
  26. package/es2015/plugins/emoji/emoji.min.js +1 -1
  27. package/es2015/plugins/export-docs/export-docs.js +1 -1
  28. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  29. package/es2015/plugins/finder/finder.css +1 -1
  30. package/es2015/plugins/finder/finder.js +40 -4
  31. package/es2015/plugins/finder/finder.min.js +4 -4
  32. package/es2015/plugins/google-maps/google-maps.css +1 -1
  33. package/es2015/plugins/google-maps/google-maps.js +1 -1
  34. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  35. package/es2015/plugins/google-search/google-search.js +1 -1
  36. package/es2015/plugins/google-search/google-search.min.js +1 -1
  37. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  38. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  39. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  40. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  41. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  42. package/es2015/plugins/keyboard/keyboard.css +1 -1
  43. package/es2015/plugins/keyboard/keyboard.js +1 -1
  44. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  45. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  46. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  47. package/es2015/plugins/page-break/page-break.js +1 -1
  48. package/es2015/plugins/page-break/page-break.min.js +1 -1
  49. package/es2015/plugins/paste-code/paste-code.css +1 -1
  50. package/es2015/plugins/paste-code/paste-code.js +1 -1
  51. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  52. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  53. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  54. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  55. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  56. package/es2015/plugins/style/style.css +1 -1
  57. package/es2015/plugins/style/style.js +37 -21
  58. package/es2015/plugins/style/style.min.js +2 -2
  59. package/es2015/plugins/templates/templates.css +82 -0
  60. package/es2015/plugins/templates/templates.js +178 -0
  61. package/es2015/plugins/templates/templates.min.css +1 -0
  62. package/es2015/plugins/templates/templates.min.js +8 -0
  63. package/es2015/plugins/todo-list/todo-list.css +1 -1
  64. package/es2015/plugins/todo-list/todo-list.js +1 -1
  65. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  66. package/es2015/plugins/translate/translate.css +1 -1
  67. package/es2015/plugins/translate/translate.js +1 -1
  68. package/es2015/plugins/translate/translate.min.js +1 -1
  69. package/es2015/plugins/tune-block/tune-block.css +1 -1
  70. package/es2015/plugins/tune-block/tune-block.js +1 -1
  71. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  72. package/es2018/jodit.fat.min.css +1 -1
  73. package/es2018/jodit.fat.min.js +15 -15
  74. package/es2018/jodit.min.js +5 -5
  75. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  76. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  77. package/es2018/plugins/backup/backup.min.js +1 -1
  78. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  79. package/es2018/plugins/change-case/change-case.min.js +1 -1
  80. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  81. package/es2018/plugins/emoji/emoji.min.js +1 -1
  82. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  83. package/es2018/plugins/finder/finder.min.js +3 -3
  84. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  85. package/es2018/plugins/google-search/google-search.min.js +1 -1
  86. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  87. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  88. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  89. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  90. package/es2018/plugins/page-break/page-break.min.js +1 -1
  91. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  92. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  93. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  94. package/es2018/plugins/style/style.min.js +2 -2
  95. package/es2018/plugins/templates/templates.min.css +1 -0
  96. package/es2018/plugins/templates/templates.min.js +8 -0
  97. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  98. package/es2018/plugins/translate/translate.min.js +1 -1
  99. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  100. package/es2021/jodit.css +1 -1
  101. package/es2021/jodit.fat.min.css +1 -1
  102. package/es2021/jodit.fat.min.js +15 -15
  103. package/es2021/jodit.js +15 -10
  104. package/es2021/jodit.min.js +6 -6
  105. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  106. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  107. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  108. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  109. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  110. package/es2021/plugins/backup/backup.css +1 -1
  111. package/es2021/plugins/backup/backup.js +1 -1
  112. package/es2021/plugins/backup/backup.min.js +1 -1
  113. package/es2021/plugins/button-generator/button-generator.css +1 -1
  114. package/es2021/plugins/button-generator/button-generator.js +1 -1
  115. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  116. package/es2021/plugins/change-case/change-case.js +1 -1
  117. package/es2021/plugins/change-case/change-case.min.js +1 -1
  118. package/es2021/plugins/color-picker/color-picker.css +1 -1
  119. package/es2021/plugins/color-picker/color-picker.js +1 -1
  120. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  121. package/es2021/plugins/emoji/emoji.css +1 -1
  122. package/es2021/plugins/emoji/emoji.js +1 -1
  123. package/es2021/plugins/emoji/emoji.min.js +1 -1
  124. package/es2021/plugins/export-docs/export-docs.js +1 -1
  125. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  126. package/es2021/plugins/finder/finder.css +1 -1
  127. package/es2021/plugins/finder/finder.js +40 -4
  128. package/es2021/plugins/finder/finder.min.js +4 -4
  129. package/es2021/plugins/google-maps/google-maps.css +1 -1
  130. package/es2021/plugins/google-maps/google-maps.js +1 -1
  131. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  132. package/es2021/plugins/google-search/google-search.js +1 -1
  133. package/es2021/plugins/google-search/google-search.min.js +1 -1
  134. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  135. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  136. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  137. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  138. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  139. package/es2021/plugins/keyboard/keyboard.css +1 -1
  140. package/es2021/plugins/keyboard/keyboard.js +1 -1
  141. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  142. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  143. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  144. package/es2021/plugins/page-break/page-break.js +1 -1
  145. package/es2021/plugins/page-break/page-break.min.js +1 -1
  146. package/es2021/plugins/paste-code/paste-code.css +1 -1
  147. package/es2021/plugins/paste-code/paste-code.js +1 -1
  148. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  149. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  150. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  151. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  152. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  153. package/es2021/plugins/style/style.css +1 -1
  154. package/es2021/plugins/style/style.js +31 -21
  155. package/es2021/plugins/style/style.min.js +2 -2
  156. package/es2021/plugins/templates/templates.css +82 -0
  157. package/es2021/plugins/templates/templates.js +178 -0
  158. package/es2021/plugins/templates/templates.min.css +1 -0
  159. package/es2021/plugins/templates/templates.min.js +8 -0
  160. package/es2021/plugins/todo-list/todo-list.css +1 -1
  161. package/es2021/plugins/todo-list/todo-list.js +1 -1
  162. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  163. package/es2021/plugins/translate/translate.css +1 -1
  164. package/es2021/plugins/translate/translate.js +1 -1
  165. package/es2021/plugins/translate/translate.min.js +1 -1
  166. package/es2021/plugins/tune-block/tune-block.css +1 -1
  167. package/es2021/plugins/tune-block/tune-block.js +1 -1
  168. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  169. package/es2021.en/jodit.css +1 -1
  170. package/es2021.en/jodit.fat.min.css +1 -1
  171. package/es2021.en/jodit.fat.min.js +16 -16
  172. package/es2021.en/jodit.js +15 -10
  173. package/es2021.en/jodit.min.js +6 -6
  174. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  175. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  176. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  177. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  178. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  179. package/es2021.en/plugins/backup/backup.css +1 -1
  180. package/es2021.en/plugins/backup/backup.js +1 -1
  181. package/es2021.en/plugins/backup/backup.min.js +1 -1
  182. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  183. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  184. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  185. package/es2021.en/plugins/change-case/change-case.js +1 -1
  186. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  187. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  188. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  189. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  190. package/es2021.en/plugins/emoji/emoji.css +1 -1
  191. package/es2021.en/plugins/emoji/emoji.js +1 -1
  192. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  193. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  194. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  195. package/es2021.en/plugins/finder/finder.css +1 -1
  196. package/es2021.en/plugins/finder/finder.js +6 -4
  197. package/es2021.en/plugins/finder/finder.min.js +2 -2
  198. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  199. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  200. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  201. package/es2021.en/plugins/google-search/google-search.js +1 -1
  202. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  203. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  204. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  205. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  206. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  207. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  208. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  209. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  210. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  211. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  212. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  213. package/es2021.en/plugins/page-break/page-break.js +1 -1
  214. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  215. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  216. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  217. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  218. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  219. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  220. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  221. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  222. package/es2021.en/plugins/style/style.css +1 -1
  223. package/es2021.en/plugins/style/style.js +31 -21
  224. package/es2021.en/plugins/style/style.min.js +2 -2
  225. package/es2021.en/plugins/templates/templates.css +82 -0
  226. package/es2021.en/plugins/templates/templates.js +178 -0
  227. package/es2021.en/plugins/templates/templates.min.css +1 -0
  228. package/es2021.en/plugins/templates/templates.min.js +8 -0
  229. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  230. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  231. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  232. package/es2021.en/plugins/translate/translate.css +1 -1
  233. package/es2021.en/plugins/translate/translate.js +1 -1
  234. package/es2021.en/plugins/translate/translate.min.js +1 -1
  235. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  236. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  237. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  238. package/es5/jodit.css +2 -2
  239. package/es5/jodit.fat.min.css +1 -1
  240. package/es5/jodit.fat.min.js +2 -2
  241. package/es5/jodit.js +15 -10
  242. package/es5/jodit.min.css +2 -2
  243. package/es5/jodit.min.js +2 -2
  244. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  245. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  246. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  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 +1 -1
  251. package/es5/plugins/backup/backup.min.js +1 -1
  252. package/es5/plugins/button-generator/button-generator.css +1 -1
  253. package/es5/plugins/button-generator/button-generator.js +1 -1
  254. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  255. package/es5/plugins/change-case/change-case.js +1 -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 +1 -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 +1 -1
  262. package/es5/plugins/emoji/emoji.min.js +1 -1
  263. package/es5/plugins/export-docs/export-docs.js +1 -1
  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 +40 -4
  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 +1 -1
  270. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  271. package/es5/plugins/google-search/google-search.js +1 -1
  272. package/es5/plugins/google-search/google-search.min.js +1 -1
  273. package/es5/plugins/highlight-signature/highlight-signature.js +1 -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 +1 -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 +1 -1
  280. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  281. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  282. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  283. package/es5/plugins/page-break/page-break.js +1 -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 +1 -1
  287. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  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 +1 -1
  291. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  292. package/es5/plugins/style/style.css +1 -1
  293. package/es5/plugins/style/style.js +37 -21
  294. package/es5/plugins/style/style.min.js +2 -2
  295. package/es5/plugins/templates/templates.css +82 -0
  296. package/es5/plugins/templates/templates.js +220 -0
  297. package/es5/plugins/templates/templates.min.css +1 -0
  298. package/es5/plugins/templates/templates.min.js +8 -0
  299. package/es5/plugins/todo-list/todo-list.css +1 -1
  300. package/es5/plugins/todo-list/todo-list.js +1 -1
  301. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  302. package/es5/plugins/translate/translate.css +1 -1
  303. package/es5/plugins/translate/translate.js +1 -1
  304. package/es5/plugins/translate/translate.min.js +1 -1
  305. package/es5/plugins/tune-block/tune-block.css +1 -1
  306. package/es5/plugins/tune-block/tune-block.js +1 -1
  307. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  308. package/es5/polyfills.fat.min.js +1 -1
  309. package/es5/polyfills.js +1 -1
  310. package/es5/polyfills.min.js +1 -1
  311. package/esm/config.d.ts +6 -0
  312. package/esm/plugins/all.js +1 -1
  313. package/esm/plugins/finder/langs/de.d.ts +22 -0
  314. package/esm/plugins/finder/langs/de.js +1 -0
  315. package/esm/plugins/finder/langs/index.d.ts +2 -1
  316. package/esm/plugins/finder/langs/index.js +1 -1
  317. package/esm/plugins/style/helpers/apply-style.js +1 -1
  318. package/esm/plugins/style/helpers/detect-active-style.js +1 -1
  319. package/esm/plugins/style/interface.d.ts +1 -1
  320. package/esm/plugins/style/ui/style-popup.js +1 -1
  321. package/esm/plugins/templates/config.d.ts +13 -0
  322. package/esm/plugins/templates/config.js +1 -0
  323. package/esm/plugins/templates/icon.svg.js +1 -0
  324. package/esm/plugins/templates/interface.d.ts +11 -0
  325. package/esm/plugins/templates/interface.js +0 -0
  326. package/esm/plugins/templates/templates.d.ts +18 -0
  327. package/esm/plugins/templates/templates.js +1 -0
  328. package/esm/plugins/templates/ui/templates-popup.d.ts +8 -0
  329. package/esm/plugins/templates/ui/templates-popup.js +1 -0
  330. package/package.json +1 -1
  331. package/types/config.d.ts +6 -0
  332. package/types/plugins/finder/langs/de.d.ts +22 -0
  333. package/types/plugins/finder/langs/index.d.ts +2 -1
  334. package/types/plugins/style/interface.d.ts +1 -1
  335. package/types/plugins/templates/config.d.ts +13 -0
  336. package/types/plugins/templates/interface.d.ts +11 -0
  337. package/types/plugins/templates/templates.d.ts +18 -0
  338. package/types/plugins/templates/ui/templates-popup.d.ts +8 -0
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -46,13 +46,15 @@ function buildStylePopup(editor, definitions, close) {
46
46
  container.appendChild(title);
47
47
  const grid = editor.c.div(`${CLASS_NAME}__grid`);
48
48
  for (const def of group.definitions){
49
+ var _ref;
50
+ var _def_classes;
49
51
  const card = editor.c.element('button');
50
52
  card.type = 'button';
51
53
  const isActive = active === def;
52
54
  card.className = `${CLASS_NAME}__card` + (isActive ? ` ${CLASS_NAME}__card_active_true` : '');
53
55
  const preview = editor.c.div(`${CLASS_NAME}__card-preview`);
54
56
  const previewEl = editor.c.element(def.element);
55
- for (const cls of def.classes){
57
+ for (const cls of (_ref = (_def_classes = def.classes) === null || _def_classes === void 0 ? void 0 : _def_classes.filter(Boolean)) !== null && _ref !== void 0 ? _ref : []){
56
58
  previewEl.classList.add(cls);
57
59
  }
58
60
  previewEl.textContent = def.name;
@@ -237,7 +239,9 @@ function removeClassesFromElement(el, classes) {
237
239
  }
238
240
  }
239
241
  function cleanupExtraClasses(editor, def) {
240
- if (def.classes.length <= 1) {
242
+ var _def_classes;
243
+ const classes = (_def_classes = def.classes) === null || _def_classes === void 0 ? void 0 : _def_classes.filter(Boolean);
244
+ if (!classes || classes.length <= 1) {
241
245
  return;
242
246
  }
243
247
  const current = editor.s.current();
@@ -247,12 +251,12 @@ function cleanupExtraClasses(editor, def) {
247
251
  if (jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_BLOCK.test(def.element)) {
248
252
  const block = jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.closest(current, jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.isBlock, editor.editor);
249
253
  if (block) {
250
- removeClassesFromElement(block, def.classes.slice(1));
254
+ removeClassesFromElement(block, classes.slice(1));
251
255
  }
252
256
  } else {
253
257
  const target = findTarget(editor, def);
254
258
  if (target) {
255
- removeClassesFromElement(target, def.classes.slice(1));
259
+ removeClassesFromElement(target, classes.slice(1));
256
260
  if (target.nodeName.toLowerCase() === 'span' && !target.attributes.length) {
257
261
  jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.unwrap(target);
258
262
  }
@@ -260,37 +264,44 @@ function cleanupExtraClasses(editor, def) {
260
264
  }
261
265
  }
262
266
  function addExtraClasses(editor, def) {
263
- if (def.classes.length <= 1) {
267
+ var _def_classes;
268
+ const classes = (_def_classes = def.classes) === null || _def_classes === void 0 ? void 0 : _def_classes.filter(Boolean);
269
+ if (!classes || classes.length <= 1) {
264
270
  return;
265
271
  }
266
272
  const target = findTarget(editor, def);
267
273
  if (!target) {
268
274
  return;
269
275
  }
270
- for(let i = 1; i < def.classes.length; i++){
271
- target.classList.add(def.classes[i]);
276
+ for(let i = 1; i < classes.length; i++){
277
+ target.classList.add(classes[i]);
272
278
  }
273
279
  }
280
+ function buildCommitStyleOptions(def) {
281
+ var _def_classes;
282
+ const firstClass = (_def_classes = def.classes) === null || _def_classes === void 0 ? void 0 : _def_classes.filter(Boolean)[0];
283
+ if (firstClass) {
284
+ return {
285
+ element: def.element,
286
+ attributes: {
287
+ class: firstClass
288
+ }
289
+ };
290
+ }
291
+ return {
292
+ element: def.element
293
+ };
294
+ }
274
295
  function applyStyle(editor, def, definitions) {
275
296
  const active = (0,_detect_active_style__WEBPACK_IMPORTED_MODULE_0__.detectActiveStyle)(editor, definitions);
276
297
  if (active) {
277
- editor.s.commitStyle({
278
- element: active.element,
279
- attributes: {
280
- class: active.classes[0]
281
- }
282
- });
298
+ editor.s.commitStyle(buildCommitStyleOptions(active));
283
299
  cleanupExtraClasses(editor, active);
284
300
  if (active === def) {
285
301
  return;
286
302
  }
287
303
  }
288
- editor.s.commitStyle({
289
- element: def.element,
290
- attributes: {
291
- class: def.classes[0]
292
- }
293
- });
304
+ editor.s.commitStyle(buildCommitStyleOptions(def));
294
305
  addExtraClasses(editor, def);
295
306
  }
296
307
 
@@ -313,10 +324,15 @@ function applyStyle(editor, def, definitions) {
313
324
  */
314
325
 
315
326
  function elementMatchesDefinition(el, def) {
327
+ var _def_classes;
316
328
  if (el.nodeName.toLowerCase() !== def.element) {
317
329
  return false;
318
330
  }
319
- return def.classes.every((cls)=>el.classList.contains(cls));
331
+ const classes = (_def_classes = def.classes) === null || _def_classes === void 0 ? void 0 : _def_classes.filter(Boolean);
332
+ if (!(classes === null || classes === void 0 ? void 0 : classes.length)) {
333
+ return true;
334
+ }
335
+ return classes.every((cls)=>el.classList.contains(cls));
320
336
  }
321
337
  function detectActiveStyle(editor, definitions) {
322
338
  const current = editor.s.current();
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
8
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var s in n)("object"==typeof exports?exports:e)[s]=n[s]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[850],{5440:function(e,t,n){"use strict";n.d(t,{buildStylePopup:function(){return r}});var s=n(31105),o=n(8060),l=n(69341);let i="jodit-style-popup";function r(e,t,n){let r=(0,o.classifyDefinitions)(t),c=(0,l.detectActiveStyle)(e,t),u=e.c.div(i);for(let o of r){let l=e.c.div(`${i}__group-title`);l.textContent=e.i18n(o.title),u.appendChild(l);let r=e.c.div(`${i}__grid`);for(let l of o.definitions){let o=e.c.element("button");o.type="button",o.className=`${i}__card`+(c===l?` ${i}__card_active_true`:"");let u=e.c.div(`${i}__card-preview`),f=e.c.element(l.element);for(let e of l.classes)f.classList.add(e);f.textContent=l.name,u.appendChild(f),o.appendChild(u);let a=e.c.div(`${i}__card-label`);a.textContent=l.name,o.appendChild(a),e.e.on(o,"click",()=>{e.s.focus(),(0,s.applyStyle)(e,l,t),e.synchronizeValues(),n()}),r.appendChild(o)}u.appendChild(r)}return u}},8060:function(e,t,n){"use strict";n.d(t,{classifyDefinitions:function(){return o}});var s=n(82758);function o(e){let t=[],n=[];for(let o of e)s.IS_BLOCK.test(o.element)?t.push(o):n.push(o);let o=[];return t.length&&o.push({title:"Block styles",definitions:t}),n.length&&o.push({title:"Text styles",definitions:n}),o}},28609:function(e,t,n){"use strict";var s=n(69341),o=n(5440),l=n(78955),i=n.n(l),r=n(6441);r.Config.prototype.customStyles={definitions:[]},r.Config.prototype.controls.style={tooltip:"Styles",icon:i(),isDisabled(e){return!e.o.customStyles.definitions.length},isActive(e){let t=e.o.customStyles.definitions;return!!t.length&&null!=(0,s.detectActiveStyle)(e,t)},update(e,t){var n;let o=e.o.customStyles.definitions;if(!o.length)return;let l=(0,s.detectActiveStyle)(e,o),i=(null==(n=t.control)?void 0:n.component)==="select";(e.o.textIcons||i)&&(l?t.state.text=l.name:t.state.text=i?e.i18n("Styles"):"")},exec(){return!1},popup(e,t,n){let s=e.o.customStyles.definitions;if(!s.length)return!1;e.s.current()||e.s.focus(),e.s.save();let l=(0,o.buildStylePopup)(e,s,()=>{e.s.restore(),n()});return e.e.one("beforePopupClose",()=>{e.s.restore()}),l}}},31105:function(e,t,n){"use strict";n.d(t,{applyStyle:function(){return c}});var s=n(69341),o=n(82758),l=n(2748);function i(e,t){let n=e.s.current();if(!n)return null;if(o.IS_BLOCK.test(t.element))return l.Dom.closest(n,l.Dom.isBlock,e.editor);let s=l.Dom.isElement(n)?n:n.parentNode;for(;s&&s!==e.editor;){if(l.Dom.isElement(s)&&s.nodeName.toLowerCase()===t.element)return s;s=s.parentNode}return null}function r(e,t){for(let n of t)e.classList.remove(n);""===e.className&&e.removeAttribute("class")}function c(e,t,n){let c=(0,s.detectActiveStyle)(e,n);c&&(e.s.commitStyle({element:c.element,attributes:{class:c.classes[0]}}),!function(e,t){if(t.classes.length<=1)return;let n=e.s.current();if(n)if(o.IS_BLOCK.test(t.element)){let s=l.Dom.closest(n,l.Dom.isBlock,e.editor);s&&r(s,t.classes.slice(1))}else{let n=i(e,t);n&&(r(n,t.classes.slice(1)),"span"!==n.nodeName.toLowerCase()||n.attributes.length||l.Dom.unwrap(n))}}(e,c),c===t)||(e.s.commitStyle({element:t.element,attributes:{class:t.classes[0]}}),function(e,t){if(t.classes.length<=1)return;let n=i(e,t);if(n)for(let e=1;e<t.classes.length;e++)n.classList.add(t.classes[e])}(e,t))}},69341:function(e,t,n){"use strict";n.d(t,{detectActiveStyle:function(){return i}});var s=n(82758),o=n(2748);function l(e,t){return e.nodeName.toLowerCase()===t.element&&t.classes.every(t=>e.classList.contains(t))}function i(e,t){let n=e.s.current();if(!n)return null;for(let i of t)if(s.IS_BLOCK.test(i.element)){let t=o.Dom.closest(n,o.Dom.isBlock,e.editor);if(t&&l(t,i))return i}else{let t=o.Dom.isElement(n)?n:n.parentNode;for(;t&&t!==e.editor;){if(o.Dom.isElement(t)&&l(t,i))return i;t=t.parentNode}}return null}},75554:function(e,t,n){"use strict";n.r(t),n.d(t,{style:function(){return i}});var s=n(82749);n(28609);var o=n(50911),l=n(2692);class i extends o.Plugin{afterInit(e){}beforeDestruct(e){}constructor(...e){super(...e),(0,s._)(this,"buttons",[{name:"style",group:"font"}])}}(0,s._)(i,"requires",["license"]),l.JoditPro.plugins.add("style",i)},78955:function(e){e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="1.5"> <rect x="2" y="3.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="2" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="3.5" width="9" height="9" rx="1.5" fill="currentColor" transform="rotate(45 17.5 8)"/> </svg>'}},function(e){return e(e.s=75554)}])});
8
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var l in n)("object"==typeof exports?exports:e)[l]=n[l]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[850],{5440:function(e,t,n){"use strict";n.d(t,{buildStylePopup:function(){return s}});var l=n(31105),o=n(8060),i=n(69341);let r="jodit-style-popup";function s(e,t,n){let s=(0,o.classifyDefinitions)(t),u=(0,i.detectActiveStyle)(e,t),c=e.c.div(r);for(let o of s){let i=e.c.div(`${r}__group-title`);i.textContent=e.i18n(o.title),c.appendChild(i);let s=e.c.div(`${r}__grid`);for(let i of o.definitions){var f,a;let o=e.c.element("button");o.type="button",o.className=`${r}__card`+(u===i?` ${r}__card_active_true`:"");let c=e.c.div(`${r}__card-preview`),d=e.c.element(i.element);for(let e of null!=(f=null==(a=i.classes)?void 0:a.filter(Boolean))?f:[])d.classList.add(e);d.textContent=i.name,c.appendChild(d),o.appendChild(c);let p=e.c.div(`${r}__card-label`);p.textContent=i.name,o.appendChild(p),e.e.on(o,"click",()=>{e.s.focus(),(0,l.applyStyle)(e,i,t),e.synchronizeValues(),n()}),s.appendChild(o)}c.appendChild(s)}return c}},8060:function(e,t,n){"use strict";n.d(t,{classifyDefinitions:function(){return o}});var l=n(82758);function o(e){let t=[],n=[];for(let o of e)l.IS_BLOCK.test(o.element)?t.push(o):n.push(o);let o=[];return t.length&&o.push({title:"Block styles",definitions:t}),n.length&&o.push({title:"Text styles",definitions:n}),o}},28609:function(e,t,n){"use strict";var l=n(69341),o=n(5440),i=n(78955),r=n.n(i),s=n(6441);s.Config.prototype.customStyles={definitions:[]},s.Config.prototype.controls.style={tooltip:"Styles",icon:r(),isDisabled(e){return!e.o.customStyles.definitions.length},isActive(e){let t=e.o.customStyles.definitions;return!!t.length&&null!=(0,l.detectActiveStyle)(e,t)},update(e,t){var n;let o=e.o.customStyles.definitions;if(!o.length)return;let i=(0,l.detectActiveStyle)(e,o),r=(null==(n=t.control)?void 0:n.component)==="select";(e.o.textIcons||r)&&(i?t.state.text=i.name:t.state.text=r?e.i18n("Styles"):"")},exec(){return!1},popup(e,t,n){let l=e.o.customStyles.definitions;if(!l.length)return!1;e.s.current()||e.s.focus(),e.s.save();let i=(0,o.buildStylePopup)(e,l,()=>{e.s.restore(),n()});return e.e.one("beforePopupClose",()=>{e.s.restore()}),i}}},31105:function(e,t,n){"use strict";n.d(t,{applyStyle:function(){return c}});var l=n(69341),o=n(82758),i=n(2748);function r(e,t){let n=e.s.current();if(!n)return null;if(o.IS_BLOCK.test(t.element))return i.Dom.closest(n,i.Dom.isBlock,e.editor);let l=i.Dom.isElement(n)?n:n.parentNode;for(;l&&l!==e.editor;){if(i.Dom.isElement(l)&&l.nodeName.toLowerCase()===t.element)return l;l=l.parentNode}return null}function s(e,t){for(let n of t)e.classList.remove(n);""===e.className&&e.removeAttribute("class")}function u(e){var t;let n=null==(t=e.classes)?void 0:t.filter(Boolean)[0];return n?{element:e.element,attributes:{class:n}}:{element:e.element}}function c(e,t,n){let c=(0,l.detectActiveStyle)(e,n);c&&(e.s.commitStyle(u(c)),!function(e,t){var n;let l=null==(n=t.classes)?void 0:n.filter(Boolean);if(!l||l.length<=1)return;let u=e.s.current();if(u)if(o.IS_BLOCK.test(t.element)){let t=i.Dom.closest(u,i.Dom.isBlock,e.editor);t&&s(t,l.slice(1))}else{let n=r(e,t);n&&(s(n,l.slice(1)),"span"!==n.nodeName.toLowerCase()||n.attributes.length||i.Dom.unwrap(n))}}(e,c),c===t)||(e.s.commitStyle(u(t)),function(e,t){var n;let l=null==(n=t.classes)?void 0:n.filter(Boolean);if(!l||l.length<=1)return;let o=r(e,t);if(o)for(let e=1;e<l.length;e++)o.classList.add(l[e])}(e,t))}},69341:function(e,t,n){"use strict";n.d(t,{detectActiveStyle:function(){return r}});var l=n(82758),o=n(2748);function i(e,t){var n;if(e.nodeName.toLowerCase()!==t.element)return!1;let l=null==(n=t.classes)?void 0:n.filter(Boolean);return null==l||!l.length||l.every(t=>e.classList.contains(t))}function r(e,t){let n=e.s.current();if(!n)return null;for(let r of t)if(l.IS_BLOCK.test(r.element)){let t=o.Dom.closest(n,o.Dom.isBlock,e.editor);if(t&&i(t,r))return r}else{let t=o.Dom.isElement(n)?n:n.parentNode;for(;t&&t!==e.editor;){if(o.Dom.isElement(t)&&i(t,r))return r;t=t.parentNode}}return null}},75554:function(e,t,n){"use strict";n.r(t),n.d(t,{style:function(){return r}});var l=n(82749);n(28609);var o=n(50911),i=n(2692);class r extends o.Plugin{afterInit(e){}beforeDestruct(e){}constructor(...e){super(...e),(0,l._)(this,"buttons",[{name:"style",group:"font"}])}}(0,l._)(r,"requires",["license"]),i.JoditPro.plugins.add("style",r)},78955:function(e){e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="1.5"> <rect x="2" y="3.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="2" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="3.5" width="9" height="9" rx="1.5" fill="currentColor" transform="rotate(45 17.5 8)"/> </svg>'}},function(e){return e(e.s=75554)}])});
@@ -0,0 +1,82 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
+ * Version: v4.9.33
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+
9
+ .jodit-templates-popup {
10
+ min-width: 300px;
11
+ max-height: 470px;
12
+ padding: 8px;
13
+ overflow-y: auto;
14
+ }
15
+ .jodit-templates-popup__card {
16
+ display: flex;
17
+ overflow: hidden;
18
+ width: 100%;
19
+ flex-direction: row;
20
+ align-items: stretch;
21
+ padding: 0;
22
+ border: 1px solid #ddd;
23
+ border-radius: 6px;
24
+ margin-bottom: 8px;
25
+ background: none;
26
+ color: inherit;
27
+ cursor: pointer;
28
+ text-align: left;
29
+ }
30
+ .jodit-templates-popup__card:last-child {
31
+ margin-bottom: 0;
32
+ }
33
+ .jodit-templates-popup__card:hover {
34
+ border-color: var(--jd-color-border-active, #4a6cf6);
35
+ }
36
+ .jodit-templates-popup__card-preview {
37
+ position: relative;
38
+ overflow: hidden;
39
+ width: 140px;
40
+ height: 96px;
41
+ flex-shrink: 0;
42
+ background: #f8f8f8;
43
+ pointer-events: none;
44
+ }
45
+ .jodit-templates-popup__card-preview img {
46
+ display: block;
47
+ width: 100%;
48
+ height: 100%;
49
+ object-fit: cover;
50
+ }
51
+ .jodit-templates-popup__card-preview-inner {
52
+ position: absolute;
53
+ top: 0;
54
+ left: 0;
55
+ width: 500px;
56
+ transform: scale(0.28);
57
+ transform-origin: top left;
58
+ }
59
+ .jodit-templates-popup__card-info {
60
+ display: flex;
61
+ min-width: 0;
62
+ flex: 1;
63
+ flex-direction: column;
64
+ justify-content: center;
65
+ padding: 8px 12px;
66
+ }
67
+ .jodit-templates-popup__card-title {
68
+ overflow: hidden;
69
+ font-size: 13px;
70
+ font-weight: 600;
71
+ line-height: 1.3;
72
+ text-overflow: ellipsis;
73
+ white-space: nowrap;
74
+ }
75
+ .jodit-templates-popup__card-description {
76
+ overflow: hidden;
77
+ margin-top: 4px;
78
+ color: #888;
79
+ font-size: 11px;
80
+ line-height: 1.4;
81
+ }
82
+
@@ -0,0 +1,178 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
+ * Version: v4.9.33
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+
9
+ (function webpackUniversalModuleDefinition(root, factory) {
10
+ if(typeof exports === 'object' && typeof module === 'object')
11
+ module.exports = factory();
12
+ else if(typeof define === 'function' && define.amd)
13
+ define([], factory);
14
+ else {
15
+ var a = factory();
16
+ for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
17
+ }
18
+ })(self, function() {
19
+ return (self["webpackChunkjodit_pro"] = self["webpackChunkjodit_pro"] || []).push([[945],{
20
+
21
+ /***/ 18993:
22
+ /***/ (function(module) {
23
+
24
+ module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\" stroke=\"currentColor\" stroke-width=\"1.5\"> <rect x=\"2\" y=\"2\" width=\"20\" height=\"9\" rx=\"1.5\" fill=\"none\"/> <rect x=\"2\" y=\"14\" width=\"9\" height=\"8\" rx=\"1.5\" fill=\"none\"/> <rect x=\"13\" y=\"14\" width=\"9\" height=\"8\" rx=\"1.5\" fill=\"currentColor\"/> </svg>"
25
+
26
+ /***/ }),
27
+
28
+ /***/ 54296:
29
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
30
+
31
+ "use strict";
32
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
33
+ /* harmony export */ buildTemplatesPopup: function() { return /* binding */ buildTemplatesPopup; }
34
+ /* harmony export */ });
35
+ /*!
36
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
37
+ * See LICENSE.md in the project root for license information.
38
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
39
+ */ const CLASS_NAME = 'jodit-templates-popup';
40
+ function buildTemplatesPopup(editor, definitions, close) {
41
+ const container = editor.c.div(CLASS_NAME);
42
+ for (const def of definitions){
43
+ const card = editor.c.element('button');
44
+ card.type = 'button';
45
+ card.className = `${CLASS_NAME}__card`;
46
+ const preview = editor.c.div(`${CLASS_NAME}__card-preview`);
47
+ if (def.image) {
48
+ const img = editor.c.element('img');
49
+ img.src = def.image;
50
+ img.alt = def.title;
51
+ preview.appendChild(img);
52
+ } else {
53
+ const inner = editor.c.div(`${CLASS_NAME}__card-preview-inner`);
54
+ inner.innerHTML = def.html;
55
+ preview.appendChild(inner);
56
+ }
57
+ card.appendChild(preview);
58
+ const info = editor.c.div(`${CLASS_NAME}__card-info`);
59
+ const title = editor.c.div(`${CLASS_NAME}__card-title`);
60
+ title.textContent = def.title;
61
+ info.appendChild(title);
62
+ const description = editor.c.div(`${CLASS_NAME}__card-description`);
63
+ description.textContent = def.description;
64
+ info.appendChild(description);
65
+ card.appendChild(info);
66
+ editor.e.on(card, 'click', ()=>{
67
+ editor.s.focus();
68
+ editor.s.insertHTML(def.html);
69
+ editor.synchronizeValues();
70
+ close();
71
+ });
72
+ container.appendChild(card);
73
+ }
74
+ return container;
75
+ }
76
+
77
+
78
+ /***/ }),
79
+
80
+ /***/ 58475:
81
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
82
+
83
+ "use strict";
84
+ /* harmony import */ var _ui_templates_popup__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(54296);
85
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18993);
86
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_icon_svg__WEBPACK_IMPORTED_MODULE_1__);
87
+ /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6441);
88
+ /*!
89
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
90
+ * See LICENSE.md in the project root for license information.
91
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
92
+ */
93
+
94
+
95
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.contentTemplates = {
96
+ definitions: []
97
+ };
98
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls.templates = {
99
+ tooltip: 'Templates',
100
+ icon: (_icon_svg__WEBPACK_IMPORTED_MODULE_1___default()),
101
+ isDisabled (editor) {
102
+ return !editor.o.contentTemplates.definitions.length;
103
+ },
104
+ exec () {
105
+ return false;
106
+ },
107
+ popup (editor, _current, close) {
108
+ const definitions = editor.o.contentTemplates.definitions;
109
+ if (!definitions.length) {
110
+ return false;
111
+ }
112
+ if (!editor.s.current()) {
113
+ editor.s.focus();
114
+ }
115
+ editor.s.save();
116
+ const popup = (0,_ui_templates_popup__WEBPACK_IMPORTED_MODULE_0__.buildTemplatesPopup)(editor, definitions, ()=>{
117
+ editor.s.restore();
118
+ close();
119
+ });
120
+ editor.e.one('beforePopupClose', ()=>{
121
+ editor.s.restore();
122
+ });
123
+ return popup;
124
+ }
125
+ };
126
+
127
+
128
+ /***/ }),
129
+
130
+ /***/ 61886:
131
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
132
+
133
+ "use strict";
134
+ __webpack_require__.r(__webpack_exports__);
135
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
136
+ /* harmony export */ templates: function() { return /* binding */ templates; }
137
+ /* harmony export */ });
138
+ /* harmony import */ var _swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82749);
139
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(58475);
140
+ /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50911);
141
+ /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2692);
142
+ /*!
143
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
144
+ * See LICENSE.md in the project root for license information.
145
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
146
+ */
147
+
148
+
149
+
150
+
151
+ class templates extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_2__.Plugin {
152
+ /** @override */ afterInit(_jodit) {}
153
+ /** @override */ beforeDestruct(_jodit) {}
154
+ constructor(...args){
155
+ super(...args), /** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "buttons", [
156
+ {
157
+ name: 'templates',
158
+ group: 'insert'
159
+ }
160
+ ]);
161
+ }
162
+ }
163
+ /** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(templates, "requires", [
164
+ 'license'
165
+ ]);
166
+ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_3__.JoditPro.plugins.add('templates', templates);
167
+
168
+
169
+ /***/ })
170
+
171
+ },
172
+ /******/ function(__webpack_require__) { // webpackRuntimeModules
173
+ /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
174
+ /******/ var __webpack_exports__ = (__webpack_exec__(61886));
175
+ /******/ return __webpack_exports__;
176
+ /******/ }
177
+ ]);
178
+ });
@@ -0,0 +1 @@
1
+ .jodit-templates-popup{max-height:470px;min-width:300px;overflow-y:auto;padding:8px}.jodit-templates-popup__card{align-items:stretch;background:none;border:1px solid #ddd;border-radius:6px;color:inherit;cursor:pointer;display:flex;flex-direction:row;margin-bottom:8px;overflow:hidden;padding:0;text-align:left;width:100%}.jodit-templates-popup__card:last-child{margin-bottom:0}.jodit-templates-popup__card:hover{border-color:var(--jd-color-border-active,#4a6cf6)}.jodit-templates-popup__card-preview{background:#f8f8f8;flex-shrink:0;height:96px;overflow:hidden;pointer-events:none;position:relative;width:140px}.jodit-templates-popup__card-preview img{display:block;height:100%;object-fit:cover;width:100%}.jodit-templates-popup__card-preview-inner{left:0;position:absolute;top:0;transform:scale(.28);transform-origin:top left;width:500px}.jodit-templates-popup__card-info{display:flex;flex:1;flex-direction:column;justify-content:center;min-width:0;padding:8px 12px}.jodit-templates-popup__card-title{font-size:13px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jodit-templates-popup__card-description{color:#888;font-size:11px;line-height:1.4;margin-top:4px;overflow:hidden}
@@ -0,0 +1,8 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
+ * Version: v4.9.33
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var i in n)("object"==typeof exports?exports:e)[i]=n[i]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[945],{18993:function(e){e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="1.5"> <rect x="2" y="2" width="20" height="9" rx="1.5" fill="none"/> <rect x="2" y="14" width="9" height="8" rx="1.5" fill="none"/> <rect x="13" y="14" width="9" height="8" rx="1.5" fill="currentColor"/> </svg>'},54296:function(e,t,n){"use strict";n.d(t,{buildTemplatesPopup:function(){return o}});let i="jodit-templates-popup";function o(e,t,n){let o=e.c.div(i);for(let r of t){let t=e.c.element("button");t.type="button",t.className=`${i}__card`;let s=e.c.div(`${i}__card-preview`);if(r.image){let t=e.c.element("img");t.src=r.image,t.alt=r.title,s.appendChild(t)}else{let t=e.c.div(`${i}__card-preview-inner`);t.innerHTML=r.html,s.appendChild(t)}t.appendChild(s);let l=e.c.div(`${i}__card-info`),p=e.c.div(`${i}__card-title`);p.textContent=r.title,l.appendChild(p);let c=e.c.div(`${i}__card-description`);c.textContent=r.description,l.appendChild(c),t.appendChild(l),e.e.on(t,"click",()=>{e.s.focus(),e.s.insertHTML(r.html),e.synchronizeValues(),n()}),o.appendChild(t)}return o}},58475:function(e,t,n){"use strict";var i=n(54296),o=n(18993),r=n.n(o),s=n(6441);s.Config.prototype.contentTemplates={definitions:[]},s.Config.prototype.controls.templates={tooltip:"Templates",icon:r(),isDisabled(e){return!e.o.contentTemplates.definitions.length},exec(){return!1},popup(e,t,n){let o=e.o.contentTemplates.definitions;if(!o.length)return!1;e.s.current()||e.s.focus(),e.s.save();let r=(0,i.buildTemplatesPopup)(e,o,()=>{e.s.restore(),n()});return e.e.one("beforePopupClose",()=>{e.s.restore()}),r}}},61886:function(e,t,n){"use strict";n.r(t),n.d(t,{templates:function(){return s}});var i=n(82749);n(58475);var o=n(50911),r=n(2692);class s extends o.Plugin{afterInit(e){}beforeDestruct(e){}constructor(...e){super(...e),(0,i._)(this,"buttons",[{name:"templates",group:"insert"}])}}(0,i._)(s,"requires",["license"]),r.JoditPro.plugins.add("templates",s)}},function(e){return e(e.s=61886)}])});
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.27
4
+ * Version: v4.9.33
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */