Files
tartarus-app/src/components/dev-tools/LeftMenu.tsx

63 lines
1.9 KiB
TypeScript
Raw Normal View History

import React from "react";
import styles from "@/styles/dev-tools.module.css"
import { RichTreeView } from '@mui/x-tree-view/RichTreeView';
import { Container, Select, Stack, MenuItem, InputLabel, Typography } from "@mui/material"
import { buildingTypes, unitTypes } from "@/types/dev-tools-extra";
import { useEditor } from "@/hooks/useEditor";
const debugCard = [
{
id: "terrain_forest",
label: "Forest",
children: [
{
id: "terrain_haunted_forest",
label: "Haunted Forest",
children: [
{
id: 'terrain_undead_candy_forest',
label: "Undead Candy Forest"
}
]
}
]
},
]
export default function LeftMenu(){
//const [themes, setThemes] = React.useState<ThemeSelection[]>([]); // get from the database
const [menuMode, setMenuMode] = React.useState<"unit" | "card">("card");
const { changeCurrentDataId } = useEditor();
const handleSelectAsset = (_e: React.MouseEvent<Element, MouseEvent>, id: string) => {
changeCurrentDataId!(id);
}
return (
<Container className={styles.leftmenu}>
<Stack >
<Typography id="assetTypeFilter">Asset Type</Typography>
<Select className="assetTypeFilter">
<MenuItem value="">All</MenuItem>
{menuMode === "card" ?
buildingTypes.map((opt, i) => (<MenuItem value={opt} key={i}>{opt[0].toUpperCase() + opt.slice(1)}</MenuItem>)) :
unitTypes.map((opt, i) => (<MenuItem value={opt} key={i}>{opt[0].toUpperCase() + opt.slice(1)}</MenuItem>))
}
</Select>
<InputLabel id="themeFilter">Theme</InputLabel>
<Select className="themeFilter" label="Theme" >
<MenuItem value="">All</MenuItem>
</Select>
</Stack>
<Typography >
Current {menuMode}s created
</Typography>
<RichTreeView items={debugCard} onItemClick={handleSelectAsset}>
</RichTreeView>
</Container>
)
}