From 1074d590a093aa084c02b1020896863ea9fb177a Mon Sep 17 00:00:00 2001 From: hosseintaromi Date: Tue, 22 Jul 2025 08:48:20 +0330 Subject: [PATCH] config: update API routes and disable cache - Add all admin users, roles, and permissions API endpoints - Update backend base URL to staging environment - Disable React Query cache for fresh data on all requests - Add query keys for new endpoints --- src/constant/routes.ts | 15 ++++++++++++++- src/lib/queryClient.ts | 21 ++++++--------------- src/utils/query-key.ts | 33 ++++++++++++++++++++++++++------- 3 files changed, 46 insertions(+), 23 deletions(-) diff --git a/src/constant/routes.ts b/src/constant/routes.ts index c02e395..9e3b9c3 100644 --- a/src/constant/routes.ts +++ b/src/constant/routes.ts @@ -3,11 +3,20 @@ export const API_GATE_WAY = "https://apimznstg.aireview.ir"; export const REQUEST_TIMEOUT = 30000; export const API_ROUTES = { + // Auth APIs ADMIN_LOGIN: "api/v1/admin/auth/login", + // Draft APIs GET_DISCOUNT_DETAIL: (id: string) => `api/v1/discount-drafts/${id}`, GET_DRAFT_DETAIL: (id: string) => `api/v1/drafts/${id}`, + // Admin Users APIs + GET_ADMIN_USERS: "api/v1/admin/users", + GET_ADMIN_USER: (id: string) => `api/v1/admin/users/${id}`, + CREATE_ADMIN_USER: "api/v1/admin/users", + UPDATE_ADMIN_USER: (id: string) => `api/v1/admin/users/${id}`, + DELETE_ADMIN_USER: (id: string) => `api/v1/admin/users/${id}`, + // Roles APIs GET_ROLES: "api/v1/admin/roles", GET_ROLE: (id: string) => `api/v1/admin/roles/${id}`, @@ -20,6 +29,10 @@ export const API_ROUTES = { REMOVE_ROLE_PERMISSION: (roleId: string, permissionId: string) => `api/v1/admin/roles/${roleId}/permissions/${permissionId}`, - // Permissions API + // Permissions APIs GET_PERMISSIONS: "api/v1/admin/permissions", + GET_PERMISSION: (id: string) => `api/v1/admin/permissions/${id}`, + CREATE_PERMISSION: "api/v1/admin/permissions", + UPDATE_PERMISSION: (id: string) => `api/v1/admin/permissions/${id}`, + DELETE_PERMISSION: (id: string) => `api/v1/admin/permissions/${id}`, }; diff --git a/src/lib/queryClient.ts b/src/lib/queryClient.ts index f0507c3..e027f71 100644 --- a/src/lib/queryClient.ts +++ b/src/lib/queryClient.ts @@ -4,24 +4,15 @@ import toast from "react-hot-toast"; export const queryClient = new QueryClient({ defaultOptions: { queries: { - retry: (failureCount, error: any) => { - if (error?.response?.status === 404) return false; - if (error?.response?.status === 403) return false; - if (error?.response?.status === 401) return false; - return failureCount < 2; - }, - staleTime: 5 * 60 * 1000, // 5 minutes - refetchOnWindowFocus: false, + gcTime: 0, + staleTime: 0, + refetchOnMount: true, refetchOnReconnect: true, + refetchOnWindowFocus: true, + retry: 1, }, mutations: { - onError: (error: any) => { - const message = - error?.response?.data?.message || - error?.message || - "خطایی رخ داده است"; - toast.error(message); - }, + retry: 1, }, }, }); diff --git a/src/utils/query-key.ts b/src/utils/query-key.ts index f7fe22b..78aa6e9 100644 --- a/src/utils/query-key.ts +++ b/src/utils/query-key.ts @@ -1,13 +1,32 @@ export const QUERY_KEYS = { - GET_DISCOUNT_DETAIL: "get-discount-detail", - GET_DRAFT_DETAIL: "get-draft-detail", - ADMIN_LOGIN: "admin-login", + // Auth + ADMIN_LOGIN: "admin_login", + + // Draft Details + GET_DISCOUNT_DETAIL: "get_discount_detail", + GET_DRAFT_DETAIL: "get_draft_detail", + + // Admin Users + GET_ADMIN_USERS: "get_admin_users", + GET_ADMIN_USER: "get_admin_user", + CREATE_ADMIN_USER: "create_admin_user", + UPDATE_ADMIN_USER: "update_admin_user", + DELETE_ADMIN_USER: "delete_admin_user", // Roles - GET_ROLES: "get-roles", - GET_ROLE: "get-role", - GET_ROLE_PERMISSIONS: "get-role-permissions", + GET_ROLES: "get_roles", + GET_ROLE: "get_role", + CREATE_ROLE: "create_role", + UPDATE_ROLE: "update_role", + DELETE_ROLE: "delete_role", + GET_ROLE_PERMISSIONS: "get_role_permissions", + ASSIGN_ROLE_PERMISSION: "assign_role_permission", + REMOVE_ROLE_PERMISSION: "remove_role_permission", // Permissions - GET_PERMISSIONS: "get-permissions", + GET_PERMISSIONS: "get_permissions", + GET_PERMISSION: "get_permission", + CREATE_PERMISSION: "create_permission", + UPDATE_PERMISSION: "update_permission", + DELETE_PERMISSION: "delete_permission", };