feat(leads): Lead Creation Phase 1 — page shell, section framework, mock data

- CreateLeadPage.jsx: full page shell with Quick Capture / Full Form toggle, Barlow Condensed header, breadcrumb nav, GSAP progress bar stub, mobile sticky save footer
- LeadSectionWrapper.jsx: collapsible section component with Framer Motion height animation, spring chevron rotation, completion dot, dual light/dark header design matching GlassPanel language
- 5 sections wired up: Contact (blue), Property (emerald), Job Details (amber), Insurance (violet), Assignment (cyan) — Quick Capture shows first 3, Full Form shows all 5
- Section indicator pills in header dim gracefully when hidden in Quick Capture mode
- LEAD_FORM_OPTIONS added to mockStore: lead types, sources, work types, trade types, urgency/priority levels, insurance companies, claim statuses, phone/email types, US states
- Route /emp/fa/leads/new added (FIELD_AGENT, ADMIN, OWNER)
- New Lead nav item added to sidebar for all 3 roles
This commit is contained in:
Satyam
2026-03-13 16:07:29 +05:30
parent dc117e8180
commit 8bb321e1f7
5 changed files with 523 additions and 2 deletions
+90
View File
@@ -2839,3 +2839,93 @@ export const MockStoreProvider = ({ children }) => {
};
export const useMockStore = () => useContext(MockStoreContext);
// ---------------------------------------------------------------------------
// Lead Creation Form Options
// ---------------------------------------------------------------------------
export const LEAD_FORM_OPTIONS = {
leadTypes: [
'Residential',
'Commercial',
'Multi-Family',
'Industrial',
'HOA / Community',
],
leadSources: [
'Door Knock',
'Referral',
'Storm Chase',
'Online / Web',
'Mailer / Postcard',
'Sign Call',
'Insurance Agent Referral',
'Repeat Customer',
'Social Media',
'Other',
],
workTypes: [
'Roof Replacement',
'Roof Repair',
'Gutters',
'Siding',
'Windows',
'Solar',
'Inspection Only',
'Emergency Tarping',
'Other',
],
tradeTypes: [
'Roofing',
'Gutter',
'Siding',
'Windows',
'Solar',
'General Contractor',
],
urgencyLevels: [
{ label: 'Standard', value: 'standard', color: '#6B7280' },
{ label: 'High', value: 'high', color: '#F59E0B' },
{ label: 'Emergency', value: 'emergency', color: '#EF4444' },
],
priorityLevels: [
{ label: 'Low', value: 'low', color: '#6B7280' },
{ label: 'Medium', value: 'medium', color: '#3B82F6' },
{ label: 'High', value: 'high', color: '#F59E0B' },
{ label: 'Critical', value: 'critical', color: '#EF4444' },
],
insuranceCompanies: [
'State Farm',
'Allstate',
'USAA',
'Farmers Insurance',
'Liberty Mutual',
'Progressive',
'Nationwide',
'American Family',
'Travelers',
'GEICO',
'Chubb',
'Erie Insurance',
'Auto-Owners',
'Other',
],
claimStatuses: [
'Not Filed',
'Filed Pending Adjuster',
'Adjuster Scheduled',
'Adjuster Completed',
'Approved',
'Denied',
'Supplement In Progress',
'Closed',
],
phoneTypes: ['Mobile', 'Home', 'Work', 'Other'],
emailTypes: ['Personal', 'Work', 'Other'],
usStates: [
'AL','AK','AZ','AR','CA','CO','CT','DE','FL','GA',
'HI','ID','IL','IN','IA','KS','KY','LA','ME','MD',
'MA','MI','MN','MS','MO','MT','NE','NV','NH','NJ',
'NM','NY','NC','ND','OH','OK','OR','PA','RI','SC',
'SD','TN','TX','UT','VT','VA','WA','WV','WI','WY',
],
};