refactor: improve type safety by replacing any types with specific interfaces across API services and components.
This commit is contained in:
@@ -9,7 +9,17 @@ export const apiGetListUser = async (payload: getUserDto) => {
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
export const apiChangeRole = async (id: string, payload: any) => {
|
||||
export interface ChangeRolePayload {
|
||||
role_ids: string[];
|
||||
user_id: string;
|
||||
}
|
||||
|
||||
export interface UpdateApplicationStatusPayload {
|
||||
status: "APPROVED" | "REJECTED";
|
||||
review_note: string;
|
||||
}
|
||||
|
||||
export const apiChangeRole = async (id: string, payload: ChangeRolePayload) => {
|
||||
const response = await api.patch(API.Admin.CHANGE_ROLE(id), payload);
|
||||
return response?.data;
|
||||
};
|
||||
@@ -32,11 +42,12 @@ export const apiGetUserMedia = async (id: string) => {
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
export const apiUpdateApplicationStatus = async (id: string, payload: any) => {
|
||||
export const apiUpdateApplicationStatus = async (id: string, payload: UpdateApplicationStatusPayload) => {
|
||||
const response = await api.put(API.Admin.UPDATE_APPLICATION_STATUS(id), payload);
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
|
||||
export const apiGetUserById = async (userId: string) => {
|
||||
const response = await api.get(API.Admin.GET_USER_BY_ID(userId));
|
||||
return response?.data;
|
||||
|
||||
+28
-4
@@ -2,6 +2,29 @@ import api from "@/config/config";
|
||||
import { API } from "../../api";
|
||||
import { clearStoredTokens, extractTokensFromResponsePayload, setStoredTokens } from "@/auth/tokenStore";
|
||||
|
||||
export interface SignUpPayload {
|
||||
display_name: string;
|
||||
email: string;
|
||||
password: string;
|
||||
token_id: string;
|
||||
}
|
||||
|
||||
export interface SignInPayload {
|
||||
email: string;
|
||||
password: string;
|
||||
}
|
||||
|
||||
export interface ResetPasswordPayload {
|
||||
email: string;
|
||||
new_password: string;
|
||||
token_id: string;
|
||||
}
|
||||
|
||||
export interface ChangePasswordPayload {
|
||||
old_password: string;
|
||||
new_password: string;
|
||||
}
|
||||
|
||||
export const apiCreateOTP = async (email: string, token_type: number = 2) => {
|
||||
const response = await api.post(API.Auth.CREATEOTP, {
|
||||
email,
|
||||
@@ -16,7 +39,7 @@ export const apiVerifyOTP = async (email: string, token: string, token_type: num
|
||||
return response.data;
|
||||
};
|
||||
|
||||
export const apiSignUp = async (payload: any) => {
|
||||
export const apiSignUp = async (payload: SignUpPayload) => {
|
||||
const response = await api.post(API.Auth.SIGNUP, payload);
|
||||
return response.data;
|
||||
};
|
||||
@@ -27,14 +50,14 @@ export const apiLogout = async () => {
|
||||
return response.data;
|
||||
};
|
||||
|
||||
export const apiSignIn = async (payload: any) => {
|
||||
export const apiSignIn = async (payload: SignInPayload) => {
|
||||
const response = await api.post(API.Auth.SIGNIN, payload);
|
||||
const tokens = extractTokensFromResponsePayload(response?.data);
|
||||
if (tokens) setStoredTokens(tokens);
|
||||
return response.data;
|
||||
};
|
||||
|
||||
export const apiResetPassword = async (payload: any) => {
|
||||
export const apiResetPassword = async (payload: ResetPasswordPayload) => {
|
||||
const response = await api.post(API.Auth.FORGOT_PASSWORD, payload);
|
||||
return response.data;
|
||||
};
|
||||
@@ -44,7 +67,8 @@ export const apiGetCurrentUser = async () => {
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
export const apiChangePassword = async (payload: any) => {
|
||||
export const apiChangePassword = async (payload: ChangePasswordPayload) => {
|
||||
const response = await api.patch(API.User.CHANGE_PASSWORD, payload);
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
|
||||
@@ -1,16 +1,30 @@
|
||||
import api from "@/config/config";
|
||||
import { API } from "../../api";
|
||||
|
||||
export const createHistorianCV = async (payload: any) => {
|
||||
export interface CreateHistorianCVPayload {
|
||||
content: string;
|
||||
media_ids: (string | number)[];
|
||||
verify_type: string;
|
||||
}
|
||||
|
||||
export interface GetUserApplicationsPayload {
|
||||
page?: number;
|
||||
limit?: number;
|
||||
status?: string;
|
||||
user_id?: string;
|
||||
}
|
||||
|
||||
export const createHistorianCV = async (payload: CreateHistorianCVPayload) => {
|
||||
const response = await api.post(API.Historian.CREATE_CV, payload);
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
export const apiGetUserApplications = async (payload :any) => {
|
||||
export const apiGetUserApplications = async (payload : GetUserApplicationsPayload) => {
|
||||
const response = await api.get(API.Historian.APPLICATION, { params: payload });
|
||||
return response?.data;
|
||||
};
|
||||
|
||||
|
||||
export const apiDeleteHistorianCV = async (id: number | string) => {
|
||||
const response = await api.delete(API.Historian.DELETE_CV(id));
|
||||
return response?.data;
|
||||
|
||||
@@ -121,7 +121,16 @@ export const deleteMediaById = async (mediaId: string) => {
|
||||
return response?.data;
|
||||
}
|
||||
|
||||
export const getMedia = async (payload: any) => {
|
||||
export interface GetMediaPayload {
|
||||
page?: number;
|
||||
limit?: number;
|
||||
search?: string;
|
||||
sortBy?: string;
|
||||
sortOrder?: "asc" | "desc";
|
||||
user_id?: string;
|
||||
}
|
||||
|
||||
export const getMedia = async (payload: GetMediaPayload) => {
|
||||
const response = await api.get(API.Media.GET_MEDIA, {
|
||||
params: payload,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user