jodit-pro 4.13.43 → 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.
- package/es2015/jodit.css +2 -2
- package/es2015/jodit.fat.min.css +1 -1
- package/es2015/jodit.fat.min.js +8 -8
- package/es2015/jodit.js +19 -32
- package/es2015/jodit.min.js +4 -4
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2015/plugins/autocomplete/autocomplete.css +1 -1
- package/es2015/plugins/autocomplete/autocomplete.js +1 -1
- package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2015/plugins/backup/backup.css +1 -1
- package/es2015/plugins/backup/backup.js +1 -1
- package/es2015/plugins/backup/backup.min.js +1 -1
- package/es2015/plugins/button-generator/button-generator.css +1 -1
- package/es2015/plugins/button-generator/button-generator.js +1 -1
- package/es2015/plugins/button-generator/button-generator.min.js +1 -1
- package/es2015/plugins/change-case/change-case.js +1 -1
- package/es2015/plugins/change-case/change-case.min.js +1 -1
- package/es2015/plugins/color-picker/color-picker.css +1 -1
- package/es2015/plugins/color-picker/color-picker.js +1 -1
- package/es2015/plugins/color-picker/color-picker.min.js +1 -1
- package/es2015/plugins/emoji/emoji.css +1 -1
- package/es2015/plugins/emoji/emoji.js +1 -1
- package/es2015/plugins/emoji/emoji.min.js +1 -1
- package/es2015/plugins/export-docs/export-docs.js +1 -1
- package/es2015/plugins/export-docs/export-docs.min.js +1 -1
- package/es2015/plugins/finder/finder.css +1 -1
- package/es2015/plugins/finder/finder.js +1 -1
- package/es2015/plugins/finder/finder.min.js +1 -1
- package/es2015/plugins/google-maps/google-maps.css +11 -1
- package/es2015/plugins/google-maps/google-maps.js +325 -82
- package/es2015/plugins/google-maps/google-maps.min.css +1 -1
- package/es2015/plugins/google-maps/google-maps.min.js +6 -6
- package/es2015/plugins/google-search/google-search.js +1 -1
- package/es2015/plugins/google-search/google-search.min.js +1 -1
- package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
- package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
- package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
- package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es2015/plugins/image-editor-pro/image-editor-pro.css +1 -1
- package/es2015/plugins/image-editor-pro/image-editor-pro.js +1 -1
- package/es2015/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
- package/es2015/plugins/keyboard/keyboard.css +1 -1
- package/es2015/plugins/keyboard/keyboard.js +1 -1
- package/es2015/plugins/keyboard/keyboard.min.js +1 -1
- package/es2015/plugins/mobile-view/mobile-view.js +1 -1
- package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es2015/plugins/page-break/page-break.js +1 -1
- package/es2015/plugins/page-break/page-break.min.js +1 -1
- package/es2015/plugins/paste-code/paste-code.css +1 -1
- package/es2015/plugins/paste-code/paste-code.js +1 -1
- package/es2015/plugins/paste-code/paste-code.min.js +1 -1
- package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
- package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es2015/plugins/show-blocks/show-blocks.js +1 -1
- package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es2015/plugins/style/style.css +1 -1
- package/es2015/plugins/style/style.js +1 -1
- package/es2015/plugins/style/style.min.js +1 -1
- package/es2015/plugins/templates/templates.css +1 -1
- package/es2015/plugins/templates/templates.js +1 -1
- package/es2015/plugins/templates/templates.min.js +1 -1
- package/es2015/plugins/todo-list/todo-list.css +1 -1
- package/es2015/plugins/todo-list/todo-list.js +1 -1
- package/es2015/plugins/todo-list/todo-list.min.js +1 -1
- package/es2015/plugins/translate/translate.css +1 -1
- package/es2015/plugins/translate/translate.js +1 -1
- package/es2015/plugins/translate/translate.min.js +1 -1
- package/es2015/plugins/tune-block/tune-block.css +1 -1
- package/es2015/plugins/tune-block/tune-block.js +1 -1
- package/es2015/plugins/tune-block/tune-block.min.js +1 -1
- package/es2018/jodit.fat.min.css +1 -1
- package/es2018/jodit.fat.min.js +13 -13
- package/es2018/jodit.min.js +4 -4
- package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2018/plugins/backup/backup.min.js +1 -1
- package/es2018/plugins/button-generator/button-generator.min.js +1 -1
- package/es2018/plugins/change-case/change-case.min.js +1 -1
- package/es2018/plugins/color-picker/color-picker.min.js +1 -1
- package/es2018/plugins/emoji/emoji.min.js +1 -1
- package/es2018/plugins/export-docs/export-docs.min.js +1 -1
- package/es2018/plugins/finder/finder.min.js +1 -1
- package/es2018/plugins/google-maps/google-maps.min.css +1 -1
- package/es2018/plugins/google-maps/google-maps.min.js +7 -7
- package/es2018/plugins/google-search/google-search.min.js +1 -1
- package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es2018/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
- package/es2018/plugins/keyboard/keyboard.min.js +1 -1
- package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es2018/plugins/page-break/page-break.min.js +1 -1
- package/es2018/plugins/paste-code/paste-code.min.js +1 -1
- package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es2018/plugins/style/style.min.js +1 -1
- package/es2018/plugins/templates/templates.min.js +1 -1
- package/es2018/plugins/todo-list/todo-list.min.js +1 -1
- package/es2018/plugins/translate/translate.min.js +1 -1
- package/es2018/plugins/tune-block/tune-block.min.js +1 -1
- package/es2021/jodit.css +2 -2
- package/es2021/jodit.fat.min.css +1 -1
- package/es2021/jodit.fat.min.js +16 -16
- package/es2021/jodit.js +19 -32
- package/es2021/jodit.min.js +4 -4
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2021/plugins/autocomplete/autocomplete.css +1 -1
- package/es2021/plugins/autocomplete/autocomplete.js +1 -1
- package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2021/plugins/backup/backup.css +1 -1
- package/es2021/plugins/backup/backup.js +1 -1
- package/es2021/plugins/backup/backup.min.js +1 -1
- package/es2021/plugins/button-generator/button-generator.css +1 -1
- package/es2021/plugins/button-generator/button-generator.js +1 -1
- package/es2021/plugins/button-generator/button-generator.min.js +1 -1
- package/es2021/plugins/change-case/change-case.js +1 -1
- package/es2021/plugins/change-case/change-case.min.js +1 -1
- package/es2021/plugins/color-picker/color-picker.css +1 -1
- package/es2021/plugins/color-picker/color-picker.js +1 -1
- package/es2021/plugins/color-picker/color-picker.min.js +1 -1
- package/es2021/plugins/emoji/emoji.css +1 -1
- package/es2021/plugins/emoji/emoji.js +1 -1
- package/es2021/plugins/emoji/emoji.min.js +1 -1
- package/es2021/plugins/export-docs/export-docs.js +1 -1
- package/es2021/plugins/export-docs/export-docs.min.js +1 -1
- package/es2021/plugins/finder/finder.css +1 -1
- package/es2021/plugins/finder/finder.js +1 -1
- package/es2021/plugins/finder/finder.min.js +1 -1
- package/es2021/plugins/google-maps/google-maps.css +11 -1
- package/es2021/plugins/google-maps/google-maps.js +320 -85
- package/es2021/plugins/google-maps/google-maps.min.css +1 -1
- package/es2021/plugins/google-maps/google-maps.min.js +9 -9
- package/es2021/plugins/google-search/google-search.js +1 -1
- package/es2021/plugins/google-search/google-search.min.js +1 -1
- package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
- package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
- package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
- package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es2021/plugins/image-editor-pro/image-editor-pro.css +1 -1
- package/es2021/plugins/image-editor-pro/image-editor-pro.js +1 -1
- package/es2021/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
- package/es2021/plugins/keyboard/keyboard.css +1 -1
- package/es2021/plugins/keyboard/keyboard.js +1 -1
- package/es2021/plugins/keyboard/keyboard.min.js +1 -1
- package/es2021/plugins/mobile-view/mobile-view.js +1 -1
- package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es2021/plugins/page-break/page-break.js +1 -1
- package/es2021/plugins/page-break/page-break.min.js +1 -1
- package/es2021/plugins/paste-code/paste-code.css +1 -1
- package/es2021/plugins/paste-code/paste-code.js +1 -1
- package/es2021/plugins/paste-code/paste-code.min.js +1 -1
- package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
- package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es2021/plugins/show-blocks/show-blocks.js +1 -1
- package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es2021/plugins/style/style.css +1 -1
- package/es2021/plugins/style/style.js +1 -1
- package/es2021/plugins/style/style.min.js +1 -1
- package/es2021/plugins/templates/templates.css +1 -1
- package/es2021/plugins/templates/templates.js +1 -1
- package/es2021/plugins/templates/templates.min.js +1 -1
- package/es2021/plugins/todo-list/todo-list.css +1 -1
- package/es2021/plugins/todo-list/todo-list.js +1 -1
- package/es2021/plugins/todo-list/todo-list.min.js +1 -1
- package/es2021/plugins/translate/translate.css +1 -1
- package/es2021/plugins/translate/translate.js +1 -1
- package/es2021/plugins/translate/translate.min.js +1 -1
- package/es2021/plugins/tune-block/tune-block.css +1 -1
- package/es2021/plugins/tune-block/tune-block.js +1 -1
- package/es2021/plugins/tune-block/tune-block.min.js +1 -1
- package/es2021.en/jodit.css +2 -2
- package/es2021.en/jodit.fat.min.css +1 -1
- package/es2021.en/jodit.fat.min.js +8 -8
- package/es2021.en/jodit.js +19 -32
- package/es2021.en/jodit.min.js +4 -4
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2021.en/plugins/autocomplete/autocomplete.css +1 -1
- package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
- package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2021.en/plugins/backup/backup.css +1 -1
- package/es2021.en/plugins/backup/backup.js +1 -1
- package/es2021.en/plugins/backup/backup.min.js +1 -1
- package/es2021.en/plugins/button-generator/button-generator.css +1 -1
- package/es2021.en/plugins/button-generator/button-generator.js +1 -1
- package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
- package/es2021.en/plugins/change-case/change-case.js +1 -1
- package/es2021.en/plugins/change-case/change-case.min.js +1 -1
- package/es2021.en/plugins/color-picker/color-picker.css +1 -1
- package/es2021.en/plugins/color-picker/color-picker.js +1 -1
- package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
- package/es2021.en/plugins/emoji/emoji.css +1 -1
- package/es2021.en/plugins/emoji/emoji.js +1 -1
- package/es2021.en/plugins/emoji/emoji.min.js +1 -1
- package/es2021.en/plugins/export-docs/export-docs.js +1 -1
- package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
- package/es2021.en/plugins/finder/finder.css +1 -1
- package/es2021.en/plugins/finder/finder.js +1 -1
- package/es2021.en/plugins/finder/finder.min.js +1 -1
- package/es2021.en/plugins/google-maps/google-maps.css +11 -1
- package/es2021.en/plugins/google-maps/google-maps.js +320 -85
- package/es2021.en/plugins/google-maps/google-maps.min.css +1 -1
- package/es2021.en/plugins/google-maps/google-maps.min.js +9 -9
- package/es2021.en/plugins/google-search/google-search.js +1 -1
- package/es2021.en/plugins/google-search/google-search.min.js +1 -1
- package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
- package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
- package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
- package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es2021.en/plugins/image-editor-pro/image-editor-pro.css +1 -1
- package/es2021.en/plugins/image-editor-pro/image-editor-pro.js +1 -1
- package/es2021.en/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
- package/es2021.en/plugins/keyboard/keyboard.css +1 -1
- package/es2021.en/plugins/keyboard/keyboard.js +1 -1
- package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
- package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
- package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es2021.en/plugins/page-break/page-break.js +1 -1
- package/es2021.en/plugins/page-break/page-break.min.js +1 -1
- package/es2021.en/plugins/paste-code/paste-code.css +1 -1
- package/es2021.en/plugins/paste-code/paste-code.js +1 -1
- package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
- package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
- package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
- package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es2021.en/plugins/style/style.css +1 -1
- package/es2021.en/plugins/style/style.js +1 -1
- package/es2021.en/plugins/style/style.min.js +1 -1
- package/es2021.en/plugins/templates/templates.css +1 -1
- package/es2021.en/plugins/templates/templates.js +1 -1
- package/es2021.en/plugins/templates/templates.min.js +1 -1
- package/es2021.en/plugins/todo-list/todo-list.css +1 -1
- package/es2021.en/plugins/todo-list/todo-list.js +1 -1
- package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
- package/es2021.en/plugins/translate/translate.css +1 -1
- package/es2021.en/plugins/translate/translate.js +1 -1
- package/es2021.en/plugins/translate/translate.min.js +1 -1
- package/es2021.en/plugins/tune-block/tune-block.css +1 -1
- package/es2021.en/plugins/tune-block/tune-block.js +1 -1
- package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
- package/es5/jodit.css +3 -3
- package/es5/jodit.fat.min.css +1 -1
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +46 -32
- package/es5/jodit.min.css +2 -2
- package/es5/jodit.min.js +2 -2
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es5/plugins/autocomplete/autocomplete.css +1 -1
- package/es5/plugins/autocomplete/autocomplete.js +1 -1
- package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es5/plugins/backup/backup.css +1 -1
- package/es5/plugins/backup/backup.js +1 -1
- package/es5/plugins/backup/backup.min.js +1 -1
- package/es5/plugins/button-generator/button-generator.css +1 -1
- package/es5/plugins/button-generator/button-generator.js +1 -1
- package/es5/plugins/button-generator/button-generator.min.js +1 -1
- package/es5/plugins/change-case/change-case.js +1 -1
- package/es5/plugins/change-case/change-case.min.js +1 -1
- package/es5/plugins/color-picker/color-picker.css +1 -1
- package/es5/plugins/color-picker/color-picker.js +1 -1
- package/es5/plugins/color-picker/color-picker.min.js +1 -1
- package/es5/plugins/emoji/emoji.css +1 -1
- package/es5/plugins/emoji/emoji.js +1 -1
- package/es5/plugins/emoji/emoji.min.js +1 -1
- package/es5/plugins/export-docs/export-docs.js +1 -1
- package/es5/plugins/export-docs/export-docs.min.js +1 -1
- package/es5/plugins/finder/finder.css +1 -1
- package/es5/plugins/finder/finder.js +1 -1
- package/es5/plugins/finder/finder.min.js +1 -1
- package/es5/plugins/google-maps/google-maps.css +11 -1
- package/es5/plugins/google-maps/google-maps.js +416 -104
- package/es5/plugins/google-maps/google-maps.min.css +1 -1
- package/es5/plugins/google-maps/google-maps.min.js +2 -2
- package/es5/plugins/google-search/google-search.js +1 -1
- package/es5/plugins/google-search/google-search.min.js +1 -1
- package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
- package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
- package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
- package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es5/plugins/image-editor-pro/image-editor-pro.css +1 -1
- package/es5/plugins/image-editor-pro/image-editor-pro.js +1 -1
- package/es5/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
- package/es5/plugins/keyboard/keyboard.css +1 -1
- package/es5/plugins/keyboard/keyboard.js +1 -1
- package/es5/plugins/keyboard/keyboard.min.js +1 -1
- package/es5/plugins/mobile-view/mobile-view.js +1 -1
- package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es5/plugins/page-break/page-break.js +1 -1
- package/es5/plugins/page-break/page-break.min.js +1 -1
- package/es5/plugins/paste-code/paste-code.css +1 -1
- package/es5/plugins/paste-code/paste-code.js +1 -1
- package/es5/plugins/paste-code/paste-code.min.js +1 -1
- package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
- package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es5/plugins/show-blocks/show-blocks.js +1 -1
- package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es5/plugins/style/style.css +1 -1
- package/es5/plugins/style/style.js +1 -1
- package/es5/plugins/style/style.min.js +1 -1
- package/es5/plugins/templates/templates.css +1 -1
- package/es5/plugins/templates/templates.js +1 -1
- package/es5/plugins/templates/templates.min.js +1 -1
- package/es5/plugins/todo-list/todo-list.css +1 -1
- package/es5/plugins/todo-list/todo-list.js +1 -1
- package/es5/plugins/todo-list/todo-list.min.js +1 -1
- package/es5/plugins/translate/translate.css +1 -1
- package/es5/plugins/translate/translate.js +1 -1
- package/es5/plugins/translate/translate.min.js +1 -1
- package/es5/plugins/tune-block/tune-block.css +1 -1
- package/es5/plugins/tune-block/tune-block.js +1 -1
- package/es5/plugins/tune-block/tune-block.min.js +1 -1
- package/es5/polyfills.fat.min.js +1 -1
- package/es5/polyfills.js +1 -1
- package/es5/polyfills.min.js +1 -1
- package/esm/plugins/google-maps/config.js +1 -1
- package/esm/plugins/google-maps/google-maps.js +1 -1
- package/esm/plugins/google-maps/helpers/helpers.d.ts +8 -0
- package/esm/plugins/google-maps/helpers/helpers.js +1 -1
- package/esm/plugins/google-maps/ui/map/map.d.ts +9 -2
- package/esm/plugins/google-maps/ui/map/map.js +2 -2
- package/esm/plugins/google-maps/ui/map/modules/drawing-controller.d.ts +42 -0
- package/esm/plugins/google-maps/ui/map/modules/drawing-controller.js +1 -0
- package/package.json +1 -1
- package/types/plugins/google-maps/helpers/helpers.d.ts +8 -0
- package/types/plugins/google-maps/ui/map/map.d.ts +9 -2
- package/types/plugins/google-maps/ui/map/modules/drawing-controller.d.ts +42 -0
package/es5/polyfills.fat.min.js
CHANGED
package/es5/polyfills.js
CHANGED
package/es5/polyfills.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var i=Object.defineProperty;var l=(e,o)=>i(e,"name",{value:o,configurable:!0});import{COMMAND_OPEN_DIALOG as r}from"./helpers/const.js";import{Config as a}from"jodit/esm/config.js";a.prototype.googleMaps={saveStateInStorage:!0,useStaticImage:!1,apiUrl:"https://maps.googleapis.com/maps/api/js?key=${j.o.googleMaps.API_KEY}&libraries=geometry,places&language=${j.o.language}&callback=JoditGoogleReadyHandler",API_KEY:"AIzaSyDjnR03hxN8fo0QJ85Jkkvk2DALTh3eynY",dialog:{size:[700,700]},inlineEditorOptions:{buttons:["bold","italic","link","brush","fontsize","image"]},map:{type:"roadmap",layer:"default",center:"auto",defaultCenter:[-34.397,150.644],defaultZoom:10,zoom:10,size:[500,400],defaultStates:{polyline:{strokeColor:"#5ba4f3",strokeWeight:3},polygon:{strokeColor:"#417706",fillColor:"#5b9302",strokeWeight:1,fillOpacity:.5},marker:{},text:{},circle:{strokeColor:"#da767c",fillColor:"#f34ca8",strokeWeight:1,fillOpacity:.5}}}},a.prototype.controls.googleMaps={tooltip:"Google Maps",icon:"map",command:r};const t=l(e=>({icon:`edit-${e}`,isActive:l(o=>o.buffer.get("createMode.gm")===e,"isActive"),isDisabled:l(o=>e!=="hand"&&!!o.buffer.get("failed.gm"),"isDisabled"),exec:l(o=>{o.e.fire("changeCreateMode.gm",e)},"exec")}),"gmButton");a.prototype.controls.gm={hand:t("hand"),marker:t("marker"),polyline:t("polyline"),polygon:t("polygon"),circle:t("circle"),text:t("text")};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var C=Object.defineProperty;var u=(d,e)=>C(d,"name",{value:e,configurable:!0});var h=function(d,e,
|
|
1
|
+
var C=Object.defineProperty;var u=(d,e)=>C(d,"name",{value:e,configurable:!0});var h=function(d,e,a,t){var i=arguments.length,r=i<3?e:t===null?t=Object.getOwnPropertyDescriptor(e,a):t,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(d,e,a,t);else for(var p=d.length-1;p>=0;p--)(c=d[p])&&(r=(i<3?c(r):i>3?c(e,a,r):c(e,a))||r);return i>3&&r&&Object.defineProperty(e,a,r),r};import"./config.js";import"./assets/index.js";import{COMMAND_OPEN_DIALOG as b,STORAGE_KEY as E}from"./helpers/const.js";import{generateJSScript as O}from"./helpers/generate-js-script.js";import{GoogleAuthFailureHandler as w,googleReady as A,GoogleReadyHandler as N,isApiAvailable as j}from"./helpers/helpers.js";import{staticUrl as v}from"./helpers/static-url.js";import{UIComboBox as _}from"./ui/combo-box/combo-box.js";import{UIMap as I,UIMapsControlsForm as F,UIMapsPropsForm as D}from"./ui/index.js";import{IS_TEST as $,SOURCE_CONSUMER as G}from"jodit/esm/core/constants.js";import{watch as M}from"jodit/esm/core/decorators/index.js";import{appendScriptAsync as R}from"jodit/esm/core/helpers/index.js";import{Plugin as J}from"jodit/esm/core/plugin/index.js";import{Button as S}from"jodit/esm/core/ui/button/index.js";import{Dialog as U}from"jodit/esm/modules/dialog/dialog.js";import{TabsWidget as P}from"jodit/esm/modules/widget/index.js";import{JoditPro as V}from"../../jodit-pro.js";window.JoditGoogleReadyHandler=N,window.gm_authFailure=w;const y=class y extends J{constructor(){super(...arguments),this.buttons=[{group:"media",name:"googleMaps"}],this.dialog=null}className(){return"google-maps"}afterInit(e){e.registerCommand(b,()=>{this.openMapEditor(null,{})})}beforeDestruct(e){}onOpenOnDblClick(e){if(e.dataset.googleMaps){let a;try{a=JSON.parse(this.j.ow.atob(e.dataset.googleMaps))}catch{}return this.openMapEditor(e,a),!1}}async openMapEditor(e,a){const t=this.j,i=this.getDialog(),r=this.j.o.googleMaps.saveStateInStorage?i.storage.get(E):void 0,{apiUrl:c}=this.jodit.o.googleMaps;j()||R(this.jodit,c.replace(/\${([^}]+)}/g,(s,l)=>{var f;return(f=this.get(l))!==null&&f!==void 0?f:""}));const p={type:this.j.o.googleMaps.map.type,layer:this.j.o.googleMaps.map.layer,size:this.j.o.googleMaps.map.size,...r,...a},o=new I(i,p,this.j.options);o.container.classList.add(i.getFullElName("map"));const n=new _(t,{icon:"search",placeholder:"Search",clearButton:!0}).setMod("in-header",!0);n.container.classList.add(i.getFullElName("search")),this.j.async.promise(s=>{if(j()){s(0);return}const l=u(()=>{j()?s(0):this.j.async.setTimeout(l,100)},"intervalChecker");l(),A(s)}).then(()=>{o.setStatus("ready"),n.setStatus("ready")}),this.j.e.on(n,"select",(s,l)=>{if(l){o.map.fitBounds(l);return}s&&(o.state.center=[s.lat(),s.lng()])}),r||(this.j.o.googleMaps.map.center==="auto"?navigator.geolocation.getCurrentPosition(s=>{o.state.center=[s.coords.latitude,s.coords.longitude]},()=>{o.state.center=this.j.o.googleMaps.map.defaultCenter}):o.state.center=this.j.o.googleMaps.map.center),i.setSize(...t.o.googleMaps.dialog.size).setHeader([n," ",S(t,"eye").onAction(()=>{const s=this.jodit.createInside.element("img");s.src=v(o),s.dataset.googleMaps=btoa(o.json());const l={value:s.outerHTML};this.onAfterGetValueFromEditor(l),t.execCommand("preview",null,l.value)})]).setContent(P(t,[{name:"Map",icon:"map",content:o},{name:"Settings",content:new D(t,o.state)},{name:"Controls",icon:"menu",content:new F(t,o.state)}])).setFooter([S(t,"cancel","Cancel","default").onAction(()=>i.close()),S(t,"ok",e?"Save":"Insert","primary").onAction(()=>{o.destruct(),n.destruct(),i.e.off("beforeClose",m),i.close(),this.insertMap(e,o)})]).open();const m=u(()=>{if(o.state.elements.length&&JSON.stringify(o.state.elements)!==JSON.stringify(p.elements)&&!$&&!confirm(this.i18n("Are you sure?")))return!1;o.destruct(),n.destruct(),i.e.off("beforeClose",m)},"onCLose");i.e.on("beforeClose",m)}getDialog(){if(!this.dialog){const e=new U({language:this.j.o.language});e.container.classList.add(this.getFullElName("")),this.dialog=e}return this.dialog}insertMap(e,a){const t=e??this.jodit.createInside.element("img");t.src=v(a),t.dataset.googleMaps=btoa(a.json()),e||this.jodit.s.insertImage(t)}onBeforeSetNativeEditorValue(e){e.value=e.value.replace(/<script[^>]+jodit-google-maps-init[^>]+>.*?<\/script>/gs,"")}onAfterGetValueFromEditor(e,a){this.j.o.googleMaps.useStaticImage||a===G||(e.value=e.value.replace(/(<img[^>]+)(["']?)data-google-maps\2\s*=(["'])([^"']+)\3([^>]*>)/gs,(t,i,r,c,p,o)=>{let n={};try{n=JSON.parse(this.j.ow.atob(p))}catch{}return`${i} id="${n.uid}" ${r}data-google-maps${r}=${c}${p}${c}${o}${O(this.j,n)}`}))}};u(y,"googleMaps");let g=y;g.requires=["license","color-picker"],h([M("?:openOnDblClick")],g.prototype,"onOpenOnDblClick",null),h([M(":beforeSetNativeEditorValue")],g.prototype,"onBeforeSetNativeEditorValue",null),h([M(":afterGetValueFromEditor")],g.prototype,"onAfterGetValueFromEditor",null),V.plugins.add("google-maps",g);export{g as googleMaps};
|
|
@@ -7,6 +7,14 @@ export declare let jdGoogleMapsAlreadyLoaded: boolean;
|
|
|
7
7
|
export declare const jdGoogleMapsOnloadHandlers: Array<Function>;
|
|
8
8
|
export declare function googleReady(callback: Function): void;
|
|
9
9
|
export declare function GoogleReadyHandler(): void;
|
|
10
|
+
export declare let jdGoogleMapsAuthFailed: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Google calls `gm_authFailure` when the key or the HTTP referrer is not
|
|
13
|
+
* authorized: the API is loaded, but every map instance is dead
|
|
14
|
+
*/
|
|
15
|
+
export declare function GoogleAuthFailureHandler(): void;
|
|
16
|
+
export declare function googleAuthFailure(callback: Function): void;
|
|
17
|
+
export declare function isApiFailed(): boolean;
|
|
10
18
|
export declare function arrayToPath(array: number[] | number[][], likePlainObject?: boolean): any;
|
|
11
19
|
export declare function pathToArray(path: google.maps.MVCArray<any>): number[][];
|
|
12
20
|
export declare function specialColor(value: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var i=Object.defineProperty;var o=(e,t)=>i(e,"name",{value:t,configurable:!0});let l=!1;const r=[];function d(e){l?e():r.push(e)}o(d,"googleReady");function g(){l=!0,r&&r.forEach(e=>e())}o(g,"GoogleReadyHandler");let n=!1;const a=[];function A(){n=!0,a.forEach(e=>e())}o(A,"GoogleAuthFailureHandler");function h(e){n?e():a.push(e)}o(h,"googleAuthFailure");function x(){return n}o(x,"isApiFailed");function s(e,t=!1){const p=[];if(Array.isArray(e))if(Array.isArray(e[0])||Array.isArray(e[1]))e.forEach(u=>{p.push(s(u,t))});else return t?{lat:e[0],lng:e[1]}:new google.maps.LatLng(e[0],e[1]);return p}o(s,"arrayToPath");function c(e){return e.getArray().map(t=>[t.lat(),t.lng()])}o(c,"pathToArray");function y(e){return e.toUpperCase().replace("#","0x").padEnd(10,"F")}o(y,"specialColor");function F(){return typeof google<"u"&&typeof google.maps<"u"&&typeof google.maps.Map<"u"}o(F,"isApiAvailable");export{A as GoogleAuthFailureHandler,g as GoogleReadyHandler,s as arrayToPath,h as googleAuthFailure,d as googleReady,F as isApiAvailable,x as isApiFailed,l as jdGoogleMapsAlreadyLoaded,n as jdGoogleMapsAuthFailed,r as jdGoogleMapsOnloadHandlers,c as pathToArray,y as specialColor};
|
|
@@ -9,7 +9,7 @@ import { UIElement, UIGroup } from "jodit/esm/core/ui/index";
|
|
|
9
9
|
import type { CreateMode, IUIMap, IUIMapElement, IUIMapState } from "../../interface";
|
|
10
10
|
export declare class UIMap extends UIGroup implements IUIMap {
|
|
11
11
|
readonly options: IJodit['options'];
|
|
12
|
-
private
|
|
12
|
+
private drawing?;
|
|
13
13
|
className(): string;
|
|
14
14
|
private toolbar;
|
|
15
15
|
state: IUIMapState;
|
|
@@ -17,9 +17,15 @@ export declare class UIMap extends UIGroup implements IUIMap {
|
|
|
17
17
|
readonly mapElements: IUIMapElement[];
|
|
18
18
|
private apiLoaded;
|
|
19
19
|
private mapInitialized;
|
|
20
|
+
private failed;
|
|
20
21
|
map: google.maps.Map;
|
|
21
22
|
protected onReady(): Promise<void>;
|
|
22
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Google Maps could not start: disable everything that needs a live
|
|
25
|
+
* map, so the toolbar tools do not act on a broken instance
|
|
26
|
+
*/
|
|
27
|
+
private markAsFailed;
|
|
28
|
+
private initDrawingController;
|
|
23
29
|
protected changeCreateMode(mode: CreateMode): void;
|
|
24
30
|
protected onChangeMode(): void;
|
|
25
31
|
protected onChangeElementsList(): void;
|
|
@@ -31,6 +37,7 @@ export declare class UIMap extends UIGroup implements IUIMap {
|
|
|
31
37
|
protected onChangeMapType(): void;
|
|
32
38
|
private layers;
|
|
33
39
|
protected onChangeLayer(): void;
|
|
40
|
+
destruct(): unknown;
|
|
34
41
|
protected render(): string;
|
|
35
42
|
protected appendChildToContainer(): void;
|
|
36
43
|
constructor(jodit: UIElement['jodit'], state: Partial<IUIMapState>, options: IJodit['options']);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var
|
|
1
|
+
var f=Object.defineProperty;var c=(l,t)=>f(l,"name",{value:t,configurable:!0});var n=function(l,t,e,o){var s=arguments.length,i=s<3?t:o===null?o=Object.getOwnPropertyDescriptor(t,e):o,h;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(l,t,e,o);else for(var p=l.length-1;p>=0;p--)(h=l[p])&&(i=(s<3?h(i):s>3?h(t,e,i):h(t,e))||i);return s>3&&i&&Object.defineProperty(t,e,i),i};import"../../config.js";import{addNewInState as y}from"./modules/add-new-in-state.js";import{DrawingController as C}from"./modules/drawing-controller.js";import{initOrUpdateElementFromState as v}from"./modules/init-or-update-element-from-state.js";import{debounce as d}from"jodit/esm/core/decorators/debounce/debounce.js";import{hook as z}from"jodit/esm/core/decorators/hook/hook.js";import{wait as u}from"jodit/esm/core/decorators/wait/wait.js";import{watch as r}from"jodit/esm/core/decorators/watch/watch.js";import{uniqueUid as M}from"jodit/esm/core/global.js";import{assert as m}from"jodit/esm/core/helpers/utils/assert.js";import{css as _}from"jodit/esm/core/helpers/utils/css.js";import{UIGroup as b}from"jodit/esm/core/ui/index.js";import{ToolbarCollection as w}from"jodit/esm/modules/toolbar/collection/collection.js";import{STORAGE_KEY as E}from"../../helpers/const.js";import{googleAuthFailure as j,isApiFailed as I}from"../../helpers/helpers.js";const g=class g extends b{className(){return"UIMap"}json(){return JSON.stringify({...this.state,mode:"hand"})}async onReady(){await this.apiLoaded;const t=this.getElm("map-root");if(m(t!=null,"map-root element does not exists"),I()){this.markAsFailed();return}try{this.map=new google.maps.Map(t,{center:{lat:this.state.center[0],lng:this.state.center[1]},zoom:this.state.zoom,mapTypeId:this.state.type})}catch{this.markAsFailed();return}this.map.addListener("zoom_changed",()=>{var e;this.state.zoom=(e=this.map.getZoom())!==null&&e!==void 0?e:10}),this.map.addListener("center_changed",()=>{var e,o,s,i,h,p;this.state.center=[(s=(o=(e=this.map)===null||e===void 0?void 0:e.getCenter())===null||o===void 0?void 0:o.lat())!==null&&s!==void 0?s:55,(p=(h=(i=this.map)===null||i===void 0?void 0:i.getCenter())===null||h===void 0?void 0:h.lng())!==null&&p!==void 0?p:34]}),this.map.addListener("maptypeid_changed",()=>{const e=this.map.getMapTypeId();e&&(this.state.type=e)}),j(()=>{this.isInDestruct||this.markAsFailed()}),this.initDrawingController(),this.onChangeElementsList(),this.onChangeSize(),this.onChangeControls(),this.onChangeLayer(),this.onChangeMapType(),this.onChangeMode(),this.mapInitialized=!0,this.j.async.requestIdleCallback(()=>{this.j.e.fire(this,"GoogleMapsIsReady")})}markAsFailed(){this.failed=!0,this.state.mode="hand",this.j.buffer.set("failed.gm",!0);const t=this.getElm("map-root");t&&!t.firstChild&&t.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."))),this.toolbar.update(),this.j.e.fire(this,"GoogleMapsIsFailed")}initDrawingController(){this.drawing=new C(this.map,this.options.googleMaps.map.defaultStates,t=>{y.call(this,t),t.setMap(null)})}changeCreateMode(t){this.failed||(this.state.mode=this.state.mode===t?"hand":t)}onChangeMode(){var t;this.j.buffer.set("createMode.gm",this.state.mode),(t=this.drawing)===null||t===void 0||t.setMode(this.state.mode),this.j.e.fire("updateToolbar")}onChangeElementsList(){const{state:{elements:t},mapElements:e}=this;t.length<e.length&&e.slice(t.length).forEach(o=>{o.gme.setMap(null)}),e.length=t.length,t.forEach((o,s)=>v.call(this,o,s))}onChangeCenter(){const t=this.map.getCenter();(t?.lat()!==this.state.center[0]||t?.lng()!==this.state.center[1])&&this.map.setCenter({lat:this.state.center[0],lng:this.state.center[1]})}onChangeZoom(){var t;(t=this.map)===null||t===void 0||t.setZoom(this.state.zoom)}onChangeControls(){var t;let e;for(e in this.state.controls)(t=this.map)===null||t===void 0||t.set(e,this.state.controls[e])}onChangeBound(){this.options.googleMaps.saveStateInStorage&&this.j.storage.set(E,{center:this.state.center,size:this.state.size,zoom:this.state.zoom,type:this.state.type,layer:this.state.layer,controls:this.state.controls})}onChangeSize(){const t=this.getElm("map-size");m(t!=null,"map-size element does not exists"),_(t,{width:this.state.size[0],height:this.state.size[1]})}onChangeMapType(){this.map.setMapTypeId(this.state.type)}onChangeLayer(){switch(this.layers.forEach(t=>t.setMap(null)),this.layers.length=0,this.state.layer){case"traffic":this.layers.push(new google.maps.TrafficLayer);break;case"transit":this.layers.push(new google.maps.TransitLayer);break;case"bicycling":this.layers.push(new google.maps.BicyclingLayer);break}this.layers.forEach(t=>t.setMap(this.map))}destruct(){var t;try{(t=this.drawing)===null||t===void 0||t.destruct()}catch{}return this.drawing=void 0,this.j.buffer.set("failed.gm",!1),super.destruct()}render(){return`<div>
|
|
2
2
|
<div class='&__map-root'></div>
|
|
3
3
|
<div class='&__map-size'></div>
|
|
4
4
|
<div class='&__map-palette'></div>
|
|
5
|
-
</div>`}appendChildToContainer(){}constructor(t,e,o){super(t),this.options=o,this.toolbar=new w(this.jodit),this.state={uid:"jd"+M()+new Date().toString().replace(/[^0-9]/g,""),layer:this.options.googleMaps.map.layer,center:this.options.googleMaps.map.defaultCenter,zoom:this.options.googleMaps.map.defaultZoom,size:this.options.googleMaps.map.size,type:this.options.googleMaps.map.type,controls:{zoomControl:!0,mapTypeControl:!0,scaleControl:!0,streetViewControl:!0,rotateControl:!0,fullscreenControl:!0},mode:"hand",elements:[]},this.mapElements=[],this.apiLoaded=null,this.mapInitialized=!1,this.layers=[],Object.assign(this.state,e),this.toolbar.build(["gm.hand","gm.marker","gm.polyline","gm.polygon","gm.circle"]);const
|
|
5
|
+
</div>`}appendChildToContainer(){}constructor(t,e,o){super(t),this.options=o,this.toolbar=new w(this.jodit),this.state={uid:"jd"+M()+new Date().toString().replace(/[^0-9]/g,""),layer:this.options.googleMaps.map.layer,center:this.options.googleMaps.map.defaultCenter,zoom:this.options.googleMaps.map.defaultZoom,size:this.options.googleMaps.map.size,type:this.options.googleMaps.map.type,controls:{zoomControl:!0,mapTypeControl:!0,scaleControl:!0,streetViewControl:!0,rotateControl:!0,fullscreenControl:!0},mode:"hand",elements:[]},this.mapElements=[],this.apiLoaded=null,this.mapInitialized=!1,this.failed=!1,this.layers=[],Object.assign(this.state,e),this.toolbar.build(["gm.hand","gm.marker","gm.polyline","gm.polygon","gm.circle"]);const s=this.getElm("map-palette");m(s!=null,"palette element does not exists"),s.appendChild(this.toolbar.container)}};c(g,"UIMap");let a=g;n([z("ready")],a.prototype,"onReady",null),n([r("?:changeCreateMode.gm")],a.prototype,"changeCreateMode",null),n([r("state.mode")],a.prototype,"onChangeMode",null),n([r("state.elements")],a.prototype,"onChangeElementsList",null),n([r("state.center"),u(l=>l.mapInitialized),d()],a.prototype,"onChangeCenter",null),n([r("state.zoom"),d()],a.prototype,"onChangeZoom",null),n([r("state.controls")],a.prototype,"onChangeControls",null),n([r(["state.center","state.zoom","state.controls","state.size","state.type","state.layer"]),u(l=>l.mapInitialized),d()],a.prototype,"onChangeBound",null),n([r("state.size"),d()],a.prototype,"onChangeSize",null),n([r("state.type")],a.prototype,"onChangeMapType",null),n([r("state.layer")],a.prototype,"onChangeLayer",null);export{a as UIMap};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
3
|
+
* See LICENSE.md in the project root for license information.
|
|
4
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
5
|
+
*/
|
|
6
|
+
import type { Config } from "jodit/esm/config";
|
|
7
|
+
import type { CreateMode, IGMElement } from "../../../interface";
|
|
8
|
+
type DrawableMode = 'marker' | 'polyline' | 'polygon' | 'circle';
|
|
9
|
+
export declare function isDrawableMode(mode: CreateMode): mode is DrawableMode;
|
|
10
|
+
/**
|
|
11
|
+
* Replacement for the removed `google.maps.drawing.DrawingManager`
|
|
12
|
+
* (the Drawing Library was discontinued in Maps JS API v3.65):
|
|
13
|
+
* draws markers, polylines, polygons and circles with plain map events.
|
|
14
|
+
*
|
|
15
|
+
* Click places a marker / a vertex / a circle center; for circles the
|
|
16
|
+
* radius follows the cursor and a second click fixes it; polylines and
|
|
17
|
+
* polygons are finished with a double click. The completed shape is
|
|
18
|
+
* passed to `onComplete` and removed from the map — the caller
|
|
19
|
+
* re-creates it from state, exactly as with DrawingManager overlays.
|
|
20
|
+
*/
|
|
21
|
+
export declare class DrawingController {
|
|
22
|
+
private readonly map;
|
|
23
|
+
private readonly defaultStates;
|
|
24
|
+
private readonly onComplete;
|
|
25
|
+
private mode;
|
|
26
|
+
private listeners;
|
|
27
|
+
private preview;
|
|
28
|
+
private previewCircle;
|
|
29
|
+
private vertices;
|
|
30
|
+
constructor(map: google.maps.Map, defaultStates: Config['googleMaps']['map']['defaultStates'], onComplete: (overlay: IGMElement) => void);
|
|
31
|
+
setMode(mode: CreateMode): void;
|
|
32
|
+
destruct(): void;
|
|
33
|
+
private bind;
|
|
34
|
+
private unbind;
|
|
35
|
+
private onClick;
|
|
36
|
+
private onMove;
|
|
37
|
+
private onDblClick;
|
|
38
|
+
private finishCircle;
|
|
39
|
+
private updatePolyPreview;
|
|
40
|
+
private cancel;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var c=Object.defineProperty;var l=(s,e)=>c(s,"name",{value:e,configurable:!0});const a=["marker","polyline","polygon","circle"];function p(s){return a.includes(s)}l(p,"isDrawableMode");const o=class o{constructor(e,i,t){this.map=e,this.defaultStates=i,this.onComplete=t,this.mode=null,this.listeners=[],this.preview=null,this.previewCircle=null,this.vertices=[]}setMode(e){const i=p(e)?e:null;i!==this.mode&&(this.cancel(),this.unbind(),this.mode=i,i?(this.bind(),this.map.setOptions({draggableCursor:"crosshair",disableDoubleClickZoom:!0})):this.map.setOptions({draggableCursor:null,disableDoubleClickZoom:!1}))}destruct(){this.cancel(),this.unbind(),this.mode=null}bind(){this.listeners=[this.map.addListener("click",e=>this.onClick(e)),this.map.addListener("mousemove",e=>this.onMove(e)),this.map.addListener("dblclick",()=>this.onDblClick())].filter(Boolean)}unbind(){this.listeners.forEach(e=>e?.remove()),this.listeners=[]}onClick(e){const i=e.latLng;if(i)switch(this.mode){case"marker":this.onComplete(new google.maps.Marker({position:i}));break;case"circle":this.previewCircle?this.finishCircle():this.previewCircle=new google.maps.Circle({...this.defaultStates.circle,center:i,radius:0,clickable:!1,map:this.map});break;case"polyline":case"polygon":this.vertices.push(i),this.updatePolyPreview(i);break}}onMove(e){const i=e.latLng;if(i){if(this.previewCircle){const t=this.previewCircle.getCenter();t&&this.previewCircle.setRadius(google.maps.geometry.spherical.computeDistanceBetween(t,i));return}this.vertices.length&&this.updatePolyPreview(i)}}onDblClick(){if(this.mode!=="polyline"&&this.mode!=="polygon")return;const e=this.vertices.filter((t,n,h)=>n===0||!t.equals(h[n-1])),i=this.mode==="polygon"?3:2;if(e.length>=i&&this.preview){const t=this.preview;t.setPath(e),this.onComplete(t)}this.cancel()}finishCircle(){const e=this.previewCircle;e&&(this.previewCircle=null,this.onComplete(e),e.setMap(null))}updatePolyPreview(e){const i=[...this.vertices,e];if(!this.preview){const t={...this.defaultStates[this.mode==="polygon"?"polygon":"polyline"],clickable:!1,map:this.map};this.preview=this.mode==="polygon"?new google.maps.Polygon(t):new google.maps.Polyline(t)}this.preview.setPath(i)}cancel(){var e,i;(e=this.preview)===null||e===void 0||e.setMap(null),this.preview=null,(i=this.previewCircle)===null||i===void 0||i.setMap(null),this.previewCircle=null,this.vertices=[]}};l(o,"DrawingController");let r=o;export{r as DrawingController,p as isDrawableMode};
|
package/package.json
CHANGED
|
@@ -7,6 +7,14 @@ export declare let jdGoogleMapsAlreadyLoaded: boolean;
|
|
|
7
7
|
export declare const jdGoogleMapsOnloadHandlers: Array<Function>;
|
|
8
8
|
export declare function googleReady(callback: Function): void;
|
|
9
9
|
export declare function GoogleReadyHandler(): void;
|
|
10
|
+
export declare let jdGoogleMapsAuthFailed: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Google calls `gm_authFailure` when the key or the HTTP referrer is not
|
|
13
|
+
* authorized: the API is loaded, but every map instance is dead
|
|
14
|
+
*/
|
|
15
|
+
export declare function GoogleAuthFailureHandler(): void;
|
|
16
|
+
export declare function googleAuthFailure(callback: Function): void;
|
|
17
|
+
export declare function isApiFailed(): boolean;
|
|
10
18
|
export declare function arrayToPath(array: number[] | number[][], likePlainObject?: boolean): any;
|
|
11
19
|
export declare function pathToArray(path: google.maps.MVCArray<any>): number[][];
|
|
12
20
|
export declare function specialColor(value: string): string;
|
|
@@ -9,7 +9,7 @@ import { UIElement, UIGroup } from "jodit/esm/core/ui/index";
|
|
|
9
9
|
import type { CreateMode, IUIMap, IUIMapElement, IUIMapState } from "../../interface";
|
|
10
10
|
export declare class UIMap extends UIGroup implements IUIMap {
|
|
11
11
|
readonly options: IJodit['options'];
|
|
12
|
-
private
|
|
12
|
+
private drawing?;
|
|
13
13
|
className(): string;
|
|
14
14
|
private toolbar;
|
|
15
15
|
state: IUIMapState;
|
|
@@ -17,9 +17,15 @@ export declare class UIMap extends UIGroup implements IUIMap {
|
|
|
17
17
|
readonly mapElements: IUIMapElement[];
|
|
18
18
|
private apiLoaded;
|
|
19
19
|
private mapInitialized;
|
|
20
|
+
private failed;
|
|
20
21
|
map: google.maps.Map;
|
|
21
22
|
protected onReady(): Promise<void>;
|
|
22
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Google Maps could not start: disable everything that needs a live
|
|
25
|
+
* map, so the toolbar tools do not act on a broken instance
|
|
26
|
+
*/
|
|
27
|
+
private markAsFailed;
|
|
28
|
+
private initDrawingController;
|
|
23
29
|
protected changeCreateMode(mode: CreateMode): void;
|
|
24
30
|
protected onChangeMode(): void;
|
|
25
31
|
protected onChangeElementsList(): void;
|
|
@@ -31,6 +37,7 @@ export declare class UIMap extends UIGroup implements IUIMap {
|
|
|
31
37
|
protected onChangeMapType(): void;
|
|
32
38
|
private layers;
|
|
33
39
|
protected onChangeLayer(): void;
|
|
40
|
+
destruct(): unknown;
|
|
34
41
|
protected render(): string;
|
|
35
42
|
protected appendChildToContainer(): void;
|
|
36
43
|
constructor(jodit: UIElement['jodit'], state: Partial<IUIMapState>, options: IJodit['options']);
|