jodit-pro 4.18.14 → 4.18.15
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 +1 -1
- package/es2015/jodit.fat.min.js +5 -5
- package/es2015/jodit.js +256 -73
- package/es2015/jodit.min.js +5 -5
- 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/chart/chart.css +1 -1
- package/es2015/plugins/chart/chart.js +1 -1
- package/es2015/plugins/chart/chart.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 +1 -1
- package/es2015/plugins/google-maps/google-maps.js +1 -1
- package/es2015/plugins/google-maps/google-maps.min.js +1 -1
- 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/math/math.css +1 -1
- package/es2015/plugins/math/math.js +1 -1
- package/es2015/plugins/math/math.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.js +5 -5
- package/es2018/jodit.min.js +5 -5
- 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/chart/chart.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.js +1 -1
- 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/math/math.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 +1 -1
- package/es2021/jodit.fat.min.js +6 -6
- package/es2021/jodit.js +256 -73
- package/es2021/jodit.min.js +6 -6
- 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/chart/chart.css +1 -1
- package/es2021/plugins/chart/chart.js +1 -1
- package/es2021/plugins/chart/chart.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 +1 -1
- package/es2021/plugins/google-maps/google-maps.js +1 -1
- package/es2021/plugins/google-maps/google-maps.min.js +1 -1
- 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/math/math.css +1 -1
- package/es2021/plugins/math/math.js +1 -1
- package/es2021/plugins/math/math.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 +1 -1
- package/es2021.en/jodit.fat.min.js +6 -6
- package/es2021.en/jodit.js +256 -73
- package/es2021.en/jodit.min.js +9 -9
- 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/chart/chart.css +1 -1
- package/es2021.en/plugins/chart/chart.js +1 -1
- package/es2021.en/plugins/chart/chart.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 +1 -1
- package/es2021.en/plugins/google-maps/google-maps.js +1 -1
- package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
- 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/math/math.css +1 -1
- package/es2021.en/plugins/math/math.js +1 -1
- package/es2021.en/plugins/math/math.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 +2 -2
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +303 -74
- 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/chart/chart.css +1 -1
- package/es5/plugins/chart/chart.js +1 -1
- package/es5/plugins/chart/chart.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 +1 -1
- package/es5/plugins/google-maps/google-maps.js +1 -1
- package/es5/plugins/google-maps/google-maps.min.js +1 -1
- 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/math/math.css +1 -1
- package/es5/plugins/math/math.js +1 -1
- package/es5/plugins/math/math.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/package.json +1 -1
package/es2021.en/jodit.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* jodit-pro - PRO Version of Jodit Editor
|
|
3
3
|
* Author: Chupurnov Valerii <chupurnov@gmail.com>
|
|
4
|
-
* Version: v4.18.
|
|
4
|
+
* Version: v4.18.15
|
|
5
5
|
* Url: https://xdsoft.net/jodit/pro/
|
|
6
6
|
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
7
|
*/
|
|
@@ -1405,7 +1405,8 @@ class Async {
|
|
|
1405
1405
|
this.__requestsIdle.forEach((key)=>this.cancelIdleCallback(key));
|
|
1406
1406
|
this.__requestsRaf.forEach((key)=>this.cancelAnimationFrame(key));
|
|
1407
1407
|
this.__controllers.forEach((controller)=>controller.abort());
|
|
1408
|
-
|
|
1408
|
+
// A labelled timer is kept under its label, so clear by the value
|
|
1409
|
+
this.timers.forEach((timer)=>(0,_helpers_async_index_js__WEBPACK_IMPORTED_MODULE_1__.clearTimeout)(timer));
|
|
1409
1410
|
this.timers.clear();
|
|
1410
1411
|
this.promisesRejections.forEach((reject)=>reject());
|
|
1411
1412
|
this.promisesRejections.clear();
|
|
@@ -1766,7 +1767,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1766
1767
|
* ```
|
|
1767
1768
|
* @packageDocumentation
|
|
1768
1769
|
* @module constants
|
|
1769
|
-
*/ const APP_VERSION = "4.18.
|
|
1770
|
+
*/ const APP_VERSION = "4.18.15";
|
|
1770
1771
|
// prettier-ignore
|
|
1771
1772
|
const ES = "es2021";
|
|
1772
1773
|
const IS_ES_MODERN = true;
|
|
@@ -7061,8 +7062,10 @@ function normalizeCssValue(key, value) {
|
|
|
7061
7062
|
* ancestor's top-left corner. The returned offset should be subtracted from
|
|
7062
7063
|
* the desired viewport coordinates before applying them.
|
|
7063
7064
|
*
|
|
7064
|
-
*
|
|
7065
|
-
*
|
|
7065
|
+
* Without such an ancestor the containing block is the layout viewport. Its
|
|
7066
|
+
* offset is `{ x: 0, y: 0 }` in most browsers, but WebKit measures client
|
|
7067
|
+
* rects from the visual viewport, so once the page is pinch-zoomed and panned
|
|
7068
|
+
* the layout viewport starts above and to the left of the client origin.
|
|
7066
7069
|
*/ function getFixedPositionOffset(elm) {
|
|
7067
7070
|
var _a;
|
|
7068
7071
|
const win = (_a = elm.ownerDocument) === null || _a === void 0 ? void 0 : _a.defaultView;
|
|
@@ -7077,6 +7080,15 @@ function normalizeCssValue(key, value) {
|
|
|
7077
7080
|
}
|
|
7078
7081
|
node = node.parentElement;
|
|
7079
7082
|
}
|
|
7083
|
+
const vv = win === null || win === void 0 ? void 0 : win.visualViewport;
|
|
7084
|
+
// WebKit's `scrollX`/`scrollY` follow the visual viewport too (truncated),
|
|
7085
|
+
// where Blink's and Gecko's follow the layout viewport
|
|
7086
|
+
if (win && vv && (vv.offsetLeft || vv.offsetTop) && Math.abs(vv.pageLeft - win.scrollX) < 1 && Math.abs(vv.pageTop - win.scrollY) < 1) {
|
|
7087
|
+
return {
|
|
7088
|
+
x: -Math.round(vv.offsetLeft),
|
|
7089
|
+
y: -Math.round(vv.offsetTop)
|
|
7090
|
+
};
|
|
7091
|
+
}
|
|
7080
7092
|
return {
|
|
7081
7093
|
x: 0,
|
|
7082
7094
|
y: 0
|
|
@@ -33377,12 +33389,13 @@ _core_ui_icon_js__WEBPACK_IMPORTED_MODULE_3__.Icon.set('about', _about_svg_js__W
|
|
|
33377
33389
|
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
|
|
33378
33390
|
|
|
33379
33391
|
/* unused harmony export addNewLine */
|
|
33380
|
-
/* harmony import */ var
|
|
33381
|
-
/* harmony import */ var
|
|
33382
|
-
/* harmony import */ var
|
|
33383
|
-
/* harmony import */ var
|
|
33384
|
-
/* harmony import */ var
|
|
33385
|
-
/* harmony import */ var
|
|
33392
|
+
/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
33393
|
+
/* harmony import */ var _core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478);
|
|
33394
|
+
/* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(580);
|
|
33395
|
+
/* harmony import */ var _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(21537);
|
|
33396
|
+
/* harmony import */ var _core_helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(41180);
|
|
33397
|
+
/* harmony import */ var _modules_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(41409);
|
|
33398
|
+
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(4604);
|
|
33386
33399
|
/*!
|
|
33387
33400
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
33388
33401
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -33399,10 +33412,11 @@ _core_ui_icon_js__WEBPACK_IMPORTED_MODULE_3__.Icon.set('about', _about_svg_js__W
|
|
|
33399
33412
|
|
|
33400
33413
|
|
|
33401
33414
|
|
|
33415
|
+
|
|
33402
33416
|
const ns = 'addnewline';
|
|
33403
33417
|
/**
|
|
33404
33418
|
* Create helper for adding new paragraph(Jodit.defaultOptions.enter tag) before iframe, table or image
|
|
33405
|
-
*/ class addNewLine extends
|
|
33419
|
+
*/ class addNewLine extends _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Plugin {
|
|
33406
33420
|
__show() {
|
|
33407
33421
|
if (this.j.o.readonly || this.j.isLocked) {
|
|
33408
33422
|
return;
|
|
@@ -33412,8 +33426,8 @@ const ns = 'addnewline';
|
|
|
33412
33426
|
return;
|
|
33413
33427
|
}
|
|
33414
33428
|
this.__isShown = true;
|
|
33415
|
-
|
|
33416
|
-
(0,
|
|
33429
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.append(this.j.container, this.__line);
|
|
33430
|
+
(0,_core_helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__.css)(this.__line, 'width', this.j.container.clientWidth);
|
|
33417
33431
|
}
|
|
33418
33432
|
onLock(isLocked) {
|
|
33419
33433
|
if (isLocked && this.__isShown) {
|
|
@@ -33451,16 +33465,43 @@ const ns = 'addnewline';
|
|
|
33451
33465
|
editor.editor
|
|
33452
33466
|
], 'scroll' + '.' + ns, this.__hideForce).on('finishedCleanHTMLWorker' + '.' + ns, this.__hideForce).on(editor.editor, 'click' + '.' + ns, this.__hide).on(editor.container, 'mouseleave' + '.' + ns, this.__hide).on(editor.editor, 'mousemove' + '.' + ns, this.__onMouseMove);
|
|
33453
33467
|
}
|
|
33468
|
+
/**
|
|
33469
|
+
* A paragraph holding only an embed has no place for the caret, so the
|
|
33470
|
+
* arrow keys can't get past one that ends the content, or before one that
|
|
33471
|
+
* starts it. When an arrow key leaves the caret where it was and there is
|
|
33472
|
+
* content beyond it, a new line goes there, as when the line is clicked.
|
|
33473
|
+
*/ onArrowKey(e) {
|
|
33474
|
+
const editor = this.j;
|
|
33475
|
+
const forward = e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_DOWN || e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_RIGHT;
|
|
33476
|
+
if (!editor.o.addNewLine || editor.o.readonly || editor.isLocked || e.shiftKey || !(forward || e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_UP || e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_LEFT) || !editor.s.isCollapsed()) {
|
|
33477
|
+
return;
|
|
33478
|
+
}
|
|
33479
|
+
const { startContainer, startOffset } = editor.s.range;
|
|
33480
|
+
// Once the browser has moved the caret, if it could. With a 0 timeout
|
|
33481
|
+
// Jodit would run this at once, before the browser moves it
|
|
33482
|
+
editor.async.setTimeout(()=>{
|
|
33483
|
+
const { range } = editor.s;
|
|
33484
|
+
const block = _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.closest(startContainer, _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.isBlock, editor.editor);
|
|
33485
|
+
if (e.defaultPrevented || !editor.s.isInsideArea || !range.collapsed || range.startContainer !== startContainer || range.startOffset !== startOffset || !block || !_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.findNotEmptyNeighbor(block, !forward, editor.editor)) {
|
|
33486
|
+
return;
|
|
33487
|
+
}
|
|
33488
|
+
const p = editor.createInside.element(editor.o.enter);
|
|
33489
|
+
forward ? _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.append(editor.editor, p) : _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.prepend(editor.editor, p);
|
|
33490
|
+
editor.s.setCursorIn(p);
|
|
33491
|
+
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.scrollIntoViewIfNeeded)(p, editor.editor, editor.ed);
|
|
33492
|
+
editor.synchronizeValues();
|
|
33493
|
+
}, 1);
|
|
33494
|
+
}
|
|
33454
33495
|
onDblClickEditor(e) {
|
|
33455
33496
|
const editor = this.j;
|
|
33456
33497
|
if (!editor.o.readonly && editor.o.addNewLineOnDBLClick && e.target === editor.editor && editor.s.isCollapsed()) {
|
|
33457
|
-
const editorBound = (0,
|
|
33498
|
+
const editorBound = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.offset)(editor.editor, editor, editor.ed);
|
|
33458
33499
|
const top = e.pageY - editor.ew.scrollX;
|
|
33459
33500
|
const p = editor.createInside.element(editor.o.enter);
|
|
33460
33501
|
if (Math.abs(top - editorBound.top) < Math.abs(top - (editorBound.height + editorBound.top)) && editor.editor.firstChild) {
|
|
33461
|
-
|
|
33502
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.prepend(editor.editor, p);
|
|
33462
33503
|
} else {
|
|
33463
|
-
|
|
33504
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.append(editor.editor, p);
|
|
33464
33505
|
}
|
|
33465
33506
|
editor.s.setCursorIn(p);
|
|
33466
33507
|
editor.synchronizeValues();
|
|
@@ -33474,27 +33515,27 @@ const ns = 'addnewline';
|
|
|
33474
33515
|
// Inside Shadow DOM `document.elementFromPoint` returns the shadow
|
|
33475
33516
|
// host, so the lookup must start from the shadow root
|
|
33476
33517
|
let currentElement = ((_a = editor.o.shadowRoot) !== null && _a !== void 0 ? _a : editor.ed).elementFromPoint(e.clientX, e.clientY);
|
|
33477
|
-
if (!
|
|
33518
|
+
if (!_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.isHTMLElement(currentElement) || !_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.isOrContains(editor.editor, currentElement)) {
|
|
33478
33519
|
return;
|
|
33479
33520
|
}
|
|
33480
33521
|
if (editor.editor !== currentElement && !this.__isMatchedTag(currentElement)) {
|
|
33481
|
-
currentElement =
|
|
33522
|
+
currentElement = _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.closest(currentElement, this.__isMatchedTag, editor.editor);
|
|
33482
33523
|
}
|
|
33483
33524
|
if (!currentElement) {
|
|
33484
33525
|
this.__hide();
|
|
33485
33526
|
return;
|
|
33486
33527
|
}
|
|
33487
33528
|
if (this.__isMatchedTag(currentElement)) {
|
|
33488
|
-
const parentBox =
|
|
33529
|
+
const parentBox = _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.up(currentElement, _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.isBlock, editor.editor);
|
|
33489
33530
|
if (parentBox && parentBox !== editor.editor) {
|
|
33490
33531
|
currentElement = parentBox;
|
|
33491
33532
|
}
|
|
33492
33533
|
}
|
|
33493
|
-
const pos = (0,
|
|
33534
|
+
const pos = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.position)(currentElement, this.j);
|
|
33494
33535
|
let top = false;
|
|
33495
33536
|
let { clientY, clientX } = e;
|
|
33496
33537
|
if (this.j.iframe) {
|
|
33497
|
-
const { top, left } = (0,
|
|
33538
|
+
const { top, left } = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.position)(this.j.iframe, this.j, true);
|
|
33498
33539
|
clientY += top;
|
|
33499
33540
|
clientX += left;
|
|
33500
33541
|
}
|
|
@@ -33507,8 +33548,8 @@ const ns = 'addnewline';
|
|
|
33507
33548
|
this.__isBeforeContent = false;
|
|
33508
33549
|
}
|
|
33509
33550
|
const isEditor = editor.editor === currentElement;
|
|
33510
|
-
if (top !== false && (isEditor && !this.__isBeforeContent || !isEditor && !(0,
|
|
33511
|
-
(0,
|
|
33551
|
+
if (top !== false && (isEditor && !this.__isBeforeContent || !isEditor && !(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.call)(this.__isBeforeContent ? _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.prev : _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.next, currentElement, this.__canGetFocus, editor.editor))) {
|
|
33552
|
+
(0,_core_helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__.css)(this.__line, 'top', top);
|
|
33512
33553
|
this.__current = currentElement;
|
|
33513
33554
|
this.__show();
|
|
33514
33555
|
this.__line.style.setProperty('--jd-anl-handle-offset', clientX - pos.left - 10 + 'px');
|
|
@@ -33520,7 +33561,7 @@ const ns = 'addnewline';
|
|
|
33520
33561
|
/** @override */ beforeDestruct() {
|
|
33521
33562
|
this.j.async.clearTimeout(this.__timeout);
|
|
33522
33563
|
this.j.e.off(this.__line).off('changePlace', this.__addEventListeners);
|
|
33523
|
-
|
|
33564
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.safeRemove(this.__line);
|
|
33524
33565
|
this.j.e.off([
|
|
33525
33566
|
this.j.ow,
|
|
33526
33567
|
this.j.ew,
|
|
@@ -33529,7 +33570,7 @@ const ns = 'addnewline';
|
|
|
33529
33570
|
}
|
|
33530
33571
|
constructor(){
|
|
33531
33572
|
super(...arguments);
|
|
33532
|
-
this.__line = this.j.c.fromHTML(`<div role="button" tabindex="-1" title="${this.j.i18n('Break')}" class="jodit-add-new-line"><span>${
|
|
33573
|
+
this.__line = this.j.c.fromHTML(`<div role="button" tabindex="-1" title="${this.j.i18n('Break')}" class="jodit-add-new-line"><span>${_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Icon.get('enter')}</span></div>`);
|
|
33533
33574
|
this.__isMatchedTag = (node)=>Boolean(node && this.j.o.addNewLineTagsTriggers.includes(node.nodeName.toLowerCase()));
|
|
33534
33575
|
this.__isBeforeContent = false;
|
|
33535
33576
|
this.__lineInFocus = false;
|
|
@@ -33541,26 +33582,26 @@ const ns = 'addnewline';
|
|
|
33541
33582
|
this.__isShown = false;
|
|
33542
33583
|
this.j.async.clearTimeout(this.__timeout);
|
|
33543
33584
|
this.__lineInFocus = false;
|
|
33544
|
-
|
|
33585
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.safeRemove(this.__line);
|
|
33545
33586
|
this.__line.style.setProperty('--jd-anl-handle-offset', '0');
|
|
33546
33587
|
};
|
|
33547
33588
|
this.__canGetFocus = (elm)=>{
|
|
33548
|
-
return elm != null &&
|
|
33589
|
+
return elm != null && _modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.isBlock(elm) && !/^(img|table|iframe|hr)$/i.test(elm.nodeName);
|
|
33549
33590
|
};
|
|
33550
33591
|
this.__onClickLine = (e)=>{
|
|
33551
33592
|
const editor = this.j;
|
|
33552
33593
|
const p = editor.createInside.element(editor.o.enter);
|
|
33553
33594
|
if (this.__isBeforeContent && this.__current && this.__current.parentNode) {
|
|
33554
33595
|
if (this.__current === editor.editor) {
|
|
33555
|
-
|
|
33596
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.prepend(editor.editor, p);
|
|
33556
33597
|
} else {
|
|
33557
|
-
|
|
33598
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.before(this.__current, p);
|
|
33558
33599
|
}
|
|
33559
33600
|
} else {
|
|
33560
|
-
|
|
33601
|
+
_modules_index_js__WEBPACK_IMPORTED_MODULE_5__.Dom.append(editor.editor, p);
|
|
33561
33602
|
}
|
|
33562
33603
|
editor.s.setCursorIn(p);
|
|
33563
|
-
(0,
|
|
33604
|
+
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.scrollIntoViewIfNeeded)(p, editor.editor, editor.ed);
|
|
33564
33605
|
editor.synchronizeValues();
|
|
33565
33606
|
this.__hideForce();
|
|
33566
33607
|
e.preventDefault();
|
|
@@ -33568,18 +33609,21 @@ const ns = 'addnewline';
|
|
|
33568
33609
|
}
|
|
33569
33610
|
}
|
|
33570
33611
|
__decorate([
|
|
33571
|
-
(0,
|
|
33612
|
+
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':lock')
|
|
33572
33613
|
], addNewLine.prototype, "onLock", null);
|
|
33573
33614
|
__decorate([
|
|
33574
|
-
|
|
33615
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.autobind
|
|
33575
33616
|
], addNewLine.prototype, "__hide", null);
|
|
33576
33617
|
__decorate([
|
|
33577
|
-
(0,
|
|
33618
|
+
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':keydown')
|
|
33619
|
+
], addNewLine.prototype, "onArrowKey", null);
|
|
33620
|
+
__decorate([
|
|
33621
|
+
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.watch)(':dblclick')
|
|
33578
33622
|
], addNewLine.prototype, "onDblClickEditor", null);
|
|
33579
33623
|
__decorate([
|
|
33580
|
-
(0,
|
|
33624
|
+
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.throttle)((ctx)=>ctx.defaultTimeout)
|
|
33581
33625
|
], addNewLine.prototype, "__onMouseMove", null);
|
|
33582
|
-
|
|
33626
|
+
_core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('addNewLine', addNewLine);
|
|
33583
33627
|
|
|
33584
33628
|
|
|
33585
33629
|
/***/ }),
|
|
@@ -34260,6 +34304,7 @@ UiAiAssistant = __decorate([
|
|
|
34260
34304
|
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(32496);
|
|
34261
34305
|
/* harmony import */ var _cases_check_not_collapsed_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(11338);
|
|
34262
34306
|
/* harmony import */ var _cases_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(14630);
|
|
34307
|
+
/* harmony import */ var _helpers_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(63785);
|
|
34263
34308
|
/*!
|
|
34264
34309
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
34265
34310
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -34273,6 +34318,7 @@ UiAiAssistant = __decorate([
|
|
|
34273
34318
|
|
|
34274
34319
|
|
|
34275
34320
|
|
|
34321
|
+
|
|
34276
34322
|
class backspace extends _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_4__.Plugin {
|
|
34277
34323
|
afterInit(jodit) {
|
|
34278
34324
|
jodit.registerCommand('deleteButton', {
|
|
@@ -34350,19 +34396,53 @@ class backspace extends _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_4__.Plugi
|
|
|
34350
34396
|
throw e;
|
|
34351
34397
|
} finally{
|
|
34352
34398
|
jodit.e.fire('backSpaceAfterDelete', backspace, fakeNode);
|
|
34399
|
+
this.moveCaretToTextBefore(fakeNode);
|
|
34353
34400
|
this.safeRemoveEmptyNode(fakeNode);
|
|
34354
34401
|
}
|
|
34355
34402
|
return false;
|
|
34356
34403
|
}
|
|
34404
|
+
/**
|
|
34405
|
+
* The browser types at the end of the text before the caret on its line,
|
|
34406
|
+
* in that text's formatting, but not inside a link. Moving the caret there
|
|
34407
|
+
* too makes a paste and the toolbar agree with what's typed:
|
|
34408
|
+
* `<p>one</p><p><b>|two</b></p>` joins to `<p>one|<b>two</b></p>`
|
|
34409
|
+
*/ moveCaretToTextBefore(fakeNode) {
|
|
34410
|
+
var _a, _b;
|
|
34411
|
+
const { jodit } = this;
|
|
34412
|
+
const { range } = jodit.s;
|
|
34413
|
+
// A case may have merged the fake node away (#1722)
|
|
34414
|
+
if (!fakeNode.parentNode) {
|
|
34415
|
+
return;
|
|
34416
|
+
}
|
|
34417
|
+
const around = jodit.ed.createRange();
|
|
34418
|
+
around.selectNode(fakeNode);
|
|
34419
|
+
if (!range.collapsed || !around.isPointInRange(range.startContainer, range.startOffset)) {
|
|
34420
|
+
return;
|
|
34421
|
+
}
|
|
34422
|
+
const text = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_9__.findMostNestedNeighbor)(fakeNode, false, jodit.editor, true);
|
|
34423
|
+
const link = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(text, 'a', jodit.editor);
|
|
34424
|
+
if (!_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(text) || !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isContentEditable(text, jodit.editor) || link && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isOrContains(link, fakeNode) || _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(text, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, jodit.editor) !== _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(fakeNode, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, jodit.editor)) {
|
|
34425
|
+
return;
|
|
34426
|
+
}
|
|
34427
|
+
range.setStart(text, (_b = (_a = text.nodeValue) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0);
|
|
34428
|
+
range.collapse(true);
|
|
34429
|
+
jodit.s.selectRange(range);
|
|
34430
|
+
}
|
|
34357
34431
|
/**
|
|
34358
34432
|
* Remove node and replace cursor position out of it
|
|
34359
34433
|
*/ safeRemoveEmptyNode(fakeNode) {
|
|
34360
|
-
var _a, _b;
|
|
34434
|
+
var _a, _b, _c;
|
|
34361
34435
|
const { range } = this.j.s;
|
|
34436
|
+
// wrap-nodes normalizes the line it wraps, which can merge the text
|
|
34437
|
+
// after the fake node into it: remove only the fake node's own space
|
|
34438
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(fakeNode) && fakeNode.nodeValue !== _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INVISIBLE_SPACE && ((_a = fakeNode.nodeValue) === null || _a === void 0 ? void 0 : _a.startsWith(_core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INVISIBLE_SPACE))) {
|
|
34439
|
+
fakeNode.deleteData(0, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INVISIBLE_SPACE.length);
|
|
34440
|
+
return;
|
|
34441
|
+
}
|
|
34362
34442
|
if (range.startContainer === fakeNode) {
|
|
34363
34443
|
if (fakeNode.previousSibling) {
|
|
34364
34444
|
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(fakeNode.previousSibling)) {
|
|
34365
|
-
range.setStart(fakeNode.previousSibling, (
|
|
34445
|
+
range.setStart(fakeNode.previousSibling, (_c = (_b = fakeNode.previousSibling.nodeValue) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0);
|
|
34366
34446
|
} else {
|
|
34367
34447
|
range.setStartAfter(fakeNode.previousSibling);
|
|
34368
34448
|
}
|
|
@@ -34427,6 +34507,9 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
|
|
|
34427
34507
|
return false;
|
|
34428
34508
|
}
|
|
34429
34509
|
const sibling = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.findNotEmptySibling(mainClosestBox, backspace);
|
|
34510
|
+
if (moveInlinesInside(jodit, fakeNode, sibling)) {
|
|
34511
|
+
return joinNeighbors(jodit, fakeNode, backspace, moved);
|
|
34512
|
+
}
|
|
34430
34513
|
// A line break before the cursor is a single unit: remove it instead of
|
|
34431
34514
|
// merging the current element into the (void) `<br>`, which used to move
|
|
34432
34515
|
// the whole element's content into the `<br>` and delete it (#1282).
|
|
@@ -34441,6 +34524,10 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
|
|
|
34441
34524
|
jodit.s.setCursorBefore(fakeNode);
|
|
34442
34525
|
return true;
|
|
34443
34526
|
}
|
|
34527
|
+
// A non-editable sibling is removed by remove-not-editable, never joined
|
|
34528
|
+
if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(sibling) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isContentEditable(sibling, jodit.editor)) {
|
|
34529
|
+
return false;
|
|
34530
|
+
}
|
|
34444
34531
|
const box = findCaretBox(fakeNode, mainClosestBox);
|
|
34445
34532
|
// One pass only: the line now sits beside the next one, so the
|
|
34446
34533
|
// cases below join them. The DOM has changed either way
|
|
@@ -34469,6 +34556,60 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
|
|
|
34469
34556
|
}
|
|
34470
34557
|
return _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isLeaf(block) && block.parentElement ? block.parentElement : block;
|
|
34471
34558
|
}
|
|
34559
|
+
/**
|
|
34560
|
+
* With an inline element round the caret's line or the one it joins moved
|
|
34561
|
+
* inside its blocks, the cases join the lines as they join any two, and its
|
|
34562
|
+
* styles stay with its text. One round both lines is left as it is.
|
|
34563
|
+
*/ function moveInlinesInside(jodit, fakeNode, sibling) {
|
|
34564
|
+
if (!sibling) {
|
|
34565
|
+
return false;
|
|
34566
|
+
}
|
|
34567
|
+
const around = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.furthest(fakeNode, (node)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(node) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isOrContains(node, sibling), jodit.editor);
|
|
34568
|
+
return moveInlineInside(around, jodit.editor) || moveInlineInside(sibling, jodit.editor);
|
|
34569
|
+
}
|
|
34570
|
+
/**
|
|
34571
|
+
* Old content can have an inline element round blocks. This moves it inside
|
|
34572
|
+
* them, and gives the text, images and line breaks beside them a copy of
|
|
34573
|
+
* their own: `<span style="…"><p>one</p><br><p>two</p></span>` becomes
|
|
34574
|
+
* `<p><span style="…">one</span></p><span style="…"><br></span><p><span style="…">two</span></p>`
|
|
34575
|
+
*/ function moveInlineInside(node, root) {
|
|
34576
|
+
if (!_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(node) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node)) {
|
|
34577
|
+
return false;
|
|
34578
|
+
}
|
|
34579
|
+
// Embedded content, such as the `<iframe>` in a video's wrapper, counts
|
|
34580
|
+
// as a block in `Dom.isBlock`, but stays with the text beside it
|
|
34581
|
+
const isBlock = (child)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(child) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(child, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.NO_EMPTY_TAGS);
|
|
34582
|
+
// The inner one first: `<span><strong><p>one</p></strong></span>`
|
|
34583
|
+
Array.from(node.childNodes).forEach((child)=>moveInlineInside(child, root));
|
|
34584
|
+
const children = Array.from(node.childNodes);
|
|
34585
|
+
if (!children.some(isBlock)) {
|
|
34586
|
+
return false;
|
|
34587
|
+
}
|
|
34588
|
+
let run = null;
|
|
34589
|
+
for (const child of children){
|
|
34590
|
+
if (!isBlock(child)) {
|
|
34591
|
+
// Blank text between blocks stays where it is
|
|
34592
|
+
if (!run && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isEmptyTextNode(child)) {
|
|
34593
|
+
run = node.cloneNode(false);
|
|
34594
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.before(child, run);
|
|
34595
|
+
}
|
|
34596
|
+
run && _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(run, child);
|
|
34597
|
+
continue;
|
|
34598
|
+
}
|
|
34599
|
+
run = null;
|
|
34600
|
+
// Nothing goes inside a rule or a non-editable block
|
|
34601
|
+
if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(child, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSEPARABLE_TAGS) || !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isContentEditable(child, root)) {
|
|
34602
|
+
continue;
|
|
34603
|
+
}
|
|
34604
|
+
const inner = node.cloneNode(false);
|
|
34605
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.moveContent(child, inner);
|
|
34606
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(child, inner);
|
|
34607
|
+
// A list or a table: on down to its items or cells
|
|
34608
|
+
moveInlineInside(inner, root);
|
|
34609
|
+
}
|
|
34610
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.unwrap(node);
|
|
34611
|
+
return true;
|
|
34612
|
+
}
|
|
34472
34613
|
/**
|
|
34473
34614
|
* The innermost block on the sibling's edge facing the caret, so the
|
|
34474
34615
|
* content is joined to text: `<div><p>one</p></div><p>|two</p>` gives
|
|
@@ -34820,7 +34961,9 @@ function checkRemoveChar(jodit, fakeNode, backspace, mode, stopBeforeSpace = fal
|
|
|
34820
34961
|
while(_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isInlineBlock(sibling)){
|
|
34821
34962
|
sibling = backspace ? sibling === null || sibling === void 0 ? void 0 : sibling.lastChild : sibling === null || sibling === void 0 ? void 0 : sibling.firstChild;
|
|
34822
34963
|
}
|
|
34823
|
-
|
|
34964
|
+
// A block inside an inline element, such as the `<p>` in
|
|
34965
|
+
// `<span><p>…</p></span>`, isn't a char: the join cases handle it
|
|
34966
|
+
if (!sibling || _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(sibling)) {
|
|
34824
34967
|
break;
|
|
34825
34968
|
}
|
|
34826
34969
|
if ((_a = sibling.nodeValue) === null || _a === void 0 ? void 0 : _a.length) {
|
|
@@ -34968,6 +35111,7 @@ function isSpace(char) {
|
|
|
34968
35111
|
/* harmony import */ var _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22732);
|
|
34969
35112
|
/* harmony import */ var _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21537);
|
|
34970
35113
|
/* harmony import */ var _core_selection_helpers_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(45124);
|
|
35114
|
+
/* harmony import */ var _check_join_neighbors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(62845);
|
|
34971
35115
|
/*!
|
|
34972
35116
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
34973
35117
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -34975,23 +35119,48 @@ function isSpace(char) {
|
|
|
34975
35119
|
*/
|
|
34976
35120
|
|
|
34977
35121
|
|
|
35122
|
+
|
|
34978
35123
|
/**
|
|
34979
|
-
* Checks if a non-editable element can be deleted
|
|
35124
|
+
* Checks if a non-editable element can be deleted. A non-editable block goes
|
|
35125
|
+
* whole, and the lines either side of it then join, as the spec's tests do:
|
|
35126
|
+
* `<ul><li>one|</li></ul><div contenteditable="false">x</div><p>two</p>`
|
|
35127
|
+
* gives `<ul><li>one|two</li></ul>`
|
|
34980
35128
|
* @private
|
|
34981
35129
|
*/ function checkRemoveContentNotEditable(jodit, fakeNode, backspace) {
|
|
34982
|
-
let
|
|
34983
|
-
|
|
34984
|
-
|
|
34985
|
-
|
|
34986
|
-
|
|
34987
|
-
|
|
34988
|
-
|
|
34989
|
-
|
|
34990
|
-
(
|
|
35130
|
+
let node = fakeNode;
|
|
35131
|
+
let neighbor = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.findSibling(node, backspace);
|
|
35132
|
+
// Past the edges of the blocks the caret is at, but not into a table cell
|
|
35133
|
+
while(!neighbor && node.parentElement && node.parentElement !== jodit.editor && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isCell(node.parentElement)){
|
|
35134
|
+
node = node.parentElement;
|
|
35135
|
+
neighbor = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.findSibling(node, backspace);
|
|
35136
|
+
// At the start of a list item, Backspace takes the bullet off first,
|
|
35137
|
+
// unless the item before it is a non-editable one to remove
|
|
35138
|
+
if (backspace && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isLeaf(node) && !(_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isLeaf(neighbor) && isNotEditable(jodit, neighbor))) {
|
|
35139
|
+
return false;
|
|
35140
|
+
}
|
|
35141
|
+
}
|
|
35142
|
+
if (isNotEditable(jodit, neighbor)) {
|
|
35143
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isBlock(neighbor)) {
|
|
35144
|
+
// Backspace after a removed list item leaves the items apart: the
|
|
35145
|
+
// next press takes the bullet off, as for any later item
|
|
35146
|
+
const joinLines = !(backspace && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isLeaf(neighbor));
|
|
35147
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(neighbor);
|
|
35148
|
+
if (joinLines) {
|
|
35149
|
+
(0,_check_join_neighbors_js__WEBPACK_IMPORTED_MODULE_3__.checkJoinNeighbors)(jodit, fakeNode, backspace);
|
|
35150
|
+
}
|
|
35151
|
+
} else {
|
|
35152
|
+
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_1__.call)(backspace ? _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.before : _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after, neighbor, fakeNode);
|
|
35153
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(neighbor);
|
|
35154
|
+
(0,_core_selection_helpers_index_js__WEBPACK_IMPORTED_MODULE_2__.moveNodeInsideStart)(jodit, fakeNode, backspace);
|
|
35155
|
+
}
|
|
35156
|
+
;(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_1__.call)(backspace ? jodit.s.setCursorBefore : jodit.s.setCursorAfter, fakeNode);
|
|
34991
35157
|
return true;
|
|
34992
35158
|
}
|
|
34993
35159
|
return false;
|
|
34994
35160
|
}
|
|
35161
|
+
function isNotEditable(jodit, node) {
|
|
35162
|
+
return _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isElement(node) && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isContentEditable(node, jodit.editor);
|
|
35163
|
+
}
|
|
34995
35164
|
|
|
34996
35165
|
|
|
34997
35166
|
/***/ }),
|
|
@@ -53696,12 +53865,13 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.wrapNodes = {
|
|
|
53696
53865
|
/***/ 72253:
|
|
53697
53866
|
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
|
|
53698
53867
|
|
|
53699
|
-
/* harmony import */ var
|
|
53700
|
-
/* harmony import */ var
|
|
53701
|
-
/* harmony import */ var
|
|
53702
|
-
/* harmony import */ var
|
|
53703
|
-
/* harmony import */ var
|
|
53704
|
-
/* harmony import */ var
|
|
53868
|
+
/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
53869
|
+
/* harmony import */ var _core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478);
|
|
53870
|
+
/* harmony import */ var _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22732);
|
|
53871
|
+
/* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(580);
|
|
53872
|
+
/* harmony import */ var _core_helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(70799);
|
|
53873
|
+
/* harmony import */ var _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(50911);
|
|
53874
|
+
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(96967);
|
|
53705
53875
|
/*!
|
|
53706
53876
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
53707
53877
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -53718,9 +53888,10 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.wrapNodes = {
|
|
|
53718
53888
|
|
|
53719
53889
|
|
|
53720
53890
|
|
|
53891
|
+
|
|
53721
53892
|
/**
|
|
53722
53893
|
* Wrap single text nodes in block wrapper
|
|
53723
|
-
*/ class wrapNodes extends
|
|
53894
|
+
*/ class wrapNodes extends _core_plugin_index_js__WEBPACK_IMPORTED_MODULE_5__.Plugin {
|
|
53724
53895
|
/** @override **/ afterInit(jodit) {
|
|
53725
53896
|
if (jodit.o.enter.toLowerCase() === 'br') {
|
|
53726
53897
|
return;
|
|
@@ -53749,10 +53920,11 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.wrapNodes = {
|
|
|
53749
53920
|
}
|
|
53750
53921
|
isChanged = true;
|
|
53751
53922
|
const box = jodit.createInside.element(jodit.o.enter);
|
|
53752
|
-
|
|
53753
|
-
|
|
53923
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.before(child, box);
|
|
53924
|
+
// `exclude` keeps a <br> from starting a box, but one between loose lines stays with them
|
|
53925
|
+
while(child && (this.isSuitable(child) || _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(child, 'br'))){
|
|
53754
53926
|
const next = child.nextSibling;
|
|
53755
|
-
|
|
53927
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.append(box, child);
|
|
53756
53928
|
child = next;
|
|
53757
53929
|
}
|
|
53758
53930
|
box.normalize();
|
|
@@ -53776,8 +53948,8 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.wrapNodes = {
|
|
|
53776
53948
|
}
|
|
53777
53949
|
const box = jodit.createInside.element(jodit.o.enter);
|
|
53778
53950
|
const br = jodit.createInside.element('br');
|
|
53779
|
-
|
|
53780
|
-
|
|
53951
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.append(box, br);
|
|
53952
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.append(jodit.editor, box);
|
|
53781
53953
|
if (jodit.s.isFocused() || jodit.e.current === 'backSpaceAfterDelete') {
|
|
53782
53954
|
jodit.s.setCursorBefore(br);
|
|
53783
53955
|
}
|
|
@@ -53789,32 +53961,43 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.wrapNodes = {
|
|
|
53789
53961
|
* Found Node which should be wrapped
|
|
53790
53962
|
*/ this.isSuitableStart = (n)=>{
|
|
53791
53963
|
var _a;
|
|
53792
|
-
return
|
|
53964
|
+
return _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isText(n) && (0,_core_helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_4__.isString)(n.nodeValue) && (/[^\s]/.test(n.nodeValue) || ((_a = n.parentNode) === null || _a === void 0 ? void 0 : _a.firstChild) === n && this.isSuitable(n.nextSibling)) || this.isNotWrapped(n) && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTemporary(n);
|
|
53793
53965
|
};
|
|
53794
53966
|
/**
|
|
53795
53967
|
* Node should add in a block element
|
|
53796
|
-
*/ this.isSuitable = (n)=>
|
|
53968
|
+
*/ this.isSuitable = (n)=>_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isText(n) || this.isNotWrapped(n);
|
|
53797
53969
|
/**
|
|
53798
53970
|
* Some element which needs to append in block
|
|
53799
|
-
*/ this.isNotWrapped = (n)=>
|
|
53971
|
+
*/ this.isNotWrapped = (n)=>_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isElement(n) && !(_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isBlock(n) || _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(n, this.j.o.wrapNodes.exclude) || holdsBlock(n));
|
|
53800
53972
|
}
|
|
53801
53973
|
}
|
|
53802
53974
|
__decorate([
|
|
53803
|
-
|
|
53975
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.autobind
|
|
53804
53976
|
], wrapNodes.prototype, "postProcessSetEditorValue", null);
|
|
53805
53977
|
__decorate([
|
|
53806
|
-
|
|
53978
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_1__.autobind
|
|
53807
53979
|
], wrapNodes.prototype, "preprocessInput", null);
|
|
53980
|
+
/**
|
|
53981
|
+
* A block can't go in a paragraph, so neither can an element that holds one,
|
|
53982
|
+
* such as a `<span>` round a `<p>`. Embedded content such as an `<iframe>` can.
|
|
53983
|
+
*/ function holdsBlock(elm) {
|
|
53984
|
+
for (const node of _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.eachGen(elm)){
|
|
53985
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isBlock(node) && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(node, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.NO_EMPTY_TAGS)) {
|
|
53986
|
+
return true;
|
|
53987
|
+
}
|
|
53988
|
+
}
|
|
53989
|
+
return false;
|
|
53990
|
+
}
|
|
53808
53991
|
function checkAloneListLeaf(child, jodit) {
|
|
53809
53992
|
let result = child;
|
|
53810
53993
|
let next = child;
|
|
53811
53994
|
do {
|
|
53812
|
-
if (
|
|
53813
|
-
const nextChild =
|
|
53814
|
-
if (
|
|
53815
|
-
|
|
53995
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isElement(next) && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isLeaf(next) && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isList(next.parentElement)) {
|
|
53996
|
+
const nextChild = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.findNotEmptySibling(next, false);
|
|
53997
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(result, 'ul')) {
|
|
53998
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.append(result, next);
|
|
53816
53999
|
} else {
|
|
53817
|
-
result =
|
|
54000
|
+
result = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.wrap(next, 'ul', jodit.createInside);
|
|
53818
54001
|
}
|
|
53819
54002
|
next = nextChild;
|
|
53820
54003
|
} else {
|
|
@@ -53823,7 +54006,7 @@ function checkAloneListLeaf(child, jodit) {
|
|
|
53823
54006
|
}while (next)
|
|
53824
54007
|
return result;
|
|
53825
54008
|
}
|
|
53826
|
-
|
|
54009
|
+
_core_global_js__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('wrapNodes', wrapNodes);
|
|
53827
54010
|
|
|
53828
54011
|
|
|
53829
54012
|
/***/ }),
|