Adds expense tracking module
Adds a new module for tracking user expenses. The module includes: - Configuration settings for the LNbits API endpoint and timeouts. - An ExpensesAPI service for fetching accounts and submitting expense entries. - A UI component for adding expenses, including account selection and form input. - Dependency injection for the ExpensesAPI service. This allows users to submit expense entries with account selection and reference data, which will be linked to their wallet.
This commit is contained in:
parent
678ccff694
commit
9ed674d0f3
8 changed files with 975 additions and 1 deletions
11
src/app.ts
11
src/app.ts
|
|
@ -16,6 +16,7 @@ import chatModule from './modules/chat'
|
|||
import eventsModule from './modules/events'
|
||||
import marketModule from './modules/market'
|
||||
import walletModule from './modules/wallet'
|
||||
import expensesModule from './modules/expenses'
|
||||
|
||||
// Root component
|
||||
import App from './App.vue'
|
||||
|
|
@ -43,7 +44,8 @@ export async function createAppInstance() {
|
|||
...chatModule.routes || [],
|
||||
...eventsModule.routes || [],
|
||||
...marketModule.routes || [],
|
||||
...walletModule.routes || []
|
||||
...walletModule.routes || [],
|
||||
...expensesModule.routes || []
|
||||
].filter(Boolean)
|
||||
|
||||
// Create router with all routes available immediately
|
||||
|
|
@ -126,6 +128,13 @@ export async function createAppInstance() {
|
|||
)
|
||||
}
|
||||
|
||||
// Register expenses module
|
||||
if (appConfig.modules.expenses?.enabled) {
|
||||
moduleRegistrations.push(
|
||||
pluginManager.register(expensesModule, appConfig.modules.expenses)
|
||||
)
|
||||
}
|
||||
|
||||
// Wait for all modules to register
|
||||
await Promise.all(moduleRegistrations)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue