import { CategorizationResponse, userCategories, } from "../../lib/categorization"; import { TwitterApiService, TwitterBookmark } from "../../lib/twitter-api"; export default function ({ bookmark, categorization, currentIndex, totalCount, }: { bookmark: TwitterBookmark; categorization: CategorizationResponse; currentIndex: number; totalCount: number; }) { async function processEntry() { "use server"; const cookie = Bun.env.TWATTER_COKI; const api = new TwitterApiService(cookie!); await api.removeBookmark(bookmark.id); } return (
{/* Bookmark Content */}
{bookmark.author.name}

{bookmark.author.name}

@{bookmark.author.username}

{new Date(bookmark.createdAt).toLocaleDateString()}

{bookmark.text}

{bookmark.media.pics.length > 0 && (

Images

{bookmark.media.pics.map((url, index) => ( {`Bookmark ))}
)}
{bookmark.hashtags.map((tag) => ( #{tag} ))}
{/* LLM Analysis */}

AI Analysis

{categorization.summary}

Key Topics

{categorization.keyTopics.map((topic) => ( {topic} ))}

Suggested Categories

{categorization.suggestedCategories.map((suggestion, index) => (
{suggestion.categories.join(", ")} {(suggestion.confidence * 100).toFixed(0)}%

{suggestion.reasoning}

))}
{/* Category Selection */}

Select Categories

User Categories

{userCategories.map((category) => ( ))}
{categorization.newCategories.length > 0 && (

New Category Suggestions

{categorization.newCategories.map((category) => ( ))}
)}
{currentIndex > 0 && ( Previous )} {currentIndex + 1 < totalCount && ( Skip )}
); }