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,539 @@
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', () => { var _a; return (_a = this.__keyboard) === null || _a === void 0 ? void 0 : _a.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
+ var _a, _b;
277
+ const title = (_b = (_a = layoutList[key]) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : key;
278
+ return {
279
+ text: title,
280
+ value: key
281
+ };
282
+ }),
283
+ onChange(value) {
284
+ ui.state.currentLayout = value;
285
+ }
286
+ });
287
+ switcher
288
+ .setMod('size', 'tiny')
289
+ .setMod('width', 'auto')
290
+ .setMod('variant', 'outline');
291
+ this.__keyboard.setHeader(switcher);
292
+ }
293
+ }
294
+ if (this.__keyboard.isOpened) {
295
+ this.__keyboard.close();
296
+ }
297
+ else {
298
+ this.__keyboard.open();
299
+ }
300
+ }
301
+ /** @override */
302
+ beforeDestruct(jodit) {
303
+ var _a;
304
+ (_a = this.__keyboard) === null || _a === void 0 ? void 0 : _a.destruct();
305
+ }
306
+ }
307
+ /** @override */
308
+ keyboard.requires = ['license'];
309
+ (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
310
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
311
+ ], keyboard.prototype, "insertChar", null);
312
+ (0,tslib__WEBPACK_IMPORTED_MODULE_9__/* .__decorate */ .gn)([
313
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
314
+ ], keyboard.prototype, "toggleKeyboard", null);
315
+ _JoditPro__WEBPACK_IMPORTED_MODULE_1__/* .JoditPro.plugins.add */ .y.plugins.add('keyboard', keyboard);
316
+
317
+
318
+ /***/ }),
319
+
320
+ /***/ 21295:
321
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
322
+
323
+ "use strict";
324
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
325
+ /* harmony export */ "r": function() { return /* binding */ UIKeyboard; }
326
+ /* harmony export */ });
327
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(97582);
328
+ /* harmony import */ var jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75004);
329
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50526);
330
+ /* harmony import */ var jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(98478);
331
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(11612);
332
+ /* harmony import */ var autobind_decorator__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(23185);
333
+ /*!
334
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
335
+ * See LICENSE.md in the project root for license information.
336
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
337
+ */
338
+ var UIKeyboard_1;
339
+
340
+
341
+
342
+
343
+
344
+
345
+
346
+ let UIKeyboard = UIKeyboard_1 = class UIKeyboard extends jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u1 {
347
+ /** @override */
348
+ className() {
349
+ return 'UIKeyboard';
350
+ }
351
+ /** @override */
352
+ render() {
353
+ const { layout, keySize } = this.j.options.keyboard, rowCount = layout.length;
354
+ return `<div>${(() => {
355
+ const rows = [];
356
+ for (let i = 0; i < rowCount; i += 1) {
357
+ const row = [];
358
+ for (let j = 0; j < layout[i].length; j += 1) {
359
+ row.push(`<div style="width:${keySize * layout[i][j]}px;height:${keySize}px;" class="&__key"></div>`);
360
+ }
361
+ rows.push(`<div class='&__row'>${row.join('\n')}</div>`);
362
+ }
363
+ return rows.join('\n');
364
+ })()}</div>`;
365
+ }
366
+ onStateChange() {
367
+ const { currentLayout, options, shift, caps } = this.state, { keys } = this.j.o.keyboard.layoutList[currentLayout];
368
+ let index = 0;
369
+ for (let i = 0; i < keys.length; i += 1) {
370
+ for (let j = 0; j < keys[i].length; j += 1) {
371
+ const values = keys[i][j].split(' ');
372
+ let value = values[0];
373
+ if (shift) {
374
+ value = values[1];
375
+ }
376
+ if (!shift &&
377
+ caps &&
378
+ values[1] &&
379
+ UIKeyboard_1.isLetter(values[0])) {
380
+ value = values[1];
381
+ }
382
+ if (options) {
383
+ value = values[2];
384
+ }
385
+ this.setKeyValue(index, value !== null && value !== void 0 ? value : values[0]);
386
+ index += 1;
387
+ }
388
+ }
389
+ }
390
+ static isLetter(c) {
391
+ return c.toLowerCase() !== c.toUpperCase();
392
+ }
393
+ setKeyValue(index, value) {
394
+ const elm = this._keys[index];
395
+ if (!elm) {
396
+ return;
397
+ }
398
+ let active = false;
399
+ const { options, shift, caps } = this.state;
400
+ switch (value) {
401
+ case 'Caps':
402
+ active = caps;
403
+ break;
404
+ case 'Options':
405
+ active = options;
406
+ break;
407
+ case 'Shift':
408
+ active = shift;
409
+ break;
410
+ }
411
+ elm.innerHTML = UIKeyboard_1.decorate(value);
412
+ elm.classList.toggle(this.getFullElName('key', 'active', true), active);
413
+ (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.attr)(elm, '-key', value);
414
+ }
415
+ onKeyUp() {
416
+ if (this.pressed) {
417
+ this.stopPress();
418
+ }
419
+ }
420
+ onReady() {
421
+ this.j.e.on(this.getElms('key'), 'mouseenter', this.stopPress);
422
+ }
423
+ stopPress() {
424
+ if (this.pressed) {
425
+ this.pressed = false;
426
+ this.j.async.clearTimeout(this.reKeyDownTimeout);
427
+ this._keys.forEach((elm) => {
428
+ elm.classList.remove(this.getFullElName('key', 'pressed', true));
429
+ });
430
+ }
431
+ }
432
+ onKeyDown(e, timeout = 0) {
433
+ const target = e.target;
434
+ if (!target || !target.classList.contains(this.getFullElName('key'))) {
435
+ return false;
436
+ }
437
+ this.pressed = true;
438
+ target.classList.add(this.getFullElName('key', 'pressed', true));
439
+ const key = (0,jodit_core_helpers_utils__WEBPACK_IMPORTED_MODULE_2__.attr)(target, '-key');
440
+ switch (key) {
441
+ case 'Caps':
442
+ this.state.caps = !this.state.caps;
443
+ break;
444
+ case 'Shift':
445
+ this.state.shift = !this.state.shift;
446
+ break;
447
+ case 'Options':
448
+ this.state.options = !this.state.options;
449
+ break;
450
+ case 'Enter':
451
+ case 'Backspace':
452
+ this.j.e.fire('keydown', {
453
+ key,
454
+ preventDefault() { }
455
+ });
456
+ break;
457
+ case 'Space':
458
+ case 'Tab':
459
+ this.j.s.insertNode(this.j.createInside.text(jodit_core_constants__WEBPACK_IMPORTED_MODULE_3__.NBSP_SPACE));
460
+ break;
461
+ default:
462
+ if (this.state.shift) {
463
+ this.state.shift = false;
464
+ }
465
+ key && this.j.s.insertNode(this.j.createInside.text(key));
466
+ }
467
+ const { periodKeyRepeat, delayKeyRepeat } = this.j.o.keyboard;
468
+ this.reKeyDownTimeout = this.j.async.setTimeout(() => this.onKeyDown(e, periodKeyRepeat), timeout || delayKeyRepeat);
469
+ return false;
470
+ }
471
+ constructor(jodit) {
472
+ super(jodit);
473
+ this.state = {
474
+ caps: false,
475
+ shift: false,
476
+ options: false,
477
+ currentLayout: this.j.o.keyboard.defaultLayoutSet
478
+ };
479
+ this._keys = this.getElms('key');
480
+ this.pressed = false;
481
+ this.reKeyDownTimeout = 0;
482
+ this.onStateChange();
483
+ }
484
+ static decorate(value) {
485
+ switch (value) {
486
+ case 'Space':
487
+ return '';
488
+ case 'Enter':
489
+ return jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__/* .Icon.get */ .JO.get('enter');
490
+ case 'Backspace':
491
+ return __webpack_require__(31169);
492
+ case 'Shift':
493
+ return __webpack_require__(44660);
494
+ case 'Caps':
495
+ return __webpack_require__(37967);
496
+ case 'Options':
497
+ return __webpack_require__(92100);
498
+ case 'Tab':
499
+ return __webpack_require__(82333);
500
+ default:
501
+ return value;
502
+ }
503
+ }
504
+ };
505
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
506
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)([
507
+ 'state.currentLayout',
508
+ 'state.options',
509
+ 'state.shift',
510
+ 'state.caps'
511
+ ])
512
+ ], UIKeyboard.prototype, "onStateChange", null);
513
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
514
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(['ow:mouseup'])
515
+ ], UIKeyboard.prototype, "onKeyUp", null);
516
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
517
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.hook)('ready')
518
+ ], UIKeyboard.prototype, "onReady", null);
519
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
520
+ autobind_decorator__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .ZP
521
+ ], UIKeyboard.prototype, "stopPress", null);
522
+ (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
523
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(['container:mousedown', 'container:touchstart'])
524
+ ], UIKeyboard.prototype, "onKeyDown", null);
525
+ UIKeyboard = UIKeyboard_1 = (0,tslib__WEBPACK_IMPORTED_MODULE_4__/* .__decorate */ .gn)([
526
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
527
+ ], UIKeyboard);
528
+
529
+
530
+ /***/ })
531
+
532
+ },
533
+ /******/ function(__webpack_require__) { // webpackRuntimeModules
534
+ /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
535
+ /******/ var __webpack_exports__ = (__webpack_exec__(34295));
536
+ /******/ return __webpack_exports__;
537
+ /******/ }
538
+ ]);
539
+ });
@@ -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
+ !function(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:function(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:function(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:function(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:function(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:function(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:function(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:function(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){return Boolean(t.e.fire("isKeyboardOpened"))},command:"toggleKeyboard"},o.Config.prototype.controls.extraKeyboardButtons={}},34295:function(t,e,s){"use strict";s.r(e),s.d(e,{keyboard:function(){return u}});var o=s(97582),a=s(7324),i=s(88292),r=s(21295),n=s(50526),h=(s(72257),s(8079)),c=s(75004),p=s(71350),l=s(77628);class u extends a.S{constructor(t){super(t),this.hasStyle=!i.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,p.HD)(e)?e:e.key,i=(0,p.HD)(e)||!e.hotkeys?[`ctrl+${o+1}`]:e.hotkeys;t.registerButton({name:`extraKeyboardButtons.${a}`,group:s});const{extraKeyboardButtons:r}=l.Config.defaultOptions.controls;r[a]={name:a,tooltip:a,args:[a],hotkeys:i,command:"insertChar"}}))}afterInit(t){t.registerCommand("toggleKeyboard",this.toggleKeyboard).registerCommand("insertChar",this.insertChar),t.e.on("isKeyboardOpened",(()=>{var t;return null===(t=this.__keyboard)||void 0===t?void 0:t.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 r.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 c.Cj(this.__keyboard,{value:t.state.currentLayout,options:s.map((t=>{var e,s;return{text:null!==(s=null===(e=o[t])||void 0===e?void 0:e.title)&&void 0!==s?s: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){var e;null===(e=this.__keyboard)||void 0===e||e.destruct()}}u.requires=["license"],(0,o.gn)([n.autobind],u.prototype,"insertChar",null),(0,o.gn)([n.autobind],u.prototype,"toggleKeyboard",null),i.y.plugins.add("keyboard",u)},21295:function(t,e,s){"use strict";s.d(e,{r:function(){return p}});var o,a=s(97582),i=s(75004),r=s(50526),n=s(98478),h=s(11612),c=s(23185);let p=o=class t extends i.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:i}=this.j.o.keyboard.layoutList[t];let r=0;for(let t=0;i.length>t;t+=1)for(let n=0;i[t].length>n;n+=1){const h=i[t][n].split(" ");let c=h[0];s&&(c=h[1]),!s&&a&&h[1]&&o.isLetter(h[0])&&(c=h[1]),e&&(c=h[2]),this.setKeyValue(r,null!=c?c:h[0]),r+=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:i,shift:r,caps:h}=this.state;switch(e){case"Caps":a=h;break;case"Options":a=i;break;case"Shift":a=r}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:i}=this.j.o.keyboard;return this.reKeyDownTimeout=this.j.async.setTimeout((()=>this.onKeyDown(t,a)),e||i),!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 i.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,r.watch)(["state.currentLayout","state.options","state.shift","state.caps"])],p.prototype,"onStateChange",null),(0,a.gn)([(0,r.watch)(["ow:mouseup"])],p.prototype,"onKeyUp",null),(0,a.gn)([(0,r.hook)("ready")],p.prototype,"onReady",null),(0,a.gn)([c.ZP],p.prototype,"stopPress",null),(0,a.gn)([(0,r.watch)(["container:mousedown","container:touchstart"])],p.prototype,"onKeyDown",null),p=o=(0,a.gn)([r.component],p)}},function(t){return t(t.s=34295)}])}));