import React from "react"; import { useTranslation } from "react-i18next"; import { nanoid } from "nanoid"; import { Field } from "react-final-form"; import { useBoardConfig } from "react-sync-board"; import Hint from "../../ui/formUtils/Hint"; import Label from "../../ui/formUtils/Label"; import SliderRange from "../../ui/SliderRange"; import { ImageField } from "../../mediaLibrary"; import { backgrounds } from "../../gameComponents"; const BoardConfigForm = () => { const { t } = useTranslation(); const [boardConfig, setBoardConfig] = useBoardConfig(); const [defaultPlayerCount] = React.useState([]); const addTranslation = React.useCallback(() => { setBoardConfig((prev) => ({ ...prev, translations: [...(prev.translations || []), { id: nanoid() }], })); }, [setBoardConfig]); const removeTranslation = (idToRemove) => { setBoardConfig((prev) => ({ ...prev, translations: prev.translations.filter(({ id }) => id !== idToRemove), })); }; const CurrentBgForm = backgrounds.find( ({ type }) => type === (boardConfig.bgType || "default") )?.form; return ( <>
{t("Background")} {backgrounds.map((bg) => { return ( ); })}
{CurrentBgForm && ( {({ input: { onChange, value } }) => { return ; }} )}
{t("Informations")}
{(boardConfig.translations || []).map(({ id }, index) => { return (
{t("Translation")} {index}
); })}
); }; export default BoardConfigForm;