* feat: initialize cw_arbitrum package with essential files
- Implement ArbitrumClient for transaction handling
- Add ArbitrumWallet and related classes for wallet management
- Establish transaction history and info classes for Arbitrum transactions
- Add ArbitrumWalletService for wallet operations and management
* feat: Add arbitrum related secrets to workflow
* feat: Add nodes for arbitrum
* feat: Add Arbitrum support to cryptocurrency handling
* refactor: Update Arbitrum currency references from 'ARB' to 'ETH'
* feat: Add Arbitrum support to wallet type and transaction handling
* feat: Add Arbitrum URL schemes to Android and iOS configurations
* feat: Add Arbitrum SVG icons and a WebP image
* feat: Setup Arbitrum proxy
* fix: Add localization
* feat: Integrate Arbitrum support across various configurations and files
- Updated cakewallet.bat to include Arbitrum in app configuration.
- Added Arbitrum node list to pubspec_base.yaml.
- Modified Android, iOS, Linux, and macOS app configuration scripts to support Arbitrum.
- Introduced Arbitrum output path and generation logic in configure.dart.
- Enhanced wallet type and pubspec generation to include Arbitrum.
- Added Arbitrum-related secrets in secret_key.dart.
* feat: Enhance Arbitrum integration with new URI class and updates across various components
- Introduced ArbitrumURI class for handling Arbitrum payment URIs.
- Updated seed validator, wallet creation service, and other components to support Arbitrum.
- Added Arbitrum node handling in default settings migration and node list management.
- Enhanced preferences and settings store to include Arbitrum-specific configurations.
- Updated QR utility and token utilities to accommodate Arbitrum functionalities.
* feat: Add Arbitrum support to various buy providers
- Updated DFXBuyProvider, KryptonimBuyProvider, OnRamperBuyProvider, and RobinhoodBuyProvider to include Arbitrum wallet type and blockchain references.
- Enhanced integration for Arbitrum across multiple components to ensure consistent support.
* feat: Implement Arbitrum support in wallet selection and settings
- Added Arbitrum wallet type handling in common test flows and wallet services.
- Integrated Arbitrum icons in desktop wallet selection and menu widgets.
- Updated privacy settings to include ArbiScan options.
- Enhanced key service to support Arbitrum private and public key retrieval.
* feat: Expand Arbitrum support across various view models and components
- Integrated Arbitrum wallet type handling in advanced privacy settings, transaction details, and wallet management.
- Added Arbitrum-specific methods for transaction and wallet creation, restoration, and fee management.
- Updated dashboard and home settings to accommodate Arbitrum functionalities, including token management and transaction display.
- Enhanced exchange and send view models to support Arbitrum transactions and currency handling.
- Included Arbitrum in wallet address list and privacy settings for improved user experience.
* refactor: Simplify token initialization in Arbitrum wallet service
- Removed the migration flag from the addInitialTokens method in ArbitrumWalletService.
- Updated addInitialTokens method in ArbitrumWallet to handle existing tokens more efficiently.
- Enhanced initial token retrieval logic in DefaultArbitrumErc20Tokens to prioritize iconPath assignment.
- Improved token update logic in BaseWallet for consistency across wallet services.
* chore: Update Dart SDK constraints in pubspec.yaml
* fix: Update file paths for arbitrum assets
* fix: Correct box name formatting in Arbitrum wallet initialization
* Update .github/workflows/pr_test_build_android.yml [skip ci
* Update .github/workflows/pr_test_build_android.yml
* fix: Add missing evm params
* fix: Remove duplicate method declaration
* refactor: simplify isSwapsXyzSendingEVMTokenSwap check
* fix: Update arbitrum configs with sql storage update
* feat: Add estimated fee retrieval for Arbitrum and revamp priority fee handling for EVMChainWallet
* refactor: Update transaction priority handling and estimated fee calculations across EVMChain chains, also remove priority fee levels for Arbitrum
---------
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* chore: Create Base package template
* chore: Update configuration scripts and dependencies to include 'base' coin support
* chore: Update pubspec.yaml, adjust SDK constraints, and add new dependencies
* feat: Add support for base wallet type and cryptocurrency in related configurations
* feat: Implement BaseWallet and DefaultBaseTokens classes for managing base cryptocurrency transactions
* feat: Add BaseTransactionHistory and BaseTransactionInfo classes for handling base cryptocurrency transaction data
* feat: Implement BaseClient, BaseWalletService, and BaseMnemonicIsIncorrectException
* feat: Setup base proxy for main package and adjust token class name
* feat: Setup initial base node configuration
* feat: Integrate support for base wallet type across various functions and services
* feat: Add base support to exchange and outputs
* feat: Add base wallet type integration to wallet creation and node management
* feat: Add base support to transaction details and transaction list item
* feat: Implement BaseURI class and add base support across wallet creation and keys view models
* feat: Add support for BaseScan preference in settings store
* feat: Integrate Base support into various workflows and documentation
* feat: Addingbase config to windows and secret key support
* feat: Add base support to settings and address handling
* chore: Move walletTypeToCurrency to another file and adjust across codebase
* feat: Add 'basescan_history' string localization
* feat: Remove Cryptocurrency.base, it doesn't have a base currency
* feat: Set eth as native currency
* feat: Enhance Base support across various sending, exchange, transaction details, fees, dashboard and balance
* feat: Integrate Base wallet support in advanced privacy settings and home settings view models
* feat: Add Base wallet support with icon and integration across providers, default settings migration, preferences, wallet connect, settings and token utilities
* feat: Update currency handling to use baseEth for Base wallet integration across various components
* fix: Update default token symbol to ETH in Base wallet transaction model
* refactor: Change default currency references from BASE to ETH across client, transaction info, and wallet components
* feat: Introduce normalizedIconPath for CryptoCurrency to standardize icon retrieval across wallet components
* fix: Include baseEth as a native token in EVMChainClient for currency handling
* chore: Update base_icon.png
* feat: Add more nodes to base_node_list.yml
* refactor: Update wallet icon retrieval to use normalizedIconPath
* chore: Remove unused cases and cleanup impl.
* feat: Add base proxy generation to configure
* refactor: Update base proxy and generation code in configure.dart
* feat: Add missing wallet and mono images
* fix: Wrong image path for pr and add missing base qr image
* feat: Enhance EVMTransactionErrorFeesHandler to parse new insufficient funds error format and calculate transaction fees in ETH and USD
* feat: Add gas price safety buffer for Base chain transactions to improve fee estimation accuracy, also fixes send all not calculating correctly
* Update model_generator.sh [skip ci]
* Update assets/base_node_list.yml [skip ci]
* Update cw_base/lib/default_base_erc20_tokens.dart [skip ci]
* Review fixes
* fixes
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* fix: update DFX Buy provider currency support and parsing logic
* fix: adjust Monero node URI handling for consistency with query parameters
* fix: correct German translations for wallet-related text and terminology
* fix: improve error handling and messaging in DFX Buy and OpenCryptoPay services
* fix: adjust error handling in DFX Buy provider by updating `_getErrorMessage` function parameters and removing unused imports
* feat(CW-1148): Add Zano wallet support for message
* refactor(CW-1148): Simplify `signMessage` logic in Zano wallet API
* fix: remove unsupported wallet types from DFX Buy provider
* fix: correct DFX Buy provider parameter name from `amount` to `amount-in`
* tor wip
* Enable tor on iOS
* Prevent app lag when node is exceptionally slow (usually over tor)
* fix: logic in daemonBlockchainHeight refresh
fix: storing tor state
* Pin ledger_flutter_plus dependency to fix builds
* bump arti version
* wip
* add single httpclient
* route everything I was able to catch trough the built-in tor node
* Enable proxy for http.Client [run tests]
* add tor proxy support to cw_evm, cw_tron and cw_polygon [run tests]
* remove log pollution, cleanup [skip slack]
* fix tests not working in latest main [skip slack] [run tests]
* remove cw_wownero import
* fix build issues
* migrate all remaining calls to use ProxyWrapper
add a CI action to enforce using ProxyWrapper instead of http/http.dart to prevent leaks
* fix tor background sync (will work on test builds after #2142 is merged and this PR is rebased on top)
* wip [skip ci]
* relicense to GPLv3 add socks5 license, build fixes
* use ProxyWrapper instead of http in robinhood
* Revert "relicense to GPLv3"
* feat(cw_bitcoin): support socks proxy and CakeTor
* fix(tor): migrate OCP and EVM over to ProxyWrapper()
* chore: cleanup
fix: show tor loading screen when app is starting
* fix: tor switch properly dismisses fullscreen loading dialog
fix: connectToNode after tor startup on app start
* fix(tor): status check for xmr/wow/zano
* fix(tor): onramper request fix
* fix(api): ServicesResponse is now being cached and doesn't fetch data everytime DashboardViewModel is being rebuilt
fix(tor): do not fallback to clearnet when tor failed.
fix(tor): do not leak connections during app startup
chore: refactor bootstrap() function to be separated into bootstrapOffline and bootstrapOnline
fix(cw_bitcoin): migrate payjoin to use ProxyWrapper
* [skip ci] remove print
* address comments from review
* fix: derusting tor implementation
Instead of rust-based Arti I've moved back to the
OG C++ tor implementation.
This fixed all issues we had with Tor.
- onion services now work
- all requests are going through without random errors
- we don't have to navigate a maze of multiple forks of multiple packages
- fully working `torrc` config file (probably will be needed for Tari).
- logging for Tor client
- and so on.
feat: network logging tab
feat: use built-in proxy on Tails - this should resolve all issues for Tails users (needs testing though)
* fix conflicts with main
bump https to fix build issue
relax store() call
* fix(cw_wownero): tor connection
fix(tor): connection issues
* fix(cw_evm): add missing chainId
fix(cw_core): solana rpc fix
* feat: mark tor as experimental
fix: drop anonpay onion authority
fix: drop fiatapi onion authority
fix: drop trocador onion authority
fix: disable networkimage when tor is enabled
fix: handle cakepay errors gracefully
* fix re-formatting [skip ci]
* changes from review
* Delete android/.kotlin/sessions/kotlin-compiler-2468481326039681181.salive
* fix missing imports
* Update pubspec_base.yaml
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
* version bump to 3.13.9, auth working on mac
* bump flutter version in workflow file
* workflow fix
* test fix
* downgrade flutter version
* test fix
* test fix
* update gradle version
* start working on ui for message signing
* updates
* sign working for a few wallet types
* updates & verification for electrum currencies
* nano support
* sign/verify working on eth, bitcoin broken
* update translations
* Implement Verify Message for Monero
* save [skip ci]
* pub key extraction working
* fixes for electrum signing
* verify working for solana!
* electrum still not working :( [skip ci]
* electrum messages working!
* fixes for updated dart version, localization file updates
* remove accidental inclusion
* missed some unimplemented throws
* Update res/values/strings_de.arb
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
* Apply suggestions from code review
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
* review suggestions and updates [skip ci]
* [skip ci] add polygon
* [skip ci] merge mac-auth/update version
* fix litecoin
* bio auth mac fix
* remove comment and change duration from 2 to 0
* cherry pick previous changes
* litecoin fixes, sign form fixes, use new walletAddressPicker
* support accounts
* verify messages working for monero
* working sign and verify messages for nano
* electrum signing working [skip ci]
* additional nano fixes
* update translations
* attempt to decode signatures with base64
* workaround for secure storage bug on mac
* bump version to 3.19.5 (because breez will need this version anyways)
* some code cleanup
* some changess didn't get saved
* just documenting the issue [skip ci]
* undo accidental removal + minor code cleanup
* merge conflicts
* merge fixes [skip ci]
* add tron support
* [wip] fixing
* remove duplicate references to electrum path for maintainability
* fixes
* minor fix
* fixes
* undo debug comment
* update migration for all electrum based wallets
* hotfixes
* copy over the rest of the fixes
* minor code cleanup [skip ci]
* updates
* electrum signing workinggit statusgit statusgit statusgit status!
* copy same fixes for litecoin
* litecoin fixes
* add v to litecoin signatures
* fix dependencies
* fix bitcoin_base version
* merge fix
* dep override
* fix conflicts with main
* trial fix for android build
* fixes
* fix
* dep fix, should build
* fix signing for bitcoin cash
* [skip ci] minor code cleanup
* [skip ci] minor code cleanup 2
* forgot wonero, various other fixes
* more fixes
* fix solana (untested)
---------
Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
* Remove error message if buy action is disabled
* Fix wallet list selected wallet issue
* Check if the widget is still mounted before showing popup
* minor code readability enhancement [skip ci]
* Code enhancement [skip ci]
* Revert removing ask each time localization
* Add Moonpay to sell flow
Code Enhancements
* remove error popup when sell option is disabled