Add transactions page with fuzzy search and success dialog for expenses
Features: - Created TransactionsPage with mobile-optimized layout - Card-based transaction items with status indicators - Fuzzy search by description, payee, reference, username, and tags - Day filter options (5, 30, 60, 90 days) - Pagination support - Responsive design for mobile and desktop - Added getUserTransactions API method to ExpensesAPI - Supports filtering by days, user ID, and account type - Returns paginated transaction data - Updated AddExpense component with success confirmation - Shows success message in same dialog after submission - Provides option to navigate to transactions page - Clean single-dialog approach - Added "My Transactions" link to navbar menu - Added Transaction and TransactionListResponse types - Added permission management types and API methods (grantPermission, listPermissions, revokePermission) - Installed alert-dialog component for UI consistency 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
78fba2a637
commit
be00c61c77
20 changed files with 914 additions and 74 deletions
|
|
@ -61,30 +61,40 @@ export function useModularNavigation() {
|
|||
|
||||
// Events module items
|
||||
if (appConfig.modules.events.enabled) {
|
||||
items.push({
|
||||
name: 'My Tickets',
|
||||
href: '/my-tickets',
|
||||
items.push({
|
||||
name: 'My Tickets',
|
||||
href: '/my-tickets',
|
||||
icon: 'Ticket',
|
||||
requiresAuth: true
|
||||
requiresAuth: true
|
||||
})
|
||||
}
|
||||
|
||||
// Market module items
|
||||
// Market module items
|
||||
if (appConfig.modules.market.enabled) {
|
||||
items.push({
|
||||
name: 'Market Dashboard',
|
||||
href: '/market-dashboard',
|
||||
items.push({
|
||||
name: 'Market Dashboard',
|
||||
href: '/market-dashboard',
|
||||
icon: 'Store',
|
||||
requiresAuth: true
|
||||
requiresAuth: true
|
||||
})
|
||||
}
|
||||
|
||||
// Expenses module items
|
||||
if (appConfig.modules.expenses.enabled) {
|
||||
items.push({
|
||||
name: 'My Transactions',
|
||||
href: '/expenses/transactions',
|
||||
icon: 'Receipt',
|
||||
requiresAuth: true
|
||||
})
|
||||
}
|
||||
|
||||
// Base module items (always available)
|
||||
items.push({
|
||||
name: 'Relay Hub Status',
|
||||
href: '/relay-hub-status',
|
||||
items.push({
|
||||
name: 'Relay Hub Status',
|
||||
href: '/relay-hub-status',
|
||||
icon: 'Activity',
|
||||
requiresAuth: true
|
||||
requiresAuth: true
|
||||
})
|
||||
|
||||
return items
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue