import type {
  Job,
  Application,
  User,
  Notification,
  Stats,
  Candidate,
} from "./types";

export const mockJobs: Job[] = [
  {
    id: "1",
    title: "Senior Full Stack Developer",
    company: "TechCorp",
    location: "São Paulo, SP",
    type: "full-time",
    salary: "R$ 12,000 - R$ 18,000",
    description:
      "We are looking for an experienced full stack developer to lead innovative projects.",
    requirements: ["React", "Node.js", "TypeScript", "5+ years of experience"],
    postedAt: "2025-10-15",
  },
  {
    id: "2",
    title: "UX/UI Designer",
    company: "DesignHub",
    location: "São Paulo, SP",
    type: "remote",
    salary: "R$ 8,000 - R$ 12,000",
    description:
      "We are looking for a creative designer to craft incredible experiences.",
    requirements: [
      "Figma",
      "Adobe XD",
      "Strong portfolio",
      "3+ years of experience",
    ],
    postedAt: "2025-10-14",
  },
  {
    id: "3",
    title: "Data Engineer",
    company: "DataFlow",
    location: "Rio de Janeiro, RJ",
    type: "full-time",
    salary: "R$ 15,000 - R$ 22,000",
    description: "Opportunity to work with big data and machine learning.",
    requirements: ["Python", "SQL", "Spark", "AWS"],
    postedAt: "2025-10-13",
  },
  {
    id: "4",
    title: "Product Manager",
    company: "InnovateLab",
    location: "Belo Horizonte, MG",
    type: "full-time",
    salary: "R$ 10,000 - R$ 16,000",
    description: "Lead the development of innovative digital products.",
    requirements: ["Product management", "Agile", "Data analysis"],
    postedAt: "2025-10-12",
  },
  {
    id: "5",
    title: "Mobile Developer",
    company: "AppMakers",
    location: "São Paulo, SP",
    type: "remote",
    salary: "R$ 9,000 - R$ 14,000",
    description: "Build high-quality mobile applications.",
    requirements: ["React Native", "iOS", "Android", "3+ years"],
    postedAt: "2025-10-11",
  },
  {
    id: "6",
    title: "DevOps Engineer",
    company: "CloudTech",
    location: "São Paulo, SP",
    type: "full-time",
    salary: "R$ 13,000 - R$ 19,000",
    description: "Manage cloud infrastructure and CI/CD pipelines.",
    requirements: ["Docker", "Kubernetes", "AWS", "Terraform"],
    postedAt: "2025-10-10",
  },
];

export const mockApplications: Application[] = [
  {
    id: "1",
    jobId: "1",
    jobTitle: "Senior Full Stack Developer",
    company: "TechCorp",
    status: "reviewing",
    appliedAt: "2025-10-16",
  },
  {
    id: "2",
    jobId: "2",
    jobTitle: "UX/UI Designer",
    company: "DesignHub",
    status: "interview",
    appliedAt: "2025-10-15",
  },
  {
    id: "3",
    jobId: "4",
    jobTitle: "Product Manager",
    company: "InnovateLab",
    status: "pending",
    appliedAt: "2025-10-14",
  },
  {
    id: "4",
    jobId: "6",
    jobTitle: "DevOps Engineer",
    company: "CloudTech",
    status: "rejected",
    appliedAt: "2025-10-10",
  },
];

export const mockUser: User = {
  id: "1",
  name: "João Silva",
  email: "joao@example.com",
  role: "candidate",
  area: "Full Stack Development",
  profileComplete: 85,
};

export const mockNotifications: Notification[] = [
  {
    id: "1",
    title: "New recommended job",
    message:
      "We found a role that matches your profile: Senior Full Stack Developer",
    type: "info",
    read: false,
    createdAt: "2025-11-19T10:30:00",
    userId: "1",
  },
  {
    id: "2",
    title: "Application update",
    message: "Your application for UX/UI Designer moved to interview",
    type: "success",
    read: false,
    createdAt: "2025-11-18T14:20:00",
    userId: "1",
  },
  {
    id: "3",
    title: "Application approved!",
    message:
      "Congratulations! Your application for Product Manager was approved by InnovateLab",
    type: "success",
    read: false,
    createdAt: "2025-11-18T09:15:00",
    userId: "1",
  },
  {
    id: "4",
    title: "New message",
    message: "TechCorp sent you a message about your application",
    type: "info",
    read: true,
    createdAt: "2025-11-17T16:45:00",
    userId: "1",
  },
  {
    id: "5",
    title: "Complete your profile",
    message:
      "Add more information to your profile to boost your chances by 40%",
    type: "warning",
    read: true,
    createdAt: "2025-11-17T08:00:00",
    userId: "1",
  },
  {
    id: "6",
    title: "Interview reminder",
    message:
      "You have an interview scheduled tomorrow at 3 PM with DesignHub",
    type: "warning",
    read: false,
    createdAt: "2025-11-16T11:00:00",
    userId: "1",
  },
  {
    id: "7",
    title: "New job available",
    message:
      "5 new developer jobs were posted today in your area",
    type: "info",
    read: true,
    createdAt: "2025-11-15T07:30:00",
    userId: "1",
  },
  {
    id: "8",
    title: "Profile viewed",
    message: "3 companies viewed your profile in the last 24 hours",
    type: "success",
    read: true,
    createdAt: "2025-11-14T18:20:00",
    userId: "1",
  },
];

export const mockCompanyNotifications: Notification[] = [
  {
    id: "1",
    title: "New application received",
    message:
      "Ana Silva applied for the Senior Full Stack Developer role",
    type: "info",
    read: false,
    createdAt: "2025-11-19T10:30:00",
    userId: "2",
  },
  {
    id: "2",
    title: "Candidate accepted interview",
    message: "Carlos Santos confirmed attendance for tomorrow at 2 PM",
    type: "success",
    read: false,
    createdAt: "2025-11-18T14:20:00",
    userId: "2",
  },
  {
    id: "3",
    title: "High-demand role",
    message:
      "The UX/UI Designer role received 15 new applications in the last 24 hours",
    type: "success",
    read: false,
    createdAt: "2025-11-18T09:15:00",
    userId: "2",
  },
  {
    id: "4",
    title: "New candidate message",
    message: "Maria Oliveira sent a message about the Product Manager role",
    type: "info",
    read: true,
    createdAt: "2025-11-17T16:45:00",
    userId: "2",
  },
  {
    id: "5",
    title: "Complete your company profile",
    message:
      "Add a logo and benefits details to attract more candidates",
    type: "warning",
    read: true,
    createdAt: "2025-11-17T08:00:00",
    userId: "2",
  },
  {
    id: "6",
    title: "Reminder: interviews scheduled",
    message:
      "You have 2 interviews scheduled for tomorrow. Check the times",
    type: "warning",
    read: false,
    createdAt: "2025-11-16T11:00:00",
    userId: "2",
  },
  {
    id: "7",
    title: "Job expiring soon",
    message:
      "The DevOps Engineer role expires in 3 days. Renew it to keep receiving applications",
    type: "warning",
    read: true,
    createdAt: "2025-11-15T07:30:00",
    userId: "2",
  },
  {
    id: "8",
    title: "Company profile viewed",
    message: "45 candidates viewed your company profile this week",
    type: "success",
    read: true,
    createdAt: "2025-11-14T18:20:00",
    userId: "2",
  },
];

export const mockStats: Stats = {
  totalJobs: 247,
  totalCandidates: 1834,
  newApplications: 89,
  activeJobs: 156,
};

export const mockTestimonials = [
  {
    id: "1",
    name: "Maria Santos",
    role: "Developer",
    content:
      "I found my dream job in just 2 weeks. Incredible platform!",
    avatar: "/professional-woman-diverse.png",
  },
  {
    id: "2",
    name: "Carlos Oliveira",
    role: "Designer",
    content:
      "Simple interface and high-quality roles. I recommend it to every professional.",
    avatar: "/professional-man.jpg",
  },
  {
    id: "3",
    name: "Ana Costa",
    role: "Product Manager",
    content:
      "The process was fast and transparent. I landed several interviews quickly.",
    avatar: "/professional-woman-smiling.png",
  },
];

export const mockCandidates: Candidate[] = [
  {
    id: "1",
    name: "Ana Silva",
    email: "ana.silva@example.com",
    phone: "+55 11 98765-4321",
    location: "São Paulo, SP",
    title: "Full Stack Developer",
    experience: "5 years of experience",
    avatar: "/professional-woman-diverse.png",
    bio: "Developer passionate about building innovative solutions. Experience in React, Node.js, and cloud computing.",
    skills: ["React", "Node.js", "TypeScript", "AWS", "Docker"],
    applications: [
      {
        id: "1",
        jobId: "1",
        jobTitle: "Senior Full Stack Developer",
        company: "TechCorp",
        status: "pending",
        appliedAt: "2025-10-16",
      },
      {
        id: "2",
        jobId: "2",
        jobTitle: "Mobile Developer",
        company: "AppMakers",
        status: "accepted",
        appliedAt: "2025-10-10",
      },
    ],
  },
  {
    id: "2",
    name: "Carlos Santos",
    email: "carlos.santos@example.com",
    phone: "+55 11 91234-5678",
    location: "Rio de Janeiro, RJ",
    title: "UX/UI Designer",
    experience: "3 years of experience",
    avatar: "/professional-man.jpg",
    bio: "Designer focused on creating memorable experiences. Specialist in design systems and prototyping.",
    skills: ["Figma", "Adobe XD", "UI Design", "Prototyping", "Design Systems"],
    applications: [
      {
        id: "3",
        jobId: "3",
        jobTitle: "UX/UI Designer",
        company: "DesignHub",
        status: "pending",
        appliedAt: "2025-10-15",
      },
    ],
  },
  {
    id: "3",
    name: "Maria Oliveira",
    email: "maria.oliveira@example.com",
    phone: "+55 21 99876-5432",
    location: "Belo Horizonte, MG",
    title: "Data Engineer",
    experience: "7 years of experience",
    avatar: "/professional-woman-smiling.png",
    bio: "Data engineer with a strong background in machine learning and big data. Passionate about turning data into insights.",
    skills: [
      "Python",
      "SQL",
      "Spark",
      "Machine Learning",
      "Data Visualization",
    ],
    applications: [
      {
        id: "4",
        jobId: "4",
        jobTitle: "Data Engineer",
        company: "DataFlow",
        status: "accepted",
        appliedAt: "2025-10-13",
      },
      {
        id: "5",
        jobId: "5",
        jobTitle: "DevOps Engineer",
        company: "CloudTech",
        status: "rejected",
        appliedAt: "2025-10-08",
      },
    ],
  },
  {
    id: "4",
    name: "Pedro Costa",
    email: "pedro.costa@example.com",
    phone: "+55 31 98765-1234",
    location: "Curitiba, PR",
    title: "Product Manager",
    experience: "6 years of experience",
    avatar: "/placeholder.svg?height=100&width=100",
    bio: "Product Manager with experience in digital products and agile methodologies. Focused on delivering user value.",
    skills: [
      "Product Management",
      "Agile",
      "Scrum",
      "Data Analysis",
      "User Research",
    ],
    applications: [
      {
        id: "6",
        jobId: "1",
        jobTitle: "Product Manager",
        company: "InnovateLab",
        status: "pending",
        appliedAt: "2025-10-12",
      },
    ],
  },
  {
    id: "5",
    name: "Juliana Ferreira",
    email: "juliana.ferreira@example.com",
    phone: "+55 41 91234-8765",
    location: "Porto Alegre, RS",
    title: "DevOps Engineer",
    experience: "4 years of experience",
    avatar: "/placeholder.svg?height=100&width=100",
    bio: "DevOps engineer specialized in automation and cloud infrastructure. Experience with Kubernetes and CI/CD.",
    skills: ["Docker", "Kubernetes", "AWS", "Terraform", "CI/CD"],
    applications: [
      {
        id: "7",
        jobId: "5",
        jobTitle: "DevOps Engineer",
        company: "CloudTech",
        status: "pending",
        appliedAt: "2025-10-11",
      },
    ],
  },
];

export const mockAdminUser = {
  id: "admin-1",
  name: "João Silva",
  email: "admin@portal.com",
  role: "admin" as const,
  phone: "+55 11 99999-9999",
  department: "Human Resources",
  position: "HR Manager",
  joinedAt: "2023-06-15",
  avatar: "/placeholder.svg?height=200&width=200",
  bio: "HR manager with over 10 years of experience in recruiting and selection. Passionate about connecting talent with opportunities.",
};
