- Add 'Twilight Velvet' color palette to globals.css with OKLCH values - Update SettingsPage headers, cards, and dialogs to use semantic theme variables - Update HistoryCard, HistoryFeed, and DraftContent to support dark mode - Update ProviderSelector and ProviderList to use custom card background (#2A2A3D) - Add ThemeToggle component with improved visibility - Ensure consistent use of 'bg-card', 'text-foreground', and 'text-muted-foreground'
38 lines
1.1 KiB
TypeScript
38 lines
1.1 KiB
TypeScript
import { faker } from '@faker-js/faker';
|
|
|
|
/**
|
|
* UserFactory
|
|
*
|
|
* Handles creation and cleanup of test users.
|
|
* Note: Since this is a local-first app without a real backend API for user creation yet,
|
|
* this factory currently generates mock data. adapting to real API calls later.
|
|
*/
|
|
export class UserFactory {
|
|
// In a real app, we would track IDs here for cleanup
|
|
// private createdUserIds: string[] = [];
|
|
|
|
async createUser(overrides = {}) {
|
|
const user = {
|
|
id: faker.string.uuid(),
|
|
email: faker.internet.email(),
|
|
name: faker.person.fullName(),
|
|
password: faker.internet.password(),
|
|
createdAt: new Date().toISOString(),
|
|
...overrides,
|
|
};
|
|
|
|
// Placeholder: In a real app, you would POST to API here
|
|
// const response = await fetch(\`\${process.env.API_URL}/users\`, ...);
|
|
|
|
return user;
|
|
}
|
|
|
|
async cleanup() {
|
|
// Placeholder: In a real app, you would DELETE users here
|
|
// for (const id of this.createdUserIds) { ... }
|
|
|
|
// For now, no cleanup needed for transient mock data
|
|
return Promise.resolve();
|
|
}
|
|
}
|