import React from "react"; import { BitNodes } from "../BitNode"; import { IRouter } from "../../ui/Router"; import { use } from "../../ui/Context"; import { Modal } from "../../ui/React/Modal"; import Typography from "@mui/material/Typography"; import Button from "@mui/material/Button"; import { BitnodeMultiplierDescription } from "./BitnodeMultipliersDescription"; interface IProps { open: boolean; onClose: () => void; n: number; level: number; destroyedBitNode: number; flume: boolean; enter: (router: IRouter, flume: boolean, destroyedBitNode: number, newBitNode: number) => void; } export function PortalModal(props: IProps): React.ReactElement { const router = use.Router(); const bitNodeKey = "BitNode" + props.n; const bitNode = BitNodes[bitNodeKey]; if (bitNode == null) throw new Error(`Could not find BitNode object for number: ${props.n}`); const maxSourceFileLevel = props.n === 12 ? "∞" : "3"; const newLevel = Math.min(props.level + 1, props.n === 12 ? Infinity : 3); return ( BitNode-{props.n}: {bitNode.name}
Source-File Level: {props.level} / {maxSourceFileLevel}

Difficulty: {["easy", "normal", "hard"][bitNode.difficulty]}

{bitNode.info}

); }