mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-21 06:18:42 +02:00
* 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>
128 lines
7.6 KiB
Dart
128 lines
7.6 KiB
Dart
class PreferencesKey {
|
|
static const currentWalletType = 'current_wallet_type';
|
|
static const currentWalletName = 'current_wallet_name';
|
|
static const currentNodeIdKey = 'current_node_id';
|
|
static const currentBitcoinElectrumSererIdKey = 'current_node_id_btc';
|
|
static const currentLitecoinElectrumSererIdKey = 'current_node_id_ltc';
|
|
static const currentHavenNodeIdKey = 'current_node_id_xhv';
|
|
static const currentZanoNodeIdKey = 'current_node_id_zano';
|
|
static const currentEthereumNodeIdKey = 'current_node_id_eth';
|
|
static const currentPolygonNodeIdKey = 'current_node_id_matic';
|
|
static const currentBaseNodeIdKey = 'current_node_id_base';
|
|
static const currentArbitrumNodeIdKey = 'current_node_id_arbitrum';
|
|
static const currentNanoNodeIdKey = 'current_node_id_nano';
|
|
static const currentNanoPowNodeIdKey = 'current_node_id_nano_pow';
|
|
static const currentDecredNodeIdKey = 'current_node_id_decred';
|
|
static const currentDogecoinNodeIdKey = 'current_node_id_doge';
|
|
static const currentBananoNodeIdKey = 'current_node_id_banano';
|
|
static const currentBananoPowNodeIdKey = 'current_node_id_banano_pow';
|
|
static const currentFiatCurrencyKey = 'current_fiat_currency';
|
|
static const currentCakePayCountry = 'current_cake_pay_country';
|
|
static const currentBitcoinCashNodeIdKey = 'current_node_id_bch';
|
|
static const currentSolanaNodeIdKey = 'current_node_id_sol';
|
|
static const currentTronNodeIdKey = 'current_node_id_trx';
|
|
static const currentWowneroNodeIdKey = 'current_node_id_wow';
|
|
static const currentTransactionPriorityKeyLegacy = 'current_fee_priority';
|
|
static const currentBalanceDisplayModeKey = 'current_balance_display_mode';
|
|
static const shouldSaveRecipientAddressKey = 'save_recipient_address';
|
|
static const isAppSecureKey = 'is_app_secure';
|
|
static const disableTradeOption = 'disable_buy';
|
|
static const disableAutomaticExchangeStatusUpdates = 'disable_automatic_exchange_status_updates';
|
|
static const disableBulletinKey = 'disable_bulletin';
|
|
static const walletListOrder = 'wallet_list_order';
|
|
static const contactListOrder = 'contact_list_order';
|
|
static const walletListAscending = 'wallet_list_ascending';
|
|
static const contactListAscending = 'contact_list_ascending';
|
|
static const currentFiatApiModeKey = 'current_fiat_api_mode';
|
|
static const failedTotpTokenTrials = 'failed_token_trials';
|
|
static const disableExchangeKey = 'disable_exchange';
|
|
static const exchangeStatusKey = 'exchange_status';
|
|
static const currentTheme = 'current_theme';
|
|
static const themeMode = 'theme_mode';
|
|
static const blackThemeOled = 'black_theme_oled_enabled';
|
|
static const savedDarkTheme = 'saved_dark_theme';
|
|
static const savedLightTheme = 'saved_light_theme';
|
|
static const displayActionListModeKey = 'display_list_mode';
|
|
static const currentPinLength = 'current_pin_length';
|
|
static const currentLanguageCode = 'language_code';
|
|
static const currentSeedPhraseLength = 'current_seed_phrase_length';
|
|
static const currentDefaultSettingsMigrationVersion =
|
|
'current_default_settings_migration_version';
|
|
static const moneroTransactionPriority = 'current_fee_priority_monero';
|
|
static const bitcoinTransactionPriority = 'current_fee_priority_bitcoin';
|
|
static const havenTransactionPriority = 'current_fee_priority_haven';
|
|
static const litecoinTransactionPriority = 'current_fee_priority_litecoin';
|
|
static const ethereumTransactionPriority = 'current_fee_priority_ethereum';
|
|
static const polygonTransactionPriority = 'current_fee_priority_polygon';
|
|
static const baseTransactionPriority = 'current_fee_priority_base';
|
|
static const bitcoinCashTransactionPriority = 'current_fee_priority_bitcoin_cash';
|
|
static const zanoTransactionPriority = 'current_fee_priority_zano';
|
|
static const wowneroTransactionPriority = 'current_fee_priority_wownero';
|
|
static const decredTransactionPriority = 'current_fee_priority_decred';
|
|
static const customBitcoinFeeRate = 'custom_electrum_fee_rate';
|
|
static const silentPaymentsCardDisplay = 'silentPaymentsCardDisplay';
|
|
static const mwebCardDisplay = 'mwebCardDisplay';
|
|
static const mwebEnabled = 'mwebEnabled';
|
|
static const hasEnabledMwebBefore = 'hasEnabledMwebBefore';
|
|
static const mwebAlwaysScan = 'mwebAlwaysScan';
|
|
static const mwebNodeUri = 'mwebNodeUri';
|
|
static const shouldShowReceiveWarning = 'should_show_receive_warning';
|
|
static const shouldShowYatPopup = 'should_show_yat_popup';
|
|
static const shouldShowDEuroDisclaimer = 'should_show_deuro_disclaimer';
|
|
static const shouldShowRepWarning = 'should_show_rep_warning';
|
|
static const moneroWalletPasswordUpdateV1Base = 'monero_wallet_update_v1';
|
|
static const syncModeKey = 'sync_mode';
|
|
static const syncAllKey = 'sync_all';
|
|
static const builtinTorKey = 'builtin_tor';
|
|
static const lastPopupDate = 'last_popup_date';
|
|
static const lastAppReviewDate = 'last_app_review_date';
|
|
static const sortBalanceBy = 'sort_balance_by';
|
|
static const pinNativeTokenAtTop = 'pin_native_token_at_top';
|
|
static const useEtherscan = 'use_etherscan';
|
|
static const usePolygonScan = 'use_polygonscan';
|
|
static const useBaseScan = 'use_base_scan';
|
|
static const useArbiScan = 'use_arbitrum_scan';
|
|
static const useTronGrid = 'use_trongrid';
|
|
static const useMempoolFeeAPI = 'use_mempool_fee_api';
|
|
static const defaultNanoRep = 'default_nano_representative';
|
|
static const defaultBananoRep = 'default_banano_representative';
|
|
static const lookupsTwitter = 'looks_up_twitter';
|
|
static const lookupsZanoAlias = 'looks_up_zano_alias';
|
|
static const lookupsMastodon = 'looks_up_mastodon';
|
|
static const lookupsYatService = 'looks_up_yat';
|
|
static const lookupsUnstoppableDomains = 'looks_up_unstoppable_domain';
|
|
static const lookupsOpenAlias = 'looks_up_open_alias';
|
|
static const lookupsENS = 'looks_up_ens';
|
|
static const lookupsWellKnown = 'looks_up_well_known';
|
|
static const usePayjoin = 'use_payjoin';
|
|
static const showPayjoinCard = 'show_payjoin_card';
|
|
static const showCameraConsent = 'show_camera_consent';
|
|
static const showDecredInfoCard = 'show_decred_info_card';
|
|
|
|
static String moneroWalletUpdateV1Key(String name) =>
|
|
'${PreferencesKey.moneroWalletPasswordUpdateV1Base}_${name}';
|
|
|
|
static const exchangeProvidersSelection = 'exchange-providers-selection';
|
|
static const trocadorProviderStatesKey = 'trocador_provider_states';
|
|
static const autoGenerateSubaddressStatusKey = 'auto_generate_subaddress_status';
|
|
static const moneroSeedType = 'monero_seed_type';
|
|
static const bitcoinSeedType = 'bitcoin_seed_type';
|
|
static const nanoSeedType = 'nano_seed_type';
|
|
static const clearnetDonationLink = 'clearnet_donation_link';
|
|
static const onionDonationLink = 'onion_donation_link';
|
|
static const donationLinkWalletName = 'donation_link_wallet_name';
|
|
static const lastSeenAppVersion = 'last_seen_app_version';
|
|
static const shouldShowMarketPlaceInDashboard = 'should_show_marketplace_in_dashboard';
|
|
static const showAddressBookPopupEnabled = 'show_address_book_popup_enabled';
|
|
static const isNewInstall = 'is_new_install';
|
|
static const serviceStatusShaKey = 'service_status_sha_key';
|
|
static const walletConnectPairingTopicsList = 'wallet_connect_pairing_topics_list';
|
|
static String walletConnectPairingTopicsListForWallet(String publicKey) =>
|
|
'${PreferencesKey.walletConnectPairingTopicsList}_${publicKey}';
|
|
static String backgroundSyncLastTrigger(String walletId) => 'background_sync_last_trigger_${walletId}';
|
|
static const backgroundSyncNotificationsEnabled = 'background_sync_notifications_enabled';
|
|
static const enableAutomaticNodeSwitching = 'enable_automatic_node_switching';
|
|
static const syncStatusDisplayMode = 'sync_status_display_mode';
|
|
static const backgroundImage = 'background_image';
|
|
}
|