export const defaultFormFields = {
  lead: [
    {
      id: "contactId",
      label: "Contact",
      type: "select",
      required: true,
      section: "Common Information",
      isDefault: true,
    },
    {
      id: "source",
      label: "Lead Source",
      type: "select",
      required: true,
      section: "Common Information",
      isDefault: true,
    },
    {
      id: "leadStage",
      label: "Lead Stage",
      type: "select",
      required: true,
      section: "Common Information",
      isDefault: true,
    },
    {
      id: "priority",
      label: "Priority",
      type: "select",
      required: true,
      section: "Common Information",
      isDefault: true,
    },
    {
      id: "assignedTo",
      label: "Assigned To",
      type: "select",
      required: true,
      section: "Common Information",
      isDefault: true,
    },
    {
      id: "buyingPreference",
      label: "Buying Preference",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "project",
      label: "Project Name",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "unit",
      label: "Unit Number (Optional)",
      type: "select",
      required: false,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "loanRequired",
      label: "Loan Required?",
      type: "radio",
      required: false,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "loanStage",
      label: "Loan Stage",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "purpose",
      label: "Purpose",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "propertyTypeBuy",
      label: "Property Type",
      type: "checkbox",
      required: false,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "preferredState",
      label: "Preferred State",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "preferredCity",
      label: "Preferred City",
      type: "select",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "preferredLocalities",
      label: "Preferred Localities",
      type: "checkbox",
      required: false,
      section: "Interest Type - Buy",
      isDefault: true,
    },
    {
      id: "budget",
      label: "Budget (₹)",
      type: "number",
      required: true,
      section: "Interest Type - Buy",
      isDefault: true,
    },

    // Sell Section
    {
      id: "propertyType",
      label: "Property Type",
      type: "select",
      required: true,
      section: "Interest Type - Sell",
      isDefault: true,
    },
    {
      id: "propertySize",
      label: "Property Size (sq.ft)",
      type: "number",
      required: false,
      section: "Interest Type - Sell",
      isDefault: true,
    },
    {
      id: "propertyBedrooms",
      label: "Bedrooms",
      type: "select",
      required: true,
      section: "Interest Type - Sell",
      isDefault: true,
    },
    {
      id: "propertyAge",
      label: "Property Age",
      type: "select",
      required: true,
      section: "Interest Type - Sell",
      isDefault: true,
    },
    {
      id: "furnishingStatus",
      label: "Furnishing Status",
      type: "select",
      required: true,
      section: "Interest Type - Sell",
      isDefault: true,
    },
    {
      id: "askingPrice",
      label: "Asking Price (₹)",
      type: "number",
      required: true,
      section: "Interest Type - Sell",
      isDefault: true,
    },

    // Rent Section
    {
      id: "rentAmount",
      label: "Monthly Rent (₹)",
      type: "number",
      required: false,
      section: "Interest Type - Rent",
      isDefault: true,
    },
    {
      id: "securityDeposit",
      label: "Security Deposit (₹)",
      type: "number",
      required: false,
      section: "Interest Type - Rent",
      isDefault: true,
    },
    {
      id: "availableFrom",
      label: "Available From",
      type: "date",
      required: true,
      section: "Interest Type - Rent",
      isDefault: true,
    },

    // Lease Section
    {
      id: "leaseTermYears",
      label: "Lease Term (Years)",
      type: "select",
      required: true,
      section: "Interest Type - Lease",
      isDefault: true,
    },
    {
      id: "leaseAmount",
      label: "Lease Amount (₹)",
      type: "number",
      required: false,
      section: "Interest Type - Lease",
      isDefault: true,
    },
    {
      id: "availableFromLease",
      label: "Available From",
      type: "date",
      required: false,
      section: "Interest Type - Lease",
      isDefault: true,
    },

    // Shared Address Fields (for Sell, Rent, Lease)
    {
      id: "address",
      label: "Address",
      type: "textarea",
      required: false,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "city",
      label: "City",
      type: "text",
      required: false,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "state",
      label: "State",
      type: "text",
      required: false,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "pincode",
      label: "Pincode",
      type: "text",
      required: false,
      section: "Address Information",
      isDefault: true,
    },
  ],
  contact: [
    {
      id: "firstName",
      label: "First Name",
      type: "text",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "lastName",
      label: "Last Name",
      type: "text",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "source",
      label: "Source",
      type: "select",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "email",
      label: "Email",
      type: "email",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "phone",
      label: "Phone Numbers",
      type: "repeater",
      required: false,
      section: "Basic Information",
      isDefault: true,
    },

    // Address Information
    {
      id: "addressLine1",
      label: "Address Line 1",
      type: "text",
      required: true,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "addressLine2",
      label: "Address Line 2",
      type: "text",
      required: true,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "country",
      label: "Country",
      type: "select",
      required: true,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "state",
      label: "State",
      type: "select",
      required: true,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "city",
      label: "City",
      type: "select",
      required: true,
      section: "Address Information",
      isDefault: true,
    },
    {
      id: "pinCode",
      label: "Pin Code",
      type: "text",
      required: true,
      section: "Address Information",
      isDefault: true,
    },

    // Company Information
    {
      id: "companyName",
      label: "Company Name",
      type: "text",
      required: true,
      section: "Company Information",
      isDefault: true,
    },
    {
      id: "position",
      label: "Position",
      type: "text",
      required: true,
      section: "Company Information",
      isDefault: true,
    },
    {
      id: "workPhoneNumber",
      label: "Work Phone Number",
      type: "text",
      required: true,
      section: "Company Information",
      isDefault: true,
    },
    {
      id: "workEmail",
      label: "Work Email",
      type: "email",
      required: true,
      section: "Company Information",
      isDefault: true,
    },
  ],
  tasks: [
    {
      id: "title",
      label: "Activity Title",
      type: "text",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "type",
      label: "Activity Type",
      type: "select",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "status",
      label: "Status",
      type: "select",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    {
      id: "comment",
      label: "Comments",
      type: "textarea",
      required: true,
      section: "Basic Information",
      isDefault: true,
    },
    // Call Related Fields
    {
      id: "callStatus",
      label: "Call Status",
      type: "select",
      required: false,
      section: "Call Information",
      isDefault: true,
    },

    // Schedule Related Fields
    {
      id: "activityDate",
      label: "Scheduled Date & Time",
      type: "datetime",
      required: false,
      section: "Schedule Information",
      isDefault: true,
    },
    {
      id: "activityType",
      label: "Activity Type",
      type: "select",
      required: false,
      section: "Schedule Information",
      isDefault: true,
    },
    {
      id: "activityName",
      label: "Custom Activity Name",
      type: "text",
      required: false,
      section: "Schedule Information",
      isDefault: true,
    },
    {
      id: "location",
      label: "Meeting Location",
      type: "text",
      required: false,
      section: "Schedule Information",
      isDefault: true,
    },

    // Booking Details
    {
      id: "lead",
      label: "Lead",
      type: "select",
      required: true,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "company",
      label: "Company",
      type: "select",
      required: true,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "assignedTo",
      label: "Assigned To",
      type: "select",
      required: true,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "project",
      label: "Project",
      type: "select",
      required: false,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "property",
      label: "Property",
      type: "select",
      required: false,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "unit",
      label: "Unit",
      type: "select",
      required: false,
      section: "Booking Details",
      isDefault: true,
    },
    {
      id: "task",
      label: "Related Task",
      type: "select",
      required: false,
      section: "Booking Details",
      isDefault: true,
    },

    // Quotation Related Fields
    {
      id: "pricePerSqYard",
      label: "Price per Sq. Yard",
      type: "number",
      required: false,
      section: "Quotation Information",
      isDefault: true,
    },
    {
      id: "finalAmount",
      label: "Final Amount",
      type: "number",
      required: false,
      section: "Quotation Information",
      isDefault: true,
    },

    // File Related Fields
    {
      id: "files",
      label: "Files",
      type: "multiselect",
      required: false,
      section: "File Information",
      isDefault: true,
    },

    // Sale/Hold related fields
    {
      id: "unitBookingOrHold",
      label: "Unit sale/hold reference",
      type: "select",
      required: false,
      section: "Sale & hold",
      isDefault: true,
    },
    {
      id: "bookingAmount",
      label: "Amount paid (token)",
      type: "number",
      required: false,
      section: "Sale & hold",
      isDefault: true,
    },
    {
      id: "holdUntil",
      label: "Hold Until Date",
      type: "date",
      required: false,
      section: "Sale & hold",
      isDefault: true,
    },
    {
      id: "soldBy",
      label: "Sold By",
      type: "select",
      required: false,
      section: "Sale & hold",
      isDefault: true,
    },

    // Document fields for sale/hold
    {
      id: "aadharFront",
      label: "Aadhar Card Front",
      type: "file",
      required: false,
      section: "Documents",
      isDefault: true,
    },
    {
      id: "aadharBack",
      label: "Aadhar Card Back",
      type: "file",
      required: false,
      section: "Documents",
      isDefault: true,
    },
    {
      id: "panCard",
      label: "PAN Card",
      type: "file",
      required: false,
      section: "Documents",
      isDefault: true,
    },
    {
      id: "passportPhoto",
      label: "Passport Photo",
      type: "file",
      required: false,
      section: "Documents",
      isDefault: true,
    },
    {
      id: "additionalDocs",
      label: "Additional Documents",
      type: "file",
      required: false,
      section: "Documents",
      isDefault: true,
    },

    // Email Fields (for quotes and files)
    {
      id: "primaryEmail",
      label: "Primary Email",
      type: "email",
      required: false,
      section: "Email Information",
      isDefault: true,
    },
    {
      id: "secondaryEmail",
      label: "Secondary Email",
      type: "email",
      required: false,
      section: "Email Information",
      isDefault: true,
    },
  ],
  individual_property: [
    {
      id: "title",
      label: "Property Title",
      type: "text",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "description",
      label: "Description",
      type: "textarea",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "project",
      label: "Project Name",
      type: "text",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "propertyType",
      label: "Property Type",
      type: "select",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "subcategory",
      label: "Subcategory",
      type: "select",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "reraId",
      label: "RERA ID",
      type: "text",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "configuration",
      label: "Configuration",
      type: "select",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },
    {
      id: "listingType",
      label: "Listing Type",
      type: "select",
      required: true,
      section: "Basic Details",
      isDefault: true,
    },

    // Location & Owner
    {
      id: "address",
      label: "Address",
      type: "textarea",
      required: true,
      section: "Location",
      isDefault: true,
    },
    {
      id: "locality",
      label: "Locality",
      type: "text",
      required: true,
      section: "Location",
      isDefault: true,
    },
    {
      id: "city",
      label: "City",
      type: "text",
      required: true,
      section: "Location",
      isDefault: true,
    },
    {
      id: "pincode",
      label: "Pincode",
      type: "number",
      required: true,
      section: "Location",
      isDefault: true,
    },
    {
      id: "landZoneType",
      label: "Land Zone Type",
      type: "select",
      required: false,
      section: "Location",
      isDefault: true,
    },

    // Property Details
    {
      id: "carpetArea",
      label: "Carpet Area (sq ft)",
      type: "number",
      required: true,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "builtUpArea",
      label: "Built Up Area (sq ft)",
      type: "number",
      required: true,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "superBuiltUpArea",
      label: "Super Built Up Area (sq ft)",
      type: "number",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "bedrooms",
      label: "Bedrooms",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "bathrooms",
      label: "Bathrooms",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "balconies",
      label: "Balconies",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "totalFloors",
      label: "Total Floors",
      type: "number",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "floorNumber",
      label: "Floor Number",
      type: "number",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "carParking",
      label: "Car Parking",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "furnishingStatus",
      label: "Furnishing Status",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "ageOfProperty",
      label: "Age of Property",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "facing",
      label: "Facing",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },
    {
      id: "possessionStatus",
      label: "Possession Status",
      type: "select",
      required: false,
      section: "Property Details",
      isDefault: true,
    },

    // Owner Info
    {
      id: "ownerName",
      label: "Owner Name",
      type: "text",
      required: true,
      section: "Owner Details",
      isDefault: true,
    },
    {
      id: "ownerContact",
      label: "Owner Contact",
      type: "number",
      required: true,
      section: "Owner Details",
      isDefault: true,
    },
    {
      id: "ownerEmail",
      label: "Owner Email",
      type: "text",
      required: false,
      section: "Owner Details",
      isDefault: true,
    },

    // Sell Details
    {
      id: "price",
      label: "Price",
      type: "number",
      required: true,
      section: "Sell Details",
      isDefault: true,
    },
    {
      id: "ownershipType",
      label: "Ownership Type",
      type: "select",
      required: true,
      section: "Sell Details",
      isDefault: true,
    },
    {
      id: "brokerageAvailable",
      label: "Brokerage Available",
      type: "select",
      required: false,
      section: "Sell Details",
      isDefault: true,
    },
    {
      id: "brokerageAmount",
      label: "Brokerage Amount",
      type: "number",
      required: false,
      section: "Sell Details",
      isDefault: true,
    },
    {
      id: "availability",
      label: "Availability",
      type: "select",
      required: true,
      section: "Sell Details",
      isDefault: true,
    },
  ],
  book_or_hold: [
    {
      id: "project",
      label: "Project",
      type: "select",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "unit",
      label: "Unit",
      type: "select",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "property",
      label: "Property",
      type: "select",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "holdUntil",
      label: "Hold Until",
      type: "date",
      required: true,
      section: "Sale details",
      isDefault: true,
    },
    {
      id: "bookingAmount",
      label: "Amount paid (token)",
      type: "number",
      required: true,
      section: "Sale details",
      isDefault: true,
    },
    {
      id: "soldBy",
      label: "Sold By",
      type: "select",
      required: true,
      section: "Sale details",
      isDefault: true,
    },
    {
      id: "aadharFront",
      label: "Aadhar Card Front",
      type: "file",
      required: true,
      accept: "image/*,.pdf",
      section: "Documents",
      isDefault: true,
    },
    {
      id: "aadharBack",
      label: "Aadhar Card Back",
      type: "file",
      required: true,
      accept: "image/*,.pdf",
      section: "Documents",
      isDefault: true,
    },
    {
      id: "panCard",
      label: "PAN Card",
      type: "file",
      required: true,
      accept: "image/*,.pdf",
      section: "Documents",
      isDefault: true,
    },
    {
      id: "passportPhoto",
      label: "Passport Size Photo",
      type: "file",
      required: true,
      accept: "image/*",
      section: "Documents",
      isDefault: true,
    },
    {
      id: "additionalDocs",
      label: "Additional Documents",
      type: "file",
      required: false,
      multiple: true,
      section: "Documents",
      isDefault: true,
    },
    {
      id: "comments",
      label: "Comments",
      type: "textarea",
      required: true,
      section: "Additional Info",
      isDefault: true,
    },
  ],
  unit: [
    {
      id: "unitNumber",
      label: "Unit Number",
      type: "text",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "size",
      label: "Size (sq.yds)",
      type: "number",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "price",
      label: "Price",
      type: "number",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
    {
      id: "status",
      label: "Status",
      type: "select",
      required: true,
      section: "Unit Information",
      isDefault: true,
    },
  ],
};

export const sampleCustomFields = {
  lead: [
    {
      id: "custom1",
      label: "Budget Range",
      type: "select",
      required: true,
      section: "Requirements",
      isDefault: false,
    },
    {
      id: "custom2",
      label: "Preferred Location",
      type: "text",
      required: false,
      section: "Requirements",
      isDefault: false,
    },
    {
      id: "custom3",
      label: "Property Type Preference",
      type: "select",
      required: false,
      section: "Requirements",
      isDefault: false,
    },
  ],
  contact: [
    {
      id: "custom1",
      label: "Birthday",
      type: "date",
      required: false,
      section: "Personal Information",
      isDefault: false,
    },
    {
      id: "custom2",
      label: "Spouse Name",
      type: "text",
      required: false,
      section: "Personal Information",
      isDefault: false,
    },
  ],
  tasks: [
    {
      id: "custom1",
      label: "Follow-up Required",
      type: "checkbox",
      required: false,
      section: "Follow-up",
      isDefault: false,
    },
    {
      id: "custom2",
      label: "Follow-up Date",
      type: "date",
      required: false,
      section: "Follow-up",
      isDefault: false,
    },
  ],
  individual_property: [
    {
      id: "custom1",
      label: "Furnishing Status",
      type: "select",
      required: false,
      section: "Property",
      isDefault: false,
    },
    {
      id: "custom2",
      label: "Possession Status",
      type: "select",
      required: false,
      section: "Property",
      isDefault: false,
    },
  ],
  unit: [
    {
      id: "custom1",
      label: "Payment Plan",
      type: "select",
      required: false,
      section: "Payment Details",
      isDefault: false,
    },
    {
      id: "custom2",
      label: "Loan Required",
      type: "checkbox",
      required: false,
      section: "Payment Details",
      isDefault: false,
    },
  ],
};
