jodit-pro 4.9.19 → 4.9.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es2015/jodit.css +1 -1
- package/es2015/jodit.fat.min.js +5 -5
- package/es2015/jodit.js +207 -70
- package/es2015/jodit.min.js +4 -4
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2015/plugins/autocomplete/autocomplete.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/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/todo-list/todo-list.css +1 -1
- package/es2015/plugins/todo-list/todo-list.js +1 -1
- package/es2015/plugins/todo-list/todo-list.min.js +1 -1
- package/es2015/plugins/translate/translate.css +1 -1
- package/es2015/plugins/translate/translate.js +1 -1
- package/es2015/plugins/translate/translate.min.js +1 -1
- package/es2015/plugins/tune-block/tune-block.css +1 -1
- package/es2015/plugins/tune-block/tune-block.js +1 -1
- package/es2015/plugins/tune-block/tune-block.min.js +1 -1
- package/es2018/jodit.fat.min.js +5 -5
- package/es2018/jodit.min.js +4 -4
- package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
- package/es2018/plugins/backup/backup.min.js +1 -1
- package/es2018/plugins/button-generator/button-generator.min.js +1 -1
- package/es2018/plugins/change-case/change-case.min.js +1 -1
- package/es2018/plugins/color-picker/color-picker.min.js +1 -1
- package/es2018/plugins/emoji/emoji.min.js +1 -1
- package/es2018/plugins/export-docs/export-docs.min.js +1 -1
- package/es2018/plugins/finder/finder.min.js +1 -1
- package/es2018/plugins/google-maps/google-maps.min.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/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/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 +5 -5
- package/es2021/jodit.js +207 -70
- package/es2021/jodit.min.js +4 -4
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2021/plugins/autocomplete/autocomplete.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/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/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 +5 -5
- package/es2021.en/jodit.js +207 -70
- package/es2021.en/jodit.min.js +4 -4
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
- package/es2021.en/plugins/autocomplete/autocomplete.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/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/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 +216 -70
- 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.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/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/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/es2015/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.9.
|
|
4
|
+
* Version: v4.9.22
|
|
5
5
|
* Url: https://xdsoft.net/jodit/pro/
|
|
6
6
|
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
7
|
*/
|
|
@@ -4906,7 +4906,96 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
4906
4906
|
|
|
4907
4907
|
let ConfigPrototype = {};
|
|
4908
4908
|
/**
|
|
4909
|
-
* Default Editor's Configuration
|
|
4909
|
+
* Default Editor's Configuration.
|
|
4910
|
+
*
|
|
4911
|
+
* This class holds all default option values for the Jodit editor.
|
|
4912
|
+
* It uses a **private constructor** and a **lazy singleton** pattern — the single instance
|
|
4913
|
+
* is created on the first access to {@link Config.defaultOptions} (also available as `Jodit.defaultOptions`).
|
|
4914
|
+
*
|
|
4915
|
+
* ## How options are resolved
|
|
4916
|
+
*
|
|
4917
|
+
* When you create an editor with `Jodit.make('#editor', userOptions)`, the library
|
|
4918
|
+
* calls {@link ConfigProto}(userOptions, Config.defaultOptions). `ConfigProto` does
|
|
4919
|
+
* **not** deep-clone the defaults. Instead it creates a new object whose JavaScript
|
|
4920
|
+
* prototype is `Config.defaultOptions`:
|
|
4921
|
+
*
|
|
4922
|
+
* ```
|
|
4923
|
+
* userOptions ──[[Prototype]]──► Config.defaultOptions
|
|
4924
|
+
* ```
|
|
4925
|
+
*
|
|
4926
|
+
* Any key present in `userOptions` shadows the default;
|
|
4927
|
+
* any key **not** present falls through to `Config.defaultOptions` via the prototype chain.
|
|
4928
|
+
* Nested plain objects are recursively prototyped in the same way, so partial overrides
|
|
4929
|
+
* of nested options work automatically:
|
|
4930
|
+
*
|
|
4931
|
+
* ```js
|
|
4932
|
+
* // Only override `dialogWidth`; all other `image.*` defaults are still available
|
|
4933
|
+
* Jodit.make('#editor', {
|
|
4934
|
+
* image: { dialogWidth: 500 }
|
|
4935
|
+
* });
|
|
4936
|
+
* ```
|
|
4937
|
+
*
|
|
4938
|
+
* ## How plugins extend the config
|
|
4939
|
+
*
|
|
4940
|
+
* Each plugin adds its own defaults by assigning to `Config.prototype` and augmenting
|
|
4941
|
+
* the TypeScript type with `declare module`:
|
|
4942
|
+
*
|
|
4943
|
+
* ```ts
|
|
4944
|
+
* // 1. Type augmentation (compile-time)
|
|
4945
|
+
* declare module 'jodit/config' {
|
|
4946
|
+
* interface Config {
|
|
4947
|
+
* toolbarSticky: boolean;
|
|
4948
|
+
* }
|
|
4949
|
+
* }
|
|
4950
|
+
*
|
|
4951
|
+
* // 2. Runtime default
|
|
4952
|
+
* Config.prototype.toolbarSticky = true;
|
|
4953
|
+
* ```
|
|
4954
|
+
*
|
|
4955
|
+
* Because the constructor runs `Object.assign(this, ConfigPrototype)` (where
|
|
4956
|
+
* `ConfigPrototype` is captured as `Config.prototype` after the class definition),
|
|
4957
|
+
* all prototype-level values — including those added by plugins — are materialized
|
|
4958
|
+
* as own properties on the singleton. This means `Config.defaultOptions` always
|
|
4959
|
+
* contains every registered option as an own, enumerable property.
|
|
4960
|
+
*
|
|
4961
|
+
* ## Changing global defaults
|
|
4962
|
+
*
|
|
4963
|
+
* You can modify `Jodit.defaultOptions` **before** creating editors to change
|
|
4964
|
+
* defaults globally:
|
|
4965
|
+
*
|
|
4966
|
+
* ```js
|
|
4967
|
+
* Jodit.defaultOptions.language = 'de';
|
|
4968
|
+
* Jodit.defaultOptions.theme = 'dark';
|
|
4969
|
+
*
|
|
4970
|
+
* // Both editors inherit the new defaults
|
|
4971
|
+
* Jodit.make('#editor1');
|
|
4972
|
+
* Jodit.make('#editor2');
|
|
4973
|
+
* ```
|
|
4974
|
+
*
|
|
4975
|
+
* ## `Jodit.atom` — preventing deep merge
|
|
4976
|
+
*
|
|
4977
|
+
* By default, `ConfigProto` deep-merges nested plain objects and arrays.
|
|
4978
|
+
* Wrap a value with `Jodit.atom(value)` to make it **atomic** — it will completely
|
|
4979
|
+
* replace the default instead of being merged:
|
|
4980
|
+
*
|
|
4981
|
+
* ```js
|
|
4982
|
+
* Jodit.make('#editor', {
|
|
4983
|
+
* controls: {
|
|
4984
|
+
* fontsize: {
|
|
4985
|
+
* // Replace the entire list rather than merging with the default one
|
|
4986
|
+
* list: Jodit.atom([8, 9, 10])
|
|
4987
|
+
* }
|
|
4988
|
+
* }
|
|
4989
|
+
* });
|
|
4990
|
+
* ```
|
|
4991
|
+
*
|
|
4992
|
+
* `Jodit.atom` calls {@link markAsAtomic}, which sets a non-enumerable
|
|
4993
|
+
* `isAtom` flag on the object. `ConfigProto` checks this flag and skips
|
|
4994
|
+
* recursive merging when it is present. Note: top-level arrays (depth 0)
|
|
4995
|
+
* are always treated as atomic — they replace rather than merge.
|
|
4996
|
+
*
|
|
4997
|
+
* @see {@link ConfigProto} for the full merge algorithm
|
|
4998
|
+
* @see {@link markAsAtomic} / {@link isAtom} for the atom marker implementation
|
|
4910
4999
|
*/ class Config {
|
|
4911
5000
|
static get defaultOptions() {
|
|
4912
5001
|
if (!Config.__defaultOptions) {
|
|
@@ -4916,31 +5005,32 @@ let ConfigPrototype = {};
|
|
|
4916
5005
|
}
|
|
4917
5006
|
constructor(){
|
|
4918
5007
|
/**
|
|
4919
|
-
*
|
|
5008
|
+
* When enabled, the editor caches the results of expensive computations (e.g. toolbar rebuilds)
|
|
5009
|
+
* to improve performance. Disable for debugging or when options change frequently at runtime.
|
|
4920
5010
|
*/ this.cache = true;
|
|
4921
5011
|
/**
|
|
4922
5012
|
* Timeout of all asynchronous methods
|
|
4923
5013
|
*/ this.defaultTimeout = 100;
|
|
4924
|
-
|
|
5014
|
+
/**
|
|
5015
|
+
* Prefix used for CSS class names and local-storage keys to avoid collisions
|
|
5016
|
+
* when multiple editor instances or applications share the same page.
|
|
5017
|
+
*/ this.namespace = '';
|
|
4925
5018
|
/**
|
|
4926
5019
|
* Editor loads completely without plugins. Useful when debugging your own plugin.
|
|
4927
5020
|
*/ this.safeMode = false;
|
|
4928
5021
|
/**
|
|
4929
5022
|
* Editor's width
|
|
4930
5023
|
*
|
|
4931
|
-
* @example
|
|
4932
5024
|
* ```javascript
|
|
4933
5025
|
* Jodit.make('.editor', {
|
|
4934
5026
|
* width: '100%',
|
|
4935
5027
|
* })
|
|
4936
5028
|
* ```
|
|
4937
|
-
* @example
|
|
4938
5029
|
* ```javascript
|
|
4939
5030
|
* Jodit.make('.editor', {
|
|
4940
5031
|
* width: 600, // equivalent for '600px'
|
|
4941
5032
|
* })
|
|
4942
5033
|
* ```
|
|
4943
|
-
* @example
|
|
4944
5034
|
* ```javascript
|
|
4945
5035
|
* Jodit.make('.editor', {
|
|
4946
5036
|
* width: 'auto', // autosize
|
|
@@ -4950,19 +5040,16 @@ let ConfigPrototype = {};
|
|
|
4950
5040
|
/**
|
|
4951
5041
|
* Editor's height
|
|
4952
5042
|
*
|
|
4953
|
-
* @example
|
|
4954
5043
|
* ```javascript
|
|
4955
5044
|
* Jodit.make('.editor', {
|
|
4956
5045
|
* height: '100%',
|
|
4957
5046
|
* })
|
|
4958
5047
|
* ```
|
|
4959
|
-
* @example
|
|
4960
5048
|
* ```javascript
|
|
4961
5049
|
* Jodit.make('.editor', {
|
|
4962
5050
|
* height: 600, // equivalent for '600px'
|
|
4963
5051
|
* })
|
|
4964
5052
|
* ```
|
|
4965
|
-
* @example
|
|
4966
5053
|
* ```javascript
|
|
4967
5054
|
* Jodit.make('.editor', {
|
|
4968
5055
|
* height: 'auto', // default - autosize
|
|
@@ -4999,7 +5086,32 @@ let ConfigPrototype = {};
|
|
|
4999
5086
|
* });
|
|
5000
5087
|
* ```
|
|
5001
5088
|
*/ this.preset = 'custom';
|
|
5002
|
-
|
|
5089
|
+
/**
|
|
5090
|
+
* Dictionary of named configuration presets. Each key is a preset name and the value
|
|
5091
|
+
* is a partial options object that will be merged into the editor config when
|
|
5092
|
+
* {@link Config.preset} matches the key.
|
|
5093
|
+
*
|
|
5094
|
+
* ```javascript
|
|
5095
|
+
* // Use a built-in preset
|
|
5096
|
+
* Jodit.make('#editor', {
|
|
5097
|
+
* preset: 'inline'
|
|
5098
|
+
* });
|
|
5099
|
+
* ```
|
|
5100
|
+
*
|
|
5101
|
+
* ```javascript
|
|
5102
|
+
* // Define and use a custom preset
|
|
5103
|
+
* Jodit.defaultOptions.presets.myCompact = {
|
|
5104
|
+
* toolbarButtonSize: 'small',
|
|
5105
|
+
* showCharsCounter: false,
|
|
5106
|
+
* showWordsCounter: false,
|
|
5107
|
+
* showXPathInStatusbar: false
|
|
5108
|
+
* };
|
|
5109
|
+
*
|
|
5110
|
+
* Jodit.make('#editor', {
|
|
5111
|
+
* preset: 'myCompact'
|
|
5112
|
+
* });
|
|
5113
|
+
* ```
|
|
5114
|
+
*/ this.presets = {
|
|
5003
5115
|
inline: {
|
|
5004
5116
|
inline: true,
|
|
5005
5117
|
toolbar: false,
|
|
@@ -5011,7 +5123,10 @@ let ConfigPrototype = {};
|
|
|
5011
5123
|
showPlaceholder: false
|
|
5012
5124
|
}
|
|
5013
5125
|
};
|
|
5014
|
-
|
|
5126
|
+
/**
|
|
5127
|
+
* The Document object the editor operates within. Defaults to the current `document`.
|
|
5128
|
+
* Override when the editor is created inside an iframe or a different browsing context.
|
|
5129
|
+
*/ this.ownerDocument = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.globalDocument;
|
|
5015
5130
|
/**
|
|
5016
5131
|
* Allows you to specify the window in which the editor will be created. Default - window
|
|
5017
5132
|
* This is necessary if you are creating the editor inside an iframe but the code is running in the parent window
|
|
@@ -5042,7 +5157,9 @@ let ConfigPrototype = {};
|
|
|
5042
5157
|
* ```
|
|
5043
5158
|
*/ this.shadowRoot = null;
|
|
5044
5159
|
/**
|
|
5045
|
-
* z-index
|
|
5160
|
+
* Base CSS `z-index` for the editor UI (toolbar, popups, dialogs).
|
|
5161
|
+
* Set to a higher value when other page elements overlap the editor.
|
|
5162
|
+
* `0` means no explicit z-index is applied.
|
|
5046
5163
|
*/ this.zIndex = 0;
|
|
5047
5164
|
/**
|
|
5048
5165
|
* Change the read-only state of the editor
|
|
@@ -5078,7 +5195,6 @@ let ConfigPrototype = {};
|
|
|
5078
5195
|
/**
|
|
5079
5196
|
* Size of icons in the toolbar (can be "small", "middle", "large")
|
|
5080
5197
|
*
|
|
5081
|
-
* @example
|
|
5082
5198
|
* ```javascript
|
|
5083
5199
|
* const editor = Jodit.make(".dark_editor", {
|
|
5084
5200
|
* toolbarButtonSize: "small"
|
|
@@ -5089,11 +5205,13 @@ let ConfigPrototype = {};
|
|
|
5089
5205
|
* Allow navigation in the toolbar of the editor by Tab key
|
|
5090
5206
|
*/ this.allowTabNavigation = false;
|
|
5091
5207
|
/**
|
|
5092
|
-
*
|
|
5208
|
+
* When enabled, the editor renders without its own container chrome (toolbar, borders, statusbar).
|
|
5209
|
+
* The editable area becomes the element itself. Typically combined with
|
|
5210
|
+
* `toolbarInline: true` so a floating toolbar appears on selection.
|
|
5093
5211
|
*/ this.inline = false;
|
|
5094
5212
|
/**
|
|
5095
5213
|
* Theme (can be "dark")
|
|
5096
|
-
*
|
|
5214
|
+
*
|
|
5097
5215
|
* ```javascript
|
|
5098
5216
|
* const editor = Jodit.make(".dark_editor", {
|
|
5099
5217
|
* theme: "dark"
|
|
@@ -5106,10 +5224,9 @@ let ConfigPrototype = {};
|
|
|
5106
5224
|
/**
|
|
5107
5225
|
* Class name that can be appended to the editable area
|
|
5108
5226
|
*
|
|
5109
|
-
* @see
|
|
5110
|
-
* @see
|
|
5227
|
+
* @see {@link Config.iframeCSSLinks}
|
|
5228
|
+
* @see {@link Config.iframeStyle}
|
|
5111
5229
|
*
|
|
5112
|
-
* @example
|
|
5113
5230
|
* ```javascript
|
|
5114
5231
|
* Jodit.make('#editor', {
|
|
5115
5232
|
* editorClassName: 'some_my_class'
|
|
@@ -5125,7 +5242,7 @@ let ConfigPrototype = {};
|
|
|
5125
5242
|
*/ this.editorClassName = false;
|
|
5126
5243
|
/**
|
|
5127
5244
|
* Class name that can be appended to the main editor container
|
|
5128
|
-
*
|
|
5245
|
+
*
|
|
5129
5246
|
* ```javascript
|
|
5130
5247
|
* const jodit = Jodit.make('#editor', {
|
|
5131
5248
|
* className: 'some_my_class'
|
|
@@ -5145,7 +5262,7 @@ let ConfigPrototype = {};
|
|
|
5145
5262
|
/**
|
|
5146
5263
|
* The internal styles of the editable area. They are intended to change
|
|
5147
5264
|
* not the appearance of the editor, but to change the appearance of the content.
|
|
5148
|
-
*
|
|
5265
|
+
*
|
|
5149
5266
|
* ```javascript
|
|
5150
5267
|
* Jodit.make('#editor', {
|
|
5151
5268
|
* style: {
|
|
@@ -5156,13 +5273,14 @@ let ConfigPrototype = {};
|
|
|
5156
5273
|
* ```
|
|
5157
5274
|
*/ this.style = false;
|
|
5158
5275
|
/**
|
|
5276
|
+
* Inline CSS styles applied to the outer editor container element.
|
|
5277
|
+
* Use this to style the editor wrapper (borders, background, etc.) without affecting content.
|
|
5159
5278
|
*
|
|
5160
|
-
* @example
|
|
5161
5279
|
* ```javascript
|
|
5162
5280
|
* Jodit.make('#editor', {
|
|
5163
|
-
*
|
|
5164
|
-
*
|
|
5165
|
-
*
|
|
5281
|
+
* containerStyle: {
|
|
5282
|
+
* border: '1px solid #ccc',
|
|
5283
|
+
* background: '#f9f9f9'
|
|
5166
5284
|
* }
|
|
5167
5285
|
* });
|
|
5168
5286
|
* ```
|
|
@@ -5171,7 +5289,6 @@ let ConfigPrototype = {};
|
|
|
5171
5289
|
* Dictionary of variable values in css, a complete list can be found here
|
|
5172
5290
|
* https://github.com/xdan/jodit/blob/main/src/styles/variables.less#L25
|
|
5173
5291
|
*
|
|
5174
|
-
* @example
|
|
5175
5292
|
* ```js
|
|
5176
5293
|
* const editor = Jodit.make('#editor', {
|
|
5177
5294
|
* styleValues: {
|
|
@@ -5183,9 +5300,9 @@ let ConfigPrototype = {};
|
|
|
5183
5300
|
* ```
|
|
5184
5301
|
*/ this.styleValues = {};
|
|
5185
5302
|
/**
|
|
5186
|
-
*
|
|
5303
|
+
* When enabled, the editor dispatches a native `change` event on the original
|
|
5304
|
+
* `<textarea>` element whenever the content changes, so standard DOM listeners work.
|
|
5187
5305
|
*
|
|
5188
|
-
* @example
|
|
5189
5306
|
* ```javascript
|
|
5190
5307
|
* const editor = Jodit.make('#editor');
|
|
5191
5308
|
* document.getElementById('editor').addEventListener('change', function () {
|
|
@@ -5199,7 +5316,6 @@ let ConfigPrototype = {};
|
|
|
5199
5316
|
* the page element direction. 'ltr' – Indicates a Left-To-Right text direction (like in English).
|
|
5200
5317
|
* 'rtl' – Indicates a Right-To-Left text direction (like in Arabic).
|
|
5201
5318
|
*
|
|
5202
|
-
* @example
|
|
5203
5319
|
* ```javascript
|
|
5204
5320
|
* Jodit.make('.editor', {
|
|
5205
5321
|
* direction: 'rtl'
|
|
@@ -5211,7 +5327,6 @@ let ConfigPrototype = {};
|
|
|
5211
5327
|
* (navigator.language && navigator.language.substr(0, 2)) ||
|
|
5212
5328
|
* (navigator.browserLanguage && navigator.browserLanguage.substr(0, 2)) || 'en'
|
|
5213
5329
|
*
|
|
5214
|
-
* @example
|
|
5215
5330
|
* ```html
|
|
5216
5331
|
* <!-- include in you page lang file -->
|
|
5217
5332
|
* <script src="jodit/lang/de.js"></script>
|
|
@@ -5225,7 +5340,6 @@ let ConfigPrototype = {};
|
|
|
5225
5340
|
/**
|
|
5226
5341
|
* if true all Lang.i18n(key) return `{key}`
|
|
5227
5342
|
*
|
|
5228
|
-
* @example
|
|
5229
5343
|
* ```html
|
|
5230
5344
|
* <script>
|
|
5231
5345
|
* var editor = Jodit.make('.editor', {
|
|
@@ -5239,7 +5353,6 @@ let ConfigPrototype = {};
|
|
|
5239
5353
|
/**
|
|
5240
5354
|
* Collection of language pack data `{en: {'Type something': 'Type something', ...}}`
|
|
5241
5355
|
*
|
|
5242
|
-
* @example
|
|
5243
5356
|
* ```javascript
|
|
5244
5357
|
* const editor = Jodit.make('#editor', {
|
|
5245
5358
|
* language: 'ru',
|
|
@@ -5271,11 +5384,11 @@ let ConfigPrototype = {};
|
|
|
5271
5384
|
* Delay before show tooltip
|
|
5272
5385
|
*/ this.showTooltipDelay = 200;
|
|
5273
5386
|
/**
|
|
5274
|
-
* Instead of
|
|
5387
|
+
* Instead of creating a custom tooltip, use the browser's native title tooltips
|
|
5275
5388
|
*/ this.useNativeTooltip = false;
|
|
5276
5389
|
/**
|
|
5277
|
-
*
|
|
5278
|
-
*
|
|
5390
|
+
* How pasted content is inserted into the editor by default.
|
|
5391
|
+
* Possible values: `insert_as_html`, `insert_as_text`, `insert_only_text`, `insert_clear_html`.
|
|
5279
5392
|
*/ this.defaultActionOnPaste = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.INSERT_AS_HTML;
|
|
5280
5393
|
// TODO
|
|
5281
5394
|
// autosave: false, // false or url
|
|
@@ -5288,7 +5401,6 @@ let ConfigPrototype = {};
|
|
|
5288
5401
|
/**
|
|
5289
5402
|
* When this option is enabled, the editor's content will be placed in an iframe and isolated from the rest of the page.
|
|
5290
5403
|
*
|
|
5291
|
-
* @example
|
|
5292
5404
|
* ```javascript
|
|
5293
5405
|
* Jodit.make('#editor', {
|
|
5294
5406
|
* iframe: true,
|
|
@@ -5300,7 +5412,7 @@ let ConfigPrototype = {};
|
|
|
5300
5412
|
/**
|
|
5301
5413
|
* Allow editing the entire HTML document(html, head)
|
|
5302
5414
|
* \> Works together with the iframe option.
|
|
5303
|
-
*
|
|
5415
|
+
*
|
|
5304
5416
|
* ```js
|
|
5305
5417
|
* const editor = Jodit.make('#editor', {
|
|
5306
5418
|
* iframe: true,
|
|
@@ -5319,7 +5431,7 @@ let ConfigPrototype = {};
|
|
|
5319
5431
|
/**
|
|
5320
5432
|
* Jodit.MODE_WYSIWYG The HTML editor allows you to write like MSWord,
|
|
5321
5433
|
* Jodit.MODE_SOURCE syntax highlighting source editor
|
|
5322
|
-
*
|
|
5434
|
+
*
|
|
5323
5435
|
* ```javascript
|
|
5324
5436
|
* var editor = Jodit.make('#editor', {
|
|
5325
5437
|
* defaultMode: Jodit.MODE_SPLIT
|
|
@@ -5328,11 +5440,11 @@ let ConfigPrototype = {};
|
|
|
5328
5440
|
* ```
|
|
5329
5441
|
*/ this.defaultMode = _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.MODE_WYSIWYG;
|
|
5330
5442
|
/**
|
|
5331
|
-
*
|
|
5443
|
+
* When enabled, the editor displays both the WYSIWYG view and the source-code view side by side.
|
|
5332
5444
|
*/ this.useSplitMode = false;
|
|
5333
5445
|
/**
|
|
5334
5446
|
* The colors in HEX representation to select a color for the background and for the text in colorpicker
|
|
5335
|
-
*
|
|
5447
|
+
*
|
|
5336
5448
|
* ```javascript
|
|
5337
5449
|
* Jodit.make('#editor', {
|
|
5338
5450
|
* colors: ['#ff0000', '#00ff00', '#0000ff']
|
|
@@ -5428,7 +5540,7 @@ let ConfigPrototype = {};
|
|
|
5428
5540
|
};
|
|
5429
5541
|
/**
|
|
5430
5542
|
* The default tab color picker
|
|
5431
|
-
*
|
|
5543
|
+
*
|
|
5432
5544
|
* ```javascript
|
|
5433
5545
|
* Jodit.make('#editor2', {
|
|
5434
5546
|
* colorPickerDefaultTab: 'color'
|
|
@@ -5436,11 +5548,11 @@ let ConfigPrototype = {};
|
|
|
5436
5548
|
* ```
|
|
5437
5549
|
*/ this.colorPickerDefaultTab = 'background';
|
|
5438
5550
|
/**
|
|
5439
|
-
*
|
|
5551
|
+
* Default width (in pixels) applied to images inserted into the editor
|
|
5440
5552
|
*/ this.imageDefaultWidth = 300;
|
|
5441
5553
|
/**
|
|
5442
5554
|
* Do not display these buttons that are on the list
|
|
5443
|
-
*
|
|
5555
|
+
*
|
|
5444
5556
|
* ```javascript
|
|
5445
5557
|
* Jodit.make('#editor2', {
|
|
5446
5558
|
* removeButtons: ['hr', 'source']
|
|
@@ -5449,7 +5561,7 @@ let ConfigPrototype = {};
|
|
|
5449
5561
|
*/ this.removeButtons = [];
|
|
5450
5562
|
/**
|
|
5451
5563
|
* Do not init these plugins
|
|
5452
|
-
*
|
|
5564
|
+
*
|
|
5453
5565
|
* ```typescript
|
|
5454
5566
|
* var editor = Jodit.make('.editor', {
|
|
5455
5567
|
* disablePlugins: 'table,iframe'
|
|
@@ -5462,7 +5574,7 @@ let ConfigPrototype = {};
|
|
|
5462
5574
|
*/ this.disablePlugins = [];
|
|
5463
5575
|
/**
|
|
5464
5576
|
* Init and download extra plugins
|
|
5465
|
-
*
|
|
5577
|
+
*
|
|
5466
5578
|
* ```typescript
|
|
5467
5579
|
* var editor = Jodit.make('.editor', {
|
|
5468
5580
|
* extraPlugins: ['emoji']
|
|
@@ -5471,14 +5583,13 @@ let ConfigPrototype = {};
|
|
|
5471
5583
|
* It will try load %SCRIPT_PATH%/plugins/emoji/emoji.js and after load will try init it
|
|
5472
5584
|
*/ this.extraPlugins = [];
|
|
5473
5585
|
/**
|
|
5474
|
-
*
|
|
5586
|
+
* Additional buttons appended to the {@link Config.buttons} list
|
|
5475
5587
|
*/ this.extraButtons = [];
|
|
5476
5588
|
/**
|
|
5477
5589
|
* By default, you can only install an icon from the Jodit suite.
|
|
5478
5590
|
* You can add your icon to the set using the `Jodit.modules.Icon.set (name, svg Code)` method.
|
|
5479
5591
|
* But for a declarative declaration, you can use this option.
|
|
5480
5592
|
*
|
|
5481
|
-
* @example
|
|
5482
5593
|
* ```js
|
|
5483
5594
|
* Jodit.modules.Icon.set('someIcon', '<svg><path.../></svg>');
|
|
5484
5595
|
* const editor = Jodit.make({
|
|
@@ -5487,8 +5598,9 @@ let ConfigPrototype = {};
|
|
|
5487
5598
|
* icon: 'someIcon'
|
|
5488
5599
|
* }]
|
|
5489
5600
|
* });
|
|
5601
|
+
* ```
|
|
5490
5602
|
*
|
|
5491
|
-
*
|
|
5603
|
+
* ```js
|
|
5492
5604
|
* const editor = Jodit.make({
|
|
5493
5605
|
* extraIcons: {
|
|
5494
5606
|
* someIcon: '<svg><path.../></svg>'
|
|
@@ -5499,7 +5611,7 @@ let ConfigPrototype = {};
|
|
|
5499
5611
|
* }]
|
|
5500
5612
|
* });
|
|
5501
5613
|
* ```
|
|
5502
|
-
*
|
|
5614
|
+
*
|
|
5503
5615
|
* ```js
|
|
5504
5616
|
* const editor = Jodit.make({
|
|
5505
5617
|
* extraButtons: [{
|
|
@@ -5511,7 +5623,7 @@ let ConfigPrototype = {};
|
|
|
5511
5623
|
*/ this.extraIcons = {};
|
|
5512
5624
|
/**
|
|
5513
5625
|
* Default attributes for created inside editor elements
|
|
5514
|
-
*
|
|
5626
|
+
*
|
|
5515
5627
|
* ```js
|
|
5516
5628
|
* const editor2 = Jodit.make('#editor', {
|
|
5517
5629
|
* createAttributes: {
|
|
@@ -5531,7 +5643,7 @@ let ConfigPrototype = {};
|
|
|
5531
5643
|
* expect(ul.className).equals('ui-test');
|
|
5532
5644
|
* ```
|
|
5533
5645
|
* Or JSX in React
|
|
5534
|
-
*
|
|
5646
|
+
*
|
|
5535
5647
|
* ```jsx
|
|
5536
5648
|
* import React, {useState, useRef} from 'react';
|
|
5537
5649
|
* import JoditEditor from "jodit-react";
|
|
@@ -5563,7 +5675,7 @@ let ConfigPrototype = {};
|
|
|
5563
5675
|
/**
|
|
5564
5676
|
* The list of buttons that appear in the editor's toolbar on large places (≥ options.sizeLG).
|
|
5565
5677
|
* Note - this is not the width of the device, the width of the editor
|
|
5566
|
-
*
|
|
5678
|
+
*
|
|
5567
5679
|
* ```javascript
|
|
5568
5680
|
* Jodit.make('#editor', {
|
|
5569
5681
|
* buttons: ['bold', 'italic', 'source'],
|
|
@@ -5571,7 +5683,7 @@ let ConfigPrototype = {};
|
|
|
5571
5683
|
* buttonsXS: ['bold', 'fullsize'],
|
|
5572
5684
|
* });
|
|
5573
5685
|
* ```
|
|
5574
|
-
*
|
|
5686
|
+
*
|
|
5575
5687
|
* ```javascript
|
|
5576
5688
|
* Jodit.make('#editor2', {
|
|
5577
5689
|
* buttons: [{
|
|
@@ -5595,7 +5707,7 @@ let ConfigPrototype = {};
|
|
|
5595
5707
|
* }]
|
|
5596
5708
|
* });
|
|
5597
5709
|
* ```
|
|
5598
|
-
*
|
|
5710
|
+
*
|
|
5599
5711
|
* ```javascript
|
|
5600
5712
|
* Jodit.make('#editor2', {
|
|
5601
5713
|
* buttons: Jodit.defaultOptions.buttons.concat([{
|
|
@@ -5716,7 +5828,7 @@ let ConfigPrototype = {};
|
|
|
5716
5828
|
* ```
|
|
5717
5829
|
*/ this.events = {};
|
|
5718
5830
|
/**
|
|
5719
|
-
* Buttons in
|
|
5831
|
+
* Buttons in toolbar without SVG - only texts
|
|
5720
5832
|
*/ this.textIcons = false;
|
|
5721
5833
|
/**
|
|
5722
5834
|
* Element for dialog container
|
|
@@ -12583,7 +12695,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
12583
12695
|
/* harmony export */ getItem: function() { return /* binding */ getItem; }
|
|
12584
12696
|
/* harmony export */ });
|
|
12585
12697
|
/* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2748);
|
|
12586
|
-
|
|
12698
|
+
/*!
|
|
12699
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
12700
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
12701
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
12702
|
+
*/
|
|
12587
12703
|
/**
|
|
12588
12704
|
* @private
|
|
12589
12705
|
*/ const getItem = (node, root, tag = 'a')=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.closest(node, (elm)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isTag(elm, tag), root);
|
|
@@ -25098,12 +25214,12 @@ function findCorrectCurrentNode(node, range, rightMode, isCollapsed, checkChild,
|
|
|
25098
25214
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
25099
25215
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
25100
25216
|
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
25101
|
-
*/
|
|
25102
|
-
/**
|
|
25217
|
+
*/ /**
|
|
25103
25218
|
* [[include:core/decorators/autobind/README.md]]
|
|
25104
25219
|
* @packageDocumentation
|
|
25105
25220
|
* @module decorators/autobind
|
|
25106
|
-
*/
|
|
25221
|
+
*/
|
|
25222
|
+
/**
|
|
25107
25223
|
* Decorator that automatically binds a method to its class instance.
|
|
25108
25224
|
* This is useful when passing methods as callbacks to preserve the correct `this` context.
|
|
25109
25225
|
*
|
|
@@ -25889,9 +26005,10 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.toolbarStickyOffset = 0
|
|
|
25889
26005
|
/* harmony import */ var _decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55153);
|
|
25890
26006
|
/* harmony import */ var _dom_dom_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2748);
|
|
25891
26007
|
/* harmony import */ var _helpers_checker_is_string_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(70799);
|
|
25892
|
-
/* harmony import */ var
|
|
25893
|
-
/* harmony import */ var
|
|
25894
|
-
/* harmony import */ var
|
|
26008
|
+
/* harmony import */ var _helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29960);
|
|
26009
|
+
/* harmony import */ var _traits_elms_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(14316);
|
|
26010
|
+
/* harmony import */ var _traits_mods_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(34176);
|
|
26011
|
+
/* harmony import */ var _icon_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12153);
|
|
25895
26012
|
/*!
|
|
25896
26013
|
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
25897
26014
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
@@ -25910,7 +26027,11 @@ var UIElement_1;
|
|
|
25910
26027
|
|
|
25911
26028
|
|
|
25912
26029
|
|
|
26030
|
+
|
|
25913
26031
|
let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPACK_IMPORTED_MODULE_0__.ViewComponent {
|
|
26032
|
+
getRole() {
|
|
26033
|
+
return '';
|
|
26034
|
+
}
|
|
25914
26035
|
get parentElement() {
|
|
25915
26036
|
return this.__parentElement;
|
|
25916
26037
|
}
|
|
@@ -25999,7 +26120,7 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
|
|
|
25999
26120
|
return result;
|
|
26000
26121
|
}
|
|
26001
26122
|
parseTemplate(result) {
|
|
26002
|
-
return this.j.c.fromHTML(result.replace(/\*([^*]+?)\*/g, (_, name)=>
|
|
26123
|
+
return this.j.c.fromHTML(result.replace(/\*([^*]+?)\*/g, (_, name)=>_icon_js__WEBPACK_IMPORTED_MODULE_7__.Icon.get(name) || '').replace(/&_/g, this.componentName + '_').replace(/~([^~]+?)~/g, (_, s)=>this.i18n(s)));
|
|
26003
26124
|
}
|
|
26004
26125
|
/** @override */ destruct() {
|
|
26005
26126
|
_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.safeRemove(this.container);
|
|
@@ -26012,6 +26133,8 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
|
|
|
26012
26133
|
this.__parentElement = null;
|
|
26013
26134
|
this.mods = {};
|
|
26014
26135
|
this.container = this.createContainer(options);
|
|
26136
|
+
const role = this.getRole();
|
|
26137
|
+
role && (0,_helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_4__.attr)(this.container, 'role', role);
|
|
26015
26138
|
Object.defineProperty(this.container, 'component', {
|
|
26016
26139
|
value: this,
|
|
26017
26140
|
configurable: true
|
|
@@ -26019,7 +26142,7 @@ let UIElement = UIElement_1 = class UIElement extends _component_index_js__WEBPA
|
|
|
26019
26142
|
}
|
|
26020
26143
|
};
|
|
26021
26144
|
UIElement = UIElement_1 = __decorate([
|
|
26022
|
-
(0,_decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__.derive)(
|
|
26145
|
+
(0,_decorators_derive_derive_js__WEBPACK_IMPORTED_MODULE_1__.derive)(_traits_mods_js__WEBPACK_IMPORTED_MODULE_6__.Mods, _traits_elms_js__WEBPACK_IMPORTED_MODULE_5__.Elms)
|
|
26023
26146
|
], UIElement);
|
|
26024
26147
|
|
|
26025
26148
|
|
|
@@ -30068,7 +30191,13 @@ __decorate([
|
|
|
30068
30191
|
/* harmony export */ eventEmitter: function() { return /* binding */ eventEmitter; }
|
|
30069
30192
|
/* harmony export */ });
|
|
30070
30193
|
/* harmony import */ var _event_emitter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(98220);
|
|
30071
|
-
|
|
30194
|
+
/*!
|
|
30195
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
30196
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
30197
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
30198
|
+
*/ /**
|
|
30199
|
+
* @module event-emitter
|
|
30200
|
+
*/
|
|
30072
30201
|
const eventEmitter = new _event_emitter_js__WEBPACK_IMPORTED_MODULE_0__.EventEmitter();
|
|
30073
30202
|
|
|
30074
30203
|
|
|
@@ -33523,6 +33652,9 @@ let UIGroup = UIGroup_1 = class UIGroup extends _element_js__WEBPACK_IMPORTED_MO
|
|
|
33523
33652
|
className() {
|
|
33524
33653
|
return 'UIGroup';
|
|
33525
33654
|
}
|
|
33655
|
+
getRole() {
|
|
33656
|
+
return 'list';
|
|
33657
|
+
}
|
|
33526
33658
|
/**
|
|
33527
33659
|
* All group children
|
|
33528
33660
|
*/ get allChildren() {
|
|
@@ -41462,6 +41594,9 @@ let ToolbarButton = class ToolbarButton extends _core_ui_button_index_js__WEBPAC
|
|
|
41462
41594
|
className() {
|
|
41463
41595
|
return 'ToolbarButton';
|
|
41464
41596
|
}
|
|
41597
|
+
getRole() {
|
|
41598
|
+
return 'listitem';
|
|
41599
|
+
}
|
|
41465
41600
|
/**
|
|
41466
41601
|
* Get parent toolbar
|
|
41467
41602
|
*/ get toolbar() {
|
|
@@ -41529,7 +41664,6 @@ let ToolbarButton = class ToolbarButton extends _core_ui_button_index_js__WEBPAC
|
|
|
41529
41664
|
const cn = this.componentName;
|
|
41530
41665
|
const container = this.j.c.span(cn);
|
|
41531
41666
|
const button = super.createContainer();
|
|
41532
|
-
(0,_core_helpers_utils_attr_js__WEBPACK_IMPORTED_MODULE_14__.attr)(container, 'role', 'listitem');
|
|
41533
41667
|
button.classList.remove(cn);
|
|
41534
41668
|
button.classList.add(cn + '__button');
|
|
41535
41669
|
Object.defineProperty(button, 'component', {
|
|
@@ -44516,13 +44650,12 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.maxWidth = '100%';
|
|
|
44516
44650
|
/**
|
|
44517
44651
|
* Editor's min-height
|
|
44518
44652
|
*
|
|
44519
|
-
* @example
|
|
44520
44653
|
* ```javascript
|
|
44521
44654
|
* Jodit.make('.editor', {
|
|
44522
44655
|
* minHeight: '30%' //min-height: 30%
|
|
44523
44656
|
* })
|
|
44524
44657
|
* ```
|
|
44525
|
-
*
|
|
44658
|
+
*
|
|
44526
44659
|
* ```javascript
|
|
44527
44660
|
* Jodit.make('.editor', {
|
|
44528
44661
|
* minHeight: 200 //min-height: 200px
|
|
@@ -45580,7 +45713,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
45580
45713
|
* ```
|
|
45581
45714
|
* @packageDocumentation
|
|
45582
45715
|
* @module constants
|
|
45583
|
-
*/ const APP_VERSION = "4.9.
|
|
45716
|
+
*/ const APP_VERSION = "4.9.22";
|
|
45584
45717
|
// prettier-ignore
|
|
45585
45718
|
const ES = "es2015";
|
|
45586
45719
|
const IS_ES_MODERN = true;
|
|
@@ -51048,7 +51181,11 @@ function _async_to_generator(fn) {
|
|
|
51048
51181
|
});
|
|
51049
51182
|
};
|
|
51050
51183
|
}
|
|
51051
|
-
|
|
51184
|
+
/*!
|
|
51185
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
51186
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
51187
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
|
|
51188
|
+
*/
|
|
51052
51189
|
|
|
51053
51190
|
|
|
51054
51191
|
|