@epam/ai-dial-chat-hooks 1.3.0-dev.98 → 1.4.0-dev.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api-error/api-error.d.ts +2 -0
- package/api-error/api-error.d.ts.map +1 -1
- package/api-error/api-error.js +31 -23
- package/api-transport/create-unauthorized-middleware.js +4 -1
- package/attachment/attach-constraints.d.ts +31 -0
- package/attachment/attach-constraints.d.ts.map +1 -0
- package/attachment/attach-constraints.js +18 -0
- package/attachment/useAttachmentAction/useAttachmentAction.d.ts +1 -1
- package/attachment/useAttachmentAction/useAttachmentAction.d.ts.map +1 -1
- package/attachment/useAttachmentAction/useAttachmentAction.js +25 -28
- package/attachments.js +2 -1
- package/catalog/application-credentials.d.ts +15 -0
- package/catalog/application-credentials.d.ts.map +1 -0
- package/catalog/application-credentials.js +28 -0
- package/catalog/catalog-derivations.d.ts +5 -3
- package/catalog/catalog-derivations.d.ts.map +1 -1
- package/catalog/catalog-derivations.js +13 -6
- package/catalog/catalog-entity-kind.d.ts +31 -0
- package/catalog/catalog-entity-kind.d.ts.map +1 -0
- package/catalog/catalog-entity-kind.js +21 -0
- package/catalog/catalog-preferences.d.ts +8 -0
- package/catalog/catalog-preferences.d.ts.map +1 -0
- package/catalog/catalog-preferences.js +5 -0
- package/catalog/create-publish-api.d.ts +3 -1
- package/catalog/create-publish-api.d.ts.map +1 -1
- package/catalog/create-publish-api.js +4 -0
- package/catalog/deployment-id.d.ts +13 -4
- package/catalog/deployment-id.d.ts.map +1 -1
- package/catalog/deployment-id.js +17 -3
- package/catalog/entity-details.d.ts +2 -0
- package/catalog/entity-details.d.ts.map +1 -1
- package/catalog/favorite-entity-type.d.ts +5 -0
- package/catalog/favorite-entity-type.d.ts.map +1 -0
- package/catalog/favorite-entity-type.js +10 -0
- package/catalog/map-deployment-limits-to-input.d.ts +4 -3
- package/catalog/map-deployment-limits-to-input.d.ts.map +1 -1
- package/catalog/map-deployment-limits-to-input.js +3 -4
- package/catalog/map-deployment-to-catalog-item.d.ts +12 -1
- package/catalog/map-deployment-to-catalog-item.d.ts.map +1 -1
- package/catalog/map-deployment-to-catalog-item.js +22 -15
- package/catalog/map-entity-details-to-catalog.d.ts.map +1 -1
- package/catalog/map-entity-details-to-catalog.js +69 -24
- package/catalog/map-skill-to-catalog-item.d.ts +4 -5
- package/catalog/map-skill-to-catalog-item.d.ts.map +1 -1
- package/catalog/map-skill-to-catalog-item.js +29 -38
- package/catalog/publish.d.ts +1 -1
- package/catalog/publish.d.ts.map +1 -1
- package/catalog/resource-folder.d.ts +8 -0
- package/catalog/resource-folder.d.ts.map +1 -0
- package/catalog/resource-folder.js +13 -0
- package/catalog/resource-name-conflict.d.ts +22 -0
- package/catalog/resource-name-conflict.d.ts.map +1 -0
- package/catalog/resource-name-conflict.js +32 -0
- package/catalog/resource-save-adapter.d.ts +36 -0
- package/catalog/resource-save-adapter.d.ts.map +1 -0
- package/catalog/resource-save-adapter.js +4 -0
- package/catalog/resource-save-adapters.d.ts +93 -0
- package/catalog/resource-save-adapters.d.ts.map +1 -0
- package/catalog/resource-save-adapters.js +116 -0
- package/catalog/resource-save.d.ts +76 -0
- package/catalog/resource-save.d.ts.map +1 -0
- package/catalog/resource-save.js +52 -0
- package/catalog/unpublishable-folders.d.ts +21 -0
- package/catalog/unpublishable-folders.d.ts.map +1 -0
- package/catalog/unpublishable-folders.js +21 -0
- package/catalog/usage-limit-rows.d.ts +14 -0
- package/catalog/usage-limit-rows.d.ts.map +1 -0
- package/catalog/usage-limit-rows.js +19 -0
- package/catalog/use-publish-history.d.ts +19 -0
- package/catalog/use-publish-history.d.ts.map +1 -0
- package/catalog/use-publish-history.js +25 -0
- package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.d.ts +57 -0
- package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.d.ts.map +1 -0
- package/catalog/useApplicationCredentialActions/useApplicationCredentialActions.js +67 -0
- package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.d.ts +15 -5
- package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.d.ts.map +1 -1
- package/catalog/useCatalogEditNavigation/useCatalogEditNavigation.js +71 -89
- package/catalog/useCatalogItemDelete/useCatalogItemDelete.d.ts +41 -0
- package/catalog/useCatalogItemDelete/useCatalogItemDelete.d.ts.map +1 -0
- package/catalog/useCatalogItemDelete/useCatalogItemDelete.js +37 -0
- package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.d.ts.map +1 -1
- package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js +72 -77
- package/catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js +1 -1
- package/catalog/usePublishFolders/usePublishFolders.d.ts +8 -0
- package/catalog/usePublishFolders/usePublishFolders.d.ts.map +1 -1
- package/catalog/usePublishFolders/usePublishFolders.js +32 -29
- package/catalog/useResourceFolders/useResourceFolders.d.ts +33 -0
- package/catalog/useResourceFolders/useResourceFolders.d.ts.map +1 -0
- package/catalog/useResourceFolders/useResourceFolders.js +58 -0
- package/catalog/useResourceSavePanel/useResourceSavePanel.d.ts +64 -0
- package/catalog/useResourceSavePanel/useResourceSavePanel.d.ts.map +1 -0
- package/catalog/useResourceSavePanel/useResourceSavePanel.js +173 -0
- package/catalog/useSkillItemDetails.js +3 -3
- package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.d.ts +43 -0
- package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.d.ts.map +1 -0
- package/catalog/useUnpublishConfirmation/useUnpublishConfirmation.js +46 -0
- package/catalog/useUnpublishableFolders/useUnpublishableFolders.d.ts +22 -0
- package/catalog/useUnpublishableFolders/useUnpublishableFolders.d.ts.map +1 -0
- package/catalog/useUnpublishableFolders/useUnpublishableFolders.js +53 -0
- package/catalog.js +41 -23
- package/conversation/conversation-data-source.d.ts +47 -0
- package/conversation/conversation-data-source.d.ts.map +1 -0
- package/conversation/conversation-data-source.js +11 -0
- package/conversation/conversation-draft/conversation-draft-store.js +40 -40
- package/conversation/conversation-list.d.ts +6 -0
- package/conversation/conversation-list.d.ts.map +1 -0
- package/conversation/conversation-list.js +5 -0
- package/conversation/conversation-title-stream.d.ts +33 -0
- package/conversation/conversation-title-stream.d.ts.map +1 -0
- package/conversation/conversation-title-stream.js +103 -0
- package/conversation/conversation-transfer/attachment-refs.d.ts +10 -2
- package/conversation/conversation-transfer/attachment-refs.d.ts.map +1 -1
- package/conversation/conversation-transfer/attachment-refs.js +31 -9
- package/conversation/conversation-transfer/export-conversation.d.ts +5 -1
- package/conversation/conversation-transfer/export-conversation.d.ts.map +1 -1
- package/conversation/conversation-transfer/export-conversation.js +19 -18
- package/conversation/conversation-transfer/import-conversation.d.ts +11 -6
- package/conversation/conversation-transfer/import-conversation.d.ts.map +1 -1
- package/conversation/conversation-transfer/import-conversation.js +65 -69
- package/conversation/conversation-transfer/progress.js +1 -1
- package/conversation/conversation-transfer/zip-export.js +1 -7
- package/conversation/conversation-transfer/zip-import.js +1 -1
- package/conversation/create-chat-stream-api.d.ts +19 -4
- package/conversation/create-chat-stream-api.d.ts.map +1 -1
- package/conversation/create-chat-stream-api.js +67 -61
- package/conversation/generation-registry.d.ts +30 -0
- package/conversation/generation-registry.d.ts.map +1 -0
- package/conversation/generation-registry.js +33 -0
- package/conversation/message-utils.d.ts +6 -0
- package/conversation/message-utils.d.ts.map +1 -1
- package/conversation/message-utils.js +14 -10
- package/conversation/scheduled-task-grouping.d.ts +53 -0
- package/conversation/scheduled-task-grouping.d.ts.map +1 -0
- package/conversation/scheduled-task-grouping.js +45 -0
- package/conversation/useActiveConversationSync/useActiveConversationSync.d.ts +4 -2
- package/conversation/useActiveConversationSync/useActiveConversationSync.d.ts.map +1 -1
- package/conversation/useActiveConversationSync/useActiveConversationSync.js +19 -12
- package/conversation/useAttachmentUpload/useAttachmentUpload.d.ts.map +1 -1
- package/conversation/useAttachmentUpload/useAttachmentUpload.js +4 -1
- package/conversation/useConversationComposerDraft/useConversationComposerDraft.js +1 -5
- package/conversation/useConversationDiscovery/useConversationDiscovery.d.ts +22 -0
- package/conversation/useConversationDiscovery/useConversationDiscovery.d.ts.map +1 -0
- package/conversation/useConversationDiscovery/useConversationDiscovery.js +60 -0
- package/conversation/useConversationExport/useConversationExport.d.ts.map +1 -1
- package/conversation/useConversationExport/useConversationExport.js +113 -122
- package/conversation/useConversationHandlers/message-utils.js +2 -2
- package/conversation/useConversationHandlers/useConversationHandlers.js +41 -41
- package/conversation/useConversationImport/useConversationImport.js +24 -24
- package/conversation/useConversationPanelItems/useConversationPanelItems.d.ts +18 -5
- package/conversation/useConversationPanelItems/useConversationPanelItems.d.ts.map +1 -1
- package/conversation/useConversationPanelItems/useConversationPanelItems.js +34 -30
- package/conversation/useConversationScroll/useConversationScroll.d.ts.map +1 -1
- package/conversation/useConversationScroll/useConversationScroll.js +69 -72
- package/conversation/useConversationStream/conversation-path.js +2 -2
- package/conversation/useConversationStream/conversation-stream.types.d.ts +142 -0
- package/conversation/useConversationStream/conversation-stream.types.d.ts.map +1 -0
- package/conversation/useConversationStream/frame-scheduler.js +17 -17
- package/conversation/useConversationStream/generation-resume.d.ts +32 -2
- package/conversation/useConversationStream/generation-resume.d.ts.map +1 -1
- package/conversation/useConversationStream/generation-resume.js +114 -121
- package/conversation/useConversationStream/stream-errors.d.ts +10 -0
- package/conversation/useConversationStream/stream-errors.d.ts.map +1 -0
- package/conversation/useConversationStream/stream-errors.js +10 -0
- package/conversation/useConversationStream/stream-session.d.ts +51 -0
- package/conversation/useConversationStream/stream-session.d.ts.map +1 -0
- package/conversation/useConversationStream/stream-session.js +179 -0
- package/conversation/useConversationStream/useConversationReloadErrors.d.ts +25 -0
- package/conversation/useConversationStream/useConversationReloadErrors.d.ts.map +1 -0
- package/conversation/useConversationStream/useConversationReloadErrors.js +38 -0
- package/conversation/useConversationStream/useConversationStream.d.ts +3 -136
- package/conversation/useConversationStream/useConversationStream.d.ts.map +1 -1
- package/conversation/useConversationStream/useConversationStream.js +141 -339
- package/conversation/useConversationStream/useStopGeneration.d.ts +29 -0
- package/conversation/useConversationStream/useStopGeneration.d.ts.map +1 -0
- package/conversation/useConversationStream/useStopGeneration.js +48 -0
- package/conversation/useConversationStream/useStreamPathState.d.ts +39 -0
- package/conversation/useConversationStream/useStreamPathState.d.ts.map +1 -0
- package/conversation/useConversationStream/useStreamPathState.js +55 -0
- package/conversation/useConversationTitleEnrichmentController.d.ts +64 -0
- package/conversation/useConversationTitleEnrichmentController.d.ts.map +1 -0
- package/conversation/useConversationTitleEnrichmentController.js +155 -0
- package/conversation/useDeploymentChangeTracking.d.ts +14 -0
- package/conversation/useDeploymentChangeTracking.d.ts.map +1 -0
- package/conversation/useDeploymentChangeTracking.js +23 -0
- package/conversation/useEntityPreselection/useEntityPreselection.d.ts +108 -0
- package/conversation/useEntityPreselection/useEntityPreselection.d.ts.map +1 -0
- package/conversation/useEntityPreselection/useEntityPreselection.js +78 -0
- package/conversation/useMessageSelectionReply/useMessageSelectionReply.js +4 -10
- package/conversation/useTranscribeAudio/useTranscribeAudio.d.ts +8 -1
- package/conversation/useTranscribeAudio/useTranscribeAudio.d.ts.map +1 -1
- package/conversation/useTranscribeAudio/useTranscribeAudio.js +23 -17
- package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.d.ts +16 -0
- package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.d.ts.map +1 -0
- package/conversation/useVisibleConversationIdsReporter/useVisibleConversationIdsReporter.js +17 -0
- package/conversation-overlay.js +1 -2
- package/conversation-sources/stage-citations.d.ts +9 -0
- package/conversation-sources/stage-citations.d.ts.map +1 -0
- package/conversation-sources/stage-citations.js +8 -0
- package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.d.ts +4 -0
- package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.d.ts.map +1 -0
- package/conversation-sources/useConversationAnnotationPool/useConversationAnnotationPool.js +5 -0
- package/conversation-sources.js +3 -1
- package/conversation.js +45 -35
- package/entry-points/attachments.d.ts +1 -0
- package/entry-points/attachments.d.ts.map +1 -1
- package/entry-points/catalog.d.ts +17 -0
- package/entry-points/catalog.d.ts.map +1 -1
- package/entry-points/conversation-sources.d.ts +2 -0
- package/entry-points/conversation-sources.d.ts.map +1 -1
- package/entry-points/conversation.d.ts +10 -0
- package/entry-points/conversation.d.ts.map +1 -1
- package/entry-points/external-services.d.ts +6 -0
- package/entry-points/external-services.d.ts.map +1 -0
- package/entry-points/file-manager-canvas.d.ts +1 -0
- package/entry-points/file-manager-canvas.d.ts.map +1 -1
- package/entry-points/file-manager.d.ts +2 -0
- package/entry-points/file-manager.d.ts.map +1 -1
- package/entry-points/oauth.d.ts +1 -0
- package/entry-points/oauth.d.ts.map +1 -1
- package/entry-points/offline-credentials.d.ts +2 -0
- package/entry-points/offline-credentials.d.ts.map +1 -1
- package/entry-points/project.d.ts +20 -0
- package/entry-points/project.d.ts.map +1 -0
- package/entry-points/scheduled-tasks.d.ts +6 -0
- package/entry-points/scheduled-tasks.d.ts.map +1 -1
- package/entry-points/sharing.d.ts +4 -0
- package/entry-points/sharing.d.ts.map +1 -1
- package/entry-points/skill-editor.d.ts +2 -0
- package/entry-points/skill-editor.d.ts.map +1 -1
- package/entry-points/skills-state.d.ts +1 -0
- package/entry-points/skills-state.d.ts.map +1 -1
- package/entry-points/usage-limits.d.ts +1 -0
- package/entry-points/usage-limits.d.ts.map +1 -1
- package/entry-points/utils.d.ts +6 -0
- package/entry-points/utils.d.ts.map +1 -1
- package/entry-points/viewport-layout.d.ts +1 -0
- package/entry-points/viewport-layout.d.ts.map +1 -1
- package/external-services/useExternalServiceLogin.d.ts +99 -0
- package/external-services/useExternalServiceLogin.d.ts.map +1 -0
- package/external-services/useExternalServiceLogin.js +93 -0
- package/external-services.d.ts +2 -0
- package/external-services.js +5 -0
- package/file-manager-canvas.js +3 -2
- package/file-manager.js +32 -30
- package/files/attachment-canvas.d.ts +12 -0
- package/files/attachment-canvas.d.ts.map +1 -1
- package/files/attachment-canvas.js +18 -10
- package/files/attachment-dto-to-display.d.ts.map +1 -1
- package/files/attachment-dto-to-display.js +13 -12
- package/files/attachment-types.js +1 -1
- package/files/browser-download.d.ts +9 -0
- package/files/browser-download.d.ts.map +1 -0
- package/files/browser-download.js +23 -0
- package/files/create-files-api.d.ts +3 -4
- package/files/create-files-api.d.ts.map +1 -1
- package/files/create-files-api.js +1 -1
- package/files/create-upload-file-with-progress.d.ts +21 -1
- package/files/create-upload-file-with-progress.d.ts.map +1 -1
- package/files/create-upload-file-with-progress.js +50 -34
- package/files/dial-file-manager-copy-move.util.d.ts.map +1 -1
- package/files/dial-file-manager-copy-move.util.js +28 -28
- package/files/dial-file-manager-mapping.util.d.ts +6 -2
- package/files/dial-file-manager-mapping.util.d.ts.map +1 -1
- package/files/dial-file-manager-mapping.util.js +85 -72
- package/files/dial-file-manager.types.d.ts +15 -5
- package/files/dial-file-manager.types.d.ts.map +1 -1
- package/files/dial-file-to-attachment.js +3 -3
- package/files/dial-file.d.ts +19 -0
- package/files/dial-file.d.ts.map +1 -1
- package/files/dial-file.js +20 -12
- package/files/dial-files-api.d.ts +2 -2
- package/files/dial-files-api.d.ts.map +1 -1
- package/files/download-progress.d.ts +33 -0
- package/files/download-progress.d.ts.map +1 -0
- package/files/download-progress.js +28 -0
- package/files/source-content.js +1 -1
- package/files/useDialFileListing/useDialFileListing.js +51 -66
- package/files/useDialFileManager/useDialFileManager.d.ts.map +1 -1
- package/files/useDialFileManager/useDialFileManager.js +5 -2
- package/files/useDialFileManagerSections/useDialFileManagerSections.d.ts.map +1 -1
- package/files/useDialFileManagerSections/useDialFileManagerSections.js +59 -68
- package/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js +1 -1
- package/files/useDialFileMetadata/useDialFileMetadata.js +3 -3
- package/files/useDialFileMutations/useDialFileMutations.d.ts +9 -0
- package/files/useDialFileMutations/useDialFileMutations.d.ts.map +1 -1
- package/files/useDialFileMutations/useDialFileMutations.js +232 -159
- package/files/useDialFilePreview/useDialFilePreview.d.ts +33 -0
- package/files/useDialFilePreview/useDialFilePreview.d.ts.map +1 -0
- package/files/useDialFilePreview/useDialFilePreview.js +45 -0
- package/files/useDialFileUploadBatch/useDialFileUploadBatch.d.ts.map +1 -1
- package/files/useDialFileUploadBatch/useDialFileUploadBatch.js +114 -103
- package/files/useFileAttachmentModalState/useFileAttachmentModalState.d.ts +25 -0
- package/files/useFileAttachmentModalState/useFileAttachmentModalState.d.ts.map +1 -0
- package/files/useFileAttachmentModalState/useFileAttachmentModalState.js +19 -0
- package/files/useFileAttachmentPicker/useFileAttachmentPicker.js +2 -2
- package/files/useUnshareConfirmationState/useUnshareConfirmationState.d.ts +23 -0
- package/files/useUnshareConfirmationState/useUnshareConfirmationState.d.ts.map +1 -0
- package/files/useUnshareConfirmationState/useUnshareConfirmationState.js +18 -0
- package/index.d.ts +81 -0
- package/index.d.ts.map +1 -1
- package/index.js +244 -163
- package/mcp-apps/mcp-apps-api-client.d.ts.map +1 -1
- package/mcp-apps/mcp-apps-api-client.js +18 -17
- package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.d.ts +3 -2
- package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.d.ts.map +1 -1
- package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js +28 -10
- package/mcp-apps/useMcpAppTools/useMcpAppTools.d.ts.map +1 -1
- package/mcp-apps/useMcpAppTools/useMcpAppTools.js +45 -45
- package/oauth/authorize-url.d.ts +7 -1
- package/oauth/authorize-url.d.ts.map +1 -1
- package/oauth/authorize-url.js +14 -4
- package/oauth/callback-exchange.d.ts +49 -0
- package/oauth/callback-exchange.d.ts.map +1 -0
- package/oauth/callback-exchange.js +29 -0
- package/oauth/handshake.js +3 -10
- package/oauth/models.d.ts +25 -0
- package/oauth/models.d.ts.map +1 -1
- package/oauth/toolset-id.d.ts +7 -0
- package/oauth/toolset-id.d.ts.map +1 -1
- package/oauth/toolset-id.js +9 -2
- package/oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js +2 -5
- package/oauth/useToolsetLogin/useToolsetLogin.d.ts +7 -1
- package/oauth/useToolsetLogin/useToolsetLogin.d.ts.map +1 -1
- package/oauth/useToolsetLogin/useToolsetLogin.js +51 -42
- package/oauth.js +9 -8
- package/offline-credentials/map-offline-credentials-response.d.ts +5 -2
- package/offline-credentials/map-offline-credentials-response.d.ts.map +1 -1
- package/offline-credentials/map-offline-credentials-response.js +9 -7
- package/offline-credentials/scheduled-tasks-login-banner.d.ts +31 -0
- package/offline-credentials/scheduled-tasks-login-banner.d.ts.map +1 -0
- package/offline-credentials/scheduled-tasks-login-banner.js +17 -0
- package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.d.ts +5 -1
- package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.d.ts.map +1 -1
- package/offline-credentials/useOfflineCredentialsGate/useOfflineCredentialsGate.js +25 -22
- package/offline-credentials/useOfflineCredentialsLogin/useOfflineCredentialsLogin.js +13 -13
- package/offline-credentials.js +6 -4
- package/package.json +36 -26
- package/project/create-project-chat.d.ts +34 -0
- package/project/create-project-chat.d.ts.map +1 -0
- package/project/create-project-chat.js +27 -0
- package/project/project-conversation-data-source.d.ts +36 -0
- package/project/project-conversation-data-source.d.ts.map +1 -0
- package/project/project-conversation-data-source.js +67 -0
- package/project/project-events.d.ts +14 -0
- package/project/project-events.d.ts.map +1 -0
- package/project/project-events.js +25 -0
- package/project/project-file-preview.d.ts +32 -0
- package/project/project-file-preview.d.ts.map +1 -0
- package/project/project-file-preview.js +25 -0
- package/project/project-form-errors.d.ts +23 -0
- package/project/project-form-errors.d.ts.map +1 -0
- package/project/project-form-errors.js +46 -0
- package/project/project-limits.d.ts +17 -0
- package/project/project-limits.d.ts.map +1 -0
- package/project/project-limits.js +11 -0
- package/project/project-mapping.d.ts +16 -0
- package/project/project-mapping.d.ts.map +1 -0
- package/project/project-mapping.js +43 -0
- package/project/project-refresh.d.ts +12 -0
- package/project/project-refresh.d.ts.map +1 -0
- package/project/project-refresh.js +6 -0
- package/project/project-viewed-marks.d.ts +9 -0
- package/project/project-viewed-marks.d.ts.map +1 -0
- package/project/project-viewed-marks.js +8 -0
- package/project/project-watch-stream.d.ts +26 -0
- package/project/project-watch-stream.d.ts.map +1 -0
- package/project/project-watch-stream.js +39 -0
- package/project/projects-api-client.d.ts +179 -0
- package/project/projects-api-client.d.ts.map +1 -0
- package/project/projects-api-client.js +90 -0
- package/project/use-pinned-project-chats.d.ts +58 -0
- package/project/use-pinned-project-chats.d.ts.map +1 -0
- package/project/use-pinned-project-chats.js +269 -0
- package/project/use-project-actions.d.ts +53 -0
- package/project/use-project-actions.d.ts.map +1 -0
- package/project/use-project-actions.js +92 -0
- package/project/use-project-artifacts.d.ts +24 -0
- package/project/use-project-artifacts.d.ts.map +1 -0
- package/project/use-project-artifacts.js +78 -0
- package/project/use-project-conversations.d.ts +32 -0
- package/project/use-project-conversations.d.ts.map +1 -0
- package/project/use-project-conversations.js +200 -0
- package/project/use-project-draft.d.ts +46 -0
- package/project/use-project-draft.d.ts.map +1 -0
- package/project/use-project-draft.js +54 -0
- package/project/use-project-file-preview.d.ts +47 -0
- package/project/use-project-file-preview.d.ts.map +1 -0
- package/project/use-project-file-preview.js +50 -0
- package/project/use-project-submit.d.ts +49 -0
- package/project/use-project-submit.d.ts.map +1 -0
- package/project/use-project-submit.js +73 -0
- package/project/use-project-watch.d.ts +24 -0
- package/project/use-project-watch.d.ts.map +1 -0
- package/project/use-project-watch.js +41 -0
- package/project/use-project.d.ts +23 -0
- package/project/use-project.d.ts.map +1 -0
- package/project/use-project.js +73 -0
- package/project/use-projects.d.ts +27 -0
- package/project/use-projects.d.ts.map +1 -0
- package/project/use-projects.js +92 -0
- package/project.d.ts +2 -0
- package/project.js +20 -0
- package/prompt/prompt.d.ts +11 -0
- package/prompt/prompt.d.ts.map +1 -1
- package/prompt/prompt.js +7 -3
- package/scheduled-task/active-scheduled-task.d.ts +58 -0
- package/scheduled-task/active-scheduled-task.d.ts.map +1 -0
- package/scheduled-task/active-scheduled-task.js +18 -0
- package/scheduled-task/scheduled-task-description.d.ts +2 -0
- package/scheduled-task/scheduled-task-description.d.ts.map +1 -1
- package/scheduled-task/scheduled-task-description.js +33 -24
- package/scheduled-task/scheduled-task-display.d.ts +106 -0
- package/scheduled-task/scheduled-task-display.d.ts.map +1 -0
- package/scheduled-task/scheduled-task-display.js +69 -0
- package/scheduled-task/scheduled-task-next-occurrence.d.ts +9 -0
- package/scheduled-task/scheduled-task-next-occurrence.d.ts.map +1 -0
- package/scheduled-task/scheduled-task-next-occurrence.js +20 -0
- package/scheduled-task/scheduled-task-preparation.d.ts +1 -1
- package/scheduled-task/scheduled-task-trigger.d.ts.map +1 -1
- package/scheduled-task/scheduled-task-trigger.js +75 -48
- package/scheduled-task/use-scheduled-task-runs.js +19 -31
- package/scheduled-task/use-scheduled-tasks.d.ts +2 -2
- package/scheduled-task/use-scheduled-tasks.js +1 -1
- package/scheduled-task/useActiveScheduledTaskDetails.d.ts +18 -0
- package/scheduled-task/useActiveScheduledTaskDetails.d.ts.map +1 -0
- package/scheduled-task/useActiveScheduledTaskDetails.js +40 -0
- package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.d.ts +17 -0
- package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.d.ts.map +1 -0
- package/scheduled-task/useScheduledTaskSkillDisplayNames/useScheduledTaskSkillDisplayNames.js +29 -0
- package/scheduled-task/useStartScheduledTask.d.ts +41 -0
- package/scheduled-task/useStartScheduledTask.d.ts.map +1 -0
- package/scheduled-task/useStartScheduledTask.js +169 -0
- package/scheduled-tasks.js +13 -7
- package/scroll-anchoring.js +1 -2
- package/share-invitation/models.d.ts +46 -0
- package/share-invitation/models.d.ts.map +1 -0
- package/share-invitation/share-invitation-error.d.ts +6 -0
- package/share-invitation/share-invitation-error.d.ts.map +1 -0
- package/share-invitation/share-invitation-error.js +37 -0
- package/share-invitation/types.d.ts +10 -0
- package/share-invitation/types.d.ts.map +1 -0
- package/share-invitation/types.js +6 -0
- package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.d.ts +9 -0
- package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.d.ts.map +1 -0
- package/share-invitation/useAcceptShareInvitation/useAcceptShareInvitation.js +26 -0
- package/shared/application-schema.js +3 -3
- package/shared/client-channel.d.ts +53 -0
- package/shared/client-channel.d.ts.map +1 -0
- package/shared/client-channel.js +6 -0
- package/shared/cron-day-of-month.js +10 -10
- package/shared/external-services.d.ts +1 -1
- package/shared/locale.d.ts +6 -2
- package/shared/locale.d.ts.map +1 -1
- package/shared/locale.js +4 -4
- package/shared/read-sse-events.d.ts +10 -0
- package/shared/read-sse-events.d.ts.map +1 -0
- package/shared/read-sse-events.js +33 -0
- package/shared/serialized-writer.d.ts +12 -0
- package/shared/serialized-writer.d.ts.map +1 -0
- package/shared/serialized-writer.js +44 -0
- package/shared/sleep.d.ts +3 -0
- package/shared/sleep.d.ts.map +1 -0
- package/shared/sleep.js +13 -0
- package/shared/theme-colors.d.ts +16 -0
- package/shared/theme-colors.d.ts.map +1 -0
- package/shared/theme-colors.js +14 -0
- package/shared/url-cleanup.d.ts +18 -0
- package/shared/url-cleanup.d.ts.map +1 -0
- package/shared/url-cleanup.js +18 -0
- package/shared/usage-stat.d.ts +3 -0
- package/shared/usage-stat.d.ts.map +1 -0
- package/shared/usage-stat.js +4 -0
- package/shared/useAppVersionCheck/useAppVersionCheck.d.ts +22 -0
- package/shared/useAppVersionCheck/useAppVersionCheck.d.ts.map +1 -0
- package/shared/useAppVersionCheck/useAppVersionCheck.js +36 -0
- package/shared/usePersistedState/usePersistedState.d.ts +28 -0
- package/shared/usePersistedState/usePersistedState.d.ts.map +1 -0
- package/shared/usePersistedState/usePersistedState.js +24 -0
- package/sharing.js +5 -2
- package/signin-interrupt/models.d.ts +48 -0
- package/signin-interrupt/models.d.ts.map +1 -0
- package/signin-interrupt/signin-row-info.d.ts +10 -0
- package/signin-interrupt/signin-row-info.d.ts.map +1 -0
- package/signin-interrupt/signin-row-info.js +21 -0
- package/signin-interrupt/types.d.ts +28 -0
- package/signin-interrupt/types.d.ts.map +1 -0
- package/signin-interrupt/types.js +10 -0
- package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.d.ts +52 -0
- package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.d.ts.map +1 -0
- package/signin-interrupt/useSigninInterrupt/useSigninInterrupt.js +270 -0
- package/skill/skill-file-batch-validation.d.ts +4 -0
- package/skill/skill-file-batch-validation.d.ts.map +1 -1
- package/skill/skill-file-batch-validation.js +34 -33
- package/skill/skill-lookup.d.ts +20 -0
- package/skill/skill-lookup.d.ts.map +1 -0
- package/skill/skill-lookup.js +12 -0
- package/skill/skill-types.js +1 -1
- package/skill/skill.d.ts +5 -1
- package/skill/skill.d.ts.map +1 -1
- package/skill/skill.js +27 -28
- package/skill/useSkillArchiveImport/useSkillArchiveImport.js +1 -7
- package/skill/useSkillEditorSubmit.d.ts +15 -1
- package/skill/useSkillEditorSubmit.d.ts.map +1 -1
- package/skill/useSkillEditorSubmit.js +164 -87
- package/skill/useSkillFileActions.d.ts +2 -0
- package/skill/useSkillFileActions.d.ts.map +1 -1
- package/skill/useSkillFileActions.js +36 -21
- package/skill-editor/useSkillFilePreviewSyncController.d.ts +41 -0
- package/skill-editor/useSkillFilePreviewSyncController.d.ts.map +1 -0
- package/skill-editor/useSkillFilePreviewSyncController.js +58 -0
- package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.d.ts +23 -0
- package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.d.ts.map +1 -0
- package/skill-editor/useSkillFileSystemPicker/useSkillFileSystemPicker.js +43 -0
- package/skill-editor.js +11 -9
- package/skills-state.js +3 -2
- package/source-content.js +1 -2
- package/usage/map-user-usage-to-model-limits.d.ts.map +1 -1
- package/usage/map-user-usage-to-model-limits.js +24 -24
- package/usage/usage-banner-source.d.ts +8 -7
- package/usage/usage-banner-source.d.ts.map +1 -1
- package/usage/usage-banner-source.js +46 -21
- package/usage/usage-gauge.d.ts +3 -0
- package/usage/usage-gauge.d.ts.map +1 -0
- package/usage/usage-gauge.js +4 -0
- package/usage/usage-reset-time.d.ts +12 -3
- package/usage/usage-reset-time.d.ts.map +1 -1
- package/usage/usage-reset-time.js +48 -38
- package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.d.ts +42 -18
- package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.d.ts.map +1 -1
- package/usage/useDeploymentUsageLimits/useDeploymentUsageLimits.js +23 -28
- package/usage/useUsageLimitBanner/useUsageLimitBanner.d.ts +10 -8
- package/usage/useUsageLimitBanner/useUsageLimitBanner.d.ts.map +1 -1
- package/usage/useUsageLimitBanner/useUsageLimitBanner.js +28 -25
- package/usage/useUsageLimitBannerDismissal/useUsageLimitBannerDismissal.js +1 -1
- package/usage-limits.js +10 -8
- package/useChatSettingsFormConfig/useChatSettingsFormConfig.d.ts +2 -0
- package/useChatSettingsFormConfig/useChatSettingsFormConfig.d.ts.map +1 -1
- package/useChatSettingsFormConfig/useChatSettingsFormConfig.js +25 -21
- package/usePageFileDrag/usePageFileDrag.js +3 -3
- package/useShareLink/useShareLink.js +18 -18
- package/utils.js +23 -17
- package/viewport-layout/canvas-width.d.ts +39 -0
- package/viewport-layout/canvas-width.d.ts.map +1 -0
- package/viewport-layout/canvas-width.js +23 -0
- package/viewport-layout.js +2 -1
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { getApiErrorDetails as e } from "../api-error/api-error.js";
|
|
2
|
+
import { sanitizeFileName as t } from "../files/file-name.js";
|
|
3
|
+
import { ProjectCreateErrorCode as n } from "@epam/ai-dial-chat-api-client";
|
|
4
|
+
import { useCallback as r, useMemo as i, useState as a } from "react";
|
|
5
|
+
//#region src/project/use-project-actions.ts
|
|
6
|
+
var o = /* @__PURE__ */ function(e) {
|
|
7
|
+
return e.Pin = "pin", e.Unpin = "unpin", e.Download = "download", e.Delete = "delete", e.ChangedElsewhere = "changed-elsewhere", e;
|
|
8
|
+
}({}), s = (o, s, { isPinned: c, setPinned: l, saveFile: u, onArchiveDownloaded: d, onDeleted: f, onError: p, onReload: m, isDeleteOpen: h, onDeleteOpenChange: g }) => {
|
|
9
|
+
let [_, v] = a(!1), [y, b] = a(!1), [x, S] = a(!1), C = h != null, w = h ?? y, T = r((e) => {
|
|
10
|
+
C || b(e), g?.(e);
|
|
11
|
+
}, [C, g]), E = r(async (t, n) => {
|
|
12
|
+
let { traceId: r } = await e(t);
|
|
13
|
+
p(n, r);
|
|
14
|
+
}, [p]), D = r(async () => {
|
|
15
|
+
if (s != null) {
|
|
16
|
+
v(!0);
|
|
17
|
+
try {
|
|
18
|
+
await l(s.id, !c);
|
|
19
|
+
} catch (e) {
|
|
20
|
+
await E(e, c ? "unpin" : "pin");
|
|
21
|
+
} finally {
|
|
22
|
+
v(!1);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}, [
|
|
26
|
+
s,
|
|
27
|
+
c,
|
|
28
|
+
l,
|
|
29
|
+
E
|
|
30
|
+
]), O = r(async () => {
|
|
31
|
+
if (s != null) try {
|
|
32
|
+
let e = await u(await o.downloadProjectArchive(s.id), `${t(s.name)}.zip`);
|
|
33
|
+
d?.(e);
|
|
34
|
+
} catch (e) {
|
|
35
|
+
await E(e, "download");
|
|
36
|
+
}
|
|
37
|
+
}, [
|
|
38
|
+
o,
|
|
39
|
+
s,
|
|
40
|
+
u,
|
|
41
|
+
d,
|
|
42
|
+
E
|
|
43
|
+
]), k = r(() => T(!0), [T]), A = r(() => {
|
|
44
|
+
x || T(!1);
|
|
45
|
+
}, [x, T]), j = r(async () => {
|
|
46
|
+
if (s != null) {
|
|
47
|
+
S(!0);
|
|
48
|
+
try {
|
|
49
|
+
await o.deleteProject(s.id, s.contentVersion), T(!1), f(s);
|
|
50
|
+
} catch (t) {
|
|
51
|
+
let { code: r, traceId: i } = await e(t);
|
|
52
|
+
if (r === n.ProjectChanged) {
|
|
53
|
+
T(!1), p("changed-elsewhere", i), m();
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
p("delete", i);
|
|
57
|
+
} finally {
|
|
58
|
+
S(!1);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, [
|
|
62
|
+
o,
|
|
63
|
+
s,
|
|
64
|
+
T,
|
|
65
|
+
f,
|
|
66
|
+
p,
|
|
67
|
+
m
|
|
68
|
+
]);
|
|
69
|
+
return i(() => ({
|
|
70
|
+
isPinned: c,
|
|
71
|
+
isPinPending: _,
|
|
72
|
+
togglePin: D,
|
|
73
|
+
downloadArchive: O,
|
|
74
|
+
isDeleteOpen: w,
|
|
75
|
+
isDeleting: x,
|
|
76
|
+
requestDelete: k,
|
|
77
|
+
cancelDelete: A,
|
|
78
|
+
confirmDelete: j
|
|
79
|
+
}), [
|
|
80
|
+
c,
|
|
81
|
+
_,
|
|
82
|
+
D,
|
|
83
|
+
O,
|
|
84
|
+
w,
|
|
85
|
+
x,
|
|
86
|
+
k,
|
|
87
|
+
A,
|
|
88
|
+
j
|
|
89
|
+
]);
|
|
90
|
+
};
|
|
91
|
+
//#endregion
|
|
92
|
+
export { o as ProjectActionError, s as useProjectActions };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ProjectArtifactItemDto } from '@epam/ai-dial-chat-api-client';
|
|
2
|
+
import { ProjectsApiClient } from './projects-api-client';
|
|
3
|
+
/**
|
|
4
|
+
* Loads the files the agents of a project's chats saved under its
|
|
5
|
+
* `artifacts/` folder, for the project view's Outputs section, and keeps them
|
|
6
|
+
* in local state. The list is read once per project (and on retry), and
|
|
7
|
+
* `refresh` silently re-reads it for live updates, keeping the shown outputs
|
|
8
|
+
* when it fails. A `refresh` that arrives while a read is in flight is not
|
|
9
|
+
* dropped: that read lists once more before it settles. A retry keeps
|
|
10
|
+
* `hasError` until its read settles, so the host's error UI stays in place. A
|
|
11
|
+
* request is aborted by a newer one, a project change or unmount.
|
|
12
|
+
*
|
|
13
|
+
* @param client - Configured project requests, from `createProjectsApiClient`; it must be referentially stable, because a new object reloads the list.
|
|
14
|
+
* @param projectId - The project's DIAL id, or `null` while none is known.
|
|
15
|
+
*/
|
|
16
|
+
export declare const useProjectArtifacts: (client: Pick<ProjectsApiClient, "listProjectArtifacts">, projectId: string | null) => {
|
|
17
|
+
retry: () => void;
|
|
18
|
+
refresh: () => Promise<void>;
|
|
19
|
+
/** The project's outputs, newest first, as the BFF lists them. */
|
|
20
|
+
items: ProjectArtifactItemDto[];
|
|
21
|
+
isLoading: boolean;
|
|
22
|
+
hasError: boolean;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=use-project-artifacts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-project-artifacts.d.ts","sourceRoot":"","sources":["../../src/project/use-project-artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAoB/D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,IAAI,CAAC,iBAAiB,EAAE,sBAAsB,CAAC,EACvD,WAAW,MAAM,GAAG,IAAI;;;IAhCxB,kEAAkE;WAC3D,sBAAsB,EAAE;eACpB,OAAO;cACR,OAAO;CAyGlB,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { useCallback as e, useEffect as t, useRef as n, useState as r } from "react";
|
|
2
|
+
//#region src/project/use-project-artifacts.ts
|
|
3
|
+
var i = {
|
|
4
|
+
items: [],
|
|
5
|
+
isLoading: !0,
|
|
6
|
+
hasError: !1
|
|
7
|
+
}, a = {
|
|
8
|
+
...i,
|
|
9
|
+
isLoading: !1
|
|
10
|
+
}, o = (o, s) => {
|
|
11
|
+
let [c, l] = r(i), [u, d] = r(0), f = n(null), p = n(!1), m = n(null), h = n(c);
|
|
12
|
+
t(() => {
|
|
13
|
+
h.current = c;
|
|
14
|
+
}), t(() => {
|
|
15
|
+
let e = m.current === s;
|
|
16
|
+
if (m.current = s, s == null) {
|
|
17
|
+
l(a);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
let t = new AbortController();
|
|
21
|
+
return p.current = !1, (async () => {
|
|
22
|
+
l((t) => e ? {
|
|
23
|
+
...t,
|
|
24
|
+
isLoading: !0
|
|
25
|
+
} : i);
|
|
26
|
+
try {
|
|
27
|
+
let e;
|
|
28
|
+
do
|
|
29
|
+
if (p.current = !1, {items: e} = await o.listProjectArtifacts(s, t.signal), t.signal.aborted) return;
|
|
30
|
+
while (p.current);
|
|
31
|
+
l({
|
|
32
|
+
items: e,
|
|
33
|
+
isLoading: !1,
|
|
34
|
+
hasError: !1
|
|
35
|
+
});
|
|
36
|
+
} catch {
|
|
37
|
+
if (t.signal.aborted) return;
|
|
38
|
+
l({
|
|
39
|
+
...a,
|
|
40
|
+
hasError: !0
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
})(), () => {
|
|
44
|
+
t.abort(), f.current?.abort();
|
|
45
|
+
};
|
|
46
|
+
}, [
|
|
47
|
+
o,
|
|
48
|
+
s,
|
|
49
|
+
u
|
|
50
|
+
]);
|
|
51
|
+
let g = e(() => d((e) => e + 1), []), _ = e(async () => {
|
|
52
|
+
let e = h.current;
|
|
53
|
+
if (s == null) return;
|
|
54
|
+
if (e.isLoading) {
|
|
55
|
+
p.current = !0;
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
if (e.hasError) return;
|
|
59
|
+
f.current?.abort();
|
|
60
|
+
let t = new AbortController();
|
|
61
|
+
f.current = t;
|
|
62
|
+
try {
|
|
63
|
+
let { items: e } = await o.listProjectArtifacts(s, t.signal);
|
|
64
|
+
if (t.signal.aborted) return;
|
|
65
|
+
l((t) => ({
|
|
66
|
+
...t,
|
|
67
|
+
items: e
|
|
68
|
+
}));
|
|
69
|
+
} catch {}
|
|
70
|
+
}, [o, s]);
|
|
71
|
+
return {
|
|
72
|
+
...c,
|
|
73
|
+
retry: g,
|
|
74
|
+
refresh: _
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
//#endregion
|
|
78
|
+
export { o as useProjectArtifacts };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ProjectConversationListItem } from '@epam/ai-dial-projects';
|
|
2
|
+
import { ProjectsApiClient } from './projects-api-client';
|
|
3
|
+
/**
|
|
4
|
+
* Loads a project's conversations for its Chats list and keeps them in local
|
|
5
|
+
* state. DIAL Core cannot page them in display order, so the whole list is
|
|
6
|
+
* read once per project (and on retry) and paged here: the list shows the
|
|
7
|
+
* first 20, and `loadMore` shows 20 more after reading the titles the list
|
|
8
|
+
* left pending. `refresh` silently re-reads the whole list for live updates,
|
|
9
|
+
* and rename, delete and `markViewed` update it in place. Requests are
|
|
10
|
+
* aborted when the project changes or the view unmounts. Rename, delete and
|
|
11
|
+
* `loadMore` reject on failure for the caller's toast.
|
|
12
|
+
*
|
|
13
|
+
* @param client - Configured project requests, from `createProjectsApiClient`; it must be referentially stable, because a new object reloads the list.
|
|
14
|
+
* @param projectId - The project's DIAL id, or `null` while none is known.
|
|
15
|
+
*/
|
|
16
|
+
export declare const useProjectConversations: (client: Pick<ProjectsApiClient, "listProjectConversations" | "getProjectConversationTitles" | "renameProjectConversation" | "generateProjectConversationTitle" | "deleteProjectConversation" | "markProjectConversationViewed">, projectId: string | null) => {
|
|
17
|
+
items: ProjectConversationListItem[];
|
|
18
|
+
isLoading: boolean;
|
|
19
|
+
hasError: boolean;
|
|
20
|
+
/** More conversations exist after `items`. */
|
|
21
|
+
hasMore: boolean;
|
|
22
|
+
/** The titles of the next conversations are being read. */
|
|
23
|
+
isLoadingMore: boolean;
|
|
24
|
+
retry: () => void;
|
|
25
|
+
loadMore: () => Promise<void>;
|
|
26
|
+
rename: (id: string, newTitle: string) => Promise<void>;
|
|
27
|
+
generateTitle: (id: string) => Promise<string>;
|
|
28
|
+
remove: (id: string) => Promise<void>;
|
|
29
|
+
refresh: () => Promise<void>;
|
|
30
|
+
markViewed: (id: string) => void;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=use-project-conversations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-project-conversations.d.ts","sourceRoot":"","sources":["../../src/project/use-project-conversations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAG1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA8E/D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB,GAClC,QAAQ,IAAI,CACV,iBAAiB,EACf,0BAA0B,GAC1B,8BAA8B,GAC9B,2BAA2B,GAC3B,kCAAkC,GAClC,2BAA2B,GAC3B,+BAA+B,CAClC,EACD,WAAW,MAAM,GAAG,IAAI;;;;IAqOtB,8CAA8C;;IAE9C,2DAA2D;;;;iBAlDhD,MAAM,YAAY,MAAM;wBAaxB,MAAM;iBAQN,MAAM;;qBA1CZ,MAAM;CAiFd,CAAC"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { applyViewedMark as e } from "./project-viewed-marks.js";
|
|
2
|
+
import { useCallback as t, useEffect as n, useMemo as r, useRef as i, useState as a } from "react";
|
|
3
|
+
//#region src/project/use-project-conversations.ts
|
|
4
|
+
var o = 20, s = 100, c = {
|
|
5
|
+
rows: [],
|
|
6
|
+
visibleCount: o,
|
|
7
|
+
isLoading: !0,
|
|
8
|
+
hasError: !1,
|
|
9
|
+
isLoadingMore: !1
|
|
10
|
+
}, l = {
|
|
11
|
+
...c,
|
|
12
|
+
isLoading: !1
|
|
13
|
+
}, u = (t, n) => t.map((t) => {
|
|
14
|
+
let { id: r, name: i, title: a, author: o, isTitlePending: s } = t;
|
|
15
|
+
return {
|
|
16
|
+
id: r,
|
|
17
|
+
name: i,
|
|
18
|
+
title: a,
|
|
19
|
+
authorName: o,
|
|
20
|
+
isTitlePending: s === !0,
|
|
21
|
+
...e(n, t) ? { isUnread: !0 } : {}
|
|
22
|
+
};
|
|
23
|
+
}), d = (e, t) => {
|
|
24
|
+
if (t.length === 0) return e;
|
|
25
|
+
let n = new Map(t.map((e) => [e.id, e]));
|
|
26
|
+
return e.map((e) => n.get(e.id) ?? e);
|
|
27
|
+
}, f = ({ id: e, title: t, authorName: n, isUnread: r }) => ({
|
|
28
|
+
id: e,
|
|
29
|
+
title: t,
|
|
30
|
+
authorName: n,
|
|
31
|
+
...r ? { isUnread: !0 } : {}
|
|
32
|
+
}), p = (e, p) => {
|
|
33
|
+
let [m, h] = a(c), [g, _] = a(0), v = i(null), y = i(null), b = i(!1), x = i(/* @__PURE__ */ new Map()), S = i(/* @__PURE__ */ new Map()), C = i(m);
|
|
34
|
+
n(() => {
|
|
35
|
+
C.current = m;
|
|
36
|
+
});
|
|
37
|
+
let w = t((e) => {
|
|
38
|
+
for (let { id: t, updatedAt: n } of e) S.current.set(t, n);
|
|
39
|
+
}, []), T = t(async (t, n) => {
|
|
40
|
+
if (p == null) return [];
|
|
41
|
+
let r = t.filter((e) => e.isTitlePending).map((e) => e.name), i = [];
|
|
42
|
+
for (let t = 0; t < r.length; t += s) {
|
|
43
|
+
let { items: a } = await e.getProjectConversationTitles(p, r.slice(t, t + s), n);
|
|
44
|
+
i.push(...a);
|
|
45
|
+
}
|
|
46
|
+
return w(i), u(i, x.current);
|
|
47
|
+
}, [
|
|
48
|
+
e,
|
|
49
|
+
p,
|
|
50
|
+
w
|
|
51
|
+
]), E = t(async (e, t, n) => {
|
|
52
|
+
try {
|
|
53
|
+
let r = await T(e.slice(0, t), n);
|
|
54
|
+
if (n.aborted) return;
|
|
55
|
+
h((e) => ({
|
|
56
|
+
...e,
|
|
57
|
+
rows: d(e.rows, r)
|
|
58
|
+
}));
|
|
59
|
+
} catch {}
|
|
60
|
+
}, [T]);
|
|
61
|
+
n(() => {
|
|
62
|
+
if (x.current = /* @__PURE__ */ new Map(), S.current = /* @__PURE__ */ new Map(), p == null) {
|
|
63
|
+
h(l);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
let t = new AbortController();
|
|
67
|
+
return v.current = t, (async () => {
|
|
68
|
+
h((e) => ({
|
|
69
|
+
...e,
|
|
70
|
+
isLoading: !0,
|
|
71
|
+
hasError: !1,
|
|
72
|
+
isLoadingMore: !1
|
|
73
|
+
}));
|
|
74
|
+
try {
|
|
75
|
+
let { items: n } = await e.listProjectConversations(p, t.signal);
|
|
76
|
+
if (t.signal.aborted) return;
|
|
77
|
+
w(n), h({
|
|
78
|
+
...l,
|
|
79
|
+
rows: u(n, x.current)
|
|
80
|
+
});
|
|
81
|
+
} catch {
|
|
82
|
+
if (t.signal.aborted) return;
|
|
83
|
+
h({
|
|
84
|
+
...l,
|
|
85
|
+
hasError: !0
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
})(), () => {
|
|
89
|
+
t.abort(), y.current?.abort();
|
|
90
|
+
};
|
|
91
|
+
}, [
|
|
92
|
+
e,
|
|
93
|
+
p,
|
|
94
|
+
g,
|
|
95
|
+
w
|
|
96
|
+
]);
|
|
97
|
+
let D = t(() => _((e) => e + 1), []), O = t(async () => {
|
|
98
|
+
let e = v.current, t = C.current;
|
|
99
|
+
if (p == null || e == null || b.current) return;
|
|
100
|
+
b.current = !0;
|
|
101
|
+
let n = t.visibleCount + o, r = t.rows.slice(t.visibleCount, n);
|
|
102
|
+
h((e) => ({
|
|
103
|
+
...e,
|
|
104
|
+
isLoadingMore: !0
|
|
105
|
+
}));
|
|
106
|
+
try {
|
|
107
|
+
let t = await T(r, e.signal);
|
|
108
|
+
if (e.signal.aborted) return;
|
|
109
|
+
h((e) => ({
|
|
110
|
+
...e,
|
|
111
|
+
rows: d(e.rows, t),
|
|
112
|
+
visibleCount: Math.max(e.visibleCount, n),
|
|
113
|
+
isLoadingMore: !1
|
|
114
|
+
}));
|
|
115
|
+
} catch (t) {
|
|
116
|
+
if (e.signal.aborted) return;
|
|
117
|
+
throw h((e) => ({
|
|
118
|
+
...e,
|
|
119
|
+
isLoadingMore: !1
|
|
120
|
+
})), t;
|
|
121
|
+
} finally {
|
|
122
|
+
b.current = !1;
|
|
123
|
+
}
|
|
124
|
+
}, [p, T]), k = t(async () => {
|
|
125
|
+
let t = C.current;
|
|
126
|
+
if (p == null || t.isLoading || t.hasError) return;
|
|
127
|
+
y.current?.abort();
|
|
128
|
+
let n = new AbortController();
|
|
129
|
+
y.current = n;
|
|
130
|
+
let r;
|
|
131
|
+
try {
|
|
132
|
+
let { items: t } = await e.listProjectConversations(p, n.signal);
|
|
133
|
+
if (n.signal.aborted) return;
|
|
134
|
+
w(t), r = u(t, x.current);
|
|
135
|
+
} catch {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
h((e) => ({
|
|
139
|
+
...e,
|
|
140
|
+
rows: r
|
|
141
|
+
})), await E(r, C.current.visibleCount, n.signal);
|
|
142
|
+
}, [
|
|
143
|
+
e,
|
|
144
|
+
E,
|
|
145
|
+
p,
|
|
146
|
+
w
|
|
147
|
+
]);
|
|
148
|
+
n(() => () => y.current?.abort(), []);
|
|
149
|
+
let A = t((t) => {
|
|
150
|
+
x.current.set(t, S.current.get(t)), h((e) => ({
|
|
151
|
+
...e,
|
|
152
|
+
rows: e.rows.map((e) => e.id === t && e.isUnread ? {
|
|
153
|
+
...e,
|
|
154
|
+
isUnread: !1
|
|
155
|
+
} : e)
|
|
156
|
+
})), (async () => {
|
|
157
|
+
try {
|
|
158
|
+
await e.markProjectConversationViewed?.(t);
|
|
159
|
+
} catch {}
|
|
160
|
+
})();
|
|
161
|
+
}, [e]), j = t(async (t, n) => {
|
|
162
|
+
let { name: r } = await e.renameProjectConversation(t, n);
|
|
163
|
+
h((e) => ({
|
|
164
|
+
...e,
|
|
165
|
+
rows: e.rows.map((e) => e.id === t ? {
|
|
166
|
+
...e,
|
|
167
|
+
title: r,
|
|
168
|
+
isTitlePending: !1
|
|
169
|
+
} : e)
|
|
170
|
+
}));
|
|
171
|
+
}, [e]), M = t(async (t) => {
|
|
172
|
+
let { name: n } = await e.generateProjectConversationTitle(t);
|
|
173
|
+
return n;
|
|
174
|
+
}, [e]), N = t(async (t) => {
|
|
175
|
+
await e.deleteProjectConversation(t);
|
|
176
|
+
let { rows: n, visibleCount: r } = C.current, i = n.filter((e) => e.id !== t);
|
|
177
|
+
h((e) => ({
|
|
178
|
+
...e,
|
|
179
|
+
rows: e.rows.filter((e) => e.id !== t)
|
|
180
|
+
}));
|
|
181
|
+
let a = v.current;
|
|
182
|
+
a != null && E(i, r, a.signal);
|
|
183
|
+
}, [e, E]), { rows: P, visibleCount: F, isLoading: I, hasError: L, isLoadingMore: R } = m;
|
|
184
|
+
return {
|
|
185
|
+
items: r(() => P.slice(0, F).map(f), [P, F]),
|
|
186
|
+
isLoading: I,
|
|
187
|
+
hasError: L,
|
|
188
|
+
hasMore: F < P.length,
|
|
189
|
+
isLoadingMore: R,
|
|
190
|
+
retry: D,
|
|
191
|
+
loadMore: O,
|
|
192
|
+
rename: j,
|
|
193
|
+
generateTitle: M,
|
|
194
|
+
remove: N,
|
|
195
|
+
refresh: k,
|
|
196
|
+
markViewed: A
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
//#endregion
|
|
200
|
+
export { p as useProjectConversations };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { ProjectDetailsDto } from '@epam/ai-dial-chat-api-client';
|
|
2
|
+
import { ProjectContextFile, ProjectCreateFormErrors, ProjectCreateFormValues } from '@epam/ai-dial-projects';
|
|
3
|
+
import { Dispatch, SetStateAction } from 'react';
|
|
4
|
+
/** Which project form a {@link useProjectDraft} draft backs. */
|
|
5
|
+
export declare enum ProjectDraftMode {
|
|
6
|
+
/** The New project form: empty at the start, nothing stored yet. */
|
|
7
|
+
Create = "create",
|
|
8
|
+
/** The Edit project form: seeded from a loaded project. */
|
|
9
|
+
Edit = "edit"
|
|
10
|
+
}
|
|
11
|
+
/** Mode of a {@link useProjectDraft} draft, and the loaded project of an edit draft. */
|
|
12
|
+
export type UseProjectDraftOptions = {
|
|
13
|
+
/** The New project form. */
|
|
14
|
+
mode: ProjectDraftMode.Create;
|
|
15
|
+
} | {
|
|
16
|
+
/** The Edit project form. */
|
|
17
|
+
mode: ProjectDraftMode.Edit;
|
|
18
|
+
/** The loaded project, or `null` while none is; the draft is seeded once per its `contentVersion`. */
|
|
19
|
+
project: ProjectDetailsDto | null;
|
|
20
|
+
};
|
|
21
|
+
/** State and handlers of a project form draft. */
|
|
22
|
+
export interface UseProjectDraftResult {
|
|
23
|
+
/** Name and instructions as typed. */
|
|
24
|
+
values: ProjectCreateFormValues;
|
|
25
|
+
/** The form's context file cards: stored files (edit mode) and files added in this session. */
|
|
26
|
+
contextFiles: ProjectContextFile[];
|
|
27
|
+
/** Field errors the host set, e.g. from a rejected request. */
|
|
28
|
+
errors: ProjectCreateFormErrors;
|
|
29
|
+
/** Sets the field errors, for a rejection the host maps to a field. */
|
|
30
|
+
setErrors: Dispatch<SetStateAction<ProjectCreateFormErrors>>;
|
|
31
|
+
/** Changes one text field; a change to the name clears its error. */
|
|
32
|
+
onFieldChange: <K extends keyof ProjectCreateFormValues>(field: K, value: ProjectCreateFormValues[K]) => void;
|
|
33
|
+
/** Replaces the context file cards and clears the context error. */
|
|
34
|
+
onContextFilesChange: (files: ProjectContextFile[]) => void;
|
|
35
|
+
/** Whether the draft is ready to submit: always in create mode, once seeded from the loaded project in edit mode. */
|
|
36
|
+
isSeeded: boolean;
|
|
37
|
+
/** Whether the draft holds edits that leaving would discard. */
|
|
38
|
+
isDirty: boolean;
|
|
39
|
+
/** Names of stored files the user removed (edit mode); empty in create mode. */
|
|
40
|
+
removedFileNames: string[];
|
|
41
|
+
/** Files added in this session, not yet stored. */
|
|
42
|
+
newFiles: File[];
|
|
43
|
+
}
|
|
44
|
+
/** Owns the form state of the New project and Edit project pages: values, context files, field errors, dirtiness, and the removed and new files a save sends. */
|
|
45
|
+
export declare const useProjectDraft: (options: UseProjectDraftOptions) => UseProjectDraftResult;
|
|
46
|
+
//# sourceMappingURL=use-project-draft.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-project-draft.d.ts","sourceRoot":"","sources":["../../src/project/use-project-draft.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAKL,KAAK,QAAQ,EACb,KAAK,cAAc,EACpB,MAAM,OAAO,CAAC;AAGf,gEAAgE;AAChE,oBAAY,gBAAgB;IAC1B,oEAAoE;IACpE,MAAM,WAAW;IACjB,2DAA2D;IAC3D,IAAI,SAAS;CACd;AAED,wFAAwF;AACxF,MAAM,MAAM,sBAAsB,GAC9B;IACE,4BAA4B;IAC5B,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC;CAC/B,GACD;IACE,6BAA6B;IAC7B,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAC5B,sGAAsG;IACtG,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACnC,CAAC;AAEN,kDAAkD;AAClD,MAAM,WAAW,qBAAqB;IACpC,sCAAsC;IACtC,MAAM,EAAE,uBAAuB,CAAC;IAChC,+FAA+F;IAC/F,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACnC,+DAA+D;IAC/D,MAAM,EAAE,uBAAuB,CAAC;IAChC,uEAAuE;IACvE,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAC7D,qEAAqE;IACrE,aAAa,EAAE,CAAC,CAAC,SAAS,MAAM,uBAAuB,EACrD,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,uBAAuB,CAAC,CAAC,CAAC,KAC9B,IAAI,CAAC;IACV,oEAAoE;IACpE,oBAAoB,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,IAAI,CAAC;IAC5D,qHAAqH;IACrH,QAAQ,EAAE,OAAO,CAAC;IAClB,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,EAAE,IAAI,EAAE,CAAC;CAClB;AAKD,iKAAiK;AACjK,eAAO,MAAM,eAAe,GAC1B,SAAS,sBAAsB,KAC9B,qBA4FF,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { mapStoredContextFiles as e } from "./project-mapping.js";
|
|
2
|
+
import { useCallback as t, useEffect as n, useMemo as r, useState as i } from "react";
|
|
3
|
+
import { isStoredContextFile as a } from "@epam/ai-dial-projects";
|
|
4
|
+
//#region src/project/use-project-draft.ts
|
|
5
|
+
var o = /* @__PURE__ */ function(e) {
|
|
6
|
+
return e.Create = "create", e.Edit = "edit", e;
|
|
7
|
+
}({}), s = {
|
|
8
|
+
name: "",
|
|
9
|
+
instructions: ""
|
|
10
|
+
}, c = [], l = (o) => {
|
|
11
|
+
let l = o.mode === "edit" ? o.project : null, u = o.mode === "edit", [d, f] = i(s), [p, m] = i(c), [h, g] = i({}), [_, v] = i(null);
|
|
12
|
+
n(() => {
|
|
13
|
+
u && l != null && l.contentVersion !== _ && (f({
|
|
14
|
+
name: l.name,
|
|
15
|
+
instructions: l.instructions
|
|
16
|
+
}), m(e(l)), g({}), v(l.contentVersion));
|
|
17
|
+
}, [
|
|
18
|
+
u,
|
|
19
|
+
l,
|
|
20
|
+
_
|
|
21
|
+
]);
|
|
22
|
+
let y = r(() => {
|
|
23
|
+
if (l == null) return [];
|
|
24
|
+
let e = new Set(p.filter(a).map((e) => e.name));
|
|
25
|
+
return l.contextFiles.map((e) => e.name).filter((t) => !e.has(t));
|
|
26
|
+
}, [l, p]), b = r(() => p.flatMap((e) => a(e) ? [] : [e.file]), [p]), x = !u || l != null && _ === l.contentVersion, S = u ? l != null && x && (d.name !== l.name || d.instructions !== l.instructions || y.length > 0 || b.length > 0) : d.name !== "" || d.instructions !== "" || p.length > 0;
|
|
27
|
+
return {
|
|
28
|
+
values: d,
|
|
29
|
+
contextFiles: p,
|
|
30
|
+
errors: h,
|
|
31
|
+
setErrors: g,
|
|
32
|
+
onFieldChange: t((e, t) => {
|
|
33
|
+
f((n) => ({
|
|
34
|
+
...n,
|
|
35
|
+
[e]: t
|
|
36
|
+
})), e === "name" && g((e) => e.name ? {
|
|
37
|
+
...e,
|
|
38
|
+
name: void 0
|
|
39
|
+
} : e);
|
|
40
|
+
}, []),
|
|
41
|
+
onContextFilesChange: t((e) => {
|
|
42
|
+
m(e), g((e) => e.context ? {
|
|
43
|
+
...e,
|
|
44
|
+
context: void 0
|
|
45
|
+
} : e);
|
|
46
|
+
}, []),
|
|
47
|
+
isSeeded: x,
|
|
48
|
+
isDirty: S,
|
|
49
|
+
removedFileNames: y,
|
|
50
|
+
newFiles: b
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
//#endregion
|
|
54
|
+
export { o as ProjectDraftMode, l as useProjectDraft };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { DisplayAttachment } from '@epam/ai-dial-chat-shared';
|
|
2
|
+
import { ProjectFileDownloadUrlResolver } from './project-file-preview';
|
|
3
|
+
/** Tells whether the request that produced a result may still show it; `false` once a newer request superseded it. */
|
|
4
|
+
export type ProjectPreviewCommitGuard = () => boolean;
|
|
5
|
+
/** Opens an attachment in the host's canvas under a key, showing it only while the guard allows; the host's `openAttachmentCanvas` fits. */
|
|
6
|
+
export type OpenProjectPreviewAttachment = (attachment: DisplayAttachment, canvasAttachmentId: string, shouldCommit: ProjectPreviewCommitGuard) => unknown;
|
|
7
|
+
/** Host canvas operations and card lookups for the project file preview. */
|
|
8
|
+
export interface UseProjectFilePreviewOptions {
|
|
9
|
+
/** Id of the project the page shows, or a fixed value before it exists; it keeps one file name in two projects apart. */
|
|
10
|
+
scope: string;
|
|
11
|
+
/** Id of the attachment the canvas holds now, or `undefined` when it is closed. */
|
|
12
|
+
attachmentId: string | undefined;
|
|
13
|
+
/** Opens an attachment in the canvas under a key. */
|
|
14
|
+
openAttachment: OpenProjectPreviewAttachment;
|
|
15
|
+
/** Closes the canvas. */
|
|
16
|
+
closeCanvas: () => void;
|
|
17
|
+
/** Starts a canvas request and returns the guard that says whether it is still the latest. */
|
|
18
|
+
startRequest: () => ProjectPreviewCommitGuard;
|
|
19
|
+
/** Returns the attachment to open for a context card id, or `undefined` for a card the page does not hold; it should keep its identity while the cards are unchanged. */
|
|
20
|
+
resolveContextAttachment: (cardId: string) => DisplayAttachment | undefined;
|
|
21
|
+
/** Returns the attachment to open for an output name; omit it where outputs are not shown. */
|
|
22
|
+
resolveOutputAttachment?: (name: string) => DisplayAttachment | undefined;
|
|
23
|
+
/** Resolves a stored file's locator to its download URL; when omitted, only files added in this session download. */
|
|
24
|
+
resolveDownloadUrl?: ProjectFileDownloadUrlResolver;
|
|
25
|
+
}
|
|
26
|
+
/** Selection state and stable card callbacks of the project file preview. */
|
|
27
|
+
export interface UseProjectFilePreviewResult {
|
|
28
|
+
/** Card id of the open project file, an output's card id included, or `undefined` when none of this scope is open. */
|
|
29
|
+
selectedCardId: string | undefined;
|
|
30
|
+
/** Card id of the open context file; `undefined` while an output or nothing is open. */
|
|
31
|
+
selectedContextFileId: string | undefined;
|
|
32
|
+
/** Name of the open output; `undefined` while a context file or nothing is open. */
|
|
33
|
+
selectedOutputName: string | undefined;
|
|
34
|
+
/** Opens a context card, or closes the canvas when that card is already open. */
|
|
35
|
+
onContextFileClick: (cardId: string) => void;
|
|
36
|
+
/** Opens an output, or closes the canvas when that output is already open. */
|
|
37
|
+
onOutputClick: (name: string) => void;
|
|
38
|
+
/** Downloads a context card's file without opening it in the canvas. */
|
|
39
|
+
onContextFileDownload: (cardId: string) => void;
|
|
40
|
+
/** Closes the canvas when the open context card is no longer among the page's cards. */
|
|
41
|
+
closeIfRemoved: (cards: readonly {
|
|
42
|
+
id: string;
|
|
43
|
+
}[]) => void;
|
|
44
|
+
}
|
|
45
|
+
/** Opens project files in the host's attachment canvas for the New project, Edit project and project view pages, deriving the selected card from the canvas. */
|
|
46
|
+
export declare const useProjectFilePreview: ({ scope, attachmentId, openAttachment, closeCanvas, startRequest, resolveContextAttachment, resolveOutputAttachment, resolveDownloadUrl, }: UseProjectFilePreviewOptions) => UseProjectFilePreviewResult;
|
|
47
|
+
//# sourceMappingURL=use-project-file-preview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-project-file-preview.d.ts","sourceRoot":"","sources":["../../src/project/use-project-file-preview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAIL,KAAK,8BAA8B,EAGpC,MAAM,wBAAwB,CAAC;AAEhC,sHAAsH;AACtH,MAAM,MAAM,yBAAyB,GAAG,MAAM,OAAO,CAAC;AAEtD,4IAA4I;AAC5I,MAAM,MAAM,4BAA4B,GAAG,CACzC,UAAU,EAAE,iBAAiB,EAC7B,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,yBAAyB,KACpC,OAAO,CAAC;AAEb,4EAA4E;AAC5E,MAAM,WAAW,4BAA4B;IAC3C,yHAAyH;IACzH,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,qDAAqD;IACrD,cAAc,EAAE,4BAA4B,CAAC;IAC7C,yBAAyB;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,8FAA8F;IAC9F,YAAY,EAAE,MAAM,yBAAyB,CAAC;IAC9C,yKAAyK;IACzK,wBAAwB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,iBAAiB,GAAG,SAAS,CAAC;IAC5E,8FAA8F;IAC9F,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,iBAAiB,GAAG,SAAS,CAAC;IAC1E,qHAAqH;IACrH,kBAAkB,CAAC,EAAE,8BAA8B,CAAC;CACrD;AAED,6EAA6E;AAC7E,MAAM,WAAW,2BAA2B;IAC1C,sHAAsH;IACtH,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,wFAAwF;IACxF,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,oFAAoF;IACpF,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,iFAAiF;IACjF,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,8EAA8E;IAC9E,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,wEAAwE;IACxE,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,wFAAwF;IACxF,cAAc,EAAE,CAAC,KAAK,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,IAAI,CAAC;CAC5D;AAED,gKAAgK;AAChK,eAAO,MAAM,qBAAqB,GAAI,4IASnC,4BAA4B,KAAG,2BAuFjC,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { downloadProjectFileAttachment as e, fromProjectOutputCardId as t, fromProjectPreviewKey as n, toProjectOutputCardId as r, toProjectPreviewKey as i } from "./project-file-preview.js";
|
|
2
|
+
import { useCallback as a } from "react";
|
|
3
|
+
//#region src/project/use-project-file-preview.ts
|
|
4
|
+
var o = ({ scope: o, attachmentId: s, openAttachment: c, closeCanvas: l, startRequest: u, resolveContextAttachment: d, resolveOutputAttachment: f, resolveDownloadUrl: p }) => {
|
|
5
|
+
let m = n(o, s), h = t(m), g = h == null ? m : void 0;
|
|
6
|
+
return {
|
|
7
|
+
selectedCardId: m,
|
|
8
|
+
selectedContextFileId: g,
|
|
9
|
+
selectedOutputName: h,
|
|
10
|
+
onContextFileClick: a((e) => {
|
|
11
|
+
if (e === g) {
|
|
12
|
+
l();
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
let t = d(e);
|
|
16
|
+
t && c(t, i(o, e), u());
|
|
17
|
+
}, [
|
|
18
|
+
l,
|
|
19
|
+
c,
|
|
20
|
+
d,
|
|
21
|
+
o,
|
|
22
|
+
g,
|
|
23
|
+
u
|
|
24
|
+
]),
|
|
25
|
+
onOutputClick: a((e) => {
|
|
26
|
+
if (e === h) {
|
|
27
|
+
l();
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
let t = f?.(e);
|
|
31
|
+
t && c(t, i(o, r(e)), u());
|
|
32
|
+
}, [
|
|
33
|
+
l,
|
|
34
|
+
c,
|
|
35
|
+
f,
|
|
36
|
+
o,
|
|
37
|
+
h,
|
|
38
|
+
u
|
|
39
|
+
]),
|
|
40
|
+
onContextFileDownload: a((t) => {
|
|
41
|
+
let n = d(t);
|
|
42
|
+
n && e(n, p);
|
|
43
|
+
}, [d, p]),
|
|
44
|
+
closeIfRemoved: a((e) => {
|
|
45
|
+
g != null && !e.some((e) => e.id === g) && l();
|
|
46
|
+
}, [l, g])
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
//#endregion
|
|
50
|
+
export { o as useProjectFilePreview };
|