dograh/ui/src/components/lead-forms/leadFieldOptions.ts
Pritesh 3ccbc14549 feat(lead-gen): shared field options, work-email validation, and submit seam
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 04:19:21 +05:30

81 lines
2.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Shared dropdown options + lead source/kind types for the lead-gen forms.
export type LeadSource =
| "sidebar"
| "billing_card"
| "builder_nudge"
| "topup"
| "hire_expert";
export type LeadKind = "topup" | "hire_expert" | "enterprise";
// Top-up: expected monthly call volume. ">20k" unlocks the volume-pricing block.
export const TOPUP_VOLUME_OPTIONS = [
{ value: "0-5k", label: "05k calls/month" },
{ value: "5k-20k", label: "5k20k calls/month" },
{ value: ">20k", label: ">20k calls/month" },
] as const;
// The value that gates the volume-pricing qualifier block.
export const VOLUME_PRICING_GATE = ">20k";
// Top-up volume-pricing qualifier: company size (small-business scale).
export const TOPUP_COMPANY_SIZE_OPTIONS = [
{ value: "only_me", label: "Only me" },
{ value: "2-10", label: "210" },
{ value: "10-100", label: "10100" },
{ value: "100-1000", label: "1001000" },
{ value: "1000+", label: "1000+" },
] as const;
// Hire-an-Expert timeline.
export const HIRE_TIMELINE_OPTIONS = [
{ value: "asap", label: "ASAP" },
{ value: "2-4_weeks", label: "24 weeks" },
{ value: "1-2_months", label: "12 months" },
{ value: "flexible", label: "Flexible" },
{ value: "exploring", label: "Exploring" },
] as const;
// Hire-an-Expert expected monthly call volume.
export const HIRE_VOLUME_OPTIONS = [
{ value: "0-5k", label: "05k" },
{ value: "5k-100k", label: "5k100k" },
{ value: "100k+", label: "100k+" },
{ value: "not_sure", label: "Not sure" },
] as const;
// Hire-an-Expert current stage.
export const HIRE_STAGE_OPTIONS = [
{ value: "live_process", label: "Have a live process we want to automate" },
{ value: "idea_no_process", label: "Have an idea, no process yet" },
{ value: "researching", label: "Just researching" },
{ value: "built_need_help", label: "Already built something, need help fixing" },
] as const;
// Enterprise industry.
export const ENTERPRISE_INDUSTRY_OPTIONS = [
{ value: "financial_services", label: "Financial services" },
{ value: "healthcare", label: "Healthcare" },
{ value: "insurance", label: "Insurance" },
{ value: "government", label: "Government" },
{ value: "telecom", label: "Telecom" },
{ value: "bpo", label: "BPO" },
{ value: "other", label: "Other" },
] as const;
// Enterprise company size (enterprise scale — intentionally different from top-up's).
export const ENTERPRISE_COMPANY_SIZE_OPTIONS = [
{ value: "50-200", label: "50200" },
{ value: "200-1000", label: "2001000" },
{ value: "1000-5000", label: "10005000" },
{ value: "5000+", label: "5000+" },
] as const;
// Enterprise timeline.
export const ENTERPRISE_TIMELINE_OPTIONS = [
{ value: "this_quarter", label: "This quarter" },
{ value: "next_quarter", label: "Next quarter" },
{ value: "6_months", label: "6 months" },
{ value: "exploring", label: "Exploring" },
] as const;