import { type ComponentType } from 'react'; import { motion } from 'motion/react'; import { YoutubeFilled, InstagramFilled, FacebookFilled, GlobeFilled, VideoFilled, MessageFilled, CalendarFilled, TiktokFilled, } from '../icons/FilledIcons'; import { SectionWrapper } from '../report/ui/SectionWrapper'; import type { ChannelStrategyCard } from '../../types/plan'; interface ChannelStrategyProps { channels: ChannelStrategyCard[]; } const channelIconMap: Record> = { youtube: YoutubeFilled, instagram: InstagramFilled, facebook: FacebookFilled, globe: GlobeFilled, video: VideoFilled, messagesquare: MessageFilled, tiktok: TiktokFilled, }; function getChannelIcon(icon: string) { return channelIconMap[icon.toLowerCase()] ?? GlobeFilled; } const priorityStyle: Record = { P0: 'bg-[#FFF0F0] text-[#7C3A4B] border border-[#F5D5DC] shadow-[2px_3px_8px_rgba(212,136,154,0.15)]', P1: 'bg-[#FFF6ED] text-[#7C5C3A] border border-[#F5E0C5] shadow-[2px_3px_8px_rgba(212,168,114,0.15)]', P2: 'bg-[#F3F0FF] text-[#4A3A7C] border border-[#D5CDF5] shadow-[2px_3px_8px_rgba(155,138,212,0.15)]', }; export default function ChannelStrategy({ channels }: ChannelStrategyProps) { return (
{channels.map((ch, index) => { const Icon = getChannelIcon(ch.icon); return ( {/* Header */}

{ch.channelName}

{ch.priority}
{/* Current → Target */}
{ch.currentStatus} {ch.targetGoal}
{/* Content Types */}
{ch.contentTypes.map((type) => ( {type} ))}
{/* Posting Frequency */}

{ch.postingFrequency}

{/* Tone */}

{ch.tone}

{/* Format Guidelines */}
    {ch.formatGuidelines.map((guideline, i) => (
  • {guideline}
  • ))}
); })}
); }