jodit-pro 4.4.7 → 4.4.8
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 +2 -2
- package/es2015/jodit.js +70 -32
- package/es2015/jodit.min.js +2 -2
- 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/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/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.css +1 -1
- package/es2018/jodit.fat.min.js +2 -2
- package/es2018/jodit.js +70 -32
- package/es2018/jodit.min.js +2 -2
- package/es2018/plugins/autocomplete/autocomplete.js +1 -1
- package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2018/plugins/backup/backup.css +1 -1
- package/es2018/plugins/backup/backup.js +1 -1
- package/es2018/plugins/backup/backup.min.js +1 -1
- package/es2018/plugins/button-generator/button-generator.css +1 -1
- package/es2018/plugins/button-generator/button-generator.js +1 -1
- package/es2018/plugins/button-generator/button-generator.min.js +1 -1
- package/es2018/plugins/change-case/change-case.js +1 -1
- package/es2018/plugins/change-case/change-case.min.js +1 -1
- package/es2018/plugins/color-picker/color-picker.css +1 -1
- package/es2018/plugins/color-picker/color-picker.js +1 -1
- package/es2018/plugins/color-picker/color-picker.min.js +1 -1
- package/es2018/plugins/emoji/emoji.css +1 -1
- package/es2018/plugins/emoji/emoji.js +1 -1
- package/es2018/plugins/emoji/emoji.min.js +1 -1
- package/es2018/plugins/export-docs/export-docs.js +1 -1
- package/es2018/plugins/export-docs/export-docs.min.js +1 -1
- package/es2018/plugins/finder/finder.css +1 -1
- package/es2018/plugins/finder/finder.js +1 -1
- package/es2018/plugins/finder/finder.min.js +1 -1
- package/es2018/plugins/google-maps/google-maps.css +1 -1
- package/es2018/plugins/google-maps/google-maps.js +1 -1
- package/es2018/plugins/google-maps/google-maps.min.js +1 -1
- package/es2018/plugins/google-search/google-search.js +1 -1
- package/es2018/plugins/google-search/google-search.min.js +1 -1
- package/es2018/plugins/highlight-signature/highlight-signature.js +1 -1
- package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
- package/es2018/plugins/iframe-editor/iframe-editor.css +1 -1
- package/es2018/plugins/iframe-editor/iframe-editor.js +1 -1
- package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
- package/es2018/plugins/keyboard/keyboard.css +1 -1
- package/es2018/plugins/keyboard/keyboard.js +1 -1
- package/es2018/plugins/keyboard/keyboard.min.js +1 -1
- package/es2018/plugins/mobile-view/mobile-view.js +1 -1
- package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
- package/es2018/plugins/page-break/page-break.js +1 -1
- package/es2018/plugins/page-break/page-break.min.js +1 -1
- package/es2018/plugins/paste-code/paste-code.css +1 -1
- package/es2018/plugins/paste-code/paste-code.js +1 -1
- package/es2018/plugins/paste-code/paste-code.min.js +1 -1
- package/es2018/plugins/paste-from-word/paste-from-word.js +1 -1
- package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
- package/es2018/plugins/show-blocks/show-blocks.js +1 -1
- package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
- package/es2018/plugins/todo-list/todo-list.css +1 -1
- package/es2018/plugins/todo-list/todo-list.js +1 -1
- package/es2018/plugins/todo-list/todo-list.min.js +1 -1
- package/es2018/plugins/translate/translate.css +1 -1
- package/es2018/plugins/translate/translate.js +1 -1
- package/es2018/plugins/translate/translate.min.js +1 -1
- package/es2018/plugins/tune-block/tune-block.css +1 -1
- package/es2018/plugins/tune-block/tune-block.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 +2 -2
- package/es2021/jodit.js +70 -32
- package/es2021/jodit.min.js +2 -2
- 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/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/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 +2 -2
- package/es2021.en/jodit.js +70 -32
- package/es2021.en/jodit.min.js +2 -2
- 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/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/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 +77 -33
- package/es5/jodit.min.css +2 -2
- package/es5/jodit.min.js +2 -2
- 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/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/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/package.json +1 -1
package/es2021.en/jodit.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* jodit-pro - PRO Version of Jodit Editor
|
|
3
3
|
* Author: Chupurnov Valeriy <chupurnov@gmail.com>
|
|
4
|
-
* Version: v4.4.
|
|
4
|
+
* Version: v4.4.8
|
|
5
5
|
* Url: https://xdsoft.net/jodit/pro/
|
|
6
6
|
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
7
|
*/
|
|
@@ -1639,7 +1639,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
1639
1639
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
1640
1640
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
1641
1641
|
* Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
|
|
1642
|
-
*/ const APP_VERSION = "4.4.
|
|
1642
|
+
*/ const APP_VERSION = "4.4.8";
|
|
1643
1643
|
// prettier-ignore
|
|
1644
1644
|
const ES = "es2020";
|
|
1645
1645
|
const IS_ES_MODERN = true;
|
|
@@ -2701,27 +2701,24 @@ function getPropertyDescriptor(obj, prop) {
|
|
|
2701
2701
|
}
|
|
2702
2702
|
}
|
|
2703
2703
|
/**
|
|
2704
|
-
* Wrap all inline siblings
|
|
2705
|
-
*/ static
|
|
2706
|
-
let tmp
|
|
2704
|
+
* Wrap all inline next siblings
|
|
2705
|
+
*/ static wrapNextInline(current, tag, editor) {
|
|
2706
|
+
let tmp;
|
|
2707
|
+
const first = current;
|
|
2708
|
+
let last = current;
|
|
2707
2709
|
editor.s.save();
|
|
2708
2710
|
let needFindNext = false;
|
|
2709
|
-
do {
|
|
2710
|
-
needFindNext = false;
|
|
2711
|
-
tmp = first.previousSibling;
|
|
2712
|
-
if (tmp && !Dom.isBlock(tmp)) {
|
|
2713
|
-
needFindNext = true;
|
|
2714
|
-
first = tmp;
|
|
2715
|
-
}
|
|
2716
|
-
}while (needFindNext)
|
|
2717
2711
|
do {
|
|
2718
2712
|
needFindNext = false;
|
|
2719
2713
|
tmp = last.nextSibling;
|
|
2720
|
-
if (tmp && !Dom.isBlock(tmp)) {
|
|
2714
|
+
if (tmp && !Dom.isBlock(tmp) && !Dom.isTag(tmp, 'br')) {
|
|
2721
2715
|
needFindNext = true;
|
|
2722
2716
|
last = tmp;
|
|
2723
2717
|
}
|
|
2724
2718
|
}while (needFindNext)
|
|
2719
|
+
return Dom.__wrapElements(tag, editor, first, last);
|
|
2720
|
+
}
|
|
2721
|
+
static __wrapElements(tag, editor, first, last) {
|
|
2725
2722
|
const wrapper = (0,_helpers_checker_index_js__WEBPACK_IMPORTED_MODULE_2__/* .isString */ .Kg)(tag) ? editor.createInside.element(tag) : tag;
|
|
2726
2723
|
if (first.parentNode) {
|
|
2727
2724
|
first.parentNode.insertBefore(wrapper, first);
|
|
@@ -2738,6 +2735,32 @@ function getPropertyDescriptor(obj, prop) {
|
|
|
2738
2735
|
editor.s.restore();
|
|
2739
2736
|
return wrapper;
|
|
2740
2737
|
}
|
|
2738
|
+
/**
|
|
2739
|
+
* Wrap all inline siblings
|
|
2740
|
+
*/ static wrapInline(current, tag, editor) {
|
|
2741
|
+
let tmp;
|
|
2742
|
+
let first = current;
|
|
2743
|
+
let last = current;
|
|
2744
|
+
editor.s.save();
|
|
2745
|
+
let needFindNext = false;
|
|
2746
|
+
do {
|
|
2747
|
+
needFindNext = false;
|
|
2748
|
+
tmp = first.previousSibling;
|
|
2749
|
+
if (tmp && !Dom.isBlock(tmp)) {
|
|
2750
|
+
needFindNext = true;
|
|
2751
|
+
first = tmp;
|
|
2752
|
+
}
|
|
2753
|
+
}while (needFindNext)
|
|
2754
|
+
do {
|
|
2755
|
+
needFindNext = false;
|
|
2756
|
+
tmp = last.nextSibling;
|
|
2757
|
+
if (tmp && !Dom.isBlock(tmp)) {
|
|
2758
|
+
needFindNext = true;
|
|
2759
|
+
last = tmp;
|
|
2760
|
+
}
|
|
2761
|
+
}while (needFindNext)
|
|
2762
|
+
return Dom.__wrapElements(tag, editor, first, last);
|
|
2763
|
+
}
|
|
2741
2764
|
/**
|
|
2742
2765
|
* Wrap node inside another node
|
|
2743
2766
|
*/ static wrap(current, tag, create) {
|
|
@@ -35431,7 +35454,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__/* .Config */ .T.prototype.indentMargin =
|
|
|
35431
35454
|
/* harmony import */ var _core_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(59230);
|
|
35432
35455
|
/* harmony import */ var _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50036);
|
|
35433
35456
|
/* harmony import */ var _core_global_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(29964);
|
|
35434
|
-
/* harmony import */ var
|
|
35457
|
+
/* harmony import */ var _core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(33179);
|
|
35435
35458
|
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10589);
|
|
35436
35459
|
/* harmony import */ var _helpers_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(73686);
|
|
35437
35460
|
/*!
|
|
@@ -35444,6 +35467,22 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__/* .Config */ .T.prototype.indentMargin =
|
|
|
35444
35467
|
|
|
35445
35468
|
|
|
35446
35469
|
|
|
35470
|
+
const applyIndentToBox = (processedElements, currentBox, editor, command)=>{
|
|
35471
|
+
if (!currentBox) {
|
|
35472
|
+
return;
|
|
35473
|
+
}
|
|
35474
|
+
if (processedElements.has(currentBox)) {
|
|
35475
|
+
return;
|
|
35476
|
+
}
|
|
35477
|
+
const key = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_5__/* .getKey */ .i)(editor.o.direction, currentBox);
|
|
35478
|
+
processedElements.add(currentBox);
|
|
35479
|
+
let value = currentBox.style[key] ? parseInt(currentBox.style[key], 10) : 0;
|
|
35480
|
+
value += editor.o.indentMargin * (command === 'outdent' ? -1 : 1);
|
|
35481
|
+
currentBox.style[key] = value > 0 ? value + 'px' : '';
|
|
35482
|
+
if (!(0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .CF)(currentBox, 'style')) {
|
|
35483
|
+
(0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .CF)(currentBox, 'style', null);
|
|
35484
|
+
}
|
|
35485
|
+
};
|
|
35447
35486
|
/**
|
|
35448
35487
|
* Indents the line containing the selection or insertion point.
|
|
35449
35488
|
*/ function indent(editor) {
|
|
@@ -35454,44 +35493,43 @@ _config_js__WEBPACK_IMPORTED_MODULE_2__/* .Config */ .T.prototype.indentMargin =
|
|
|
35454
35493
|
name: 'outdent',
|
|
35455
35494
|
group: 'indent'
|
|
35456
35495
|
});
|
|
35457
|
-
const
|
|
35458
|
-
const processedElements =
|
|
35496
|
+
const indentCommand = (command)=>{
|
|
35497
|
+
const processedElements = new Set();
|
|
35498
|
+
const { enter, enterBlock } = editor.o;
|
|
35499
|
+
const isBrMode = enter.toLowerCase() === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.BR;
|
|
35500
|
+
const current = editor.s.current();
|
|
35501
|
+
if (isBrMode && editor.s.isCollapsed()) {
|
|
35502
|
+
if (current) {
|
|
35503
|
+
const box = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.wrapNextInline(current, enterBlock, editor);
|
|
35504
|
+
applyIndentToBox(processedElements, box, editor, command);
|
|
35505
|
+
return false;
|
|
35506
|
+
}
|
|
35507
|
+
}
|
|
35459
35508
|
editor.s.eachSelection((current)=>{
|
|
35460
35509
|
editor.s.save();
|
|
35461
35510
|
let currentBox = current ? _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.up(current, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.isBlock, editor.editor) : false;
|
|
35462
|
-
const { enter } = editor.o;
|
|
35463
35511
|
if (!currentBox && current) {
|
|
35464
|
-
currentBox = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.wrapInline
|
|
35512
|
+
currentBox = (0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_3__/* .call */ .T1)(!isBrMode ? _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.wrapInline : _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__/* .Dom */ .J.wrapNextInline, current, !isBrMode ? enter.toLowerCase() : enterBlock, editor);
|
|
35465
35513
|
}
|
|
35466
35514
|
if (!currentBox) {
|
|
35467
35515
|
editor.s.restore();
|
|
35468
35516
|
return false;
|
|
35469
35517
|
}
|
|
35470
|
-
|
|
35471
|
-
if (currentBox && !alreadyIndented) {
|
|
35472
|
-
const key = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_5__/* .getKey */ .i)(editor.o.direction, currentBox);
|
|
35473
|
-
processedElements.push(currentBox);
|
|
35474
|
-
let value = currentBox.style[key] ? parseInt(currentBox.style[key], 10) : 0;
|
|
35475
|
-
value += editor.o.indentMargin * (command === 'outdent' ? -1 : 1);
|
|
35476
|
-
currentBox.style[key] = value > 0 ? value + 'px' : '';
|
|
35477
|
-
if (!(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.attr)(currentBox, 'style')) {
|
|
35478
|
-
(0,_core_helpers_index_js__WEBPACK_IMPORTED_MODULE_3__.attr)(currentBox, 'style', null);
|
|
35479
|
-
}
|
|
35480
|
-
}
|
|
35518
|
+
applyIndentToBox(processedElements, currentBox, editor, command);
|
|
35481
35519
|
editor.s.restore();
|
|
35482
35520
|
});
|
|
35483
35521
|
editor.synchronizeValues();
|
|
35484
35522
|
return false;
|
|
35485
35523
|
};
|
|
35486
35524
|
editor.registerCommand('indent', {
|
|
35487
|
-
exec:
|
|
35525
|
+
exec: indentCommand,
|
|
35488
35526
|
hotkeys: [
|
|
35489
35527
|
'ctrl+]',
|
|
35490
35528
|
'cmd+]'
|
|
35491
35529
|
]
|
|
35492
35530
|
});
|
|
35493
35531
|
editor.registerCommand('outdent', {
|
|
35494
|
-
exec:
|
|
35532
|
+
exec: indentCommand,
|
|
35495
35533
|
hotkeys: [
|
|
35496
35534
|
'ctrl+[',
|
|
35497
35535
|
'cmd+['
|