/** * Chat Widget — thin re-export shim. * * The entire chat implementation moved to a layered architecture as part of * the May 2026 Preact rewrite. The previous monolithic ~3800-line class * (`LazyLoadedChat`) is now decomposed into: * * - controller/ (chat-controller, ably-client, ably-handlers, ably-token, * message-stream) — orchestration and Ably transport * - store/ (chat-store) — signal-based reactive state * - ui/ (ChatRoot.tsx + components + hooks) * — Preact components rendered in a Shadow DOM * - widgets/ (collect-email.tsx, escalate-to-human.tsx) * — built-in tool widgets (Preact) * * See `docs/modules/chat/widget-architecture.md` for the full architecture. * * This file remains so external callers (`entrypoints/chat.ts`, * `ChatWrapper`, tests) can keep importing `LazyLoadedChat` from * `extensions/chat/chat` unchanged. New code should import the controller * and store directly from their own modules. */ export { ChatController as LazyLoadedChat } from "./controller/chat-controller";