// Mock user data
export const mockUser = {
  id: '1',
  name: 'Test User',
  email: 'test@example.com',
}

export const mockToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoiMSIsImVtYWlsIjoidGVzdEBleGFtcGxlLmNvbSJ9.test-signature'

// Mock portfolio data
export const mockPortfolio = {
  id: '1',
  userId: '1',
  name: 'My Portfolio',
  domain: 'my-portfolio.com',
  status: 'Uploaded',
  createdAt: '2024-01-01T00:00:00Z',
  updatedAt: '2024-01-01T00:00:00Z',
}

export const mockPortfolios = [
  mockPortfolio,
  {
    id: '2',
    userId: '1',
    name: 'Project Showcase',
    domain: 'projects.com',
    status: 'Pending Upload',
    createdAt: '2024-01-02T00:00:00Z',
    updatedAt: '2024-01-02T00:00:00Z',
  },
  {
    id: '3',
    userId: '1',
    name: 'Resume Website',
    domain: 'resume.com',
    status: 'Pending Payment',
    createdAt: '2024-01-03T00:00:00Z',
    updatedAt: '2024-01-03T00:00:00Z',
  },
]

// Mock API responses
export const mockLoginResponse = {
  success: true,
  data: {
    token: mockToken,
    user: mockUser,
  },
}

export const mockRegisterResponse = {
  success: true,
  data: {
    user: mockUser,
  },
}

export const mockPortfoliosResponse = {
  success: true,
  data: {
    portfolios: mockPortfolios,
  },
}

export const mockCreatePortfolioResponse = {
  success: true,
  data: mockPortfolio,
}

export const mockErrorResponse = {
  success: false,
  message: 'An error occurred',
  errors: {
    email: ['Email is required'],
  },
}

export const mock401Error = {
  success: false,
  message: 'Unauthorized',
  errors: {},
}

export const mock422Error = {
  success: false,
  message: 'Validation failed',
  errors: {
    email: ['Email already exists'],
    password: ['Password must be at least 8 characters'],
  },
}
