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

export const mockJobs: Job[] = [
  {
    id: "1",
    title: "Desenvolvedor Full Stack Sênior",
    company: "TechCorp",
    location: "São Paulo, SP",
    type: "Tempo Integral",
    salary: "R$ 12.000 - R$ 18.000",
    description:
      "Buscamos um desenvolvedor full stack experiente para liderar projetos inovadores.",
    requirements: ["React", "Node.js", "TypeScript", "5+ anos de experiência"],
    postedAt: "2025-10-15",
  },
  {
    id: "2",
    title: "Designer UX/UI",
    company: "DesignHub",
    location: "São Paulo, SP",
    type: "Remoto",
    salary: "R$ 8.000 - R$ 12.000",
    description:
      "Procuramos designer criativo para criar experiências incríveis.",
    requirements: [
      "Figma",
      "Adobe XD",
      "Portfolio forte",
      "3+ anos de experiência",
    ],
    postedAt: "2025-10-14",
  },
  {
    id: "3",
    title: "Engenheiro de Dados",
    company: "DataFlow",
    location: "Rio de Janeiro, RJ",
    type: "Tempo Integral",
    salary: "R$ 15.000 - R$ 22.000",
    description: "Oportunidade para trabalhar com big data e machine learning.",
    requirements: ["Python", "SQL", "Spark", "AWS"],
    postedAt: "2025-10-13",
  },
  {
    id: "4",
    title: "Product Manager",
    company: "InnovateLab",
    location: "Belo Horizonte, MG",
    type: "Tempo Integral",
    salary: "R$ 10.000 - R$ 16.000",
    description: "Lidere o desenvolvimento de produtos digitais inovadores.",
    requirements: ["Gestão de produtos", "Agile", "Análise de dados"],
    postedAt: "2025-10-12",
  },
  {
    id: "5",
    title: "Desenvolvedor Mobile",
    company: "AppMakers",
    location: "São Paulo, SP",
    type: "Remoto",
    salary: "R$ 9.000 - R$ 14.000",
    description: "Desenvolva aplicativos mobile de alta qualidade.",
    requirements: ["React Native", "iOS", "Android", "3+ anos"],
    postedAt: "2025-10-11",
  },
  {
    id: "6",
    title: "DevOps Engineer",
    company: "CloudTech",
    location: "São Paulo, SP",
    type: "Tempo Integral",
    salary: "R$ 13.000 - R$ 19.000",
    description: "Gerencie infraestrutura cloud e pipelines de CI/CD.",
    requirements: ["Docker", "Kubernetes", "AWS", "Terraform"],
    postedAt: "2025-10-10",
  },
];

export const mockApplications: Application[] = [
  {
    id: "1",
    jobId: "1",
    jobTitle: "Desenvolvedor Full Stack Sênior",
    company: "TechCorp",
    status: "reviewing",
    appliedAt: "2025-10-16",
  },
  {
    id: "2",
    jobId: "2",
    jobTitle: "Designer UX/UI",
    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: "Desenvolvimento Full Stack",
  profileComplete: 85,
};

export const mockNotifications: Notification[] = [
  {
    id: "1",
    title: "Nova vaga recomendada",
    message:
      "Encontramos uma vaga que combina com seu perfil: Desenvolvedor Full Stack Sênior",
    type: "info",
    read: false,
    createdAt: "2025-11-19T10:30:00",
    userId: "1",
  },
  {
    id: "2",
    title: "Atualização de candidatura",
    message: "Sua candidatura para Designer UX/UI foi movida para entrevista",
    type: "success",
    read: false,
    createdAt: "2025-11-18T14:20:00",
    userId: "1",
  },
  {
    id: "3",
    title: "Candidatura aprovada!",
    message:
      "Parabéns! Sua candidatura para Product Manager foi aprovada pela empresa InnovateLab",
    type: "success",
    read: false,
    createdAt: "2025-11-18T09:15:00",
    userId: "1",
  },
  {
    id: "4",
    title: "Nova mensagem",
    message: "A empresa TechCorp enviou uma mensagem sobre sua candidatura",
    type: "info",
    read: true,
    createdAt: "2025-11-17T16:45:00",
    userId: "1",
  },
  {
    id: "5",
    title: "Complete seu perfil",
    message:
      "Adicione mais informações ao seu perfil para aumentar suas chances em 40%",
    type: "warning",
    read: true,
    createdAt: "2025-11-17T08:00:00",
    userId: "1",
  },
  {
    id: "6",
    title: "Lembrete de entrevista",
    message:
      "Você tem uma entrevista agendada para amanhã às 15h com a DesignHub",
    type: "warning",
    read: false,
    createdAt: "2025-11-16T11:00:00",
    userId: "1",
  },
  {
    id: "7",
    title: "Nova vaga disponível",
    message:
      "5 novas vagas de Desenvolvedor foram publicadas hoje na sua região",
    type: "info",
    read: true,
    createdAt: "2025-11-15T07:30:00",
    userId: "1",
  },
  {
    id: "8",
    title: "Perfil visualizado",
    message: "3 empresas visualizaram seu perfil nas últimas 24 horas",
    type: "success",
    read: true,
    createdAt: "2025-11-14T18:20:00",
    userId: "1",
  },
];

export const mockCompanyNotifications: Notification[] = [
  {
    id: "1",
    title: "Nova candidatura recebida",
    message:
      "Ana Silva se candidatou para a vaga de Desenvolvedor Full Stack Sênior",
    type: "info",
    read: false,
    createdAt: "2025-11-19T10:30:00",
    userId: "2",
  },
  {
    id: "2",
    title: "Candidato aceitou entrevista",
    message: "Carlos Santos confirmou presença na entrevista de amanhã às 14h",
    type: "success",
    read: false,
    createdAt: "2025-11-18T14:20:00",
    userId: "2",
  },
  {
    id: "3",
    title: "Vaga com alta demanda",
    message:
      "A vaga de Designer UX/UI recebeu 15 novas candidaturas nas últimas 24h",
    type: "success",
    read: false,
    createdAt: "2025-11-18T09:15:00",
    userId: "2",
  },
  {
    id: "4",
    title: "Nova mensagem de candidato",
    message: "Maria Oliveira enviou uma mensagem sobre a vaga de Product Manager",
    type: "info",
    read: true,
    createdAt: "2025-11-17T16:45:00",
    userId: "2",
  },
  {
    id: "5",
    title: "Complete o perfil da empresa",
    message:
      "Adicione logo e informações sobre benefícios para atrair mais candidatos",
    type: "warning",
    read: true,
    createdAt: "2025-11-17T08:00:00",
    userId: "2",
  },
  {
    id: "6",
    title: "Lembrete: Entrevista agendada",
    message:
      "Você tem 2 entrevistas agendadas para amanhã. Confira os horários",
    type: "warning",
    read: false,
    createdAt: "2025-11-16T11:00:00",
    userId: "2",
  },
  {
    id: "7",
    title: "Vaga próxima de expirar",
    message:
      "A vaga de DevOps Engineer expira em 3 dias. Renove para continuar recebendo candidaturas",
    type: "warning",
    read: true,
    createdAt: "2025-11-15T07:30:00",
    userId: "2",
  },
  {
    id: "8",
    title: "Perfil empresarial visualizado",
    message: "45 candidatos visualizaram o perfil da sua empresa esta semana",
    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: "Desenvolvedora",
    content:
      "Encontrei meu emprego dos sonhos em apenas 2 semanas. Plataforma incrível!",
    avatar: "/professional-woman-diverse.png",
  },
  {
    id: "2",
    name: "Carlos Oliveira",
    role: "Designer",
    content:
      "Interface simples e vagas de qualidade. Recomendo para todos os profissionais.",
    avatar: "/professional-man.jpg",
  },
  {
    id: "3",
    name: "Ana Costa",
    role: "Product Manager",
    content:
      "O processo foi rápido e transparente. Consegui várias entrevistas rapidamente.",
    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: "Desenvolvedora Full Stack",
    experience: "5 anos de experiência",
    avatar: "/professional-woman-diverse.png",
    bio: "Desenvolvedora apaixonada por criar soluções inovadoras. Experiência em React, Node.js e cloud computing.",
    skills: ["React", "Node.js", "TypeScript", "AWS", "Docker"],
    applications: [
      {
        id: "1",
        jobId: "1",
        jobTitle: "Desenvolvedor Full Stack Sênior",
        company: "TechCorp",
        status: "pending",
        appliedAt: "2025-10-16",
      },
      {
        id: "2",
        jobId: "2",
        jobTitle: "Desenvolvedor Mobile",
        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: "Designer UX/UI",
    experience: "3 anos de experiência",
    avatar: "/professional-man.jpg",
    bio: "Designer focado em criar experiências memoráveis. Especialista em design systems e prototipagem.",
    skills: ["Figma", "Adobe XD", "UI Design", "Prototyping", "Design Systems"],
    applications: [
      {
        id: "3",
        jobId: "3",
        jobTitle: "Designer UX/UI",
        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: "Engenheira de Dados",
    experience: "7 anos de experiência",
    avatar: "/professional-woman-smiling.png",
    bio: "Engenheira de dados com forte background em machine learning e big data. Apaixonada por transformar dados em insights.",
    skills: [
      "Python",
      "SQL",
      "Spark",
      "Machine Learning",
      "Data Visualization",
    ],
    applications: [
      {
        id: "4",
        jobId: "4",
        jobTitle: "Engenheiro de Dados",
        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 anos de experiência",
    avatar: "/placeholder.svg?height=100&width=100",
    bio: "Product Manager com experiência em produtos digitais e metodologias ágeis. Focado em entregar valor ao usuário.",
    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 anos de experiência",
    avatar: "/placeholder.svg?height=100&width=100",
    bio: "DevOps engineer especializada em automação e infraestrutura cloud. Experiência com Kubernetes e 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: "Recursos Humanos",
  position: "Gerente de RH",
  joinedAt: "2023-06-15",
  avatar: "/placeholder.svg?height=200&width=200",
  bio: "Gerente de RH com mais de 10 anos de experiência em recrutamento e seleção. Apaixonado por conectar talentos com oportunidades.",
};
