2026-05-19 11:10:14 +07:00

62 lines
1.4 KiB
JavaScript

export const formatApiResponse = (responseOrError) => {
if (responseOrError?.status) {
const { status, data, message } = responseOrError;
if (status >= 200 && status < 300) {
return {
code: data.code ?? status,
error: false,
status: data.status ?? true,
data: data.data ?? null,
message: message ?? null,
totalRecord: data.totalRecord ?? null
};
}
return {
error: true,
status,
data: data ?? null,
message: data?.message ?? message ?? 'Request failed'
};
}
if (responseOrError?.response) {
const status = responseOrError.response.status ?? null;
const data = responseOrError.response.data ?? null;
const message = responseOrError.response.data?.message ?? responseOrError.message ?? 'Request failed';
return {
error: true,
status,
data,
message
};
}
if (responseOrError?.request) {
return {
error: true,
status: null,
data: null,
message: 'No response received from server'
};
}
return {
error: true,
status: null,
data: null,
message: responseOrError?.message ?? 'Unknown error'
};
};
export const normalizeApiResponse = (data, error, isLoading) => {
return {
data: data?.data ?? [],
totalRecord: data?.totalRecord ?? 0,
error: error,
isLoading: isLoading
};
};