1
0
mirror of https://github.com/tooot-app/app synced 2025-06-05 22:19:13 +02:00
Files
tooot/src/utils/queryHooks/status.ts
xmflsct 1ea6aff328 619 restructure local storage (#628)
* To MMKV migration working

* POC migrated font size settings

* Moved settings to mmkv

* Fix typos

* Migrated contexts slice

* Migrated app slice

* POC instance emoji update

* Migrated drafts

* Migrated simple instance properties

* All migrated!

* Re-structure files

* Tolerant of undefined settings

* Can properly logging in and out including empty state
2022-12-28 23:41:36 +01:00

28 lines
777 B
TypeScript

import { QueryFunctionContext, useQuery, UseQueryOptions } from '@tanstack/react-query'
import apiInstance from '@utils/api/instance'
import { AxiosError } from 'axios'
export type QueryKeyStatus = ['Status', { id: Mastodon.Status['id'] }]
const queryFunction = async ({ queryKey }: QueryFunctionContext<QueryKeyStatus>) => {
const { id } = queryKey[1]
const res = await apiInstance<Mastodon.Status>({
method: 'get',
url: `statuses/${id}`
})
return res.body
}
const useStatusQuery = ({
options,
...queryKeyParams
}: QueryKeyStatus[1] & {
options?: UseQueryOptions<Mastodon.Status, AxiosError>
}) => {
const queryKey: QueryKeyStatus = ['Status', { ...queryKeyParams }]
return useQuery(queryKey, queryFunction, options)
}
export { useStatusQuery }