fix: OneClient Building (#406)
This commit is contained in:
parent
3d73d39549
commit
6c97a914c2
5 changed files with 32 additions and 12 deletions
|
|
@ -188,7 +188,7 @@ gallery: string[] }
|
|||
|
||||
export type SettingProfileModel = { name: string; java_id: number | null; res: Resolution | null; force_fullscreen: boolean | null; mem_max: number | null; launch_args: string | null; launch_env: string | null; hook_pre: string | null; hook_wrapper: string | null; hook_post: string | null; os_extra: SettingsOsExtra | null }
|
||||
|
||||
export type Settings = { global_game_settings: SettingProfileModel; allow_parallel_running_clusters: boolean; enable_gamemode: boolean; discord_enabled: boolean; seen_onboarding: boolean; max_concurrent_requests: number; settings_version: number; native_window_frame: boolean }
|
||||
export type Settings = { global_game_settings: SettingProfileModel; allow_parallel_running_clusters: boolean; enable_gamemode: boolean; discord_enabled: boolean; seen_onboarding: boolean; max_concurrent_requests: number; settings_version: number; native_window_frame: boolean; show_tanstack_dev_tools: boolean }
|
||||
|
||||
export type SettingsOsExtra = Record<string, never>
|
||||
|
||||
|
|
@ -255,13 +255,8 @@ export type VersionType =
|
|||
*/
|
||||
"old_beta"
|
||||
|
||||
const ARGS_MAP = { 'oneclient':'{"getClustersGroupedByMajor":[],"openDevTools":[],"getBundlesFor":["cluster_id"]}', 'events':'{"ingress":["event"],"message":["event"],"process":["event"]}', 'folders':'{"openCluster":["folder_name"],"fromCluster":["folder_name"]}', 'core':'{"changeCape":["access_token","cape_uuid"],"openMsaLogin":[],"killProcess":["pid"],"getWorlds":["id"],"getDefaultUser":["fallback"],"fetchLoggedInProfile":["access_token"],"getGlobalProfile":[],"removeUser":["uuid"],"getClusters":[],"getPackageBody":["provider","body"],"getRunningProcesses":[],"removeCluster":["id"],"getLogs":["id"],"getLogByName":["id","name"],"getPackage":["provider","slug"],"installModpack":["modpack","cluster_id"],"getLoadersForVersion":["mc_version"],"createCluster":["options"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"changeSkin":["access_token","skin_url","skin_variant"],"readSettings":[],"searchPackages":["provider","query"],"getRunningProcessesByClusterId":["cluster_id"],"getProfileOrDefault":["name"],"updateClusterProfile":["name","profile"],"launchCluster":["id","uuid"],"getUsers":[],"updateClusterById":["id","request"],"getUser":["uuid"],"getMultiplePackages":["provider","slugs"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getUsersFromAuthor":["provider","author"],"setDefaultUser":["uuid"],"fetchMinecraftProfile":["uuid"],"getScreenshots":["id"],"getGameVersions":[],"removeCape":["access_token"],"writeSettings":["setting"],"convertUsernameUUID":["username_uuid"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"getClusterById":["id"],"open":["input"],"isClusterRunning":["cluster_id"],"createSettingsProfile":["name"]}' }
|
||||
export type Router = { 'oneclient': { openDevTools: () => Promise<void>,
|
||||
getClustersGroupedByMajor: () => Promise<Partial<{ [key in number]: ClusterModel[] }>>,
|
||||
getBundlesFor: (clusterId: number) => Promise<ModpackArchive[]> },
|
||||
'folders': { fromCluster: (folderName: string) => Promise<string>,
|
||||
openCluster: (folderName: string) => Promise<null> },
|
||||
'core': { getClusters: () => Promise<ClusterModel[]>,
|
||||
const ARGS_MAP = { 'oneclient':'{"getClustersGroupedByMajor":[],"openDevTools":[],"getBundlesFor":["cluster_id"]}', 'core':'{"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"getRunningProcesses":[],"getClusters":[],"updateClusterById":["id","request"],"getGameVersions":[],"getLoadersForVersion":["mc_version"],"getUsers":[],"setDefaultUser":["uuid"],"changeSkin":["access_token","skin_url","skin_variant"],"getWorlds":["id"],"fetchLoggedInProfile":["access_token"],"createCluster":["options"],"getScreenshots":["id"],"searchPackages":["provider","query"],"installModpack":["modpack","cluster_id"],"changeCape":["access_token","cape_uuid"],"getLogs":["id"],"readSettings":[],"getRunningProcessesByClusterId":["cluster_id"],"getUsersFromAuthor":["provider","author"],"createSettingsProfile":["name"],"getPackageBody":["provider","body"],"convertUsernameUUID":["username_uuid"],"getClusterById":["id"],"getUser":["uuid"],"launchCluster":["id","uuid"],"getLogByName":["id","name"],"openMsaLogin":[],"getPackage":["provider","slug"],"getDefaultUser":["fallback"],"updateClusterProfile":["name","profile"],"open":["input"],"getGlobalProfile":[],"isClusterRunning":["cluster_id"],"removeCluster":["id"],"killProcess":["pid"],"writeSettings":["setting"],"removeUser":["uuid"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getMultiplePackages":["provider","slugs"],"fetchMinecraftProfile":["uuid"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"removeCape":["access_token"],"getProfileOrDefault":["name"]}', 'events':'{"message":["event"],"ingress":["event"],"process":["event"]}', 'folders':'{"fromCluster":["folder_name"],"openCluster":["folder_name"]}' }
|
||||
export type Router = { 'core': { getClusters: () => Promise<ClusterModel[]>,
|
||||
getClusterById: (id: number) => Promise<ClusterModel | null>,
|
||||
removeCluster: (id: number) => Promise<null>,
|
||||
createCluster: (options: CreateCluster) => Promise<ClusterModel>,
|
||||
|
|
@ -305,6 +300,11 @@ changeCape: (accessToken: string, capeUuid: string) => Promise<MojangFullPlayerP
|
|||
removeCape: (accessToken: string) => Promise<MojangFullPlayerProfile>,
|
||||
convertUsernameUUID: (usernameUuid: string) => Promise<MowojangProfile>,
|
||||
open: (input: string) => Promise<null> },
|
||||
'oneclient': { openDevTools: () => Promise<void>,
|
||||
getClustersGroupedByMajor: () => Promise<Partial<{ [key in number]: ClusterModel[] }>>,
|
||||
getBundlesFor: (clusterId: number) => Promise<ModpackArchive[]> },
|
||||
'folders': { fromCluster: (folderName: string) => Promise<string>,
|
||||
openCluster: (folderName: string) => Promise<null> },
|
||||
'events': { ingress: (event: IngressPayload) => Promise<void>,
|
||||
message: (event: MessagePayload) => Promise<void>,
|
||||
process: (event: ProcessPayload) => Promise<void> } };
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { useCallback } from 'react';
|
|||
|
||||
export function ManageSkinButton({ profile }: { profile: MinecraftCredentials }) {
|
||||
const navigate = useNavigate();
|
||||
const manageSkin = useCallback(() => navigate({ to: `/app/account/skins`, search: { profile } }), [profile, navigate]);
|
||||
const manageSkin = useCallback(() => navigate({ to: `/app/account/skins`, search: { profile, search: false } }), [profile, navigate]);
|
||||
|
||||
return (
|
||||
<Button
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import type { QueryClient } from '@tanstack/react-query';
|
||||
import type { NavigateOptions, ToOptions } from '@tanstack/react-router';
|
||||
import { Toasts } from '@/components/overlay';
|
||||
import { useSettings } from '@/hooks/useSettings';
|
||||
import { TanStackDevtools } from '@tanstack/react-devtools';
|
||||
import { ReactQueryDevtoolsPanel } from '@tanstack/react-query-devtools';
|
||||
import { createRootRouteWithContext, Outlet, useRouter } from '@tanstack/react-router';
|
||||
|
|
@ -24,12 +25,13 @@ export const Route = createRootRouteWithContext<AppRouterContext>()({
|
|||
|
||||
function RootRoute() {
|
||||
const router = useRouter();
|
||||
const { setting } = useSettings();
|
||||
return (
|
||||
<RouterProvider
|
||||
navigate={(to, options) => router.navigate({ to, ...options })}
|
||||
useHref={to => router.buildLocation({ to }).href}
|
||||
>
|
||||
<DevTools />
|
||||
{setting('show_tanstack_dev_tools') && <DevTools />}
|
||||
|
||||
<div className="h-screen flex flex-col overflow-hidden text-fg-primary">
|
||||
<Outlet />
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
import SettingsRow from '@/components/SettingsRow';
|
||||
import SettingsSwitch from '@/components/SettingSwitch';
|
||||
import { useSettings } from '@/hooks/useSettings';
|
||||
import { bindings } from '@/main';
|
||||
import { Button } from '@onelauncher/common/components';
|
||||
import { createFileRoute, Link } from '@tanstack/react-router';
|
||||
import { Truck01Icon } from '@untitled-theme/icons-react';
|
||||
import { Code02Icon, Truck01Icon } from '@untitled-theme/icons-react';
|
||||
import Sidebar from './route';
|
||||
|
||||
export const Route = createFileRoute('/app/settings/developer')({
|
||||
|
|
@ -18,8 +19,23 @@ function RouteComponent() {
|
|||
<div className="h-full">
|
||||
<h1 className="text-xl">Developer Options</h1>
|
||||
|
||||
<SettingsRow.Header>Onboarding</SettingsRow.Header>
|
||||
<SettingsRow.Header>Dev Tools</SettingsRow.Header>
|
||||
<SettingsRow
|
||||
description="Enable The Tanstack Dev Tools"
|
||||
icon={<Code02Icon />}
|
||||
title="Tanstack Dev Tools"
|
||||
>
|
||||
<SettingsSwitch setting={createSetting('show_tanstack_dev_tools')} />
|
||||
</SettingsRow>
|
||||
<SettingsRow
|
||||
description="Open Dev Tools"
|
||||
icon={<Code02Icon />}
|
||||
title="Open Dev Tools"
|
||||
>
|
||||
<Button onPress={bindings.oneclient.openDevTools} size="normal">Open</Button>
|
||||
</SettingsRow>
|
||||
|
||||
<SettingsRow.Header>Onboarding</SettingsRow.Header>
|
||||
<SettingsRow
|
||||
description="Open Onboarding"
|
||||
icon={<Truck01Icon />}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ pub struct Settings {
|
|||
pub max_concurrent_requests: usize,
|
||||
pub settings_version: u32,
|
||||
pub native_window_frame: bool,
|
||||
pub show_tanstack_dev_tools: bool,
|
||||
}
|
||||
|
||||
impl Default for Settings {
|
||||
|
|
@ -31,6 +32,7 @@ impl Default for Settings {
|
|||
max_concurrent_requests: 25,
|
||||
settings_version: 1,
|
||||
native_window_frame: false,
|
||||
show_tanstack_dev_tools: tauri::is_dev(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue