diff --git a/src/Components/Pagination.jsx b/src/Components/Pagination.jsx
index 6532b1f..0a82531 100644
--- a/src/Components/Pagination.jsx
+++ b/src/Components/Pagination.jsx
@@ -1,11 +1,17 @@
-import React, { useState } from 'react';
-import { Select, HStack, Text, Box, IconButton } from '@chakra-ui/react';
-import { ChevronLeftIcon, ChevronRightIcon } from '@chakra-ui/icons';
+import React, { useState } from "react";
+import { Select, HStack, Text, Box, IconButton } from "@chakra-ui/react";
+import { ChevronLeftIcon, ChevronRightIcon } from "@chakra-ui/icons";
-const Pagination = ({ pageSize, setPageSize, totalItems,isLoading, setCurrentPage, currentPage }) => {
+const Pagination = ({
+ pageSize,
+ setPageSize,
+ totalItems,
+ isLoading,
+ setCurrentPage,
+ currentPage,
+}) => {
// const [] = useState(itemsPerPageOptions[0]);
-
const totalPages = Math.ceil(totalItems / pageSize);
const handlePageSizeChange = (e) => {
@@ -35,45 +41,54 @@ const Pagination = ({ pageSize, setPageSize, totalItems,isLoading, setCurrentPag
{/* Tanami v0.1 */}
-
+
}
onClick={paginationPrev}
className="link pointer"
isDisabled={currentPage === 1}
+ aria-label="Previous Page"
/>
-
- {isLoading ? "0": displayRange?.start} - {isLoading ? "00" :displayRange?.end} of {isLoading ? "00":totalItems}
+
+ {isLoading ? "0" : displayRange?.start} -{" "}
+ {isLoading ? "00" : displayRange?.end} of{" "}
+ {isLoading ? "00" : totalItems}
}
- size={'sm'}
- rounded="sm"
+ size={"sm"}
+ rounded="sm"
onClick={paginationNext}
className="link pointer"
isDisabled={currentPage === totalPages}
+ aria-label="Next Page"
/>
);
};
-export default Pagination;
\ No newline at end of file
+export default Pagination;
diff --git a/src/Pages/Master/InvestmentType/InvestmentType.jsx b/src/Pages/Master/InvestmentType/InvestmentType.jsx
index 7bc892b..6cc9b59 100644
--- a/src/Pages/Master/InvestmentType/InvestmentType.jsx
+++ b/src/Pages/Master/InvestmentType/InvestmentType.jsx
@@ -70,7 +70,7 @@ const InvestmentType = () => {
// toast({
// render: () => ,
// });
- // }, 300);
+ // }, 300);
// ===========================[Table Filter]=============================
diff --git a/src/Services/token.serivce.js b/src/Services/token.serivce.js
index 1dedc92..a543760 100644
--- a/src/Services/token.serivce.js
+++ b/src/Services/token.serivce.js
@@ -25,57 +25,57 @@ export const baseQuery = async (args, api, extraOptions) => {
},
})(args, api, extraOptions);
- if (result.error && result.error.status === 401) {
+ if (result.error && result.error.status === 403) {
// Handle token refresh
- // const refreshToken = localStorage.getItem("refreshToken");
- // if (refreshToken) {
- // try {
- // const refreshResult = await fetchBaseQuery({
- // baseUrl: import.meta.env.VITE_BAS_URL,
- // })(
- // {
- // url: "/auth/user/regenerate-token",
- // method: "POST",
- // body: { refreshToken },
- // },
- // api,
- // extraOptions
- // );
+ const refreshToken = localStorage.getItem("refreshToken");
+ if (refreshToken) {
+ try {
+ const refreshResult = await fetchBaseQuery({
+ baseUrl: import.meta.env.VITE_BAS_URL,
+ })(
+ {
+ url: "/auth/user/regenerate-token",
+ method: "POST",
+ body: { refreshToken },
+ },
+ api,
+ extraOptions
+ );
- // if (refreshResult.data) {
- // // Save new tokens
- // localStorage.setItem("accessToken", refreshResult.data.access.token);
- // localStorage.setItem(
- // "refreshToken",
- // refreshResult.data.refresh.token
- // );
- // localStorage.setItem(
- // "refreshTokenExp",
- // refreshResult.data.refresh.expires
- // );
+ if (refreshResult.data) {
+ console.log('hit');
+ console.log(refreshResult?.data?.data?.access?.token);
+
+ // Save new tokens
+ localStorage.setItem("accessToken", refreshResult?.data?.data?.access?.token);
+ localStorage.setItem(
+ "refreshToken",
+ refreshResult?.data?.data?.refresh?.token
+ );
+ localStorage.setItem(
+ "refreshTokenExp",
+ refreshResult.data?.data?.refresh.expires
+ );
- // // Retry the original request with the new token
- // result = await fetchBaseQuery({
- // baseUrl: import.meta.env.VITE_BAS_URL,
- // prepareHeaders: (headers) => {
- // const token = localStorage.getItem("accessToken");
- // if (token) {
- // headers.set("x-auth-token", token);
- // }
- // return headers;
- // },
- // })(args, api, extraOptions);
- // }
- // } catch (err) {
- // console.error("Failed to refresh token:", err);
- // // Handle refresh failure (e.g., redirect to login)
- // }
- // }
-
-
- localStorage.removeItem("accessToken");
- localStorage.removeItem("refreshToken");
- Cookies.remove("isAuthenticated", { path: '/login' });
+ // Retry the original request with the new token
+ result = await fetchBaseQuery({
+ baseUrl: import.meta.env.VITE_BAS_URL,
+ prepareHeaders: (headers) => {
+ const token = localStorage.getItem("accessToken");
+ if (token) {
+ headers.set("x-auth-token", token);
+ }
+ return headers;
+ },
+ })(args, api, extraOptions);
+ }else{
+ console.log('refresh failed');
+ }
+ } catch (err) {
+ console.error("Failed to refresh token:", err);
+ // Handle refresh failure (e.g., redirect to login)
+ }
+ }
}
return result;