From e1058200c09bc9afca1b1380d0512747e3704aaf Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Sat, 16 Aug 2025 16:04:02 +0200 Subject: [PATCH] Delete unused "ExtensionOptions" component --- .../extension/components/ExtensionOptions.tsx | 103 ------------------ 1 file changed, 103 deletions(-) delete mode 100644 src/features/extension/components/ExtensionOptions.tsx diff --git a/src/features/extension/components/ExtensionOptions.tsx b/src/features/extension/components/ExtensionOptions.tsx deleted file mode 100644 index 88930811..00000000 --- a/src/features/extension/components/ExtensionOptions.tsx +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (C) Contributors to the Suwayomi project - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at https://mozilla.org/MPL/2.0/. - */ - -import Box from '@mui/material/Box'; -import { useTranslation } from 'react-i18next'; -import Card from '@mui/material/Card'; -import Typography from '@mui/material/Typography'; -import IconButton from '@mui/material/IconButton'; -import SettingsIcon from '@mui/icons-material/Settings'; -import { useNavigate } from 'react-router-dom'; -import Dialog from '@mui/material/Dialog'; -import DialogTitle from '@mui/material/DialogTitle'; -import DialogContent from '@mui/material/DialogContent'; -import { useMemo } from 'react'; -import { requestManager } from '@/lib/requests/RequestManager.ts'; -import { defaultPromiseErrorHandler } from '@/lib/DefaultPromiseErrorHandler.ts'; -import { LoadingPlaceholder } from '@/base/components/feedback/LoadingPlaceholder'; -import { EmptyViewAbsoluteCentered } from '@/base/components/feedback/EmptyViewAbsoluteCentered'; -import { getErrorMessage } from '@/lib/HelperFunctions'; -import { CustomTooltip } from '@/base/components/CustomTooltip.tsx'; -import { AppRoutes } from '@/base/AppRoute.constants.ts'; -import { translateExtensionLanguage } from '@/features/extension/Extensions.utils'; -import { StyledGroupItemWrapper } from '@/base/components/virtuoso/StyledGroupItemWrapper.tsx'; -import { TExtension } from '@/features/extension/Extensions.types.ts'; -import { Sources } from '@/features/source/services/Sources.ts'; -import { ListCardContent } from '@/base/components/lists/cards/ListCardContent.tsx'; - -interface IExtensionOptions { - extensionId: TExtension['pkgName'] | undefined; - closeDialog: () => void; -} - -export function ExtensionOptions({ extensionId, closeDialog }: IExtensionOptions) { - const { t } = useTranslation(); - const navigate = useNavigate(); - - const { - data, - loading: isLoading, - error, - refetch, - } = requestManager.useGetSourceList({ notifyOnNetworkStatusChange: true }); - - if (error) { - return ; - } - - const relevantSources = useMemo(() => { - if (!extensionId) return []; - - return data?.sources.nodes.filter((source) => source.extension.pkgName === extensionId); - }, [data?.sources.nodes, extensionId]); - - return ( - - {t('extension.settings.dialog.title')} - - {isLoading && } - {error && ( - refetch().catch(defaultPromiseErrorHandler('ExtensionOptions::refetch'))} - /> - )} - {!isLoading && !error && ( - - {relevantSources?.map((source) => ( - - - - - {translateExtensionLanguage(Sources.getLanguage(source))} - - {source.isConfigurable && ( - - - navigate( - AppRoutes.sources.childRoutes.configure.path(source.id), - ) - } - color="inherit" - > - - - - )} - - - - ))} - - )} - - - ); -}