From 6670d6499b3f80656f9e3d7f4431e4b15749f25b Mon Sep 17 00:00:00 2001
From: Jacob
Date: Mon, 29 Dec 2025 16:42:15 +0800
Subject: [PATCH] nuke: skyclient
---
apps/oneclient/frontend/src/bindings.gen.ts | 34 ++++-----
.../src/routes/app/cluster/browser/index.tsx | 3 -
.../routes/app/cluster/browser/package.tsx | 43 +++++------
.../frontend/src/assets/logos/skyclient.png | Bin 751 -> 0 bytes
.../src/components/content/PackageItem.tsx | 10 +--
.../src/components/content/ProviderIcon.tsx | 2 -
.../app/browser/package.$provider.$id.tsx | 59 +++++++--------
apps/onelauncher/frontend/src/utils/index.ts | 2 +-
.../core/src/api/packages/provider/mod.rs | 4 -
.../src/api/packages/provider/skyclient.rs | 69 ------------------
packages/core/src/constants.rs | 3 -
packages/entity/src/domain/package.rs | 3 -
12 files changed, 70 insertions(+), 162 deletions(-)
delete mode 100644 apps/onelauncher/frontend/src/assets/logos/skyclient.png
delete mode 100644 packages/core/src/api/packages/provider/skyclient.rs
diff --git a/apps/oneclient/frontend/src/bindings.gen.ts b/apps/oneclient/frontend/src/bindings.gen.ts
index 52779b34..de01275a 100644
--- a/apps/oneclient/frontend/src/bindings.gen.ts
+++ b/apps/oneclient/frontend/src/bindings.gen.ts
@@ -220,7 +220,7 @@ export type ProcessPayloadKind = { type: "Starting"; command: string } | { type:
export type ProfileUpdate = { 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 }
-export type Provider = "Modrinth" | "CurseForge" | "SkyClient"
+export type Provider = "Modrinth" | "CurseForge"
export type Resolution = { width: number; height: number }
@@ -303,20 +303,12 @@ export type VersionType =
*/
"old_beta"
-const ARGS_MAP = { 'debug':'{"getArch":[],"getBuildTimestamp":[],"getPlatform":[],"getType":[],"getLocale":[],"getOsVersion":[],"openDevTools":[],"getGitCommitHash":[],"isInDev":[],"getPackageVersion":[],"getFamily":[]}', 'folders':'{"fromCluster":["folder_name"],"openCluster":["folder_name"]}', 'events':'{"process":["event"],"ingress":["event"],"message":["event"]}', 'core':'{"getLogByName":["id","name"],"getClusterById":["id"],"getLogs":["id"],"setDiscordRPCMessage":["message"],"getClusters":[],"getWorlds":["id"],"createSettingsProfile":["name"],"getUsers":[],"isClusterRunning":["cluster_id"],"fetchMinecraftProfile":["uuid"],"getPackage":["provider","slug"],"getScreenshots":["id"],"getRunningProcessesByClusterId":["cluster_id"],"getUsersFromAuthor":["provider","author"],"getLinkedPackages":["cluster_id"],"openMsaLogin":[],"getDefaultUser":["fallback"],"downloadExternalPackage":["package","cluster_id","force","skip_compatibility"],"writeSettings":["setting"],"getUser":["uuid"],"readSettings":[],"fetchLoggedInProfile":["access_token"],"getLoadersForVersion":["mc_version"],"open":["input"],"killProcess":["pid"],"installModpack":["modpack","cluster_id"],"setClusterStage":["id","stage"],"getRunningProcesses":[],"getProfileOrDefault":["name"],"updateClusterProfile":["name","profile"],"removeCluster":["id"],"getGameVersions":[],"getPackageBody":["provider","body"],"getMultiplePackages":["provider","slugs"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"changeSkin":["access_token","skin_url","skin_variant"],"changeCape":["access_token","cape_uuid"],"removeUser":["uuid"],"setDefaultUser":["uuid"],"launchCluster":["id","uuid","search_for_java"],"updateClusterById":["id","request"],"createCluster":["options"],"getGlobalProfile":[],"searchPackages":["provider","query"],"removePackage":["cluster_id","package_hash"],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"removeCape":["access_token"],"convertUsernameUUID":["username_uuid"]}', 'oneclient':'{"installUpdate":[],"getClustersGroupedByMajor":[],"checkForUpdate":[],"getBundlesFor":["cluster_id"],"getVersions":[]}' }
-export type Router = { 'folders': { fromCluster: (folderName: string) => Promise,
+const ARGS_MAP = { 'events':'{"process":["event"],"ingress":["event"],"message":["event"]}', 'debug':'{"getArch":[],"getOsVersion":[],"getBuildTimestamp":[],"getLocale":[],"getPlatform":[],"getPackageVersion":[],"getGitCommitHash":[],"openDevTools":[],"isInDev":[],"getType":[],"getFamily":[]}', 'oneclient':'{"getVersions":[],"installUpdate":[],"getBundlesFor":["cluster_id"],"getClustersGroupedByMajor":[],"checkForUpdate":[]}', 'folders':'{"openCluster":["folder_name"],"fromCluster":["folder_name"]}', 'core':'{"getGameVersions":[],"searchPackages":["provider","query"],"setClusterStage":["id","stage"],"getPackageVersions":["provider","slug","mc_version","loader","offset","limit"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"getUsersFromAuthor":["provider","author"],"fetchLoggedInProfile":["access_token"],"getUsers":[],"getClusterById":["id"],"getGlobalProfile":[],"launchCluster":["id","uuid","search_for_java"],"createSettingsProfile":["name"],"getLoadersForVersion":["mc_version"],"writeSettings":["setting"],"getPackage":["provider","slug"],"openMsaLogin":[],"uploadSkinBytes":["access_token","skin_data","image_format","skin_variant"],"getRunningProcessesByClusterId":["cluster_id"],"updateClusterById":["id","request"],"removeCape":["access_token"],"readSettings":[],"installModpack":["modpack","cluster_id"],"removeUser":["uuid"],"removeCluster":["id"],"getLinkedPackages":["cluster_id"],"setDiscordRPCMessage":["message"],"open":["input"],"downloadExternalPackage":["package","cluster_id","force","skip_compatibility"],"getDefaultUser":["fallback"],"getScreenshots":["id"],"fetchMinecraftProfile":["uuid"],"killProcess":["pid"],"getMultiplePackages":["provider","slugs"],"getWorlds":["id"],"setDefaultUser":["uuid"],"updateClusterProfile":["name","profile"],"changeSkin":["access_token","skin_url","skin_variant"],"getUser":["uuid"],"getClusters":[],"createCluster":["options"],"removePackage":["cluster_id","package_hash"],"getLogByName":["id","name"],"getLogs":["id"],"getProfileOrDefault":["name"],"convertUsernameUUID":["username_uuid"],"getRunningProcesses":[],"getPackageBody":["provider","body"],"changeCape":["access_token","cape_uuid"],"isClusterRunning":["cluster_id"]}' }
+export type Router = { 'events': { ingress: (event: IngressPayload) => Promise,
+message: (event: MessagePayload) => Promise,
+process: (event: ProcessPayload) => Promise },
+'folders': { fromCluster: (folderName: string) => Promise,
openCluster: (folderName: string) => Promise },
-'debug': { openDevTools: () => Promise,
-isInDev: () => Promise,
-getArch: () => Promise,
-getFamily: () => Promise,
-getLocale: () => Promise,
-getType: () => Promise,
-getPlatform: () => Promise,
-getOsVersion: () => Promise,
-getGitCommitHash: () => Promise,
-getBuildTimestamp: () => Promise,
-getPackageVersion: () => Promise },
'oneclient': { getClustersGroupedByMajor: () => Promise>,
getBundlesFor: (clusterId: number) => Promise,
getVersions: () => Promise,
@@ -371,9 +363,17 @@ removeCape: (accessToken: string) => Promise,
convertUsernameUUID: (usernameUuid: string) => Promise,
setDiscordRPCMessage: (message: string) => Promise,
open: (input: string) => Promise },
-'events': { ingress: (event: IngressPayload) => Promise,
-message: (event: MessagePayload) => Promise,
-process: (event: ProcessPayload) => Promise } };
+'debug': { openDevTools: () => Promise,
+isInDev: () => Promise,
+getArch: () => Promise,
+getFamily: () => Promise,
+getLocale: () => Promise,
+getType: () => Promise,
+getPlatform: () => Promise,
+getOsVersion: () => Promise,
+getGitCommitHash: () => Promise,
+getBuildTimestamp: () => Promise,
+getPackageVersion: () => Promise } };
export type { InferCommandOutput }
diff --git a/apps/oneclient/frontend/src/routes/app/cluster/browser/index.tsx b/apps/oneclient/frontend/src/routes/app/cluster/browser/index.tsx
index 3f53f4bf..aec16e5c 100644
--- a/apps/oneclient/frontend/src/routes/app/cluster/browser/index.tsx
+++ b/apps/oneclient/frontend/src/routes/app/cluster/browser/index.tsx
@@ -28,9 +28,6 @@ export const Route = createFileRoute('/app/cluster/browser/')({
},
});
-// const PROVIDERS: Array = ['Modrinth', 'CurseForge', 'SkyClient'];
-// I don't think SkyClient will get implemented due to hypixel removing 1.8 support and SkyClient is only really for old 1.8 mods that aren't on a provider
-// High chance we can just one day nuke the entire unfinished implementation
const PROVIDERS: Array = ['Modrinth', 'CurseForge'];
function RouteComponent() {
diff --git a/apps/oneclient/frontend/src/routes/app/cluster/browser/package.tsx b/apps/oneclient/frontend/src/routes/app/cluster/browser/package.tsx
index 2310da71..432ddf13 100644
--- a/apps/oneclient/frontend/src/routes/app/cluster/browser/package.tsx
+++ b/apps/oneclient/frontend/src/routes/app/cluster/browser/package.tsx
@@ -94,7 +94,6 @@ function getPackageUrl(pkg: ManagedPackage): string {
switch (pkg.provider) {
case 'Modrinth': return `https://modrinth.com/project/${pkg.slug}`;
case 'CurseForge': return `https://www.curseforge.com/minecraft/${pkg.package_type}s/${pkg.slug}`;
- case 'SkyClient': return ``;
}
}
@@ -128,12 +127,10 @@ function BrowserSidebar({ package: pkg }: { package: ManagedPackage }) {
{pkg.short_desc}
- {pkg.provider !== 'SkyClient' && (
-
-
- {abbreviateNumber(pkg.downloads)}
-
- )}
+
+
+ {abbreviateNumber(pkg.downloads)}
+
@@ -151,23 +148,23 @@ function BrowserSidebar({ package: pkg }: { package: ManagedPackage }) {
{(Object.entries(pkg.links) as Array<[keyof typeof pkg.links, typeof pkg.links[keyof typeof pkg.links]]>).filter(a => a[1]).map(link =>
typeof link[1] == 'string'
? (
-
- )
+
+ )
: (link[1] as Array).map(donationLink => (
-
- )))}
+
+ )))}
diff --git a/apps/onelauncher/frontend/src/assets/logos/skyclient.png b/apps/onelauncher/frontend/src/assets/logos/skyclient.png
deleted file mode 100644
index 1879366c07be1bc7092dc6db23dd5afa0a84e3ea..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 751
zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50
z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10!Ysfi#1%;Y|NnpD?M%5n
z#mWZr-UD(t3p^r=85sBugD~Uq{1qucLG}_)Usv{LOib)N
z?62ps{sZcn?CIhdVsW~5^214o6*yW%JEUB9R{x*Am(_Ru-{AB)Za*TXU0G5h7I^OE
z=~G7(>;!+E*?dB6T~L`1-^AL$)K0afTZLTGR=xijb(Hgb()K9?l&x>g;d<`LAi>`PaI}+F5u%1ET
z{Kbh$d~L~mj2hj{BA*z49Fun5%;4Z~@oy-fw@l@qPjy_J^{f&T54Y@I;OzQ_QRzYF
z?(dG#bD5vFbO~_CCx5y3o_zv?Lxs7;=i--(Uw&cyHsi!{%jq4G+cr%x>w4AFu&Uz}
z&jGQd%Q7$4-dT0(hE?cU#@S{cc@j2#HGH>H(7{Fb-frC~tKD|=8-<0qd|=Gcvu02c
zJD0)jXK2t;WrRpye?_N7qw>55h)!LlP>NgqAg~yyL`&1`*
zv5@(1OzoQI%s)E2c@Bx`usrzs^iI8f%L414wp>4(>=r$Ibj!s#{q@s#`SG=*7zg7M*OfVGIHO$->3XCz;64!{5l*E!$tK_0oAjM#0U}U6g074-K
v=2nJ=R)%KU1_o9J2D)>(AE9W-%}>cptHiA#=D_ASpaup{S3j3^P6{item.description}
-
-
-
- {abbreviateNumber(item.downloads)}
-
-
+
+
+ {abbreviateNumber(item.downloads)}
+
diff --git a/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx b/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
index ba226f26..0d986ac7 100644
--- a/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
+++ b/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
@@ -2,7 +2,6 @@ import type { ImgHTMLAttributes, RefAttributes } from 'react';
import CurseForgeIcon from '@/assets/logos/curseforge.svg';
import VanillaImage from '@/assets/logos/minecraft.png';
import ModrinthIcon from '@/assets/logos/modrinth.svg';
-import SkyClientImage from '@/assets/logos/skyclient.png';
export function getProviderLogoSrc(provider: string): string {
const providerName = provider.toLowerCase();
@@ -10,7 +9,6 @@ export function getProviderLogoSrc(provider: string): string {
const mapping: Record = {
modrinth: ModrinthIcon,
curseforge: CurseForgeIcon,
- skyclient: SkyClientImage,
};
return mapping[providerName];
diff --git a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$id.tsx b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$id.tsx
index c8bf9f0f..ab84165f 100644
--- a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$id.tsx
+++ b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$id.tsx
@@ -113,7 +113,6 @@ function getPackageUrl(pkg: ManagedPackage): string {
switch (pkg.provider) {
case 'Modrinth': return `https://modrinth.com/project/${pkg.slug}`;
case 'CurseForge': return `https://www.curseforge.com/minecraft/${pkg.package_type}s/${pkg.slug}`;
- case 'SkyClient': return ``;
}
}
@@ -147,12 +146,10 @@ function BrowserSidebar({ package: pkg }: { package: ManagedPackage }) {
{pkg.short_desc}
-
-
-
- {abbreviateNumber(pkg.downloads)}
-
-
+
+
+ {abbreviateNumber(pkg.downloads)}
+
@@ -170,23 +167,23 @@ function BrowserSidebar({ package: pkg }: { package: ManagedPackage }) {
{(Object.entries(pkg.links) as Array<[keyof typeof pkg.links, typeof pkg.links[keyof typeof pkg.links]]>).filter(a => a[1]).map(link =>
typeof link[1] == 'string'
? (
-
- )
+
+ )
: (link[1] as Array).map(donationLink => (
-
- )))}
+
+ )))}
@@ -288,16 +285,16 @@ function InstallButton() {
{browserContext.cluster
? version
? (
-
- Download latest to
-
- {browserContext.cluster.name}
-
- )
+
+ Download latest to
+
+ {browserContext.cluster.name}
+
+ )
: versionsLoading ? 'Looking for a version...' : 'No matching version found'
: (clusters?.length ?? 0) > 0
- ? 'Select a Cluster'
- : 'No clusters'}
+ ? 'Select a Cluster'
+ : 'No clusters'}
diff --git a/apps/onelauncher/frontend/src/utils/index.ts b/apps/onelauncher/frontend/src/utils/index.ts
index 15db87a6..1bed8a1f 100644
--- a/apps/onelauncher/frontend/src/utils/index.ts
+++ b/apps/onelauncher/frontend/src/utils/index.ts
@@ -27,7 +27,7 @@ export const ProviderNames: Record = {
legacyfabric: 'Legacy Fabric',
} as const;
-export const PROVIDERS = ['Modrinth', 'CurseForge', 'SkyClient'] as const;
+export const PROVIDERS = ['Modrinth', 'CurseForge'] as const;
export const PACKAGE_TYPES = ['mod', 'resourcepack', 'datapack', 'shaderpack'] as const;
export function pluralize(n: number, word: string, locale: string = 'en'): string {
diff --git a/packages/core/src/api/packages/provider/mod.rs b/packages/core/src/api/packages/provider/mod.rs
index 20b6876f..a4551f40 100644
--- a/packages/core/src/api/packages/provider/mod.rs
+++ b/packages/core/src/api/packages/provider/mod.rs
@@ -15,11 +15,9 @@ pub(crate) mod tests;
mod curseforge;
mod modrinth;
-// mod skyclient;
pub use curseforge::CurseForgeProviderImpl;
pub use modrinth::ModrinthProviderImpl;
-// pub use skyclient::SkyClientProviderImpl;
#[async_trait::async_trait]
pub trait ProviderExt {
@@ -66,8 +64,6 @@ macro_rules! delegate {
match $self {
Provider::Modrinth => ModrinthProviderImpl.$method($($arg),*).await,
Provider::CurseForge => CurseForgeProviderImpl.$method($($arg),*).await,
- // Provider::SkyClient => SkyClientProviderImpl.$method($($arg),*).await,
- _ => todo!("skyclient not implement")
}
};
}
diff --git a/packages/core/src/api/packages/provider/skyclient.rs b/packages/core/src/api/packages/provider/skyclient.rs
deleted file mode 100644
index f974f231..00000000
--- a/packages/core/src/api/packages/provider/skyclient.rs
+++ /dev/null
@@ -1,69 +0,0 @@
-use std::collections::HashMap;
-
-use onelauncher_entity::loader::GameLoader;
-
-use crate::api::packages::data::{
- ManagedPackage, ManagedUser, ManagedVersion, PackageAuthor, SearchQuery, SearchResult,
-};
-use crate::api::packages::provider::ProviderExt;
-use crate::error::LauncherResult;
-use crate::utils::pagination::Paginated;
-
-#[derive(Default)]
-pub struct SkyClientProviderImpl;
-
-#[async_trait::async_trait]
-impl ProviderExt for SkyClientProviderImpl {
- async fn search(&self, query: &SearchQuery) -> LauncherResult> {
- todo!("SkyClient search not implemented yet")
- }
-
- async fn get(&self, slug: &str) -> LauncherResult {
- todo!("SkyClient get package not implemented yet")
- }
-
- async fn get_multiple(&self, slugs: &[String]) -> LauncherResult> {
- todo!("SkyClient get multiple packages not implemented yet")
- }
-
- async fn get_versions_by_hashes(
- &self,
- hashes: &[String],
- ) -> LauncherResult> {
- todo!("SkyClient get versions by hashes not implemented yet")
- }
-
- async fn get_version_by_hash(&self, hash: &str) -> LauncherResult