🐛 Fix pull request issues

This commit is contained in:
Meier Lukas
2023-06-10 18:19:06 +02:00
parent bef6c56aeb
commit d704dfa8b6
3 changed files with 3 additions and 62 deletions

View File

@@ -1,7 +1,6 @@
import axios from 'axios';
import { create } from 'zustand'; import { create } from 'zustand';
import { trcpProxyClient } from '~/utils/api';
import { ConfigType } from '../types/config'; import { ConfigType } from '../types/config';
import { api, trcpProxyClient } from '~/utils/api';
export const useConfigStore = create<UseConfigStoreType>((set, get) => ({ export const useConfigStore = create<UseConfigStoreType>((set, get) => ({
configs: [], configs: [],

View File

@@ -1,57 +0,0 @@
import { showNotification } from '@mantine/notifications';
import { IconCheck, IconX } from '@tabler/icons-react';
import { useMutation } from '@tanstack/react-query';
import { useTranslation } from 'next-i18next';
import { useConfigContext } from '../../../config/provider';
import { ConfigType } from '../../../types/config';
import { queryClient } from '../../server/configurations/tanstack/queryClient.tool';
export const useCopyConfigMutation = (configName: string) => {
const { config } = useConfigContext();
const { t } = useTranslation(['settings/general/config-changer']);
return useMutation({
mutationKey: ['configs/copy', { configName }],
mutationFn: () => fetchCopy(configName, config),
onSuccess() {
showNotification({
title: t('modal.copy.events.configCopied.title'),
icon: <IconCheck />,
color: 'green',
autoClose: 1500,
radius: 'md',
message: t('modal.copy.events.configCopied.message', { configName }),
});
// Invalidate a query to fetch new config
queryClient.invalidateQueries(['config/get-all']);
},
onError() {
showNotification({
title: t('modal.events.configNotCopied.title'),
icon: <IconX />,
color: 'red',
autoClose: 1500,
radius: 'md',
message: t('modal.events.configNotCopied.message', { configName }),
});
},
});
};
const fetchCopy = async (configName: string, config: ConfigType | undefined) => {
if (!config) {
throw new Error('config is not defiend');
}
const copiedConfig = config;
copiedConfig.configProperties.name = configName;
const response = await fetch(`/api/configs/${configName}`, {
method: 'PUT',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(config),
});
return response.json();
};

View File

@@ -13,14 +13,13 @@ import {
} from '@mantine/core'; } from '@mantine/core';
import { useElementSize } from '@mantine/hooks'; import { useElementSize } from '@mantine/hooks';
import { IconAlertCircle } from '@tabler/icons-react'; import { IconAlertCircle } from '@tabler/icons-react';
import { AxiosError } from 'axios';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
import duration from 'dayjs/plugin/duration'; import duration from 'dayjs/plugin/duration';
import { useTranslation } from 'next-i18next'; import { useTranslation } from 'next-i18next';
import { FunctionComponent, useState } from 'react'; import { FunctionComponent, useState } from 'react';
import { useGetUsenetHistory } from '../../hooks/widgets/dashDot/api'; import { useGetUsenetHistory } from '../../hooks/widgets/dashDot/api';
import { humanFileSize } from '../../tools/humanFileSize';
import { parseDuration } from '../../tools/client/parseDuration'; import { parseDuration } from '../../tools/client/parseDuration';
import { humanFileSize } from '../../tools/humanFileSize';
dayjs.extend(duration); dayjs.extend(duration);
@@ -65,7 +64,7 @@ export const UsenetHistoryList: FunctionComponent<UsenetHistoryListProps> = ({ a
> >
{t('modules/usenet:history.error.message')} {t('modules/usenet:history.error.message')}
<Code mt="sm" block> <Code mt="sm" block>
{(error as AxiosError)?.response?.data as string} {error.message}
</Code> </Code>
</Alert> </Alert>
</Group> </Group>