umami/src/app/(main)/settings/teams/[teamId]/team/TeamManage.tsx

34 lines
1 KiB
TypeScript
Raw Normal View History

2024-02-08 07:48:51 +00:00
import { useMessages, useModified } from 'components/hooks';
import { useRouter } from 'next/navigation';
import { ActionForm, Button, Modal, ModalTrigger } from 'react-basics';
2024-02-06 04:29:00 +00:00
import TeamDeleteForm from './TeamDeleteForm';
2024-01-19 00:46:40 +00:00
2024-02-08 19:47:32 +00:00
export function TeamManage({ teamId }: { teamId: string }) {
2024-01-19 00:46:40 +00:00
const { formatMessage, labels, messages } = useMessages();
const router = useRouter();
2024-02-08 07:48:51 +00:00
const { touch } = useModified();
const handleLeave = async () => {
touch('teams');
router.push('/settings/teams');
};
2024-01-19 00:46:40 +00:00
return (
<ActionForm
label={formatMessage(labels.deleteTeam)}
description={formatMessage(messages.deleteTeamWarning)}
>
<ModalTrigger>
<Button variant="danger">{formatMessage(labels.delete)}</Button>
<Modal title={formatMessage(labels.deleteTeam)}>
{(close: () => void) => (
<TeamDeleteForm teamId={teamId} onSave={handleLeave} onClose={close} />
)}
2024-01-19 00:46:40 +00:00
</Modal>
</ModalTrigger>
</ActionForm>
);
}
2024-02-08 19:47:32 +00:00
export default TeamManage;