'use client' import { useApp } from '@/contexts/AppContext' import { CuratedItem } from '@/types' interface CollectorMotivationProps { item: CuratedItem } export function CollectorMotivation({ item }: CollectorMotivationProps) { const { state } = useApp() // Based on research: collector psychology and motivation triggers const getMotivationTriggers = () => { const triggers = [] // Scarcity trigger if (item.rarity >= 4) { triggers.push({ type: 'scarcity', icon: '⚡', title: 'Rare Find', message: 'Only a few of these exist in this condition', color: '#7B2E2E' }) } // Heritage/History trigger if (item.dateAdded && new Date(item.dateAdded).getFullYear() < 1980) { triggers.push({ type: 'heritage', icon: '🏛️', title: 'Historical Significance', message: 'Connects you to a rich cultural heritage', color: '#2D6A6A' }) } // Investment trigger if (item.originalPrice && item.price < item.originalPrice * 0.8) { triggers.push({ type: 'investment', icon: '💎', title: 'Investment Potential', message: 'Undervalued compared to market trends', color: '#C89C2B' }) } // Completion trigger (if user has similar items) const userCategoryItems = state.wishlist.filter(id => { const wishlistItem = state.items.find(i => i.id === id) return wishlistItem?.category === item.category }) if (userCategoryItems.length >= 2) { triggers.push({ type: 'completion', icon: '🧩', title: 'Collection Builder', message: `Perfect addition to your ${item.category} collection`, color: '#4A7C59' }) } // Authenticity trust trigger if (item.authenticity.verified) { triggers.push({ type: 'trust', icon: '🛡️', title: 'Verified Authentic', message: 'Buy with confidence - authenticity guaranteed', color: '#2D6A6A' }) } return triggers.slice(0, 3) // Show max 3 triggers } const getCollectorPersonality = () => { const categoryCount = state.wishlist.reduce((acc, id) => { const item = state.items.find(i => i.id === id) if (item) { acc[item.category] = (acc[item.category] || 0) + 1 } return acc }, {} as Record) const dominantCategory = Object.entries(categoryCount) .sort(([,a], [,b]) => b - a)[0]?.[0] const personalities = { photography: { type: 'Visual Historian', description: 'You preserve moments and appreciate craftsmanship', motivation: 'Each camera tells a story of innovation' }, music: { type: 'Audio Archivist', description: 'You value authentic sound and musical heritage', motivation: 'Original pressings capture the artist\'s true vision' }, books: { type: 'Literary Curator', description: 'You collect knowledge and cultural significance', motivation: 'First editions connect you to literary history' }, design: { type: 'Aesthetic Connoisseur', description: 'You appreciate timeless design and functionality', motivation: 'Mid-century pieces represent design perfection' } } return personalities[dominantCategory as keyof typeof personalities] || { type: 'Eclectic Collector', description: 'You appreciate quality across all categories', motivation: 'Diverse collections tell richer stories' } } const triggers = getMotivationTriggers() const personality = getCollectorPersonality() if (triggers.length === 0) return null return (
{/* Collector Personality */}
🎯
{personality.type}
{personality.motivation}
{/* Motivation Triggers */}
{triggers.map((trigger, index) => (
{trigger.icon}
{trigger.title}
{trigger.message}
))}
{/* Call to Action */}
Why collectors love this piece
"{personality.description}"
) }