Started to work on media upload and organization
This commit is contained in:
26
frontend/hooks/use-media.tsx
Normal file
26
frontend/hooks/use-media.tsx
Normal file
@@ -0,0 +1,26 @@
|
||||
"use client";
|
||||
|
||||
import { useState } from "react";
|
||||
import useApiMutation, { useApi } from "./use-api";
|
||||
import IPaginatedResponse from "@/interfaces/IPaginatedResponse";
|
||||
import Media from "@/interfaces/Media";
|
||||
|
||||
interface MediaResponse {
|
||||
page: number;
|
||||
limit: number;
|
||||
totalPages: number;
|
||||
items: [];
|
||||
}
|
||||
|
||||
export default function useMedia(_limit: number = 20) {
|
||||
const [page, setPage] = useState(1);
|
||||
const [limit, setLimit] = useState(_limit);
|
||||
const res = useApi<IPaginatedResponse<Media>>(
|
||||
`/media?page=${page}&limit=${limit}`,
|
||||
);
|
||||
return {
|
||||
...res,
|
||||
setPage,
|
||||
setLimit,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user