Introduce a new `BlockEditor` component and upgrade the post/message rendering system to support rich text segments (images, @mentions, votes, and post references). - Implement `BlockEditor` for long-form post creation with image embedding support. - Upgrade `PostContentRenderer` and `SegmentRenderer` to handle complex segment types including inline images and block elements. - Refactor `PostCard` to use segment-based content and image signatures for optimized memoization. - Centralize segment partitioning logic in `segmentUtils.ts` to ensure consistent rendering across chat and post modules. - Update `PostRepository` and `Post` entity to support the new `segments` data structure.
32 lines
1.2 KiB
TypeScript
32 lines
1.2 KiB
TypeScript
/**
|
|
* 业务组件导出
|
|
*/
|
|
|
|
// PostCard 新架构(从 PostCard 目录导出)
|
|
export { default as PostCard } from './PostCard';
|
|
// 导出 PostCard 相关类型和工具
|
|
export type {
|
|
PostCardActionType,
|
|
PostCardAction,
|
|
PostCardOnAction,
|
|
PostCardFeatures,
|
|
PostCardFeaturesPreset,
|
|
PostCardFeaturesConfig,
|
|
PostCardProps,
|
|
} from './PostCard';
|
|
export { default as CommentItem } from './CommentItem';
|
|
export { default as UserProfileHeader } from './UserProfileHeader';
|
|
export { default as SystemMessageItem } from './SystemMessageItem';
|
|
export { default as SearchBar } from './SearchBar';
|
|
export { default as TabBar } from './TabBar';
|
|
export { default as VoteCard } from './VoteCard';
|
|
export { default as VoteEditor } from './VoteEditor';
|
|
export { default as VotePreview } from './VotePreview';
|
|
export { default as PostContentRenderer } from './PostContentRenderer';
|
|
export { default as PostMentionInput } from './PostMentionInput';
|
|
export { default as BlockEditor } from './BlockEditor';
|
|
export type { BlockEditorHandle } from './BlockEditor';
|
|
export { default as ReportDialog } from './ReportDialog';
|
|
export { default as ShareSheet } from './ShareSheet';
|
|
export { TradeCard } from './TradeCard/TradeCard';
|