mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-06 16:03:52 +00:00
31d47ed1e5
* refactor: WS * refactor refetch extract refetch keys to package/types auto invalidata all keys use refetch keys for project data no need for constant update of info, just fetch when looking at it split refetch and query keys rename types * refactor viewSettings * fixup! refactor: WS * rearange files and make types for api calls * cleanup viewsettings * switch exhaustiveCheck * combine send socket function * exhaustive check * rename type to tag * fixup! fixup! refactor: WS * remove custom etag solution * get errors from socket * lint * small change --------- Co-authored-by: Carlos Valente <carlosvalente@pm.me>
27 lines
957 B
TypeScript
27 lines
957 B
TypeScript
import { QueryClient } from '@tanstack/react-query';
|
|
import { MILLIS_PER_MINUTE } from 'ontime-utils';
|
|
|
|
import { isOntimeCloud } from '../externals';
|
|
|
|
export const ontimeQueryClient = new QueryClient({
|
|
defaultOptions: {
|
|
queries: {
|
|
gcTime: 10 * MILLIS_PER_MINUTE,
|
|
// staleTime: MILLIS_PER_HOUR, //TODO: when all routes have implemented refetch signal from server, we can the assume that the data is not stale until we get the signal
|
|
networkMode: 'always',
|
|
refetchOnWindowFocus: false,
|
|
retry: 5,
|
|
retryDelay: (attempt) => attempt * 2500,
|
|
},
|
|
mutations: {
|
|
/**
|
|
* React Query detects whether the client is online
|
|
* However, web access is not required for the clients when deployed locally
|
|
* - use 'always' for clients that may be online
|
|
* - use 'online' for clients that are connected to the cloud
|
|
*/
|
|
networkMode: isOntimeCloud ? 'online' : 'always',
|
|
},
|
|
},
|
|
});
|