refactor: refactor superadmin modules

This commit is contained in:
2026-06-17 01:35:09 +05:30
parent 6f4399a048
commit 1325afdab2
40 changed files with 1709 additions and 1320 deletions

View File

@@ -1,6 +1,6 @@
'use client';
import { Input } from '@/components/ui/input';
import { TableSearchInput } from '@/components/data-table/TableSearchInput';
import {
Select,
SelectContent,
@@ -25,11 +25,10 @@ export function ClientFilters({
}: ClientFiltersProps) {
return (
<div className="flex flex-col gap-3 md:flex-row md:items-center md:justify-between">
<Input
<TableSearchInput
value={searchTerm}
onChange={(event) => onSearchChange(event.target.value)}
onChange={onSearchChange}
placeholder="Search clients"
className="md:max-w-sm"
/>
<Select
value={statusFilter}

View File

@@ -15,6 +15,7 @@ interface ClientTableProps {
limit: number;
total: number;
onPageChange: (skip: number) => void;
onLimitChange: (limit: number) => void;
}
export function ClientTable({
@@ -26,6 +27,7 @@ export function ClientTable({
limit,
total,
onPageChange,
onLimitChange,
}: ClientTableProps) {
return (
<DataTable
@@ -40,7 +42,7 @@ export function ClientTable({
limit,
totalItems: total,
onPageChange,
onLimitChange: () => undefined,
onLimitChange,
}}
/>
);

View File

@@ -8,7 +8,7 @@ export type ClientStatusFilter = 'all' | 'active' | 'inactive';
export function useClientFilters() {
const [skip, setSkip] = useState(0);
const [limit] = useState(10);
const [limit, setLimitValue] = useState(10);
const [searchTerm, setSearchTermValue] = useState('');
const [statusFilter, setStatusFilterValue] = useState<ClientStatusFilter>('all');
const debouncedSearchTerm = useDebounce(searchTerm.trim(), 400);
@@ -23,10 +23,16 @@ export function useClientFilters() {
setSkip(0);
}, []);
const setLimit = useCallback((value: number) => {
setLimitValue(value);
setSkip(0);
}, []);
return {
skip,
setSkip,
limit,
setLimit,
searchTerm,
debouncedSearchTerm,
setSearchTerm,

View File

@@ -25,6 +25,7 @@ export default function ClientsPage() {
skip,
setSkip,
limit,
setLimit,
searchTerm,
debouncedSearchTerm,
setSearchTerm,
@@ -112,6 +113,7 @@ export default function ClientsPage() {
limit={limit}
total={total}
onPageChange={setSkip}
onLimitChange={setLimit}
/>
<PoweredBy />