Merge pull request #471 from Kathund/fix/456

feat(OneClient-Onboarding): Version number
This commit is contained in:
Jacob 2026-01-09 23:50:45 +08:00 • committed by GitHub
parent fce0ea35a4
commit 2d806df712
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 14 additions and 10 deletions

View file

@ -236,7 +236,7 @@ export type SettingProfileModel = { name: string; java_id: number | null; res: R
export type Settings = { global_game_settings: SettingProfileModel; allow_parallel_running_clusters: boolean; enable_gamemode: boolean; discord_enabled: boolean; seen_onboarding: boolean; mod_list_use_grid: boolean; parallel_mod_downloading: boolean; max_concurrent_requests: number; settings_version: number; native_window_frame: boolean; show_tanstack_dev_tools: boolean }
export type SettingsOsExtra = Record<string, never>
export type SettingsOsExtra = { enable_gamemode: boolean | null }
export type SkinVariant = "classic" | "slim"
@ -303,11 +303,8 @@ export type VersionType =
*/
"old_beta"
const ARGS_MAP = { 'events':'{"process":["event"],"ingress":["event"],"message":["event"]}', 'core':'{"updateClusterProfile":["name","profile"],"getUsers":[],"fetchLoggedInProfile":["access_token"],"killProcess":["pid"],"getUsersFromAuthor":["provider","author"],"convertUsernameUUID":["username_uuid"],"changeSkin":["access_token","skin_url","skin_variant"],"getDefaultUser":["fallback"],"getScreenshots":["id"],"getGlobalProfile":[],"fetchMinecraftProfile":["uuid"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getClusterById":["id"],"getLogs":["id"],"refreshAccounts":[],"getClusters":[],"createCluster":["options"],"removeCluster":["id"],"isClusterRunning":["cluster_id"],"updateClusterById":["id","request"],"getGameVersions":[],"launchCluster":["id","uuid","search_for_java"],"openMsaLogin":[],"refreshAccount":["uuid"],"searchPackages":["provider","query"],"getLinkedPackages":["cluster_id"],"getLoadersForVersion":["mc_version"],"getRunningProcesses":[],"getLogByName":["id","name"],"readSettings":[],"installModpack":["modpack","cluster_id"],"getMultiplePackages":["provider","slugs"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"removePackage":["cluster_id","package_hash"],"getWorlds":["id"],"setClusterStage":["id","stage"],"setDefaultUser":["uuid"],"writeSettings":["setting"],"getPackageBody":["provider","body"],"downloadExternalPackage":["package","cluster_id","force","skip_compatibility"],"removeUser":["uuid"],"changeCape":["access_token","cape_uuid"],"getPackage":["provider","slug"],"open":["input"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"createSettingsProfile":["name"],"setDiscordRPCMessage":["message"],"removeCape":["access_token"],"getUser":["uuid"],"getRunningProcessesByClusterId":["cluster_id"],"getProfileOrDefault":["name"]}', 'oneclient':'{"getBundlesFor":["cluster_id"],"checkForUpdate":[],"installUpdate":[],"getVersions":[],"getClustersGroupedByMajor":[]}', 'folders':'{"openCluster":["folder_name"],"fromCluster":["folder_name"]}', 'debug':'{"getOsVersion":[],"openDevTools":[],"isInDev":[],"getBuildTimestamp":[],"getPackageVersion":[],"getLocale":[],"getType":[],"getPlatform":[],"getGitCommitHash":[],"getFamily":[],"getArch":[]}' }
export type Router = { 'events': { ingress: (event: IngressPayload) => Promise<void>,
message: (event: MessagePayload) => Promise<void>,
process: (event: ProcessPayload) => Promise<void> },
'core': { getClusters: () => Promise<ClusterModel[]>,
const ARGS_MAP = { 'debug':'{"openDevTools":[],"getLocale":[],"getGitCommitHash":[],"getArch":[],"getBuildTimestamp":[],"getOsVersion":[],"getFamily":[],"getType":[],"isInDev":[],"getPlatform":[],"getPackageVersion":[]}', 'core':'{"getLoadersForVersion":["mc_version"],"killProcess":["pid"],"removeCape":["access_token"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"readSettings":[],"fetchLoggedInProfile":["access_token"],"refreshAccounts":[],"searchPackages":["provider","query"],"launchCluster":["id","uuid","search_for_java"],"setDefaultUser":["uuid"],"getClusterById":["id"],"updateClusterById":["id","request"],"getWorlds":["id"],"getScreenshots":["id"],"updateClusterProfile":["name","profile"],"getLogByName":["id","name"],"writeSettings":["setting"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"getUsersFromAuthor":["provider","author"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"getLinkedPackages":["cluster_id"],"getProfileOrDefault":["name"],"getPackageBody":["provider","body"],"removePackage":["cluster_id","package_hash"],"getGlobalProfile":[],"getClusters":[],"fetchMinecraftProfile":["uuid"],"changeCape":["access_token","cape_uuid"],"removeUser":["uuid"],"changeSkin":["access_token","skin_url","skin_variant"],"downloadExternalPackage":["package","cluster_id","force","skip_compatibility"],"refreshAccount":["uuid"],"getMultiplePackages":["provider","slugs"],"getRunningProcesses":[],"installModpack":["modpack","cluster_id"],"setDiscordRPCMessage":["message"],"removeCluster":["id"],"open":["input"],"getDefaultUser":["fallback"],"openMsaLogin":[],"createCluster":["options"],"getRunningProcessesByClusterId":["cluster_id"],"isClusterRunning":["cluster_id"],"getUsers":[],"createSettingsProfile":["name"],"convertUsernameUUID":["username_uuid"],"getGameVersions":[],"setClusterStage":["id","stage"],"getPackage":["provider","slug"],"getLogs":["id"],"getUser":["uuid"]}', 'oneclient':'{"getBundlesFor":["cluster_id"],"getClustersGroupedByMajor":[],"installUpdate":[],"getVersions":[],"checkForUpdate":[]}', 'events':'{"ingress":["event"],"process":["event"],"message":["event"]}', 'folders':'{"openCluster":["folder_name"],"fromCluster":["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>,
@ -358,13 +355,16 @@ removeCape: (accessToken: string) => Promise<MojangFullPlayerProfile>,
convertUsernameUUID: (usernameUuid: string) => Promise<MowojangProfile>,
setDiscordRPCMessage: (message: string) => Promise<null>,
open: (input: string) => Promise<null> },
'folders': { fromCluster: (folderName: string) => Promise<string>,
openCluster: (folderName: string) => Promise<null> },
'oneclient': { getClustersGroupedByMajor: () => Promise<Partial<{ [key in number]: ClusterModel[] }>>,
getBundlesFor: (clusterId: number) => Promise<ModpackArchive[]>,
getVersions: () => Promise<OnlineClusterManifest>,
checkForUpdate: () => Promise<Update | null>,
installUpdate: () => Promise<null> },
'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> },
'debug': { openDevTools: () => Promise<void>,
isInDev: () => Promise<boolean>,
getArch: () => Promise<string>,

View file

@ -3,7 +3,7 @@ import type { PropsWithChildren } from 'react';
import LauncherLogo from '@/assets/logos/oneclient.svg?react';
import { GameBackground, LoaderSuspense, NavbarButton, Overlay, Stepper, SuperSecretDevOptions } from '@/components';
import { bindings } from '@/main';
import { useCommandSuspense } from '@onelauncher/common';
import { useCommand, useCommandSuspense } from '@onelauncher/common';
import { Button } from '@onelauncher/common/components';
import { useQueryClient } from '@tanstack/react-query';
import { createFileRoute, Link, Outlet, useLocation, useNavigate } from '@tanstack/react-router';
@ -154,6 +154,8 @@ function AppShell({
children,
}: PropsWithChildren) {
const { isFirstStep, currentStepIndex } = Route.useLoaderData();
const { data: version } = useCommand(["getPackageVersion"], () => bindings.debug.getPackageVersion());
const { data: isInDev } = useCommand(["isInDev"], () => bindings.debug.isInDev());
return (
<div className="flex flex-col h-full w-full">
@ -180,7 +182,9 @@ function AppShell({
</nav>
<div className="p-4 text-xs text-fg-secondary">
<p>version info</p>
<p>OneClient by Polyfrost</p>
<p>Version {version}</p>
<p>{isInDev ? "Development" : "Release"} Build</p>
</div>
</div>