2
0
Files
bot/apps/builder/services/user/customDomains.ts

48 lines
1.1 KiB
TypeScript
Raw Normal View History

2022-02-18 14:57:10 +01:00
import { CustomDomain } from 'db'
import { Credentials } from 'models'
import useSWR from 'swr'
import { sendRequest } from 'utils'
2022-02-24 11:13:19 +01:00
import { fetcher } from '../utils'
2022-02-18 14:57:10 +01:00
export const useCustomDomains = ({
userId,
onError,
}: {
userId?: string
onError: (error: Error) => void
}) => {
const { data, error, mutate } = useSWR<
{ customDomains: Omit<CustomDomain, 'createdAt'>[] },
2022-02-18 14:57:10 +01:00
Error
>(userId ? `/api/users/${userId}/customDomains` : null, fetcher)
if (error) onError(error)
return {
customDomains: data?.customDomains,
isLoading: !error && !data,
mutate,
}
}
export const createCustomDomain = async (
userId: string,
customDomain: Omit<CustomDomain, 'ownerId' | 'createdAt'>
2022-02-18 14:57:10 +01:00
) =>
sendRequest<{
credentials: Credentials
}>({
url: `/api/users/${userId}/customDomains`,
method: 'POST',
body: customDomain,
})
export const deleteCustomDomain = async (
userId: string,
customDomain: string
) =>
sendRequest<{
credentials: Credentials
}>({
url: `/api/users/${userId}/customDomains/${customDomain}`,
method: 'DELETE',
})