jodit-pro 4.18.1 → 4.18.3
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 +16 -16
- package/es2015/jodit.js +482 -137
- package/es2015/jodit.min.js +11 -11
- 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 +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/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 +9 -9
- package/es2018/jodit.min.js +9 -9
- 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.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/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 +16 -16
- package/es2021/jodit.js +434 -137
- package/es2021/jodit.min.js +16 -16
- 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 +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/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 +19 -19
- package/es2021.en/jodit.js +434 -137
- package/es2021.en/jodit.min.js +16 -16
- 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 +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/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 +548 -141
- 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 +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/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/es5/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.3
|
|
5
5
|
* Url: https://xdsoft.net/jodit/pro/
|
|
6
6
|
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
7
|
*/
|
|
@@ -2333,7 +2333,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
2333
2333
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
2334
2334
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
2335
2335
|
}
|
|
2336
|
-
var APP_VERSION = "4.18.
|
|
2336
|
+
var APP_VERSION = "4.18.3";
|
|
2337
2337
|
// prettier-ignore
|
|
2338
2338
|
var ES = "es5";
|
|
2339
2339
|
var IS_ES_MODERN = false;
|
|
@@ -8237,6 +8237,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
8237
8237
|
/* harmony export */ options: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.options; },
|
|
8238
8238
|
/* harmony export */ parseQuery: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.parseQuery; },
|
|
8239
8239
|
/* harmony export */ position: function() { return /* reexport safe */ _size_index_js__WEBPACK_IMPORTED_MODULE_6__.position; },
|
|
8240
|
+
/* harmony export */ prepareEmbedCode: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.prepareEmbedCode; },
|
|
8241
|
+
/* harmony export */ prepareMedia: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.prepareMedia; },
|
|
8240
8242
|
/* harmony export */ previewBox: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.previewBox; },
|
|
8241
8243
|
/* harmony export */ refs: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.refs; },
|
|
8242
8244
|
/* harmony export */ reset: function() { return /* reexport safe */ _utils_index_js__WEBPACK_IMPORTED_MODULE_8__.reset; },
|
|
@@ -10891,13 +10893,13 @@ var getClassName = function getClassName(obj) {
|
|
|
10891
10893
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
10892
10894
|
|
|
10893
10895
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
10894
|
-
/* harmony export */ $$: function() { return /* reexport safe */
|
|
10896
|
+
/* harmony export */ $$: function() { return /* reexport safe */ _selector_js__WEBPACK_IMPORTED_MODULE_26__.$$; },
|
|
10895
10897
|
/* harmony export */ ConfigDeepFlatten: function() { return /* reexport safe */ _config_proto_js__WEBPACK_IMPORTED_MODULE_7__.ConfigDeepFlatten; },
|
|
10896
10898
|
/* harmony export */ ConfigFlatten: function() { return /* reexport safe */ _config_proto_js__WEBPACK_IMPORTED_MODULE_7__.ConfigFlatten; },
|
|
10897
10899
|
/* harmony export */ ConfigMerge: function() { return /* reexport safe */ _config_proto_js__WEBPACK_IMPORTED_MODULE_7__.ConfigMerge; },
|
|
10898
10900
|
/* harmony export */ ConfigProto: function() { return /* reexport safe */ _config_proto_js__WEBPACK_IMPORTED_MODULE_7__.ConfigProto; },
|
|
10899
10901
|
/* harmony export */ ConnectionError: function() { return /* reexport safe */ _error_index_js__WEBPACK_IMPORTED_MODULE_13__.ConnectionError; },
|
|
10900
|
-
/* harmony export */ LimitedStack: function() { return /* reexport safe */
|
|
10902
|
+
/* harmony export */ LimitedStack: function() { return /* reexport safe */ _stack_js__WEBPACK_IMPORTED_MODULE_28__.LimitedStack; },
|
|
10901
10903
|
/* harmony export */ OptionsError: function() { return /* reexport safe */ _error_index_js__WEBPACK_IMPORTED_MODULE_13__.OptionsError; },
|
|
10902
10904
|
/* harmony export */ UNSAFE_PROTO_KEYS: function() { return /* reexport safe */ _is_unsafe_proto_key_js__WEBPACK_IMPORTED_MODULE_18__.UNSAFE_PROTO_KEYS; },
|
|
10903
10905
|
/* harmony export */ abort: function() { return /* reexport safe */ _error_index_js__WEBPACK_IMPORTED_MODULE_13__.abort; },
|
|
@@ -10910,9 +10912,9 @@ var getClassName = function getClassName(obj) {
|
|
|
10910
10912
|
/* harmony export */ attrRaw: function() { return /* reexport safe */ _attr_js__WEBPACK_IMPORTED_MODULE_3__.attrRaw; },
|
|
10911
10913
|
/* harmony export */ browser: function() { return /* reexport safe */ _browser_js__WEBPACK_IMPORTED_MODULE_4__.browser; },
|
|
10912
10914
|
/* harmony export */ buildQuery: function() { return /* reexport safe */ _build_query_js__WEBPACK_IMPORTED_MODULE_5__.buildQuery; },
|
|
10913
|
-
/* harmony export */ call: function() { return /* reexport safe */
|
|
10914
|
-
/* harmony export */ callPromise: function() { return /* reexport safe */
|
|
10915
|
-
/* harmony export */ callThis: function() { return /* reexport safe */
|
|
10915
|
+
/* harmony export */ call: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.call; },
|
|
10916
|
+
/* harmony export */ callPromise: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.callPromise; },
|
|
10917
|
+
/* harmony export */ callThis: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.callThis; },
|
|
10916
10918
|
/* harmony export */ clearAlign: function() { return /* reexport safe */ _align_js__WEBPACK_IMPORTED_MODULE_0__.clearAlign; },
|
|
10917
10919
|
/* harmony export */ clearCenterAlign: function() { return /* reexport safe */ _css_js__WEBPACK_IMPORTED_MODULE_9__.clearCenterAlign; },
|
|
10918
10920
|
/* harmony export */ cns: function() { return /* reexport safe */ _mark_deprecated_js__WEBPACK_IMPORTED_MODULE_19__.cns; },
|
|
@@ -10922,7 +10924,7 @@ var getClassName = function getClassName(obj) {
|
|
|
10922
10924
|
/* harmony export */ createMediaWrapper: function() { return /* reexport safe */ _media_wrapper_js__WEBPACK_IMPORTED_MODULE_20__.createMediaWrapper; },
|
|
10923
10925
|
/* harmony export */ css: function() { return /* reexport safe */ _css_js__WEBPACK_IMPORTED_MODULE_9__.css; },
|
|
10924
10926
|
/* harmony export */ cssInline: function() { return /* reexport safe */ _css_js__WEBPACK_IMPORTED_MODULE_9__.cssInline; },
|
|
10925
|
-
/* harmony export */ cssPath: function() { return /* reexport safe */
|
|
10927
|
+
/* harmony export */ cssPath: function() { return /* reexport safe */ _selector_js__WEBPACK_IMPORTED_MODULE_26__.cssPath; },
|
|
10926
10928
|
/* harmony export */ ctrlKey: function() { return /* reexport safe */ _ctrl_key_js__WEBPACK_IMPORTED_MODULE_10__.ctrlKey; },
|
|
10927
10929
|
/* harmony export */ dataBind: function() { return /* reexport safe */ _data_bind_js__WEBPACK_IMPORTED_MODULE_11__.dataBind; },
|
|
10928
10930
|
/* harmony export */ defaultLanguage: function() { return /* reexport safe */ _default_language_js__WEBPACK_IMPORTED_MODULE_12__.defaultLanguage; },
|
|
@@ -10931,34 +10933,36 @@ var getClassName = function getClassName(obj) {
|
|
|
10931
10933
|
/* harmony export */ get: function() { return /* reexport safe */ _get_js__WEBPACK_IMPORTED_MODULE_15__.get; },
|
|
10932
10934
|
/* harmony export */ getAlignClasses: function() { return /* reexport safe */ _align_js__WEBPACK_IMPORTED_MODULE_0__.getAlignClasses; },
|
|
10933
10935
|
/* harmony export */ getClassName: function() { return /* reexport safe */ _get_class_name_js__WEBPACK_IMPORTED_MODULE_16__.getClassName; },
|
|
10934
|
-
/* harmony export */ getDataTransfer: function() { return /* reexport safe */
|
|
10936
|
+
/* harmony export */ getDataTransfer: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.getDataTransfer; },
|
|
10935
10937
|
/* harmony export */ getHAlign: function() { return /* reexport safe */ _align_js__WEBPACK_IMPORTED_MODULE_0__.getHAlign; },
|
|
10936
10938
|
/* harmony export */ getMediaWrapper: function() { return /* reexport safe */ _media_wrapper_js__WEBPACK_IMPORTED_MODULE_20__.getMediaWrapper; },
|
|
10937
|
-
/* harmony export */ getPropertyDescriptor: function() { return /* reexport safe */
|
|
10939
|
+
/* harmony export */ getPropertyDescriptor: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.getPropertyDescriptor; },
|
|
10938
10940
|
/* harmony export */ getWrappedMedia: function() { return /* reexport safe */ _media_wrapper_js__WEBPACK_IMPORTED_MODULE_20__.getWrappedMedia; },
|
|
10939
|
-
/* harmony export */ getXPathByElement: function() { return /* reexport safe */
|
|
10941
|
+
/* harmony export */ getXPathByElement: function() { return /* reexport safe */ _selector_js__WEBPACK_IMPORTED_MODULE_26__.getXPathByElement; },
|
|
10940
10942
|
/* harmony export */ hAlignElement: function() { return /* reexport safe */ _align_js__WEBPACK_IMPORTED_MODULE_0__.hAlignElement; },
|
|
10941
10943
|
/* harmony export */ humanSizeToBytes: function() { return /* reexport safe */ _human_size_to_bytes_js__WEBPACK_IMPORTED_MODULE_17__.humanSizeToBytes; },
|
|
10942
|
-
/* harmony export */ inView: function() { return /* reexport safe */
|
|
10944
|
+
/* harmony export */ inView: function() { return /* reexport safe */ _scroll_into_view_js__WEBPACK_IMPORTED_MODULE_25__.inView; },
|
|
10943
10945
|
/* harmony export */ isAtom: function() { return /* reexport safe */ _extend_js__WEBPACK_IMPORTED_MODULE_14__.isAtom; },
|
|
10944
10946
|
/* harmony export */ isUnsafeProtoKey: function() { return /* reexport safe */ _is_unsafe_proto_key_js__WEBPACK_IMPORTED_MODULE_18__.isUnsafeProtoKey; },
|
|
10945
10947
|
/* harmony export */ keepNames: function() { return /* reexport safe */ _get_class_name_js__WEBPACK_IMPORTED_MODULE_16__.keepNames; },
|
|
10946
|
-
/* harmony export */ keys: function() { return /* reexport safe */
|
|
10947
|
-
/* harmony export */ loadImage: function() { return /* reexport safe */
|
|
10948
|
+
/* harmony export */ keys: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.keys; },
|
|
10949
|
+
/* harmony export */ loadImage: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.loadImage; },
|
|
10948
10950
|
/* harmony export */ loadNext: function() { return /* reexport safe */ _append_script_js__WEBPACK_IMPORTED_MODULE_1__.loadNext; },
|
|
10949
10951
|
/* harmony export */ loadNextStyle: function() { return /* reexport safe */ _append_script_js__WEBPACK_IMPORTED_MODULE_1__.loadNextStyle; },
|
|
10950
10952
|
/* harmony export */ markAsAtomic: function() { return /* reexport safe */ _extend_js__WEBPACK_IMPORTED_MODULE_14__.markAsAtomic; },
|
|
10951
10953
|
/* harmony export */ markDeprecated: function() { return /* reexport safe */ _mark_deprecated_js__WEBPACK_IMPORTED_MODULE_19__.markDeprecated; },
|
|
10952
|
-
/* harmony export */ markOwner: function() { return /* reexport safe */
|
|
10953
|
-
/* harmony export */ memorizeExec: function() { return /* reexport safe */
|
|
10954
|
+
/* harmony export */ markOwner: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.markOwner; },
|
|
10955
|
+
/* harmony export */ memorizeExec: function() { return /* reexport safe */ _utils_js__WEBPACK_IMPORTED_MODULE_29__.memorizeExec; },
|
|
10954
10956
|
/* harmony export */ options: function() { return /* reexport safe */ _error_index_js__WEBPACK_IMPORTED_MODULE_13__.options; },
|
|
10955
10957
|
/* harmony export */ parseQuery: function() { return /* reexport safe */ _parse_query_js__WEBPACK_IMPORTED_MODULE_21__.parseQuery; },
|
|
10956
|
-
/* harmony export */
|
|
10957
|
-
/* harmony export */
|
|
10958
|
-
/* harmony export */
|
|
10959
|
-
/* harmony export */
|
|
10960
|
-
/* harmony export */
|
|
10961
|
-
/* harmony export */
|
|
10958
|
+
/* harmony export */ prepareEmbedCode: function() { return /* reexport safe */ _prepare_media_js__WEBPACK_IMPORTED_MODULE_22__.prepareEmbedCode; },
|
|
10959
|
+
/* harmony export */ prepareMedia: function() { return /* reexport safe */ _prepare_media_js__WEBPACK_IMPORTED_MODULE_22__.prepareMedia; },
|
|
10960
|
+
/* harmony export */ previewBox: function() { return /* reexport safe */ _print_js__WEBPACK_IMPORTED_MODULE_23__.previewBox; },
|
|
10961
|
+
/* harmony export */ refs: function() { return /* reexport safe */ _selector_js__WEBPACK_IMPORTED_MODULE_26__.refs; },
|
|
10962
|
+
/* harmony export */ reset: function() { return /* reexport safe */ _reset_js__WEBPACK_IMPORTED_MODULE_24__.reset; },
|
|
10963
|
+
/* harmony export */ resolveElement: function() { return /* reexport safe */ _selector_js__WEBPACK_IMPORTED_MODULE_26__.resolveElement; },
|
|
10964
|
+
/* harmony export */ scrollIntoViewIfNeeded: function() { return /* reexport safe */ _scroll_into_view_js__WEBPACK_IMPORTED_MODULE_25__.scrollIntoViewIfNeeded; },
|
|
10965
|
+
/* harmony export */ set: function() { return /* reexport safe */ _set_js__WEBPACK_IMPORTED_MODULE_27__.set; },
|
|
10962
10966
|
/* harmony export */ wrapMedia: function() { return /* reexport safe */ _media_wrapper_js__WEBPACK_IMPORTED_MODULE_20__.wrapMedia; }
|
|
10963
10967
|
/* harmony export */ });
|
|
10964
10968
|
/* harmony import */ var _align_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(25726);
|
|
@@ -10983,13 +10987,14 @@ var getClassName = function getClassName(obj) {
|
|
|
10983
10987
|
/* harmony import */ var _mark_deprecated_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(95942);
|
|
10984
10988
|
/* harmony import */ var _media_wrapper_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(61477);
|
|
10985
10989
|
/* harmony import */ var _parse_query_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(82501);
|
|
10986
|
-
/* harmony import */ var
|
|
10987
|
-
/* harmony import */ var
|
|
10988
|
-
/* harmony import */ var
|
|
10989
|
-
/* harmony import */ var
|
|
10990
|
-
/* harmony import */ var
|
|
10991
|
-
/* harmony import */ var
|
|
10992
|
-
/* harmony import */ var
|
|
10990
|
+
/* harmony import */ var _prepare_media_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(96437);
|
|
10991
|
+
/* harmony import */ var _print_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(11628);
|
|
10992
|
+
/* harmony import */ var _reset_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(58844);
|
|
10993
|
+
/* harmony import */ var _scroll_into_view_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(26395);
|
|
10994
|
+
/* harmony import */ var _selector_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(76078);
|
|
10995
|
+
/* harmony import */ var _set_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(3703);
|
|
10996
|
+
/* harmony import */ var _stack_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(50535);
|
|
10997
|
+
/* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(37790);
|
|
10993
10998
|
/*!
|
|
10994
10999
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
10995
11000
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -11025,6 +11030,7 @@ var getClassName = function getClassName(obj) {
|
|
|
11025
11030
|
|
|
11026
11031
|
|
|
11027
11032
|
|
|
11033
|
+
|
|
11028
11034
|
|
|
11029
11035
|
|
|
11030
11036
|
/***/ }),
|
|
@@ -11284,6 +11290,45 @@ var isWrapper = function isWrapper(node, wrapper) {
|
|
|
11284
11290
|
};
|
|
11285
11291
|
|
|
11286
11292
|
|
|
11293
|
+
/***/ }),
|
|
11294
|
+
|
|
11295
|
+
/***/ 96437:
|
|
11296
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
11297
|
+
|
|
11298
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
11299
|
+
/* harmony export */ prepareEmbedCode: function() { return /* binding */ prepareEmbedCode; },
|
|
11300
|
+
/* harmony export */ prepareMedia: function() { return /* binding */ prepareMedia; }
|
|
11301
|
+
/* harmony export */ });
|
|
11302
|
+
/* harmony import */ var _align_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(25726);
|
|
11303
|
+
/* harmony import */ var _media_wrapper_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(61477);
|
|
11304
|
+
/*!
|
|
11305
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
11306
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
11307
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
11308
|
+
*/
|
|
11309
|
+
|
|
11310
|
+
/**
|
|
11311
|
+
* Puts new media in its wrapper (see `mediaWrappers`) and aligns it with
|
|
11312
|
+
* `mediaDefaultAlign`. Returns the wrapper, or `element` when there is none
|
|
11313
|
+
*/ function prepareMedia(jodit, element) {
|
|
11314
|
+
var media = (0,_media_wrapper_js__WEBPACK_IMPORTED_MODULE_1__.wrapMedia)(jodit, element);
|
|
11315
|
+
var mediaDefaultAlign = jodit.o.mediaDefaultAlign;
|
|
11316
|
+
if (mediaDefaultAlign && mediaDefaultAlign !== 'normal') {
|
|
11317
|
+
(0,_align_js__WEBPACK_IMPORTED_MODULE_0__.hAlignElement)(media, mediaDefaultAlign, (0,_align_js__WEBPACK_IMPORTED_MODULE_0__.getAlignClasses)(jodit, media));
|
|
11318
|
+
}
|
|
11319
|
+
return media;
|
|
11320
|
+
}
|
|
11321
|
+
/**
|
|
11322
|
+
* Embed code that is one element is prepared as media (see `prepareMedia`);
|
|
11323
|
+
* other code is returned as it is
|
|
11324
|
+
*/ function prepareEmbedCode(jodit, code) {
|
|
11325
|
+
var box = jodit.createInside.div();
|
|
11326
|
+
box.innerHTML = code.trim();
|
|
11327
|
+
var element = box.firstElementChild;
|
|
11328
|
+
return element && box.childNodes.length === 1 ? prepareMedia(jodit, element) : code;
|
|
11329
|
+
}
|
|
11330
|
+
|
|
11331
|
+
|
|
11287
11332
|
/***/ }),
|
|
11288
11333
|
|
|
11289
11334
|
/***/ 11628:
|
|
@@ -17125,7 +17170,9 @@ function toggleAttribute(jodit, value, elm, key, dry, mode) {
|
|
|
17125
17170
|
_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.append(wrapper, fragment);
|
|
17126
17171
|
_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeInsertNode(range, wrapper);
|
|
17127
17172
|
if (style.elementIsBlock) {
|
|
17128
|
-
|
|
17173
|
+
// The wrapped content can bring its own `<br>` (an empty table
|
|
17174
|
+
// cell's), after or inside the temporary `<font>` around the selection
|
|
17175
|
+
if (_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isEmpty(wrapper) && !wrapper.querySelector('br')) {
|
|
17129
17176
|
_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.append(wrapper, ci.element('br'));
|
|
17130
17177
|
}
|
|
17131
17178
|
}
|
|
@@ -38152,11 +38199,10 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
38152
38199
|
/* harmony export */ History: function() { return /* binding */ History; }
|
|
38153
38200
|
/* harmony export */ });
|
|
38154
38201
|
/* harmony import */ var _core_component_view_component_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(80480);
|
|
38155
|
-
/* harmony import */ var
|
|
38156
|
-
/* harmony import */ var
|
|
38157
|
-
/* harmony import */ var
|
|
38158
|
-
/* harmony import */ var
|
|
38159
|
-
/* harmony import */ var _stack_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(57034);
|
|
38202
|
+
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6441);
|
|
38203
|
+
/* harmony import */ var _command_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(92643);
|
|
38204
|
+
/* harmony import */ var _snapshot_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(52604);
|
|
38205
|
+
/* harmony import */ var _stack_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(57034);
|
|
38160
38206
|
function _assert_this_initialized(self) {
|
|
38161
38207
|
if (self === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
38162
38208
|
return self;
|
|
@@ -38248,19 +38294,12 @@ function _type_of(obj) {
|
|
|
38248
38294
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
38249
38295
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
38250
38296
|
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
38251
|
-
*/
|
|
38252
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
38253
|
-
if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
38254
|
-
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
38255
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
38256
|
-
};
|
|
38257
|
-
|
|
38258
|
-
|
|
38297
|
+
*/ ;
|
|
38259
38298
|
|
|
38260
38299
|
|
|
38261
38300
|
|
|
38262
38301
|
|
|
38263
|
-
|
|
38302
|
+
_config_js__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.history = {
|
|
38264
38303
|
enable: true,
|
|
38265
38304
|
maxHistoryLength: Infinity,
|
|
38266
38305
|
timeout: 1000
|
|
@@ -38271,13 +38310,19 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38271
38310
|
"use strict";
|
|
38272
38311
|
_inherits(History, ViewComponent);
|
|
38273
38312
|
function History(editor) {
|
|
38274
|
-
var stack = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : new
|
|
38313
|
+
var stack = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : new _stack_js__WEBPACK_IMPORTED_MODULE_4__.Stack(editor.o.history.maxHistoryLength), snapshot = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : new _snapshot_js__WEBPACK_IMPORTED_MODULE_3__.Snapshot(editor);
|
|
38275
38314
|
_class_call_check(this, History);
|
|
38276
38315
|
var _this;
|
|
38277
38316
|
_this = _call_super(this, History, [
|
|
38278
38317
|
editor
|
|
38279
38318
|
]);
|
|
38280
38319
|
_this.updateTick = 0;
|
|
38320
|
+
/**
|
|
38321
|
+
* A step is open: changes have come in that are not in the stack yet
|
|
38322
|
+
*/ _this.__hasPendingChanges = false;
|
|
38323
|
+
/**
|
|
38324
|
+
* Records the open step `history.timeout` after its first change
|
|
38325
|
+
*/ _this.__timer = 0;
|
|
38281
38326
|
_this.__stack = stack;
|
|
38282
38327
|
_this.snapshot = snapshot;
|
|
38283
38328
|
if (editor.o.history.enable) {
|
|
@@ -38288,6 +38333,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38288
38333
|
_this.startValue = _this.snapshot.make();
|
|
38289
38334
|
editor.events// save selection
|
|
38290
38335
|
.on('internalChange internalUpdate', function() {
|
|
38336
|
+
_this.__processPendingChanges();
|
|
38291
38337
|
_this.startValue = _this.snapshot.make();
|
|
38292
38338
|
}).on(editor.editor, [
|
|
38293
38339
|
'changeSelection',
|
|
@@ -38303,7 +38349,9 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38303
38349
|
if (_this.startValue.html === _this.j.getNativeEditorValue()) {
|
|
38304
38350
|
_this.startValue = _this.snapshot.make();
|
|
38305
38351
|
}
|
|
38306
|
-
}).on(_this, 'change.history',
|
|
38352
|
+
}).on(_this, 'change.history', function() {
|
|
38353
|
+
return _this.onChange();
|
|
38354
|
+
});
|
|
38307
38355
|
});
|
|
38308
38356
|
}
|
|
38309
38357
|
return _this;
|
|
@@ -38320,6 +38368,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38320
38368
|
* Return state of the WYSIWYG editor to step back
|
|
38321
38369
|
*/ key: "redo",
|
|
38322
38370
|
value: function redo() {
|
|
38371
|
+
this.__processPendingChanges();
|
|
38323
38372
|
if (this.__stack.redo()) {
|
|
38324
38373
|
this.startValue = this.snapshot.make();
|
|
38325
38374
|
this.fireChangeStack();
|
|
@@ -38329,7 +38378,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38329
38378
|
{
|
|
38330
38379
|
key: "canRedo",
|
|
38331
38380
|
value: function canRedo() {
|
|
38332
|
-
return this.__stack.canRedo();
|
|
38381
|
+
return !this.__hasPendingChanges && this.__stack.canRedo();
|
|
38333
38382
|
}
|
|
38334
38383
|
},
|
|
38335
38384
|
{
|
|
@@ -38337,6 +38386,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38337
38386
|
* Return the state of the WYSIWYG editor to step forward
|
|
38338
38387
|
*/ key: "undo",
|
|
38339
38388
|
value: function undo() {
|
|
38389
|
+
this.__processPendingChanges();
|
|
38340
38390
|
if (this.__stack.undo()) {
|
|
38341
38391
|
this.startValue = this.snapshot.make();
|
|
38342
38392
|
this.fireChangeStack();
|
|
@@ -38346,13 +38396,15 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38346
38396
|
{
|
|
38347
38397
|
key: "canUndo",
|
|
38348
38398
|
value: function canUndo() {
|
|
38349
|
-
return this.__stack.canUndo();
|
|
38399
|
+
return this.__hasPendingChanges || this.__stack.canUndo();
|
|
38350
38400
|
}
|
|
38351
38401
|
},
|
|
38352
38402
|
{
|
|
38353
38403
|
key: "clear",
|
|
38354
38404
|
value: function clear() {
|
|
38355
38405
|
this.startValue = this.snapshot.make();
|
|
38406
|
+
this.async.clearTimeout(this.__timer);
|
|
38407
|
+
this.__hasPendingChanges = false;
|
|
38356
38408
|
this.__stack.clear();
|
|
38357
38409
|
this.fireChangeStack();
|
|
38358
38410
|
}
|
|
@@ -38383,10 +38435,36 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38383
38435
|
},
|
|
38384
38436
|
{
|
|
38385
38437
|
/**
|
|
38386
|
-
* Push new command in stack on some changes
|
|
38438
|
+
* Push new command in stack on some changes. The first change opens a
|
|
38439
|
+
* step, and later ones join it until `history.timeout` has passed,
|
|
38440
|
+
* however close together they come.
|
|
38387
38441
|
*/ key: "onChange",
|
|
38388
38442
|
value: function onChange() {
|
|
38389
|
-
this
|
|
38443
|
+
var _this = this;
|
|
38444
|
+
// A transaction is over by the time the step is recorded, so it is
|
|
38445
|
+
// checked now
|
|
38446
|
+
if (this.snapshot.isBlocked || this.__hasPendingChanges) {
|
|
38447
|
+
return;
|
|
38448
|
+
}
|
|
38449
|
+
this.__hasPendingChanges = true;
|
|
38450
|
+
this.__timer = this.async.setTimeout(function() {
|
|
38451
|
+
return _this.__processPendingChanges();
|
|
38452
|
+
}, this.j.o.history.timeout);
|
|
38453
|
+
// With a timeout of 0 the step is already recorded. Otherwise
|
|
38454
|
+
// canUndo and canRedo count it from now
|
|
38455
|
+
if (this.__hasPendingChanges) {
|
|
38456
|
+
this.fireChangeStack();
|
|
38457
|
+
}
|
|
38458
|
+
}
|
|
38459
|
+
},
|
|
38460
|
+
{
|
|
38461
|
+
/**
|
|
38462
|
+
* Push the open step's changes now
|
|
38463
|
+
*/ key: "__processPendingChanges",
|
|
38464
|
+
value: function __processPendingChanges() {
|
|
38465
|
+
if (this.__hasPendingChanges) {
|
|
38466
|
+
this.__processChanges();
|
|
38467
|
+
}
|
|
38390
38468
|
}
|
|
38391
38469
|
},
|
|
38392
38470
|
{
|
|
@@ -38397,6 +38475,8 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38397
38475
|
if (this.snapshot.isBlocked || !this.j.o.history.enable) {
|
|
38398
38476
|
return;
|
|
38399
38477
|
}
|
|
38478
|
+
this.async.clearTimeout(this.__timer);
|
|
38479
|
+
this.__hasPendingChanges = false;
|
|
38400
38480
|
this.updateStack();
|
|
38401
38481
|
}
|
|
38402
38482
|
},
|
|
@@ -38407,7 +38487,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38407
38487
|
value: function updateStack() {
|
|
38408
38488
|
var replace = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : false;
|
|
38409
38489
|
var newValue = this.snapshot.make();
|
|
38410
|
-
if (
|
|
38490
|
+
if (_snapshot_js__WEBPACK_IMPORTED_MODULE_3__.Snapshot.equal(newValue, this.startValue)) {
|
|
38411
38491
|
return;
|
|
38412
38492
|
}
|
|
38413
38493
|
// Only the selection moved, for example when the selection markers
|
|
@@ -38417,7 +38497,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38417
38497
|
this.startValue = newValue;
|
|
38418
38498
|
return;
|
|
38419
38499
|
}
|
|
38420
|
-
var newCommand = new
|
|
38500
|
+
var newCommand = new _command_js__WEBPACK_IMPORTED_MODULE_2__.Command(this.startValue, newValue, this, this.updateTick);
|
|
38421
38501
|
if (replace) {
|
|
38422
38502
|
var command = this.__stack.current();
|
|
38423
38503
|
if (command && this.updateTick === command.tick) {
|
|
@@ -38453,9 +38533,6 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.history = {
|
|
|
38453
38533
|
]);
|
|
38454
38534
|
return History;
|
|
38455
38535
|
}(_core_component_view_component_js__WEBPACK_IMPORTED_MODULE_0__.ViewComponent);
|
|
38456
|
-
__decorate([
|
|
38457
|
-
(0,_core_decorators_debounce_debounce_js__WEBPACK_IMPORTED_MODULE_1__.debounce)()
|
|
38458
|
-
], History.prototype, "onChange", null);
|
|
38459
38536
|
|
|
38460
38537
|
|
|
38461
38538
|
/***/ }),
|
|
@@ -40818,6 +40895,7 @@ var Table = /*#__PURE__*/ function(ViewComponent) {
|
|
|
40818
40895
|
var cells = box[i];
|
|
40819
40896
|
if (cells[columnIndex] !== cells[newColumnIndex] || columnIndex === newColumnIndex) {
|
|
40820
40897
|
var cell = this.j.createInside.element('td');
|
|
40898
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.append(cell, this.j.createInside.element('br'));
|
|
40821
40899
|
if (insertAfter) {
|
|
40822
40900
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.after(cells[columnIndex], cell);
|
|
40823
40901
|
} else {
|
|
@@ -40985,7 +41063,9 @@ var Table = /*#__PURE__*/ function(ViewComponent) {
|
|
|
40985
41063
|
var columnsCount = Table.__getColumnsCount(table);
|
|
40986
41064
|
row = create.element('tr');
|
|
40987
41065
|
for(var j = 0; j < columnsCount; j += 1){
|
|
40988
|
-
|
|
41066
|
+
var cell = create.element('td');
|
|
41067
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.append(cell, create.element('br'));
|
|
41068
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.append(row, cell);
|
|
40989
41069
|
}
|
|
40990
41070
|
} else {
|
|
40991
41071
|
row = line.cloneNode(true);
|
|
@@ -41002,6 +41082,7 @@ var Table = /*#__PURE__*/ function(ViewComponent) {
|
|
|
41002
41082
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.each(row, function(cell) {
|
|
41003
41083
|
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.isCell(cell)) {
|
|
41004
41084
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.detach(cell);
|
|
41085
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_3__.Dom.append(cell, create.element('br'));
|
|
41005
41086
|
}
|
|
41006
41087
|
});
|
|
41007
41088
|
}
|
|
@@ -41280,7 +41361,7 @@ var Table = /*#__PURE__*/ function(ViewComponent) {
|
|
|
41280
41361
|
Table.__setColumnWidthByDelta(table, first_j, 0, true, __marked);
|
|
41281
41362
|
}
|
|
41282
41363
|
}
|
|
41283
|
-
first.innerHTML = html.join('<br/>');
|
|
41364
|
+
first.innerHTML = html.join('<br/>') || '<br/>';
|
|
41284
41365
|
instance(jodit).addSelection(first);
|
|
41285
41366
|
alreadyMerged.delete(first);
|
|
41286
41367
|
Table.__unmark(__marked);
|
|
@@ -44587,8 +44668,8 @@ _core_ui_index_js__WEBPACK_IMPORTED_MODULE_2__.Icon.set('palette', _palette_svg_
|
|
|
44587
44668
|
var box = (0,_tabs_tabs_js__WEBPACK_IMPORTED_MODULE_3__.TabsWidget)(editor, tabs);
|
|
44588
44669
|
// Marks this popup so its tabs auto-size to their labels (see
|
|
44589
44670
|
// `.jodit-file-selector` in tabs.less) — long localized tab captions are no
|
|
44590
|
-
// longer clipped — while leaving other tab popups (link
|
|
44591
|
-
//
|
|
44671
|
+
// longer clipped — while leaving other tab popups (link …) untouched. The
|
|
44672
|
+
// video popup, which has an Upload tab too, uses it as well.
|
|
44592
44673
|
box.classList.add('jodit-file-selector');
|
|
44593
44674
|
return box;
|
|
44594
44675
|
};
|
|
@@ -46539,6 +46620,10 @@ var backspace = /*#__PURE__*/ function(Plugin) {
|
|
|
46539
46620
|
if (!sel.isFocused()) {
|
|
46540
46621
|
sel.focus();
|
|
46541
46622
|
}
|
|
46623
|
+
// Focused with no range, as WebKit leaves it after a click on an embed
|
|
46624
|
+
if (!sel.isInsideArea) {
|
|
46625
|
+
return;
|
|
46626
|
+
}
|
|
46542
46627
|
if ((0,_cases_check_not_collapsed_js__WEBPACK_IMPORTED_MODULE_7__.checkNotCollapsed)(jodit)) {
|
|
46543
46628
|
jodit.e.fire('backSpaceAfterDelete', backspace);
|
|
46544
46629
|
return false;
|
|
@@ -47956,7 +48041,8 @@ _core_ui_icon_js__WEBPACK_IMPORTED_MODULE_4__.Icon.set('class-span', _class_span
|
|
|
47956
48041
|
/* harmony import */ var _core_helpers_html_safe_html_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(86518);
|
|
47957
48042
|
/* harmony import */ var _core_plugin_plugin_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20356);
|
|
47958
48043
|
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46776);
|
|
47959
|
-
/* harmony import */ var
|
|
48044
|
+
/* harmony import */ var _helpers_visitor_filters_replace_old_tags_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(80973);
|
|
48045
|
+
/* harmony import */ var _helpers_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(59498);
|
|
47960
48046
|
function _array_like_to_array(arr, len) {
|
|
47961
48047
|
if (len == null || len > arr.length) len = arr.length;
|
|
47962
48048
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
@@ -48145,16 +48231,19 @@ function _wrap_native_super(Class) {
|
|
|
48145
48231
|
|
|
48146
48232
|
|
|
48147
48233
|
|
|
48234
|
+
|
|
48148
48235
|
/**
|
|
48149
48236
|
* Clean HTML after removeFormat and insertHorizontalRule command
|
|
48150
48237
|
*/ var TRAILING_BR_BLOCKS = 'p, div, li, td, th, h1, h2, h3, h4, h5, h6, blockquote';
|
|
48151
48238
|
var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
48152
48239
|
"use strict";
|
|
48153
48240
|
_inherits(cleanHtml, Plugin);
|
|
48154
|
-
function cleanHtml() {
|
|
48241
|
+
function cleanHtml(jodit) {
|
|
48155
48242
|
_class_call_check(this, cleanHtml);
|
|
48156
48243
|
var _this;
|
|
48157
|
-
_this = _call_super(this, cleanHtml,
|
|
48244
|
+
_this = _call_super(this, cleanHtml, [
|
|
48245
|
+
jodit
|
|
48246
|
+
]);
|
|
48158
48247
|
/** @override */ _this.buttons = [
|
|
48159
48248
|
{
|
|
48160
48249
|
name: 'eraser',
|
|
@@ -48165,12 +48254,22 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48165
48254
|
_this.walker = new _core_dom_lazy_walker_js__WEBPACK_IMPORTED_MODULE_2__.LazyWalker(_this.j.async, {
|
|
48166
48255
|
timeout: _this.j.o.cleanHTML.timeout
|
|
48167
48256
|
});
|
|
48257
|
+
// `@watch` binds once the plugin is ready, which is after the initial
|
|
48258
|
+
// value has already gone into the editor. The handlers that keep
|
|
48259
|
+
// markup out of the live tree have to be there from the start, or
|
|
48260
|
+
// event handlers in a textarea's content run before anything
|
|
48261
|
+
// sanitises them.
|
|
48262
|
+
jodit.e.on('safeHTML', _this.onSafeHTML).on('beforeSetNativeEditorValue', _this.onBeforeSetNativeEditorValue).on('afterSetNativeEditorValue', _this.onAfterSetNativeEditorValue);
|
|
48168
48263
|
return _this;
|
|
48169
48264
|
}
|
|
48170
48265
|
_create_class(cleanHtml, [
|
|
48171
48266
|
{
|
|
48172
48267
|
/** @override */ key: "afterInit",
|
|
48173
|
-
value: function afterInit(
|
|
48268
|
+
value: function afterInit() {
|
|
48269
|
+
// The walker's own `:afterInit` watcher is bound on that very event,
|
|
48270
|
+
// so without this the first pass waited for the first key or click
|
|
48271
|
+
this.onChangeCleanHTML();
|
|
48272
|
+
}
|
|
48174
48273
|
},
|
|
48175
48274
|
{
|
|
48176
48275
|
key: "isEditMode",
|
|
@@ -48196,10 +48295,10 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48196
48295
|
value: function startWalker() {
|
|
48197
48296
|
var _this = this;
|
|
48198
48297
|
var jodit = this.jodit;
|
|
48199
|
-
var allow = (0,
|
|
48200
|
-
var deny = (0,
|
|
48298
|
+
var allow = (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_8__.getHash)(this.j.o.cleanHTML.allowTags);
|
|
48299
|
+
var deny = (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_8__.getHash)(this.j.o.cleanHTML.denyTags);
|
|
48201
48300
|
this.walker.on('visit', function(node) {
|
|
48202
|
-
return (0,
|
|
48301
|
+
return (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_8__.visitNodeWalker)(jodit, node, allow, deny, _this.currentSelectionNode);
|
|
48203
48302
|
}).on('end', function(affected) {
|
|
48204
48303
|
_this.j.e.fire(affected ? 'internalChange finishedCleanHTMLWorker' : 'finishedCleanHTMLWorker');
|
|
48205
48304
|
});
|
|
@@ -48210,9 +48309,9 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48210
48309
|
value: function beforeCommand(command) {
|
|
48211
48310
|
if (command.toLowerCase() === 'removeformat') {
|
|
48212
48311
|
if (this.j.s.isCollapsed()) {
|
|
48213
|
-
(0,
|
|
48312
|
+
(0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_8__.removeFormatForCollapsedSelection)(this.j);
|
|
48214
48313
|
} else {
|
|
48215
|
-
(0,
|
|
48314
|
+
(0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_8__.removeFormatForSelection)(this.j);
|
|
48216
48315
|
}
|
|
48217
48316
|
return false;
|
|
48218
48317
|
}
|
|
@@ -48244,6 +48343,7 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48244
48343
|
], 2), sandBox = _ref[0], iframe = _ref[1];
|
|
48245
48344
|
sandBox.innerHTML = data.value;
|
|
48246
48345
|
this.j.e.fire('safeHTML', sandBox);
|
|
48346
|
+
this.__replaceOldTags(sandBox);
|
|
48247
48347
|
data.value = sandBox.innerHTML;
|
|
48248
48348
|
(0,_core_helpers_html_safe_html_js__WEBPACK_IMPORTED_MODULE_4__.safeHTML)(sandBox, {
|
|
48249
48349
|
safeJavaScriptLink: true,
|
|
@@ -48255,6 +48355,24 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48255
48355
|
},
|
|
48256
48356
|
{
|
|
48257
48357
|
/**
|
|
48358
|
+
* Replace old tags (`<b>` with `<strong>`, `<i>` with `<em>`) in an
|
|
48359
|
+
* assigned value straight away. The walker would get to them only after
|
|
48360
|
+
* every node before them, seconds later on a long document, and until
|
|
48361
|
+
* then Bold does not treat `<b>` as bold, and the swap can move the caret.
|
|
48362
|
+
*/ key: "__replaceOldTags",
|
|
48363
|
+
value: function __replaceOldTags(box) {
|
|
48364
|
+
var _this = this;
|
|
48365
|
+
var _this_j_o_cleanHTML = this.j.o.cleanHTML, list = _this_j_o_cleanHTML.replaceOldTags, disableCleanFilter = _this_j_o_cleanHTML.disableCleanFilter;
|
|
48366
|
+
if (!list || (disableCleanFilter === null || disableCleanFilter === void 0 ? void 0 : disableCleanFilter.has('replaceOldTags'))) {
|
|
48367
|
+
return;
|
|
48368
|
+
}
|
|
48369
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.each(box, function(node) {
|
|
48370
|
+
;(0,_helpers_visitor_filters_replace_old_tags_js__WEBPACK_IMPORTED_MODULE_7__.replaceOldTags)(_this.j, node, false);
|
|
48371
|
+
});
|
|
48372
|
+
}
|
|
48373
|
+
},
|
|
48374
|
+
{
|
|
48375
|
+
/**
|
|
48258
48376
|
* Collapse a value that holds only a single empty block (e.g.
|
|
48259
48377
|
* `<p><br></p>` left after deleting all content) to an empty string —
|
|
48260
48378
|
* opt-in via `cleanHTML.collapseEmptyValueToEmptyString`. See #1149
|
|
@@ -48346,6 +48464,7 @@ var cleanHtml = /*#__PURE__*/ function(Plugin) {
|
|
|
48346
48464
|
{
|
|
48347
48465
|
/** @override */ key: "beforeDestruct",
|
|
48348
48466
|
value: function beforeDestruct() {
|
|
48467
|
+
this.j.e.off('safeHTML', this.onSafeHTML).off('beforeSetNativeEditorValue', this.onBeforeSetNativeEditorValue).off('afterSetNativeEditorValue', this.onAfterSetNativeEditorValue);
|
|
48349
48468
|
this.walker.destruct();
|
|
48350
48469
|
}
|
|
48351
48470
|
}
|
|
@@ -48368,16 +48487,16 @@ __decorate([
|
|
|
48368
48487
|
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__.watch)(':beforeCommand')
|
|
48369
48488
|
], cleanHtml.prototype, "beforeCommand", null);
|
|
48370
48489
|
__decorate([
|
|
48371
|
-
|
|
48490
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__.autobind
|
|
48372
48491
|
], cleanHtml.prototype, "onAfterSetNativeEditorValue", null);
|
|
48373
48492
|
__decorate([
|
|
48374
|
-
|
|
48493
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__.autobind
|
|
48375
48494
|
], cleanHtml.prototype, "onBeforeSetNativeEditorValue", null);
|
|
48376
48495
|
__decorate([
|
|
48377
48496
|
(0,_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__.watch)(':afterGetValueFromEditor')
|
|
48378
48497
|
], cleanHtml.prototype, "onAfterGetValueFromEditor", null);
|
|
48379
48498
|
__decorate([
|
|
48380
|
-
|
|
48499
|
+
_core_decorators_index_js__WEBPACK_IMPORTED_MODULE_0__.autobind
|
|
48381
48500
|
], cleanHtml.prototype, "onSafeHTML", null);
|
|
48382
48501
|
_core_global_js__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('cleanHtml', cleanHtml);
|
|
48383
48502
|
|
|
@@ -48956,10 +49075,33 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
48956
49075
|
}
|
|
48957
49076
|
var tagName = list[oldParent.nodeName.toLowerCase()] || list[oldParent.nodeName];
|
|
48958
49077
|
if (tagName) {
|
|
48959
|
-
|
|
49078
|
+
var restoreSelection = keepSelection(jodit, oldParent);
|
|
49079
|
+
var newParent = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.replace(oldParent, tagName, jodit.createInside, true, false);
|
|
49080
|
+
restoreSelection === null || restoreSelection === void 0 ? void 0 : restoreSelection(newParent);
|
|
49081
|
+
return newParent;
|
|
48960
49082
|
}
|
|
48961
49083
|
return oldParent;
|
|
48962
49084
|
}
|
|
49085
|
+
/**
|
|
49086
|
+
* Moving the children out of an element collapses a selection inside them to
|
|
49087
|
+
* where the element was, so the caret jumps to the start of the text being
|
|
49088
|
+
* typed. Returns a callback that puts the selection back on the same nodes.
|
|
49089
|
+
*
|
|
49090
|
+
* Like `removeEmptyTextNode`, it leaves the selection alone once focus has
|
|
49091
|
+
* left the editor, because selecting would take focus back.
|
|
49092
|
+
*/ function keepSelection(jodit, elm) {
|
|
49093
|
+
var sel = jodit.s.sel;
|
|
49094
|
+
if (!(sel === null || sel === void 0 ? void 0 : sel.anchorNode) || !sel.focusNode || !jodit.s.isFocused()) {
|
|
49095
|
+
return null;
|
|
49096
|
+
}
|
|
49097
|
+
var anchorNode = sel.anchorNode, anchorOffset = sel.anchorOffset, focusNode = sel.focusNode, focusOffset = sel.focusOffset;
|
|
49098
|
+
if (!_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isOrContains(elm, anchorNode) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isOrContains(elm, focusNode)) {
|
|
49099
|
+
return null;
|
|
49100
|
+
}
|
|
49101
|
+
return function(newElm) {
|
|
49102
|
+
sel.setBaseAndExtent(anchorNode === elm ? newElm : anchorNode, anchorOffset, focusNode === elm ? newElm : focusNode, focusOffset);
|
|
49103
|
+
};
|
|
49104
|
+
}
|
|
48963
49105
|
|
|
48964
49106
|
|
|
48965
49107
|
/***/ }),
|
|
@@ -51522,9 +51664,32 @@ var brBoxes = new Set([
|
|
|
51522
51664
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
51523
51665
|
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
51524
51666
|
*/
|
|
51667
|
+
/**
|
|
51668
|
+
* Moves the cursor out of a block that can't hold the inserted block: before
|
|
51669
|
+
* or after it when the cursor is at its edge, or between its two halves when
|
|
51670
|
+
* the cursor is inside its content. An empty block is removed
|
|
51671
|
+
*/ function moveCursorOutOf(jodit, parent) {
|
|
51672
|
+
var _a;
|
|
51673
|
+
var s = jodit.s;
|
|
51674
|
+
if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isEmpty(parent)) {
|
|
51675
|
+
s.setCursorAfter(parent);
|
|
51676
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(parent);
|
|
51677
|
+
return;
|
|
51678
|
+
}
|
|
51679
|
+
if (s.cursorOnTheRight(parent)) {
|
|
51680
|
+
s.setCursorAfter(parent);
|
|
51681
|
+
return;
|
|
51682
|
+
}
|
|
51683
|
+
if (s.cursorOnTheLeft(parent)) {
|
|
51684
|
+
s.setCursorBefore(parent);
|
|
51685
|
+
return;
|
|
51686
|
+
}
|
|
51687
|
+
s.setCursorAfter((_a = s.splitSelection(parent)) !== null && _a !== void 0 ? _a : parent);
|
|
51688
|
+
}
|
|
51525
51689
|
/**
|
|
51526
51690
|
* Checks whether the insertion of an element at the current location is allowed,
|
|
51527
|
-
* if it is not allowed, it deletes an empty block element
|
|
51691
|
+
* if it is not allowed, it deletes an empty block element, moves the cursor
|
|
51692
|
+
* before or after it, or splits it at the cursor
|
|
51528
51693
|
* @internal
|
|
51529
51694
|
*/ function checkBlockNesting(jodit, node) {
|
|
51530
51695
|
var _a, _b;
|
|
@@ -51553,10 +51718,7 @@ var brBoxes = new Set([
|
|
|
51553
51718
|
parent = current;
|
|
51554
51719
|
}
|
|
51555
51720
|
if (parent) {
|
|
51556
|
-
jodit
|
|
51557
|
-
if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isEmpty(parent)) {
|
|
51558
|
-
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(parent);
|
|
51559
|
-
}
|
|
51721
|
+
moveCursorOutOf(jodit, parent);
|
|
51560
51722
|
}
|
|
51561
51723
|
}
|
|
51562
51724
|
}
|
|
@@ -52336,7 +52498,14 @@ function brBefore(start) {
|
|
|
52336
52498
|
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after(link, fake);
|
|
52337
52499
|
} else if (s.cursorOnTheLeft(link, fake)) {
|
|
52338
52500
|
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.before(link, fake);
|
|
52501
|
+
} else {
|
|
52502
|
+
return;
|
|
52339
52503
|
}
|
|
52504
|
+
// The block is split at the caret, so the caret leaves the link too:
|
|
52505
|
+
// beside the fake, since Safari mislays a caret inside a removed node
|
|
52506
|
+
var range = s.createRange();
|
|
52507
|
+
range.setStartBefore(fake);
|
|
52508
|
+
s.selectRange(range);
|
|
52340
52509
|
}
|
|
52341
52510
|
}
|
|
52342
52511
|
|
|
@@ -52572,9 +52741,10 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_1__.pluginSystem.add('file', file);
|
|
|
52572
52741
|
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
|
|
52573
52742
|
|
|
52574
52743
|
/* unused harmony export focus */
|
|
52575
|
-
/* harmony import */ var
|
|
52576
|
-
/* harmony import */ var
|
|
52577
|
-
/* harmony import */ var
|
|
52744
|
+
/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
52745
|
+
/* harmony import */ var _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(22732);
|
|
52746
|
+
/* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(580);
|
|
52747
|
+
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6441);
|
|
52578
52748
|
/*!
|
|
52579
52749
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
52580
52750
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -52582,15 +52752,16 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_1__.pluginSystem.add('file', file);
|
|
|
52582
52752
|
*/
|
|
52583
52753
|
|
|
52584
52754
|
|
|
52755
|
+
|
|
52585
52756
|
/**
|
|
52586
52757
|
* After loading the page into the editor once the focus is set
|
|
52587
|
-
*/
|
|
52758
|
+
*/ _config_js__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.autofocus = false;
|
|
52588
52759
|
/**
|
|
52589
52760
|
* Cursor position after autofocus
|
|
52590
|
-
*/
|
|
52761
|
+
*/ _config_js__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.cursorAfterAutofocus = 'end';
|
|
52591
52762
|
/**
|
|
52592
52763
|
* Save current selection on blur event
|
|
52593
|
-
*/
|
|
52764
|
+
*/ _config_js__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.saveSelectionOnBlur = true;
|
|
52594
52765
|
function focus(editor) {
|
|
52595
52766
|
if (editor.o.saveSelectionOnBlur) {
|
|
52596
52767
|
// A click that brings focus back places the caret itself, and Chrome
|
|
@@ -52622,13 +52793,13 @@ function focus(editor) {
|
|
|
52622
52793
|
var textNode = null;
|
|
52623
52794
|
switch(editor.o.cursorAfterAutofocus){
|
|
52624
52795
|
case 'start':
|
|
52625
|
-
textNode =
|
|
52626
|
-
return
|
|
52796
|
+
textNode = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.first(editor.editor, function(node) {
|
|
52797
|
+
return _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(node);
|
|
52627
52798
|
});
|
|
52628
52799
|
break;
|
|
52629
52800
|
case 'end':
|
|
52630
|
-
textNode =
|
|
52631
|
-
return
|
|
52801
|
+
textNode = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.last(editor.editor, function(node) {
|
|
52802
|
+
return _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isText(node);
|
|
52632
52803
|
});
|
|
52633
52804
|
break;
|
|
52634
52805
|
}
|
|
@@ -52647,7 +52818,8 @@ function focus(editor) {
|
|
|
52647
52818
|
});
|
|
52648
52819
|
editor.e.on('afterInit afterAddPlace', function() {
|
|
52649
52820
|
editor.e.off(editor.editor, 'mousedown.autofocus').on(editor.editor, 'mousedown.autofocus', function(e) {
|
|
52650
|
-
|
|
52821
|
+
// An empty block takes the caret, but a video, say, can't hold one
|
|
52822
|
+
if (editor.isEditorMode() && e.target && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(e.target) && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(e.target, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSEPARABLE_TAGS) && !e.target.childNodes.length) {
|
|
52651
52823
|
if (editor.editor === e.target) {
|
|
52652
52824
|
editor.s.focus();
|
|
52653
52825
|
} else {
|
|
@@ -52657,7 +52829,7 @@ function focus(editor) {
|
|
|
52657
52829
|
});
|
|
52658
52830
|
});
|
|
52659
52831
|
}
|
|
52660
|
-
|
|
52832
|
+
_core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('focus', focus);
|
|
52661
52833
|
|
|
52662
52834
|
|
|
52663
52835
|
/***/ }),
|
|
@@ -54447,18 +54619,29 @@ function hr(editor) {
|
|
|
54447
54619
|
group: 'insert'
|
|
54448
54620
|
});
|
|
54449
54621
|
editor.registerCommand('insertHorizontalRule', function() {
|
|
54622
|
+
var _a;
|
|
54450
54623
|
var elm = editor.createInside.element('hr');
|
|
54451
54624
|
editor.s.insertNode(elm, false, false);
|
|
54452
54625
|
var block = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.closest(elm.parentElement, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isBlock, editor.editor);
|
|
54453
|
-
|
|
54626
|
+
// A block that holds other blocks, such as a list item or a table
|
|
54627
|
+
// cell, keeps the line
|
|
54628
|
+
if (block && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isEmpty(block) && block !== editor.editor && !((_a = editor.o.dtd) === null || _a === void 0 ? void 0 : _a.blockLimits[block.nodeName.toLowerCase()])) {
|
|
54454
54629
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after(block, elm);
|
|
54455
54630
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(block);
|
|
54456
54631
|
}
|
|
54457
|
-
var
|
|
54458
|
-
if (
|
|
54459
|
-
|
|
54460
|
-
|
|
54632
|
+
var next = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.findNotEmptySibling(elm, false);
|
|
54633
|
+
if (_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isBlock(next)) {
|
|
54634
|
+
editor.s.setCursorIn(next, true);
|
|
54635
|
+
return false;
|
|
54636
|
+
}
|
|
54637
|
+
// In a list item or a table cell the text goes on after the line, as
|
|
54638
|
+
// it does with the browsers' own command
|
|
54639
|
+
if (next || elm.parentNode !== editor.editor && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isBlock(_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.findNotEmptySibling(elm, true))) {
|
|
54640
|
+
editor.s.setCursorAfter(elm);
|
|
54641
|
+
return false;
|
|
54461
54642
|
}
|
|
54643
|
+
var p = editor.createInside.element(editor.o.enter);
|
|
54644
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after(elm, p);
|
|
54462
54645
|
editor.s.setCursorIn(p);
|
|
54463
54646
|
return false;
|
|
54464
54647
|
});
|
|
@@ -54491,7 +54674,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeBaseUrl = '';
|
|
|
54491
54674
|
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeTitle = 'Jodit Editor';
|
|
54492
54675
|
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeDoctype = '<!DOCTYPE html>';
|
|
54493
54676
|
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeDefaultSrc = 'about:blank';
|
|
54494
|
-
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeStyle = 'html{' + 'margin:0;' + 'padding:0;' + 'min-height: 100%;' + '}' + 'body{' + 'box-sizing:border-box;' + 'font-size:13px;' + 'line-height:1.6;' + 'padding:10px;' + 'margin:0;' + 'background:transparent;' + 'color:#000;' + 'position:' + 'relative;' + 'z-index:2;' + 'user-select:auto;' + 'margin:0px;' + 'overflow:auto;' + 'outline:none;' + '}' + 'table{' + 'width:100%;' + 'border:none;' + 'border-collapse:collapse;' + 'empty-cells: show;' + 'max-width: 100%;' + '}' + 'th,td{' + 'padding: 2px 5px;' + 'border:1px solid #ccc;' + '-webkit-user-select:text;' + '-moz-user-select:text;' + '-ms-user-select:text;' + 'user-select:text' + '}' + 'p{' + 'margin-top:0;' + '}' + '
|
|
54677
|
+
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeStyle = 'html{' + 'margin:0;' + 'padding:0;' + 'min-height: 100%;' + '}' + 'body{' + 'box-sizing:border-box;' + 'font-size:13px;' + 'line-height:1.6;' + 'padding:10px;' + 'margin:0;' + 'background:transparent;' + 'color:#000;' + 'position:' + 'relative;' + 'z-index:2;' + 'user-select:auto;' + 'margin:0px;' + 'overflow:auto;' + 'outline:none;' + '}' + 'table{' + 'width:100%;' + 'border:none;' + 'border-collapse:collapse;' + 'empty-cells: show;' + 'max-width: 100%;' + '}' + 'th,td{' + 'padding: 2px 5px;' + 'border:1px solid #ccc;' + '-webkit-user-select:text;' + '-moz-user-select:text;' + '-ms-user-select:text;' + 'user-select:text' + '}' + 'p{' + 'margin-top:0;' + '}' + '[data-jodit_iframe_wrapper]{' + 'display: block;' + 'user-select: none;' + 'position: relative;' + '}' + '[data-jodit_iframe_wrapper] iframe{' + 'position: relative;' + '}' + '[data-jodit_iframe_wrapper]:after {' + 'position:absolute;' + 'content:"";' + 'z-index:1;' + 'top:0;' + 'left:0;' + 'right: 0;' + 'bottom: 0;' + 'cursor: pointer;' + 'display: block;' + 'background: rgba(0, 0, 0, 0);' + '} ' + '[data-jodit_iframe_wrapper][data-jodit-wrapper_active=true] iframe{' + 'z-index: 2;' + '}' + '.jodit-wysiwyg_image-selected::selection,' + '.jodit-wysiwyg_image-selected *:not(img)::selection{' + 'background:transparent' + '}' + '.jodit_disabled{' + 'user-select: none;' + '-o-user-select: none;' + '-moz-user-select: none;' + '-khtml-user-select: none;' + '-webkit-user-select: none;' + '-ms-user-select: none' + '}';
|
|
54495
54678
|
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeCSSLinks = [];
|
|
54496
54679
|
_config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.iframeSandbox = null;
|
|
54497
54680
|
|
|
@@ -59157,6 +59340,17 @@ function _create_class(Constructor, protoProps, staticProps) {
|
|
|
59157
59340
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
59158
59341
|
return Constructor;
|
|
59159
59342
|
}
|
|
59343
|
+
function _define_property(obj, key, value) {
|
|
59344
|
+
if (key in obj) {
|
|
59345
|
+
Object.defineProperty(obj, key, {
|
|
59346
|
+
value: value,
|
|
59347
|
+
enumerable: true,
|
|
59348
|
+
configurable: true,
|
|
59349
|
+
writable: true
|
|
59350
|
+
});
|
|
59351
|
+
} else obj[key] = value;
|
|
59352
|
+
return obj;
|
|
59353
|
+
}
|
|
59160
59354
|
function _get_prototype_of(o) {
|
|
59161
59355
|
_get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
|
|
59162
59356
|
return o.__proto__ || Object.getPrototypeOf(o);
|
|
@@ -59195,6 +59389,44 @@ function _iterable_to_array(iter) {
|
|
|
59195
59389
|
function _non_iterable_spread() {
|
|
59196
59390
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
59197
59391
|
}
|
|
59392
|
+
function _object_spread(target) {
|
|
59393
|
+
for(var i = 1; i < arguments.length; i++){
|
|
59394
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
59395
|
+
var ownKeys = Object.keys(source);
|
|
59396
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
59397
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
59398
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
59399
|
+
}));
|
|
59400
|
+
}
|
|
59401
|
+
ownKeys.forEach(function(key) {
|
|
59402
|
+
_define_property(target, key, source[key]);
|
|
59403
|
+
});
|
|
59404
|
+
}
|
|
59405
|
+
return target;
|
|
59406
|
+
}
|
|
59407
|
+
function ownKeys(object, enumerableOnly) {
|
|
59408
|
+
var keys = Object.keys(object);
|
|
59409
|
+
if (Object.getOwnPropertySymbols) {
|
|
59410
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
59411
|
+
if (enumerableOnly) {
|
|
59412
|
+
symbols = symbols.filter(function(sym) {
|
|
59413
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
59414
|
+
});
|
|
59415
|
+
}
|
|
59416
|
+
keys.push.apply(keys, symbols);
|
|
59417
|
+
}
|
|
59418
|
+
return keys;
|
|
59419
|
+
}
|
|
59420
|
+
function _object_spread_props(target, source) {
|
|
59421
|
+
source = source != null ? source : {};
|
|
59422
|
+
if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
59423
|
+
else {
|
|
59424
|
+
ownKeys(Object(source)).forEach(function(key) {
|
|
59425
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
59426
|
+
});
|
|
59427
|
+
}
|
|
59428
|
+
return target;
|
|
59429
|
+
}
|
|
59198
59430
|
function _possible_constructor_return(self, call) {
|
|
59199
59431
|
if (call && (_type_of(call) === "object" || typeof call === "function")) return call;
|
|
59200
59432
|
return _assert_this_initialized(self);
|
|
@@ -59306,8 +59538,12 @@ function _wrap_native_super(Class) {
|
|
|
59306
59538
|
// A media wrapper kept in the content gets the media popup
|
|
59307
59539
|
var type = mediaWrapper ? 'jodit-media' : target === null || target === void 0 ? void 0 : target.nodeName.toLowerCase();
|
|
59308
59540
|
if (target && type && this.canShowPopupForType(type)) {
|
|
59541
|
+
var isMedia = type === 'jodit-media';
|
|
59542
|
+
// Beside the media in a wrapper kept in the content, which can fill
|
|
59543
|
+
// the line
|
|
59544
|
+
var bound = mediaWrapper && (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.getWrappedMedia)(this.j, mediaWrapper) || target;
|
|
59309
59545
|
this.showPopup(function() {
|
|
59310
|
-
return
|
|
59546
|
+
return _this.__bound(bound, isMedia);
|
|
59311
59547
|
}, type, target);
|
|
59312
59548
|
return false;
|
|
59313
59549
|
}
|
|
@@ -59315,6 +59551,24 @@ function _wrap_native_super(Class) {
|
|
|
59315
59551
|
},
|
|
59316
59552
|
{
|
|
59317
59553
|
/**
|
|
59554
|
+
* The box the popup opens beside: the target's, with room for the
|
|
59555
|
+
* resizer's handles when the target gets them, so it doesn't cover them
|
|
59556
|
+
*/ key: "__bound",
|
|
59557
|
+
value: function __bound(target, isMedia) {
|
|
59558
|
+
var bound = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.position)(target, this.j);
|
|
59559
|
+
var resizable = this.j.o.allowResizeTags;
|
|
59560
|
+
if (!isMedia && !(resizable && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(target, resizable))) {
|
|
59561
|
+
return bound;
|
|
59562
|
+
}
|
|
59563
|
+
var room = parseInt(this.j.ow.getComputedStyle(this.j.container).getPropertyValue('--jd-resizer-handle-size'), 10) / 2 || 0;
|
|
59564
|
+
return _object_spread_props(_object_spread({}, bound), {
|
|
59565
|
+
top: bound.top - room,
|
|
59566
|
+
height: bound.height + room * 2
|
|
59567
|
+
});
|
|
59568
|
+
}
|
|
59569
|
+
},
|
|
59570
|
+
{
|
|
59571
|
+
/**
|
|
59318
59572
|
* Show inline popup with some toolbar
|
|
59319
59573
|
*
|
|
59320
59574
|
* @param type - selection, img, a etc.
|
|
@@ -61252,7 +61506,8 @@ function _wrap_native_super(Class) {
|
|
|
61252
61506
|
height: (_d = jodit.o.video) === null || _d === void 0 ? void 0 : _d.defaultHeight
|
|
61253
61507
|
});
|
|
61254
61508
|
if (embed !== html) {
|
|
61255
|
-
|
|
61509
|
+
var media = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.prepareEmbedCode)(jodit, embed);
|
|
61510
|
+
return (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.isString)(media) ? jodit.createInside.fromHTML(media) : media;
|
|
61256
61511
|
}
|
|
61257
61512
|
}
|
|
61258
61513
|
if (jodit.s.isCollapsed()) {
|
|
@@ -61700,6 +61955,14 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.mediaWrappers = {};
|
|
|
61700
61955
|
/* harmony import */ var _core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(43555);
|
|
61701
61956
|
/* harmony import */ var _core_helpers_utils_css_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(41180);
|
|
61702
61957
|
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(757);
|
|
61958
|
+
function _array_like_to_array(arr, len) {
|
|
61959
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
61960
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
61961
|
+
return arr2;
|
|
61962
|
+
}
|
|
61963
|
+
function _array_without_holes(arr) {
|
|
61964
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
61965
|
+
}
|
|
61703
61966
|
function _define_property(obj, key, value) {
|
|
61704
61967
|
if (key in obj) {
|
|
61705
61968
|
Object.defineProperty(obj, key, {
|
|
@@ -61711,6 +61974,25 @@ function _define_property(obj, key, value) {
|
|
|
61711
61974
|
} else obj[key] = value;
|
|
61712
61975
|
return obj;
|
|
61713
61976
|
}
|
|
61977
|
+
function _iterable_to_array(iter) {
|
|
61978
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) {
|
|
61979
|
+
return Array.from(iter);
|
|
61980
|
+
}
|
|
61981
|
+
}
|
|
61982
|
+
function _non_iterable_spread() {
|
|
61983
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
61984
|
+
}
|
|
61985
|
+
function _to_consumable_array(arr) {
|
|
61986
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
61987
|
+
}
|
|
61988
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
61989
|
+
if (!o) return;
|
|
61990
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
61991
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
61992
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
61993
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
61994
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
61995
|
+
}
|
|
61714
61996
|
/*!
|
|
61715
61997
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
61716
61998
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -61752,10 +62034,37 @@ function _define_property(obj, key, value) {
|
|
|
61752
62034
|
} else {
|
|
61753
62035
|
return;
|
|
61754
62036
|
}
|
|
62037
|
+
// Selected, as an image is, so Delete and Backspace remove it
|
|
61755
62038
|
editor.e.off(element, 'mousedown.select touchstart.select').on(element, 'mousedown.select touchstart.select', function() {
|
|
61756
|
-
editor.s.
|
|
62039
|
+
editor.s.select(element);
|
|
61757
62040
|
});
|
|
61758
62041
|
};
|
|
62042
|
+
// Media in a wrapper kept in the content let clicks through to it, as
|
|
62043
|
+
// jodit-media covers its media, so a click selects the media rather than
|
|
62044
|
+
// playing it. An inline wrapper holds it as an inline-block, unless its
|
|
62045
|
+
// classes or style give it a display of their own
|
|
62046
|
+
var wrappers = Object.values(mediaWrappers);
|
|
62047
|
+
if (wrappers.length) {
|
|
62048
|
+
editor.e.on('afterInit', function() {
|
|
62049
|
+
var selectors = function selectors(list) {
|
|
62050
|
+
return _to_consumable_array(new Set(list)).join(',');
|
|
62051
|
+
};
|
|
62052
|
+
var scoped = function scoped(param) {
|
|
62053
|
+
var tag = param.tag, className = param.className;
|
|
62054
|
+
return ".jodit-wysiwyg ".concat(tag, ".").concat(className);
|
|
62055
|
+
};
|
|
62056
|
+
var inline = selectors(wrappers.filter(function(param) {
|
|
62057
|
+
var tag = param.tag;
|
|
62058
|
+
return _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.IS_INLINE.test(tag);
|
|
62059
|
+
}).map(scoped));
|
|
62060
|
+
var _$media = selectors(wrappers.flatMap(function(wrapper) {
|
|
62061
|
+
return mediaBlocks.map(function(tag) {
|
|
62062
|
+
return "".concat(scoped(wrapper), ">").concat(tag);
|
|
62063
|
+
});
|
|
62064
|
+
}));
|
|
62065
|
+
(0,_core_global_js__WEBPACK_IMPORTED_MODULE_2__.getContainer)(editor, 'media-wrappers', 'style', true).innerHTML = (inline ? ":where(".concat(inline, "){display:inline-block}") : '') + "".concat(_$media, "{pointer-events:none}");
|
|
62066
|
+
});
|
|
62067
|
+
}
|
|
61759
62068
|
if (mediaInFakeBlock || Object.keys(mediaWrappers).length) {
|
|
61760
62069
|
editor.e.on('afterGetValueFromEditor', function(data) {
|
|
61761
62070
|
var rxp = new RegExp("<".concat(mediaFakeTag, "[^>]+data-").concat(keyFake, "[^>]+>([^]+?)</").concat(mediaFakeTag, ">"), 'ig');
|
|
@@ -63315,12 +63624,14 @@ _config_js__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.paste = {
|
|
|
63315
63624
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
63316
63625
|
/* harmony export */ askInsertTypeDialog: function() { return /* binding */ askInsertTypeDialog; },
|
|
63317
63626
|
/* harmony export */ getAllTypes: function() { return /* binding */ getAllTypes; },
|
|
63318
|
-
/* harmony export */ pasteInsertHtml: function() { return /* binding */ pasteInsertHtml; }
|
|
63627
|
+
/* harmony export */ pasteInsertHtml: function() { return /* binding */ pasteInsertHtml; },
|
|
63628
|
+
/* harmony export */ removeGoogleDocsWrapper: function() { return /* binding */ removeGoogleDocsWrapper; }
|
|
63319
63629
|
/* harmony export */ });
|
|
63320
63630
|
/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
63321
63631
|
/* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2748);
|
|
63322
|
-
/* harmony import */ var
|
|
63323
|
-
/* harmony import */ var
|
|
63632
|
+
/* harmony import */ var _core_helpers_array_to_array_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4510);
|
|
63633
|
+
/* harmony import */ var _core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(27613);
|
|
63634
|
+
/* harmony import */ var _core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10830);
|
|
63324
63635
|
function _array_like_to_array(arr, len) {
|
|
63325
63636
|
if (len == null || len > arr.length) len = arr.length;
|
|
63326
63637
|
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
@@ -63356,6 +63667,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63356
63667
|
|
|
63357
63668
|
|
|
63358
63669
|
|
|
63670
|
+
|
|
63359
63671
|
/**
|
|
63360
63672
|
* Remove special HTML comments
|
|
63361
63673
|
* @private
|
|
@@ -63371,6 +63683,21 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63371
63683
|
}
|
|
63372
63684
|
return html;
|
|
63373
63685
|
}
|
|
63686
|
+
/**
|
|
63687
|
+
* Google Docs wraps the copied content in
|
|
63688
|
+
* `<b style="font-weight:normal;" id="docs-internal-guid-…">`. Kept, the
|
|
63689
|
+
* wrapper holds the pasted blocks, and without its style it makes the whole
|
|
63690
|
+
* paste bold
|
|
63691
|
+
* @private
|
|
63692
|
+
*/ function removeGoogleDocsWrapper(html) {
|
|
63693
|
+
if (!/<b\s[^>]*docs-internal-guid-/i.test(html)) {
|
|
63694
|
+
return html;
|
|
63695
|
+
}
|
|
63696
|
+
// An inert document: images don't load and handlers don't run
|
|
63697
|
+
var body = new DOMParser().parseFromString(html, 'text/html').body;
|
|
63698
|
+
(0,_core_helpers_array_to_array_js__WEBPACK_IMPORTED_MODULE_2__.toArray)(body.querySelectorAll('b[id^="docs-internal-guid-"]')).forEach(_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.unwrap);
|
|
63699
|
+
return body.innerHTML;
|
|
63700
|
+
}
|
|
63374
63701
|
/**
|
|
63375
63702
|
* @private
|
|
63376
63703
|
*/ function isDragEvent(e) {
|
|
@@ -63387,11 +63714,11 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63387
63714
|
editor.s.insertCursorAtPoint(e.clientX, e.clientY);
|
|
63388
63715
|
}
|
|
63389
63716
|
var result = editor.e.fire('beforePasteInsert', html);
|
|
63390
|
-
if (!(0,
|
|
63717
|
+
if (!(0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__.isVoid)(result) && ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__.isString)(result) || (0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__.isNumber)(result) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isNode(result))) {
|
|
63391
63718
|
html = result;
|
|
63392
63719
|
}
|
|
63393
|
-
if ((0,
|
|
63394
|
-
html = removeExtraFragments(html);
|
|
63720
|
+
if ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__.isString)(html)) {
|
|
63721
|
+
html = removeExtraFragments(removeGoogleDocsWrapper(html));
|
|
63395
63722
|
}
|
|
63396
63723
|
editor.s.insertHTML(html);
|
|
63397
63724
|
}
|
|
@@ -63401,7 +63728,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63401
63728
|
*/ function getAllTypes(dt) {
|
|
63402
63729
|
var types = dt.types;
|
|
63403
63730
|
var types_str = '';
|
|
63404
|
-
if ((0,
|
|
63731
|
+
if ((0,_core_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_3__.isArray)(types) || ({}).toString.call(types) === '[object DOMStringList]') {
|
|
63405
63732
|
for(var i = 0; i < types.length; i += 1){
|
|
63406
63733
|
types_str += types[i] + ';';
|
|
63407
63734
|
}
|
|
@@ -63420,7 +63747,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63420
63747
|
var dialog = jodit.confirm('<div style="word-break: normal; white-space: normal">'.concat(jodit.i18n(msg), "</div>"), jodit.i18n(title));
|
|
63421
63748
|
var buttons = buttonList.map(function(param) {
|
|
63422
63749
|
var text = param.text, value = param.value;
|
|
63423
|
-
return (0,
|
|
63750
|
+
return (0,_core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, {
|
|
63424
63751
|
text: text,
|
|
63425
63752
|
name: text.toLowerCase(),
|
|
63426
63753
|
tabIndex: 0
|
|
@@ -63437,7 +63764,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
63437
63764
|
}
|
|
63438
63765
|
jodit.e.fire('afterClosePasteDialog', dialog);
|
|
63439
63766
|
});
|
|
63440
|
-
var cancel = (0,
|
|
63767
|
+
var cancel = (0,_core_ui_button_button_button_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, {
|
|
63441
63768
|
text: 'Cancel',
|
|
63442
63769
|
tabIndex: 0
|
|
63443
63770
|
}).onAction(function() {
|
|
@@ -63751,7 +64078,7 @@ function _wrap_native_super(Class) {
|
|
|
63751
64078
|
this.j.buffer.set(_core_constants_js__WEBPACK_IMPORTED_MODULE_0__.CLIPBOARD_ID, html);
|
|
63752
64079
|
switch(action){
|
|
63753
64080
|
case _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSERT_CLEAR_HTML:
|
|
63754
|
-
html = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.cleanFromWord)(html);
|
|
64081
|
+
html = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.cleanFromWord)((0,_helpers_js__WEBPACK_IMPORTED_MODULE_7__.removeGoogleDocsWrapper)(html));
|
|
63755
64082
|
break;
|
|
63756
64083
|
case _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSERT_ONLY_TEXT:
|
|
63757
64084
|
html = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.stripTags)(html, this.j.ed, new Set(this.j.o.pasteExcludeStripTags), this.j.o.nl2brInPlainText);
|
|
@@ -65780,7 +66107,7 @@ var keyBInd = '__jodit-resizer_binded';
|
|
|
65780
66107
|
var _this = this;
|
|
65781
66108
|
var editor = this.j;
|
|
65782
66109
|
editor.e.off(editor.editor, '.resizer').off(editor.ow, '.resizer').on(editor.editor, 'keydown.resizer', function(e) {
|
|
65783
|
-
if (_this.isShown && e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_DELETE && _this.element && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(_this.element, 'table')) {
|
|
66110
|
+
if (_this.isShown && (e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_DELETE || e.key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_BACKSPACE) && _this.element && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(_this.element, 'table')) {
|
|
65784
66111
|
_this.onDelete(e);
|
|
65785
66112
|
}
|
|
65786
66113
|
}).on(editor.ow, 'resize.resizer', this.updateSize).on('resize.resizer', this.updateSize).on([
|
|
@@ -66021,8 +66348,12 @@ var keyBInd = '__jodit-resizer_binded';
|
|
|
66021
66348
|
this.j.e.off(element, 'mousedown.select touchstart.select').on(element, 'mousedown.select touchstart.select', function() {
|
|
66022
66349
|
_this.j.s.select(element);
|
|
66023
66350
|
}).off(element, 'changesize').on(element, 'changesize', function() {
|
|
66024
|
-
|
|
66025
|
-
|
|
66351
|
+
// Only a resize sets the embed's size, and as the plain numbers
|
|
66352
|
+
// the attributes take, so a click leaves `width="100%"` alone
|
|
66353
|
+
if (_this.isResizeMode) {
|
|
66354
|
+
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.attr)(iframe, 'width', element.offsetWidth);
|
|
66355
|
+
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.attr)(iframe, 'height', element.offsetHeight);
|
|
66356
|
+
}
|
|
66026
66357
|
});
|
|
66027
66358
|
}
|
|
66028
66359
|
this.j.e.on(element, 'dragstart', this.hide);
|
|
@@ -68470,18 +68801,26 @@ var selectCells = /*#__PURE__*/ function(Plugin) {
|
|
|
68470
68801
|
break;
|
|
68471
68802
|
case 'empty':
|
|
68472
68803
|
cells1.forEach(function(td) {
|
|
68473
|
-
|
|
68804
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.detach(td);
|
|
68805
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.append(td, _this.j.createInside.element('br'));
|
|
68474
68806
|
});
|
|
68475
68807
|
break;
|
|
68476
68808
|
case 'bin':
|
|
68477
|
-
|
|
68809
|
+
this.__removeTable(table);
|
|
68478
68810
|
break;
|
|
68479
68811
|
case 'binrow':
|
|
68480
|
-
|
|
68481
|
-
|
|
68482
|
-
|
|
68483
|
-
|
|
68484
|
-
|
|
68812
|
+
{
|
|
68813
|
+
var rows = new Set(cells1.map(function(td) {
|
|
68814
|
+
return td.parentNode;
|
|
68815
|
+
}));
|
|
68816
|
+
var next = this.__nearestCell(table, cell, (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_4__.toArray)(rows).map(function(row) {
|
|
68817
|
+
return row.rowIndex;
|
|
68818
|
+
}), true);
|
|
68819
|
+
rows.forEach(function(row) {
|
|
68820
|
+
_this.__tableModule.removeRow(table, row.rowIndex);
|
|
68821
|
+
});
|
|
68822
|
+
next && this.j.s.setCursorIn(next);
|
|
68823
|
+
}
|
|
68485
68824
|
break;
|
|
68486
68825
|
case 'bincolumn':
|
|
68487
68826
|
{
|
|
@@ -68494,11 +68833,13 @@ var selectCells = /*#__PURE__*/ function(Plugin) {
|
|
|
68494
68833
|
columnsSet.add(col);
|
|
68495
68834
|
}
|
|
68496
68835
|
});
|
|
68836
|
+
var next1 = this.__nearestCell(table, cell, columns, false);
|
|
68497
68837
|
columns.sort(function(a, b) {
|
|
68498
68838
|
return b - a;
|
|
68499
68839
|
}).forEach(function(col) {
|
|
68500
68840
|
_this.__tableModule.removeColumn(table, col);
|
|
68501
68841
|
});
|
|
68842
|
+
next1 && this.j.s.setCursorIn(next1);
|
|
68502
68843
|
}
|
|
68503
68844
|
break;
|
|
68504
68845
|
case 'addcolumnafter':
|
|
@@ -68510,6 +68851,9 @@ var selectCells = /*#__PURE__*/ function(Plugin) {
|
|
|
68510
68851
|
this.__tableModule.appendRow(table, cell.parentNode, command === 'addrowafter');
|
|
68511
68852
|
break;
|
|
68512
68853
|
}
|
|
68854
|
+
if (/^bin(row|column)$/.test(command) && !this.__tableModule.getColumnsCount(table)) {
|
|
68855
|
+
this.__removeTable(table);
|
|
68856
|
+
}
|
|
68513
68857
|
}
|
|
68514
68858
|
return false;
|
|
68515
68859
|
}
|
|
@@ -68517,6 +68861,34 @@ var selectCells = /*#__PURE__*/ function(Plugin) {
|
|
|
68517
68861
|
},
|
|
68518
68862
|
{
|
|
68519
68863
|
/**
|
|
68864
|
+
* The cell that takes the caret when rows or columns are deleted: the next
|
|
68865
|
+
* one in the same column (or row) that is not deleted, else the previous one
|
|
68866
|
+
*/ key: "__nearestCell",
|
|
68867
|
+
value: function __nearestCell(table, cell, deleted, isRow) {
|
|
68868
|
+
var box = this.__tableModule.formalMatrix(table);
|
|
68869
|
+
var _this___tableModule_formalCoordinate = _sliced_to_array(this.__tableModule.formalCoordinate(table, cell), 2), row = _this___tableModule_formalCoordinate[0], column = _this___tableModule_formalCoordinate[1];
|
|
68870
|
+
var start = isRow ? row : column;
|
|
68871
|
+
var count = isRow ? box.length : box[row].length;
|
|
68872
|
+
var find = function find(i) {
|
|
68873
|
+
return !deleted.includes(i) && (isRow ? box[i][column] : box[row][i]) || null;
|
|
68874
|
+
};
|
|
68875
|
+
for(var i = start + 1; i < count; i += 1){
|
|
68876
|
+
var next = find(i);
|
|
68877
|
+
if (next) {
|
|
68878
|
+
return next;
|
|
68879
|
+
}
|
|
68880
|
+
}
|
|
68881
|
+
for(var i1 = start - 1; i1 >= 0; i1 -= 1){
|
|
68882
|
+
var prev = find(i1);
|
|
68883
|
+
if (prev) {
|
|
68884
|
+
return prev;
|
|
68885
|
+
}
|
|
68886
|
+
}
|
|
68887
|
+
return null;
|
|
68888
|
+
}
|
|
68889
|
+
},
|
|
68890
|
+
{
|
|
68891
|
+
/**
|
|
68520
68892
|
* Add some align after native command
|
|
68521
68893
|
*/ key: "onAfterCommand",
|
|
68522
68894
|
value: function onAfterCommand(command) {
|
|
@@ -68527,6 +68899,17 @@ var selectCells = /*#__PURE__*/ function(Plugin) {
|
|
|
68527
68899
|
}
|
|
68528
68900
|
}
|
|
68529
68901
|
},
|
|
68902
|
+
{
|
|
68903
|
+
/**
|
|
68904
|
+
* Remove the table and put the caret where it stood: at the start of what
|
|
68905
|
+
* follows it, else at the end of what precedes it
|
|
68906
|
+
*/ key: "__removeTable",
|
|
68907
|
+
value: function __removeTable(table) {
|
|
68908
|
+
var parent = table.parentNode, next = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.findNotEmptySibling(table, false), prev = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.findNotEmptySibling(table, true);
|
|
68909
|
+
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.safeRemove(table);
|
|
68910
|
+
this.j.s.setCursorIn(next || prev || parent, Boolean(next));
|
|
68911
|
+
}
|
|
68912
|
+
},
|
|
68530
68913
|
{
|
|
68531
68914
|
/** @override */ key: "beforeDestruct",
|
|
68532
68915
|
value: function beforeDestruct(jodit) {
|
|
@@ -74888,7 +75271,7 @@ var WORK_KEYS = new Set([
|
|
|
74888
75271
|
_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(next, first);
|
|
74889
75272
|
editor.s.setCursorBefore(first);
|
|
74890
75273
|
} else {
|
|
74891
|
-
if (key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_TAB) {
|
|
75274
|
+
if (key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_TAB && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isEmpty(next)) {
|
|
74892
75275
|
editor.s.select(next, true);
|
|
74893
75276
|
} else {
|
|
74894
75277
|
editor.s.setCursorIn(next, key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_RIGHT || key === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.KEY_DOWN);
|
|
@@ -75000,6 +75383,37 @@ _config_js__WEBPACK_IMPORTED_MODULE_5__.Config.prototype.table = {
|
|
|
75000
75383
|
useExtraClassesOptions: false
|
|
75001
75384
|
};
|
|
75002
75385
|
_core_ui_icon_js__WEBPACK_IMPORTED_MODULE_4__.Icon.set('table', _table_svg_js__WEBPACK_IMPORTED_MODULE_6__["default"]);
|
|
75386
|
+
/**
|
|
75387
|
+
* Elements in `dtd.blockLimits` that hold only rows, cells or list items, so
|
|
75388
|
+
* a table can't go directly inside them
|
|
75389
|
+
*/ var ROW_AND_ITEM_HOLDERS = new Set([
|
|
75390
|
+
'table',
|
|
75391
|
+
'thead',
|
|
75392
|
+
'tbody',
|
|
75393
|
+
'tfoot',
|
|
75394
|
+
'tr',
|
|
75395
|
+
'ul',
|
|
75396
|
+
'ol',
|
|
75397
|
+
'dl'
|
|
75398
|
+
]);
|
|
75399
|
+
/**
|
|
75400
|
+
* The nearest block around the cursor that can hold the new table: an element
|
|
75401
|
+
* in `dtd.blockLimits`, such as a table cell, a list item or a `<div>`. The
|
|
75402
|
+
* cursor's own block of the `enter` tag is a line, not a container, as in the
|
|
75403
|
+
* dtd plugin's `checkBlockNesting`
|
|
75404
|
+
*/ function findTableContainer(editor, current) {
|
|
75405
|
+
var line = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
|
|
75406
|
+
var container = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, function(node) {
|
|
75407
|
+
var _a;
|
|
75408
|
+
if (!_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(node) || node === line && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(node, editor.o.enter)) {
|
|
75409
|
+
return false;
|
|
75410
|
+
}
|
|
75411
|
+
var tag = node.nodeName.toLowerCase();
|
|
75412
|
+
return Boolean((_a = editor.o.dtd) === null || _a === void 0 ? void 0 : _a.blockLimits[tag]) && !ROW_AND_ITEM_HOLDERS.has(tag);
|
|
75413
|
+
}, editor.editor);
|
|
75414
|
+
// With the cursor between two rows, `current` is the next row's text
|
|
75415
|
+
return container && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isOrContains(container, editor.s.range.startContainer) ? container : null;
|
|
75416
|
+
}
|
|
75003
75417
|
_config_js__WEBPACK_IMPORTED_MODULE_5__.Config.prototype.controls.table = {
|
|
75004
75418
|
data: {
|
|
75005
75419
|
cols: 10,
|
|
@@ -75101,7 +75515,11 @@ _config_js__WEBPACK_IMPORTED_MODULE_5__.Config.prototype.controls.table = {
|
|
|
75101
75515
|
editor.s.removeMarkers();
|
|
75102
75516
|
editor.editor.normalize();
|
|
75103
75517
|
editor.history.snapshot.restore(snapshot);
|
|
75104
|
-
var
|
|
75518
|
+
var current = editor.s.current();
|
|
75519
|
+
// The table goes into the cell, list item or box holding the
|
|
75520
|
+
// cursor, and only a block inside it is split
|
|
75521
|
+
var container = findTableContainer(editor, current);
|
|
75522
|
+
var block = container === current ? null : _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.furthest(current, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, container !== null && container !== void 0 ? container : editor.editor);
|
|
75105
75523
|
if (block && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isEmpty(block)) {
|
|
75106
75524
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.replace(block, table, undefined, false, true);
|
|
75107
75525
|
} else {
|
|
@@ -75123,6 +75541,9 @@ _config_js__WEBPACK_IMPORTED_MODULE_5__.Config.prototype.controls.table = {
|
|
|
75123
75541
|
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.after(block, table);
|
|
75124
75542
|
}
|
|
75125
75543
|
}
|
|
75544
|
+
} else if (container && !_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isEmpty(container) && !editor.o.table.splitBlockOnInsertTable) {
|
|
75545
|
+
// With no block to go after, the table goes after the text
|
|
75546
|
+
_core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(container, table);
|
|
75126
75547
|
} else {
|
|
75127
75548
|
editor.s.insertNode(table, false);
|
|
75128
75549
|
}
|
|
@@ -75568,34 +75989,16 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_4__.pluginSystem.add('toolbarNavigation
|
|
|
75568
75989
|
|
|
75569
75990
|
|
|
75570
75991
|
|
|
75571
|
-
// Media the popup inserts go in their wrapper (see `mediaWrappers`), aligned
|
|
75572
|
-
// with `mediaDefaultAlign`
|
|
75573
|
-
function prepareMedia(jodit, element) {
|
|
75574
|
-
var media = (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.wrapMedia)(jodit, element);
|
|
75575
|
-
var mediaDefaultAlign = jodit.o.mediaDefaultAlign;
|
|
75576
|
-
if (mediaDefaultAlign && mediaDefaultAlign !== 'normal') {
|
|
75577
|
-
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.hAlignElement)(media, mediaDefaultAlign, (0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.getAlignClasses)(jodit, media));
|
|
75578
|
-
}
|
|
75579
|
-
return media;
|
|
75580
|
-
}
|
|
75581
75992
|
function insertVideos(data) {
|
|
75582
75993
|
var _this = this;
|
|
75583
75994
|
var _a;
|
|
75584
75995
|
(_a = data.files) === null || _a === void 0 ? void 0 : _a.forEach(function(file) {
|
|
75585
|
-
_this.s.insertNode(prepareMedia(_this, _this.createInside.element('video', {
|
|
75996
|
+
_this.s.insertNode((0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.prepareMedia)(_this, _this.createInside.element('video', {
|
|
75586
75997
|
controls: '',
|
|
75587
75998
|
src: data.baseurl + file
|
|
75588
75999
|
})));
|
|
75589
76000
|
});
|
|
75590
76001
|
}
|
|
75591
|
-
// Embed code that is one element is prepared as media; other code goes in as
|
|
75592
|
-
// it is
|
|
75593
|
-
function prepareEmbedCode(jodit, code) {
|
|
75594
|
-
var box = jodit.createInside.div();
|
|
75595
|
-
box.innerHTML = code.trim();
|
|
75596
|
-
var element = box.firstElementChild;
|
|
75597
|
-
return element && box.childNodes.length === 1 ? prepareMedia(jodit, element) : code;
|
|
75598
|
-
}
|
|
75599
76002
|
_config_js__WEBPACK_IMPORTED_MODULE_4__.Config.prototype.video = {
|
|
75600
76003
|
parseUrlToVideoEmbed: _core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.convertMediaUrlToVideoEmbed,
|
|
75601
76004
|
defaultWidth: 400,
|
|
@@ -75637,7 +76040,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_4__.Config.prototype.controls.video = {
|
|
|
75637
76040
|
])
|
|
75638
76041
|
]), tabs = [], insertCode = function insertCode(code) {
|
|
75639
76042
|
jodit.s.restore();
|
|
75640
|
-
jodit.s.insertHTML(prepareEmbedCode(jodit, code));
|
|
76043
|
+
jodit.s.insertHTML((0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_0__.prepareEmbedCode)(jodit, code));
|
|
75641
76044
|
close();
|
|
75642
76045
|
};
|
|
75643
76046
|
jodit.s.save();
|
|
@@ -75672,7 +76075,11 @@ _config_js__WEBPACK_IMPORTED_MODULE_4__.Config.prototype.controls.video = {
|
|
|
75672
76075
|
formCode.onSubmit(function(data) {
|
|
75673
76076
|
insertCode(data.code);
|
|
75674
76077
|
});
|
|
75675
|
-
|
|
76078
|
+
var box = (0,_modules_widget_index_js__WEBPACK_IMPORTED_MODULE_5__.TabsWidget)(jodit, tabs);
|
|
76079
|
+
// Its tabs are sized to their labels, as the file selector's are, since
|
|
76080
|
+
// "Upload" doesn't fit a third of the popup
|
|
76081
|
+
box.classList.add('jodit-file-selector');
|
|
76082
|
+
return box;
|
|
75676
76083
|
},
|
|
75677
76084
|
tags: [
|
|
75678
76085
|
'iframe'
|