scalesite/lib/mock-data/support.ts
bast1qn 98552163a8 Initial ScaleSite Next.js implementation
Complete frontend implementation with:
- Next.js 16 with App Router and TypeScript
- Tailwind CSS v4 with custom violet theme
- shadcn/ui components with Lucide React icons
- Landing page with hero, services, pricing, testimonials, FAQ
- Service selection page with toggle
- Login/Register pages with social auth UI
- Multi-step checkout flow
- Client dashboard with stats, projects, support tickets
- Billing page with subscription, payment methods, invoices
- All mock data and TypeScript types

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 21:42:48 +01:00

102 lines
3.1 KiB
TypeScript

import { SupportTicket, DashboardStats, FAQ } from '../types'
export const mockSupportTickets: SupportTicket[] = [
{
id: 'ticket-1',
userId: 'user-1',
projectId: 'proj-1',
subject: 'Update product images',
description: 'We need to replace the product images with higher resolution versions.',
status: 'in-progress',
priority: 'medium',
createdAt: new Date('2024-10-12'),
updatedAt: new Date('2024-10-14'),
},
{
id: 'ticket-2',
userId: 'user-1',
projectId: 'proj-2',
subject: 'Chatbot training data review',
description: 'Please review and update the FAQ responses for the customer service bot.',
status: 'open',
priority: 'low',
createdAt: new Date('2024-10-14'),
updatedAt: new Date('2024-10-14'),
},
{
id: 'ticket-3',
userId: 'user-1',
subject: 'Billing inquiry',
description: 'Question about the invoice from September.',
status: 'resolved',
priority: 'low',
createdAt: new Date('2024-09-20'),
updatedAt: new Date('2024-09-22'),
},
]
export const mockDashboardStats: DashboardStats = {
totalProjects: 2,
activeProjects: 2,
pendingTickets: 1,
totalSpent: 330, // EUR
}
export const mockFAQs: FAQ[] = [
{
id: 'faq-1',
question: 'How long does it take to complete a website?',
answer: 'Delivery times depend on the tier you choose: Starter (3 days), Growth (7 days), and Pro (14 days). Complex projects may take longer.',
category: 'General',
},
{
id: 'faq-2',
question: 'What payment methods do you accept?',
answer: 'We accept all major credit cards, PayPal, and Stripe Link for secure payments.',
category: 'Billing',
},
{
id: 'faq-3',
question: 'Can I request revisions?',
answer: 'Yes! The Starter tier includes 2 revisions, Growth includes 5, and Pro offers unlimited revisions.',
category: 'Services',
},
{
id: 'faq-4',
question: 'Do you offer ongoing support?',
answer: 'Yes, we provide various support packages. Pro tier customers get priority support and a dedicated account manager.',
category: 'Support',
},
{
id: 'faq-5',
question: 'How does the AI automation work?',
answer: 'We train AI models on your specific business data and FAQs. The chatbot learns to handle customer inquiries automatically.',
category: 'AI Services',
},
{
id: 'faq-6',
question: 'Is my data secure?',
answer: 'Absolutely. We use industry-standard encryption and security measures. Your data is never shared with third parties.',
category: 'Security',
},
]
export function getTicketsByUserId(userId: string): SupportTicket[] {
return mockSupportTickets.filter(ticket => ticket.userId === userId)
}
export function getOpenTickets(userId: string): SupportTicket[] {
return mockSupportTickets.filter(
ticket => ticket.userId === userId && ticket.status !== 'closed'
)
}
export function getDashboardStats(userId: string): DashboardStats {
// In a real app, this would calculate stats based on actual data
return mockDashboardStats
}
export function getAllFAQs(): FAQ[] {
return mockFAQs
}