Chore: Port over Home & Fix Suwayomi-Server Detection on Web

This commit is contained in:
Youwes09
2026-05-24 12:09:29 -05:00
parent 6c39ef538f
commit ae5d9748c7
42 changed files with 3195 additions and 1342 deletions
+2 -88
View File
@@ -1,10 +1,4 @@
import type {
PlatformAdapter,
PlatformFeature,
ServerLaunchConfig,
DiscordPresence,
AppUpdateInfo,
} from '$lib/platform-adapters/types'
import type { PlatformAdapter } from '$lib/platform-adapters/types'
let adapter: PlatformAdapter
@@ -12,87 +6,7 @@ export function initPlatformService(a: PlatformAdapter) {
adapter = a
}
function getAdapter(): PlatformAdapter {
export function getPlatformService(): PlatformAdapter {
if (!adapter) throw new Error('PlatformService not initialized')
return adapter
}
export function isSupported(feature: PlatformFeature): boolean {
return getAdapter().isSupported(feature)
}
export function launchServer(config: ServerLaunchConfig) {
return getAdapter().launchServer(config)
}
export function stopServer() {
return getAdapter().stopServer()
}
export function getServerStatus() {
return getAdapter().getServerStatus()
}
export function readFile(path: string) {
return getAdapter().readFile(path)
}
export function writeFile(path: string, data: Uint8Array) {
return getAdapter().writeFile(path, data)
}
export function pickFolder() {
return getAdapter().pickFolder()
}
export function authenticateBiometric() {
return getAdapter().authenticateBiometric()
}
export function storeCredential(key: string, value: string) {
return getAdapter().storeCredential(key, value)
}
export function getCredential(key: string) {
return getAdapter().getCredential(key)
}
export function setTitle(title: string) {
return getAdapter().setTitle(title)
}
export function minimize() {
return getAdapter().minimize()
}
export function maximize() {
return getAdapter().maximize()
}
export function close() {
return getAdapter().close()
}
export function setDiscordPresence(presence: DiscordPresence) {
return getAdapter().setDiscordPresence(presence)
}
export function clearDiscordPresence() {
return getAdapter().clearDiscordPresence()
}
export function getVersion() {
return getAdapter().getVersion()
}
export function openExternal(url: string) {
return getAdapter().openExternal(url)
}
export function checkForAppUpdate(): Promise<AppUpdateInfo | null> {
return getAdapter().checkForAppUpdate()
}
export function installAppUpdate() {
return getAdapter().installAppUpdate()
}