A decentralized music tracking and discovery platform built on AT Protocol 馃幍
at fix/spotify 43 lines 1.0 kB view raw
1import { useQuery } from "@tanstack/react-query"; 2import { client } from "../api"; 3import { getFile, getFiles, getTemporaryLink } from "../api/dropbox"; 4 5export const useFilesQuery = (id?: string) => 6 useQuery({ 7 queryKey: ["dropbox", "files", id], 8 queryFn: () => getFiles(id), 9 }); 10 11export const useFileQuery = (id: string) => 12 useQuery({ 13 queryKey: ["dropbox", "file", id], 14 queryFn: () => getFile(id), 15 }); 16 17export const useTemporaryLinkQuery = (id: string) => 18 useQuery({ 19 queryKey: ["dropbox", "temporary-link", id], 20 queryFn: () => getTemporaryLink(id), 21 }); 22 23function useDropbox() { 24 const getTemporaryLink = async (id: string) => { 25 const response = await client.get<{ 26 link: string; 27 }>(`/dropbox/temporary-link`, { 28 headers: { 29 Authorization: `Bearer ${localStorage.getItem("token")}`, 30 }, 31 params: { 32 path: id, 33 }, 34 }); 35 return response.data; 36 }; 37 38 return { 39 getTemporaryLink, 40 }; 41} 42 43export default useDropbox;