import type { Locale } from "@/lib/locales";
import type { ProductSlug } from "@/lib/routes";

export type ProductAddOn = {
  id: string;
  name: Record<Locale, string>;
  description: Record<Locale, string>;
  price: number;
  billing: "yearly" | "oneTime";
  quantityEnabled: boolean;
};

export const addOnsPageCopy = {
  en: {
    eyebrow: "Add-ons",
    title: "Add more power when your team needs it",
    description:
      "Choose extra capacity, automation, support, and advanced modules for your product.",
    backToProduct: "Back to product",
    yearly: "Per Year",
    oneTime: "One Time",
    quantity: "Quantity",
    gstIncluded: "GST Included",
    getStarted: "Get Started",
    noAddOns: "No add-ons available.",
  },
  hi: {
    eyebrow: "ऐड-ऑन्स",
    title: "जब आपकी टीम को जरूरत हो तब और पावर जोड़ें",
    description:
      "अपने प्रोडक्ट के लिए extra capacity, automation, support और advanced modules चुनें।",
    backToProduct: "प्रोडक्ट पर वापस जाएं",
    yearly: "प्रति वर्ष",
    oneTime: "एक बार",
    quantity: "मात्रा",
    gstIncluded: "GST शामिल",
    getStarted: "शुरू करें",
    noAddOns: "कोई add-ons उपलब्ध नहीं हैं।",
  },
  gu: {
    eyebrow: "ઍડ-ઓન્સ",
    title: "તમારી ટીમને જરૂર હોય ત્યારે વધુ પાવર ઉમેરો",
    description:
      "તમારા product માટે extra capacity, automation, support અને advanced modules પસંદ કરો.",
    backToProduct: "પ્રોડક્ટ પર પાછા જાઓ",
    yearly: "દર વર્ષે",
    oneTime: "એક વખત",
    quantity: "જથ્થો",
    gstIncluded: "GST સામેલ",
    getStarted: "શરૂ કરો",
    noAddOns: "કોઈ add-ons ઉપલબ્ધ નથી.",
  },
} satisfies Record<Locale, Record<string, string>>;

export const productAddOns = {
  pureestate: [
    {
      id: "extra-telecaller",
      name: {
        en: "Extra Telecaller",
        hi: "अतिरिक्त टेलीकॉलर",
        gu: "વધારાનો ટેલિકોલર",
      },
      description: {
        en: "Add more calling users for lead follow-ups and customer communication.",
        hi: "लीड follow-ups और customer communication के लिए अधिक calling users जोड़ें।",
        gu: "લીડ follow-ups અને customer communication માટે વધુ calling users ઉમેરો.",
      },
      price: 2999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "extra-visit-person",
      name: {
        en: "Extra Visit Person",
        hi: "अतिरिक्त विजिट पर्सन",
        gu: "વધારાનો વિઝિટ પર્સન",
      },
      description: {
        en: "Add field visit users for site visits and client meetings.",
        hi: "Site visits और client meetings के लिए field visit users जोड़ें।",
        gu: "Site visits અને client meetings માટે field visit users ઉમેરો.",
      },
      price: 2999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "whatsapp-automation",
      name: {
        en: "WhatsApp Automation Pack",
        hi: "WhatsApp ऑटोमेशन पैक",
        gu: "WhatsApp ઓટોમેશન પેક",
      },
      description: {
        en: "Automate follow-ups, reminders, and customer updates on WhatsApp.",
        hi: "WhatsApp पर follow-ups, reminders और customer updates automate करें।",
        gu: "WhatsApp પર follow-ups, reminders અને customer updates automate કરો.",
      },
      price: 6999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "property-data-import",
      name: {
        en: "Property Data Import",
        hi: "प्रॉपर्टी डेटा इम्पोर्ट",
        gu: "પ્રોપર્ટી ડેટા ઇમ્પોર્ટ",
      },
      description: {
        en: "Import existing properties, leads, and customer records.",
        hi: "Existing properties, leads और customer records import करें।",
        gu: "Existing properties, leads અને customer records import કરો.",
      },
      price: 4999,
      billing: "oneTime",
      quantityEnabled: false,
    },
    {
      id: "advanced-reports",
      name: {
        en: "Advanced Reports Pack",
        hi: "एडवांस्ड रिपोर्ट्स पैक",
        gu: "એડવાન્સ્ડ રિપોર્ટ્સ પેક",
      },
      description: {
        en: "Unlock deeper sales, team, source, and revenue reports.",
        hi: "Sales, team, source और revenue की advanced reports unlock करें।",
        gu: "Sales, team, source અને revenue ની advanced reports unlock કરો.",
      },
      price: 7999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "priority-support",
      name: {
        en: "Priority Support",
        hi: "प्रायोरिटी सपोर्ट",
        gu: "પ્રાયોરિટી સપોર્ટ",
      },
      description: {
        en: "Get faster assistance for onboarding and product support.",
        hi: "Onboarding और product support के लिए faster assistance पाएं।",
        gu: "Onboarding અને product support માટે faster assistance મેળવો.",
      },
      price: 5999,
      billing: "yearly",
      quantityEnabled: false,
    },
  ],

  buildpro: [
    {
      id: "extra-telecaller",
      name: {
        en: "Extra Telecaller",
        hi: "अतिरिक्त टेलीकॉलर",
        gu: "વધારાનો ટેલિકોલર",
      },
      description: {
        en: "Add more sales callers for project enquiries and buyer follow-ups.",
        hi: "Project enquiries और buyer follow-ups के लिए अधिक sales callers जोड़ें।",
        gu: "Project enquiries અને buyer follow-ups માટે વધુ sales callers ઉમેરો.",
      },
      price: 3999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "extra-visit-person",
      name: {
        en: "Extra Visit Person",
        hi: "अतिरिक्त विजिट पर्सन",
        gu: "વધારાનો વિઝિટ પર્સન",
      },
      description: {
        en: "Add more site visit and customer meeting users.",
        hi: "Site visit और customer meeting users जोड़ें।",
        gu: "Site visit અને customer meeting users ઉમેરો.",
      },
      price: 3999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "extra-project-pack",
      name: {
        en: "Extra Project Pack",
        hi: "अतिरिक्त प्रोजेक्ट पैक",
        gu: "વધારાનો પ્રોજેક્ટ પેક",
      },
      description: {
        en: "Add capacity for additional builder projects.",
        hi: "Additional builder projects के लिए capacity जोड़ें।",
        gu: "Additional builder projects માટે capacity ઉમેરો.",
      },
      price: 9999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "extra-units-pack",
      name: {
        en: "Extra 500 Units Pack",
        hi: "अतिरिक्त 500 यूनिट्स पैक",
        gu: "વધારાનો 500 યુનિટ્સ પેક",
      },
      description: {
        en: "Expand unit inventory for large projects.",
        hi: "Large projects के लिए unit inventory expand करें।",
        gu: "Large projects માટે unit inventory expand કરો.",
      },
      price: 7999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "whatsapp-automation",
      name: {
        en: "WhatsApp Automation Pack",
        hi: "WhatsApp ऑटोमेशन पैक",
        gu: "WhatsApp ઓટોમેશન પેક",
      },
      description: {
        en: "Automate booking, payment, and site progress notifications.",
        hi: "Booking, payment और site progress notifications automate करें।",
        gu: "Booking, payment અને site progress notifications automate કરો.",
      },
      price: 9999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "project-data-migration",
      name: {
        en: "Project Data Migration",
        hi: "प्रोजेक्ट डेटा माइग्रेशन",
        gu: "પ્રોજેક્ટ ડેટા માઇગ્રેશન",
      },
      description: {
        en: "Move existing projects, units, bookings, and customer data.",
        hi: "Existing projects, units, bookings और customer data migrate करें।",
        gu: "Existing projects, units, bookings અને customer data migrate કરો.",
      },
      price: 12999,
      billing: "oneTime",
      quantityEnabled: false,
    },
    {
      id: "priority-support",
      name: {
        en: "Priority Support",
        hi: "प्रायोरिटी सपोर्ट",
        gu: "પ્રાયોરિટી સપોર્ટ",
      },
      description: {
        en: "Priority onboarding and support for builder teams.",
        hi: "Builder teams के लिए priority onboarding और support।",
        gu: "Builder teams માટે priority onboarding અને support.",
      },
      price: 9999,
      billing: "yearly",
      quantityEnabled: false,
    },
  ],

  societypro: [
    {
      id: "extra-admin-account",
      name: {
        en: "Extra Admin Account",
        hi: "अतिरिक्त एडमिन अकाउंट",
        gu: "વધારાનો એડમિન અકાઉન્ટ",
      },
      description: {
        en: "Add committee or admin users for society management.",
        hi: "Society management के लिए committee/admin users जोड़ें।",
        gu: "Society management માટે committee/admin users ઉમેરો.",
      },
      price: 1999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "extra-flats-pack",
      name: {
        en: "Extra 500 Flats Pack",
        hi: "अतिरिक्त 500 फ्लैट्स पैक",
        gu: "વધારાનો 500 ફ્લેટ્સ પેક",
      },
      description: {
        en: "Expand society capacity for larger communities.",
        hi: "Larger communities के लिए society capacity बढ़ाएं।",
        gu: "Larger communities માટે society capacity વધારો.",
      },
      price: 2999,
      billing: "yearly",
      quantityEnabled: true,
    },
    {
      id: "visitor-security-app",
      name: {
        en: "Visitor/Security Gate App",
        hi: "विजिटर/सिक्योरिटी गेट ऐप",
        gu: "વિઝિટર/સિક્યુરિટી ગેટ એપ",
      },
      description: {
        en: "Enable visitor entry, security desk, and gate records.",
        hi: "Visitor entry, security desk और gate records enable करें।",
        gu: "Visitor entry, security desk અને gate records enable કરો.",
      },
      price: 4999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "maintenance-billing",
      name: {
        en: "Maintenance Billing Pack",
        hi: "मेंटेनेंस बिलिंग पैक",
        gu: "મેઇન્ટેનન્સ બિલિંગ પેક",
      },
      description: {
        en: "Manage dues, receipts, reminders, and payment tracking.",
        hi: "Dues, receipts, reminders और payment tracking manage करें।",
        gu: "Dues, receipts, reminders અને payment tracking manage કરો.",
      },
      price: 5999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "notice-pack",
      name: {
        en: "SMS/WhatsApp Notice Pack",
        hi: "SMS/WhatsApp नोटिस पैक",
        gu: "SMS/WhatsApp નોટિસ પેક",
      },
      description: {
        en: "Send notices, reminders, and alerts to residents.",
        hi: "Residents को notices, reminders और alerts भेजें।",
        gu: "Residents ને notices, reminders અને alerts મોકલો.",
      },
      price: 4999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "facility-booking",
      name: {
        en: "Facility Booking Pack",
        hi: "फैसिलिटी बुकिंग पैक",
        gu: "ફેસિલિટી બુકિંગ પેક",
      },
      description: {
        en: "Manage clubhouse, hall, garden, and common facility bookings.",
        hi: "Clubhouse, hall, garden और common facility bookings manage करें।",
        gu: "Clubhouse, hall, garden અને common facility bookings manage કરો.",
      },
      price: 3999,
      billing: "yearly",
      quantityEnabled: false,
    },
    {
      id: "priority-support",
      name: {
        en: "Priority Support",
        hi: "प्रायोरिटी सपोर्ट",
        gu: "પ્રાયોરિટી સપોર્ટ",
      },
      description: {
        en: "Faster onboarding and support for society admins.",
        hi: "Society admins के लिए faster onboarding और support।",
        gu: "Society admins માટે faster onboarding અને support.",
      },
      price: 3999,
      billing: "yearly",
      quantityEnabled: false,
    },
  ],
} satisfies Record<ProductSlug, ProductAddOn[]>;

export function getProductAddOns(productSlug: ProductSlug) {
  return productAddOns[productSlug] ?? [];
}