SYMBOL INDEX (448 symbols across 110 files) FILE: scripts/add-dates.js function isValidDate (line 20) | function isValidDate(dateString) { FILE: src/app/[...not-found]/page.tsx function CatchAllNotFound (line 3) | function CatchAllNotFound() { FILE: src/app/api/github/callback/route.ts function GET (line 3) | async function GET(request: NextRequest) { FILE: src/app/api/github/device-flow/route.ts function POST (line 4) | async function POST(request: NextRequest) { FILE: src/app/api/submit-resource/route.ts constant GITHUB_CONFIG (line 4) | const GITHUB_CONFIG = { type SubmissionData (line 10) | interface SubmissionData { function insertResourceIntoReadme (line 17) | function insertResourceIntoReadme( function generatePRBody (line 107) | function generatePRBody(submission: SubmissionData): string { function POST (line 135) | async function POST(request: NextRequest) { FILE: src/app/bookmarks/error.tsx function BookmarksError (line 8) | function BookmarksError({ FILE: src/app/bookmarks/page.tsx constant ITEMS_PER_PAGE_OPTIONS (line 25) | const ITEMS_PER_PAGE_OPTIONS = [20, 40, 60, 80]; function BookmarksPage (line 27) | function BookmarksPage() { FILE: src/app/categories/[category]/[id]/error.tsx function ItemError (line 8) | function ItemError({ FILE: src/app/categories/[category]/[id]/page.tsx type ItemPageProps (line 24) | interface ItemPageProps { constant CATEGORY_DESCRIPTIONS (line 31) | const CATEGORY_DESCRIPTIONS: Record = { function ItemPage (line 50) | function ItemPage({ params }: ItemPageProps) { FILE: src/app/categories/[category]/error.tsx function CategoryError (line 8) | function CategoryError({ FILE: src/app/categories/[category]/page.tsx type CategoryPageProps (line 16) | interface CategoryPageProps { constant CATEGORY_DESCRIPTIONS (line 22) | const CATEGORY_DESCRIPTIONS: Record = { constant ITEMS_PER_PAGE_OPTIONS (line 41) | const ITEMS_PER_PAGE_OPTIONS = [20, 40, 60, 80]; function CategoryPage (line 43) | function CategoryPage({ params }: CategoryPageProps) { FILE: src/app/categories/error.tsx function CategoriesError (line 8) | function CategoriesError({ FILE: src/app/categories/page.tsx type Category (line 21) | interface Category { constant CATEGORY_DESCRIPTIONS (line 27) | const CATEGORY_DESCRIPTIONS: Record = { function CategoriesPage (line 46) | function CategoriesPage() { FILE: src/app/error.tsx function Error (line 7) | function Error({ FILE: src/app/global-error.tsx function GlobalError (line 7) | function GlobalError({ FILE: src/app/layout.tsx function RootLayout (line 83) | function RootLayout({ FILE: src/app/not-found.tsx function NotFound (line 4) | function NotFound() { FILE: src/app/page.tsx type Category (line 11) | interface Category { constant EXCLUDED_CATEGORIES (line 16) | const EXCLUDED_CATEGORIES = ["Star History", "Contributors"]; function Home (line 18) | function Home() { FILE: src/components/github-stars.tsx function getStars (line 6) | async function getStars() { function GithubStars (line 15) | function GithubStars() { FILE: src/components/item-card.tsx type ItemCardProps (line 16) | interface ItemCardProps { FILE: src/components/item-grid.tsx constant SPONSOR_INTERVAL (line 8) | const SPONSOR_INTERVAL = 8; type ItemGridProps (line 10) | interface ItemGridProps { function ItemGrid (line 17) | function ItemGrid({ FILE: src/components/kibo-ui/theme-switcher/index.tsx type ThemeSwitcherProps (line 27) | type ThemeSwitcherProps = { FILE: src/components/layout/footer.tsx function Footer (line 13) | function Footer() { FILE: src/components/layout/header.tsx function Header (line 27) | function Header() { FILE: src/components/layout/page-header.tsx type PageHeaderProps (line 15) | interface PageHeaderProps { function PageHeader (line 27) | function PageHeader({ FILE: src/components/logo.tsx type LogoProps (line 3) | interface LogoProps { function Logo (line 7) | function Logo({ className = "h-5 w-auto" }: LogoProps) { function HeroLogo (line 19) | function HeroLogo({ className = "h-40 w-auto" }: LogoProps) { FILE: src/components/pagination-controls.tsx type PaginationControlsProps (line 18) | interface PaginationControlsProps { function PaginationControls (line 27) | function PaginationControls({ FILE: src/components/pr-submission-dialog.tsx constant CATEGORIES (line 33) | const CATEGORIES = [ type PRSubmissionDialogProps (line 47) | interface PRSubmissionDialogProps { function PRSubmissionDialog (line 51) | function PRSubmissionDialog({ trigger }: PRSubmissionDialogProps) { FILE: src/components/search-filter-controls.tsx type SearchFilterControlsProps (line 11) | interface SearchFilterControlsProps { function SearchFilterControls (line 21) | function SearchFilterControls({ FILE: src/components/sections/cta-submit.tsx function SubmitCTA (line 11) | function SubmitCTA() { FILE: src/components/sections/hero.tsx function Hero (line 30) | function Hero() { FILE: src/components/sections/items-list.tsx constant ITEMS_PER_PAGE_OPTIONS (line 17) | const ITEMS_PER_PAGE_OPTIONS = [20, 40, 60, 80]; type Category (line 19) | interface Category { type ItemListProps (line 24) | interface ItemListProps { function ItemList (line 29) | function ItemList({ FILE: src/components/sections/sponsorship.tsx function Sponsorship (line 19) | function Sponsorship() { FILE: src/components/sort.tsx type SortOption (line 11) | type SortOption = "date-desc" | "date-asc" | "name-asc" | "name-desc"; type SortProps (line 13) | interface SortProps { function Sort (line 19) | function Sort({ sortOption, onSortChange, className }: SortProps) { FILE: src/components/sponsor-card.tsx type SponsorCardProps (line 22) | interface SponsorCardProps { FILE: src/components/sponsors/shadcn-blocks-logo.tsx type ShadcnBlocksLogoProps (line 3) | interface ShadcnBlocksLogoProps { function ShadcnBlocksLogo (line 7) | function ShadcnBlocksLogo({ className = "w-5 h-5" }: ShadcnBlocksLogoPro... FILE: src/components/sponsors/shadcn-studio-logo.tsx type ShadcnStudioLogoProps (line 3) | interface ShadcnStudioLogoProps { function ShadcnStudioLogo (line 7) | function ShadcnStudioLogo({ className = "w-5 h-5" }: ShadcnStudioLogoPro... FILE: src/components/sponsors/shadcn-ui-kit-logo.tsx type ShadcnUiKitLogoProps (line 4) | interface ShadcnUiKitLogoProps { function ShadcnUiKitLogo (line 8) | function ShadcnUiKitLogo({ className = "w-5 h-5" }: ShadcnUiKitLogoProps) { FILE: src/components/sponsors/sponsors.tsx type Sponsor (line 6) | interface Sponsor { FILE: src/components/theme-toggle.tsx function ModeToggle (line 15) | function ModeToggle() { FILE: src/components/ui/accordion.tsx function Accordion (line 9) | function Accordion({ function AccordionItem (line 22) | function AccordionItem({ function AccordionTrigger (line 35) | function AccordionTrigger({ function AccordionContent (line 58) | function AccordionContent({ FILE: src/components/ui/alert-dialog.tsx function AlertDialog (line 9) | function AlertDialog({ function AlertDialogTrigger (line 15) | function AlertDialogTrigger({ function AlertDialogPortal (line 23) | function AlertDialogPortal({ function AlertDialogOverlay (line 31) | function AlertDialogOverlay({ function AlertDialogContent (line 47) | function AlertDialogContent({ function AlertDialogHeader (line 70) | function AlertDialogHeader({ function AlertDialogFooter (line 86) | function AlertDialogFooter({ function AlertDialogMedia (line 102) | function AlertDialogMedia({ function AlertDialogTitle (line 118) | function AlertDialogTitle({ function AlertDialogDescription (line 134) | function AlertDialogDescription({ function AlertDialogAction (line 150) | function AlertDialogAction({ function AlertDialogCancel (line 168) | function AlertDialogCancel({ FILE: src/components/ui/alert.tsx function Alert (line 22) | function Alert({ function AlertTitle (line 37) | function AlertTitle({ className, ...props }: React.ComponentProps<"div">) { function AlertDescription (line 50) | function AlertDescription({ function AlertAction (line 66) | function AlertAction({ className, ...props }: React.ComponentProps<"div"... FILE: src/components/ui/aspect-ratio.tsx function AspectRatio (line 5) | function AspectRatio({ FILE: src/components/ui/avatar.tsx function Avatar (line 8) | function Avatar({ function AvatarImage (line 28) | function AvatarImage({ function AvatarFallback (line 44) | function AvatarFallback({ function AvatarBadge (line 60) | function AvatarBadge({ className, ...props }: React.ComponentProps<"span... function AvatarGroup (line 76) | function AvatarGroup({ className, ...props }: React.ComponentProps<"div"... function AvatarGroupCount (line 89) | function AvatarGroupCount({ FILE: src/components/ui/badge.tsx function Badge (line 30) | function Badge({ FILE: src/components/ui/breadcrumb.tsx function Breadcrumb (line 7) | function Breadcrumb({ className, ...props }: React.ComponentProps<"nav">) { function BreadcrumbList (line 18) | function BreadcrumbList({ className, ...props }: React.ComponentProps<"o... function BreadcrumbItem (line 31) | function BreadcrumbItem({ className, ...props }: React.ComponentProps<"l... function BreadcrumbLink (line 41) | function BreadcrumbLink({ function BreadcrumbPage (line 59) | function BreadcrumbPage({ className, ...props }: React.ComponentProps<"s... function BreadcrumbSeparator (line 72) | function BreadcrumbSeparator({ function BreadcrumbEllipsis (line 92) | function BreadcrumbEllipsis({ FILE: src/components/ui/button-group.tsx function ButtonGroup (line 24) | function ButtonGroup({ function ButtonGroupText (line 40) | function ButtonGroupText({ function ButtonGroupSeparator (line 60) | function ButtonGroupSeparator({ FILE: src/components/ui/button.tsx function Button (line 42) | function Button({ FILE: src/components/ui/calendar.tsx function Calendar (line 15) | function Calendar({ function CalendarDayButton (line 183) | function CalendarDayButton({ FILE: src/components/ui/card.tsx function Card (line 5) | function Card({ function CardHeader (line 23) | function CardHeader({ className, ...props }: React.ComponentProps<"div">) { function CardTitle (line 36) | function CardTitle({ className, ...props }: React.ComponentProps<"div">) { function CardDescription (line 49) | function CardDescription({ className, ...props }: React.ComponentProps<"... function CardAction (line 59) | function CardAction({ className, ...props }: React.ComponentProps<"div">) { function CardContent (line 72) | function CardContent({ className, ...props }: React.ComponentProps<"div"... function CardFooter (line 82) | function CardFooter({ className, ...props }: React.ComponentProps<"div">) { FILE: src/components/ui/carousel.tsx type CarouselApi (line 12) | type CarouselApi = UseEmblaCarouselType[1] type UseCarouselParameters (line 13) | type UseCarouselParameters = Parameters type CarouselOptions (line 14) | type CarouselOptions = UseCarouselParameters[0] type CarouselPlugin (line 15) | type CarouselPlugin = UseCarouselParameters[1] type CarouselProps (line 17) | type CarouselProps = { type CarouselContextProps (line 24) | type CarouselContextProps = { function useCarousel (line 35) | function useCarousel() { function Carousel (line 45) | function Carousel({ function CarouselContent (line 135) | function CarouselContent({ className, ...props }: React.ComponentProps<"... function CarouselItem (line 156) | function CarouselItem({ className, ...props }: React.ComponentProps<"div... function CarouselPrevious (line 174) | function CarouselPrevious({ function CarouselNext (line 204) | function CarouselNext({ FILE: src/components/ui/chart.tsx constant THEMES (line 9) | const THEMES = { light: "", dark: ".dark" } as const type ChartConfig (line 11) | type ChartConfig = { type ChartContextProps (line 21) | type ChartContextProps = { function useChart (line 27) | function useChart() { function ChartContainer (line 37) | function ChartContainer({ function ChartTooltipContent (line 107) | function ChartTooltipContent({ function ChartLegendContent (line 255) | function ChartLegendContent({ function getPayloadConfigFromPayload (line 311) | function getPayloadConfigFromPayload( FILE: src/components/ui/checkbox.tsx function Checkbox (line 9) | function Checkbox({ FILE: src/components/ui/collapsible.tsx function Collapsible (line 5) | function Collapsible({ function CollapsibleTrigger (line 11) | function CollapsibleTrigger({ function CollapsibleContent (line 22) | function CollapsibleContent({ FILE: src/components/ui/combobox.tsx function ComboboxValue (line 18) | function ComboboxValue({ ...props }: ComboboxPrimitive.Value.Props) { function ComboboxTrigger (line 22) | function ComboboxTrigger({ function ComboboxClear (line 39) | function ComboboxClear({ className, ...props }: ComboboxPrimitive.Clear.... function ComboboxInput (line 52) | function ComboboxInput({ function ComboboxContent (line 89) | function ComboboxContent({ function ComboboxList (line 123) | function ComboboxList({ className, ...props }: ComboboxPrimitive.List.Pr... function ComboboxItem (line 136) | function ComboboxItem({ function ComboboxGroup (line 162) | function ComboboxGroup({ className, ...props }: ComboboxPrimitive.Group.... function ComboboxLabel (line 172) | function ComboboxLabel({ function ComboboxCollection (line 185) | function ComboboxCollection({ ...props }: ComboboxPrimitive.Collection.P... function ComboboxEmpty (line 191) | function ComboboxEmpty({ className, ...props }: ComboboxPrimitive.Empty.... function ComboboxSeparator (line 204) | function ComboboxSeparator({ function ComboboxChips (line 217) | function ComboboxChips({ function ComboboxChip (line 234) | function ComboboxChip({ function ComboboxChipsInput (line 265) | function ComboboxChipsInput({ function useComboboxAnchor (line 278) | function useComboboxAnchor() { FILE: src/components/ui/command.tsx function Command (line 20) | function Command({ function CommandDialog (line 36) | function CommandDialog({ function CommandInput (line 68) | function CommandInput({ function CommandList (line 91) | function CommandList({ function CommandEmpty (line 107) | function CommandEmpty({ function CommandGroup (line 120) | function CommandGroup({ function CommandSeparator (line 136) | function CommandSeparator({ function CommandItem (line 149) | function CommandItem({ function CommandShortcut (line 169) | function CommandShortcut({ FILE: src/components/ui/context-menu.tsx function ContextMenu (line 9) | function ContextMenu({ function ContextMenuTrigger (line 15) | function ContextMenuTrigger({ function ContextMenuGroup (line 28) | function ContextMenuGroup({ function ContextMenuPortal (line 36) | function ContextMenuPortal({ function ContextMenuSub (line 44) | function ContextMenuSub({ function ContextMenuRadioGroup (line 50) | function ContextMenuRadioGroup({ function ContextMenuContent (line 61) | function ContextMenuContent({ function ContextMenuItem (line 78) | function ContextMenuItem({ function ContextMenuSubTrigger (line 101) | function ContextMenuSubTrigger({ function ContextMenuSubContent (line 125) | function ContextMenuSubContent({ function ContextMenuCheckboxItem (line 138) | function ContextMenuCheckboxItem({ function ContextMenuRadioItem (line 169) | function ContextMenuRadioItem({ function ContextMenuLabel (line 198) | function ContextMenuLabel({ function ContextMenuSeparator (line 218) | function ContextMenuSeparator({ function ContextMenuShortcut (line 231) | function ContextMenuShortcut({ FILE: src/components/ui/dialog.tsx function Dialog (line 10) | function Dialog({ function DialogTrigger (line 16) | function DialogTrigger({ function DialogPortal (line 22) | function DialogPortal({ function DialogClose (line 28) | function DialogClose({ function DialogOverlay (line 34) | function DialogOverlay({ function DialogContent (line 50) | function DialogContent({ function DialogHeader (line 88) | function DialogHeader({ className, ...props }: React.ComponentProps<"div... function DialogFooter (line 98) | function DialogFooter({ function DialogTitle (line 125) | function DialogTitle({ function DialogDescription (line 138) | function DialogDescription({ FILE: src/components/ui/direction.tsx function DirectionProvider (line 6) | function DirectionProvider({ FILE: src/components/ui/drawer.tsx function Drawer (line 8) | function Drawer({ function DrawerTrigger (line 14) | function DrawerTrigger({ function DrawerPortal (line 20) | function DrawerPortal({ function DrawerClose (line 26) | function DrawerClose({ function DrawerOverlay (line 32) | function DrawerOverlay({ function DrawerContent (line 48) | function DrawerContent({ function DrawerHeader (line 71) | function DrawerHeader({ className, ...props }: React.ComponentProps<"div... function DrawerFooter (line 84) | function DrawerFooter({ className, ...props }: React.ComponentProps<"div... function DrawerTitle (line 94) | function DrawerTitle({ function DrawerDescription (line 107) | function DrawerDescription({ FILE: src/components/ui/dropdown-menu.tsx function DropdownMenu (line 9) | function DropdownMenu({ function DropdownMenuPortal (line 15) | function DropdownMenuPortal({ function DropdownMenuTrigger (line 23) | function DropdownMenuTrigger({ function DropdownMenuContent (line 34) | function DropdownMenuContent({ function DropdownMenuGroup (line 53) | function DropdownMenuGroup({ function DropdownMenuItem (line 61) | function DropdownMenuItem({ function DropdownMenuCheckboxItem (line 84) | function DropdownMenuCheckboxItem({ function DropdownMenuRadioGroup (line 118) | function DropdownMenuRadioGroup({ function DropdownMenuRadioItem (line 129) | function DropdownMenuRadioItem({ function DropdownMenuLabel (line 161) | function DropdownMenuLabel({ function DropdownMenuSeparator (line 181) | function DropdownMenuSeparator({ function DropdownMenuShortcut (line 194) | function DropdownMenuShortcut({ function DropdownMenuSub (line 210) | function DropdownMenuSub({ function DropdownMenuSubTrigger (line 216) | function DropdownMenuSubTrigger({ function DropdownMenuSubContent (line 240) | function DropdownMenuSubContent({ FILE: src/components/ui/empty.tsx function Empty (line 5) | function Empty({ className, ...props }: React.ComponentProps<"div">) { function EmptyHeader (line 18) | function EmptyHeader({ className, ...props }: React.ComponentProps<"div"... function EmptyMedia (line 43) | function EmptyMedia({ function EmptyTitle (line 58) | function EmptyTitle({ className, ...props }: React.ComponentProps<"div">) { function EmptyDescription (line 68) | function EmptyDescription({ className, ...props }: React.ComponentProps<... function EmptyContent (line 81) | function EmptyContent({ className, ...props }: React.ComponentProps<"div... FILE: src/components/ui/field.tsx function FieldSet (line 10) | function FieldSet({ className, ...props }: React.ComponentProps<"fieldse... function FieldLegend (line 23) | function FieldLegend({ function FieldGroup (line 41) | function FieldGroup({ className, ...props }: React.ComponentProps<"div">) { function Field (line 72) | function Field({ function FieldContent (line 88) | function FieldContent({ className, ...props }: React.ComponentProps<"div... function FieldLabel (line 101) | function FieldLabel({ function FieldTitle (line 118) | function FieldTitle({ className, ...props }: React.ComponentProps<"div">) { function FieldDescription (line 131) | function FieldDescription({ className, ...props }: React.ComponentProps<... function FieldSeparator (line 146) | function FieldSeparator({ function FieldError (line 176) | function FieldError({ FILE: src/components/ui/hover-card.tsx function HoverCard (line 8) | function HoverCard({ function HoverCardTrigger (line 14) | function HoverCardTrigger({ function HoverCardContent (line 22) | function HoverCardContent({ FILE: src/components/ui/input-group.tsx function InputGroup (line 11) | function InputGroup({ className, ...props }: React.ComponentProps<"div">) { function InputGroupAddon (line 46) | function InputGroupAddon({ function InputGroupButton (line 85) | function InputGroupButton({ function InputGroupText (line 104) | function InputGroupText({ className, ...props }: React.ComponentProps<"s... function InputGroupInput (line 116) | function InputGroupInput({ function InputGroupTextarea (line 132) | function InputGroupTextarea({ FILE: src/components/ui/input-otp.tsx function InputOTP (line 9) | function InputOTP({ function InputOTPGroup (line 30) | function InputOTPGroup({ className, ...props }: React.ComponentProps<"di... function InputOTPSlot (line 43) | function InputOTPSlot({ function InputOTPSeparator (line 73) | function InputOTPSeparator({ ...props }: React.ComponentProps<"div">) { FILE: src/components/ui/input.tsx function Input (line 5) | function Input({ className, type, ...props }: React.ComponentProps<"inpu... FILE: src/components/ui/item.tsx function ItemGroup (line 8) | function ItemGroup({ className, ...props }: React.ComponentProps<"div">) { function ItemSeparator (line 22) | function ItemSeparator({ function Item (line 58) | function Item({ function ItemMedia (line 95) | function ItemMedia({ function ItemContent (line 110) | function ItemContent({ className, ...props }: React.ComponentProps<"div"... function ItemTitle (line 123) | function ItemTitle({ className, ...props }: React.ComponentProps<"div">) { function ItemDescription (line 136) | function ItemDescription({ className, ...props }: React.ComponentProps<"... function ItemActions (line 149) | function ItemActions({ className, ...props }: React.ComponentProps<"div"... function ItemHeader (line 159) | function ItemHeader({ className, ...props }: React.ComponentProps<"div">) { function ItemFooter (line 172) | function ItemFooter({ className, ...props }: React.ComponentProps<"div">) { FILE: src/components/ui/kbd.tsx function Kbd (line 3) | function Kbd({ className, ...props }: React.ComponentProps<"kbd">) { function KbdGroup (line 16) | function KbdGroup({ className, ...props }: React.ComponentProps<"div">) { FILE: src/components/ui/label.tsx function Label (line 8) | function Label({ FILE: src/components/ui/marquee.tsx constant ROOT_NAME (line 12) | const ROOT_NAME = "Marquee"; constant CONTENT_NAME (line 13) | const CONTENT_NAME = "MarqueeContent"; type Side (line 15) | type Side = "left" | "right" | "top" | "bottom"; type Orientation (line 16) | type Orientation = "horizontal" | "vertical"; type Direction (line 17) | type Direction = "ltr" | "rtl"; type RootElement (line 19) | type RootElement = React.ComponentRef; type ContentElement (line 20) | type ContentElement = React.ComponentRef; type Dimensions (line 22) | interface Dimensions { type ElementDimensions (line 27) | interface ElementDimensions { function createResizeObserverStore (line 32) | function createResizeObserverStore() { function useResizeObserverStore (line 216) | function useResizeObserverStore( type DivProps (line 239) | interface DivProps extends React.ComponentProps<"div"> { type MarqueeContextValue (line 243) | interface MarqueeContextValue { function useMarqueeContext (line 260) | function useMarqueeContext(consumerName: string) { type MarqueeProps (line 268) | interface MarqueeProps extends DivProps { function Marquee (line 281) | function Marquee(props: MarqueeProps) { function MarqueeContent (line 463) | function MarqueeContent(props: DivProps) { function MarqueeItem (line 588) | function MarqueeItem(props: DivProps) { type MarqueeEdgeProps (line 655) | interface MarqueeEdgeProps function MarqueeEdge (line 659) | function MarqueeEdge(props: MarqueeEdgeProps) { FILE: src/components/ui/menubar.tsx function Menubar (line 9) | function Menubar({ function MenubarMenu (line 25) | function MenubarMenu({ function MenubarGroup (line 31) | function MenubarGroup({ function MenubarPortal (line 37) | function MenubarPortal({ function MenubarRadioGroup (line 43) | function MenubarRadioGroup({ function MenubarTrigger (line 51) | function MenubarTrigger({ function MenubarContent (line 67) | function MenubarContent({ function MenubarItem (line 88) | function MenubarItem({ function MenubarCheckboxItem (line 111) | function MenubarCheckboxItem({ function MenubarRadioItem (line 142) | function MenubarRadioItem({ function MenubarLabel (line 171) | function MenubarLabel({ function MenubarSeparator (line 188) | function MenubarSeparator({ function MenubarShortcut (line 201) | function MenubarShortcut({ function MenubarSub (line 217) | function MenubarSub({ function MenubarSubTrigger (line 223) | function MenubarSubTrigger({ function MenubarSubContent (line 247) | function MenubarSubContent({ FILE: src/components/ui/multi-select.tsx type MultiSelectProps (line 44) | interface MultiSelectProps FILE: src/components/ui/native-select.tsx type NativeSelectProps (line 6) | type NativeSelectProps = Omit, "size"> & { function NativeSelect (line 10) | function NativeSelect({ function NativeSelectOption (line 35) | function NativeSelectOption({ ...props }: React.ComponentProps<"option">) { function NativeSelectOptGroup (line 39) | function NativeSelectOptGroup({ FILE: src/components/ui/navigation-menu.tsx function NavigationMenu (line 8) | function NavigationMenu({ function NavigationMenuList (line 32) | function NavigationMenuList({ function NavigationMenuItem (line 48) | function NavigationMenuItem({ function NavigationMenuTrigger (line 65) | function NavigationMenuTrigger({ function NavigationMenuContent (line 82) | function NavigationMenuContent({ function NavigationMenuViewport (line 98) | function NavigationMenuViewport({ function NavigationMenuLink (line 120) | function NavigationMenuLink({ function NavigationMenuIndicator (line 136) | function NavigationMenuIndicator({ FILE: src/components/ui/pagination.tsx function Pagination (line 7) | function Pagination({ className, ...props }: React.ComponentProps<"nav">) { function PaginationContent (line 19) | function PaginationContent({ function PaginationItem (line 32) | function PaginationItem({ ...props }: React.ComponentProps<"li">) { type PaginationLinkProps (line 36) | type PaginationLinkProps = { function PaginationLink (line 41) | function PaginationLink({ function PaginationPrevious (line 64) | function PaginationPrevious({ function PaginationNext (line 82) | function PaginationNext({ function PaginationEllipsis (line 100) | function PaginationEllipsis({ FILE: src/components/ui/popover.tsx function Popover (line 8) | function Popover({ function PopoverTrigger (line 14) | function PopoverTrigger({ function PopoverContent (line 20) | function PopoverContent({ function PopoverAnchor (line 42) | function PopoverAnchor({ function PopoverHeader (line 48) | function PopoverHeader({ className, ...props }: React.ComponentProps<"di... function PopoverTitle (line 58) | function PopoverTitle({ className, ...props }: React.ComponentProps<"h2"... function PopoverDescription (line 68) | function PopoverDescription({ FILE: src/components/ui/progress.tsx function Progress (line 8) | function Progress({ FILE: src/components/ui/radio-group.tsx function RadioGroup (line 8) | function RadioGroup({ function RadioGroupItem (line 21) | function RadioGroupItem({ FILE: src/components/ui/resizable.tsx function ResizablePanelGroup (line 7) | function ResizablePanelGroup({ function ResizablePanel (line 23) | function ResizablePanel({ ...props }: ResizablePrimitive.PanelProps) { function ResizableHandle (line 27) | function ResizableHandle({ FILE: src/components/ui/scroll-area.tsx function ScrollArea (line 8) | function ScrollArea({ function ScrollBar (line 31) | function ScrollBar({ FILE: src/components/ui/select.tsx function Select (line 9) | function Select({ function SelectGroup (line 15) | function SelectGroup({ function SelectValue (line 28) | function SelectValue({ function SelectTrigger (line 34) | function SelectTrigger({ function SelectContent (line 60) | function SelectContent({ function SelectLabel (line 93) | function SelectLabel({ function SelectItem (line 106) | function SelectItem({ function SelectSeparator (line 130) | function SelectSeparator({ function SelectScrollUpButton (line 143) | function SelectScrollUpButton({ function SelectScrollDownButton (line 162) | function SelectScrollDownButton({ FILE: src/components/ui/separator.tsx function Separator (line 8) | function Separator({ FILE: src/components/ui/sheet.tsx function Sheet (line 10) | function Sheet({ ...props }: React.ComponentProps) { function SidebarMenuItem (line 457) | function SidebarMenuItem({ className, ...props }: React.ComponentProps<"... function SidebarMenuButton (line 490) | function SidebarMenuButton({ function SidebarMenuAction (line 540) | function SidebarMenuAction({ function SidebarMenuBadge (line 566) | function SidebarMenuBadge({ function SidebarMenuSkeleton (line 583) | function SidebarMenuSkeleton({ function SidebarMenuSub (line 621) | function SidebarMenuSub({ className, ...props }: React.ComponentProps<"u... function SidebarMenuSubItem (line 635) | function SidebarMenuSubItem({ function SidebarMenuSubButton (line 649) | function SidebarMenuSubButton({ FILE: src/components/ui/skeleton.tsx function Skeleton (line 3) | function Skeleton({ className, ...props }: React.ComponentProps<"div">) { FILE: src/components/ui/slider.tsx function Slider (line 8) | function Slider({ FILE: src/components/ui/spinner.tsx function Spinner (line 4) | function Spinner({ className, ...props }: React.ComponentProps<"svg">) { FILE: src/components/ui/switch.tsx function Switch (line 8) | function Switch({ FILE: src/components/ui/table.tsx function Table (line 7) | function Table({ className, ...props }: React.ComponentProps<"table">) { function TableHeader (line 22) | function TableHeader({ className, ...props }: React.ComponentProps<"thea... function TableBody (line 32) | function TableBody({ className, ...props }: React.ComponentProps<"tbody"... function TableFooter (line 42) | function TableFooter({ className, ...props }: React.ComponentProps<"tfoo... function TableRow (line 55) | function TableRow({ className, ...props }: React.ComponentProps<"tr">) { function TableHead (line 68) | function TableHead({ className, ...props }: React.ComponentProps<"th">) { function TableCell (line 81) | function TableCell({ className, ...props }: React.ComponentProps<"td">) { function TableCaption (line 94) | function TableCaption({ FILE: src/components/ui/tabs.tsx function Tabs (line 9) | function Tabs({ function TabsList (line 42) | function TabsList({ function TabsTrigger (line 58) | function TabsTrigger({ function TabsContent (line 77) | function TabsContent({ FILE: src/components/ui/textarea.tsx function Textarea (line 5) | function Textarea({ className, ...props }: React.ComponentProps<"textare... FILE: src/components/ui/toggle-group.tsx function ToggleGroup (line 22) | function ToggleGroup({ function ToggleGroupItem (line 58) | function ToggleGroupItem({ FILE: src/components/ui/toggle.tsx function Toggle (line 30) | function Toggle({ FILE: src/components/ui/tooltip.tsx function TooltipProvider (line 8) | function TooltipProvider({ function Tooltip (line 21) | function Tooltip({ function TooltipTrigger (line 27) | function TooltipTrigger({ function TooltipContent (line 33) | function TooltipContent({ FILE: src/hooks/use-bookmark.ts function useBookmarks (line 3) | function useBookmarks() { FILE: src/hooks/use-categories.ts type Category (line 7) | interface Category { constant CATEGORY_DESCRIPTIONS (line 14) | const CATEGORY_DESCRIPTIONS: Record = { function useCategories (line 33) | function useCategories() { FILE: src/hooks/use-debounce.ts function useDebounce (line 3) | function useDebounce(value: T, delay: number): T { FILE: src/hooks/use-github-auth.ts type GitHubAuthState (line 4) | interface GitHubAuthState { type GitHubUser (line 15) | interface GitHubUser { type DeviceFlowResponse (line 22) | interface DeviceFlowResponse { function useGitHubAuth (line 30) | function useGitHubAuth() { FILE: src/hooks/use-mobile.ts constant MOBILE_BREAKPOINT (line 3) | const MOBILE_BREAKPOINT = 768 function useIsMobile (line 5) | function useIsMobile() { FILE: src/hooks/use-pr-submission.ts type SubmissionData (line 3) | interface SubmissionData { type PRSubmissionResult (line 10) | interface PRSubmissionResult { function usePRSubmission (line 17) | function usePRSubmission() { FILE: src/hooks/use-readme.ts constant EXCLUDED_CATEGORIES (line 7) | const EXCLUDED_CATEGORIES = ["Star History", "Contributors"]; type Resource (line 9) | interface Resource { constant CACHE_DURATION (line 21) | const CACHE_DURATION = 30 * 60 * 1000; function fetchAndParseReadme (line 23) | async function fetchAndParseReadme(): Promise { FILE: src/hooks/use-website-preview.ts type WebsitePreviewProps (line 5) | interface WebsitePreviewProps { function useWebsitePreview (line 10) | function useWebsitePreview({ url, name }: WebsitePreviewProps) { FILE: src/lib/compose-refs.ts type PossibleRef (line 3) | type PossibleRef = React.Ref | undefined; function setRef (line 9) | function setRef(ref: PossibleRef, value: T) { function composeRefs (line 23) | function composeRefs(...refs: PossibleRef[]): React.RefCallback { function useComposedRefs (line 57) | function useComposedRefs(...refs: PossibleRef[]): React.RefCallbac... FILE: src/lib/config.ts constant GITHUB_CONFIG (line 2) | const GITHUB_CONFIG = { constant PR_TEMPLATE (line 30) | const PR_TEMPLATE = { constant ERROR_MESSAGES (line 70) | const ERROR_MESSAGES = { constant STATUS_MESSAGES (line 81) | const STATUS_MESSAGES = { FILE: src/lib/slugs.ts function categoryNameToSlug (line 5) | function categoryNameToSlug(categoryName: string): string { function slugToCategoryName (line 14) | function slugToCategoryName(slug: string): string { function createCategorySlugMap (line 34) | function createCategorySlugMap( function createSlugToCategoryMap (line 44) | function createSlugToCategoryMap( function titleToSlug (line 54) | function titleToSlug(title: string): string { function slugToTitle (line 63) | function slugToTitle(slug: string): string { FILE: src/lib/utils.ts function cn (line 4) | function cn(...inputs: ClassValue[]) { FILE: src/providers/providers.tsx function Providers (line 6) | function Providers({ children }: { children: React.ReactNode }) { FILE: src/providers/theme-provider.tsx function ThemeProvider (line 8) | function ThemeProvider({ children, ...props }: ThemeProviderProps) {