- Added updateWalletBalance method in PaymentService to handle wallet balance updates from WebSocket notifications, improving wallet management.
- Deprecated the existing updateWalletBalance method in AuthService, redirecting calls to the new PaymentService method for better consistency and maintainability.
- Updated WalletWebSocketService to utilize PaymentService for balance updates, ensuring accurate wallet state management.
These changes enhance the architecture of wallet balance handling and streamline the update process across services.
- Introduced WalletWebSocketService to manage WebSocket connections for real-time wallet updates.
- Implemented methods to handle incoming messages, including wallet balance updates and transaction notifications.
- Updated WalletService to add transactions based on WebSocket notifications, ensuring accurate wallet state.
- Enhanced app configuration to support WebSocket settings, improving flexibility in connection management.
These changes enhance the wallet module's responsiveness and user experience by providing real-time updates on wallet activities.
Enhance WalletWebSocketService with improved logging and authentication event handling
- Added detailed logging throughout the WalletWebSocketService to aid in debugging and monitoring.
- Integrated eventBus to listen for authentication events, enabling automatic connection and disconnection based on user login status.
- Adjusted WebSocket connection logic to handle wallet credentials more effectively and ensure accurate balance updates.
- Improved error handling and connection management for a more robust WebSocket experience.
These enhancements improve the reliability and transparency of the wallet's WebSocket interactions, contributing to a better user experience.
Enhance wallet balance update logic and logging in WalletWebSocketService
- Improved logging for wallet balance updates to provide clearer insights into balance changes and payment adjustments.
- Refined balance adjustment logic to correctly handle outgoing and incoming payments, ensuring accurate wallet state.
- Updated AuthService to log both the old and new wallet balance during updates, enhancing debugging capabilities.
These changes improve the reliability and transparency of wallet balance management, contributing to a better user experience.
Refactor wallet balance update logic in AuthService and WalletWebSocketService
- Enhanced the updateWalletBalance method in AuthService to accept an optional walletId, allowing for more flexible wallet balance updates.
- Improved logging to indicate which wallet's balance is being updated, aiding in debugging.
- Updated WalletWebSocketService to retrieve the wallet ID from PaymentService before updating the balance, ensuring accurate wallet state management.
These changes improve the robustness and clarity of wallet balance handling across the application.
- Replaced direct wallet balance computation in Navbar and WalletPage with a centralized totalBalance property from PaymentService, improving code maintainability.
- Updated CreateProductDialog, CreateStoreDialog, and MerchantStore components to utilize PaymentService for retrieving wallet admin and invoice keys, enhancing consistency across the application.
- These changes streamline wallet management and improve the overall architecture of the wallet module.
- Updated import paths in the wallet module to enhance clarity and maintainability.
- Removed unused imports in ReceiveDialog and SendDialog components to streamline the code.
- Introduced a computed property in WalletPage to extract the base domain from the payment service configuration, improving readability and error handling.
These changes contribute to a cleaner codebase and enhance the overall performance of the wallet module.
- Added functionality to generate a QR code for the first available pay link using LNURL encoding.
- Introduced reactive properties to manage QR code state and generation status.
- Updated the onMounted lifecycle hook to generate the QR code upon component mount if a pay link is available.
- Enhanced the UI to display the generated QR code along with payment range and lightning address information.
These changes improve the user experience by facilitating quick payment link sharing through QR codes.
- Modified the Badge component to include 'pointer-events-none' class, preventing interaction with the tag badge.
- This change enhances the user experience by ensuring that the badge does not interfere with other interactive elements in the transaction display.
- Increased spacing between transaction items for better visual separation.
- Changed tag badge variant to 'secondary' for enhanced visibility and updated its position.
- Adjusted icon size for improved consistency in transaction representation.
These changes enhance the overall clarity and aesthetics of the transaction display in the WalletPage.
- Added a tag badge to the top-left corner of each transaction item for improved visibility of transaction categorization.
- Removed redundant tag badges from the transaction details section to streamline the layout.
- Adjusted styling for transaction items to maintain a consistent and organized appearance.
These changes enhance the user experience by providing clearer transaction information and improving the overall layout of the WalletPage.
- Enhanced the desktop layout for better space management and alignment of transaction items.
- Updated transaction description and timestamp handling for improved readability and flexibility.
- Adjusted styling for transaction amounts to ensure consistent visibility and formatting.
These changes contribute to a more organized and user-friendly interface in the WalletPage, enhancing the overall user experience.
- Updated the getTransactionIcon and getTransactionColor functions to accept transaction status, allowing for dynamic icon and color changes based on transaction state.
- Removed the getStatusColor function as its functionality is now integrated into the updated color logic.
- Enhanced transaction display in the WalletPage to reflect pending status with appropriate styling, improving user visibility of transaction states.
These changes enhance the clarity and responsiveness of transaction information presented in the wallet module.
- Updated WalletService to robustly handle various timestamp formats, ensuring accurate transaction date representation.
- Enhanced WalletPage layout for better responsiveness, including mobile and desktop views, and improved transaction display with clearer formatting.
- Adjusted transaction item styling for consistency and better user experience across different screen sizes.
These changes improve the reliability and usability of transaction data presentation in the wallet module.
- Updated the WalletPage layout to better accommodate different screen sizes, enhancing responsiveness.
- Increased font size for balance display and adjusted button sizes for consistency.
- Improved button icon sizes for better visibility and usability.
These changes contribute to a more user-friendly interface on the WalletPage, making it easier to interact with wallet functionalities.
- Updated the onOpenChange method to handle dialog open/close state changes more effectively.
- Added cleanup logic for when the dialog is closed, resetting the form and selected payment link.
These changes improve the user experience by ensuring the dialog state is managed consistently, enhancing overall usability.
- Updated the layout of WalletPage to use a flex column for better alignment on smaller screens.
- Adjusted button styles to ensure consistent sizing and spacing across different screen sizes.
- Enhanced the overall structure for a more organized presentation of wallet information.
These changes improve the usability of the WalletPage, making it more accessible on various devices.
- Added functionality to encode LNURL for QR code generation in ReceiveDialog, improving payment link sharing.
- Updated WalletService to include a tag property for transactions, allowing for better categorization and display in WalletPage.
- Enhanced WalletPage to display transaction tags, improving user visibility of transaction details.
These changes improve the user experience by providing clearer payment information and enhancing the functionality of the wallet module.
- Modified the transaction amount to be divided by 1000 for accurate representation.
- Updated the fee calculation to also divide by 1000, ensuring consistency in transaction data.
These changes enhance the accuracy of transaction details displayed in the wallet module.
- Modified WalletService to set a default timestamp when payment time is not provided, ensuring consistent date handling.
- Enhanced WalletPage to validate timestamps before formatting, preventing potential errors and improving user experience by displaying a placeholder for invalid timestamps.
These changes improve the reliability of transaction data presentation in the wallet module.
- Updated WalletService to utilize the centralized config for API base URLs, enhancing maintainability.
- Replaced logger calls with console statements for error handling and success messages to simplify debugging.
- Refactored the onInitialize method and other service methods to improve clarity and error management.
These changes streamline the service's functionality and ensure consistent API endpoint usage.
- Changed the import statement for BaseService from '@/core/services/BaseService' to '@/core/base/BaseService' to reflect the new directory structure.
This change ensures that the WalletService correctly references the BaseService, maintaining the integrity of the service layer.
- Replaced the Alert component with a custom error display using a div for better styling and user experience.
- Updated the error message presentation to enhance visibility and maintain consistency with the overall UI design.
These changes improve the user feedback mechanism in the SendDialog, ensuring errors are communicated effectively.
- 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.