Add wallet module with receive and send functionality

- Introduced a new wallet module that includes components for sending and receiving Bitcoin payments.
- Implemented WalletService to manage payment links and transactions, including methods for creating LNURL pay links and sending payments.
- Added dialogs for receiving and sending payments, enhancing user interaction with the wallet.
- Updated app configuration to enable the wallet module and integrated it into the main application flow.

These changes provide users with a comprehensive wallet experience, allowing for seamless Bitcoin transactions.
This commit is contained in:
padreug 2025-09-14 23:08:01 +02:00
parent c74945874c
commit f75aae6be6
12 changed files with 1294 additions and 3 deletions

View file

@ -15,6 +15,7 @@ import nostrFeedModule from './modules/nostr-feed'
import chatModule from './modules/chat'
import eventsModule from './modules/events'
import marketModule from './modules/market'
import walletModule from './modules/wallet'
// Root component
import App from './App.vue'
@ -41,7 +42,8 @@ export async function createAppInstance() {
...nostrFeedModule.routes || [],
...chatModule.routes || [],
...eventsModule.routes || [],
...marketModule.routes || []
...marketModule.routes || [],
...walletModule.routes || []
].filter(Boolean)
// Create router with all routes available immediately
@ -117,6 +119,13 @@ export async function createAppInstance() {
)
}
// Register wallet module
if (appConfig.modules.wallet?.enabled) {
moduleRegistrations.push(
pluginManager.register(walletModule, appConfig.modules.wallet)
)
}
// Wait for all modules to register
await Promise.all(moduleRegistrations)