import { faBinoculars, faPencil } 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 = {
onViewStart?: () => void,
onViewEnd?: () => void,
onEditStart?: () => void,
onEditEnd?: () => void,
}
/**
* ToolBar {@link Tool} which switches between {@link EditingMode}s of the surrounding context.
*/
export function ToolToggleEditing({ onViewStart, onViewEnd, onEditStart, onEditEnd }: ToolToggleEditingProps) {
const { t } = useTranslation()
const [editing, setEditing] = useDefinedContext(EditingContext)
if (editing === EditingMode.EDIT) {
return (
{
onEditEnd?.()
setEditing(EditingMode.VIEW)
onViewStart?.()
}}
>
)
}
else {
return (
{
onViewEnd?.()
setEditing(EditingMode.EDIT)
onEditStart?.()
}}
>
)
}
}