import React, { useMemo } from "react"
import { useAppState } from "../../../001_provider/001_AppStateProvider"
import { useGuiState } from "../001_GuiStateProvider"
import { useMessageBuilder } from "../../../hooks/useMessageBuilder"
export type ModelSlotAreaProps = {
}
export const ModelSlotArea = (_props: ModelSlotAreaProps) => {
const { serverSetting, getInfo } = useAppState()
const guiState = useGuiState()
const messageBuilderState = useMessageBuilder()
useMemo(() => {
messageBuilderState.setMessage(__filename, "edit", { "ja": "編集", "en": "edit" })
}, [])
const modelTiles = useMemo(() => {
if (!serverSetting.serverSetting.slotInfos) {
return []
}
return serverSetting.serverSetting.slotInfos.map((x, index) => {
if (x.voiceChangerType == null) {
return null
}
if (x.modelFile.length == 0) {
return null
}
const tileContainerClass = index == serverSetting.serverSetting.slotIndex ? "model-slot-tile-container-selected" : "model-slot-tile-container"
const name = x.name.length > 8 ? x.name.substring(0, 7) + "..." : x.name
const iconElem = x.iconFile.length > 0 ?
: