From b82c945b0560606db6af5f0454f49358d03a268d Mon Sep 17 00:00:00 2001 From: Pas <74743263+Pasithea0@users.noreply.github.com> Date: Wed, 24 Dec 2025 10:51:31 -0700 Subject: [PATCH] remove DisabledSources and DisableEmbeds since it doesnt work --- src/backend/accounts/settings.ts | 4 --- .../atoms/settings/SourceSelectingView.tsx | 5 +--- src/hooks/auth/useAuthData.ts | 12 -------- src/hooks/auth/useMigration.ts | 8 ------ src/hooks/useEmbedOrderState.ts | 28 +++---------------- src/hooks/useProviderScrape.tsx | 18 +++--------- src/hooks/useSettingsState.ts | 28 ------------------- src/pages/Settings.tsx | 12 -------- src/pages/admin/AdminPage.tsx | 2 -- src/pages/migration/MigrationUpload.tsx | 10 ------- src/pages/parts/admin/EmbedOrderPart.tsx | 20 ++----------- src/pages/parts/auth/VerifyPassphrasePart.tsx | 2 -- src/pages/parts/player/SourceSelectPart.tsx | 5 +--- src/pages/parts/settings/PreferencesPart.tsx | 17 ++--------- src/stores/preferences/index.tsx | 16 ----------- 15 files changed, 16 insertions(+), 171 deletions(-) diff --git a/src/backend/accounts/settings.ts b/src/backend/accounts/settings.ts index bac9b02c..83993b0f 100644 --- a/src/backend/accounts/settings.ts +++ b/src/backend/accounts/settings.ts @@ -26,10 +26,8 @@ export interface SettingsInput { enableSourceOrder?: boolean; lastSuccessfulSource?: string | null; enableLastSuccessfulSource?: boolean; - disabledSources?: string[] | null; embedOrder?: string[] | null; enableEmbedOrder?: boolean; - disabledEmbeds?: string[] | null; proxyTmdb?: boolean; enableLowPerformanceMode?: boolean; enableNativeSubtitles?: boolean; @@ -63,10 +61,8 @@ export interface SettingsResponse { enableSourceOrder?: boolean; lastSuccessfulSource?: string | null; enableLastSuccessfulSource?: boolean; - disabledSources?: string[] | null; embedOrder?: string[] | null; enableEmbedOrder?: boolean; - disabledEmbeds?: string[] | null; proxyTmdb?: boolean; enableLowPerformanceMode?: boolean; enableNativeSubtitles?: boolean; diff --git a/src/components/player/atoms/settings/SourceSelectingView.tsx b/src/components/player/atoms/settings/SourceSelectingView.tsx index 6822b9f0..5e9938fb 100644 --- a/src/components/player/atoms/settings/SourceSelectingView.tsx +++ b/src/components/player/atoms/settings/SourceSelectingView.tsx @@ -164,14 +164,12 @@ export function SourceSelectionView({ const enableLastSuccessfulSource = usePreferencesStore( (s) => s.enableLastSuccessfulSource, ); - const disabledSources = usePreferencesStore((s) => s.disabledSources); const sources = useMemo(() => { if (!metaType) return []; const allSources = getCachedMetadata() .filter((v) => v.type === "source") - .filter((v) => v.mediaTypes?.includes(metaType)) - .filter((v) => !(disabledSources || []).includes(v.id)); + .filter((v) => v.mediaTypes?.includes(metaType)); if (!enableSourceOrder || preferredSourceOrder.length === 0) { // Even without custom source order, prioritize last successful source if enabled @@ -219,7 +217,6 @@ export function SourceSelectionView({ metaType, preferredSourceOrder, enableSourceOrder, - disabledSources, lastSuccessfulSource, enableLastSuccessfulSource, ]); diff --git a/src/hooks/auth/useAuthData.ts b/src/hooks/auth/useAuthData.ts index b8325f83..8482ead1 100644 --- a/src/hooks/auth/useAuthData.ts +++ b/src/hooks/auth/useAuthData.ts @@ -65,10 +65,8 @@ export function useAuthData() { const setEnableLastSuccessfulSource = usePreferencesStore( (s) => s.setEnableLastSuccessfulSource, ); - const setDisabledSources = usePreferencesStore((s) => s.setDisabledSources); const setEmbedOrder = usePreferencesStore((s) => s.setEmbedOrder); const setEnableEmbedOrder = usePreferencesStore((s) => s.setEnableEmbedOrder); - const setDisabledEmbeds = usePreferencesStore((s) => s.setDisabledEmbeds); const setProxyTmdb = usePreferencesStore((s) => s.setProxyTmdb); @@ -218,10 +216,6 @@ export function useAuthData() { setEnableLastSuccessfulSource(settings.enableLastSuccessfulSource); } - if (settings.disabledSources !== undefined) { - setDisabledSources(settings.disabledSources ?? []); - } - if (settings.embedOrder !== undefined) { setEmbedOrder(settings.embedOrder ?? []); } @@ -230,10 +224,6 @@ export function useAuthData() { setEnableEmbedOrder(settings.enableEmbedOrder); } - if (settings.disabledEmbeds !== undefined) { - setDisabledEmbeds(settings.disabledEmbeds ?? []); - } - if (settings.proxyTmdb !== undefined) { setProxyTmdb(settings.proxyTmdb); } @@ -310,10 +300,8 @@ export function useAuthData() { setEnableSourceOrder, setLastSuccessfulSource, setEnableLastSuccessfulSource, - setDisabledSources, setEmbedOrder, setEnableEmbedOrder, - setDisabledEmbeds, setProxyTmdb, setFebboxKey, setdebridToken, diff --git a/src/hooks/auth/useMigration.ts b/src/hooks/auth/useMigration.ts index ca9efbb4..fb829ec9 100644 --- a/src/hooks/auth/useMigration.ts +++ b/src/hooks/auth/useMigration.ts @@ -131,19 +131,11 @@ export function useMigration() { enableSourceOrder: preferences.enableSourceOrder, lastSuccessfulSource: preferences.lastSuccessfulSource, enableLastSuccessfulSource: preferences.enableLastSuccessfulSource, - disabledSources: - preferences.disabledSources.length > 0 - ? preferences.disabledSources - : undefined, embedOrder: preferences.embedOrder.length > 0 ? preferences.embedOrder : undefined, enableEmbedOrder: preferences.enableEmbedOrder, - disabledEmbeds: - preferences.disabledEmbeds.length > 0 - ? preferences.disabledEmbeds - : undefined, proxyTmdb: preferences.proxyTmdb, enableLowPerformanceMode: preferences.enableLowPerformanceMode, enableNativeSubtitles: preferences.enableNativeSubtitles, diff --git a/src/hooks/useEmbedOrderState.ts b/src/hooks/useEmbedOrderState.ts index 11897f03..ffe78d33 100644 --- a/src/hooks/useEmbedOrderState.ts +++ b/src/hooks/useEmbedOrderState.ts @@ -12,42 +12,29 @@ export function useEmbedOrderState() { // Get current values from store const embedOrder = usePreferencesStore((s) => s.embedOrder); const enableEmbedOrder = usePreferencesStore((s) => s.enableEmbedOrder); - const disabledEmbeds = usePreferencesStore((s) => s.disabledEmbeds); // Local state for tracking changes const [localEmbedOrder, setLocalEmbedOrder] = useState(embedOrder); const [localEnableEmbedOrder, setLocalEnableEmbedOrder] = useState(enableEmbedOrder); - const [localDisabledEmbeds, setLocalDisabledEmbeds] = - useState(disabledEmbeds); // Store setters const setEmbedOrder = usePreferencesStore((s) => s.setEmbedOrder); const setEnableEmbedOrder = usePreferencesStore((s) => s.setEnableEmbedOrder); - const setDisabledEmbeds = usePreferencesStore((s) => s.setDisabledEmbeds); // Check if any changes have been made const hasChanges = useMemo(() => { return ( JSON.stringify(localEmbedOrder) !== JSON.stringify(embedOrder) || - localEnableEmbedOrder !== enableEmbedOrder || - JSON.stringify(localDisabledEmbeds) !== JSON.stringify(disabledEmbeds) + localEnableEmbedOrder !== enableEmbedOrder ); - }, [ - localEmbedOrder, - embedOrder, - localEnableEmbedOrder, - enableEmbedOrder, - localDisabledEmbeds, - disabledEmbeds, - ]); + }, [localEmbedOrder, embedOrder, localEnableEmbedOrder, enableEmbedOrder]); // Reset local state to match store const reset = useCallback(() => { setLocalEmbedOrder(embedOrder); setLocalEnableEmbedOrder(enableEmbedOrder); - setLocalDisabledEmbeds(disabledEmbeds); - }, [embedOrder, enableEmbedOrder, disabledEmbeds]); + }, [embedOrder, enableEmbedOrder]); // Save changes to backend and update store const saveChanges = useCallback(async () => { @@ -57,13 +44,11 @@ export function useEmbedOrderState() { await updateSettings(backendUrl, account, { embedOrder: localEmbedOrder, enableEmbedOrder: localEnableEmbedOrder, - disabledEmbeds: localDisabledEmbeds, }); // Update the store with the new values setEmbedOrder(localEmbedOrder); setEnableEmbedOrder(localEnableEmbedOrder); - setDisabledEmbeds(localDisabledEmbeds); } catch (error) { console.error("Failed to save embed order settings:", error); throw error; @@ -73,29 +58,24 @@ export function useEmbedOrderState() { backendUrl, localEmbedOrder, localEnableEmbedOrder, - localDisabledEmbeds, setEmbedOrder, setEnableEmbedOrder, - setDisabledEmbeds, ]); // Update local state when store changes useEffect(() => { setLocalEmbedOrder(embedOrder); setLocalEnableEmbedOrder(enableEmbedOrder); - setLocalDisabledEmbeds(disabledEmbeds); - }, [embedOrder, enableEmbedOrder, disabledEmbeds]); + }, [embedOrder, enableEmbedOrder]); return { // Current values embedOrder: localEmbedOrder, enableEmbedOrder: localEnableEmbedOrder, - disabledEmbeds: localDisabledEmbeds, // Setters setEmbedOrder: setLocalEmbedOrder, setEnableEmbedOrder: setLocalEnableEmbedOrder, - setDisabledEmbeds: setLocalDisabledEmbeds, // State management hasChanges, diff --git a/src/hooks/useProviderScrape.tsx b/src/hooks/useProviderScrape.tsx index 99e2e4bd..0ef0ecea 100644 --- a/src/hooks/useProviderScrape.tsx +++ b/src/hooks/useProviderScrape.tsx @@ -163,10 +163,8 @@ export function useScrape() { const enableLastSuccessfulSource = usePreferencesStore( (s) => s.enableLastSuccessfulSource, ); - const disabledSources = usePreferencesStore((s) => s.disabledSources); const preferredEmbedOrder = usePreferencesStore((s) => s.embedOrder); const enableEmbedOrder = usePreferencesStore((s) => s.enableEmbedOrder); - const disabledEmbeds = usePreferencesStore((s) => s.disabledEmbeds); const startScraping = useCallback( async (media: ScrapeMedia, startFromSourceId?: string) => { @@ -194,13 +192,9 @@ export function useScrape() { ? playerState.failedEmbedsPerMedia[mediaKey] || {} : {}; - // Start with all available sources (filtered by disabled and failed ones) + // Start with all available sources (filtered by failed ones only) let baseSourceOrder = allSources - .filter( - (source) => - !(disabledSources || []).includes(source.id) && - !failedSources.includes(source.id), - ) + .filter((source) => !failedSources.includes(source.id)) .map((source) => source.id); // Apply custom source ordering if enabled @@ -244,12 +238,10 @@ export function useScrape() { // Collect all failed embed IDs across all sources for current media const allFailedEmbedIds = Object.values(failedEmbeds).flat(); - // Filter out disabled and failed embeds from the embed order + // Filter out failed embeds from the embed order const filteredEmbedOrder = enableEmbedOrder ? (preferredEmbedOrder || []).filter( - (id) => - !(disabledEmbeds || []).includes(id) && - !allFailedEmbedIds.includes(id), + (id) => !allFailedEmbedIds.includes(id), ) : undefined; @@ -304,10 +296,8 @@ export function useScrape() { enableSourceOrder, lastSuccessfulSource, enableLastSuccessfulSource, - disabledSources, preferredEmbedOrder, enableEmbedOrder, - disabledEmbeds, ], ); diff --git a/src/hooks/useSettingsState.ts b/src/hooks/useSettingsState.ts index 40b3ea7b..b704be17 100644 --- a/src/hooks/useSettingsState.ts +++ b/src/hooks/useSettingsState.ts @@ -64,10 +64,8 @@ export function useSettingsState( enableSourceOrder: boolean, lastSuccessfulSource: string | null, enableLastSuccessfulSource: boolean, - disabledSources: string[], embedOrder: string[], enableEmbedOrder: boolean, - disabledEmbeds: string[], proxyTmdb: boolean, enableSkipCredits: boolean, enableImageLogos: boolean, @@ -190,12 +188,6 @@ export function useSettingsState( resetEnableLastSuccessfulSource, enableLastSuccessfulSourceChanged, ] = useDerived(enableLastSuccessfulSource); - const [ - disabledSourcesState, - setDisabledSourcesState, - resetDisabledSources, - disabledSourcesChanged, - ] = useDerived(disabledSources); const [ embedOrderState, setEmbedOrderState, @@ -208,12 +200,6 @@ export function useSettingsState( resetEnableEmbedOrder, enableEmbedOrderChanged, ] = useDerived(enableEmbedOrder); - const [ - disabledEmbedsState, - setDisabledEmbedsState, - resetDisabledEmbeds, - disabledEmbedsChanged, - ] = useDerived(disabledEmbeds); const [proxyTmdbState, setProxyTmdbState, resetProxyTmdb, proxyTmdbChanged] = useDerived(proxyTmdb); const [ @@ -300,10 +286,8 @@ export function useSettingsState( resetEnableSourceOrder(); resetLastSuccessfulSource(); resetEnableLastSuccessfulSource(); - resetDisabledSources(); resetEmbedOrder(); resetEnableEmbedOrder(); - resetDisabledEmbeds(); resetProxyTmdb(); resetEnableCarouselView(); resetEnableMinimalCards(); @@ -340,10 +324,8 @@ export function useSettingsState( enableSourceOrderChanged || lastSuccessfulSourceChanged || enableLastSuccessfulSourceChanged || - disabledSourcesChanged || embedOrderChanged || enableEmbedOrderChanged || - disabledEmbedsChanged || proxyTmdbChanged || enableCarouselViewChanged || enableMinimalCardsChanged || @@ -474,11 +456,6 @@ export function useSettingsState( set: setProxyTmdbState, changed: proxyTmdbChanged, }, - disabledSources: { - state: disabledSourcesState, - set: setDisabledSourcesState, - changed: disabledSourcesChanged, - }, embedOrder: { state: embedOrderState, set: setEmbedOrderState, @@ -489,11 +466,6 @@ export function useSettingsState( set: setEnableEmbedOrderState, changed: enableEmbedOrderChanged, }, - disabledEmbeds: { - state: disabledEmbedsState, - set: setDisabledEmbedsState, - changed: disabledEmbedsChanged, - }, enableCarouselView: { state: enableCarouselViewState, set: setEnableCarouselViewState, diff --git a/src/pages/Settings.tsx b/src/pages/Settings.tsx index 96d24cf0..c411b894 100644 --- a/src/pages/Settings.tsx +++ b/src/pages/Settings.tsx @@ -413,9 +413,6 @@ export function SettingsPage() { (s) => s.setEnableLastSuccessfulSource, ); - const disabledSources = usePreferencesStore((s) => s.disabledSources); - const setDisabledSources = usePreferencesStore((s) => s.setDisabledSources); - // These are commented because the EmbedOrderPart is on the admin page and not on the settings page. const embedOrder = usePreferencesStore((s) => s.embedOrder); // const setEmbedOrder = usePreferencesStore((s) => s.setEmbedOrder); @@ -423,7 +420,6 @@ export function SettingsPage() { const enableEmbedOrder = usePreferencesStore((s) => s.enableEmbedOrder); // const setEnableEmbedOrder = usePreferencesStore((s) => s.setEnableEmbedOrder); - const disabledEmbeds = usePreferencesStore((s) => s.disabledEmbeds); // const setDisabledEmbeds = usePreferencesStore((s) => s.setDisabledEmbeds); const enableDiscover = usePreferencesStore((s) => s.enableDiscover); @@ -560,10 +556,8 @@ export function SettingsPage() { enableSourceOrder, lastSuccessfulSource, enableLastSuccessfulSource, - disabledSources, embedOrder, enableEmbedOrder, - disabledEmbeds, proxyTmdb, enableSkipCredits, enableImageLogos, @@ -634,7 +628,6 @@ export function SettingsPage() { state.enableSourceOrder.changed || state.lastSuccessfulSource.changed || state.enableLastSuccessfulSource.changed || - state.disabledSources.changed || state.proxyTmdb.changed || state.enableCarouselView.changed || state.enableMinimalCards.changed || @@ -664,7 +657,6 @@ export function SettingsPage() { enableSourceOrder: state.enableSourceOrder.state, lastSuccessfulSource: state.lastSuccessfulSource.state, enableLastSuccessfulSource: state.enableLastSuccessfulSource.state, - disabledSources: state.disabledSources.state, proxyTmdb: state.proxyTmdb.state, enableCarouselView: state.enableCarouselView.state, enableMinimalCards: state.enableMinimalCards.state, @@ -713,7 +705,6 @@ export function SettingsPage() { setEnableSourceOrder(state.enableSourceOrder.state); setLastSuccessfulSource(state.lastSuccessfulSource.state); setEnableLastSuccessfulSource(state.enableLastSuccessfulSource.state); - setDisabledSources(state.disabledSources.state); setAppLanguage(state.appLanguage.state); setTheme(state.theme.state); setSubStyling(state.subtitleStyling.state); @@ -768,7 +759,6 @@ export function SettingsPage() { setEnableSourceOrder, setLastSuccessfulSource, setEnableLastSuccessfulSource, - setDisabledSources, setAppLanguage, setTheme, setSubStyling, @@ -859,8 +849,6 @@ export function SettingsPage() { setEnableLastSuccessfulSource={ state.enableLastSuccessfulSource.set } - disabledSources={state.disabledSources.state} - setDisabledSources={state.disabledSources.set} enableLowPerformanceMode={state.enableLowPerformanceMode.state} setEnableLowPerformanceMode={state.enableLowPerformanceMode.set} enableHoldToBoost={state.enableHoldToBoost.state} diff --git a/src/pages/admin/AdminPage.tsx b/src/pages/admin/AdminPage.tsx index e3d39eca..dada6524 100644 --- a/src/pages/admin/AdminPage.tsx +++ b/src/pages/admin/AdminPage.tsx @@ -47,8 +47,6 @@ export function AdminPage() { setEmbedOrder={embedOrderState.setEmbedOrder} enableEmbedOrder={embedOrderState.enableEmbedOrder} setEnableEmbedOrder={embedOrderState.setEnableEmbedOrder} - disabledEmbeds={embedOrderState.disabledEmbeds} - setDisabledEmbeds={embedOrderState.setDisabledEmbeds} /> {/* */} diff --git a/src/pages/migration/MigrationUpload.tsx b/src/pages/migration/MigrationUpload.tsx index 86dcc27f..9271b294 100644 --- a/src/pages/migration/MigrationUpload.tsx +++ b/src/pages/migration/MigrationUpload.tsx @@ -375,11 +375,6 @@ export function MigrationUploadPage() { uploadedData.settings.enableLastSuccessfulSource, ); } - if (uploadedData.settings.disabledSources !== undefined) { - preferencesStore.setDisabledSources( - uploadedData.settings.disabledSources, - ); - } if (uploadedData.settings.embedOrder !== undefined) { preferencesStore.setEmbedOrder(uploadedData.settings.embedOrder); } @@ -388,11 +383,6 @@ export function MigrationUploadPage() { uploadedData.settings.enableEmbedOrder, ); } - if (uploadedData.settings.disabledEmbeds !== undefined) { - preferencesStore.setDisabledEmbeds( - uploadedData.settings.disabledEmbeds, - ); - } if (uploadedData.settings.proxyTmdb !== undefined) { preferencesStore.setProxyTmdb(uploadedData.settings.proxyTmdb); } diff --git a/src/pages/parts/admin/EmbedOrderPart.tsx b/src/pages/parts/admin/EmbedOrderPart.tsx index 168d495b..5e591c41 100644 --- a/src/pages/parts/admin/EmbedOrderPart.tsx +++ b/src/pages/parts/admin/EmbedOrderPart.tsx @@ -5,7 +5,7 @@ import { useNavigate } from "react-router-dom"; import { getAllProviders, getProviders } from "@/backend/providers/providers"; import { Button } from "@/components/buttons/Button"; import { Toggle } from "@/components/buttons/Toggle"; -import { SortableListWithToggles } from "@/components/form/SortableListWithToggles"; +import { SortableList } from "@/components/form/SortableList"; import { Heading2 } from "@/components/utils/Text"; interface EmbedOrderPartProps { @@ -13,8 +13,6 @@ interface EmbedOrderPartProps { setEmbedOrder: (order: string[]) => void; enableEmbedOrder: boolean; setEnableEmbedOrder: (enabled: boolean) => void; - disabledEmbeds: string[]; - setDisabledEmbeds: (disabled: string[]) => void; } export function EmbedOrderPart({ @@ -22,8 +20,6 @@ export function EmbedOrderPart({ setEmbedOrder, enableEmbedOrder, setEnableEmbedOrder, - disabledEmbeds, - setDisabledEmbeds, }: EmbedOrderPartProps) { const { t } = useTranslation(); const navigate = useNavigate(); @@ -39,7 +35,6 @@ export function EmbedOrderPart({ id: e.id, name: e.name || e.id, disabled: !currentDeviceEmbeds.find((embed) => embed.id === e.id), - enabled: !disabledEmbeds.includes(e.id), })); } @@ -48,16 +43,8 @@ export function EmbedOrderPart({ id, name: allEmbeds.find((e) => e.id === id)?.name || id, disabled: !currentDeviceEmbeds.find((e) => e.id === id), - enabled: !disabledEmbeds.includes(id), })); - }, [embedOrder, allEmbeds, disabledEmbeds]); - - const handleEmbedToggle = (embedId: string) => { - const newDisabledEmbeds = disabledEmbeds.includes(embedId) - ? disabledEmbeds.filter((id) => id !== embedId) - : [...disabledEmbeds, embedId]; - setDisabledEmbeds(newDisabledEmbeds); - }; + }, [embedOrder, allEmbeds]); return (
@@ -91,10 +78,9 @@ export function EmbedOrderPart({ {enableEmbedOrder && (
- setEmbedOrder(items.map((item) => item.id))} - onToggle={handleEmbedToggle} />