import React, {useState} from "react"; import {Conlang} from "./dbtypes"; import {updateEntry, getPassword} from "./requests"; import {declineSaimiar} from "./saimiar_morphology"; import {SaiEntryProps, JutEntryProps, ElesuEntryProps, TukEntryProps} from "./dbtypes"; interface BaseProps { id: number; conlang: Conlang; conlangEntry: string; english: string; langSpecific: React.ReactNode; } const EntryBase = (props: BaseProps) => { const [editing, setEditing] = useState(false); const [english, setEnglish] = useState(props.english); const mainEntryStyle = { display: "flex", justifyContent: "space-between", flexDirection: "row", }; const controlStyle = { display: "flex", justifyContent: "space-between", flexDirection: "row", minWidth: "20%", }; const save = () => { updateEntry(props.conlang, props.id, english); }; const engTranslation = editing ? setEnglish(evt.target.value) }/> : english; const EditControls = ({onSave}: { onSave: () => void }) => { const cancel = () => setEditing(false); const edit = (evt) => { evt.preventDefault(); setEditing(true); }; if (!getPassword()) { return null; } return (editing ? ( ) : Edit); }; const expand = (evt) => { evt.preventDefault(); }; return (