Merge remote-tracking branch 'origin/master' into feature/slicing

This commit is contained in:
fredy.siswanto
2025-03-11 00:22:40 +07:00
15 changed files with 532 additions and 373 deletions
-2
View File
@@ -26,9 +26,7 @@ const usersResponseSchema = z.object({
data: z.array(userResponseSchema),
})
export type TSubscribePlanRespon = z.infer<typeof subscribePlanResponseSchema>
export type TUserResponse = z.infer<typeof userResponseSchema>
export type TSubscribeResponse = z.infer<typeof subscribeResponseSchema>
export const getUsers = async (parameters: THttpServer) => {
try {
+37
View File
@@ -0,0 +1,37 @@
import { z } from 'zod'
import type { TUploadSchema } from '~/layouts/admin/form-upload'
import { HttpServer, type THttpServer } from '~/libs/http-server'
const uploadResponseSchema = z.object({
data: z.object({
message: z.string(),
data: z.object({
file_path: z.string(),
file_url: z.string(),
}),
}),
})
type TParameter = {
payload: TUploadSchema & {
file: File
}
} & THttpServer
export const uploadFileRequest = async (parameters: TParameter) => {
const { payload, ...restParameters } = parameters
const formdata = new FormData()
formdata.append('file', payload.file)
try {
const { data } = await HttpServer(restParameters).post(
'/api/file',
formdata,
)
return uploadResponseSchema.parse(data)
} catch (error) {
// eslint-disable-next-line unicorn/no-useless-promise-resolve-reject
return Promise.reject(error)
}
}