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

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
@@ -0,0 +1,36 @@
1
+ import { CatalogPublishEntityType } from './publish';
2
+ /** What a save step produced: the full id of the resource it wrote. */
3
+ export interface SavedResource {
4
+ /** Full DIAL Core id `{type}/{bucket}/{path}`. */
5
+ id: string;
6
+ }
7
+ /** The operations the Save panel runs for a resource that already exists, supplied by each editor. */
8
+ export interface ResourceEditSaveAdapter {
9
+ /** The publish API entity type of the resource. */
10
+ publishEntityType: CatalogPublishEntityType;
11
+ /** Whether the resource has versions; an unversioned one never forks. */
12
+ isVersioned: boolean;
13
+ /** Saves the editor's current state in place; the editor's existing Save. */
14
+ saveInPlace: () => Promise<SavedResource>;
15
+ /** Writes the edits as `{folderPath}/{name}__{version}`, leaving the stored current version unchanged. Required when `isVersioned`. */
16
+ saveAsNewVersion?: (version: string, folderPath: string[]) => Promise<SavedResource>;
17
+ /** Moves a saved resource into `folderPath` of the user's own bucket. */
18
+ move: (id: string, folderPath: string[]) => Promise<SavedResource>;
19
+ }
20
+ /** The operation the Save panel runs for a resource being created, supplied by each editor. */
21
+ export interface ResourceCreateSaveAdapter {
22
+ /** The publish API entity type of the resource. */
23
+ publishEntityType: CatalogPublishEntityType;
24
+ /** Always `false`: a new resource takes its version from the form, so the panel offers no version choice. */
25
+ isVersioned: false;
26
+ /** Creates the resource in `folderPath` of the user's own bucket, never overwriting an existing one. */
27
+ createIn: (folderPath: string[]) => Promise<SavedResource>;
28
+ }
29
+ /** The resource-specific operations the Save panel runs. */
30
+ export type ResourceSaveAdapter = ResourceEditSaveAdapter | ResourceCreateSaveAdapter;
31
+ /** Returns whether `adapter` creates a new resource rather than saving an existing one. */
32
+ export declare const isResourceCreateAdapter: (adapter: ResourceSaveAdapter) => adapter is ResourceCreateSaveAdapter;
33
+ /** A save failure whose `message` is already translated for the user, e.g. a half-finished version commit. */
34
+ export declare class ResourceSaveError extends Error {
35
+ }
36
+ //# sourceMappingURL=resource-save-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-save-adapter.d.ts","sourceRoot":"","sources":["../../src/catalog/resource-save-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAE1D,uEAAuE;AACvE,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,sGAAsG;AACtG,MAAM,WAAW,uBAAuB;IACtC,mDAAmD;IACnD,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,yEAAyE;IACzE,WAAW,EAAE,OAAO,CAAC;IACrB,6EAA6E;IAC7E,WAAW,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1C,uIAAuI;IACvI,gBAAgB,CAAC,EAAE,CACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,KACjB,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,yEAAyE;IACzE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;CACpE;AAED,+FAA+F;AAC/F,MAAM,WAAW,yBAAyB;IACxC,mDAAmD;IACnD,iBAAiB,EAAE,wBAAwB,CAAC;IAC5C,6GAA6G;IAC7G,WAAW,EAAE,KAAK,CAAC;IACnB,wGAAwG;IACxG,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;CAC5D;AAED,4DAA4D;AAC5D,MAAM,MAAM,mBAAmB,GAC7B,uBAAuB,GAAG,yBAAyB,CAAC;AAEtD,2FAA2F;AAC3F,eAAO,MAAM,uBAAuB,GAClC,SAAS,mBAAmB,KAC3B,OAAO,IAAI,yBAAkD,CAAC;AAEjE,8GAA8G;AAC9G,qBAAa,iBAAkB,SAAQ,KAAK;CAAG"}
@@ -0,0 +1,4 @@
1
+ //#region src/catalog/resource-save-adapter.ts
2
+ var e = (e) => "createIn" in e, t = class extends Error {};
3
+ //#endregion
4
+ export { t as ResourceSaveError, e as isResourceCreateAdapter };
@@ -0,0 +1,93 @@
1
+ import { ApplicationsApi, CreatePromptDto, PromptsApi, ResourceFoldersResponseDto, SkillsApi, ToolsetBodyDto, ToolsetsApi, UpdatePromptDto } from '@epam/ai-dial-chat-api-client';
2
+ import { ResourceCreateSaveAdapter, ResourceEditSaveAdapter } from './resource-save';
3
+ /** The application operations the application save adapters call. */
4
+ export type ResourceSaveApplicationsApi = Pick<ApplicationsApi, 'moveApplication' | 'forkApplicationVersion' | 'commitApplicationVersion' | 'deleteApplication'>;
5
+ /** The toolset operations {@link createToolsetSaveAdapter} calls. */
6
+ export type ResourceSaveToolsetsApi = Pick<ToolsetsApi, 'updateToolset' | 'createToolset' | 'moveToolset'>;
7
+ /** The prompt operations the prompt save adapters and {@link createPromptFolderLister} call. */
8
+ export type ResourceSavePromptsApi = Pick<PromptsApi, 'listPrompts' | 'createPrompt' | 'updatePrompt' | 'movePrompt'>;
9
+ /** Parameters for {@link createEmbeddedApplicationSaveAdapter}. */
10
+ export interface EmbeddedApplicationSaveAdapterParams {
11
+ /** Configured applications client. */
12
+ applicationsApi: ResourceSaveApplicationsApi;
13
+ /** Full id of the edited application. */
14
+ applicationId: string;
15
+ /** Runs the embedded editor's own save of the edited application. */
16
+ runEmbeddedSave: () => Promise<void>;
17
+ /** Translated message for a fork whose commit failed, naming the new version. */
18
+ getCommitFailedMessage: (version: string) => string;
19
+ }
20
+ /** Parameters for {@link createHostApplicationSaveAdapter}. */
21
+ export interface HostApplicationSaveAdapterParams {
22
+ /** Configured applications client. */
23
+ applicationsApi: Pick<ResourceSaveApplicationsApi, 'moveApplication'>;
24
+ /** Full id of the edited application. */
25
+ applicationId: string;
26
+ /** Writes the edited values to the application in place. */
27
+ update: () => Promise<unknown>;
28
+ /** Creates the edited values as a new application with `version` in `folderPath`, never overwriting. */
29
+ createVersion: (version: string, folderPath: string[]) => Promise<{
30
+ id?: string;
31
+ } | void>;
32
+ }
33
+ /** Parameters for {@link createToolsetSaveAdapter}. */
34
+ export interface ToolsetSaveAdapterParams {
35
+ /** Configured toolsets client. */
36
+ toolsetsApi: ResourceSaveToolsetsApi;
37
+ /** Full id of the edited toolset. */
38
+ toolsetId: string;
39
+ /** The edited values, already mapped to the write body. */
40
+ body: ToolsetBodyDto;
41
+ }
42
+ /** Parameters for {@link createPromptSaveAdapter}. */
43
+ export interface PromptSaveAdapterParams {
44
+ /** Configured prompts client. */
45
+ promptsApi: Pick<ResourceSavePromptsApi, 'updatePrompt' | 'movePrompt'>;
46
+ /** Full id of the edited prompt. */
47
+ promptId: string;
48
+ /** The edited values. */
49
+ body: UpdatePromptDto;
50
+ }
51
+ /**
52
+ * Save operations for an application whose embedded editor is the single
53
+ * writer (Quick Apps). A new version is a fork of the stored application,
54
+ * the editor's save to the original, then a commit that swaps the two
55
+ * bodies, so the edits land in the new version and the original keeps its
56
+ * last saved content.
57
+ */
58
+ export declare const createEmbeddedApplicationSaveAdapter: ({ applicationsApi, applicationId, runEmbeddedSave, getCommitFailedMessage, }: EmbeddedApplicationSaveAdapterParams) => ResourceEditSaveAdapter;
59
+ /**
60
+ * Save operations for an application the host writes itself (schema-form
61
+ * and custom apps). A new version is a create-only write of the edited
62
+ * values, so the stored current version is never touched.
63
+ */
64
+ export declare const createHostApplicationSaveAdapter: ({ applicationsApi, applicationId, update, createVersion, }: HostApplicationSaveAdapterParams) => ResourceEditSaveAdapter;
65
+ /** Save operations for a toolset; a new version is a create-only write into the chosen folder. */
66
+ export declare const createToolsetSaveAdapter: ({ toolsetsApi, toolsetId, body, }: ToolsetSaveAdapterParams) => ResourceEditSaveAdapter;
67
+ /** Save operations for a prompt: unversioned, so it is updated in place and then moved when its folder changes. */
68
+ export declare const createPromptSaveAdapter: ({ promptsApi, promptId, body, }: PromptSaveAdapterParams) => ResourceEditSaveAdapter;
69
+ /** Parameters for {@link createToolsetCreateAdapter}. */
70
+ export interface ToolsetCreateAdapterParams {
71
+ /** Configured toolsets client. */
72
+ toolsetsApi: Pick<ResourceSaveToolsetsApi, 'createToolset'>;
73
+ /** The new toolset's values, already mapped to the write body. */
74
+ body: ToolsetBodyDto;
75
+ }
76
+ /** Parameters for {@link createPromptCreateAdapter}. */
77
+ export interface PromptCreateAdapterParams {
78
+ /** Configured prompts client. */
79
+ promptsApi: Pick<ResourceSavePromptsApi, 'createPrompt'>;
80
+ /** The new prompt's values; its folder comes from the panel. */
81
+ body: Omit<CreatePromptDto, 'folderId'>;
82
+ }
83
+ /** Creates a new toolset in the chosen Personal folder, never overwriting an existing one. */
84
+ export declare const createToolsetCreateAdapter: ({ toolsetsApi, body, }: ToolsetCreateAdapterParams) => ResourceCreateSaveAdapter;
85
+ /** Creates a new prompt in the chosen Personal folder. */
86
+ export declare const createPromptCreateAdapter: ({ promptsApi, body, }: PromptCreateAdapterParams) => ResourceCreateSaveAdapter;
87
+ /** Returns a lister of the caller's prompt folders directly under `path` (plain text, `''` for the root). */
88
+ export declare const createPromptFolderLister: (promptsApi: Pick<ResourceSavePromptsApi, "listPrompts">) => (path: string) => Promise<ResourceFoldersResponseDto>;
89
+ /** The skill operation {@link createSkillFolderLister} calls. */
90
+ export type ResourceSaveSkillsApi = Pick<SkillsApi, 'listSkills'>;
91
+ /** Returns a lister of the grouping folders directly under `path` (plain text, `''` for the root) of the caller's skills in `bucket`. */
92
+ export declare const createSkillFolderLister: (skillsApi: ResourceSaveSkillsApi, bucket: string) => (path: string) => Promise<ResourceFoldersResponseDto>;
93
+ //# sourceMappingURL=resource-save-adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-save-adapters.d.ts","sourceRoot":"","sources":["../../src/catalog/resource-save-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,UAAU,EACV,0BAA0B,EAC1B,SAAS,EACT,cAAc,EACd,WAAW,EACX,eAAe,EAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE7B,MAAM,iBAAiB,CAAC;AAEzB,qEAAqE;AACrE,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC5C,eAAe,EACb,iBAAiB,GACjB,wBAAwB,GACxB,0BAA0B,GAC1B,mBAAmB,CACtB,CAAC;AAEF,qEAAqE;AACrE,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,WAAW,EACX,eAAe,GAAG,eAAe,GAAG,aAAa,CAClD,CAAC;AAEF,gGAAgG;AAChG,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,UAAU,EACV,aAAa,GAAG,cAAc,GAAG,cAAc,GAAG,YAAY,CAC/D,CAAC;AAEF,mEAAmE;AACnE,MAAM,WAAW,oCAAoC;IACnD,sCAAsC;IACtC,eAAe,EAAE,2BAA2B,CAAC;IAC7C,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,eAAe,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,iFAAiF;IACjF,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;CACrD;AAED,+DAA+D;AAC/D,MAAM,WAAW,gCAAgC;IAC/C,sCAAsC;IACtC,eAAe,EAAE,IAAI,CAAC,2BAA2B,EAAE,iBAAiB,CAAC,CAAC;IACtE,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,wGAAwG;IACxG,aAAa,EAAE,CACb,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,KACjB,OAAO,CAAC;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;CACtC;AAED,uDAAuD;AACvD,MAAM,WAAW,wBAAwB;IACvC,kCAAkC;IAClC,WAAW,EAAE,uBAAuB,CAAC;IACrC,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,sDAAsD;AACtD,MAAM,WAAW,uBAAuB;IACtC,iCAAiC;IACjC,UAAU,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,GAAG,YAAY,CAAC,CAAC;IACxE,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,EAAE,eAAe,CAAC;CACvB;AAUD;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,GAAI,8EAKlD,oCAAoC,KAAG,uBA+BxC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,GAAI,4DAK9C,gCAAgC,KAAG,uBAapC,CAAC;AAEH,kGAAkG;AAClG,eAAO,MAAM,wBAAwB,GAAI,mCAItC,wBAAwB,KAAG,uBAmB5B,CAAC;AAEH,mHAAmH;AACnH,eAAO,MAAM,uBAAuB,GAAI,iCAIrC,uBAAuB,KAAG,uBAW3B,CAAC;AAEH,yDAAyD;AACzD,MAAM,WAAW,0BAA0B;IACzC,kCAAkC;IAClC,WAAW,EAAE,IAAI,CAAC,uBAAuB,EAAE,eAAe,CAAC,CAAC;IAC5D,kEAAkE;IAClE,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,wDAAwD;AACxD,MAAM,WAAW,yBAAyB;IACxC,iCAAiC;IACjC,UAAU,EAAE,IAAI,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;IACzD,gEAAgE;IAChE,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;CACzC;AAED,8FAA8F;AAC9F,eAAO,MAAM,0BAA0B,GAAI,wBAGxC,0BAA0B,KAAG,yBAW9B,CAAC;AAEH,0DAA0D;AAC1D,eAAO,MAAM,yBAAyB,GAAI,uBAGvC,yBAAyB,KAAG,yBAU7B,CAAC;AAEH,6GAA6G;AAC7G,eAAO,MAAM,wBAAwB,GAClC,YAAY,IAAI,CAAC,sBAAsB,EAAE,aAAa,CAAC,MACjD,MAAM,MAAM,KAAG,OAAO,CAAC,0BAA0B,CAcvD,CAAC;AAEJ,iEAAiE;AACjE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAElE,yIAAyI;AACzI,eAAO,MAAM,uBAAuB,GACjC,WAAW,qBAAqB,EAAE,QAAQ,MAAM,MAC1C,MAAM,MAAM,KAAG,OAAO,CAAC,0BAA0B,CAuBvD,CAAC"}
@@ -0,0 +1,116 @@
1
+ import { ResourceSaveError as e } from "./resource-save-adapter.js";
2
+ //#region src/catalog/resource-save-adapters.ts
3
+ var t = (e) => (t, n) => e.moveApplication({
4
+ applicationName: t,
5
+ moveResourceDto: { folderPath: n.join("/") }
6
+ }), n = ({ applicationsApi: n, applicationId: r, runEmbeddedSave: i, getCommitFailedMessage: a }) => ({
7
+ publishEntityType: "application",
8
+ isVersioned: !0,
9
+ saveInPlace: async () => (await i(), { id: r }),
10
+ saveAsNewVersion: async (t, o) => {
11
+ let { id: s } = await n.forkApplicationVersion({
12
+ applicationName: r,
13
+ forkApplicationVersionDto: {
14
+ version: t,
15
+ folderPath: o.join("/")
16
+ }
17
+ });
18
+ try {
19
+ await i();
20
+ } catch (e) {
21
+ throw await n.deleteApplication({ applicationName: s }).catch(() => void 0), e;
22
+ }
23
+ try {
24
+ return await n.commitApplicationVersion({
25
+ applicationName: r,
26
+ commitApplicationVersionDto: { snapshotId: s }
27
+ });
28
+ } catch {
29
+ throw new e(a(t));
30
+ }
31
+ },
32
+ move: t(n)
33
+ }), r = ({ applicationsApi: e, applicationId: n, update: r, createVersion: i }) => ({
34
+ publishEntityType: "application",
35
+ isVersioned: !0,
36
+ saveInPlace: async () => (await r(), { id: n }),
37
+ saveAsNewVersion: async (e, t) => {
38
+ let n = await i(e, t);
39
+ if (!n?.id) throw Error("Created version has no id");
40
+ return { id: n.id };
41
+ },
42
+ move: t(e)
43
+ }), i = ({ toolsetsApi: e, toolsetId: t, body: n }) => ({
44
+ publishEntityType: "toolset",
45
+ isVersioned: !0,
46
+ saveInPlace: () => e.updateToolset({
47
+ toolsetName: t,
48
+ toolsetBodyDto: n
49
+ }),
50
+ saveAsNewVersion: (t, r) => e.createToolset({ createToolsetBodyDto: {
51
+ ...n,
52
+ version: t,
53
+ createOnly: !0,
54
+ ...r.length > 0 ? { folderPath: r.join("/") } : {}
55
+ } }),
56
+ move: (t, n) => e.moveToolset({
57
+ toolsetName: t,
58
+ moveResourceDto: { folderPath: n.join("/") }
59
+ })
60
+ }), a = ({ promptsApi: e, promptId: t, body: n }) => ({
61
+ publishEntityType: "prompt",
62
+ isVersioned: !1,
63
+ saveInPlace: () => e.updatePrompt({
64
+ id: t,
65
+ updatePromptDto: n
66
+ }),
67
+ move: (t, n) => e.movePrompt({
68
+ id: t,
69
+ movePromptDto: { targetFolderId: n.join("/") }
70
+ })
71
+ }), o = ({ toolsetsApi: e, body: t }) => ({
72
+ publishEntityType: "toolset",
73
+ isVersioned: !1,
74
+ createIn: (n) => e.createToolset({ createToolsetBodyDto: {
75
+ ...t,
76
+ createOnly: !0,
77
+ ...n.length > 0 ? { folderPath: n.join("/") } : {}
78
+ } })
79
+ }), s = ({ promptsApi: e, body: t }) => ({
80
+ publishEntityType: "prompt",
81
+ isVersioned: !1,
82
+ createIn: (n) => e.createPrompt({ createPromptDto: {
83
+ ...t,
84
+ ...n.length > 0 ? { folderId: n.join("/") } : {}
85
+ } })
86
+ }), c = (e) => async (t) => {
87
+ let { folders: n } = await e.listPrompts(), r = t ? `${t}/` : "";
88
+ return { folders: n.filter((e) => e.id.startsWith(r) && e.id.length > r.length && !e.id.slice(r.length).includes("/")).map((e) => ({
89
+ name: e.name,
90
+ path: e.id
91
+ })) };
92
+ }, l = (e, t) => async (n) => {
93
+ let r = [], i = /* @__PURE__ */ new Set(), a;
94
+ do {
95
+ let o = await e.listSkills({
96
+ bucket: t,
97
+ path: n || void 0,
98
+ token: a
99
+ });
100
+ for (let e of o.items) {
101
+ if (e.nodeType !== "folder") continue;
102
+ let t = e.path.replace(/\/$/, "");
103
+ r.push({
104
+ name: e.name,
105
+ path: t
106
+ });
107
+ }
108
+ if (a = o.nextToken, a != null) {
109
+ if (i.has(a)) break;
110
+ i.add(a);
111
+ }
112
+ } while (a != null);
113
+ return { folders: r };
114
+ };
115
+ //#endregion
116
+ export { n as createEmbeddedApplicationSaveAdapter, r as createHostApplicationSaveAdapter, s as createPromptCreateAdapter, c as createPromptFolderLister, a as createPromptSaveAdapter, l as createSkillFolderLister, o as createToolsetCreateAdapter, i as createToolsetSaveAdapter };
@@ -0,0 +1,76 @@
1
+ import { SaveVersionMode, FolderDestination, PublicationRule } from '@epam/ai-dial-publish-panel';
2
+ import { PublishApiClient } from './create-publish-api';
3
+ import { CatalogPublishEntityType } from './publish';
4
+ import { ResourceSaveAdapter } from './resource-save-adapter';
5
+ export * from './resource-save-adapter';
6
+ /** The roots of the Save panel's destination tree. */
7
+ export declare enum SaveDestinationRoot {
8
+ /** The user's own folders for the resource type. */
9
+ Personal = "personal",
10
+ /** The Organization/public bucket; saving here also sends a publish request. */
11
+ Organization = "organization"
12
+ }
13
+ /** How a save that reached at least its first step ended. */
14
+ export declare enum ResourceSaveOutcome {
15
+ /** Every step succeeded. */
16
+ Saved = "saved",
17
+ /** The save succeeded but moving into the chosen Personal folder failed. */
18
+ SavedButMoveFailed = "savedButMoveFailed",
19
+ /** The save succeeded but the publish request failed. */
20
+ SavedButPublishFailed = "savedButPublishFailed"
21
+ }
22
+ /** Why the new version typed in the Save panel cannot be used. */
23
+ export declare enum ResourceSaveVersionError {
24
+ /** It does not match the host's version pattern. */
25
+ Invalid = "invalid",
26
+ /** It equals the resource's current version. */
27
+ Unchanged = "unchanged",
28
+ /** DIAL Core already stores a resource with that version. */
29
+ Exists = "exists"
30
+ }
31
+ /** What the user chose in the Save panel. */
32
+ export interface ResourceSaveChoice {
33
+ /** Full id of the resource being edited. */
34
+ resourceId: string;
35
+ /** Its current Personal folder. */
36
+ currentFolderPath: string[];
37
+ /** Its current version; `undefined` for an unversioned resource. */
38
+ currentVersion?: string;
39
+ /** The confirmed destination. */
40
+ destination: FolderDestination;
41
+ /** Keep the version or save a new one. Ignored for an unversioned resource. */
42
+ versionMode: SaveVersionMode;
43
+ /** The new version, used when `versionMode` is `New`. */
44
+ newVersion: string;
45
+ /** Access rules sent with the publish request for an Organization destination. */
46
+ rules?: PublicationRule[];
47
+ }
48
+ /** Sends the publish request for a saved resource. */
49
+ export type PublishSavedResource = (entityType: CatalogPublishEntityType, id: string, folderPath: string[], version: string | undefined, rules: PublicationRule[]) => Promise<void>;
50
+ /** The result of a save whose first step succeeded. */
51
+ export interface ResourceSaveResult {
52
+ /** How the later steps ended. */
53
+ outcome: ResourceSaveOutcome;
54
+ /** Id of the saved resource (the new version's, after a fork). */
55
+ savedId: string;
56
+ /** Whether the resource was created rather than saved. */
57
+ isCreated: boolean;
58
+ /** Whether a new version was written. */
59
+ isNewVersion: boolean;
60
+ /** Whether a publish request was sent successfully. */
61
+ isPublished: boolean;
62
+ /** The error of the step that failed after the save, if any. */
63
+ error?: unknown;
64
+ }
65
+ /** Returns a {@link PublishSavedResource} that sends the catalog publish request through `client`. */
66
+ export declare const createPublishSavedResource: (client: Pick<PublishApiClient, "publishCatalogEntity">) => PublishSavedResource;
67
+ /**
68
+ * Runs the Save panel's choice through `adapter`: create the resource in the
69
+ * chosen Personal folder, or save it in place or as a new version and then
70
+ * move it into a different Personal folder; for an Organization folder, save
71
+ * where it lives and publish. Rejects only when the first step fails; a failure
72
+ * after the save resolves with the matching partial outcome, because the
73
+ * save itself already happened.
74
+ */
75
+ export declare const runResourceSave: (adapter: ResourceSaveAdapter, choice: ResourceSaveChoice, publish: PublishSavedResource) => Promise<ResourceSaveResult>;
76
+ //# sourceMappingURL=resource-save.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-save.d.ts","sourceRoot":"","sources":["../../src/catalog/resource-save.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,yBAAyB,CAAC;AAEjC,cAAc,yBAAyB,CAAC;AAExC,sDAAsD;AACtD,oBAAY,mBAAmB;IAC7B,oDAAoD;IACpD,QAAQ,aAAa;IACrB,gFAAgF;IAChF,YAAY,iBAAiB;CAC9B;AAED,6DAA6D;AAC7D,oBAAY,mBAAmB;IAC7B,4BAA4B;IAC5B,KAAK,UAAU;IACf,4EAA4E;IAC5E,kBAAkB,uBAAuB;IACzC,yDAAyD;IACzD,qBAAqB,0BAA0B;CAChD;AAED,kEAAkE;AAClE,oBAAY,wBAAwB;IAClC,oDAAoD;IACpD,OAAO,YAAY;IACnB,gDAAgD;IAChD,SAAS,cAAc;IACvB,6DAA6D;IAC7D,MAAM,WAAW;CAClB;AAED,6CAA6C;AAC7C,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oEAAoE;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,+EAA+E;IAC/E,WAAW,EAAE,eAAe,CAAC;IAC7B,yDAAyD;IACzD,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED,sDAAsD;AACtD,MAAM,MAAM,oBAAoB,GAAG,CACjC,UAAU,EAAE,wBAAwB,EACpC,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,eAAe,EAAE,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,uDAAuD;AACvD,MAAM,WAAW,kBAAkB;IACjC,iCAAiC;IACjC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,SAAS,EAAE,OAAO,CAAC;IACnB,yCAAyC;IACzC,YAAY,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,WAAW,EAAE,OAAO,CAAC;IACrB,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAKD,sGAAsG;AACtG,eAAO,MAAM,0BAA0B,GAEnC,QAAQ,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,KACrD,oBAOF,CAAC;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,SAAS,mBAAmB,EAC5B,QAAQ,kBAAkB,EAC1B,SAAS,oBAAoB,KAC5B,OAAO,CAAC,kBAAkB,CAqE5B,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { toPublishRuleDto as e } from "./create-publish-api.js";
2
+ import { ResourceSaveError as t, isResourceCreateAdapter as n } from "./resource-save-adapter.js";
3
+ import { SaveVersionMode as r, toFolderPathKey as i } from "@epam/ai-dial-publish-panel";
4
+ //#region src/catalog/resource-save.ts
5
+ var a = /* @__PURE__ */ function(e) {
6
+ return e.Personal = "personal", e.Organization = "organization", e;
7
+ }({}), o = /* @__PURE__ */ function(e) {
8
+ return e.Saved = "saved", e.SavedButMoveFailed = "savedButMoveFailed", e.SavedButPublishFailed = "savedButPublishFailed", e;
9
+ }({}), s = /* @__PURE__ */ function(e) {
10
+ return e.Invalid = "invalid", e.Unchanged = "unchanged", e.Exists = "exists", e;
11
+ }({}), c = (e, t) => i(e) === i(t), l = (t) => async (n, r, i, a, o) => {
12
+ await t.publishCatalogEntity(n, r, {
13
+ folderPath: i.join("/"),
14
+ ...a ? { version: a } : {},
15
+ rules: o.map(e)
16
+ });
17
+ }, u = async (e, t, i) => {
18
+ let a = e.isVersioned && t.versionMode === r.New, o = t.destination.rootKey === "organization", s = o ? t.currentFolderPath : t.destination.path, l, u = !1;
19
+ if (n(e)) ({id: l} = await e.createIn(s));
20
+ else if (a) {
21
+ if (!e.saveAsNewVersion) throw Error("This resource cannot be saved as a new version");
22
+ ({id: l} = await e.saveAsNewVersion(t.newVersion, s));
23
+ } else ({id: l} = await e.saveInPlace()), u = !o && !c(s, t.currentFolderPath);
24
+ let d = {
25
+ outcome: "saved",
26
+ savedId: l,
27
+ isCreated: n(e),
28
+ isNewVersion: a,
29
+ isPublished: !1
30
+ };
31
+ if (u && !n(e)) try {
32
+ ({id: d.savedId} = await e.move(l, s));
33
+ } catch (e) {
34
+ return {
35
+ ...d,
36
+ outcome: "savedButMoveFailed",
37
+ error: e
38
+ };
39
+ }
40
+ if (o) try {
41
+ await i(e.publishEntityType, d.savedId, t.destination.path, a ? t.newVersion : t.currentVersion, t.rules ?? []), d.isPublished = !0;
42
+ } catch (e) {
43
+ return {
44
+ ...d,
45
+ outcome: "savedButPublishFailed",
46
+ error: e
47
+ };
48
+ }
49
+ return d;
50
+ };
51
+ //#endregion
52
+ export { t as ResourceSaveError, o as ResourceSaveOutcome, s as ResourceSaveVersionError, a as SaveDestinationRoot, l as createPublishSavedResource, n as isResourceCreateAdapter, u as runResourceSave };
@@ -0,0 +1,21 @@
1
+ import { PublishApiClient } from './create-publish-api';
2
+ import { CatalogPublishEntityType } from './publish';
3
+ /** The requests `resolveUnpublishableFolders` issues. */
4
+ export type UnpublishableFoldersClient = Pick<PublishApiClient, 'getCatalogPublishHistory' | 'getCatalogUnpublishAccess'>;
5
+ /** A published entity whose removal the caller may request. */
6
+ export interface UnpublishTarget {
7
+ /** The publish API's entity type, e.g. `'project'`. */
8
+ entityType: CatalogPublishEntityType;
9
+ /** The entity's DIAL Core id: the caller's own source or a `{type}/public/…` copy. */
10
+ entityId: string;
11
+ /** Whether the caller owns the source entity in their own bucket. */
12
+ isOwner: boolean;
13
+ }
14
+ /**
15
+ * Returns the folders the caller may request removal of `target` from: an
16
+ * owner's live published folders from publish history; on a public copy its
17
+ * own folder, for an administrator outright and for anyone else only when the
18
+ * BFF confirms they published it; otherwise none. Rejects when a request fails.
19
+ */
20
+ export declare const resolveUnpublishableFolders: (client: UnpublishableFoldersClient, target: UnpublishTarget, isAdmin: boolean) => Promise<string[][]>;
21
+ //# sourceMappingURL=unpublishable-folders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unpublishable-folders.d.ts","sourceRoot":"","sources":["../../src/catalog/unpublishable-folders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,KAAK,wBAAwB,EAI9B,MAAM,WAAW,CAAC;AAEnB,yDAAyD;AACzD,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,gBAAgB,EAChB,0BAA0B,GAAG,2BAA2B,CACzD,CAAC;AAEF,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,UAAU,EAAE,wBAAwB,CAAC;IACrC,sFAAsF;IACtF,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,OAAO,EAAE,OAAO,CAAC;CAClB;AAYD;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GACtC,QAAQ,0BAA0B,EAClC,QAAQ,eAAe,EACvB,SAAS,OAAO,KACf,OAAO,CAAC,MAAM,EAAE,EAAE,CAmBpB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { getPublicCatalogEntityFolderPath as e, isPublicCatalogEntityId as t, mapPublishHistoryEntryDto as n } from "./publish.js";
2
+ //#region src/catalog/unpublishable-folders.ts
3
+ var r = (e) => {
4
+ let t = /* @__PURE__ */ new Set();
5
+ return e.filter((e) => {
6
+ let n = e.join("/");
7
+ return !t.has(n) && (t.add(n), !0);
8
+ });
9
+ }, i = async (i, a, o) => {
10
+ let { entityType: s, entityId: c, isOwner: l } = a;
11
+ if (t(c)) {
12
+ if (!o) {
13
+ let { canUnpublish: e } = await i.getCatalogUnpublishAccess(s, c);
14
+ if (!e) return [];
15
+ }
16
+ return [e(c)];
17
+ }
18
+ return l ? r((await i.getCatalogPublishHistory(s, c)).map((e) => n(e).folderPath)) : [];
19
+ };
20
+ //#endregion
21
+ export { i as resolveUnpublishableFolders };
@@ -0,0 +1,14 @@
1
+ import { CatalogItemLimits } from '@epam/ai-dial-catalog';
2
+ /** The capped row closest to its limit, with its consumed percentage. */
3
+ export interface WorstCappedRow {
4
+ /** Period label of that row, e.g. `'Today'`. */
5
+ label: string;
6
+ /** Consumed share of that row's limit, rounded and clamped to 0–100. */
7
+ usedPercent: number;
8
+ }
9
+ /**
10
+ * Returns the capped row with the highest used/total ratio across every group,
11
+ * or `undefined` when no row is capped.
12
+ */
13
+ export declare const findWorstCappedRow: (limits: CatalogItemLimits | undefined) => WorstCappedRow | undefined;
14
+ //# sourceMappingURL=usage-limit-rows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-limit-rows.d.ts","sourceRoot":"","sources":["../../src/catalog/usage-limit-rows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,uBAAuB,CAAC;AAG/B,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAC;CACrB;AAKD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,iBAAiB,GAAG,SAAS,KACpC,cAAc,GAAG,SAwBnB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { isCappedStat as e } from "../shared/usage-stat.js";
2
+ //#region src/catalog/usage-limit-rows.ts
3
+ var t = (t) => t.isUnlimited !== !0 && e(t.total), n = (e) => {
4
+ let n;
5
+ for (let r of e?.groups ?? []) for (let e of r.rows) {
6
+ if (!t(e)) continue;
7
+ let r = Math.max(e.used, 0) / e.total;
8
+ (n == null || r > n.ratio) && (n = {
9
+ label: e.label,
10
+ ratio: r
11
+ });
12
+ }
13
+ if (n != null) return {
14
+ label: n.label,
15
+ usedPercent: Math.min(100, Math.round(n.ratio * 100))
16
+ };
17
+ };
18
+ //#endregion
19
+ export { n as findWorstCappedRow };
@@ -0,0 +1,19 @@
1
+ import { PublishHistoryEntry } from '@epam/ai-dial-publish-panel';
2
+ /** Host inputs of {@link usePublishHistory}. */
3
+ export interface UsePublishHistoryOptions {
4
+ /** Whether the publish panel is open; the history is read each time it opens. */
5
+ isOpen: boolean;
6
+ /** Id of the entity being published; a change reads its history again. */
7
+ entityId: string;
8
+ /** Reads the entity's publication history, already mapped to the panel's entries; the host owns the request. */
9
+ loadHistory: (entityId: string) => Promise<PublishHistoryEntry[]>;
10
+ }
11
+ /**
12
+ * Returns the publication history of an entity for a publish panel, read again
13
+ * on every open so a publication requested since the last one already blocks its
14
+ * folder. A failed read leaves the history empty (the backend still refuses a
15
+ * duplicate publication), a read that finishes after the panel closed or the
16
+ * entity changed is ignored, and another entity's history is never returned.
17
+ */
18
+ export declare const usePublishHistory: ({ isOpen, entityId, loadHistory, }: UsePublishHistoryOptions) => PublishHistoryEntry[];
19
+ //# sourceMappingURL=use-publish-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-publish-history.d.ts","sourceRoot":"","sources":["../../src/catalog/use-publish-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAKvE,gDAAgD;AAChD,MAAM,WAAW,wBAAwB;IACvC,iFAAiF;IACjF,MAAM,EAAE,OAAO,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,gHAAgH;IAChH,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;CACnE;AASD;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,oCAI/B,wBAAwB,KAAG,mBAAmB,EA2BhD,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { useEffect as e, useRef as t, useState as n } from "react";
2
+ //#region src/catalog/use-publish-history.ts
3
+ var r = [], i = ({ isOpen: i, entityId: a, loadHistory: o }) => {
4
+ let [s, c] = n(), l = t(o);
5
+ return e(() => {
6
+ l.current = o;
7
+ }, [o]), e(() => {
8
+ if (!i) return;
9
+ let e = !1;
10
+ return (async () => {
11
+ let t = r;
12
+ try {
13
+ t = await l.current(a);
14
+ } catch {}
15
+ e || c({
16
+ entityId: a,
17
+ entries: t
18
+ });
19
+ })(), () => {
20
+ e = !0;
21
+ };
22
+ }, [i, a]), s?.entityId === a ? s.entries : r;
23
+ };
24
+ //#endregion
25
+ export { i as usePublishHistory };
@@ -0,0 +1,57 @@
1
+ import { ApplicationCredentialLoginParams } from '@epam/ai-dial-catalog';
2
+ import { ApplicationExternalServiceDto, ExternalServiceLogoutBodyDto } from '@epam/ai-dial-chat-api-client';
3
+ import { ExternalServiceLoginOutcome, ExternalServiceLoginParams } from '../../external-services/useExternalServiceLogin';
4
+ /** Localized row-error copy `useApplicationCredentialActions` throws for each failed login or logout. */
5
+ export interface ApplicationCredentialActionsLabels {
6
+ /** Login failed, threw, or ended in an unrecognized outcome. Defaults to `'Failed to log in. Please try again.'`. */
7
+ loginFailed: string;
8
+ /** The browser blocked the OAuth popup. Defaults to `'The login popup was blocked by your browser. Please allow popups for this site and try again.'`. */
9
+ popupBlocked: string;
10
+ /** A DIAL administrator must approve the application first. Defaults to `"A DIAL administrator must approve this application's access before you can continue. Contact your administrator, then retry."`. */
11
+ adminConsentRequired: string;
12
+ /** Offline access is not configured for the user. Defaults to `'Offline access is not configured for your account. Contact your administrator.'`. */
13
+ offlineUnavailable: string;
14
+ /** Personal sign-out failed. Defaults to `'Failed to log out. Please try again.'`. */
15
+ logoutFailed: string;
16
+ }
17
+ /** English defaults of {@link ApplicationCredentialActionsLabels}. */
18
+ export declare const DEFAULT_APPLICATION_CREDENTIAL_ACTIONS_LABELS: ApplicationCredentialActionsLabels;
19
+ /** Parameters accepted by {@link useApplicationCredentialActions}. */
20
+ export interface UseApplicationCredentialActionsParams {
21
+ /** The application whose external-service credentials are managed. */
22
+ appId: string;
23
+ /** The application's authenticated services, as `useApplicationCredentials` returns them. */
24
+ services: readonly ApplicationExternalServiceDto[];
25
+ /** The host's external-service login, usually `useExternalServiceLogin().login` pre-wired with its operations. */
26
+ login: (params: ExternalServiceLoginParams) => Promise<ExternalServiceLoginOutcome>;
27
+ /** Already-configured DIAL Core operation that clears one service's credentials at the given level. */
28
+ signOutExternalService: (appId: string, serviceId: string, body: ExternalServiceLogoutBodyDto) => Promise<unknown>;
29
+ /** Re-reads service statuses, usually `useApplicationCredentials().refresh`. */
30
+ refresh: () => Promise<void>;
31
+ /** Localized error copy; every omitted field falls back to {@link DEFAULT_APPLICATION_CREDENTIAL_ACTIONS_LABELS}. */
32
+ labels?: Partial<ApplicationCredentialActionsLabels>;
33
+ }
34
+ /** Return value of {@link useApplicationCredentialActions}: the catalog `ApplicationCredentials` callbacks. */
35
+ export interface UseApplicationCredentialActionsResult {
36
+ /**
37
+ * `onLogin` for the catalog forms. Resolves `true` after a successful login
38
+ * and status refresh, `false` when the service is unknown or the user
39
+ * cancelled, and throws an `Error` carrying the localized message otherwise.
40
+ */
41
+ onLogin: (serviceId: string, params: ApplicationCredentialLoginParams) => Promise<boolean>;
42
+ /**
43
+ * `onLogout` for the catalog forms. Signs out only the user's own
44
+ * credentials, then refreshes; does nothing for an unknown or DIAL-native
45
+ * service, and throws an `Error` carrying the localized message when sign-out fails.
46
+ */
47
+ onLogout: (serviceId: string) => Promise<void>;
48
+ }
49
+ /**
50
+ * Owns the application-credentials login/logout flow behind the catalog's
51
+ * `ApplicationCredentials` forms: builds the user-level login request,
52
+ * classifies its outcome (success → refresh, cancel → no-op, anything else →
53
+ * a localized row error), and signs out only USER credentials before refreshing.
54
+ * Every host operation and string arrives as a parameter.
55
+ */
56
+ export declare const useApplicationCredentialActions: ({ appId, services, login, signOutExternalService, refresh, labels, }: UseApplicationCredentialActionsParams) => UseApplicationCredentialActionsResult;
57
+ //# sourceMappingURL=useApplicationCredentialActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useApplicationCredentialActions.d.ts","sourceRoot":"","sources":["../../../src/catalog/useApplicationCredentialActions/useApplicationCredentialActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,KAAK,EACV,6BAA6B,EAC7B,4BAA4B,EAC7B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAIL,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAChC,MAAM,iDAAiD,CAAC;AAGzD,yGAAyG;AACzG,MAAM,WAAW,kCAAkC;IACjD,qHAAqH;IACrH,WAAW,EAAE,MAAM,CAAC;IACpB,0JAA0J;IAC1J,YAAY,EAAE,MAAM,CAAC;IACrB,6MAA6M;IAC7M,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qJAAqJ;IACrJ,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sFAAsF;IACtF,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,sEAAsE;AACtE,eAAO,MAAM,6CAA6C,EAAE,kCAUzD,CAAC;AAEJ,sEAAsE;AACtE,MAAM,WAAW,qCAAqC;IACpD,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,6FAA6F;IAC7F,QAAQ,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACnD,kHAAkH;IAClH,KAAK,EAAE,CACL,MAAM,EAAE,0BAA0B,KAC/B,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC1C,uGAAuG;IACvG,sBAAsB,EAAE,CACtB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,4BAA4B,KAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,gFAAgF;IAChF,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,qHAAqH;IACrH,MAAM,CAAC,EAAE,OAAO,CAAC,kCAAkC,CAAC,CAAC;CACtD;AAED,+GAA+G;AAC/G,MAAM,WAAW,qCAAqC;IACpD;;;;OAIG;IACH,OAAO,EAAE,CACP,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,gCAAgC,KACrC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB;;;;OAIG;IACH,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,GAAI,sEAO7C,qCAAqC,KAAG,qCAwE1C,CAAC"}