jodit-pro 4.9.25 → 4.9.30

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 (327) hide show
  1. package/CHANGELOG.md +34 -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 +12 -12
  6. package/es2015/jodit.js +176 -76
  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 +1 -1
  31. package/es2015/plugins/finder/finder.min.js +1 -1
  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 +1 -1
  58. package/es2015/plugins/style/style.min.js +1 -1
  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 +12 -12
  74. package/es2018/jodit.min.js +16 -16
  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 +1 -1
  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 +1 -1
  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 +12 -12
  103. package/es2021/jodit.js +176 -76
  104. package/es2021/jodit.min.js +24 -24
  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 +1 -1
  128. package/es2021/plugins/finder/finder.min.js +1 -1
  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 +1 -1
  155. package/es2021/plugins/style/style.min.js +1 -1
  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 +12 -12
  172. package/es2021.en/jodit.js +176 -76
  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 +1 -1
  197. package/es2021.en/plugins/finder/finder.min.js +1 -1
  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 +1 -1
  224. package/es2021.en/plugins/style/style.min.js +1 -1
  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 +187 -80
  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 +1 -1
  267. package/es5/plugins/finder/finder.min.js +1 -1
  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 +1 -1
  294. package/es5/plugins/style/style.min.js +1 -1
  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/templates/config.d.ts +13 -0
  314. package/esm/plugins/templates/config.js +1 -0
  315. package/esm/plugins/templates/icon.svg.js +1 -0
  316. package/esm/plugins/templates/interface.d.ts +11 -0
  317. package/esm/plugins/templates/interface.js +0 -0
  318. package/esm/plugins/templates/templates.d.ts +18 -0
  319. package/esm/plugins/templates/templates.js +1 -0
  320. package/esm/plugins/templates/ui/templates-popup.d.ts +8 -0
  321. package/esm/plugins/templates/ui/templates-popup.js +1 -0
  322. package/package.json +1 -1
  323. package/types/config.d.ts +6 -0
  324. package/types/plugins/templates/config.d.ts +13 -0
  325. package/types/plugins/templates/interface.d.ts +11 -0
  326. package/types/plugins/templates/templates.d.ts +18 -0
  327. package/types/plugins/templates/ui/templates-popup.d.ts +8 -0
@@ -0,0 +1,220 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
+ * Version: v4.9.30
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
+ */ var CLASS_NAME = 'jodit-templates-popup';
40
+ function buildTemplatesPopup(editor, definitions, close) {
41
+ var container = editor.c.div(CLASS_NAME);
42
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
43
+ try {
44
+ var _loop = function() {
45
+ var def = _step.value;
46
+ var card = editor.c.element('button');
47
+ card.type = 'button';
48
+ card.className = "".concat(CLASS_NAME, "__card");
49
+ var preview = editor.c.div("".concat(CLASS_NAME, "__card-preview"));
50
+ if (def.image) {
51
+ var img = editor.c.element('img');
52
+ img.src = def.image;
53
+ img.alt = def.title;
54
+ preview.appendChild(img);
55
+ } else {
56
+ var inner = editor.c.div("".concat(CLASS_NAME, "__card-preview-inner"));
57
+ inner.innerHTML = def.html;
58
+ preview.appendChild(inner);
59
+ }
60
+ card.appendChild(preview);
61
+ var info = editor.c.div("".concat(CLASS_NAME, "__card-info"));
62
+ var title = editor.c.div("".concat(CLASS_NAME, "__card-title"));
63
+ title.textContent = def.title;
64
+ info.appendChild(title);
65
+ var description = editor.c.div("".concat(CLASS_NAME, "__card-description"));
66
+ description.textContent = def.description;
67
+ info.appendChild(description);
68
+ card.appendChild(info);
69
+ editor.e.on(card, 'click', function() {
70
+ editor.s.focus();
71
+ editor.s.insertHTML(def.html);
72
+ editor.synchronizeValues();
73
+ close();
74
+ });
75
+ container.appendChild(card);
76
+ };
77
+ for(var _iterator = definitions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop();
78
+ } catch (err) {
79
+ _didIteratorError = true;
80
+ _iteratorError = err;
81
+ } finally{
82
+ try {
83
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
84
+ _iterator.return();
85
+ }
86
+ } finally{
87
+ if (_didIteratorError) {
88
+ throw _iteratorError;
89
+ }
90
+ }
91
+ }
92
+ return container;
93
+ }
94
+
95
+
96
+ /***/ }),
97
+
98
+ /***/ 58475:
99
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
100
+
101
+ "use strict";
102
+ /* harmony import */ var _ui_templates_popup__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(54296);
103
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18993);
104
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_icon_svg__WEBPACK_IMPORTED_MODULE_1__);
105
+ /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6441);
106
+ /*!
107
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
108
+ * See LICENSE.md in the project root for license information.
109
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
110
+ */
111
+
112
+
113
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.contentTemplates = {
114
+ definitions: []
115
+ };
116
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls.templates = {
117
+ tooltip: 'Templates',
118
+ icon: (_icon_svg__WEBPACK_IMPORTED_MODULE_1___default()),
119
+ isDisabled: function isDisabled(editor) {
120
+ return !editor.o.contentTemplates.definitions.length;
121
+ },
122
+ exec: function exec() {
123
+ return false;
124
+ },
125
+ popup: function popup(editor, _current, close) {
126
+ var definitions = editor.o.contentTemplates.definitions;
127
+ if (!definitions.length) {
128
+ return false;
129
+ }
130
+ if (!editor.s.current()) {
131
+ editor.s.focus();
132
+ }
133
+ editor.s.save();
134
+ var popup = (0,_ui_templates_popup__WEBPACK_IMPORTED_MODULE_0__.buildTemplatesPopup)(editor, definitions, function() {
135
+ editor.s.restore();
136
+ close();
137
+ });
138
+ editor.e.one('beforePopupClose', function() {
139
+ editor.s.restore();
140
+ });
141
+ return popup;
142
+ }
143
+ };
144
+
145
+
146
+ /***/ }),
147
+
148
+ /***/ 61886:
149
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
150
+
151
+ "use strict";
152
+ __webpack_require__.r(__webpack_exports__);
153
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
154
+ /* harmony export */ templates: function() { return /* binding */ templates; }
155
+ /* harmony export */ });
156
+ /* harmony import */ var _swc_helpers_call_super__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(80294);
157
+ /* harmony import */ var _swc_helpers_class_call_check__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20616);
158
+ /* harmony import */ var _swc_helpers_create_class__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(67709);
159
+ /* harmony import */ var _swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(82749);
160
+ /* harmony import */ var _swc_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18766);
161
+ /* harmony import */ var _swc_helpers_wrap_native_super__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23078);
162
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(58475);
163
+ /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(50911);
164
+ /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(2692);
165
+ /*!
166
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
167
+ * See LICENSE.md in the project root for license information.
168
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
169
+ */
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+ var templates = /*#__PURE__*/ function(Plugin) {
180
+ "use strict";
181
+ (0,_swc_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__._)(templates, Plugin);
182
+ function templates() {
183
+ (0,_swc_helpers_class_call_check__WEBPACK_IMPORTED_MODULE_1__._)(this, templates);
184
+ var _this;
185
+ _this = (0,_swc_helpers_call_super__WEBPACK_IMPORTED_MODULE_0__._)(this, templates, arguments), /** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_3__._)(_this, "buttons", [
186
+ {
187
+ name: 'templates',
188
+ group: 'insert'
189
+ }
190
+ ]);
191
+ return _this;
192
+ }
193
+ (0,_swc_helpers_create_class__WEBPACK_IMPORTED_MODULE_2__._)(templates, [
194
+ {
195
+ key: "afterInit",
196
+ value: /** @override */ function afterInit(_jodit) {}
197
+ },
198
+ {
199
+ key: "beforeDestruct",
200
+ value: /** @override */ function beforeDestruct(_jodit) {}
201
+ }
202
+ ]);
203
+ return templates;
204
+ }((0,_swc_helpers_wrap_native_super__WEBPACK_IMPORTED_MODULE_5__._)(jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_7__.Plugin));
205
+ /** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_3__._)(templates, "requires", [
206
+ 'license'
207
+ ]);
208
+ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_8__.JoditPro.plugins.add('templates', templates);
209
+
210
+
211
+ /***/ })
212
+
213
+ },
214
+ /******/ function(__webpack_require__) { // webpackRuntimeModules
215
+ /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
216
+ /******/ var __webpack_exports__ = (__webpack_exec__(61886));
217
+ /******/ return __webpack_exports__;
218
+ /******/ }
219
+ ]);
220
+ });
@@ -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.30
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 r}});var i="jodit-templates-popup";function r(e,t,n){var r=e.c.div(i),o=!0,c=!1,s=void 0;try{for(var a,u=t[Symbol.iterator]();!(o=(a=u.next()).done);o=!0)!function(){var t=a.value,o=e.c.element("button");o.type="button",o.className="".concat(i,"__card");var c=e.c.div("".concat(i,"__card-preview"));if(t.image){var s=e.c.element("img");s.src=t.image,s.alt=t.title,c.appendChild(s)}else{var u=e.c.div("".concat(i,"__card-preview-inner"));u.innerHTML=t.html,c.appendChild(u)}o.appendChild(c);var l=e.c.div("".concat(i,"__card-info")),p=e.c.div("".concat(i,"__card-title"));p.textContent=t.title,l.appendChild(p);var d=e.c.div("".concat(i,"__card-description"));d.textContent=t.description,l.appendChild(d),o.appendChild(l),e.e.on(o,"click",function(){e.s.focus(),e.s.insertHTML(t.html),e.synchronizeValues(),n()}),r.appendChild(o)}()}catch(e){c=!0,s=e}finally{try{o||null==u.return||u.return()}finally{if(c)throw s}}return r}},58475:function(e,t,n){"use strict";var i=n(54296),r=n(18993),o=n.n(r),c=n(6441);c.Config.prototype.contentTemplates={definitions:[]},c.Config.prototype.controls.templates={tooltip:"Templates",icon:o(),isDisabled:function(e){return!e.o.contentTemplates.definitions.length},exec:function(){return!1},popup:function(e,t,n){var r=e.o.contentTemplates.definitions;if(!r.length)return!1;e.s.current()||e.s.focus(),e.s.save();var o=(0,i.buildTemplatesPopup)(e,r,function(){e.s.restore(),n()});return e.e.one("beforePopupClose",function(){e.s.restore()}),o}}},61886:function(e,t,n){"use strict";n.r(t),n.d(t,{templates:function(){return p}});var i=n(80294),r=n(20616),o=n(67709),c=n(82749),s=n(18766),a=n(23078);n(58475);var u=n(50911),l=n(2692),p=function(e){function t(){var e;return(0,r._)(this,t),e=(0,i._)(this,t,arguments),(0,c._)(e,"buttons",[{name:"templates",group:"insert"}]),e}return(0,s._)(t,e),(0,o._)(t,[{key:"afterInit",value:function(e){}},{key:"beforeDestruct",value:function(e){}}]),t}((0,a._)(u.Plugin));(0,c._)(p,"requires",["license"]),l.JoditPro.plugins.add("templates",p)}},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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
package/es5/polyfills.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.9.25
4
+ * Version: v4.9.30
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.25
4
+ * Version: v4.9.30
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
package/esm/config.d.ts CHANGED
@@ -20,6 +20,7 @@ import type { ILayoutKeys } from "./plugins/keyboard/interface";
20
20
  import type { CanPromise } from "jodit/esm/types/index";
21
21
  import type { IUIOption } from "jodit/esm/types/index";
22
22
  import type { IStyleDefinition } from "./plugins/style/interface";
23
+ import type { ITemplateDefinition } from "./plugins/templates/interface";
23
24
  import type { ITranslateProviderFactory } from "./plugins/translate/interface";
24
25
  import type { IGoogleTranslateProviderOptions } from "./plugins/translate/interface";
25
26
  import type { IControlType } from "jodit/esm/types/index";
@@ -198,6 +199,11 @@ interface Config {
198
199
  definitions: IStyleDefinition[];
199
200
  };
200
201
  }
202
+ interface Config {
203
+ contentTemplates: {
204
+ definitions: ITemplateDefinition[];
205
+ };
206
+ }
201
207
  interface Config {
202
208
  todoList: {
203
209
  className: string;
@@ -1 +1 @@
1
- import"jodit/esm/plugins/all.js";import"./paste-from-word/paste-from-word.js";import"./license/license.js";import"./autocomplete/autocomplete.js";import"jodit/esm/plugins/speech-recognize/speech-recognize.js";import"./ai-assistant-pro/ai-assistant-pro.js";import"./backup/backup.js";import"./button-generator/button-generator.js";import"./change-case/change-case.js";import"./color-picker/color-picker.js";import"./emoji/emoji.js";import"./export-docs/export-docs.js";import"./finder/finder.js";import"./google-maps/google-maps.js";import"./google-search/google-search.js";import"./highlight-signature/highlight-signature.js";import"./iframe-editor/iframe-editor.js";import"./keyboard/keyboard.js";import"./mobile-view/mobile-view.js";import"./page-break/page-break.js";import"./paste-code/paste-code.js";import"./show-blocks/show-blocks.js";import"./style/style.js";import"./todo-list/todo-list.js";import"./translate/translate.js";import"./tune-block/tune-block.js";
1
+ import"jodit/esm/plugins/all.js";import"./paste-from-word/paste-from-word.js";import"./license/license.js";import"./autocomplete/autocomplete.js";import"jodit/esm/plugins/speech-recognize/speech-recognize.js";import"./ai-assistant-pro/ai-assistant-pro.js";import"./backup/backup.js";import"./button-generator/button-generator.js";import"./change-case/change-case.js";import"./color-picker/color-picker.js";import"./emoji/emoji.js";import"./export-docs/export-docs.js";import"./finder/finder.js";import"./google-maps/google-maps.js";import"./google-search/google-search.js";import"./highlight-signature/highlight-signature.js";import"./iframe-editor/iframe-editor.js";import"./keyboard/keyboard.js";import"./mobile-view/mobile-view.js";import"./page-break/page-break.js";import"./paste-code/paste-code.js";import"./show-blocks/show-blocks.js";import"./style/style.js";import"./templates/templates.js";import"./todo-list/todo-list.js";import"./translate/translate.js";import"./tune-block/tune-block.js";
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { ITemplateDefinition } from "./interface";
7
+ declare module 'jodit/esm/config' {
8
+ interface Config {
9
+ contentTemplates: {
10
+ definitions: ITemplateDefinition[];
11
+ };
12
+ }
13
+ }
@@ -0,0 +1 @@
1
+ import{buildTemplatesPopup as p}from"./ui/templates-popup.js";import r from"./icon.svg.js";import{Config as o}from"jodit/esm/config.js";o.prototype.contentTemplates={definitions:[]},o.prototype.controls.templates={tooltip:"Templates",icon:r,isDisabled(e){return!e.o.contentTemplates.definitions.length},exec(){return!1},popup(e,i,n){const t=e.o.contentTemplates.definitions;if(!t.length)return!1;e.s.current()||e.s.focus(),e.s.save();const s=p(e,t,()=>{e.s.restore(),n()});return e.e.one("beforePopupClose",()=>{e.s.restore()}),s}};
@@ -0,0 +1 @@
1
+ var t='<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> ';export{t as default};
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ export interface ITemplateDefinition {
7
+ title: string;
8
+ description: string;
9
+ image?: string;
10
+ html: string;
11
+ }
File without changes
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { IJodit } from "jodit/esm/types/index";
7
+ import "./config";
8
+ import { Plugin } from "jodit/esm/core/plugin/index";
9
+ export declare class templates extends Plugin {
10
+ /** @override */
11
+ static requires: string[];
12
+ /** @override */
13
+ buttons: Plugin['buttons'];
14
+ /** @override */
15
+ protected afterInit(_jodit: IJodit): void;
16
+ /** @override */
17
+ protected beforeDestruct(_jodit: IJodit): void;
18
+ }
@@ -0,0 +1 @@
1
+ var s=Object.defineProperty;var o=(i,r)=>s(i,"name",{value:r,configurable:!0});import"./config.js";import{Plugin as n}from"jodit/esm/core/plugin/index.js";import{JoditPro as u}from"../../jodit-pro.js";const e=class e extends n{constructor(){super(...arguments),this.buttons=[{name:"templates",group:"insert"}]}afterInit(r){}beforeDestruct(r){}};o(e,"templates");let t=e;t.requires=["license"],u.plugins.add("templates",t);export{t as templates};
@@ -0,0 +1,8 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { IJodit } from "jodit/esm/types/index";
7
+ import type { ITemplateDefinition } from "../interface";
8
+ export declare function buildTemplatesPopup(editor: IJodit, definitions: ITemplateDefinition[], close: () => void): HTMLElement;
@@ -0,0 +1 @@
1
+ var m=Object.defineProperty;var r=(n,p)=>m(n,"name",{value:p,configurable:!0});const t="jodit-templates-popup";function C(n,p,_){const l=n.c.div(t);for(const e of p){const c=n.c.element("button");c.type="button",c.className=`${t}__card`;const s=n.c.div(`${t}__card-preview`);if(e.image){const i=n.c.element("img");i.src=e.image,i.alt=e.title,s.appendChild(i)}else{const i=n.c.div(`${t}__card-preview-inner`);i.innerHTML=e.html,s.appendChild(i)}c.appendChild(s);const a=n.c.div(`${t}__card-info`),d=n.c.div(`${t}__card-title`);d.textContent=e.title,a.appendChild(d);const o=n.c.div(`${t}__card-description`);o.textContent=e.description,a.appendChild(o),c.appendChild(a),n.e.on(c,"click",()=>{n.s.focus(),n.s.insertHTML(e.html),n.synchronizeValues(),_()}),l.appendChild(c)}return l}r(C,"buildTemplatesPopup");export{C as buildTemplatesPopup};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jodit-pro",
3
- "version": "4.9.25",
3
+ "version": "4.9.30",
4
4
  "author": "Chupurnov Valerii <chupurnov@gmail.com>",
5
5
  "homepage": "https://xdsoft.net/jodit/pro/",
6
6
  "bugs": {
package/types/config.d.ts CHANGED
@@ -20,6 +20,7 @@ import type { ILayoutKeys } from "./plugins/keyboard/interface";
20
20
  import type { CanPromise } from "jodit/esm/types/index";
21
21
  import type { IUIOption } from "jodit/esm/types/index";
22
22
  import type { IStyleDefinition } from "./plugins/style/interface";
23
+ import type { ITemplateDefinition } from "./plugins/templates/interface";
23
24
  import type { ITranslateProviderFactory } from "./plugins/translate/interface";
24
25
  import type { IGoogleTranslateProviderOptions } from "./plugins/translate/interface";
25
26
  import type { IControlType } from "jodit/esm/types/index";
@@ -198,6 +199,11 @@ interface Config {
198
199
  definitions: IStyleDefinition[];
199
200
  };
200
201
  }
202
+ interface Config {
203
+ contentTemplates: {
204
+ definitions: ITemplateDefinition[];
205
+ };
206
+ }
201
207
  interface Config {
202
208
  todoList: {
203
209
  className: string;
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { ITemplateDefinition } from "./interface";
7
+ declare module 'jodit/esm/config' {
8
+ interface Config {
9
+ contentTemplates: {
10
+ definitions: ITemplateDefinition[];
11
+ };
12
+ }
13
+ }
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ export interface ITemplateDefinition {
7
+ title: string;
8
+ description: string;
9
+ image?: string;
10
+ html: string;
11
+ }
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { IJodit } from "jodit/esm/types/index";
7
+ import "./config";
8
+ import { Plugin } from "jodit/esm/core/plugin/index";
9
+ export declare class templates extends Plugin {
10
+ /** @override */
11
+ static requires: string[];
12
+ /** @override */
13
+ buttons: Plugin['buttons'];
14
+ /** @override */
15
+ protected afterInit(_jodit: IJodit): void;
16
+ /** @override */
17
+ protected beforeDestruct(_jodit: IJodit): void;
18
+ }
@@ -0,0 +1,8 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { IJodit } from "jodit/esm/types/index";
7
+ import type { ITemplateDefinition } from "../interface";
8
+ export declare function buildTemplatesPopup(editor: IJodit, definitions: ITemplateDefinition[], close: () => void): HTMLElement;