- Add Lucide React Native icon library and use across tabs and screens
- Mobile-like design: rounded cards (xl/2xl), section dividers, icon chips, chevrons
- New pages from swagger: register, invoices/[id], reports, documents, settings
- Invoice detail: amount, bill to, items, Share/PDF actions (GET /invoices/{id})
- Register screen with link to login (POST /auth/register)
- Reports list with mock data and download (GET /reports)
- Documents list with upload CTA (GET /documents)
- Settings: notifications link, language, about
- Profile: links to Notifications, Reports, Documents, Settings
- Home: invoice rows navigate to /invoices/[id]
- Login ↔ Register navigation
- Keep orange (#ea580c) and dark navbar (#2d2d2d) theme throughout
- README: update screens table with new routes
Co-authored-by: Cursor <cursoragent@cursor.com>
105 lines
2.3 KiB
TypeScript
105 lines
2.3 KiB
TypeScript
export const MOCK_USER = {
|
||
name: 'Octavia',
|
||
email: 'octavia@yaltopia.com',
|
||
};
|
||
|
||
export const MOCK_INVOICES = [
|
||
{
|
||
id: '1',
|
||
recipient: 'Robin Murray',
|
||
recipientEmail: 'robinmurray@email.com',
|
||
invoiceNumber: '2',
|
||
dueDate: 'Sep 11, 2022',
|
||
amount: 1540,
|
||
status: 'Waiting',
|
||
createdAt: 'Sep 8, 2022',
|
||
},
|
||
{
|
||
id: '2',
|
||
recipient: 'Sophie Shonia',
|
||
recipientEmail: 'sophie@email.com',
|
||
invoiceNumber: '4',
|
||
dueDate: 'Sep 9, 2022',
|
||
amount: 500,
|
||
status: 'Paid',
|
||
createdAt: 'Sep 9, 2022',
|
||
},
|
||
{
|
||
id: '3',
|
||
recipient: 'Atlantis Limited',
|
||
recipientEmail: 'contact@atlantis.com',
|
||
invoiceNumber: '3',
|
||
dueDate: 'Sep 9, 2022',
|
||
amount: 2000,
|
||
status: 'Paid',
|
||
createdAt: 'Sep 9, 2022',
|
||
},
|
||
];
|
||
|
||
export const MOCK_PROFORMA = [
|
||
{
|
||
id: 'pf1',
|
||
title: 'Marketing Landing Page Package',
|
||
description: 'Landing page design and development',
|
||
deadline: 'Sep 20, 2022',
|
||
itemCount: 2,
|
||
sentCount: 3,
|
||
},
|
||
{
|
||
id: 'pf2',
|
||
title: 'Q4 Brand Assets',
|
||
description: 'Logo variants and social templates',
|
||
deadline: 'Sep 25, 2022',
|
||
itemCount: 5,
|
||
sentCount: 0,
|
||
},
|
||
];
|
||
|
||
export const MOCK_PAYMENTS = [
|
||
{
|
||
id: 'pay1',
|
||
date: 'Sep 12, 2022',
|
||
amount: 1540,
|
||
reference: 'INV-002',
|
||
source: 'Telebirr',
|
||
matched: true,
|
||
invoiceId: '1',
|
||
},
|
||
{
|
||
id: 'pay2',
|
||
date: 'Sep 10, 2022',
|
||
amount: 500,
|
||
reference: 'INV-004',
|
||
source: 'Bank Transfer',
|
||
matched: true,
|
||
invoiceId: '2',
|
||
},
|
||
{
|
||
id: 'pay3',
|
||
date: 'Sep 11, 2022',
|
||
amount: 2000,
|
||
reference: null,
|
||
source: 'Telebirr',
|
||
matched: false,
|
||
invoiceId: null,
|
||
},
|
||
];
|
||
|
||
export const EARNINGS_SUMMARY = {
|
||
balance: 6432,
|
||
waitingAmount: 1540,
|
||
waitingCount: 1,
|
||
paidThisMonth: 4120,
|
||
paidCount: 4,
|
||
};
|
||
|
||
export const MOCK_REPORTS = [
|
||
{ id: 'r1', title: 'September 2022', period: 'Sep 1 – Sep 30, 2022', generatedAt: 'Oct 1, 2022', downloadUrl: '#' },
|
||
{ id: 'r2', title: 'August 2022', period: 'Aug 1 – Aug 31, 2022', generatedAt: 'Sep 1, 2022', downloadUrl: '#' },
|
||
];
|
||
|
||
export const MOCK_DOCUMENTS = [
|
||
{ id: 'd1', name: 'Invoice #2 - Robin Murray.pdf', size: '124 KB', uploadedAt: 'Sep 8, 2022' },
|
||
{ id: 'd2', name: 'Scan - Acme Corp.pdf', size: '89 KB', uploadedAt: 'Sep 12, 2022' },
|
||
];
|