jodit-pro 4.9.4 → 4.9.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +44 -2
- package/config.js +1 -0
- package/es2015/jodit.css +1 -1
- package/es2015/jodit.fat.min.css +1 -1
- package/es2015/jodit.fat.min.js +26 -26
- package/es2015/jodit.js +5 -3
- package/es2015/jodit.min.js +2 -2
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +10 -4
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +6 -6
- 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 +79 -0
- package/es2015/plugins/style/style.js +395 -0
- package/es2015/plugins/style/style.min.css +1 -0
- package/es2015/plugins/style/style.min.js +8 -0
- package/es2015/plugins/todo-list/todo-list.css +1 -1
- package/es2015/plugins/todo-list/todo-list.js +1 -1
- package/es2015/plugins/todo-list/todo-list.min.js +1 -1
- package/es2015/plugins/translate/translate.css +1 -1
- package/es2015/plugins/translate/translate.js +1 -1
- package/es2015/plugins/translate/translate.min.js +1 -1
- package/es2015/plugins/tune-block/tune-block.css +1 -1
- package/es2015/plugins/tune-block/tune-block.js +1 -1
- package/es2015/plugins/tune-block/tune-block.min.js +1 -1
- package/es2018/jodit.fat.min.css +1 -1
- package/es2018/jodit.fat.min.js +15 -15
- package/es2018/jodit.min.js +2 -2
- package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +7 -7
- 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.css +1 -0
- package/es2018/plugins/style/style.min.js +8 -0
- 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.css +1 -1
- package/es2021/jodit.fat.min.js +16 -16
- package/es2021/jodit.js +5 -3
- package/es2021/jodit.min.js +2 -2
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +9 -4
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +28 -28
- 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 +79 -0
- package/es2021/plugins/style/style.js +395 -0
- package/es2021/plugins/style/style.min.css +1 -0
- package/es2021/plugins/style/style.min.js +8 -0
- 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.css +1 -1
- package/es2021.en/jodit.fat.min.js +14 -14
- package/es2021.en/jodit.js +5 -3
- package/es2021.en/jodit.min.js +2 -2
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +9 -4
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +7 -7
- 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 +79 -0
- package/es2021.en/plugins/style/style.js +395 -0
- package/es2021.en/plugins/style/style.min.css +1 -0
- package/es2021.en/plugins/style/style.min.js +8 -0
- 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.css +1 -1
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +5 -3
- 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 +11 -5
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.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/style/style.css +79 -0
- package/es5/plugins/style/style.js +524 -0
- package/es5/plugins/style/style.min.css +1 -0
- package/es5/plugins/style/style.min.js +8 -0
- package/es5/plugins/todo-list/todo-list.css +1 -1
- package/es5/plugins/todo-list/todo-list.js +1 -1
- package/es5/plugins/todo-list/todo-list.min.js +1 -1
- package/es5/plugins/translate/translate.css +1 -1
- package/es5/plugins/translate/translate.js +1 -1
- package/es5/plugins/translate/translate.min.js +1 -1
- package/es5/plugins/tune-block/tune-block.css +1 -1
- package/es5/plugins/tune-block/tune-block.js +1 -1
- package/es5/plugins/tune-block/tune-block.min.js +1 -1
- package/es5/polyfills.fat.min.js +1 -1
- package/es5/polyfills.js +1 -1
- package/es5/polyfills.min.js +1 -1
- package/esm/config.d.ts +6 -0
- package/esm/plugins/ai-assistant-pro/ai-assistant-pro.js +2 -2
- package/esm/plugins/ai-assistant-pro/core/ai-response-handler.js +1 -1
- package/esm/plugins/ai-assistant-pro/core/panel-resize.js +1 -1
- package/esm/plugins/ai-assistant-pro/helpers/api-client.js +1 -1
- package/esm/plugins/all.js +1 -1
- package/esm/plugins/style/config.d.ts +13 -0
- package/esm/plugins/style/config.js +1 -0
- package/esm/plugins/style/helpers/apply-style.d.ts +8 -0
- package/esm/plugins/style/helpers/apply-style.js +1 -0
- package/esm/plugins/style/helpers/classify-definitions.d.ts +7 -0
- package/esm/plugins/style/helpers/classify-definitions.js +1 -0
- package/esm/plugins/style/helpers/detect-active-style.d.ts +8 -0
- package/esm/plugins/style/helpers/detect-active-style.js +1 -0
- package/esm/plugins/style/icon.svg.js +1 -0
- package/esm/plugins/style/interface.d.ts +15 -0
- package/esm/plugins/style/interface.js +0 -0
- package/esm/plugins/style/style.d.ts +18 -0
- package/esm/plugins/style/style.js +1 -0
- package/esm/plugins/style/ui/style-popup.d.ts +8 -0
- package/esm/plugins/style/ui/style-popup.js +1 -0
- package/examples/assets/app.js +2 -1
- package/examples/style-plugin.html +508 -0
- package/package.json +1 -1
- package/types/config.d.ts +6 -0
- package/types/plugins/style/config.d.ts +13 -0
- package/types/plugins/style/helpers/apply-style.d.ts +8 -0
- package/types/plugins/style/helpers/classify-definitions.d.ts +7 -0
- package/types/plugins/style/helpers/detect-active-style.d.ts +8 -0
- package/types/plugins/style/interface.d.ts +15 -0
- package/types/plugins/style/style.d.ts +18 -0
- package/types/plugins/style/ui/style-popup.d.ts +8 -0
|
@@ -0,0 +1,395 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* jodit-pro - PRO Version of Jodit Editor
|
|
3
|
+
* Author: Chupurnov Valerii <chupurnov@gmail.com>
|
|
4
|
+
* Version: v4.9.15
|
|
5
|
+
* Url: https://xdsoft.net/jodit/pro/
|
|
6
|
+
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
|
10
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
|
11
|
+
module.exports = factory();
|
|
12
|
+
else if(typeof define === 'function' && define.amd)
|
|
13
|
+
define([], factory);
|
|
14
|
+
else {
|
|
15
|
+
var a = factory();
|
|
16
|
+
for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
|
|
17
|
+
}
|
|
18
|
+
})(self, function() {
|
|
19
|
+
return (self["webpackChunkjodit_pro"] = self["webpackChunkjodit_pro"] || []).push([[850],{
|
|
20
|
+
|
|
21
|
+
/***/ 5440:
|
|
22
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
23
|
+
|
|
24
|
+
"use strict";
|
|
25
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
26
|
+
/* harmony export */ buildStylePopup: function() { return /* binding */ buildStylePopup; }
|
|
27
|
+
/* harmony export */ });
|
|
28
|
+
/* harmony import */ var _helpers_apply_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31105);
|
|
29
|
+
/* harmony import */ var _helpers_classify_definitions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8060);
|
|
30
|
+
/* harmony import */ var _helpers_detect_active_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(69341);
|
|
31
|
+
/*!
|
|
32
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
33
|
+
* See LICENSE.md in the project root for license information.
|
|
34
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
const CLASS_NAME = 'jodit-style-popup';
|
|
39
|
+
function buildStylePopup(editor, definitions, close) {
|
|
40
|
+
const groups = (0,_helpers_classify_definitions__WEBPACK_IMPORTED_MODULE_1__.classifyDefinitions)(definitions);
|
|
41
|
+
const active = (0,_helpers_detect_active_style__WEBPACK_IMPORTED_MODULE_2__.detectActiveStyle)(editor, definitions);
|
|
42
|
+
const container = editor.c.div(CLASS_NAME);
|
|
43
|
+
for (const group of groups){
|
|
44
|
+
const title = editor.c.div(`${CLASS_NAME}__group-title`);
|
|
45
|
+
title.textContent = editor.i18n(group.title);
|
|
46
|
+
container.appendChild(title);
|
|
47
|
+
const grid = editor.c.div(`${CLASS_NAME}__grid`);
|
|
48
|
+
for (const def of group.definitions){
|
|
49
|
+
const card = editor.c.element('button');
|
|
50
|
+
card.type = 'button';
|
|
51
|
+
const isActive = active === def;
|
|
52
|
+
card.className = `${CLASS_NAME}__card` + (isActive ? ` ${CLASS_NAME}__card_active_true` : '');
|
|
53
|
+
const preview = editor.c.div(`${CLASS_NAME}__card-preview`);
|
|
54
|
+
const previewEl = editor.c.element(def.element);
|
|
55
|
+
for (const cls of def.classes){
|
|
56
|
+
previewEl.classList.add(cls);
|
|
57
|
+
}
|
|
58
|
+
previewEl.textContent = def.name;
|
|
59
|
+
preview.appendChild(previewEl);
|
|
60
|
+
card.appendChild(preview);
|
|
61
|
+
const label = editor.c.div(`${CLASS_NAME}__card-label`);
|
|
62
|
+
label.textContent = def.name;
|
|
63
|
+
card.appendChild(label);
|
|
64
|
+
editor.e.on(card, 'click', ()=>{
|
|
65
|
+
editor.s.focus();
|
|
66
|
+
(0,_helpers_apply_style__WEBPACK_IMPORTED_MODULE_0__.applyStyle)(editor, def, definitions);
|
|
67
|
+
editor.synchronizeValues();
|
|
68
|
+
close();
|
|
69
|
+
});
|
|
70
|
+
grid.appendChild(card);
|
|
71
|
+
}
|
|
72
|
+
container.appendChild(grid);
|
|
73
|
+
}
|
|
74
|
+
return container;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
/***/ }),
|
|
79
|
+
|
|
80
|
+
/***/ 8060:
|
|
81
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
82
|
+
|
|
83
|
+
"use strict";
|
|
84
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
85
|
+
/* harmony export */ classifyDefinitions: function() { return /* binding */ classifyDefinitions; }
|
|
86
|
+
/* harmony export */ });
|
|
87
|
+
/* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
88
|
+
/*!
|
|
89
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
90
|
+
* See LICENSE.md in the project root for license information.
|
|
91
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
92
|
+
*/
|
|
93
|
+
function classifyDefinitions(definitions) {
|
|
94
|
+
const block = [];
|
|
95
|
+
const inline = [];
|
|
96
|
+
for (const def of definitions){
|
|
97
|
+
if (jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_0__.IS_BLOCK.test(def.element)) {
|
|
98
|
+
block.push(def);
|
|
99
|
+
} else {
|
|
100
|
+
inline.push(def);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const groups = [];
|
|
104
|
+
if (block.length) {
|
|
105
|
+
groups.push({
|
|
106
|
+
title: 'Block styles',
|
|
107
|
+
definitions: block
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
if (inline.length) {
|
|
111
|
+
groups.push({
|
|
112
|
+
title: 'Text styles',
|
|
113
|
+
definitions: inline
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
return groups;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
/***/ }),
|
|
121
|
+
|
|
122
|
+
/***/ 28609:
|
|
123
|
+
/***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
|
|
124
|
+
|
|
125
|
+
"use strict";
|
|
126
|
+
/* harmony import */ var _helpers_detect_active_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(69341);
|
|
127
|
+
/* harmony import */ var _ui_style_popup__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5440);
|
|
128
|
+
/* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(78955);
|
|
129
|
+
/* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_icon_svg__WEBPACK_IMPORTED_MODULE_2__);
|
|
130
|
+
/* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6441);
|
|
131
|
+
/*!
|
|
132
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
133
|
+
* See LICENSE.md in the project root for license information.
|
|
134
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
135
|
+
*/
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
jodit_esm_config__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.customStyles = {
|
|
140
|
+
definitions: []
|
|
141
|
+
};
|
|
142
|
+
jodit_esm_config__WEBPACK_IMPORTED_MODULE_3__.Config.prototype.controls.style = {
|
|
143
|
+
tooltip: 'Styles',
|
|
144
|
+
icon: (_icon_svg__WEBPACK_IMPORTED_MODULE_2___default()),
|
|
145
|
+
isDisabled (editor) {
|
|
146
|
+
return !editor.o.customStyles.definitions.length || !editor.s.current();
|
|
147
|
+
},
|
|
148
|
+
isActive (editor) {
|
|
149
|
+
const definitions = editor.o.customStyles.definitions;
|
|
150
|
+
if (!definitions.length) {
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
return (0,_helpers_detect_active_style__WEBPACK_IMPORTED_MODULE_0__.detectActiveStyle)(editor, definitions) != null;
|
|
154
|
+
},
|
|
155
|
+
update (editor, button) {
|
|
156
|
+
const definitions = editor.o.customStyles.definitions;
|
|
157
|
+
if (!definitions.length) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
const active = (0,_helpers_detect_active_style__WEBPACK_IMPORTED_MODULE_0__.detectActiveStyle)(editor, definitions);
|
|
161
|
+
if (editor.o.textIcons) {
|
|
162
|
+
if (active) {
|
|
163
|
+
button.state.text = active.name;
|
|
164
|
+
} else {
|
|
165
|
+
button.state.text = '';
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
popup (editor, _current, close) {
|
|
170
|
+
const definitions = editor.o.customStyles.definitions;
|
|
171
|
+
if (!definitions.length) {
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
editor.s.save();
|
|
175
|
+
const popup = (0,_ui_style_popup__WEBPACK_IMPORTED_MODULE_1__.buildStylePopup)(editor, definitions, ()=>{
|
|
176
|
+
editor.s.restore();
|
|
177
|
+
close();
|
|
178
|
+
});
|
|
179
|
+
editor.e.one('beforePopupClose', ()=>{
|
|
180
|
+
editor.s.restore();
|
|
181
|
+
});
|
|
182
|
+
return popup;
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
/***/ }),
|
|
188
|
+
|
|
189
|
+
/***/ 31105:
|
|
190
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
191
|
+
|
|
192
|
+
"use strict";
|
|
193
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
194
|
+
/* harmony export */ applyStyle: function() { return /* binding */ applyStyle; }
|
|
195
|
+
/* harmony export */ });
|
|
196
|
+
/* harmony import */ var _detect_active_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(69341);
|
|
197
|
+
/* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(82758);
|
|
198
|
+
/* harmony import */ var jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2748);
|
|
199
|
+
/*!
|
|
200
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
201
|
+
* See LICENSE.md in the project root for license information.
|
|
202
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
203
|
+
*/
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
function findTarget(editor, def) {
|
|
207
|
+
const current = editor.s.current();
|
|
208
|
+
if (!current) {
|
|
209
|
+
return null;
|
|
210
|
+
}
|
|
211
|
+
if (jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_BLOCK.test(def.element)) {
|
|
212
|
+
return jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.closest(current, jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.isBlock, editor.editor);
|
|
213
|
+
}
|
|
214
|
+
let node = jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.isElement(current) ? current : current.parentNode;
|
|
215
|
+
while(node && node !== editor.editor){
|
|
216
|
+
if (jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.isElement(node) && node.nodeName.toLowerCase() === def.element) {
|
|
217
|
+
return node;
|
|
218
|
+
}
|
|
219
|
+
node = node.parentNode;
|
|
220
|
+
}
|
|
221
|
+
return null;
|
|
222
|
+
}
|
|
223
|
+
function removeClassesFromElement(el, classes) {
|
|
224
|
+
for (const cls of classes){
|
|
225
|
+
el.classList.remove(cls);
|
|
226
|
+
}
|
|
227
|
+
if (el.className === '') {
|
|
228
|
+
el.removeAttribute('class');
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
function cleanupExtraClasses(editor, def) {
|
|
232
|
+
if (def.classes.length <= 1) {
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
const current = editor.s.current();
|
|
236
|
+
if (!current) {
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
if (jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_BLOCK.test(def.element)) {
|
|
240
|
+
const block = jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.closest(current, jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.isBlock, editor.editor);
|
|
241
|
+
if (block) {
|
|
242
|
+
removeClassesFromElement(block, def.classes.slice(1));
|
|
243
|
+
}
|
|
244
|
+
} else {
|
|
245
|
+
const target = findTarget(editor, def);
|
|
246
|
+
if (target) {
|
|
247
|
+
removeClassesFromElement(target, def.classes.slice(1));
|
|
248
|
+
if (target.nodeName.toLowerCase() === 'span' && !target.attributes.length) {
|
|
249
|
+
jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__.Dom.unwrap(target);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
function addExtraClasses(editor, def) {
|
|
255
|
+
if (def.classes.length <= 1) {
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
258
|
+
const target = findTarget(editor, def);
|
|
259
|
+
if (!target) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
for(let i = 1; i < def.classes.length; i++){
|
|
263
|
+
target.classList.add(def.classes[i]);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
function applyStyle(editor, def, definitions) {
|
|
267
|
+
const active = (0,_detect_active_style__WEBPACK_IMPORTED_MODULE_0__.detectActiveStyle)(editor, definitions);
|
|
268
|
+
if (active) {
|
|
269
|
+
editor.s.commitStyle({
|
|
270
|
+
element: active.element,
|
|
271
|
+
attributes: {
|
|
272
|
+
class: active.classes[0]
|
|
273
|
+
}
|
|
274
|
+
});
|
|
275
|
+
cleanupExtraClasses(editor, active);
|
|
276
|
+
if (active === def) {
|
|
277
|
+
return;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
editor.s.commitStyle({
|
|
281
|
+
element: def.element,
|
|
282
|
+
attributes: {
|
|
283
|
+
class: def.classes[0]
|
|
284
|
+
}
|
|
285
|
+
});
|
|
286
|
+
addExtraClasses(editor, def);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
/***/ }),
|
|
291
|
+
|
|
292
|
+
/***/ 69341:
|
|
293
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
294
|
+
|
|
295
|
+
"use strict";
|
|
296
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
297
|
+
/* harmony export */ detectActiveStyle: function() { return /* binding */ detectActiveStyle; }
|
|
298
|
+
/* harmony export */ });
|
|
299
|
+
/* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82758);
|
|
300
|
+
/* harmony import */ var jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2748);
|
|
301
|
+
/*!
|
|
302
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
303
|
+
* See LICENSE.md in the project root for license information.
|
|
304
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
305
|
+
*/
|
|
306
|
+
|
|
307
|
+
function elementMatchesDefinition(el, def) {
|
|
308
|
+
if (el.nodeName.toLowerCase() !== def.element) {
|
|
309
|
+
return false;
|
|
310
|
+
}
|
|
311
|
+
return def.classes.every((cls)=>el.classList.contains(cls));
|
|
312
|
+
}
|
|
313
|
+
function detectActiveStyle(editor, definitions) {
|
|
314
|
+
const current = editor.s.current();
|
|
315
|
+
if (!current) {
|
|
316
|
+
return null;
|
|
317
|
+
}
|
|
318
|
+
for (const def of definitions){
|
|
319
|
+
if (jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_0__.IS_BLOCK.test(def.element)) {
|
|
320
|
+
const block = jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(current, jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, editor.editor);
|
|
321
|
+
if (block && elementMatchesDefinition(block, def)) {
|
|
322
|
+
return def;
|
|
323
|
+
}
|
|
324
|
+
} else {
|
|
325
|
+
let node = jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(current) ? current : current.parentNode;
|
|
326
|
+
while(node && node !== editor.editor){
|
|
327
|
+
if (jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(node) && elementMatchesDefinition(node, def)) {
|
|
328
|
+
return def;
|
|
329
|
+
}
|
|
330
|
+
node = node.parentNode;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
return null;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
/***/ }),
|
|
339
|
+
|
|
340
|
+
/***/ 75554:
|
|
341
|
+
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
342
|
+
|
|
343
|
+
"use strict";
|
|
344
|
+
__webpack_require__.r(__webpack_exports__);
|
|
345
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
346
|
+
/* harmony export */ style: function() { return /* binding */ style; }
|
|
347
|
+
/* harmony export */ });
|
|
348
|
+
/* harmony import */ var _swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82749);
|
|
349
|
+
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(28609);
|
|
350
|
+
/* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(50911);
|
|
351
|
+
/* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2692);
|
|
352
|
+
/*!
|
|
353
|
+
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
354
|
+
* See LICENSE.md in the project root for license information.
|
|
355
|
+
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
356
|
+
*/
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
class style extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_2__.Plugin {
|
|
362
|
+
/** @override */ afterInit(_jodit) {}
|
|
363
|
+
/** @override */ beforeDestruct(_jodit) {}
|
|
364
|
+
constructor(...args){
|
|
365
|
+
super(...args), /** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "buttons", [
|
|
366
|
+
{
|
|
367
|
+
name: 'style',
|
|
368
|
+
group: 'font'
|
|
369
|
+
}
|
|
370
|
+
]);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
/** @override */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(style, "requires", [
|
|
374
|
+
'license'
|
|
375
|
+
]);
|
|
376
|
+
jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_3__.JoditPro.plugins.add('style', style);
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
/***/ }),
|
|
380
|
+
|
|
381
|
+
/***/ 78955:
|
|
382
|
+
/***/ (function(module) {
|
|
383
|
+
|
|
384
|
+
module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24\" height=\"24\" stroke=\"currentColor\" stroke-width=\"1.5\"> <rect x=\"2\" y=\"3.5\" width=\"9\" height=\"9\" rx=\"1.5\" fill=\"none\"/> <rect x=\"2\" y=\"14.5\" width=\"9\" height=\"9\" rx=\"1.5\" fill=\"none\"/> <rect x=\"13\" y=\"14.5\" width=\"9\" height=\"9\" rx=\"1.5\" fill=\"none\"/> <rect x=\"13\" y=\"3.5\" width=\"9\" height=\"9\" rx=\"1.5\" fill=\"currentColor\" transform=\"rotate(45 17.5 8)\"/> </svg>"
|
|
385
|
+
|
|
386
|
+
/***/ })
|
|
387
|
+
|
|
388
|
+
},
|
|
389
|
+
/******/ function(__webpack_require__) { // webpackRuntimeModules
|
|
390
|
+
/******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
|
|
391
|
+
/******/ var __webpack_exports__ = (__webpack_exec__(75554));
|
|
392
|
+
/******/ return __webpack_exports__;
|
|
393
|
+
/******/ }
|
|
394
|
+
]);
|
|
395
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.jodit-style-popup{max-height:470px;min-width:210px;overflow-y:auto;padding:8px}.jodit-style-popup__group-title{color:#888;font-size:11px;font-weight:600;margin-top:8px;padding:4px 8px;text-transform:uppercase}.jodit-style-popup__group-title:first-child{margin-top:0}.jodit-style-popup__grid{display:grid;gap:8px;grid-template-columns:repeat(3,1fr);padding:4px 0}.jodit-style-popup__card{background:none;border:1px solid #ddd;border-radius:4px;color:inherit;cursor:pointer;display:flex;flex-direction:column;height:80px;justify-content:space-between;overflow:hidden;padding:0;text-align:left}.jodit-style-popup__card:hover{border-color:#b3b3b3}.jodit-style-popup__card_active_true{border-color:var(--jd-color-border-active,#4a6cf6)}.jodit-style-popup__card_active_true .jodit-style-popup__card-label{box-shadow:0 -1px 0 var(--jd-color-border-active,#4a6cf6)}.jodit-style-popup__card-preview{align-items:center;background:#fff;display:flex;flex-grow:1;overflow:hidden;padding:6px 8px;pointer-events:none}.jodit-style-popup__card-preview>*{margin:0;overflow:hidden;padding:0;white-space:nowrap}.jodit-style-popup__card-label{background:#f0f0f0;font-size:11px;line-height:20px;overflow:hidden;padding:2px 8px;text-overflow:ellipsis;white-space:nowrap}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* jodit-pro - PRO Version of Jodit Editor
|
|
3
|
+
* Author: Chupurnov Valerii <chupurnov@gmail.com>
|
|
4
|
+
* Version: v4.9.15
|
|
5
|
+
* Url: https://xdsoft.net/jodit/pro/
|
|
6
|
+
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
|
+
*/
|
|
8
|
+
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var s in n)("object"==typeof exports?exports:e)[s]=n[s]}}(self,function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[850],{5440:function(e,t,n){"use strict";n.d(t,{buildStylePopup:function(){return r}});var s=n(31105),o=n(8060),i=n(69341);let l="jodit-style-popup";function r(e,t,n){let r=(0,o.classifyDefinitions)(t),c=(0,i.detectActiveStyle)(e,t),u=e.c.div(l);for(let o of r){let i=e.c.div(`${l}__group-title`);i.textContent=e.i18n(o.title),u.appendChild(i);let r=e.c.div(`${l}__grid`);for(let i of o.definitions){let o=e.c.element("button");o.type="button",o.className=`${l}__card`+(c===i?` ${l}__card_active_true`:"");let u=e.c.div(`${l}__card-preview`),f=e.c.element(i.element);for(let e of i.classes)f.classList.add(e);f.textContent=i.name,u.appendChild(f),o.appendChild(u);let a=e.c.div(`${l}__card-label`);a.textContent=i.name,o.appendChild(a),e.e.on(o,"click",()=>{e.s.focus(),(0,s.applyStyle)(e,i,t),e.synchronizeValues(),n()}),r.appendChild(o)}u.appendChild(r)}return u}},8060:function(e,t,n){"use strict";n.d(t,{classifyDefinitions:function(){return o}});var s=n(82758);function o(e){let t=[],n=[];for(let o of e)s.IS_BLOCK.test(o.element)?t.push(o):n.push(o);let o=[];return t.length&&o.push({title:"Block styles",definitions:t}),n.length&&o.push({title:"Text styles",definitions:n}),o}},28609:function(e,t,n){"use strict";var s=n(69341),o=n(5440),i=n(78955),l=n.n(i),r=n(6441);r.Config.prototype.customStyles={definitions:[]},r.Config.prototype.controls.style={tooltip:"Styles",icon:l(),isDisabled(e){return!e.o.customStyles.definitions.length||!e.s.current()},isActive(e){let t=e.o.customStyles.definitions;return!!t.length&&null!=(0,s.detectActiveStyle)(e,t)},update(e,t){let n=e.o.customStyles.definitions;if(!n.length)return;let o=(0,s.detectActiveStyle)(e,n);e.o.textIcons&&(o?t.state.text=o.name:t.state.text="")},popup(e,t,n){let s=e.o.customStyles.definitions;if(!s.length)return!1;e.s.save();let i=(0,o.buildStylePopup)(e,s,()=>{e.s.restore(),n()});return e.e.one("beforePopupClose",()=>{e.s.restore()}),i}}},31105:function(e,t,n){"use strict";n.d(t,{applyStyle:function(){return c}});var s=n(69341),o=n(82758),i=n(2748);function l(e,t){let n=e.s.current();if(!n)return null;if(o.IS_BLOCK.test(t.element))return i.Dom.closest(n,i.Dom.isBlock,e.editor);let s=i.Dom.isElement(n)?n:n.parentNode;for(;s&&s!==e.editor;){if(i.Dom.isElement(s)&&s.nodeName.toLowerCase()===t.element)return s;s=s.parentNode}return null}function r(e,t){for(let n of t)e.classList.remove(n);""===e.className&&e.removeAttribute("class")}function c(e,t,n){let c=(0,s.detectActiveStyle)(e,n);c&&(e.s.commitStyle({element:c.element,attributes:{class:c.classes[0]}}),!function(e,t){if(t.classes.length<=1)return;let n=e.s.current();if(n)if(o.IS_BLOCK.test(t.element)){let s=i.Dom.closest(n,i.Dom.isBlock,e.editor);s&&r(s,t.classes.slice(1))}else{let n=l(e,t);n&&(r(n,t.classes.slice(1)),"span"!==n.nodeName.toLowerCase()||n.attributes.length||i.Dom.unwrap(n))}}(e,c),c===t)||(e.s.commitStyle({element:t.element,attributes:{class:t.classes[0]}}),function(e,t){if(t.classes.length<=1)return;let n=l(e,t);if(n)for(let e=1;e<t.classes.length;e++)n.classList.add(t.classes[e])}(e,t))}},69341:function(e,t,n){"use strict";n.d(t,{detectActiveStyle:function(){return l}});var s=n(82758),o=n(2748);function i(e,t){return e.nodeName.toLowerCase()===t.element&&t.classes.every(t=>e.classList.contains(t))}function l(e,t){let n=e.s.current();if(!n)return null;for(let l of t)if(s.IS_BLOCK.test(l.element)){let t=o.Dom.closest(n,o.Dom.isBlock,e.editor);if(t&&i(t,l))return l}else{let t=o.Dom.isElement(n)?n:n.parentNode;for(;t&&t!==e.editor;){if(o.Dom.isElement(t)&&i(t,l))return l;t=t.parentNode}}return null}},75554:function(e,t,n){"use strict";n.r(t),n.d(t,{style:function(){return l}});var s=n(82749);n(28609);var o=n(50911),i=n(2692);class l extends o.Plugin{afterInit(e){}beforeDestruct(e){}constructor(...e){super(...e),(0,s._)(this,"buttons",[{name:"style",group:"font"}])}}(0,s._)(l,"requires",["license"]),i.JoditPro.plugins.add("style",l)},78955:function(e){e.exports='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="1.5"> <rect x="2" y="3.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="2" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="14.5" width="9" height="9" rx="1.5" fill="none"/> <rect x="13" y="3.5" width="9" height="9" rx="1.5" fill="currentColor" transform="rotate(45 17.5 8)"/> </svg>'}},function(e){return e(e.s=75554)}])});
|