@iota-uz/sdk 0.4.36 → 0.4.38

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.
@@ -739,7 +739,7 @@ interface ChatMessagingStateValue {
739
739
  showActivityTrace: boolean;
740
740
  showTypingIndicator: boolean;
741
741
  sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
742
- handleRegenerate?: (turnId: string) => Promise<void>;
742
+ handleRegenerate?: (turnId: string, model?: string) => Promise<void>;
743
743
  handleEdit?: (turnId: string, newContent: string) => Promise<void>;
744
744
  handleCopy: (text: string) => Promise<void>;
745
745
  handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -1040,8 +1040,10 @@ interface AssistantMessageArtifactsSlotProps {
1040
1040
  interface AssistantMessageActionsSlotProps {
1041
1041
  /** Copy content to clipboard */
1042
1042
  onCopy: () => void;
1043
- /** Regenerate response */
1044
- onRegenerate?: () => void;
1043
+ /** Regenerate response, optionally with a specific model id */
1044
+ onRegenerate?: (model?: string) => void;
1045
+ /** Available models that can be picked for regenerate */
1046
+ regenerateModels?: RegenerateModelOption[];
1045
1047
  /** Formatted timestamp */
1046
1048
  timestamp: string;
1047
1049
  /** Whether copy action is available */
@@ -1049,6 +1051,12 @@ interface AssistantMessageActionsSlotProps {
1049
1051
  /** Whether regenerate action is available */
1050
1052
  canRegenerate: boolean;
1051
1053
  }
1054
+ interface RegenerateModelOption {
1055
+ /** Model id passed to onRegenerate */
1056
+ id: string;
1057
+ /** Translation key (or label) shown in the picker */
1058
+ label: string;
1059
+ }
1052
1060
  interface AssistantMessageExplanationSlotProps {
1053
1061
  /** Explanation content (markdown) */
1054
1062
  explanation: string;
@@ -1122,8 +1130,13 @@ interface AssistantMessageProps {
1122
1130
  classNames?: AssistantMessageClassNames;
1123
1131
  /** Copy handler */
1124
1132
  onCopy?: (content: string) => Promise<void> | void;
1125
- /** Regenerate handler */
1126
- onRegenerate?: (turnId: string) => Promise<void> | void;
1133
+ /** Regenerate handler. The optional `model` argument is the id chosen from the
1134
+ * Fast/Deep picker; when omitted the current session model is used. */
1135
+ onRegenerate?: (turnId: string, model?: string) => Promise<void> | void;
1136
+ /** Models offered when the user clicks the regenerate button. When two or more
1137
+ * options are provided a Fast/Deep picker is shown; otherwise regenerate is
1138
+ * triggered immediately with the active model. */
1139
+ regenerateModels?: RegenerateModelOption[];
1127
1140
  /** Send message handler (for markdown links) */
1128
1141
  onSendMessage?: (content: string) => void;
1129
1142
  /** Whether sending is disabled */
@@ -1137,7 +1150,7 @@ interface AssistantMessageProps {
1137
1150
  /** Show debug panel */
1138
1151
  showDebug?: boolean;
1139
1152
  }
1140
- declare function AssistantMessage({ turn, turnId, isLastTurn, isStreaming, pendingQuestion, slots, classNames: classNameOverrides, onCopy, onRegenerate, onSendMessage, sendDisabled, hideAvatar, hideActions, hideTimestamp, showDebug, }: AssistantMessageProps): react_jsx_runtime.JSX.Element;
1153
+ declare function AssistantMessage({ turn, turnId, isLastTurn, isStreaming, pendingQuestion, slots, classNames: classNameOverrides, onCopy, onRegenerate, regenerateModels, onSendMessage, sendDisabled, hideAvatar, hideActions, hideTimestamp, showDebug, }: AssistantMessageProps): react_jsx_runtime.JSX.Element;
1141
1154
 
1142
1155
  interface AssistantTurnViewProps {
1143
1156
  /** The conversation turn containing the assistant response */
@@ -2406,16 +2419,6 @@ declare function useTranslation(): {
2406
2419
  locale: string;
2407
2420
  };
2408
2421
 
2409
- /**
2410
- * Hook to prevent body scroll when modal is open
2411
- * Restores scroll on cleanup or when modal closes
2412
- *
2413
- * @param isOpen - Whether the modal is currently open
2414
- *
2415
- * @example
2416
- * const [isModalOpen, setIsModalOpen] = useState(false)
2417
- * useModalLock(isModalOpen)
2418
- */
2419
2422
  declare function useModalLock(isOpen: boolean): void;
2420
2423
 
2421
2424
  /**
@@ -4075,7 +4078,7 @@ interface MessagingSnapshot {
4075
4078
  showActivityTrace: boolean;
4076
4079
  showTypingIndicator: boolean;
4077
4080
  sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
4078
- handleRegenerate?: (turnId: string) => Promise<void>;
4081
+ handleRegenerate?: (turnId: string, model?: string) => Promise<void>;
4079
4082
  handleEdit?: (turnId: string, newContent: string) => Promise<void>;
4080
4083
  handleCopy: (text: string) => Promise<void>;
4081
4084
  handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -4130,6 +4133,14 @@ declare class ChatMachine {
4130
4133
  private lastSendAttempt;
4131
4134
  /** Prevents fetchSession effect from clobbering state while stream is active. */
4132
4135
  private sendingSessionId;
4136
+ /**
4137
+ * Monotonic counter bumped on every real session switch. An async op (send
4138
+ * stream, post-stream sync, queue drain, resume, HITL) captures it at start
4139
+ * and re-checks before writing to the single shared `state.messaging`; a stale
4140
+ * epoch means the user navigated to a different session, so the write is
4141
+ * dropped instead of bleeding into / clobbering the now-visible session.
4142
+ */
4143
+ private viewEpoch;
4133
4144
  private fetchCancelled;
4134
4145
  private disposed;
4135
4146
  private reasoningEffortOptions;
@@ -4153,7 +4164,7 @@ declare class ChatMachine {
4153
4164
  readonly setError: (error: string | null) => void;
4154
4165
  readonly retryFetchSession: () => void;
4155
4166
  readonly sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
4156
- readonly handleRegenerate: (turnId: string) => Promise<void>;
4167
+ readonly handleRegenerate: (turnId: string, model?: string) => Promise<void>;
4157
4168
  readonly handleEdit: (turnId: string, newContent: string) => Promise<void>;
4158
4169
  readonly handleCopy: (text: string) => Promise<void>;
4159
4170
  readonly handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -4203,6 +4214,22 @@ declare class ChatMachine {
4203
4214
  private _updateInput;
4204
4215
  private _notifyInput;
4205
4216
  private _persistQueue;
4217
+ /**
4218
+ * True while `epoch` is still the active view — i.e. the machine has not been
4219
+ * disposed and no session switch has happened since `epoch` was captured.
4220
+ * Async ops gate their writes to the shared messaging state on this.
4221
+ */
4222
+ private _isCurrentEpoch;
4223
+ /** A send can't start while generating, mid-resume, or with an open question. */
4224
+ private _isBlockedForSend;
4225
+ /**
4226
+ * Send the next queued message, but only if we still own the view (`epoch`)
4227
+ * and nothing is blocking (an in-flight generation or an open question). The
4228
+ * item is dequeued optimistically and restored to the front if it turns out we
4229
+ * can't send when the deferred tick fires — so a queued message is never
4230
+ * silently dropped.
4231
+ */
4232
+ private _drainQueueIfReady;
4206
4233
  private _setDebugModeForSession;
4207
4234
  private _hydrateDebugModeForSession;
4208
4235
  private _setReasoningEffort;
@@ -4484,4 +4511,4 @@ type TerminalStreamEventType = typeof TERMINAL_STREAM_EVENT_TYPES[number];
4484
4511
  */
4485
4512
  declare function isTerminalEvent(name: string): name is TerminalStreamEventType;
4486
4513
 
4487
- export { ATTACHMENT_ACCEPT_ATTRIBUTE, ActionButton, type ActionButtonIconProps, type ActionButtonLabelProps, type ActionButtonRootProps, type ActionButtonTooltipProps, type ActiveRunDelivery, type ActiveRunSnapshot, type ActiveTab, type ActivityStep, ActivityTrace, type ActivityTraceProps, type AdminStore, _default$1 as Alert, AllChatsList, type AppConfig, _default as ArchiveBanner, ArchivedChatList, type Artifact$1 as Artifact, type ArtifactStore, type AsChildProps, AssistantMessage, type AssistantMessageActionsSlotProps, type AssistantMessageArtifactsSlotProps, type AssistantMessageAvatarSlotProps, type AssistantMessageChartsSlotProps, type AssistantMessageClassNames, type AssistantMessageCodeOutputsSlotProps, type AssistantMessageContentSlotProps, type AssistantMessageExplanationSlotProps, type AssistantMessageProps, type AssistantMessageSlots, type AssistantMessageSourcesSlotProps, type AssistantMessageTablesSlotProps, type AssistantTextBlock, type AssistantTurn$1 as AssistantTurn, AssistantTurnView, type AssistantTurnViewProps, type Attachment$1 as Attachment, MemoizedAttachmentGrid as AttachmentGrid, AttachmentPreview, AttachmentUpload, Avatar, type AvatarFallbackProps, type AvatarImageProps, type AvatarRootProps, AvatarStack, type AvatarStackProps, type BiChatConfig, BiChatLayout, type BiChatLayoutProps, type BichatRPC, Bubble, type BubbleContentProps, type BubbleFooterProps, type BubbleHeaderProps, type BubbleMetadataProps, type BubbleRootProps, type BubbleVariant, CHART_VISUAL, ChartCard, type ChartCardHost, type ChartData, type ChartSeries, type ChatDataSource, ChatHeader, type ChatInputStateValue, ChatMachine, type ChatMachineConfig, type ChatMessagingStateValue, ChatSession, type ChatSessionContextValue, type ChatSessionProps, ChatSessionProvider, type ChatSessionProviderProps, type ChatSessionStateValue, type Citation$1 as Citation, MemoizedCodeBlock as CodeBlock, type CodeOutput$1 as CodeOutput, CodeOutputsPanel, type ColumnMeta, type ColumnStats, type ColumnType, CompactionDoodle, ConfigProvider, ConfirmModal, type ConfirmModalProps, ConfirmationStep, type ConversationTurn$1 as ConversationTurn, type DataTableOptions, DateGroupHeader, DebugPanel, type DebugPanelProps, DefaultErrorContent, DownloadCard, MemoizedEditableText as EditableText, type EditableTextProps, type EditableTextRef, MemoizedEmptyState as EmptyState, type EmptyStateProps, ErrorBoundary, type FileValidationError, type FileVisual, type FormattedCell, HttpDataSource, type HttpDataSourceConfig, type ImageAttachment, type ImageLoadingStatus, ImageModal, InlineQuestionForm, InteractiveTableCard, type IotaContext, IotaContextProvider, ListItemSkeleton, MemoizedLoadingSpinner as LoadingSpinner, type LocaleContext, MemoizedMarkdownRenderer as MarkdownRenderer, MessageActions, MessageInput, type MessageInputProps, type MessageInputRef, MessageList, MessageRole, type MessageTransport, ModelSelector, type PendingQuestion$1 as PendingQuestion, PermissionGuard, type PermissionGuardProps, type Question, type QuestionAnswerData, type QuestionAnswers, QuestionForm, type QuestionOption, QuestionStep, type QueuedMessage, type RPCErrorDisplay, RateLimiter, type RateLimiterConfig, type RenderTableData, type RenderTableExport, RetryActionArea, RunEventsConnectError, STREAM_EVENT_TYPES, ScreenReaderAnnouncer, ScrollToBottomButton, MemoizedSearchInput as SearchInput, type SearchInputProps, type Session$1 as Session, type SessionAccess$1 as SessionAccess, type SessionArtifact, SessionArtifactList, SessionArtifactPreview, SessionArtifactsPanel, type SessionGroup, SessionItem, type SessionListResult$1 as SessionListResult, type SessionMember$1 as SessionMember, SessionMembersModal, type SessionMembersModalProps, SessionSkeleton, type SessionStore, type SessionUser$1 as SessionUser, type ShortcutConfig, Sidebar, type SidebarDrawerProps, type SidebarProps, MemoizedSkeleton as Skeleton, SkeletonAvatar, SkeletonCard, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, SkeletonText, SkipLink, Slot, type SlotProps, type SortState, SourcesPanel, type StreamChunk, StreamError, type StreamEvent, type StreamEventType, StreamingCursor, SystemMessage, TERMINAL_STREAM_EVENT_TYPES, TabbedChartGroup, type TabbedChartGroupProps, TabbedTableGroup, type TabbedTableGroupProps, type TableCardHost, TableExportButton, TableWithExport, type TenantContext, type TerminalStreamEventType, type Theme, type ThemeBorderRadius, type ThemeColors, ThemeProvider, type ThemeSpacing, Toast, type ToastAction, ToastContainer, type ToastItem, type ToastProps, type ToastType, type ToolCall$1 as ToolCall, TouchContextMenu, Turn, type TurnActionsProps, type TurnAssistantProps, TurnBubble, type TurnBubbleClassNames, type TurnBubbleProps, type TurnRootProps, type TurnTimestampProps, type TurnUserProps, MemoizedTypingIndicator as TypingIndicator, type TypingIndicatorProps, type UseActiveRunsOptions, type UseActiveRunsResult, type UseAttachmentsOptions, type UseAttachmentsReturn, type UseAutoScrollOptions, type UseAutoScrollReturn, type UseBichatRouterParams, type UseBichatRouterReturn, type UseDataTableReturn, type UseImageGalleryOptions, type UseImageGalleryReturn, type UseMarkdownCopyOptions, type UseMarkdownCopyReturn, type UseMessageActionsOptions, type UseMessageActionsReturn, type UseSidebarStateReturn, type UseToastReturn, MemoizedUserAvatar as UserAvatar, type UserAvatarProps, type UserContext, MemoizedUserFilter as UserFilter, UserMessage, type UserMessageActionsSlotProps, type UserMessageAttachmentsSlotProps, type UserMessageAvatarSlotProps, type UserMessageClassNames, type UserMessageContentSlotProps, type UserMessageProps, type UserMessageSlots, type UserTurn$1 as UserTurn, UserTurnView, type UserTurnViewProps, WelcomeContent, addCSRFHeader, backdropVariants, buttonVariants, convertToBase64, createDataUrl, createHeadersWithCSRF, createHttpDataSource, darkTheme, dropdownVariants, errorMessageVariants, fadeInUpVariants, fadeInVariants, floatingButtonVariants, formatFileSize, getCSRFToken, getFileVisual, getToolLabel, getValidChildren, groupSessionsByDate, groupSteps, hasPermission, isImageMimeType, isPermissionDeniedError, isTerminalEvent, lightTheme, listItemVariants, messageContainerVariants, messageVariants, parseBichatStream, parseBichatStreamEvents, parseSSEStream, readTextBlockOffsets, scaleFadeVariants, sessionItemVariants, splitIntoTextBlocks, staggerContainerVariants, toErrorDisplay, typingDotVariants, useActionButtonContext, useActiveRuns, useAttachments, useAutoScroll, useAvatarContext, useBichatRouter, useBubbleContext, useChatInput, useChatMessaging, useChatSession, useConfig, useDataTable, useFocusTrap, useHttpDataSourceConfigFromApplet, useImageGallery, useIotaContext, useKeyboardShortcuts, useLongPress, useMarkdownCopy, useMessageActions, useModalLock, useOptionalChatMessaging, useRequiredConfig, useScrollToBottom, useSidebarState, useStreaming, useTheme, useToast, useTranslation, useTurnContext, validateAttachmentFile, validateFileCount, validateImageFile, verbTransitionVariants };
4514
+ export { ATTACHMENT_ACCEPT_ATTRIBUTE, ActionButton, type ActionButtonIconProps, type ActionButtonLabelProps, type ActionButtonRootProps, type ActionButtonTooltipProps, type ActiveRunDelivery, type ActiveRunSnapshot, type ActiveTab, type ActivityStep, ActivityTrace, type ActivityTraceProps, type AdminStore, _default$1 as Alert, AllChatsList, type AppConfig, _default as ArchiveBanner, ArchivedChatList, type Artifact$1 as Artifact, type ArtifactStore, type AsChildProps, AssistantMessage, type AssistantMessageActionsSlotProps, type AssistantMessageArtifactsSlotProps, type AssistantMessageAvatarSlotProps, type AssistantMessageChartsSlotProps, type AssistantMessageClassNames, type AssistantMessageCodeOutputsSlotProps, type AssistantMessageContentSlotProps, type AssistantMessageExplanationSlotProps, type AssistantMessageProps, type AssistantMessageSlots, type AssistantMessageSourcesSlotProps, type AssistantMessageTablesSlotProps, type AssistantTextBlock, type AssistantTurn$1 as AssistantTurn, AssistantTurnView, type AssistantTurnViewProps, type Attachment$1 as Attachment, MemoizedAttachmentGrid as AttachmentGrid, AttachmentPreview, AttachmentUpload, Avatar, type AvatarFallbackProps, type AvatarImageProps, type AvatarRootProps, AvatarStack, type AvatarStackProps, type BiChatConfig, BiChatLayout, type BiChatLayoutProps, type BichatRPC, Bubble, type BubbleContentProps, type BubbleFooterProps, type BubbleHeaderProps, type BubbleMetadataProps, type BubbleRootProps, type BubbleVariant, CHART_VISUAL, ChartCard, type ChartCardHost, type ChartData, type ChartSeries, type ChatDataSource, ChatHeader, type ChatInputStateValue, ChatMachine, type ChatMachineConfig, type ChatMessagingStateValue, ChatSession, type ChatSessionContextValue, type ChatSessionProps, ChatSessionProvider, type ChatSessionProviderProps, type ChatSessionStateValue, type Citation$1 as Citation, MemoizedCodeBlock as CodeBlock, type CodeOutput$1 as CodeOutput, CodeOutputsPanel, type ColumnMeta, type ColumnStats, type ColumnType, CompactionDoodle, ConfigProvider, ConfirmModal, type ConfirmModalProps, ConfirmationStep, type ConversationTurn$1 as ConversationTurn, type DataTableOptions, DateGroupHeader, DebugPanel, type DebugPanelProps, DefaultErrorContent, DownloadCard, MemoizedEditableText as EditableText, type EditableTextProps, type EditableTextRef, MemoizedEmptyState as EmptyState, type EmptyStateProps, ErrorBoundary, type FileValidationError, type FileVisual, type FormattedCell, HttpDataSource, type HttpDataSourceConfig, type ImageAttachment, type ImageLoadingStatus, ImageModal, InlineQuestionForm, InteractiveTableCard, type IotaContext, IotaContextProvider, ListItemSkeleton, MemoizedLoadingSpinner as LoadingSpinner, type LocaleContext, MemoizedMarkdownRenderer as MarkdownRenderer, MessageActions, MessageInput, type MessageInputProps, type MessageInputRef, MessageList, MessageRole, type MessageTransport, ModelSelector, type PendingQuestion$1 as PendingQuestion, PermissionGuard, type PermissionGuardProps, type Question, type QuestionAnswerData, type QuestionAnswers, QuestionForm, type QuestionOption, QuestionStep, type QueuedMessage, type RPCErrorDisplay, RateLimiter, type RateLimiterConfig, type RegenerateModelOption, type RenderTableData, type RenderTableExport, RetryActionArea, RunEventsConnectError, STREAM_EVENT_TYPES, ScreenReaderAnnouncer, ScrollToBottomButton, MemoizedSearchInput as SearchInput, type SearchInputProps, type Session$1 as Session, type SessionAccess$1 as SessionAccess, type SessionArtifact, SessionArtifactList, SessionArtifactPreview, SessionArtifactsPanel, type SessionGroup, SessionItem, type SessionListResult$1 as SessionListResult, type SessionMember$1 as SessionMember, SessionMembersModal, type SessionMembersModalProps, SessionSkeleton, type SessionStore, type SessionUser$1 as SessionUser, type ShortcutConfig, Sidebar, type SidebarDrawerProps, type SidebarProps, MemoizedSkeleton as Skeleton, SkeletonAvatar, SkeletonCard, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, SkeletonText, SkipLink, Slot, type SlotProps, type SortState, SourcesPanel, type StreamChunk, StreamError, type StreamEvent, type StreamEventType, StreamingCursor, SystemMessage, TERMINAL_STREAM_EVENT_TYPES, TabbedChartGroup, type TabbedChartGroupProps, TabbedTableGroup, type TabbedTableGroupProps, type TableCardHost, TableExportButton, TableWithExport, type TenantContext, type TerminalStreamEventType, type Theme, type ThemeBorderRadius, type ThemeColors, ThemeProvider, type ThemeSpacing, Toast, type ToastAction, ToastContainer, type ToastItem, type ToastProps, type ToastType, type ToolCall$1 as ToolCall, TouchContextMenu, Turn, type TurnActionsProps, type TurnAssistantProps, TurnBubble, type TurnBubbleClassNames, type TurnBubbleProps, type TurnRootProps, type TurnTimestampProps, type TurnUserProps, MemoizedTypingIndicator as TypingIndicator, type TypingIndicatorProps, type UseActiveRunsOptions, type UseActiveRunsResult, type UseAttachmentsOptions, type UseAttachmentsReturn, type UseAutoScrollOptions, type UseAutoScrollReturn, type UseBichatRouterParams, type UseBichatRouterReturn, type UseDataTableReturn, type UseImageGalleryOptions, type UseImageGalleryReturn, type UseMarkdownCopyOptions, type UseMarkdownCopyReturn, type UseMessageActionsOptions, type UseMessageActionsReturn, type UseSidebarStateReturn, type UseToastReturn, MemoizedUserAvatar as UserAvatar, type UserAvatarProps, type UserContext, MemoizedUserFilter as UserFilter, UserMessage, type UserMessageActionsSlotProps, type UserMessageAttachmentsSlotProps, type UserMessageAvatarSlotProps, type UserMessageClassNames, type UserMessageContentSlotProps, type UserMessageProps, type UserMessageSlots, type UserTurn$1 as UserTurn, UserTurnView, type UserTurnViewProps, WelcomeContent, addCSRFHeader, backdropVariants, buttonVariants, convertToBase64, createDataUrl, createHeadersWithCSRF, createHttpDataSource, darkTheme, dropdownVariants, errorMessageVariants, fadeInUpVariants, fadeInVariants, floatingButtonVariants, formatFileSize, getCSRFToken, getFileVisual, getToolLabel, getValidChildren, groupSessionsByDate, groupSteps, hasPermission, isImageMimeType, isPermissionDeniedError, isTerminalEvent, lightTheme, listItemVariants, messageContainerVariants, messageVariants, parseBichatStream, parseBichatStreamEvents, parseSSEStream, readTextBlockOffsets, scaleFadeVariants, sessionItemVariants, splitIntoTextBlocks, staggerContainerVariants, toErrorDisplay, typingDotVariants, useActionButtonContext, useActiveRuns, useAttachments, useAutoScroll, useAvatarContext, useBichatRouter, useBubbleContext, useChatInput, useChatMessaging, useChatSession, useConfig, useDataTable, useFocusTrap, useHttpDataSourceConfigFromApplet, useImageGallery, useIotaContext, useKeyboardShortcuts, useLongPress, useMarkdownCopy, useMessageActions, useModalLock, useOptionalChatMessaging, useRequiredConfig, useScrollToBottom, useSidebarState, useStreaming, useTheme, useToast, useTranslation, useTurnContext, validateAttachmentFile, validateFileCount, validateImageFile, verbTransitionVariants };
@@ -739,7 +739,7 @@ interface ChatMessagingStateValue {
739
739
  showActivityTrace: boolean;
740
740
  showTypingIndicator: boolean;
741
741
  sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
742
- handleRegenerate?: (turnId: string) => Promise<void>;
742
+ handleRegenerate?: (turnId: string, model?: string) => Promise<void>;
743
743
  handleEdit?: (turnId: string, newContent: string) => Promise<void>;
744
744
  handleCopy: (text: string) => Promise<void>;
745
745
  handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -1040,8 +1040,10 @@ interface AssistantMessageArtifactsSlotProps {
1040
1040
  interface AssistantMessageActionsSlotProps {
1041
1041
  /** Copy content to clipboard */
1042
1042
  onCopy: () => void;
1043
- /** Regenerate response */
1044
- onRegenerate?: () => void;
1043
+ /** Regenerate response, optionally with a specific model id */
1044
+ onRegenerate?: (model?: string) => void;
1045
+ /** Available models that can be picked for regenerate */
1046
+ regenerateModels?: RegenerateModelOption[];
1045
1047
  /** Formatted timestamp */
1046
1048
  timestamp: string;
1047
1049
  /** Whether copy action is available */
@@ -1049,6 +1051,12 @@ interface AssistantMessageActionsSlotProps {
1049
1051
  /** Whether regenerate action is available */
1050
1052
  canRegenerate: boolean;
1051
1053
  }
1054
+ interface RegenerateModelOption {
1055
+ /** Model id passed to onRegenerate */
1056
+ id: string;
1057
+ /** Translation key (or label) shown in the picker */
1058
+ label: string;
1059
+ }
1052
1060
  interface AssistantMessageExplanationSlotProps {
1053
1061
  /** Explanation content (markdown) */
1054
1062
  explanation: string;
@@ -1122,8 +1130,13 @@ interface AssistantMessageProps {
1122
1130
  classNames?: AssistantMessageClassNames;
1123
1131
  /** Copy handler */
1124
1132
  onCopy?: (content: string) => Promise<void> | void;
1125
- /** Regenerate handler */
1126
- onRegenerate?: (turnId: string) => Promise<void> | void;
1133
+ /** Regenerate handler. The optional `model` argument is the id chosen from the
1134
+ * Fast/Deep picker; when omitted the current session model is used. */
1135
+ onRegenerate?: (turnId: string, model?: string) => Promise<void> | void;
1136
+ /** Models offered when the user clicks the regenerate button. When two or more
1137
+ * options are provided a Fast/Deep picker is shown; otherwise regenerate is
1138
+ * triggered immediately with the active model. */
1139
+ regenerateModels?: RegenerateModelOption[];
1127
1140
  /** Send message handler (for markdown links) */
1128
1141
  onSendMessage?: (content: string) => void;
1129
1142
  /** Whether sending is disabled */
@@ -1137,7 +1150,7 @@ interface AssistantMessageProps {
1137
1150
  /** Show debug panel */
1138
1151
  showDebug?: boolean;
1139
1152
  }
1140
- declare function AssistantMessage({ turn, turnId, isLastTurn, isStreaming, pendingQuestion, slots, classNames: classNameOverrides, onCopy, onRegenerate, onSendMessage, sendDisabled, hideAvatar, hideActions, hideTimestamp, showDebug, }: AssistantMessageProps): react_jsx_runtime.JSX.Element;
1153
+ declare function AssistantMessage({ turn, turnId, isLastTurn, isStreaming, pendingQuestion, slots, classNames: classNameOverrides, onCopy, onRegenerate, regenerateModels, onSendMessage, sendDisabled, hideAvatar, hideActions, hideTimestamp, showDebug, }: AssistantMessageProps): react_jsx_runtime.JSX.Element;
1141
1154
 
1142
1155
  interface AssistantTurnViewProps {
1143
1156
  /** The conversation turn containing the assistant response */
@@ -2406,16 +2419,6 @@ declare function useTranslation(): {
2406
2419
  locale: string;
2407
2420
  };
2408
2421
 
2409
- /**
2410
- * Hook to prevent body scroll when modal is open
2411
- * Restores scroll on cleanup or when modal closes
2412
- *
2413
- * @param isOpen - Whether the modal is currently open
2414
- *
2415
- * @example
2416
- * const [isModalOpen, setIsModalOpen] = useState(false)
2417
- * useModalLock(isModalOpen)
2418
- */
2419
2422
  declare function useModalLock(isOpen: boolean): void;
2420
2423
 
2421
2424
  /**
@@ -4075,7 +4078,7 @@ interface MessagingSnapshot {
4075
4078
  showActivityTrace: boolean;
4076
4079
  showTypingIndicator: boolean;
4077
4080
  sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
4078
- handleRegenerate?: (turnId: string) => Promise<void>;
4081
+ handleRegenerate?: (turnId: string, model?: string) => Promise<void>;
4079
4082
  handleEdit?: (turnId: string, newContent: string) => Promise<void>;
4080
4083
  handleCopy: (text: string) => Promise<void>;
4081
4084
  handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -4130,6 +4133,14 @@ declare class ChatMachine {
4130
4133
  private lastSendAttempt;
4131
4134
  /** Prevents fetchSession effect from clobbering state while stream is active. */
4132
4135
  private sendingSessionId;
4136
+ /**
4137
+ * Monotonic counter bumped on every real session switch. An async op (send
4138
+ * stream, post-stream sync, queue drain, resume, HITL) captures it at start
4139
+ * and re-checks before writing to the single shared `state.messaging`; a stale
4140
+ * epoch means the user navigated to a different session, so the write is
4141
+ * dropped instead of bleeding into / clobbering the now-visible session.
4142
+ */
4143
+ private viewEpoch;
4133
4144
  private fetchCancelled;
4134
4145
  private disposed;
4135
4146
  private reasoningEffortOptions;
@@ -4153,7 +4164,7 @@ declare class ChatMachine {
4153
4164
  readonly setError: (error: string | null) => void;
4154
4165
  readonly retryFetchSession: () => void;
4155
4166
  readonly sendMessage: (content: string, attachments?: Attachment$1[]) => Promise<void>;
4156
- readonly handleRegenerate: (turnId: string) => Promise<void>;
4167
+ readonly handleRegenerate: (turnId: string, model?: string) => Promise<void>;
4157
4168
  readonly handleEdit: (turnId: string, newContent: string) => Promise<void>;
4158
4169
  readonly handleCopy: (text: string) => Promise<void>;
4159
4170
  readonly handleSubmitQuestionAnswers: (answers: QuestionAnswers) => void;
@@ -4203,6 +4214,22 @@ declare class ChatMachine {
4203
4214
  private _updateInput;
4204
4215
  private _notifyInput;
4205
4216
  private _persistQueue;
4217
+ /**
4218
+ * True while `epoch` is still the active view — i.e. the machine has not been
4219
+ * disposed and no session switch has happened since `epoch` was captured.
4220
+ * Async ops gate their writes to the shared messaging state on this.
4221
+ */
4222
+ private _isCurrentEpoch;
4223
+ /** A send can't start while generating, mid-resume, or with an open question. */
4224
+ private _isBlockedForSend;
4225
+ /**
4226
+ * Send the next queued message, but only if we still own the view (`epoch`)
4227
+ * and nothing is blocking (an in-flight generation or an open question). The
4228
+ * item is dequeued optimistically and restored to the front if it turns out we
4229
+ * can't send when the deferred tick fires — so a queued message is never
4230
+ * silently dropped.
4231
+ */
4232
+ private _drainQueueIfReady;
4206
4233
  private _setDebugModeForSession;
4207
4234
  private _hydrateDebugModeForSession;
4208
4235
  private _setReasoningEffort;
@@ -4484,4 +4511,4 @@ type TerminalStreamEventType = typeof TERMINAL_STREAM_EVENT_TYPES[number];
4484
4511
  */
4485
4512
  declare function isTerminalEvent(name: string): name is TerminalStreamEventType;
4486
4513
 
4487
- export { ATTACHMENT_ACCEPT_ATTRIBUTE, ActionButton, type ActionButtonIconProps, type ActionButtonLabelProps, type ActionButtonRootProps, type ActionButtonTooltipProps, type ActiveRunDelivery, type ActiveRunSnapshot, type ActiveTab, type ActivityStep, ActivityTrace, type ActivityTraceProps, type AdminStore, _default$1 as Alert, AllChatsList, type AppConfig, _default as ArchiveBanner, ArchivedChatList, type Artifact$1 as Artifact, type ArtifactStore, type AsChildProps, AssistantMessage, type AssistantMessageActionsSlotProps, type AssistantMessageArtifactsSlotProps, type AssistantMessageAvatarSlotProps, type AssistantMessageChartsSlotProps, type AssistantMessageClassNames, type AssistantMessageCodeOutputsSlotProps, type AssistantMessageContentSlotProps, type AssistantMessageExplanationSlotProps, type AssistantMessageProps, type AssistantMessageSlots, type AssistantMessageSourcesSlotProps, type AssistantMessageTablesSlotProps, type AssistantTextBlock, type AssistantTurn$1 as AssistantTurn, AssistantTurnView, type AssistantTurnViewProps, type Attachment$1 as Attachment, MemoizedAttachmentGrid as AttachmentGrid, AttachmentPreview, AttachmentUpload, Avatar, type AvatarFallbackProps, type AvatarImageProps, type AvatarRootProps, AvatarStack, type AvatarStackProps, type BiChatConfig, BiChatLayout, type BiChatLayoutProps, type BichatRPC, Bubble, type BubbleContentProps, type BubbleFooterProps, type BubbleHeaderProps, type BubbleMetadataProps, type BubbleRootProps, type BubbleVariant, CHART_VISUAL, ChartCard, type ChartCardHost, type ChartData, type ChartSeries, type ChatDataSource, ChatHeader, type ChatInputStateValue, ChatMachine, type ChatMachineConfig, type ChatMessagingStateValue, ChatSession, type ChatSessionContextValue, type ChatSessionProps, ChatSessionProvider, type ChatSessionProviderProps, type ChatSessionStateValue, type Citation$1 as Citation, MemoizedCodeBlock as CodeBlock, type CodeOutput$1 as CodeOutput, CodeOutputsPanel, type ColumnMeta, type ColumnStats, type ColumnType, CompactionDoodle, ConfigProvider, ConfirmModal, type ConfirmModalProps, ConfirmationStep, type ConversationTurn$1 as ConversationTurn, type DataTableOptions, DateGroupHeader, DebugPanel, type DebugPanelProps, DefaultErrorContent, DownloadCard, MemoizedEditableText as EditableText, type EditableTextProps, type EditableTextRef, MemoizedEmptyState as EmptyState, type EmptyStateProps, ErrorBoundary, type FileValidationError, type FileVisual, type FormattedCell, HttpDataSource, type HttpDataSourceConfig, type ImageAttachment, type ImageLoadingStatus, ImageModal, InlineQuestionForm, InteractiveTableCard, type IotaContext, IotaContextProvider, ListItemSkeleton, MemoizedLoadingSpinner as LoadingSpinner, type LocaleContext, MemoizedMarkdownRenderer as MarkdownRenderer, MessageActions, MessageInput, type MessageInputProps, type MessageInputRef, MessageList, MessageRole, type MessageTransport, ModelSelector, type PendingQuestion$1 as PendingQuestion, PermissionGuard, type PermissionGuardProps, type Question, type QuestionAnswerData, type QuestionAnswers, QuestionForm, type QuestionOption, QuestionStep, type QueuedMessage, type RPCErrorDisplay, RateLimiter, type RateLimiterConfig, type RenderTableData, type RenderTableExport, RetryActionArea, RunEventsConnectError, STREAM_EVENT_TYPES, ScreenReaderAnnouncer, ScrollToBottomButton, MemoizedSearchInput as SearchInput, type SearchInputProps, type Session$1 as Session, type SessionAccess$1 as SessionAccess, type SessionArtifact, SessionArtifactList, SessionArtifactPreview, SessionArtifactsPanel, type SessionGroup, SessionItem, type SessionListResult$1 as SessionListResult, type SessionMember$1 as SessionMember, SessionMembersModal, type SessionMembersModalProps, SessionSkeleton, type SessionStore, type SessionUser$1 as SessionUser, type ShortcutConfig, Sidebar, type SidebarDrawerProps, type SidebarProps, MemoizedSkeleton as Skeleton, SkeletonAvatar, SkeletonCard, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, SkeletonText, SkipLink, Slot, type SlotProps, type SortState, SourcesPanel, type StreamChunk, StreamError, type StreamEvent, type StreamEventType, StreamingCursor, SystemMessage, TERMINAL_STREAM_EVENT_TYPES, TabbedChartGroup, type TabbedChartGroupProps, TabbedTableGroup, type TabbedTableGroupProps, type TableCardHost, TableExportButton, TableWithExport, type TenantContext, type TerminalStreamEventType, type Theme, type ThemeBorderRadius, type ThemeColors, ThemeProvider, type ThemeSpacing, Toast, type ToastAction, ToastContainer, type ToastItem, type ToastProps, type ToastType, type ToolCall$1 as ToolCall, TouchContextMenu, Turn, type TurnActionsProps, type TurnAssistantProps, TurnBubble, type TurnBubbleClassNames, type TurnBubbleProps, type TurnRootProps, type TurnTimestampProps, type TurnUserProps, MemoizedTypingIndicator as TypingIndicator, type TypingIndicatorProps, type UseActiveRunsOptions, type UseActiveRunsResult, type UseAttachmentsOptions, type UseAttachmentsReturn, type UseAutoScrollOptions, type UseAutoScrollReturn, type UseBichatRouterParams, type UseBichatRouterReturn, type UseDataTableReturn, type UseImageGalleryOptions, type UseImageGalleryReturn, type UseMarkdownCopyOptions, type UseMarkdownCopyReturn, type UseMessageActionsOptions, type UseMessageActionsReturn, type UseSidebarStateReturn, type UseToastReturn, MemoizedUserAvatar as UserAvatar, type UserAvatarProps, type UserContext, MemoizedUserFilter as UserFilter, UserMessage, type UserMessageActionsSlotProps, type UserMessageAttachmentsSlotProps, type UserMessageAvatarSlotProps, type UserMessageClassNames, type UserMessageContentSlotProps, type UserMessageProps, type UserMessageSlots, type UserTurn$1 as UserTurn, UserTurnView, type UserTurnViewProps, WelcomeContent, addCSRFHeader, backdropVariants, buttonVariants, convertToBase64, createDataUrl, createHeadersWithCSRF, createHttpDataSource, darkTheme, dropdownVariants, errorMessageVariants, fadeInUpVariants, fadeInVariants, floatingButtonVariants, formatFileSize, getCSRFToken, getFileVisual, getToolLabel, getValidChildren, groupSessionsByDate, groupSteps, hasPermission, isImageMimeType, isPermissionDeniedError, isTerminalEvent, lightTheme, listItemVariants, messageContainerVariants, messageVariants, parseBichatStream, parseBichatStreamEvents, parseSSEStream, readTextBlockOffsets, scaleFadeVariants, sessionItemVariants, splitIntoTextBlocks, staggerContainerVariants, toErrorDisplay, typingDotVariants, useActionButtonContext, useActiveRuns, useAttachments, useAutoScroll, useAvatarContext, useBichatRouter, useBubbleContext, useChatInput, useChatMessaging, useChatSession, useConfig, useDataTable, useFocusTrap, useHttpDataSourceConfigFromApplet, useImageGallery, useIotaContext, useKeyboardShortcuts, useLongPress, useMarkdownCopy, useMessageActions, useModalLock, useOptionalChatMessaging, useRequiredConfig, useScrollToBottom, useSidebarState, useStreaming, useTheme, useToast, useTranslation, useTurnContext, validateAttachmentFile, validateFileCount, validateImageFile, verbTransitionVariants };
4514
+ export { ATTACHMENT_ACCEPT_ATTRIBUTE, ActionButton, type ActionButtonIconProps, type ActionButtonLabelProps, type ActionButtonRootProps, type ActionButtonTooltipProps, type ActiveRunDelivery, type ActiveRunSnapshot, type ActiveTab, type ActivityStep, ActivityTrace, type ActivityTraceProps, type AdminStore, _default$1 as Alert, AllChatsList, type AppConfig, _default as ArchiveBanner, ArchivedChatList, type Artifact$1 as Artifact, type ArtifactStore, type AsChildProps, AssistantMessage, type AssistantMessageActionsSlotProps, type AssistantMessageArtifactsSlotProps, type AssistantMessageAvatarSlotProps, type AssistantMessageChartsSlotProps, type AssistantMessageClassNames, type AssistantMessageCodeOutputsSlotProps, type AssistantMessageContentSlotProps, type AssistantMessageExplanationSlotProps, type AssistantMessageProps, type AssistantMessageSlots, type AssistantMessageSourcesSlotProps, type AssistantMessageTablesSlotProps, type AssistantTextBlock, type AssistantTurn$1 as AssistantTurn, AssistantTurnView, type AssistantTurnViewProps, type Attachment$1 as Attachment, MemoizedAttachmentGrid as AttachmentGrid, AttachmentPreview, AttachmentUpload, Avatar, type AvatarFallbackProps, type AvatarImageProps, type AvatarRootProps, AvatarStack, type AvatarStackProps, type BiChatConfig, BiChatLayout, type BiChatLayoutProps, type BichatRPC, Bubble, type BubbleContentProps, type BubbleFooterProps, type BubbleHeaderProps, type BubbleMetadataProps, type BubbleRootProps, type BubbleVariant, CHART_VISUAL, ChartCard, type ChartCardHost, type ChartData, type ChartSeries, type ChatDataSource, ChatHeader, type ChatInputStateValue, ChatMachine, type ChatMachineConfig, type ChatMessagingStateValue, ChatSession, type ChatSessionContextValue, type ChatSessionProps, ChatSessionProvider, type ChatSessionProviderProps, type ChatSessionStateValue, type Citation$1 as Citation, MemoizedCodeBlock as CodeBlock, type CodeOutput$1 as CodeOutput, CodeOutputsPanel, type ColumnMeta, type ColumnStats, type ColumnType, CompactionDoodle, ConfigProvider, ConfirmModal, type ConfirmModalProps, ConfirmationStep, type ConversationTurn$1 as ConversationTurn, type DataTableOptions, DateGroupHeader, DebugPanel, type DebugPanelProps, DefaultErrorContent, DownloadCard, MemoizedEditableText as EditableText, type EditableTextProps, type EditableTextRef, MemoizedEmptyState as EmptyState, type EmptyStateProps, ErrorBoundary, type FileValidationError, type FileVisual, type FormattedCell, HttpDataSource, type HttpDataSourceConfig, type ImageAttachment, type ImageLoadingStatus, ImageModal, InlineQuestionForm, InteractiveTableCard, type IotaContext, IotaContextProvider, ListItemSkeleton, MemoizedLoadingSpinner as LoadingSpinner, type LocaleContext, MemoizedMarkdownRenderer as MarkdownRenderer, MessageActions, MessageInput, type MessageInputProps, type MessageInputRef, MessageList, MessageRole, type MessageTransport, ModelSelector, type PendingQuestion$1 as PendingQuestion, PermissionGuard, type PermissionGuardProps, type Question, type QuestionAnswerData, type QuestionAnswers, QuestionForm, type QuestionOption, QuestionStep, type QueuedMessage, type RPCErrorDisplay, RateLimiter, type RateLimiterConfig, type RegenerateModelOption, type RenderTableData, type RenderTableExport, RetryActionArea, RunEventsConnectError, STREAM_EVENT_TYPES, ScreenReaderAnnouncer, ScrollToBottomButton, MemoizedSearchInput as SearchInput, type SearchInputProps, type Session$1 as Session, type SessionAccess$1 as SessionAccess, type SessionArtifact, SessionArtifactList, SessionArtifactPreview, SessionArtifactsPanel, type SessionGroup, SessionItem, type SessionListResult$1 as SessionListResult, type SessionMember$1 as SessionMember, SessionMembersModal, type SessionMembersModalProps, SessionSkeleton, type SessionStore, type SessionUser$1 as SessionUser, type ShortcutConfig, Sidebar, type SidebarDrawerProps, type SidebarProps, MemoizedSkeleton as Skeleton, SkeletonAvatar, SkeletonCard, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, SkeletonText, SkipLink, Slot, type SlotProps, type SortState, SourcesPanel, type StreamChunk, StreamError, type StreamEvent, type StreamEventType, StreamingCursor, SystemMessage, TERMINAL_STREAM_EVENT_TYPES, TabbedChartGroup, type TabbedChartGroupProps, TabbedTableGroup, type TabbedTableGroupProps, type TableCardHost, TableExportButton, TableWithExport, type TenantContext, type TerminalStreamEventType, type Theme, type ThemeBorderRadius, type ThemeColors, ThemeProvider, type ThemeSpacing, Toast, type ToastAction, ToastContainer, type ToastItem, type ToastProps, type ToastType, type ToolCall$1 as ToolCall, TouchContextMenu, Turn, type TurnActionsProps, type TurnAssistantProps, TurnBubble, type TurnBubbleClassNames, type TurnBubbleProps, type TurnRootProps, type TurnTimestampProps, type TurnUserProps, MemoizedTypingIndicator as TypingIndicator, type TypingIndicatorProps, type UseActiveRunsOptions, type UseActiveRunsResult, type UseAttachmentsOptions, type UseAttachmentsReturn, type UseAutoScrollOptions, type UseAutoScrollReturn, type UseBichatRouterParams, type UseBichatRouterReturn, type UseDataTableReturn, type UseImageGalleryOptions, type UseImageGalleryReturn, type UseMarkdownCopyOptions, type UseMarkdownCopyReturn, type UseMessageActionsOptions, type UseMessageActionsReturn, type UseSidebarStateReturn, type UseToastReturn, MemoizedUserAvatar as UserAvatar, type UserAvatarProps, type UserContext, MemoizedUserFilter as UserFilter, UserMessage, type UserMessageActionsSlotProps, type UserMessageAttachmentsSlotProps, type UserMessageAvatarSlotProps, type UserMessageClassNames, type UserMessageContentSlotProps, type UserMessageProps, type UserMessageSlots, type UserTurn$1 as UserTurn, UserTurnView, type UserTurnViewProps, WelcomeContent, addCSRFHeader, backdropVariants, buttonVariants, convertToBase64, createDataUrl, createHeadersWithCSRF, createHttpDataSource, darkTheme, dropdownVariants, errorMessageVariants, fadeInUpVariants, fadeInVariants, floatingButtonVariants, formatFileSize, getCSRFToken, getFileVisual, getToolLabel, getValidChildren, groupSessionsByDate, groupSteps, hasPermission, isImageMimeType, isPermissionDeniedError, isTerminalEvent, lightTheme, listItemVariants, messageContainerVariants, messageVariants, parseBichatStream, parseBichatStreamEvents, parseSSEStream, readTextBlockOffsets, scaleFadeVariants, sessionItemVariants, splitIntoTextBlocks, staggerContainerVariants, toErrorDisplay, typingDotVariants, useActionButtonContext, useActiveRuns, useAttachments, useAutoScroll, useAvatarContext, useBichatRouter, useBubbleContext, useChatInput, useChatMessaging, useChatSession, useConfig, useDataTable, useFocusTrap, useHttpDataSourceConfigFromApplet, useImageGallery, useIotaContext, useKeyboardShortcuts, useLongPress, useMarkdownCopy, useMessageActions, useModalLock, useOptionalChatMessaging, useRequiredConfig, useScrollToBottom, useSidebarState, useStreaming, useTheme, useToast, useTranslation, useTurnContext, validateAttachmentFile, validateFileCount, validateImageFile, verbTransitionVariants };