@epam/ai-dial-chat-hooks 1.3.0-dev.37 → 1.3.0-dev.371

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 (578) hide show
  1. package/api-error/api-error.d.ts +2 -0
  2. package/api-error/api-error.d.ts.map +1 -1
  3. package/api-error/api-error.js +31 -23
  4. package/api-transport/create-unauthorized-middleware.js +4 -1
  5. package/attachment/attach-constraints.d.ts +31 -0
  6. package/attachment/attach-constraints.d.ts.map +1 -0
  7. package/attachment/attach-constraints.js +18 -0
  8. package/attachment/useAttachmentAction/useAttachmentAction.d.ts +1 -1
  9. package/attachment/useAttachmentAction/useAttachmentAction.d.ts.map +1 -1
  10. package/attachment/useAttachmentAction/useAttachmentAction.js +25 -28
  11. package/attachments.js +2 -1
  12. package/catalog/application-credentials.d.ts +15 -0
  13. package/catalog/application-credentials.d.ts.map +1 -0
  14. package/catalog/application-credentials.js +28 -0
  15. package/catalog/catalog-derivations.d.ts +5 -3
  16. package/catalog/catalog-derivations.d.ts.map +1 -1
  17. package/catalog/catalog-derivations.js +13 -6
  18. package/catalog/catalog-entity-kind.d.ts +31 -0
  19. package/catalog/catalog-entity-kind.d.ts.map +1 -0
  20. package/catalog/catalog-entity-kind.js +21 -0
  21. package/catalog/catalog-preferences.d.ts +8 -0
  22. package/catalog/catalog-preferences.d.ts.map +1 -0
  23. package/catalog/catalog-preferences.js +5 -0
  24. package/catalog/create-publish-api.d.ts +3 -1
  25. package/catalog/create-publish-api.d.ts.map +1 -1
  26. package/catalog/create-publish-api.js +4 -0
  27. package/catalog/deployment-id.d.ts +13 -4
  28. package/catalog/deployment-id.d.ts.map +1 -1
  29. package/catalog/deployment-id.js +17 -3
  30. package/catalog/entity-details.d.ts +2 -0
  31. package/catalog/entity-details.d.ts.map +1 -1
  32. package/catalog/favorite-entity-type.d.ts +5 -0
  33. package/catalog/favorite-entity-type.d.ts.map +1 -0
  34. package/catalog/favorite-entity-type.js +10 -0
  35. package/catalog/map-deployment-limits-to-input.d.ts +4 -3
  36. package/catalog/map-deployment-limits-to-input.d.ts.map +1 -1
  37. package/catalog/map-deployment-limits-to-input.js +3 -4
  38. package/catalog/map-deployment-to-catalog-item.d.ts +12 -1
  39. package/catalog/map-deployment-to-catalog-item.d.ts.map +1 -1
  40. package/catalog/map-deployment-to-catalog-item.js +22 -15
  41. package/catalog/map-entity-details-to-catalog.d.ts.map +1 -1
  42. package/catalog/map-entity-details-to-catalog.js +69 -24
  43. package/catalog/map-skill-to-catalog-item.d.ts +4 -5
  44. package/catalog/map-skill-to-catalog-item.d.ts.map +1 -1
  45. package/catalog/map-skill-to-catalog-item.js +29 -38
  46. package/catalog/publish.d.ts +1 -1
  47. package/catalog/publish.d.ts.map +1 -1
  48. package/catalog/resource-folder.d.ts +8 -0
  49. package/catalog/resource-folder.d.ts.map +1 -0
  50. package/catalog/resource-folder.js +13 -0
  51. package/catalog/resource-name-conflict.d.ts +22 -0
  52. package/catalog/resource-name-conflict.d.ts.map +1 -0
  53. package/catalog/resource-name-conflict.js +32 -0
  54. package/catalog/resource-save-adapter.d.ts +36 -0
  55. package/catalog/resource-save-adapter.d.ts.map +1 -0
  56. package/catalog/resource-save-adapter.js +4 -0
  57. package/catalog/resource-save-adapters.d.ts +93 -0
  58. package/catalog/resource-save-adapters.d.ts.map +1 -0
  59. package/catalog/resource-save-adapters.js +116 -0
  60. package/catalog/resource-save.d.ts +76 -0
  61. package/catalog/resource-save.d.ts.map +1 -0
  62. package/catalog/resource-save.js +52 -0
  63. package/catalog/unpublishable-folders.d.ts +21 -0
  64. package/catalog/unpublishable-folders.d.ts.map +1 -0
  65. package/catalog/unpublishable-folders.js +21 -0
  66. package/catalog/usage-limit-rows.d.ts +14 -0
  67. package/catalog/usage-limit-rows.d.ts.map +1 -0
  68. package/catalog/usage-limit-rows.js +19 -0
  69. package/catalog/use-publish-history.d.ts +19 -0
  70. package/catalog/use-publish-history.d.ts.map +1 -0
  71. package/catalog/use-publish-history.js +25 -0
  72. package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.d.ts +57 -0
  73. package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.d.ts.map +1 -0
  74. package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.js +67 -0
  75. package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.d.ts +23 -6
  76. package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.d.ts.map +1 -1
  77. package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.js +108 -107
  78. package/catalog/useCatalogItemDelete/useCatalogItemDelete.d.ts +41 -0
  79. package/catalog/useCatalogItemDelete/useCatalogItemDelete.d.ts.map +1 -0
  80. package/catalog/useCatalogItemDelete/useCatalogItemDelete.js +37 -0
  81. package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.d.ts.map +1 -1
  82. package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js +72 -77
  83. package/catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js +1 -1
  84. package/catalog/usePublishFolders/usePublishFolders.d.ts +8 -0
  85. package/catalog/usePublishFolders/usePublishFolders.d.ts.map +1 -1
  86. package/catalog/usePublishFolders/usePublishFolders.js +32 -29
  87. package/catalog/useResourceFolders/useResourceFolders.d.ts +33 -0
  88. package/catalog/useResourceFolders/useResourceFolders.d.ts.map +1 -0
  89. package/catalog/useResourceFolders/useResourceFolders.js +58 -0
  90. package/catalog/useResourceSavePanel/useResourceSavePanel.d.ts +64 -0
  91. package/catalog/useResourceSavePanel/useResourceSavePanel.d.ts.map +1 -0
  92. package/catalog/useResourceSavePanel/useResourceSavePanel.js +173 -0
  93. package/catalog/useSkillItemDetails.js +3 -3
  94. package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.d.ts +43 -0
  95. package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.d.ts.map +1 -0
  96. package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.js +46 -0
  97. package/catalog/useUnpublishableFolders/useUnpublishableFolders.d.ts +22 -0
  98. package/catalog/useUnpublishableFolders/useUnpublishableFolders.d.ts.map +1 -0
  99. package/catalog/useUnpublishableFolders/useUnpublishableFolders.js +53 -0
  100. package/catalog.js +41 -23
  101. package/conversation/conversation-data-source.d.ts +47 -0
  102. package/conversation/conversation-data-source.d.ts.map +1 -0
  103. package/conversation/conversation-data-source.js +11 -0
  104. package/conversation/conversation-draft/conversation-draft-store.d.ts +21 -0
  105. package/conversation/conversation-draft/conversation-draft-store.d.ts.map +1 -0
  106. package/conversation/conversation-draft/conversation-draft-store.js +84 -0
  107. package/conversation/conversation-draft/conversation-draft.d.ts +48 -0
  108. package/conversation/conversation-draft/conversation-draft.d.ts.map +1 -0
  109. package/conversation/conversation-list.d.ts +6 -0
  110. package/conversation/conversation-list.d.ts.map +1 -0
  111. package/conversation/conversation-list.js +5 -0
  112. package/conversation/conversation-title-stream.d.ts +33 -0
  113. package/conversation/conversation-title-stream.d.ts.map +1 -0
  114. package/conversation/conversation-title-stream.js +103 -0
  115. package/conversation/conversation-transfer/attachment-refs.d.ts +10 -2
  116. package/conversation/conversation-transfer/attachment-refs.d.ts.map +1 -1
  117. package/conversation/conversation-transfer/attachment-refs.js +31 -9
  118. package/conversation/conversation-transfer/export-conversation.d.ts +5 -1
  119. package/conversation/conversation-transfer/export-conversation.d.ts.map +1 -1
  120. package/conversation/conversation-transfer/export-conversation.js +19 -18
  121. package/conversation/conversation-transfer/import-conversation.d.ts +11 -6
  122. package/conversation/conversation-transfer/import-conversation.d.ts.map +1 -1
  123. package/conversation/conversation-transfer/import-conversation.js +65 -69
  124. package/conversation/conversation-transfer/progress.js +1 -1
  125. package/conversation/conversation-transfer/zip-export.js +1 -7
  126. package/conversation/conversation-transfer/zip-import.js +1 -1
  127. package/conversation/create-chat-stream-api.d.ts +24 -3
  128. package/conversation/create-chat-stream-api.d.ts.map +1 -1
  129. package/conversation/create-chat-stream-api.js +67 -56
  130. package/conversation/generation-registry.d.ts +30 -0
  131. package/conversation/generation-registry.d.ts.map +1 -0
  132. package/conversation/generation-registry.js +33 -0
  133. package/conversation/get-model-id-from-conversation-id.d.ts.map +1 -1
  134. package/conversation/get-model-id-from-conversation-id.js +1 -1
  135. package/conversation/message-utils.d.ts +6 -0
  136. package/conversation/message-utils.d.ts.map +1 -1
  137. package/conversation/message-utils.js +14 -10
  138. package/conversation/scheduled-task-grouping.d.ts +53 -0
  139. package/conversation/scheduled-task-grouping.d.ts.map +1 -0
  140. package/conversation/scheduled-task-grouping.js +45 -0
  141. package/conversation/useActiveConversationSync/useActiveConversationSync.d.ts +4 -2
  142. package/conversation/useActiveConversationSync/useActiveConversationSync.d.ts.map +1 -1
  143. package/conversation/useActiveConversationSync/useActiveConversationSync.js +19 -12
  144. package/conversation/useAttachmentUpload/useAttachmentUpload.d.ts.map +1 -1
  145. package/conversation/useAttachmentUpload/useAttachmentUpload.js +4 -1
  146. package/conversation/useConversationComposerDraft/useConversationComposerDraft.d.ts +39 -0
  147. package/conversation/useConversationComposerDraft/useConversationComposerDraft.d.ts.map +1 -0
  148. package/conversation/useConversationComposerDraft/useConversationComposerDraft.js +128 -0
  149. package/conversation/useConversationDiscovery/useConversationDiscovery.d.ts +22 -0
  150. package/conversation/useConversationDiscovery/useConversationDiscovery.d.ts.map +1 -0
  151. package/conversation/useConversationDiscovery/useConversationDiscovery.js +60 -0
  152. package/conversation/useConversationExport/useConversationExport.d.ts.map +1 -1
  153. package/conversation/useConversationExport/useConversationExport.js +113 -122
  154. package/conversation/useConversationHandlers/message-utils.js +2 -2
  155. package/conversation/useConversationHandlers/useConversationHandlers.js +41 -41
  156. package/conversation/useConversationImport/useConversationImport.js +24 -24
  157. package/conversation/useConversationPanelItems/useConversationPanelItems.d.ts +18 -5
  158. package/conversation/useConversationPanelItems/useConversationPanelItems.d.ts.map +1 -1
  159. package/conversation/useConversationPanelItems/useConversationPanelItems.js +34 -30
  160. package/conversation/useConversationScroll/useConversationScroll.d.ts.map +1 -1
  161. package/conversation/useConversationScroll/useConversationScroll.js +69 -72
  162. package/conversation/useConversationStream/conversation-path.js +2 -2
  163. package/conversation/useConversationStream/conversation-stream.types.d.ts +142 -0
  164. package/conversation/useConversationStream/conversation-stream.types.d.ts.map +1 -0
  165. package/conversation/useConversationStream/frame-scheduler.js +17 -17
  166. package/conversation/useConversationStream/generation-resume.d.ts +24 -2
  167. package/conversation/useConversationStream/generation-resume.d.ts.map +1 -1
  168. package/conversation/useConversationStream/generation-resume.js +110 -121
  169. package/conversation/useConversationStream/stream-errors.d.ts +10 -0
  170. package/conversation/useConversationStream/stream-errors.d.ts.map +1 -0
  171. package/conversation/useConversationStream/stream-errors.js +10 -0
  172. package/conversation/useConversationStream/stream-session.d.ts +51 -0
  173. package/conversation/useConversationStream/stream-session.d.ts.map +1 -0
  174. package/conversation/useConversationStream/stream-session.js +179 -0
  175. package/conversation/useConversationStream/useConversationReloadErrors.d.ts +25 -0
  176. package/conversation/useConversationStream/useConversationReloadErrors.d.ts.map +1 -0
  177. package/conversation/useConversationStream/useConversationReloadErrors.js +38 -0
  178. package/conversation/useConversationStream/useConversationStream.d.ts +3 -136
  179. package/conversation/useConversationStream/useConversationStream.d.ts.map +1 -1
  180. package/conversation/useConversationStream/useConversationStream.js +141 -325
  181. package/conversation/useConversationStream/useStopGeneration.d.ts +29 -0
  182. package/conversation/useConversationStream/useStopGeneration.d.ts.map +1 -0
  183. package/conversation/useConversationStream/useStopGeneration.js +48 -0
  184. package/conversation/useConversationStream/useStreamPathState.d.ts +39 -0
  185. package/conversation/useConversationStream/useStreamPathState.d.ts.map +1 -0
  186. package/conversation/useConversationStream/useStreamPathState.js +55 -0
  187. package/conversation/useConversationTitleEnrichmentController.d.ts +64 -0
  188. package/conversation/useConversationTitleEnrichmentController.d.ts.map +1 -0
  189. package/conversation/useConversationTitleEnrichmentController.js +155 -0
  190. package/conversation/useDeploymentChangeTracking.d.ts +14 -0
  191. package/conversation/useDeploymentChangeTracking.d.ts.map +1 -0
  192. package/conversation/useDeploymentChangeTracking.js +23 -0
  193. package/conversation/useEntityPreselection/useEntityPreselection.d.ts +108 -0
  194. package/conversation/useEntityPreselection/useEntityPreselection.d.ts.map +1 -0
  195. package/conversation/useEntityPreselection/useEntityPreselection.js +78 -0
  196. package/conversation/useMessageSelectionReply/useMessageSelectionReply.js +4 -10
  197. package/conversation/useTranscribeAudio/useTranscribeAudio.d.ts +8 -1
  198. package/conversation/useTranscribeAudio/useTranscribeAudio.d.ts.map +1 -1
  199. package/conversation/useTranscribeAudio/useTranscribeAudio.js +36 -27
  200. package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.d.ts +16 -0
  201. package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.d.ts.map +1 -0
  202. package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.js +17 -0
  203. package/conversation-overlay.js +1 -2
  204. package/conversation-sources/stage-citations.d.ts +9 -0
  205. package/conversation-sources/stage-citations.d.ts.map +1 -0
  206. package/conversation-sources/stage-citations.js +8 -0
  207. package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.d.ts +4 -0
  208. package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.d.ts.map +1 -0
  209. package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.js +5 -0
  210. package/conversation-sources.js +3 -1
  211. package/conversation.js +45 -33
  212. package/entry-points/attachments.d.ts +1 -0
  213. package/entry-points/attachments.d.ts.map +1 -1
  214. package/entry-points/catalog.d.ts +17 -0
  215. package/entry-points/catalog.d.ts.map +1 -1
  216. package/entry-points/conversation-sources.d.ts +2 -0
  217. package/entry-points/conversation-sources.d.ts.map +1 -1
  218. package/entry-points/conversation.d.ts +13 -0
  219. package/entry-points/conversation.d.ts.map +1 -1
  220. package/entry-points/external-services.d.ts +6 -0
  221. package/entry-points/external-services.d.ts.map +1 -0
  222. package/entry-points/file-manager-canvas.d.ts +1 -0
  223. package/entry-points/file-manager-canvas.d.ts.map +1 -1
  224. package/entry-points/file-manager.d.ts +2 -0
  225. package/entry-points/file-manager.d.ts.map +1 -1
  226. package/entry-points/oauth.d.ts +1 -0
  227. package/entry-points/oauth.d.ts.map +1 -1
  228. package/entry-points/offline-credentials.d.ts +7 -0
  229. package/entry-points/offline-credentials.d.ts.map +1 -0
  230. package/entry-points/project.d.ts +20 -0
  231. package/entry-points/project.d.ts.map +1 -0
  232. package/entry-points/scheduled-tasks.d.ts +7 -0
  233. package/entry-points/scheduled-tasks.d.ts.map +1 -1
  234. package/entry-points/sharing.d.ts +4 -0
  235. package/entry-points/sharing.d.ts.map +1 -1
  236. package/entry-points/skill-editor.d.ts +2 -0
  237. package/entry-points/skill-editor.d.ts.map +1 -1
  238. package/entry-points/skills-state.d.ts +1 -0
  239. package/entry-points/skills-state.d.ts.map +1 -1
  240. package/entry-points/usage-limits.d.ts +9 -0
  241. package/entry-points/usage-limits.d.ts.map +1 -0
  242. package/entry-points/utils.d.ts +6 -0
  243. package/entry-points/utils.d.ts.map +1 -1
  244. package/entry-points/viewport-layout.d.ts +1 -0
  245. package/entry-points/viewport-layout.d.ts.map +1 -1
  246. package/external-services/useExternalServiceLogin.d.ts +99 -0
  247. package/external-services/useExternalServiceLogin.d.ts.map +1 -0
  248. package/external-services/useExternalServiceLogin.js +93 -0
  249. package/external-services.d.ts +2 -0
  250. package/external-services.js +5 -0
  251. package/file-manager-canvas.js +3 -2
  252. package/file-manager.js +32 -30
  253. package/files/attachment-canvas.d.ts +12 -0
  254. package/files/attachment-canvas.d.ts.map +1 -1
  255. package/files/attachment-canvas.js +18 -10
  256. package/files/attachment-dto-to-display.d.ts.map +1 -1
  257. package/files/attachment-dto-to-display.js +13 -12
  258. package/files/attachment-types.js +1 -1
  259. package/files/browser-download.d.ts +9 -0
  260. package/files/browser-download.d.ts.map +1 -0
  261. package/files/browser-download.js +23 -0
  262. package/files/create-files-api.d.ts +3 -4
  263. package/files/create-files-api.d.ts.map +1 -1
  264. package/files/create-files-api.js +1 -1
  265. package/files/create-upload-file-with-progress.d.ts +21 -1
  266. package/files/create-upload-file-with-progress.d.ts.map +1 -1
  267. package/files/create-upload-file-with-progress.js +50 -34
  268. package/files/dial-file-manager-copy-move.util.d.ts.map +1 -1
  269. package/files/dial-file-manager-copy-move.util.js +28 -28
  270. package/files/dial-file-manager-mapping.util.d.ts +23 -3
  271. package/files/dial-file-manager-mapping.util.d.ts.map +1 -1
  272. package/files/dial-file-manager-mapping.util.js +97 -69
  273. package/files/dial-file-manager.types.d.ts +15 -5
  274. package/files/dial-file-manager.types.d.ts.map +1 -1
  275. package/files/dial-file-to-attachment.js +3 -3
  276. package/files/dial-file.d.ts +19 -0
  277. package/files/dial-file.d.ts.map +1 -1
  278. package/files/dial-file.js +20 -12
  279. package/files/dial-files-api.d.ts +2 -2
  280. package/files/dial-files-api.d.ts.map +1 -1
  281. package/files/download-progress.d.ts +33 -0
  282. package/files/download-progress.d.ts.map +1 -0
  283. package/files/download-progress.js +28 -0
  284. package/files/source-content.js +1 -1
  285. package/files/useDialFileListing/useDialFileListing.d.ts.map +1 -1
  286. package/files/useDialFileListing/useDialFileListing.js +97 -109
  287. package/files/useDialFileManager/useDialFileManager.d.ts.map +1 -1
  288. package/files/useDialFileManager/useDialFileManager.js +5 -2
  289. package/files/useDialFileManagerSections/useDialFileManagerSections.d.ts.map +1 -1
  290. package/files/useDialFileManagerSections/useDialFileManagerSections.js +59 -68
  291. package/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js +1 -1
  292. package/files/useDialFileMetadata/useDialFileMetadata.js +3 -3
  293. package/files/useDialFileMutations/useDialFileMutations.d.ts +9 -0
  294. package/files/useDialFileMutations/useDialFileMutations.d.ts.map +1 -1
  295. package/files/useDialFileMutations/useDialFileMutations.js +232 -159
  296. package/files/useDialFilePreview/useDialFilePreview.d.ts +33 -0
  297. package/files/useDialFilePreview/useDialFilePreview.d.ts.map +1 -0
  298. package/files/useDialFilePreview/useDialFilePreview.js +45 -0
  299. package/files/useDialFileUploadBatch/useDialFileUploadBatch.d.ts.map +1 -1
  300. package/files/useDialFileUploadBatch/useDialFileUploadBatch.js +114 -103
  301. package/files/useFileAttachmentModalState/useFileAttachmentModalState.d.ts +25 -0
  302. package/files/useFileAttachmentModalState/useFileAttachmentModalState.d.ts.map +1 -0
  303. package/files/useFileAttachmentModalState/useFileAttachmentModalState.js +19 -0
  304. package/files/useFileAttachmentPicker/useFileAttachmentPicker.js +2 -2
  305. package/files/useUnshareConfirmationState/useUnshareConfirmationState.d.ts +23 -0
  306. package/files/useUnshareConfirmationState/useUnshareConfirmationState.d.ts.map +1 -0
  307. package/files/useUnshareConfirmationState/useUnshareConfirmationState.js +18 -0
  308. package/index.d.ts +96 -0
  309. package/index.d.ts.map +1 -1
  310. package/index.js +244 -149
  311. package/mcp-apps/mcp-apps-api-client.d.ts.map +1 -1
  312. package/mcp-apps/mcp-apps-api-client.js +18 -17
  313. package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.d.ts +3 -2
  314. package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.d.ts.map +1 -1
  315. package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js +28 -10
  316. package/mcp-apps/useMcpAppTools/useMcpAppTools.d.ts.map +1 -1
  317. package/mcp-apps/useMcpAppTools/useMcpAppTools.js +45 -45
  318. package/oauth/authorize-url.d.ts +7 -1
  319. package/oauth/authorize-url.d.ts.map +1 -1
  320. package/oauth/authorize-url.js +14 -4
  321. package/oauth/callback-exchange.d.ts +49 -0
  322. package/oauth/callback-exchange.d.ts.map +1 -0
  323. package/oauth/callback-exchange.js +29 -0
  324. package/oauth/handshake.js +3 -10
  325. package/oauth/models.d.ts +25 -0
  326. package/oauth/models.d.ts.map +1 -1
  327. package/oauth/popup.d.ts.map +1 -1
  328. package/oauth/popup.js +19 -17
  329. package/oauth/toolset-id.d.ts +7 -0
  330. package/oauth/toolset-id.d.ts.map +1 -1
  331. package/oauth/toolset-id.js +9 -2
  332. package/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.d.ts.map +1 -1
  333. package/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js +41 -42
  334. package/oauth/useToolsetLogin/useToolsetLogin.d.ts +7 -1
  335. package/oauth/useToolsetLogin/useToolsetLogin.d.ts.map +1 -1
  336. package/oauth/useToolsetLogin/useToolsetLogin.js +51 -42
  337. package/oauth.js +9 -8
  338. package/offline-credentials/map-offline-credentials-response.d.ts +20 -0
  339. package/offline-credentials/map-offline-credentials-response.d.ts.map +1 -0
  340. package/offline-credentials/map-offline-credentials-response.js +17 -0
  341. package/offline-credentials/scheduled-tasks-login-banner.d.ts +31 -0
  342. package/offline-credentials/scheduled-tasks-login-banner.d.ts.map +1 -0
  343. package/offline-credentials/scheduled-tasks-login-banner.js +17 -0
  344. package/offline-credentials/useOfflineCredentialsAuth/useOfflineCredentialsAuth.d.ts +58 -0
  345. package/offline-credentials/useOfflineCredentialsAuth/useOfflineCredentialsAuth.d.ts.map +1 -0
  346. package/offline-credentials/useOfflineCredentialsAuth/useOfflineCredentialsAuth.js +37 -0
  347. package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.d.ts +61 -0
  348. package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.d.ts.map +1 -0
  349. package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.js +37 -0
  350. package/offline-credentials/useOfflineCredentialsLogin/useOfflineCredentialsLogin.d.ts +28 -0
  351. package/offline-credentials/useOfflineCredentialsLogin/useOfflineCredentialsLogin.d.ts.map +1 -0
  352. package/offline-credentials/useOfflineCredentialsLogin/useOfflineCredentialsLogin.js +29 -0
  353. package/offline-credentials.d.ts +2 -0
  354. package/offline-credentials.js +7 -0
  355. package/package.json +49 -25
  356. package/project/create-project-chat.d.ts +34 -0
  357. package/project/create-project-chat.d.ts.map +1 -0
  358. package/project/create-project-chat.js +27 -0
  359. package/project/project-conversation-data-source.d.ts +36 -0
  360. package/project/project-conversation-data-source.d.ts.map +1 -0
  361. package/project/project-conversation-data-source.js +67 -0
  362. package/project/project-events.d.ts +14 -0
  363. package/project/project-events.d.ts.map +1 -0
  364. package/project/project-events.js +25 -0
  365. package/project/project-file-preview.d.ts +32 -0
  366. package/project/project-file-preview.d.ts.map +1 -0
  367. package/project/project-file-preview.js +25 -0
  368. package/project/project-form-errors.d.ts +23 -0
  369. package/project/project-form-errors.d.ts.map +1 -0
  370. package/project/project-form-errors.js +46 -0
  371. package/project/project-limits.d.ts +17 -0
  372. package/project/project-limits.d.ts.map +1 -0
  373. package/project/project-limits.js +11 -0
  374. package/project/project-mapping.d.ts +16 -0
  375. package/project/project-mapping.d.ts.map +1 -0
  376. package/project/project-mapping.js +43 -0
  377. package/project/project-refresh.d.ts +12 -0
  378. package/project/project-refresh.d.ts.map +1 -0
  379. package/project/project-refresh.js +6 -0
  380. package/project/project-viewed-marks.d.ts +9 -0
  381. package/project/project-viewed-marks.d.ts.map +1 -0
  382. package/project/project-viewed-marks.js +8 -0
  383. package/project/project-watch-stream.d.ts +26 -0
  384. package/project/project-watch-stream.d.ts.map +1 -0
  385. package/project/project-watch-stream.js +39 -0
  386. package/project/projects-api-client.d.ts +179 -0
  387. package/project/projects-api-client.d.ts.map +1 -0
  388. package/project/projects-api-client.js +90 -0
  389. package/project/use-pinned-project-chats.d.ts +58 -0
  390. package/project/use-pinned-project-chats.d.ts.map +1 -0
  391. package/project/use-pinned-project-chats.js +269 -0
  392. package/project/use-project-actions.d.ts +53 -0
  393. package/project/use-project-actions.d.ts.map +1 -0
  394. package/project/use-project-actions.js +92 -0
  395. package/project/use-project-artifacts.d.ts +24 -0
  396. package/project/use-project-artifacts.d.ts.map +1 -0
  397. package/project/use-project-artifacts.js +78 -0
  398. package/project/use-project-conversations.d.ts +32 -0
  399. package/project/use-project-conversations.d.ts.map +1 -0
  400. package/project/use-project-conversations.js +200 -0
  401. package/project/use-project-draft.d.ts +46 -0
  402. package/project/use-project-draft.d.ts.map +1 -0
  403. package/project/use-project-draft.js +54 -0
  404. package/project/use-project-file-preview.d.ts +47 -0
  405. package/project/use-project-file-preview.d.ts.map +1 -0
  406. package/project/use-project-file-preview.js +50 -0
  407. package/project/use-project-submit.d.ts +49 -0
  408. package/project/use-project-submit.d.ts.map +1 -0
  409. package/project/use-project-submit.js +73 -0
  410. package/project/use-project-watch.d.ts +24 -0
  411. package/project/use-project-watch.d.ts.map +1 -0
  412. package/project/use-project-watch.js +41 -0
  413. package/project/use-project.d.ts +23 -0
  414. package/project/use-project.d.ts.map +1 -0
  415. package/project/use-project.js +73 -0
  416. package/project/use-projects.d.ts +27 -0
  417. package/project/use-projects.d.ts.map +1 -0
  418. package/project/use-projects.js +92 -0
  419. package/project.d.ts +2 -0
  420. package/project.js +20 -0
  421. package/prompt/prompt.d.ts +11 -0
  422. package/prompt/prompt.d.ts.map +1 -1
  423. package/prompt/prompt.js +7 -3
  424. package/scheduled-task/active-scheduled-task.d.ts +58 -0
  425. package/scheduled-task/active-scheduled-task.d.ts.map +1 -0
  426. package/scheduled-task/active-scheduled-task.js +18 -0
  427. package/scheduled-task/check-scheduled-task-auth-session-error.d.ts +27 -0
  428. package/scheduled-task/check-scheduled-task-auth-session-error.d.ts.map +1 -0
  429. package/scheduled-task/check-scheduled-task-auth-session-error.js +17 -0
  430. package/scheduled-task/scheduled-task-description.d.ts +2 -0
  431. package/scheduled-task/scheduled-task-description.d.ts.map +1 -1
  432. package/scheduled-task/scheduled-task-description.js +33 -24
  433. package/scheduled-task/scheduled-task-display.d.ts +106 -0
  434. package/scheduled-task/scheduled-task-display.d.ts.map +1 -0
  435. package/scheduled-task/scheduled-task-display.js +69 -0
  436. package/scheduled-task/scheduled-task-next-occurrence.d.ts +9 -0
  437. package/scheduled-task/scheduled-task-next-occurrence.d.ts.map +1 -0
  438. package/scheduled-task/scheduled-task-next-occurrence.js +20 -0
  439. package/scheduled-task/scheduled-task-preparation.d.ts +1 -1
  440. package/scheduled-task/scheduled-task-trigger.d.ts.map +1 -1
  441. package/scheduled-task/scheduled-task-trigger.js +75 -48
  442. package/scheduled-task/use-scheduled-task-runs.js +19 -31
  443. package/scheduled-task/use-scheduled-tasks.d.ts +2 -2
  444. package/scheduled-task/use-scheduled-tasks.js +1 -1
  445. package/scheduled-task/useActiveScheduledTaskDetails.d.ts +18 -0
  446. package/scheduled-task/useActiveScheduledTaskDetails.d.ts.map +1 -0
  447. package/scheduled-task/useActiveScheduledTaskDetails.js +40 -0
  448. package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.d.ts +17 -0
  449. package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.d.ts.map +1 -0
  450. package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.js +29 -0
  451. package/scheduled-task/useStartScheduledTask.d.ts +41 -0
  452. package/scheduled-task/useStartScheduledTask.d.ts.map +1 -0
  453. package/scheduled-task/useStartScheduledTask.js +169 -0
  454. package/scheduled-tasks.js +13 -6
  455. package/scroll-anchoring.js +1 -2
  456. package/share-invitation/models.d.ts +46 -0
  457. package/share-invitation/models.d.ts.map +1 -0
  458. package/share-invitation/share-invitation-error.d.ts +6 -0
  459. package/share-invitation/share-invitation-error.d.ts.map +1 -0
  460. package/share-invitation/share-invitation-error.js +37 -0
  461. package/share-invitation/types.d.ts +10 -0
  462. package/share-invitation/types.d.ts.map +1 -0
  463. package/share-invitation/types.js +6 -0
  464. package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.d.ts +9 -0
  465. package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.d.ts.map +1 -0
  466. package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.js +26 -0
  467. package/shared/application-schema.js +3 -3
  468. package/shared/client-channel.d.ts +53 -0
  469. package/shared/client-channel.d.ts.map +1 -0
  470. package/shared/client-channel.js +6 -0
  471. package/shared/cron-day-of-month.js +10 -10
  472. package/shared/external-services.d.ts +1 -1
  473. package/shared/locale.d.ts +6 -2
  474. package/shared/locale.d.ts.map +1 -1
  475. package/shared/locale.js +4 -4
  476. package/shared/read-sse-events.d.ts +10 -0
  477. package/shared/read-sse-events.d.ts.map +1 -0
  478. package/shared/read-sse-events.js +33 -0
  479. package/shared/serialized-writer.d.ts +12 -0
  480. package/shared/serialized-writer.d.ts.map +1 -0
  481. package/shared/serialized-writer.js +44 -0
  482. package/shared/sleep.d.ts +3 -0
  483. package/shared/sleep.d.ts.map +1 -0
  484. package/shared/sleep.js +13 -0
  485. package/shared/theme-colors.d.ts +16 -0
  486. package/shared/theme-colors.d.ts.map +1 -0
  487. package/shared/theme-colors.js +14 -0
  488. package/shared/url-cleanup.d.ts +18 -0
  489. package/shared/url-cleanup.d.ts.map +1 -0
  490. package/shared/url-cleanup.js +18 -0
  491. package/shared/usage-stat.d.ts +3 -0
  492. package/shared/usage-stat.d.ts.map +1 -0
  493. package/shared/usage-stat.js +4 -0
  494. package/shared/useAppVersionCheck/useAppVersionCheck.d.ts +22 -0
  495. package/shared/useAppVersionCheck/useAppVersionCheck.d.ts.map +1 -0
  496. package/shared/useAppVersionCheck/useAppVersionCheck.js +36 -0
  497. package/shared/usePersistedState/usePersistedState.d.ts +28 -0
  498. package/shared/usePersistedState/usePersistedState.d.ts.map +1 -0
  499. package/shared/usePersistedState/usePersistedState.js +24 -0
  500. package/sharing.js +5 -2
  501. package/signin-interrupt/models.d.ts +48 -0
  502. package/signin-interrupt/models.d.ts.map +1 -0
  503. package/signin-interrupt/signin-row-info.d.ts +10 -0
  504. package/signin-interrupt/signin-row-info.d.ts.map +1 -0
  505. package/signin-interrupt/signin-row-info.js +21 -0
  506. package/signin-interrupt/types.d.ts +28 -0
  507. package/signin-interrupt/types.d.ts.map +1 -0
  508. package/signin-interrupt/types.js +10 -0
  509. package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.d.ts +52 -0
  510. package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.d.ts.map +1 -0
  511. package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.js +270 -0
  512. package/skill/skill-file-batch-validation.d.ts +4 -0
  513. package/skill/skill-file-batch-validation.d.ts.map +1 -1
  514. package/skill/skill-file-batch-validation.js +34 -33
  515. package/skill/skill-lookup.d.ts +20 -0
  516. package/skill/skill-lookup.d.ts.map +1 -0
  517. package/skill/skill-lookup.js +12 -0
  518. package/skill/skill-types.js +1 -1
  519. package/skill/skill.d.ts +5 -1
  520. package/skill/skill.d.ts.map +1 -1
  521. package/skill/skill.js +27 -28
  522. package/skill/useSkillArchiveImport/useSkillArchiveImport.js +1 -7
  523. package/skill/useSkillEditorSubmit.d.ts +15 -1
  524. package/skill/useSkillEditorSubmit.d.ts.map +1 -1
  525. package/skill/useSkillEditorSubmit.js +164 -87
  526. package/skill/useSkillFileActions.d.ts +2 -0
  527. package/skill/useSkillFileActions.d.ts.map +1 -1
  528. package/skill/useSkillFileActions.js +36 -21
  529. package/skill-editor/useSkillFilePreviewSyncController.d.ts +41 -0
  530. package/skill-editor/useSkillFilePreviewSyncController.d.ts.map +1 -0
  531. package/skill-editor/useSkillFilePreviewSyncController.js +58 -0
  532. package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.d.ts +23 -0
  533. package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.d.ts.map +1 -0
  534. package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.js +43 -0
  535. package/skill-editor.js +11 -9
  536. package/skills-state.js +3 -2
  537. package/source-content.js +1 -2
  538. package/usage/map-usage-data-to-dashboard.d.ts +1 -16
  539. package/usage/map-usage-data-to-dashboard.d.ts.map +1 -1
  540. package/usage/map-user-usage-to-model-limits.d.ts.map +1 -1
  541. package/usage/map-user-usage-to-model-limits.js +24 -24
  542. package/usage/usage-banner-source.d.ts +24 -0
  543. package/usage/usage-banner-source.d.ts.map +1 -0
  544. package/usage/usage-banner-source.js +61 -0
  545. package/usage/usage-gauge.d.ts +3 -0
  546. package/usage/usage-gauge.d.ts.map +1 -0
  547. package/usage/usage-gauge.js +4 -0
  548. package/usage/usage-period.d.ts +7 -0
  549. package/usage/usage-period.d.ts.map +1 -0
  550. package/usage/usage-period.js +6 -0
  551. package/usage/usage-reset-time.d.ts +78 -0
  552. package/usage/usage-reset-time.d.ts.map +1 -0
  553. package/usage/usage-reset-time.js +82 -0
  554. package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.d.ts +56 -0
  555. package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.d.ts.map +1 -0
  556. package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.js +34 -0
  557. package/usage/useRefreshUsageAfterGeneration/useRefreshUsageAfterGeneration.d.ts +16 -0
  558. package/usage/useRefreshUsageAfterGeneration/useRefreshUsageAfterGeneration.d.ts.map +1 -0
  559. package/usage/useRefreshUsageAfterGeneration/useRefreshUsageAfterGeneration.js +14 -0
  560. package/usage/useUsageLimitBanner/useUsageLimitBanner.d.ts +58 -0
  561. package/usage/useUsageLimitBanner/useUsageLimitBanner.d.ts.map +1 -0
  562. package/usage/useUsageLimitBanner/useUsageLimitBanner.js +70 -0
  563. package/usage/useUsageLimitBannerDismissal/useUsageLimitBannerDismissal.d.ts +14 -0
  564. package/usage/useUsageLimitBannerDismissal/useUsageLimitBannerDismissal.d.ts.map +1 -0
  565. package/usage/useUsageLimitBannerDismissal/useUsageLimitBannerDismissal.js +19 -0
  566. package/usage-limits.d.ts +2 -0
  567. package/usage-limits.js +10 -0
  568. package/useChatSettingsFormConfig/useChatSettingsFormConfig.d.ts +2 -0
  569. package/useChatSettingsFormConfig/useChatSettingsFormConfig.d.ts.map +1 -1
  570. package/useChatSettingsFormConfig/useChatSettingsFormConfig.js +25 -21
  571. package/usePageFileDrag/usePageFileDrag.js +3 -3
  572. package/useShareLink/useShareLink.d.ts.map +1 -1
  573. package/useShareLink/useShareLink.js +18 -17
  574. package/utils.js +23 -17
  575. package/viewport-layout/canvas-width.d.ts +39 -0
  576. package/viewport-layout/canvas-width.d.ts.map +1 -0
  577. package/viewport-layout/canvas-width.js +23 -0
  578. package/viewport-layout.js +2 -1
@@ -1,36 +1,39 @@
1
- import { collectAttachmentRefs as e, splitFileIdAnchor as t } from "./attachment-refs.js";
2
- import { resolveDialFileBucketAndPath as n } from "./dial-file-resolve.js";
3
- import { PUBLIC_BUCKET as r, generateUUID as i, sanitizeConversationName as a, stripTrailingDots as o, truncateToUtf8Bytes as s } from "@epam/ai-dial-chat-shared";
1
+ import { collectAttachmentRefs as e, mapAnnotationPool as t, splitFileIdAnchor as n } from "./attachment-refs.js";
2
+ import { resolveDialFileBucketAndPath as r } from "./dial-file-resolve.js";
3
+ import { PUBLIC_BUCKET as i, generateUUID as a, sanitizeConversationName as o, stripTrailingDots as s, truncateToUtf8Bytes as c } from "@epam/ai-dial-chat-shared";
4
4
  //#region src/conversation/conversation-transfer/import-conversation.ts
5
- var c = class extends Error {
5
+ var l = class extends Error {
6
6
  constructor(e) {
7
7
  super(e), this.name = "UnsupportedImportFormatError";
8
8
  }
9
- }, l = (e) => typeof e == "object" && !!e, u = 5, d = (e) => {
9
+ }, u = (e) => typeof e == "object" && !!e, d = 5, f = (e) => {
10
10
  let t;
11
11
  try {
12
12
  t = JSON.parse(e);
13
13
  } catch {
14
- throw new c("Import file is not valid JSON");
14
+ throw new l("Import file is not valid JSON");
15
15
  }
16
- if (!l(t) || t.version !== u || !Array.isArray(t.history)) throw new c("Import file is not a supported export format");
16
+ if (!u(t) || t.version !== d || !Array.isArray(t.history)) throw new l("Import file is not a supported export format");
17
17
  let n = Array.isArray(t.folders) ? t.folders : [];
18
18
  return {
19
- version: u,
19
+ version: d,
20
20
  history: t.history,
21
21
  folders: n
22
22
  };
23
- }, f = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i, p = "__", m = 255, h = "applications", g = /[-+]/, _ = /^\d+$/, v = (e) => e ? e.split(g)[0].split(".").every((e) => _.test(e)) : !1, y = (e) => o(s(e.replace(/\r\n|\r/g, "\n").split("\n").map((e) => a(e).trim()).filter(Boolean)[0] ?? "", m)).trimEnd(), b = (e, t, n) => {
24
- let r = e.split(p);
25
- if (r.length < 2) return [e, i()].join(p);
26
- let a = n && v(r[1]) ? r.slice(0, 2) : r.slice(0, 1), o = a.length > 1 ? f.test(r[r.length - 1]) : r.length >= 3, s = r.slice(a.length, o ? -1 : void 0).join(p);
23
+ }, p = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i, m = "__", h = 255, g = "applications", _ = /[-+]/, v = /^\d+$/, y = (e) => e ? e.split(_)[0].split(".").every((e) => v.test(e)) : !1, b = (e) => {
24
+ let t = e.replace(/\r\n|\r/g, "\n").split("\n").map((e) => o(e).trim()).filter(Boolean)[0] ?? "";
25
+ return s(c(t, h)).trimEnd();
26
+ }, x = (e, t, n) => {
27
+ let r = e.split(m);
28
+ if (r.length < 2) return [e, a()].join(m);
29
+ let i = n && y(r[1]) ? r.slice(0, 2) : r.slice(0, 1), o = i.length > 1 ? p.test(r[r.length - 1]) : r.length >= 3, s = r.slice(i.length, o ? -1 : void 0).join(m);
27
30
  return [
28
- ...a,
31
+ ...i,
29
32
  t || s,
30
- i()
31
- ].join(p);
32
- }, x = "conversations/", S = (e) => e.startsWith(x) ? e.slice(14) : e, C = (e, t) => {
33
- let n = S(e.id), r = n.split("/"), i = S(e.folderId), a = r[0], o = i.startsWith(`${a}/`) ? i.slice(a.length + 1).split("/").filter(Boolean) : [], s = r.slice(1).slice(o.length), c = s.slice(0, -1), l = s.at(-1) ?? r.at(-1) ?? n, u = [...o, ...c], d = y(e.name), f = b(l, d, u[0] === h), p = [...u, f].join("/"), m = o.length ? `${t}/${o.join("/")}` : t;
33
+ a()
34
+ ].join(m);
35
+ }, S = "conversations/", C = (e) => e.startsWith(S) ? e.slice(14) : e, w = (e, t) => {
36
+ let n = C(e.id), r = n.split("/"), i = C(e.folderId), a = r[0], o = i.startsWith(`${a}/`) ? i.slice(a.length + 1).split("/").filter(Boolean) : [], s = r.slice(1).slice(o.length), c = s.slice(0, -1), l = s.at(-1) ?? r.at(-1) ?? n, u = [...o, ...c], d = b(e.name), f = x(l, d, u[0] === g), p = [...u, f].join("/"), m = o.length ? `${t}/${o.join("/")}` : t;
34
37
  return {
35
38
  conversation: {
36
39
  ...e,
@@ -40,18 +43,18 @@ var c = class extends Error {
40
43
  },
41
44
  subPath: p
42
45
  };
43
- }, w = (e) => {
44
- let t = S(e.folderId).split("/").filter(Boolean).slice(1);
46
+ }, T = (e) => {
47
+ let t = C(e.folderId).split("/").filter(Boolean).slice(1);
45
48
  return t.length ? t.join(" / ") : void 0;
46
- }, T = (e) => e.map((e) => `"${e}"`).join(", "), E = (e, n) => {
49
+ }, E = (e) => e.map((e) => `"${e}"`).join(", "), D = (e, t) => {
47
50
  if (!e) return;
48
- let { fileId: r, anchor: i } = t(e), a = n.get(r);
51
+ let { fileId: r, anchor: i } = n(e), a = t.get(r);
49
52
  if (a != null) return {
50
53
  ...a,
51
54
  url: `${a.url}${i}`
52
55
  };
53
- }, D = (e, t) => {
54
- let n = E(e.url, t), r = E(e.reference_url, t);
56
+ }, O = (e, t) => {
57
+ let n = D(e.url, t), r = D(e.reference_url, t);
55
58
  if (n == null && r == null) return;
56
59
  let i = n?.title ?? r?.title;
57
60
  return {
@@ -59,19 +62,19 @@ var c = class extends Error {
59
62
  ...r == null ? {} : { reference_url: r.url },
60
63
  ...i == null ? {} : { title: i }
61
64
  };
62
- }, O = (e, t) => e.map((e) => e.attachments?.length ? {
65
+ }, k = (e, t) => e.map((e) => e.attachments?.length ? {
63
66
  ...e,
64
67
  attachments: e.attachments.map((e) => {
65
- let n = D(e, t);
68
+ let n = O(e, t);
66
69
  return n ? {
67
70
  ...e,
68
71
  ...n
69
72
  } : e;
70
73
  })
71
- } : e), k = (e, t) => e.map((e) => {
74
+ } : e), A = (e, t) => {
72
75
  let n = e.body?.source;
73
76
  if (n?.attachment == null) return e;
74
- let r = D(n.attachment, t);
77
+ let r = O(n.attachment, t);
75
78
  return r == null ? e : {
76
79
  ...e,
77
80
  body: {
@@ -85,7 +88,7 @@ var c = class extends Error {
85
88
  }
86
89
  }
87
90
  };
88
- }), A = (e, t) => ({
91
+ }, j = (e, t) => e.map((e) => A(e, t)), M = (e, t) => ({
89
92
  ...e,
90
93
  messages: e.messages.map((e) => {
91
94
  let n = e.custom_content;
@@ -96,31 +99,31 @@ var c = class extends Error {
96
99
  custom_content: {
97
100
  ...n,
98
101
  ...r?.length ? { attachments: r.map((e) => {
99
- let n = D(e, t);
102
+ let n = O(e, t);
100
103
  return n ? {
101
104
  ...e,
102
105
  ...n
103
106
  } : e;
104
107
  }) } : {},
105
- ...i?.length ? { stages: O(i, t) } : {},
106
- ...a?.length ? { annotations: k(a, t) } : {}
108
+ ...i?.length ? { stages: k(i, t) } : {},
109
+ ...a?.length ? { annotations: j(a, t) } : {}
107
110
  }
108
111
  };
109
112
  })
110
- }), j = (e, i) => {
113
+ }), N = (e, n) => t(M(e, n), (e) => A(e, n)), P = (e, t) => {
111
114
  if (!e) return;
112
- let a = n(t(e).fileId);
113
- if (!(!a || a.bucket === i || a.bucket === r)) return a.path.split("/").pop() || a.path;
114
- }, M = (e, t, n) => e.flatMap((e) => {
115
- let r = j(e.url, t);
115
+ let a = r(n(e).fileId);
116
+ if (a && a.bucket !== t && a.bucket !== i) return a.path.split("/").pop() || a.path;
117
+ }, F = (e, t, n) => e.flatMap((e) => {
118
+ let r = P(e.url, t);
116
119
  if (r != null) return n.push(r), [];
117
- let i = j(e.reference_url, t);
120
+ let i = P(e.reference_url, t);
118
121
  if (i == null) return [e];
119
122
  n.push(i);
120
123
  let { reference_url: a, reference_type: o, ...s } = e;
121
124
  return s.url == null && s.data == null ? [] : [s];
122
- }), N = (e, t, n) => e.map((e) => {
123
- let r = e.body, i = j(r?.source?.attachment?.url, t);
125
+ }), I = (e, t, n) => {
126
+ let r = e.body, i = P(r?.source?.attachment?.url, t);
124
127
  if (r == null || i == null) return e;
125
128
  n.push(i);
126
129
  let { source: a, ...o } = r;
@@ -128,53 +131,46 @@ var c = class extends Error {
128
131
  ...e,
129
132
  body: o
130
133
  };
131
- }), P = (e, t) => {
132
- let n = [], r = e.messages.map((e) => {
133
- let r = e.custom_content;
134
- if (!r) return e;
135
- let { attachments: i, stages: a, annotations: o } = r;
134
+ }, L = (e, t, n) => e.map((e) => I(e, t, n)), R = (e, n) => {
135
+ let r = [], i = e.messages.map((e) => {
136
+ let t = e.custom_content;
137
+ if (!t) return e;
138
+ let { attachments: i, stages: a, annotations: o } = t;
136
139
  return !i?.length && !a?.length && !o?.length ? e : {
137
140
  ...e,
138
141
  custom_content: {
139
- ...r,
140
- ...i?.length ? { attachments: M(i, t, n) } : {},
142
+ ...t,
143
+ ...i?.length ? { attachments: F(i, n, r) } : {},
141
144
  ...a?.length ? { stages: a.map((e) => e.attachments?.length ? {
142
145
  ...e,
143
- attachments: M(e.attachments, t, n)
146
+ attachments: F(e.attachments, n, r)
144
147
  } : e) } : {},
145
- ...o?.length ? { annotations: N(o, t, n) } : {}
148
+ ...o?.length ? { annotations: L(o, n, r) } : {}
146
149
  }
147
150
  };
148
- });
149
- return n.length ? {
150
- conversation: {
151
- ...e,
152
- messages: r
153
- },
154
- droppedNames: n
155
- } : {
156
- conversation: e,
157
- droppedNames: n
151
+ }), a = r.length ? {
152
+ ...e,
153
+ messages: i
154
+ } : e;
155
+ return {
156
+ conversation: t(a, (e) => I(e, n, r)),
157
+ droppedNames: r
158
158
  };
159
- }, F = (e) => e.split("/").pop() || e, I = (t, r, i) => {
159
+ }, z = (e) => e.split("/").pop() || e, B = (t, n, i) => {
160
160
  let a = [], o = [];
161
161
  for (let s of e(t)) {
162
- let e = n(s.fileId);
162
+ let e = r(s.fileId);
163
163
  if (!e) {
164
- o.push(F(s.fileId));
165
- continue;
166
- }
167
- let t = e.path.split("/").pop() ?? e.path, c = r.get(e.path);
168
- if (!c) {
169
- o.push(t);
164
+ o.push(z(s.fileId));
170
165
  continue;
171
166
  }
172
- a.push({
167
+ let t = e.path.split("/").pop() ?? e.path, c = n.get(e.path);
168
+ c ? a.push({
173
169
  fileId: s.fileId,
174
170
  bytes: c,
175
171
  originalFileName: t,
176
172
  allocated: i.allocate(t)
177
- });
173
+ }) : o.push(t);
178
174
  }
179
175
  return {
180
176
  plan: a,
@@ -182,4 +178,4 @@ var c = class extends Error {
182
178
  };
183
179
  };
184
180
  //#endregion
185
- export { c as UnsupportedImportFormatError, P as dropForeignAttachmentRefs, T as formatQuotedNameList, w as getFolderBreadcrumb, d as parseImportEnvelope, I as planAttachmentUploads, C as rebaseConversationId, A as rewriteAttachmentUrls };
181
+ export { l as UnsupportedImportFormatError, R as dropForeignAttachmentRefs, E as formatQuotedNameList, T as getFolderBreadcrumb, f as parseImportEnvelope, B as planAttachmentUploads, w as rebaseConversationId, N as rewriteAttachmentUrls };
@@ -36,4 +36,4 @@ var e = /* @__PURE__ */ function(e) {
36
36
  units: t
37
37
  });
38
38
  //#endregion
39
- export { t as ConversationTransferKind, e as ConversationTransferPhase, o as buildTransferProgress };
39
+ export { t as ConversationTransferKind, e as ConversationTransferPhase, n as TRANSFER_PHASE_WEIGHTS, o as buildTransferProgress, a as computeTransferPercent };
@@ -2,13 +2,7 @@ import { strToU8 as e, zipSync as t } from "fflate";
2
2
  //#region src/conversation/conversation-transfer/zip-export.ts
3
3
  var n = e("", !0).constructor, r = (e) => e instanceof n ? e : new n(e), i = (e) => e.length > 0 && e.split("/").every((e) => e !== "" && e !== "." && e !== ".."), a = (n, a) => {
4
4
  let o = [], s = { "conversation.json": r(e(JSON.stringify(n, null, 2))) };
5
- for (let e of a) {
6
- if (!i(e.path)) {
7
- o.push(e.path);
8
- continue;
9
- }
10
- s[`res/${e.path}`] = r(e.data);
11
- }
5
+ for (let e of a) i(e.path) ? s[`res/${e.path}`] = r(e.data) : o.push(e.path);
12
6
  let c = t(s);
13
7
  return {
14
8
  blob: new Blob([new Uint8Array(c)], { type: "application/zip" }),
@@ -18,7 +18,7 @@ var a = "conversation.json", o = /^conversations\/.*\.json$/, s = "res/", c = (e
18
18
  for (let e of d) {
19
19
  if (e.endsWith("/") || !e.startsWith(s)) continue;
20
20
  let t = e.slice(4);
21
- !t || !n(t) || m.set(t, u[e]);
21
+ t && n(t) && m.set(t, u[e]);
22
22
  }
23
23
  return {
24
24
  envelope: p,
@@ -2,16 +2,28 @@ import { SendCompletionDtoModeEnum } from '@epam/ai-dial-chat-api-client';
2
2
  import { MessageCustomContent, StreamChunk } from '@epam/ai-dial-chat-shared';
3
3
  /** Safe fallback for hosts that do not supply a translated persistence warning. */
4
4
  export declare const DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE = "The response could not be saved. It is still shown here, but may be lost if you reload or leave this page. Copy it before continuing.";
5
+ /** Safe fallback for hosts that do not supply a translated interrupted-generation text. */
6
+ export declare const DEFAULT_GENERATION_INTERRUPTED_ERROR_MESSAGE = "No answer was received for this message. The response may have been interrupted. Try again.";
7
+ /** Terminal markers the rejected write of a stopped, aborted, or failed answer carried. */
8
+ export interface GenerationPersistenceTerminalMarker {
9
+ /** Error text the failed write stored; `''` asks the host for its localized fallback. */
10
+ streamErrorMessage?: string;
11
+ /** `true` when the rejected write recorded a user stop. */
12
+ wasStoppedByUser?: boolean;
13
+ }
5
14
  /** Identifies a failed terminal save independently of the model's generation outcome. */
6
15
  export declare class GenerationPersistenceError extends Error {
7
16
  static readonly type = "conversation_save_failed";
8
17
  /** HTTP status of the rejected terminal write, when the backend reported one. */
9
18
  readonly status?: number;
19
+ /** Terminal markers of an answer that did not complete; `undefined` for a completed one. */
20
+ readonly terminalMarker?: GenerationPersistenceTerminalMarker;
10
21
  /**
11
22
  * Creates the error with the default persistence message.
12
23
  * @param status - HTTP status of the rejected terminal write, if known
24
+ * @param terminalMarker - markers the rejected write of an answer that did not complete carried
13
25
  */
14
- constructor(status?: number);
26
+ constructor(status?: number, terminalMarker?: GenerationPersistenceTerminalMarker);
15
27
  }
16
28
  /** Fallback text of a {@link GenerationConflictError} when no message is supplied. */
17
29
  export declare const DEFAULT_GENERATION_CONFLICT_MESSAGE = "A response is already being generated in this conversation. Wait for it to finish or stop it before sending another message.";
@@ -27,8 +39,9 @@ export declare class GenerationConflictError extends Error {
27
39
  }
28
40
  /**
29
41
  * Reported through `onError` when DIAL Core itself signals a failure with an
30
- * in-band `{ error: { message } }` SSE chunk. Its `message` is upstream text
31
- * intended for the user, unlike a transport failure (failed `fetch`, non-OK
42
+ * in-band `{ error: { message, display_message? } }` SSE chunk. Its `message`
43
+ * is upstream text intended for the user — the chunk's `display_message` when
44
+ * present, else its `message` — unlike a transport failure (failed `fetch`, non-OK
32
45
  * status, broken stream), whose message is technical detail. A custom
33
46
  * transport raises this for any user-facing upstream error text.
34
47
  */
@@ -46,6 +59,12 @@ export declare class StreamUpstreamError extends Error {
46
59
  export declare class StreamInterruptedError extends Error {
47
60
  constructor(cause?: unknown);
48
61
  }
62
+ /** Thrown when the Stop endpoint answers with a non-OK status. */
63
+ export declare class StopCompletionError extends Error {
64
+ /** HTTP status of the rejected Stop request. */
65
+ readonly status: number;
66
+ constructor(status: number);
67
+ }
49
68
  export declare const DEFAULT_STREAM_IDLE_TIMEOUT_MS = 45000;
50
69
  /** Callbacks {@link streamCompletion} reports streamed completion events through. */
51
70
  export interface ChatStreamCompletionOptions {
@@ -64,6 +83,8 @@ export interface CreateChatStreamApiDeps {
64
83
  completionsBasePath: string;
65
84
  /** Resolves the caller's current timezone, attached as `X-Timezone` when non-empty. */
66
85
  getTimezone?: () => string | undefined;
86
+ /** Resolves the caller's current UI language, attached as `X-Lang` when non-empty. */
87
+ getLanguage?: () => string | undefined;
67
88
  /** `fetch` implementation to issue requests through. Defaults to the global `fetch`. */
68
89
  fetchImpl?: typeof fetch;
69
90
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"create-chat-stream-api.d.ts","sourceRoot":"","sources":["../../src/conversation/create-chat-stream-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAOnC,mFAAmF;AACnF,eAAO,MAAM,4CAA4C,0IACgF,CAAC;AAE1I,yFAAyF;AACzF,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,MAAM,CAAC,QAAQ,CAAC,IAAI,8BAA8B;IAElD,iFAAiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;gBACS,MAAM,CAAC,EAAE,MAAM;CAK5B;AAED,sFAAsF;AACtF,eAAO,MAAM,mCAAmC,iIACgF,CAAC;AAEjI;;;;;;GAMG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,GAAE,MAA4C;CAIlE;AAED;;;;;;GAMG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,KAAK,CAAC,EAAE,OAAO;CAI5B;AAMD,eAAO,MAAM,8BAA8B,QAAS,CAAC;AAErD,qFAAqF;AACrF,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC,yEAAyE;IACzE,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAClC,2DAA2D;IAC3D,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,iFAAiF;IACjF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uFAAuF;IACvF,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACvC,wFAAwF;IACxF,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA4GD,wFAAwF;AACxF,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,2BAA2B,EACpC,aAAa,CAAC,EAAE,oBAAoB,EACpC,YAAY,CAAC,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,yBAAyB,EAChC,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,KACrB,IAAI,CAAC;IACV,cAAc,EAAE,CAAC,GAAG,EAAE;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,MAAM,uBAAuB,KAC5B,aAoKF,CAAC"}
1
+ {"version":3,"file":"create-chat-stream-api.d.ts","sourceRoot":"","sources":["../../src/conversation/create-chat-stream-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAOnC,mFAAmF;AACnF,eAAO,MAAM,4CAA4C,0IACgF,CAAC;AAE1I,2FAA2F;AAC3F,eAAO,MAAM,4CAA4C,gGACsC,CAAC;AAEhG,2FAA2F;AAC3F,MAAM,WAAW,mCAAmC;IAClD,yFAAyF;IACzF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,yFAAyF;AACzF,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,MAAM,CAAC,QAAQ,CAAC,IAAI,8BAA8B;IAElD,iFAAiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEzB,4FAA4F;IAC5F,QAAQ,CAAC,cAAc,CAAC,EAAE,mCAAmC,CAAC;IAE9D;;;;OAIG;gBAED,MAAM,CAAC,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,mCAAmC;CAOvD;AAED,sFAAsF;AACtF,eAAO,MAAM,mCAAmC,iIACgF,CAAC;AAEjI;;;;;;GAMG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,GAAE,MAA4C;CAIlE;AAED;;;;;;;GAOG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;GAOG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,KAAK,CAAC,EAAE,OAAO;CAI5B;AAED,kEAAkE;AAClE,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,gDAAgD;IAChD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM;CAK3B;AAMD,eAAO,MAAM,8BAA8B,QAAS,CAAC;AAErD,qFAAqF;AACrF,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC,yEAAyE;IACzE,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAClC,2DAA2D;IAC3D,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC7C,iFAAiF;IACjF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uFAAuF;IACvF,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACvC,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACvC,wFAAwF;IACxF,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAkID,wFAAwF;AACxF,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,2BAA2B,EACpC,aAAa,CAAC,EAAE,oBAAoB,EACpC,YAAY,CAAC,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,yBAAyB,EAChC,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,KACrB,IAAI,CAAC;IACV,cAAc,EAAE,CAAC,GAAG,EAAE;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACrB;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAC9B,MAAM,uBAAuB,KAC5B,aA2LF,CAAC"}
@@ -1,31 +1,33 @@
1
1
  //#region src/conversation/create-chat-stream-api.ts
2
- var e = { "Content-Type": "application/json" }, t = 409, n = "The response could not be saved. It is still shown here, but may be lost if you reload or leave this page. Copy it before continuing.", r = class extends Error {
2
+ var e = { "Content-Type": "application/json" }, t = 409, n = "The response could not be saved. It is still shown here, but may be lost if you reload or leave this page. Copy it before continuing.", r = "No answer was received for this message. The response may have been interrupted. Try again.", i = class extends Error {
3
3
  static type = "conversation_save_failed";
4
4
  status;
5
- constructor(e) {
6
- super(n), this.name = "GenerationPersistenceError", this.status = e;
5
+ terminalMarker;
6
+ constructor(e, t) {
7
+ super(n), this.name = "GenerationPersistenceError", this.status = e, this.terminalMarker = t;
7
8
  }
8
- }, i = "A response is already being generated in this conversation. Wait for it to finish or stop it before sending another message.", a = class extends Error {
9
- constructor(e = i) {
9
+ }, a = "A response is already being generated in this conversation. Wait for it to finish or stop it before sending another message.", o = class extends Error {
10
+ constructor(e = a) {
10
11
  super(e), this.name = "GenerationConflictError";
11
12
  }
12
- }, o = class extends Error {
13
+ }, s = class extends Error {
13
14
  constructor(e) {
14
15
  super(e), this.name = "StreamUpstreamError";
15
16
  }
16
- }, s = class extends Error {
17
+ }, c = class extends Error {
17
18
  constructor(e) {
18
19
  super("The completion stream was interrupted", { cause: e }), this.name = "StreamInterruptedError";
19
20
  }
20
- }, c = 45e3, l = (e, t) => {
21
+ }, l = class extends Error {
22
+ status;
23
+ constructor(e) {
24
+ super(`stopCompletion failed: ${e}`), this.name = "StopCompletionError", this.status = e;
25
+ }
26
+ }, u = 45e3, d = (e, t) => {
21
27
  let n = Date.now(), r, i = !1, a = () => {
22
28
  if (i) return;
23
29
  let o = Date.now() - n;
24
- if (o >= e) {
25
- t();
26
- return;
27
- }
28
- clearTimeout(r), r = setTimeout(a, e - o);
30
+ o >= e ? t() : (clearTimeout(r), r = setTimeout(a, e - o));
29
31
  }, o = () => {
30
32
  document.visibilityState === "visible" && a();
31
33
  }, s = typeof window < "u" && typeof document < "u";
@@ -37,92 +39,101 @@ var e = { "Content-Type": "application/json" }, t = 409, n = "The response could
37
39
  i || (i = !0, clearTimeout(r), s && (document.removeEventListener("visibilitychange", o), window.removeEventListener("online", a), window.removeEventListener("pageshow", a)));
38
40
  }
39
41
  };
40
- }, u = (e) => typeof e == "object" && !!e && e.name === "AbortError", d = (e) => {
42
+ }, f = (e) => typeof e == "object" && !!e && e.name === "AbortError", p = (e) => {
41
43
  let { status: t } = e;
42
44
  return typeof t == "number" ? t : void 0;
43
- }, f = (e, t, n) => {
44
- let i = e.trim();
45
- if (!i || i.startsWith(":") || !i.startsWith("data: ")) return;
46
- let a = i.slice(6);
45
+ }, m = (e) => {
46
+ let { streamErrorMessage: t, wasStoppedByUser: n } = e;
47
+ if (n === !0) return { wasStoppedByUser: !0 };
48
+ if (typeof t == "string") return { streamErrorMessage: t };
49
+ }, h = (e, t, n) => {
50
+ let r = e.trim();
51
+ if (!r || r.startsWith(":") || !r.startsWith("data: ")) return;
52
+ let a = r.slice(6);
47
53
  if (a !== "[DONE]") try {
48
54
  let e = JSON.parse(a);
49
55
  if (e.error) {
50
- n(e.error.type === r.type ? new r(d(e.error)) : new o(e.error.message));
56
+ n(e.error.type === i.type ? new i(p(e.error), m(e.error)) : new s(e.error.display_message ?? e.error.message));
51
57
  return;
52
58
  }
53
59
  t(e);
54
60
  } catch {}
55
- }, p = (n) => {
61
+ }, g = (n) => {
56
62
  let { completionsBasePath: r } = n, i = (...e) => (n.fetchImpl ?? fetch)(...e);
57
63
  return {
58
- streamCompletion: (o, c, d, p, m, h, g, _, v) => {
59
- let { onChunk: y, onComplete: b, onError: x, signal: S } = p;
64
+ streamCompletion: (a, l, u, p, m, g, _, v, y) => {
65
+ let { onChunk: b, onComplete: x, onError: S, signal: C } = p;
60
66
  (async () => {
61
67
  let p;
62
68
  try {
63
- let t = n.getTimezone?.();
69
+ let t = n.getTimezone?.(), o = n.getLanguage?.();
64
70
  p = await i(`${r}/completions`, {
65
71
  method: "POST",
66
72
  credentials: "include",
67
- signal: S,
73
+ signal: C,
68
74
  headers: {
69
75
  ...e,
70
76
  ...n.getCsrfToken() == null ? {} : { "X-CSRF-Token": n.getCsrfToken() },
71
- ...t ? { "X-Timezone": t } : {}
77
+ ...t ? { "X-Timezone": t } : {},
78
+ ...o ? { "X-Lang": o } : {}
72
79
  },
73
80
  body: JSON.stringify({
74
- path: o,
75
- message: c ?? "",
76
- model: d,
81
+ path: a,
82
+ message: l ?? "",
83
+ model: u,
77
84
  custom_content: m || {},
78
- ...h != null && { generationId: h },
79
- ...g != null && { mode: g },
80
- ..._ != null && { messageIndex: _ },
81
- ...v != null && { clientChannelId: v }
85
+ ...g != null && { generationId: g },
86
+ ..._ != null && { mode: _ },
87
+ ...v != null && { messageIndex: v },
88
+ ...y != null && { clientChannelId: y }
82
89
  })
83
90
  });
84
91
  } catch (e) {
85
- if (u(e)) return;
86
- x(new s(e));
92
+ if (f(e)) return;
93
+ S(new c(e));
87
94
  return;
88
95
  }
89
- let C = p.headers.get("x-csrf-token");
90
- if (C && n.setCsrfToken(C), !p.ok) {
96
+ let w = p.headers.get("x-csrf-token");
97
+ if (w && n.setCsrfToken(w), !p.ok) {
91
98
  if (p.status === t) {
92
- x(new a());
99
+ S(new o());
93
100
  return;
94
101
  }
95
- x(/* @__PURE__ */ Error(`Stream request failed with status ${p.status}`));
102
+ S(/* @__PURE__ */ Error(`Stream request failed with status ${p.status}`));
96
103
  return;
97
104
  }
98
105
  if (!p.body) {
99
- x(/* @__PURE__ */ Error("No response body"));
106
+ S(/* @__PURE__ */ Error("No response body"));
100
107
  return;
101
108
  }
102
- let w = p.body.getReader(), T = new TextDecoder(), E = "", D = !1, O = !1, k = (e) => {
103
- D || (D = !0, A.stop(), x(e));
104
- }, A = l(n.idleTimeoutMs ?? 45e3, () => {
105
- O = !0, k(new s()), w.cancel().catch(() => void 0);
109
+ let T = p.body.getReader(), E = new TextDecoder(), D = "", O = !1, k = !1, A, j = (e) => {
110
+ O || (O = !0, P.stop(), S(e));
111
+ }, M = (e) => {
112
+ e instanceof s ? A ??= e : j(e);
113
+ }, N = (e) => {
114
+ A ?? b(e);
115
+ }, P = d(n.idleTimeoutMs ?? 45e3, () => {
116
+ k = !0, j(A ?? new c()), T.cancel().catch(() => void 0);
106
117
  });
107
118
  try {
108
119
  for (;;) {
109
- let { done: e, value: t } = await w.read();
110
- if (O) break;
120
+ let { done: e, value: t } = await T.read();
121
+ if (k) break;
111
122
  if (e) {
112
- E.trim() && f(E, y, k);
123
+ D.trim() && h(D, N, M);
113
124
  break;
114
125
  }
115
- A.touch(), E += T.decode(t, { stream: !0 });
116
- let n = E.split("\n");
117
- E = n.pop() ?? "";
118
- for (let e of n) f(e, y, k);
126
+ P.touch(), D += E.decode(t, { stream: !0 });
127
+ let n = D.split("\n");
128
+ D = n.pop() ?? "";
129
+ for (let e of n) h(e, N, M);
119
130
  }
120
- D || (D = !0, b());
131
+ A ? j(A) : O || (O = !0, x());
121
132
  } catch (e) {
122
- if (u(e)) return;
123
- k(new s(e));
133
+ if (f(e)) return;
134
+ j(A ?? new c(e));
124
135
  } finally {
125
- A.stop(), w.releaseLock();
136
+ P.stop(), T.releaseLock();
126
137
  }
127
138
  })();
128
139
  },
@@ -136,9 +147,9 @@ var e = { "Content-Type": "application/json" }, t = 409, n = "The response could
136
147
  },
137
148
  body: JSON.stringify(t)
138
149
  }), o = a.headers.get("x-csrf-token");
139
- if (o && n.setCsrfToken(o), !a.ok) throw Error(`stopCompletion failed: ${a.status}`);
150
+ if (o && n.setCsrfToken(o), !a.ok) throw new l(a.status);
140
151
  }
141
152
  };
142
153
  };
143
154
  //#endregion
144
- export { i as DEFAULT_GENERATION_CONFLICT_MESSAGE, n as DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE, c as DEFAULT_STREAM_IDLE_TIMEOUT_MS, a as GenerationConflictError, r as GenerationPersistenceError, s as StreamInterruptedError, o as StreamUpstreamError, p as createChatStreamApi };
155
+ export { a as DEFAULT_GENERATION_CONFLICT_MESSAGE, r as DEFAULT_GENERATION_INTERRUPTED_ERROR_MESSAGE, n as DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE, u as DEFAULT_STREAM_IDLE_TIMEOUT_MS, o as GenerationConflictError, i as GenerationPersistenceError, l as StopCompletionError, c as StreamInterruptedError, s as StreamUpstreamError, g as createChatStreamApi };
@@ -0,0 +1,30 @@
1
+ /** Lifecycle of a tracked client generation. */
2
+ export declare enum ClientGenerationStatus {
3
+ Active = "active",
4
+ Done = "done"
5
+ }
6
+ /** A generation tracked under an opaque conversation path. */
7
+ export interface GenerationEntry {
8
+ /** Caller-provided generation identity. */
9
+ generationId: string;
10
+ /** Exact conversation path. */
11
+ path: string;
12
+ /** Controller cancelled when an active generation is replaced. */
13
+ abortController: AbortController;
14
+ /** Current lifecycle state. */
15
+ status: ClientGenerationStatus;
16
+ }
17
+ /** Instance-owned registry; it has no automatic teardown or persistence. */
18
+ export interface GenerationRegistry {
19
+ /** Starts a generation, aborting the prior active entry on this path. */
20
+ startGeneration: (path: string, generationId: string) => AbortController;
21
+ /** Completes the entry only if its generation identity still matches. */
22
+ completeGeneration: (path: string, generationId: string) => void;
23
+ /** Returns the entry for the exact path. */
24
+ getGeneration: (path: string) => GenerationEntry | undefined;
25
+ /** Whether any tracked generation is active. */
26
+ hasActiveGeneration: () => boolean;
27
+ }
28
+ /** Creates an independent generation registry with stable operations. */
29
+ export declare const createGenerationRegistry: () => GenerationRegistry;
30
+ //# sourceMappingURL=generation-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generation-registry.d.ts","sourceRoot":"","sources":["../../src/conversation/generation-registry.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,oBAAY,sBAAsB;IAChC,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,8DAA8D;AAC9D,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,eAAe,EAAE,eAAe,CAAC;IACjC,+BAA+B;IAC/B,MAAM,EAAE,sBAAsB,CAAC;CAChC;AAED,4EAA4E;AAC5E,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,eAAe,CAAC;IACzE,yEAAyE;IACzE,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE,4CAA4C;IAC5C,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;IAC7D,gDAAgD;IAChD,mBAAmB,EAAE,MAAM,OAAO,CAAC;CACpC;AAED,yEAAyE;AACzE,eAAO,MAAM,wBAAwB,QAAO,kBA+B3C,CAAC"}
@@ -0,0 +1,33 @@
1
+ //#region src/conversation/generation-registry.ts
2
+ var e = /* @__PURE__ */ function(e) {
3
+ return e.Active = "active", e.Done = "done", e;
4
+ }({}), t = () => {
5
+ let e = /* @__PURE__ */ new Map();
6
+ return {
7
+ startGeneration: (t, n) => {
8
+ let r = e.get(t);
9
+ r?.status === "active" && r.abortController.abort();
10
+ let i = new AbortController();
11
+ return e.set(t, {
12
+ path: t,
13
+ generationId: n,
14
+ abortController: i,
15
+ status: "active"
16
+ }), i;
17
+ },
18
+ completeGeneration: (t, n) => {
19
+ let r = e.get(t);
20
+ r?.generationId === n && e.set(t, {
21
+ ...r,
22
+ status: "done"
23
+ });
24
+ },
25
+ getGeneration: (t) => e.get(t),
26
+ hasActiveGeneration: () => {
27
+ for (let t of e.values()) if (t.status === "active") return !0;
28
+ return !1;
29
+ }
30
+ };
31
+ };
32
+ //#endregion
33
+ export { e as ClientGenerationStatus, t as createGenerationRegistry };
@@ -1 +1 @@
1
- {"version":3,"file":"get-model-id-from-conversation-id.d.ts","sourceRoot":"","sources":["../../src/conversation/get-model-id-from-conversation-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AA+CvE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,4BAA4B,GACvC,IAAI,MAAM,KACT,MAAM,GAAG,SAwCX,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sCAAsC,GACjD,IAAI,MAAM,KACT,MAAM,EAYR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,+BAA+B,GAC1C,aAAa,iBAAiB,EAAE,EAChC,gBAAgB,MAAM,KACrB,iBAAiB,GAAG,SAGL,CAAC"}
1
+ {"version":3,"file":"get-model-id-from-conversation-id.d.ts","sourceRoot":"","sources":["../../src/conversation/get-model-id-from-conversation-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AA+CvE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,4BAA4B,GACvC,IAAI,MAAM,KACT,MAAM,GAAG,SA0CX,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sCAAsC,GACjD,IAAI,MAAM,KACT,MAAM,EAYR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,+BAA+B,GAC1C,aAAa,iBAAiB,EAAE,EAChC,gBAAgB,MAAM,KACrB,iBAAiB,GAAG,SAGL,CAAC"}
@@ -8,7 +8,7 @@ var t = "__", n = /[-+]/, r = /^\d+$/, i = ".scheduler", a = "applications", o =
8
8
  if (n.length < 3) return;
9
9
  let r = n.slice(2), o = r[0] === i ? r.slice(2) : r, c = o.findIndex((e) => e.includes(t));
10
10
  if (c === -1) return;
11
- let l = o[c], u = o.slice(0, c).filter(Boolean), d = s(l, u.at(-2) === a), f = [...u, d].filter(Boolean);
11
+ let l = o[c], u = o.slice(0, c).filter(Boolean), d = s(l, u.slice(0, -1).includes(a)), f = [...u, d].filter(Boolean);
12
12
  return f.length > 0 ? f.join("/") : void 0;
13
13
  }, l = (e) => {
14
14
  let t = c(e);