export interface ProcessStage { id: number | string; name: string; status: 'completed' | 'active' | 'pending'; date?: string; description?: string; evaluators?: string[]; documentsUploaded?: number; isParallel?: boolean; isLocked?: boolean; lockMessage?: string; branches?: { name: string; color: string; stages: ProcessStage[]; }[]; } export const KT_MATRIX_CRITERIA = [ { name: 'Age', weight: 5, maxScore: 10, options: [ { label: '20 to 40 years old', value: '20-40', score: 10 }, { label: '40 to 50 years old', value: '40-50', score: 5 }, { label: 'Above 50 years old', value: 'above-50', score: 0 }, ], }, { name: 'Qualification', weight: 5, maxScore: 10, options: [ { label: 'Post Graduate', value: 'post-graduate', score: 10 }, { label: 'Graduate', value: 'graduate', score: 5 }, { label: 'SSLC', value: 'sslc', score: 0 }, ], }, { name: 'Local Knowledge and Influence', weight: 5, maxScore: 10, options: [ { label: 'Excellent PR', value: 'excellent', score: 10 }, { label: 'Good PR', value: 'good', score: 5 }, { label: 'Poor PR', value: 'poor', score: 0 }, ], }, { name: 'Base Location vs Applied Location', weight: 10, maxScore: 10, options: [ { label: 'Native of the Applied location', value: 'native', score: 10 }, { label: 'Willing to relocate', value: 'relocate', score: 5 }, { label: 'Will manage remotely with occasional visits', value: 'remote', score: 0 }, ], }, { name: 'Why Interested in Royal Enfield Business?', weight: 10, maxScore: 10, options: [ { label: 'Passion', value: 'passion', score: 10 }, { label: 'Business expansion / Status symbol', value: 'business', score: 5 }, ], }, { name: 'Passion for Royal Enfield', weight: 10, maxScore: 10, options: [ { label: 'Currently owns a Royal Enfield', value: 'owns', score: 10 }, { label: 'Owned by Immediate Relative', value: 'relative', score: 5 }, { label: 'Does not own Royal Enfield', value: 'none', score: 0 }, ], }, { name: 'Passion For Rides', weight: 10, maxScore: 10, options: [ { label: 'Goes for long rides regularly', value: 'regular', score: 10 }, { label: 'Goes for long rides rarely', value: 'rarely', score: 5 }, { label: "Doesn't go for rides", value: 'never', score: 0 }, ], }, { name: 'With Whom Partnering?', weight: 5, maxScore: 10, options: [ { label: 'Within family', value: 'family', score: 10 }, { label: 'Outside family', value: 'outside', score: 0 }, ], }, { name: 'Who Will Manage the Firm?', weight: 10, maxScore: 10, options: [ { label: 'Owner managed', value: 'owner', score: 10 }, { label: 'Partly owner / partly manager model', value: 'partly', score: 5 }, { label: 'Fully manager model', value: 'manager', score: 0 }, ], }, { name: 'Business Acumen', weight: 5, maxScore: 10, options: [ { label: 'Has similar automobile experience', value: 'automobile', score: 10 }, { label: 'Has successful business but not automobile', value: 'other-business', score: 5 }, { label: 'No business experience', value: 'no-experience', score: 0 }, ], }, { name: 'Time Availability', weight: 5, maxScore: 10, options: [ { label: 'Full Time Availability for RE Business', value: 'full-time', score: 10 }, { label: 'Part Time Availability for RE Business', value: 'part-time', score: 5 }, { label: 'Not Available personally, Manager will handle', value: 'manager', score: 0 }, ], }, { name: 'Property Ownership', weight: 5, maxScore: 10, options: [ { label: 'Has own property in proposed location', value: 'own', score: 10 }, { label: 'Will rent / lease', value: 'rent', score: 0 }, ], }, { name: 'Investment in the Business', weight: 5, maxScore: 10, options: [ { label: 'Full own funds', value: 'own-funds', score: 10 }, { label: 'Partially from the bank', value: 'partial-bank', score: 5 }, { label: 'Completely bank funded', value: 'full-bank', score: 0 }, ], }, { name: 'Will Expand to Other 2W/4W OEMs?', weight: 5, maxScore: 10, options: [ { label: 'No', value: 'no', score: 10 }, { label: 'Yes', value: 'yes', score: 0 }, ], }, { name: 'Plans of Expansion with RE', weight: 5, maxScore: 10, options: [ { label: 'Immediate blood relation will join & expand', value: 'blood-relation', score: 10 }, { label: 'Wants to expand by himself into more clusters', value: 'self-expand', score: 5 }, { label: 'No plans for expansion', value: 'no-plans', score: 0 }, ], }, ]; export function auditLogActionBadgeClass(action: string): string { const a = String(action || '').toUpperCase(); if (a.includes('REJECT') || a.includes('DELET') || a.includes('DISQUALIF')) return 'border-red-200 bg-red-50/90 text-red-800'; if (a === 'CREATED' || a.includes('APPROV') || a.includes('COMPLETE')) return 'border-emerald-200 bg-emerald-50/90 text-emerald-900'; if (a.includes('DOCUMENT') || a.includes('UPLOAD') || a.includes('ATTACHMENT')) return 'border-sky-200 bg-sky-50/80 text-sky-900'; if (a.includes('PAYMENT') || a.includes('SECURITY') || a.includes('DEPOSIT')) return 'border-violet-200 bg-violet-50/80 text-violet-900'; if (a.includes('FDD') || a.includes('QUESTIONNAIRE') || a.includes('INTERVIEW')) return 'border-red-200 bg-red-50/80 text-red-900'; return 'border-slate-200 bg-slate-50 text-slate-700'; }