import React from "react"; import {IShortWeapon, IWeapon} from "../types/IUnit"; import {Accordion, AccordionDetails, AccordionSummary} from "@mui/material"; import {IconUrl} from "../core/api"; import {ExpandMore} from "@mui/icons-material"; import {IMod} from "../types/Imod"; import {Irace} from "../types/Irace"; import WeaponFull from "./WeaponFull"; interface IWeaponProps { weapon: IShortWeapon, isDefault: Boolean, renderRequired: Boolean, mod: IMod, race: Irace, haveReinforceMenu: Boolean, } class Weapon extends React.Component { public static defaultProps = { isDefault: false, renderRequired: true, }; humanReadableName(unit: string) { const firstUpper = String(unit).charAt(0).toUpperCase() + String(unit).slice(1); return firstUpper.replaceAll('_', ' ').replace('.rgd', ''); } render() { const weapon = this.props.weapon return (
} aria-controls="panel1-content" id="panel1-header" > {!this.props.isDefault && weapon.icon && !weapon.icon.endsWith("upgrade.png") ? : ( weapon.isMeleeWeapon ? : )} {weapon.name ? weapon.name : this.humanReadableName(weapon.filename)}
); } } export default Weapon;