This commit adds tooling to find potential issues with code
that are difficult to notice during debugging (especially on
builds from the CI which lack debugging capabilities).
File manager supports basic operations like browsing files,
renaming, copying and removing
Snapshots allow to take a snapshot of current app data, and
compare to it later on with basic hexdump view - useful to
notice anomalies or modifications to files that shouldn't
be accessed.
File watcher checks for file modifications in real time, which
is used to see what actions are happening to the fs in real
time.
Fuzzing can be used to load/create wallets randomly to see
if any of them will get corrupted (can be used in addition
with wallet_fuzzer.sh script that kills the app and restarts
the process at random intervals to simulate unexpected action
that can happen for example in the background).
In addition I've added toString method to {bitcoin,monero,nano
,zano}_wallet_keys.dart so I can easily compare the results
when fuzzing without accessing wallet-specific code.
* feat(swap-status-monitor): add real-time swap status monitoring and UI updates
- Introduce SwapManager for automatic tracking of active-wallet swaps.
- Automatically queues new or updated trades from the Hive box.
- Periodically fetch and persist swap statuses via the corresponding trade provider.
- Implement start(wallet, providers), stop(), and dispose() for lifecycle control.
- Apply user's ExchangeApiMode(disabled, tor-only, enabled) when fetching updates.
- Remove swaps from the watchlist on any final state (completed, expired, failed).
- Dispose SwapManager in AppState.dispose() to cancel polling and the Hive subscription.
* refactor(swap-status): replace SwapManager with TradeMonitor for improved trade monitoring.
This change improves the flow by simplifying the trade monitoring logic.
- Removes SwapManager class and replace with TradeMonitor implementation
- Update di and Appstate to register and dispose TradeMonitor
- Modify DashboardViewModel to use TradeMonitor instead of SwapManager
* fix: Modify trade monitoring logic to ensure trade timers are properly disposed when wallet switching occurs
* fix(swap-status): Fix receive amount for exchanges showing as .00 because of null values
* feat(swap-status): Enhance Trade Monitoring
This change:
- Adds a privacy settings option to disable automatic exchange status updates.
- Prevents trade monitoring when privacy settings option is enabled.
- Disables trade monitoring when the app is in background, we only want to run these checks in foreground.
- Refactors the trade monitoring logic to remove unneccessary checks and use of resources.
* feat(swap-status): Enhance Trade Monitoring
This change:
- Adds a privacy settings option to disable automatic exchange status updates.
- Prevents trade monitoring when privacy settings option is enabled.
- Disables trade monitoring when the app is in background, we only want to run these checks in foreground.
- Refactors the trade monitoring logic to remove unneccessary checks and use of resources.
* fix(swap-staus): Prevent unneccessary calls
* feat(swap-status): Prevent api request calls as long as last update time is less than specified interval
* refactor(theme-setup-update): Move didChangePlatformBrightness lifecycle method to Root widget instead of AppState. We already have an active WidgetsBindingObserver in Root widget.
* fix(theme): Add workaround for flutter iOS didChangePlatformBrightness issue causing unneeded rebuilds.
* feat(swap-status-monitor): add real-time swap status monitoring and UI updates
- Introduce SwapManager for automatic tracking of active-wallet swaps.
- Automatically queues new or updated trades from the Hive box.
- Periodically fetch and persist swap statuses via the corresponding trade provider.
- Implement start(wallet, providers), stop(), and dispose() for lifecycle control.
- Apply user's ExchangeApiMode(disabled, tor-only, enabled) when fetching updates.
- Remove swaps from the watchlist on any final state (completed, expired, failed).
- Dispose SwapManager in AppState.dispose() to cancel polling and the Hive subscription.
* refactor(swap-status): replace SwapManager with TradeMonitor for improved trade monitoring.
This change improves the flow by simplifying the trade monitoring logic.
- Removes SwapManager class and replace with TradeMonitor implementation
- Update di and Appstate to register and dispose TradeMonitor
- Modify DashboardViewModel to use TradeMonitor instead of SwapManager
* fix: Modify trade monitoring logic to ensure trade timers are properly disposed when wallet switching occurs
* fix(swap-status): Fix receive amount for exchanges showing as .00 because of null values
* Add theme base v2
* Initial new theme base files
* Typos
* Fixes
* Update theme files
* feat: Migrate to Material 3 Theming
Foundation, Theme Data Refactor, and First Extension Cleanup Batch.
This commit completes the first major phase of migrating to Material 3 theming by setting up the foundations for material 3 integration and begins the initial migration, removing custom theme extensions, updating theme data, and refactoring all relevant widget and page theming to use Material 3’s built-in color and typography tokens.
These changes:
- Lays the groundwork for Material 3 theming by restructuring the app’s theme configuration to use Material 3’s ColorScheme and TextTheme as the primary sources of color and typography throughout the app.
- Refactors the core theme config files by removing legacy custom color roles ensuring all color definitions now map directly to Material 3’s role.
- Begins the first batch migration of custom theme extensions (InfoTheme, PlaceholderTheme, KeyboardTheme, PinCodeTheme) and updates all affected widgets and pages to use Material 3 color and typography tokens instead of the custom properties.
- Cleans up the codebase by deleting the files of the initial set of migrated extensions and eliminating all related imports and usages.
* feat: Migrate to Material 3 Theming.
This change:
- Updates the themes README.md file to reflect the current structure and give more information based on the first major phase that was completed.
* feat: Migrate to Material 3 Theming
Deleting previous theme extensions
* feat: Migrate to Material 3 Theming
Another batch of migrations from existing extensions
* feat: Migration to Material 3 Theming
Third Migration batch for theme extensions
* fwat: Migration to Material 3 Theming
Final Migration batch for previous theme extensions
* Update onboarding hero
* Update button radius
* Add surfaceContainer to light theme
* feat(themes): Migrate to Material 3 Theming
This change:
- Adds new set of hero images
- Modifies the core structure for the themes
- Add missing color tokens to the theme classes
- Adds a CustomThemeColor class for custom color tokens
- Modifies the themelist to have a fall back for previous theme implementation
- Adds localization for some texts
- Modifies the flow for loading the theme on app start
- Add a WidgetsBindingObserver that listens for changes in the device theme and updates the app theme when there is a change
- Registers the themeStore as a Singleton for codebase wide use
* feat(themes): Migrate to Material 3 theming
This change:
- Migrates UI flows across the app to the new themes
- Confirms styling and typography of components across the app uses the new themes
- Remove instances of Palette use
- Switch TextStyles across the app to use theme text styles
* feat(themes): Migrate to Material 3 Theming.
This change:
- Adjusts bottomsheets styling and removes duplicate close button
- Removes more themedata extensions from the previous implementation
* - Remove outlines from cards and dock
- Update menu colors
- Update padding/divider size for cards
* - Update PIN screen
- Fix navigation dock shadow
- Update wallet screen colors
* Update border radius --skip-ci
* feat(themes): Migrate to Material 3 Theming.
This change:
- Adds gradient backgrounds to the dashbaord and balance cards.
- Migrates the input fields across the app to BaseTextFormFields.
- Removes dependence of input fields on individual styling, focusing instead on using theme defined InputDecoration styling with adjustments on individual components where needed.
- Applies new theme styling to BaseTextFormField, AddressTextField and CurrencyAmountTextField.
* - Switch some hero images to PNG
- Fix nagivation_dock shadow
- Minor fixes
* feat: Add fallback to previous underline styling in central widgets
This change:
- Adds a fallback to CurrencyAmountTextField, AddressTextField, and BaseTextFormField, allowing them use the previous theme styling.
- Adds localization for new texts
* feat(themes): Update warning box colors for dark and light themes
* feat(themes): Relaod themes when user restores from backup, ensuring the user previous theme preference is used.
* feat(themes): Handle themes logic during restore from backup
This change:
- Refactors theme loading logic to handle backup restore edgecase
- Refreshes the theme based on the user saved preference during restore from backup flow
* Fix card gradients and spacing
* Fix even more radiuses
Test new icons for navigation_dock.dart
* Update onboarding flow backgrounds
Fix swap icon clipping
Fix some text colors
Add more hero images
* Fix incorrect color for light theme
* Fix more hero images and cleanup
* Update text field icons
Fix info box CTA colors
Fix sync indicator colors
* Update toggle colors
Update dark theme colors (minor)
Update crypto_balance_widget.dart icon
* Update page transitions in router.dart
Fix some colors
* feat(themes): Display label by default for filled textfields
* feat(themes): Refactor theme handling across various components
This change:
- Fixes issue with themeMode resetting to system mode when app is restarted causing a UI glitch
- Updates theme checks from `currentTheme.type == ThemeType.dark` to `currentTheme.isDark` for consistency
- Adjusts UI components to use the theme directly from the themeStore
* feat(themes): Add animating tagline to the create pin welcome screen
* Revert text fields label temporarily, fix a couple colors, and cleanup some images
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
Co-authored-by: Blazebrain <davidadegoke16@gmail.com>
* Initial Payjoin
* Initial Payjoin
* More payjoin stuff
* Minor fixes
* Minor fixes
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Fix minor bug causes by data inconsistency in the btc utxos
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Initial Payjoin
* Initial Payjoin
* More payjoin stuff
* Minor fixes
* Minor fixes
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Fix minor bug causes by data inconsistency in the btc utxos
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Minor cleanup
* Fix Rebase issues
* Move PJ Receiver to isolate
* Add Payjoin Setting
* Payjoin Sender are now isolated
* Added Payjoin sessions to tx overview. Fix Fee issue with payjoin
* Clean up code
* Fix taproot for payjoin
* Fix CI Errors
* Add Payjoin UI elements and details page
* Add Payjoin UI elements and details page
* Fix Translations
* feat: Detect Payjoin URIs in pasted text and show to the User sending Payjoin
* feat: rename pjUri to payjoinURI for more code clarity
* Update res/values/strings_pl.arb
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* Update cw_bitcoin/lib/payjoin/manager.dart
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* Update cw_bitcoin/lib/payjoin/manager.dart
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* feat: Disable Payjoin per default
* feat: Disable Payjoin fully if disabled or no Inputs available
* feat: Resume Payjoin if app comes back to foreground
* chore: Revert overly aggressive code formats
* feat: show correct Payjoin amount for receivers
* feat: Improved payjoin status
* feat: Show payjoin errors on payjoin details screen
* deps: update flutter to 3.27.4
* feat: Revert localisations
* bug: Remove duplicate transaction id on payjoin details
* style: remove double await in payjoin sender
* refactor(cw_bitcoin): Refactor method signatures and convert constructor to factory
* refactor(cw_bitcoin): Refactor wallet service and PSBT signer for cleaner code
Removed unnecessary `CakeHive` dependency and refactored `BitcoinWallet` initialization to use `payjoinSessionSource`. Improved code readability in `PsbtSigner` by reformatting lines and simplifying constructor methods for `UtxoWithPrivateKey`.
* fix: Resume Payjoin Sessions and load PJUri after sleep
* feat: Add "Copy Payjoin URL button" to receive screen
* fix: Add "Payjoin enabled"-Box below QR Code on the receive screen
* fix: Set payjoin_enabled color to black independent of the theme
* refactor: Payjoin session management and cleanup unused code.
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
Co-authored-by: cyan <cyjan@mrcyjanek.net>
* Implement background sync for xmr using flutter_daemon
* - initialize app config in background thread
- initializeAppConfigs without loading the wallet.
* - properly do awaited calls in methodChannel
- prevent locking main thread during background sync
* add back background sync debug page
fix issues caused by xmr wallet being view only (and read only)
* changes from review
improve starting of bgsync task
* update stopBackgroundSync, await listener functions, ensure that listener always start (call _start in constructor)
* DO-NOT-MERGE: extre verbose monero logs
* stop background service when app is being opened
* improve monitoring of background sync
* update flutter_daemon to ensure network constraint
prevent throwing errors on isBackgroundSyncEnabled
check network before syncing
* Update lib/main.dart
* revert Update main.dart [skip ci]
* continously run network check
* disable charging requirement,
fix status reporting of background sync in UI
* Refactor background sync logic, and add UI notifications for battery optimization. Updated flutter_daemon version modified build.gradle for signing config to allow testing in both release and debug modes.
* verbose monero only when requested in code.
Do not start background sync when battery optimization is on
* fix background sync mode not properly reflecting state changes
* drop unnecessary dependency
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* decred: Add decred. (#1322)
* multi: Add initial decred screens. (#1165)
Use a mock libwallet for now.
* cw_decred: add libdcrwallet dependency and link library for android, ios and macos (#1240)
* change cw_decred from package to plugin
* add libdcrwallet dependency and link library for android, ios and macos
* remove spvwallet, make some libdcrwallet fns async, light refactor
* libdcrwallet: use json payload returns
* use specific libwallet commit hash
* decred: fix Rename wallet.
---------
Co-authored-by: JoeGruff <joegruffins@gmail.com>
* decred: Add sync.
* decred: Add send transaction.
* decred: Fix fee estimation.
* decred: List transactions.
* decred: Add rescan.
* decred: Sign message.
* decred: Add new addr and addrs.
* decred: Add change wallet pass.
* decred: Add restore from seed.
* decred: Add watching only wallets.
* decred: Enable mainnet.
* decred: Allow using blank node address.
This allows a persistent peer to be unset, falling back to decred
seeders.
* decred: Rescan from wallet birthday.
* add and update macos build scripts, update build readme, gitignore macos project.pbxproj
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
* multi: hide decred rescan page if it's not ready
- move hasRescan method to WalletBase and implement for decred
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
* cw_decred: fix bug where decred wallets are not loaded after app restart
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
* add buy and sell for decred via onramp
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
* bug-fix: account for other send outputs that are part of the same tx
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
* decred: Return address with no peers.
* decred: Update pubspec.
* decred: Add verify message.
* upgrade hive_generator dep in cw_decred
* decred: Clean up code.
---------
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
Co-authored-by: Wisdom Arerosuoghene <wisdom.arerosuoghene@gmail.com>
Co-authored-by: Philemon Ukane <ukanephilemon@gmail.com>
* fix extracted addresses not used
fix conflicts with main
* remove print [skip ci]
* minor formatting
* fix initial migration version
* add build decred script to workflow
* install go before build decred
fix switch cases
* trial 2 to fix decred build
* re-install go
* revert build script change
* refactor/clean nodes functions
* Fix address book issue
Fix send ALL (to be continued with the fees point)
* Fix transactions display issues
Add missing file
* Fix unconfirmed balance not displayed
Change Wallet order
Minor cleanup
* Fix workflow
* Fix workflow
* Fix workflow
* test
* hardcode path for now
* fix + cleanup decred build script to work on mac and linux
* Update decred build script
* Run actions on pull requests, extract commit message
* run after checkout
* add safe directory
* Get commit message from base.sha instead of last commit
* base -> head
* Do not merge main branch into pr
* [skip slack] [run tests] clone by sha
* Proper name for decred library in the build script
* Throw an error when ANDROID_HOME or ANDROID_NDK_VERSION is missing
* Fix conflicts with main
* minor code enhancement
* decred: Add used address history. (#1941)
* decred: Update pubspec.
* decred testnet
* decred: Add used address history.
* decred: Remove default node list.
* populate transaction history before sync begins
* decred: Add some awaits.
* decred: Fix send all.
* decred: Add clang export to build script.
* decred: Update logo colors.
* cleanup cw_decred.dart
* make decred wallet addresses selectable in receive page
* decred: Always set default addr when used.
* decred: Add back default node list.
* decred: Allow creating addresses manually.
---------
Co-authored-by: Wisdom Arerosuoghene <wisdom.arerosuoghene@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* minor fixes and cleanup
* minor fix, feel free to test now
* - Fix transaction details
- Fix Nodes
- Add processing sync status
* Add decred info card
* push missing file
* Add missing text for decred info card
* minor: change docs link [skip ci]
* decred: Update derivation info. (#2013)
* decred: Update derivation info.
* decred: Allow unsynced unused addresses.
* decred: Update dcrwallet dep to 4.3.0.
* Merge main and fix conflicts
* Merge main and fix conflicts
* decred: Fix background sync panic. (#2080)
* decred: Run libwallet in isolate. (#2077)
* decred: Fix contact save inquiry. (#2083)
Also fix tx time and the fee shown on pending transactions.
* Disable send button in view only decred wallets
* - Fix frozen coins
- Add URI support
- Fix fees in tx details
- Handle empty coins send
- Handle wallets in address book
* Merge main
* remove print [skip ci]
* Fix restore from QR
* minor improvement for QR restore
* minor fixes [skip ci]
* decred: Get slip44 addrs before sync completes. (#2092)
* - Fix loading wallet more than one time
- Fix minor UI issue
---------
Signed-off-by: Philemon Ukane <ukanephilemon@gmail.com>
Co-authored-by: JoeGruffins <34998433+JoeGruffins@users.noreply.github.com>
Co-authored-by: Wisdom Arerosuoghene <wisdom.arerosuoghene@gmail.com>
Co-authored-by: Philemon Ukane <ukanephilemon@gmail.com>
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
* CW-685 Add passphrase restore for xmr/wow (#1552)
* CW-685 Add passphrase restore for xmr/wow
* add support for polyseed passphrase
* disable 14 word seed passphrase (not supported in wownero-seed)
fix: Getting grayed screen on latest passphrase build after having restored a 14-word wownero seed (+passphrase) and attempting to restore a XMR seed, legacy or otherwise.
* fix pointer when restoring depracated wownero seed
* Fix polyseed encryption
* changes from review
* remove unused code
* add passphrase back to the screen
add passphrase to qr code backup export
* fix settings leaking through currencies on seed restore
* fix monero.com builds, make passphrase a getter on WalletBase
* add support for weird polyseed
* store passphrase for weird polyseed
* show encrypted seed only when passphrase is not empty
* force set restore height
* fix build issues
* fix build errors
* fix configure script
* print -> printV
* Update lib/view_model/wallet_keys_view_model.dart [skip ci]
* Update lib/view_model/wallet_keys_view_model.dart [skip ci]
* Update tool/configure.dart [skip ci]
* Update lib/view_model/wallet_new_vm.dart
* reuse existing passphrase field
* remove unused passphrase field
* make workflow run on pullrequests only [skip ci] [skip slack]
---------
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* Zano (#1793)
* my experiments
* Inital code for Zano integration
* Added missing android log lib
* added dummy wallet & some zano implementation
* fixing api for zano
* fixed zano build script
* attempt tp fix namespace problem
* added copy script for Zano files
* changes for zano wallet
* last updates
* zano.dart test app
* wallet recovery
* added pending transfer, some cleanup of unused
* some cleanup
* send + receive qr code
* last upd
* updated build_zano.sh
* updated zano ApiCalls, removed dummy
* updated zano ApiCalls, removed dummy
* added logging for get status/get info
* restored old wallet.dart
* restoring original versions of files
* restoring original versions of files
* restored get_height_by_date.dart, removed unnecessary calls for zano get height
* restoring original versions
* added multiple destinations, send all flag; some refactoring
* logging
* removed the duplicate
* fixed syncing sync status, decimal division, safe null json parsing
* some fixes after merge
* added multibalance/asset support for zano (ui)
* adding/removing from whitelist
* transfers in different assets
* transfers for multiple destinations and send all, some refactoring
* whitelists, some refactoring
* added different digits (decimal points) for formatters, some refactoring
* open, create, restore wallet refactoring; whitelists
* whitelists
* getting and updating transaction list; restoring a wallet from QR code
* several attempts to close wallet
* some refactoring
* added seed phrase
* changed fields to BigInt, some fixes
* modified build scripts for android
* build scripts
* restored accidently removed cw_haven.dart
* inital ios integration(zano libs built)
* update in script
* latest changes
* Applied a patch for iOS build (Boost and Zano scripts)
* Removed zano.dart (script-generated) and some unnecessary files
* Revert "Removed zano.dart (script-generated) and some unnecessary files"
This reverts commit 367c86398e.
* Removed zano.dart (generated by scripts), some files restored to initial versions
* added timer library
* changed paths in build_zano.sh
* build_zano.sh
* edit_token_page.dart - removed flag skipZanoAddressValidation
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* lib/core/address_validator.dart - updated zano address regex
lib/src/screens/dashboard/edit_token_page.dart - using AddressValidator().call
* fix zano build issues on android
* remove contrib/depends to save space
* move async call to a synchronouse one
* call sync call in isolate to make it async
generate framework for iOS as well
fix UR issues
* zano changes from monero_c repo
* update monero_c hash
* fix invalid zano imports, add support for linux, speed up CI builds
* update monero_c hash
* bump monero_c commit (yes, again, I know)
* fix wallet resttore, fix hardcoded IP
* fix regex, don't throw error when opening wallet, fix tx history, fix async calls, move stuff to isolate
* fix api calls in async transaction creation
* update build scripts
* fix some build issues
* update dependencies
* fix dependencies
* update ci scripts
* Improve multithread use of zano api
* Fix build issue
* fix zano node selection, move other zano calls to separate isolate
* update moneroc hash
WIP fixes for zano
* update monero_c
* fix monero.com builds
* sync wallet after connecting
* update monero_c
* Fix windows builds
* update monero_c
* update monero_c
* unshallow submodule
* cherry pick CW-867 Wownero fixes (#1881)
* fix wownero syntax error
* remove print statements in zano
* update zano node URL
* [PATCH] Apply new CI script (https://github.com/cake-tech/cake_wallet/pull/1948)
* drop env -i to fix cmake build errors on newer system
* [skip ci] Revert "[PATCH] Apply new CI script (https://github.com/cake-tech/cake_wallet/pull/1948)"
This reverts commit 5acb5bfe57.
* [run tests] [skip slack] Fix env in build
* Dynamically detect number of cores used to build monero_c, since it appears that zano requires more memory to link (and it reliably fails for first couple builds due to OOM on CI/VM with memory constrains).
Drop unshallowing of all modules
[run tests]
* Changes from review [run tests]
* drop zano on linux (missing symbols)
fix wownero on linux
add aarch64-linux-gnu
[run tests]
* - remove duplicate entry in addToken()
- use walletPassword in createZanoNewWalletCredentials
- remove createZanoRestoreWalletFromKeysCredentials
[run tests]
* [skip ci] update dockerfile
* fix parameter issue
---------
Co-authored-by: leo <leonid.ivanov@gmail.com>
Co-authored-by: cr.zoidberg <crypto.zoidberg@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* - Add Zano Aliases
- Enable simpleswap [skip ci]
- Fix settings migration versions
* push missing file [skip ci]
* Zano pr with CW-685 passphrase (#1969)
* my experiments
* Inital code for Zano integration
* Added missing android log lib
* added dummy wallet & some zano implementation
* fixing api for zano
* fixed zano build script
* attempt tp fix namespace problem
* added copy script for Zano files
* changes for zano wallet
* last updates
* zano.dart test app
* wallet recovery
* added pending transfer, some cleanup of unused
* some cleanup
* send + receive qr code
* last upd
* updated build_zano.sh
* updated zano ApiCalls, removed dummy
* updated zano ApiCalls, removed dummy
* added logging for get status/get info
* restored old wallet.dart
* restoring original versions of files
* restoring original versions of files
* restored get_height_by_date.dart, removed unnecessary calls for zano get height
* restoring original versions
* added multiple destinations, send all flag; some refactoring
* logging
* removed the duplicate
* fixed syncing sync status, decimal division, safe null json parsing
* some fixes after merge
* added multibalance/asset support for zano (ui)
* adding/removing from whitelist
* transfers in different assets
* transfers for multiple destinations and send all, some refactoring
* whitelists, some refactoring
* added different digits (decimal points) for formatters, some refactoring
* open, create, restore wallet refactoring; whitelists
* whitelists
* getting and updating transaction list; restoring a wallet from QR code
* several attempts to close wallet
* some refactoring
* added seed phrase
* CW-685 Add passphrase restore for xmr/wow
* add support for polyseed passphrase
* disable 14 word seed passphrase (not supported in wownero-seed)
fix: Getting grayed screen on latest passphrase build after having restored a 14-word wownero seed (+passphrase) and attempting to restore a XMR seed, legacy or otherwise.
* fix pointer when restoring depracated wownero seed
* Fix polyseed encryption
* changed fields to BigInt, some fixes
* modified build scripts for android
* build scripts
* restored accidently removed cw_haven.dart
* inital ios integration(zano libs built)
* update in script
* latest changes
* changes from review
* remove unused code
* add passphrase back to the screen
add passphrase to qr code backup export
* fix settings leaking through currencies on seed restore
* fix monero.com builds, make passphrase a getter on WalletBase
* add support for weird polyseed
* store passphrase for weird polyseed
* show encrypted seed only when passphrase is not empty
* force set restore height
* Applied a patch for iOS build (Boost and Zano scripts)
* Removed zano.dart (script-generated) and some unnecessary files
* Revert "Removed zano.dart (script-generated) and some unnecessary files"
This reverts commit 367c86398e.
* Removed zano.dart (generated by scripts), some files restored to initial versions
* fix build issues
* fix build errors
* added timer library
* changed paths in build_zano.sh
* build_zano.sh
* edit_token_page.dart - removed flag skipZanoAddressValidation
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* lib/core/address_validator.dart - updated zano address regex
lib/src/screens/dashboard/edit_token_page.dart - using AddressValidator().call
* fix zano build issues on android
* remove contrib/depends to save space
* move async call to a synchronouse one
* call sync call in isolate to make it async
generate framework for iOS as well
fix UR issues
* zano changes from monero_c repo
* update monero_c hash
* fix invalid zano imports, add support for linux, speed up CI builds
* update monero_c hash
* bump monero_c commit (yes, again, I know)
* fix wallet resttore, fix hardcoded IP
* fix regex, don't throw error when opening wallet, fix tx history, fix async calls, move stuff to isolate
* fix api calls in async transaction creation
* fix configure script
* update build scripts
* fix some build issues
* update dependencies
* fix dependencies
* update ci scripts
* Improve multithread use of zano api
* Fix build issue
* fix zano node selection, move other zano calls to separate isolate
* update moneroc hash
WIP fixes for zano
* update monero_c
* fix monero.com builds
* sync wallet after connecting
* update monero_c
* Fix windows builds
* update monero_c
* print -> printV
* update monero_c
* unshallow submodule
* cherry pick CW-867 Wownero fixes (#1881)
* fix wownero syntax error
* remove print statements in zano
* update zano node URL
* [PATCH] Apply new CI script (https://github.com/cake-tech/cake_wallet/pull/1948)
* drop env -i to fix cmake build errors on newer system
* Update lib/view_model/wallet_keys_view_model.dart [skip ci]
* Update lib/view_model/wallet_keys_view_model.dart [skip ci]
* Update tool/configure.dart [skip ci]
* Update lib/view_model/wallet_new_vm.dart
* [skip ci] Revert "[PATCH] Apply new CI script (https://github.com/cake-tech/cake_wallet/pull/1948)"
This reverts commit 5acb5bfe57.
* [run tests] [skip slack] Fix env in build
* Dynamically detect number of cores used to build monero_c, since it appears that zano requires more memory to link (and it reliably fails for first couple builds due to OOM on CI/VM with memory constrains).
Drop unshallowing of all modules
[run tests]
* Changes from review [run tests]
* drop zano on linux (missing symbols)
fix wownero on linux
add aarch64-linux-gnu
[run tests]
* - remove duplicate entry in addToken()
- use walletPassword in createZanoNewWalletCredentials
- remove createZanoRestoreWalletFromKeysCredentials
[run tests]
* [skip ci] update dockerfile
* reuse existing passphrase field
* add passphrase support for zano
* Drop aarch64-linux-gnu for now.
* fix passphrase display, fix gray screen
* catch errors in polyseed encryption, encrypt only polyseed, fix coin in wownero
* update monero_c
update wownero to 0.11.3.0
* Show passphrase only when non-empty, fix passphrase being displayed as view key private.
* fix NanoAccountListPage showing up instead of MoneroAccountListPage for wownero
* build zano dependencies on android
* fix parameter issue
* minor merge leftover [skip ci]
* minor cleanup [skip ci]
* fix zano alias
update eth url for ens lookup
change $MAKE_JOB_COUNT to $NPROC
* minor cleanup [skip ci]
* fix zano alias
* Disable passphrase for creation of xmr/wow/zano
minor fixes
* fix zano on iOS
* - Fix get token data
- Enable unavailable balance
- Enable confirmations count
- Adjust explorer link
---------
Co-authored-by: leo <leonid.ivanov@gmail.com>
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
Co-authored-by: cr.zoidberg <crypto.zoidberg@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
---------
Co-authored-by: cyan <cyjan@mrcyjanek.net>
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
Co-authored-by: leo <leonid.ivanov@gmail.com>
Co-authored-by: cr.zoidberg <crypto.zoidberg@gmail.com>
* Force SSL for Electrum and Monero nodes
Some Cleanup
* minor [skip ci]
* potential fix for transactions not cleared correctly [skip ci]
* minor fix [skip ci]
* fix: Ethereum enhancements around fees and computations relating to signing and sending transactions
* feat: Add nownodes key for evm to workflow
* feat: Reactivate send all on both eth and polygon wallet types
* fix: Add generic function for updating the node for a wallet type, move ethereum transaction error fees handler to a new file
* fix: Revert podfile.lock
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* improve exception throwing on broken wallets
- put _lastOpenedWallet to avoid issues on windows (file is currently open by)
- don't throw corruptedWalletsSeed - instead store it inside of secureStorage
- await ExceptionHandler.onError calls where possible to makse sure that popup won't be canceled by some UI element
- adjust BaseAlertDialog to be scrollable if the text is too long
- add ExceptionHandler.resetLastPopupDate - that can be called when we want to show error report screen (bypassing cooldown)
* fix: HiveError: Box has already been closed.
* await the alerts to be sure that each one of them is being shown
fix typo in secure storage
* Update lib/core/backup_service.dart
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* address comments on github
* don't store seeds in secure storage
* fix wallet password
* update monero_c
update corrupted seeds UI
prevent app from crashing when wallet is corrupted
* show alert with seeds
* Update corrupted wallet UI
Fix wallet opening cache
* remove unused code
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* add timeout for mempool fee api and make it only in bitcoin
* disable Monero Ledger for desktop
* handle onramper tag issue
* better handle main actions UI
* make service status scrollable with a better UI
* fix stupid race condition
* minor handling
* update btc fee api
update our xmr node to use ssl
* manually add supported unstoppable domains for now
* change bitcoin default node
code enhancement
* revert debugging code [skip ci]
* minor enhancements [skip ci]
* increase sync indicator size [skip ci]
* fix selecting USA country not triggering the reaction
* fix scrolling on cake features page [skip ci]
* replace qr scanner with fast_scanner
* bump java version
* fix qr code scanning
* add flashlight and camera switch
* airgap work
* commitTransactionUR
* bump fast_scanner, fix configure script
* add option to restore wallet from NERO qr format
* fixes to the flow and logic
use gsed or otherwise it fails?
* remove Expanded() to fix URQR on release builds
* cache key to allow app updates
* rename cache key
* [skip ci] cache key.jks in cache_dependencies
* update fast_scanner to work on ios, with light mlkit dependency
* ui fixes
* error handling fix
* update fast_scanner to drop iOS dependency
* changes from review
* Update lib/entities/qr_scanner.dart
* changes from review
* remove useless commit
* don't set state multiple times
remove return Container() for non monero wallets
* return on fail
don't handle empty qr codes
* set node as trusted
display primary address in seed screen
* fix wow and haven
* migrate node to trusted
* - update trusted node for existing users
- update locales
- fix conflicts
- move menu item
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* Add Litecoin Hardware Wallet Creation
* Add Litecoin Hardware Wallet Creation
* Fix Bitcoin not sending on Ledger
* Fixes to sending LTC using Ledger
* CW-679 Fix merge conflicts
* CW-679 Fix merge conflicts
* CW-679 Minor fixes
* CW-679 Add derivation Path of change address
* ledger flutter plus refactoring
* ledger flutter plus refactoring
* ledger flutter plus refactoring
* Ups :|
* Ups :| I forgot USB
* Handle BT Off
* Fix Issue with A14 and USB
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Pls work
* Pls work
* Pls work
* Pls work
* Fix overpopulation
* Fix ble device detection and support for Stax and Flex
* clean up pubspec
* clean up
* MWeb merge fix
* MWeb merge fix
* Fix Merge conflicts
* Fix Requested changes
* reset brightness after using
* set default qr to auto detect
* minor safety enhancement
* close socket after checking connectivity
* fix incorrect parent exception class
* pump medium and fast priorities even if they are equal to slow
* Add Ton to exchange
* fix silent payments
add Seth bitcoin node
* deselect quantex
add seth node for existing users
* fix node uri
* Fix stub creation
* Generate MWEB addresses
* Fix mweb address derivation
* Use camel-case
* Show utxos in tx list
* A few fixes
* Add spent processing
* Update balance
* Balance fixes
* Update address records
* Get rid of debounce hack
* Get sending up to the confirmation box
* Fee estimation
* Stop the daemon if plugin is unloaded
* Normal fee for non-mweb txns
* Fix fee estimation for send all
* Don't hash mweb addresses
* More fee fixes
* Broadcast mweb
* Remove test files
* One more
* Confirm sent txns
* Couple of fixes
* Resign inputs after mweb create
* Some more fixes
* Update balance after sending
* Correctly update address records
* Update confs
* [skip ci] updates
* [skip ci] add dep overrides
* working
* small fix
* merge fixes [skip ci]
* merge fixes [skip ci]
* [skip ci] minor fixes
* silent payment fixes [skip ci]
* updates [skip ci]
* save [skip ci]
* use mwebutxos box
* [skip ci] lots of fixes, still testing
* add rescan from height feature and test workflow build
* install go
* use sudo
* correct package name
* move building mweb higher for faster testing
* install fixes
* install later version of go
* go fixes
* testing
* testing
* testing
* testing
* testing
* should workgit add .github/workflows/pr_test_build.yml
* ???
* ??? pt.2
* should work, for real this time
* fix tx history not persisting + update build_mwebd script
* updates
* fix some rescan and address gen issues
* save [skip ci]
* fix unconfirmed balance not updating when receiving
* unspent coins / coin control fixes
* coin control fixes
* address balance and txCount fixes, try/catch electrum call
* fix txCount for addresses
* save [skip ci]
* potential fixes
* minor fix
* minor fix - 2
* sync status fixes, potential fix for background state issue
* workflow and script updates
* updates
* expirimental optimization
* [skip ci] minor enhancements
* workflow and script fixes
* workflow minor cleanup [skip ci]
* minor code cleanup & friendlier error message on failed tx's
* balance when sending fix
* experimental
* more experiments
* save
* updates
* coin control edge cases
* remove neutrino.db if no litecoin wallets left after deleting
* update translations
* updates
* minor fix
* [skip ci] update translations + minor fixes
* state fixes
* configure fix
* ui updates
* translation fixes
* [skip ci] addressbook updates
* fix popup
* fix popup2
* fix litecoin address book
* fix ios mwebd build script
* fix for building monero.com
* minor fix
* uncomment fix for state issues
* potential mweb sync fix (ios)
* remove print [skip ci]
* electrum stream potential fix
* fix ios build issues [skip ci]
* connection reliability updates, update kotlin code to match swift code, minor electrum error handling
* dep fixes
* minor fix
* more merge fixes
* bitcoin_flutter removal fixes
* [skip ci] fix always scan setting, swift updates
* updates
* fixes
* small fix
* small fix
* fix
* dart:convert != package:convert
* change address fixes
* update bitcoin_base to fix mweb address program checking
* fix ios xcode project [skip ci]
* updates
* more fixes
* more fixes
* ensure we don't initialize mweb until we really have to
* fix regression
* improve mweb reliability
* [skip ci] wip adress generation
* wip
* wip
* [skip ci] wip
* updates [skip ci]
* ios fixes
* fix workflows + ios fix
* test old mweb version
* update go version and mwebd hash
* review updates pt.1
* Update cw_bitcoin/lib/litecoin_wallet.dart
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* remove non-litecoin address types regex [skip ci]
* more minor fixes
* remove duplicate [skip ci]
* Update lib/store/settings_store.dart
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* script updates, swap params on createLitecoinWalletService
* topup fix
* [skip ci] wip
* [skip ci] testing
* [skip ci] file didn't get saved
* more address generation reliability fixes
* [skip ci] minor
* minor code cleanup
* hopefully prevents send issue
* [skip ci] wip address changes
* [skip ci] save
* save mweb addresses, auto-restart sync process if it gets stuck [skip ci]
* address generation issues mostly resolved
* more performance fixes
* [skip ci]
* this should maybe be refactored, pt.1
* separate mweb balances, pt.2
* [skip ci] save
* add translations [skip ci]
* fix sending with mweb amounts
* works for simple mweb-mweb case, further testing needed
* found an edge case
* [skip ci] make failed broadcast error message less serious
* minor
* capture all grpc errors and much better error handling overall
* [skip ci] minor
* prevent transactions with < 6 confirmations from being used + hide mweb balances if mweb is off
* fix
* merge fixes pt.1 [skip ci]
* fix mweb tags
* fix
* [skip ci] fix tag spacing
* fix transaction history not showing up
* fix mweb crash on non-fully deleted mweb cache, sync status ETA, other connection fixes
* [skip ci] minor code cleanup
* [skip ci] minor code cleanup
* additional cleanup
* silent payments eta fixes and updates
* revert sync eta changes into separate pr
* [skip ci] minor
* [skip ci] minor
* revert sync status title
* review fixes, additional cleanup
* [skip ci] minor
* [skip ci] minor
* [skip ci] minor
* trigger build
* review fixes, pt.2
* check if still processing utxos before updating sync status [skip ci]
* [skip ci] minor
* balance fix
* minor
* minor
* [skip ci] minor
* [skip ci] fix test net btc
* don't use mwebd for non-mweb tx's
* [skip ci] minor cleanup
* don't show all 1000+ mweb addresses on receive page
* minor cleanup + additional logging
---------
Co-authored-by: Hector Chu <hectorchu@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
* feat: Integration tests setup and tests for Disclaimer, Welcome and Setup Pin Code pages
* feat: Integration test flow from start to restoring a wallet successfully done
* test: Dashboard view test and linking to flow
* feat: Testing the Exchange flow section, selecting sending and receiving currencies
* test: Successfully create an exchange section
* feat: Implement flow up to sending section
* test: Complete Exchange flow
* fix dependency issue
* test: Final cleanups
* feat: Add CI to run automated integration tests withan android emulator
* feat: Adjust Automated integration test CI to run on ubuntu 20.04-a
* fix: Move integration test CI into PR test build CI
* ci: Add automated test ci which is a streamlined replica of pr test build ci
* ci: Re-add step to access branch name
* ci: Add KVM
* ci: Add filepath to trigger the test run from
* ci: Add required key
* ci: Add required key
* ci: Add missing secret key
* ci: Add missing secret key
* ci: Add nano secrets to workflow
* ci: Switch step to free space on runner
* ci: Remove timeout from workflow
* ci: Confirm impact that removing copy_monero_deps would have on entire workflow time
* ci: Update CI and temporarily remove cache related to emulator
* ci: Remove dynamic java version
* ci: Temporarily switch CI
* ci: Switch to 11.x jdk
* ci: Temporarily switch CI
* ci: Revert ubuntu version
* ci: Add more api levels
* ci: Add more target options
* ci: Settled on stable emulator matrix options
* ci: Add more target options
* ci: Modify flow
* ci: Streamline api levels to 28 and 29
* ci: One more trial
* ci: Switch to flutter drive
* ci: Reduce options
* ci: Remove haven from test
* ci: Check for solana in list
* ci: Adjust amounts and currencies for exchange flow
* ci: Set write response on failure to true
* ci: Split ci to funds and non funds related tests
* test: Test for Send flow scenario and minor restructuring for test folders and files
* chore: cleanup
* ci: Pause CI for now
* ci: Pause CI for now
* ci: Pause CI for now
* Fix: Add keys back to currency amount textfield widget
* fix: Switch variable name
* fix: remove automation for now
* test: Updating send page robot and also syncing branch with main
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* Revert "Revert btc address types"
This reverts commit a49e57e3
* Re-add Bitcoin Address types
Fix conflicts with main
* fix: label issues, clear spent utxo
* chore: deps
* fix: build
* fix: missing types
* feat: new electrs API & changes, fixes for last block scanning
* Update Monero
* not sure why it's failing
* Enable Exolix
Improve service updates indicator
New versions
* Add exolix Api token to limits api
* Ignore reporting network issues
* Change default bitcoin node
* Merge main and update linux version
* Update app version [skip ci]
* New versions
* Fix conflicts and update linux version
* minor fix
* feat: Scan Silent Payments homepage toggle
* chore: build configure
* feat: generic fixes, testnet UI improvements, useSSL on bitcoin nodes
* fix: invalid Object in sendData
* feat: improve addresses page & address book displays
* feat: silent payments labeled addresses disclaimer
* fix: missing i18n
* chore: print
* feat: single block scan, rescan by date working for btc mainnet
* feat: new cake features page replace market page, move sp scan toggle, auto switch node pop up alert
* feat: delete silent addresses
* fix: red dot in non ssl nodes
* fix: inconsistent connection states, fix tx history
* fix: tx & balance displays, cpfp sending
* feat: new rust lib
* chore: node path
* fix: check node based on network
* fix: missing txcount from addresses
* style: padding in feature page cards
* fix: restore not getting all wallet addresses by type
* fix: auto switch node broken
* fix: silent payment txs not being restored
* update linux version
* feat: change scanning to subscription model, sync improvements
* fix: scan re-subscription
* fix: default nodes
* fix: improve scanning by date, fix single block scan
* refactor: common function for input tx selection
* various fixes for build issues
* initial monero.dart implementation
* ...
* multiple wallets
new lib
minor fixes
* other fixes from monero.dart and monero_c
* fix: nodes & build
* update build scripts
fix polyseed
* remove unnecessary code
* Add windows app, build scripts and build guide for it.
* Minor fix in generated monero configs
* Merge and fix main
* fix: send all with multiple outs
* add missing monero_c command
* add android build script
* update version
* Merge and fix main
* undo android ndk removal
* Fix modified exception_handler.dart
* Temporarily remove haven
* fix build issues
* fix pr script
* Fixes for build monero.dart (monero_c) for windows.
* monero build script
* wip: ios build script
* refactor: unchanged file
* Added build guides for iOS and macOS. Replaced nproc call on macOS. Added macOS configuration for configure_cake_wallet.sh script.
* Update monero.dart and monero_c versions.
* Add missed windows build scripts
* Update the application configuration for windows build script.
* Update cw_monero pubspec lock file for monero.dart
* Update pr_test_build.yml
* chore: upgrade
* chore: merge changes
* refactor: unchanged files [skip ci]
* Fix conflicts with main
* fix for multiple wallets
* update app version [skip ci]
* Add tron to windows application configuration.
* Add macOS option for description message in configure_cake_wallet.sh
* fix missing encryption utils in hardware wallet functions [skip ci]
* fix conflicts
* Include missed monero dll for windows.
* reformatting [skip ci]
* fix conflicts with main
* Disable haven configuration for iOS as default. Add ability to configure cakewallet for iOS with for configuration script. Remove cw_shared configuration for cw_monero.
* fix: scan fixes, add date, allow sending while scanning
* add missing nano secrets file [skip ci]
* ios library
* don't pull prebuilds android
* Add auto generation of manifest file for android project even for iOS, macOS, Windows.
* remove tron
* feat: sync fixes, sp settings
* feat: fix resyncing
* store crash fix
* make init async so it won't lag
disable print starts
* fix monero_c build issues
* libstdc++
* merge main and update version
* Fix MacOS saving wallet file issue
Fix Secure Storage issue (somehow)
* update pubspec.lock
* fix build script
* Use dylib as iOS framework. Use custom path for loading of iOS framework for monero.dart. Add script for generate iOS framework for monero wallet.
* fix: date from height logic, status disconnected & chain tip get
* fix: params
* feat: electrum migration if using cake electrum
* fix nodes
update versions
* re-enable tron
* update sp_scanner to work on iOS [skip ci]
* bump monero_c hash
* bump monero_c commit
* bump moneroc version
* bump monero_c commit
* Add ability to build monero wallet lib as universal lib. Update macOS build guide. Change default arch for macOS project to .
* fix: wrong socket for old electrum nodes
* update version
* Fix unchecked wallet type call
* get App Dir correctly in default_settings_migration.dart
* handle previous issue with fetching linux documents directory [skip ci]
* backup fix
* fix NTFS issues
* Add Tron
Update Linux version
* Close the wallet when the wallet gets changed
* fix: double balance
* feat: node domain
* fix: menu name
* bump monero_c commit
* fix: update tip on set scanning
* fix: connection switching back and forth
* feat: check if node is electrs, and supports sp
* chore: fix build
* minor enhancements
* fixes and enhancements
* solve conflicts with main
* Only stop wallet on rename and delete
* fix: status toggle
* minor enhancement
* Monero.com fixes
* bump monero_c commit
* update sp_scanner to include windows and linux
* merge main
* Update macOS build guide. Change brew dependencies for build unbound locally.
* fix: Tron file write, build scripts
* - merge linux with Monero Dart
- Temporarily disable Monero
* fix other issues with linux
* linux ci
fix build script
* Update pr_test_build_linux.yml
install required packages
* add linux desktop dependencies
* don't use apk in linux build releases
* don't copy the file to test-apk
* fix linux runtime issues
* remove libc++_shared.so
* fix issues with linux
* prepare both android and linux (because otherwise it will fail)
* ci script updates
* run apt update
* bump image to ubuntu 22.04
note: remember to put it down later
* bump python version
* remove some dependencies
* remove unused import
* add missing dependencies
* fix dependencies
* some fixes
* remove print [skip ci]
* Add back RunnerBase.entitlements
minor fixes [skip ci]
* fix memory leak / infinite recurrsion when opening xmr wallet
* url_launcher_linux: 3.1.1 # https://github.com/flutter/flutter/issues/153083
* fix conflicts with main
* handle walletKeysFile with encryptionUtils
* update app version [skip ci]
* add wownero [skip ci]
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
Co-authored-by: Rafael Saes <git@rafael.saes.dev>
Co-authored-by: M <m@cakewallet.com>
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
* chore: Setup
* feat: Add NowNodes for Tron Wallet and switch it to be the default node for Tron
* feat: Add NowNodes for Solana Wallet and switch it to be the default node for Solana
* fix: Add nownodes entry to secrets
* fix: Remove pubspec.lock in shared external
* fix conflicts with main
* change secrets names
* feat: Remove Solana NowNodes config
* feat: Remove Solana NowNodes config
* feat: Revert commented out code
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* hotfixes
* copy over the rest of the fixes
* use hardened derivation path everywhere
* correct balance path for electrum
* revert index nullability and correct balance path for all cases
* only save wallet info if we changed it
* fixes and minor enhancements for SP flow
* fix build
* change dfx text
* minor fixes
* pass use electrs to setListeners
* comment out connecting on failure for now
* Switch tron default node
* chore: Initial setup for Tron Wallet
* feat: Create Tron Wallet base flow implemented, keys, address, receive, restore and proxy classes all setup
* feat: Display seed and key within the app
* feat: Activate restore from key and seed for Tron wallet
* feat: Add icon for tron wallet in wallet listing page
* feat: Activate display of receive address for tron
* feat: Fetch and display tron balance, sending transaction flow setup, fee limit calculation setup
* feat: Implement sending of native tron, setup sending of trc20 tokens
* chore: Rename function
* Delete lib/tron/tron.dart
* feat: Activate exchange for tron and its tokens, implement balance display for trc20 tokens and setup secrets configuration for tron
* feat: Implement tron token management, add, remove, delete, and get tokens in home settings view, also minor cleanup
* feat: Activate buy and sell for tron
* feat: Implement restore from QR, transactions history listing for both native transactions and trc20 transactions
* feat: Activate send all and do some minor cleanups
* chore: Fix some lint infos and warnings
* chore: Adjust configurations
* ci: Modify CI to create and add secrets for node
* fix: Fixes made while self reviewing the PR for this feature
* feat: Add guide for adding new wallet types, and add fixes to requested changes
* fix: Handle exceptions gracefully
* fix: Alternative for trc20 estimated fee
* fix: Fixes to display of amount and fee, removing clashes
* fix: Fee calculation WIP
* fix: Fix issue with handling of send all flow and display of amount and fee values before broadcasting transaction
* fix: PR review fixes and fix merge conflicts
* fix: Modify fetching assetOfTransaction [skip ci]
* fix: Move tron settings migration to 33
* chore: Create cw_solana package and clean up files
* feat: Add Solana Wallet - Create, Restore form seed, restore from Key, Restore from QR, Send, Receive, transaction history, spl tokens
* fix: Make transactions file specific to solana only for solana transactions
* chore: Revert inject app details script
* fix: Fix issue with node and switch current node to main beta instead of testnet
* fix: Fix merge conflicts and adjust migration version
* fix: Fetch spl token error
Signed-off-by: Blazebrain <davidadegoke16@gmail.com>
* fix: Diplay and activate spl tokens bug
* fix: Review and fixes
* fix: reverted formatting for cryptocurrency class
* fix: Review comments, split sending flow into signing and sending separately, fix issues
* fix: Revert throwing unimplenented error
* chore: Fix comment
* chore: Fix comment
* fix: Errors in flow
* Update provider_types.dart [skip ci]
* fix: Issues with solana wallet
* Update solana_wallet.dart [skip ci]
* fix: Review comments
* fix: Date time config
* fix: Revert bash script for app details
* fix: Error with balance, displaying fees, fixing sent or received identifier bug, displaying token symbol with token transaction item in transactions list
* fix: Issues with address validation when sending spl tokens and walletconnect initial setup
* fix: Issues with sending, fetching transactions history, almost wrapping up walletconnect
* fix: Adjust imports that would affect monerocom building successfully
* fix: Refine transaction direction and continue work on walletconnect
* feat: Display SPL token transfers in the transaction history and finally settle the transaction direction
* fix: Delay in transactions history dispaly, show native token transactions first, then process spl token transactions
* feat: Switch node and revert solana chain id to previous id
* fix: Remove print statement
* fix: Remove await for transactions, fetch all transaction histories instantly and adjust solana send success message
* chore: Code refactoring and streamlined wallet type check for solana send success message
* fix: Make timeout error for node silent and add spl token images
---------
Signed-off-by: Blazebrain <davidadegoke16@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>