import { useState } from "react"; import { Link } from "@remix-run/react"; import { ChevronLeft } from "lucide-react"; import { useLedgerSellers, type LedgerSellerRow, } from "~/requestHandler/use-admin-hooks"; import { AdminTable, AdminPagination, AdminToolbar, AdminSearch, faToman, useDebouncedValue, type Column, } from "~/components/admin/DataTable"; const PAGE_SIZE = 25; export default function LedgerSellers() { const [page, setPage] = useState(1); const [search, setSearch] = useState(""); const debouncedSearch = useDebouncedValue(search); const { data, isLoading } = useLedgerSellers({ page, page_size: PAGE_SIZE, search: debouncedSearch, }); const reset = (fn: () => void) => { fn(); setPage(1); }; const columns: Column[] = [ { header: "فروشگاه", render: (s) => (

{s.storeName || "—"}

@{s.username}

), }, { header: "مانده", render: (s) => ( {faToman(s.availableFunds)} ), }, { header: "برداشت‌شده", render: (s) => {faToman(s.completedPayouts)}, }, { header: "در انتظار برداشت", render: (s) => {faToman(s.pendingPayouts)}, }, { header: "", className: "text-left w-10", render: (s) => ( ), }, ]; return (
reset(() => setSearch(v))} placeholder="جستجوی فروشگاه…" /> s.sellerId} />
); }