All files / src/components/settings DangerZoneInfo.tsx

100% Statements 1/1
100% Branches 0/0
100% Functions 1/1
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47              5x                                                                              
import { AlertTriangle } from 'lucide-react'
 
interface DangerZoneInfoProps {
  onResetClick: () => void
}
 
export default function DangerZoneInfo({ onResetClick }: DangerZoneInfoProps) {
  return (
    <div className="space-y-6">
      <div className="flex items-center gap-2 text-destructive">
        <AlertTriangle className="h-5 w-5" />
        <h2 className="text-lg font-medium">Danger Zone</h2>
      </div>
 
      <p className="text-sm text-muted-foreground">
        Destructive operations that cannot be undone
      </p>
 
      <div className="rounded-lg border border-destructive/50 bg-destructive/5 p-6">
        <h3 className="font-medium text-destructive">Reset Database</h3>
        <p className="mt-1 text-sm text-muted-foreground">
          Completely reset the application to factory state
        </p>
 
        <ul className="mt-4 space-y-1 text-sm text-muted-foreground">
          <li>• All recipes (scraped and remixed)</li>
          <li>• All recipe images</li>
          <li>• All user profiles</li>
          <li>• All favorites, collections, and view history</li>
          <li>• All cached AI data</li>
        </ul>
 
        <p className="mt-4 text-xs text-muted-foreground">
          Search source configurations and AI prompts will be preserved.
        </p>
 
        <button
          onClick={onResetClick}
          className="mt-4 rounded-lg bg-destructive px-4 py-2 text-sm font-medium text-destructive-foreground transition-colors hover:bg-destructive/90"
        >
          Reset Database
        </button>
      </div>
    </div>
  )
}
 
← Back to Dashboard