@ash-cloud/ash-ui 0.2.2 → 0.2.4

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/index.d.cts CHANGED
@@ -18,6 +18,10 @@ interface ConversationContextValue {
18
18
  autoScroll: boolean;
19
19
  /** Set auto-scroll state */
20
20
  setAutoScroll: (value: boolean) => void;
21
+ /** Whether more messages exist above */
22
+ hasMore: boolean;
23
+ /** Whether older messages are currently being fetched */
24
+ isLoadingMore: boolean;
21
25
  }
22
26
  declare function useConversation(): ConversationContextValue;
23
27
  interface ConversationProps {
@@ -29,8 +33,16 @@ interface ConversationProps {
29
33
  autoScroll?: boolean;
30
34
  /** Threshold in pixels to consider "at bottom" */
31
35
  scrollThreshold?: number;
32
- }
33
- declare function Conversation({ children, className, autoScroll: initialAutoScroll, scrollThreshold, }: ConversationProps): react_jsx_runtime.JSX.Element;
36
+ /** Called when user scrolls near the top to load older messages */
37
+ onLoadMore?: () => void;
38
+ /** Whether more messages exist above */
39
+ hasMore?: boolean;
40
+ /** Whether older messages are currently being fetched */
41
+ isLoadingMore?: boolean;
42
+ /** Pixels from top to trigger onLoadMore (default: 100) */
43
+ loadMoreThreshold?: number;
44
+ }
45
+ declare function Conversation({ children, className, autoScroll: initialAutoScroll, scrollThreshold, onLoadMore, hasMore, isLoadingMore, loadMoreThreshold, }: ConversationProps): react_jsx_runtime.JSX.Element;
34
46
  interface ConversationContentProps {
35
47
  /** Child elements */
36
48
  children: ReactNode;
@@ -52,6 +64,11 @@ interface ConversationScrollButtonProps {
52
64
  label?: string;
53
65
  }
54
66
  declare function ConversationScrollButton({ className, label, }: ConversationScrollButtonProps): react_jsx_runtime.JSX.Element | null;
67
+ interface ConversationLoadMoreProps {
68
+ /** Additional class name */
69
+ className?: string;
70
+ }
71
+ declare function ConversationLoadMore({ className, }: ConversationLoadMoreProps): react_jsx_runtime.JSX.Element | null;
55
72
 
56
73
  interface MessageContextValue {
57
74
  /** Message role */
@@ -1050,6 +1067,7 @@ interface StreamEvent {
1050
1067
  error?: string;
1051
1068
  code?: string;
1052
1069
  status?: string;
1070
+ message?: string;
1053
1071
  result?: string;
1054
1072
  totalCost?: number;
1055
1073
  totalTokens?: number;
@@ -1563,4 +1581,4 @@ interface UseLongTextConversionReturn {
1563
1581
  */
1564
1582
  declare function useLongTextConversion({ threshold, filenameTemplate, onConversion, }?: LongTextConversionOptions): UseLongTextConversionReturn;
1565
1583
 
1566
- export { Message$1 as AIMessage, ActionIcon, type ActionIconProps, ActionType, type StreamEvent as AgentStreamEvent, Attachment, type AttachmentFile, AttachmentInfo, type AttachmentInfoProps, AttachmentPreview, type AttachmentPreviewProps, type AttachmentProps, AttachmentRemove, type AttachmentRemoveProps, Attachments, type AttachmentsProps, type BeforeSendContext, type BeforeSendResult, type FileAttachment as ChatFileAttachment, type ChatMiddleware, type ChatRequestOptions, CodeBlock, type CodeBlockProps, Conversation, ConversationContent, type ConversationContentProps, ConversationEmptyState, type ConversationEmptyStateProps, type ConversationProps, ConversationScrollButton, type ConversationScrollButtonProps, type ConversionInfo, type CreateMessage, type CreateStreamFn, type CreateStreamOptions, EnvVarsPanel, type EnvVarsPanelProps, FileAttachment$2 as FileAttachment, FileBadgeCompact, type FileBadgeProps, type FileAttachment as HookFileAttachment, JsonDisplay, type JsonDisplayProps, LazyMarkdown, type LazyMarkdownProps, LoadingDots, type LoadingDotsProps, LoadingSpinner, type LoadingSpinnerProps, LogEntry, LogsPanel, type LogsPanelProps, type LongTextConversionOptions, MarkdownComponents, Mention, MentionProps, Message, MessageAction, type MessageActionProps, MessageActions, type MessageActionsProps, MessageAvatar, type MessageAvatarProps, MessageContent, type MessageContentProps, type MessageProps, MessageResponse, type MessageResponseProps, MessageShimmer, type MessageShimmerProps, MessageTimestamp, type MessageTimestampProps, type MiddlewareRequest, type MiddlewareRequestResult, NormalizedEntry, OptionCards, type OptionCardsProps, ParsedOption, type QueuedMessage, Reasoning, ReasoningContent, type ReasoningContentProps, type ReasoningProps, ReasoningTrigger, type ReasoningTriggerProps, RichContent, type RichContentProps, RichContentRenderer, Shimmer, ShimmerBlock, type ShimmerBlockProps, ShimmerLine, type ShimmerLineProps, type ShimmerProps, ShimmerText, type ShimmerTextProps, StatusIndicator, type StatusIndicatorProps, type StreamGenerator, Task, TaskContent, type TaskContentProps, TaskItem, type TaskItemProps, TaskList, type TaskListProps, type TaskProps, TaskTrigger, type TaskTriggerProps, type TextAttachment, ThinkingIndicator, type ThinkingIndicatorProps, TodoItem, TodoStatus, Tool, type ToolCallHandler, ToolHeader, type ToolHeaderProps, ToolInput, type ToolInputProps, ToolInvocation, ToolList, type ToolListProps, ToolOutput, type ToolOutputProps, type ToolProps, ToolStatus, type ToolVariant, type UseAgentChatOptions, type UseAgentChatReturn, type UseChatOptions, type UseChatReturn, type UseFileUploadOptions, type UseFileUploadReturn, type UseLongTextConversionReturn, type UseMessageQueueOptions, type UseMessageQueueReturn, type UseStopExecutionOptions, type UseStopExecutionReturn, applyEventMiddleware, applyRequestMiddleware, callMiddlewareComplete, callMiddlewareError, formatFileSize as formatFileSizeHook, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool };
1584
+ export { Message$1 as AIMessage, ActionIcon, type ActionIconProps, ActionType, type StreamEvent as AgentStreamEvent, Attachment, type AttachmentFile, AttachmentInfo, type AttachmentInfoProps, AttachmentPreview, type AttachmentPreviewProps, type AttachmentProps, AttachmentRemove, type AttachmentRemoveProps, Attachments, type AttachmentsProps, type BeforeSendContext, type BeforeSendResult, type FileAttachment as ChatFileAttachment, type ChatMiddleware, type ChatRequestOptions, CodeBlock, type CodeBlockProps, Conversation, ConversationContent, type ConversationContentProps, ConversationEmptyState, type ConversationEmptyStateProps, ConversationLoadMore, type ConversationLoadMoreProps, type ConversationProps, ConversationScrollButton, type ConversationScrollButtonProps, type ConversionInfo, type CreateMessage, type CreateStreamFn, type CreateStreamOptions, EnvVarsPanel, type EnvVarsPanelProps, FileAttachment$2 as FileAttachment, FileBadgeCompact, type FileBadgeProps, type FileAttachment as HookFileAttachment, JsonDisplay, type JsonDisplayProps, LazyMarkdown, type LazyMarkdownProps, LoadingDots, type LoadingDotsProps, LoadingSpinner, type LoadingSpinnerProps, LogEntry, LogsPanel, type LogsPanelProps, type LongTextConversionOptions, MarkdownComponents, Mention, MentionProps, Message, MessageAction, type MessageActionProps, MessageActions, type MessageActionsProps, MessageAvatar, type MessageAvatarProps, MessageContent, type MessageContentProps, type MessageProps, MessageResponse, type MessageResponseProps, MessageShimmer, type MessageShimmerProps, MessageTimestamp, type MessageTimestampProps, type MiddlewareRequest, type MiddlewareRequestResult, NormalizedEntry, OptionCards, type OptionCardsProps, ParsedOption, type QueuedMessage, Reasoning, ReasoningContent, type ReasoningContentProps, type ReasoningProps, ReasoningTrigger, type ReasoningTriggerProps, RichContent, type RichContentProps, RichContentRenderer, Shimmer, ShimmerBlock, type ShimmerBlockProps, ShimmerLine, type ShimmerLineProps, type ShimmerProps, ShimmerText, type ShimmerTextProps, StatusIndicator, type StatusIndicatorProps, type StreamGenerator, Task, TaskContent, type TaskContentProps, TaskItem, type TaskItemProps, TaskList, type TaskListProps, type TaskProps, TaskTrigger, type TaskTriggerProps, type TextAttachment, ThinkingIndicator, type ThinkingIndicatorProps, TodoItem, TodoStatus, Tool, type ToolCallHandler, ToolHeader, type ToolHeaderProps, ToolInput, type ToolInputProps, ToolInvocation, ToolList, type ToolListProps, ToolOutput, type ToolOutputProps, type ToolProps, ToolStatus, type ToolVariant, type UseAgentChatOptions, type UseAgentChatReturn, type UseChatOptions, type UseChatReturn, type UseFileUploadOptions, type UseFileUploadReturn, type UseLongTextConversionReturn, type UseMessageQueueOptions, type UseMessageQueueReturn, type UseStopExecutionOptions, type UseStopExecutionReturn, applyEventMiddleware, applyRequestMiddleware, callMiddlewareComplete, callMiddlewareError, formatFileSize as formatFileSizeHook, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool };
package/dist/index.d.ts CHANGED
@@ -18,6 +18,10 @@ interface ConversationContextValue {
18
18
  autoScroll: boolean;
19
19
  /** Set auto-scroll state */
20
20
  setAutoScroll: (value: boolean) => void;
21
+ /** Whether more messages exist above */
22
+ hasMore: boolean;
23
+ /** Whether older messages are currently being fetched */
24
+ isLoadingMore: boolean;
21
25
  }
22
26
  declare function useConversation(): ConversationContextValue;
23
27
  interface ConversationProps {
@@ -29,8 +33,16 @@ interface ConversationProps {
29
33
  autoScroll?: boolean;
30
34
  /** Threshold in pixels to consider "at bottom" */
31
35
  scrollThreshold?: number;
32
- }
33
- declare function Conversation({ children, className, autoScroll: initialAutoScroll, scrollThreshold, }: ConversationProps): react_jsx_runtime.JSX.Element;
36
+ /** Called when user scrolls near the top to load older messages */
37
+ onLoadMore?: () => void;
38
+ /** Whether more messages exist above */
39
+ hasMore?: boolean;
40
+ /** Whether older messages are currently being fetched */
41
+ isLoadingMore?: boolean;
42
+ /** Pixels from top to trigger onLoadMore (default: 100) */
43
+ loadMoreThreshold?: number;
44
+ }
45
+ declare function Conversation({ children, className, autoScroll: initialAutoScroll, scrollThreshold, onLoadMore, hasMore, isLoadingMore, loadMoreThreshold, }: ConversationProps): react_jsx_runtime.JSX.Element;
34
46
  interface ConversationContentProps {
35
47
  /** Child elements */
36
48
  children: ReactNode;
@@ -52,6 +64,11 @@ interface ConversationScrollButtonProps {
52
64
  label?: string;
53
65
  }
54
66
  declare function ConversationScrollButton({ className, label, }: ConversationScrollButtonProps): react_jsx_runtime.JSX.Element | null;
67
+ interface ConversationLoadMoreProps {
68
+ /** Additional class name */
69
+ className?: string;
70
+ }
71
+ declare function ConversationLoadMore({ className, }: ConversationLoadMoreProps): react_jsx_runtime.JSX.Element | null;
55
72
 
56
73
  interface MessageContextValue {
57
74
  /** Message role */
@@ -1050,6 +1067,7 @@ interface StreamEvent {
1050
1067
  error?: string;
1051
1068
  code?: string;
1052
1069
  status?: string;
1070
+ message?: string;
1053
1071
  result?: string;
1054
1072
  totalCost?: number;
1055
1073
  totalTokens?: number;
@@ -1563,4 +1581,4 @@ interface UseLongTextConversionReturn {
1563
1581
  */
1564
1582
  declare function useLongTextConversion({ threshold, filenameTemplate, onConversion, }?: LongTextConversionOptions): UseLongTextConversionReturn;
1565
1583
 
1566
- export { Message$1 as AIMessage, ActionIcon, type ActionIconProps, ActionType, type StreamEvent as AgentStreamEvent, Attachment, type AttachmentFile, AttachmentInfo, type AttachmentInfoProps, AttachmentPreview, type AttachmentPreviewProps, type AttachmentProps, AttachmentRemove, type AttachmentRemoveProps, Attachments, type AttachmentsProps, type BeforeSendContext, type BeforeSendResult, type FileAttachment as ChatFileAttachment, type ChatMiddleware, type ChatRequestOptions, CodeBlock, type CodeBlockProps, Conversation, ConversationContent, type ConversationContentProps, ConversationEmptyState, type ConversationEmptyStateProps, type ConversationProps, ConversationScrollButton, type ConversationScrollButtonProps, type ConversionInfo, type CreateMessage, type CreateStreamFn, type CreateStreamOptions, EnvVarsPanel, type EnvVarsPanelProps, FileAttachment$2 as FileAttachment, FileBadgeCompact, type FileBadgeProps, type FileAttachment as HookFileAttachment, JsonDisplay, type JsonDisplayProps, LazyMarkdown, type LazyMarkdownProps, LoadingDots, type LoadingDotsProps, LoadingSpinner, type LoadingSpinnerProps, LogEntry, LogsPanel, type LogsPanelProps, type LongTextConversionOptions, MarkdownComponents, Mention, MentionProps, Message, MessageAction, type MessageActionProps, MessageActions, type MessageActionsProps, MessageAvatar, type MessageAvatarProps, MessageContent, type MessageContentProps, type MessageProps, MessageResponse, type MessageResponseProps, MessageShimmer, type MessageShimmerProps, MessageTimestamp, type MessageTimestampProps, type MiddlewareRequest, type MiddlewareRequestResult, NormalizedEntry, OptionCards, type OptionCardsProps, ParsedOption, type QueuedMessage, Reasoning, ReasoningContent, type ReasoningContentProps, type ReasoningProps, ReasoningTrigger, type ReasoningTriggerProps, RichContent, type RichContentProps, RichContentRenderer, Shimmer, ShimmerBlock, type ShimmerBlockProps, ShimmerLine, type ShimmerLineProps, type ShimmerProps, ShimmerText, type ShimmerTextProps, StatusIndicator, type StatusIndicatorProps, type StreamGenerator, Task, TaskContent, type TaskContentProps, TaskItem, type TaskItemProps, TaskList, type TaskListProps, type TaskProps, TaskTrigger, type TaskTriggerProps, type TextAttachment, ThinkingIndicator, type ThinkingIndicatorProps, TodoItem, TodoStatus, Tool, type ToolCallHandler, ToolHeader, type ToolHeaderProps, ToolInput, type ToolInputProps, ToolInvocation, ToolList, type ToolListProps, ToolOutput, type ToolOutputProps, type ToolProps, ToolStatus, type ToolVariant, type UseAgentChatOptions, type UseAgentChatReturn, type UseChatOptions, type UseChatReturn, type UseFileUploadOptions, type UseFileUploadReturn, type UseLongTextConversionReturn, type UseMessageQueueOptions, type UseMessageQueueReturn, type UseStopExecutionOptions, type UseStopExecutionReturn, applyEventMiddleware, applyRequestMiddleware, callMiddlewareComplete, callMiddlewareError, formatFileSize as formatFileSizeHook, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool };
1584
+ export { Message$1 as AIMessage, ActionIcon, type ActionIconProps, ActionType, type StreamEvent as AgentStreamEvent, Attachment, type AttachmentFile, AttachmentInfo, type AttachmentInfoProps, AttachmentPreview, type AttachmentPreviewProps, type AttachmentProps, AttachmentRemove, type AttachmentRemoveProps, Attachments, type AttachmentsProps, type BeforeSendContext, type BeforeSendResult, type FileAttachment as ChatFileAttachment, type ChatMiddleware, type ChatRequestOptions, CodeBlock, type CodeBlockProps, Conversation, ConversationContent, type ConversationContentProps, ConversationEmptyState, type ConversationEmptyStateProps, ConversationLoadMore, type ConversationLoadMoreProps, type ConversationProps, ConversationScrollButton, type ConversationScrollButtonProps, type ConversionInfo, type CreateMessage, type CreateStreamFn, type CreateStreamOptions, EnvVarsPanel, type EnvVarsPanelProps, FileAttachment$2 as FileAttachment, FileBadgeCompact, type FileBadgeProps, type FileAttachment as HookFileAttachment, JsonDisplay, type JsonDisplayProps, LazyMarkdown, type LazyMarkdownProps, LoadingDots, type LoadingDotsProps, LoadingSpinner, type LoadingSpinnerProps, LogEntry, LogsPanel, type LogsPanelProps, type LongTextConversionOptions, MarkdownComponents, Mention, MentionProps, Message, MessageAction, type MessageActionProps, MessageActions, type MessageActionsProps, MessageAvatar, type MessageAvatarProps, MessageContent, type MessageContentProps, type MessageProps, MessageResponse, type MessageResponseProps, MessageShimmer, type MessageShimmerProps, MessageTimestamp, type MessageTimestampProps, type MiddlewareRequest, type MiddlewareRequestResult, NormalizedEntry, OptionCards, type OptionCardsProps, ParsedOption, type QueuedMessage, Reasoning, ReasoningContent, type ReasoningContentProps, type ReasoningProps, ReasoningTrigger, type ReasoningTriggerProps, RichContent, type RichContentProps, RichContentRenderer, Shimmer, ShimmerBlock, type ShimmerBlockProps, ShimmerLine, type ShimmerLineProps, type ShimmerProps, ShimmerText, type ShimmerTextProps, StatusIndicator, type StatusIndicatorProps, type StreamGenerator, Task, TaskContent, type TaskContentProps, TaskItem, type TaskItemProps, TaskList, type TaskListProps, type TaskProps, TaskTrigger, type TaskTriggerProps, type TextAttachment, ThinkingIndicator, type ThinkingIndicatorProps, TodoItem, TodoStatus, Tool, type ToolCallHandler, ToolHeader, type ToolHeaderProps, ToolInput, type ToolInputProps, ToolInvocation, ToolList, type ToolListProps, ToolOutput, type ToolOutputProps, type ToolProps, ToolStatus, type ToolVariant, type UseAgentChatOptions, type UseAgentChatReturn, type UseChatOptions, type UseChatReturn, type UseFileUploadOptions, type UseFileUploadReturn, type UseLongTextConversionReturn, type UseMessageQueueOptions, type UseMessageQueueReturn, type UseStopExecutionOptions, type UseStopExecutionReturn, applyEventMiddleware, applyRequestMiddleware, callMiddlewareComplete, callMiddlewareError, formatFileSize as formatFileSizeHook, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool };
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createContext, lazy, useContext, useRef, useState, useCallback, useEffect, useMemo, Suspense } from 'react';
1
+ import { createContext, lazy, useContext, useRef, useState, useCallback, useEffect, useLayoutEffect, useMemo, Suspense } from 'react';
2
2
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
3
 
4
4
  // src/components/Conversation.tsx
@@ -421,11 +421,17 @@ function Conversation({
421
421
  children,
422
422
  className,
423
423
  autoScroll: initialAutoScroll = true,
424
- scrollThreshold = 100
424
+ scrollThreshold = 100,
425
+ onLoadMore,
426
+ hasMore = false,
427
+ isLoadingMore = false,
428
+ loadMoreThreshold = 100
425
429
  }) {
426
430
  const containerRef = useRef(null);
427
431
  const [isScrolledUp, setIsScrolledUp] = useState(false);
428
432
  const [autoScroll, setAutoScroll] = useState(initialAutoScroll);
433
+ const prevScrollHeightRef = useRef(0);
434
+ const wasLoadingMoreRef = useRef(false);
429
435
  const scrollToBottom = useCallback((behavior = "smooth") => {
430
436
  if (containerRef.current) {
431
437
  containerRef.current.scrollTo({
@@ -443,7 +449,26 @@ function Conversation({
443
449
  if (isAtBottom && !autoScroll) {
444
450
  setAutoScroll(true);
445
451
  }
446
- }, [scrollThreshold, autoScroll]);
452
+ if (scrollTop < loadMoreThreshold && hasMore && !isLoadingMore && onLoadMore) {
453
+ onLoadMore();
454
+ }
455
+ }, [scrollThreshold, autoScroll, loadMoreThreshold, hasMore, isLoadingMore, onLoadMore]);
456
+ useEffect(() => {
457
+ if (isLoadingMore && !wasLoadingMoreRef.current && containerRef.current) {
458
+ prevScrollHeightRef.current = containerRef.current.scrollHeight;
459
+ }
460
+ wasLoadingMoreRef.current = isLoadingMore;
461
+ }, [isLoadingMore]);
462
+ useLayoutEffect(() => {
463
+ if (!isLoadingMore && prevScrollHeightRef.current > 0 && containerRef.current) {
464
+ const newScrollHeight = containerRef.current.scrollHeight;
465
+ const scrollDelta = newScrollHeight - prevScrollHeightRef.current;
466
+ if (scrollDelta > 0) {
467
+ containerRef.current.scrollTop += scrollDelta;
468
+ }
469
+ prevScrollHeightRef.current = 0;
470
+ }
471
+ }, [isLoadingMore]);
447
472
  useEffect(() => {
448
473
  if (autoScroll && !isScrolledUp) {
449
474
  scrollToBottom("instant");
@@ -454,7 +479,9 @@ function Conversation({
454
479
  scrollToBottom,
455
480
  isScrolledUp,
456
481
  autoScroll,
457
- setAutoScroll
482
+ setAutoScroll,
483
+ hasMore,
484
+ isLoadingMore
458
485
  };
459
486
  return /* @__PURE__ */ jsx(ConversationContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(
460
487
  "div",
@@ -552,6 +579,50 @@ function ConversationScrollButton({
552
579
  }
553
580
  );
554
581
  }
582
+ function ConversationLoadMore({
583
+ className
584
+ }) {
585
+ const { hasMore, isLoadingMore } = useConversation();
586
+ if (!hasMore && !isLoadingMore) return null;
587
+ return /* @__PURE__ */ jsx(
588
+ "div",
589
+ {
590
+ className: cn(
591
+ "ash-conversation-load-more flex items-center justify-center py-3",
592
+ className
593
+ ),
594
+ children: isLoadingMore && /* @__PURE__ */ jsxs(
595
+ "svg",
596
+ {
597
+ className: "w-5 h-5 animate-spin text-[var(--ash-text-muted,rgba(255,255,255,0.5))]",
598
+ fill: "none",
599
+ viewBox: "0 0 24 24",
600
+ children: [
601
+ /* @__PURE__ */ jsx(
602
+ "circle",
603
+ {
604
+ className: "opacity-25",
605
+ cx: "12",
606
+ cy: "12",
607
+ r: "10",
608
+ stroke: "currentColor",
609
+ strokeWidth: "4"
610
+ }
611
+ ),
612
+ /* @__PURE__ */ jsx(
613
+ "path",
614
+ {
615
+ className: "opacity-75",
616
+ fill: "currentColor",
617
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
618
+ }
619
+ )
620
+ ]
621
+ }
622
+ )
623
+ }
624
+ );
625
+ }
555
626
  var ReactMarkdown = lazy(() => import('react-markdown'));
556
627
  function LazyMarkdown({ children, fallback, components, className }) {
557
628
  const [mounted, setMounted] = useState(false);
@@ -4307,6 +4378,6 @@ function useLongTextConversion({
4307
4378
  };
4308
4379
  }
4309
4380
 
4310
- export { ActionIcon, AlertCircleIcon, AlertTriangleIcon, ArrowUpIcon, Attachment, AttachmentInfo, AttachmentPreview, AttachmentRemove, Attachments, BotIcon, BrainIcon, BugIcon, CheckCircleIcon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleIcon, ClipboardListIcon, ClockIcon, CodeBlock, CodeIcon, Conversation, ConversationContent, ConversationEmptyState, ConversationScrollButton, CopyIcon, DEFAULT_STYLE_CONFIG, EditIcon, EnvVarsPanel, ErrorIcon, FileBadgeCompact, FileIcon, FilePlusIcon, FolderSearchIcon, GlobeIcon, HomeIcon, InfoIcon, JsonDisplay, LazyMarkdown, ListChecksIcon, LoaderIcon, LoadingDots, LoadingSpinner, LogsPanel, Mention, Message, MessageAction, MessageActions, MessageAvatar, MessageContent, MessageResponse, MessageShimmer, MessageSquareIcon, MessageTimestamp, MicrophoneIcon, MoonIcon, OptionCards, PaperclipIcon, PlugIcon, Reasoning, ReasoningContent, ReasoningTrigger, RichContentRenderer, SearchIcon, SendIcon, Shimmer, ShimmerBlock, ShimmerLine, ShimmerText, SparklesIcon, SpinnerIcon, StatusIndicator, StopCircleIcon, SunIcon, Task, TaskContent, TaskItem, TaskList, TaskTrigger, TerminalIcon, ThinkingIndicator, Tool, ToolHeader, ToolIcon, ToolInput, ToolList, ToolOutput, UserIcon, XCircleIcon, XIcon, allKeyframesCss, applyEventMiddleware, applyRequestMiddleware, borderRadius, callMiddlewareComplete, callMiddlewareError, cn, colors, createToolCall, cssVars, extractTextContent, formatElapsedTime, formatFileSize, formatFileSize2 as formatFileSizeHook, formatTimestamp, formatToolName, generateToolSummary, getActionIcon, getActionLabel, inlineStyles, isAgentToolAction, isCommandRunAction, isErrorEntry, isFileEditAction, isFileReadAction, isFileWriteAction, isGenericToolAction, isGlobAction, isMcpToolAction, isSearchAction, isTodoWriteAction, isToolCallEntry, isWebFetchAction, isWebSearchAction, isWidgetEntry, keyframes, keyframesCss, mapToolToActionType, messageToNormalizedEntry, messagesToNormalizedEntries, normalizeToolResult, normalizedEntriesToMessages, normalizedEntryToMessage, parseCommandResult, parseMcpToolName, parseOptionsFromContent, shadows, spacing, tokensToCssVariables, transitions, truncate, typography, updateToolCallWithResult, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool, widget, zIndex };
4381
+ export { ActionIcon, AlertCircleIcon, AlertTriangleIcon, ArrowUpIcon, Attachment, AttachmentInfo, AttachmentPreview, AttachmentRemove, Attachments, BotIcon, BrainIcon, BugIcon, CheckCircleIcon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleIcon, ClipboardListIcon, ClockIcon, CodeBlock, CodeIcon, Conversation, ConversationContent, ConversationEmptyState, ConversationLoadMore, ConversationScrollButton, CopyIcon, DEFAULT_STYLE_CONFIG, EditIcon, EnvVarsPanel, ErrorIcon, FileBadgeCompact, FileIcon, FilePlusIcon, FolderSearchIcon, GlobeIcon, HomeIcon, InfoIcon, JsonDisplay, LazyMarkdown, ListChecksIcon, LoaderIcon, LoadingDots, LoadingSpinner, LogsPanel, Mention, Message, MessageAction, MessageActions, MessageAvatar, MessageContent, MessageResponse, MessageShimmer, MessageSquareIcon, MessageTimestamp, MicrophoneIcon, MoonIcon, OptionCards, PaperclipIcon, PlugIcon, Reasoning, ReasoningContent, ReasoningTrigger, RichContentRenderer, SearchIcon, SendIcon, Shimmer, ShimmerBlock, ShimmerLine, ShimmerText, SparklesIcon, SpinnerIcon, StatusIndicator, StopCircleIcon, SunIcon, Task, TaskContent, TaskItem, TaskList, TaskTrigger, TerminalIcon, ThinkingIndicator, Tool, ToolHeader, ToolIcon, ToolInput, ToolList, ToolOutput, UserIcon, XCircleIcon, XIcon, allKeyframesCss, applyEventMiddleware, applyRequestMiddleware, borderRadius, callMiddlewareComplete, callMiddlewareError, cn, colors, createToolCall, cssVars, extractTextContent, formatElapsedTime, formatFileSize, formatFileSize2 as formatFileSizeHook, formatTimestamp, formatToolName, generateToolSummary, getActionIcon, getActionLabel, inlineStyles, isAgentToolAction, isCommandRunAction, isErrorEntry, isFileEditAction, isFileReadAction, isFileWriteAction, isGenericToolAction, isGlobAction, isMcpToolAction, isSearchAction, isTodoWriteAction, isToolCallEntry, isWebFetchAction, isWebSearchAction, isWidgetEntry, keyframes, keyframesCss, mapToolToActionType, messageToNormalizedEntry, messagesToNormalizedEntries, normalizeToolResult, normalizedEntriesToMessages, normalizedEntryToMessage, parseCommandResult, parseMcpToolName, parseOptionsFromContent, shadows, spacing, tokensToCssVariables, transitions, truncate, typography, updateToolCallWithResult, useAgentChat, useAttachment, useChat, useConversation, useFileUpload, useLongTextConversion, useMessage, useMessageQueue, useReasoning, useStopExecution, useTask, useTool, widget, zIndex };
4311
4382
  //# sourceMappingURL=index.js.map
4312
4383
  //# sourceMappingURL=index.js.map