@frontera-sdk/chat-ui 1.53.25 → 1.53.26

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/dist/chat.js CHANGED
@@ -1,20 +1,20 @@
1
1
  'use client';
2
2
  import { offset, flip, autoUpdate, computePosition } from './chunk-I7SXWUAN.js';
3
3
  import { isFullscreenHotkey, DeckNotesCard, deckOwnsArrowKeys } from './chunk-4FRTPVJT.js';
4
- import { ArtifactSkeleton, resolveStageWidth, zoomPercent, DECK_ZOOM_LEVELS, LazyThumb } from './chunk-PU75S6NF.js';
5
- import { NewSessionPrompt, keepCaretOnTap } from './chunk-FBDBLAX5.js';
4
+ import { ArtifactSkeleton, resolveStageWidth, zoomPercent, DECK_ZOOM_LEVELS, LazyThumb } from './chunk-JYVL7J7E.js';
5
+ import { NewSessionPrompt, keepCaretOnTap } from './chunk-53DJ56SR.js';
6
6
  import { PendingCards } from './chunk-A4GIIAMQ.js';
7
7
  import { themeToStyle } from './chunk-6HYPVNVA.js';
8
8
  import { useChatAgents } from './chunk-NDU6ERVT.js';
9
9
  import { subjectOfChatToken, capabilitiesOfChatToken } from './chunk-CCVPZVFK.js';
10
10
  import { useChatCredential } from './chunk-6BCUAPW3.js';
11
11
  import './chunk-WDYCLC4F.js';
12
- import { chatSidePanelSessionKey, Chart1Icon, useTemplatePreviewStore, useHasTemplatePreviewHost, useChatSidePanelStore, ChatHeader, ChatHeaderActions, useRightPane, getChatOverviewAgentStatus, useChatOverviewVisible, useConversationArtifacts, PENDING_CHART_TAB_PREFIX, CHART_TAB_PREFIX, AGENT_WORK_TAB_ID, AGENT_ROUTINES_TAB_ID, SOURCES_TAB_ID, TEMPLATE_TAB_ID, OutputsSection, ChainLink1Icon, ChatOverviewContent, COMPUTER_TAB_PREFIX, SourceRow, motion, MAX_CHAT_SIDE_PANEL_SESSIONS, DEFAULT_CHAT_SIDE_PANEL_SIZE, TableIcon } from './chunk-JIOJ6VJ4.js';
13
- import { dynamic, useChatStreamStore, useComposerStore, Message, Thinking, setPendingFiles, usePersonConfirmations, unshownPendingConfirmations, ConversationConfirmationCard, useLivePreviewUrl, ArrowRotateClockwiseIcon, useComputerFiles, useUploadComputerFile, CanvasWidget, isPlainTextLanguage, useUploadFile, COMPOSER_ID_MAIN, useContextWindowInfo, useIsCompacting, useQueuedMessages, VolumeFullIcon, WarningSignIcon, useComputer, csvTextToWorkbookJson, CSV_PREVIEW_MAX_ROWS, CopyButton, COMPOSER_ID_COPILOT, ModelIcon, modeToBrandRow, useBackDismiss, PdfViewer, brandLabel, Spinner } from './chunk-GGIFLPU5.js';
14
- import { Textarea, resolveChatHost, artifactFormatIcon, BookIcon, useAgentRoster, ShieldCheckIcon, useArtifactStore, useCanvasStore, useChatOverviewStore, setSdkConversationPath, setSdkDarkMode, AgentsProvider, PluginProvider, WorkspaceProvider, TooltipProvider, ChatHostProvider, getPersonConfirmation, isToolPart, getToolState, getToolName, getToolInput, sourceKind, extractDomain, CitationViewerContext, MarkdownRenderer, ConnectRunnerContext, usePathname, useChatSurfaceProvider, usePaneFocusStore, useAgentPanelStore, Tooltip, TooltipTrigger, TooltipContent, StudioDisplayIcon, WorldIcon, SlidesWideIcon, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, ArrowsShowIcon, useKeyboardInset, ExclamationCircleIcon, getToolOutput, useArtifact, useUpdateArtifact, useArtifactFileObjectUrl, resolveArtifactIconFormat, useSourcesEnrichment, LoaderIcon, FileDownloadIcon, Label, Input, renderPluginBlock, useArtifactVersion, useChatCapabilities, useChatCapabilityEnabled, useChatOptInEnabled, useChatHost, useSessionPendingApprovals, tableToCsv, tableToXlsx, tableToMarkdown, DropdownMenu, DropdownMenuTrigger, StyledDropdownMenuContent, StyledDropdownMenuItem, useArtifactVersions, useClient, unwrapData, authFetch, getBearerHeadersForApi, EyeOpenIcon, EyeSlashIcon, useRestoreArtifactVersion, ZoomableImage, ChatImageLightbox, useDownloadArtifact, useArtifactFileBytes, useArtifactPreviewFileObjectUrl, useArtifactVersionPreviewFileObjectUrl, errorText, SpreadsheetIcon, FilePdfIcon, useOptionalWorkspaceContext, useAgentConnectionStatus, useArtifacts, useSession, useWorkspaceContext, useConversationDesktopStatus, isRequestHumanTool, appsKeys, unwrapDataDeep, useRouter, Images1Icon, ArrowUpIcon, VideoIcon, AudioIcon, useBrand, resolveBearerHeaders, subscribeSdkDarkMode, getSdkDarkMode, unwrap, useConnectRunner, useStartUserConnect, useUpsertGrant, useRevokeGrant, AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction, LayoutGrid1Icon, useCatalog, useInstalls, useWorkspaceSlug, buildTenantUrlAbsolute } from './chunk-MPFDU3UN.js';
12
+ import { chatSidePanelSessionKey, Chart1Icon, useTemplatePreviewStore, useHasTemplatePreviewHost, useChatSidePanelStore, ChatHeader, ChatHeaderActions, useRightPane, getChatOverviewAgentStatus, useChatOverviewVisible, useConversationArtifacts, PENDING_CHART_TAB_PREFIX, CHART_TAB_PREFIX, AGENT_WORK_TAB_ID, AGENT_ROUTINES_TAB_ID, SOURCES_TAB_ID, TEMPLATE_TAB_ID, OutputsSection, ChainLink1Icon, ChatOverviewContent, COMPUTER_TAB_PREFIX, SourceRow, motion, MAX_CHAT_SIDE_PANEL_SESSIONS, DEFAULT_CHAT_SIDE_PANEL_SIZE, TableIcon } from './chunk-ZMDY2XNY.js';
13
+ import { dynamic, useChatStreamStore, useComposerStore, Message, Thinking, setPendingFiles, usePersonConfirmations, unshownPendingConfirmations, ConversationConfirmationCard, useLivePreviewUrl, ArrowRotateClockwiseIcon, useComputerFiles, useUploadComputerFile, CanvasWidget, isPlainTextLanguage, useUploadFile, COMPOSER_ID_MAIN, useContextWindowInfo, useIsCompacting, useQueuedMessages, VolumeFullIcon, WarningSignIcon, useComputer, csvTextToWorkbookJson, CSV_PREVIEW_MAX_ROWS, CopyButton, COMPOSER_ID_COPILOT, ModelIcon, modeToBrandRow, useBackDismiss, PdfViewer, brandLabel, Spinner } from './chunk-TJABFPOO.js';
14
+ import { Textarea, resolveChatHost, artifactFormatIcon, BookIcon, useAgentRoster, ShieldCheckIcon, useArtifactStore, useCanvasStore, useChatOverviewStore, setSdkConversationPath, setSdkDarkMode, AgentsProvider, PluginProvider, WorkspaceProvider, TooltipProvider, ChatHostProvider, getPersonConfirmation, isToolPart, getToolState, getToolName, getToolInput, sourceKind, extractDomain, CitationViewerContext, MarkdownRenderer, ConnectRunnerContext, usePathname, useChatSurfaceProvider, usePaneFocusStore, useAgentPanelStore, Tooltip, TooltipTrigger, TooltipContent, StudioDisplayIcon, WorldIcon, SlidesWideIcon, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, ArrowsShowIcon, useKeyboardInset, ExclamationCircleIcon, getToolOutput, useArtifact, useUpdateArtifact, useArtifactFileObjectUrl, resolveArtifactIconFormat, useSourcesEnrichment, LoaderIcon, FileDownloadIcon, Label, Input, renderPluginBlock, useArtifactVersion, useChatCapabilities, useChatCapabilityEnabled, useChatOptInEnabled, useChatHost, useSessionPendingApprovals, tableToCsv, tableToXlsx, tableToMarkdown, DropdownMenu, DropdownMenuTrigger, StyledDropdownMenuContent, StyledDropdownMenuItem, useArtifactVersions, useClient, unwrapData, authFetch, getBearerHeadersForApi, EyeOpenIcon, EyeSlashIcon, useRestoreArtifactVersion, ZoomableImage, ChatImageLightbox, useDownloadArtifact, useArtifactFileBytes, useArtifactPreviewFileObjectUrl, useArtifactVersionPreviewFileObjectUrl, errorText, SpreadsheetIcon, FilePdfIcon, useOptionalWorkspaceContext, useAgentConnectionStatus, useArtifacts, useSession, useWorkspaceContext, useConversationDesktopStatus, isRequestHumanTool, appsKeys, unwrapDataDeep, useRouter, Images1Icon, ArrowUpIcon, VideoIcon, AudioIcon, useBrand, resolveBearerHeaders, subscribeSdkDarkMode, getSdkDarkMode, unwrap, useConnectRunner, useStartUserConnect, useUpsertGrant, useRevokeGrant, AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction, LayoutGrid1Icon, useCatalog, useInstalls, useWorkspaceSlug, buildTenantUrlAbsolute } from './chunk-CQFY4GBK.js';
15
15
  import { ChevronLeftIcon } from './chunk-CWAOLMFS.js';
16
16
  import { Popover, PopoverTrigger, PopoverContent, Sheet, SheetContent, SheetHeader, SheetTitle, SheetDescription } from './chunk-RQSMCGBR.js';
17
- import { MOBILE_BREAKPOINT, useIsMobile, I18nProvider, useTranslation } from './chunk-GP43ZTG6.js';
17
+ import { MOBILE_BREAKPOINT, useIsMobile, I18nProvider, useTranslation } from './chunk-LDHGDCPF.js';
18
18
  import './chunk-R3ONYPUB.js';
19
19
  import { AppIcon, frontera_icon_default, PhotoIcon, Folder1Icon, FileTextIcon, describeToolRow, SquareArrowTopRightIcon, ClipboardIcon, getToolMeta, useStreamdownPlugins, AppIconFrame, MessageResponse } from './chunk-K7AIK7TA.js';
20
20
  import { Skeleton, Button, ScrollArea, ChevronDownMediumIcon, buttonVariants } from './chunk-UWKO24VT.js';
@@ -42397,7 +42397,7 @@ function SheetEditor({ content, onSave, readOnly = false }) {
42397
42397
  );
42398
42398
  }
42399
42399
  var PdfDocumentViewInner = dynamic(
42400
- () => import('./pdf-document-view-inner-SW5LCGJW.js'),
42400
+ () => import('./pdf-document-view-inner-HXF5B5H6.js'),
42401
42401
  {
42402
42402
  ssr: false,
42403
42403
  loading: () => /* @__PURE__ */ jsx(ArtifactSkeleton, { format: "pdf" })
@@ -43218,7 +43218,7 @@ function HtmlDeckView({ content, inChat = false, versionSlot }) {
43218
43218
  !present && inChat && /* @__PURE__ */ jsx(DeckEditPanel, { currentIndex: sel, currentHtml: slides[sel]?.html ?? "" })
43219
43219
  ] });
43220
43220
  }
43221
- var Inner = dynamic(() => import('./pdf-deck-view-inner-2R6AFHKA.js'), {
43221
+ var Inner = dynamic(() => import('./pdf-deck-view-inner-HYJBHR25.js'), {
43222
43222
  ssr: false,
43223
43223
  loading: () => /* @__PURE__ */ jsx(ArtifactSkeleton, { format: "htmldeck" })
43224
43224
  });
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { Sheet, SheetContent, SheetHeader, SheetTitle, Popover, PopoverTrigger, PopoverContent, MagnifyingGlassIcon } from './chunk-RQSMCGBR.js';
3
- import { useIsMobile, useTranslation } from './chunk-GP43ZTG6.js';
3
+ import { useIsMobile, useTranslation } from './chunk-LDHGDCPF.js';
4
4
  import { CrossMediumIcon } from './chunk-37WYG6VG.js';
5
5
  import { AgentAvatar } from './chunk-RCWVJD7G.js';
6
6
  import { cn, Checkmark1Icon } from './chunk-LGVMMBL3.js';
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  import { ChevronLeftIcon } from './chunk-CWAOLMFS.js';
3
3
  import { MagnifyingGlassIcon, Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from './chunk-RQSMCGBR.js';
4
- import { useIsMobile, useTranslation } from './chunk-GP43ZTG6.js';
4
+ import { useIsMobile, useTranslation } from './chunk-LDHGDCPF.js';
5
5
  import { ToolCallItem, ProcessorIcon } from './chunk-R3ONYPUB.js';
6
6
  import { describeToolRow, toolKindLabel, getToolMeta, Shimmer, Collapse, ToolGroupReasoningItem, SkillToolItem, DeviceDesktopIcon, WorldSearchIcon, FileTextIcon, useStreamdownPlugins, CircleXIcon, STREAMDOWN_LINK_SAFETY, Folder1Icon, AppIconFrame, AppIcon, Collapsible, CollapsibleTrigger, CollapsibleContent, SquareArrowTopRightIcon, Icon } from './chunk-K7AIK7TA.js';
7
7
  import { ChevronDownMediumIcon, Button, Skeleton, buttonVariants } from './chunk-UWKO24VT.js';
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { useTranslation } from './chunk-GP43ZTG6.js';
2
+ import { useTranslation } from './chunk-LDHGDCPF.js';
3
3
  import { Skeleton } from './chunk-UWKO24VT.js';
4
4
  import { useRef, useState, useEffect } from 'react';
5
5
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -6170,6 +6170,9 @@ var en_default = {
6170
6170
  "omnichannel.inbox.sender.you": "You",
6171
6171
  "omnichannel.inbox.sender.humanAgent": "Human Agent",
6172
6172
  "omnichannel.inbox.sender.automatic": "Automatic reply",
6173
+ "omnichannel.inbox.sender.broadcast": "Broadcast",
6174
+ "omnichannel.inbox.sender.broadcastNamed": "Broadcast \xB7 {name}",
6175
+ "omnichannel.inbox.sender.kataCxApi": "Kata CX API",
6173
6176
  "omnichannel.inbox.status.pending": "Sending",
6174
6177
  "omnichannel.inbox.status.sent": "Sent",
6175
6178
  "omnichannel.inbox.status.delivered": "Delivered",
@@ -6299,7 +6302,7 @@ var en_default = {
6299
6302
  "omnichannel.inbox.composer.noteFailed": "The note was not added",
6300
6303
  "omnichannel.inbox.composer.closing": "Reply window: {hours} h left",
6301
6304
  "omnichannel.inbox.composer.closingSoon": "Reply window: less than 1 h left",
6302
- "omnichannel.inbox.composer.lowCredit": "This channel is low on message credit: {credit} left. Ask a Supervisor to top it up.",
6305
+ "omnichannel.inbox.composer.lowCreditAsk": "Low. Ask a Supervisor to top up.",
6303
6306
  "omnichannel.inbox.composer.takeOver": "Take over to reply",
6304
6307
  "omnichannel.inbox.composer.other": "{name} is handling this chat",
6305
6308
  "omnichannel.inbox.refused.closed": "This chat was already closed.",
@@ -6545,6 +6548,9 @@ var en_default = {
6545
6548
  "omnichannel.channels.login.passwordRequired": "Enter the password.",
6546
6549
  "omnichannel.channels.login.rejected": "Kata did not accept this login",
6547
6550
  "omnichannel.channels.login.none": "Not set",
6551
+ "omnichannel.channels.credit.balanceOf": "{kind} balance",
6552
+ "omnichannel.channels.credit.count": "{credit} credits",
6553
+ "omnichannel.channels.credit.countOne": "{credit} credit",
6548
6554
  "omnichannel.channels.credit.label": "Message credit",
6549
6555
  "omnichannel.channels.intro": "The WhatsApp numbers your customers write to. Open one to choose who answers first, its team and reply target, and to see its message credit.",
6550
6556
  "omnichannel.channels.section.answers": "Who answers",
@@ -6562,7 +6568,6 @@ var en_default = {
6562
6568
  "omnichannel.channels.credit.low": "Credit is low (at or below {threshold}). Top it up before template sends and replies stop going out.",
6563
6569
  "omnichannel.channels.credit.lowChip": "Low credit",
6564
6570
  "omnichannel.channels.credit.unavailable": "This channel's credit isn't available to show yet.",
6565
- "omnichannel.channels.credit.amountOne": "{credit} credit left",
6566
6571
  "omnichannel.channels.credit.checkedOn": "Checked {time}",
6567
6572
  "omnichannel.channels.credit.error.login": "Kata refused this channel's login, so the credit couldn't be read. Check the channel's Kata username and password.",
6568
6573
  "omnichannel.channels.credit.error.busy": "Kata is busy, so the credit couldn't be read. Try again in a minute.",
@@ -6573,6 +6578,22 @@ var en_default = {
6573
6578
  "omnichannel.channels.login.saved": "Login changed",
6574
6579
  "omnichannel.channels.error.unreachable": "Kata could not be reached. Try again.",
6575
6580
  "omnichannel.channels.error.failed": "The change could not be saved. Try again.",
6581
+ "omnichannel.channels.kataCx.title": "Kata CX",
6582
+ "omnichannel.channels.kataCx.description": "Show the templates this number sends from Kata CX, through Broadcast or the API, in the chats its customers already have here, and keep its credit current.",
6583
+ "omnichannel.channels.kataCx.notConnected": "Not connected. Templates sent from Kata CX don't show here.",
6584
+ "omnichannel.channels.kataCx.wasDisconnected": "Disconnected. Connect again to show templates sent from Kata CX.",
6585
+ "omnichannel.channels.kataCx.connect": "Connect",
6586
+ "omnichannel.channels.kataCx.codeTitle": "Connection code",
6587
+ "omnichannel.channels.kataCx.codeHelp": "In Kata CX, open Integration, choose Frontera for this number and paste the code. It works once, for {time} more.",
6588
+ "omnichannel.channels.kataCx.connected": "Connected",
6589
+ "omnichannel.channels.kataCx.connectedToast": "Connected to Kata CX",
6590
+ "omnichannel.channels.kataCx.lastMessage": "Last template received {time}",
6591
+ "omnichannel.channels.kataCx.noMessages": "No template received yet",
6592
+ "omnichannel.channels.kataCx.disconnect": "Disconnect",
6593
+ "omnichannel.channels.kataCx.disconnectTitle": "Disconnect Kata CX?",
6594
+ "omnichannel.channels.kataCx.disconnectBody": "Templates sent from Kata CX stop showing in this number's chats. Those already shown stay. You can connect again with a new code.",
6595
+ "omnichannel.channels.kataCx.disconnected": "Disconnected from Kata CX",
6596
+ "omnichannel.channels.kataCx.loadError": "The connection could not be loaded.",
6576
6597
  "omnichannel.channels.address.title": "Send this address to Kata Support",
6577
6598
  "omnichannel.channels.address.copy": "Copy",
6578
6599
  "omnichannel.channels.address.copied": "Copied",
@@ -8113,6 +8134,11 @@ Use Add a rule to build them from lists.`,
8113
8134
  "knowledgeApp.answer.commentPlaceholder": "Add a comment (optional)",
8114
8135
  "knowledgeApp.answer.ownersSee": "The file owner will see your name and feedback.",
8115
8136
  "knowledgeApp.answer.send": "Send",
8137
+ "knowledgeApp.answer.report": "Report a problem",
8138
+ "knowledgeApp.answer.reportSource": "Report a problem with {title}",
8139
+ "knowledgeApp.answer.reportTitle": "What's wrong with this file?",
8140
+ "knowledgeApp.answer.reportSent": "Report sent to the file owner",
8141
+ "knowledgeApp.answer.reportFailed": "The report could not be sent.",
8116
8142
  "knowledgeApp.comments.title": "Comments",
8117
8143
  "knowledgeApp.comments.description": "Visible to everyone with access to this file",
8118
8144
  "knowledgeApp.comments.button": "Comments",
@@ -8171,6 +8197,7 @@ Use Add a rule to build them from lists.`,
8171
8197
  "knowledgeApp.myFiles.feedback": "Feedback",
8172
8198
  "knowledgeApp.feedback.by": "Feedback from {name}",
8173
8199
  "knowledgeApp.feedback.empty": "No feedback yet",
8200
+ "knowledgeApp.feedback.fromReports": "Reports on this file from AI answers show here.",
8174
8201
  "knowledgeApp.feedback.noResolved": "No resolved feedback",
8175
8202
  "knowledgeApp.feedback.buttonCount": "Feedback ({count})",
8176
8203
  "knowledgeApp.feedback.panel": "Comments and feedback",
@@ -14362,6 +14389,9 @@ var id_default = {
14362
14389
  "omnichannel.inbox.sender.you": "Anda",
14363
14390
  "omnichannel.inbox.sender.humanAgent": "Human Agent",
14364
14391
  "omnichannel.inbox.sender.automatic": "Balasan otomatis",
14392
+ "omnichannel.inbox.sender.broadcast": "Broadcast",
14393
+ "omnichannel.inbox.sender.broadcastNamed": "Broadcast \xB7 {name}",
14394
+ "omnichannel.inbox.sender.kataCxApi": "Kata CX API",
14365
14395
  "omnichannel.inbox.status.pending": "Mengirim",
14366
14396
  "omnichannel.inbox.status.sent": "Terkirim",
14367
14397
  "omnichannel.inbox.status.delivered": "Diterima",
@@ -14491,7 +14521,7 @@ var id_default = {
14491
14521
  "omnichannel.inbox.composer.noteFailed": "Catatan tidak ditambahkan",
14492
14522
  "omnichannel.inbox.composer.closing": "Jendela balasan: sisa {hours} jam",
14493
14523
  "omnichannel.inbox.composer.closingSoon": "Jendela balasan: sisa kurang dari 1 jam",
14494
- "omnichannel.inbox.composer.lowCredit": "Kredit pesan channel ini hampir habis: sisa {credit}. Minta Supervisor mengisi ulang.",
14524
+ "omnichannel.inbox.composer.lowCreditAsk": "Hampir habis. Minta Supervisor untuk top up.",
14495
14525
  "omnichannel.inbox.composer.takeOver": "Ambil alih untuk membalas",
14496
14526
  "omnichannel.inbox.composer.other": "{name} sedang menangani chat ini",
14497
14527
  "omnichannel.inbox.refused.closed": "Chat ini sudah ditutup.",
@@ -14737,6 +14767,9 @@ var id_default = {
14737
14767
  "omnichannel.channels.login.passwordRequired": "Masukkan kata sandi.",
14738
14768
  "omnichannel.channels.login.rejected": "Kata tidak menerima login ini",
14739
14769
  "omnichannel.channels.login.none": "Belum diatur",
14770
+ "omnichannel.channels.credit.balanceOf": "Saldo {kind}",
14771
+ "omnichannel.channels.credit.count": "{credit} kredit",
14772
+ "omnichannel.channels.credit.countOne": "{credit} kredit",
14740
14773
  "omnichannel.channels.credit.label": "Kredit pesan",
14741
14774
  "omnichannel.channels.intro": "Nomor WhatsApp yang dihubungi pelanggan Anda. Buka salah satunya untuk memilih siapa yang menjawab pertama, tim dan target balasannya, serta melihat kredit pesannya.",
14742
14775
  "omnichannel.channels.section.answers": "Siapa yang menjawab",
@@ -14754,7 +14787,6 @@ var id_default = {
14754
14787
  "omnichannel.channels.credit.low": "Kredit hampir habis (di bawah atau sama dengan {threshold}). Isi ulang sebelum kirim template dan balasan berhenti terkirim.",
14755
14788
  "omnichannel.channels.credit.lowChip": "Kredit rendah",
14756
14789
  "omnichannel.channels.credit.unavailable": "Kredit channel ini belum bisa ditampilkan.",
14757
- "omnichannel.channels.credit.amountOne": "Sisa {credit} kredit",
14758
14790
  "omnichannel.channels.credit.checkedOn": "Dicek {time}",
14759
14791
  "omnichannel.channels.credit.error.login": "Kata menolak login channel ini, jadi kredit tidak bisa dibaca. Periksa username dan password Kata channel ini.",
14760
14792
  "omnichannel.channels.credit.error.busy": "Kata sedang sibuk, jadi kredit tidak bisa dibaca. Coba lagi dalam satu menit.",
@@ -14765,6 +14797,22 @@ var id_default = {
14765
14797
  "omnichannel.channels.login.saved": "Login diubah",
14766
14798
  "omnichannel.channels.error.unreachable": "Kata tidak dapat dihubungi. Coba lagi.",
14767
14799
  "omnichannel.channels.error.failed": "Perubahan tidak dapat disimpan. Coba lagi.",
14800
+ "omnichannel.channels.kataCx.title": "Kata CX",
14801
+ "omnichannel.channels.kataCx.description": "Tampilkan template yang dikirim nomor ini dari Kata CX, lewat Broadcast atau API, di chat pelanggan yang sudah ada di sini, dan jaga kreditnya tetap terbaru.",
14802
+ "omnichannel.channels.kataCx.notConnected": "Belum tersambung. Template yang dikirim dari Kata CX tidak tampil di sini.",
14803
+ "omnichannel.channels.kataCx.wasDisconnected": "Sambungan diputus. Sambungkan lagi agar template dari Kata CX tampil.",
14804
+ "omnichannel.channels.kataCx.connect": "Sambungkan",
14805
+ "omnichannel.channels.kataCx.codeTitle": "Kode sambung",
14806
+ "omnichannel.channels.kataCx.codeHelp": "Di Kata CX, buka Integration, pilih Frontera untuk nomor ini, lalu tempel kodenya. Hanya bisa dipakai sekali, berlaku {time} lagi.",
14807
+ "omnichannel.channels.kataCx.connected": "Tersambung",
14808
+ "omnichannel.channels.kataCx.connectedToast": "Tersambung ke Kata CX",
14809
+ "omnichannel.channels.kataCx.lastMessage": "Template terakhir diterima {time}",
14810
+ "omnichannel.channels.kataCx.noMessages": "Belum ada template yang diterima",
14811
+ "omnichannel.channels.kataCx.disconnect": "Putuskan",
14812
+ "omnichannel.channels.kataCx.disconnectTitle": "Putuskan Kata CX?",
14813
+ "omnichannel.channels.kataCx.disconnectBody": "Template yang dikirim dari Kata CX tidak lagi tampil di chat nomor ini. Yang sudah tampil tetap ada. Anda bisa menyambung lagi dengan kode baru.",
14814
+ "omnichannel.channels.kataCx.disconnected": "Sambungan Kata CX diputus",
14815
+ "omnichannel.channels.kataCx.loadError": "Sambungan tidak bisa dimuat.",
14768
14816
  "omnichannel.channels.address.title": "Kirim alamat ini ke Kata Support",
14769
14817
  "omnichannel.channels.address.copy": "Salin",
14770
14818
  "omnichannel.channels.address.copied": "Tersalin",
@@ -16300,6 +16348,11 @@ var id_default = {
16300
16348
  "knowledgeApp.answer.commentPlaceholder": "Tambahkan komentar (opsional)",
16301
16349
  "knowledgeApp.answer.ownersSee": "Pemilik file akan melihat nama dan masukan Anda.",
16302
16350
  "knowledgeApp.answer.send": "Kirim",
16351
+ "knowledgeApp.answer.report": "Laporkan masalah",
16352
+ "knowledgeApp.answer.reportSource": "Laporkan masalah pada {title}",
16353
+ "knowledgeApp.answer.reportTitle": "Apa yang salah dengan file ini?",
16354
+ "knowledgeApp.answer.reportSent": "Laporan terkirim ke pemilik file",
16355
+ "knowledgeApp.answer.reportFailed": "Laporan tidak dapat dikirim.",
16303
16356
  "knowledgeApp.comments.title": "Komentar",
16304
16357
  "knowledgeApp.comments.description": "Terlihat oleh semua orang yang punya akses ke file ini",
16305
16358
  "knowledgeApp.comments.button": "Komentar",
@@ -16358,6 +16411,7 @@ var id_default = {
16358
16411
  "knowledgeApp.myFiles.feedback": "Masukan",
16359
16412
  "knowledgeApp.feedback.by": "Masukan dari {name}",
16360
16413
  "knowledgeApp.feedback.empty": "Belum ada masukan",
16414
+ "knowledgeApp.feedback.fromReports": "Laporan tentang file ini dari jawaban AI muncul di sini.",
16361
16415
  "knowledgeApp.feedback.noResolved": "Tidak ada masukan yang selesai",
16362
16416
  "knowledgeApp.feedback.buttonCount": "Masukan ({count})",
16363
16417
  "knowledgeApp.feedback.panel": "Komentar dan masukan",
@@ -1,7 +1,7 @@
1
1
  'use client';
2
- import { usePlugins, useChatCapabilityEnabled, resolvePluginLanguage, renderPluginBlock, AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction, TooltipProvider, Tooltip, TooltipTrigger, TooltipContent, ActionMenu, useArtifactStore, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, useArtifact, resolveArtifactIconFormat, artifactFormatIcon, useArtifactFileObjectUrl, artifactFormatSubtitle, ChatImageLightbox, ArrowsShowIcon, FileDownloadIcon, useClient, processMessageParts, getMessageDisplayTimestampValue, getMessageCreatedAtMs, isApprovalRequested, extractCitationsFromSteps, useSourcesEnrichment, extractImagesFromSteps, dedupeImageResults, getDocumentStreamArtifacts, getToolOutput, useCanvasStore, ImageResultsGallery, MessageDecisionCards, useChatCapabilities, useOptionalWorkspaceContext, useCitationViewer, useCitedDocument, useChatOverviewStore, dedup, extractDomain, sourceKind, SourceFavicon, Input, exportDocumentPdf, FilePdfIcon, StudioDisplayIcon, WorldIcon, MessageStepsGroup, getToolState, getToolInput, getToolErrorText, useChatOptInEnabled, ArrowRightIcon, formatFileSize, FileThumbnail, attachmentFileOf, MobileScreenSheet, useAgentHistorySource, treatyErrorMessage, useRouter, useBasePath, useAgentPanelStore, AgentRoutineForm, getFileCategory, unwrap, unwrapData, unwrapDataDeep, formatDecisionTime, DecisionCard, LoaderIcon, formatRelativeTime, CircleCheckIcon, agentRoutineKeys, useOptionalAgentsContext, avatarMotionForStream, AGENT_AVATAR_SIZE } from './chunk-MPFDU3UN.js';
2
+ import { usePlugins, useChatCapabilityEnabled, resolvePluginLanguage, renderPluginBlock, AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction, TooltipProvider, Tooltip, TooltipTrigger, TooltipContent, ActionMenu, useArtifactStore, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, useArtifact, resolveArtifactIconFormat, artifactFormatIcon, useArtifactFileObjectUrl, artifactFormatSubtitle, ChatImageLightbox, ArrowsShowIcon, FileDownloadIcon, useClient, processMessageParts, getMessageDisplayTimestampValue, getMessageCreatedAtMs, isApprovalRequested, extractCitationsFromSteps, useSourcesEnrichment, extractImagesFromSteps, dedupeImageResults, getDocumentStreamArtifacts, getToolOutput, useCanvasStore, ImageResultsGallery, MessageDecisionCards, useChatCapabilities, useOptionalWorkspaceContext, useCitationViewer, useCitedDocument, useChatOverviewStore, dedup, extractDomain, sourceKind, SourceFavicon, Input, exportDocumentPdf, FilePdfIcon, StudioDisplayIcon, WorldIcon, MessageStepsGroup, getToolState, getToolInput, getToolErrorText, useChatOptInEnabled, ArrowRightIcon, formatFileSize, FileThumbnail, attachmentFileOf, MobileScreenSheet, useAgentHistorySource, treatyErrorMessage, useRouter, useBasePath, useAgentPanelStore, AgentRoutineForm, getFileCategory, unwrap, unwrapData, unwrapDataDeep, formatDecisionTime, DecisionCard, LoaderIcon, formatRelativeTime, CircleCheckIcon, agentRoutineKeys, useOptionalAgentsContext, avatarMotionForStream, AGENT_AVATAR_SIZE } from './chunk-CQFY4GBK.js';
3
3
  import { Sheet, SheetTrigger, SheetContent, SheetHeader, SheetTitle, SheetDescription, Popover, PopoverTrigger, PopoverContent } from './chunk-RQSMCGBR.js';
4
- import { useIsMobile, useTranslation } from './chunk-GP43ZTG6.js';
4
+ import { useIsMobile, useTranslation } from './chunk-LDHGDCPF.js';
5
5
  import { MessageToolbar, MessageResponse, SquareArrowTopRightIcon, FileTextIcon, Shimmer, ClipboardIcon, Message, MessageContent, PencilIcon, deferDuringLayoutMotion, HoverCard, HoverCardTrigger, HoverCardContent, Collapse, Icon, CircleXIcon, ClockIcon } from './chunk-K7AIK7TA.js';
6
6
  import { ChevronDownMediumIcon, Button, ScrollArea, Skeleton } from './chunk-UWKO24VT.js';
7
7
  import { CrossMediumIcon } from './chunk-37WYG6VG.js';
@@ -1,7 +1,7 @@
1
1
  'use client';
2
- import { requestPaneFocus, useArtifacts, usePlugins, useCanvasStore, useArtifactStore, useChatOverviewStore, useSourcesEnrichment, sourceKind, useCitationViewer, resolveSourceDisplay, extractDomain, useCitedDocument, canvasId, StudioDisplayIcon, LayoutDashboardIcon, useAgentPanelStore, SourceFavicon, dedup, useArtifactFileObjectUrl, resolveArtifactIconFormat, artifactFormatIcon, avatarMotionForStream, AGENT_AVATAR_SIZE, getFileCategory, FileThumbnail, formatFileSize, usePathname, artifactFormatSubtitle, artifactCategory, Input, MobileScreenSheet, TooltipTrigger, Tooltip, useChatCapabilities, TooltipContent, processMessageParts, GridSpinner, PanelEdgeRing, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, extractCitationsFromSteps, resolvePluginLanguage, getMessageDisplayTimestampValue } from './chunk-MPFDU3UN.js';
2
+ import { requestPaneFocus, useArtifacts, usePlugins, useCanvasStore, useArtifactStore, useChatOverviewStore, useSourcesEnrichment, sourceKind, useCitationViewer, resolveSourceDisplay, extractDomain, useCitedDocument, canvasId, StudioDisplayIcon, LayoutDashboardIcon, useAgentPanelStore, SourceFavicon, dedup, useArtifactFileObjectUrl, resolveArtifactIconFormat, artifactFormatIcon, avatarMotionForStream, AGENT_AVATAR_SIZE, getFileCategory, FileThumbnail, formatFileSize, usePathname, artifactFormatSubtitle, artifactCategory, Input, MobileScreenSheet, TooltipTrigger, Tooltip, useChatCapabilities, TooltipContent, processMessageParts, GridSpinner, PanelEdgeRing, ArtifactActionsMenu, DotGrid1x3HorizontalTightIcon, extractCitationsFromSteps, resolvePluginLanguage, getMessageDisplayTimestampValue } from './chunk-CQFY4GBK.js';
3
3
  import { MagnifyingGlassIcon, Popover, PopoverTrigger, PopoverContent, Sheet, SheetContent, SheetHeader, SheetTitle } from './chunk-RQSMCGBR.js';
4
- import { useTranslation, useIsMobile } from './chunk-GP43ZTG6.js';
4
+ import { useTranslation, useIsMobile } from './chunk-LDHGDCPF.js';
5
5
  import { Collapsible, CollapsibleTrigger, CollapsibleContent, Shimmer, HoverCard, HoverCardTrigger, HoverCardContent } from './chunk-K7AIK7TA.js';
6
6
  import { ChevronDownMediumIcon, ScrollArea, Skeleton, Button } from './chunk-UWKO24VT.js';
7
7
  import { Dialog, DialogContent, DialogHeader, DialogTitle, CrossMediumIcon } from './chunk-37WYG6VG.js';
package/dist/header.js CHANGED
@@ -1,9 +1,9 @@
1
1
  'use client';
2
- export { ChatHeader, ChatHeaderActions } from './chunk-JIOJ6VJ4.js';
3
- import './chunk-MPFDU3UN.js';
2
+ export { ChatHeader, ChatHeaderActions } from './chunk-ZMDY2XNY.js';
3
+ import './chunk-CQFY4GBK.js';
4
4
  import './chunk-CWAOLMFS.js';
5
5
  import './chunk-RQSMCGBR.js';
6
- import './chunk-GP43ZTG6.js';
6
+ import './chunk-LDHGDCPF.js';
7
7
  import './chunk-R3ONYPUB.js';
8
8
  import './chunk-K7AIK7TA.js';
9
9
  import './chunk-UWKO24VT.js';
package/dist/message.js CHANGED
@@ -1,9 +1,9 @@
1
1
  'use client';
2
- export { Message, Thinking } from './chunk-GGIFLPU5.js';
3
- import './chunk-MPFDU3UN.js';
2
+ export { Message, Thinking } from './chunk-TJABFPOO.js';
3
+ import './chunk-CQFY4GBK.js';
4
4
  import './chunk-CWAOLMFS.js';
5
5
  import './chunk-RQSMCGBR.js';
6
- import './chunk-GP43ZTG6.js';
6
+ import './chunk-LDHGDCPF.js';
7
7
  import './chunk-R3ONYPUB.js';
8
8
  import './chunk-K7AIK7TA.js';
9
9
  import './chunk-UWKO24VT.js';
@@ -1,7 +1,7 @@
1
1
  'use client';
2
- export { DEFAULT_SHORTCUTS, NewSessionPrompt, buildDefaultShortcuts } from './chunk-FBDBLAX5.js';
2
+ export { DEFAULT_SHORTCUTS, NewSessionPrompt, buildDefaultShortcuts } from './chunk-53DJ56SR.js';
3
3
  import './chunk-RQSMCGBR.js';
4
- import './chunk-GP43ZTG6.js';
4
+ import './chunk-LDHGDCPF.js';
5
5
  import './chunk-37WYG6VG.js';
6
6
  import './chunk-RCWVJD7G.js';
7
7
  import './chunk-LGVMMBL3.js';
@@ -1,8 +1,8 @@
1
1
  'use client';
2
2
  import { DeckNotesCard, deckOwnsArrowKeys } from './chunk-4FRTPVJT.js';
3
- import { resolveStageWidth, zoomPercent, DECK_ZOOM_LEVELS, LazyThumb, ArtifactSkeleton } from './chunk-PU75S6NF.js';
3
+ import { resolveStageWidth, zoomPercent, DECK_ZOOM_LEVELS, LazyThumb, ArtifactSkeleton } from './chunk-JYVL7J7E.js';
4
4
  import { ChevronLeftIcon } from './chunk-CWAOLMFS.js';
5
- import { useTranslation, useIsMobile } from './chunk-GP43ZTG6.js';
5
+ import { useTranslation, useIsMobile } from './chunk-LDHGDCPF.js';
6
6
  import { Button, ChevronDownMediumIcon, ScrollArea } from './chunk-UWKO24VT.js';
7
7
  import { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, ChevronRightIcon } from './chunk-C3HW5S2Z.js';
8
8
  import { cn } from './chunk-LGVMMBL3.js';
@@ -1,7 +1,7 @@
1
1
  'use client';
2
- import { zoomPercent, DECK_ZOOM_LEVELS, ArtifactSkeleton, LazyThumb } from './chunk-PU75S6NF.js';
2
+ import { zoomPercent, DECK_ZOOM_LEVELS, ArtifactSkeleton, LazyThumb } from './chunk-JYVL7J7E.js';
3
3
  import { ChevronLeftIcon } from './chunk-CWAOLMFS.js';
4
- import { useTranslation, useIsMobile } from './chunk-GP43ZTG6.js';
4
+ import { useTranslation, useIsMobile } from './chunk-LDHGDCPF.js';
5
5
  import { Button, ChevronDownMediumIcon, ScrollArea } from './chunk-UWKO24VT.js';
6
6
  import { ChevronRightIcon, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuRadioGroup, DropdownMenuRadioItem } from './chunk-C3HW5S2Z.js';
7
7
  import { cn } from './chunk-LGVMMBL3.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frontera-sdk/chat-ui",
3
- "version": "1.53.25",
3
+ "version": "1.53.26",
4
4
  "description": "Ready-made React components for embedding a Frontera agent conversation — message rendering, tool calls, artifacts and composer.",
5
5
  "keywords": [
6
6
  "frontera",
@@ -89,8 +89,8 @@
89
89
  },
90
90
  "dependencies": {
91
91
  "@elysiajs/eden": "^1.4.9",
92
- "@frontera-sdk/chat": "1.53.25",
93
- "@frontera-sdk/core": "1.53.25",
92
+ "@frontera-sdk/chat": "1.53.26",
93
+ "@frontera-sdk/core": "1.53.26",
94
94
  "@radix-ui/react-alert-dialog": "^1.1.23",
95
95
  "@radix-ui/react-collapsible": "^1.1.12",
96
96
  "@radix-ui/react-compose-refs": "^1.1.5",