Files
omnivore/packages/web/lib/networking/useCreateExport.tsx
Jackson Harper 8e8bae9e1a Log state changes
2024-11-02 14:48:51 +08:00

39 lines
885 B
TypeScript

import { useQuery, useQueryClient } from '@tanstack/react-query'
import { apiFetcher } from './networkHelpers'
import { TaskState } from './mutations/exportToIntegrationMutation'
type Export = {
id: string
state: TaskState
createdAt: string
signedUrl: string
}
type ExportsResponse = {
exports: Export[]
}
export const createExport = async (): Promise<boolean> => {
try {
const response = await apiFetcher(`/api/export/`)
console.log('RESPONSE: ', response)
if ('error' in (response as any)) {
return false
}
return true
} catch (error) {
console.log('error scheduling export. ')
return false
}
}
export function useGetExports() {
return useQuery({
queryKey: ['exports'],
queryFn: async () => {
const response = (await apiFetcher(`/api/export/list`)) as ExportsResponse
return response.exports
},
})
}