'use client';
import {
ThreadListItems,
ThreadListNew,
ThreadListRoot,
} from './elements/thread-list.aui';
import { ErrorState } from './elements/error-state';
import { NEW_CONVERSATION_THREAD_ID } from '../lib/thread-list-mapper';
import { useAuiState } from '@assistant-ui/react';
type WebChatThreadListProps = {
error?: string;
onRetryError: () => void;
};
export function WebChatThreadList({ error, onRetryError }: WebChatThreadListProps) {
return (
{error ? (
) : null}
);
}
function WebChatThreadListNew() {
// ExternalStoreThreadListRuntimeCore never sets newThreadId; mark New active when
// mainThreadId is the lazy-create sentinel.
const isNewThreadActive = useAuiState(
(s) =>
s.threads.newThreadId === s.threads.mainThreadId ||
(s.threads.newThreadId == null && s.threads.mainThreadId === NEW_CONVERSATION_THREAD_ID),
);
return (
);
}