summaryrefslogtreecommitdiff
path: root/src/components/SetupTab.tsx
blob: 98d6e7856014d7f1cb17c00d88ec89aa52b21b03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import { PanelSection } from "@decky/ui";
import type { SteamBranchStatus } from "../api/lsfgApi";
import { InstallationButton } from "./InstallationButton";
import { StatusDisplay } from "./StatusDisplay";

interface SetupTabProps {
  isInstalled: boolean;
  installationStatus: string;
  losslessScalingInstalled: boolean;
  losslessScalingStatus: string;
  steamBranchStatus: SteamBranchStatus | null;
  isInstalling: boolean;
  isUninstalling: boolean;
  onInstall: () => void;
  onUninstall: () => void;
}

export function SetupTab({
  isInstalled,
  installationStatus,
  losslessScalingInstalled,
  losslessScalingStatus,
  steamBranchStatus,
  isInstalling,
  isUninstalling,
  onInstall,
  onUninstall,
}: SetupTabProps) {
  return (
    <PanelSection title="Setup">
      <StatusDisplay
        installationStatus={installationStatus}
        losslessScalingInstalled={losslessScalingInstalled}
        losslessScalingStatus={losslessScalingStatus}
        steamBranchStatus={steamBranchStatus}
      />
      <InstallationButton
        isInstalled={isInstalled}
        isInstalling={isInstalling}
        isUninstalling={isUninstalling}
        onInstall={onInstall}
        onUninstall={onUninstall}
      />
    </PanelSection>
  );
}