"use client"; import { Baby, BadgeCheck, Bell, ChevronDown, ChevronRight, Clapperboard, Clock, CreditCard, Download, Film, Flag, HelpCircle, History, Home, ListVideo, LogOut, type LucideIcon, Menu, MessageSquare, Music, Music2, PlaySquare, Radio, Search, Settings, ShoppingBag, Sparkles, ThumbsUp, } from "lucide-react"; import * as React from "react"; import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { Button } from "@/components/ui/button"; import { Collapsible, CollapsibleContent, CollapsibleTrigger, } from "@/components/ui/collapsible"; import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { InputGroup, InputGroupAddon, InputGroupInput, } from "@/components/ui/input-group"; import { Kbd } from "@/components/ui/kbd"; import { ScrollArea } from "@/components/ui/scroll-area"; import { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarInset, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarProvider, useSidebar, } from "@/components/ui/sidebar"; import { cn } from "@/lib/utils"; function getInitials(name: string) { return ( name .split(" ") .filter(Boolean) .slice(0, 2) .map((part) => part[0]?.toUpperCase()) .join("") || "U" ); } const data = { user: { name: "علی رضایی", email: "ali@example.com", avatar: "/block-media/shadcnblocks/block/avatar/avatar1.jpg", }, navPrimary: [ { title: "خانه", url: "#", icon: Home, isActive: true }, { title: "ویدیوهای کوتاه", url: "#", icon: Clapperboard }, { title: "اشتراک‌ها", url: "#", icon: PlaySquare }, { title: "شما", url: "#", icon: History }, ], subscriptions: [ { name: "Theo - t3.gg", avatar: "/avatars/theo.jpg", isLive: true }, { name: "Fireship", avatar: "/avatars/fireship.jpg", hasNew: true }, { name: "Web Dev Simplified", avatar: "/avatars/webdev.jpg" }, { name: "Traversy Media", avatar: "/avatars/traversy.jpg", hasNew: true }, { name: "The Primeagen", avatar: "/avatars/prime.jpg" }, { name: "Jack Herrington", avatar: "/avatars/jack.jpg", hasNew: true }, { name: "Coding in Public", avatar: "/avatars/cip.jpg" }, ], navYou: [ { title: "تاریخچه", url: "#", icon: History }, { title: "لیست‌های پخش", url: "#", icon: ListVideo }, { title: "تماشا بعداً", url: "#", icon: Clock }, { title: "ویدیوهای پسندیده", url: "#", icon: ThumbsUp }, { title: "ویدیوهای شما", url: "#", icon: PlaySquare }, { title: "دانلودها", url: "#", icon: Download }, ], navExplore: [ { title: "خرید", url: "#", icon: ShoppingBag }, { title: "موسیقی", url: "#", icon: Music }, { title: "فیلم", url: "#", icon: Film }, ], navMoreFrom: [ { title: "استودیوی ری یو آی", url: "#", icon: Radio }, { title: "موسیقی ری یو آی", url: "#", icon: Music2 }, { title: "ری یو آی کودکان", url: "#", icon: Baby }, ], navFooter: [ { title: "تنظیمات", url: "#", icon: Settings }, { title: "تاریخچه گزارش", url: "#", icon: Flag }, { title: "راهنما", url: "#", icon: HelpCircle }, { title: "ارسال بازخورد", url: "#", icon: MessageSquare }, ], }; // Primary nav (Home, Shorts, Subscriptions, You) function NavPrimary({ items, }: { items: { title: string; url: string; icon: LucideIcon; isActive?: boolean }[]; }) { return ( {items.map((item) => ( {item.title} ))} ); } // Subscriptions section with channel avatars function NavSubscriptions({ subscriptions, }: { subscriptions: { name: string; avatar: string; isLive?: boolean; hasNew?: boolean; }[]; }) { return ( اشتراک‌ها {subscriptions.map((channel) => ( {channel.name[0]} {channel.name} {channel.isLive && ( )} {channel.hasNew && !channel.isLive && ( )} ))} نمایش بیشتر ); } // "You" section - History, Playlists, etc. function NavYou({ items, }: { items: { title: string; url: string; icon: LucideIcon }[]; }) { return ( شما {items.map((item) => ( {item.title} ))} نمایش بیشتر ); } // Explore section - Shopping, Music, Movies function NavExplore({ items, }: { items: { title: string; url: string; icon: LucideIcon }[]; }) { return ( کاوش {items.map((item) => ( {item.title} ))} نمایش بیشتر ); } // More from Zerotube section function NavMoreFrom({ items, }: { items: { title: string; url: string; icon: LucideIcon }[]; }) { return ( بیشتر از ری یو آی {items.map((item) => ( {item.title} ))} ); } // Footer nav - Settings, Help, etc. function NavFooter({ items, }: { items: { title: string; url: string; icon: LucideIcon }[]; }) { return ( {items.map((item) => ( {item.title} ))} ); } // Footer links at the very bottom function FooterLinks() { return (
درباره مطبوعات حق نشر تماس با ما سازندگان تبلیغات توسعه‌دهندگان
قوانین حریم خصوصی سیاست و ایمنی

© ۱۴۰۴ ری یو آی

); } function SiteHeader() { const { toggleSidebar } = useSidebar(); return (
{/* Left: Menu + Logo */}
شاد‌سی‌ان بلاکس
ری یو آی
{/* Center: Search Bar */}
⌘K
{/* Right: Avatar */}

{data.user.name}

{data.user.email}

ارتقا به نسخه حرفه‌ای حساب کاربری صورتحساب اعلان‌ها خروج
); } function AppSidebar({ ...props }: React.ComponentProps) { return ( ); } export const iframeHeight = "800px"; export const description = "سایدبار با هدر و فرم جستجو."; function MobileHeader() { return (
شاد‌سی‌ان بلاکس
ری یو آی

{data.user.name}

{data.user.email}

ارتقا به نسخه حرفه‌ای حساب کاربری صورتحساب اعلان‌ها خروج
); } function MobileBottomNav() { return ( ); } function ContentGrid() { return (
); } export function ApplicationShell11() { return (
{/* Desktop layout */}
{/* Mobile layout */}
); }