import { LeadActivity } from "@/types/lead";
import { Building, Car, Home, Store } from "lucide-react";

export const LEADS_CONSTANT = {
  BUY: 'buy',
  SELL: 'sell',
  RENT: 'rent',
  LEASE: 'lease',
  PREFERRED_PROJECT: 'preferred_project',
  YES: 'yes',
  OPEN_TO_SUGGESTION: 'open_to_suggestions',
  RESIDENTIAL: 'residential',
  PLOT: 'plot',
};

export const leads = [
    {
      id: 'LD001',
      name: 'Rajesh Sharma',
      phoneNumber: '9876543210',
      email: 'rajesh.sharma@gmail.com',
      leadScore: 85,
      leadStage: 'Qualified',
      project: 'Sunshine Enclave',
      source: 'Website',
      assignedTo: 'Priya Patel',
      createdOn: new Date('2024-02-15'),
      lastContacted: new Date('2024-03-18'),
      notes: 'Interested in 3BHK apartment, budget 80-90 lakhs',
    },
    {
      id: 'LD002',
      name: 'Ananya Desai',
      phoneNumber: '8765432109',
      email: 'ananya.desai@yahoo.com',
      leadScore: 65,
      leadStage: 'Proposal',
      project: 'Green Valley Villas',
      source: 'Property Portal',
      assignedTo: 'Vikram Singh',
      createdOn: new Date('2024-02-20'),
      lastContacted: new Date('2024-03-15'),
      notes: 'Looking for villa, will visit site next week',
    },
    {
      id: 'LD003',
      name: 'Suresh Kumar',
      phoneNumber: '7654321098',
      email: 'suresh.kumar@hotmail.com',
      leadScore: 45,
      leadStage: 'New Lead',
      project: 'Metro Business Park',
      source: 'Referral',
      assignedTo: 'Neha Gupta',
      createdOn: new Date('2024-02-25'),
      lastContacted: new Date('2024-03-10'),
      notes: 'Interested in commercial space, budget constraints',
    },
    {
      id: 'LD004',
      name: 'Priya Malhotra',
      phoneNumber: '9876123450',
      email: 'priya.malhotra@gmail.com',
      leadScore: 90,
      leadStage: 'Negotiation',
      project: 'Lakeside Plots',
      source: 'Exhibition',
      assignedTo: 'Arjun Reddy',
      createdOn: new Date('2024-03-01'),
      lastContacted: new Date('2024-03-19'),
      notes: 'Ready to purchase, needs financing options',
    },
    {
      id: 'LD005',
      name: 'Amit Patel',
      phoneNumber: '8765987650',
      email: 'amit.patel@outlook.com',
      leadScore: 70,
      leadStage: 'Contacted',
      project: 'Royal Heights',
      source: 'Social Media',
      assignedTo: 'Priya Patel',
      createdOn: new Date('2024-03-05'),
      lastContacted: new Date('2024-03-17'),
      notes: 'Comparing with other projects, price sensitive',
    },
    {
      id: 'LD006',
      name: 'Neha Gupta',
      phoneNumber: '7654567890',
      email: 'neha.gupta@gmail.com',
      leadScore: 30,
      leadStage: 'New Lead',
      project: 'Ganges View Apartments',
      source: 'Newspaper Ad',
      assignedTo: 'Vikram Singh',
      createdOn: new Date('2024-03-08'),
      lastContacted: new Date('2024-03-12'),
      notes: 'Just exploring options, no immediate plans',
    },
    {
      id: 'LD007',
      name: 'Vikram Singh',
      phoneNumber: '9876987650',
      email: 'vikram.singh@yahoo.com',
      leadScore: 85,
      leadStage: 'Closed Won',
      project: 'Tech Park Square',
      source: 'Property Portal',
      assignedTo: 'Neha Gupta',
      createdOn: new Date('2024-03-10'),
      lastContacted: new Date('2024-03-18'),
      notes: 'Looking for office space, has specific requirements',
    },
    {
      id: 'LD008',
      name: 'Kavita Reddy',
      phoneNumber: '8765456789',
      email: 'kavita.reddy@gmail.com',
      leadScore: 60,
      leadStage: 'Proposal',
      project: 'Sunshine Enclave',
      source: 'Referral',
      assignedTo: 'Arjun Reddy',
      createdOn: new Date('2024-03-12'),
      lastContacted: new Date('2024-03-16'),
      notes: 'Interested in 2BHK, needs to sell current property first',
    },
    {
      id: 'LD009',
      name: 'Rahul Verma',
      phoneNumber: '7654345678',
      email: 'rahul.verma@hotmail.com',
      leadScore: 40,
      leadStage: 'Contacted',
      project: 'Green Valley Villas',
      source: 'Website',
      assignedTo: 'Priya Patel',
      createdOn: new Date('2024-03-15'),
      lastContacted: new Date('2024-03-17'),
      notes: 'Budget constraints, looking for smaller options',
    },
    {
      id: 'LD010',
      name: 'Meera Iyer',
      phoneNumber: '9876234567',
      email: 'meera.iyer@gmail.com',
      leadScore: 75,
      leadStage: 'Qualified',
      project: 'Metro Business Park',
      source: 'Exhibition',
      assignedTo: 'Vikram Singh',
      createdOn: new Date('2024-03-17'),
      lastContacted: new Date('2024-03-19'),
      notes: 'Interested in investing, looking for good returns',
    },
    {
      id: 'LD011',
      name: 'Arjun Nair',
      phoneNumber: '8765876543',
      email: 'arjun.nair@outlook.com',
      leadScore: 55,
      leadStage: 'Negotiation',
      project: 'Lakeside Plots',
      source: 'Social Media',
      assignedTo: 'Neha Gupta',
      createdOn: new Date('2024-03-18'),
      lastContacted: new Date('2024-03-19'),
      notes: 'Looking for investment opportunity, comparing options',
    },
    {
      id: 'LD012',
      name: 'Sanjay Mehta',
      phoneNumber: '7654765432',
      email: 'sanjay.mehta@gmail.com',
      leadScore: 25,
      leadStage: 'Closed Lost',
      project: 'Royal Heights',
      source: 'Newspaper Ad',
      assignedTo: 'Arjun Reddy',
      createdOn: new Date('2024-03-19'),
      lastContacted: new Date('2024-03-20'),
      notes: 'Just gathering information, no immediate plans',
    },
  ];


export const leadStages = ['New Lead', 'Contacted', 'Qualified', 'Proposal', 'Negotiation', 'Closed Won', 'Closed Lost'];

  // Lead sources
export const leadSources = [
    'Website',
    'Property Portal',
    'Referral',
    'Exhibition',
    'Social Media',
    'Newspaper Ad',
    'Google Ads',
    'Walk-in',
    'Cold Call',
  ];
  
  // Projects from projects page
export const projects = [
    'Sunshine Enclave',
    'Green Valley Villas',
    'Metro Business Park',
    'Lakeside Plots',
    'Royal Heights',
    'Ganges View Apartments',
    'Tech Park Square',
  ];
  
  // Sales team members
export const salesTeam = ['Priya Patel', 'Vikram Singh', 'Neha Gupta', 'Arjun Reddy', 'Rahul Sharma', 'Ananya Desai'];


export const indianStates = [
  { value: "maharashtra", label: "Maharashtra" },
  { value: "gujarat", label: "Gujarat" },
  { value: "karnataka", label: "Karnataka" },
  { value: "tamil_nadu", label: "Tamil Nadu" },
  { value: "delhi", label: "Delhi" },
  { value: "telangana", label: "Telangana" },
  { value: "uttar_pradesh", label: "Uttar Pradesh" },
  { value: "haryana", label: "Haryana" },
]

export const cities = {
  maharashtra: [
    { value: "mumbai", label: "Mumbai" },
    { value: "pune", label: "Pune" },
    { value: "nagpur", label: "Nagpur" },
    { value: "nashik", label: "Nashik" },
  ],
  gujarat: [
    { value: "ahmedabad", label: "Ahmedabad" },
    { value: "surat", label: "Surat" },
    { value: "vadodara", label: "Vadodara" },
    { value: "rajkot", label: "Rajkot" },
  ],
  karnataka: [
    { value: "bangalore", label: "Bangalore" },
    { value: "mysore", label: "Mysore" },
    { value: "hubli", label: "Hubli" },
    { value: "mangalore", label: "Mangalore" },
  ],
  tamil_nadu: [
    { value: "chennai", label: "Chennai" },
    { value: "coimbatore", label: "Coimbatore" },
    { value: "madurai", label: "Madurai" },
    { value: "salem", label: "Salem" },
  ],
  delhi: [
    { value: "new_delhi", label: "New Delhi" },
    { value: "north_delhi", label: "North Delhi" },
    { value: "south_delhi", label: "South Delhi" },
    { value: "east_delhi", label: "East Delhi" },
  ],
  telangana: [
    { value: "hyderabad", label: "Hyderabad" },
    { value: "warangal", label: "Warangal" },
    { value: "karimnagar", label: "Karimnagar" },
    { value: "nizamabad", label: "Nizamabad" },
  ],
  uttar_pradesh: [
    { value: "lucknow", label: "Lucknow" },
    { value: "kanpur", label: "Kanpur" },
    { value: "agra", label: "Agra" },
    { value: "noida", label: "Noida" },
  ],
  haryana: [
    { value: "gurgaon", label: "Gurgaon" },
    { value: "faridabad", label: "Faridabad" },
    { value: "panipat", label: "Panipat" },
    { value: "ambala", label: "Ambala" },
  ],
}

export const localities = {
  mumbai: [
    { value: "andheri", label: "Andheri" },
    { value: "bandra", label: "Bandra" },
    { value: "dadar", label: "Dadar" },
    { value: "powai", label: "Powai" },
  ],
  pune: [
    { value: "kothrud", label: "Kothrud" },
    { value: "hinjewadi", label: "Hinjewadi" },
    { value: "baner", label: "Baner" },
    { value: "viman_nagar", label: "Viman Nagar" },
  ],
  bangalore: [
    { value: "whitefield", label: "Whitefield" },
    { value: "electronic_city", label: "Electronic City" },
    { value: "indiranagar", label: "Indiranagar" },
    { value: "koramangala", label: "Koramangala" },
  ],
  chennai: [
    { value: "adyar", label: "Adyar" },
    { value: "velachery", label: "Velachery" },
    { value: "t_nagar", label: "T Nagar" },
    { value: "anna_nagar", label: "Anna Nagar" },
  ],
  hyderabad: [
    { value: "hitech_city", label: "Hitech City" },
    { value: "gachibowli", label: "Gachibowli" },
    { value: "kukatpally", label: "Kukatpally" },
    { value: "banjara_hills", label: "Banjara Hills" },
  ],
  ahmedabad: [
    { value: "satellite", label: "Satellite" },
    { value: "bopal", label: "Bopal" },
    { value: "prahlad_nagar", label: "Prahlad Nagar" },
    { value: "navrangpura", label: "Navrangpura" },
  ],
  gurgaon: [
    { value: "sector_29", label: "Sector 29" },
    { value: "dlf_phase_1", label: "DLF Phase 1" },
    { value: "sohna_road", label: "Sohna Road" },
    { value: "golf_course_road", label: "Golf Course Road" },
  ],
  noida: [
    { value: "sector_62", label: "Sector 62" },
    { value: "sector_18", label: "Sector 18" },
    { value: "greater_noida", label: "Greater Noida" },
    { value: "noida_expressway", label: "Noida Expressway" },
  ],
}


export const sources = [
  { value: "walkin", label: "Walk-in" },
  { value: "magicbricks", label: "MagicBricks" },
  { value: "99acres", label: "99acres" },
  { value: "makaan", label: "Makaan.com" },
  { value: "housing", label: "Housing.com" },
  { value: "meta", label: "Meta / Facebook" },
  { value: "google", label: "Google" },
  { value: "referral", label: "Referral" },
  { value: "newspaper", label: "Newspaper" },
  { value: "hoarding", label: "Hoarding" },
  { value: "exhibition", label: "Exhibition" },
  { value: "coldcall", label: "Cold Call" },
]

export const dealStages = [
  { value: "new", label: "New Lead" },
  { value: "contacted", label: "Contacted" },
  { value: "qualified", label: "Qualified" },
  { value: "proposal", label: "Proposal" },
  { value: "negotiation", label: "Negotiation" },
]

export const priorities = [
  { value: "high", label: "High" },
  { value: "medium", label: "Medium" },
  { value: "low", label: "Low" },
]
export const interestTypes = [
  { value: "buy", label: "Buy", icon: Home },
  // { value: "sell", label: "Sell", icon: Building },
  { value: "rent", label: "Rent", icon: Store },
  { value: "lease", label: "Lease", icon: Car },
]
export const loanRequiredOptions = [
  { value: "yes", label: "Yes" },
  { value: "no", label: "No" },
]

export const buyingPreferences = [
  { value: "preferred_project", label: "Preferred Project" },
  { value: "open_to_suggestions", label: "Open to Suggestions" },
]
export const projectOptions = [
  { value: "sunshine_enclave", label: "Sunshine Enclave" },
  { value: "green_valley_villas", label: "Green Valley Villas" },
  { value: "metro_business_park", label: "Metro Business Park" },
  { value: "lakeside_plots", label: "Lakeside Plots" },
  { value: "royal_heights", label: "Royal Heights" },
  { value: "ganges_view_apartments", label: "Ganges View Apartments" },
  { value: "tech_park_square", label: "Tech Park Square" },
]

export const units = [
  { value: "A101", label: "A-101" },
  { value: "A102", label: "A-102" },
  { value: "A103", label: "A-103" },
  { value: "B201", label: "B-201" },
  { value: "B202", label: "B-202" },
  { value: "B203", label: "B-203" },
  { value: "C301", label: "C-301" },
  { value: "C302", label: "C-302" },
  { value: "C303", label: "C-303" },
]
export const loanStages = [
  { value: "not_applied", label: "Not Applied" },
  { value: "applied", label: "Applied" },
  { value: "under_process", label: "Under Process" },
  { value: "approved", label: "Approved" },
  { value: "disbursed", label: "Disbursed" },
  { value: "rejected", label: "Rejected" },
]

export const purposes = [
  { value: "rent_out", label: "Rent Out" },
  { value: "own_residence", label: "Own Residence" },
  { value: "investment", label: "Investment" },
]

// Enhance the property types with category information
export const propertyTypes = [
  { value: "flat", label: "Flat", category: "residential" },
  { value: "bungalow", label: "Bungalow", category: "residential" },
  { value: "villa", label: "Villa", category: "residential" },
  { value: "shop", label: "Shop", category: "commercial" },
  { value: "office", label: "Office", category: "commercial" },
  { value: "plot", label: "Plot", category: "plot" },
  { value: "farmhouse", label: "Farmhouse", category: "residential" },
  { value: "penthouse", label: "Penthouse", category: "residential" },
]

export const bedRoomsCount = [
  { value: "1", label: "1" },
  { value: "2", label: "2" },
  { value: "3", label: "3" },
  { value: "4", label: "4" },
  { value: "5+", label: "5+" },
]

export const propertyAge  = [
  { value: "new_construction", label: "New Construction" },
  { value: "less_than_5", label: "Less than 5 years" },
  { value: "5_to_10", label: "5 to 10 years" },
  { value: "10_to_20", label: "10 to 20 years" },
  { value: "more_than_20", label: "More than 20 years" },
]

export const furnishingStatus = [
  { value: "unfurnished", label: "Unfurnished" },
  { value: "semi_furnished", label: "Semi-furnished" },
  { value: "fully_furnished", label: "Fully furnished" },
]

export const gujaratCities = [
  { value: "ahmedabad", label: "Ahmedabad" },
  { value: "surat", label: "Surat" },
  { value: "vadodara", label: "Vadodara" },
  { value: "rajkot", label: "Rajkot" },
  { value: "gandhinagar", label: "Gandhinagar" },
  { value: "bhavnagar", label: "Bhavnagar" },
  { value: "jamnagar", label: "Jamnagar" },
  { value: "junagadh", label: "Junagadh" },
]

export const gujaratLocalities = {
  ahmedabad: [
    { value: "navrangpura", label: "Navrangpura" },
    { value: "satellite", label: "Satellite" },
    { value: "bodakdev", label: "Bodakdev" },
    { value: "prahlad_nagar", label: "Prahlad Nagar" },
    { value: "bopal", label: "Bopal" },
    { value: "thaltej", label: "Thaltej" },
    { value: "sg_highway", label: "SG Highway" },
    { value: "maninagar", label: "Maninagar" },
  ],
  surat: [
    { value: "adajan", label: "Adajan" },
    { value: "vesu", label: "Vesu" },
    { value: "pal", label: "Pal" },
    { value: "city_light", label: "City Light" },
    { value: "athwa", label: "Athwa" },
    { value: "dumas_road", label: "Dumas Road" },
    { value: "varachha", label: "Varachha" },
    { value: "udhana", label: "Udhana" },
  ],
  vadodara: [
    { value: "alkapuri", label: "Alkapuri" },
    { value: "akota", label: "Akota" },
    { value: "karelibaug", label: "Karelibaug" },
    { value: "sayajigunj", label: "Sayajigunj" },
    { value: "vasna_road", label: "Vasna Road" },
    { value: "manjalpur", label: "Manjalpur" },
    { value: "gotri", label: "Gotri" },
    { value: "fatehgunj", label: "Fatehgunj" },
  ],
  rajkot: [
    { value: "university_road", label: "University Road" },
    { value: "kalawad_road", label: "Kalawad Road" },
    { value: "yagnik_road", label: "Yagnik Road" },
    { value: "race_course", label: "Race Course" },
    { value: "mavdi", label: "Mavdi" },
    { value: "nana_mava", label: "Nana Mava" },
    { value: "kalavad_road", label: "Kalavad Road" },
    { value: "raiya_road", label: "Raiya Road" },
  ],
  gandhinagar: [
    { value: "sector_1", label: "Sector 1" },
    { value: "sector_2", label: "Sector 2" },
    { value: "sector_3", label: "Sector 3" },
    { value: "sector_7", label: "Sector 7" },
    { value: "sector_11", label: "Sector 11" },
    { value: "sector_16", label: "Sector 16" },
    { value: "sector_21", label: "Sector 21" },
    { value: "sector_26", label: "Sector 26" },
  ],
}

export const leaseTermOptions = [
  { value: "1", label: "1 year" },
  { value: "2", label: "2 years" },
  { value: "3", label: "3 years" },
  { value: "5", label: "5 years" },
  { value: "10", label: "10 years" },
  { value: "15", label: "15 years" },
  { value: "20", label: "20 years" },
  { value: "30", label: "30 years" },
];



export const contacts = [
  {
    id: "c1",
    name: "Rajesh Sharma",
    email: "rajesh.sharma@gmail.com",
    phone: "9876543210",
  },
  {
    id: "c2",
    name: "Ananya Desai",
    email: "ananya.desai@yahoo.com",
    phone: "8765432109",
  },
  {
    id: "c3",
    name: "Suresh Kumar",
    email: "suresh.kumar@hotmail.com",
    phone: "7654321098",
  },
  {
    id: "c4",
    name: "Priya Malhotra",
    email: "priya.malhotra@gmail.com",
    phone: "9876123450",
  },
  {
    id: "c5",
    name: "Amit Patel",
    email: "amit.patel@outlook.com",
    phone: "8765987650",
  },
]


export const defaultLeadActivities: LeadActivity[] = [
  {
    id: "contact_added",
    name: "Contact Added",
    description: "Basic information of lead collected",
    points: 5,
    defaultPoints: 5,
  },
  {
    id: "phone_conversation",
    name: "Successful Phone Conversation",
    description: "Had a meaningful conversation with the lead over phone",
    points: 8,
    defaultPoints: 8,
  },
  {
    id: "meeting_scheduled_first",
    name: "Meeting Scheduled – First",
    description: "First meeting has been scheduled with the lead",
    points: 6,
    defaultPoints: 6,
  },
  {
    id: "meeting_scheduled_second",
    name: "Meeting Scheduled – Second",
    description: "Second meeting has been scheduled with the lead",
    points: 4,
    defaultPoints: 4,
  },
  {
    id: "meeting_successful_first",
    name: "Successful Meeting – First",
    description: "First meeting completed successfully with the lead",
    points: 10,
    defaultPoints: 10,
  },
  {
    id: "meeting_successful_second",
    name: "Successful Meeting – Second",
    description: "Second meeting completed successfully with the lead",
    points: 8,
    defaultPoints: 8,
  },
  {
    id: "site_visit_scheduled_first",
    name: "Site Visit Scheduled – First",
    description: "First site visit has been scheduled with the lead",
    points: 7,
    defaultPoints: 7,
  },
  {
    id: "site_visit_scheduled_second",
    name: "Site Visit Scheduled – Second",
    description: "Second site visit has been scheduled with the lead",
    points: 5,
    defaultPoints: 5,
  },
  {
    id: "site_visit_successful_first",
    name: "Successful Site Visit – First",
    description: "Lead completed the first site visit successfully",
    points: 12,
    defaultPoints: 12,
  },
  {
    id: "site_visit_successful_second",
    name: "Successful Site Visit – Second",
    description: "Lead completed the second site visit successfully",
    points: 10,
    defaultPoints: 10,
  },
  {
    id: "property_specs",
    name: "Property Specifications Shared",
    description: "Lead has shared specific property requirements",
    points: 8,
    defaultPoints: 8,
  },
  {
    id: "quotation_shared",
    name: "Pricing/Quotation Shared",
    description: "Shared pricing details with the lead",
    points: 12,
    defaultPoints: 12,
  },
  {
    id: "booking_initiated",
    name: "Booking Initiated",
    description: "Lead has initiated the booking process",
    points: 5,
    defaultPoints: 5,
  },
];