import React from 'react'; import PropTypes from 'prop-types'; import { Form, useRBACProvider } from '@strapi/helper-plugin'; import { useIntl } from 'react-intl'; import { Formik } from 'formik'; import CheckIcon from '@strapi/icons/CheckIcon'; import { ModalLayout, ModalHeader, ModalBody, ModalFooter } from '@strapi/parts/ModalLayout'; import { TabGroup, Tabs, Tab, TabPanels, TabPanel } from '@strapi/parts/Tabs'; import { Row } from '@strapi/parts/Row'; import { Box } from '@strapi/parts/Box'; import { Button } from '@strapi/parts/Button'; import { Divider } from '@strapi/parts/Divider'; import { ButtonText, H2 } from '@strapi/parts/Text'; import localeFormSchema from '../../schemas'; import useEditLocale from '../../hooks/useEditLocale'; import { getTrad } from '../../utils'; import BaseForm from './BaseForm'; import AdvancedForm from './AdvancedForm'; const ModalEdit = ({ locale, onClose }) => { const { refetchPermissions } = useRBACProvider(); const { isEditing, editLocale } = useEditLocale(); const { formatMessage } = useIntl(); const handleSubmit = async ({ displayName, isDefault }) => { await editLocale(locale.id, { name: displayName, isDefault }); await refetchPermissions(); }; return ( {({ handleSubmit }) => (
{formatMessage({ id: getTrad('Settings.list.actions.edit'), defaultMessage: 'Edit a locale', })}

{formatMessage({ id: getTrad('Settings.locales.modal.title'), defaultMessage: 'Configurations', })}

{formatMessage({ id: getTrad('Settings.locales.modal.base'), defaultMessage: 'Base settings', })} {formatMessage({ id: getTrad('Settings.locales.modal.advanced'), defaultMessage: 'Advanced settings', })}
{formatMessage({ id: 'app.components.Button.cancel' })} } endActions={ } /> )}
); }; ModalEdit.defaultProps = { locale: undefined, }; ModalEdit.propTypes = { locale: PropTypes.shape({ id: PropTypes.number.isRequired, name: PropTypes.string.isRequired, code: PropTypes.string.isRequired, isDefault: PropTypes.bool.isRequired, }), onClose: PropTypes.func.isRequired, }; export default ModalEdit;