import type { PracticeModule } from "@/types/practice";

export const mockPracticeModules: PracticeModule[] = [
  {
    slug: "translation",
    title: "Legal Translation Challenge",
    description: "Translate legal terms accurately in context with timed multiple-choice questions.",
    isInteractive: true,
    difficulty: "Beginner",
    questions: [
      {
        id: "q1",
        prompt: "Spanish term: incumplimiento contractual",
        choices: ["Contractual compliance", "Breach of contract", "Contract interpretation", "Mutual assent"],
        answerIndex: 1,
      },
      {
        id: "q2",
        prompt: "Spanish term: medida cautelar",
        choices: ["Class action", "Summary judgment", "Injunctive relief", "Arbitration clause"],
        answerIndex: 2,
      },
      {
        id: "q3",
        prompt: "Spanish term: fuerza mayor",
        choices: ["Strict liability", "Force majeure", "Punitive damages", "Specific performance"],
        answerIndex: 1,
      },
    ],
  },
  {
    slug: "term-matching",
    title: "Term Matching Game",
    description: "Match core legal concepts with the most accurate definition in English.",
    isInteractive: true,
    difficulty: "Intermediate",
    questions: [
      {
        id: "q1",
        prompt: "Match: consideration",
        choices: [
          "A legally binding command from the court",
          "A bargained-for exchange of value between parties",
          "A prior case that has no legal effect",
          "A statement made outside of court",
        ],
        answerIndex: 1,
      },
      {
        id: "q2",
        prompt: "Match: injunction",
        choices: [
          "A court order requiring a party to do or stop doing something",
          "A clause that sets venue for disputes",
          "A witness statement under oath",
          "A mandatory arbitration waiver",
        ],
        answerIndex: 0,
      },
      {
        id: "q3",
        prompt: "Match: precedent",
        choices: [
          "A contractual deadline extension",
          "A final administrative regulation",
          "A prior judicial decision used as authority",
          "A private settlement term",
        ],
        answerIndex: 2,
      },
    ],
  },
  {
    slug: "contract-clauses",
    title: "Contract Clause Practice",
    description: "Identify the strongest contract clause option for each scenario.",
    isInteractive: true,
    difficulty: "Advanced",
    questions: [
      {
        id: "q1",
        prompt: "Choose the strongest force majeure clause element:",
        choices: [
          "No definition of triggering events",
          "Broad reference without notice obligations",
          "Defined events, notice timeline, and mitigation duty",
          "Automatic termination without limits",
        ],
        answerIndex: 2,
      },
      {
        id: "q2",
        prompt: "Best limitation of liability drafting choice:",
        choices: [
          "Exclude all damages including willful misconduct",
          "Cap liability with carve-outs for fraud and gross negligence",
          "No cap and no exclusions",
          "Cap liability only for one party",
        ],
        answerIndex: 1,
      },
      {
        id: "q3",
        prompt: "Best dispute resolution clause for cross-border deals:",
        choices: [
          "No governing law or venue specified",
          "Unilateral right to sue in any court worldwide",
          "Clear governing law, venue, and arbitration seat",
          "Only internal escalation with no external remedy",
        ],
        answerIndex: 2,
      },
    ],
  },
];

export const getPracticeBySlug = (slug: string) =>
  mockPracticeModules.find((module) => module.slug === slug);
