import { faPencil, faSave } from "@fortawesome/free-solid-svg-icons" import { useTranslation } from "next-i18next" import { useDefinedContext } from "../../../utils/definedContext" import { EditingContext, EditingMode } from "../../generic/editable/base" import { FestaIcon } from "../../generic/renderers/fontawesome" import { Tool } from "../../generic/toolbar/tool" export type ToolToggleEditingProps = { save: () => void, } /** * ToolBar {@link Tool} which switches between {@link EditingMode}s of the surrounding context. */ export function ToolToggleEditing({ save }: ToolToggleEditingProps) { const { t } = useTranslation() const [editing, setEditing] = useDefinedContext(EditingContext) if (editing === EditingMode.EDIT) { return ( { save() setEditing(EditingMode.VIEW) }} > ) } else { return ( { setEditing(EditingMode.EDIT) }} > ) } }