@epam/ai-dial-chat-hooks 1.2.0-dev.14 → 1.2.0-dev.141

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 (61) hide show
  1. package/api-error/api-error.js +5 -4
  2. package/attachment/useAttachmentValidation/useAttachmentValidation.js +26 -19
  3. package/attachments.d.ts +10 -4
  4. package/catalog/map-deployment-to-catalog-item.js +2 -2
  5. package/catalog/map-skill-to-catalog-item.js +30 -27
  6. package/catalog/publish.js +2 -1
  7. package/catalog/useApplicationCredentials/useApplicationCredentials.js +39 -0
  8. package/catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js +39 -39
  9. package/catalog/useSkillItemDetails.js +17 -13
  10. package/catalog.d.ts +42 -5
  11. package/catalog.js +6 -5
  12. package/conversation/conversation-transfer/queue.js +8 -5
  13. package/conversation/create-chat-stream-api.js +30 -21
  14. package/conversation/stage.js +23 -0
  15. package/conversation/useAttachmentUpload/useAttachmentUpload.js +12 -5
  16. package/conversation/useConversationImport/useConversationImport.js +1 -1
  17. package/conversation/useConversationScroll/useConversationScroll.js +68 -64
  18. package/conversation/useConversationStream/apply-chunk.js +1 -1
  19. package/conversation/useConversationStream/generation-resume.js +75 -63
  20. package/conversation/useConversationStream/useConversationStream.js +145 -102
  21. package/conversation-overlay.d.ts +7 -0
  22. package/conversation-overlay.js +2 -0
  23. package/conversation-sources/useConversationSources/useConversationSources.js +31 -24
  24. package/conversation-sources.d.ts +1 -1
  25. package/conversation.d.ts +140 -8
  26. package/conversation.js +31 -30
  27. package/file-manager-canvas.d.ts +398 -0
  28. package/file-manager-canvas.js +2 -0
  29. package/file-manager.d.ts +71 -330
  30. package/file-manager.js +15 -15
  31. package/files/attachment-canvas.js +51 -13
  32. package/files/attachment-types.js +14 -13
  33. package/files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js +1 -5
  34. package/files/useFileAttachmentPicker/useFileAttachmentPicker.js +43 -0
  35. package/index.d.ts +750 -35
  36. package/index.js +123 -111
  37. package/mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js +7 -5
  38. package/mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js +1 -1
  39. package/mcp-apps/useMcpAppTools/useMcpAppTools.js +1 -1
  40. package/mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js +25 -23
  41. package/mcp-apps.d.ts +8 -6
  42. package/package.json +37 -18
  43. package/scheduled-task/scheduled-task-description.js +77 -0
  44. package/scheduled-task/scheduled-task-preparation.js +24 -0
  45. package/scheduled-task/scheduled-task-trigger.js +7 -2
  46. package/scheduled-task/scheduled-tasks-api-client.js +19 -0
  47. package/scheduled-task/use-scheduled-task-runs.js +82 -0
  48. package/scheduled-task/use-scheduled-tasks.js +93 -0
  49. package/scheduled-tasks.d.ts +180 -3
  50. package/scheduled-tasks.js +7 -2
  51. package/skill/skill.js +10 -7
  52. package/skill/useSkillArchiveImport/useSkillArchiveImport.js +75 -0
  53. package/skill/useSkillEditorLoad.js +29 -28
  54. package/skill/useSkillEditorSubmit.js +92 -75
  55. package/skill-editor.d.ts +107 -0
  56. package/skill-editor.js +9 -8
  57. package/usage/map-usage-data-to-dashboard.js +66 -0
  58. package/usage/map-user-usage-to-model-limits.js +160 -0
  59. package/usage.d.ts +120 -0
  60. package/usage.js +3 -0
  61. package/utils.d.ts +3 -1
package/index.js CHANGED
@@ -23,114 +23,126 @@ import { mapDeploymentDetailsDtoToEntityDetails as Q, mapEntityDetailsToCatalogD
23
23
  import { mapDeploymentToCatalogItem as te, mapDeploymentToolsetCredentials as ne, mapToolsetToCatalogItem as re, resolveDeploymentFolder as ie } from "./catalog/map-deployment-to-catalog-item.js";
24
24
  import { PromptSource as ae, parsePromptResourceUrl as oe } from "./prompt/prompt-resource.js";
25
25
  import { buildPromptOverview as se, isOrganisationPromptItem as ce, mapPromptToCatalogItem as le } from "./catalog/map-prompt-to-catalog-item.js";
26
- import { SKILL_FILE_UPLOAD_MAX_BYTES as ue, SKILL_MANIFEST_FILE as de, SKILL_UPLOAD_MAX_FILES as fe, SKILL_UPLOAD_MAX_TOTAL_BYTES as pe, buildSkillFilesPayload as me, buildSkillManifest as he, buildSkillManifestForSubmit as ge, buildSkillManifestFromFrontmatter as _e, isValidSkillRelativePath as ve, nameFromPath as ye, normalizeSkillName as be, parseSkillManifest as xe, skillFileBytesToBlob as Se, unpackSkillArchive as Ce } from "./skill/skill.js";
27
- import { PUBLIC_SKILL_BUCKET as we, SKILL_LISTING_MAX_PAGES as Te, SKILL_LISTING_PAGE_SIZE as Ee, SKILL_MANIFEST_MAX_BYTES as De, SkillSource as Oe, parseSkillResourceUrl as ke } from "./skill/skill-types.js";
28
- import { buildSkillContentTree as Ae, buildSkillOverview as je, mapSkillToCatalogItem as Me, readSkillFileBytes as Ne, readSkillFilePreviewBytes as Pe, readSkillManifest as Fe, resolveSkillFileDownloadPath as Ie, resolveSkillManifestFileId as Le } from "./catalog/map-skill-to-catalog-item.js";
29
- import { McpResourceKind as Re, buildApplicationMcpUrl as ze, buildConnectApi as Be, buildToolsetMcpUrl as Ve, resolveMcpResourceKind as He } from "./catalog/mcp-endpoint-url.js";
30
- import { getPublicCatalogEntityFolderPath as Ue, isPublicCatalogEntityId as We, mapPublishConversationResultDto as Ge, mapPublishHistoryEntryDto as Ke, toPublishEntityType as qe } from "./catalog/publish.js";
31
- import { deriveAvailableTabIds as Je, deriveFavoriteItems as Ye, filterCatalogItemsBySelector as Xe, filterHiddenOwnedItems as Ze, reconcileFilterTopics as Qe } from "./catalog/catalog-derivations.js";
32
- import { CatalogPrimaryActionType as $e, resolveCatalogPrimaryAction as et } from "./catalog/catalog-primary-action.js";
33
- import { useCatalogEditNavigation as tt } from "./catalog/useCatalogEditNavigation/useCatalogEditNavigation.js";
34
- import { parseSkillManifestDocument as nt } from "./skill/skill-manifest.js";
35
- import { useSkillItemDetails as rt } from "./catalog/useSkillItemDetails.js";
36
- import { useCatalogItemDetails as it } from "./catalog/useCatalogItemDetails.js";
37
- import { OAuthResourceKind as at, TOOLSET_REDIRECT_STATE_KEY as ot, ToolsetAuthStatus as st, ToolsetAuthTypes as ct, ToolsetCredentialsLevel as lt, ToolsetOAuthCallbackQuery as ut, ToolsetOAuthChannelControlType as dt, ToolsetOAuthFailureReason as ft, ToolsetOAuthInitiationResultType as pt, ToolsetOAuthResultType as mt, WithLogin as ht } from "./oauth/types.js";
38
- import { emitToolsetLoginSuccess as gt, subscribeToolsetLoginSuccess as _t } from "./shared/toolset-login-events.js";
39
- import { getToolsetOAuthChannelName as vt, waitForToolsetOAuthResult as yt } from "./oauth/handshake.js";
40
- import { buildToolsetAuthorizeUrl as bt, getToolsetRedirectUri as xt } from "./oauth/authorize-url.js";
41
- import { initiateOAuthLogin as St, navigateToolsetOAuthPopup as Ct, openToolsetOAuthPopup as wt } from "./oauth/popup.js";
42
- import { ToolsetLoginOutcomeType as Tt, useToolsetLogin as Et } from "./oauth/useToolsetLogin/useToolsetLogin.js";
43
- import { useCatalogToolsetCredentials as Dt } from "./catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js";
44
- import { useSkillDetailsPanelData as Ot } from "./catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js";
45
- import { FavoriteEntityType as kt, useFavoriteEntitiesState as At } from "./catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js";
46
- import { usePublishFolders as jt } from "./catalog/usePublishFolders/usePublishFolders.js";
47
- import { buildAnnouncementSignature as Mt, hasAnnouncementContent as Nt, hasStructuredAnnouncement as Pt, sanitizeAnnouncementHtml as Ft, sanitizeAnnouncementMessageHtml as It } from "./conversation/announcement-message.js";
48
- import { DEFAULT_GENERATION_CONFLICT_MESSAGE as Lt, GenerationConflictError as Rt, createChatStreamApi as zt } from "./conversation/create-chat-stream-api.js";
49
- import { shouldWatchForDisplayNameUpdate as Bt } from "./conversation/display-name-watch.js";
50
- import { formatAppVersion as Vt, sanitizeFooterHtml as Ht } from "./conversation/footer-message.js";
51
- import { getModelIdFromConversationId as Ut } from "./conversation/get-model-id-from-conversation-id.js";
52
- import { getTimeOfDayGreeting as Wt } from "./conversation/greeting.js";
53
- import { createDeploymentChangedMessage as Gt } from "./conversation/message-factory.js";
54
- import { getLastDeploymentId as Kt, getLastUserMessageToolConfiguration as qt, isMessageStreaming as Jt, messageHasStages as Yt, normalizeResponseFormat as Xt } from "./conversation/message-utils.js";
55
- import { toOverlayMessages as Zt } from "./conversation/overlay-messages.js";
56
- import { getQuickAppConversationStarters as Qt } from "./conversation/quick-app-conversation-starters.js";
57
- import { getStarterPopulateText as $t, getStartersFromSchema as en } from "./conversation/starter-option.js";
58
- import { useOAuthCallbackCompletion as tn } from "./oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js";
59
- import { buildPromptExportEnvelope as nn, buildPromptExportFileName as rn, serializePromptExport as an } from "./prompt/export-prompt.js";
60
- import { PROMPT_CONTENT_MAX_LENGTH as on, PROMPT_COUNTER_ANNOUNCE_THRESHOLD as sn, PROMPT_DESCRIPTION_MAX_LENGTH as cn, PROMPT_NAME_MAX_LENGTH as ln, PromptFieldError as un, buildPromptPath as dn, getRemainingCharacters as fn, validatePromptContent as pn, validatePromptDescription as mn, validatePromptName as hn } from "./prompt/prompt.js";
61
- import { usePromptsState as gn } from "./prompt/usePromptsState/usePromptsState.js";
62
- import { UnsupportedTriggerReason as _n } from "./scheduled-task/scheduled-task-mapping.js";
63
- import { apSchedulerDayToJsDay as vn, jsDayToApSchedulerDay as yn } from "./shared/cron-weekday.js";
64
- import { mapFormValuesToCreateBody as bn, mapFormValuesToUpdateBody as xn, mapScheduledTaskDtoToFormValues as Sn } from "./scheduled-task/scheduled-task-trigger.js";
65
- import { validateSkillFileBatch as Cn } from "./skill/skill-file-batch-validation.js";
66
- import { skillFileToAttachment as wn } from "./skill/skill-file-preview.js";
67
- import { SkillEditorLoadState as Tn, useSkillEditorLoad as En } from "./skill/useSkillEditorLoad.js";
68
- import { useSkillEditorSubmit as Dn } from "./skill/useSkillEditorSubmit.js";
69
- import { useSkillFileActions as On } from "./skill/useSkillFileActions.js";
70
- import { SkillPreviewErrorKind as kn, useSkillFilePreview as An } from "./skill/useSkillFilePreview.js";
71
- import { useSkillsState as jn } from "./skill/useSkillsState/useSkillsState.js";
72
- import { RecipientsCountStatus as Mn, useShareRecipientsCount as Nn } from "./useShareRecipientsCount/useShareRecipientsCount.js";
73
- import { deriveConversationRowActionState as Pn } from "./conversation/deriveConversationRowActionState/deriveConversationRowActionState.js";
74
- import { useActiveConversationSync as Fn } from "./conversation/useActiveConversationSync/useActiveConversationSync.js";
75
- import { useAsyncConfirmDialog as In } from "./conversation/useAsyncConfirmDialog/useAsyncConfirmDialog.js";
76
- import { useConversationLookupMaps as Ln } from "./conversation/useConversationLookupMaps/useConversationLookupMaps.js";
77
- import { getConversationSource as Rn, useConversationPanelItems as zn } from "./conversation/useConversationPanelItems/useConversationPanelItems.js";
78
- import { useImportFilePicker as Bn } from "./conversation/useImportFilePicker/useImportFilePicker.js";
79
- import { sanitizeFileName as Vn, splitFileNameExtension as Hn, trimFileNameToByteLimit as Un } from "./files/file-name.js";
80
- import { useAttachmentUpload as Wn } from "./conversation/useAttachmentUpload/useAttachmentUpload.js";
81
- import { AudioTranscriptionError as Gn, AudioTranscriptionErrorReason as Kn } from "./conversation/useTranscribeAudio/audio-transcription-error.js";
82
- import { useTranscribeAudio as qn } from "./conversation/useTranscribeAudio/useTranscribeAudio.js";
83
- import { DEFAULT_MAX_ARCHIVE_BYTES as Jn, useConversationExport as Yn } from "./conversation/useConversationExport/useConversationExport.js";
84
- import { attachmentToDto as Xn, attachmentsToDtos as Zn } from "./conversation/useConversationHandlers/attachment-to-dto.js";
85
- import { createMessagePair as Qn } from "./conversation/useConversationHandlers/message-factory.js";
86
- import { hasActiveToolConfig as $n, isAnswerIncomplete as er, isMessageChanged as tr, shouldRerunGenerationOnEdit as nr } from "./conversation/useConversationHandlers/message-utils.js";
87
- import { getStarterConversationText as rr, getStarterDisplayText as ir, getStarterSubmitText as ar } from "./conversation/useConversationHandlers/starter-option.js";
88
- import { getConversationPath as or } from "./conversation/useConversationStream/conversation-path.js";
89
- import { useConversationHandlers as sr } from "./conversation/useConversationHandlers/useConversationHandlers.js";
90
- import { useConversationImport as cr } from "./conversation/useConversationImport/useConversationImport.js";
91
- import { useConversationScroll as lr } from "./conversation/useConversationScroll/useConversationScroll.js";
92
- import { isAwaitingGenerationResume as ur } from "./conversation/useConversationStream/generation-resume.js";
93
- import { useConversationStream as dr } from "./conversation/useConversationStream/useConversationStream.js";
94
- import { useConversationSources as fr } from "./conversation-sources/useConversationSources/useConversationSources.js";
95
- import { DialFilesApiUploadMode as pr } from "./files/dial-files-api.js";
96
- import { FileManagerNotificationReason as mr, FileNameValidationErrorReason as hr, FileOperationKind as gr } from "./files/dial-file-manager.types.js";
97
- import { COLUMNS_WITHOUT_AUTHOR as _r, COLUMNS_WITH_AUTHOR as vr, CORE_PERMISSION_MAP as yr, DATE_OPTIONS as br, PATH_SEPARATOR_REGEXP as xr, RESERVED_MARKER_NAME as Sr, UPLOAD_CONCURRENCY as Cr } from "./files/dial-file-manager.model.js";
98
- import { DialFileManagerActionProfile as wr, DialFileManagerVariant as Tr, deriveActionProfile as Er } from "./files/file-manager-variant.js";
99
- import { buildSharedItemVirtualPath as Dr, dialCorePathToRelative as Or, findDialFileByPath as kr, findFolderByVirtualPath as Ar, formatOperationFolderName as jr, getVirtualPathName as Mr, hasDialFileWritePermission as Nr, hasForbiddenNameSymbols as Pr, isCopyMoveDuplicateAllowed as Fr, isShareActionsAllowed as Ir, normalizeVirtualPath as Lr, parseNewFolderVirtualPath as Rr, resolveOwnerCoords as zr } from "./files/dial-file-manager-path.util.js";
100
- import { getParentFolderPath as Br, resolveDialFileApiPath as Vr, virtualPathToApiPath as Hr } from "./files/resolve-dial-file-api-path.js";
101
- import { prepareCopyItems as Ur, prepareMoveRenameItems as Wr } from "./files/dial-file-manager-copy-move.util.js";
102
- import { buildFromCache as Gr, fetchByTab as Kr, fetchForSearch as qr, findFirstSuccessfulCopyMoveItem as Jr, mapCorePermissions as Yr, mapFileMetadataToDialFile as Xr, mapSearchItem as Zr, mergeCreatedFolderIntoCache as Qr, updateEntry as $r } from "./files/dial-file-manager-mapping.util.js";
103
- import { createFilesApiClient as ei } from "./files/create-files-api.js";
104
- import { createUploadFileWithProgress as ti } from "./files/create-upload-file-with-progress.js";
105
- import { openAnnotationAttachment as ni } from "./files/annotation.js";
106
- import { annotationToOoxmlCanvasContent as ri, annotationToPdfCanvasContent as ii, clearAttachmentCache as ai, hasAttachmentTextSource as oi, referenceAttachmentToPdfCanvasContent as si, resolveCodeCanvasContent as ci, resolveHtmlCanvasContent as li, resolveImageCanvasContent as ui, resolveJsonCanvasContent as di, resolveMarkdownCanvasContent as fi, resolveOoxmlCanvasContent as pi, resolvePdfCanvasContent as mi, resolveTextCanvasContent as hi, resolveVisualizerCanvasContent as gi } from "./files/attachment-canvas.js";
107
- import { getUrlFileName as _i, isExternalSourcePreviewable as vi, resolveExternalSourceContentType as yi } from "./files/source-content.js";
108
- import { annotationToDisplayAttachment as bi, attachmentDtoToDisplayAttachment as xi, attachmentDtosToDisplayAttachments as Si } from "./files/attachment-dto-to-display.js";
109
- import { dialFileToAttachment as Ci, dialFilesToAttachments as wi, dialFolderPathToAttachment as Ti } from "./files/dial-file-to-attachment.js";
110
- import { DownloadDestinationType as Ei } from "./files/download-destination.js";
111
- import { prepareDownloadDestination as Di } from "./files/prepare-download-destination.js";
112
- import { useDialFileListing as Oi } from "./files/useDialFileListing/useDialFileListing.js";
113
- import { useDialFileMetadata as ki } from "./files/useDialFileMetadata/useDialFileMetadata.js";
114
- import { useDialFileMutations as Ai } from "./files/useDialFileMutations/useDialFileMutations.js";
115
- import { useDialFileSharing as ji } from "./files/useDialFileSharing/useDialFileSharing.js";
116
- import { useDialFileUploadBatch as Mi } from "./files/useDialFileUploadBatch/useDialFileUploadBatch.js";
117
- import { useDialFileManager as Ni } from "./files/useDialFileManager/useDialFileManager.js";
118
- import { useDialFileManagerTabConfig as Pi } from "./files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js";
119
- import { isCustomAppSchema as Fi, isQuickAppSchema as Ii } from "./shared/application-schema.js";
120
- import { getBrowserTimezone as Li } from "./shared/browser-timezone.js";
121
- import { isValidAbsoluteUrl as Ri, isValidFeaturesData as zi, parseFeaturesData as Bi } from "./shared/custom-apps.js";
122
- import { buildExternalServiceScopeId as Vi, getExternalServiceFallbackName as Hi, parseExternalServiceUrl as Ui } from "./shared/external-services.js";
123
- import { useChatSettingsFormConfig as Wi } from "./useChatSettingsFormConfig/useChatSettingsFormConfig.js";
124
- import { usePageFileDrag as Gi } from "./usePageFileDrag/usePageFileDrag.js";
125
- import { useViewportWidth as Ki } from "./useViewportWidth/useViewportWidth.js";
126
- import { usePanelMaxWidth as qi } from "./usePanelMaxWidth/usePanelMaxWidth.js";
127
- import { useShareLink as Ji } from "./useShareLink/useShareLink.js";
128
- import { useToolsMenu as Yi } from "./useToolsMenu/useToolsMenu.js";
129
- import { useUsageData as Xi } from "./usage/useUsageData/useUsageData.js";
130
- import { McpAppResourceFetchError as Zi, createMcpAppsApiClient as Qi } from "./mcp-apps/mcp-apps-api-client.js";
131
- import { useMcpAppTools as $i } from "./mcp-apps/useMcpAppTools/useMcpAppTools.js";
132
- import { useMcpAppHostContext as ea } from "./mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js";
133
- import { useMcpAppHostAdapter as ta } from "./mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js";
134
- import { useOpenMcpAppCanvas as na } from "./mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js";
135
- import { useGridEditingScroll as ra } from "@epam/ai-dial-chat-shared";
136
- export { x as AttachmentValidationErrorReason, Gn as AudioTranscriptionError, Kn as AudioTranscriptionErrorReason, R as AuthenticationType, _r as COLUMNS_WITHOUT_AUTHOR, vr as COLUMNS_WITH_AUTHOR, yr as CORE_PERMISSION_MAP, $e as CatalogPrimaryActionType, T as ConversationExportMode, E as ConversationTransferErrorCode, D as ConversationTransferWarningCode, br as DATE_OPTIONS, Lt as DEFAULT_GENERATION_CONFLICT_MESSAGE, Jn as DEFAULT_MAX_ARCHIVE_BYTES, wr as DialFileManagerActionProfile, Tr as DialFileManagerVariant, pr as DialFilesApiUploadMode, Ei as DownloadDestinationType, k as EXPORT_APP_NAME, O as ExportFileNameKind, kt as FavoriteEntityType, mr as FileManagerNotificationReason, hr as FileNameValidationErrorReason, gr as FileOperationKind, Rt as GenerationConflictError, Zi as McpAppResourceFetchError, Re as McpResourceKind, at as OAuthResourceKind, xr as PATH_SEPARATOR_REGEXP, on as PROMPT_CONTENT_MAX_LENGTH, sn as PROMPT_COUNTER_ANNOUNCE_THRESHOLD, cn as PROMPT_DESCRIPTION_MAX_LENGTH, ln as PROMPT_NAME_MAX_LENGTH, we as PUBLIC_SKILL_BUCKET, un as PromptFieldError, ae as PromptSource, Sr as RESERVED_MARKER_NAME, Mn as RecipientsCountStatus, ue as SKILL_FILE_UPLOAD_MAX_BYTES, Te as SKILL_LISTING_MAX_PAGES, Ee as SKILL_LISTING_PAGE_SIZE, de as SKILL_MANIFEST_FILE, De as SKILL_MANIFEST_MAX_BYTES, fe as SKILL_UPLOAD_MAX_FILES, pe as SKILL_UPLOAD_MAX_TOTAL_BYTES, Tn as SkillEditorLoadState, kn as SkillPreviewErrorKind, Oe as SkillSource, ot as TOOLSET_REDIRECT_STATE_KEY, st as ToolsetAuthStatus, ct as ToolsetAuthTypes, lt as ToolsetCredentialsLevel, Tt as ToolsetLoginOutcomeType, ut as ToolsetOAuthCallbackQuery, dt as ToolsetOAuthChannelControlType, ft as ToolsetOAuthFailureReason, pt as ToolsetOAuthInitiationResultType, mt as ToolsetOAuthResultType, Cr as UPLOAD_CONCURRENCY, _n as UnsupportedTriggerReason, ht as WithLogin, bi as annotationToDisplayAttachment, ri as annotationToOoxmlCanvasContent, ii as annotationToPdfCanvasContent, vn as apSchedulerDayToJsDay, W as appendLocaleCode, xi as attachmentDtoToDisplayAttachment, Si as attachmentDtosToDisplayAttachments, Xn as attachmentToDto, Zn as attachmentsToDtos, G as buildAdditionalLocaleOptions, Mt as buildAnnouncementSignature, ze as buildApplicationMcpUrl, N as buildChatCompletionsUrl, Be as buildConnectApi, P as buildDeploymentConnectApi, Vi as buildExternalServiceScopeId, Gr as buildFromCache, nn as buildPromptExportEnvelope, rn as buildPromptExportFileName, se as buildPromptOverview, dn as buildPromptPath, F as buildResponsesUrl, Dr as buildSharedItemVirtualPath, Ae as buildSkillContentTree, me as buildSkillFilesPayload, he as buildSkillManifest, ge as buildSkillManifestForSubmit, _e as buildSkillManifestFromFrontmatter, je as buildSkillOverview, bt as buildToolsetAuthorizeUrl, Ve as buildToolsetMcpUrl, ai as clearAttachmentCache, K as composeLocalePayload, zt as createChatStreamApi, i as createCsrfMiddleware, Gt as createDeploymentChangedMessage, ei as createFilesApiClient, Qi as createMcpAppsApiClient, Qn as createMessagePair, j as createPublishApiClient, a as createUnauthorizedMiddleware, ti as createUploadFileWithProgress, V as decodeToolsetId, q as decomposeLocalizedFields, Er as deriveActionProfile, Je as deriveAvailableTabIds, Pn as deriveConversationRowActionState, Ye as deriveFavoriteItems, Or as dialCorePathToRelative, Ci as dialFileToAttachment, wi as dialFilesToAttachments, Ti as dialFolderPathToAttachment, m as downloadAttachment, gt as emitToolsetLoginSuccess, I as encodeDeploymentId, H as encodeToolsetId, Kr as fetchByTab, qr as fetchForSearch, Xe as filterCatalogItemsBySelector, Ze as filterHiddenOwnedItems, L as findDeploymentByIdOrReference, kr as findDialFileByPath, Jr as findFirstSuccessfulCopyMoveItem, Ar as findFolderByVirtualPath, Vt as formatAppVersion, X as formatCalendarDate, C as formatDateYM, w as formatDateYMD, jr as formatOperationFolderName, A as formatQuotedNameList, e as getApiErrorDetails, t as getApiErrorMessage, n as getApiErrorStatus, Li as getBrowserTimezone, or as getConversationPath, Rn as getConversationSource, Hi as getExternalServiceFallbackName, Kt as getLastDeploymentId, qt as getLastUserMessageToolConfiguration, Ut as getModelIdFromConversationId, Br as getParentFolderPath, Ue as getPublicCatalogEntityFolderPath, Qt as getQuickAppConversationStarters, fn as getRemainingCharacters, rr as getStarterConversationText, ir as getStarterDisplayText, $t as getStarterPopulateText, ar as getStarterSubmitText, en as getStartersFromSchema, Wt as getTimeOfDayGreeting, vt as getToolsetOAuthChannelName, xt as getToolsetRedirectUri, _i as getUrlFileName, Mr as getVirtualPathName, $n as hasActiveToolConfig, Nt as hasAnnouncementContent, oi as hasAttachmentTextSource, Nr as hasDialFileWritePermission, Pr as hasForbiddenNameSymbols, Pt as hasStructuredAnnouncement, o as includesIgnoreCase, St as initiateOAuthLogin, er as isAnswerIncomplete, ur as isAwaitingGenerationResume, r as isConversationNotFoundError, Fr as isCopyMoveDuplicateAllowed, Fi as isCustomAppSchema, _ as isDialFileAcceptType, d as isDialFileId, h as isDownloadableAttachment, vi as isExternalSourcePreviewable, tr as isMessageChanged, Jt as isMessageStreaming, ce as isOrganisationPromptItem, We as isPublicCatalogEntityId, U as isPublicToolsetId, Ii as isQuickAppSchema, Ir as isShareActionsAllowed, Ri as isValidAbsoluteUrl, zi as isValidFeaturesData, ve as isValidSkillRelativePath, yn as jsDayToApSchedulerDay, Yr as mapCorePermissions, Q as mapDeploymentDetailsDtoToEntityDetails, z as mapDeploymentLimitsDtoToCatalogLimits, B as mapDeploymentLimitsToInput, te as mapDeploymentToCatalogItem, ne as mapDeploymentToolsetCredentials, $ as mapEntityDetailsToCatalogDetails, Xr as mapFileMetadataToDialFile, bn as mapFormValuesToCreateBody, xn as mapFormValuesToUpdateBody, le as mapPromptToCatalogItem, Ge as mapPublishConversationResultDto, Ke as mapPublishHistoryEntryDto, Sn as mapScheduledTaskDtoToFormValues, Zr as mapSearchItem, Me as mapSkillToCatalogItem, ee as mapToolsetCredentials, re as mapToolsetToCatalogItem, Qr as mergeCreatedFolderIntoCache, Yt as messageHasStages, v as mimeTypesToAttachmentExtensionLabels, y as mimeTypesToDialFileAcceptTypes, b as mimeTypesToFileAccept, ye as nameFromPath, Ct as navigateToolsetOAuthPopup, Xt as normalizeResponseFormat, be as normalizeSkillName, Lr as normalizeVirtualPath, ni as openAnnotationAttachment, wt as openToolsetOAuthPopup, Z as padTwoDigits, Ui as parseExternalServiceUrl, Bi as parseFeaturesData, Rr as parseNewFolderVirtualPath, oe as parsePromptResourceUrl, xe as parseSkillManifest, nt as parseSkillManifestDocument, ke as parseSkillResourceUrl, Ur as prepareCopyItems, Di as prepareDownloadDestination, Wr as prepareMoveRenameItems, Ne as readSkillFileBytes, Pe as readSkillFilePreviewBytes, Fe as readSkillManifest, Qe as reconcileFilterTopics, si as referenceAttachmentToPdfCanvasContent, et as resolveCatalogPrimaryAction, ci as resolveCodeCanvasContent, ie as resolveDeploymentFolder, Vr as resolveDialFileApiPath, f as resolveDialFileBucketAndPath, yi as resolveExternalSourceContentType, li as resolveHtmlCanvasContent, ui as resolveImageCanvasContent, di as resolveJsonCanvasContent, J as resolveLocalizedText, fi as resolveMarkdownCanvasContent, He as resolveMcpResourceKind, pi as resolveOoxmlCanvasContent, zr as resolveOwnerCoords, mi as resolvePdfCanvasContent, p as resolveRelativeDialFilePath, Ie as resolveSkillFileDownloadPath, Le as resolveSkillManifestFileId, hi as resolveTextCanvasContent, gi as resolveVisualizerCanvasContent, s as safeDecodeURI, c as safeDecodeURIComponent, Ft as sanitizeAnnouncementHtml, It as sanitizeAnnouncementMessageHtml, Vn as sanitizeFileName, Ht as sanitizeFooterHtml, an as serializePromptExport, nr as shouldRerunGenerationOnEdit, Bt as shouldWatchForDisplayNameUpdate, Se as skillFileBytesToBlob, wn as skillFileToAttachment, Hn as splitFileNameExtension, l as stripSurroundingSlashes, u as stripTrailingSlashes, _t as subscribeToolsetLoginSuccess, Y as toBaseLocale, Zt as toOverlayMessages, qe as toPublishEntityType, M as toPublishRuleDto, Un as trimFileNameToByteLimit, Ce as unpackSkillArchive, $r as updateEntry, Fn as useActiveConversationSync, In as useAsyncConfirmDialog, g as useAttachmentAction, Wn as useAttachmentUpload, S as useAttachmentValidation, tt as useCatalogEditNavigation, it as useCatalogItemDetails, Dt as useCatalogToolsetCredentials, Wi as useChatSettingsFormConfig, Yn as useConversationExport, sr as useConversationHandlers, cr as useConversationImport, Ln as useConversationLookupMaps, zn as useConversationPanelItems, lr as useConversationScroll, fr as useConversationSources, dr as useConversationStream, Oi as useDialFileListing, Ni as useDialFileManager, Pi as useDialFileManagerTabConfig, ki as useDialFileMetadata, Ai as useDialFileMutations, ji as useDialFileSharing, Mi as useDialFileUploadBatch, At as useFavoriteEntitiesState, ra as useGridEditingScroll, Bn as useImportFilePicker, ta as useMcpAppHostAdapter, ea as useMcpAppHostContext, $i as useMcpAppTools, tn as useOAuthCallbackCompletion, na as useOpenMcpAppCanvas, Gi as usePageFileDrag, qi as usePanelMaxWidth, gn as usePromptsState, jt as usePublishFolders, Ji as useShareLink, Nn as useShareRecipientsCount, Ot as useSkillDetailsPanelData, En as useSkillEditorLoad, Dn as useSkillEditorSubmit, On as useSkillFileActions, An as useSkillFilePreview, rt as useSkillItemDetails, jn as useSkillsState, Yi as useToolsMenu, Et as useToolsetLogin, qn as useTranscribeAudio, Xi as useUsageData, Ki as useViewportWidth, pn as validatePromptContent, mn as validatePromptDescription, hn as validatePromptName, Cn as validateSkillFileBatch, Hr as virtualPathToApiPath, yt as waitForToolsetOAuthResult };
26
+ import { SKILL_FILE_UPLOAD_MAX_BYTES as ue, SKILL_MANIFEST_FILE as de, SKILL_UPLOAD_MAX_FILES as fe, SKILL_UPLOAD_MAX_TOTAL_BYTES as pe, buildSkillFilesPayload as me, buildSkillManifest as he, buildSkillManifestForSubmit as ge, buildSkillManifestFromFrontmatter as _e, isValidSkillRelativePath as ve, nameFromPath as ye, normalizeSkillName as be, parseSkillManifest as xe, skillFileBytesToBlob as Se, startsWithFrontmatterBlock as Ce, unpackSkillArchive as we } from "./skill/skill.js";
27
+ import { PUBLIC_SKILL_BUCKET as Te, SKILL_LISTING_MAX_PAGES as Ee, SKILL_LISTING_PAGE_SIZE as De, SKILL_MANIFEST_MAX_BYTES as Oe, SkillSource as ke, parseSkillResourceUrl as Ae } from "./skill/skill-types.js";
28
+ import { buildSkillContentTree as je, buildSkillOverview as Me, mapSkillToCatalogItem as Ne, readSkillFileBytes as Pe, readSkillFilePreviewBytes as Fe, readSkillManifest as Ie, resolveSkillFileDownloadPath as Le, resolveSkillManifestFileId as Re } from "./catalog/map-skill-to-catalog-item.js";
29
+ import { McpResourceKind as ze, buildApplicationMcpUrl as Be, buildConnectApi as Ve, buildToolsetMcpUrl as He, resolveMcpResourceKind as Ue } from "./catalog/mcp-endpoint-url.js";
30
+ import { getPublicCatalogEntityFolderPath as We, isPublicCatalogEntityId as Ge, mapPublishConversationResultDto as Ke, mapPublishHistoryEntryDto as qe, toPublishEntityType as Je } from "./catalog/publish.js";
31
+ import { deriveAvailableTabIds as Ye, deriveFavoriteItems as Xe, filterCatalogItemsBySelector as Ze, filterHiddenOwnedItems as Qe, reconcileFilterTopics as $e } from "./catalog/catalog-derivations.js";
32
+ import { CatalogPrimaryActionType as et, resolveCatalogPrimaryAction as tt } from "./catalog/catalog-primary-action.js";
33
+ import { useCatalogEditNavigation as nt } from "./catalog/useCatalogEditNavigation/useCatalogEditNavigation.js";
34
+ import { parseSkillManifestDocument as rt } from "./skill/skill-manifest.js";
35
+ import { useSkillItemDetails as it } from "./catalog/useSkillItemDetails.js";
36
+ import { useCatalogItemDetails as at } from "./catalog/useCatalogItemDetails.js";
37
+ import { OAuthResourceKind as ot, TOOLSET_REDIRECT_STATE_KEY as st, ToolsetAuthStatus as ct, ToolsetAuthTypes as lt, ToolsetCredentialsLevel as ut, ToolsetOAuthCallbackQuery as dt, ToolsetOAuthChannelControlType as ft, ToolsetOAuthFailureReason as pt, ToolsetOAuthInitiationResultType as mt, ToolsetOAuthResultType as ht, WithLogin as gt } from "./oauth/types.js";
38
+ import { emitToolsetLoginSuccess as _t, subscribeToolsetLoginSuccess as vt } from "./shared/toolset-login-events.js";
39
+ import { getToolsetOAuthChannelName as yt, waitForToolsetOAuthResult as bt } from "./oauth/handshake.js";
40
+ import { buildToolsetAuthorizeUrl as xt, getToolsetRedirectUri as St } from "./oauth/authorize-url.js";
41
+ import { initiateOAuthLogin as Ct, navigateToolsetOAuthPopup as wt, openToolsetOAuthPopup as Tt } from "./oauth/popup.js";
42
+ import { ToolsetLoginOutcomeType as Et, useToolsetLogin as Dt } from "./oauth/useToolsetLogin/useToolsetLogin.js";
43
+ import { useCatalogToolsetCredentials as Ot } from "./catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js";
44
+ import { useApplicationCredentials as kt } from "./catalog/useApplicationCredentials/useApplicationCredentials.js";
45
+ import { useSkillDetailsPanelData as At } from "./catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js";
46
+ import { FavoriteEntityType as jt, useFavoriteEntitiesState as Mt } from "./catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js";
47
+ import { usePublishFolders as Nt } from "./catalog/usePublishFolders/usePublishFolders.js";
48
+ import { buildAnnouncementSignature as Pt, hasAnnouncementContent as Ft, hasStructuredAnnouncement as It, sanitizeAnnouncementHtml as Lt, sanitizeAnnouncementMessageHtml as Rt } from "./conversation/announcement-message.js";
49
+ import { DEFAULT_GENERATION_CONFLICT_MESSAGE as zt, DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE as Bt, GenerationConflictError as Vt, GenerationPersistenceError as Ht, StreamUpstreamError as Ut, createChatStreamApi as Wt } from "./conversation/create-chat-stream-api.js";
50
+ import { shouldWatchForDisplayNameUpdate as Gt } from "./conversation/display-name-watch.js";
51
+ import { formatAppVersion as Kt, sanitizeFooterHtml as qt } from "./conversation/footer-message.js";
52
+ import { getModelIdFromConversationId as Jt } from "./conversation/get-model-id-from-conversation-id.js";
53
+ import { getTimeOfDayGreeting as Yt } from "./conversation/greeting.js";
54
+ import { createDeploymentChangedMessage as Xt } from "./conversation/message-factory.js";
55
+ import { getLastDeploymentId as Zt, getLastUserMessageToolConfiguration as Qt, isMessageStreaming as $t, messageHasStages as en, normalizeResponseFormat as tn } from "./conversation/message-utils.js";
56
+ import { toOverlayMessages as nn } from "./conversation/overlay-messages.js";
57
+ import { getQuickAppConversationStarters as rn } from "./conversation/quick-app-conversation-starters.js";
58
+ import { mapStages as an, toStage as on } from "./conversation/stage.js";
59
+ import { getStarterPopulateText as sn, getStartersFromSchema as cn } from "./conversation/starter-option.js";
60
+ import { useOAuthCallbackCompletion as ln } from "./oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js";
61
+ import { buildPromptExportEnvelope as un, buildPromptExportFileName as dn, serializePromptExport as fn } from "./prompt/export-prompt.js";
62
+ import { PROMPT_CONTENT_MAX_LENGTH as pn, PROMPT_COUNTER_ANNOUNCE_THRESHOLD as mn, PROMPT_DESCRIPTION_MAX_LENGTH as hn, PROMPT_NAME_MAX_LENGTH as gn, PromptFieldError as _n, buildPromptPath as vn, getRemainingCharacters as yn, validatePromptContent as bn, validatePromptDescription as xn, validatePromptName as Sn } from "./prompt/prompt.js";
63
+ import { usePromptsState as Cn } from "./prompt/usePromptsState/usePromptsState.js";
64
+ import { UnsupportedTriggerReason as wn } from "./scheduled-task/scheduled-task-mapping.js";
65
+ import { ScheduledTaskTriggerDescriptionKind as Tn, describeScheduledTaskTrigger as En } from "./scheduled-task/scheduled-task-description.js";
66
+ import { apSchedulerDayToJsDay as Dn, jsDayToApSchedulerDay as On } from "./shared/cron-weekday.js";
67
+ import { mapFormValuesToCreateBody as kn, mapFormValuesToUpdateBody as An, mapScheduledTaskDtoToFormValues as jn } from "./scheduled-task/scheduled-task-trigger.js";
68
+ import { prepareScheduledTaskCreateBody as Mn, prepareScheduledTaskUpdateBody as Nn } from "./scheduled-task/scheduled-task-preparation.js";
69
+ import { createScheduledTasksApiClient as Pn } from "./scheduled-task/scheduled-tasks-api-client.js";
70
+ import { useScheduledTasks as Fn } from "./scheduled-task/use-scheduled-tasks.js";
71
+ import { useScheduledTaskRuns as In } from "./scheduled-task/use-scheduled-task-runs.js";
72
+ import { validateSkillFileBatch as Ln } from "./skill/skill-file-batch-validation.js";
73
+ import { skillFileToAttachment as Rn } from "./skill/skill-file-preview.js";
74
+ import { SkillEditorLoadState as zn, useSkillEditorLoad as Bn } from "./skill/useSkillEditorLoad.js";
75
+ import { useSkillEditorSubmit as Vn } from "./skill/useSkillEditorSubmit.js";
76
+ import { useSkillFileActions as Hn } from "./skill/useSkillFileActions.js";
77
+ import { SkillPreviewErrorKind as Un, useSkillFilePreview as Wn } from "./skill/useSkillFilePreview.js";
78
+ import { useSkillsState as Gn } from "./skill/useSkillsState/useSkillsState.js";
79
+ import { SkillArchiveImportErrorKind as Kn, SkillArchiveImportStatus as qn, SkillArchiveSelectionRejectionReason as Jn, classifySkillArchiveImportError as Yn, useSkillArchiveImport as Xn } from "./skill/useSkillArchiveImport/useSkillArchiveImport.js";
80
+ import { RecipientsCountStatus as Zn, useShareRecipientsCount as Qn } from "./useShareRecipientsCount/useShareRecipientsCount.js";
81
+ import { deriveConversationRowActionState as $n } from "./conversation/deriveConversationRowActionState/deriveConversationRowActionState.js";
82
+ import { useActiveConversationSync as er } from "./conversation/useActiveConversationSync/useActiveConversationSync.js";
83
+ import { useAsyncConfirmDialog as tr } from "./conversation/useAsyncConfirmDialog/useAsyncConfirmDialog.js";
84
+ import { useConversationLookupMaps as nr } from "./conversation/useConversationLookupMaps/useConversationLookupMaps.js";
85
+ import { getConversationSource as rr, useConversationPanelItems as ir } from "./conversation/useConversationPanelItems/useConversationPanelItems.js";
86
+ import { useImportFilePicker as ar } from "./conversation/useImportFilePicker/useImportFilePicker.js";
87
+ import { sanitizeFileName as or, splitFileNameExtension as sr, trimFileNameToByteLimit as cr } from "./files/file-name.js";
88
+ import { useAttachmentUpload as lr } from "./conversation/useAttachmentUpload/useAttachmentUpload.js";
89
+ import { AudioTranscriptionError as ur, AudioTranscriptionErrorReason as dr } from "./conversation/useTranscribeAudio/audio-transcription-error.js";
90
+ import { useTranscribeAudio as fr } from "./conversation/useTranscribeAudio/useTranscribeAudio.js";
91
+ import { DEFAULT_MAX_ARCHIVE_BYTES as pr, useConversationExport as mr } from "./conversation/useConversationExport/useConversationExport.js";
92
+ import { attachmentToDto as hr, attachmentsToDtos as gr } from "./conversation/useConversationHandlers/attachment-to-dto.js";
93
+ import { createMessagePair as _r } from "./conversation/useConversationHandlers/message-factory.js";
94
+ import { hasActiveToolConfig as vr, isAnswerIncomplete as yr, isMessageChanged as br, shouldRerunGenerationOnEdit as xr } from "./conversation/useConversationHandlers/message-utils.js";
95
+ import { getStarterConversationText as Sr, getStarterDisplayText as Cr, getStarterSubmitText as wr } from "./conversation/useConversationHandlers/starter-option.js";
96
+ import { getConversationPath as Tr } from "./conversation/useConversationStream/conversation-path.js";
97
+ import { useConversationHandlers as Er } from "./conversation/useConversationHandlers/useConversationHandlers.js";
98
+ import { useConversationImport as Dr } from "./conversation/useConversationImport/useConversationImport.js";
99
+ import { useConversationScroll as Or } from "./conversation/useConversationScroll/useConversationScroll.js";
100
+ import { applyChunkToMessages as kr, mergeStages as Ar } from "./conversation/useConversationStream/apply-chunk.js";
101
+ import { isAwaitingGenerationResume as jr } from "./conversation/useConversationStream/generation-resume.js";
102
+ import { useConversationStream as Mr } from "./conversation/useConversationStream/useConversationStream.js";
103
+ import { useConversationSources as Nr } from "./conversation-sources/useConversationSources/useConversationSources.js";
104
+ import { DialFilesApiUploadMode as Pr } from "./files/dial-files-api.js";
105
+ import { FileManagerNotificationReason as Fr, FileNameValidationErrorReason as Ir, FileOperationKind as Lr } from "./files/dial-file-manager.types.js";
106
+ import { COLUMNS_WITHOUT_AUTHOR as Rr, COLUMNS_WITH_AUTHOR as zr, CORE_PERMISSION_MAP as Br, DATE_OPTIONS as Vr, PATH_SEPARATOR_REGEXP as Hr, RESERVED_MARKER_NAME as Ur, UPLOAD_CONCURRENCY as Wr } from "./files/dial-file-manager.model.js";
107
+ import { DialFileManagerActionProfile as Gr, DialFileManagerVariant as Kr, deriveActionProfile as qr } from "./files/file-manager-variant.js";
108
+ import { buildSharedItemVirtualPath as Jr, dialCorePathToRelative as Yr, findDialFileByPath as Xr, findFolderByVirtualPath as Zr, formatOperationFolderName as Qr, getVirtualPathName as $r, hasDialFileWritePermission as ei, hasForbiddenNameSymbols as ti, isCopyMoveDuplicateAllowed as ni, isShareActionsAllowed as ri, normalizeVirtualPath as ii, parseNewFolderVirtualPath as ai, resolveOwnerCoords as oi } from "./files/dial-file-manager-path.util.js";
109
+ import { getParentFolderPath as si, resolveDialFileApiPath as ci, virtualPathToApiPath as li } from "./files/resolve-dial-file-api-path.js";
110
+ import { prepareCopyItems as ui, prepareMoveRenameItems as di } from "./files/dial-file-manager-copy-move.util.js";
111
+ import { buildFromCache as fi, fetchByTab as pi, fetchForSearch as mi, findFirstSuccessfulCopyMoveItem as hi, mapCorePermissions as gi, mapFileMetadataToDialFile as _i, mapSearchItem as vi, mergeCreatedFolderIntoCache as yi, updateEntry as bi } from "./files/dial-file-manager-mapping.util.js";
112
+ import { createFilesApiClient as xi } from "./files/create-files-api.js";
113
+ import { createUploadFileWithProgress as Si } from "./files/create-upload-file-with-progress.js";
114
+ import { openAnnotationAttachment as Ci } from "./files/annotation.js";
115
+ import { annotationToOoxmlCanvasContent as wi, annotationToPdfCanvasContent as Ti, clearAttachmentCache as Ei, hasAttachmentTextSource as Di, referenceAttachmentToPdfCanvasContent as Oi, resolveCodeCanvasContent as ki, resolveGroupedVisualizerCanvasContent as Ai, resolveHtmlCanvasContent as ji, resolveImageCanvasContent as Mi, resolveJsonCanvasContent as Ni, resolveMarkdownCanvasContent as Pi, resolveOoxmlCanvasContent as Fi, resolvePdfCanvasContent as Ii, resolveTextCanvasContent as Li, resolveVisualizerCanvasContent as Ri } from "./files/attachment-canvas.js";
116
+ import { getUrlFileName as zi, isExternalSourcePreviewable as Bi, resolveExternalSourceContentType as Vi } from "./files/source-content.js";
117
+ import { annotationToDisplayAttachment as Hi, attachmentDtoToDisplayAttachment as Ui, attachmentDtosToDisplayAttachments as Wi } from "./files/attachment-dto-to-display.js";
118
+ import { dialFileToAttachment as Gi, dialFilesToAttachments as Ki, dialFolderPathToAttachment as qi } from "./files/dial-file-to-attachment.js";
119
+ import { DownloadDestinationType as Ji } from "./files/download-destination.js";
120
+ import { prepareDownloadDestination as Yi } from "./files/prepare-download-destination.js";
121
+ import { useDialFileListing as Xi } from "./files/useDialFileListing/useDialFileListing.js";
122
+ import { useDialFileMetadata as Zi } from "./files/useDialFileMetadata/useDialFileMetadata.js";
123
+ import { useDialFileMutations as Qi } from "./files/useDialFileMutations/useDialFileMutations.js";
124
+ import { useDialFileSharing as $i } from "./files/useDialFileSharing/useDialFileSharing.js";
125
+ import { useDialFileUploadBatch as ea } from "./files/useDialFileUploadBatch/useDialFileUploadBatch.js";
126
+ import { useDialFileManager as ta } from "./files/useDialFileManager/useDialFileManager.js";
127
+ import { useDialFileManagerTabConfig as na } from "./files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js";
128
+ import { useFileAttachmentPicker as ra } from "./files/useFileAttachmentPicker/useFileAttachmentPicker.js";
129
+ import { isCustomAppSchema as ia, isQuickAppSchema as aa } from "./shared/application-schema.js";
130
+ import { getBrowserTimezone as oa } from "./shared/browser-timezone.js";
131
+ import { isValidAbsoluteUrl as sa, isValidFeaturesData as ca, parseFeaturesData as la } from "./shared/custom-apps.js";
132
+ import { buildExternalServiceScopeId as ua, getExternalServiceFallbackName as da, parseExternalServiceUrl as fa } from "./shared/external-services.js";
133
+ import { useChatSettingsFormConfig as pa } from "./useChatSettingsFormConfig/useChatSettingsFormConfig.js";
134
+ import { usePageFileDrag as ma } from "./usePageFileDrag/usePageFileDrag.js";
135
+ import { useViewportWidth as ha } from "./useViewportWidth/useViewportWidth.js";
136
+ import { usePanelMaxWidth as ga } from "./usePanelMaxWidth/usePanelMaxWidth.js";
137
+ import { useShareLink as _a } from "./useShareLink/useShareLink.js";
138
+ import { useToolsMenu as va } from "./useToolsMenu/useToolsMenu.js";
139
+ import { USAGE_DATA_I18N_KEYS as ya, mapUsageDataToDashboard as ba } from "./usage/map-usage-data-to-dashboard.js";
140
+ import { USAGE_MODEL_LIMITS_I18N_KEYS as xa, mapOverallCostLimitsToPeriodStatuses as Sa, mapUserUsageToModelLimits as Ca } from "./usage/map-user-usage-to-model-limits.js";
141
+ import { useUsageData as wa } from "./usage/useUsageData/useUsageData.js";
142
+ import { McpAppResourceFetchError as Ta, createMcpAppsApiClient as Ea } from "./mcp-apps/mcp-apps-api-client.js";
143
+ import { useMcpAppTools as Da } from "./mcp-apps/useMcpAppTools/useMcpAppTools.js";
144
+ import { useMcpAppHostContext as Oa } from "./mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js";
145
+ import { useMcpAppHostAdapter as ka } from "./mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js";
146
+ import { useOpenMcpAppCanvas as Aa } from "./mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js";
147
+ import { useGridEditingScroll as ja } from "@epam/ai-dial-chat-shared";
148
+ export { x as AttachmentValidationErrorReason, ur as AudioTranscriptionError, dr as AudioTranscriptionErrorReason, R as AuthenticationType, Rr as COLUMNS_WITHOUT_AUTHOR, zr as COLUMNS_WITH_AUTHOR, Br as CORE_PERMISSION_MAP, et as CatalogPrimaryActionType, T as ConversationExportMode, E as ConversationTransferErrorCode, D as ConversationTransferWarningCode, Vr as DATE_OPTIONS, zt as DEFAULT_GENERATION_CONFLICT_MESSAGE, Bt as DEFAULT_GENERATION_PERSISTENCE_ERROR_MESSAGE, pr as DEFAULT_MAX_ARCHIVE_BYTES, Gr as DialFileManagerActionProfile, Kr as DialFileManagerVariant, Pr as DialFilesApiUploadMode, Ji as DownloadDestinationType, k as EXPORT_APP_NAME, O as ExportFileNameKind, jt as FavoriteEntityType, Fr as FileManagerNotificationReason, Ir as FileNameValidationErrorReason, Lr as FileOperationKind, Vt as GenerationConflictError, Ht as GenerationPersistenceError, Ta as McpAppResourceFetchError, ze as McpResourceKind, ot as OAuthResourceKind, Hr as PATH_SEPARATOR_REGEXP, pn as PROMPT_CONTENT_MAX_LENGTH, mn as PROMPT_COUNTER_ANNOUNCE_THRESHOLD, hn as PROMPT_DESCRIPTION_MAX_LENGTH, gn as PROMPT_NAME_MAX_LENGTH, Te as PUBLIC_SKILL_BUCKET, _n as PromptFieldError, ae as PromptSource, Ur as RESERVED_MARKER_NAME, Zn as RecipientsCountStatus, ue as SKILL_FILE_UPLOAD_MAX_BYTES, Ee as SKILL_LISTING_MAX_PAGES, De as SKILL_LISTING_PAGE_SIZE, de as SKILL_MANIFEST_FILE, Oe as SKILL_MANIFEST_MAX_BYTES, fe as SKILL_UPLOAD_MAX_FILES, pe as SKILL_UPLOAD_MAX_TOTAL_BYTES, Tn as ScheduledTaskTriggerDescriptionKind, Kn as SkillArchiveImportErrorKind, qn as SkillArchiveImportStatus, Jn as SkillArchiveSelectionRejectionReason, zn as SkillEditorLoadState, Un as SkillPreviewErrorKind, ke as SkillSource, Ut as StreamUpstreamError, st as TOOLSET_REDIRECT_STATE_KEY, ct as ToolsetAuthStatus, lt as ToolsetAuthTypes, ut as ToolsetCredentialsLevel, Et as ToolsetLoginOutcomeType, dt as ToolsetOAuthCallbackQuery, ft as ToolsetOAuthChannelControlType, pt as ToolsetOAuthFailureReason, mt as ToolsetOAuthInitiationResultType, ht as ToolsetOAuthResultType, Wr as UPLOAD_CONCURRENCY, ya as USAGE_DATA_I18N_KEYS, xa as USAGE_MODEL_LIMITS_I18N_KEYS, wn as UnsupportedTriggerReason, gt as WithLogin, Hi as annotationToDisplayAttachment, wi as annotationToOoxmlCanvasContent, Ti as annotationToPdfCanvasContent, Dn as apSchedulerDayToJsDay, W as appendLocaleCode, kr as applyChunkToMessages, Ui as attachmentDtoToDisplayAttachment, Wi as attachmentDtosToDisplayAttachments, hr as attachmentToDto, gr as attachmentsToDtos, G as buildAdditionalLocaleOptions, Pt as buildAnnouncementSignature, Be as buildApplicationMcpUrl, N as buildChatCompletionsUrl, Ve as buildConnectApi, P as buildDeploymentConnectApi, ua as buildExternalServiceScopeId, fi as buildFromCache, un as buildPromptExportEnvelope, dn as buildPromptExportFileName, se as buildPromptOverview, vn as buildPromptPath, F as buildResponsesUrl, Jr as buildSharedItemVirtualPath, je as buildSkillContentTree, me as buildSkillFilesPayload, he as buildSkillManifest, ge as buildSkillManifestForSubmit, _e as buildSkillManifestFromFrontmatter, Me as buildSkillOverview, xt as buildToolsetAuthorizeUrl, He as buildToolsetMcpUrl, Yn as classifySkillArchiveImportError, Ei as clearAttachmentCache, K as composeLocalePayload, Wt as createChatStreamApi, i as createCsrfMiddleware, Xt as createDeploymentChangedMessage, xi as createFilesApiClient, Ea as createMcpAppsApiClient, _r as createMessagePair, j as createPublishApiClient, Pn as createScheduledTasksApiClient, a as createUnauthorizedMiddleware, Si as createUploadFileWithProgress, V as decodeToolsetId, q as decomposeLocalizedFields, qr as deriveActionProfile, Ye as deriveAvailableTabIds, $n as deriveConversationRowActionState, Xe as deriveFavoriteItems, En as describeScheduledTaskTrigger, Yr as dialCorePathToRelative, Gi as dialFileToAttachment, Ki as dialFilesToAttachments, qi as dialFolderPathToAttachment, m as downloadAttachment, _t as emitToolsetLoginSuccess, I as encodeDeploymentId, H as encodeToolsetId, pi as fetchByTab, mi as fetchForSearch, Ze as filterCatalogItemsBySelector, Qe as filterHiddenOwnedItems, L as findDeploymentByIdOrReference, Xr as findDialFileByPath, hi as findFirstSuccessfulCopyMoveItem, Zr as findFolderByVirtualPath, Kt as formatAppVersion, X as formatCalendarDate, C as formatDateYM, w as formatDateYMD, Qr as formatOperationFolderName, A as formatQuotedNameList, e as getApiErrorDetails, t as getApiErrorMessage, n as getApiErrorStatus, oa as getBrowserTimezone, Tr as getConversationPath, rr as getConversationSource, da as getExternalServiceFallbackName, Zt as getLastDeploymentId, Qt as getLastUserMessageToolConfiguration, Jt as getModelIdFromConversationId, si as getParentFolderPath, We as getPublicCatalogEntityFolderPath, rn as getQuickAppConversationStarters, yn as getRemainingCharacters, Sr as getStarterConversationText, Cr as getStarterDisplayText, sn as getStarterPopulateText, wr as getStarterSubmitText, cn as getStartersFromSchema, Yt as getTimeOfDayGreeting, yt as getToolsetOAuthChannelName, St as getToolsetRedirectUri, zi as getUrlFileName, $r as getVirtualPathName, vr as hasActiveToolConfig, Ft as hasAnnouncementContent, Di as hasAttachmentTextSource, ei as hasDialFileWritePermission, ti as hasForbiddenNameSymbols, It as hasStructuredAnnouncement, o as includesIgnoreCase, Ct as initiateOAuthLogin, yr as isAnswerIncomplete, jr as isAwaitingGenerationResume, r as isConversationNotFoundError, ni as isCopyMoveDuplicateAllowed, ia as isCustomAppSchema, _ as isDialFileAcceptType, d as isDialFileId, h as isDownloadableAttachment, Bi as isExternalSourcePreviewable, br as isMessageChanged, $t as isMessageStreaming, ce as isOrganisationPromptItem, Ge as isPublicCatalogEntityId, U as isPublicToolsetId, aa as isQuickAppSchema, ri as isShareActionsAllowed, sa as isValidAbsoluteUrl, ca as isValidFeaturesData, ve as isValidSkillRelativePath, On as jsDayToApSchedulerDay, gi as mapCorePermissions, Q as mapDeploymentDetailsDtoToEntityDetails, z as mapDeploymentLimitsDtoToCatalogLimits, B as mapDeploymentLimitsToInput, te as mapDeploymentToCatalogItem, ne as mapDeploymentToolsetCredentials, $ as mapEntityDetailsToCatalogDetails, _i as mapFileMetadataToDialFile, kn as mapFormValuesToCreateBody, An as mapFormValuesToUpdateBody, Sa as mapOverallCostLimitsToPeriodStatuses, le as mapPromptToCatalogItem, Ke as mapPublishConversationResultDto, qe as mapPublishHistoryEntryDto, jn as mapScheduledTaskDtoToFormValues, vi as mapSearchItem, Ne as mapSkillToCatalogItem, an as mapStages, ee as mapToolsetCredentials, re as mapToolsetToCatalogItem, ba as mapUsageDataToDashboard, Ca as mapUserUsageToModelLimits, yi as mergeCreatedFolderIntoCache, Ar as mergeStages, en as messageHasStages, v as mimeTypesToAttachmentExtensionLabels, y as mimeTypesToDialFileAcceptTypes, b as mimeTypesToFileAccept, ye as nameFromPath, wt as navigateToolsetOAuthPopup, tn as normalizeResponseFormat, be as normalizeSkillName, ii as normalizeVirtualPath, Ci as openAnnotationAttachment, Tt as openToolsetOAuthPopup, Z as padTwoDigits, fa as parseExternalServiceUrl, la as parseFeaturesData, ai as parseNewFolderVirtualPath, oe as parsePromptResourceUrl, xe as parseSkillManifest, rt as parseSkillManifestDocument, Ae as parseSkillResourceUrl, ui as prepareCopyItems, Yi as prepareDownloadDestination, di as prepareMoveRenameItems, Mn as prepareScheduledTaskCreateBody, Nn as prepareScheduledTaskUpdateBody, Pe as readSkillFileBytes, Fe as readSkillFilePreviewBytes, Ie as readSkillManifest, $e as reconcileFilterTopics, Oi as referenceAttachmentToPdfCanvasContent, tt as resolveCatalogPrimaryAction, ki as resolveCodeCanvasContent, ie as resolveDeploymentFolder, ci as resolveDialFileApiPath, f as resolveDialFileBucketAndPath, Vi as resolveExternalSourceContentType, Ai as resolveGroupedVisualizerCanvasContent, ji as resolveHtmlCanvasContent, Mi as resolveImageCanvasContent, Ni as resolveJsonCanvasContent, J as resolveLocalizedText, Pi as resolveMarkdownCanvasContent, Ue as resolveMcpResourceKind, Fi as resolveOoxmlCanvasContent, oi as resolveOwnerCoords, Ii as resolvePdfCanvasContent, p as resolveRelativeDialFilePath, Le as resolveSkillFileDownloadPath, Re as resolveSkillManifestFileId, Li as resolveTextCanvasContent, Ri as resolveVisualizerCanvasContent, s as safeDecodeURI, c as safeDecodeURIComponent, Lt as sanitizeAnnouncementHtml, Rt as sanitizeAnnouncementMessageHtml, or as sanitizeFileName, qt as sanitizeFooterHtml, fn as serializePromptExport, xr as shouldRerunGenerationOnEdit, Gt as shouldWatchForDisplayNameUpdate, Se as skillFileBytesToBlob, Rn as skillFileToAttachment, sr as splitFileNameExtension, Ce as startsWithFrontmatterBlock, l as stripSurroundingSlashes, u as stripTrailingSlashes, vt as subscribeToolsetLoginSuccess, Y as toBaseLocale, nn as toOverlayMessages, Je as toPublishEntityType, M as toPublishRuleDto, on as toStage, cr as trimFileNameToByteLimit, we as unpackSkillArchive, bi as updateEntry, er as useActiveConversationSync, kt as useApplicationCredentials, tr as useAsyncConfirmDialog, g as useAttachmentAction, lr as useAttachmentUpload, S as useAttachmentValidation, nt as useCatalogEditNavigation, at as useCatalogItemDetails, Ot as useCatalogToolsetCredentials, pa as useChatSettingsFormConfig, mr as useConversationExport, Er as useConversationHandlers, Dr as useConversationImport, nr as useConversationLookupMaps, ir as useConversationPanelItems, Or as useConversationScroll, Nr as useConversationSources, Mr as useConversationStream, Xi as useDialFileListing, ta as useDialFileManager, na as useDialFileManagerTabConfig, Zi as useDialFileMetadata, Qi as useDialFileMutations, $i as useDialFileSharing, ea as useDialFileUploadBatch, Mt as useFavoriteEntitiesState, ra as useFileAttachmentPicker, ja as useGridEditingScroll, ar as useImportFilePicker, ka as useMcpAppHostAdapter, Oa as useMcpAppHostContext, Da as useMcpAppTools, ln as useOAuthCallbackCompletion, Aa as useOpenMcpAppCanvas, ma as usePageFileDrag, ga as usePanelMaxWidth, Cn as usePromptsState, Nt as usePublishFolders, In as useScheduledTaskRuns, Fn as useScheduledTasks, _a as useShareLink, Qn as useShareRecipientsCount, Xn as useSkillArchiveImport, At as useSkillDetailsPanelData, Bn as useSkillEditorLoad, Vn as useSkillEditorSubmit, Hn as useSkillFileActions, Wn as useSkillFilePreview, it as useSkillItemDetails, Gn as useSkillsState, va as useToolsMenu, Dt as useToolsetLogin, fr as useTranscribeAudio, wa as useUsageData, ha as useViewportWidth, bn as validatePromptContent, xn as validatePromptDescription, Sn as validatePromptName, Ln as validateSkillFileBatch, li as virtualPathToApiPath, bt as waitForToolsetOAuthResult };
@@ -2,8 +2,8 @@ import { getApiErrorMessage as e } from "../../api-error/api-error.js";
2
2
  import { useMcpAppHostContext as t } from "../useMcpAppHostContext/useMcpAppHostContext.js";
3
3
  import { useMemo as n } from "react";
4
4
  //#region src/mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.ts
5
- var r = (r, i, a, o) => {
6
- let s = t(r, o), c = n(() => async (t, n, r, a) => {
5
+ var r = (r, i, a, o, s) => {
6
+ let c = t(r, o), l = n(() => async (t, n, r, a) => {
7
7
  try {
8
8
  return await i.callTool(t, n, r, a);
9
9
  } catch (t) {
@@ -11,15 +11,17 @@ var r = (r, i, a, o) => {
11
11
  }
12
12
  }, [i]);
13
13
  return n(() => ({
14
- hostContext: s,
14
+ hostContext: c,
15
+ hostInfo: s,
15
16
  sandboxUrl: a,
16
17
  fetchResourceHtml: i.fetchResourceHtml,
17
- callTool: c
18
+ callTool: l
18
19
  }), [
20
+ c,
19
21
  s,
20
22
  a,
21
23
  i.fetchResourceHtml,
22
- c
24
+ l
23
25
  ]);
24
26
  };
25
27
  //#endregion
@@ -11,7 +11,7 @@ var t = /* @__PURE__ */ "--color-background-primary.--color-background-secondary
11
11
  theme: i ?? r,
12
12
  locale: a,
13
13
  timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
14
- userAgent: o ?? "ai-dial-chat",
14
+ userAgent: o ?? navigator.userAgent,
15
15
  platform: "web",
16
16
  displayMode: t,
17
17
  availableDisplayModes: s ?? ["inline", "fullscreen"],
@@ -65,7 +65,7 @@ var a = (a, o, s, c) => {
65
65
  m,
66
66
  c,
67
67
  a
68
- ]), [...l, ...d];
68
+ ]), t(() => [...l, ...d], [l, d]);
69
69
  };
70
70
  //#endregion
71
71
  export { a as useMcpAppTools };
@@ -4,56 +4,58 @@ import { useCallback as i, useEffect as a, useRef as o } from "react";
4
4
  import { computeMcpAppSeedKey as s, resolveMcpAppToolResult as c } from "@epam/ai-dial-mcp-apps";
5
5
  //#region src/mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.ts
6
6
  var l = (l, u, d, f) => {
7
- let { openCanvas: p, openCanvasLoading: m, closeCanvas: h } = r(), { hostContext: g, sandboxUrl: _, fetchResourceHtml: v, callTool: y } = u, b = i((e) => e === "inline" ? (h(), "inline") : "fullscreen", [h]), x = o(null), S = i(async (r, i, a, o = !1) => {
8
- if (_ == null) return !1;
9
- f?.(), m(d.title, i);
7
+ let { openCanvas: p, openCanvasLoading: m, closeCanvas: h } = r(), { hostContext: g, hostInfo: _, sandboxUrl: v, fetchResourceHtml: y, callTool: b } = u, x = i((e) => e === "inline" ? (h(), "inline") : "fullscreen", [h]), S = o(null), C = i(async (r, i, a, o = !1) => {
8
+ if (v == null) return !1;
9
+ f?.(), m(r.mcpToolName, i);
10
10
  try {
11
11
  let e = s(a), n = async () => {
12
- let [e, t] = await Promise.all([v(r.toolsetId, r.resourceUri), c(r, a, y)]);
12
+ let [e, t] = await Promise.all([y(r.toolsetId, r.resourceUri), c(r, a, b)]);
13
13
  return {
14
14
  html: e,
15
15
  toolResult: t
16
16
  };
17
- }, u, f;
18
- return i != null && !o ? {html: u, toolResult: f} = await l.getOrFetch(i, e, n) : ({html: u, toolResult: f} = await n(), i != null && l.set(i, {
17
+ }, u, d;
18
+ return i != null && !o ? {html: u, toolResult: d} = await l.getOrFetch(i, e, n) : ({html: u, toolResult: d} = await n(), i != null && l.set(i, {
19
19
  html: u,
20
- toolResult: f
20
+ toolResult: d
21
21
  }, e)), p({
22
22
  type: t.McpApp,
23
23
  html: u,
24
- sandboxUrl: _,
24
+ sandboxUrl: v,
25
25
  toolInput: a?.toolInput,
26
- toolResult: f,
26
+ toolResult: d,
27
27
  hostContext: g,
28
- onToolCall: (e, t) => y(r.toolsetId, e, t, r.kind),
29
- onRequestDisplayMode: b,
28
+ hostInfo: _,
29
+ onToolCall: (e, t) => b(r.toolsetId, e, t, r.kind),
30
+ onRequestDisplayMode: x,
30
31
  onReload: () => {
31
- i != null && l.invalidate(i), x.current?.(r, i, a, !0);
32
+ i != null && l.invalidate(i), S.current?.(r, i, a, !0);
32
33
  }
33
- }, d.title, i), !0;
34
- } catch (r) {
35
- let a = r instanceof e && r.status === 403;
34
+ }, r.mcpToolName, i), !0;
35
+ } catch (a) {
36
+ let o = a instanceof e && a.status === 403;
36
37
  return p({
37
38
  type: t.Error,
38
- errorType: a ? n.Forbidden : n.LoadFailed,
39
- label: a ? d.forbiddenErrorLabel : d.loadErrorLabel
40
- }, d.title, i), !1;
39
+ errorType: o ? n.Forbidden : n.LoadFailed,
40
+ label: o ? d.forbiddenErrorLabel : d.loadErrorLabel
41
+ }, r.mcpToolName, i), !1;
41
42
  }
42
43
  }, [
43
44
  p,
44
45
  m,
45
46
  f,
46
- _,
47
- g,
48
47
  v,
48
+ g,
49
+ _,
49
50
  y,
51
+ b,
50
52
  l,
51
53
  d,
52
- b
54
+ x
53
55
  ]);
54
56
  return a(() => {
55
- x.current = S;
56
- }, [S]), { openMcpAppCanvas: S };
57
+ S.current = C;
58
+ }, [C]), { openMcpAppCanvas: C };
57
59
  };
58
60
  //#endregion
59
61
  export { l as useOpenMcpAppCanvas };
package/mcp-apps.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
2
2
  import { DeploymentItemDto } from '@epam/ai-dial-chat-api-client';
3
3
  import { DialToolsetDto } from '@epam/ai-dial-chat-api-client';
4
+ import { Implementation } from '@modelcontextprotocol/sdk/types.js';
4
5
  import { McpAppToolSummaryDto } from '@epam/ai-dial-chat-api-client';
5
6
  import { McpUiHostContext } from '@mcp-ui/client';
6
7
  import { Message } from '@epam/ai-dial-chat-shared';
@@ -48,6 +49,8 @@ declare type McpAppDisplayMode = NonNullable<McpUiHostContext['displayMode']>;
48
49
  declare interface McpAppHostAdapter {
49
50
  /** `McpUiHostContext` to deliver to the mounted app's `ui/initialize` handshake. */
50
51
  hostContext: McpUiHostContext;
52
+ /** Host identity (`name`/`version`) to deliver to the mounted app's `ui/initialize` handshake. */
53
+ hostInfo: Implementation;
51
54
  /** Operator-configured MCP Apps sandbox-proxy URL, or `null` when unconfigured. */
52
55
  sandboxUrl: string | null;
53
56
  /** Fetches the matched tool's MCP Apps `ui://` resource. */
@@ -64,7 +67,7 @@ export declare interface McpAppHostContextParams {
64
67
  mcpAppTheme?: string;
65
68
  /** Host's current i18n locale (BCP 47). */
66
69
  locale: string;
67
- /** Operator-configured MCP App user-agent override. Defaults to `'ai-dial-chat'`. */
70
+ /** Operator-configured MCP App user-agent override. Defaults to the browser's own `navigator.userAgent`. */
68
71
  mcpAppUserAgent?: string;
69
72
  /**
70
73
  * Display modes the host can switch an app between via
@@ -180,10 +183,11 @@ declare type McpDeploymentKind = 'toolset' | 'application';
180
183
  * Builds the `McpAppHostAdapter` a host injects into `@epam/ai-dial-mcp-apps`'s
181
184
  * hooks/components, wiring the library's host-context/tool-call/resource-fetch
182
185
  * contract to a configured `McpAppsApiClient` and this app's theme/locale/config
183
- * values (`hostContextParams`, `sandboxUrl`) — this hook itself never reads app
184
- * context, so a host builds those values wherever it already has them.
186
+ * values (`hostContextParams`, `sandboxUrl`), plus the host's own identity
187
+ * (`hostInfo`) — this hook itself never reads app context, so a host builds
188
+ * those values wherever it already has them.
185
189
  */
186
- export declare const useMcpAppHostAdapter: (displayMode: "inline" | "fullscreen", client: McpAppsApiClient, sandboxUrl: string | null, hostContextParams: McpAppHostContextParams) => McpAppHostAdapter;
190
+ export declare const useMcpAppHostAdapter: (displayMode: "inline" | "fullscreen", client: McpAppsApiClient, sandboxUrl: string | null, hostContextParams: McpAppHostContextParams, hostInfo: Implementation) => McpAppHostAdapter;
187
191
 
188
192
  /**
189
193
  * Builds the `McpUiHostContext` delivered to a mounted MCP App during its
@@ -243,8 +247,6 @@ export declare const useOpenMcpAppCanvas: (cache: McpAppResponseCache, hostAdapt
243
247
 
244
248
  /** User-facing text `useOpenMcpAppCanvas` needs but cannot resolve itself — a lib must not call `t()`. */
245
249
  export declare interface UseOpenMcpAppCanvasLabels {
246
- /** Canvas panel title while an MCP App is loading or open. */
247
- title: string;
248
250
  /** Error label shown when the resource fetch is forbidden (HTTP 403). */
249
251
  forbiddenErrorLabel: string;
250
252
  /** Error label shown for any other resource-load/tool-call failure. */