diff --git a/src/pages/members/kyc/Kyc.tsx b/src/pages/members/kyc/Kyc.tsx
index 969db5e..6e3fcbf 100644
--- a/src/pages/members/kyc/Kyc.tsx
+++ b/src/pages/members/kyc/Kyc.tsx
@@ -1,4 +1,10 @@
-import { Container, DataGridInner, DataGridProvider, TDataGridProps } from '@/components';
+import {
+ Container,
+ DataGridInner,
+ DataGridProvider,
+ TDataGridProps,
+ useDataGrid
+} from '@/components';
import { DataTable } from '@/components/ui/DataTable';
import { Table } from '@tanstack/react-table';
import React, { createContext, useContext, useState, useEffect } from 'react';
@@ -17,6 +23,7 @@ import DetailMember from '../manage-members/blocks/DetailMember';
import { Breadcrumbs, Link } from '@mui/material';
import { Helmet } from 'react-helmet';
import { ListToolBar } from './blocks/ListToolBar';
+import { RefreshCw } from 'lucide-react';
const Kyc = () => {
const [loading, setLoading] = useState(false);
@@ -26,6 +33,7 @@ const Kyc = () => {
const [isDialogOpen, setIsDialogOpen] = useState(false);
const [dialogOpen, setDialogOpen] = useState(false);
const [dialogType, setDialogType] = useState('');
+ const [isReloading, setIsReloading] = useState(false);
const closeDialog = () => setIsDialogOpen(false);
const { getUser } = useAuthContext();
@@ -65,6 +73,9 @@ const Kyc = () => {
} catch (error: any) {
toast.error(error.message);
console.log(error);
+ } finally {
+ setLoading(false);
+ setIsReloading(false);
}
}
@@ -89,6 +100,11 @@ const Kyc = () => {
setMember(initialMember);
};
+ const handleReload = () => {
+ setIsReloading(true);
+ fetchCustomers();
+ };
+
const handleYes = async () => {
setLoading(true);
const userLogin: any = await getUser();
@@ -172,6 +188,7 @@ const Kyc = () => {
} finally {
await fetchCustomers();
setLoading(false);
+ setIsReloading(false);
}
};
@@ -237,12 +254,20 @@ const Kyc = () => {
{/*
*/}
-
+
+ {isReloading && (
+
+
+
+ Refreshing data...
+
+
+ )}
}
+ toolbar={
}
layout={{ card: true }}
sorting={[{ id: 'created_at', desc: true }]}
serverSide={false}
diff --git a/src/pages/members/kyc/blocks/ListToolBar.tsx b/src/pages/members/kyc/blocks/ListToolBar.tsx
index 180e68b..54ffca7 100644
--- a/src/pages/members/kyc/blocks/ListToolBar.tsx
+++ b/src/pages/members/kyc/blocks/ListToolBar.tsx
@@ -1,40 +1,45 @@
import { DefaultTooltip, KeenIcon, useDataGrid } from '@/components';
import { Button } from '@/components/ui/button';
import { useKycContext } from '../hooks';
+import { useState } from 'react';
-const ListToolBar = () => {
+interface ListToolbarProps {
+ onReload: () => void;
+ isReloading: boolean;
+}
+
+const ListToolBar = ({ onReload, isReloading }: ListToolbarProps) => {
const { table, reload } = useDataGrid();
+ const [usernameFilter, setUsernameFilter] = useState('');
+
+ const handleUsernameChange = (e: React.ChangeEvent
) => {
+ setUsernameFilter(e.target.value);
+ table.getColumn('username')?.setFilterValue(e.target.value);
+ };
return (
-
-
-
-
-
+
+
-
-
diff --git a/src/pages/members/manage-members/ManageMembers.tsx b/src/pages/members/manage-members/ManageMembers.tsx
index 7ac36d2..3dedff3 100644
--- a/src/pages/members/manage-members/ManageMembers.tsx
+++ b/src/pages/members/manage-members/ManageMembers.tsx
@@ -47,7 +47,7 @@ const ManageMembers = () => {
order_field: 'created_at',
order_direction: 'DESC'
}
- });
+ });
let temp = 1;
let resMembers = customers.data.data.list.map((el: any) => {
el.no = temp++;
@@ -73,11 +73,10 @@ const ManageMembers = () => {
toast.error(error.message);
console.log(error);
} finally {
- setLoading(false)
+ setLoading(false);
setIsReloading(false);
}
}
-
const handleUpdate = (data: any) => {
setDialogType('update');
@@ -233,29 +232,35 @@ const ManageMembers = () => {
{/*
*/}
-
+
- {isReloading && (
-
-
-
- Refreshing data...
-
-
- )}
-
}
- onRowSelectionChange={(selected, table: any) => {
- const selectedRow = table.getSelectedRowModel().rows[0];
- if (selectedRow) handleUpdate(selectedRow.original);
- }}
- >
-
+ {isReloading && (
+
+
+
+ Refreshing data...
+
+
+ )}
+
+ }
+ onRowSelectionChange={(selected, table: any) => {
+ const selectedRow = table.getSelectedRowModel().rows[0];
+ if (selectedRow) handleUpdate(selectedRow.original);
+ }}
+ >
+
{/*
*/}
>