feat(reset-password): implement reset password functionality for admins and customers
- Added new ResetPasswordModalContent component for displaying generated passwords. - Integrated reset password functionality in the AdminsTable and CustomersTable components, allowing users to reset passwords for admins and customers. - Created useResetPasswordModalPresenter hook to manage password visibility and clipboard copying. - Updated API services and hooks to support reset password requests for both admins and customers. - Enhanced tooltip functionality for reset password actions in the tables.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import api from "../axios";
|
||||
import { API_ENDPOINTS } from "../endpoints";
|
||||
import { ApiResponse } from "../types";
|
||||
import { ApiResponse, TResetPasswordResponse } from "../types";
|
||||
import {
|
||||
CreateCustomerCredentials,
|
||||
CustomerListResponseSchema,
|
||||
@@ -57,6 +57,19 @@ export const customersService = {
|
||||
const response = await api.get(API_ENDPOINTS.CUSTOMERS.DETAILS(id));
|
||||
return response.data;
|
||||
},
|
||||
resetCustomerPassword: async (
|
||||
id: string,
|
||||
): Promise<ApiResponse<TResetPasswordResponse>> => {
|
||||
try {
|
||||
return (await api.post(API_ENDPOINTS.CUSTOMERS.RESET_PASSWORD(id))).data;
|
||||
} catch (error) {
|
||||
console.error(
|
||||
"ERROR caught in Customers Service Reset Password:",
|
||||
error,
|
||||
);
|
||||
throw error;
|
||||
}
|
||||
},
|
||||
assignCompanyToCustomer: async ({
|
||||
credentials,
|
||||
id,
|
||||
|
||||
@@ -10,6 +10,7 @@ import {
|
||||
LoginResponseSchema,
|
||||
LogoutResponseSchema,
|
||||
TChangeAdminStatusCredentials,
|
||||
TResetPasswordResponse,
|
||||
} from "../types";
|
||||
|
||||
export const userService = {
|
||||
@@ -92,6 +93,16 @@ export const userService = {
|
||||
throw error;
|
||||
}
|
||||
},
|
||||
resetAdminPassword: async (
|
||||
id: string,
|
||||
): Promise<ApiResponse<TResetPasswordResponse>> => {
|
||||
try {
|
||||
return (await api.post(API_ENDPOINTS.USER.RESET_ADMIN_PASSWORD(id))).data;
|
||||
} catch (error) {
|
||||
console.error("ERROR caught in User Service Reset Admin Password", error);
|
||||
throw error;
|
||||
}
|
||||
},
|
||||
changeAdminStatus: async ({
|
||||
id,
|
||||
credentials,
|
||||
|
||||
Reference in New Issue
Block a user