import React, { useEffect, useMemo, useState, useRef } from 'react' import { useTranslation } from 'react-i18next' import OLForm from '@/features/ui/components/ol/ol-form' import OLFormGroup from '@/features/ui/components/ol/ol-form-group' import OLFormControl from '@/features/ui/components/ol/ol-form-control' import OLFormLabel from '@/features/ui/components/ol/ol-form-label' import OLButton from '@/features/ui/components/ol/ol-button' import withErrorBoundary from '../../../infrastructure/error-boundary' import { Template } from '../../../../../types/template' import TemplateActionModal from './template-action-modal' import { useTemplateContext } from '../context/template-context' import SettingsTemplateCategory from './settings/settings-template-category' import SettingsLanguage from './settings/settings-language' type EditTemplateModalProps = { showModal: boolean handleCloseModal: () => void actionHandler: (editedTemplate: Template) => void | Promise } function EditTemplateModal({ showModal, handleCloseModal, actionHandler, }: EditTemplateModalProps) { const { t } = useTranslation() const { template } = useTemplateContext() const [editedTemplate, setEditedTemplate] = useState