import React from 'react'; import { pathUtils } from '@growi/core/dist/utils'; import { useTranslation } from 'next-i18next'; import { Modal, ModalHeader, ModalBody } from 'reactstrap'; import { TargetType, LabelType } from '~/interfaces/template'; import { useOnTemplateButtonClicked } from './Navbar/hooks'; type TemplateCardProps = { target: TargetType; label: LabelType; isPageCreating: boolean; onClickHandler: () => void; }; const TemplateCard: React.FC = ({ target, label, isPageCreating, onClickHandler, }) => { const { t } = useTranslation(); return (
{t(`template.${target}.label`)}

{label}

{t(`template.${target}.desc`)}

); }; type CreateTemplateModalProps = { path: string; isOpen: boolean; onClose: () => void; }; export const CreateTemplateModal: React.FC = ({ path, isOpen, onClose, }) => { const { t } = useTranslation(); const { onClickHandler: onClickTemplateButton, isPageCreating } = useOnTemplateButtonClicked(path); const parentPath = pathUtils.addTrailingSlash(path); const renderTemplateCard = (target: TargetType, label: LabelType) => (
onClickTemplateButton(label)} />
); return ( {t('template.modal_label.Create/Edit Template Page')}
{renderTemplateCard('children', '_template')} {renderTemplateCard('descendants', '__template')}
); };