-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathuse-access-code.ts
More file actions
28 lines (24 loc) · 935 Bytes
/
use-access-code.ts
File metadata and controls
28 lines (24 loc) · 935 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import type {
AccessCodesGetParameters,
SeamHttpApiError,
} from '@seamapi/http/connect'
import type { AccessCode } from '@seamapi/types/connect'
import { useQuery } from '@tanstack/react-query'
import { useSeamClient } from 'lib/seam/use-seam-client.js'
import type { UseSeamQueryResultLegacy } from 'lib/seam/use-seam-query-result.js'
export type UseAccessCodeParams = AccessCodesGetParameters
export type UseAccessCodeData = AccessCode | null
export function useAccessCode(
params: UseAccessCodeParams
): UseSeamQueryResultLegacy<'accessCode', UseAccessCodeData> {
const { client } = useSeamClient()
const { data, ...rest } = useQuery<UseAccessCodeData, SeamHttpApiError>({
enabled: client != null,
queryKey: ['access_codes', 'get', params],
queryFn: async () => {
if (client == null) return null
return await client.accessCodes.get(params)
},
})
return { ...rest, accessCode: data }
}