import { queryOptions } from '@tanstack/react-query'; import { api } from '/@/renderer/api'; import { queryKeys } from '/@/renderer/api/query-keys'; import { QueryHookArgs } from '/@/renderer/lib/react-query'; import { getServerById } from '/@/renderer/store'; import { GenreListQuery } from '/@/shared/types/domain-types'; export const genresQueries = { list: (args: QueryHookArgs) => { return queryOptions({ gcTime: 1000 * 5, queryFn: ({ signal }) => { const server = getServerById(args.serverId); if (!server) throw new Error('Server not found'); return api.controller.getGenreList({ apiClientProps: { server, signal }, query: args.query, }); }, queryKey: queryKeys.genres.list(args.serverId || '', args.query), ...args.options, }); }, };