From 33575c551ae081cab27eee2d7aeeacb4410430fe Mon Sep 17 00:00:00 2001 From: Carlos Valente <34649812+cpvalente@users.noreply.github.com> Date: Tue, 19 Dec 2023 10:03:25 +0100 Subject: [PATCH] refactor: improve typing on transform (#626) * refactor: improve typing on transform * chore: use placeholder for data errors --- apps/client/src/common/hooks-query/useOscSettings.ts | 11 +++++------ .../modals/integration-modal/osc/OscSettings.tsx | 3 --- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/apps/client/src/common/hooks-query/useOscSettings.ts b/apps/client/src/common/hooks-query/useOscSettings.ts index 09e84f0da..703a64edf 100644 --- a/apps/client/src/common/hooks-query/useOscSettings.ts +++ b/apps/client/src/common/hooks-query/useOscSettings.ts @@ -1,7 +1,4 @@ -// eslint-disable-next-line @typescript-eslint/ban-ts-comment -//@ts-nocheck -- working on it import { useMutation, useQuery } from '@tanstack/react-query'; -import { OSCSettings } from 'ontime-types'; import { queryRefetchIntervalSlow } from '../../ontimeConfig'; import { OSC_SETTINGS } from '../api/apiConstants'; @@ -13,7 +10,10 @@ import { ontimeQueryClient } from '../queryClient'; export default function useOscSettings() { const { data, status, isFetching, isError, refetch } = useQuery({ queryKey: OSC_SETTINGS, - queryFn: getOSC, + queryFn: async () => { + const oscData = await getOSC(); + return { ...oscData, portIn: String(oscData.portIn), portOut: String(oscData.portOut) }; + }, placeholderData: oscPlaceholderSettings, retry: 5, retryDelay: (attempt: number) => attempt * 2500, @@ -21,8 +21,7 @@ export default function useOscSettings() { networkMode: 'always', }); - // we need to jump through some hoops because of the type op port - return { data: data! as unknown as OSCSettings, status, isFetching, isError, refetch }; + return { data: data ?? oscPlaceholderSettings, status, isFetching, isError, refetch }; } export function useOscSettingsMutation() { diff --git a/apps/client/src/features/modals/integration-modal/osc/OscSettings.tsx b/apps/client/src/features/modals/integration-modal/osc/OscSettings.tsx index f454a3e77..220b77b31 100644 --- a/apps/client/src/features/modals/integration-modal/osc/OscSettings.tsx +++ b/apps/client/src/features/modals/integration-modal/osc/OscSettings.tsx @@ -1,5 +1,3 @@ -// eslint-disable-next-line @typescript-eslint/ban-ts-comment -//@ts-nocheck -- working on it import { useEffect } from 'react'; import { useForm } from 'react-hook-form'; import { FormControl, Input, Switch } from '@chakra-ui/react'; @@ -59,7 +57,6 @@ export default function OscSettings() { }; const resetForm = () => { - // @ts-expect-error -- we know the types dont match reset(data); };