From 56777c82307d4100f6edd4326474de97238dcce1 Mon Sep 17 00:00:00 2001
From: Szedann <65607498+Szedann@users.noreply.github.com>
Date: Fri, 25 Jul 2025 11:09:08 +0200
Subject: [PATCH] fix: proper CurseForge capitalization
---
apps/onelauncher/frontend/src/bindings.gen.ts | 14 +++++++-------
.../src/components/content/LauncherIcon.tsx | 4 ++--
.../src/components/content/PackageItem.tsx | 2 +-
.../src/components/content/ProviderIcon.tsx | 4 ++--
.../routes/app/browser/package.$provider.$slug.tsx | 2 +-
apps/onelauncher/frontend/src/utils/browser.ts | 6 +++---
apps/onelauncher/frontend/src/utils/index.ts | 13 +++++++++++--
.../src/ui/components/content/LauncherIcon.tsx | 4 ++--
.../src/ui/components/content/ProviderIcon.tsx | 4 ++--
apps/onelauncher/old_frontend/src/utils/browser.ts | 2 +-
apps/onelauncher/old_frontend/src/utils/index.ts | 6 +++---
packages/core/src/constants.rs | 4 ++--
packages/entity/src/domain/package.rs | 8 ++++----
packages/scripts/api/fetch_categories.ts | 6 +++---
14 files changed, 44 insertions(+), 35 deletions(-)
diff --git a/apps/onelauncher/frontend/src/bindings.gen.ts b/apps/onelauncher/frontend/src/bindings.gen.ts
index c3765171..91679daf 100644
--- a/apps/onelauncher/frontend/src/bindings.gen.ts
+++ b/apps/onelauncher/frontend/src/bindings.gen.ts
@@ -133,7 +133,7 @@ export type ProcessPayload = { type: "Starting"; command: string } | { type: "St
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" | "SkyClient"
export type Resolution = { width: number; height: number }
@@ -212,8 +212,11 @@ export type VersionType =
*/
"old_beta"
-const ARGS_MAP = { 'events':'{"ingress":["event"],"message":["event"],"process":["event"]}', 'core':'{"removeUser":["uuid"],"writeSettings":["setting"],"updateClusterById":["id","request"],"getScreenshots":["id"],"getClusters":[],"getWorlds":["id"],"getGameVersions":[],"getPackage":["provider","slug"],"getLoadersForVersion":["mc_version"],"getMultiplePackages":["provider","slugs"],"getPackageUser":["provider","slug"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"getUsersFromAuthor":["provider","author"],"searchPackages":["provider","query"],"getUser":["uuid"],"getProfileOrDefault":["name"],"updateClusterProfile":["name","profile"],"getPackageVersions":["provider","slug","mc_versions","loaders","offset","limit"],"launchCluster":["id","uuid"],"setDefaultUser":["uuid"],"openMsaLogin":[],"getGlobalProfile":[],"getClusterById":["id"],"getDefaultUser":["fallback"],"readSettings":[],"removeCluster":["id"],"createCluster":["options"],"getUsers":[]}', 'onelauncher':'{"set_window_style":["decorations"],"return_error":[],"open_dev_tools":[]}' }
-export type Router = { 'core': { getClusters: () => Promise,
+const ARGS_MAP = { 'onelauncher':'{"open_dev_tools":[],"set_window_style":["decorations"],"return_error":[]}', 'core':'{"setDefaultUser":["uuid"],"openMsaLogin":[],"writeSettings":["setting"],"getPackage":["provider","slug"],"getLoadersForVersion":["mc_version"],"getUsersFromAuthor":["provider","author"],"getPackageUser":["provider","slug"],"readSettings":[],"createCluster":["options"],"getPackageVersions":["provider","slug","mc_versions","loaders","offset","limit"],"downloadPackage":["provider","package_id","version_id","cluster_id","skip_compatibility"],"getMultiplePackages":["provider","slugs"],"searchPackages":["provider","query"],"getUser":["uuid"],"removeCluster":["id"],"updateClusterById":["id","request"],"getClusters":[],"getClusterById":["id"],"launchCluster":["id","uuid"],"getProfileOrDefault":["name"],"updateClusterProfile":["name","profile"],"getScreenshots":["id"],"getGameVersions":[],"getGlobalProfile":[],"getUsers":[],"removeUser":["uuid"],"getDefaultUser":["fallback"],"getWorlds":["id"]}', 'events':'{"message":["event"],"process":["event"],"ingress":["event"]}' }
+export type Router = { 'onelauncher': { return_error: () => Promise,
+open_dev_tools: () => Promise,
+set_window_style: (decorations: boolean) => Promise },
+'core': { getClusters: () => Promise,
getClusterById: (id: bigint) => Promise,
removeCluster: (id: bigint) => Promise,
createCluster: (options: CreateCluster) => Promise,
@@ -243,10 +246,7 @@ downloadPackage: (provider: Provider, packageId: string, versionId: string, clus
getUsersFromAuthor: (provider: Provider, author: PackageAuthor) => Promise },
'events': { ingress: (event: IngressPayload) => Promise,
message: (event: MessagePayload) => Promise,
-process: (event: ProcessPayload) => Promise },
-'onelauncher': { return_error: () => Promise,
-open_dev_tools: () => Promise,
-set_window_style: (decorations: boolean) => Promise } };
+process: (event: ProcessPayload) => Promise } };
export type { InferCommandOutput }
diff --git a/apps/onelauncher/frontend/src/components/content/LauncherIcon.tsx b/apps/onelauncher/frontend/src/components/content/LauncherIcon.tsx
index 5536ab92..c2a32f0e 100644
--- a/apps/onelauncher/frontend/src/components/content/LauncherIcon.tsx
+++ b/apps/onelauncher/frontend/src/components/content/LauncherIcon.tsx
@@ -1,6 +1,6 @@
import type { ImgHTMLAttributes, JSX } from 'react';
import { Show } from '@onelauncher/common/components';
-import CurseforgeIcon from '../../assets/logos/curseforge.svg';
+import CurseForgeIcon from '../../assets/logos/curseforge.svg';
import AtLauncherIcon from '../../assets/logos/launchers/atlauncher.svg';
import FTBIcon from '../../assets/logos/launchers/ftb.svg';
import GDLauncherImage from '../../assets/logos/launchers/gdlauncher.png';
@@ -22,7 +22,7 @@ export function getLauncherLogoElement(launcher: string): ElementType {
// [provider logo, is svg]
const mapping: Record, ElementType | string> = {
modrinth: ModrinthIcon,
- curseforge: CurseforgeIcon,
+ curseforge: CurseForgeIcon,
prismlauncher: PrismIcon,
atlauncher: AtLauncherIcon,
gdlauncher: GDLauncherImage,
diff --git a/apps/onelauncher/frontend/src/components/content/PackageItem.tsx b/apps/onelauncher/frontend/src/components/content/PackageItem.tsx
index 1a1ef302..24c62ec4 100644
--- a/apps/onelauncher/frontend/src/components/content/PackageItem.tsx
+++ b/apps/onelauncher/frontend/src/components/content/PackageItem.tsx
@@ -75,7 +75,7 @@ export function PackageItem({ provider, ...item }: SearchResult & { provider: Pr
{' '}
on
{' '}
- {provider}
+ {provider}
diff --git a/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx b/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
index d040c07f..ba226f26 100644
--- a/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
+++ b/apps/onelauncher/frontend/src/components/content/ProviderIcon.tsx
@@ -1,5 +1,5 @@
import type { ImgHTMLAttributes, RefAttributes } from 'react';
-import CurseforgeIcon from '@/assets/logos/curseforge.svg';
+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';
@@ -9,7 +9,7 @@ export function getProviderLogoSrc(provider: string): string {
const mapping: Record = {
modrinth: ModrinthIcon,
- curseforge: CurseforgeIcon,
+ curseforge: CurseForgeIcon,
skyclient: SkyClientImage,
};
diff --git a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx
index 11788629..f25db791 100644
--- a/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx
+++ b/apps/onelauncher/frontend/src/routes/app/browser/package.$provider.$slug.tsx
@@ -116,7 +116,7 @@ function RouteComponent() {
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 'CurseForge': return `https://www.curseforge.com/minecraft/${pkg.package_type}s/${pkg.slug}`;
case 'SkyClient': return ``;
}
}
diff --git a/apps/onelauncher/frontend/src/utils/browser.ts b/apps/onelauncher/frontend/src/utils/browser.ts
index 64875cb4..53619145 100644
--- a/apps/onelauncher/frontend/src/utils/browser.ts
+++ b/apps/onelauncher/frontend/src/utils/browser.ts
@@ -17,13 +17,13 @@ export const browserCategories = {
return [];
},
- mod(provider: string = 'Modrinth'): Array {
+ mod(provider: Provider = 'Modrinth'): Array {
return Object.values(modMapping[provider]);
},
};
-const modMapping: Record> = {
- Curseforge: [
+const modMapping: Record> = {
+ CurseForge: [
{ display: 'Adventure', id: '422' },
{ display: 'API and Library', id: '421' },
{ display: 'Armor and Tools', id: '434' },
diff --git a/apps/onelauncher/frontend/src/utils/index.ts b/apps/onelauncher/frontend/src/utils/index.ts
index d9706760..f7e17403 100644
--- a/apps/onelauncher/frontend/src/utils/index.ts
+++ b/apps/onelauncher/frontend/src/utils/index.ts
@@ -1,6 +1,6 @@
export const LAUNCHER_IMPORT_TYPES = [
'PrismLauncher',
- 'Curseforge',
+ 'CurseForge',
// 'Modrinth',
'ATLauncher',
'GDLauncher',
@@ -18,7 +18,16 @@ export const LOADERS = [
'fabric',
'legacyfabric',
] as const;
-export const PROVIDERS = ['Modrinth', 'Curseforge', 'SkyClient'] as const;
+export const ProviderNames: Record = {
+ vanilla: 'Vanilla',
+ forge: 'Forge',
+ neoforge: 'NeoForge',
+ quilt: 'Quilt',
+ fabric: 'Fabric',
+ legacyfabric: 'Legacy Fabric',
+} as const;
+
+export const PROVIDERS = ['Modrinth', 'CurseForge', 'SkyClient'] 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/apps/onelauncher/old_frontend/src/ui/components/content/LauncherIcon.tsx b/apps/onelauncher/old_frontend/src/ui/components/content/LauncherIcon.tsx
index d30bbacb..6d1ab238 100644
--- a/apps/onelauncher/old_frontend/src/ui/components/content/LauncherIcon.tsx
+++ b/apps/onelauncher/old_frontend/src/ui/components/content/LauncherIcon.tsx
@@ -1,5 +1,5 @@
import type { ImportType } from '@onelauncher/client/bindings';
-import CurseforgeIcon from '~assets/logos/curseforge.svg?component-solid';
+import CurseForgeIcon from '~assets/logos/curseforge.svg?component-solid';
import AtLauncherIcon from '~assets/logos/launchers/atlauncher.svg?component-solid';
import FTBIcon from '~assets/logos/launchers/ftb.svg?component-solid';
import GDLauncherImage from '~assets/logos/launchers/gdlauncher.png';
@@ -21,7 +21,7 @@ export function getLauncherLogoElement(launcher: ImportType): ElementType {
// [provider logo, is svg]
const mapping: Record, ElementType | string> = {
modrinth: ModrinthIcon,
- curseforge: CurseforgeIcon,
+ curseforge: CurseForgeIcon,
prismlauncher: PrismIcon,
atlauncher: AtLauncherIcon,
gdlauncher: GDLauncherImage,
diff --git a/apps/onelauncher/old_frontend/src/ui/components/content/ProviderIcon.tsx b/apps/onelauncher/old_frontend/src/ui/components/content/ProviderIcon.tsx
index b15f8576..64df85b0 100644
--- a/apps/onelauncher/old_frontend/src/ui/components/content/ProviderIcon.tsx
+++ b/apps/onelauncher/old_frontend/src/ui/components/content/ProviderIcon.tsx
@@ -1,5 +1,5 @@
import type { ManagedPackage, Providers } from '@onelauncher/client/bindings';
-import CurseforgeIcon from '~assets/logos/curseforge.svg?component-solid';
+import CurseForgeIcon from '~assets/logos/curseforge.svg?component-solid';
import ModrinthImage from '~assets/logos/modrinth.svg?component-solid';
import SkyClientImage from '~assets/logos/skyclient.png';
import { type Component, type JSX, Match, Show, splitProps, Switch } from 'solid-js';
@@ -10,7 +10,7 @@ export function getProviderLogoElement(provider: ManagedPackage | Providers): st
// [provider logo, is svg]
const mapping: Record, string | Component> = {
modrinth: ModrinthImage,
- curseforge: CurseforgeIcon,
+ curseforge: CurseForgeIcon,
skyclient: SkyClientImage,
};
diff --git a/apps/onelauncher/old_frontend/src/utils/browser.ts b/apps/onelauncher/old_frontend/src/utils/browser.ts
index db4fbdae..82051f03 100644
--- a/apps/onelauncher/old_frontend/src/utils/browser.ts
+++ b/apps/onelauncher/old_frontend/src/utils/browser.ts
@@ -23,7 +23,7 @@ export const browserCategories = {
};
const modMapping: Record = {
- Curseforge: [
+ CurseForge: [
{ display: 'Adventure', id: '422' },
{ display: 'API and Library', id: '421' },
{ display: 'Armor and Tools', id: '434' },
diff --git a/apps/onelauncher/old_frontend/src/utils/index.ts b/apps/onelauncher/old_frontend/src/utils/index.ts
index ea8085cc..aa499c94 100644
--- a/apps/onelauncher/old_frontend/src/utils/index.ts
+++ b/apps/onelauncher/old_frontend/src/utils/index.ts
@@ -172,7 +172,7 @@ export function getLicenseUrl(licenseId: string | License | null | undefined): s
export function getPackageUrl(pkg: ManagedPackage): string {
const mapping: Record string> = {
Modrinth: () => `https://modrinth.com/${pkg.package_type}/${pkg.id}`,
- Curseforge: () => {
+ CurseForge: () => {
const packageTypeMapping: Record = {
mod: 'mc-mods',
shaderpack: 'shaders',
@@ -190,11 +190,11 @@ export function getPackageUrl(pkg: ManagedPackage): string {
}
export const LOADERS: Loader[] = ['vanilla', 'fabric', 'forge', 'neoforge', 'quilt'] as const;
-export const PROVIDERS: Providers[] = ['Modrinth', 'Curseforge', 'SkyClient'] as const;
+export const PROVIDERS: Providers[] = ['Modrinth', 'CurseForge', 'SkyClient'] as const;
export const PACKAGE_TYPES: PackageType[] = ['mod', 'resourcepack', 'datapack', 'shaderpack'] as const;
export const LAUNCHER_IMPORT_TYPES: ImportType[] = [
'PrismLauncher',
- 'Curseforge',
+ 'CurseForge',
// 'Modrinth',
'ATLauncher',
'GDLauncher',
diff --git a/packages/core/src/constants.rs b/packages/core/src/constants.rs
index 3cfe8ab5..eff6c4ce 100644
--- a/packages/core/src/constants.rs
+++ b/packages/core/src/constants.rs
@@ -19,9 +19,9 @@ pub const MINECRAFT_SCOPES: &str = "service::user.auth.xboxlive.com::MBI_SSL";
// !!! URLS must NOT have a trailing slash. !!!
/// The Modrinth API base url.
pub const MODRINTH_API_URL: &str = "https://api.modrinth.com";
-/// The Curseforge API base url.
+/// The CurseForge API base url.
pub const CURSEFORGE_API_URL: &str = "https://api.curseforge.com";
-/// The Minecraft game ID on Curseforge.
+/// The Minecraft game ID on CurseForge.
pub const CURSEFORGE_GAME_ID: u32 = 432;
/// Our metadata API base url.
pub const METADATA_API_URL: &str = "https://meta.polyfrost.org";
diff --git a/packages/entity/src/domain/package.rs b/packages/entity/src/domain/package.rs
index ba74951e..4f99c3c8 100644
--- a/packages/entity/src/domain/package.rs
+++ b/packages/entity/src/domain/package.rs
@@ -33,7 +33,7 @@ impl PackageType {
#[sea_orm(rs_type = "u8", db_type = "Integer")]
pub enum Provider {
Modrinth = 0,
- Curseforge = 1,
+ CurseForge = 1,
SkyClient = 2,
}
@@ -48,7 +48,7 @@ impl Provider {
pub fn name(&self) -> &str {
match self {
Self::Modrinth => "Modrinth",
- Self::Curseforge => "Curseforge",
+ Self::CurseForge => "CurseForge",
Self::SkyClient => "SkyClient",
}
}
@@ -58,13 +58,13 @@ impl Provider {
pub fn website(&self) -> &str {
match self {
Self::Modrinth => "https://modrinth.com/",
- Self::Curseforge => "https://curseforge.com/",
+ Self::CurseForge => "https://curseforge.com/",
Self::SkyClient => "https://skyclient.co/",
}
}
#[must_use]
pub const fn get_providers() -> &'static [Self] {
- &[Self::Modrinth, Self::Curseforge, Self::SkyClient]
+ &[Self::Modrinth, Self::CurseForge, Self::SkyClient]
}
}
\ No newline at end of file
diff --git a/packages/scripts/api/fetch_categories.ts b/packages/scripts/api/fetch_categories.ts
index 36b12efe..61b84b4a 100644
--- a/packages/scripts/api/fetch_categories.ts
+++ b/packages/scripts/api/fetch_categories.ts
@@ -18,7 +18,7 @@ async function loadEnv() {
dotenv.config({ path: `${path}/.env` });
}
-async function fetchCategoriesCurseforge(packageType: PackageType): Promise {
+async function fetchCategoriesCurseForge(packageType: PackageType): Promise {
const key = process.env.CURSEFORGE_API_KEY;
if (key === undefined) {
@@ -55,7 +55,7 @@ async function fetchCategoriesCurseforge(packageType: PackageType): Promise {
return category.isClass !== true && category.classId === classIds[packageType];
})
@@ -108,7 +108,7 @@ async function fetchCategoriesModrinth(packageType: PackageType): Promise