mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2026-04-16 06:18:42 +02:00
CODEBASE: Refactor ImportSave component (#2505)
This commit is contained in:
@@ -64,7 +64,7 @@ import { ActivateRecoveryMode, RecoveryMode, RecoveryRoot } from "./React/Recove
|
||||
import { AchievementsRoot } from "../Achievements/AchievementsRoot";
|
||||
import { ErrorBoundary } from "./ErrorBoundary";
|
||||
import { ThemeBrowser } from "../Themes/ui/ThemeBrowser";
|
||||
import { ImportSave } from "./React/ImportSave";
|
||||
import { ImportSaveComparison } from "./React/ImportSaveComparison";
|
||||
import { BypassWrapper } from "./React/BypassWrapper";
|
||||
|
||||
import { Apr1 } from "./Apr1";
|
||||
@@ -474,7 +474,7 @@ export function GameRoot(): React.ReactElement {
|
||||
break;
|
||||
}
|
||||
case Page.ImportSave: {
|
||||
mainPage = <ImportSave saveData={pageWithContext.saveData} automatic={!!pageWithContext.automatic} />;
|
||||
mainPage = <ImportSaveComparison saveData={pageWithContext.saveData} automatic={!!pageWithContext.automatic} />;
|
||||
withSidebar = false;
|
||||
bypassGame = true;
|
||||
break;
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
import React from "react";
|
||||
|
||||
import { Tooltip } from "@mui/material";
|
||||
|
||||
import ThumbUpAlt from "@mui/icons-material/ThumbUpAlt";
|
||||
import ThumbDownAlt from "@mui/icons-material/ThumbDownAlt";
|
||||
|
||||
export const ComparisonIcon = ({ isBetter }: { isBetter: boolean }): JSX.Element => {
|
||||
const title = isBetter ? "Imported value is larger!" : "Imported value is smaller!";
|
||||
const icon = isBetter ? <ThumbUpAlt color="success" /> : <ThumbDownAlt color="error" />;
|
||||
|
||||
return <Tooltip title={title}>{icon}</Tooltip>;
|
||||
};
|
||||
@@ -1 +0,0 @@
|
||||
export * from "./ImportSave";
|
||||
@@ -23,23 +23,31 @@ import DirectionsRunIcon from "@mui/icons-material/DirectionsRun";
|
||||
import ArrowBackIcon from "@mui/icons-material/ArrowBack";
|
||||
import KeyboardArrowDownIcon from "@mui/icons-material/KeyboardArrowDown";
|
||||
import KeyboardArrowUpIcon from "@mui/icons-material/KeyboardArrowUp";
|
||||
import ThumbUpAlt from "@mui/icons-material/ThumbUpAlt";
|
||||
import ThumbDownAlt from "@mui/icons-material/ThumbDownAlt";
|
||||
|
||||
import { Skills } from "@nsdefs";
|
||||
|
||||
import { ImportData, saveObject } from "../../../SaveObject";
|
||||
import { Settings } from "../../../Settings/Settings";
|
||||
import { convertTimeMsToTimeElapsedString } from "../../../utils/StringHelperFunctions";
|
||||
import { formatMoney, formatNumberNoSuffix } from "../../formatNumber";
|
||||
import { ConfirmationModal } from "../ConfirmationModal";
|
||||
import { pushImportResult } from "../../../Electron";
|
||||
import { Router } from "../../GameRoot";
|
||||
import { Page } from "../../Router";
|
||||
import { useBoolean } from "../hooks";
|
||||
import { ImportData, saveObject } from "../../SaveObject";
|
||||
import { Settings } from "../../Settings/Settings";
|
||||
import { convertTimeMsToTimeElapsedString } from "../../utils/StringHelperFunctions";
|
||||
import { formatMoney, formatNumberNoSuffix } from "../formatNumber";
|
||||
import { ConfirmationModal } from "./ConfirmationModal";
|
||||
import { pushImportResult } from "../../Electron";
|
||||
import { Router } from "../GameRoot";
|
||||
import { Page } from "../Router";
|
||||
import { useBoolean } from "./hooks";
|
||||
|
||||
import { ComparisonIcon } from "./ComparisonIcon";
|
||||
import { SaveData } from "../../../types";
|
||||
import { handleGetSaveDataInfoError } from "../../../utils/ErrorHandler";
|
||||
import { OptionSwitch } from "../OptionSwitch";
|
||||
import { SaveData } from "../../types";
|
||||
import { handleGetSaveDataInfoError } from "../../utils/ErrorHandler";
|
||||
import { OptionSwitch } from "./OptionSwitch";
|
||||
|
||||
const ComparisonIcon = ({ isBetter }: { isBetter: boolean }): JSX.Element => {
|
||||
const title = isBetter ? "Imported value is larger!" : "Imported value is smaller!";
|
||||
const icon = isBetter ? <ThumbUpAlt color="success" /> : <ThumbDownAlt color="error" />;
|
||||
|
||||
return <Tooltip title={title}>{icon}</Tooltip>;
|
||||
};
|
||||
|
||||
const useStyles = makeStyles()((theme: Theme) => ({
|
||||
root: {
|
||||
@@ -93,7 +101,7 @@ const playerSkills: (keyof Skills)[] = ["hacking", "strength", "defense", "dexte
|
||||
|
||||
let initialAutosave = 0;
|
||||
|
||||
export const ImportSave = (props: { saveData: SaveData; automatic: boolean }): JSX.Element => {
|
||||
export const ImportSaveComparison = (props: { saveData: SaveData; automatic: boolean }): JSX.Element => {
|
||||
const { classes } = useStyles();
|
||||
const [importData, setImportData] = useState<ImportData | undefined>();
|
||||
const [currentData, setCurrentData] = useState<ImportData | undefined>();
|
||||
Reference in New Issue
Block a user