jodit-pro 4.13.44 → 4.13.45

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 (335) hide show
  1. package/es2015/jodit.css +2 -2
  2. package/es2015/jodit.fat.min.css +1 -1
  3. package/es2015/jodit.fat.min.js +8 -8
  4. package/es2015/jodit.js +19 -32
  5. package/es2015/jodit.min.js +4 -4
  6. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  7. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  8. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  9. package/es2015/plugins/autocomplete/autocomplete.css +1 -1
  10. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  11. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  12. package/es2015/plugins/backup/backup.css +1 -1
  13. package/es2015/plugins/backup/backup.js +1 -1
  14. package/es2015/plugins/backup/backup.min.js +1 -1
  15. package/es2015/plugins/button-generator/button-generator.css +1 -1
  16. package/es2015/plugins/button-generator/button-generator.js +1 -1
  17. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  18. package/es2015/plugins/change-case/change-case.js +1 -1
  19. package/es2015/plugins/change-case/change-case.min.js +1 -1
  20. package/es2015/plugins/color-picker/color-picker.css +1 -1
  21. package/es2015/plugins/color-picker/color-picker.js +1 -1
  22. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  23. package/es2015/plugins/emoji/emoji.css +1 -1
  24. package/es2015/plugins/emoji/emoji.js +1 -1
  25. package/es2015/plugins/emoji/emoji.min.js +1 -1
  26. package/es2015/plugins/export-docs/export-docs.js +1 -1
  27. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  28. package/es2015/plugins/finder/finder.css +1 -1
  29. package/es2015/plugins/finder/finder.js +1 -1
  30. package/es2015/plugins/finder/finder.min.js +1 -1
  31. package/es2015/plugins/google-maps/google-maps.css +11 -1
  32. package/es2015/plugins/google-maps/google-maps.js +90 -16
  33. package/es2015/plugins/google-maps/google-maps.min.css +1 -1
  34. package/es2015/plugins/google-maps/google-maps.min.js +6 -6
  35. package/es2015/plugins/google-search/google-search.js +1 -1
  36. package/es2015/plugins/google-search/google-search.min.js +1 -1
  37. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  38. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  39. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  40. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  41. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  42. package/es2015/plugins/image-editor-pro/image-editor-pro.css +1 -1
  43. package/es2015/plugins/image-editor-pro/image-editor-pro.js +1 -1
  44. package/es2015/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  45. package/es2015/plugins/keyboard/keyboard.css +1 -1
  46. package/es2015/plugins/keyboard/keyboard.js +1 -1
  47. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  48. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  49. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  50. package/es2015/plugins/page-break/page-break.js +1 -1
  51. package/es2015/plugins/page-break/page-break.min.js +1 -1
  52. package/es2015/plugins/paste-code/paste-code.css +1 -1
  53. package/es2015/plugins/paste-code/paste-code.js +1 -1
  54. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  55. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  56. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  57. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  58. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  59. package/es2015/plugins/style/style.css +1 -1
  60. package/es2015/plugins/style/style.js +1 -1
  61. package/es2015/plugins/style/style.min.js +1 -1
  62. package/es2015/plugins/templates/templates.css +1 -1
  63. package/es2015/plugins/templates/templates.js +1 -1
  64. package/es2015/plugins/templates/templates.min.js +1 -1
  65. package/es2015/plugins/todo-list/todo-list.css +1 -1
  66. package/es2015/plugins/todo-list/todo-list.js +1 -1
  67. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  68. package/es2015/plugins/translate/translate.css +1 -1
  69. package/es2015/plugins/translate/translate.js +1 -1
  70. package/es2015/plugins/translate/translate.min.js +1 -1
  71. package/es2015/plugins/tune-block/tune-block.css +1 -1
  72. package/es2015/plugins/tune-block/tune-block.js +1 -1
  73. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  74. package/es2018/jodit.fat.min.css +1 -1
  75. package/es2018/jodit.fat.min.js +13 -13
  76. package/es2018/jodit.min.js +4 -4
  77. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  78. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  79. package/es2018/plugins/backup/backup.min.js +1 -1
  80. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  81. package/es2018/plugins/change-case/change-case.min.js +1 -1
  82. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  83. package/es2018/plugins/emoji/emoji.min.js +1 -1
  84. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  85. package/es2018/plugins/finder/finder.min.js +1 -1
  86. package/es2018/plugins/google-maps/google-maps.min.css +1 -1
  87. package/es2018/plugins/google-maps/google-maps.min.js +5 -5
  88. package/es2018/plugins/google-search/google-search.min.js +1 -1
  89. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  90. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  91. package/es2018/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  92. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  93. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  94. package/es2018/plugins/page-break/page-break.min.js +1 -1
  95. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  96. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  97. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  98. package/es2018/plugins/style/style.min.js +1 -1
  99. package/es2018/plugins/templates/templates.min.js +1 -1
  100. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  101. package/es2018/plugins/translate/translate.min.js +1 -1
  102. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  103. package/es2021/jodit.css +2 -2
  104. package/es2021/jodit.fat.min.css +1 -1
  105. package/es2021/jodit.fat.min.js +16 -16
  106. package/es2021/jodit.js +19 -32
  107. package/es2021/jodit.min.js +4 -4
  108. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  109. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  110. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  111. package/es2021/plugins/autocomplete/autocomplete.css +1 -1
  112. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  113. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  114. package/es2021/plugins/backup/backup.css +1 -1
  115. package/es2021/plugins/backup/backup.js +1 -1
  116. package/es2021/plugins/backup/backup.min.js +1 -1
  117. package/es2021/plugins/button-generator/button-generator.css +1 -1
  118. package/es2021/plugins/button-generator/button-generator.js +1 -1
  119. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  120. package/es2021/plugins/change-case/change-case.js +1 -1
  121. package/es2021/plugins/change-case/change-case.min.js +1 -1
  122. package/es2021/plugins/color-picker/color-picker.css +1 -1
  123. package/es2021/plugins/color-picker/color-picker.js +1 -1
  124. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  125. package/es2021/plugins/emoji/emoji.css +1 -1
  126. package/es2021/plugins/emoji/emoji.js +1 -1
  127. package/es2021/plugins/emoji/emoji.min.js +1 -1
  128. package/es2021/plugins/export-docs/export-docs.js +1 -1
  129. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  130. package/es2021/plugins/finder/finder.css +1 -1
  131. package/es2021/plugins/finder/finder.js +1 -1
  132. package/es2021/plugins/finder/finder.min.js +1 -1
  133. package/es2021/plugins/google-maps/google-maps.css +11 -1
  134. package/es2021/plugins/google-maps/google-maps.js +89 -15
  135. package/es2021/plugins/google-maps/google-maps.min.css +1 -1
  136. package/es2021/plugins/google-maps/google-maps.min.js +6 -6
  137. package/es2021/plugins/google-search/google-search.js +1 -1
  138. package/es2021/plugins/google-search/google-search.min.js +1 -1
  139. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  140. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  141. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  142. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  143. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  144. package/es2021/plugins/image-editor-pro/image-editor-pro.css +1 -1
  145. package/es2021/plugins/image-editor-pro/image-editor-pro.js +1 -1
  146. package/es2021/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  147. package/es2021/plugins/keyboard/keyboard.css +1 -1
  148. package/es2021/plugins/keyboard/keyboard.js +1 -1
  149. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  150. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  151. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  152. package/es2021/plugins/page-break/page-break.js +1 -1
  153. package/es2021/plugins/page-break/page-break.min.js +1 -1
  154. package/es2021/plugins/paste-code/paste-code.css +1 -1
  155. package/es2021/plugins/paste-code/paste-code.js +1 -1
  156. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  157. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  158. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  159. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  160. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  161. package/es2021/plugins/style/style.css +1 -1
  162. package/es2021/plugins/style/style.js +1 -1
  163. package/es2021/plugins/style/style.min.js +1 -1
  164. package/es2021/plugins/templates/templates.css +1 -1
  165. package/es2021/plugins/templates/templates.js +1 -1
  166. package/es2021/plugins/templates/templates.min.js +1 -1
  167. package/es2021/plugins/todo-list/todo-list.css +1 -1
  168. package/es2021/plugins/todo-list/todo-list.js +1 -1
  169. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  170. package/es2021/plugins/translate/translate.css +1 -1
  171. package/es2021/plugins/translate/translate.js +1 -1
  172. package/es2021/plugins/translate/translate.min.js +1 -1
  173. package/es2021/plugins/tune-block/tune-block.css +1 -1
  174. package/es2021/plugins/tune-block/tune-block.js +1 -1
  175. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  176. package/es2021.en/jodit.css +2 -2
  177. package/es2021.en/jodit.fat.min.css +1 -1
  178. package/es2021.en/jodit.fat.min.js +8 -8
  179. package/es2021.en/jodit.js +19 -32
  180. package/es2021.en/jodit.min.js +4 -4
  181. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  182. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  183. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  184. package/es2021.en/plugins/autocomplete/autocomplete.css +1 -1
  185. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  186. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  187. package/es2021.en/plugins/backup/backup.css +1 -1
  188. package/es2021.en/plugins/backup/backup.js +1 -1
  189. package/es2021.en/plugins/backup/backup.min.js +1 -1
  190. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  191. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  192. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  193. package/es2021.en/plugins/change-case/change-case.js +1 -1
  194. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  195. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  196. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  197. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  198. package/es2021.en/plugins/emoji/emoji.css +1 -1
  199. package/es2021.en/plugins/emoji/emoji.js +1 -1
  200. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  201. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  202. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  203. package/es2021.en/plugins/finder/finder.css +1 -1
  204. package/es2021.en/plugins/finder/finder.js +1 -1
  205. package/es2021.en/plugins/finder/finder.min.js +1 -1
  206. package/es2021.en/plugins/google-maps/google-maps.css +11 -1
  207. package/es2021.en/plugins/google-maps/google-maps.js +89 -15
  208. package/es2021.en/plugins/google-maps/google-maps.min.css +1 -1
  209. package/es2021.en/plugins/google-maps/google-maps.min.js +6 -6
  210. package/es2021.en/plugins/google-search/google-search.js +1 -1
  211. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  212. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  213. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  214. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  215. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  216. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  217. package/es2021.en/plugins/image-editor-pro/image-editor-pro.css +1 -1
  218. package/es2021.en/plugins/image-editor-pro/image-editor-pro.js +1 -1
  219. package/es2021.en/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  220. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  221. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  222. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  223. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  224. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  225. package/es2021.en/plugins/page-break/page-break.js +1 -1
  226. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  227. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  228. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  229. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  230. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  231. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  232. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  233. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  234. package/es2021.en/plugins/style/style.css +1 -1
  235. package/es2021.en/plugins/style/style.js +1 -1
  236. package/es2021.en/plugins/style/style.min.js +1 -1
  237. package/es2021.en/plugins/templates/templates.css +1 -1
  238. package/es2021.en/plugins/templates/templates.js +1 -1
  239. package/es2021.en/plugins/templates/templates.min.js +1 -1
  240. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  241. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  242. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  243. package/es2021.en/plugins/translate/translate.css +1 -1
  244. package/es2021.en/plugins/translate/translate.js +1 -1
  245. package/es2021.en/plugins/translate/translate.min.js +1 -1
  246. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  247. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  248. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  249. package/es5/jodit.css +3 -3
  250. package/es5/jodit.fat.min.css +1 -1
  251. package/es5/jodit.fat.min.js +2 -2
  252. package/es5/jodit.js +46 -32
  253. package/es5/jodit.min.css +2 -2
  254. package/es5/jodit.min.js +2 -2
  255. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  256. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  257. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  258. package/es5/plugins/autocomplete/autocomplete.css +1 -1
  259. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  260. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  261. package/es5/plugins/backup/backup.css +1 -1
  262. package/es5/plugins/backup/backup.js +1 -1
  263. package/es5/plugins/backup/backup.min.js +1 -1
  264. package/es5/plugins/button-generator/button-generator.css +1 -1
  265. package/es5/plugins/button-generator/button-generator.js +1 -1
  266. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  267. package/es5/plugins/change-case/change-case.js +1 -1
  268. package/es5/plugins/change-case/change-case.min.js +1 -1
  269. package/es5/plugins/color-picker/color-picker.css +1 -1
  270. package/es5/plugins/color-picker/color-picker.js +1 -1
  271. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  272. package/es5/plugins/emoji/emoji.css +1 -1
  273. package/es5/plugins/emoji/emoji.js +1 -1
  274. package/es5/plugins/emoji/emoji.min.js +1 -1
  275. package/es5/plugins/export-docs/export-docs.js +1 -1
  276. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  277. package/es5/plugins/finder/finder.css +1 -1
  278. package/es5/plugins/finder/finder.js +1 -1
  279. package/es5/plugins/finder/finder.min.js +1 -1
  280. package/es5/plugins/google-maps/google-maps.css +11 -1
  281. package/es5/plugins/google-maps/google-maps.js +101 -16
  282. package/es5/plugins/google-maps/google-maps.min.css +1 -1
  283. package/es5/plugins/google-maps/google-maps.min.js +2 -2
  284. package/es5/plugins/google-search/google-search.js +1 -1
  285. package/es5/plugins/google-search/google-search.min.js +1 -1
  286. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  287. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  288. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  289. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  290. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  291. package/es5/plugins/image-editor-pro/image-editor-pro.css +1 -1
  292. package/es5/plugins/image-editor-pro/image-editor-pro.js +1 -1
  293. package/es5/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  294. package/es5/plugins/keyboard/keyboard.css +1 -1
  295. package/es5/plugins/keyboard/keyboard.js +1 -1
  296. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  297. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  298. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  299. package/es5/plugins/page-break/page-break.js +1 -1
  300. package/es5/plugins/page-break/page-break.min.js +1 -1
  301. package/es5/plugins/paste-code/paste-code.css +1 -1
  302. package/es5/plugins/paste-code/paste-code.js +1 -1
  303. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  304. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  305. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  306. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  307. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  308. package/es5/plugins/style/style.css +1 -1
  309. package/es5/plugins/style/style.js +1 -1
  310. package/es5/plugins/style/style.min.js +1 -1
  311. package/es5/plugins/templates/templates.css +1 -1
  312. package/es5/plugins/templates/templates.js +1 -1
  313. package/es5/plugins/templates/templates.min.js +1 -1
  314. package/es5/plugins/todo-list/todo-list.css +1 -1
  315. package/es5/plugins/todo-list/todo-list.js +1 -1
  316. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  317. package/es5/plugins/translate/translate.css +1 -1
  318. package/es5/plugins/translate/translate.js +1 -1
  319. package/es5/plugins/translate/translate.min.js +1 -1
  320. package/es5/plugins/tune-block/tune-block.css +1 -1
  321. package/es5/plugins/tune-block/tune-block.js +1 -1
  322. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  323. package/es5/polyfills.fat.min.js +1 -1
  324. package/es5/polyfills.js +1 -1
  325. package/es5/polyfills.min.js +1 -1
  326. package/esm/plugins/google-maps/config.js +1 -1
  327. package/esm/plugins/google-maps/google-maps.js +1 -1
  328. package/esm/plugins/google-maps/helpers/helpers.d.ts +8 -0
  329. package/esm/plugins/google-maps/helpers/helpers.js +1 -1
  330. package/esm/plugins/google-maps/ui/map/map.d.ts +6 -0
  331. package/esm/plugins/google-maps/ui/map/map.js +2 -2
  332. package/esm/plugins/google-maps/ui/map/modules/drawing-controller.js +1 -1
  333. package/package.json +1 -1
  334. package/types/plugins/google-maps/helpers/helpers.d.ts +8 -0
  335. package/types/plugins/google-maps/ui/map/map.d.ts +6 -0
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -11,6 +11,7 @@
11
11
  flex-direction: column;
12
12
  margin-bottom: var(--jd-padding-default);
13
13
  position: relative;
14
+ line-height: normal;
14
15
  }
15
16
  .jodit-ui-combo-box__input {
16
17
  font-family: var(--jd-font-default);
@@ -319,6 +320,15 @@
319
320
  .jodit-ui-map__map-root {
320
321
  height: 100%;
321
322
  }
323
+ .jodit-ui-map__error {
324
+ display: flex;
325
+ height: 100%;
326
+ padding: 20px;
327
+ align-items: center;
328
+ justify-content: center;
329
+ color: #7a7a7a;
330
+ text-align: center;
331
+ }
322
332
  .jodit-ui-map__map-size {
323
333
  position: absolute;
324
334
  top: 50%;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.13.44
4
+ * Version: v4.13.45
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1806,6 +1806,10 @@ var gmButton = function gmButton(name) {
1806
1806
  isActive: function isActive(editor) {
1807
1807
  return editor.buffer.get('createMode.gm') === name;
1808
1808
  },
1809
+ // Drawing needs a working map — see `failed.gm`
1810
+ isDisabled: function isDisabled(editor) {
1811
+ return name !== 'hand' && Boolean(editor.buffer.get('failed.gm'));
1812
+ },
1809
1813
  exec: function exec(editor) {
1810
1814
  editor.e.fire('changeCreateMode.gm', name);
1811
1815
  }
@@ -1892,6 +1896,7 @@ __webpack_require__.r(__webpack_exports__);
1892
1896
 
1893
1897
  // @ts-ignore
1894
1898
  window['JoditGoogleReadyHandler'] = _helpers_helpers__WEBPACK_IMPORTED_MODULE_15__.GoogleReadyHandler;
1899
+ window['gm_authFailure'] = _helpers_helpers__WEBPACK_IMPORTED_MODULE_15__.GoogleAuthFailureHandler;
1895
1900
  var googleMaps = /*#__PURE__*/ function(Plugin) {
1896
1901
  "use strict";
1897
1902
  (0,_swc_helpers_inherits__WEBPACK_IMPORTED_MODULE_5__._)(googleMaps, Plugin);
@@ -2218,14 +2223,17 @@ function generateStaticElements(uiMap) {
2218
2223
 
2219
2224
  "use strict";
2220
2225
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2226
+ /* harmony export */ GoogleAuthFailureHandler: function() { return /* binding */ GoogleAuthFailureHandler; },
2221
2227
  /* harmony export */ GoogleReadyHandler: function() { return /* binding */ GoogleReadyHandler; },
2222
2228
  /* harmony export */ arrayToPath: function() { return /* binding */ arrayToPath; },
2229
+ /* harmony export */ googleAuthFailure: function() { return /* binding */ googleAuthFailure; },
2223
2230
  /* harmony export */ googleReady: function() { return /* binding */ googleReady; },
2224
2231
  /* harmony export */ isApiAvailable: function() { return /* binding */ isApiAvailable; },
2232
+ /* harmony export */ isApiFailed: function() { return /* binding */ isApiFailed; },
2225
2233
  /* harmony export */ pathToArray: function() { return /* binding */ pathToArray; },
2226
2234
  /* harmony export */ specialColor: function() { return /* binding */ specialColor; }
2227
2235
  /* harmony export */ });
2228
- /* unused harmony exports jdGoogleMapsAlreadyLoaded, jdGoogleMapsOnloadHandlers */
2236
+ /* unused harmony exports jdGoogleMapsAlreadyLoaded, jdGoogleMapsOnloadHandlers, jdGoogleMapsAuthFailed */
2229
2237
  /*!
2230
2238
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
2231
2239
  * See LICENSE.md in the project root for license information.
@@ -2247,6 +2255,27 @@ function GoogleReadyHandler() {
2247
2255
  });
2248
2256
  }
2249
2257
  }
2258
+ var jdGoogleMapsAuthFailed = false;
2259
+ var jdGoogleMapsAuthFailureHandlers = [];
2260
+ /**
2261
+ * Google calls `gm_authFailure` when the key or the HTTP referrer is not
2262
+ * authorized: the API is loaded, but every map instance is dead
2263
+ */ function GoogleAuthFailureHandler() {
2264
+ jdGoogleMapsAuthFailed = true;
2265
+ jdGoogleMapsAuthFailureHandlers.forEach(function(callback) {
2266
+ return callback();
2267
+ });
2268
+ }
2269
+ function googleAuthFailure(callback) {
2270
+ if (jdGoogleMapsAuthFailed) {
2271
+ callback();
2272
+ } else {
2273
+ jdGoogleMapsAuthFailureHandlers.push(callback);
2274
+ }
2275
+ }
2276
+ function isApiFailed() {
2277
+ return jdGoogleMapsAuthFailed;
2278
+ }
2250
2279
  function arrayToPath(array) {
2251
2280
  var likePlainObject = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
2252
2281
  var path = [];
@@ -2792,6 +2821,7 @@ UIPolylineEditor = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_6__.__de
2792
2821
  /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(67510);
2793
2822
  /* harmony import */ var jodit_esm_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(11676);
2794
2823
  /* harmony import */ var jodit_pro_plugins_google_maps_helpers_const__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(17298);
2824
+ /* harmony import */ var jodit_pro_plugins_google_maps_helpers_helpers__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(67912);
2795
2825
  /*!
2796
2826
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
2797
2827
  * See LICENSE.md in the project root for license information.
@@ -2821,6 +2851,7 @@ UIPolylineEditor = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_6__.__de
2821
2851
 
2822
2852
 
2823
2853
 
2854
+
2824
2855
 
2825
2856
 
2826
2857
  var UIMap = /*#__PURE__*/ function(UIGroup) {
@@ -2831,7 +2862,7 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2831
2862
  var _this;
2832
2863
  _this = (0,_swc_helpers_call_super__WEBPACK_IMPORTED_MODULE_1__._)(this, UIMap, [
2833
2864
  jodit
2834
- ]), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "options", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "drawing", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "toolbar", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "state", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "mapElements", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "apiLoaded", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "mapInitialized", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "map", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "layers", void 0), _this.options = options, _this.toolbar = new jodit_esm_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_24__.ToolbarCollection(_this.jodit), _this.state = {
2865
+ ]), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "options", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "drawing", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "toolbar", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "state", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "mapElements", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "apiLoaded", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "mapInitialized", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "failed", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "map", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_4__._)(_this, "layers", void 0), _this.options = options, _this.toolbar = new jodit_esm_modules_toolbar_collection_collection__WEBPACK_IMPORTED_MODULE_24__.ToolbarCollection(_this.jodit), _this.state = {
2835
2866
  uid: 'jd' + (0,jodit_esm_core_global__WEBPACK_IMPORTED_MODULE_20__.uniqueUid)() + new Date().toString().replace(/[^0-9]/g, ''),
2836
2867
  layer: _this.options.googleMaps.map.layer,
2837
2868
  center: _this.options.googleMaps.map.defaultCenter,
@@ -2848,7 +2879,7 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2848
2879
  },
2849
2880
  mode: 'hand',
2850
2881
  elements: []
2851
- }, _this.mapElements = [], _this.apiLoaded = null, _this.mapInitialized = false, _this.layers = [];
2882
+ }, _this.mapElements = [], _this.apiLoaded = null, _this.mapInitialized = false, _this.failed = false, _this.layers = [];
2852
2883
  Object.assign(_this.state, state);
2853
2884
  _this.toolbar.build([
2854
2885
  'gm.hand',
@@ -2894,14 +2925,35 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2894
2925
  _state.sent();
2895
2926
  container = this.getElm('map-root');
2896
2927
  (0,jodit_esm_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_21__.assert)(container != null, 'map-root element does not exists');
2897
- this.map = new google.maps.Map(container, {
2898
- center: {
2899
- lat: this.state.center[0],
2900
- lng: this.state.center[1]
2901
- },
2902
- zoom: this.state.zoom,
2903
- mapTypeId: this.state.type
2904
- });
2928
+ // Once Google has reported an authorization failure every further
2929
+ // map is dead on arrival, and constructing one makes the API throw
2930
+ // from inside its own promise — which no try/catch of ours can
2931
+ // intercept. Show the failed state instead of building it
2932
+ if ((0,jodit_pro_plugins_google_maps_helpers_helpers__WEBPACK_IMPORTED_MODULE_26__.isApiFailed)()) {
2933
+ this.markAsFailed();
2934
+ return [
2935
+ 2
2936
+ ];
2937
+ }
2938
+ try {
2939
+ this.map = new google.maps.Map(container, {
2940
+ center: {
2941
+ lat: this.state.center[0],
2942
+ lng: this.state.center[1]
2943
+ },
2944
+ zoom: this.state.zoom,
2945
+ mapTypeId: this.state.type
2946
+ });
2947
+ } catch (error) {
2948
+ // The API is loaded but unusable — an unauthorized key or
2949
+ // referrer leaves google.maps in a broken state. Keep the
2950
+ // dialog alive with the drawing tools switched off instead
2951
+ // of throwing out of an event handler
2952
+ this.markAsFailed();
2953
+ return [
2954
+ 2
2955
+ ];
2956
+ }
2905
2957
  this.map.addListener('zoom_changed', function() {
2906
2958
  var _this_map_getZoom;
2907
2959
  _this.state.zoom = (_this_map_getZoom = _this.map.getZoom()) !== null && _this_map_getZoom !== void 0 ? _this_map_getZoom : 10;
@@ -2920,6 +2972,11 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2920
2972
  _this.state.type = type;
2921
2973
  }
2922
2974
  });
2975
+ (0,jodit_pro_plugins_google_maps_helpers_helpers__WEBPACK_IMPORTED_MODULE_26__.googleAuthFailure)(function() {
2976
+ if (!_this.isInDestruct) {
2977
+ _this.markAsFailed();
2978
+ }
2979
+ });
2923
2980
  this.initDrawingController();
2924
2981
  this.onChangeElementsList();
2925
2982
  this.onChangeSize();
@@ -2939,6 +2996,24 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2939
2996
  }).call(this);
2940
2997
  }
2941
2998
  },
2999
+ {
3000
+ key: "markAsFailed",
3001
+ value: /**
3002
+ * Google Maps could not start: disable everything that needs a live
3003
+ * map, so the toolbar tools do not act on a broken instance
3004
+ */ function markAsFailed() {
3005
+ this.failed = true;
3006
+ this.state.mode = 'hand';
3007
+ this.j.buffer.set('failed.gm', true);
3008
+ var container = this.getElm('map-root');
3009
+ if (container && !container.firstChild) {
3010
+ container.appendChild(this.j.c.div(this.getFullElName('error'), this.j.i18n('Google Maps could not be loaded. Check the API key and the list of allowed HTTP referrers.')));
3011
+ }
3012
+ // Straight to the collection: the `updateToolbar` event is debounced
3013
+ this.toolbar.update();
3014
+ this.j.e.fire(this, 'GoogleMapsIsFailed');
3015
+ }
3016
+ },
2942
3017
  {
2943
3018
  key: "initDrawingController",
2944
3019
  value: function initDrawingController() {
@@ -2952,6 +3027,9 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
2952
3027
  {
2953
3028
  key: "changeCreateMode",
2954
3029
  value: function changeCreateMode(mode) {
3030
+ if (this.failed) {
3031
+ return;
3032
+ }
2955
3033
  this.state.mode = this.state.mode === mode ? 'hand' : mode;
2956
3034
  }
2957
3035
  },
@@ -3066,8 +3144,13 @@ var UIMap = /*#__PURE__*/ function(UIGroup) {
3066
3144
  {
3067
3145
  key: "destruct",
3068
3146
  value: function destruct() {
3069
- var _this_drawing;
3070
- (_this_drawing = this.drawing) === null || _this_drawing === void 0 ? void 0 : _this_drawing.destruct();
3147
+ // Never let a broken map keep the dialog from closing
3148
+ try {
3149
+ var _this_drawing;
3150
+ (_this_drawing = this.drawing) === null || _this_drawing === void 0 ? void 0 : _this_drawing.destruct();
3151
+ } catch (unused) {}
3152
+ this.drawing = undefined;
3153
+ this.j.buffer.set('failed.gm', false);
3071
3154
  return (0,_swc_helpers_get__WEBPACK_IMPORTED_MODULE_5__._)((0,_swc_helpers_get_prototype_of__WEBPACK_IMPORTED_MODULE_6__._)(UIMap.prototype), "destruct", this).call(this);
3072
3155
  }
3073
3156
  },
@@ -3309,6 +3392,8 @@ function isDrawableMode(mode) {
3309
3392
  key: "bind",
3310
3393
  value: function bind() {
3311
3394
  var _this = this;
3395
+ // A map whose API failed to authorize returns nothing from
3396
+ // addListener, so keep only real listeners
3312
3397
  this.listeners = [
3313
3398
  this.map.addListener('click', function(e) {
3314
3399
  return _this.onClick(e);
@@ -3319,14 +3404,14 @@ function isDrawableMode(mode) {
3319
3404
  this.map.addListener('dblclick', function() {
3320
3405
  return _this.onDblClick();
3321
3406
  })
3322
- ];
3407
+ ].filter(Boolean);
3323
3408
  }
3324
3409
  },
3325
3410
  {
3326
3411
  key: "unbind",
3327
3412
  value: function unbind() {
3328
3413
  this.listeners.forEach(function(listener) {
3329
- return listener.remove();
3414
+ return listener === null || listener === void 0 ? void 0 : listener.remove();
3330
3415
  });
3331
3416
  this.listeners = [];
3332
3417
  }
@@ -1 +1 @@
1
- .jodit-ui-combo-box{display:flex;flex-direction:column;margin-bottom:var(--jd-padding-default);position:relative}.jodit-ui-combo-box__input{appearance:none;background-color:var(--jd-color-white);border:0;border-radius:0;box-sizing:border-box;font-family:var(--jd-font-default);font-size:var(--jd-font-size-default);height:var(--jd-input-height);line-height:1.2;outline:none;padding:0 var(--jd-padding-default);width:100%}.jodit-ui-combo-box__input[disabled]{background-color:#f0f0f0;color:var(--jd-color-border)}.jodit-ui-combo-box__input_has-error_true{border-color:var(--jd-color-red)}.jodit-ui-combo-box__input:focus{outline:0}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__input{background-color:var(--jd-color-gray)}.jodit-ui-combo-box_has-error_true .jodit-ui-combo-box__input{border-color:var(--jd-color-red)}.jodit-ui-combo-box__error,.jodit-ui-combo-box__label{color:var(--jd-color-label);display:block;font-size:.8em;margin-bottom:calc(var(--jd-padding-default)/4)}.jodit-ui-combo-box__error,.jodit-ui-combo-box_has-error_true .jodit-ui-combo-box__label{color:var(--jd-color-error)}.jodit-ui-combo-box__wrapper{align-items:center;background-color:var(--jd-color-white);border:1px solid var(--jd-color-border);display:flex;justify-content:stretch;min-width:200px}@media (max-width:480px){.jodit-ui-combo-box__wrapper{min-width:140px}}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__wrapper{background-color:var(--jd-color-gray);border-color:var(--jd-color-border)}.jodit-ui-combo-box_focused_true .jodit-ui-combo-box__wrapper{border-color:var(--jd-color-border-selected)}.jodit-ui-combo-box__icon:not(:empty){align-items:center;display:flex;padding:0 var(--jd-padding-default)}.jodit-ui-combo-box__icon:not(:empty) svg{fill:var(--jd-color-border);height:16px;width:16px}.jodit-ui-combo-box__icon:not(:empty)+.jodit-ui-combo-box__input{padding-left:0}.jodit-ui-combo-box__clear{align-items:center;display:flex;opacity:.8;padding:0 var(--jd-padding-default) 0 0}.jodit-ui-combo-box__clear:active{opacity:1;transform:scale(1.1)}.jodit-ui-combo-box__clear svg{fill:var(--jd-color-border);height:12px;width:12px}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__clear svg,.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__icon svg{fill:var(--jd-color-dark)}.jodit-ui-combo-box_in-header_true{justify-self:flex-end;margin:0;width:400px}@media (max-width:480px){.jodit-ui-combo-box_in-header_true{width:270px}}.pac-container{z-index:1000000000}.jodit-ui-wysiwyg__label{color:var(--jd-color-label);padding-bottom:2px}.jodit-ui-range{user-select:none}.jodit-ui-range__slider{background:#1e87f0;height:2px;margin:var(--jd-padding-default) 7px;position:relative;z-index:1}.jodit-ui-range__slider:after,.jodit-ui-range__slider:before{background:#1e87f0;content:"";height:2px;left:-6px;position:absolute;top:0;width:7px}.jodit-ui-range__slider:after{left:auto;right:-6px}.jodit-ui-range__handle{background:#28a5f5;border:1px solid #ccc;border-radius:50%;cursor:ew-resize;height:12px;position:absolute;top:-5px;transform:translateX(-50%);width:12px;z-index:2}.jodit-ui-range__handle:active{transform:translateX(-50%) scale(1.1)}.jodit-ui-range__label{color:var(--jd-color-label);display:flex;font-size:.8em;justify-content:space-between}.jodit-ui-range__log{color:#7f7272;font-weight:700}.jodit-ui-range_log_false .jodit-ui-range__log{display:none}.jodit-color-input{display:flex;flex-direction:column;margin-bottom:var(--jd-padding-default)}.jodit-color-input__input{appearance:none;background-color:var(--jd-color-white);border:0;border-radius:0;box-sizing:border-box;font-family:var(--jd-font-default);font-size:var(--jd-font-size-default);height:var(--jd-input-height);line-height:1.2;outline:none;padding:0 var(--jd-padding-default);width:100%}.jodit-color-input__input[disabled]{background-color:#f0f0f0;color:var(--jd-color-border)}.jodit-color-input__input_has-error_true{border-color:var(--jd-color-red)}.jodit-color-input__input:focus{outline:0}.jodit-color-input_theme_dark .jodit-color-input__input{background-color:var(--jd-color-gray)}.jodit-color-input_has-error_true .jodit-color-input__input{border-color:var(--jd-color-red)}.jodit-color-input__error,.jodit-color-input__label{color:var(--jd-color-label);display:block;font-size:.8em;margin-bottom:calc(var(--jd-padding-default)/4)}.jodit-color-input__error,.jodit-color-input_has-error_true .jodit-color-input__label{color:var(--jd-color-error)}.jodit-color-input__wrapper{align-items:center;background-color:var(--jd-color-white);border:1px solid var(--jd-color-border);display:flex;justify-content:stretch;min-width:200px}@media (max-width:480px){.jodit-color-input__wrapper{min-width:140px}}.jodit-color-input_theme_dark .jodit-color-input__wrapper{background-color:var(--jd-color-gray);border-color:var(--jd-color-border)}.jodit-color-input_focused_true .jodit-color-input__wrapper{border-color:var(--jd-color-border-selected)}.jodit-color-input__icon:not(:empty){align-items:center;display:flex;padding:0 var(--jd-padding-default)}.jodit-color-input__icon:not(:empty) svg{fill:var(--jd-color-border);height:16px;width:16px}.jodit-color-input__icon:not(:empty)+.jodit-color-input__input{padding-left:0}.jodit-color-input__clear{align-items:center;display:flex;opacity:.8;padding:0 var(--jd-padding-default) 0 0}.jodit-color-input__clear:active{opacity:1;transform:scale(1.1)}.jodit-color-input__clear svg{fill:var(--jd-color-border);height:12px;width:12px}.jodit-color-input_theme_dark .jodit-color-input__clear svg,.jodit-color-input_theme_dark .jodit-color-input__icon svg{fill:var(--jd-color-dark)}.jodit-color-input__trigger{background-color:var(--jd-color-panel);border:1px solid var(--jd-color-border);border-left:0;border-radius:0;box-sizing:content-box;height:calc(var(--jd-input-height) - 2px);width:var(--jd-input-height)}.jodit-color-input_slim_true .jodit-color-input__input,.jodit-color-input_slim_true .jodit-color-input__wrapper{color:transparent;height:24px;min-width:auto;width:24px}.jodit-color-input_slim_true .jodit-color-input__trigger,.jodit-color-input_trigger_false .jodit-color-input__trigger{display:none}:root{--jd-color-map-bounding-box:rgba(99,170,241,.5)}.jodit-ui-map{background-color:#f6f6f6;height:100%;position:relative}.jodit-ui-map__map-root{height:100%}.jodit-ui-map__map-size{border:1px dotted var(--jd-color-map-bounding-box);left:50%;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%)}.jodit-ui-map__map-size:after,.jodit-ui-map__map-size:before{background-color:var(--jd-color-map-bounding-box);content:"";display:block;height:30px;left:50%;position:absolute;top:50%;transform:translateY(-50%);width:1px}.jodit-ui-map__map-size:before{height:1px;transform:translateX(-50%);width:30px}.jodit-ui-map_info-opened_true .jodit-ui-map__map-size{display:none}.jodit-ui-map__map-palette{background-color:#fff;left:50%;position:absolute;top:5px;transform:translateX(-50%)}.jodit-ui-map__map-palette .jodit-ui-group{flex-wrap:nowrap}.jodit-ui-maps-controls-form,.jodit-ui-maps-props-form{padding:16px;width:300px}.jodit-google-maps .jodit-tabs{display:flex;flex-direction:column;height:100%}.jodit-google-maps .jodit-tabs__wrapper{flex:1}.jodit-google-maps .jodit-tabs__wrapper .jodit-tab{height:100%}@media (max-width:480px){.jodit-google-maps .jodit-dialog__header{flex-direction:row}}
1
+ .jodit-ui-combo-box{display:flex;flex-direction:column;line-height:normal;margin-bottom:var(--jd-padding-default);position:relative}.jodit-ui-combo-box__input{appearance:none;background-color:var(--jd-color-white);border:0;border-radius:0;box-sizing:border-box;font-family:var(--jd-font-default);font-size:var(--jd-font-size-default);height:var(--jd-input-height);line-height:1.2;outline:none;padding:0 var(--jd-padding-default);width:100%}.jodit-ui-combo-box__input[disabled]{background-color:#f0f0f0;color:var(--jd-color-border)}.jodit-ui-combo-box__input_has-error_true{border-color:var(--jd-color-red)}.jodit-ui-combo-box__input:focus{outline:0}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__input{background-color:var(--jd-color-gray)}.jodit-ui-combo-box_has-error_true .jodit-ui-combo-box__input{border-color:var(--jd-color-red)}.jodit-ui-combo-box__error,.jodit-ui-combo-box__label{color:var(--jd-color-label);display:block;font-size:.8em;margin-bottom:calc(var(--jd-padding-default)/4)}.jodit-ui-combo-box__error,.jodit-ui-combo-box_has-error_true .jodit-ui-combo-box__label{color:var(--jd-color-error)}.jodit-ui-combo-box__wrapper{align-items:center;background-color:var(--jd-color-white);border:1px solid var(--jd-color-border);display:flex;justify-content:stretch;min-width:200px}@media (max-width:480px){.jodit-ui-combo-box__wrapper{min-width:140px}}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__wrapper{background-color:var(--jd-color-gray);border-color:var(--jd-color-border)}.jodit-ui-combo-box_focused_true .jodit-ui-combo-box__wrapper{border-color:var(--jd-color-border-selected)}.jodit-ui-combo-box__icon:not(:empty){align-items:center;display:flex;padding:0 var(--jd-padding-default)}.jodit-ui-combo-box__icon:not(:empty) svg{fill:var(--jd-color-border);height:16px;width:16px}.jodit-ui-combo-box__icon:not(:empty)+.jodit-ui-combo-box__input{padding-left:0}.jodit-ui-combo-box__clear{align-items:center;display:flex;opacity:.8;padding:0 var(--jd-padding-default) 0 0}.jodit-ui-combo-box__clear:active{opacity:1;transform:scale(1.1)}.jodit-ui-combo-box__clear svg{fill:var(--jd-color-border);height:12px;width:12px}.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__clear svg,.jodit-ui-combo-box_theme_dark .jodit-ui-combo-box__icon svg{fill:var(--jd-color-dark)}.jodit-ui-combo-box_in-header_true{justify-self:flex-end;margin:0;width:400px}@media (max-width:480px){.jodit-ui-combo-box_in-header_true{width:270px}}.pac-container{z-index:1000000000}.jodit-ui-wysiwyg__label{color:var(--jd-color-label);padding-bottom:2px}.jodit-ui-range{user-select:none}.jodit-ui-range__slider{background:#1e87f0;height:2px;margin:var(--jd-padding-default) 7px;position:relative;z-index:1}.jodit-ui-range__slider:after,.jodit-ui-range__slider:before{background:#1e87f0;content:"";height:2px;left:-6px;position:absolute;top:0;width:7px}.jodit-ui-range__slider:after{left:auto;right:-6px}.jodit-ui-range__handle{background:#28a5f5;border:1px solid #ccc;border-radius:50%;cursor:ew-resize;height:12px;position:absolute;top:-5px;transform:translateX(-50%);width:12px;z-index:2}.jodit-ui-range__handle:active{transform:translateX(-50%) scale(1.1)}.jodit-ui-range__label{color:var(--jd-color-label);display:flex;font-size:.8em;justify-content:space-between}.jodit-ui-range__log{color:#7f7272;font-weight:700}.jodit-ui-range_log_false .jodit-ui-range__log{display:none}.jodit-color-input{display:flex;flex-direction:column;margin-bottom:var(--jd-padding-default)}.jodit-color-input__input{appearance:none;background-color:var(--jd-color-white);border:0;border-radius:0;box-sizing:border-box;font-family:var(--jd-font-default);font-size:var(--jd-font-size-default);height:var(--jd-input-height);line-height:1.2;outline:none;padding:0 var(--jd-padding-default);width:100%}.jodit-color-input__input[disabled]{background-color:#f0f0f0;color:var(--jd-color-border)}.jodit-color-input__input_has-error_true{border-color:var(--jd-color-red)}.jodit-color-input__input:focus{outline:0}.jodit-color-input_theme_dark .jodit-color-input__input{background-color:var(--jd-color-gray)}.jodit-color-input_has-error_true .jodit-color-input__input{border-color:var(--jd-color-red)}.jodit-color-input__error,.jodit-color-input__label{color:var(--jd-color-label);display:block;font-size:.8em;margin-bottom:calc(var(--jd-padding-default)/4)}.jodit-color-input__error,.jodit-color-input_has-error_true .jodit-color-input__label{color:var(--jd-color-error)}.jodit-color-input__wrapper{align-items:center;background-color:var(--jd-color-white);border:1px solid var(--jd-color-border);display:flex;justify-content:stretch;min-width:200px}@media (max-width:480px){.jodit-color-input__wrapper{min-width:140px}}.jodit-color-input_theme_dark .jodit-color-input__wrapper{background-color:var(--jd-color-gray);border-color:var(--jd-color-border)}.jodit-color-input_focused_true .jodit-color-input__wrapper{border-color:var(--jd-color-border-selected)}.jodit-color-input__icon:not(:empty){align-items:center;display:flex;padding:0 var(--jd-padding-default)}.jodit-color-input__icon:not(:empty) svg{fill:var(--jd-color-border);height:16px;width:16px}.jodit-color-input__icon:not(:empty)+.jodit-color-input__input{padding-left:0}.jodit-color-input__clear{align-items:center;display:flex;opacity:.8;padding:0 var(--jd-padding-default) 0 0}.jodit-color-input__clear:active{opacity:1;transform:scale(1.1)}.jodit-color-input__clear svg{fill:var(--jd-color-border);height:12px;width:12px}.jodit-color-input_theme_dark .jodit-color-input__clear svg,.jodit-color-input_theme_dark .jodit-color-input__icon svg{fill:var(--jd-color-dark)}.jodit-color-input__trigger{background-color:var(--jd-color-panel);border:1px solid var(--jd-color-border);border-left:0;border-radius:0;box-sizing:content-box;height:calc(var(--jd-input-height) - 2px);width:var(--jd-input-height)}.jodit-color-input_slim_true .jodit-color-input__input,.jodit-color-input_slim_true .jodit-color-input__wrapper{color:transparent;height:24px;min-width:auto;width:24px}.jodit-color-input_slim_true .jodit-color-input__trigger,.jodit-color-input_trigger_false .jodit-color-input__trigger{display:none}:root{--jd-color-map-bounding-box:rgba(99,170,241,.5)}.jodit-ui-map{background-color:#f6f6f6;height:100%;position:relative}.jodit-ui-map__map-root{height:100%}.jodit-ui-map__error{align-items:center;color:#7a7a7a;display:flex;height:100%;justify-content:center;padding:20px;text-align:center}.jodit-ui-map__map-size{border:1px dotted var(--jd-color-map-bounding-box);left:50%;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%)}.jodit-ui-map__map-size:after,.jodit-ui-map__map-size:before{background-color:var(--jd-color-map-bounding-box);content:"";display:block;height:30px;left:50%;position:absolute;top:50%;transform:translateY(-50%);width:1px}.jodit-ui-map__map-size:before{height:1px;transform:translateX(-50%);width:30px}.jodit-ui-map_info-opened_true .jodit-ui-map__map-size{display:none}.jodit-ui-map__map-palette{background-color:#fff;left:50%;position:absolute;top:5px;transform:translateX(-50%)}.jodit-ui-map__map-palette .jodit-ui-group{flex-wrap:nowrap}.jodit-ui-maps-controls-form,.jodit-ui-maps-props-form{padding:16px;width:300px}.jodit-google-maps .jodit-tabs{display:flex;flex-direction:column;height:100%}.jodit-google-maps .jodit-tabs__wrapper{flex:1}.jodit-google-maps .jodit-tabs__wrapper .jodit-tab{height:100%}@media (max-width:480px){.jodit-google-maps .jodit-dialog__header{flex-direction:row}}