@ckeditor/ckeditor5-ai 48.2.0-alpha.7 → 48.3.0-alpha.0
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/dist/aiactions/aiactions.d.ts +74 -73
- package/dist/aiactions/model/aiactionsinteraction.d.ts +53 -53
- package/dist/aiactions/model/aiactionsreply.d.ts +18 -18
- package/dist/aiassistant/adapters/aiadapter.d.ts +48 -48
- package/dist/aiassistant/adapters/aitextadapter.d.ts +133 -133
- package/dist/aiassistant/adapters/awstextadapter.d.ts +42 -42
- package/dist/aiassistant/adapters/openaitextadapter.d.ts +184 -184
- package/dist/aiassistant/aiassistant.d.ts +436 -436
- package/dist/aiassistant/aiassistantediting.d.ts +51 -51
- package/dist/aiassistant/aiassistantui.d.ts +53 -53
- package/dist/aiassistant/legacyerrors.d.ts +0 -4
- package/dist/aiassistant/ui/aiassistantcontroller.d.ts +106 -105
- package/dist/aiassistant/ui/form/aiformcontentarea.d.ts +43 -43
- package/dist/aiassistant/ui/form/aiformerrorview.d.ts +19 -19
- package/dist/aiassistant/ui/form/aiformpromptview.d.ts +38 -38
- package/dist/aiassistant/ui/form/aiformtoolbarview.d.ts +50 -50
- package/dist/aiassistant/ui/form/aiformview.d.ts +121 -121
- package/dist/aiassistant/ui/form/aihistorylistitemview.d.ts +13 -13
- package/dist/aiassistant/ui/form/aihistorylistview.d.ts +27 -27
- package/dist/aiassistant/ui/form/prompthistory.d.ts +15 -15
- package/dist/aiassistant/ui/showaiassistantcommand.d.ts +35 -35
- package/dist/aiassistant/utils/common-translations.d.ts +6 -6
- package/dist/aiassistant/utils/normalizecommandsconfig.d.ts +9 -9
- package/dist/aiballoon/aiballoon.d.ts +86 -86
- package/dist/aiballoon/ui/aiballoonview.d.ts +26 -26
- package/dist/aichat/aichat.d.ts +88 -87
- package/dist/aichat/aichatballoon.d.ts +83 -83
- package/dist/aichat/aichatcontroller.d.ts +265 -264
- package/dist/aichat/aichatui.d.ts +324 -336
- package/dist/aichat/model/aichatcontext.d.ts +623 -618
- package/dist/aichat/model/aichatconversation.d.ts +257 -268
- package/dist/aichat/model/aichatinteraction.d.ts +40 -40
- package/dist/aichat/ui/aichatballoonview.d.ts +103 -103
- package/dist/aichat/ui/aichatcontrolsview.d.ts +130 -130
- package/dist/aichat/ui/aichatfeedview.d.ts +136 -136
- package/dist/aichat/ui/aichatview.d.ts +41 -41
- package/dist/aichat/ui/controls/aichatchipsoverflowmanager.d.ts +63 -63
- package/dist/aichat/ui/controls/aichatcontextitembuttonview.d.ts +41 -41
- package/dist/aichat/ui/controls/aichatcontextpanelurlinputview.d.ts +79 -79
- package/dist/aichat/ui/controls/aichatcontextpanelview.d.ts +103 -103
- package/dist/aichat/ui/controls/aichatcontrolsloaderview.d.ts +8 -8
- package/dist/aichat/ui/controls/aichatdropzoneview.d.ts +18 -18
- package/dist/aichat/ui/controls/aichatpromptcapabilitiesview.d.ts +81 -81
- package/dist/aichat/ui/controls/aichatpromptinputview.d.ts +44 -44
- package/dist/aichat/ui/controls/aichatpromptsuggestionslistview.d.ts +13 -13
- package/dist/aichat/ui/controls/resources/aichatcontextresourceslistview.d.ts +44 -44
- package/dist/aichat/ui/controls/resources/aichatcontextresourcesview.d.ts +52 -52
- package/dist/aichat/ui/controls/resources/aichatresourcelistitemview.d.ts +56 -56
- package/dist/aichat/ui/controls/resources/aichatresourcesballoonview.d.ts +104 -104
- package/dist/aichat/ui/controls/resources/aichatresourcessearchinputview.d.ts +53 -53
- package/dist/aichat/ui/feed/aichatfeedcontextchipsview.d.ts +22 -22
- package/dist/aichat/ui/feed/aichatfeedcustomelementview.d.ts +33 -33
- package/dist/aichat/ui/feed/aichatfeederroritemview.d.ts +32 -32
- package/dist/aichat/ui/feed/aichatfeedinteractionheaderview.d.ts +24 -24
- package/dist/aichat/ui/feed/aichatfeeditemview.d.ts +39 -39
- package/dist/aichat/ui/feed/aichatfeedreplyitemview.d.ts +40 -40
- package/dist/aichat/ui/feed/aichatfeedsuggestionitemactionsview.d.ts +61 -61
- package/dist/aichat/ui/feed/aichatfeedsuggestionitemview.d.ts +82 -82
- package/dist/aichat/ui/feed/aichatfeedusermessageitem.d.ts +33 -33
- package/dist/aichat/utils/eventnames.d.ts +8 -4
- package/dist/aichat/utils/parsesingleurl.d.ts +0 -4
- package/dist/aichat/utils/promisequeue.d.ts +26 -25
- package/dist/aichat/utils/readdatatransferfiles.d.ts +9 -9
- package/dist/aichat/utils/resolvepaste.d.ts +58 -58
- package/dist/aichathistory/aichathistory.d.ts +26 -26
- package/dist/aichathistory/aichathistorycontroller.d.ts +36 -35
- package/dist/aichathistory/aichathistoryui.d.ts +81 -89
- package/dist/aichathistory/model/aichathistoryconversations.d.ts +95 -102
- package/dist/aichathistory/model/aichathistoryitem.d.ts +52 -53
- package/dist/aichathistory/ui/aichathistorylistitemview.d.ts +41 -40
- package/dist/aichathistory/ui/aichathistorylistview.d.ts +28 -28
- package/dist/aichathistory/ui/aichathistorysectionlistview.d.ts +16 -16
- package/dist/aichathistory/ui/aichathistoryview.d.ts +33 -33
- package/dist/aichatshortcuts/aichatshortcuts.d.ts +295 -295
- package/dist/aichatshortcuts/ui/aichatshortcutsview.d.ts +24 -24
- package/dist/aichatshortcuts/ui/aichatshortcutview.d.ts +18 -18
- package/dist/aiconfig.d.ts +227 -227
- package/dist/aicore/aiconnector.d.ts +359 -354
- package/dist/aicore/aiediting.d.ts +97 -97
- package/dist/aicore/aierrorreporter.d.ts +73 -0
- package/dist/aicore/aigateway.d.ts +94 -54
- package/dist/aicore/errors/aicoreerror.d.ts +67 -0
- package/dist/aicore/errors/geterrorcode.d.ts +17 -0
- package/dist/aicore/errors/isaborterror.d.ts +12 -0
- package/dist/aicore/errors/normalizeerror.d.ts +18 -0
- package/dist/aicore/model/aicapabilities.d.ts +53 -52
- package/dist/aicore/model/aicontext.d.ts +61 -61
- package/dist/aicore/model/aiinteraction.d.ts +162 -168
- package/dist/aicore/model/aimodels.d.ts +73 -76
- package/dist/aicore/model/aireply.d.ts +118 -124
- package/dist/aicore/model/airunresult.d.ts +86 -86
- package/dist/aicore/pipeline/airesponseapplier.d.ts +284 -284
- package/dist/aicore/pipeline/airesponseparser.d.ts +24 -23
- package/dist/aicore/ui/aidisclaimerview.d.ts +13 -13
- package/dist/aicore/ui/aiheaderview.d.ts +28 -28
- package/dist/aicore/ui/aiskeleton.d.ts +31 -31
- package/dist/aicore/ui/aispinner.d.ts +11 -11
- package/dist/aicore/ui/suggestioncontainer/aiminitoolbarview.d.ts +56 -56
- package/dist/aicore/ui/suggestioncontainer/aisuggestionbodyview.d.ts +80 -80
- package/dist/aicore/ui/suggestioncontainer/aisuggestioncontainerview.d.ts +46 -46
- package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartheaderview.d.ts +41 -41
- package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartstateview.d.ts +25 -28
- package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentparttoolbarview.d.ts +25 -25
- package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartview.d.ts +62 -62
- package/dist/aicore/ui/suggestioncontainer/aisuggestionheaderview.d.ts +32 -32
- package/dist/aicore/ui/suggestioncontainer/aisuggestionloaderview.d.ts +11 -11
- package/dist/aicore/ui/suggestioncontainer/aisuggestionstreamablecontentview.d.ts +31 -27
- package/dist/aicore/ui/suggestioncontainer/aiwebsourcesview.d.ts +24 -24
- package/dist/aicore/utils/abortabletimeout.d.ts +11 -11
- package/dist/aicore/utils/builddocumentsuggestionsmap.d.ts +30 -0
- package/dist/aicore/utils/buttonclasses.d.ts +8 -8
- package/dist/aicore/utils/cleanupstreamingartifacts.d.ts +12 -0
- package/dist/aicore/utils/common-translations.d.ts +6 -6
- package/dist/aicore/utils/createandattachaibodycollection.d.ts +19 -0
- package/dist/aicore/utils/createresizebutton.d.ts +9 -9
- package/dist/aicore/utils/createstartconversationbutton.d.ts +8 -8
- package/dist/aicore/utils/documentposition.d.ts +37 -37
- package/dist/aicore/utils/documentrange.d.ts +41 -41
- package/dist/aicore/utils/eventnames.d.ts +5 -5
- package/dist/aicore/utils/geteditorsfromcontext.d.ts +13 -13
- package/dist/aicore/utils/getoperationsfordocumentsuggestions.d.ts +22 -0
- package/dist/aicore/utils/getsuggestionpartsfromreply.d.ts +18 -18
- package/dist/aicore/utils/htmlparser.d.ts +17 -17
- package/dist/aicore/utils/htmlstreamer.d.ts +79 -79
- package/dist/aicore/utils/markoperationsasai.d.ts +23 -0
- package/dist/aicore/utils/scrollmanager.d.ts +24 -23
- package/dist/aicore/utils/showaitab.d.ts +1 -0
- package/dist/aidocumentprocessing/aidocumentprocessinggateway.d.ts +87 -0
- package/dist/aidocumentprocessing/model/aidocumentprocessingrunresult.d.ts +19 -0
- package/dist/aieditorintegration/aieditorintegration.d.ts +32 -32
- package/dist/aieditorintegration/aitogglebutton/aitogglebuttonui.d.ts +34 -34
- package/dist/aieditorintegration/aitogglebutton/toggleaicommand.d.ts +12 -12
- package/dist/aiquickactions/aiquickactions.d.ts +250 -250
- package/dist/aiquickactions/aiquickactionscommand.d.ts +10 -10
- package/dist/aiquickactions/aiquickactionsediting.d.ts +22 -22
- package/dist/aiquickactions/aiquickactionsui.d.ts +125 -124
- package/dist/aiquickactions/ui/aiquickactionsbuttoncreator.d.ts +57 -57
- package/dist/aiquickactions/ui/aiquickactionsdropdowncontentview.d.ts +45 -45
- package/dist/aiquickactions/ui/aiquickactionsdropdowncreator.d.ts +59 -59
- package/dist/aiquickactions/ui/aiquickactionsfilteredlistview.d.ts +0 -4
- package/dist/aiquickactions/ui/balloon/aiactionsballoondisclaimerview.d.ts +12 -12
- package/dist/aiquickactions/ui/balloon/aiactionsballoontoolbarview.d.ts +32 -32
- package/dist/aiquickactions/ui/balloon/aiactionsballoonview.d.ts +129 -125
- package/dist/aiquickactions/ui/dropdownmenubuttonwithhighlightview.d.ts +24 -24
- package/dist/aireviewcore/aireviewcorecheckregistry.d.ts +34 -29
- package/dist/aireviewcore/aireviewcorecontroller.d.ts +48 -48
- package/dist/aireviewcore/aireviewcoreediting.d.ts +216 -224
- package/dist/aireviewcore/aireviewcoreui.d.ts +84 -84
- package/dist/aireviewcore/model/aireviewcheck.d.ts +49 -49
- package/dist/aireviewcore/model/aireviewchecklist.d.ts +29 -28
- package/dist/aireviewcore/model/aireviewcheckresult.d.ts +36 -35
- package/dist/aireviewcore/model/aireviewcheckresultchange.d.ts +51 -50
- package/dist/aireviewcore/model/aireviewcheckrun.d.ts +140 -151
- package/dist/aireviewcore/model/aireviewsystemcheckrun.d.ts +16 -16
- package/dist/aireviewcore/types.d.ts +24 -24
- package/dist/aireviewcore/ui/aireviewcoreballoonsuggestionview.d.ts +34 -34
- package/dist/aireviewcore/ui/aireviewcorechecklistitemresultview.d.ts +57 -65
- package/dist/aireviewcore/ui/aireviewcorecustomcheckview.d.ts +56 -56
- package/dist/aireviewcore/ui/aireviewcorefinishreviewbuttonview.d.ts +9 -9
- package/dist/aireviewcore/ui/aireviewcoregeneralerrorview.d.ts +20 -20
- package/dist/aireviewcore/ui/aireviewcorepromptinputview.d.ts +25 -25
- package/dist/aireviewcore/ui/aireviewcorereviewchecklistview.d.ts +22 -22
- package/dist/aireviewcore/ui/aireviewcorereviewcommandlistitemview.d.ts +37 -39
- package/dist/aireviewcore/ui/aireviewcorereviewcompletedview.d.ts +14 -14
- package/dist/aireviewcore/ui/aireviewcoreuicheckresultsview.d.ts +85 -87
- package/dist/aireviewcore/ui/aireviewcoreview.d.ts +50 -50
- package/dist/aireviewcore/ui/form/aireviewcoreformdropdown.d.ts +16 -16
- package/dist/aireviewcore/ui/form/aireviewcoreformmanager.d.ts +12 -12
- package/dist/aireviewmode/aireviewcheckdefinitions.d.ts +12 -12
- package/dist/aireviewmode/aireviewgateway.d.ts +141 -149
- package/dist/aireviewmode/aireviewmode.d.ts +184 -184
- package/dist/aireviewmode/aireviewmodecheckregistry.d.ts +34 -34
- package/dist/aireviewmode/aireviewmodecontroller.d.ts +23 -22
- package/dist/aireviewmode/aireviewmodeui.d.ts +17 -17
- package/dist/aireviewmode/model/aireviewcheckcustom.d.ts +16 -16
- package/dist/aireviewmode/model/aireviewcheckextra.d.ts +30 -30
- package/dist/aireviewmode/model/aireviewcustomcheckrun.d.ts +17 -17
- package/dist/aireviewmode/model/aireviewextracheckrun.d.ts +15 -15
- package/dist/aireviewmode/model/aireviewmodechecklist.d.ts +22 -22
- package/dist/aireviewmode/model/aireviewrunresult.d.ts +15 -15
- package/dist/aitabs/aitabs.d.ts +84 -84
- package/dist/aitabs/aitabsmainview.d.ts +46 -46
- package/dist/aitabs/tabs/aitabsview.d.ts +194 -188
- package/dist/aitabs/tabs/tabbuttonview.d.ts +39 -39
- package/dist/aitabs/tabs/tabpanelview.d.ts +39 -39
- package/dist/aitranslate/aitranslate.d.ts +162 -129
- package/dist/aitranslate/aitranslatecheckregistry.d.ts +22 -22
- package/dist/aitranslate/aitranslatecontroller.d.ts +17 -15
- package/dist/aitranslate/aitranslategateway.d.ts +77 -0
- package/dist/aitranslate/aitranslateui.d.ts +18 -18
- package/dist/aitranslate/model/aitranslatecheck.d.ts +12 -12
- package/dist/aitranslate/model/aitranslatechecklist.d.ts +11 -11
- package/dist/aitranslate/model/aitranslatecheckrun.d.ts +23 -23
- package/dist/aitranslate/model/aitranslaterunresult.d.ts +20 -0
- package/dist/aitranslate/ui/aitranslatechecklistview.d.ts +7 -8
- package/dist/aitranslate/ui/aitranslatecheckresultsview.d.ts +11 -11
- package/dist/augmentation.d.ts +77 -73
- package/dist/errors.d.ts +0 -4
- package/dist/errorsmap.d.ts +5 -5
- package/dist/index-content.css +1 -0
- package/dist/index-editor.css +11 -8
- package/dist/index.css +11 -8
- package/dist/index.d.ts +70 -63
- package/dist/index.js +19 -6
- package/dist/translations/af.js +1 -1
- package/dist/translations/af.umd.js +1 -1
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.umd.js +1 -1
- package/dist/translations/ast.js +1 -1
- package/dist/translations/ast.umd.js +1 -1
- package/dist/translations/az.js +1 -1
- package/dist/translations/az.umd.js +1 -1
- package/dist/translations/be.js +1 -1
- package/dist/translations/be.umd.js +1 -1
- package/dist/translations/bg.js +1 -1
- package/dist/translations/bg.umd.js +1 -1
- package/dist/translations/bn.js +1 -1
- package/dist/translations/bn.umd.js +1 -1
- package/dist/translations/bs.js +1 -1
- package/dist/translations/bs.umd.js +1 -1
- package/dist/translations/ca.js +1 -1
- package/dist/translations/ca.umd.js +1 -1
- package/dist/translations/cs.js +1 -1
- package/dist/translations/cs.umd.js +1 -1
- package/dist/translations/da.js +1 -1
- package/dist/translations/da.umd.js +1 -1
- package/dist/translations/de-ch.js +1 -1
- package/dist/translations/de-ch.umd.js +1 -1
- package/dist/translations/de.js +1 -1
- package/dist/translations/de.umd.js +1 -1
- package/dist/translations/el.js +1 -1
- package/dist/translations/el.umd.js +1 -1
- package/dist/translations/en-au.js +1 -1
- package/dist/translations/en-au.umd.js +1 -1
- package/dist/translations/en-gb.js +1 -1
- package/dist/translations/en-gb.umd.js +1 -1
- package/dist/translations/en.js +1 -1
- package/dist/translations/en.umd.js +1 -1
- package/dist/translations/eo.js +1 -1
- package/dist/translations/eo.umd.js +1 -1
- package/dist/translations/es-co.js +1 -1
- package/dist/translations/es-co.umd.js +1 -1
- package/dist/translations/es.js +1 -1
- package/dist/translations/es.umd.js +1 -1
- package/dist/translations/et.js +1 -1
- package/dist/translations/et.umd.js +1 -1
- package/dist/translations/eu.js +1 -1
- package/dist/translations/eu.umd.js +1 -1
- package/dist/translations/fa.js +1 -1
- package/dist/translations/fa.umd.js +1 -1
- package/dist/translations/fi.js +1 -1
- package/dist/translations/fi.umd.js +1 -1
- package/dist/translations/fr.js +1 -1
- package/dist/translations/fr.umd.js +1 -1
- package/dist/translations/gl.js +1 -1
- package/dist/translations/gl.umd.js +1 -1
- package/dist/translations/gu.js +1 -1
- package/dist/translations/gu.umd.js +1 -1
- package/dist/translations/he.js +1 -1
- package/dist/translations/he.umd.js +1 -1
- package/dist/translations/hi.js +1 -1
- package/dist/translations/hi.umd.js +1 -1
- package/dist/translations/hr.js +1 -1
- package/dist/translations/hr.umd.js +1 -1
- package/dist/translations/hu.js +1 -1
- package/dist/translations/hu.umd.js +1 -1
- package/dist/translations/hy.js +1 -1
- package/dist/translations/hy.umd.js +1 -1
- package/dist/translations/id.js +1 -1
- package/dist/translations/id.umd.js +1 -1
- package/dist/translations/it.js +1 -1
- package/dist/translations/it.umd.js +1 -1
- package/dist/translations/ja.js +1 -1
- package/dist/translations/ja.umd.js +1 -1
- package/dist/translations/jv.js +1 -1
- package/dist/translations/jv.umd.js +1 -1
- package/dist/translations/kk.js +1 -1
- package/dist/translations/kk.umd.js +1 -1
- package/dist/translations/km.js +1 -1
- package/dist/translations/km.umd.js +1 -1
- package/dist/translations/kn.js +1 -1
- package/dist/translations/kn.umd.js +1 -1
- package/dist/translations/ko.js +1 -1
- package/dist/translations/ko.umd.js +1 -1
- package/dist/translations/ku.js +1 -1
- package/dist/translations/ku.umd.js +1 -1
- package/dist/translations/lt.js +1 -1
- package/dist/translations/lt.umd.js +1 -1
- package/dist/translations/lv.js +1 -1
- package/dist/translations/lv.umd.js +1 -1
- package/dist/translations/ms.js +1 -1
- package/dist/translations/ms.umd.js +1 -1
- package/dist/translations/nb.js +1 -1
- package/dist/translations/nb.umd.js +1 -1
- package/dist/translations/ne.js +1 -1
- package/dist/translations/ne.umd.js +1 -1
- package/dist/translations/nl.js +1 -1
- package/dist/translations/nl.umd.js +1 -1
- package/dist/translations/no.js +1 -1
- package/dist/translations/no.umd.js +1 -1
- package/dist/translations/oc.js +1 -1
- package/dist/translations/oc.umd.js +1 -1
- package/dist/translations/pl.js +1 -1
- package/dist/translations/pl.umd.js +1 -1
- package/dist/translations/pt-br.js +1 -1
- package/dist/translations/pt-br.umd.js +1 -1
- package/dist/translations/pt.js +1 -1
- package/dist/translations/pt.umd.js +1 -1
- package/dist/translations/ro.js +1 -1
- package/dist/translations/ro.umd.js +1 -1
- package/dist/translations/ru.js +1 -1
- package/dist/translations/ru.umd.js +1 -1
- package/dist/translations/si.js +1 -1
- package/dist/translations/si.umd.js +1 -1
- package/dist/translations/sk.js +1 -1
- package/dist/translations/sk.umd.js +1 -1
- package/dist/translations/sl.js +1 -1
- package/dist/translations/sl.umd.js +1 -1
- package/dist/translations/sq.js +1 -1
- package/dist/translations/sq.umd.js +1 -1
- package/dist/translations/sr-latn.js +1 -1
- package/dist/translations/sr-latn.umd.js +1 -1
- package/dist/translations/sr.js +1 -1
- package/dist/translations/sr.umd.js +1 -1
- package/dist/translations/sv.js +1 -1
- package/dist/translations/sv.umd.js +1 -1
- package/dist/translations/th.js +1 -1
- package/dist/translations/th.umd.js +1 -1
- package/dist/translations/ti.js +1 -1
- package/dist/translations/ti.umd.js +1 -1
- package/dist/translations/tk.js +1 -1
- package/dist/translations/tk.umd.js +1 -1
- package/dist/translations/tr.js +1 -1
- package/dist/translations/tr.umd.js +1 -1
- package/dist/translations/tt.js +1 -1
- package/dist/translations/tt.umd.js +1 -1
- package/dist/translations/ug.js +1 -1
- package/dist/translations/ug.umd.js +1 -1
- package/dist/translations/uk.js +1 -1
- package/dist/translations/uk.umd.js +1 -1
- package/dist/translations/ur.js +1 -1
- package/dist/translations/ur.umd.js +1 -1
- package/dist/translations/uz.js +1 -1
- package/dist/translations/uz.umd.js +1 -1
- package/dist/translations/vi.js +1 -1
- package/dist/translations/vi.umd.js +1 -1
- package/dist/translations/zh-cn.js +1 -1
- package/dist/translations/zh-cn.umd.js +1 -1
- package/dist/translations/zh.js +1 -1
- package/dist/translations/zh.umd.js +1 -1
- package/package.json +12 -12
- package/dist/aicore/utils/getoperationsfromreply.d.ts +0 -26
|
@@ -1,292 +1,292 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
};
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @module ai/aicore/pipeline/airesponseapplier
|
|
7
|
+
*/
|
|
8
|
+
import { type ObservableMixinConstructor } from "@ckeditor/ckeditor5-utils";
|
|
9
|
+
import { type Element, type Document } from "../utils/htmlparser.js";
|
|
10
|
+
declare const AIResponseApplierBase: ObservableMixinConstructor;
|
|
10
11
|
/**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
export declare class AIResponseApplier extends
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
merge(contentPart: Document, parsedContent: Document, options?: MergeOptions): MergeResult;
|
|
12
|
+
* AIResponseApplier is a part of the AI API response processing pipeline.
|
|
13
|
+
*
|
|
14
|
+
* The main purpose of this class is to merge HTML suggestions (modified content chunks) returned
|
|
15
|
+
* from the AI API into the existing editor content. This is "black box" processing, which means that
|
|
16
|
+
* the class does not know anything about the editor content structure, it just merges the content
|
|
17
|
+
* based on provided HTML data (part/suggestion and content) and 'data-id' attributes.
|
|
18
|
+
*/
|
|
19
|
+
export declare class AIResponseApplier extends AIResponseApplierBase {
|
|
20
|
+
constructor(generateUid?: () => string);
|
|
21
|
+
/**
|
|
22
|
+
* Merges the given content part (AI suggestion) with the provided editor content.
|
|
23
|
+
*
|
|
24
|
+
* The main purpose of this function is to merge a piece of AI modified content (`contentPart`)
|
|
25
|
+
* into the given content (editor content, `content`).
|
|
26
|
+
*
|
|
27
|
+
* This is done based on a few rules:
|
|
28
|
+
*
|
|
29
|
+
* 1. Any removed element is not present in the `contentPart` itself but is represented by a special
|
|
30
|
+
* "removed comment" node: `<!-- removed data-id="some_id" -->`. This comment node is located
|
|
31
|
+
* in the same position (relative position to other present nodes) as the element in the original
|
|
32
|
+
* content.
|
|
33
|
+
* 2. Any newly added element is presented in the `contentPart` with a special `data-id="new-element"`
|
|
34
|
+
* attribute.
|
|
35
|
+
* 3. Any existing (from the original `content`) and modified element is presented in the `contentPart`
|
|
36
|
+
* with the same `data-id` value as in the original `content`. Its contents may be different (tag,
|
|
37
|
+
* attributes, entire subtree may change). Also modified elements don't have to be a top level elements
|
|
38
|
+
* from the original `content`, which means the `contentPart` may not keep the original structure
|
|
39
|
+
* or nesting order of the elements.
|
|
40
|
+
*
|
|
41
|
+
* Each type of modification is handled differently when merged into the `content`:
|
|
42
|
+
*
|
|
43
|
+
* 1. Modified elements (with `data-id` attribute with a value which exists in the `content`) replaces
|
|
44
|
+
* the existing element with the same `data-id`, without changing its position in the `content`.
|
|
45
|
+
* 2. Removed elements (marked with a special "removed comment") are removed from the `content` based
|
|
46
|
+
* on the `data-id` comment value.
|
|
47
|
+
* 3. New elements are inserted into the `content` based on their relative position to other nodes in the
|
|
48
|
+
* `contentPart`. The detailed rules for inserting new elements are described in the next section. An element
|
|
49
|
+
* is considered new when it has no `data-id`, when the LLM marks it by setting `data-id="new-element"`, or
|
|
50
|
+
* when its `data-id` is not present in the `content` (an id the LLM made up for new content).
|
|
51
|
+
*
|
|
52
|
+
* The position on which new elements from the `contentPart` are inserted into the `content`
|
|
53
|
+
* is determined based on the reference nodes. The reference node is:
|
|
54
|
+
*
|
|
55
|
+
* - A node in the `contentPart` which also exists in the `content` with the same `data-id` attribute value.
|
|
56
|
+
* - A special "removed comment" node which points to the existing element in the `content`.
|
|
57
|
+
* - A special "existing document" comment node which implicates that there should be any content
|
|
58
|
+
* before/after the new element position on which it is inserted into the `content`.
|
|
59
|
+
*
|
|
60
|
+
* The algorithm operates on the top level nodes of the `contentPart` which means only direct root children
|
|
61
|
+
* of the `contentPart` are processed. Nested elements are not processed directly, but as a children
|
|
62
|
+
* of the top level nodes they are included in the merge process.
|
|
63
|
+
*
|
|
64
|
+
* Note: "existing document" comments and "removed" comments are only meaningful at the top level of the `contentPart`.
|
|
65
|
+
* If an existing (kept) element contains such comments inside its children, they are ignored (stripped) — the entire
|
|
66
|
+
* element is replaced with the `contentPart` version as-is. This means that partial replacement inside a kept parent
|
|
67
|
+
* is not supported: the LLM must provide the full content of any existing element it returns.
|
|
68
|
+
*
|
|
69
|
+
* The algorithm iterates over the `contentPart` top level nodes and tries to find a position (directly or via reference node)
|
|
70
|
+
* for any element which should be merged into the `content`.
|
|
71
|
+
*
|
|
72
|
+
* Example 1: Modified element.
|
|
73
|
+
*
|
|
74
|
+
* ```html
|
|
75
|
+
* // content:
|
|
76
|
+
* <p data-id="1">Foo</p>
|
|
77
|
+
* <p data-id="2">Bar</p>
|
|
78
|
+
* <p data-id="3">Cup</p>
|
|
79
|
+
*
|
|
80
|
+
* // contentPart:
|
|
81
|
+
* <p data-id="1">New content</p>
|
|
82
|
+
*
|
|
83
|
+
* // merge result:
|
|
84
|
+
* <p data-id="1">New content</p>
|
|
85
|
+
* <p data-id="2">Bar</p>
|
|
86
|
+
* <p data-id="3">Cup</p>
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* Example 2: Multiple modified element.
|
|
90
|
+
*
|
|
91
|
+
* ```html
|
|
92
|
+
* // content:
|
|
93
|
+
* <p data-id="1">Foo</p>
|
|
94
|
+
* <p data-id="2">Bar</p>
|
|
95
|
+
* <p data-id="3">Cup</p>
|
|
96
|
+
*
|
|
97
|
+
* // contentPart:
|
|
98
|
+
* <p data-id="1">New content</p>
|
|
99
|
+
* <!-- existing document !-->
|
|
100
|
+
* <p data-id="3">Another <strong>change</strong></p>
|
|
101
|
+
*
|
|
102
|
+
* // merge result:
|
|
103
|
+
* <p data-id="1">New content</p>
|
|
104
|
+
* <p data-id="2">Bar</p>
|
|
105
|
+
* <p data-id="3">Another <strong>change</strong></p>
|
|
106
|
+
* ```
|
|
107
|
+
*
|
|
108
|
+
* Example 3: Removed element.
|
|
109
|
+
*
|
|
110
|
+
* ```html
|
|
111
|
+
* // content:
|
|
112
|
+
* <p data-id="1">Foo</p>
|
|
113
|
+
* <p data-id="2">Bar</p>
|
|
114
|
+
* <p data-id="3">Cup</p>
|
|
115
|
+
*
|
|
116
|
+
* // contentPart:
|
|
117
|
+
* <!-- removed data-id="1" !-->
|
|
118
|
+
*
|
|
119
|
+
* // merge result:
|
|
120
|
+
* <p data-id="2">Bar</p>
|
|
121
|
+
* <p data-id="3">Cup</p>
|
|
122
|
+
* ```
|
|
123
|
+
*
|
|
124
|
+
* Example 4: New element with reference node before.
|
|
125
|
+
*
|
|
126
|
+
* ```html
|
|
127
|
+
* // content:
|
|
128
|
+
* <p data-id="1">Foo</p>
|
|
129
|
+
* <p data-id="2">Bar</p>
|
|
130
|
+
* <p data-id="3">Cup</p>
|
|
131
|
+
*
|
|
132
|
+
* // contentPart:
|
|
133
|
+
* <p data-id="1">Foo</p>
|
|
134
|
+
* <p data-id="new-element">New element</p>
|
|
135
|
+
* <!-- existing document !-->
|
|
136
|
+
*
|
|
137
|
+
* // merge result:
|
|
138
|
+
* <p data-id="1">Foo</p>
|
|
139
|
+
* <p data-id="new-id">New element</p>
|
|
140
|
+
* <p data-id="2">Bar</p>
|
|
141
|
+
* <p data-id="3">Cup</p>
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* Example 5: New element with reference node after.
|
|
145
|
+
*
|
|
146
|
+
* ```html
|
|
147
|
+
* // content:
|
|
148
|
+
* <p data-id="1">Foo</p>
|
|
149
|
+
* <p data-id="2">Bar</p>
|
|
150
|
+
* <p data-id="3">Cup</p>
|
|
151
|
+
*
|
|
152
|
+
* // contentPart:
|
|
153
|
+
* <!-- existing document !-->
|
|
154
|
+
* <p data-id="new-element">New element</p>
|
|
155
|
+
* <p data-id="3">Cup</p>
|
|
156
|
+
*
|
|
157
|
+
* // merge result:
|
|
158
|
+
* <p data-id="1">Foo</p>
|
|
159
|
+
* <p data-id="2">Bar</p>
|
|
160
|
+
* <p data-id="new-id">New element</p>
|
|
161
|
+
* <p data-id="3">Cup</p>
|
|
162
|
+
* ```
|
|
163
|
+
*
|
|
164
|
+
* Example 6: New element at the start of the content.
|
|
165
|
+
*
|
|
166
|
+
* ```html
|
|
167
|
+
* // content:
|
|
168
|
+
* <p data-id="1">Foo</p>
|
|
169
|
+
* <p data-id="2">Bar</p>
|
|
170
|
+
* <p data-id="3">Cup</p>
|
|
171
|
+
*
|
|
172
|
+
* // contentPart:
|
|
173
|
+
* <p data-id="new-element">New element</p>
|
|
174
|
+
* <!-- existing document !-->
|
|
175
|
+
*
|
|
176
|
+
* // merge result:
|
|
177
|
+
* <p data-id="new-id">New element</p>
|
|
178
|
+
* <p data-id="1">Foo</p>
|
|
179
|
+
* <p data-id="2">Bar</p>
|
|
180
|
+
* <p data-id="3">Cup</p>
|
|
181
|
+
* ```
|
|
182
|
+
*
|
|
183
|
+
* Example 7: New element at the end of the content.
|
|
184
|
+
*
|
|
185
|
+
* ```html
|
|
186
|
+
* // content:
|
|
187
|
+
* <p data-id="1">Foo</p>
|
|
188
|
+
* <p data-id="2">Bar</p>
|
|
189
|
+
* <p data-id="3">Cup</p>
|
|
190
|
+
*
|
|
191
|
+
* // contentPart:
|
|
192
|
+
* <!-- existing document !-->
|
|
193
|
+
* <p data-id="new-element">New element</p>
|
|
194
|
+
*
|
|
195
|
+
* // merge result:
|
|
196
|
+
* <p data-id="1">Foo</p>
|
|
197
|
+
* <p data-id="2">Bar</p>
|
|
198
|
+
* <p data-id="3">Cup</p>
|
|
199
|
+
* <p data-id="new-id">New element</p>
|
|
200
|
+
* ```
|
|
201
|
+
*
|
|
202
|
+
* Example 8: New element after removed element.
|
|
203
|
+
*
|
|
204
|
+
* ```html
|
|
205
|
+
* // content:
|
|
206
|
+
* <p data-id="1">Foo</p>
|
|
207
|
+
* <p data-id="2">Bar</p>
|
|
208
|
+
* <p data-id="3">Cup</p>
|
|
209
|
+
*
|
|
210
|
+
* // contentPart:
|
|
211
|
+
* <!-- removed data-id="2" !-->
|
|
212
|
+
* <p data-id="new-element">New element</p>
|
|
213
|
+
*
|
|
214
|
+
* // merge result:
|
|
215
|
+
* <p data-id="1">Foo</p>
|
|
216
|
+
* <p data-id="new-id">New element</p>
|
|
217
|
+
* <p data-id="3">Cup</p>
|
|
218
|
+
* ```
|
|
219
|
+
*
|
|
220
|
+
* Example 9: Wrapped element.
|
|
221
|
+
*
|
|
222
|
+
* ```html
|
|
223
|
+
* // content:
|
|
224
|
+
* <p data-id="1">Foo</p>
|
|
225
|
+
* <p data-id="2">Bar</p>
|
|
226
|
+
* <p data-id="3">Cup</p>
|
|
227
|
+
*
|
|
228
|
+
* // contentPart:
|
|
229
|
+
* <p data-id="1">Foo</p>
|
|
230
|
+
* <div data-id="new-element">
|
|
231
|
+
* <p data-id="2">Bar</p>
|
|
232
|
+
* </div>
|
|
233
|
+
*
|
|
234
|
+
* // merge result:
|
|
235
|
+
* <p data-id="1">Foo</p>
|
|
236
|
+
* <div data-id="new-id">
|
|
237
|
+
* <p data-id="2">Bar</p>
|
|
238
|
+
* </div>
|
|
239
|
+
* <p data-id="3">Cup</p>
|
|
240
|
+
* ```
|
|
241
|
+
*
|
|
242
|
+
* Example 10: Modification of nested elements.
|
|
243
|
+
*
|
|
244
|
+
* ```html
|
|
245
|
+
* // content:
|
|
246
|
+
* <table data-id="1">
|
|
247
|
+
* <tr data-id="11">
|
|
248
|
+
* <td data-id="111">Foo</td>
|
|
249
|
+
* </tr>
|
|
250
|
+
* <tr data-id="12">
|
|
251
|
+
* <td data-id="121">Bar</td>
|
|
252
|
+
* <td data-id="122">Cup</td>
|
|
253
|
+
* </tr>
|
|
254
|
+
* </table>
|
|
255
|
+
*
|
|
256
|
+
* // contentPart:
|
|
257
|
+
* <tr data-id="12">
|
|
258
|
+
* <td data-id="new-element">New content</td>
|
|
259
|
+
* </tr>
|
|
260
|
+
*
|
|
261
|
+
* // merge result:
|
|
262
|
+
* <table data-id="1">
|
|
263
|
+
* <tr data-id="11">
|
|
264
|
+
* <td data-id="111">Foo</td>
|
|
265
|
+
* </tr>
|
|
266
|
+
* <tr data-id="12">
|
|
267
|
+
* <td data-id="new-id">New content</td>
|
|
268
|
+
* </tr>
|
|
269
|
+
* </table>
|
|
270
|
+
* ```
|
|
271
|
+
*
|
|
272
|
+
* Since existing elements are either modifications or only reference nodes in the `contentPart`, there is an additional logic
|
|
273
|
+
* for checking if such elements are identical to the existing ones in the `content`. This way the algorithm can correctly detect
|
|
274
|
+
* if an existing element was modified or not.
|
|
275
|
+
*
|
|
276
|
+
* Additionally, this method supports the following options:
|
|
277
|
+
* - `cutAfterUnstable`: if set to `true`, marks unconfirmed elements as unstable (via `data-unstable` attribute)
|
|
278
|
+
* and cuts the content after the last touched element. Used during streaming.
|
|
279
|
+
*/
|
|
280
|
+
merge(contentPart: Document, parsedContent: Document, options?: MergeOptions): MergeResult;
|
|
281
281
|
}
|
|
282
282
|
export type MergeResult = {
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
283
|
+
parsedContent: Document;
|
|
284
|
+
newNodeIds: Array<string>;
|
|
285
|
+
modifiedNodeIds: Array<string>;
|
|
286
|
+
removedNodeIds: Array<string>;
|
|
287
287
|
};
|
|
288
288
|
export type MergeOptions = {
|
|
289
|
-
|
|
290
|
-
|
|
289
|
+
cutAfterUnstable?: boolean;
|
|
290
|
+
replaceRemovedWith?: Element;
|
|
291
291
|
};
|
|
292
292
|
export {};
|