@ckeditor/ckeditor5-ai 48.8.1-alpha.3 → 49.0.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.
Files changed (388) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/aiactions/aiactions.d.ts +109 -73
  3. package/dist/aiactions/model/aiactionsinteraction.d.ts +58 -50
  4. package/dist/aiactions/model/aiactionsreply.d.ts +18 -11
  5. package/dist/aiassistant/adapters/aiadapter.d.ts +48 -48
  6. package/dist/aiassistant/adapters/aitextadapter.d.ts +133 -133
  7. package/dist/aiassistant/adapters/awstextadapter.d.ts +42 -42
  8. package/dist/aiassistant/adapters/openaitextadapter.d.ts +184 -184
  9. package/dist/aiassistant/aiassistant.d.ts +425 -436
  10. package/dist/aiassistant/aiassistantediting.d.ts +51 -51
  11. package/dist/aiassistant/aiassistantui.d.ts +50 -53
  12. package/dist/aiassistant/legacyerrors.d.ts +0 -4
  13. package/dist/aiassistant/ui/aiassistantcontroller.d.ts +106 -105
  14. package/dist/aiassistant/ui/form/aiformcontentarea.d.ts +43 -43
  15. package/dist/aiassistant/ui/form/aiformerrorview.d.ts +19 -19
  16. package/dist/aiassistant/ui/form/aiformpromptview.d.ts +38 -38
  17. package/dist/aiassistant/ui/form/aiformtoolbarview.d.ts +50 -50
  18. package/dist/aiassistant/ui/form/aiformview.d.ts +121 -121
  19. package/dist/aiassistant/ui/form/aihistorylistitemview.d.ts +13 -13
  20. package/dist/aiassistant/ui/form/aihistorylistview.d.ts +27 -27
  21. package/dist/aiassistant/ui/form/prompthistory.d.ts +15 -15
  22. package/dist/aiassistant/ui/showaiassistantcommand.d.ts +35 -35
  23. package/dist/aiassistant/utils/common-translations.d.ts +6 -6
  24. package/dist/aiassistant/utils/normalizecommandsconfig.d.ts +9 -9
  25. package/dist/aiballoon/aiballoon.d.ts +85 -89
  26. package/dist/aiballoon/ui/aiballoondisclaimerview.d.ts +17 -0
  27. package/dist/aiballoon/ui/aiballoontoolbarview.d.ts +56 -0
  28. package/dist/aiballoon/ui/aiballoonview.d.ts +74 -27
  29. package/dist/aiballoon/utils/contentwidth.d.ts +1 -0
  30. package/dist/aichat/aichat.d.ts +88 -87
  31. package/dist/aichat/aichatballoon.d.ts +88 -79
  32. package/dist/aichat/aichatcontroller.d.ts +284 -258
  33. package/dist/aichat/aichatui.d.ts +352 -328
  34. package/dist/aichat/model/aichatcontext.d.ts +655 -654
  35. package/dist/aichat/model/aichatconversation.d.ts +270 -269
  36. package/dist/aichat/model/aichatinteraction.d.ts +45 -49
  37. package/dist/aichat/ui/aichatballoonview.d.ts +73 -101
  38. package/dist/aichat/ui/aichatcontrolsview.d.ts +121 -125
  39. package/dist/aichat/ui/aichatfeedview.d.ts +145 -128
  40. package/dist/aichat/ui/aichatview.d.ts +42 -40
  41. package/dist/aichat/ui/controls/aichatchipsoverflowmanager.d.ts +73 -63
  42. package/dist/aichat/ui/controls/aichatcontextitembuttonview.d.ts +41 -41
  43. package/dist/aichat/ui/controls/aichatcontextpanelurlinputview.d.ts +79 -79
  44. package/dist/aichat/ui/controls/aichatcontextpanelview.d.ts +110 -100
  45. package/dist/aichat/ui/controls/aichatdropzoneview.d.ts +30 -0
  46. package/dist/aichat/ui/controls/aichatpromptcapabilitiesview.d.ts +72 -81
  47. package/dist/aichat/ui/controls/aichatpromptinputview.d.ts +50 -44
  48. package/dist/aichat/ui/controls/aichatpromptsuggestionslistview.d.ts +13 -13
  49. package/dist/aichat/ui/controls/resources/aichatcontextresourceslistview.d.ts +44 -44
  50. package/dist/aichat/ui/controls/resources/aichatcontextresourcesview.d.ts +52 -52
  51. package/dist/aichat/ui/controls/resources/aichatresourcelistitemview.d.ts +57 -56
  52. package/dist/aichat/ui/controls/resources/aichatresourcesballoonview.d.ts +104 -100
  53. package/dist/aichat/ui/controls/resources/aichatresourcessearchinputview.d.ts +53 -53
  54. package/dist/aichat/ui/feed/aichatfeedcontextchipsview.d.ts +22 -22
  55. package/dist/aichat/ui/feed/aichatfeedcustomelementview.d.ts +30 -34
  56. package/dist/aichat/ui/feed/aichatfeederroritemview.d.ts +30 -33
  57. package/dist/aichat/ui/feed/aichatfeedinteractionheaderview.d.ts +24 -24
  58. package/dist/aichat/ui/feed/aichatfeeditemview.d.ts +39 -39
  59. package/dist/aichat/ui/feed/aichatfeedreplyitemview.d.ts +40 -40
  60. package/dist/aichat/ui/feed/aichatfeedsuggestionitemactionsview.d.ts +62 -63
  61. package/dist/aichat/ui/feed/aichatfeedsuggestionitemview.d.ts +87 -82
  62. package/dist/aichat/ui/feed/aichatfeedusermessageitem.d.ts +33 -33
  63. package/dist/aichat/utils/eventnames.d.ts +8 -4
  64. package/dist/aichat/utils/parsesingleurl.d.ts +1 -0
  65. package/dist/aichat/utils/promisequeue.d.ts +26 -25
  66. package/dist/aichat/utils/readdatatransferfiles.d.ts +14 -0
  67. package/dist/aichat/utils/resolvepaste.d.ts +71 -0
  68. package/dist/aichathistory/aichathistory.d.ts +26 -26
  69. package/dist/aichathistory/aichathistorycontroller.d.ts +36 -35
  70. package/dist/aichathistory/aichathistoryui.d.ts +80 -89
  71. package/dist/aichathistory/model/aichathistoryconversations.d.ts +95 -102
  72. package/dist/aichathistory/model/aichathistoryitem.d.ts +52 -53
  73. package/dist/aichathistory/ui/aichathistorylistitemview.d.ts +41 -40
  74. package/dist/aichathistory/ui/aichathistorylistview.d.ts +28 -28
  75. package/dist/aichathistory/ui/aichathistorysectionlistview.d.ts +16 -16
  76. package/dist/aichathistory/ui/aichathistoryview.d.ts +33 -33
  77. package/dist/aichatshortcuts/aichatshortcuts.d.ts +295 -295
  78. package/dist/aichatshortcuts/ui/aichatshortcutsview.d.ts +24 -18
  79. package/dist/aichatshortcuts/ui/aichatshortcutview.d.ts +18 -18
  80. package/dist/aiconfig.d.ts +362 -227
  81. package/dist/aicore/aiconnector.d.ts +428 -334
  82. package/dist/aicore/aicore.d.ts +53 -0
  83. package/dist/aicore/aiediting.d.ts +103 -88
  84. package/dist/aicore/aierrorreporter.d.ts +101 -0
  85. package/dist/aicore/aigateway.d.ts +135 -0
  86. package/dist/aicore/errors/aicoreerror.d.ts +67 -0
  87. package/dist/aicore/errors/geterrorcode.d.ts +17 -0
  88. package/dist/aicore/errors/isaborterror.d.ts +12 -0
  89. package/dist/aicore/errors/normalizeerror.d.ts +23 -0
  90. package/dist/aicore/model/aicapabilities.d.ts +69 -53
  91. package/dist/aicore/model/aicontext.d.ts +116 -77
  92. package/dist/aicore/model/aicontextlibrary.d.ts +71 -0
  93. package/dist/aicore/model/aicontextref.d.ts +37 -0
  94. package/dist/aicore/model/aidefaultcontext.d.ts +83 -0
  95. package/dist/aicore/model/aieditorroot.d.ts +26 -0
  96. package/dist/aicore/model/aiinteraction.d.ts +162 -162
  97. package/dist/aicore/model/aimodels.d.ts +80 -76
  98. package/dist/aicore/model/aireply.d.ts +129 -121
  99. package/dist/aicore/model/airunresult.d.ts +43 -0
  100. package/dist/aicore/model/airunsinglerootresult.d.ts +104 -0
  101. package/dist/aicore/pipeline/airesponseapplier.d.ts +284 -296
  102. package/dist/aicore/pipeline/airesponseparser.d.ts +24 -23
  103. package/dist/aicore/ui/aidisclaimerview.d.ts +12 -13
  104. package/dist/aicore/ui/aidotsloader.d.ts +18 -0
  105. package/dist/aicore/ui/aiheaderview.d.ts +27 -28
  106. package/dist/aicore/ui/aimodelselectorview.d.ts +151 -0
  107. package/dist/aicore/ui/aiseparatorview.d.ts +25 -0
  108. package/dist/aicore/ui/aiskeleton.d.ts +43 -32
  109. package/dist/aicore/ui/aispinner.d.ts +10 -11
  110. package/dist/aicore/ui/suggestioncontainer/aiminitoolbarview.d.ts +55 -56
  111. package/dist/aicore/ui/suggestioncontainer/aisuggestionbodyview.d.ts +95 -80
  112. package/dist/aicore/ui/suggestioncontainer/aisuggestioncontainerview.d.ts +45 -46
  113. package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartheaderview.d.ts +67 -37
  114. package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartstateview.d.ts +21 -31
  115. package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentparttoolbarview.d.ts +46 -21
  116. package/dist/aicore/ui/suggestioncontainer/aisuggestioncontentpartview.d.ts +91 -58
  117. package/dist/aicore/ui/suggestioncontainer/aisuggestionheaderview.d.ts +26 -35
  118. package/dist/aicore/ui/suggestioncontainer/aisuggestionstreamablecontentview.d.ts +30 -27
  119. package/dist/aicore/ui/suggestioncontainer/aiwebsourcesview.d.ts +24 -24
  120. package/dist/aicore/utils/abortabletimeout.d.ts +11 -11
  121. package/dist/aicore/utils/aitabids.d.ts +11 -0
  122. package/dist/aicore/utils/builddocumentsuggestionsmap.d.ts +30 -0
  123. package/dist/aicore/utils/buttonclasses.d.ts +17 -8
  124. package/dist/aicore/utils/cleanupstreamingartifacts.d.ts +12 -0
  125. package/dist/aicore/utils/common-translations.d.ts +6 -6
  126. package/dist/aicore/utils/contentparttranslationkeys.d.ts +27 -0
  127. package/dist/aicore/utils/createresizebutton.d.ts +8 -9
  128. package/dist/aicore/utils/createstartconversationbutton.d.ts +7 -8
  129. package/dist/aicore/utils/documentposition.d.ts +37 -37
  130. package/dist/aicore/utils/documentrange.d.ts +41 -41
  131. package/dist/aicore/utils/eventnames.d.ts +5 -5
  132. package/dist/aicore/utils/geteditorconfig.d.ts +107 -0
  133. package/dist/aicore/utils/geteditorsfromcontext.d.ts +18 -0
  134. package/dist/aicore/utils/getmodeldisplaymode.d.ts +21 -0
  135. package/dist/aicore/utils/getoperationsfordocumentsuggestions.d.ts +20 -0
  136. package/dist/aicore/utils/getrootinfo.d.ts +45 -0
  137. package/dist/aicore/utils/getsuggestionpartsfromreply.d.ts +24 -18
  138. package/dist/aicore/utils/htmlparser.d.ts +23 -16
  139. package/dist/aicore/utils/htmlstreamer.d.ts +79 -79
  140. package/dist/aicore/utils/inlineroot.d.ts +1 -0
  141. package/dist/aicore/utils/istrackchangesenabled.d.ts +23 -0
  142. package/dist/aicore/utils/markoperationsasai.d.ts +21 -0
  143. package/dist/aicore/utils/replyactions.d.ts +13 -0
  144. package/dist/aicore/utils/scrollmanager.d.ts +24 -23
  145. package/dist/aicore/utils/showaitab.d.ts +1 -0
  146. package/dist/aidocumentprocessing/aidocumentprocessinggateway.d.ts +110 -0
  147. package/dist/aidocumentprocessing/model/aidocumentprocessingrunresult.d.ts +19 -0
  148. package/dist/aieditorintegration/aieditorintegration.d.ts +42 -32
  149. package/dist/aieditorintegration/aitogglebutton/aitogglebuttonui.d.ts +33 -34
  150. package/dist/aieditorintegration/aitogglebutton/toggleaicommand.d.ts +12 -12
  151. package/dist/aiquickactions/aiquickactions.d.ts +303 -252
  152. package/dist/aiquickactions/aiquickactionscommand.d.ts +10 -10
  153. package/dist/aiquickactions/aiquickactionsediting.d.ts +22 -22
  154. package/dist/aiquickactions/aiquickactionsui.d.ts +131 -124
  155. package/dist/aiquickactions/ui/aiquickactionsbuttoncreator.d.ts +57 -57
  156. package/dist/aiquickactions/ui/aiquickactionsdropdowncontentview.d.ts +45 -45
  157. package/dist/aiquickactions/ui/aiquickactionsdropdowncreator.d.ts +59 -59
  158. package/dist/aiquickactions/ui/aiquickactionsfilteredlistview.d.ts +0 -4
  159. package/dist/aiquickactions/ui/balloon/aiactionsballoonview.d.ts +73 -136
  160. package/dist/aiquickactions/ui/dropdownmenubuttonwithhighlightview.d.ts +24 -24
  161. package/dist/aireviewcore/aireviewcorecheckregistry.d.ts +37 -0
  162. package/dist/aireviewcore/aireviewcorecontroller.d.ts +48 -23
  163. package/dist/aireviewcore/aireviewcoreediting.d.ts +296 -224
  164. package/dist/aireviewcore/aireviewcoreui.d.ts +109 -85
  165. package/dist/aireviewcore/model/aichecksinglerootresult.d.ts +22 -0
  166. package/dist/aireviewcore/model/aireviewcheck.d.ts +49 -49
  167. package/dist/aireviewcore/model/aireviewchecklist.d.ts +29 -28
  168. package/dist/aireviewcore/model/aireviewcheckresult.d.ts +36 -35
  169. package/dist/aireviewcore/model/aireviewcheckresultchange.d.ts +62 -50
  170. package/dist/aireviewcore/model/aireviewcheckrun.d.ts +174 -147
  171. package/dist/aireviewcore/model/aireviewsystemcheckrun.d.ts +16 -16
  172. package/dist/aireviewcore/types.d.ts +30 -24
  173. package/dist/aireviewcore/ui/aireviewcoreabstractchecklistview.d.ts +50 -0
  174. package/dist/aireviewcore/ui/aireviewcorechecklistitemresultview.d.ts +53 -76
  175. package/dist/aireviewcore/ui/aireviewcorecompletereviewdropdown.d.ts +29 -0
  176. package/dist/aireviewcore/ui/aireviewcorecustomcheckview.d.ts +38 -56
  177. package/dist/aireviewcore/ui/aireviewcorefinishreviewbuttonview.d.ts +8 -9
  178. package/dist/aireviewcore/ui/aireviewcoregeneralerrorview.d.ts +20 -20
  179. package/dist/aireviewcore/ui/aireviewcorenavigationpanelview.d.ts +169 -0
  180. package/dist/aireviewcore/ui/aireviewcoreprogressbarview.d.ts +32 -0
  181. package/dist/aireviewcore/ui/aireviewcorepromptinputview.d.ts +25 -25
  182. package/dist/aireviewcore/ui/aireviewcorereviewchecklistview.d.ts +42 -23
  183. package/dist/aireviewcore/ui/aireviewcorereviewcommandlistitemview.d.ts +49 -39
  184. package/dist/aireviewcore/ui/aireviewcorereviewcompletedview.d.ts +13 -14
  185. package/dist/aireviewcore/ui/aireviewcoreuicheckresultsview.d.ts +114 -87
  186. package/dist/aireviewcore/ui/aireviewcoreview.d.ts +54 -50
  187. package/dist/aireviewcore/ui/changeevents.d.ts +49 -0
  188. package/dist/aireviewcore/ui/form/aireviewcoreformdropdown.d.ts +16 -16
  189. package/dist/aireviewcore/ui/form/aireviewcoreformmanager.d.ts +12 -12
  190. package/dist/aireviewcore/utils/openleaveconfirmationdialog.d.ts +21 -0
  191. package/dist/aireviewcore/utils/reviewcontentpart.d.ts +25 -0
  192. package/dist/aireviewmode/aireviewcheckdefinitions.d.ts +12 -12
  193. package/dist/aireviewmode/aireviewgateway.d.ts +172 -0
  194. package/dist/aireviewmode/aireviewmode.d.ts +260 -126
  195. package/dist/aireviewmode/aireviewmodecheckregistry.d.ts +46 -0
  196. package/dist/aireviewmode/aireviewmodecontroller.d.ts +24 -17
  197. package/dist/aireviewmode/aireviewmodeui.d.ts +17 -17
  198. package/dist/aireviewmode/model/aireviewcheckcustom.d.ts +16 -16
  199. package/dist/aireviewmode/model/aireviewcheckextra.d.ts +35 -30
  200. package/dist/aireviewmode/model/aireviewcustomcheckrun.d.ts +18 -17
  201. package/dist/aireviewmode/model/aireviewextracheckrun.d.ts +15 -15
  202. package/dist/aireviewmode/model/aireviewmodechecklist.d.ts +22 -18
  203. package/dist/aireviewmode/ui/aireviewmodecheckresultsview.d.ts +41 -0
  204. package/dist/aisdk/dataidassigner.d.ts +20 -0
  205. package/dist/aisdk/documentchanges.d.ts +165 -0
  206. package/dist/aisdk/documentchangesutils.d.ts +15 -0
  207. package/dist/aisdk/documentcompare.d.ts +171 -0
  208. package/dist/aisdk/documentcompareutils.d.ts +16 -0
  209. package/dist/aisdk/documentsnapshot.d.ts +48 -0
  210. package/dist/aisdk/extractselectionfromhtml.d.ts +27 -0
  211. package/dist/aisdk/validateoperations.d.ts +43 -0
  212. package/dist/aitabs/aitabs.d.ts +104 -84
  213. package/dist/aitabs/aitabsmainview.d.ts +70 -46
  214. package/dist/aitabs/tabs/aitabsview.d.ts +191 -188
  215. package/dist/aitranslate/aitranslate.d.ts +165 -129
  216. package/dist/aitranslate/aitranslatecheckregistry.d.ts +27 -0
  217. package/dist/aitranslate/aitranslatecontroller.d.ts +18 -15
  218. package/dist/aitranslate/aitranslategateway.d.ts +89 -0
  219. package/dist/aitranslate/aitranslateui.d.ts +17 -18
  220. package/dist/aitranslate/model/aitranslatecheck.d.ts +12 -12
  221. package/dist/aitranslate/model/aitranslatechecklist.d.ts +11 -11
  222. package/dist/aitranslate/model/aitranslatecheckrun.d.ts +24 -23
  223. package/dist/aitranslate/ui/aitranslatechecklistview.d.ts +28 -7
  224. package/dist/aitranslate/ui/aitranslatecheckresultsview.d.ts +11 -11
  225. package/dist/augmentation.d.ts +79 -63
  226. package/dist/errors.d.ts +0 -4
  227. package/dist/errorsmap.d.ts +5 -5
  228. package/dist/index-content.css +0 -96
  229. package/dist/index-editor.css +3948 -3291
  230. package/dist/index.css +3959 -3307
  231. package/dist/index.d.ts +83 -59
  232. package/dist/index.js +19 -6
  233. package/dist/translations/af.js +1 -1
  234. package/dist/translations/af.umd.js +1 -1
  235. package/dist/translations/ar.js +1 -1
  236. package/dist/translations/ar.umd.js +1 -1
  237. package/dist/translations/ast.js +1 -1
  238. package/dist/translations/ast.umd.js +1 -1
  239. package/dist/translations/az.js +1 -1
  240. package/dist/translations/az.umd.js +1 -1
  241. package/dist/translations/be.js +1 -1
  242. package/dist/translations/be.umd.js +1 -1
  243. package/dist/translations/bg.js +1 -1
  244. package/dist/translations/bg.umd.js +1 -1
  245. package/dist/translations/bn.js +1 -1
  246. package/dist/translations/bn.umd.js +1 -1
  247. package/dist/translations/bs.js +1 -1
  248. package/dist/translations/bs.umd.js +1 -1
  249. package/dist/translations/ca.js +1 -1
  250. package/dist/translations/ca.umd.js +1 -1
  251. package/dist/translations/cs.js +1 -1
  252. package/dist/translations/cs.umd.js +1 -1
  253. package/dist/translations/da.js +1 -1
  254. package/dist/translations/da.umd.js +1 -1
  255. package/dist/translations/de-ch.js +1 -1
  256. package/dist/translations/de-ch.umd.js +1 -1
  257. package/dist/translations/de.js +1 -1
  258. package/dist/translations/de.umd.js +1 -1
  259. package/dist/translations/el.js +1 -1
  260. package/dist/translations/el.umd.js +1 -1
  261. package/dist/translations/en-au.js +1 -1
  262. package/dist/translations/en-au.umd.js +1 -1
  263. package/dist/translations/en-gb.js +1 -1
  264. package/dist/translations/en-gb.umd.js +1 -1
  265. package/dist/translations/en.js +1 -1
  266. package/dist/translations/en.umd.js +1 -1
  267. package/dist/translations/eo.js +1 -1
  268. package/dist/translations/eo.umd.js +1 -1
  269. package/dist/translations/es-co.js +1 -1
  270. package/dist/translations/es-co.umd.js +1 -1
  271. package/dist/translations/es.js +1 -1
  272. package/dist/translations/es.umd.js +1 -1
  273. package/dist/translations/et.js +1 -1
  274. package/dist/translations/et.umd.js +1 -1
  275. package/dist/translations/eu.js +1 -1
  276. package/dist/translations/eu.umd.js +1 -1
  277. package/dist/translations/fa.js +1 -1
  278. package/dist/translations/fa.umd.js +1 -1
  279. package/dist/translations/fi.js +1 -1
  280. package/dist/translations/fi.umd.js +1 -1
  281. package/dist/translations/fr.js +1 -1
  282. package/dist/translations/fr.umd.js +1 -1
  283. package/dist/translations/gl.js +1 -1
  284. package/dist/translations/gl.umd.js +1 -1
  285. package/dist/translations/gu.js +1 -1
  286. package/dist/translations/gu.umd.js +1 -1
  287. package/dist/translations/he.js +1 -1
  288. package/dist/translations/he.umd.js +1 -1
  289. package/dist/translations/hi.js +1 -1
  290. package/dist/translations/hi.umd.js +1 -1
  291. package/dist/translations/hr.js +1 -1
  292. package/dist/translations/hr.umd.js +1 -1
  293. package/dist/translations/hu.js +1 -1
  294. package/dist/translations/hu.umd.js +1 -1
  295. package/dist/translations/hy.js +1 -1
  296. package/dist/translations/hy.umd.js +1 -1
  297. package/dist/translations/id.js +1 -1
  298. package/dist/translations/id.umd.js +1 -1
  299. package/dist/translations/it.js +1 -1
  300. package/dist/translations/it.umd.js +1 -1
  301. package/dist/translations/ja.js +1 -1
  302. package/dist/translations/ja.umd.js +1 -1
  303. package/dist/translations/jv.js +1 -1
  304. package/dist/translations/jv.umd.js +1 -1
  305. package/dist/translations/kk.js +1 -1
  306. package/dist/translations/kk.umd.js +1 -1
  307. package/dist/translations/km.js +1 -1
  308. package/dist/translations/km.umd.js +1 -1
  309. package/dist/translations/kn.js +1 -1
  310. package/dist/translations/kn.umd.js +1 -1
  311. package/dist/translations/ko.js +1 -1
  312. package/dist/translations/ko.umd.js +1 -1
  313. package/dist/translations/ku.js +1 -1
  314. package/dist/translations/ku.umd.js +1 -1
  315. package/dist/translations/lt.js +1 -1
  316. package/dist/translations/lt.umd.js +1 -1
  317. package/dist/translations/lv.js +1 -1
  318. package/dist/translations/lv.umd.js +1 -1
  319. package/dist/translations/ms.js +1 -1
  320. package/dist/translations/ms.umd.js +1 -1
  321. package/dist/translations/nb.js +1 -1
  322. package/dist/translations/nb.umd.js +1 -1
  323. package/dist/translations/ne.js +1 -1
  324. package/dist/translations/ne.umd.js +1 -1
  325. package/dist/translations/nl.js +1 -1
  326. package/dist/translations/nl.umd.js +1 -1
  327. package/dist/translations/no.js +1 -1
  328. package/dist/translations/no.umd.js +1 -1
  329. package/dist/translations/oc.js +1 -1
  330. package/dist/translations/oc.umd.js +1 -1
  331. package/dist/translations/pl.js +1 -1
  332. package/dist/translations/pl.umd.js +1 -1
  333. package/dist/translations/pt-br.js +1 -1
  334. package/dist/translations/pt-br.umd.js +1 -1
  335. package/dist/translations/pt.js +1 -1
  336. package/dist/translations/pt.umd.js +1 -1
  337. package/dist/translations/ro.js +1 -1
  338. package/dist/translations/ro.umd.js +1 -1
  339. package/dist/translations/ru.js +1 -1
  340. package/dist/translations/ru.umd.js +1 -1
  341. package/dist/translations/si.js +1 -1
  342. package/dist/translations/si.umd.js +1 -1
  343. package/dist/translations/sk.js +1 -1
  344. package/dist/translations/sk.umd.js +1 -1
  345. package/dist/translations/sl.js +1 -1
  346. package/dist/translations/sl.umd.js +1 -1
  347. package/dist/translations/sq.js +1 -1
  348. package/dist/translations/sq.umd.js +1 -1
  349. package/dist/translations/sr-latn.js +1 -1
  350. package/dist/translations/sr-latn.umd.js +1 -1
  351. package/dist/translations/sr.js +1 -1
  352. package/dist/translations/sr.umd.js +1 -1
  353. package/dist/translations/sv.js +1 -1
  354. package/dist/translations/sv.umd.js +1 -1
  355. package/dist/translations/th.js +1 -1
  356. package/dist/translations/th.umd.js +1 -1
  357. package/dist/translations/ti.js +1 -1
  358. package/dist/translations/ti.umd.js +1 -1
  359. package/dist/translations/tk.js +1 -1
  360. package/dist/translations/tk.umd.js +1 -1
  361. package/dist/translations/tr.js +1 -1
  362. package/dist/translations/tr.umd.js +1 -1
  363. package/dist/translations/tt.js +1 -1
  364. package/dist/translations/tt.umd.js +1 -1
  365. package/dist/translations/ug.js +1 -1
  366. package/dist/translations/ug.umd.js +1 -1
  367. package/dist/translations/uk.js +1 -1
  368. package/dist/translations/uk.umd.js +1 -1
  369. package/dist/translations/ur.js +1 -1
  370. package/dist/translations/ur.umd.js +1 -1
  371. package/dist/translations/uz.js +1 -1
  372. package/dist/translations/uz.umd.js +1 -1
  373. package/dist/translations/vi.js +1 -1
  374. package/dist/translations/vi.umd.js +1 -1
  375. package/dist/translations/zh-cn.js +1 -1
  376. package/dist/translations/zh-cn.umd.js +1 -1
  377. package/dist/translations/zh.js +1 -1
  378. package/dist/translations/zh.umd.js +1 -1
  379. package/package.json +32 -13
  380. package/dist/aichat/ui/controls/aichatcontrolsloaderview.d.ts +0 -12
  381. package/dist/aicore/ui/suggestioncontainer/aisuggestionloaderview.d.ts +0 -16
  382. package/dist/aicore/utils/geteditorfromcontext.d.ts +0 -19
  383. package/dist/aicore/utils/getoperationsfromreply.d.ts +0 -24
  384. package/dist/aiquickactions/ui/balloon/aiactionsballoondisclaimerview.d.ts +0 -17
  385. package/dist/aiquickactions/ui/balloon/aiactionsballoontoolbarview.d.ts +0 -37
  386. package/dist/aireviewcore/ui/aireviewcoreballoonsuggestionview.d.ts +0 -38
  387. package/dist/aitabs/tabs/tabbuttonview.d.ts +0 -47
  388. package/dist/aitabs/tabs/tabpanelview.d.ts +0 -44
@@ -1,23 +1,23 @@
1
1
  /**
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
- */
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
5
  /**
6
- * @module ai/aichatshortcuts/ui/aichatshortcutview
7
- */
8
- import { ButtonView } from '@ckeditor/ckeditor5-ui';
9
- import { type Locale } from '@ckeditor/ckeditor5-utils';
10
- import { type AIChatShortcutDefinition } from '../aichatshortcuts.js';
6
+ * @module ai/aichatshortcuts/ui/aichatshortcutview
7
+ */
8
+ import { ButtonView } from "@ckeditor/ckeditor5-ui";
9
+ import { type Locale } from "@ckeditor/ckeditor5-utils";
10
+ import { type AIChatShortcutDefinition } from "../aichatshortcuts.js";
11
11
  /**
12
- * The view that displays a single shortcut in the AI Chat feed.
13
- */
12
+ * The view that displays a single shortcut in the AI Chat feed.
13
+ */
14
14
  export declare class AIChatShortcutView extends ButtonView {
15
- /**
16
- * The unique identifier of the shortcut.
17
- */
18
- readonly id: string;
19
- /**
20
- * @inheritDoc
21
- */
22
- constructor(locale: Locale, definition: AIChatShortcutDefinition);
15
+ /**
16
+ * The unique identifier of the shortcut.
17
+ */
18
+ readonly id: string;
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ constructor(locale: Locale, definition: AIChatShortcutDefinition);
23
23
  }
@@ -1,245 +1,380 @@
1
1
  /**
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
- */
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
5
  /**
6
- * @module ai/aiconfig
7
- * @publicApi
8
- */
9
- import { type AIAssistantConfig } from './aiassistant/aiassistant.js';
10
- import { type AIChatConfig } from './aichat/aichat.js';
11
- import { type AISuggestionActionName } from './aichat/ui/feed/aichatfeedsuggestionitemactionsview.js';
12
- import { type AIQuickActionsConfig } from './aiquickactions/aiquickactions.js';
13
- import { type AITranslateConfig } from './aitranslate/aitranslate.js';
14
- import { type AIModelsConfig } from './aicore/model/aimodels.js';
15
- import { type AIReviewModeConfig } from './aireviewmode/aireviewmode.js';
6
+ * @module ai/aiconfig
7
+ * @publicApi
8
+ */
9
+ import { type AIAssistantConfig } from "./aiassistant/aiassistant.js";
10
+ import { type AIChatConfig } from "./aichat/aichat.js";
11
+ import { type AISuggestionActionName } from "./aicore/utils/replyactions.js";
12
+ import { type AIQuickActionsConfig } from "./aiquickactions/aiquickactions.js";
13
+ import { type AITranslateConfig } from "./aitranslate/aitranslate.js";
14
+ import { type AIModelsConfig } from "./aicore/model/aimodels.js";
15
+ import { type AIReviewModeConfig } from "./aireviewmode/aireviewmode.js";
16
+ import { type AIDefaultContext } from "./aicore/model/aidefaultcontext.js";
16
17
  /**
17
- * The configuration for all AI-related functionalities.
18
- *
19
- * Provides configuration properties for both AI features and AI adapters (which connect to the external AI services),
20
- *
21
- * ```ts
22
- * ClassicEditor
23
- * .create( {
24
- * ai: {
25
- * // ...
26
- * }
27
- * } )
28
- * .then( ... )
29
- * .catch( ... );
30
- * ```
31
- *
32
- * See {@link module:core/editor/editorconfig~EditorConfig all editor configuration options}.
33
- */
18
+ * The configuration for all AI-related functionalities.
19
+ *
20
+ * Provides configuration properties for both AI features and AI adapters (which connect to the external AI services),
21
+ *
22
+ * ```ts
23
+ * ClassicEditor
24
+ * .create( {
25
+ * ai: {
26
+ * // ...
27
+ * }
28
+ * } )
29
+ * .then( ... )
30
+ * .catch( ... );
31
+ * ```
32
+ *
33
+ * See {@link module:core/editor/editorconfig~EditorConfig all editor configuration options}.
34
+ */
34
35
  export interface AIConfig {
35
- /**
36
- * The URL of the AI service endpoint.
37
- *
38
- * This endpoint is used by AI features: AI Chat, AI Quick Actions, and AI Review Mode.
39
- * It does not affect the AI Assistant feature, which uses its own adapter configuration.
40
- *
41
- * **NOTE:** By default, the plugin uses the default AI service endpoint delivered by CKEditor Cloud Services.
42
- *
43
- * @default 'https://ai.cke-cs.com/v1'
44
- */
45
- serviceUrl?: string;
46
- /**
47
- * The configuration of the {@link module:ai/aiassistant/aiassistant~AIAssistant AI Assistant feature}.
48
- *
49
- * Read more in {@link module:ai/aiassistant/aiassistant~AIAssistantConfig}.
50
- */
51
- assistant?: AIAssistantConfig;
52
- /**
53
- * The configuration of the AI user interface provided by the {@link module:ai/aitabs/aitabs~AITabs} plugin.
54
- */
55
- container?: AIContainerConfig;
56
- /**
57
- * The configuration of the {@link module:ai/aichat/aichat~AIChat AI Chat feature}.
58
- *
59
- * Read more in {@link module:ai/aichat/aichat~AIChatConfig}.
60
- */
61
- chat?: AIChatConfig;
62
- /**
63
- * The configuration of the AI Quick Actions feature.
64
- *
65
- * Read more in {@link module:ai/aiquickactions/aiquickactions~AIQuickActionsConfig}.
66
- */
67
- quickActions?: AIQuickActionsConfig;
68
- /**
69
- * The configuration of the AI Review feature.
70
- *
71
- * Read more in {@link module:ai/aireviewmode/aireviewmode~AIReviewModeConfig}.
72
- */
73
- review?: AIReviewModeConfig;
74
- /**
75
- * The configuration of the {@link module:ai/aitranslate/aitranslate~AITranslate AI Translate feature}.
76
- */
77
- translate?: AITranslateConfig;
78
- /**
79
- * The configuration for AI models used across all AI features (Chat and Review).
80
- *
81
- * ```ts
82
- * ClassicEditor.create( {
83
- * ai: {
84
- * models: {
85
- * defaultModelId: 'gpt-5',
86
- * displayedModels: [ 'gpt', 'claude' ],
87
- * showModelSelector: true
88
- * }
89
- * }
90
- * } )
91
- * .then( ... )
92
- * .catch( ... );
93
- * ```
94
- */
95
- models?: AIModelsConfig;
96
- /**
97
- * Defines what actions are available for the user when interacting with AI responses in AI Chat and AI Quick Actions features.
98
- *
99
- * Users can perform following two actions:
100
- *
101
- * * `'applySuggestion'` - applies the presented change directly into the editor content.
102
- * * `'insertSuggestion'` - applies the presented change as a suggestion, which can be later on accepted or rejected.
103
- *
104
- * This setting impacts:
105
- *
106
- * * The action buttons located below an AI reply in the chat feed.
107
- * * The buttons located in the header of each change preview in the chat feed.
108
- * * The buttons located in the balloon which shows the change preview.
109
- *
110
- * Through this configuration option, you can change how users use the AI replies. For example, if you want to force users to always
111
- * insert AI-proposed changes as suggestions, omit `'applySuggestion'` action.
112
- *
113
- * Please note other factors that impact the availability of these actions:
114
- *
115
- * * Buttons related to `'applySuggestion'` action are hidden if {@link module:track-changes/trackchanges~TrackChanges track changes}
116
- * feature is turned on.
117
- * * Buttons related to `'insertSuggestion'` action are hidden if {@link module:track-changes/trackchanges~TrackChanges track changes}
118
- * feature is not loaded in the editor.
119
- *
120
- * Please note, that due to these factors, it is possible to accidentally configure the editor in a way, that no UI elements are
121
- * presented to the user.
122
- *
123
- * @default [ 'applySuggestion', 'insertSuggestion' ]
124
- */
125
- availableReplyActions?: Array<AISuggestionActionName>;
36
+ /**
37
+ * The URL of the AI service endpoint.
38
+ *
39
+ * This endpoint is used by AI features: AI Chat, AI Quick Actions, and AI Review Mode.
40
+ * It does not affect the AI Assistant feature, which uses its own adapter configuration.
41
+ *
42
+ * **NOTE:** By default, the plugin uses the default AI service endpoint delivered by CKEditor Cloud Services.
43
+ *
44
+ * @default 'https://ai.cke-cs.com/v1'
45
+ */
46
+ serviceUrl?: string;
47
+ /**
48
+ * A list of context references that are automatically attached to AI features.
49
+ * Each entry references an administrator-managed context, which is a reusable
50
+ * collection of prompts and files defined through the AI service and identified by its `id`.
51
+ *
52
+ * **Note:** The headless gateway APIs
53
+ * ({@link module:ai/aireviewmode/aireviewgateway~AIReviewGateway},
54
+ * {@link module:ai/aitranslate/aitranslategateway~AITranslateGateway}, and
55
+ * {@link module:ai/aidocumentprocessing/aidocumentprocessinggateway~AIDocumentProcessingGateway}) are
56
+ * config-independent by design and do **not** apply this option. Pass their context references explicitly through
57
+ * the `contexts` run option instead.
58
+ *
59
+ * Each entry is a context reference optionally narrowed down to specific features via `features`. When
60
+ * `features` is omitted, the entry is attached to **every** AI feature:
61
+ *
62
+ * ```ts
63
+ * ClassicEditor
64
+ * .create( {
65
+ * // ... Other configuration options ...
66
+ * ai: {
67
+ * defaultContext: [
68
+ * // Attached to every AI feature.
69
+ * { id: 'style-guide' },
70
+ *
71
+ * // Attached only to the `translate.*` quick actions and to every review command.
72
+ * {
73
+ * id: 'glossary',
74
+ * features: {
75
+ * quickActions: /^translate\./,
76
+ * review: true
77
+ * }
78
+ * }
79
+ * ]
80
+ * }
81
+ * } )
82
+ * .then( ... )
83
+ * .catch( ... );
84
+ * ```
85
+ *
86
+ * Read more in {@link module:ai/aicore/model/aidefaultcontext~AIDefaultContext}.
87
+ */
88
+ defaultContext?: AIDefaultContext;
89
+ /**
90
+ * Extra HTTP headers that the AI service should attach when it fetches document images that live behind
91
+ * authentication (for example a private CDN or a token-protected asset server) during image analysis.
92
+ *
93
+ * The value is a list of entries, each pairing a `domain` with the `headers` to attach. A header set is attached when
94
+ * the image URL starts with the entry's `domain`.
95
+ *
96
+ * Because the match is a plain string prefix, always scope each `domain` to a full origin ending with a slash, for
97
+ * example `https://assets.example.com/`, so it cannot match a look-alike host such as `https://assets.example.com.incorrect.example/`.
98
+ *
99
+ * It is applied only to the AI Chat message flow and the document processing flow, as these are the only cases where
100
+ * the AI service works with images embedded in the document.
101
+ *
102
+ * ```ts
103
+ * ClassicEditor.create( {
104
+ * ai: {
105
+ * extraHttpHeaders: [
106
+ * { domain: 'https://assets.example.com/', headers: { authorization: 'Bearer <token>' } }
107
+ * ]
108
+ * }
109
+ * } );
110
+ * ```
111
+ *
112
+ * Because authorization tokens expire and rotate, the value can also be a function. It is called for every request,
113
+ * so it can return fresh headers each time:
114
+ *
115
+ * ```ts
116
+ * ClassicEditor.create( {
117
+ * ai: {
118
+ * extraHttpHeaders: () => ( [
119
+ * { domain: 'https://assets.example.com/', headers: { authorization: `Bearer ${ getFreshToken() }` } }
120
+ * ] )
121
+ * }
122
+ * } );
123
+ * ```
124
+ */
125
+ extraHttpHeaders?: AIExtraHttpHeaders | (() => AIExtraHttpHeaders);
126
+ /**
127
+ * The configuration of the {@link module:ai/aiassistant/aiassistant~AIAssistant AI Assistant feature}.
128
+ *
129
+ * Read more in {@link module:ai/aiassistant/aiassistant~AIAssistantConfig}.
130
+ */
131
+ assistant?: AIAssistantConfig;
132
+ /**
133
+ * The configuration of the AI user interface provided by the {@link module:ai/aitabs/aitabs~AITabs} plugin.
134
+ */
135
+ container?: AIContainerConfig;
136
+ /**
137
+ * DOM element or shadow root into which the floating user interface of the AI features – their balloons,
138
+ * dialogs and dropdowns – is mounted. In the {@link module:ai/aiconfig~AIContainerOverlay `'overlay'`} container
139
+ * type it is also where the AI user interface itself is mounted.
140
+ *
141
+ * When the AI user interface runs inside a shadow root, provide this container as a separate shadow root attached
142
+ * to a host element placed at the end of `document.body`, rather than to an element nested in the AI user
143
+ * interface's own tree. As a direct child of `document.body`, that host has no positioned, scrollable or
144
+ * `overflow: hidden` ancestor to clip the floating UI or to shift the coordinates it is positioned in.
145
+ *
146
+ * When it is not set, the shared {@link module:core/editor/editorconfig~UiConfig#overlayContainer
147
+ * `ui.overlayContainer`} configuration is used instead, if present. Otherwise the floating UI is mounted into the
148
+ * shadow root that the AI user interface lives in, so it inherits the same styles; the `document.body` default is
149
+ * meant just for an AI user interface in the light DOM.
150
+ */
151
+ overlayContainer?: HTMLElement | ShadowRoot;
152
+ /**
153
+ * The configuration of the {@link module:ai/aichat/aichat~AIChat AI Chat feature}.
154
+ *
155
+ * Read more in {@link module:ai/aichat/aichat~AIChatConfig}.
156
+ */
157
+ chat?: AIChatConfig;
158
+ /**
159
+ * The configuration of the AI Quick Actions feature.
160
+ *
161
+ * Read more in {@link module:ai/aiquickactions/aiquickactions~AIQuickActionsConfig}.
162
+ */
163
+ quickActions?: AIQuickActionsConfig;
164
+ /**
165
+ * The configuration of the AI Review feature.
166
+ *
167
+ * Read more in {@link module:ai/aireviewmode/aireviewmode~AIReviewModeConfig}.
168
+ */
169
+ review?: AIReviewModeConfig;
170
+ /**
171
+ * The configuration of the {@link module:ai/aitranslate/aitranslate~AITranslate AI Translate feature}.
172
+ */
173
+ translate?: AITranslateConfig;
174
+ /**
175
+ * The configuration for AI models used across all AI features (Chat and Review).
176
+ *
177
+ * ```ts
178
+ * ClassicEditor.create( {
179
+ * ai: {
180
+ * models: {
181
+ * defaultModelId: 'gpt-5.4',
182
+ * displayedModels: [ 'gpt', 'claude' ],
183
+ * showModelSelector: true
184
+ * }
185
+ * }
186
+ * } )
187
+ * .then( ... )
188
+ * .catch( ... );
189
+ * ```
190
+ */
191
+ models?: AIModelsConfig;
192
+ /**
193
+ * Defines what actions are available for the user when interacting with AI responses in AI Chat and AI Quick Actions features.
194
+ *
195
+ * Users can perform following two actions:
196
+ *
197
+ * * `'applySuggestion'` - applies the presented change directly into the editor content.
198
+ * * `'insertSuggestion'` - applies the presented change as a suggestion, which can be later on accepted or rejected.
199
+ *
200
+ * This setting impacts:
201
+ *
202
+ * * The action buttons located below an AI reply in the chat feed.
203
+ * * The buttons located in the header of each change preview in the chat feed.
204
+ * * The buttons located in the balloon which shows the change preview.
205
+ *
206
+ * Through this configuration option, you can change how users use the AI replies. For example, if you want to force users to always
207
+ * insert AI-proposed changes as suggestions, omit `'applySuggestion'` action.
208
+ *
209
+ * Please note other factors that impact the availability of these actions:
210
+ *
211
+ * * Buttons related to `'applySuggestion'` action are hidden if {@link module:track-changes/trackchanges~TrackChanges track changes}
212
+ * feature is turned on.
213
+ * * Buttons related to `'insertSuggestion'` action are hidden if {@link module:track-changes/trackchanges~TrackChanges track changes}
214
+ * feature is not loaded in the editor.
215
+ *
216
+ * Please note, that due to these factors, it is possible to accidentally configure the editor in a way, that no UI elements are
217
+ * presented to the user.
218
+ *
219
+ * @default [ 'applySuggestion', 'insertSuggestion' ]
220
+ */
221
+ availableReplyActions?: Array<AISuggestionActionName>;
126
222
  }
127
- export type AIContainerType = 'sidebar' | 'overlay' | 'custom';
128
- export type AIContainerSide = 'left' | 'right';
223
+ export type AIContainerType = "sidebar" | "overlay" | "custom";
224
+ export type AIContainerSide = "left" | "right";
129
225
  export interface AIContainerBase {
130
- type: AIContainerType;
131
- /**
132
- * This option is used to show or hide the resize button in the AI user interface.
133
- *
134
- * Defaults to `true`.
135
- */
136
- showResizeButton?: boolean;
137
- /**
138
- * Whether the AI interface should be visible when the editor is created.
139
- */
140
- visibleByDefault?: boolean;
141
- /**
142
- * When `true`, clicking the active tab button collapses the panel and toggles the
143
- * `ck-ai-tabs_collapsed` CSS class on the AI tabs DOM element. Clicking the tab again expands
144
- * it back. When `false`, clicking the active tab button is a no-op.
145
- *
146
- * Defaults to `false`.
147
- */
148
- collapsible?: boolean;
226
+ type: AIContainerType;
227
+ /**
228
+ * This option is used to show or hide the resize button in the AI user interface.
229
+ *
230
+ * Defaults to `true`.
231
+ */
232
+ showResizeButton?: boolean;
233
+ /**
234
+ * Whether the AI interface should be visible when the editor is created.
235
+ */
236
+ visibleByDefault?: boolean;
237
+ /**
238
+ * When `true`, clicking the active tab button collapses the panel and toggles the
239
+ * `ck-ai-tabs_collapsed` CSS class on the AI tabs DOM element. Clicking the tab again expands
240
+ * it back. When `false`, clicking the active tab button is a no-op.
241
+ *
242
+ * Defaults to `false`.
243
+ */
244
+ collapsible?: boolean;
149
245
  }
150
246
  /**
151
- * The configuration of the AI user interface container in the sidebar mode. Provide an existing DOM
152
- * element to use as the container the AI user interface will automatically render into that element.
153
- *
154
- * Additionally, the {@link module:ai/aitabs/aitabs~AITabs tab buttons} can be positioned on the preferred
155
- * side of the container.
156
- *
157
- * ```ts
158
- * ClassicEditor
159
- * .create( {
160
- * attachTo: document.querySelector( '#editor' ),
161
- * // ... Other configuration options ...
162
- * ai: {
163
- * container: {
164
- * type: 'sidebar',
165
- *
166
- * // Existing DOM element to use as the container for the AI user interface.
167
- * element: document.querySelector( '#ai-sidebar-container' ),
168
- *
169
- * // (Optional) The preferred side of the element to position the tab buttons.
170
- * side: 'right'
171
- * },
172
- * }
173
- * } )
174
- * .then( ... )
175
- * .catch( ... );
176
- * ```
177
- */
247
+ * The configuration of the AI user interface container in the sidebar mode. Provide an existing DOM
248
+ * element to use as the container the AI user interface will automatically render into that element.
249
+ *
250
+ * Additionally, the {@link module:ai/aitabs/aitabs~AITabs tab buttons} can be positioned on the preferred
251
+ * side of the container.
252
+ *
253
+ * ```ts
254
+ * ClassicEditor
255
+ * .create( {
256
+ * attachTo: document.querySelector( '#editor' ),
257
+ * // ... Other configuration options ...
258
+ * ai: {
259
+ * container: {
260
+ * type: 'sidebar',
261
+ *
262
+ * // Existing DOM element to use as the container for the AI user interface.
263
+ * element: document.querySelector( '#ai-sidebar-container' ),
264
+ *
265
+ * // (Optional) The preferred side of the element to position the tab buttons.
266
+ * side: 'right'
267
+ * },
268
+ * }
269
+ * } )
270
+ * .then( ... )
271
+ * .catch( ... );
272
+ * ```
273
+ */
178
274
  export interface AIContainerSidebar extends AIContainerBase {
179
- type: 'sidebar';
180
- element: HTMLElement;
181
- side?: AIContainerSide;
275
+ type: "sidebar";
276
+ element: HTMLElement;
277
+ side?: AIContainerSide;
182
278
  }
183
279
  /**
184
- * The configuration of the AI user interface container in the overlay mode. In this mode, the AI user
185
- * interface is displayed on top of the web page on a preferred side. This mode is best suited
186
- * for integrations with limited space.
187
- *
188
- * ```ts
189
- * ClassicEditor
190
- * .create( {
191
- * attachTo: document.querySelector( '#editor' ),
192
- * // ... Other configuration options ...
193
- * ai: {
194
- * container: {
195
- * type: 'overlay',
196
- * side: 'right'
197
- * },
198
- * }
199
- * } )
200
- * .then( ... )
201
- * .catch( ... );
202
- * ```
203
- */
280
+ * The configuration of the AI user interface container in the overlay mode. In this mode, the AI user
281
+ * interface is displayed on top of the web page on a preferred side. This mode is best suited
282
+ * for integrations with limited space.
283
+ *
284
+ * ```ts
285
+ * ClassicEditor
286
+ * .create( {
287
+ * attachTo: document.querySelector( '#editor' ),
288
+ * // ... Other configuration options ...
289
+ * ai: {
290
+ * container: {
291
+ * type: 'overlay',
292
+ * side: 'right'
293
+ * },
294
+ * }
295
+ * } )
296
+ * .then( ... )
297
+ * .catch( ... );
298
+ * ```
299
+ */
204
300
  export interface AIContainerOverlay extends AIContainerBase {
205
- type: 'overlay';
206
- side?: AIContainerSide;
301
+ type: "overlay";
302
+ side?: AIContainerSide;
207
303
  }
208
304
  /**
209
- * The configuration of the AI user interface container in the custom mode.
210
- *
211
- * In this mode, integrator is responsible for rendering the AI user interface in the web page.
212
- *
213
- * * Use {@link module:ai/aitabs/aitabs~AITabs#view} to access the view of the AI user interface,
214
- * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#getTabIds} to read available IDs of individual tabs in the AI user interface,
215
- * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#getTab} to access individual tab views in the AI user interface,
216
- * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#addTab} to add a new tab to the AI user interface,
217
- * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#activateTab} to switch between tabs from the code.
218
- *
219
- * For example, to integrate the AI user interface with custom containers on the web page, use the following code:
220
- *
221
- * ```ts
222
- * const tabsPlugin = editor.plugins.get( 'AITabs' );
223
- *
224
- * for ( const id of tabsPlugin.view.getTabIds() ) {
225
- * const tab = tabsPlugin.view.getTab( id );
226
- *
227
- * // Display tab button and panel in a custom container.
228
- * myButtonsContainer.appendChild( tab.button.element );
229
- * myPanelContainer.appendChild( tab.panel.element );
230
- * }
231
- * ```
232
- */
305
+ * The configuration of the AI user interface container in the custom mode.
306
+ *
307
+ * In this mode, integrator is responsible for rendering the AI user interface in the web page.
308
+ *
309
+ * * Use {@link module:ai/aitabs/aitabs~AITabs#view} to access the view of the AI user interface,
310
+ * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#getTabIds} to read available IDs of individual tabs in the AI user interface,
311
+ * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#getTab} to access individual tab views in the AI user interface,
312
+ * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#addTab} to add a new tab to the AI user interface,
313
+ * * Use {@link module:ai/aitabs/tabs/aitabsview~AITabsView#activateTab} to switch between tabs from the code,
314
+ * * Use {@link module:ai/aitabs/aitabs~AITabs#container} to tell the AI features which DOM tree they were mounted in.
315
+ *
316
+ * For example, to integrate the AI user interface with custom containers on the web page, use the following code:
317
+ *
318
+ * ```ts
319
+ * const tabsPlugin = editor.plugins.get( 'AITabs' );
320
+ *
321
+ * for ( const id of tabsPlugin.view.getTabIds() ) {
322
+ * const tab = tabsPlugin.view.getTab( id );
323
+ *
324
+ * // Display tab button and panel in a custom container.
325
+ * myButtonsContainer.appendChild( tab.button.element );
326
+ * myPanelContainer.appendChild( tab.panel.element );
327
+ * }
328
+ *
329
+ * // Tells the AI features which DOM tree their floating UI belongs in.
330
+ * tabsPlugin.container = myPanelContainer;
331
+ * ```
332
+ *
333
+ * Setting {@link module:ai/aitabs/aitabs~AITabs#container} is required in this mode. The floating user interface of the AI
334
+ * features – their balloons, dialogs, and dropdowns – is mounted in the DOM tree the AI user interface lives in, and in this
335
+ * mode only the integration knows which tree that is. Until it is set, the floating user interface is not displayed
336
+ * at all.
337
+ *
338
+ * Alternatively, point the {@link module:ai/aiconfig~AIConfig#overlayContainer `config.ai.overlayContainer`} option at a
339
+ * container of your own. It takes precedence over the container above, and is the better choice when the container the AI
340
+ * user interface was placed in is positioned, scrollable, or clipping.
341
+ */
233
342
  export interface AIContainerCustom extends AIContainerBase {
234
- type: 'custom';
343
+ type: "custom";
235
344
  }
236
345
  /**
237
- * The configuration of the AI user interface provided by the {@link module:ai/aitabs/aitabs~AITabs} plugin.
238
- *
239
- * The AI user interface can operate in three different modes:
240
- *
241
- * * {@link module:ai/aiconfig~AIContainerSidebar} - the AI user interface is displayed in a specific DOM element,
242
- * * {@link module:ai/aiconfig~AIContainerOverlay} - the AI user interface is displayed on top of the web page,
243
- * * {@link module:ai/aiconfig~AIContainerCustom} - the AI user interface is displayed in a custom way.
244
- */
346
+ * The configuration of the AI user interface provided by the {@link module:ai/aitabs/aitabs~AITabs} plugin.
347
+ *
348
+ * The AI user interface can operate in three different modes:
349
+ *
350
+ * * {@link module:ai/aiconfig~AIContainerSidebar} - the AI user interface is displayed in a specific DOM element,
351
+ * * {@link module:ai/aiconfig~AIContainerOverlay} - the AI user interface is displayed on top of the web page,
352
+ * * {@link module:ai/aiconfig~AIContainerCustom} - the AI user interface is displayed in a custom way.
353
+ */
245
354
  export type AIContainerConfig = AIContainerSidebar | AIContainerOverlay | AIContainerCustom;
355
+ /**
356
+ * If fetching some resources (for example images) used during AI image analysis requires passing an additional
357
+ * authorization factor in the form of additional HTTP headers:
358
+ *
359
+ * ```
360
+ * extraHttpHeaders: [
361
+ * { domain: 'https://ckeditor.com/', headers: { authorization: 'Bearer xxx' } },
362
+ * { domain: 'https://example.com/', headers: { authorization: 'Bearer xxx' } }
363
+ * ]
364
+ * ```
365
+ *
366
+ * See {@link module:ai/aiconfig~AIConfig#extraHttpHeaders}.
367
+ */
368
+ export type AIExtraHttpHeaders = Array<{
369
+ /**
370
+ * The origin the headers apply to. Matched as a plain string prefix against the image URL, so it should be a full
371
+ * origin ending with a slash, for example `https://assets.example.com/`.
372
+ */
373
+ domain: string;
374
+ /**
375
+ * The HTTP headers to attach for the matching `domain`.
376
+ */
377
+ headers: {
378
+ [header: string]: string;
379
+ };
380
+ }>;