2
0
Files
bot/apps/builder/services/results.ts

55 lines
1.2 KiB
TypeScript
Raw Normal View History

2021-12-30 10:24:16 +01:00
import { Result } from 'bot-engine'
import useSWR from 'swr'
2022-01-04 09:15:33 +01:00
import { fetcher, sendRequest } from './utils'
2021-12-30 10:24:16 +01:00
import { stringify } from 'qs'
import { Answer } from 'db'
export const useResults = ({
lastResultId,
typebotId,
onError,
}: {
lastResultId?: string
typebotId: string
onError: (error: Error) => void
}) => {
const params = stringify({
lastResultId,
})
const { data, error, mutate } = useSWR<
{ results: (Result & { answers: Answer[] })[] },
Error
>(`/api/typebots/${typebotId}/results?${params}`, fetcher)
if (error) onError(error)
return {
results: data?.results,
isLoading: !error && !data,
mutate,
}
}
2022-01-04 09:15:33 +01:00
export const deleteResults = async (typebotId: string, ids: string[]) => {
const params = stringify(
{
ids,
},
{ indices: false }
)
return sendRequest({
url: `/api/typebots/${typebotId}/results?${params}`,
method: 'DELETE',
})
}
2021-12-30 10:24:16 +01:00
export const parseDateToReadable = (dateStr: string): string => {
const date = new Date(dateStr)
return (
date.toDateString().split(' ').slice(1, 3).join(' ') +
', ' +
date.toLocaleTimeString([], {
hour: '2-digit',
minute: '2-digit',
})
)
}