diff options
| author | Kurt Himebauch <136133082+xXJSONDeruloXx@users.noreply.github.com> | 2026-09-10 15:39:09 -0400 |
|---|---|---|
| committer | Kurt Himebauch <136133082+xXJSONDeruloXx@users.noreply.github.com> | 2026-09-10 15:39:09 -0400 |
| commit | 9f09fe0438c52922ac4f36eddb8c6e5808eb26b2 (patch) | |
| tree | c29e0f793c13071fea185b2bb9dcc5c487c5d405 | |
| parent | 769cd7f03990bf1d03c1b57f0929be9c3158e463 (diff) | |
| download | decky-lsfg-vk-9f09fe0438c52922ac4f36eddb8c6e5808eb26b2.tar.gz decky-lsfg-vk-9f09fe0438c52922ac4f36eddb8c6e5808eb26b2.zip | |
refactor: expose explicit flatpak app api
| -rw-r--r-- | src/api/lsfgApi.ts | 46 |
1 files changed, 27 insertions, 19 deletions
diff --git a/src/api/lsfgApi.ts b/src/api/lsfgApi.ts index 567e1ae..3e93620 100644 --- a/src/api/lsfgApi.ts +++ b/src/api/lsfgApi.ts @@ -30,10 +30,6 @@ export interface SteamBranchStatus extends ApiResult { } export type LsfgConfig = ConfigurationData; -export type TargetTransport = - | { kind: "host" } - | { kind: "flatpak"; flatpakAppId: string }; -export type FlatpakTargetSupportStatus = "ready" | "needs-runtime" | "unsupported" | "error"; export interface GameConfigEntry { appid: string; @@ -45,11 +41,10 @@ export interface InstalledGame { appid: string; name: string; nonSteam: boolean; - transport: TargetTransport; + directFlatpak?: boolean; executable?: string; arguments?: string; startDir?: string; - flatpakSupport?: FlatpakTargetSupport; } export interface GlobalConfig { @@ -57,15 +52,6 @@ export interface GlobalConfig { no_fp16: boolean; } -export interface FlatpakTargetSupport extends ApiResult { - flatpak_app_id?: string; - runtime?: string | null; - runtime_branch?: string | null; - support_status: FlatpakTargetSupportStatus; - extension_installed: boolean; - installed_branches: string[]; -} - export interface WorkaroundState { dxvkFrameRate: number; disableGamescopeWsi: boolean; @@ -82,7 +68,6 @@ export interface WorkaroundStateResult extends ApiResult { wrapper_owned?: boolean; shortcut_exe?: string | null; command_token_added?: boolean; - transport?: TargetTransport | null; } export interface GameConfigsResult extends ApiResult { @@ -133,14 +118,38 @@ export interface FlatpakExtensionToggleResult extends ApiResult { installed: boolean; } +export interface FlatpakApp { + app_id: string; + app_name: string; + runtime?: string | null; + runtime_branch?: string | null; + runtime_ready: boolean; + prepared: boolean; + owned: boolean; + error?: string | null; +} + +export interface FlatpakAppsResult extends ApiResult { + apps?: FlatpakApp[]; +} + +export interface FlatpakAppResult extends ApiResult { + app_id: string; + runtime?: string | null; + runtime_branch?: string | null; + prepared: boolean; + owned: boolean; +} + export const installLsfgVk = callable<[], InstallationResult>("install_lsfg_vk"); export const uninstallLsfgVk = callable<[], InstallationResult>("uninstall_lsfg_vk"); export const checkLsfgVkInstalled = callable<[], InstallationStatus>("check_lsfg_vk_installed"); export const getLosslessScalingBranchStatus = callable<[], SteamBranchStatus>("get_lossless_scaling_branch_status"); export const getConfigFileContent = callable<[], FileContentResult>("get_config_file_content"); export const getFlatpakSupportStatus = callable<[], FlatpakExtensionStatus>("get_flatpak_support_status"); -export const ensureFlatpakSupport = callable<[string], FlatpakTargetSupport>("ensure_flatpak_support"); -export const repairFlatpakSupport = callable<[string], FlatpakTargetSupport>("repair_flatpak_support"); +export const getFlatpakApps = callable<[], FlatpakAppsResult>("get_flatpak_apps"); +export const prepareFlatpakApp = callable<[string], FlatpakAppResult>("prepare_flatpak_app"); +export const removeFlatpakApp = callable<[string], FlatpakAppResult>("remove_flatpak_app"); export const setFlatpakExtensionEnabled = callable<[string, boolean], FlatpakExtensionToggleResult>("set_flatpak_extension_enabled"); export const getGameConfigs = callable<[], GameConfigsResult>("get_game_configs"); export const getInstalledGames = callable<[], InstalledGamesResult>("get_installed_games"); @@ -153,7 +162,6 @@ export const setWorkaroundState = callable<[ WorkaroundState, string | null | undefined, boolean, - TargetTransport | null | undefined, ], WorkaroundStateResult>("set_workaround_state"); export const removeWorkaroundState = callable<[string], WorkaroundStateResult>("remove_workaround_state"); export const getDebugFileContents = callable<[], DebugFileContentsResult>("get_debug_file_contents"); |
