Refactored slightly
This commit is contained in:
+2
-2
@@ -8,7 +8,7 @@ import {
|
||||
User,
|
||||
LogOut,
|
||||
} from "lucide-react";
|
||||
import { getVersions } from "./services/SaturnApi";
|
||||
import { getVersions } from "./lib/saturn";
|
||||
import { clsx, type ClassValue } from "clsx";
|
||||
import { twMerge } from "tailwind-merge";
|
||||
import Logo from "@/assets/logo.png";
|
||||
@@ -22,7 +22,7 @@ function cn(...inputs: ClassValue[]) {
|
||||
import PlaySection from "./components/PlaySection";
|
||||
import ModsSection from "./components/ModsSection";
|
||||
import SettingsSection from "./components/SettingsSection";
|
||||
import { GameVersion } from "./services/Types";
|
||||
import { GameVersion } from "./lib/types";
|
||||
|
||||
type Section = "play" | "mods" | "settings";
|
||||
|
||||
|
||||
@@ -14,11 +14,11 @@ import {
|
||||
getVersions,
|
||||
toggleMod,
|
||||
installMod,
|
||||
} from "../services/SaturnApi";
|
||||
} from "../lib/saturn";
|
||||
import { clsx, type ClassValue } from "clsx";
|
||||
import { twMerge } from "tailwind-merge";
|
||||
import { motion, AnimatePresence } from "framer-motion";
|
||||
import { GameVersion, Mod } from "@/services/Types";
|
||||
import { GameVersion, Mod } from "@/lib/types";
|
||||
|
||||
function cn(...inputs: ClassValue[]) {
|
||||
return twMerge(clsx(inputs));
|
||||
|
||||
@@ -3,8 +3,8 @@ import { Play, Loader2 } from "lucide-react";
|
||||
// import { launchGame } from "../services/SaturnApi";
|
||||
import Bg from "@/assets/bg.png";
|
||||
import { listen } from "@tauri-apps/api/event";
|
||||
import { GameVersion } from "@/services/Types";
|
||||
import { launch } from "@/services/LauncherApi";
|
||||
import { GameVersion } from "@/lib/types";
|
||||
import { launch } from "@/lib/launcher";
|
||||
|
||||
interface PlaySectionProps {
|
||||
version: GameVersion;
|
||||
|
||||
@@ -7,9 +7,9 @@ import {
|
||||
Info,
|
||||
AlertTriangle,
|
||||
} from "lucide-react";
|
||||
import { getSettings, updateSettings } from "../services/SaturnApi";
|
||||
import { getSettings, updateSettings } from "../lib/saturn";
|
||||
import { motion } from "framer-motion";
|
||||
import { LauncherSettings } from "@/services/Types";
|
||||
import { LauncherSettings } from "@/lib/types";
|
||||
|
||||
const SettingsSection: React.FC = () => {
|
||||
const [settings, setSettings] = useState<LauncherSettings | null>(null);
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
import { invoke } from "@tauri-apps/api/core";
|
||||
|
||||
/**
|
||||
* Create Microsoft login URL
|
||||
*/
|
||||
export async function authCreateLink(): Promise<string> {
|
||||
return await invoke("auth_create_link");
|
||||
}
|
||||
|
||||
/**
|
||||
* Exchange auth code for account
|
||||
*/
|
||||
export async function authLogin(code: string) {
|
||||
return await invoke("auth_login", { code });
|
||||
}
|
||||
|
||||
/**
|
||||
* Refresh account by UUID
|
||||
*/
|
||||
export async function authRefresh(uuid: string) {
|
||||
return await invoke("auth_refresh", { uuid });
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all stored accounts
|
||||
*/
|
||||
export async function authList() {
|
||||
return await invoke("auth_list");
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove account by UUID
|
||||
*/
|
||||
export async function authRemove(uuid: string) {
|
||||
return await invoke("auth_remove", { uuid });
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate token (not expired)
|
||||
*/
|
||||
export async function authValidate(uuid: string): Promise<boolean> {
|
||||
return await invoke("auth_validate", { uuid });
|
||||
}
|
||||
|
||||
/**
|
||||
* Get valid account (auto-refresh if needed)
|
||||
*/
|
||||
export async function authGetValid(uuid: string) {
|
||||
return await invoke("auth_get_valid", { uuid });
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import { invoke } from "@tauri-apps/api/core";
|
||||
|
||||
/**
|
||||
* Launch the game with the selected account and version
|
||||
*/
|
||||
export async function launch() {
|
||||
return await invoke("launch_game");
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
import { invoke } from "@tauri-apps/api/core";
|
||||
import { GameVersion, LauncherSettings, Mod } from "./Types";
|
||||
import { GameVersion, LauncherSettings, Mod } from "./types";
|
||||
|
||||
// --- Versions ---
|
||||
export async function getVersions(): Promise<GameVersion[]> {
|
||||
@@ -1,13 +0,0 @@
|
||||
import { invoke } from "@tauri-apps/api/core";
|
||||
|
||||
const clientId = "74909cec-49b6-4fee-aa60-1b2a57ef72e1";
|
||||
|
||||
export async function authenticate() {
|
||||
return await invoke("plugin:lighty-launcher|authenticate", {
|
||||
client_id: clientId,
|
||||
});
|
||||
}
|
||||
|
||||
export async function launch() {
|
||||
return await invoke("launch_game");
|
||||
}
|
||||
Reference in New Issue
Block a user