// Static list of employee submission questions (distinct from company onboarding)
// Each question can map to analysis dimensions for report generation.
export interface EmployeeQuestion {
    id: string;
    prompt: string;
    category: 'role' | 'performance' | 'growth' | 'culture' | 'risk' | 'values' | 'personal' | 'collaboration' | 'feedback';
    placeholder?: string;
    required?: boolean;
    weight?: number; // relative weighting for scoring
    type?: 'text' | 'textarea' | 'scale' | 'select' | 'yesno';
    options?: string[];
    scaleMin?: number;
    scaleMax?: number;
    scaleLabels?: { min: string; max: string };
    followupTo?: string; // ID of question this follows up on
}

export const EMPLOYEE_QUESTIONS: EmployeeQuestion[] = [
    {
        id: 'email',
        prompt: 'Email',
        category: 'personal',
        required: true,
        type: 'text',
        placeholder: 'your.email@company.com',
        weight: 0
    },
    {
        id: 'full_name',
        prompt: 'First and Last name',
        category: 'personal',
        required: true,
        type: 'text',
        placeholder: 'John Doe',
        weight: 0
    },
    {
        id: 'company_department',
        prompt: 'What is the name of your Company and department?',
        category: 'role',
        required: false,
        type: 'text',
        placeholder: 'Acme Corp - Marketing Department',
        weight: 0.5
    },
    {
        id: 'title_department',
        prompt: 'What is your current title and department',
        category: 'role',
        required: true,
        type: 'text',
        placeholder: 'Marketing Manager - Marketing Department',
        weight: 1
    },
    {
        id: 'role_clarity',
        prompt: 'How clearly do you understand your role and responsibilities?',
        category: 'role',
        required: true,
        type: 'scale',
        scaleMin: 1,
        scaleMax: 10,
        scaleLabels: { min: 'Not so much', max: 'Very clearly' },
        weight: 1.2
    },
    {
        id: 'core_responsibilities',
        prompt: 'Describe your core daily responsibilities',
        category: 'role',
        required: true,
        type: 'textarea',
        placeholder: 'List your main daily tasks and responsibilities...',
        weight: 1.1
    },
    {
        id: 'outside_responsibilities',
        prompt: 'Do you handle any responsibilities outside of your official role? If yes, explain',
        category: 'role',
        required: false,
        type: 'textarea',
        placeholder: 'Describe any additional responsibilities you handle...',
        weight: 1
    },
    {
        id: 'role_alignment',
        prompt: 'Do you feel your role aligns with your strengths? Why or why not?',
        category: 'role',
        required: false,
        type: 'textarea',
        placeholder: 'Explain how your role matches or doesn\'t match your strengths...',
        weight: 1.1
    },
    {
        id: 'weekly_output',
        prompt: 'How would you rate your weekly output (volume and quality)?',
        category: 'performance',
        required: true,
        type: 'scale',
        scaleMin: 1,
        scaleMax: 10,
        scaleLabels: { min: 'Very little', max: 'Very highly' },
        weight: 1.3
    },
    {
        id: 'recurring_deliverables',
        prompt: 'What are your top 2-3 recurring deliverables?',
        category: 'performance',
        required: true,
        type: 'textarea',
        placeholder: 'List your main recurring outputs or deliverables...',
        weight: 1.2
    },
    {
        id: 'measurable_results',
        prompt: 'List measurable results you have produced in the last 60 days.',
        category: 'performance',
        required: false,
        type: 'textarea',
        placeholder: 'Describe specific, measurable achievements from the past 60 days...',
        weight: 1.3
    },
    {
        id: 'has_kpis',
        prompt: 'Do you have weekly KPIs or goals?',
        category: 'performance',
        required: false,
        type: 'yesno',
        weight: 0.8
    },
    {
        id: 'kpis_details',
        prompt: 'If yes; What are they?',
        category: 'performance',
        required: false,
        type: 'textarea',
        placeholder: 'List your KPIs or weekly goals...',
        followupTo: 'has_kpis',
        weight: 1
    },
    {
        id: 'reports_to',
        prompt: 'Who do you report to?',
        category: 'collaboration',
        required: false,
        type: 'text',
        placeholder: 'Manager name and title',
        weight: 0.7
    },
    {
        id: 'meeting_frequency',
        prompt: 'How often do you meet/check-in?',
        category: 'collaboration',
        required: false,
        type: 'text',
        placeholder: 'e.g., Weekly, Daily, Bi-weekly',
        weight: 0.7
    },
    {
        id: 'close_collaboration',
        prompt: 'Who do you work most closely with?',
        category: 'collaboration',
        required: false,
        type: 'textarea',
        placeholder: 'List team members or departments you collaborate with most...',
        weight: 0.9
    },
    {
        id: 'collaboration_effectiveness',
        prompt: 'How effective is collaboration in your department',
        category: 'collaboration',
        required: false,
        type: 'scale',
        scaleMin: 1,
        scaleMax: 10,
        scaleLabels: { min: 'Not effective', max: 'Very effectively' },
        weight: 1.1
    },
    {
        id: 'team_dynamics_issues',
        prompt: 'Are there any team dynamics that hinder your productivity?',
        category: 'risk',
        required: false,
        type: 'textarea',
        placeholder: 'Describe any team issues affecting your productivity...',
        weight: 1.2
    },
    {
        id: 'unclear_responsibilities',
        prompt: 'Are project responsibilities ever unclear?',
        category: 'risk',
        required: false,
        type: 'yesno',
        weight: 1
    },
    {
        id: 'unclear_example',
        prompt: 'If yes; Describe a recent example',
        category: 'risk',
        required: false,
        type: 'textarea',
        placeholder: 'Provide a specific example of unclear responsibilities...',
        followupTo: 'unclear_responsibilities',
        weight: 1.1
    },
    {
        id: 'recognition_feeling',
        prompt: 'Do you feel your contributions are recognized by leadership/peers?',
        category: 'culture',
        required: false,
        type: 'textarea',
        placeholder: 'Describe how you feel about recognition of your work...',
        weight: 1.2
    },
    {
        id: 'recurring_issues',
        prompt: 'Are there recurring issues in task management or communication?',
        category: 'risk',
        required: false,
        type: 'textarea',
        placeholder: 'Describe any ongoing operational issues...',
        weight: 1.1
    },
    {
        id: 'improvement_suggestions',
        prompt: 'How can we better manage timelines, workload, or approvals?',
        category: 'feedback',
        required: false,
        type: 'textarea',
        placeholder: 'Suggest improvements to processes...',
        weight: 1
    },
    {
        id: 'tool_recommendations',
        prompt: 'What system or tool would you recommend we add or improve?',
        category: 'feedback',
        required: false,
        type: 'textarea',
        placeholder: 'Suggest tools or systems that could help...',
        weight: 0.9
    },
    {
        id: 'job_enjoyment',
        prompt: 'What part of your job do you enjoy the most?',
        category: 'values',
        required: false,
        type: 'textarea',
        placeholder: 'Describe what you find most fulfilling...',
        weight: 1
    },
    {
        id: 'job_frustrations',
        prompt: 'What part of your job frustrates you the most?',
        category: 'risk',
        required: false,
        type: 'textarea',
        placeholder: 'Describe your biggest frustrations...',
        weight: 1.2
    },
    {
        id: 'growth_goals',
        prompt: 'Where would you like to grow within the company over the next 6 months?',
        category: 'growth',
        required: false,
        type: 'textarea',
        placeholder: 'Describe your growth aspirations...',
        weight: 1.1
    },
    {
        id: 'role_shift_interest',
        prompt: 'Are you interested in shifting roles or departments?',
        category: 'growth',
        required: false,
        type: 'yesno',
        weight: 1
    },
    {
        id: 'role_shift_direction',
        prompt: 'If yes; What direction interests you the most?',
        category: 'growth',
        required: false,
        type: 'textarea',
        placeholder: 'Describe the direction you\'re interested in...',
        followupTo: 'role_shift_interest',
        weight: 1.1
    },
    {
        id: 'skills_training',
        prompt: 'What skills or training would help you be more effective?',
        category: 'growth',
        required: false,
        type: 'textarea',
        placeholder: 'List skills or training you need...',
        weight: 1.1
    },
    {
        id: 'magic_wand',
        prompt: 'If you had a magic wand, what would you change about how we operate?',
        category: 'feedback',
        required: false,
        type: 'textarea',
        placeholder: 'Describe ideal changes to company operations...',
        weight: 1.2
    },
    {
        id: 'staffing_opinion',
        prompt: 'Do you believe any roles or departments are overstaffed or underperforming?',
        category: 'feedback',
        required: false,
        type: 'textarea',
        placeholder: 'Share your thoughts on team structure and performance...',
        weight: 1.1
    },
    {
        id: 'additional_feedback',
        prompt: 'Any other feedback or suggestions?',
        category: 'feedback',
        required: false,
        type: 'textarea',
        placeholder: 'Share any additional thoughts...',
        weight: 0.8
    },
];

export type EmployeeSubmissionAnswers = Record<string, string>;
