import { Employee, Report, Submission, FaqItem, CompanyReport } from './types'; // URL Configuration - reads from environment variables with fallbacks export const SITE_URL = import.meta.env.VITE_SITE_URL || 'http://localhost:5173'; // API Base URL - auto-detect development vs production const isLocalhost = typeof window !== 'undefined' && (window.location.hostname === 'localhost' || window.location.hostname === '127.0.0.1'); // Use Firebase Functions emulator in development, production functions in production export const API_URL = isLocalhost ? 'http://127.0.0.1:5002/auditly-c0027/us-central1' // Firebase Functions Emulator : 'https://your-project.cloudfunctions.net'; // Production Firebase Functions // Log URL configuration in development if (import.meta.env.DEV) { console.log('🌐 Frontend URL Configuration:'); console.log(` SITE_URL: ${SITE_URL}`); console.log(` API_URL: ${API_URL}`); } export const EMPLOYEES: Employee[] = [ { id: 'AG', name: 'Alex Green', initials: 'AG', email: 'alex.green@zitlac.com', department: 'Influencer Marketing', role: 'Influencer Coordinator & Business Development Outreach' }, { id: 'MB', name: 'Michael Brown', initials: 'MB', email: 'michael.brown@zitlac.com', department: 'Engineering', role: 'Senior Developer' }, { id: 'KT', name: 'Kevin Taylor', initials: 'KT', email: 'kevin.taylor@zitlac.com', department: 'Marketing', role: 'Marketing Manager' }, { id: 'LR', name: 'Laura Robinson', initials: 'LR', email: 'laura.robinson@zitlac.com', department: 'HR', role: 'HR Manager', isOwner: true }, { id: 'DS', name: 'David Stone', initials: 'DS', email: 'david.stone@zitlac.com', department: 'Sales', role: 'Sales Representative' }, { id: 'SR', name: 'Samantha Reed', initials: 'SR', email: 'samantha.reed@zitlac.com', department: 'Operations', role: 'Operations Specialist' }, ]; export const REPORT_DATA: Report = { employeeId: 'AG', department: 'Influencer Marketing', role: 'Influencer Coordinator & Business Development Outreach', roleAndOutput: { responsibilities: 'Recruiting influencers, onboarding, campaign support, business development.', clarityOnRole: '10/10 - Feels very clear on responsibilities.', selfRatedOutput: '7/10 - Indicates decent performance but room to grow.', recurringTasks: 'Influencer outreach, onboarding, communications.', }, insights: { personalityTraits: 'Loyal, well-liked by influencers, eager to grow, client-facing interest.', psychologicalIndicators: [ 'Scores high on optimism and external motivation.', 'Shows ambition but lacks self-discipline in execution.', 'Displays a desire for recognition and community; seeks more appreciation.', ], selfAwareness: 'High - acknowledges weaknesses like lateness and disorganization.', emotionalResponses: 'Frustrated by campaign disorganization; would prefer closer collaboration.', growthDesire: 'Interested in becoming more client-facing and shifting toward biz dev.', }, strengths: [ 'Builds strong relationships with influencers.', 'Has sales and outreach potential.', 'Loyal, driven, and values-aligned with the company mission.', 'Open to feedback and self-improvement.', ], weaknesses: [ { isCritical: true, description: 'Disorganized and late with deliverables — confirmed by previous internal notes.' }, { isCritical: false, description: 'Poor implementation and recruiting output — does not effectively close the loop on influencer onboarding.' }, { isCritical: false, description: 'May unintentionally cause friction with campaigns team by stepping outside process boundaries.' }, ], opportunities: { roleAdjustment: 'Shift fully to Influencer Manager & Biz Dev Outreach as planned. Remove all execution and recruitment responsibilities.', accountabilitySupport: "Pair with a high-output implementer (new hire) to balance Gentry's strategic skills.", }, risks: [ "Without strict structure, Gentry's performance will stay flat or become a bottleneck.", 'If kept in a dual-role (recruiting + outreach), productivity will suffer.', 'He needs system constraints and direct oversight to stay focused.', ], recommendation: { action: 'Keep', details: [ 'But immediately restructure his role:', '• Remove recruiting and logistical tasks.', '• Focus only on influencer relationship-building, pitching, and business development.', "Pair him with a new hire who is ultra-organized and can execute on Gentry's deals.", ], }, grading: [], }; export const SUBMISSIONS_DATA: Submission = { employeeId: 'AG', answers: [ { question: 'What is the mission of your company?', answer: 'To empower small businesses with AI-driven automation tools that increase efficiency and reduce operational overhead.', }, { question: 'How has your mission evolved in the last 1-3 years?', answer: 'We shifted from general SaaS tools to vertical-specific solutions, with deeper integrations and onboarding support.', }, { question: 'What is your 5-year vision for the company?', answer: 'To become the leading AI operations platform for SMBs in North America, serving over 100,000 customers.', }, { question: "What are your company's top 3 strategic advantages?", answer: '1. Fast product iteration enabled by in-house AI capabilities\n2. Deep customer understanding from vertical specialization\n3. High customer retention due to integrated onboarding', }, { question: 'What are your biggest vulnerabilities or threats?', answer: 'Dependence on a single marketing channel, weak middle management, and rising customer acquisition costs.', }, ], }; export const FAQ_DATA: FaqItem[] = [ { question: "What is the process for submitting a support ticket?", answer: "Team members will undergo evaluations every three months, focusing on their performance, teamwork, and communication skills. Role advancements will be considered at these intervals." }, { question: "How can I reset my password?", answer: "You can reset your password by clicking the 'Forgot Password' link on the login page. An email will be sent to you with instructions." }, { question: "What are the criteria for performance reviews?", answer: "Performance reviews are based on a combination of self-assessment, peer feedback, and manager evaluation. Key criteria include goal achievement, collaboration, and contribution to company values." }, { question: "How can I access the company's training resources?", answer: "All training resources are available in the 'Company Wiki' section of the platform. You can find documents, videos, and links to external courses." }, { question: "What should I do if I encounter a technical issue?", answer: "For any technical issues, please submit a ticket through the 'Help & Support' page. Our IT team will get back to you within 24 hours." }, { question: "How do I provide feedback on team projects?", answer: "Feedback can be provided directly within the project management tool or during scheduled team retrospectives. We encourage open and constructive communication." } ]; export const CHAT_STARTERS = [ "Summarize Alex Green's latest report.", "What are Alex's biggest strengths?", "Identify any risks associated with Alex.", "Should Alex be considered for a promotion?" ]; export const SAMPLE_COMPANY_REPORT: CompanyReport = { id: 'sample-company-report', createdAt: Date.now() - 86400000, // 1 day ago overview: { totalEmployees: 0, // Fixed: Start with 0 employees instead of hardcoded 6 departmentBreakdown: [], submissionRate: 0, lastUpdated: Date.now() - 86400000 }, gradingBreakdown: [], operatingPlan: { nextQuarterGoals: [], keyInitiatives: [], resourceNeeds: [], riskMitigation: [] }, personnelChanges: { newHires: [], promotions: [], departures: [] }, keyPersonnelChanges: [ { employeeName: "Alex Green", department: "Influencer Marketing", role: "Influencer Coordinator", changeType: "newHire" }, { employeeName: "Jordan Smith", department: "Engineering", role: "Software Engineer", changeType: "promotion" } ], immediateHiringNeeds: [ { department: 'Engineering', role: 'Frontend Developer', priority: 'High', reasoning: 'Growing product development workload requires additional frontend expertise' }, { department: 'Marketing', role: 'Content Creator', priority: 'Medium', reasoning: 'Increasing content demands for influencer campaigns' } ], forwardOperatingPlan: { quarterlyGoals: [ 'Expand influencer network by 40%', 'Launch automated campaign tracking system', 'Implement comprehensive onboarding process', 'Increase team collaboration efficiency by 25%' ], resourceNeeds: [ 'Additional engineering talent', 'Enhanced project management tools', 'Training budget for skill development', 'Upgraded communication infrastructure' ], riskMitigation: [ 'Cross-train team members to reduce single points of failure', 'Implement backup processes for critical operations', 'Regular performance reviews and feedback cycles', 'Diversify client base to reduce dependency risks' ] }, organizationalStrengths: [ ], organizationalRisks: [ 'Key personnel dependency in critical roles', 'Limited project management oversight', 'Potential burnout from rapid growth', 'Communication gaps between departments' ], gradingOverview: { "overallGrade": 4, "strengths": 3, "weaknesses": 1 }, executiveSummary: `Your organization is ready to get started with employee assessments. Begin by inviting team members to complete their questionnaires and build comprehensive insights about your workforce.` };