2024-08-22 14:36:10 +00:00
|
|
|
import random
|
2023-09-07 04:13:38 +00:00
|
|
|
from enum import Enum
|
|
|
|
|
|
|
|
|
|
|
|
class DerivationPath(Enum):
|
|
|
|
CUSTOM = 'Custom'
|
|
|
|
ETHEREUM = 'Ethereum'
|
|
|
|
ETHEREUM_ROPSTEN = 'Ethereum Testnet (Ropsten)'
|
|
|
|
ETHEREUM_LEDGER = 'Ethereum (Ledger)'
|
|
|
|
ETHEREUM_LEDGER_LIVE = 'Ethereum (Ledger Live/KeepKey)'
|
2023-10-25 12:33:18 +00:00
|
|
|
STATUS_ACCOUNT_DERIVATION_PATH = "m / 44' / 60' / 0' / 0 / 0"
|
2023-10-30 06:58:45 +00:00
|
|
|
GENERATED_ACCOUNT_DERIVATION_PATH_1 = "m / 44' / 60' / 0' / 0 / 1"
|
2023-09-20 14:18:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletNetworkSettings(Enum):
|
2023-10-13 13:41:09 +00:00
|
|
|
EDIT_NETWORK_LIVE_TAB = 'Live Network'
|
|
|
|
EDIT_NETWORK_TEST_TAB = 'Test Network'
|
2023-09-20 14:18:00 +00:00
|
|
|
TESTNET_SUBTITLE = 'Switch entire Status app to testnet only mode'
|
2023-09-27 12:26:10 +00:00
|
|
|
TESTNET_ENABLED_TOAST_MESSAGE = 'Testnet mode turned on'
|
|
|
|
TESTNET_DISABLED_TOAST_MESSAGE = 'Testnet mode turned off'
|
2023-10-12 16:28:04 +00:00
|
|
|
ACKNOWLEDGMENT_CHECKBOX_TEXT = ('I understand that changing network settings can cause unforeseen issues, errors, '
|
|
|
|
'security risks and potentially even loss of funds.')
|
|
|
|
REVERT_TO_DEFAULT_LIVE_MAINNET_TOAST_MESSAGE = 'Live network settings for Mainnet reverted to default'
|
2023-10-13 13:41:09 +00:00
|
|
|
REVERT_TO_DEFAULT_TEST_MAINNET_TOAST_MESSAGE = 'Test network settings for Mainnet reverted to default'
|
2024-02-29 12:55:33 +00:00
|
|
|
STATUS_ACCOUNT_DEFAULT_NAME = 'Account 1'
|
2023-10-19 13:56:33 +00:00
|
|
|
STATUS_ACCOUNT_DEFAULT_COLOR = '#2a4af5'
|
2023-10-04 10:46:17 +00:00
|
|
|
|
2023-10-17 15:57:59 +00:00
|
|
|
|
2023-10-25 12:33:18 +00:00
|
|
|
class WalletAccountSettings(Enum):
|
2024-06-07 13:29:09 +00:00
|
|
|
STATUS_ACCOUNT_ORIGIN = 'Derived from your default Status key pair'
|
2023-11-10 15:04:49 +00:00
|
|
|
WATCHED_ADDRESS_ORIGIN = 'Watched address'
|
2023-10-25 12:33:18 +00:00
|
|
|
STORED_ON_DEVICE = 'On device'
|
2023-11-10 15:04:49 +00:00
|
|
|
WATCHED_ADDRESSES_KEYPAIR_LABEL = 'Watched addresses'
|
2023-10-25 12:33:18 +00:00
|
|
|
|
|
|
|
|
2023-10-04 10:46:17 +00:00
|
|
|
class WalletNetworkNaming(Enum):
|
|
|
|
LAYER1_ETHEREUM = 'Mainnet'
|
|
|
|
LAYER2_OPTIMISIM = 'Optimism'
|
|
|
|
LAYER2_ARBITRUM = 'Arbitrum'
|
|
|
|
ETHEREUM_MAINNET_NETWORK_ID = 1
|
2024-02-26 07:06:11 +00:00
|
|
|
ETHEREUM_SEPOLIA_NETWORK_ID = 11155111
|
2023-10-04 10:46:17 +00:00
|
|
|
OPTIMISM_MAINNET_NETWORK_ID = 10
|
2024-02-26 07:06:11 +00:00
|
|
|
OPTIMISM_SEPOLIA_NETWORK_ID = 11155420
|
2023-10-04 10:46:17 +00:00
|
|
|
ARBITRUM_MAINNET_NETWORK_ID = 42161
|
2024-02-26 07:06:11 +00:00
|
|
|
ARBITRUM_SEPOLIA_NETWORK_ID = 421614
|
2023-10-04 10:46:17 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletNetworkDefaultValues(Enum):
|
2024-01-16 06:24:39 +00:00
|
|
|
ETHEREUM_LIVE_MAIN = 'https://eth-archival.rpc.grove.city'
|
2024-02-26 07:06:11 +00:00
|
|
|
ETHEREUM_TEST_MAIN = 'https://sepolia-archival.rpc.grove.city'
|
2023-10-13 14:49:44 +00:00
|
|
|
ETHEREUM_LIVE_FAILOVER = 'https://mainnet.infura.io'
|
2024-02-26 07:06:11 +00:00
|
|
|
ETHEREUM_TEST_FAILOVER = 'https://sepolia.infura.io'
|
2023-10-06 06:05:32 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletEditNetworkErrorMessages(Enum):
|
|
|
|
PINGUNSUCCESSFUL = 'RPC appears to be either offline or this is not a valid JSON RPC endpoint URL'
|
|
|
|
PINGVERIFIED = 'RPC successfully reached'
|
2023-11-03 15:04:23 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletOrigin(Enum):
|
|
|
|
WATCHED_ADDRESS_ORIGIN = 'New watched address'
|
2023-12-05 13:23:02 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletTransactions(Enum):
|
|
|
|
TRANSACTION_PENDING_TOAST_MESSAGE = 'Transaction pending'
|
2024-01-12 08:01:08 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletScreensHeaders(Enum):
|
|
|
|
WALLET_ADD_ACCOUNT_POPUP_TITLE = 'Add a new account'
|
2024-03-22 12:01:38 +00:00
|
|
|
WALLET_EDIT_ACCOUNT_POPUP_TITLE = 'Edit account'
|
2024-05-08 06:27:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletRenameKeypair(Enum):
|
2024-06-07 13:29:09 +00:00
|
|
|
WALLET_SUCCESSFUL_RENAMING = 'You successfully renamed your key pair\n'
|
2024-05-08 06:27:30 +00:00
|
|
|
|
2024-05-28 05:32:01 +00:00
|
|
|
|
|
|
|
class WalletSeedPhrase(Enum):
|
|
|
|
WALLET_SEED_PHRASE_ALREADY_ADDED = 'The entered seed phrase is already added'
|
2024-06-06 07:17:16 +00:00
|
|
|
|
|
|
|
|
|
|
|
class WalletAccountPopup(Enum):
|
|
|
|
WALLET_ACCOUNT_NAME_MIN = 'Account name must be at least 5 characters'
|
2024-06-12 06:51:20 +00:00
|
|
|
WALLET_KEYPAIR_NAME_MIN = 'Key pair name must be at least 5 character(s)'
|
|
|
|
WALLET_KEYPAIR_MIN = 'Key pair must be at least 5 character(s)'
|
2024-08-22 14:36:10 +00:00
|
|
|
|
|
|
|
|
|
|
|
class SeedPhrases(Enum):
|
|
|
|
TWELVE_WORDS_SEED = 'pelican chief sudden oval media rare swamp elephant lawsuit wheat knife initial'
|
|
|
|
EIGHTEEN_WORDS_SEED = 'kitten tiny cup admit cactus shrug shuffle accident century faith roof plastic beach police barely vacant sign blossom'
|
|
|
|
TWENTY_FOUR_WORDS_SEED = 'elite dinosaur flavor canoe garbage palace antique dolphin virtual mixed sand impact solution inmate hair pipe affair cage vote estate gloom lamp robust like'
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def select_random_seed(cls):
|
|
|
|
return random.choice(list(SeedPhrases))
|