// React Imports import { useState } from 'react' // MUI Imports import Dialog from '@mui/material/Dialog' import DialogTitle from '@mui/material/DialogTitle' import DialogContent from '@mui/material/DialogContent' import DialogActions from '@mui/material/DialogActions' import DialogContentText from '@mui/material/DialogContentText' import Button from '@mui/material/Button' import Typography from '@mui/material/Typography' import Box from '@mui/material/Box' import Alert from '@mui/material/Alert' import Chip from '@mui/material/Chip' // Types import { Campaign } from '@/types/services/campaign' type Props = { open: boolean onClose: () => void onConfirm: () => void campaign: Campaign | null isDeleting?: boolean } const DeleteCampaignDialog = ({ open, onClose, onConfirm, campaign, isDeleting = false }: Props) => { if (!campaign) return null const getCampaignTypeColor = (type: string) => { switch (type) { case 'POINTS': return 'primary' case 'TOKENS': return 'success' case 'REWARD': return 'warning' case 'MIXED': return 'info' default: return 'secondary' } } return ( Hapus Kampanye Apakah Anda yakin ingin menghapus kampanye berikut? {campaign.name} {campaign.description && ( {campaign.description} )} Periode:{' '} {new Date(campaign.start_date).toLocaleDateString('id-ID', { year: 'numeric', month: 'short', day: 'numeric' })}{' '} -{' '} {new Date(campaign.end_date).toLocaleDateString('id-ID', { year: 'numeric', month: 'short', day: 'numeric' })} Status: {campaign.is_active ? 'Aktif' : 'Tidak Aktif'} {campaign.show_on_app && ' • Tampil di App'} Dibuat:{' '} {new Date(campaign.created_at).toLocaleDateString('id-ID', { year: 'numeric', month: 'long', day: 'numeric' })} Peringatan: Tindakan ini tidak dapat dibatalkan. Semua data yang terkait dengan kampanye ini akan dihapus secara permanen, termasuk:
  • Aturan kampanye (rules)
  • Riwayat penggunaan kampanye
  • Data analitik kampanye
  • Pastikan tidak ada pengguna yang masih menggunakan kampanye ini dan tidak ada transaksi yang sedang berjalan sebelum menghapus.
    ) } export default DeleteCampaignDialog