2f24a95ef4
Second domain in the SDK, mirroring messaging's adapter/provider/hooks/components: - InboxAdapter (listInbox unified feed + transition + mailHistory/mailReply + optional directory/composeInternal/composeExternal), InboxProvider/useInboxAdapter - hooks: useInbox (filter + transition), useMailThread (history + reply), useCompose - <Inbox> (filter tabs, unified list, detail pane), <MailReader> (HTML in a sandboxed iframe + reply), compose modal (in-app / email); themeable styles - MockInboxAdapter (seeded mentions/needs-reply/alert + folded mail threads + directory) shipped from ./adapters/mock-inbox - 6 inbox tests (mock unify/transition/reply + render open/reply/compose); 64 green Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
45 lines
1.8 KiB
TypeScript
45 lines
1.8 KiB
TypeScript
// Public API. Components land in Plan 2; adapters/kernel in Plan 3.
|
|
//
|
|
// `runAdapterConformance` is deliberately NOT exported here — it imports vitest and
|
|
// ships from the './conformance' subpath so consumers never pull a test runner into
|
|
// their production bundle.
|
|
export { MessagingProvider, useAdapter } from './provider';
|
|
export { useConversations } from './hooks/use-conversations';
|
|
export { useMessages } from './hooks/use-messages';
|
|
export { useChannels } from './hooks/use-channels';
|
|
export { useMembers } from './hooks/use-members';
|
|
export { isOwnMessage } from './types';
|
|
|
|
// Rendered UI. Pair with the './styles.css' export (or override the --miu-* tokens).
|
|
export { Messenger } from './components/messenger';
|
|
export { ConversationList } from './components/conversation-list';
|
|
export { ChannelBrowser } from './components/channel-browser';
|
|
export { Thread } from './components/thread';
|
|
export { ThreadPane } from './components/thread-pane';
|
|
|
|
// ── Inbox domain (work items + mail) ──
|
|
export { InboxProvider, useInboxAdapter } from './inbox/provider';
|
|
export { useInbox, useMailThread, useCompose } from './inbox/hooks';
|
|
export { Inbox, MailReader } from './inbox/inbox';
|
|
export type { InboxAdapter } from './inbox/adapter';
|
|
export type { InboxItem, InboxState, MailAttachment, MailMessage, MailPerson } from './inbox/types';
|
|
|
|
export type { MessagingAdapter } from './adapter';
|
|
export type { ConversationsState } from './hooks/use-conversations';
|
|
export type { MessagesState, UiMessage } from './hooks/use-messages';
|
|
export type { ChannelsState } from './hooks/use-channels';
|
|
export type {
|
|
Attachment,
|
|
ChannelSummary,
|
|
ChannelVisibility,
|
|
Conversation,
|
|
CreateChannelInput,
|
|
Membership,
|
|
Message,
|
|
MessageEvent,
|
|
Person,
|
|
Reaction,
|
|
SendOpts,
|
|
Unsubscribe,
|
|
} from './types';
|