jodit-pro 1.3.39 → 2.0.0-beta.10

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 (455) hide show
  1. package/.nvmrc +1 -0
  2. package/CHANGELOG.md +982 -0
  3. package/LICENSE.txt +1 -0
  4. package/README.md +27 -27
  5. package/SECURITY.md +10 -0
  6. package/es2015/jodit.css +4945 -0
  7. package/es2015/jodit.fat.min.css +1 -0
  8. package/es2015/jodit.fat.min.js +10 -0
  9. package/es2015/jodit.js +42706 -0
  10. package/es2015/jodit.min.css +1 -0
  11. package/es2015/jodit.min.js +10 -0
  12. package/es2015/plugins/autocomplete/autocomplete.css +26 -0
  13. package/es2015/plugins/autocomplete/autocomplete.js +473 -0
  14. package/es2015/plugins/autocomplete/autocomplete.min.js +10 -0
  15. package/es2015/plugins/backup/backup.css +48 -0
  16. package/es2015/plugins/backup/backup.js +567 -0
  17. package/{build/plugins/backup/backup.css → es2015/plugins/backup/backup.min.css} +1 -1
  18. package/es2015/plugins/backup/backup.min.js +10 -0
  19. package/es2015/plugins/button-generator/button-generator.css +316 -0
  20. package/es2015/plugins/button-generator/button-generator.js +1363 -0
  21. package/es2015/plugins/button-generator/button-generator.min.css +1 -0
  22. package/es2015/plugins/button-generator/button-generator.min.js +10 -0
  23. package/es2015/plugins/change-case/change-case.js +171 -0
  24. package/es2015/plugins/change-case/change-case.min.js +10 -0
  25. package/es2015/plugins/color-picker/color-picker.css +133 -0
  26. package/es2015/plugins/color-picker/color-picker.js +519 -0
  27. package/es2015/plugins/color-picker/color-picker.min.css +1 -0
  28. package/es2015/plugins/color-picker/color-picker.min.js +10 -0
  29. package/es2015/plugins/emoji/emoji.css +108 -0
  30. package/es2015/plugins/emoji/emoji.js +421 -0
  31. package/es2015/plugins/emoji/emoji.min.css +1 -0
  32. package/es2015/plugins/emoji/emoji.min.js +10 -0
  33. package/es2015/plugins/export-docs/export-docs.js +153 -0
  34. package/es2015/plugins/export-docs/export-docs.min.js +10 -0
  35. package/es2015/plugins/finder/finder.css +1342 -0
  36. package/es2015/plugins/finder/finder.js +3175 -0
  37. package/es2015/plugins/finder/finder.min.css +1 -0
  38. package/es2015/plugins/finder/finder.min.js +10 -0
  39. package/es2015/plugins/google-maps/google-maps.css +397 -0
  40. package/es2015/plugins/google-maps/google-maps.js +2492 -0
  41. package/es2015/plugins/google-maps/google-maps.min.css +1 -0
  42. package/es2015/plugins/google-maps/google-maps.min.js +10 -0
  43. package/es2015/plugins/google-search/google-search.js +108 -0
  44. package/es2015/plugins/google-search/google-search.min.js +10 -0
  45. package/es2015/plugins/highlight-signature/highlight-signature.js +233 -0
  46. package/es2015/plugins/highlight-signature/highlight-signature.min.js +10 -0
  47. package/es2015/plugins/iframe-editor/iframe-editor.css +16 -0
  48. package/es2015/plugins/iframe-editor/iframe-editor.js +310 -0
  49. package/es2015/plugins/iframe-editor/iframe-editor.min.js +10 -0
  50. package/es2015/plugins/keyboard/keyboard.css +48 -0
  51. package/es2015/plugins/keyboard/keyboard.js +539 -0
  52. package/es2015/plugins/keyboard/keyboard.min.js +10 -0
  53. package/es2015/plugins/mobile-view/mobile-view.js +170 -0
  54. package/es2015/plugins/mobile-view/mobile-view.min.js +10 -0
  55. package/es2015/plugins/page-break/page-break.js +181 -0
  56. package/es2015/plugins/page-break/page-break.min.js +10 -0
  57. package/es2015/plugins/paste-code/paste-code.css +21 -0
  58. package/es2015/plugins/paste-code/paste-code.js +320 -0
  59. package/es2015/plugins/paste-code/paste-code.min.js +10 -0
  60. package/es2015/plugins/paste-from-word/paste-from-word.js +1541 -0
  61. package/es2015/plugins/paste-from-word/paste-from-word.min.js +10 -0
  62. package/es2015/plugins/show-blocks/show-blocks.js +645 -0
  63. package/es2015/plugins/show-blocks/show-blocks.min.js +10 -0
  64. package/es2015/plugins/todo-list/todo-list.css +77 -0
  65. package/es2015/plugins/todo-list/todo-list.js +314 -0
  66. package/es2015/plugins/todo-list/todo-list.min.css +1 -0
  67. package/es2015/plugins/todo-list/todo-list.min.js +10 -0
  68. package/es2015/plugins/translate/translate.css +91 -0
  69. package/es2015/plugins/translate/translate.js +630 -0
  70. package/es2015/plugins/translate/translate.min.js +10 -0
  71. package/es2015/plugins/tune-block/tune-block.css +37 -0
  72. package/es2015/plugins/tune-block/tune-block.js +387 -0
  73. package/{build/plugins/tune-block/tune-block.css → es2015/plugins/tune-block/tune-block.min.css} +1 -1
  74. package/es2015/plugins/tune-block/tune-block.min.js +10 -0
  75. package/es2018/jodit.css +4945 -0
  76. package/es2018/jodit.fat.min.css +1 -0
  77. package/es2018/jodit.fat.min.js +10 -0
  78. package/es2018/jodit.js +42762 -0
  79. package/es2018/jodit.min.css +1 -0
  80. package/es2018/jodit.min.js +10 -0
  81. package/es2018/plugins/autocomplete/autocomplete.css +26 -0
  82. package/es2018/plugins/autocomplete/autocomplete.js +471 -0
  83. package/es2018/plugins/autocomplete/autocomplete.min.js +10 -0
  84. package/es2018/plugins/backup/backup.css +48 -0
  85. package/es2018/plugins/backup/backup.js +561 -0
  86. package/{build/plugins/backup/backup.es5.css → es2018/plugins/backup/backup.min.css} +1 -1
  87. package/es2018/plugins/backup/backup.min.js +10 -0
  88. package/es2018/plugins/button-generator/button-generator.css +316 -0
  89. package/es2018/plugins/button-generator/button-generator.js +1387 -0
  90. package/es2018/plugins/button-generator/button-generator.min.css +1 -0
  91. package/es2018/plugins/button-generator/button-generator.min.js +10 -0
  92. package/es2018/plugins/change-case/change-case.js +171 -0
  93. package/es2018/plugins/change-case/change-case.min.js +10 -0
  94. package/es2018/plugins/color-picker/color-picker.css +133 -0
  95. package/es2018/plugins/color-picker/color-picker.js +519 -0
  96. package/es2018/plugins/color-picker/color-picker.min.css +1 -0
  97. package/es2018/plugins/color-picker/color-picker.min.js +10 -0
  98. package/es2018/plugins/emoji/emoji.css +108 -0
  99. package/es2018/plugins/emoji/emoji.js +425 -0
  100. package/es2018/plugins/emoji/emoji.min.css +1 -0
  101. package/es2018/plugins/emoji/emoji.min.js +10 -0
  102. package/es2018/plugins/export-docs/export-docs.js +157 -0
  103. package/es2018/plugins/export-docs/export-docs.min.js +10 -0
  104. package/es2018/plugins/finder/finder.css +1342 -0
  105. package/es2018/plugins/finder/finder.js +3160 -0
  106. package/es2018/plugins/finder/finder.min.css +1 -0
  107. package/es2018/plugins/finder/finder.min.js +10 -0
  108. package/es2018/plugins/google-maps/google-maps.css +397 -0
  109. package/es2018/plugins/google-maps/google-maps.js +2556 -0
  110. package/es2018/plugins/google-maps/google-maps.min.css +1 -0
  111. package/es2018/plugins/google-maps/google-maps.min.js +10 -0
  112. package/es2018/plugins/google-search/google-search.js +108 -0
  113. package/es2018/plugins/google-search/google-search.min.js +10 -0
  114. package/es2018/plugins/highlight-signature/highlight-signature.js +233 -0
  115. package/es2018/plugins/highlight-signature/highlight-signature.min.js +10 -0
  116. package/es2018/plugins/iframe-editor/iframe-editor.css +16 -0
  117. package/es2018/plugins/iframe-editor/iframe-editor.js +310 -0
  118. package/es2018/plugins/iframe-editor/iframe-editor.min.js +10 -0
  119. package/es2018/plugins/keyboard/keyboard.css +48 -0
  120. package/es2018/plugins/keyboard/keyboard.js +539 -0
  121. package/es2018/plugins/keyboard/keyboard.min.js +10 -0
  122. package/es2018/plugins/mobile-view/mobile-view.js +170 -0
  123. package/es2018/plugins/mobile-view/mobile-view.min.js +10 -0
  124. package/es2018/plugins/page-break/page-break.js +181 -0
  125. package/es2018/plugins/page-break/page-break.min.js +10 -0
  126. package/es2018/plugins/paste-code/paste-code.css +21 -0
  127. package/es2018/plugins/paste-code/paste-code.js +318 -0
  128. package/es2018/plugins/paste-code/paste-code.min.js +10 -0
  129. package/es2018/plugins/paste-from-word/paste-from-word.js +1541 -0
  130. package/es2018/plugins/paste-from-word/paste-from-word.min.js +10 -0
  131. package/es2018/plugins/show-blocks/show-blocks.js +645 -0
  132. package/es2018/plugins/show-blocks/show-blocks.min.js +10 -0
  133. package/es2018/plugins/todo-list/todo-list.css +77 -0
  134. package/es2018/plugins/todo-list/todo-list.js +314 -0
  135. package/es2018/plugins/todo-list/todo-list.min.css +1 -0
  136. package/es2018/plugins/todo-list/todo-list.min.js +10 -0
  137. package/es2018/plugins/translate/translate.css +91 -0
  138. package/es2018/plugins/translate/translate.js +639 -0
  139. package/es2018/plugins/translate/translate.min.js +10 -0
  140. package/es2018/plugins/tune-block/tune-block.css +37 -0
  141. package/es2018/plugins/tune-block/tune-block.js +387 -0
  142. package/{build/plugins/tune-block/tune-block.es5.css → es2018/plugins/tune-block/tune-block.min.css} +1 -1
  143. package/es2018/plugins/tune-block/tune-block.min.js +10 -0
  144. package/es2021/jodit.css +4945 -0
  145. package/es2021/jodit.fat.min.css +1 -0
  146. package/es2021/jodit.fat.min.js +10 -0
  147. package/es2021/jodit.js +42643 -0
  148. package/es2021/jodit.min.css +1 -0
  149. package/es2021/jodit.min.js +10 -0
  150. package/es2021/plugins/autocomplete/autocomplete.css +26 -0
  151. package/es2021/plugins/autocomplete/autocomplete.js +463 -0
  152. package/es2021/plugins/autocomplete/autocomplete.min.css +1 -0
  153. package/es2021/plugins/autocomplete/autocomplete.min.js +10 -0
  154. package/es2021/plugins/backup/backup.css +48 -0
  155. package/es2021/plugins/backup/backup.js +554 -0
  156. package/es2021/plugins/backup/backup.min.css +1 -0
  157. package/es2021/plugins/backup/backup.min.js +10 -0
  158. package/es2021/plugins/button-generator/button-generator.css +316 -0
  159. package/es2021/plugins/button-generator/button-generator.js +1382 -0
  160. package/es2021/plugins/button-generator/button-generator.min.css +1 -0
  161. package/es2021/plugins/button-generator/button-generator.min.js +10 -0
  162. package/es2021/plugins/change-case/change-case.js +171 -0
  163. package/es2021/plugins/change-case/change-case.min.js +10 -0
  164. package/es2021/plugins/color-picker/color-picker.css +133 -0
  165. package/es2021/plugins/color-picker/color-picker.js +517 -0
  166. package/es2021/plugins/color-picker/color-picker.min.css +1 -0
  167. package/es2021/plugins/color-picker/color-picker.min.js +10 -0
  168. package/es2021/plugins/emoji/emoji.css +108 -0
  169. package/es2021/plugins/emoji/emoji.js +425 -0
  170. package/es2021/plugins/emoji/emoji.min.css +1 -0
  171. package/es2021/plugins/emoji/emoji.min.js +10 -0
  172. package/es2021/plugins/export-docs/export-docs.js +156 -0
  173. package/es2021/plugins/export-docs/export-docs.min.js +10 -0
  174. package/es2021/plugins/finder/finder.css +1342 -0
  175. package/es2021/plugins/finder/finder.js +3152 -0
  176. package/es2021/plugins/finder/finder.min.css +1 -0
  177. package/es2021/plugins/finder/finder.min.js +10 -0
  178. package/es2021/plugins/google-maps/google-maps.css +397 -0
  179. package/es2021/plugins/google-maps/google-maps.js +2540 -0
  180. package/es2021/plugins/google-maps/google-maps.min.css +1 -0
  181. package/es2021/plugins/google-maps/google-maps.min.js +10 -0
  182. package/es2021/plugins/google-search/google-search.js +107 -0
  183. package/es2021/plugins/google-search/google-search.min.js +10 -0
  184. package/es2021/plugins/highlight-signature/highlight-signature.js +231 -0
  185. package/es2021/plugins/highlight-signature/highlight-signature.min.js +10 -0
  186. package/es2021/plugins/iframe-editor/iframe-editor.css +16 -0
  187. package/es2021/plugins/iframe-editor/iframe-editor.js +308 -0
  188. package/es2021/plugins/iframe-editor/iframe-editor.min.css +1 -0
  189. package/es2021/plugins/iframe-editor/iframe-editor.min.js +10 -0
  190. package/es2021/plugins/keyboard/keyboard.css +48 -0
  191. package/es2021/plugins/keyboard/keyboard.js +537 -0
  192. package/es2021/plugins/keyboard/keyboard.min.css +1 -0
  193. package/es2021/plugins/keyboard/keyboard.min.js +10 -0
  194. package/es2021/plugins/mobile-view/mobile-view.js +168 -0
  195. package/es2021/plugins/mobile-view/mobile-view.min.js +10 -0
  196. package/es2021/plugins/page-break/page-break.js +181 -0
  197. package/es2021/plugins/page-break/page-break.min.js +10 -0
  198. package/es2021/plugins/paste-code/paste-code.css +21 -0
  199. package/es2021/plugins/paste-code/paste-code.js +318 -0
  200. package/es2021/plugins/paste-code/paste-code.min.css +1 -0
  201. package/es2021/plugins/paste-code/paste-code.min.js +10 -0
  202. package/es2021/plugins/paste-from-word/paste-from-word.js +1528 -0
  203. package/es2021/plugins/paste-from-word/paste-from-word.min.js +10 -0
  204. package/es2021/plugins/show-blocks/show-blocks.js +645 -0
  205. package/es2021/plugins/show-blocks/show-blocks.min.js +10 -0
  206. package/es2021/plugins/todo-list/todo-list.css +77 -0
  207. package/es2021/plugins/todo-list/todo-list.js +313 -0
  208. package/es2021/plugins/todo-list/todo-list.min.css +1 -0
  209. package/es2021/plugins/todo-list/todo-list.min.js +10 -0
  210. package/es2021/plugins/translate/translate.css +91 -0
  211. package/es2021/plugins/translate/translate.js +636 -0
  212. package/es2021/plugins/translate/translate.min.css +1 -0
  213. package/es2021/plugins/translate/translate.min.js +10 -0
  214. package/es2021/plugins/tune-block/tune-block.css +37 -0
  215. package/es2021/plugins/tune-block/tune-block.js +385 -0
  216. package/es2021/plugins/tune-block/tune-block.min.css +1 -0
  217. package/es2021/plugins/tune-block/tune-block.min.js +10 -0
  218. package/es2021.en/jodit.css +4945 -0
  219. package/es2021.en/jodit.fat.min.css +1 -0
  220. package/es2021.en/jodit.fat.min.js +10 -0
  221. package/es2021.en/jodit.js +40989 -0
  222. package/es2021.en/jodit.min.css +1 -0
  223. package/es2021.en/jodit.min.js +10 -0
  224. package/es2021.en/plugins/autocomplete/autocomplete.css +26 -0
  225. package/es2021.en/plugins/autocomplete/autocomplete.js +463 -0
  226. package/es2021.en/plugins/autocomplete/autocomplete.min.css +1 -0
  227. package/es2021.en/plugins/autocomplete/autocomplete.min.js +10 -0
  228. package/es2021.en/plugins/backup/backup.css +48 -0
  229. package/es2021.en/plugins/backup/backup.js +554 -0
  230. package/es2021.en/plugins/backup/backup.min.css +1 -0
  231. package/es2021.en/plugins/backup/backup.min.js +10 -0
  232. package/es2021.en/plugins/button-generator/button-generator.css +316 -0
  233. package/es2021.en/plugins/button-generator/button-generator.js +1382 -0
  234. package/es2021.en/plugins/button-generator/button-generator.min.css +1 -0
  235. package/es2021.en/plugins/button-generator/button-generator.min.js +10 -0
  236. package/es2021.en/plugins/change-case/change-case.js +171 -0
  237. package/es2021.en/plugins/change-case/change-case.min.js +10 -0
  238. package/es2021.en/plugins/color-picker/color-picker.css +133 -0
  239. package/es2021.en/plugins/color-picker/color-picker.js +517 -0
  240. package/es2021.en/plugins/color-picker/color-picker.min.css +1 -0
  241. package/es2021.en/plugins/color-picker/color-picker.min.js +10 -0
  242. package/es2021.en/plugins/emoji/emoji.css +108 -0
  243. package/es2021.en/plugins/emoji/emoji.js +425 -0
  244. package/es2021.en/plugins/emoji/emoji.min.css +1 -0
  245. package/es2021.en/plugins/emoji/emoji.min.js +10 -0
  246. package/es2021.en/plugins/export-docs/export-docs.js +156 -0
  247. package/es2021.en/plugins/export-docs/export-docs.min.js +10 -0
  248. package/es2021.en/plugins/finder/finder.css +1342 -0
  249. package/es2021.en/plugins/finder/finder.js +3117 -0
  250. package/es2021.en/plugins/finder/finder.min.css +1 -0
  251. package/es2021.en/plugins/finder/finder.min.js +10 -0
  252. package/es2021.en/plugins/google-maps/google-maps.css +397 -0
  253. package/es2021.en/plugins/google-maps/google-maps.js +2540 -0
  254. package/es2021.en/plugins/google-maps/google-maps.min.css +1 -0
  255. package/es2021.en/plugins/google-maps/google-maps.min.js +10 -0
  256. package/es2021.en/plugins/google-search/google-search.js +107 -0
  257. package/es2021.en/plugins/google-search/google-search.min.js +10 -0
  258. package/es2021.en/plugins/highlight-signature/highlight-signature.js +231 -0
  259. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +10 -0
  260. package/es2021.en/plugins/iframe-editor/iframe-editor.css +16 -0
  261. package/es2021.en/plugins/iframe-editor/iframe-editor.js +308 -0
  262. package/es2021.en/plugins/iframe-editor/iframe-editor.min.css +1 -0
  263. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +10 -0
  264. package/es2021.en/plugins/keyboard/keyboard.css +48 -0
  265. package/es2021.en/plugins/keyboard/keyboard.js +537 -0
  266. package/es2021.en/plugins/keyboard/keyboard.min.css +1 -0
  267. package/es2021.en/plugins/keyboard/keyboard.min.js +10 -0
  268. package/es2021.en/plugins/mobile-view/mobile-view.js +168 -0
  269. package/es2021.en/plugins/mobile-view/mobile-view.min.js +10 -0
  270. package/es2021.en/plugins/page-break/page-break.js +181 -0
  271. package/es2021.en/plugins/page-break/page-break.min.js +10 -0
  272. package/es2021.en/plugins/paste-code/paste-code.css +21 -0
  273. package/es2021.en/plugins/paste-code/paste-code.js +318 -0
  274. package/es2021.en/plugins/paste-code/paste-code.min.css +1 -0
  275. package/es2021.en/plugins/paste-code/paste-code.min.js +10 -0
  276. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1528 -0
  277. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +10 -0
  278. package/es2021.en/plugins/show-blocks/show-blocks.js +322 -0
  279. package/es2021.en/plugins/show-blocks/show-blocks.min.js +10 -0
  280. package/es2021.en/plugins/todo-list/todo-list.css +77 -0
  281. package/es2021.en/plugins/todo-list/todo-list.js +313 -0
  282. package/es2021.en/plugins/todo-list/todo-list.min.css +1 -0
  283. package/es2021.en/plugins/todo-list/todo-list.min.js +10 -0
  284. package/es2021.en/plugins/translate/translate.css +91 -0
  285. package/es2021.en/plugins/translate/translate.js +636 -0
  286. package/es2021.en/plugins/translate/translate.min.css +1 -0
  287. package/es2021.en/plugins/translate/translate.min.js +10 -0
  288. package/es2021.en/plugins/tune-block/tune-block.css +37 -0
  289. package/es2021.en/plugins/tune-block/tune-block.js +385 -0
  290. package/es2021.en/plugins/tune-block/tune-block.min.css +1 -0
  291. package/es2021.en/plugins/tune-block/tune-block.min.js +10 -0
  292. package/es5/jodit.css +5956 -0
  293. package/es5/jodit.fat.min.css +1 -0
  294. package/es5/jodit.fat.min.js +10 -0
  295. package/es5/jodit.js +49879 -0
  296. package/es5/jodit.min.css +15 -0
  297. package/es5/jodit.min.js +10 -0
  298. package/es5/plugins/autocomplete/autocomplete.css +26 -0
  299. package/es5/plugins/autocomplete/autocomplete.js +536 -0
  300. package/es5/plugins/autocomplete/autocomplete.min.css +1 -0
  301. package/es5/plugins/autocomplete/autocomplete.min.js +10 -0
  302. package/es5/plugins/backup/backup.css +48 -0
  303. package/es5/plugins/backup/backup.js +599 -0
  304. package/es5/plugins/backup/backup.min.css +1 -0
  305. package/es5/plugins/backup/backup.min.js +10 -0
  306. package/es5/plugins/button-generator/button-generator.css +316 -0
  307. package/es5/plugins/button-generator/button-generator.js +1310 -0
  308. package/es5/plugins/button-generator/button-generator.min.css +1 -0
  309. package/es5/plugins/button-generator/button-generator.min.js +10 -0
  310. package/es5/plugins/change-case/change-case.js +179 -0
  311. package/es5/plugins/change-case/change-case.min.js +10 -0
  312. package/es5/plugins/color-picker/color-picker.css +133 -0
  313. package/es5/plugins/color-picker/color-picker.js +525 -0
  314. package/es5/plugins/color-picker/color-picker.min.css +1 -0
  315. package/es5/plugins/color-picker/color-picker.min.js +10 -0
  316. package/es5/plugins/emoji/emoji.css +108 -0
  317. package/es5/plugins/emoji/emoji.js +459 -0
  318. package/es5/plugins/emoji/emoji.min.css +1 -0
  319. package/es5/plugins/emoji/emoji.min.js +10 -0
  320. package/es5/plugins/export-docs/export-docs.js +174 -0
  321. package/es5/plugins/export-docs/export-docs.min.js +10 -0
  322. package/es5/plugins/finder/finder.css +1342 -0
  323. package/es5/plugins/finder/finder.js +3335 -0
  324. package/es5/plugins/finder/finder.min.css +1 -0
  325. package/es5/plugins/finder/finder.min.js +10 -0
  326. package/es5/plugins/google-maps/google-maps.css +397 -0
  327. package/es5/plugins/google-maps/google-maps.js +2463 -0
  328. package/es5/plugins/google-maps/google-maps.min.css +1 -0
  329. package/es5/plugins/google-maps/google-maps.min.js +10 -0
  330. package/es5/plugins/google-search/google-search.js +113 -0
  331. package/es5/plugins/google-search/google-search.min.js +10 -0
  332. package/es5/plugins/highlight-signature/highlight-signature.js +253 -0
  333. package/es5/plugins/highlight-signature/highlight-signature.min.js +10 -0
  334. package/es5/plugins/iframe-editor/iframe-editor.css +16 -0
  335. package/es5/plugins/iframe-editor/iframe-editor.js +319 -0
  336. package/es5/plugins/iframe-editor/iframe-editor.min.css +1 -0
  337. package/es5/plugins/iframe-editor/iframe-editor.min.js +10 -0
  338. package/es5/plugins/keyboard/keyboard.css +48 -0
  339. package/es5/plugins/keyboard/keyboard.js +556 -0
  340. package/es5/plugins/keyboard/keyboard.min.css +1 -0
  341. package/es5/plugins/keyboard/keyboard.min.js +10 -0
  342. package/es5/plugins/mobile-view/mobile-view.js +176 -0
  343. package/es5/plugins/mobile-view/mobile-view.min.js +10 -0
  344. package/es5/plugins/page-break/page-break.js +169 -0
  345. package/es5/plugins/page-break/page-break.min.js +10 -0
  346. package/es5/plugins/paste-code/paste-code.css +21 -0
  347. package/es5/plugins/paste-code/paste-code.js +348 -0
  348. package/es5/plugins/paste-code/paste-code.min.css +1 -0
  349. package/es5/plugins/paste-code/paste-code.min.js +10 -0
  350. package/es5/plugins/paste-from-word/paste-from-word.js +1670 -0
  351. package/es5/plugins/paste-from-word/paste-from-word.min.js +10 -0
  352. package/es5/plugins/show-blocks/show-blocks.js +649 -0
  353. package/es5/plugins/show-blocks/show-blocks.min.js +10 -0
  354. package/es5/plugins/todo-list/todo-list.css +77 -0
  355. package/es5/plugins/todo-list/todo-list.js +324 -0
  356. package/es5/plugins/todo-list/todo-list.min.css +1 -0
  357. package/es5/plugins/todo-list/todo-list.min.js +10 -0
  358. package/es5/plugins/translate/translate.css +91 -0
  359. package/es5/plugins/translate/translate.js +657 -0
  360. package/es5/plugins/translate/translate.min.css +1 -0
  361. package/es5/plugins/translate/translate.min.js +10 -0
  362. package/es5/plugins/tune-block/tune-block.css +37 -0
  363. package/es5/plugins/tune-block/tune-block.js +397 -0
  364. package/es5/plugins/tune-block/tune-block.min.css +1 -0
  365. package/es5/plugins/tune-block/tune-block.min.js +10 -0
  366. package/examples/arabic.lang.html +8 -8
  367. package/examples/color-picker.html +6 -6
  368. package/examples/custom-icons.html +8 -8
  369. package/examples/custom-toolbar.html +8 -8
  370. package/examples/example.default.html +6 -6
  371. package/examples/fullsize.html +8 -8
  372. package/examples/index.html +6 -6
  373. package/examples/inline-mode.html +8 -8
  374. package/examples/oneinstance.html +8 -8
  375. package/examples/theme.html +6 -6
  376. package/package.json +6 -22
  377. package/LICENSE.md +0 -3
  378. package/build/jodit.css +0 -1
  379. package/build/jodit.es5.css +0 -8
  380. package/build/jodit.es5.js +0 -1
  381. package/build/jodit.fat.css +0 -1
  382. package/build/jodit.fat.es5.css +0 -1
  383. package/build/jodit.fat.es5.js +0 -1
  384. package/build/jodit.fat.js +0 -1
  385. package/build/jodit.js +0 -1
  386. package/build/plugins/autocomplete/autocomplete.es5.js +0 -1
  387. package/build/plugins/autocomplete/autocomplete.js +0 -1
  388. package/build/plugins/backup/backup.es5.js +0 -1
  389. package/build/plugins/backup/backup.js +0 -1
  390. package/build/plugins/button-generator/button-generator.css +0 -1
  391. package/build/plugins/button-generator/button-generator.es5.css +0 -1
  392. package/build/plugins/button-generator/button-generator.es5.js +0 -1
  393. package/build/plugins/button-generator/button-generator.js +0 -1
  394. package/build/plugins/change-case/change-case.es5.js +0 -1
  395. package/build/plugins/change-case/change-case.js +0 -1
  396. package/build/plugins/color-picker/color-picker.css +0 -1
  397. package/build/plugins/color-picker/color-picker.es5.css +0 -1
  398. package/build/plugins/color-picker/color-picker.es5.js +0 -1
  399. package/build/plugins/color-picker/color-picker.js +0 -1
  400. package/build/plugins/emoji/emoji.css +0 -1
  401. package/build/plugins/emoji/emoji.es5.css +0 -1
  402. package/build/plugins/emoji/emoji.es5.js +0 -1
  403. package/build/plugins/emoji/emoji.js +0 -1
  404. package/build/plugins/export-docs/export-docs.es5.js +0 -1
  405. package/build/plugins/export-docs/export-docs.js +0 -1
  406. package/build/plugins/finder/finder.css +0 -1
  407. package/build/plugins/finder/finder.es5.css +0 -1
  408. package/build/plugins/finder/finder.es5.js +0 -1
  409. package/build/plugins/finder/finder.js +0 -1
  410. package/build/plugins/google-maps/google-maps.css +0 -1
  411. package/build/plugins/google-maps/google-maps.es5.css +0 -1
  412. package/build/plugins/google-maps/google-maps.es5.js +0 -1
  413. package/build/plugins/google-maps/google-maps.js +0 -1
  414. package/build/plugins/google-search/google-search.es5.js +0 -1
  415. package/build/plugins/google-search/google-search.js +0 -1
  416. package/build/plugins/highlight-signature/highlight-signature.es5.js +0 -1
  417. package/build/plugins/highlight-signature/highlight-signature.js +0 -1
  418. package/build/plugins/iframe-editor/iframe-editor.es5.js +0 -1
  419. package/build/plugins/iframe-editor/iframe-editor.js +0 -1
  420. package/build/plugins/keyboard/keyboard.es5.js +0 -1
  421. package/build/plugins/keyboard/keyboard.js +0 -1
  422. package/build/plugins/mobile-view/mobile-view.css +0 -0
  423. package/build/plugins/mobile-view/mobile-view.es5.css +0 -0
  424. package/build/plugins/mobile-view/mobile-view.es5.js +0 -1
  425. package/build/plugins/mobile-view/mobile-view.js +0 -1
  426. package/build/plugins/page-break/page-break.css +0 -1
  427. package/build/plugins/page-break/page-break.es5.css +0 -1
  428. package/build/plugins/page-break/page-break.es5.js +0 -1
  429. package/build/plugins/page-break/page-break.js +0 -1
  430. package/build/plugins/paste-code/paste-code.es5.js +0 -1
  431. package/build/plugins/paste-code/paste-code.js +0 -1
  432. package/build/plugins/paste-from-word/paste-from-word.es5.js +0 -1
  433. package/build/plugins/paste-from-word/paste-from-word.js +0 -1
  434. package/build/plugins/show-blocks/show-blocks.es5.js +0 -1
  435. package/build/plugins/show-blocks/show-blocks.js +0 -1
  436. package/build/plugins/todo-list/todo-list.css +0 -1
  437. package/build/plugins/todo-list/todo-list.es5.css +0 -1
  438. package/build/plugins/todo-list/todo-list.es5.js +0 -1
  439. package/build/plugins/todo-list/todo-list.js +0 -1
  440. package/build/plugins/translate/translate.es5.js +0 -1
  441. package/build/plugins/translate/translate.js +0 -1
  442. package/build/plugins/tune-block/tune-block.es5.js +0 -1
  443. package/build/plugins/tune-block/tune-block.js +0 -1
  444. package/index.html +0 -268
  445. /package/{build/config.js → config.js} +0 -0
  446. /package/{build/plugins/autocomplete/autocomplete.css → es2015/plugins/autocomplete/autocomplete.min.css} +0 -0
  447. /package/{build/plugins/iframe-editor/iframe-editor.css → es2015/plugins/iframe-editor/iframe-editor.min.css} +0 -0
  448. /package/{build/plugins/keyboard/keyboard.css → es2015/plugins/keyboard/keyboard.min.css} +0 -0
  449. /package/{build/plugins/paste-code/paste-code.css → es2015/plugins/paste-code/paste-code.min.css} +0 -0
  450. /package/{build/plugins/translate/translate.css → es2015/plugins/translate/translate.min.css} +0 -0
  451. /package/{build/plugins/autocomplete/autocomplete.es5.css → es2018/plugins/autocomplete/autocomplete.min.css} +0 -0
  452. /package/{build/plugins/iframe-editor/iframe-editor.es5.css → es2018/plugins/iframe-editor/iframe-editor.min.css} +0 -0
  453. /package/{build/plugins/keyboard/keyboard.es5.css → es2018/plugins/keyboard/keyboard.min.css} +0 -0
  454. /package/{build/plugins/paste-code/paste-code.es5.css → es2018/plugins/paste-code/paste-code.min.css} +0 -0
  455. /package/{build/plugins/translate/translate.es5.css → es2018/plugins/translate/translate.min.css} +0 -0
@@ -0,0 +1,537 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
+ * Version: v2.0.0-beta.10
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([[283],{
20
+
21
+ /***/ 48326:
22
+ /***/ (function(module) {
23
+
24
+ module.exports = "<svg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M0 6c0-1.1.9-2 2-2h16a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm2 0v2h2V6H2zm1 3v2h2V9H3zm-1 3v2h2v-2H2zm3 0v2h10v-2H5zm11 0v2h2v-2h-2zM6 9v2h2V9H6zm3 0v2h2V9H9zm3 0v2h2V9h-2zm3 0v2h2V9h-2zM5 6v2h2V6H5zm3 0v2h2V6H8zm3 0v2h2V6h-2zm3 0v2h4V6h-4z\"/> </svg>"
25
+
26
+ /***/ }),
27
+
28
+ /***/ 31169:
29
+ /***/ (function(module) {
30
+
31
+ module.exports = "<?xml version=\"1.0\" ?><svg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 10l7-7h13v14H7l-7-7zm14.41 0l2.13-2.12-1.42-1.42L13 8.6l-2.12-2.13-1.42 1.42L11.6 10l-2.13 2.12 1.42 1.42L13 11.4l2.12 2.13 1.42-1.42L14.4 10z\"/></svg>"
32
+
33
+ /***/ }),
34
+
35
+ /***/ 37967:
36
+ /***/ (function(module) {
37
+
38
+ module.exports = "<svg viewBox=\"0 0 30 29\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M15 0.5L30 15.2625H22V24H8V15.2625H0L15 0.5Z\"/> <rect x=\"8\" y=\"26\" width=\"14\" height=\"3\"/> </svg>"
39
+
40
+ /***/ }),
41
+
42
+ /***/ 92100:
43
+ /***/ (function(module) {
44
+
45
+ module.exports = "<svg xmlns='http://www.w3.org/2000/svg' viewBox=\"0 0 24 24\" > <circle cy=\"12\" cx=\"12\" r=\"2.2\"/> <circle cy=\"12\" cx=\"5\" r=\"2.2\"/> <circle cy=\"12\" cx=\"19\" r=\"2.2\"/> </svg>"
46
+
47
+ /***/ }),
48
+
49
+ /***/ 44660:
50
+ /***/ (function(module) {
51
+
52
+ module.exports = "<svg viewBox=\"0 0 30 29\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M15 0.5L30 15.2625H22V29H8V15.2625H0L15 0.5Z\"/> </svg>"
53
+
54
+ /***/ }),
55
+
56
+ /***/ 82333:
57
+ /***/ (function(module) {
58
+
59
+ module.exports = "<svg viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M23.17 14.83l7.17 7.17h-28.34v4h28.34l-7.17 7.17 2.83 2.83 12-12-12-12-2.83 2.83zm16.83-2.83v24h4v-24h-4z\"/> </svg>"
60
+
61
+ /***/ }),
62
+
63
+ /***/ 72257:
64
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
65
+
66
+ "use strict";
67
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
68
+
69
+ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.keyboard = {
70
+ defaultLayoutSet: 'en',
71
+ showLayoutSwitcher: true,
72
+ extraKeyGroup: 'other',
73
+ extraKeyButtons: [],
74
+ delayKeyRepeat: 350,
75
+ periodKeyRepeat: 100,
76
+ layoutList: {
77
+ en: {
78
+ title: 'English',
79
+ // prettier-ignore
80
+ keys: [
81
+ ['` ~ ±', '1 ! §', '2 @', '3 #', '4 $', '5 %', '6 ^', '7 &', '8 *', '9 (', '0 )', '- _', '= +', 'Backspace'],
82
+ ['Tab', 'q Q', 'w W', 'e E', 'r R', 't T', 'y Y', 'u U', 'i I', 'o O', 'p P', '[ {', '] }', '\\ |'],
83
+ ['Caps', 'a A', 's S', 'd D', 'f F', 'g G', 'h H', 'j J', 'k K', 'l L', '; :', '\' "', 'Enter'],
84
+ ['Shift', 'z Z', 'x X', 'c C', 'v V', 'b B', 'n N', 'm M', ', <', '. >', '/ ?', 'Shift'],
85
+ ['Options', 'Space', 'Options'],
86
+ ]
87
+ // prettier-ignore-end
88
+ },
89
+ es: {
90
+ title: 'Español',
91
+ // prettier-ignore
92
+ keys: [
93
+ ['º ` ~', '1 ! §', '2 @', '3 #', '4 $', '5 %', '6 ^', '7 &', '8 *', '9 (', '0 )', '- _ |', '¡ = +', 'Backspace'],
94
+ ['Tab', 'q Q', 'w W', 'e E', 'r R', 't T', 'y Y', 'u U', 'i I', 'o O', 'p P', '[ {', '] }', 'ç Ç \\'],
95
+ ['Caps', 'a A', 's S', 'd D', 'f F', 'g G', 'h H', 'j J', 'k K', 'l L', 'ñ Ñ ; :', '\' "', 'Enter'],
96
+ ['Shift', 'z Z', 'x X', 'c C', 'v V', 'b B', 'n N', 'm M', ', <', '. >', '/ ?', 'Shift'],
97
+ ['Options', 'Space', 'Options'],
98
+ ]
99
+ // prettier-ignore-end
100
+ },
101
+ de: {
102
+ title: 'Deutsch',
103
+ // prettier-ignore
104
+ keys: [
105
+ ['` ~ ±', '1 ! §', '2 @', '3 #', '4 $', '5 %', '6 ^', '7 &', '8 * :', '9 ( {', '0 ) }', '- _', '= +', 'Backspace'],
106
+ ['Tab', 'q Q', 'w W', 'e E', 'r R', 't T', 'z Z', 'u U', 'i I', 'o O', 'p P', 'ü Ü [', '] }', '\\ |'],
107
+ ['Caps', 'a A', 's S', 'd D', 'f F', 'g G', 'h H', 'j J', 'k K', 'l L', 'ö Ö ;', 'ä Ä \' "', 'Enter'],
108
+ ['Shift', 'y Y', 'x X', 'c C', 'v V', 'b B', 'n N', 'm M', ', <', '. >', '/ ?', 'Shift'],
109
+ ['Options', 'Space', 'Options'],
110
+ ]
111
+ // prettier-ignore-end
112
+ },
113
+ ru: {
114
+ title: 'Русский',
115
+ // prettier-ignore
116
+ keys: [
117
+ ['` ~ ±', '1 ! §', '2 @ "', '3 # :', '4 $ <', '5 % >', '6 ^', '7 &', '8 *', '9 (', '0 )', '- _', '= +', 'Backspace'],
118
+ ['Tab', 'й Й', 'ц Ц', 'у У', 'к К', 'е Е', 'н Н', 'г Г', 'ш Ш', 'щ Щ', 'з З', 'х Х [', 'ъ ] {', '\\ | }'],
119
+ ['Caps', 'ф Ф', 'ы Ы', 'в В', 'а А', 'п П', 'р Р', 'о О', 'л Л', 'д Д', 'ж Ж ;', 'э Э \'', 'Enter'],
120
+ ['Shift', 'я Я', 'ч Ч', 'с С', 'м М', 'и И', 'т Т', 'ь Ь', 'б Б ,', 'ю Ю .', '/ ?', 'Shift'],
121
+ ['Options', 'Space', 'Options'],
122
+ ]
123
+ // prettier-ignore-end
124
+ },
125
+ tr: {
126
+ title: 'Türkçe',
127
+ // prettier-ignore
128
+ keys: [
129
+ ['" é` ~', '1 ! §', '2 @ "', '3 # :', '4 $ <', '5 % >', '6 ^ ±', '7 &', '8 *', '9 ( {', '0 ) }', '- _ [', '= + ]', 'Backspace'],
130
+ ['Tab', 'q Q', 'w W', 'e E', 'r R', 't T', 'y Y', 'u U', 'ı I', 'o O', 'p P', 'ğ Ğ', 'ü Ü', ', \\ |'],
131
+ ['Caps', 'a A', 's S', 'd D', 'f F', 'g G', 'h H', 'j J', 'k K', 'l L', 'ş Ş', 'i̇ İ', 'Enter'],
132
+ ['Shift', 'z Z', 'x X', 'c C', 'v V', 'b B', 'n N', 'm M', 'ö Ö <', 'ç Ç >', '. / ?', 'Shift'],
133
+ ['Options', 'Space', 'Options'],
134
+ ]
135
+ // prettier-ignore-end
136
+ },
137
+ iw: {
138
+ title: 'Hebrew',
139
+ // prettier-ignore
140
+ keys: [
141
+ ['` ~ ±', '1 ! §', '2 @', '3 #', '4 $', '5 %', '6 ^', '7 &', '8 *', '9 (', '0 )', '- _', '= +', 'Backspace'],
142
+ ['Tab', '/ q Q', '\' w W', 'ק e E', 'ר r R', 'א t T', 'ט y Y', 'ו u U', 'ן i I', 'ם o O', 'פ p P', '[ {', '] }', '\\ |'],
143
+ ['Caps', 'ש a A', 'ד s S', 'ג d D', 'כ f F', 'ע g G', 'י h H', 'ח j J', 'ל k K', 'ך l L', 'ף ; :', '\' "', 'Enter'],
144
+ ['Shift', 'ז z Z', 'ס x X', 'ב c C', 'ה v V', 'נ b B', 'מ n N', 'צ m M', ', <', '. >', '/ ?', 'Shift'],
145
+ ['Options', 'Space', 'Options'],
146
+ ]
147
+ // prettier-ignore-end
148
+ },
149
+ tata: {
150
+ title: 'Tata',
151
+ // prettier-ignore
152
+ keys: [
153
+ ['һ Һ` ~', '1 ! §', '2 @ "', '3 # :', '4 $ <', '5 % >', '6 ^ ±', '7 &', '8 *', '9 ( {', '0 )', '- _', '= +', 'Backspace'],
154
+ ['Tab', 'й Й', 'ө Ө', 'у У', 'к К', 'е Е', 'н Н', 'г Г', 'ш Ш', 'ә Ә', 'з З', 'х Х [', 'ү Ү ]', '\\ | }'],
155
+ ['Caps', 'ф Ф', 'ы Ы', 'в В', 'а А', 'п П', 'р Р', 'о О', 'л Л', 'д Д', 'ң Ң ;', 'э Э \'', 'Enter'],
156
+ ['Shift', 'я Я', 'ч Ч', 'с С', 'м М', 'и И', 'т Т', 'җ Җ', 'б Б ,', 'ю Ю .', 'ґ Ґ /', 'Shift'],
157
+ ['Options', 'Space', 'Options'],
158
+ ]
159
+ // prettier-ignore-end
160
+ }
161
+ },
162
+ layoutSwitchList: ['en', 'es', 'de', 'ru', 'tr', 'iw', 'tata'],
163
+ keySize: 32,
164
+ // prettier-ignore
165
+ layout: [
166
+ [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2],
167
+ [1.5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1.5],
168
+ [1.8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2.2],
169
+ [2.5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2.5],
170
+ [3.5, 9, 3.5]
171
+ ]
172
+ // prettier-ignore-end
173
+ };
174
+ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.keyboard = {
175
+ tooltip: 'Keyboard',
176
+ icon: __webpack_require__(48326),
177
+ isActive(editor) {
178
+ return Boolean(editor.e.fire('isKeyboardOpened'));
179
+ },
180
+ command: 'toggleKeyboard'
181
+ };
182
+ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.extraKeyboardButtons = {};
183
+
184
+
185
+ /***/ }),
186
+
187
+ /***/ 34295:
188
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
189
+
190
+ "use strict";
191
+ __webpack_require__.r(__webpack_exports__);
192
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
193
+ /* harmony export */ "keyboard": function() { return /* binding */ keyboard; }
194
+ /* harmony export */ });
195
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(97582);
196
+ /* harmony import */ var jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7324);
197
+ /* harmony import */ var _JoditPro__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88292);
198
+ /* harmony import */ var _ui_keyboard_keyboard__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(21295);
199
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50526);
200
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(72257);
201
+ /* harmony import */ var jodit_modules__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8079);
202
+ /* harmony import */ var jodit_core_ui__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(75004);
203
+ /* harmony import */ var jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(71350);
204
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(77628);
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+ class keyboard extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Plugin */ .S {
216
+ constructor(jodit) {
217
+ super(jodit);
218
+ /** @override */
219
+ this.hasStyle = !_JoditPro__WEBPACK_IMPORTED_MODULE_1__/* .JoditPro.fatMode */ .y.fatMode;
220
+ /** @override */
221
+ this.buttons = [
222
+ {
223
+ group: 'insert',
224
+ name: 'keyboard'
225
+ }
226
+ ];
227
+ const { extraKeyButtons, extraKeyGroup } = jodit.o.keyboard;
228
+ if (extraKeyButtons.length) {
229
+ extraKeyButtons.forEach((key, index) => {
230
+ const id = (0,jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_7__/* .isString */ .HD)(key) ? key : key.key, hotkeys = (0,jodit_core_helpers_checker__WEBPACK_IMPORTED_MODULE_7__/* .isString */ .HD)(key) || !key.hotkeys
231
+ ? [`ctrl+${index + 1}`]
232
+ : key.hotkeys;
233
+ jodit.registerButton({
234
+ name: `extraKeyboardButtons.${id}`,
235
+ group: extraKeyGroup
236
+ });
237
+ const { extraKeyboardButtons } = jodit_config__WEBPACK_IMPORTED_MODULE_8__.Config.defaultOptions.controls;
238
+ extraKeyboardButtons[id] = {
239
+ name: id,
240
+ tooltip: id,
241
+ args: [id],
242
+ hotkeys,
243
+ command: 'insertChar'
244
+ };
245
+ });
246
+ }
247
+ }
248
+ /** @override */
249
+ afterInit(jodit) {
250
+ jodit
251
+ .registerCommand('toggleKeyboard', this.toggleKeyboard)
252
+ .registerCommand('insertChar', this.insertChar);
253
+ jodit.e.on('isKeyboardOpened', () => this.__keyboard?.isOpened);
254
+ }
255
+ insertChar(_, _1, insertChar) {
256
+ this.j.s.insertNode(this.j.createInside.text(insertChar));
257
+ }
258
+ /**
259
+ * Show or hide virtual Keyboard
260
+ */
261
+ toggleKeyboard() {
262
+ if (!this.__keyboard) {
263
+ this.__keyboard = new jodit_modules__WEBPACK_IMPORTED_MODULE_5__.Dialog({
264
+ toolbarButtonSize: 'tiny'
265
+ });
266
+ const ui = new _ui_keyboard_keyboard__WEBPACK_IMPORTED_MODULE_2__/* .UIKeyboard */ .r(this.j);
267
+ this.__keyboard
268
+ .setMod('slim', true)
269
+ .setMod('adaptive', false)
270
+ .setContent(ui);
271
+ const { showLayoutSwitcher, layoutSwitchList, layoutList } = this.j.o.keyboard;
272
+ if (showLayoutSwitcher) {
273
+ const switcher = new jodit_core_ui__WEBPACK_IMPORTED_MODULE_6__/* .UISelect */ .Cj(this.__keyboard, {
274
+ value: ui.state.currentLayout,
275
+ options: layoutSwitchList.map((key) => {
276
+ const title = layoutList[key]?.title ?? key;
277
+ return {
278
+ text: title,
279
+ value: key
280
+ };
281
+ }),
282
+ onChange(value) {
283
+ ui.state.currentLayout = value;
284
+ }
285
+ });
286
+ switcher
287
+ .setMod('size', 'tiny')
288
+ .setMod('width', 'auto')
289
+ .setMod('variant', 'outline');
290
+ this.__keyboard.setHeader(switcher);
291
+ }
292
+ }
293
+ if (this.__keyboard.isOpened) {
294
+ this.__keyboard.close();
295
+ }
296
+ else {
297
+ this.__keyboard.open();
298
+ }
299
+ }
300
+ /** @override */
301
+ beforeDestruct(jodit) {
302
+ this.__keyboard?.destruct();
303
+ }
304
+ }
305
+ /** @override */
306
+ keyboard.requires = ['license'];
307
+ (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
308
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
309
+ ], keyboard.prototype, "insertChar", null);
310
+ (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
311
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
312
+ ], keyboard.prototype, "toggleKeyboard", null);
313
+ _JoditPro__WEBPACK_IMPORTED_MODULE_1__/* .JoditPro.plugins.add */ .y.plugins.add('keyboard', keyboard);
314
+
315
+
316
+ /***/ }),
317
+
318
+ /***/ 21295:
319
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
320
+
321
+ "use strict";
322
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
323
+ /* harmony export */ "r": function() { return /* binding */ UIKeyboard; }
324
+ /* harmony export */ });
325
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(97582);
326
+ /* harmony import */ var jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75004);
327
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50526);
328
+ /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98478);
329
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(11612);
330
+ /* harmony import */ var autobind_decorator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23185);
331
+ /*!
332
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
333
+ * See LICENSE.md in the project root for license information.
334
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
335
+ */
336
+ var UIKeyboard_1;
337
+
338
+
339
+
340
+
341
+
342
+
343
+
344
+ let UIKeyboard = UIKeyboard_1 = class UIKeyboard extends jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u1 {
345
+ /** @override */
346
+ className() {
347
+ return 'UIKeyboard';
348
+ }
349
+ /** @override */
350
+ render() {
351
+ const { layout, keySize } = this.j.options.keyboard, rowCount = layout.length;
352
+ return `<div>${(() => {
353
+ const rows = [];
354
+ for (let i = 0; i < rowCount; i += 1) {
355
+ const row = [];
356
+ for (let j = 0; j < layout[i].length; j += 1) {
357
+ row.push(`<div style="width:${keySize * layout[i][j]}px;height:${keySize}px;" class="&__key"></div>`);
358
+ }
359
+ rows.push(`<div class='&__row'>${row.join('\n')}</div>`);
360
+ }
361
+ return rows.join('\n');
362
+ })()}</div>`;
363
+ }
364
+ onStateChange() {
365
+ const { currentLayout, options, shift, caps } = this.state, { keys } = this.j.o.keyboard.layoutList[currentLayout];
366
+ let index = 0;
367
+ for (let i = 0; i < keys.length; i += 1) {
368
+ for (let j = 0; j < keys[i].length; j += 1) {
369
+ const values = keys[i][j].split(' ');
370
+ let value = values[0];
371
+ if (shift) {
372
+ value = values[1];
373
+ }
374
+ if (!shift &&
375
+ caps &&
376
+ values[1] &&
377
+ UIKeyboard_1.isLetter(values[0])) {
378
+ value = values[1];
379
+ }
380
+ if (options) {
381
+ value = values[2];
382
+ }
383
+ this.setKeyValue(index, value ?? values[0]);
384
+ index += 1;
385
+ }
386
+ }
387
+ }
388
+ static isLetter(c) {
389
+ return c.toLowerCase() !== c.toUpperCase();
390
+ }
391
+ setKeyValue(index, value) {
392
+ const elm = this._keys[index];
393
+ if (!elm) {
394
+ return;
395
+ }
396
+ let active = false;
397
+ const { options, shift, caps } = this.state;
398
+ switch (value) {
399
+ case 'Caps':
400
+ active = caps;
401
+ break;
402
+ case 'Options':
403
+ active = options;
404
+ break;
405
+ case 'Shift':
406
+ active = shift;
407
+ break;
408
+ }
409
+ elm.innerHTML = UIKeyboard_1.decorate(value);
410
+ elm.classList.toggle(this.getFullElName('key', 'active', true), active);
411
+ (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.attr)(elm, '-key', value);
412
+ }
413
+ onKeyUp() {
414
+ if (this.pressed) {
415
+ this.stopPress();
416
+ }
417
+ }
418
+ onReady() {
419
+ this.j.e.on(this.getElms('key'), 'mouseenter', this.stopPress);
420
+ }
421
+ stopPress() {
422
+ if (this.pressed) {
423
+ this.pressed = false;
424
+ this.j.async.clearTimeout(this.reKeyDownTimeout);
425
+ this._keys.forEach((elm) => {
426
+ elm.classList.remove(this.getFullElName('key', 'pressed', true));
427
+ });
428
+ }
429
+ }
430
+ onKeyDown(e, timeout = 0) {
431
+ const target = e.target;
432
+ if (!target || !target.classList.contains(this.getFullElName('key'))) {
433
+ return false;
434
+ }
435
+ this.pressed = true;
436
+ target.classList.add(this.getFullElName('key', 'pressed', true));
437
+ const key = (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.attr)(target, '-key');
438
+ switch (key) {
439
+ case 'Caps':
440
+ this.state.caps = !this.state.caps;
441
+ break;
442
+ case 'Shift':
443
+ this.state.shift = !this.state.shift;
444
+ break;
445
+ case 'Options':
446
+ this.state.options = !this.state.options;
447
+ break;
448
+ case 'Enter':
449
+ case 'Backspace':
450
+ this.j.e.fire('keydown', {
451
+ key,
452
+ preventDefault() { }
453
+ });
454
+ break;
455
+ case 'Space':
456
+ case 'Tab':
457
+ this.j.s.insertNode(this.j.createInside.text(jodit_core_constants__WEBPACK_IMPORTED_MODULE_3__.NBSP_SPACE));
458
+ break;
459
+ default:
460
+ if (this.state.shift) {
461
+ this.state.shift = false;
462
+ }
463
+ key && this.j.s.insertNode(this.j.createInside.text(key));
464
+ }
465
+ const { periodKeyRepeat, delayKeyRepeat } = this.j.o.keyboard;
466
+ this.reKeyDownTimeout = this.j.async.setTimeout(() => this.onKeyDown(e, periodKeyRepeat), timeout || delayKeyRepeat);
467
+ return false;
468
+ }
469
+ constructor(jodit) {
470
+ super(jodit);
471
+ this.state = {
472
+ caps: false,
473
+ shift: false,
474
+ options: false,
475
+ currentLayout: this.j.o.keyboard.defaultLayoutSet
476
+ };
477
+ this._keys = this.getElms('key');
478
+ this.pressed = false;
479
+ this.reKeyDownTimeout = 0;
480
+ this.onStateChange();
481
+ }
482
+ static decorate(value) {
483
+ switch (value) {
484
+ case 'Space':
485
+ return '';
486
+ case 'Enter':
487
+ return jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__/* .Icon.get */ .JO.get('enter');
488
+ case 'Backspace':
489
+ return __webpack_require__(31169);
490
+ case 'Shift':
491
+ return __webpack_require__(44660);
492
+ case 'Caps':
493
+ return __webpack_require__(37967);
494
+ case 'Options':
495
+ return __webpack_require__(92100);
496
+ case 'Tab':
497
+ return __webpack_require__(82333);
498
+ default:
499
+ return value;
500
+ }
501
+ }
502
+ };
503
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
504
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)([
505
+ 'state.currentLayout',
506
+ 'state.options',
507
+ 'state.shift',
508
+ 'state.caps'
509
+ ])
510
+ ], UIKeyboard.prototype, "onStateChange", null);
511
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
512
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(['ow:mouseup'])
513
+ ], UIKeyboard.prototype, "onKeyUp", null);
514
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
515
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.hook)('ready')
516
+ ], UIKeyboard.prototype, "onReady", null);
517
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
518
+ autobind_decorator__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .ZP
519
+ ], UIKeyboard.prototype, "stopPress", null);
520
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
521
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(['container:mousedown', 'container:touchstart'])
522
+ ], UIKeyboard.prototype, "onKeyDown", null);
523
+ UIKeyboard = UIKeyboard_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
524
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
525
+ ], UIKeyboard);
526
+
527
+
528
+ /***/ })
529
+
530
+ },
531
+ /******/ function(__webpack_require__) { // webpackRuntimeModules
532
+ /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
533
+ /******/ var __webpack_exports__ = (__webpack_exec__(34295));
534
+ /******/ return __webpack_exports__;
535
+ /******/ }
536
+ ]);
537
+ });
@@ -0,0 +1 @@
1
+ .jodit-ui-keyboard{user-select:none}.jodit-ui-keyboard__row{display:flex;justify-content:space-between}.jodit-ui-keyboard__key{align-items:center;background-color:#f5f5f5;border:1px solid var(--jd-color-border);border-radius:2px;cursor:pointer;display:flex;height:32px;justify-content:center;margin:2px;user-select:none;width:32px}.jodit-ui-keyboard__key:hover:not(.jodit-ui-keyboard__key_active_true):not(.jodit-ui-keyboard__key_pressed_true){border-color:var(--jd-color-border);box-shadow:0 1px 1px rgba(0,0,0,.1)}.jodit-ui-keyboard__key:active,.jodit-ui-keyboard__key_active_true,.jodit-ui-keyboard__key_pressed_true{background-color:#f6f6f6;border-color:#c6c6c6;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.jodit-ui-keyboard__key *{pointer-events:none}.jodit-ui-keyboard__key svg{fill:var(--jd-color-dark);max-height:60%;max-width:60%}
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
+ * Version: v2.0.0-beta.10
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+
9
+
10
+ ((t,e)=>{if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var s=e();for(var o in s)("object"==typeof exports?exports:t)[o]=s[o]}})(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[283],{48326(t){t.exports='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path d="M0 6c0-1.1.9-2 2-2h16a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm2 0v2h2V6H2zm1 3v2h2V9H3zm-1 3v2h2v-2H2zm3 0v2h10v-2H5zm11 0v2h2v-2h-2zM6 9v2h2V9H6zm3 0v2h2V9H9zm3 0v2h2V9h-2zm3 0v2h2V9h-2zM5 6v2h2V6H5zm3 0v2h2V6H8zm3 0v2h2V6h-2zm3 0v2h4V6h-4z"/> </svg>'},31169(t){t.exports='<?xml version="1.0" ?><svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M0 10l7-7h13v14H7l-7-7zm14.41 0l2.13-2.12-1.42-1.42L13 8.6l-2.12-2.13-1.42 1.42L11.6 10l-2.13 2.12 1.42 1.42L13 11.4l2.12 2.13 1.42-1.42L14.4 10z"/></svg>'},37967(t){t.exports='<svg viewBox="0 0 30 29" xmlns="http://www.w3.org/2000/svg"> <path d="M15 0.5L30 15.2625H22V24H8V15.2625H0L15 0.5Z"/> <rect x="8" y="26" width="14" height="3"/> </svg>'},92100(t){t.exports='<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox="0 0 24 24" > <circle cy="12" cx="12" r="2.2"/> <circle cy="12" cx="5" r="2.2"/> <circle cy="12" cx="19" r="2.2"/> </svg>'},44660(t){t.exports='<svg viewBox="0 0 30 29" xmlns="http://www.w3.org/2000/svg"> <path d="M15 0.5L30 15.2625H22V29H8V15.2625H0L15 0.5Z"/> </svg>'},82333(t){t.exports='<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path d="M23.17 14.83l7.17 7.17h-28.34v4h28.34l-7.17 7.17 2.83 2.83 12-12-12-12-2.83 2.83zm16.83-2.83v24h4v-24h-4z"/> </svg>'},72257(t,e,s){"use strict";var o=s(77628);o.Config.prototype.keyboard={defaultLayoutSet:"en",showLayoutSwitcher:!0,extraKeyGroup:"other",extraKeyButtons:[],delayKeyRepeat:350,periodKeyRepeat:100,layoutList:{en:{title:"English",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},es:{title:"Español",keys:[["º ` ~","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _ |","¡ = +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","ç Ç \\"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ñ Ñ ; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},de:{title:"Deutsch",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 * :","9 ( {","0 ) }","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","z Z","u U","i I","o O","p P","ü Ü [","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ö Ö ;","ä Ä ' \"","Enter"],["Shift","y Y","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},ru:{title:"Русский",keys:[["` ~ ±","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","й Й","ц Ц","у У","к К","е Е","н Н","г Г","ш Ш","щ Щ","з З","х Х [","ъ ] {","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ж Ж ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","ь Ь","б Б ,","ю Ю .","/ ?","Shift"],["Options","Space","Options"]]},tr:{title:"Türkçe",keys:[['" é` ~',"1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 ) }","- _ [","= + ]","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","ı I","o O","p P","ğ Ğ","ü Ü",", \\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ş Ş","i̇ İ","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M","ö Ö <","ç Ç >",". / ?","Shift"],["Options","Space","Options"]]},iw:{title:"Hebrew",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","/ q Q","' w W","ק e E","ר r R","א t T","ט y Y","ו u U","ן i I","ם o O","פ p P","[ {","] }","\\ |"],["Caps","ש a A","ד s S","ג d D","כ f F","ע g G","י h H","ח j J","ל k K","ך l L","ף ; :","' \"","Enter"],["Shift","ז z Z","ס x X","ב c C","ה v V","נ b B","מ n N","צ m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},tata:{title:"Tata",keys:[["һ Һ` ~","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 )","- _","= +","Backspace"],["Tab","й Й","ө Ө","у У","к К","е Е","н Н","г Г","ш Ш","ә Ә","з З","х Х [","ү Ү ]","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ң Ң ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","җ Җ","б Б ,","ю Ю .","ґ Ґ /","Shift"],["Options","Space","Options"]]}},layoutSwitchList:["en","es","de","ru","tr","iw","tata"],keySize:32,layout:[[1,1,1,1,1,1,1,1,1,1,1,1,1,2],[1.5,1,1,1,1,1,1,1,1,1,1,1,1,1.5],[1.8,1,1,1,1,1,1,1,1,1,1,1,2.2],[2.5,1,1,1,1,1,1,1,1,1,1,2.5],[3.5,9,3.5]]},o.Config.prototype.controls.keyboard={tooltip:"Keyboard",icon:s(48326),isActive:t=>!!t.e.fire("isKeyboardOpened"),command:"toggleKeyboard"},o.Config.prototype.controls.extraKeyboardButtons={}},34295(t,e,s){"use strict";s.r(e),s.d(e,{keyboard(){return y}});var o=s(97582),a=s(7324),r=s(88292),i=s(21295),n=s(50526),h=(s(72257),s(8079)),p=s(75004),c=s(71350),l=s(77628);class y extends a.S{constructor(t){super(t),this.hasStyle=!r.y.fatMode,this.buttons=[{group:"insert",name:"keyboard"}];const{extraKeyButtons:e,extraKeyGroup:s}=t.o.keyboard;e.length&&e.forEach(((e,o)=>{const a=(0,c.HD)(e)?e:e.key,r=(0,c.HD)(e)||!e.hotkeys?["ctrl+"+(o+1)]:e.hotkeys;t.registerButton({name:"extraKeyboardButtons."+a,group:s});const{extraKeyboardButtons:i}=l.Config.defaultOptions.controls;i[a]={name:a,tooltip:a,args:[a],hotkeys:r,command:"insertChar"}}))}afterInit(t){t.registerCommand("toggleKeyboard",this.toggleKeyboard).registerCommand("insertChar",this.insertChar),t.e.on("isKeyboardOpened",(()=>this.__keyboard?.isOpened))}insertChar(t,e,s){this.j.s.insertNode(this.j.createInside.text(s))}toggleKeyboard(){if(!this.__keyboard){this.__keyboard=new h.Dialog({toolbarButtonSize:"tiny"});const t=new i.r(this.j);this.__keyboard.setMod("slim",!0).setMod("adaptive",!1).setContent(t);const{showLayoutSwitcher:e,layoutSwitchList:s,layoutList:o}=this.j.o.keyboard;if(e){const e=new p.Cj(this.__keyboard,{value:t.state.currentLayout,options:s.map((t=>({text:o[t]?.title??t,value:t}))),onChange(e){t.state.currentLayout=e}});e.setMod("size","tiny").setMod("width","auto").setMod("variant","outline"),this.__keyboard.setHeader(e)}}this.__keyboard.isOpened?this.__keyboard.close():this.__keyboard.open()}beforeDestruct(t){this.__keyboard?.destruct()}}y.requires=["license"],(0,o.gn)([n.autobind],y.prototype,"insertChar",null),(0,o.gn)([n.autobind],y.prototype,"toggleKeyboard",null),r.y.plugins.add("keyboard",y)},21295(t,e,s){"use strict";s.d(e,{r(){return c}});var o,a=s(97582),r=s(75004),i=s(50526),n=s(98478),h=s(11612),p=s(23185);let c=o=class t extends r.u1{className(){return"UIKeyboard"}render(){const{layout:t,keySize:e}=this.j.options.keyboard,s=t.length;return`<div>${(()=>{const o=[];for(let a=0;s>a;a+=1){const s=[];for(let o=0;t[a].length>o;o+=1)s.push(`<div style="width:${e*t[a][o]}px;height:${e}px;" class="&__key"></div>`);o.push(`<div class='&__row'>${s.join("\n")}</div>`)}return o.join("\n")})()}</div>`}onStateChange(){const{currentLayout:t,options:e,shift:s,caps:a}=this.state,{keys:r}=this.j.o.keyboard.layoutList[t];let i=0;for(let t=0;r.length>t;t+=1)for(let n=0;r[t].length>n;n+=1){const h=r[t][n].split(" ");let p=h[0];s&&(p=h[1]),!s&&a&&h[1]&&o.isLetter(h[0])&&(p=h[1]),e&&(p=h[2]),this.setKeyValue(i,p??h[0]),i+=1}}static isLetter(t){return t.toLowerCase()!==t.toUpperCase()}setKeyValue(t,e){const s=this._keys[t];if(!s)return;let a=!1;const{options:r,shift:i,caps:h}=this.state;switch(e){case"Caps":a=h;break;case"Options":a=r;break;case"Shift":a=i}s.innerHTML=o.decorate(e),s.classList.toggle(this.getFullElName("key","active",!0),a),(0,n.attr)(s,"-key",e)}onKeyUp(){this.pressed&&this.stopPress()}onReady(){this.j.e.on(this.getElms("key"),"mouseenter",this.stopPress)}stopPress(){this.pressed&&(this.pressed=!1,this.j.async.clearTimeout(this.reKeyDownTimeout),this._keys.forEach((t=>{t.classList.remove(this.getFullElName("key","pressed",!0))})))}onKeyDown(t,e=0){const s=t.target;if(!s||!s.classList.contains(this.getFullElName("key")))return!1;this.pressed=!0,s.classList.add(this.getFullElName("key","pressed",!0));const o=(0,n.attr)(s,"-key");switch(o){case"Caps":this.state.caps=!this.state.caps;break;case"Shift":this.state.shift=!this.state.shift;break;case"Options":this.state.options=!this.state.options;break;case"Enter":case"Backspace":this.j.e.fire("keydown",{key:o,preventDefault(){}});break;case"Space":case"Tab":this.j.s.insertNode(this.j.createInside.text(h.NBSP_SPACE));break;default:this.state.shift&&(this.state.shift=!1),o&&this.j.s.insertNode(this.j.createInside.text(o))}const{periodKeyRepeat:a,delayKeyRepeat:r}=this.j.o.keyboard;return this.reKeyDownTimeout=this.j.async.setTimeout((()=>this.onKeyDown(t,a)),e||r),!1}constructor(t){super(t),this.state={caps:!1,shift:!1,options:!1,currentLayout:this.j.o.keyboard.defaultLayoutSet},this._keys=this.getElms("key"),this.pressed=!1,this.reKeyDownTimeout=0,this.onStateChange()}static decorate(t){switch(t){case"Space":return"";case"Enter":return r.JO.get("enter");case"Backspace":return s(31169);case"Shift":return s(44660);case"Caps":return s(37967);case"Options":return s(92100);case"Tab":return s(82333);default:return t}}};(0,a.gn)([(0,i.watch)(["state.currentLayout","state.options","state.shift","state.caps"])],c.prototype,"onStateChange",null),(0,a.gn)([(0,i.watch)(["ow:mouseup"])],c.prototype,"onKeyUp",null),(0,a.gn)([(0,i.hook)("ready")],c.prototype,"onReady",null),(0,a.gn)([p.ZP],c.prototype,"stopPress",null),(0,a.gn)([(0,i.watch)(["container:mousedown","container:touchstart"])],c.prototype,"onKeyDown",null),c=o=(0,a.gn)([i.component],c)}},t=>t(t.s=34295)])}));