SettingsRouteRoute,
} as any)
-const SettingsTasksRoute = SettingsTasksRouteImport.update({
- id: '/tasks',
- path: '/tasks',
- getParentRoute: () => SettingsRouteRoute,
-} as any)
const SettingsPluginsRoute = SettingsPluginsRouteImport.update({
id: '/plugins',
path: '/plugins',
@@ -108,11 +98,6 @@ const StoreTabIndexRoute = StoreTabIndexRouteImport.update({
path: '/',
getParentRoute: () => StoreTabRouteRoute,
} as any)
-const StoreTabPluginsRoute = StoreTabPluginsRouteImport.update({
- id: '/plugins',
- path: '/plugins',
- getParentRoute: () => StoreTabRouteRoute,
-} as any)
const StoreTabGamesRoute = StoreTabGamesRouteImport.update({
id: '/games',
path: '/games',
@@ -123,11 +108,6 @@ const StoreTabEmulatorsRoute = StoreTabEmulatorsRouteImport.update({
path: '/emulators',
getParentRoute: () => StoreTabRouteRoute,
} as any)
-const StoreTabDownloadRoute = StoreTabDownloadRouteImport.update({
- id: '/download',
- path: '/download',
- getParentRoute: () => StoreTabRouteRoute,
-} as any)
const SettingsPluginSourceRoute = SettingsPluginSourceRouteImport.update({
id: '/plugin/$source',
path: '/plugin/$source',
@@ -158,11 +138,6 @@ const CollectionSourceIdRoute = CollectionSourceIdRouteImport.update({
path: '/collection/$source/$id',
getParentRoute: () => rootRouteImport,
} as any)
-const StoreDetailsPluginIdRoute = StoreDetailsPluginIdRouteImport.update({
- id: '/store/details/plugin/$id',
- path: '/store/details/plugin/$id',
- getParentRoute: () => rootRouteImport,
-} as any)
const StoreDetailsEmulatorIdRoute = StoreDetailsEmulatorIdRouteImport.update({
id: '/store/details/emulator/$id',
path: '/store/details/emulator/$id',
@@ -173,12 +148,6 @@ const GameUpdateSourceIdRoute = GameUpdateSourceIdRouteImport.update({
path: '/game/update/$source/$id',
getParentRoute: () => rootRouteImport,
} as any)
-const StoreDetailsDownloadSourceIdRoute =
- StoreDetailsDownloadSourceIdRouteImport.update({
- id: '/store/details/download/$source/$id',
- path: '/store/details/download/$source/$id',
- getParentRoute: () => rootRouteImport,
- } as any)
export interface FileRoutesByFullPath {
'/': typeof IndexRoute
@@ -192,7 +161,6 @@ export interface FileRoutesByFullPath {
'/settings/emulators': typeof SettingsEmulatorsRoute
'/settings/interface': typeof SettingsInterfaceRoute
'/settings/plugins': typeof SettingsPluginsRoute
- '/settings/tasks': typeof SettingsTasksRoute
'/settings/update': typeof SettingsUpdateRoute
'/collection/$source/$id': typeof CollectionSourceIdRoute
'/embedded/$source/$id': typeof EmbeddedSourceIdRoute
@@ -200,15 +168,11 @@ export interface FileRoutesByFullPath {
'/launcher/$source/$id': typeof LauncherSourceIdRoute
'/platform/$source/$id': typeof PlatformSourceIdRoute
'/settings/plugin/$source': typeof SettingsPluginSourceRoute
- '/store/tab/download': typeof StoreTabDownloadRoute
'/store/tab/emulators': typeof StoreTabEmulatorsRoute
'/store/tab/games': typeof StoreTabGamesRoute
- '/store/tab/plugins': typeof StoreTabPluginsRoute
'/store/tab/': typeof StoreTabIndexRoute
'/game/update/$source/$id': typeof GameUpdateSourceIdRoute
'/store/details/emulator/$id': typeof StoreDetailsEmulatorIdRoute
- '/store/details/plugin/$id': typeof StoreDetailsPluginIdRoute
- '/store/details/download/$source/$id': typeof StoreDetailsDownloadSourceIdRoute
}
export interface FileRoutesByTo {
'/': typeof IndexRoute
@@ -221,7 +185,6 @@ export interface FileRoutesByTo {
'/settings/emulators': typeof SettingsEmulatorsRoute
'/settings/interface': typeof SettingsInterfaceRoute
'/settings/plugins': typeof SettingsPluginsRoute
- '/settings/tasks': typeof SettingsTasksRoute
'/settings/update': typeof SettingsUpdateRoute
'/collection/$source/$id': typeof CollectionSourceIdRoute
'/embedded/$source/$id': typeof EmbeddedSourceIdRoute
@@ -229,15 +192,11 @@ export interface FileRoutesByTo {
'/launcher/$source/$id': typeof LauncherSourceIdRoute
'/platform/$source/$id': typeof PlatformSourceIdRoute
'/settings/plugin/$source': typeof SettingsPluginSourceRoute
- '/store/tab/download': typeof StoreTabDownloadRoute
'/store/tab/emulators': typeof StoreTabEmulatorsRoute
'/store/tab/games': typeof StoreTabGamesRoute
- '/store/tab/plugins': typeof StoreTabPluginsRoute
'/store/tab': typeof StoreTabIndexRoute
'/game/update/$source/$id': typeof GameUpdateSourceIdRoute
'/store/details/emulator/$id': typeof StoreDetailsEmulatorIdRoute
- '/store/details/plugin/$id': typeof StoreDetailsPluginIdRoute
- '/store/details/download/$source/$id': typeof StoreDetailsDownloadSourceIdRoute
}
export interface FileRoutesById {
__root__: typeof rootRouteImport
@@ -252,7 +211,6 @@ export interface FileRoutesById {
'/settings/emulators': typeof SettingsEmulatorsRoute
'/settings/interface': typeof SettingsInterfaceRoute
'/settings/plugins': typeof SettingsPluginsRoute
- '/settings/tasks': typeof SettingsTasksRoute
'/settings/update': typeof SettingsUpdateRoute
'/collection/$source/$id': typeof CollectionSourceIdRoute
'/embedded/$source/$id': typeof EmbeddedSourceIdRoute
@@ -260,15 +218,11 @@ export interface FileRoutesById {
'/launcher/$source/$id': typeof LauncherSourceIdRoute
'/platform/$source/$id': typeof PlatformSourceIdRoute
'/settings/plugin/$source': typeof SettingsPluginSourceRoute
- '/store/tab/download': typeof StoreTabDownloadRoute
'/store/tab/emulators': typeof StoreTabEmulatorsRoute
'/store/tab/games': typeof StoreTabGamesRoute
- '/store/tab/plugins': typeof StoreTabPluginsRoute
'/store/tab/': typeof StoreTabIndexRoute
'/game/update/$source/$id': typeof GameUpdateSourceIdRoute
'/store/details/emulator/$id': typeof StoreDetailsEmulatorIdRoute
- '/store/details/plugin/$id': typeof StoreDetailsPluginIdRoute
- '/store/details/download/$source/$id': typeof StoreDetailsDownloadSourceIdRoute
}
export interface FileRouteTypes {
fileRoutesByFullPath: FileRoutesByFullPath
@@ -284,7 +238,6 @@ export interface FileRouteTypes {
| '/settings/emulators'
| '/settings/interface'
| '/settings/plugins'
- | '/settings/tasks'
| '/settings/update'
| '/collection/$source/$id'
| '/embedded/$source/$id'
@@ -292,15 +245,11 @@ export interface FileRouteTypes {
| '/launcher/$source/$id'
| '/platform/$source/$id'
| '/settings/plugin/$source'
- | '/store/tab/download'
| '/store/tab/emulators'
| '/store/tab/games'
- | '/store/tab/plugins'
| '/store/tab/'
| '/game/update/$source/$id'
| '/store/details/emulator/$id'
- | '/store/details/plugin/$id'
- | '/store/details/download/$source/$id'
fileRoutesByTo: FileRoutesByTo
to:
| '/'
@@ -313,7 +262,6 @@ export interface FileRouteTypes {
| '/settings/emulators'
| '/settings/interface'
| '/settings/plugins'
- | '/settings/tasks'
| '/settings/update'
| '/collection/$source/$id'
| '/embedded/$source/$id'
@@ -321,15 +269,11 @@ export interface FileRouteTypes {
| '/launcher/$source/$id'
| '/platform/$source/$id'
| '/settings/plugin/$source'
- | '/store/tab/download'
| '/store/tab/emulators'
| '/store/tab/games'
- | '/store/tab/plugins'
| '/store/tab'
| '/game/update/$source/$id'
| '/store/details/emulator/$id'
- | '/store/details/plugin/$id'
- | '/store/details/download/$source/$id'
id:
| '__root__'
| '/'
@@ -343,7 +287,6 @@ export interface FileRouteTypes {
| '/settings/emulators'
| '/settings/interface'
| '/settings/plugins'
- | '/settings/tasks'
| '/settings/update'
| '/collection/$source/$id'
| '/embedded/$source/$id'
@@ -351,15 +294,11 @@ export interface FileRouteTypes {
| '/launcher/$source/$id'
| '/platform/$source/$id'
| '/settings/plugin/$source'
- | '/store/tab/download'
| '/store/tab/emulators'
| '/store/tab/games'
- | '/store/tab/plugins'
| '/store/tab/'
| '/game/update/$source/$id'
| '/store/details/emulator/$id'
- | '/store/details/plugin/$id'
- | '/store/details/download/$source/$id'
fileRoutesById: FileRoutesById
}
export interface RootRouteChildren {
@@ -375,8 +314,6 @@ export interface RootRouteChildren {
PlatformSourceIdRoute: typeof PlatformSourceIdRoute
GameUpdateSourceIdRoute: typeof GameUpdateSourceIdRoute
StoreDetailsEmulatorIdRoute: typeof StoreDetailsEmulatorIdRoute
- StoreDetailsPluginIdRoute: typeof StoreDetailsPluginIdRoute
- StoreDetailsDownloadSourceIdRoute: typeof StoreDetailsDownloadSourceIdRoute
}
declare module '@tanstack/react-router' {
@@ -409,13 +346,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof SettingsUpdateRouteImport
parentRoute: typeof SettingsRouteRoute
}
- '/settings/tasks': {
- id: '/settings/tasks'
- path: '/tasks'
- fullPath: '/settings/tasks'
- preLoaderRoute: typeof SettingsTasksRouteImport
- parentRoute: typeof SettingsRouteRoute
- }
'/settings/plugins': {
id: '/settings/plugins'
path: '/plugins'
@@ -479,13 +409,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof StoreTabIndexRouteImport
parentRoute: typeof StoreTabRouteRoute
}
- '/store/tab/plugins': {
- id: '/store/tab/plugins'
- path: '/plugins'
- fullPath: '/store/tab/plugins'
- preLoaderRoute: typeof StoreTabPluginsRouteImport
- parentRoute: typeof StoreTabRouteRoute
- }
'/store/tab/games': {
id: '/store/tab/games'
path: '/games'
@@ -500,13 +423,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof StoreTabEmulatorsRouteImport
parentRoute: typeof StoreTabRouteRoute
}
- '/store/tab/download': {
- id: '/store/tab/download'
- path: '/download'
- fullPath: '/store/tab/download'
- preLoaderRoute: typeof StoreTabDownloadRouteImport
- parentRoute: typeof StoreTabRouteRoute
- }
'/settings/plugin/$source': {
id: '/settings/plugin/$source'
path: '/plugin/$source'
@@ -549,13 +465,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof CollectionSourceIdRouteImport
parentRoute: typeof rootRouteImport
}
- '/store/details/plugin/$id': {
- id: '/store/details/plugin/$id'
- path: '/store/details/plugin/$id'
- fullPath: '/store/details/plugin/$id'
- preLoaderRoute: typeof StoreDetailsPluginIdRouteImport
- parentRoute: typeof rootRouteImport
- }
'/store/details/emulator/$id': {
id: '/store/details/emulator/$id'
path: '/store/details/emulator/$id'
@@ -570,13 +479,6 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof GameUpdateSourceIdRouteImport
parentRoute: typeof rootRouteImport
}
- '/store/details/download/$source/$id': {
- id: '/store/details/download/$source/$id'
- path: '/store/details/download/$source/$id'
- fullPath: '/store/details/download/$source/$id'
- preLoaderRoute: typeof StoreDetailsDownloadSourceIdRouteImport
- parentRoute: typeof rootRouteImport
- }
}
}
@@ -587,7 +489,6 @@ interface SettingsRouteRouteChildren {
SettingsEmulatorsRoute: typeof SettingsEmulatorsRoute
SettingsInterfaceRoute: typeof SettingsInterfaceRoute
SettingsPluginsRoute: typeof SettingsPluginsRoute
- SettingsTasksRoute: typeof SettingsTasksRoute
SettingsUpdateRoute: typeof SettingsUpdateRoute
SettingsPluginSourceRoute: typeof SettingsPluginSourceRoute
}
@@ -599,7 +500,6 @@ const SettingsRouteRouteChildren: SettingsRouteRouteChildren = {
SettingsEmulatorsRoute: SettingsEmulatorsRoute,
SettingsInterfaceRoute: SettingsInterfaceRoute,
SettingsPluginsRoute: SettingsPluginsRoute,
- SettingsTasksRoute: SettingsTasksRoute,
SettingsUpdateRoute: SettingsUpdateRoute,
SettingsPluginSourceRoute: SettingsPluginSourceRoute,
}
@@ -609,18 +509,14 @@ const SettingsRouteRouteWithChildren = SettingsRouteRoute._addFileChildren(
)
interface StoreTabRouteRouteChildren {
- StoreTabDownloadRoute: typeof StoreTabDownloadRoute
StoreTabEmulatorsRoute: typeof StoreTabEmulatorsRoute
StoreTabGamesRoute: typeof StoreTabGamesRoute
- StoreTabPluginsRoute: typeof StoreTabPluginsRoute
StoreTabIndexRoute: typeof StoreTabIndexRoute
}
const StoreTabRouteRouteChildren: StoreTabRouteRouteChildren = {
- StoreTabDownloadRoute: StoreTabDownloadRoute,
StoreTabEmulatorsRoute: StoreTabEmulatorsRoute,
StoreTabGamesRoute: StoreTabGamesRoute,
- StoreTabPluginsRoute: StoreTabPluginsRoute,
StoreTabIndexRoute: StoreTabIndexRoute,
}
@@ -641,8 +537,6 @@ const rootRouteChildren: RootRouteChildren = {
PlatformSourceIdRoute: PlatformSourceIdRoute,
GameUpdateSourceIdRoute: GameUpdateSourceIdRoute,
StoreDetailsEmulatorIdRoute: StoreDetailsEmulatorIdRoute,
- StoreDetailsPluginIdRoute: StoreDetailsPluginIdRoute,
- StoreDetailsDownloadSourceIdRoute: StoreDetailsDownloadSourceIdRoute,
}
export const routeTree = rootRouteImport
._addFileChildren(rootRouteChildren)
diff --git a/src/mainview/index.css b/src/mainview/index.css
index 332862e..4c82b71 100644
--- a/src/mainview/index.css
+++ b/src/mainview/index.css
@@ -9,7 +9,6 @@
@theme {
--breakpoint-sm: 0px;
--breakpoint-md: 1024px;
- --breakpoint-lg: 1280px;
--page-scroll-bg: transparent;
--animation-size: 1;
diff --git a/src/mainview/index.tsx b/src/mainview/index.tsx
index 166cc4f..f5639f9 100644
--- a/src/mainview/index.tsx
+++ b/src/mainview/index.tsx
@@ -8,7 +8,7 @@ import
RouterProvider,
} from "@tanstack/react-router";
import { routeTree } from "./gen/routeTree.gen";
-import { QueryClient } from "@tanstack/react-query";
+import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import "./scripts/gamepads";
import "./scripts/windowEvents";
import "./scripts/spatialNavigation";
@@ -16,16 +16,6 @@ import NotFound from "./components/NotFound";
import Error from "./components/Error";
import serviceWorker from './scripts/serviceWorker?worker&url';
import App from "./App";
-import { PersistQueryClientProvider } from '@tanstack/react-query-persist-client';
-import { createStore, get, set, del } from "idb-keyval";
-import
-{
- PersistedClient,
- Persister,
-} from '@tanstack/react-query-persist-client';
-import pkg from '../../package.json';
-
-const idbStore = createStore("tanstack-query", "cache");
if ('serviceWorker' in navigator)
{
@@ -34,31 +24,7 @@ if ('serviceWorker' in navigator)
const hashHistory = createHashHistory({});
-const queryClient = new QueryClient({
- defaultOptions: {
- queries: {
- gcTime: 1000 * 60 * 60 * 24 * 5, // 5 days
- }
- }
-});
-
-export function createIDBPersister (idbValidKey: IDBValidKey = 'reactQuery'): Persister
-{
- return {
- persistClient: async (client: PersistedClient) =>
- {
- await set(idbValidKey, client, idbStore);
- },
- restoreClient: async () =>
- {
- return await get
(idbValidKey, idbStore);
- },
- removeClient: async () =>
- {
- await del(idbValidKey, idbStore);
- },
- } satisfies Persister;
-}
+const queryClient = new QueryClient();
export interface RouterContext
{
@@ -108,9 +74,9 @@ if (!rootElement.innerHTML)
root.render(
-
+
-
+
,
);
diff --git a/src/mainview/query-options.ts b/src/mainview/query-options.ts
index 879d632..a52c649 100644
--- a/src/mainview/query-options.ts
+++ b/src/mainview/query-options.ts
@@ -1,7 +1,6 @@
import { keepPreviousData, queryOptions } from "@tanstack/react-query";
import { getRomApiRomsIdGetOptions, getRomsApiRomsGetOptions } from "../clients/romm/@tanstack/react-query.gen";
-import { DefaultRommStaleTime } from "../shared/constants";
-import { GameListFilterType } from '@simeonradivoev/gameflow-sdk/shared';
+import { DefaultRommStaleTime, GameListFilterType } from "../shared/constants";
export function gamesQueryOptions (filter?: GameListFilterType)
{
diff --git a/src/mainview/routes/__root.tsx b/src/mainview/routes/__root.tsx
index cafbab4..fbe2f26 100644
--- a/src/mainview/routes/__root.tsx
+++ b/src/mainview/routes/__root.tsx
@@ -8,7 +8,6 @@ import { useEffect } from "react";
import AppCommunication from "../components/AppCommunication";
import { ReactQueryDevtools } from "@tanstack/react-query-devtools";
import { TanStackRouterDevtools } from "@tanstack/react-router-devtools";
-import GlobalContextDialog from "../components/GlobalContextDialog";
export const Route = createRootRouteWithContext()({
component: RootComponent,
@@ -40,11 +39,9 @@ function RootComponent ()
return (
-
-
-
-
-
+
+
+
{queryDevOptions &&
}
diff --git a/src/mainview/routes/collection.$source.$id.tsx b/src/mainview/routes/collection.$source.$id.tsx
index a08c164..3b73d25 100644
--- a/src/mainview/routes/collection.$source.$id.tsx
+++ b/src/mainview/routes/collection.$source.$id.tsx
@@ -6,7 +6,7 @@ import { AnimatedBackgroundContext } from '../scripts/contexts';
import { getCollectionQuery } from '@queries/romm';
import { zodValidator } from '@tanstack/zod-adapter';
import z from 'zod';
-import { GameListFilterType } from '@simeonradivoev/gameflow-sdk/shared';
+import { GameListFilterType } from '@/shared/constants';
import { useLocalStorage } from 'usehooks-ts';
export const Route = createFileRoute('/collection/$source/$id')({
diff --git a/src/mainview/routes/game/$source.$id.tsx b/src/mainview/routes/game/$source.$id.tsx
index 13ea8ac..064deee 100644
--- a/src/mainview/routes/game/$source.$id.tsx
+++ b/src/mainview/routes/game/$source.$id.tsx
@@ -24,7 +24,7 @@ import Details from "@/mainview/components/game/Details";
import { AutoFocus } from "@/mainview/components/AutoFocus";
import SelectMenu from "@/mainview/components/SelectMenu";
import { IGDBIcon } from "@/mainview/scripts/brandIcons";
-import { FrontEndGameTypeDetailed } from "@simeonradivoev/gameflow-sdk/shared";
+import { FrontEndGameTypeDetailed } from "@/shared/types";
export const Route = createFileRoute("/game/$source/$id")({
loader: async ({ params, context }) =>
@@ -33,9 +33,7 @@ export const Route = createFileRoute("/game/$source/$id")({
},
component: RouteComponent,
errorComponent: Error,
- validateSearch: zodValidator(z.object({
- focus: z.string().optional(),
- })),
+ validateSearch: zodValidator(z.object({ focus: z.string().optional() })),
staticData: {
enterSound: 'openDetails',
goBackSound: "returnDetails"
diff --git a/src/mainview/routes/game/add.tsx b/src/mainview/routes/game/add.tsx
index 6399cd0..3a6a2f8 100644
--- a/src/mainview/routes/game/add.tsx
+++ b/src/mainview/routes/game/add.tsx
@@ -8,18 +8,15 @@ import { PathSettingsOptionBase } from '@/mainview/components/options/PathSettin
import SelectMenu from '@/mainview/components/SelectMenu';
import { FloatingShortcuts } from '@/mainview/components/Shortcuts';
import { oneShot } from '@/mainview/scripts/audio/audio';
-import { rommApi } from '@/mainview/scripts/clientApi';
import { addManualGameMutation, allGamesInvalidateQuery, gameLookupDetails, platformLookupMatchQuery } from '@/mainview/scripts/queries/romm';
import { GamePadButtonCode, useShortcuts } from '@/mainview/scripts/shortcuts';
import { HandleGoBack } from '@/mainview/scripts/utils';
-import { isUrl } from '@/shared/utils';
import { FocusContext, useFocusable } from '@noriginmedia/norigin-spatial-navigation';
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
import { createFileRoute, useNavigate, useRouter } from '@tanstack/react-router';
import { zodValidator } from '@tanstack/zod-adapter';
-import { ArrowBigRightDash, Check, CirclePlus, CircleQuestionMark, CircleX, File, FileSearch, FolderOpen, Globe, HardDrive, Link, Save } from 'lucide-react';
+import { ArrowBigRightDash, Check, CirclePlus, CircleQuestionMark, CircleX, FileSearch, FolderOpen, HardDrive } from 'lucide-react';
import { basename } from 'pathe';
-import prettyBytes from 'pretty-bytes';
import { JSX, useState } from 'react';
import toast from 'react-hot-toast';
import { twMerge } from 'tailwind-merge';
@@ -42,7 +39,6 @@ export const Route = createFileRoute('/game/add')({
function FileSelectionField (data: { location: string | undefined, setLocation: (location: string | undefined) => void; })
{
const [localLocation, setLocalLocation] = useState
(data.location);
- const navigate = useNavigate();
return
-
- ;
+ />;
}
const TAG_REGEX = /\(([^)]+)\)|\[([^\]]+)\]/g;
@@ -101,17 +95,6 @@ function Overview (data: {})
const navigate = useNavigate();
const router = useRouter();
const state = Route.useSearch();
- const linkInfo = useQuery({
- enabled (query)
- {
- return isUrl(query.queryKey[1]);
- },
- queryKey: ['dl-link-info', state.gameLocation],
- queryFn: async () =>
- {
- return rommApi.api.romm.download.file.info.get({ query: { file_url: state.gameLocation! } });
- }
- });
const { data: game } = useQuery(gameLookupDetails(state.selectedGame?.source, state.selectedGame?.id));
const { data: platform } = useQuery(platformLookupMatchQuery(state.selectedGame?.source, state.platformId));
const addGame = useMutation({
@@ -122,7 +105,7 @@ function Overview (data: {})
},
async onSuccess (data, variables, onMutateResult, context)
{
- if (data.id === null || isUrl(state.gameLocation)) return;
+ if (data.id === null) return;
await context.client.invalidateQueries(allGamesInvalidateQuery);
navigate({
to: '/game/$source/$id', params: {
@@ -153,13 +136,7 @@ function Overview (data: {})
{platform?.match.type}
-