mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-17 21:24:11 +00:00
refactor: change network mode defaults
This commit is contained in:
committed by
Carlos Valente
parent
21353b5b00
commit
df55b0bf8d
@@ -83,10 +83,24 @@ export async function requestEventSwap(data: SwapEntry): Promise<AxiosResponse<M
|
|||||||
/**
|
/**
|
||||||
* HTTP request to request application of delay
|
* HTTP request to request application of delay
|
||||||
*/
|
*/
|
||||||
export async function requestApplyDelay(delayId: string): Promise<AxiosResponse<MessageResponse>> {
|
export async function requestApplyDelay(delayId: EntryId): Promise<AxiosResponse<MessageResponse>> {
|
||||||
return axios.patch(`${rundownPath}/applydelay/${delayId}`);
|
return axios.patch(`${rundownPath}/applydelay/${delayId}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* HTTP request for dissolving of a block
|
||||||
|
*/
|
||||||
|
export async function requestDissolveBlock(blockId: EntryId): Promise<AxiosResponse<MessageResponse>> {
|
||||||
|
return axios.post(`${rundownPath}/dissolve/${blockId}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* HTTP request for grouping a list of entries into a block
|
||||||
|
*/
|
||||||
|
export async function requestGroupEntries(entryIds: EntryId[]): Promise<AxiosResponse<MessageResponse>> {
|
||||||
|
return axios.post(`${rundownPath}/group`, { data: { ids: entryIds } });
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* HTTP request to delete entries
|
* HTTP request to delete entries
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -75,10 +75,7 @@ export const useEntryActions = () => {
|
|||||||
const _addEntryMutation = useMutation({
|
const _addEntryMutation = useMutation({
|
||||||
// TODO(v4): optimistic create entry
|
// TODO(v4): optimistic create entry
|
||||||
mutationFn: postAddEntry,
|
mutationFn: postAddEntry,
|
||||||
onSettled: () => {
|
onSettled: () => queryClient.invalidateQueries({ queryKey: RUNDOWN }),
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
|
||||||
},
|
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -207,7 +204,6 @@ export const useEntryActions = () => {
|
|||||||
onSettled: async () => {
|
onSettled: async () => {
|
||||||
await queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
await queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -372,7 +368,6 @@ export const useEntryActions = () => {
|
|||||||
onError: (_error, _newEvent, context) => {
|
onError: (_error, _newEvent, context) => {
|
||||||
queryClient.setQueryData<Rundown>(RUNDOWN, context?.previousRundown);
|
queryClient.setQueryData<Rundown>(RUNDOWN, context?.previousRundown);
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const batchUpdateEvents = useCallback(
|
const batchUpdateEvents = useCallback(
|
||||||
@@ -427,7 +422,6 @@ export const useEntryActions = () => {
|
|||||||
onSettled: () => {
|
onSettled: () => {
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -481,7 +475,6 @@ export const useEntryActions = () => {
|
|||||||
onSettled: () => {
|
onSettled: () => {
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -505,14 +498,13 @@ export const useEntryActions = () => {
|
|||||||
onSettled: () => {
|
onSettled: () => {
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Applies a given delay
|
* Applies a given delay
|
||||||
*/
|
*/
|
||||||
const applyDelay = useCallback(
|
const applyDelay = useCallback(
|
||||||
async (delayEventId: string) => {
|
async (delayEventId: EntryId) => {
|
||||||
try {
|
try {
|
||||||
await _applyDelayMutation.mutateAsync(delayEventId);
|
await _applyDelayMutation.mutateAsync(delayEventId);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -562,7 +554,6 @@ export const useEntryActions = () => {
|
|||||||
onSettled: () => {
|
onSettled: () => {
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -634,7 +625,6 @@ export const useEntryActions = () => {
|
|||||||
onSettled: () => {
|
onSettled: () => {
|
||||||
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
queryClient.invalidateQueries({ queryKey: RUNDOWN });
|
||||||
},
|
},
|
||||||
networkMode: 'always',
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,9 +1,20 @@
|
|||||||
import { QueryClient } from '@tanstack/react-query';
|
import { QueryClient } from '@tanstack/react-query';
|
||||||
|
|
||||||
|
import { isOntimeCloud } from '../externals';
|
||||||
|
|
||||||
export const ontimeQueryClient = new QueryClient({
|
export const ontimeQueryClient = new QueryClient({
|
||||||
defaultOptions: {
|
defaultOptions: {
|
||||||
queries: {
|
queries: {
|
||||||
gcTime: 1000 * 60 * 10, // 10 min
|
gcTime: 1000 * 60 * 10, // 10 min
|
||||||
},
|
},
|
||||||
|
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',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user