"use client"; import type { ComponentType } from "react"; import { Clapperboard, Gift, Images, LayoutGrid, Mail, Megaphone, Monitor, Music2, Play, Scissors, Share2, SlidersHorizontal, TrendingUp, } from "lucide-react"; import { VideoTemplatesPremiumToggle, VideoTemplatesSizeSelect, } from "@/components/templates/video/VideoTemplatesFilterControls"; import type { AspectRatioFilter, VideoSidebarCategoryId } from "@/lib/video-templates-catalog"; import { cn } from "@/lib/utils"; const SIDEBAR_CATEGORIES: { id: VideoSidebarCategoryId; label: string; icon: ComponentType<{ className?: string }>; count?: number; }[] = [ { id: "all", label: "All Templates", icon: LayoutGrid }, { id: "animation", label: "Animation Videos", icon: Play, count: 418 }, { id: "intros", label: "Intros and Logos", icon: Clapperboard, count: 851 }, { id: "editing", label: "Video Editing", icon: Scissors }, { id: "invitation", label: "Invitation Videos", icon: Mail }, { id: "holiday", label: "Holiday Videos", icon: Gift }, { id: "slideshow", label: "Slideshow", icon: Images }, { id: "presentations", label: "Presentations", icon: Monitor }, { id: "social", label: "Social Media Videos", icon: Share2 }, { id: "ads", label: "Video Ad Templates", icon: Megaphone }, { id: "sales", label: "Sales Videos", icon: TrendingUp }, { id: "music", label: "Music Visualization", icon: Music2 }, ]; interface VideoTemplatesCategorySidebarProps { activeCategory: VideoSidebarCategoryId; onCategoryChange: (id: VideoSidebarCategoryId) => void; premiumOnly: boolean; onPremiumOnlyChange: (value: boolean) => void; aspectRatio: AspectRatioFilter; onAspectRatioChange: (value: AspectRatioFilter) => void; showFilters: boolean; onToggleFilters: () => void; } export function VideoTemplatesCategorySidebar({ activeCategory, onCategoryChange, premiumOnly, onPremiumOnlyChange, aspectRatio, onAspectRatioChange, showFilters, onToggleFilters, }: VideoTemplatesCategorySidebarProps) { return ( ); }