"use client"; import { useQuery } from "@tanstack/react-query"; import { CreditCard, Zap } from "lucide-react"; import Link from "next/link"; import { useParams } from "next/navigation"; import { Badge } from "@/components/ui/badge"; import { Progress } from "@/components/ui/progress"; import { stripeApiService } from "@/lib/apis/stripe-api.service"; interface PageUsageDisplayProps { pagesUsed: number; pagesLimit: number; } export function PageUsageDisplay({ pagesUsed, pagesLimit }: PageUsageDisplayProps) { const params = useParams(); const searchSpaceId = params?.search_space_id ?? ""; const usagePercentage = (pagesUsed / pagesLimit) * 100; const { data: stripeStatus } = useQuery({ queryKey: ["stripe-status"], queryFn: () => stripeApiService.getStatus(), }); const pageBuyingEnabled = stripeStatus?.page_buying_enabled ?? true; return (
{pagesUsed.toLocaleString()} / {pagesLimit.toLocaleString()} pages {usagePercentage.toFixed(0)}%
Get Free Pages FREE {pageBuyingEnabled && ( Buy Pages $1/1k )}
); }