Closed ogabrielides closed 1 week ago
[!IMPORTANT]
Review skipped
Auto reviews are disabled on base/target branches other than the default branch.
Please check the settings in the CodeRabbit UI or the
.coderabbit.yaml
file in this repository. To trigger a single review, invoke the@coderabbitai review
command.You can disable this status message by setting the
reviews.review_status
tofalse
in the CodeRabbit configuration file.
The changes introduce a new WithdrawsStatusScreen
to the application, enhancing the state management and user interface for handling withdrawal statuses. This includes modifications to the AppState
, AppContext
, and various enums and methods to accommodate the new screen and its functionalities. Additionally, new data structures and methods for managing withdrawal tasks and statuses are defined, ensuring integration with the existing backend task processing flow. The user interface is updated to include a button for accessing the new screen, completing the integration of withdrawal management into the application.
File Path | Change Summary |
---|---|
src/app.rs |
Added WithdrawsStatusScreen to AppState::new , updated main_screens BTreeMap, modified handle_backend_task to include WithdrawalStatus . Updated logic for context handling. |
src/context.rs |
Added withdraws_contract field to AppContext , modified constructor to load withdrawals contract. |
src/platform/mod.rs |
Introduced withdrawals module, added WithdrawalTask to BackendTask , added WithdrawalStatus to BackendTaskSuccessResult , updated run_backend_task for withdrawal tasks. |
src/platform/withdrawals/mod.rs |
Defined constants for transaction management, introduced WithdrawalsTask enum, added WithdrawRecord and WithdrawStatusData structs, and implemented methods for running and querying withdrawal tasks with error handling. |
src/ui/components/left_panel.rs |
Added a button for "Withdraws Status" in the left panel, ensuring it integrates with existing button rendering logic. |
src/ui/mod.rs |
Introduced withdraws_status_screen module, updated RootScreenType and ScreenType enums to include new variants for withdrawal status. |
src/ui/withdraws_status_screen.rs |
Created WithdrawsStatusScreen struct with methods for UI rendering, data handling, and integration with application context. Implemented methods for displaying withdrawal data and managing UI layout. |
testnet_nodes.yml |
Added a new entry for private_key in the configuration file for testnet nodes. |
sequenceDiagram
participant User
participant UI
participant AppState
participant AppContext
participant Backend
User->>UI: Click "Withdraws Status"
UI->>AppState: Request WithdrawsStatusScreen
AppState->>AppContext: Load withdraws_contract
AppContext->>Backend: Run withdrawal task
Backend-->>AppContext: Return withdrawal status
AppContext-->>AppState: Update state with withdrawal status
AppState-->>UI: Render WithdrawsStatusScreen with data
UI-->>User: Display withdrawal status
🐇 "In the meadow, a new screen blooms,
For withdrawals, it dispels the glooms.
With buttons bright and data clear,
Hop along, the status is here!
A tale of funds, both near and far,
Our rabbit's journey, a guiding star!" 🌟
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Implemented new withdraw status screen.
Features implemented:
Improvements for the future:
Summary by CodeRabbit
Summary by CodeRabbit
Release Notes
New Features
Bug Fixes
Documentation
These changes enhance the user experience by providing a dedicated interface for tracking withdrawal statuses and improving task management within the application.