teodor-new-chat-ui 4.3.656 → 4.3.658

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.
@@ -1,6 +1,6 @@
1
1
  export { useFilePreview } from "./useFilePreview";
2
2
  export { useParsedMessageContent } from "./useParsedMessageContent";
3
- export { useToolPayload, type ToolPayloadResult, } from "./useToolPayload";
3
+ export { useToolPayload, type ToolPayloadResult, } from "../messages/hooks/useToolPayload";
4
4
  export { useChatController } from "./useChatController";
5
5
  export { useThreadsState } from "./useThreadsState";
6
6
  export { useThreadHistoryState } from "./useThreadHistoryState";
@@ -2,6 +2,7 @@ import type { ChatMessage, RespondToInterruptOptions, PendingInterrupt } from "@
2
2
  import type { EditMeta, TimelineCheckpoint } from "@/features/persistence/checkpoints/types";
3
3
  import type { CheckpointIndex } from "@/features/persistence/checkpoints/utils/checkpointIndex";
4
4
  import React from "react";
5
+ import type { MessageRowProps } from "./MessageRow";
5
6
  import type { ToolConfig } from "../messages";
6
7
  import type { MessageBubbleProps } from "../messages/components/MessageBubble";
7
8
  export interface MessageListProps {
@@ -41,6 +42,7 @@ export interface MessageListProps {
41
42
  pendingInterrupt?: PendingInterrupt | null;
42
43
  /** Whether to render artifacts (plots, images) inline in the message. Defaults to true. */
43
44
  renderArtifactsInline?: boolean;
45
+ renderAiTurn?: MessageRowProps["renderAiTurn"];
44
46
  }
45
47
  export interface MessageListHandle {
46
48
  scrollToLatest: () => void;
@@ -22,6 +22,15 @@ export interface MessageRowProps {
22
22
  toolConfig?: ToolConfig;
23
23
  getInterruptOptions?: (message: ChatMessage) => RespondToInterruptOptions | undefined;
24
24
  renderArtifactsInline?: boolean;
25
+ renderAiTurn?: (params: {
26
+ turn: ChatTurn;
27
+ aiMessages: ChatMessage[];
28
+ baseAiMessage?: ChatMessage;
29
+ aiHeader: React.ReactNode;
30
+ aiContent: React.ReactNode;
31
+ isCompactLayout: boolean;
32
+ toolConfig?: ToolConfig;
33
+ }) => React.ReactNode;
25
34
  }
26
35
  export declare const getMessageDomKey: (id: string) => string;
27
36
  export declare const MessageRow: React.NamedExoticComponent<MessageRowProps>;
@@ -1,9 +1,7 @@
1
- import React from "react";
2
1
  import type { ChatMessage, InterruptPart, InterruptAlternative, ToolConfig } from "@/types";
3
2
  export interface InteractiveContentProps {
4
3
  message: ChatMessage;
5
4
  isStreamingMessage: boolean;
6
- showToolMessages?: boolean;
7
5
  showThinkingIndicator?: boolean;
8
6
  toolConfig?: ToolConfig;
9
7
  interruptPart?: InterruptPart | null;
@@ -19,4 +17,4 @@ export interface InteractiveContentProps {
19
17
  * InteractiveContent - Renderer for AI-specific interactive logic.
20
18
  * Handles: ToolProgress, Artifacts, and Interrupts.
21
19
  */
22
- export declare const InteractiveContent: React.NamedExoticComponent<InteractiveContentProps>;
20
+ export declare const InteractiveContent: import("react").NamedExoticComponent<InteractiveContentProps>;
@@ -1,11 +1,11 @@
1
1
  export { ArtifactRenderer } from "./tool/artifacts/ArtifactRenderer";
2
2
  export { ArtifactProgress } from "./tool/artifacts/ArtifactProgress";
3
3
  export { SimpleJsonView } from "./content/SimpleJsonView";
4
+ export { ToolContent } from "./content/ToolContent";
5
+ export type { ToolRendererMap, ToolArtifactRendererMap, ToolRenderer, ToolArtifactRenderer, ToolRendererContext, ToolConfig } from "./content/ToolContent";
4
6
  export { ToolProgress } from "./tool/timeline/ToolProgress";
5
7
  export { InterruptPartRenderer } from "./user/InterruptPartRenderer";
6
8
  export { ThinkingIndicator } from "./shared/ThinkingIndicator";
7
9
  export { UserTextContent } from "./user/UserTextContent";
8
- export { ToolContent } from "./ToolContent";
9
- export type { ToolRendererMap, ToolArtifactRendererMap, ToolRenderer, ToolArtifactRenderer, ToolRendererContext, ToolConfig } from "./ToolContent";
10
10
  export { MessageHeader } from "./MessageHeader";
11
11
  export { MarkdownContent } from "./markdown";
@@ -4,3 +4,4 @@ export * from "./metaUtils";
4
4
  export * from "./artifactUtils";
5
5
  export * from "./messageUtils";
6
6
  export * from "./toolPayloadUtils";
7
+ export * from "./toolCallUtils";
@@ -0,0 +1,14 @@
1
+ import type { ChatMessage, ToolCallPart } from "@/types";
2
+ export type ToolCallState = "pending" | "completed" | "error";
3
+ export type ToolCallWithResult = {
4
+ call: ToolCallPart;
5
+ result?: ChatMessage;
6
+ state: ToolCallState;
7
+ progress?: Array<Record<string, unknown>>;
8
+ artifact?: unknown;
9
+ };
10
+ /**
11
+ * getToolCalls - Helper for rendering tool calls with results (LangGraph-style).
12
+ */
13
+ export declare function getToolCalls(message: ChatMessage, allMessages?: ChatMessage[]): ToolCallWithResult[];
14
+ export declare function getToolCallArtifacts(message: ChatMessage, allMessages?: ChatMessage[]): unknown[];
@@ -1,5 +1,5 @@
1
1
  import type { StreamContextValue } from '@/types/core';
2
- import type { ToolEndEvent } from "@/types/domain/streaming";
2
+ import type { ToolEndEvent, StreamEvent, StreamFinishInfo } from "@/types/domain/streaming";
3
3
  import { type ReactNode } from 'react';
4
4
  interface StreamingProviderProps {
5
5
  children: ReactNode;
@@ -12,8 +12,12 @@ interface StreamingProviderProps {
12
12
  onThreadChange?: (threadId: string | null) => void;
13
13
  onConnectionError?: (error: string) => void;
14
14
  onToolEnd?: (event: ToolEndEvent) => void;
15
+ onUpdateEvent?: (event: StreamEvent) => void;
16
+ onCustomEvent?: (event: StreamEvent) => void;
17
+ onMetadataEvent?: (event: StreamEvent) => void;
18
+ onFinish?: (info: StreamFinishInfo) => void;
15
19
  }
16
- export declare function StreamingProvider({ children, initialThreadId, initialCheckpointId, initialCheckpointNs, autoLoadInitial, onError, onAuthError, onThreadChange, onConnectionError, onToolEnd, }: StreamingProviderProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare function StreamingProvider({ children, initialThreadId, initialCheckpointId, initialCheckpointNs, autoLoadInitial, onError, onAuthError, onThreadChange, onConnectionError, onToolEnd, onUpdateEvent, onCustomEvent, onMetadataEvent, onFinish, }: StreamingProviderProps): import("react/jsx-runtime").JSX.Element;
17
21
  export declare function useStream(): StreamContextValue;
18
22
  export declare function useHasChatSession(): boolean;
19
23
  export {};