refactor: validation

This commit is contained in:
Carlos Valente
2023-12-01 13:08:05 +01:00
parent f720c56345
commit efcd6494be
20 changed files with 263 additions and 172 deletions
+5 -5
View File
@@ -3,12 +3,12 @@ import {
Alias,
DatabaseModel,
GetInfo,
HTTPSettings,
HttpSettings,
OntimeRundown,
OSCSettings,
OscSubscription,
ProjectData,
Settings,
Subscription,
UserFields,
ViewSettings,
} from 'ontime-types';
@@ -109,7 +109,7 @@ export async function getOSC(): Promise<OSCSettings> {
* @description HTTP request to retrieve http settings
* @return {Promise}
*/
export async function getHTTP(): Promise<HTTPSettings> {
export async function getHTTP(): Promise<HttpSettings> {
const res = await axios.get(`${ontimeURL}/http`);
return res.data;
}
@@ -118,7 +118,7 @@ export async function getHTTP(): Promise<HTTPSettings> {
* @description HTTP request to mutate http settings
* @return {Promise}
*/
export async function postHTTP(data: HTTPSettings) {
export async function postHTTP(data: HttpSettings) {
return axios.post(`${ontimeURL}/http`, data);
}
@@ -134,7 +134,7 @@ export async function postOSC(data: OSCSettings) {
* @description HTTP request to mutate osc subscriptions
* @return {Promise}
*/
export async function postOscSubscriptions(data: Subscription) {
export async function postOscSubscriptions(data: OscSubscription) {
return axios.post(`${ontimeURL}/osc-subscriptions`, data);
}
@@ -1,5 +1,5 @@
import { useMutation, useQuery } from '@tanstack/react-query';
import { HTTPSettings } from 'ontime-types';
import { HttpSettings } from 'ontime-types';
import { queryRefetchIntervalSlow } from '../../ontimeConfig';
import { HTTP_SETTINGS } from '../api/apiConstants';
@@ -20,7 +20,7 @@ export function useHttpSettings() {
});
// we need to jump through some hoops because of the type op port
return { data: data! as unknown as HTTPSettings, status, isFetching, isError, refetch };
return { data: data! as unknown as HttpSettings, status, isFetching, isError, refetch };
}
export function usePostHttpSettings() {
+2 -2
View File
@@ -1,6 +1,6 @@
import { HTTPSettings } from 'ontime-types';
import { HttpSettings } from 'ontime-types';
export const httpPlaceholder: HTTPSettings = {
export const httpPlaceholder: HttpSettings = {
enabledOut: false,
subscriptions: {
onLoad: [],
@@ -1,7 +1,7 @@
import { useEffect, useState } from 'react';
import { useForm } from 'react-hook-form';
import { Switch } from '@chakra-ui/react';
import type { HTTPSettings } from 'ontime-types';
import type { HttpSettings } from 'ontime-types';
import { TimerLifeCycle } from 'ontime-types';
import { useHttpSettings, usePostHttpSettings } from '../../../../common/hooks-query/useHttpSettings';
@@ -24,7 +24,7 @@ export default function HttpIntegration() {
register,
reset,
formState: { isSubmitting, isDirty, isValid },
} = useForm<HTTPSettings>({
} = useForm<HttpSettings>({
mode: 'onBlur',
defaultValues: data,
values: data,
@@ -45,9 +45,9 @@ export default function HttpIntegration() {
reset(data);
};
const onSubmit = async (values: HTTPSettings) => {
const onSubmit = async (values: HttpSettings) => {
try {
const newSettings: HTTPSettings = {
const newSettings: HttpSettings = {
enabledOut: Boolean(values.enabledOut),
subscriptions: {
onLoad: values.subscriptions.onLoad ?? [],
@@ -59,8 +59,6 @@ export default function HttpIntegration() {
},
};
console.log('debug will submit', newSettings);
await mutateAsync(newSettings);
} catch (error) {
emitError(`Error setting HTML: ${error}`);
@@ -2,7 +2,7 @@ import { Control, useFieldArray, UseFormRegister } from 'react-hook-form';
import { Button, IconButton, Input, Switch } from '@chakra-ui/react';
import { FiChevronUp } from '@react-icons/all-files/fi/FiChevronUp';
import { IoRemove } from '@react-icons/all-files/io5/IoRemove';
import { HTTPSettings, TimerLifeCycle } from 'ontime-types';
import { HttpSettings, TimerLifeCycle } from 'ontime-types';
import { useEmitLog } from '../../../../common/stores/logger';
import { startsWithHttp } from '../../../../common/utils/regex';
@@ -16,8 +16,8 @@ interface SubscriptionRowProps {
subtitle: string;
visible: boolean;
setShowSection: (cycle: TimerLifeCycle) => void;
register: UseFormRegister<HTTPSettings>;
control: Control<HTTPSettings>;
register: UseFormRegister<HttpSettings>;
control: Control<HttpSettings>;
placeholder: string;
}