jodit-pro 4.11.19 → 4.11.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 +2 -2
- package/es2015/jodit.fat.min.css +1 -1
- package/es2015/jodit.fat.min.js +17 -14
- package/es2015/jodit.js +45 -13
- package/es2015/jodit.min.css +1 -1
- package/es2015/jodit.min.js +6 -6
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +239 -168
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +356 -75
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.css +1 -1
- package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +42 -39
- 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 +10 -4
- package/es2015/plugins/finder/finder.min.js +2 -2
- 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/templates/templates.css +1 -1
- package/es2015/plugins/templates/templates.js +1 -1
- package/es2015/plugins/templates/templates.min.js +1 -1
- package/es2015/plugins/todo-list/todo-list.css +1 -1
- package/es2015/plugins/todo-list/todo-list.js +1 -1
- package/es2015/plugins/todo-list/todo-list.min.js +1 -1
- package/es2015/plugins/translate/translate.css +1 -1
- package/es2015/plugins/translate/translate.js +1 -1
- package/es2015/plugins/translate/translate.min.js +1 -1
- package/es2015/plugins/tune-block/tune-block.css +1 -1
- package/es2015/plugins/tune-block/tune-block.js +1 -1
- package/es2015/plugins/tune-block/tune-block.min.js +1 -1
- package/es2018/jodit.fat.min.css +1 -1
- package/es2018/jodit.fat.min.js +17 -14
- package/es2018/jodit.min.css +1 -1
- package/es2018/jodit.min.js +6 -6
- package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.css +1 -1
- package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +49 -46
- 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 +2 -2
- 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/templates/templates.min.js +1 -1
- package/es2018/plugins/todo-list/todo-list.min.js +1 -1
- package/es2018/plugins/translate/translate.min.js +1 -1
- package/es2018/plugins/tune-block/tune-block.min.js +1 -1
- package/es2021/jodit.css +2 -2
- package/es2021/jodit.fat.min.css +1 -1
- package/es2021/jodit.fat.min.js +18 -15
- package/es2021/jodit.js +45 -13
- package/es2021/jodit.min.css +1 -1
- package/es2021/jodit.min.js +6 -6
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +239 -168
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +350 -73
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.css +1 -1
- package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +24 -21
- 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 +9 -4
- package/es2021/plugins/finder/finder.min.js +2 -2
- 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/templates/templates.css +1 -1
- package/es2021/plugins/templates/templates.js +1 -1
- package/es2021/plugins/templates/templates.min.js +1 -1
- package/es2021/plugins/todo-list/todo-list.css +1 -1
- package/es2021/plugins/todo-list/todo-list.js +1 -1
- package/es2021/plugins/todo-list/todo-list.min.js +1 -1
- package/es2021/plugins/translate/translate.css +1 -1
- package/es2021/plugins/translate/translate.js +1 -1
- package/es2021/plugins/translate/translate.min.js +1 -1
- package/es2021/plugins/tune-block/tune-block.css +1 -1
- package/es2021/plugins/tune-block/tune-block.js +1 -1
- package/es2021/plugins/tune-block/tune-block.min.js +1 -1
- package/es2021.en/jodit.css +2 -2
- package/es2021.en/jodit.fat.min.css +1 -1
- package/es2021.en/jodit.fat.min.js +18 -15
- package/es2021.en/jodit.js +45 -13
- package/es2021.en/jodit.min.css +1 -1
- package/es2021.en/jodit.min.js +6 -6
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +239 -168
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +350 -73
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.css +1 -1
- package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +24 -21
- 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 +9 -4
- package/es2021.en/plugins/finder/finder.min.js +2 -2
- 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/templates/templates.css +1 -1
- package/es2021.en/plugins/templates/templates.js +1 -1
- package/es2021.en/plugins/templates/templates.min.js +1 -1
- package/es2021.en/plugins/todo-list/todo-list.css +1 -1
- package/es2021.en/plugins/todo-list/todo-list.js +1 -1
- package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
- package/es2021.en/plugins/translate/translate.css +1 -1
- package/es2021.en/plugins/translate/translate.js +1 -1
- package/es2021.en/plugins/translate/translate.min.js +1 -1
- package/es2021.en/plugins/tune-block/tune-block.css +1 -1
- package/es2021.en/plugins/tune-block/tune-block.js +1 -1
- package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
- package/es5/jodit.css +3 -3
- package/es5/jodit.fat.min.css +1 -1
- package/es5/jodit.fat.min.js +2 -2
- package/es5/jodit.js +45 -13
- package/es5/jodit.min.css +3 -3
- package/es5/jodit.min.js +2 -2
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +239 -168
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +526 -111
- package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.css +1 -1
- 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 +10 -5
- package/es5/plugins/finder/finder.min.js +2 -2
- 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/templates/templates.css +1 -1
- package/es5/plugins/templates/templates.js +1 -1
- package/es5/plugins/templates/templates.min.js +1 -1
- package/es5/plugins/todo-list/todo-list.css +1 -1
- package/es5/plugins/todo-list/todo-list.js +1 -1
- package/es5/plugins/todo-list/todo-list.min.js +1 -1
- package/es5/plugins/translate/translate.css +1 -1
- package/es5/plugins/translate/translate.js +1 -1
- package/es5/plugins/translate/translate.min.js +1 -1
- package/es5/plugins/tune-block/tune-block.css +1 -1
- package/es5/plugins/tune-block/tune-block.js +1 -1
- package/es5/plugins/tune-block/tune-block.min.js +1 -1
- package/es5/polyfills.fat.min.js +1 -1
- package/es5/polyfills.js +1 -1
- package/es5/polyfills.min.js +1 -1
- package/esm/plugins/ai-assistant-pro/ai-assistant-pro.d.ts +10 -0
- package/esm/plugins/ai-assistant-pro/ai-assistant-pro.js +2 -2
- package/esm/plugins/ai-assistant-pro/config.js +1 -1
- package/esm/plugins/ai-assistant-pro/core/conversation.d.ts +10 -1
- package/esm/plugins/ai-assistant-pro/core/conversation.js +1 -1
- package/esm/plugins/ai-assistant-pro/icons/chevron-right.svg.js +1 -0
- package/esm/plugins/ai-assistant-pro/icons/shield.svg.js +1 -0
- package/esm/plugins/ai-assistant-pro/icons/tool-bolt.svg.js +1 -0
- package/esm/plugins/ai-assistant-pro/ui/conversation-list/conversation-list-item.d.ts +6 -1
- package/esm/plugins/ai-assistant-pro/ui/conversation-list/conversation-list-item.js +1 -1
- package/esm/plugins/ai-assistant-pro/ui/input-area/input-area.js +1 -1
- package/esm/plugins/ai-assistant-pro/ui/main-panel/main-panel.d.ts +6 -0
- package/esm/plugins/ai-assistant-pro/ui/main-panel/main-panel.js +2 -2
- package/esm/plugins/ai-assistant-pro/ui/message-list/item/message-list-item.js +1 -1
- package/esm/plugins/ai-assistant-pro/ui/permission-request/permission-request.js +7 -4
- package/esm/plugins/finder/helpers/loading-manager.js +1 -1
- package/package.json +1 -1
- package/types/plugins/ai-assistant-pro/ai-assistant-pro.d.ts +10 -0
- package/types/plugins/ai-assistant-pro/core/conversation.d.ts +10 -1
- package/types/plugins/ai-assistant-pro/ui/conversation-list/conversation-list-item.d.ts +6 -1
- package/types/plugins/ai-assistant-pro/ui/main-panel/main-panel.d.ts +6 -0
|
@@ -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.11.
|
|
4
|
+
* Version: v4.11.22
|
|
5
5
|
* Url: https://xdsoft.net/jodit/pro/
|
|
6
6
|
* License(s): SEE LICENSE IN LICENSE.md
|
|
7
7
|
*/
|
|
@@ -39,6 +39,13 @@ module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\
|
|
|
39
39
|
|
|
40
40
|
/***/ }),
|
|
41
41
|
|
|
42
|
+
/***/ 83207:
|
|
43
|
+
/***/ (function(module) {
|
|
44
|
+
|
|
45
|
+
module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"> <path d=\"M9 18l6-6-6-6\"/> </svg>"
|
|
46
|
+
|
|
47
|
+
/***/ }),
|
|
48
|
+
|
|
42
49
|
/***/ 99219:
|
|
43
50
|
/***/ (function(module) {
|
|
44
51
|
|
|
@@ -46,6 +53,20 @@ module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\
|
|
|
46
53
|
|
|
47
54
|
/***/ }),
|
|
48
55
|
|
|
56
|
+
/***/ 63674:
|
|
57
|
+
/***/ (function(module) {
|
|
58
|
+
|
|
59
|
+
module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"> <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"/> </svg>"
|
|
60
|
+
|
|
61
|
+
/***/ }),
|
|
62
|
+
|
|
63
|
+
/***/ 4133:
|
|
64
|
+
/***/ (function(module) {
|
|
65
|
+
|
|
66
|
+
module.exports = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"> <path d=\"M13 2L4 14h6l-1 8 9-12h-6z\"/> </svg>"
|
|
67
|
+
|
|
68
|
+
/***/ }),
|
|
69
|
+
|
|
49
70
|
/***/ 62357:
|
|
50
71
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
51
72
|
|
|
@@ -310,6 +331,27 @@ class aiAssistantPro extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_18__
|
|
|
310
331
|
// Just for init getter
|
|
311
332
|
this.mainPanel.setMod('ready', true);
|
|
312
333
|
yield (0,_core__WEBPACK_IMPORTED_MODULE_12__.loadInitialData)(this.j, this.storage, this.stateManager);
|
|
334
|
+
// Restore pending tool calls from stored conversation
|
|
335
|
+
yield this.restorePendingToolCalls();
|
|
336
|
+
}).call(this);
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Restore pending tool calls after loading a conversation from storage.
|
|
340
|
+
* Scans messages for tool calls with non-terminal status and
|
|
341
|
+
* re-runs handleToolCalls to show the permission dialog.
|
|
342
|
+
*/ restorePendingToolCalls() {
|
|
343
|
+
return (0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
|
|
344
|
+
const conversation = this.stateManager.getCurrentConversation();
|
|
345
|
+
if (!conversation) {
|
|
346
|
+
return;
|
|
347
|
+
}
|
|
348
|
+
const messagesWithPending = (0,_core__WEBPACK_IMPORTED_MODULE_12__.findMessagesWithPendingToolCalls)(conversation);
|
|
349
|
+
if (messagesWithPending.length === 0) {
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
for (const message of messagesWithPending){
|
|
353
|
+
yield this.handleToolCalls(message.id);
|
|
354
|
+
}
|
|
313
355
|
}).call(this);
|
|
314
356
|
}
|
|
315
357
|
/**
|
|
@@ -338,6 +380,11 @@ class aiAssistantPro extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_18__
|
|
|
338
380
|
yield this.__loadData();
|
|
339
381
|
yield this.deleteConversation(id);
|
|
340
382
|
}).call(this));
|
|
383
|
+
// Rename conversation
|
|
384
|
+
this.j.e.on('renameConversation.ai-assistant-pro', (id, newTitle)=>(0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
|
|
385
|
+
yield this.__loadData();
|
|
386
|
+
yield this.renameConversation(id, newTitle);
|
|
387
|
+
}).call(this));
|
|
341
388
|
// Back to list
|
|
342
389
|
this.j.e.on('backToList.ai-assistant-pro', ()=>(0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
|
|
343
390
|
yield this.__loadData();
|
|
@@ -755,6 +802,29 @@ ${selectedText}`.trim();
|
|
|
755
802
|
yield (0,_core__WEBPACK_IMPORTED_MODULE_12__.deleteConversationWithCleanup)(this.j, conversationId, this.storage, this.stateManager, this.permissionManager);
|
|
756
803
|
}).call(this);
|
|
757
804
|
}
|
|
805
|
+
/**
|
|
806
|
+
* Rename conversation
|
|
807
|
+
*/ renameConversation(conversationId, newTitle) {
|
|
808
|
+
return (0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
|
|
809
|
+
var _this_state_currentConversation;
|
|
810
|
+
const conversation = yield this.storage.get(conversationId);
|
|
811
|
+
if (!conversation) {
|
|
812
|
+
return;
|
|
813
|
+
}
|
|
814
|
+
const updated = (0,_swc_helpers_object_spread_props__WEBPACK_IMPORTED_MODULE_3__._)((0,_swc_helpers_object_spread__WEBPACK_IMPORTED_MODULE_2__._)({}, conversation), {
|
|
815
|
+
title: newTitle,
|
|
816
|
+
updated: Date.now()
|
|
817
|
+
});
|
|
818
|
+
yield this.storage.save(updated);
|
|
819
|
+
// Update current conversation if it's the one being renamed
|
|
820
|
+
if (((_this_state_currentConversation = this.state.currentConversation) === null || _this_state_currentConversation === void 0 ? void 0 : _this_state_currentConversation.id) === conversationId) {
|
|
821
|
+
this.stateManager.setCurrentConversation(updated);
|
|
822
|
+
}
|
|
823
|
+
// Refresh conversation list
|
|
824
|
+
const conversations = yield this.storage.list();
|
|
825
|
+
this.stateManager.setConversations(conversations);
|
|
826
|
+
}).call(this);
|
|
827
|
+
}
|
|
758
828
|
/**
|
|
759
829
|
* Search conversations
|
|
760
830
|
*/ searchConversations(query) {
|
|
@@ -779,8 +849,13 @@ ${selectedText}`.trim();
|
|
|
779
849
|
if (!toolCalls || toolCalls.length === 0) {
|
|
780
850
|
return;
|
|
781
851
|
}
|
|
782
|
-
|
|
783
|
-
|
|
852
|
+
// Filter out tool calls that already have a terminal status
|
|
853
|
+
// This makes handleToolCalls safe to call on restored conversations
|
|
854
|
+
const nonTerminalToolCalls = toolCalls.filter((tc)=>!(0,_core__WEBPACK_IMPORTED_MODULE_12__.isTerminalToolCallStatus)(tc.status));
|
|
855
|
+
if (nonTerminalToolCalls.length === 0) {
|
|
856
|
+
return;
|
|
857
|
+
}
|
|
858
|
+
const { approved, needsPermission } = this.permissionManager.filterToolCalls(nonTerminalToolCalls, conversation.permissions);
|
|
784
859
|
// Set pending tool calls for UI
|
|
785
860
|
this.stateManager.setPendingToolCalls(needsPermission);
|
|
786
861
|
// Execute approved tools (pass depth)
|
|
@@ -793,7 +868,6 @@ ${selectedText}`.trim();
|
|
|
793
868
|
* Execute a tool call
|
|
794
869
|
*/ executeToolCall(messageId, toolCall, depth = 0) {
|
|
795
870
|
return (0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
|
|
796
|
-
yield this.__loadData();
|
|
797
871
|
let conversation = this.stateManager.getCurrentConversation();
|
|
798
872
|
if (!conversation) {
|
|
799
873
|
return;
|
|
@@ -1047,13 +1121,19 @@ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_19__.JoditPro.plugins.add('aiAssist
|
|
|
1047
1121
|
/* harmony import */ var _icons_ai_assistant_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_icons_ai_assistant_svg__WEBPACK_IMPORTED_MODULE_5__);
|
|
1048
1122
|
/* harmony import */ var _icons_ai_commands_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(75966);
|
|
1049
1123
|
/* harmony import */ var _icons_ai_commands_svg__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_icons_ai_commands_svg__WEBPACK_IMPORTED_MODULE_6__);
|
|
1050
|
-
/* harmony import */ var
|
|
1051
|
-
/* harmony import */ var
|
|
1052
|
-
/* harmony import */ var
|
|
1053
|
-
/* harmony import */ var
|
|
1054
|
-
/* harmony import */ var
|
|
1055
|
-
/* harmony import */ var
|
|
1056
|
-
/* harmony import */ var
|
|
1124
|
+
/* harmony import */ var _icons_chevron_right_svg__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83207);
|
|
1125
|
+
/* harmony import */ var _icons_chevron_right_svg__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_icons_chevron_right_svg__WEBPACK_IMPORTED_MODULE_7__);
|
|
1126
|
+
/* harmony import */ var _icons_send_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(99219);
|
|
1127
|
+
/* harmony import */ var _icons_send_svg__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_icons_send_svg__WEBPACK_IMPORTED_MODULE_8__);
|
|
1128
|
+
/* harmony import */ var _icons_shield_svg__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(63674);
|
|
1129
|
+
/* harmony import */ var _icons_shield_svg__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_icons_shield_svg__WEBPACK_IMPORTED_MODULE_9__);
|
|
1130
|
+
/* harmony import */ var _icons_tool_bolt_svg__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(4133);
|
|
1131
|
+
/* harmony import */ var _icons_tool_bolt_svg__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_icons_tool_bolt_svg__WEBPACK_IMPORTED_MODULE_10__);
|
|
1132
|
+
/* harmony import */ var _tools__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(53835);
|
|
1133
|
+
/* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(6441);
|
|
1134
|
+
/* harmony import */ var jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(12153);
|
|
1135
|
+
/* harmony import */ var jodit_esm_plugins_ai_assistant_config__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(31974);
|
|
1136
|
+
/* harmony import */ var marked__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(72573);
|
|
1057
1137
|
/*!
|
|
1058
1138
|
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
1059
1139
|
* See LICENSE.md in the project root for license information.
|
|
@@ -1072,10 +1152,13 @@ var _Config_prototype_tuneBlock;
|
|
|
1072
1152
|
|
|
1073
1153
|
|
|
1074
1154
|
|
|
1155
|
+
|
|
1156
|
+
|
|
1157
|
+
|
|
1075
1158
|
// Register icons
|
|
1076
|
-
|
|
1159
|
+
jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_13__.Icon.set('ai-assistant-pro', (_icons_ai_assistant_svg__WEBPACK_IMPORTED_MODULE_5___default())).set('ai-commands-pro', (_icons_ai_commands_svg__WEBPACK_IMPORTED_MODULE_6___default())).set('ai-add-context', (_icons_add_context_svg__WEBPACK_IMPORTED_MODULE_4___default())).set('send', (_icons_send_svg__WEBPACK_IMPORTED_MODULE_8___default())).set('tool-bolt', (_icons_tool_bolt_svg__WEBPACK_IMPORTED_MODULE_10___default())).set('chevron-right', (_icons_chevron_right_svg__WEBPACK_IMPORTED_MODULE_7___default())).set('shield', (_icons_shield_svg__WEBPACK_IMPORTED_MODULE_9___default()));
|
|
1077
1160
|
// Default configuration
|
|
1078
|
-
|
|
1161
|
+
jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.aiAssistantPro = {
|
|
1079
1162
|
// ===== Display Settings =====
|
|
1080
1163
|
displayMode: 'right',
|
|
1081
1164
|
panelWidth: 400,
|
|
@@ -1091,7 +1174,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1091
1174
|
retryDelay: 1000,
|
|
1092
1175
|
maxRecursionToolCallDepth: 1000,
|
|
1093
1176
|
// ===== Tools Configuration =====
|
|
1094
|
-
enabledTools: (0,
|
|
1177
|
+
enabledTools: (0,_tools__WEBPACK_IMPORTED_MODULE_11__.getToolNames)(),
|
|
1095
1178
|
customTools: [],
|
|
1096
1179
|
toolPermissions: {},
|
|
1097
1180
|
// ===== Permission Settings =====
|
|
@@ -1130,7 +1213,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1130
1213
|
},
|
|
1131
1214
|
formatMessageContent: (content, role)=>{
|
|
1132
1215
|
// For user and assistant messages, use markdown
|
|
1133
|
-
return
|
|
1216
|
+
return marked__WEBPACK_IMPORTED_MODULE_15__.marked.parse(content, {
|
|
1134
1217
|
breaks: true,
|
|
1135
1218
|
gfm: true
|
|
1136
1219
|
});
|
|
@@ -1199,7 +1282,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1199
1282
|
};
|
|
1200
1283
|
/**
|
|
1201
1284
|
* Main AI Assistant Pro control for toolbar
|
|
1202
|
-
*/
|
|
1285
|
+
*/ jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.controls.aiAssistantPro = {
|
|
1203
1286
|
icon: 'ai-assistant-pro',
|
|
1204
1287
|
tooltip: 'AI Assistant',
|
|
1205
1288
|
/**
|
|
@@ -1234,7 +1317,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1234
1317
|
};
|
|
1235
1318
|
/**
|
|
1236
1319
|
* Add Context control for context menu (adds selection to AI context)
|
|
1237
|
-
*/
|
|
1320
|
+
*/ jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.controls.aiAddContext = {
|
|
1238
1321
|
icon: 'ai-add-context',
|
|
1239
1322
|
tooltip: 'Add to AI Context',
|
|
1240
1323
|
/**
|
|
@@ -1256,7 +1339,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1256
1339
|
};
|
|
1257
1340
|
/**
|
|
1258
1341
|
* AI Commands control - quick AI commands dropdown
|
|
1259
|
-
*/
|
|
1342
|
+
*/ jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.controls.aiCommandsPro = {
|
|
1260
1343
|
icon: 'ai-commands-pro',
|
|
1261
1344
|
tooltip: 'AI Commands',
|
|
1262
1345
|
/**
|
|
@@ -1266,7 +1349,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1266
1349
|
},
|
|
1267
1350
|
/**
|
|
1268
1351
|
* Default list of commands (can be overridden via quickCommands config)
|
|
1269
|
-
*/ list:
|
|
1352
|
+
*/ list: jodit_esm_plugins_ai_assistant_config__WEBPACK_IMPORTED_MODULE_14__.aiAssitentCommands,
|
|
1270
1353
|
/**
|
|
1271
1354
|
* Execute handler - fires event with command name
|
|
1272
1355
|
*/ exec (editor, event, { control }) {
|
|
@@ -1275,7 +1358,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.aiAssistantPro =
|
|
|
1275
1358
|
};
|
|
1276
1359
|
/**
|
|
1277
1360
|
* Extend tune-block popup to include "Add to AI Context" option
|
|
1278
|
-
*/ const originalTuneBlockPopup = ((_Config_prototype_tuneBlock =
|
|
1361
|
+
*/ const originalTuneBlockPopup = ((_Config_prototype_tuneBlock = jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.tuneBlock) === null || _Config_prototype_tuneBlock === void 0 ? void 0 : _Config_prototype_tuneBlock.popup) || {};
|
|
1279
1362
|
// Add AI context option to all block types
|
|
1280
1363
|
const tuneBlockExtension = {};
|
|
1281
1364
|
// Common block types
|
|
@@ -1316,8 +1399,8 @@ blockTypes.forEach((tag)=>{
|
|
|
1316
1399
|
];
|
|
1317
1400
|
});
|
|
1318
1401
|
// Merge with existing tune-block configuration
|
|
1319
|
-
if (
|
|
1320
|
-
|
|
1402
|
+
if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.tuneBlock) {
|
|
1403
|
+
jodit_esm_config__WEBPACK_IMPORTED_MODULE_12__.Config.prototype.tuneBlock.popup = (0,_swc_helpers_object_spread__WEBPACK_IMPORTED_MODULE_1__._)({}, originalTuneBlockPopup, tuneBlockExtension);
|
|
1321
1404
|
}
|
|
1322
1405
|
|
|
1323
1406
|
|
|
@@ -1586,7 +1669,9 @@ if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.tuneBlock) {
|
|
|
1586
1669
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1587
1670
|
/* harmony export */ areAllToolCallsExecuted: function() { return /* binding */ areAllToolCallsExecuted; },
|
|
1588
1671
|
/* harmony export */ createNewConversation: function() { return /* binding */ createNewConversation; },
|
|
1589
|
-
/* harmony export */
|
|
1672
|
+
/* harmony export */ findMessagesWithPendingToolCalls: function() { return /* binding */ findMessagesWithPendingToolCalls; },
|
|
1673
|
+
/* harmony export */ findParentMessageId: function() { return /* binding */ findParentMessageId; },
|
|
1674
|
+
/* harmony export */ isTerminalToolCallStatus: function() { return /* binding */ isTerminalToolCallStatus; }
|
|
1590
1675
|
/* harmony export */ });
|
|
1591
1676
|
/* harmony import */ var _helpers_storage_webstorage_storage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21064);
|
|
1592
1677
|
/*!
|
|
@@ -1623,6 +1708,16 @@ if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.tuneBlock) {
|
|
|
1623
1708
|
}
|
|
1624
1709
|
return null;
|
|
1625
1710
|
}
|
|
1711
|
+
const TERMINAL_STATUSES = new Set([
|
|
1712
|
+
'executed',
|
|
1713
|
+
'denied',
|
|
1714
|
+
'error'
|
|
1715
|
+
]);
|
|
1716
|
+
/**
|
|
1717
|
+
* Check if a tool call status is terminal (no further action needed)
|
|
1718
|
+
*/ function isTerminalToolCallStatus(status) {
|
|
1719
|
+
return TERMINAL_STATUSES.has(status);
|
|
1720
|
+
}
|
|
1626
1721
|
/**
|
|
1627
1722
|
* Check if all tool calls have been executed
|
|
1628
1723
|
*/ function areAllToolCallsExecuted(conversation) {
|
|
@@ -1630,7 +1725,13 @@ if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.tuneBlock) {
|
|
|
1630
1725
|
if (!(lastMessage === null || lastMessage === void 0 ? void 0 : lastMessage.toolCalls)) {
|
|
1631
1726
|
return false;
|
|
1632
1727
|
}
|
|
1633
|
-
return lastMessage.toolCalls.every((tc)=>tc.status
|
|
1728
|
+
return lastMessage.toolCalls.every((tc)=>isTerminalToolCallStatus(tc.status));
|
|
1729
|
+
}
|
|
1730
|
+
/**
|
|
1731
|
+
* Find messages that have tool calls with non-terminal status
|
|
1732
|
+
* Used to restore pending tool call state after page refresh
|
|
1733
|
+
*/ function findMessagesWithPendingToolCalls(conversation) {
|
|
1734
|
+
return conversation.messages.filter((msg)=>msg.toolCalls && msg.toolCalls.length > 0 && msg.toolCalls.some((tc)=>!isTerminalToolCallStatus(tc.status)));
|
|
1634
1735
|
}
|
|
1635
1736
|
|
|
1636
1737
|
|
|
@@ -1801,6 +1902,7 @@ if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.tuneBlock) {
|
|
|
1801
1902
|
/* harmony export */ createUserMessage: function() { return /* reexport safe */ _message_builder__WEBPACK_IMPORTED_MODULE_3__.createUserMessage; },
|
|
1802
1903
|
/* harmony export */ deleteConversationWithCleanup: function() { return /* reexport safe */ _storage_helpers__WEBPACK_IMPORTED_MODULE_6__.deleteConversationWithCleanup; },
|
|
1803
1904
|
/* harmony export */ executeToolCall: function() { return /* reexport safe */ _tool_execution__WEBPACK_IMPORTED_MODULE_8__.executeToolCall; },
|
|
1905
|
+
/* harmony export */ findMessagesWithPendingToolCalls: function() { return /* reexport safe */ _conversation__WEBPACK_IMPORTED_MODULE_1__.findMessagesWithPendingToolCalls; },
|
|
1804
1906
|
/* harmony export */ findParentMessageId: function() { return /* reexport safe */ _conversation__WEBPACK_IMPORTED_MODULE_1__.findParentMessageId; },
|
|
1805
1907
|
/* harmony export */ getCurrentSelectionContext: function() { return /* reexport safe */ _selection_context__WEBPACK_IMPORTED_MODULE_5__.getCurrentSelectionContext; },
|
|
1806
1908
|
/* harmony export */ handleBackToList: function() { return /* reexport safe */ _event_handlers__WEBPACK_IMPORTED_MODULE_2__.handleBackToList; },
|
|
@@ -1809,6 +1911,7 @@ if (jodit_esm_config__WEBPACK_IMPORTED_MODULE_9__.Config.prototype.tuneBlock) {
|
|
|
1809
1911
|
/* harmony export */ handleToolApproval: function() { return /* reexport safe */ _event_handlers__WEBPACK_IMPORTED_MODULE_2__.handleToolApproval; },
|
|
1810
1912
|
/* harmony export */ handleToolDenial: function() { return /* reexport safe */ _event_handlers__WEBPACK_IMPORTED_MODULE_2__.handleToolDenial; },
|
|
1811
1913
|
/* harmony export */ invertMode: function() { return /* reexport safe */ _panel_resize__WEBPACK_IMPORTED_MODULE_4__.invertMode; },
|
|
1914
|
+
/* harmony export */ isTerminalToolCallStatus: function() { return /* reexport safe */ _conversation__WEBPACK_IMPORTED_MODULE_1__.isTerminalToolCallStatus; },
|
|
1812
1915
|
/* harmony export */ loadInitialData: function() { return /* reexport safe */ _storage_helpers__WEBPACK_IMPORTED_MODULE_6__.loadInitialData; },
|
|
1813
1916
|
/* harmony export */ processArtifacts: function() { return /* reexport safe */ _ai_response_handler__WEBPACK_IMPORTED_MODULE_0__.processArtifacts; },
|
|
1814
1917
|
/* harmony export */ processFinalResponse: function() { return /* reexport safe */ _ai_response_handler__WEBPACK_IMPORTED_MODULE_0__.processFinalResponse; },
|
|
@@ -2467,7 +2570,7 @@ function updateToolCallInMessage(message, updatedToolCall) {
|
|
|
2467
2570
|
* See LICENSE.md in the project root for license information.
|
|
2468
2571
|
* Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
|
|
2469
2572
|
*/ function base64ToFile(base64, filename, mimeType = 'image/png') {
|
|
2470
|
-
const binary = atob(base64);
|
|
2573
|
+
const binary = atob(base64);
|
|
2471
2574
|
const len = binary.length;
|
|
2472
2575
|
const bytes = new Uint8Array(len);
|
|
2473
2576
|
for(let i = 0; i < len; i++){
|
|
@@ -4927,7 +5030,7 @@ const requiresPermission = true;
|
|
|
4927
5030
|
/* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(65478);
|
|
4928
5031
|
/* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67510);
|
|
4929
5032
|
/* harmony import */ var jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(62843);
|
|
4930
|
-
/* harmony import */ var
|
|
5033
|
+
/* harmony import */ var jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(80870);
|
|
4931
5034
|
/*!
|
|
4932
5035
|
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
4933
5036
|
* See LICENSE.md in the project root for license information.
|
|
@@ -4969,6 +5072,7 @@ class UIConversationListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_
|
|
|
4969
5072
|
const content = this.j.c.div('jodit-ui-conversation-list__item-content');
|
|
4970
5073
|
const title = this.j.c.div('jodit-ui-conversation-list__item-title');
|
|
4971
5074
|
title.textContent = this.conversation.title;
|
|
5075
|
+
this.titleElement = title;
|
|
4972
5076
|
content.appendChild(title);
|
|
4973
5077
|
if (this.opts.showTimestamps) {
|
|
4974
5078
|
const meta = this.j.c.div('jodit-ui-conversation-list__item-meta');
|
|
@@ -4983,49 +5087,122 @@ class UIConversationListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_
|
|
|
4983
5087
|
contentWrapper.appendChild(badge);
|
|
4984
5088
|
}
|
|
4985
5089
|
item.appendChild(contentWrapper);
|
|
4986
|
-
//
|
|
4987
|
-
if (!this.
|
|
4988
|
-
this.
|
|
5090
|
+
// Actions "..." button
|
|
5091
|
+
if (!this.actionsButton) {
|
|
5092
|
+
this.actionsButton = new jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_4__.UIButton(this.j, {
|
|
4989
5093
|
icon: {
|
|
4990
|
-
name: '
|
|
5094
|
+
name: 'dots'
|
|
4991
5095
|
},
|
|
4992
|
-
|
|
4993
|
-
|
|
4994
|
-
|
|
5096
|
+
tooltip: 'Actions',
|
|
5097
|
+
name: 'conversationActions',
|
|
5098
|
+
size: 'tiny'
|
|
4995
5099
|
});
|
|
4996
|
-
this.
|
|
4997
|
-
this.
|
|
5100
|
+
this.actionsButton.container.classList.add('jodit-ui-conversation-list__item-actions');
|
|
5101
|
+
this.actionsButton.onAction((e)=>{
|
|
4998
5102
|
e.stopPropagation();
|
|
4999
|
-
this.
|
|
5103
|
+
this.showActionsMenu(e);
|
|
5000
5104
|
});
|
|
5001
5105
|
}
|
|
5002
|
-
item.appendChild(this.
|
|
5106
|
+
item.appendChild(this.actionsButton.container);
|
|
5003
5107
|
}
|
|
5004
5108
|
onClick() {
|
|
5109
|
+
if (this.isRenaming) {
|
|
5110
|
+
return;
|
|
5111
|
+
}
|
|
5005
5112
|
this.j.e.fire('selectConversation.ai-assistant-pro', this.conversation.id);
|
|
5006
5113
|
}
|
|
5007
|
-
|
|
5008
|
-
|
|
5009
|
-
|
|
5010
|
-
|
|
5114
|
+
showActionsMenu(event) {
|
|
5115
|
+
if (!this.contextMenu || !this.actionsButton) return;
|
|
5116
|
+
const actions = [
|
|
5117
|
+
{
|
|
5118
|
+
title: 'Rename',
|
|
5119
|
+
icon: 'pencil',
|
|
5120
|
+
exec: ()=>{
|
|
5121
|
+
this.startInlineRename();
|
|
5122
|
+
}
|
|
5123
|
+
},
|
|
5124
|
+
{
|
|
5125
|
+
title: 'Delete',
|
|
5126
|
+
icon: 'bin',
|
|
5127
|
+
exec: ()=>{
|
|
5128
|
+
this.onDelete();
|
|
5129
|
+
}
|
|
5130
|
+
}
|
|
5131
|
+
];
|
|
5132
|
+
const buttonRect = this.actionsButton.container.getBoundingClientRect();
|
|
5133
|
+
this.contextMenu.show(buttonRect.left, buttonRect.bottom, actions);
|
|
5134
|
+
event.stopPropagation();
|
|
5135
|
+
}
|
|
5136
|
+
startInlineRename() {
|
|
5137
|
+
if (this.isRenaming || !this.titleElement) {
|
|
5138
|
+
return;
|
|
5139
|
+
}
|
|
5140
|
+
this.isRenaming = true;
|
|
5141
|
+
const titleEl = this.titleElement;
|
|
5142
|
+
const currentTitle = this.conversation.title;
|
|
5143
|
+
const input = this.j.c.element('input');
|
|
5144
|
+
input.type = 'text';
|
|
5145
|
+
input.value = currentTitle;
|
|
5146
|
+
input.className = 'jodit-ui-conversation-list__item-title-input';
|
|
5147
|
+
titleEl.textContent = '';
|
|
5148
|
+
titleEl.appendChild(input);
|
|
5149
|
+
input.focus();
|
|
5150
|
+
input.select();
|
|
5151
|
+
const commit = ()=>{
|
|
5152
|
+
if (!this.isRenaming) {
|
|
5153
|
+
return;
|
|
5011
5154
|
}
|
|
5155
|
+
const newTitle = input.value.trim();
|
|
5156
|
+
this.isRenaming = false;
|
|
5157
|
+
if (newTitle && newTitle !== currentTitle) {
|
|
5158
|
+
titleEl.textContent = newTitle;
|
|
5159
|
+
this.j.e.fire('renameConversation.ai-assistant-pro', this.conversation.id, newTitle);
|
|
5160
|
+
} else {
|
|
5161
|
+
titleEl.textContent = currentTitle;
|
|
5162
|
+
}
|
|
5163
|
+
};
|
|
5164
|
+
this.j.e.on(input, 'blur', commit);
|
|
5165
|
+
this.j.e.on(input, 'keydown', (e)=>{
|
|
5166
|
+
if (e.key === 'Enter') {
|
|
5167
|
+
e.preventDefault();
|
|
5168
|
+
input.blur();
|
|
5169
|
+
}
|
|
5170
|
+
if (e.key === 'Escape') {
|
|
5171
|
+
this.isRenaming = false;
|
|
5172
|
+
titleEl.textContent = currentTitle;
|
|
5173
|
+
}
|
|
5174
|
+
});
|
|
5175
|
+
// Prevent click on input from navigating to conversation
|
|
5176
|
+
this.j.e.on(input, 'click', (e)=>{
|
|
5177
|
+
e.stopPropagation();
|
|
5012
5178
|
});
|
|
5013
5179
|
}
|
|
5180
|
+
onDelete() {
|
|
5181
|
+
this.j.e.fire('deleteConversation.ai-assistant-pro', this.conversation.id);
|
|
5182
|
+
}
|
|
5014
5183
|
destruct() {
|
|
5015
|
-
var
|
|
5016
|
-
(
|
|
5184
|
+
var _this_actionsButton, _this_contextMenu;
|
|
5185
|
+
(_this_actionsButton = this.actionsButton) === null || _this_actionsButton === void 0 ? void 0 : _this_actionsButton.destruct();
|
|
5186
|
+
(_this_contextMenu = this.contextMenu) === null || _this_contextMenu === void 0 ? void 0 : _this_contextMenu.destruct();
|
|
5017
5187
|
super.destruct();
|
|
5018
5188
|
}
|
|
5019
5189
|
constructor(view, conversation, isActive = false, opts){
|
|
5020
|
-
super(view), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "opts", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "conversation", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "isActive", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "
|
|
5190
|
+
super(view), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "opts", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "conversation", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "isActive", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "actionsButton", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "contextMenu", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "titleElement", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "isRenaming", void 0), this.opts = opts, this.actionsButton = null, this.contextMenu = null, this.titleElement = null, this.isRenaming = false;
|
|
5021
5191
|
this.conversation = conversation;
|
|
5022
5192
|
this.isActive = isActive;
|
|
5193
|
+
this.contextMenu = new jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_5__.ContextMenu(this.j);
|
|
5023
5194
|
this.updateContent();
|
|
5024
5195
|
}
|
|
5025
5196
|
}
|
|
5026
5197
|
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
|
|
5027
5198
|
(0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.watch)('container:click')
|
|
5028
5199
|
], UIConversationListItem.prototype, "onClick", null);
|
|
5200
|
+
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
|
|
5201
|
+
jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.autobind
|
|
5202
|
+
], UIConversationListItem.prototype, "showActionsMenu", null);
|
|
5203
|
+
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
|
|
5204
|
+
jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.autobind
|
|
5205
|
+
], UIConversationListItem.prototype, "startInlineRename", null);
|
|
5029
5206
|
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
|
|
5030
5207
|
jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_2__.autobind
|
|
5031
5208
|
], UIConversationListItem.prototype, "onDelete", null);
|
|
@@ -5276,7 +5453,7 @@ class UIInputArea extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.UIEleme
|
|
|
5276
5453
|
icon: {
|
|
5277
5454
|
name: 'send'
|
|
5278
5455
|
},
|
|
5279
|
-
variant: '
|
|
5456
|
+
variant: 'initial',
|
|
5280
5457
|
size: 'middle'
|
|
5281
5458
|
});
|
|
5282
5459
|
// Stop button
|
|
@@ -5467,6 +5644,7 @@ UIInputArea = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorat
|
|
|
5467
5644
|
/* harmony import */ var jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(2748);
|
|
5468
5645
|
/* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(67510);
|
|
5469
5646
|
/* harmony import */ var jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(62843);
|
|
5647
|
+
/* harmony import */ var jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(80870);
|
|
5470
5648
|
/*!
|
|
5471
5649
|
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
5472
5650
|
* See LICENSE.md in the project root for license information.
|
|
@@ -5484,6 +5662,7 @@ UIInputArea = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorat
|
|
|
5484
5662
|
|
|
5485
5663
|
|
|
5486
5664
|
|
|
5665
|
+
|
|
5487
5666
|
class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElement {
|
|
5488
5667
|
className() {
|
|
5489
5668
|
return 'UIMainPanel';
|
|
@@ -5515,8 +5694,10 @@ class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElem
|
|
|
5515
5694
|
addResize() {}
|
|
5516
5695
|
afterRender() {
|
|
5517
5696
|
this.content = this.getElm('content');
|
|
5697
|
+
this.headerContextMenu = new jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_13__.ContextMenu(this.j);
|
|
5518
5698
|
this.createComponents();
|
|
5519
5699
|
this.createHeaderButtons();
|
|
5700
|
+
this.setupConversationRenameHandler();
|
|
5520
5701
|
this.__updateView('welcome');
|
|
5521
5702
|
}
|
|
5522
5703
|
__onChangeView() {
|
|
@@ -5552,6 +5733,18 @@ class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElem
|
|
|
5552
5733
|
this.j.e.fire('backToList.ai-assistant-pro');
|
|
5553
5734
|
});
|
|
5554
5735
|
headerLeft.appendChild(backButton.container);
|
|
5736
|
+
// Conversation actions "..." button (visible only in conversation view)
|
|
5737
|
+
this.conversationActionsButton = new jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_12__.UIButton(this.j, {
|
|
5738
|
+
icon: {
|
|
5739
|
+
name: 'dots'
|
|
5740
|
+
},
|
|
5741
|
+
size: 'small',
|
|
5742
|
+
tooltip: 'Conversation actions',
|
|
5743
|
+
variant: 'initial'
|
|
5744
|
+
});
|
|
5745
|
+
this.conversationActionsButton.container.classList.add(this.getFullElName('conversation-actions-button'));
|
|
5746
|
+
this.conversationActionsButton.onAction(this.showConversationActionsMenu);
|
|
5747
|
+
headerRight.appendChild(this.conversationActionsButton.container);
|
|
5555
5748
|
// New conversation button
|
|
5556
5749
|
const newButton = new jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_12__.UIButton(this.j, {
|
|
5557
5750
|
icon: {
|
|
@@ -5595,6 +5788,70 @@ class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElem
|
|
|
5595
5788
|
});
|
|
5596
5789
|
headerRight.appendChild(closeButton.container);
|
|
5597
5790
|
}
|
|
5791
|
+
setupConversationRenameHandler() {
|
|
5792
|
+
// no-op: rename is handled inline in conversation list items
|
|
5793
|
+
}
|
|
5794
|
+
showConversationActionsMenu(event) {
|
|
5795
|
+
if (!this.headerContextMenu || !this.state.currentConversation) {
|
|
5796
|
+
return;
|
|
5797
|
+
}
|
|
5798
|
+
const conv = this.state.currentConversation;
|
|
5799
|
+
const actions = [
|
|
5800
|
+
{
|
|
5801
|
+
title: 'Rename',
|
|
5802
|
+
icon: 'pencil',
|
|
5803
|
+
exec: ()=>{
|
|
5804
|
+
this.showRenamePrompt(conv.id, conv.title || this.j.i18n('Conversation'));
|
|
5805
|
+
}
|
|
5806
|
+
},
|
|
5807
|
+
{
|
|
5808
|
+
title: 'Delete',
|
|
5809
|
+
icon: 'bin',
|
|
5810
|
+
exec: ()=>{
|
|
5811
|
+
this.j.e.fire('deleteConversation.ai-assistant-pro', conv.id);
|
|
5812
|
+
}
|
|
5813
|
+
}
|
|
5814
|
+
];
|
|
5815
|
+
const buttonRect = this.conversationActionsButton.container.getBoundingClientRect();
|
|
5816
|
+
this.headerContextMenu.show(buttonRect.left, buttonRect.bottom, actions);
|
|
5817
|
+
event.stopPropagation();
|
|
5818
|
+
}
|
|
5819
|
+
showRenamePrompt(id, currentTitle) {
|
|
5820
|
+
if (this.isEditingTitle) {
|
|
5821
|
+
return;
|
|
5822
|
+
}
|
|
5823
|
+
this.isEditingTitle = true;
|
|
5824
|
+
const headerTitle = this.getElm('header-title');
|
|
5825
|
+
const input = this.j.c.element('input');
|
|
5826
|
+
input.type = 'text';
|
|
5827
|
+
input.value = currentTitle;
|
|
5828
|
+
input.className = this.getFullElName('header-title-input');
|
|
5829
|
+
headerTitle.textContent = '';
|
|
5830
|
+
headerTitle.appendChild(input);
|
|
5831
|
+
input.focus();
|
|
5832
|
+
input.select();
|
|
5833
|
+
const commit = ()=>{
|
|
5834
|
+
const newTitle = input.value.trim();
|
|
5835
|
+
this.isEditingTitle = false;
|
|
5836
|
+
if (newTitle && newTitle !== currentTitle) {
|
|
5837
|
+
this.j.e.fire('renameConversation.ai-assistant-pro', id, newTitle);
|
|
5838
|
+
headerTitle.textContent = newTitle;
|
|
5839
|
+
} else {
|
|
5840
|
+
headerTitle.textContent = currentTitle;
|
|
5841
|
+
}
|
|
5842
|
+
};
|
|
5843
|
+
this.j.e.on(input, 'blur', commit);
|
|
5844
|
+
this.j.e.on(input, 'keydown', (e)=>{
|
|
5845
|
+
if (e.key === 'Enter') {
|
|
5846
|
+
e.preventDefault();
|
|
5847
|
+
input.blur();
|
|
5848
|
+
}
|
|
5849
|
+
if (e.key === 'Escape') {
|
|
5850
|
+
this.isEditingTitle = false;
|
|
5851
|
+
headerTitle.textContent = currentTitle;
|
|
5852
|
+
}
|
|
5853
|
+
});
|
|
5854
|
+
}
|
|
5598
5855
|
/**
|
|
5599
5856
|
* Check if current display mode is flight
|
|
5600
5857
|
*/ isFlightMode() {
|
|
@@ -5687,17 +5944,19 @@ class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElem
|
|
|
5687
5944
|
}
|
|
5688
5945
|
}
|
|
5689
5946
|
destruct() {
|
|
5690
|
-
var _this_welcomeScreen, _this_conversationList, _this_messageList, _this_inputArea, _this_permissionRequest, _this_settingsButton;
|
|
5947
|
+
var _this_welcomeScreen, _this_conversationList, _this_messageList, _this_inputArea, _this_permissionRequest, _this_settingsButton, _this_conversationActionsButton, _this_headerContextMenu;
|
|
5691
5948
|
(_this_welcomeScreen = this.welcomeScreen) === null || _this_welcomeScreen === void 0 ? void 0 : _this_welcomeScreen.destruct();
|
|
5692
5949
|
(_this_conversationList = this.conversationList) === null || _this_conversationList === void 0 ? void 0 : _this_conversationList.destruct();
|
|
5693
5950
|
(_this_messageList = this.messageList) === null || _this_messageList === void 0 ? void 0 : _this_messageList.destruct();
|
|
5694
5951
|
(_this_inputArea = this.inputArea) === null || _this_inputArea === void 0 ? void 0 : _this_inputArea.destruct();
|
|
5695
5952
|
(_this_permissionRequest = this.permissionRequest) === null || _this_permissionRequest === void 0 ? void 0 : _this_permissionRequest.destruct();
|
|
5696
5953
|
(_this_settingsButton = this.settingsButton) === null || _this_settingsButton === void 0 ? void 0 : _this_settingsButton.destruct();
|
|
5954
|
+
(_this_conversationActionsButton = this.conversationActionsButton) === null || _this_conversationActionsButton === void 0 ? void 0 : _this_conversationActionsButton.destruct();
|
|
5955
|
+
(_this_headerContextMenu = this.headerContextMenu) === null || _this_headerContextMenu === void 0 ? void 0 : _this_headerContextMenu.destruct();
|
|
5697
5956
|
super.destruct();
|
|
5698
5957
|
}
|
|
5699
5958
|
constructor(view, state, options, updateConversation){
|
|
5700
|
-
super(view), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "state", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "options", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "updateConversation", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "permissionRequest", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "settingsButton", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "content", void 0), this.state = state, this.options = options, this.updateConversation = updateConversation, this.permissionRequest = null, this.settingsButton = null;
|
|
5959
|
+
super(view), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "state", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "options", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "updateConversation", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "permissionRequest", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "settingsButton", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "content", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "isEditingTitle", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "conversationActionsButton", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "headerContextMenu", void 0), this.state = state, this.options = options, this.updateConversation = updateConversation, this.permissionRequest = null, this.settingsButton = null, this.isEditingTitle = false, this.conversationActionsButton = null, this.headerContextMenu = null;
|
|
5701
5960
|
}
|
|
5702
5961
|
}
|
|
5703
5962
|
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
|
|
@@ -5709,6 +5968,12 @@ class UIMainPanel extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_11__.UIElem
|
|
|
5709
5968
|
'state.currentConversation'
|
|
5710
5969
|
])
|
|
5711
5970
|
], UIMainPanel.prototype, "__onChangeView", null);
|
|
5971
|
+
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
|
|
5972
|
+
jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_9__.autobind
|
|
5973
|
+
], UIMainPanel.prototype, "showConversationActionsMenu", null);
|
|
5974
|
+
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
|
|
5975
|
+
jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_9__.autobind
|
|
5976
|
+
], UIMainPanel.prototype, "showRenamePrompt", null);
|
|
5712
5977
|
(0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
|
|
5713
5978
|
(0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_9__.watch)('state.currentConversation')
|
|
5714
5979
|
], UIMainPanel.prototype, "onChangeCurrentConversation", null);
|
|
@@ -6029,7 +6294,8 @@ UIArtifact = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate
|
|
|
6029
6294
|
/* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(67510);
|
|
6030
6295
|
/* harmony import */ var jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(62843);
|
|
6031
6296
|
/* harmony import */ var jodit_esm_core_ui_group_group__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(62405);
|
|
6032
|
-
/* harmony import */ var
|
|
6297
|
+
/* harmony import */ var jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12153);
|
|
6298
|
+
/* harmony import */ var jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(80870);
|
|
6033
6299
|
/*!
|
|
6034
6300
|
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
6035
6301
|
* See LICENSE.md in the project root for license information.
|
|
@@ -6042,6 +6308,7 @@ UIArtifact = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate
|
|
|
6042
6308
|
|
|
6043
6309
|
|
|
6044
6310
|
|
|
6311
|
+
|
|
6045
6312
|
class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.UIElement {
|
|
6046
6313
|
className() {
|
|
6047
6314
|
return 'UIMessageListItem';
|
|
@@ -6051,7 +6318,7 @@ class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.U
|
|
|
6051
6318
|
}
|
|
6052
6319
|
onReady() {
|
|
6053
6320
|
this.updateContent();
|
|
6054
|
-
this.contextMenu = new
|
|
6321
|
+
this.contextMenu = new jodit_esm_modules_context_menu_context_menu__WEBPACK_IMPORTED_MODULE_8__.ContextMenu(this.j);
|
|
6055
6322
|
}
|
|
6056
6323
|
updateContent() {
|
|
6057
6324
|
const container = this.container;
|
|
@@ -6204,7 +6471,7 @@ class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.U
|
|
|
6204
6471
|
const header = this.j.c.div(this.getFullElName('tool-header'));
|
|
6205
6472
|
const icon = this.j.c.div(this.getFullElName('tool-icon'));
|
|
6206
6473
|
icon.classList.add(this.getFullElName('tool-icon', toolCall.status, true));
|
|
6207
|
-
icon.
|
|
6474
|
+
icon.innerHTML = jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_7__.Icon.get('tool-bolt') || '';
|
|
6208
6475
|
const name = this.j.c.div(this.getFullElName('tool-name'));
|
|
6209
6476
|
name.textContent = this.j.i18n(toolCall.name);
|
|
6210
6477
|
const status = this.j.c.div(this.getFullElName('tool-status'));
|
|
@@ -6232,7 +6499,12 @@ class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.U
|
|
|
6232
6499
|
type: 'button',
|
|
6233
6500
|
class: this.getFullElName('tool-expandable-toggle')
|
|
6234
6501
|
});
|
|
6235
|
-
|
|
6502
|
+
const chevronSpan = this.j.c.span(this.getFullElName('tool-expandable-chevron'));
|
|
6503
|
+
chevronSpan.innerHTML = jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_7__.Icon.get('chevron-right') || '';
|
|
6504
|
+
const titleSpan = this.j.c.span();
|
|
6505
|
+
titleSpan.textContent = this.j.i18n(title);
|
|
6506
|
+
toggle.appendChild(chevronSpan);
|
|
6507
|
+
toggle.appendChild(titleSpan);
|
|
6236
6508
|
const contentEl = this.j.c.element('pre', {
|
|
6237
6509
|
class: this.getFullElName('tool-expandable-content')
|
|
6238
6510
|
});
|
|
@@ -6242,10 +6514,10 @@ class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.U
|
|
|
6242
6514
|
const isCurrentlyExpanded = contentEl.style.display !== 'none';
|
|
6243
6515
|
if (isCurrentlyExpanded) {
|
|
6244
6516
|
contentEl.style.display = 'none';
|
|
6245
|
-
toggle.
|
|
6517
|
+
toggle.classList.remove('expanded');
|
|
6246
6518
|
} else {
|
|
6247
6519
|
contentEl.style.display = 'block';
|
|
6248
|
-
toggle.
|
|
6520
|
+
toggle.classList.add('expanded');
|
|
6249
6521
|
}
|
|
6250
6522
|
});
|
|
6251
6523
|
section.appendChild(toggle);
|
|
@@ -6256,14 +6528,14 @@ class UIMessageListItem extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_4__.U
|
|
|
6256
6528
|
* Get tool status text
|
|
6257
6529
|
*/ getToolStatusText(status) {
|
|
6258
6530
|
const statusMap = {
|
|
6259
|
-
pending: '
|
|
6260
|
-
approved: '
|
|
6261
|
-
denied: '
|
|
6262
|
-
executing: '
|
|
6263
|
-
executed: '
|
|
6264
|
-
error: '
|
|
6531
|
+
pending: 'pending',
|
|
6532
|
+
approved: 'approved',
|
|
6533
|
+
denied: 'denied',
|
|
6534
|
+
executing: 'running',
|
|
6535
|
+
executed: 'done',
|
|
6536
|
+
error: 'error'
|
|
6265
6537
|
};
|
|
6266
|
-
return statusMap[status] ||
|
|
6538
|
+
return statusMap[status] || status;
|
|
6267
6539
|
}
|
|
6268
6540
|
/**
|
|
6269
6541
|
* Format message content using custom formatter
|
|
@@ -6459,6 +6731,7 @@ UIMessageList = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decor
|
|
|
6459
6731
|
/* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67510);
|
|
6460
6732
|
/* harmony import */ var jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(62843);
|
|
6461
6733
|
/* harmony import */ var jodit_esm_core_ui_form_inputs_select_select__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(12234);
|
|
6734
|
+
/* harmony import */ var jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12153);
|
|
6462
6735
|
/*!
|
|
6463
6736
|
* Jodit Editor PRO (https://xdsoft.net/jodit/)
|
|
6464
6737
|
* See LICENSE.md in the project root for license information.
|
|
@@ -6469,6 +6742,7 @@ UIMessageList = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decor
|
|
|
6469
6742
|
|
|
6470
6743
|
|
|
6471
6744
|
|
|
6745
|
+
|
|
6472
6746
|
class UIPermissionRequest extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__.UIElement {
|
|
6473
6747
|
className() {
|
|
6474
6748
|
return 'UIPermissionRequest';
|
|
@@ -6491,31 +6765,38 @@ class UIPermissionRequest extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__
|
|
|
6491
6765
|
<div class="&__title">~Permission Required~</div>
|
|
6492
6766
|
</div>
|
|
6493
6767
|
<div class="&__tool-info"></div>
|
|
6494
|
-
<div class="&__actions"
|
|
6768
|
+
<div class="&__actions">
|
|
6769
|
+
<div class="&__actions-buttons"></div>
|
|
6770
|
+
<div class="&__actions-scope"></div>
|
|
6771
|
+
</div>
|
|
6495
6772
|
</div>`;
|
|
6496
6773
|
}
|
|
6497
6774
|
afterRender() {
|
|
6775
|
+
// Set icon
|
|
6776
|
+
const iconEl = this.getElm('icon');
|
|
6777
|
+
if (iconEl) {
|
|
6778
|
+
iconEl.innerHTML = jodit_esm_core_ui_icon__WEBPACK_IMPORTED_MODULE_6__.Icon.get('shield') || '';
|
|
6779
|
+
}
|
|
6498
6780
|
this.createControls();
|
|
6499
6781
|
this.updateContent();
|
|
6500
6782
|
}
|
|
6501
6783
|
createControls() {
|
|
6502
|
-
const
|
|
6784
|
+
const buttonsContainer = this.getElm('actions-buttons');
|
|
6785
|
+
const scopeContainer = this.getElm('actions-scope');
|
|
6503
6786
|
// Deny button
|
|
6504
6787
|
this.denyButton = new jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_4__.UIButton(this.j, {
|
|
6505
|
-
|
|
6506
|
-
|
|
6507
|
-
|
|
6508
|
-
|
|
6509
|
-
size: 'small'
|
|
6788
|
+
text: this.j.i18n('Deny'),
|
|
6789
|
+
variant: 'initial',
|
|
6790
|
+
size: 'small',
|
|
6791
|
+
name: 'deny-permission'
|
|
6510
6792
|
});
|
|
6511
6793
|
this.j.e.on(this.denyButton, 'click', this.onDeny);
|
|
6512
6794
|
// Approve button
|
|
6513
6795
|
this.approveButton = new jodit_esm_core_ui_button__WEBPACK_IMPORTED_MODULE_4__.UIButton(this.j, {
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
|
|
6517
|
-
|
|
6518
|
-
size: 'small'
|
|
6796
|
+
text: this.j.i18n('Allow'),
|
|
6797
|
+
variant: 'initial',
|
|
6798
|
+
size: 'small',
|
|
6799
|
+
name: 'approve-permission'
|
|
6519
6800
|
});
|
|
6520
6801
|
this.j.e.on(this.approveButton, 'click', this.onApprove);
|
|
6521
6802
|
// Scope select
|
|
@@ -6537,9 +6818,9 @@ class UIPermissionRequest extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_3__
|
|
|
6537
6818
|
]
|
|
6538
6819
|
});
|
|
6539
6820
|
this.scopeSelect.value = this.state.defaultPermissionScope;
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6821
|
+
buttonsContainer.appendChild(this.denyButton.container);
|
|
6822
|
+
buttonsContainer.appendChild(this.approveButton.container);
|
|
6823
|
+
scopeContainer.appendChild(this.scopeSelect.container);
|
|
6543
6824
|
}
|
|
6544
6825
|
updateContent() {
|
|
6545
6826
|
if (!this.toolCall) return;
|