@subwallet/extension-base 1.2.32-0 → 1.2.33-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/background/KoniTypes.d.ts +78 -227
- package/background/KoniTypes.js +3 -40
- package/background/errors/SWError.d.ts +4 -7
- package/background/errors/SWError.js +4 -0
- package/background/errors/TransactionError.d.ts +2 -2
- package/background/errors/TransactionError.js +2 -4
- package/background/handlers/State.d.ts +0 -12
- package/background/types.d.ts +9 -134
- package/background/warnings/TransactionWarning.d.ts +1 -1
- package/background/warnings/TransactionWarning.js +5 -1
- package/cjs/background/KoniTypes.js +4 -44
- package/cjs/background/errors/SWError.js +4 -0
- package/cjs/background/errors/TransactionError.js +13 -15
- package/cjs/background/warnings/TransactionWarning.js +6 -2
- package/cjs/constants/environment.js +13 -0
- package/cjs/constants/index.js +40 -13
- package/cjs/constants/signing.js +23 -0
- package/cjs/constants/storage.js +4 -2
- package/cjs/core/consts.js +20 -0
- package/cjs/core/logic-validation/recipientAddress.js +106 -0
- package/cjs/core/logic-validation/request.js +11 -19
- package/cjs/core/logic-validation/swap.js +5 -5
- package/cjs/core/logic-validation/transfer.js +83 -42
- package/cjs/core/types.js +26 -0
- package/cjs/core/utils.js +113 -0
- package/cjs/koni/api/dotsama/crowdloan.js +1 -1
- package/cjs/koni/api/nft/index.js +14 -5
- package/cjs/koni/api/staking/bonding/paraChain.js +8 -8
- package/cjs/koni/api/staking/bonding/relayChain.js +9 -9
- package/cjs/koni/api/staking/index.js +4 -1
- package/cjs/koni/background/cron.js +7 -7
- package/cjs/koni/background/handlers/Extension.js +510 -1446
- package/cjs/koni/background/handlers/State.js +61 -238
- package/cjs/koni/background/handlers/Tabs.js +143 -107
- package/cjs/koni/background/subscription.js +5 -5
- package/cjs/packageInfo.js +1 -1
- package/cjs/page/Accounts.js +2 -5
- package/cjs/page/SubWalleEvmProvider.js +1 -1
- package/cjs/page/index.js +2 -1
- package/cjs/services/balance-service/BalanceMapImpl.js +48 -20
- package/cjs/services/balance-service/helpers/subscribe/index.js +27 -12
- package/cjs/services/balance-service/helpers/subscribe/ton/consts.js +40 -0
- package/cjs/services/balance-service/helpers/subscribe/ton/ton.js +120 -0
- package/cjs/services/balance-service/helpers/subscribe/ton/utils.js +181 -0
- package/cjs/services/balance-service/index.js +25 -13
- package/cjs/services/balance-service/transfer/token.js +41 -24
- package/cjs/services/balance-service/transfer/ton-transfer.js +136 -0
- package/cjs/services/buy-service/index.js +5 -1
- package/cjs/services/chain-service/constants.js +1 -1
- package/cjs/services/chain-service/handler/TonApi.js +213 -0
- package/cjs/services/chain-service/handler/TonChainHandler.js +81 -0
- package/cjs/services/chain-service/index.js +32 -8
- package/cjs/services/chain-service/utils/index.js +78 -22
- package/cjs/services/earning-service/constants/chains.js +3 -1
- package/cjs/services/earning-service/handlers/base.js +2 -1
- package/cjs/services/earning-service/handlers/lending/base.js +8 -9
- package/cjs/services/earning-service/handlers/lending/interlay.js +1 -1
- package/cjs/services/earning-service/handlers/liquid-staking/base.js +9 -10
- package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +1 -1
- package/cjs/services/earning-service/handlers/native-staking/amplitude.js +1 -1
- package/cjs/services/earning-service/handlers/native-staking/astar.js +2 -2
- package/cjs/services/earning-service/handlers/native-staking/base-para.js +13 -13
- package/cjs/services/earning-service/handlers/native-staking/base.js +2 -2
- package/cjs/services/earning-service/handlers/native-staking/para-chain.js +2 -2
- package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +15 -15
- package/cjs/services/earning-service/handlers/nomination-pool/index.js +14 -14
- package/cjs/services/earning-service/handlers/special.js +10 -10
- package/cjs/services/earning-service/service.js +26 -17
- package/cjs/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
- package/cjs/services/history-service/index.js +29 -11
- package/cjs/services/history-service/subscan-history.js +9 -21
- package/cjs/services/keyring-service/context/account-context.js +259 -0
- package/cjs/services/keyring-service/context/handlers/Base.js +20 -0
- package/cjs/services/keyring-service/context/handlers/Derive.js +377 -0
- package/cjs/services/keyring-service/context/handlers/Inject.js +75 -0
- package/cjs/services/keyring-service/context/handlers/Json.js +348 -0
- package/cjs/services/keyring-service/context/handlers/Ledger.js +165 -0
- package/cjs/services/keyring-service/context/handlers/Mnemonic.js +218 -0
- package/cjs/services/keyring-service/context/handlers/Modify.js +258 -0
- package/cjs/services/keyring-service/context/handlers/Secret.js +310 -0
- package/cjs/services/keyring-service/context/handlers/index.js +82 -0
- package/cjs/services/keyring-service/context/state.js +649 -0
- package/cjs/services/keyring-service/context/stores/AccountProxy.js +32 -0
- package/cjs/services/keyring-service/context/stores/Base.js +37 -0
- package/cjs/services/keyring-service/context/stores/CurrentAccount.js +28 -0
- package/cjs/services/keyring-service/context/stores/ModifyPair.js +19 -0
- package/cjs/services/keyring-service/context/stores/index.js +38 -0
- package/cjs/services/keyring-service/index.js +20 -164
- package/cjs/services/migration-service/scripts/index.js +6 -4
- package/cjs/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
- package/cjs/services/migration-service/scripts/keyring/MigratePairData.js +28 -0
- package/cjs/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
- package/cjs/services/request-service/constants.js +5 -3
- package/cjs/services/request-service/handler/AuthRequestHandler.js +104 -57
- package/cjs/services/request-service/handler/EvmRequestHandler.js +3 -4
- package/cjs/services/request-service/handler/SubstrateRequestHandler.js +5 -11
- package/cjs/services/request-service/handler/TonRequestHandler.js +175 -0
- package/cjs/services/request-service/index.js +24 -5
- package/cjs/services/swap-service/handler/asset-hub/handler.js +6 -5
- package/cjs/services/swap-service/handler/base-handler.js +8 -8
- package/cjs/services/swap-service/handler/chainflip-handler.js +5 -4
- package/cjs/services/swap-service/handler/hydradx-handler.js +4 -3
- package/cjs/services/swap-service/index.js +4 -4
- package/cjs/services/transaction-service/helpers/index.js +6 -1
- package/cjs/services/transaction-service/index.js +184 -84
- package/cjs/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
- package/cjs/stores/AccountProxyStore.js +18 -0
- package/cjs/stores/ModifyPairStore.js +18 -0
- package/cjs/stores/index.js +23 -2
- package/cjs/types/account/action/add/index.js +38 -0
- package/cjs/types/account/action/add/json.js +1 -0
- package/cjs/types/account/action/add/mnemonic.js +1 -0
- package/cjs/types/account/action/add/secret.js +1 -0
- package/cjs/types/account/action/derive.js +1 -0
- package/cjs/types/account/action/edit.js +1 -0
- package/cjs/types/account/action/export.js +1 -0
- package/cjs/types/account/action/index.js +71 -0
- package/cjs/types/account/action/subscribe.js +16 -0
- package/cjs/types/account/action/validate.js +1 -0
- package/cjs/types/account/error/common.js +40 -0
- package/cjs/types/account/error/derive.js +55 -0
- package/cjs/types/account/error/index.js +27 -0
- package/cjs/types/account/index.js +38 -0
- package/cjs/types/account/info/current.js +1 -0
- package/cjs/types/account/info/index.js +38 -0
- package/cjs/types/account/info/keyring.js +90 -0
- package/cjs/types/account/info/proxy.js +49 -0
- package/cjs/types/error.js +1 -0
- package/cjs/types/index.js +44 -0
- package/cjs/types/transaction/data.js +1 -0
- package/cjs/types/transaction/error.js +53 -0
- package/cjs/types/transaction/index.js +49 -0
- package/cjs/types/transaction/request.js +1 -0
- package/cjs/types/transaction/warning.js +14 -0
- package/cjs/types/yield/actions/join/validate.js +1 -16
- package/cjs/utils/account/analyze.js +166 -0
- package/cjs/utils/account/common.js +121 -0
- package/cjs/utils/account/derive/index.js +27 -0
- package/cjs/utils/account/derive/info/index.js +27 -0
- package/cjs/utils/account/derive/info/solo.js +246 -0
- package/cjs/utils/account/derive/info/unified.js +112 -0
- package/cjs/utils/account/derive/validate.js +177 -0
- package/cjs/utils/account/index.js +49 -0
- package/cjs/utils/account/transform.js +566 -0
- package/cjs/utils/auth.js +46 -0
- package/cjs/utils/getId.js +8 -1
- package/cjs/utils/index.js +48 -62
- package/constants/environment.d.ts +1 -0
- package/constants/environment.js +6 -0
- package/constants/index.d.ts +5 -1
- package/constants/index.js +5 -2
- package/constants/signing.d.ts +4 -0
- package/constants/signing.js +15 -0
- package/constants/storage.d.ts +1 -0
- package/constants/storage.js +2 -1
- package/core/consts.d.ts +1 -0
- package/core/consts.js +13 -0
- package/core/logic-validation/recipientAddress.d.ts +2 -0
- package/core/logic-validation/recipientAddress.js +100 -0
- package/core/logic-validation/request.js +10 -18
- package/core/logic-validation/swap.js +1 -1
- package/core/logic-validation/transfer.d.ts +3 -2
- package/core/logic-validation/transfer.js +50 -10
- package/core/types.d.ts +26 -0
- package/core/types.js +19 -0
- package/core/utils.d.ts +10 -0
- package/core/utils.js +105 -0
- package/koni/api/dotsama/crowdloan.js +1 -1
- package/koni/api/nft/index.js +14 -5
- package/koni/api/staking/bonding/paraChain.js +2 -2
- package/koni/api/staking/bonding/relayChain.js +2 -2
- package/koni/api/staking/index.js +4 -1
- package/koni/background/cron.js +7 -7
- package/koni/background/handlers/Extension.d.ts +26 -35
- package/koni/background/handlers/Extension.js +337 -1242
- package/koni/background/handlers/State.d.ts +12 -19
- package/koni/background/handlers/State.js +57 -231
- package/koni/background/handlers/Tabs.d.ts +2 -3
- package/koni/background/handlers/Tabs.js +105 -61
- package/koni/background/subscription.js +5 -5
- package/package.json +352 -53
- package/packageInfo.js +1 -1
- package/page/Accounts.js +2 -5
- package/page/SubWalleEvmProvider.js +1 -1
- package/page/index.js +2 -1
- package/services/balance-service/BalanceMapImpl.d.ts +6 -4
- package/services/balance-service/BalanceMapImpl.js +44 -18
- package/services/balance-service/helpers/subscribe/index.d.ts +3 -4
- package/services/balance-service/helpers/subscribe/index.js +29 -14
- package/services/balance-service/helpers/subscribe/ton/consts.d.ts +18 -0
- package/services/balance-service/helpers/subscribe/ton/consts.js +28 -0
- package/services/balance-service/helpers/subscribe/ton/ton.d.ts +3 -0
- package/services/balance-service/helpers/subscribe/ton/ton.js +111 -0
- package/services/balance-service/helpers/subscribe/ton/types.d.ts +26 -0
- package/services/balance-service/helpers/subscribe/ton/utils.d.ts +32 -0
- package/services/balance-service/helpers/subscribe/ton/utils.js +159 -0
- package/services/balance-service/index.js +25 -13
- package/services/balance-service/transfer/token.d.ts +2 -2
- package/services/balance-service/transfer/token.js +18 -1
- package/services/balance-service/transfer/ton-transfer.d.ts +25 -0
- package/services/balance-service/transfer/ton-transfer.js +127 -0
- package/services/buy-service/index.js +5 -1
- package/services/buy-service/types.d.ts +2 -2
- package/services/chain-service/constants.js +1 -1
- package/services/chain-service/handler/TonApi.d.ts +52 -0
- package/services/chain-service/handler/TonApi.js +204 -0
- package/services/chain-service/handler/TonChainHandler.d.ts +17 -0
- package/services/chain-service/handler/TonChainHandler.js +73 -0
- package/services/chain-service/index.d.ts +5 -1
- package/services/chain-service/index.js +32 -8
- package/services/chain-service/types.d.ts +24 -0
- package/services/chain-service/utils/index.d.ts +10 -2
- package/services/chain-service/utils/index.js +59 -18
- package/services/earning-service/constants/chains.d.ts +1 -0
- package/services/earning-service/constants/chains.js +1 -0
- package/services/earning-service/handlers/base.js +3 -2
- package/services/earning-service/handlers/lending/base.js +1 -2
- package/services/earning-service/handlers/lending/interlay.js +2 -2
- package/services/earning-service/handlers/liquid-staking/base.js +1 -2
- package/services/earning-service/handlers/liquid-staking/stella-swap.js +2 -2
- package/services/earning-service/handlers/native-staking/amplitude.js +2 -2
- package/services/earning-service/handlers/native-staking/astar.js +2 -2
- package/services/earning-service/handlers/native-staking/base-para.js +2 -2
- package/services/earning-service/handlers/native-staking/base.js +2 -2
- package/services/earning-service/handlers/native-staking/para-chain.js +2 -2
- package/services/earning-service/handlers/native-staking/relay-chain.js +2 -2
- package/services/earning-service/handlers/nomination-pool/index.js +2 -2
- package/services/earning-service/handlers/special.js +2 -2
- package/services/earning-service/service.js +18 -9
- package/services/event-service/types.d.ts +3 -1
- package/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
- package/services/history-service/index.d.ts +4 -1
- package/services/history-service/index.js +29 -11
- package/services/history-service/subscan-history.js +8 -20
- package/services/keyring-service/context/account-context.d.ts +87 -0
- package/services/keyring-service/context/account-context.js +250 -0
- package/services/keyring-service/context/handlers/Base.d.ts +11 -0
- package/services/keyring-service/context/handlers/Base.js +13 -0
- package/services/keyring-service/context/handlers/Derive.d.ts +29 -0
- package/services/keyring-service/context/handlers/Derive.js +365 -0
- package/services/keyring-service/context/handlers/Inject.d.ts +11 -0
- package/services/keyring-service/context/handlers/Inject.js +69 -0
- package/services/keyring-service/context/handlers/Json.d.ts +18 -0
- package/services/keyring-service/context/handlers/Json.js +328 -0
- package/services/keyring-service/context/handlers/Ledger.d.ts +11 -0
- package/services/keyring-service/context/handlers/Ledger.js +158 -0
- package/services/keyring-service/context/handlers/Mnemonic.d.ts +15 -0
- package/services/keyring-service/context/handlers/Mnemonic.js +206 -0
- package/services/keyring-service/context/handlers/Modify.d.ts +16 -0
- package/services/keyring-service/context/handlers/Modify.js +250 -0
- package/services/keyring-service/context/handlers/Secret.d.ts +16 -0
- package/services/keyring-service/context/handlers/Secret.js +299 -0
- package/services/keyring-service/context/handlers/index.d.ts +7 -0
- package/services/keyring-service/context/handlers/index.js +10 -0
- package/services/keyring-service/context/state.d.ts +92 -0
- package/services/keyring-service/context/state.js +629 -0
- package/services/keyring-service/context/stores/AccountProxy.d.ts +13 -0
- package/services/keyring-service/context/stores/AccountProxy.js +25 -0
- package/services/keyring-service/context/stores/Base.d.ts +22 -0
- package/services/keyring-service/context/stores/Base.js +30 -0
- package/services/keyring-service/context/stores/CurrentAccount.d.ts +15 -0
- package/services/keyring-service/context/stores/CurrentAccount.js +21 -0
- package/services/keyring-service/context/stores/ModifyPair.d.ts +10 -0
- package/services/keyring-service/context/stores/ModifyPair.js +12 -0
- package/services/keyring-service/context/stores/index.d.ts +3 -0
- package/services/keyring-service/context/stores/index.js +6 -0
- package/services/keyring-service/index.d.ts +10 -22
- package/services/keyring-service/index.js +20 -161
- package/services/migration-service/scripts/index.js +6 -4
- package/services/migration-service/scripts/{MigrateLedgerAccountV2.d.ts → keyring/MigrateLedgerAccountV2.d.ts} +1 -1
- package/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
- package/services/migration-service/scripts/keyring/MigratePairData.d.ts +4 -0
- package/services/migration-service/scripts/keyring/MigratePairData.js +20 -0
- package/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
- package/services/request-service/constants.d.ts +1 -1
- package/services/request-service/constants.js +2 -1
- package/services/request-service/handler/AuthRequestHandler.d.ts +1 -0
- package/services/request-service/handler/AuthRequestHandler.js +93 -45
- package/services/request-service/handler/EvmRequestHandler.js +3 -4
- package/services/request-service/handler/SubstrateRequestHandler.d.ts +2 -2
- package/services/request-service/handler/SubstrateRequestHandler.js +5 -11
- package/services/request-service/handler/TonRequestHandler.d.ts +17 -0
- package/services/request-service/handler/TonRequestHandler.js +168 -0
- package/services/request-service/index.d.ts +8 -3
- package/services/request-service/index.js +23 -5
- package/services/request-service/types.d.ts +6 -3
- package/services/swap-service/handler/asset-hub/handler.d.ts +1 -1
- package/services/swap-service/handler/asset-hub/handler.js +2 -1
- package/services/swap-service/handler/base-handler.js +1 -1
- package/services/swap-service/handler/chainflip-handler.d.ts +1 -1
- package/services/swap-service/handler/chainflip-handler.js +4 -3
- package/services/swap-service/handler/hydradx-handler.d.ts +1 -1
- package/services/swap-service/handler/hydradx-handler.js +2 -1
- package/services/swap-service/index.js +1 -1
- package/services/transaction-service/helpers/index.d.ts +2 -0
- package/services/transaction-service/helpers/index.js +4 -0
- package/services/transaction-service/index.d.ts +1 -0
- package/services/transaction-service/index.js +114 -17
- package/services/transaction-service/types.d.ts +4 -2
- package/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
- package/stores/AccountProxyStore.d.ts +5 -0
- package/stores/AccountProxyStore.js +10 -0
- package/stores/Authorize.d.ts +1 -1
- package/stores/CurrentAccountStore.d.ts +1 -1
- package/stores/ModifyPairStore.d.ts +5 -0
- package/stores/ModifyPairStore.js +10 -0
- package/stores/index.d.ts +4 -1
- package/stores/index.js +5 -2
- package/types/account/action/add/index.d.ts +3 -0
- package/types/account/action/add/index.js +6 -0
- package/types/account/action/add/json.d.ts +29 -0
- package/types/account/action/add/json.js +1 -0
- package/types/account/action/add/mnemonic.d.ts +77 -0
- package/types/account/action/add/mnemonic.js +1 -0
- package/types/account/action/add/secret.d.ts +55 -0
- package/types/account/action/add/secret.js +1 -0
- package/types/account/action/derive.d.ts +77 -0
- package/types/account/action/derive.js +1 -0
- package/types/account/action/edit.d.ts +31 -0
- package/types/account/action/edit.js +1 -0
- package/types/account/action/export.d.ts +15 -0
- package/types/account/action/export.js +1 -0
- package/types/account/action/index.d.ts +6 -0
- package/types/account/action/index.js +9 -0
- package/types/account/action/subscribe.d.ts +22 -0
- package/types/account/action/subscribe.js +10 -0
- package/types/account/action/validate.d.ts +17 -0
- package/types/account/action/validate.js +1 -0
- package/types/account/error/common.d.ts +10 -0
- package/types/account/error/common.js +33 -0
- package/types/account/error/derive.d.ts +13 -0
- package/types/account/error/derive.js +48 -0
- package/types/account/error/index.d.ts +2 -0
- package/types/account/error/index.js +5 -0
- package/types/account/index.d.ts +3 -0
- package/types/account/index.js +6 -0
- package/types/account/info/current.d.ts +10 -0
- package/types/account/info/current.js +1 -0
- package/types/account/info/index.d.ts +3 -0
- package/types/account/info/index.js +6 -0
- package/types/account/info/keyring.d.ts +161 -0
- package/types/account/info/keyring.js +88 -0
- package/types/account/info/proxy.d.ts +73 -0
- package/types/account/info/proxy.js +46 -0
- package/types/balance/index.d.ts +4 -1
- package/types/buy.d.ts +3 -1
- package/types/error.d.ts +8 -0
- package/types/error.js +1 -0
- package/types/index.d.ts +4 -0
- package/types/index.js +5 -1
- package/types/transaction/data.d.ts +17 -0
- package/types/transaction/data.js +1 -0
- package/types/transaction/error.d.ts +39 -0
- package/types/transaction/error.js +44 -0
- package/types/transaction/index.d.ts +4 -0
- package/types/transaction/index.js +7 -0
- package/types/transaction/request.d.ts +24 -0
- package/types/transaction/request.js +1 -0
- package/types/transaction/warning.d.ts +5 -0
- package/types/transaction/warning.js +8 -0
- package/types/yield/actions/join/submit.d.ts +2 -2
- package/types/yield/actions/join/validate.d.ts +1 -6
- package/types/yield/actions/join/validate.js +1 -10
- package/types/yield/actions/others.d.ts +1 -1
- package/utils/account/analyze.d.ts +4 -0
- package/utils/account/analyze.js +159 -0
- package/utils/account/common.d.ts +16 -0
- package/utils/account/common.js +104 -0
- package/utils/account/derive/index.d.ts +2 -0
- package/utils/account/derive/index.js +5 -0
- package/utils/account/derive/info/index.d.ts +2 -0
- package/utils/account/derive/info/index.js +5 -0
- package/utils/account/derive/info/solo.d.ts +11 -0
- package/utils/account/derive/info/solo.js +230 -0
- package/utils/account/derive/info/unified.d.ts +7 -0
- package/utils/account/derive/info/unified.js +102 -0
- package/utils/account/derive/validate.d.ts +8 -0
- package/utils/account/derive/validate.js +165 -0
- package/utils/account/index.d.ts +4 -0
- package/utils/account/index.js +7 -0
- package/utils/account/transform.d.ts +41 -0
- package/utils/account/transform.js +533 -0
- package/utils/auth.d.ts +2 -0
- package/utils/auth.js +39 -0
- package/utils/canDerive.d.ts +1 -1
- package/utils/eth/mergeTransactionAndSignature.d.ts +1 -1
- package/utils/getId.d.ts +1 -0
- package/utils/getId.js +3 -1
- package/utils/index.d.ts +12 -5
- package/utils/index.js +28 -47
- package/cjs/signers/substrates/KeyringSigner.js +0 -35
- package/cjs/signers/substrates/LedgerSigner.js +0 -44
- package/cjs/signers/substrates/QrSigner.js +0 -63
- package/cjs/signers/types.js +0 -15
- package/cjs/signers/web3/QrSigner.js +0 -67
- package/cjs/utils/account.js +0 -34
- package/signers/substrates/KeyringSigner.d.ts +0 -13
- package/signers/substrates/KeyringSigner.js +0 -27
- package/signers/substrates/LedgerSigner.d.ts +0 -13
- package/signers/substrates/LedgerSigner.js +0 -37
- package/signers/substrates/QrSigner.d.ts +0 -20
- package/signers/substrates/QrSigner.js +0 -55
- package/signers/types.d.ts +0 -34
- package/signers/types.js +0 -9
- package/signers/web3/QrSigner.d.ts +0 -18
- package/signers/web3/QrSigner.js +0 -59
- package/types/transaction.d.ts +0 -3
- package/utils/account.d.ts +0 -5
- package/utils/account.js +0 -24
- /package/cjs/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
- /package/cjs/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
- /package/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
- /package/services/migration-service/scripts/{MigrateLedgerAccount.d.ts → keyring/MigrateLedgerAccount.d.ts} +0 -0
- /package/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
- /package/services/migration-service/scripts/{MigrateRemoveGenesisHash.d.ts → keyring/MigrateRemoveGenesisHash.d.ts} +0 -0
|
@@ -11,6 +11,7 @@ var _constants = require("@subwallet/extension-base/services/chain-service/const
|
|
|
11
11
|
var _EvmChainHandler = require("@subwallet/extension-base/services/chain-service/handler/EvmChainHandler");
|
|
12
12
|
var _MantaPrivateHandler = require("@subwallet/extension-base/services/chain-service/handler/manta/MantaPrivateHandler");
|
|
13
13
|
var _SubstrateChainHandler = require("@subwallet/extension-base/services/chain-service/handler/SubstrateChainHandler");
|
|
14
|
+
var _TonChainHandler = require("@subwallet/extension-base/services/chain-service/handler/TonChainHandler");
|
|
14
15
|
var _types2 = require("@subwallet/extension-base/services/chain-service/handler/types");
|
|
15
16
|
var _types3 = require("@subwallet/extension-base/services/chain-service/types");
|
|
16
17
|
var _utils = require("@subwallet/extension-base/services/chain-service/utils");
|
|
@@ -28,7 +29,7 @@ const filterChainInfoMap = (data, ignoredChains) => {
|
|
|
28
29
|
return !info.bitcoinInfo && !ignoredChains.includes(slug);
|
|
29
30
|
}));
|
|
30
31
|
};
|
|
31
|
-
const ignoredList = ['bevm', 'bevmTest', 'bevm_testnet', 'layerEdge_testnet', 'merlinEvm', 'botanixEvmTest', 'syscoin_evm', 'syscoin_evm_testnet', 'rollux_evm', 'rollux_testnet', 'boolAlpha', 'boolBeta_testnet', 'core', 'satoshivm', 'satoshivm_testnet', '
|
|
32
|
+
const ignoredList = ['bevm', 'bevmTest', 'bevm_testnet', 'layerEdge_testnet', 'merlinEvm', 'botanixEvmTest', 'syscoin_evm', 'syscoin_evm_testnet', 'rollux_evm', 'rollux_testnet', 'boolAlpha', 'boolBeta_testnet', 'core', 'satoshivm', 'satoshivm_testnet', 'storyPartner_testnet'];
|
|
32
33
|
const filterAssetInfoMap = (chainInfo, assets) => {
|
|
33
34
|
return Object.fromEntries(Object.entries(assets).filter(_ref2 => {
|
|
34
35
|
let [, info] = _ref2;
|
|
@@ -96,6 +97,7 @@ class ChainService {
|
|
|
96
97
|
}
|
|
97
98
|
this.substrateChainHandler = new _SubstrateChainHandler.SubstrateChainHandler(this);
|
|
98
99
|
this.evmChainHandler = new _EvmChainHandler.EvmChainHandler(this);
|
|
100
|
+
this.tonChainHandler = new _TonChainHandler.TonChainHandler(this);
|
|
99
101
|
this.logger = (0, _logger.logger)('chain-service');
|
|
100
102
|
}
|
|
101
103
|
get value() {
|
|
@@ -145,11 +147,17 @@ class ChainService {
|
|
|
145
147
|
getEvmApiMap() {
|
|
146
148
|
return this.evmChainHandler.getEvmApiMap();
|
|
147
149
|
}
|
|
150
|
+
getSubstrateApi(slug) {
|
|
151
|
+
return this.substrateChainHandler.getSubstrateApiByChain(slug);
|
|
152
|
+
}
|
|
148
153
|
getSubstrateApiMap() {
|
|
149
154
|
return this.substrateChainHandler.getSubstrateApiMap();
|
|
150
155
|
}
|
|
151
|
-
|
|
152
|
-
return this.
|
|
156
|
+
getTonApi(slug) {
|
|
157
|
+
return this.tonChainHandler.getTonApiByChain(slug);
|
|
158
|
+
}
|
|
159
|
+
getTonApiMap() {
|
|
160
|
+
return this.tonChainHandler.getTonApiMap();
|
|
153
161
|
}
|
|
154
162
|
getChainCurrentProviderByKey(slug) {
|
|
155
163
|
const providerName = this.getChainStateByKey(slug).currentProvider;
|
|
@@ -765,6 +773,13 @@ class ChainService {
|
|
|
765
773
|
});
|
|
766
774
|
this.evmChainHandler.setEvmApi(chainInfo.slug, chainApi);
|
|
767
775
|
}
|
|
776
|
+
if (chainInfo.tonInfo !== null && chainInfo.tonInfo !== undefined) {
|
|
777
|
+
const chainApi = await this.tonChainHandler.initApi(chainInfo.slug, endpoint, {
|
|
778
|
+
providerName,
|
|
779
|
+
onUpdateStatus
|
|
780
|
+
});
|
|
781
|
+
this.tonChainHandler.setTonApi(chainInfo.slug, chainApi);
|
|
782
|
+
}
|
|
768
783
|
}
|
|
769
784
|
destroyApiForChain(chainInfo) {
|
|
770
785
|
if (chainInfo.substrateInfo !== null) {
|
|
@@ -773,6 +788,9 @@ class ChainService {
|
|
|
773
788
|
if (chainInfo.evmInfo !== null) {
|
|
774
789
|
this.evmChainHandler.destroyEvmApi(chainInfo.slug);
|
|
775
790
|
}
|
|
791
|
+
if (chainInfo.tonInfo !== null) {
|
|
792
|
+
this.tonChainHandler.destroyTonApi(chainInfo.slug);
|
|
793
|
+
}
|
|
776
794
|
}
|
|
777
795
|
async enableChain(chainSlug) {
|
|
778
796
|
const chainInfo = this.getChainInfoByKey(chainSlug);
|
|
@@ -1038,7 +1056,7 @@ class ChainService {
|
|
|
1038
1056
|
deprecatedChainMap[storedSlug] = duplicatedDefaultSlug;
|
|
1039
1057
|
deprecatedChains.push(storedSlug);
|
|
1040
1058
|
} else {
|
|
1041
|
-
var _storedChainInfo$bitc
|
|
1059
|
+
var _storedChainInfo$bitc;
|
|
1042
1060
|
mergedChainInfoMap[storedSlug] = {
|
|
1043
1061
|
slug: storedSlug,
|
|
1044
1062
|
name: storedChainInfo.name,
|
|
@@ -1047,7 +1065,7 @@ class ChainService {
|
|
|
1047
1065
|
evmInfo: storedChainInfo.evmInfo,
|
|
1048
1066
|
substrateInfo: storedChainInfo.substrateInfo,
|
|
1049
1067
|
bitcoinInfo: (_storedChainInfo$bitc = storedChainInfo.bitcoinInfo) !== null && _storedChainInfo$bitc !== void 0 ? _storedChainInfo$bitc : null,
|
|
1050
|
-
tonInfo:
|
|
1068
|
+
tonInfo: storedChainInfo.tonInfo,
|
|
1051
1069
|
isTestnet: storedChainInfo.isTestnet,
|
|
1052
1070
|
chainStatus: storedChainInfo.chainStatus,
|
|
1053
1071
|
icon: storedChainInfo.icon,
|
|
@@ -1226,6 +1244,7 @@ class ChainService {
|
|
|
1226
1244
|
const newChainSlug = this.generateSlugForCustomChain(params.chainEditInfo.chainType, params.chainEditInfo.name, params.chainSpec.paraId, params.chainSpec.evmChainId);
|
|
1227
1245
|
let substrateInfo = null;
|
|
1228
1246
|
let evmInfo = null;
|
|
1247
|
+
const tonInfo = null;
|
|
1229
1248
|
if (params.chainSpec.genesisHash !== '') {
|
|
1230
1249
|
substrateInfo = {
|
|
1231
1250
|
crowdloanFunds: params.chainSpec.crowdloanFunds || null,
|
|
@@ -1263,7 +1282,7 @@ class ChainService {
|
|
|
1263
1282
|
substrateInfo,
|
|
1264
1283
|
evmInfo,
|
|
1265
1284
|
bitcoinInfo: null,
|
|
1266
|
-
tonInfo
|
|
1285
|
+
tonInfo,
|
|
1267
1286
|
isTestnet: false,
|
|
1268
1287
|
chainStatus: _types._ChainStatus.ACTIVE,
|
|
1269
1288
|
icon: '',
|
|
@@ -1374,6 +1393,8 @@ class ChainService {
|
|
|
1374
1393
|
|
|
1375
1394
|
// TODO: EVM chain might have WS provider
|
|
1376
1395
|
if (provider.startsWith('http')) {
|
|
1396
|
+
// todo: handle validate ton provider
|
|
1397
|
+
|
|
1377
1398
|
// HTTP provider is EVM by default
|
|
1378
1399
|
api = await this.evmChainHandler.initApi('custom', provider);
|
|
1379
1400
|
} else {
|
|
@@ -1567,12 +1588,15 @@ class ChainService {
|
|
|
1567
1588
|
refreshEvmApi(slug) {
|
|
1568
1589
|
this.evmChainHandler.recoverApi(slug).catch(console.error);
|
|
1569
1590
|
}
|
|
1591
|
+
refreshTonApi(slug) {
|
|
1592
|
+
this.tonChainHandler.recoverApi(slug).catch(console.error);
|
|
1593
|
+
}
|
|
1570
1594
|
async stopAllChainApis() {
|
|
1571
|
-
await Promise.all([this.substrateChainHandler.sleep(), this.evmChainHandler.sleep()]);
|
|
1595
|
+
await Promise.all([this.substrateChainHandler.sleep(), this.evmChainHandler.sleep(), this.tonChainHandler.sleep()]);
|
|
1572
1596
|
this.stopCheckLatestChainData();
|
|
1573
1597
|
}
|
|
1574
1598
|
async resumeAllChainApis() {
|
|
1575
|
-
await Promise.all([this.substrateChainHandler.wakeUp(), this.evmChainHandler.wakeUp()]);
|
|
1599
|
+
await Promise.all([this.substrateChainHandler.wakeUp(), this.evmChainHandler.wakeUp(), this.tonChainHandler.wakeUp()]);
|
|
1576
1600
|
this.checkLatestData();
|
|
1577
1601
|
}
|
|
1578
1602
|
async initAssetSettings() {
|
|
@@ -11,20 +11,25 @@ var _exportNames = {
|
|
|
11
11
|
_isEqualSmartContractAsset: true,
|
|
12
12
|
_isPureEvmChain: true,
|
|
13
13
|
_isPureSubstrateChain: true,
|
|
14
|
+
_isPureTonChain: true,
|
|
14
15
|
_getOriginChainOfAsset: true,
|
|
15
16
|
_getContractAddressOfToken: true,
|
|
16
17
|
_isNativeTokenTransferredByEvm: true,
|
|
17
18
|
_isTokenTransferredByEvm: true,
|
|
18
19
|
_checkSmartContractSupportByChain: true,
|
|
20
|
+
_isJettonToken: true,
|
|
21
|
+
_isTokenTransferredByTon: true,
|
|
19
22
|
_getTokenOnChainAssetId: true,
|
|
20
23
|
_getTokenOnChainInfo: true,
|
|
21
24
|
_isBridgedToken: true,
|
|
22
25
|
_getTokenMinAmount: true,
|
|
23
26
|
_isChainEvmCompatible: true,
|
|
27
|
+
_isChainBitcoinCompatible: true,
|
|
28
|
+
_isChainTonCompatible: true,
|
|
24
29
|
_isNativeToken: true,
|
|
25
30
|
_isNativeTokenBySlug: true,
|
|
26
31
|
_isSmartContractToken: true,
|
|
27
|
-
|
|
32
|
+
_isChainSubstrateCompatible: true,
|
|
28
33
|
_getEvmChainId: true,
|
|
29
34
|
_getSubstrateParaId: true,
|
|
30
35
|
_getSubstrateRelayParent: true,
|
|
@@ -46,6 +51,7 @@ var _exportNames = {
|
|
|
46
51
|
_getChainNativeTokenSlug: true,
|
|
47
52
|
_isLocalToken: true,
|
|
48
53
|
_isTokenEvmSmartContract: true,
|
|
54
|
+
_isTokenTonSmartContract: true,
|
|
49
55
|
_isTokenWasmSmartContract: true,
|
|
50
56
|
_isAssetSmartContractNft: true,
|
|
51
57
|
_isTokenGearSmartContract: true,
|
|
@@ -84,8 +90,10 @@ var _exportNames = {
|
|
|
84
90
|
_getAssetExistentialDeposit: true,
|
|
85
91
|
randomizeProvider: true,
|
|
86
92
|
_isAssetCanPayTxFee: true,
|
|
87
|
-
updateLatestChainInfo: true
|
|
93
|
+
updateLatestChainInfo: true,
|
|
94
|
+
_chainInfoToChainType: true
|
|
88
95
|
};
|
|
96
|
+
exports._chainInfoToChainType = void 0;
|
|
89
97
|
exports._checkSmartContractSupportByChain = _checkSmartContractSupportByChain;
|
|
90
98
|
exports._generateCustomProviderKey = _generateCustomProviderKey;
|
|
91
99
|
exports._getAssetDecimals = _getAssetDecimals;
|
|
@@ -127,8 +135,10 @@ exports._isAssetFungibleToken = _isAssetFungibleToken;
|
|
|
127
135
|
exports._isAssetSmartContractNft = _isAssetSmartContractNft;
|
|
128
136
|
exports._isAssetValuable = _isAssetValuable;
|
|
129
137
|
exports._isBridgedToken = _isBridgedToken;
|
|
138
|
+
exports._isChainBitcoinCompatible = _isChainBitcoinCompatible;
|
|
130
139
|
exports._isChainEnabled = _isChainEnabled;
|
|
131
140
|
exports._isChainEvmCompatible = _isChainEvmCompatible;
|
|
141
|
+
exports._isChainSubstrateCompatible = _isChainSubstrateCompatible;
|
|
132
142
|
exports._isChainSupportEvmERC20 = _isChainSupportEvmERC20;
|
|
133
143
|
exports._isChainSupportEvmNft = _isChainSupportEvmNft;
|
|
134
144
|
exports._isChainSupportGRC20 = _isChainSupportGRC20;
|
|
@@ -138,11 +148,13 @@ exports._isChainSupportVFT = _isChainSupportVFT;
|
|
|
138
148
|
exports._isChainSupportWasmNft = _isChainSupportWasmNft;
|
|
139
149
|
exports._isChainSupportWasmPSP22 = _isChainSupportWasmPSP22;
|
|
140
150
|
exports._isChainTestNet = _isChainTestNet;
|
|
151
|
+
exports._isChainTonCompatible = _isChainTonCompatible;
|
|
141
152
|
exports._isCustomAsset = _isCustomAsset;
|
|
142
153
|
exports._isCustomChain = _isCustomChain;
|
|
143
154
|
exports._isCustomProvider = _isCustomProvider;
|
|
144
155
|
exports._isEqualContractAddress = _isEqualContractAddress;
|
|
145
156
|
exports._isEqualSmartContractAsset = _isEqualSmartContractAsset;
|
|
157
|
+
exports._isJettonToken = _isJettonToken;
|
|
146
158
|
exports._isLocalToken = _isLocalToken;
|
|
147
159
|
exports._isMantaZkAsset = _isMantaZkAsset;
|
|
148
160
|
exports._isNativeToken = _isNativeToken;
|
|
@@ -150,15 +162,17 @@ exports._isNativeTokenBySlug = _isNativeTokenBySlug;
|
|
|
150
162
|
exports._isNativeTokenTransferredByEvm = _isNativeTokenTransferredByEvm;
|
|
151
163
|
exports._isPureEvmChain = _isPureEvmChain;
|
|
152
164
|
exports._isPureSubstrateChain = _isPureSubstrateChain;
|
|
165
|
+
exports._isPureTonChain = _isPureTonChain;
|
|
153
166
|
exports._isRelayChain = _isRelayChain;
|
|
154
167
|
exports._isSmartContractToken = _isSmartContractToken;
|
|
155
|
-
exports._isSubstrateChain = _isSubstrateChain;
|
|
156
168
|
exports._isSubstrateParaChain = _isSubstrateParaChain;
|
|
157
169
|
exports._isSubstrateRelayChain = _isSubstrateRelayChain;
|
|
158
170
|
exports._isSupportOrdinal = void 0;
|
|
159
171
|
exports._isTokenEvmSmartContract = _isTokenEvmSmartContract;
|
|
160
172
|
exports._isTokenGearSmartContract = _isTokenGearSmartContract;
|
|
173
|
+
exports._isTokenTonSmartContract = _isTokenTonSmartContract;
|
|
161
174
|
exports._isTokenTransferredByEvm = _isTokenTransferredByEvm;
|
|
175
|
+
exports._isTokenTransferredByTon = _isTokenTransferredByTon;
|
|
162
176
|
exports._isTokenWasmSmartContract = _isTokenWasmSmartContract;
|
|
163
177
|
exports._isXcmPathSupported = _isXcmPathSupported;
|
|
164
178
|
exports._parseAssetRefKey = _parseAssetRefKey;
|
|
@@ -169,6 +183,7 @@ exports.updateLatestChainInfo = updateLatestChainInfo;
|
|
|
169
183
|
var _types = require("@subwallet/chain-list/types");
|
|
170
184
|
var _constants = require("@subwallet/extension-base/services/chain-service/constants");
|
|
171
185
|
var _types2 = require("@subwallet/extension-base/services/chain-service/types");
|
|
186
|
+
var _types3 = require("@subwallet/extension-base/types");
|
|
172
187
|
var _utilCrypto = require("@polkadot/util-crypto");
|
|
173
188
|
var _patch = require("./patch");
|
|
174
189
|
Object.keys(_patch).forEach(function (key) {
|
|
@@ -227,10 +242,13 @@ function _isEqualSmartContractAsset(asset1, asset2) {
|
|
|
227
242
|
return false;
|
|
228
243
|
}
|
|
229
244
|
function _isPureEvmChain(chainInfo) {
|
|
230
|
-
return !!chainInfo.evmInfo && !chainInfo.substrateInfo;
|
|
245
|
+
return !!chainInfo.evmInfo && !chainInfo.substrateInfo && !chainInfo.tonInfo;
|
|
231
246
|
}
|
|
232
247
|
function _isPureSubstrateChain(chainInfo) {
|
|
233
|
-
return !chainInfo.evmInfo && !!chainInfo.substrateInfo;
|
|
248
|
+
return !chainInfo.evmInfo && !!chainInfo.substrateInfo && !chainInfo.tonInfo;
|
|
249
|
+
}
|
|
250
|
+
function _isPureTonChain(chainInfo) {
|
|
251
|
+
return !chainInfo.evmInfo && !chainInfo.substrateInfo && !!chainInfo.tonInfo;
|
|
234
252
|
}
|
|
235
253
|
function _getOriginChainOfAsset(assetSlug) {
|
|
236
254
|
if (assetSlug.startsWith(_types2._CUSTOM_PREFIX)) {
|
|
@@ -276,19 +294,26 @@ function _checkSmartContractSupportByChain(chainInfo, contractType) {
|
|
|
276
294
|
}
|
|
277
295
|
return chainInfo.substrateInfo.supportSmartContract !== null && chainInfo.substrateInfo.supportSmartContract.includes(contractType);
|
|
278
296
|
}
|
|
297
|
+
function _isJettonToken(tokenInfo) {
|
|
298
|
+
var _tokenInfo$metadata4;
|
|
299
|
+
return tokenInfo.assetType === _types._AssetType.TEP74 && !!((_tokenInfo$metadata4 = tokenInfo.metadata) !== null && _tokenInfo$metadata4 !== void 0 && _tokenInfo$metadata4.contractAddress);
|
|
300
|
+
}
|
|
301
|
+
function _isTokenTransferredByTon(tokenInfo) {
|
|
302
|
+
return _isJettonToken(tokenInfo) || _isNativeToken(tokenInfo);
|
|
303
|
+
}
|
|
279
304
|
|
|
280
305
|
// Utils for balance functions
|
|
281
306
|
function _getTokenOnChainAssetId(tokenInfo) {
|
|
282
|
-
var _tokenInfo$
|
|
283
|
-
return ((_tokenInfo$
|
|
307
|
+
var _tokenInfo$metadata5;
|
|
308
|
+
return ((_tokenInfo$metadata5 = tokenInfo.metadata) === null || _tokenInfo$metadata5 === void 0 ? void 0 : _tokenInfo$metadata5.assetId) || '-1';
|
|
284
309
|
}
|
|
285
310
|
function _getTokenOnChainInfo(tokenInfo) {
|
|
286
|
-
var _tokenInfo$
|
|
287
|
-
return (_tokenInfo$
|
|
311
|
+
var _tokenInfo$metadata6;
|
|
312
|
+
return (_tokenInfo$metadata6 = tokenInfo.metadata) === null || _tokenInfo$metadata6 === void 0 ? void 0 : _tokenInfo$metadata6.onChainInfo;
|
|
288
313
|
}
|
|
289
314
|
function _isBridgedToken(tokenInfo) {
|
|
290
|
-
var _tokenInfo$
|
|
291
|
-
return (_tokenInfo$
|
|
315
|
+
var _tokenInfo$metadata7;
|
|
316
|
+
return (_tokenInfo$metadata7 = tokenInfo.metadata) === null || _tokenInfo$metadata7 === void 0 ? void 0 : _tokenInfo$metadata7.isBridged;
|
|
292
317
|
}
|
|
293
318
|
function _getTokenMinAmount(tokenInfo) {
|
|
294
319
|
return tokenInfo.minAmount || '0';
|
|
@@ -296,6 +321,12 @@ function _getTokenMinAmount(tokenInfo) {
|
|
|
296
321
|
function _isChainEvmCompatible(chainInfo) {
|
|
297
322
|
return !!chainInfo.evmInfo;
|
|
298
323
|
}
|
|
324
|
+
function _isChainBitcoinCompatible(chainInfo) {
|
|
325
|
+
return !!chainInfo.bitcoinInfo;
|
|
326
|
+
}
|
|
327
|
+
function _isChainTonCompatible(chainInfo) {
|
|
328
|
+
return !!chainInfo.tonInfo;
|
|
329
|
+
}
|
|
299
330
|
function _isNativeToken(tokenInfo) {
|
|
300
331
|
return tokenInfo.assetType === _types._AssetType.NATIVE;
|
|
301
332
|
}
|
|
@@ -305,7 +336,7 @@ function _isNativeTokenBySlug(tokenSlug) {
|
|
|
305
336
|
function _isSmartContractToken(tokenInfo) {
|
|
306
337
|
return _types2._SMART_CONTRACT_STANDARDS.includes(tokenInfo.assetType);
|
|
307
338
|
}
|
|
308
|
-
function
|
|
339
|
+
function _isChainSubstrateCompatible(chainInfo) {
|
|
309
340
|
return !!chainInfo.substrateInfo; // fallback to Ethereum
|
|
310
341
|
}
|
|
311
342
|
|
|
@@ -413,17 +444,22 @@ function _getChainNativeTokenBasicInfo(chainInfo) {
|
|
|
413
444
|
decimals: -1
|
|
414
445
|
};
|
|
415
446
|
}
|
|
416
|
-
if (chainInfo.substrateInfo
|
|
447
|
+
if (chainInfo.substrateInfo) {
|
|
417
448
|
// substrate by default
|
|
418
449
|
return {
|
|
419
450
|
symbol: chainInfo.substrateInfo.symbol,
|
|
420
451
|
decimals: chainInfo.substrateInfo.decimals
|
|
421
452
|
};
|
|
422
|
-
} else if (chainInfo.evmInfo
|
|
453
|
+
} else if (chainInfo.evmInfo) {
|
|
423
454
|
return {
|
|
424
455
|
symbol: chainInfo.evmInfo.symbol,
|
|
425
456
|
decimals: chainInfo.evmInfo.decimals
|
|
426
457
|
};
|
|
458
|
+
} else if (chainInfo.tonInfo) {
|
|
459
|
+
return {
|
|
460
|
+
symbol: chainInfo.tonInfo.symbol,
|
|
461
|
+
decimals: chainInfo.tonInfo.decimals
|
|
462
|
+
};
|
|
427
463
|
}
|
|
428
464
|
return {
|
|
429
465
|
symbol: '',
|
|
@@ -442,6 +478,10 @@ function _isLocalToken(tokenInfo) {
|
|
|
442
478
|
function _isTokenEvmSmartContract(tokenInfo) {
|
|
443
479
|
return [_types._AssetType.ERC721, _types._AssetType.ERC20].includes(tokenInfo.assetType);
|
|
444
480
|
}
|
|
481
|
+
function _isTokenTonSmartContract(tokenInfo) {
|
|
482
|
+
return [_types._AssetType.TEP74].includes(tokenInfo.assetType); // add TEP-62 when supporting
|
|
483
|
+
}
|
|
484
|
+
|
|
445
485
|
function _isTokenWasmSmartContract(tokenInfo) {
|
|
446
486
|
return [_types._AssetType.PSP22, _types._AssetType.PSP34].includes(tokenInfo.assetType);
|
|
447
487
|
}
|
|
@@ -462,16 +502,16 @@ function _isXcmPathSupported(originTokenSlug, destinationTokenSlug, assetRefMap)
|
|
|
462
502
|
return assetRef.path === _types._AssetRefPath.XCM;
|
|
463
503
|
}
|
|
464
504
|
function _getXcmAssetType(tokenInfo) {
|
|
465
|
-
var _tokenInfo$
|
|
466
|
-
return ((_tokenInfo$
|
|
505
|
+
var _tokenInfo$metadata8;
|
|
506
|
+
return ((_tokenInfo$metadata8 = tokenInfo.metadata) === null || _tokenInfo$metadata8 === void 0 ? void 0 : _tokenInfo$metadata8.assetType) || '';
|
|
467
507
|
}
|
|
468
508
|
function _getXcmAssetId(tokenInfo) {
|
|
469
|
-
var _tokenInfo$
|
|
470
|
-
return ((_tokenInfo$
|
|
509
|
+
var _tokenInfo$metadata9;
|
|
510
|
+
return ((_tokenInfo$metadata9 = tokenInfo.metadata) === null || _tokenInfo$metadata9 === void 0 ? void 0 : _tokenInfo$metadata9.assetId) || '-1';
|
|
471
511
|
}
|
|
472
512
|
function _getXcmAssetMultilocation(tokenInfo) {
|
|
473
|
-
var _tokenInfo$
|
|
474
|
-
return (_tokenInfo$
|
|
513
|
+
var _tokenInfo$metadata10;
|
|
514
|
+
return (_tokenInfo$metadata10 = tokenInfo.metadata) === null || _tokenInfo$metadata10 === void 0 ? void 0 : _tokenInfo$metadata10.multilocation;
|
|
475
515
|
}
|
|
476
516
|
function _getXcmTransferType(originChainInfo, destinationChainInfo) {
|
|
477
517
|
var _originChainInfo$subs, _destinationChainInfo;
|
|
@@ -517,7 +557,7 @@ function _getAssetOriginChain(assetInfo) {
|
|
|
517
557
|
return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.originChain) || '';
|
|
518
558
|
}
|
|
519
559
|
function _getChainName(chainInfo) {
|
|
520
|
-
return chainInfo.name;
|
|
560
|
+
return (chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.name) || '';
|
|
521
561
|
}
|
|
522
562
|
function _getAssetDecimals(assetInfo) {
|
|
523
563
|
return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.decimals) || 0;
|
|
@@ -687,4 +727,20 @@ function updateLatestChainInfo(currentDataMap, latestChainInfoList) {
|
|
|
687
727
|
storedChainInfoList,
|
|
688
728
|
needUpdateChainApiList
|
|
689
729
|
};
|
|
690
|
-
}
|
|
730
|
+
}
|
|
731
|
+
const _chainInfoToChainType = chainInfo => {
|
|
732
|
+
if (_isPureSubstrateChain(chainInfo)) {
|
|
733
|
+
return _types3.AccountChainType.SUBSTRATE;
|
|
734
|
+
}
|
|
735
|
+
if (_isChainEvmCompatible(chainInfo)) {
|
|
736
|
+
return _types3.AccountChainType.ETHEREUM;
|
|
737
|
+
}
|
|
738
|
+
if (_isChainTonCompatible(chainInfo)) {
|
|
739
|
+
return _types3.AccountChainType.TON;
|
|
740
|
+
}
|
|
741
|
+
if (_isChainBitcoinCompatible(chainInfo)) {
|
|
742
|
+
return _types3.AccountChainType.BITCOIN;
|
|
743
|
+
}
|
|
744
|
+
return _types3.AccountChainType.SUBSTRATE;
|
|
745
|
+
};
|
|
746
|
+
exports._chainInfoToChainType = _chainInfoToChainType;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports._STAKING_CHAIN_GROUP = exports.ST_LIQUID_TOKEN_ABI = exports.MaxEraRewardPointsEras = exports.MANTA_VALIDATOR_POINTS_PER_BLOCK = exports.MANTA_MIN_DELEGATION = void 0;
|
|
6
|
+
exports._STAKING_CHAIN_GROUP = exports.TON_CHAINS = exports.ST_LIQUID_TOKEN_ABI = exports.MaxEraRewardPointsEras = exports.MANTA_VALIDATOR_POINTS_PER_BLOCK = exports.MANTA_MIN_DELEGATION = void 0;
|
|
7
7
|
// Copyright 2019-2022 @subwallet/extension-base
|
|
8
8
|
// SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
|
|
@@ -25,6 +25,8 @@ const _STAKING_CHAIN_GROUP = {
|
|
|
25
25
|
manta: ['manta_network']
|
|
26
26
|
};
|
|
27
27
|
exports._STAKING_CHAIN_GROUP = _STAKING_CHAIN_GROUP;
|
|
28
|
+
const TON_CHAINS = ['ton', 'ton_testnet'];
|
|
29
|
+
exports.TON_CHAINS = TON_CHAINS;
|
|
28
30
|
const MaxEraRewardPointsEras = 14;
|
|
29
31
|
|
|
30
32
|
// eslint-disable-next-line @typescript-eslint/no-var-requires,@typescript-eslint/no-unsafe-assignment
|
|
@@ -106,7 +106,8 @@ class BasePoolHandler {
|
|
|
106
106
|
return await this.state.earningService.getYieldPool(this.slug);
|
|
107
107
|
}
|
|
108
108
|
async getPoolPosition(address) {
|
|
109
|
-
|
|
109
|
+
const originAddress = (0, _utils.reformatAddress)(address);
|
|
110
|
+
return await this.state.earningService.getYieldPosition(originAddress, this.slug);
|
|
110
111
|
}
|
|
111
112
|
|
|
112
113
|
/* Subscribe data */
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _TransactionError = require("@subwallet/extension-base/background/errors/TransactionError");
|
|
9
|
-
var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
|
|
10
9
|
var _types = require("@subwallet/extension-base/types");
|
|
11
10
|
var _utils = require("@subwallet/extension-base/utils");
|
|
12
11
|
var _bignumber = _interopRequireDefault(require("bignumber.js"));
|
|
@@ -28,13 +27,13 @@ class BaseLendingPoolHandler extends _special.default {
|
|
|
28
27
|
const poolInfo = await this.getPoolInfo();
|
|
29
28
|
const poolPosition = await this.getPoolPosition(address);
|
|
30
29
|
if (!poolInfo || !poolInfo.statistic || !poolPosition) {
|
|
31
|
-
return [new _TransactionError.TransactionError(
|
|
30
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
32
31
|
}
|
|
33
32
|
if (!this.availableMethod.defaultUnstake && !fastLeave) {
|
|
34
|
-
return [new _TransactionError.TransactionError(
|
|
33
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
35
34
|
}
|
|
36
35
|
if (!this.availableMethod.fastUnstake && fastLeave) {
|
|
37
|
-
return [new _TransactionError.TransactionError(
|
|
36
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
38
37
|
}
|
|
39
38
|
const errors = [];
|
|
40
39
|
const bnActiveStake = new _bignumber.default(poolPosition.activeStake).multipliedBy(poolInfo.statistic.assetEarning[0].exchangeRate || 1);
|
|
@@ -45,11 +44,11 @@ class BaseLendingPoolHandler extends _special.default {
|
|
|
45
44
|
const maxUnstakeRequest = poolInfo.statistic.maxWithdrawalRequestPerFarmer;
|
|
46
45
|
const derivativeTokenInfo = this.state.getAssetBySlug(this.derivativeAssets[0]);
|
|
47
46
|
if (bnAmount.lte(_utils.BN_ZERO)) {
|
|
48
|
-
return [new _TransactionError.TransactionError(
|
|
47
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0'))];
|
|
49
48
|
}
|
|
50
49
|
if (bnAmount.lt(minUnstake)) {
|
|
51
50
|
const minUnstakeStr = (0, _utils.formatNumber)(minUnstake.toString(), derivativeTokenInfo.decimals || 0);
|
|
52
|
-
errors.push(new _TransactionError.TransactionError(
|
|
51
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_UNSTAKE, (0, _i18next.t)('You need to unstake at least {{amount}} {{token}}', {
|
|
53
52
|
replace: {
|
|
54
53
|
amount: minUnstakeStr,
|
|
55
54
|
token: derivativeTokenInfo.symbol
|
|
@@ -58,11 +57,11 @@ class BaseLendingPoolHandler extends _special.default {
|
|
|
58
57
|
}
|
|
59
58
|
if (!fastLeave) {
|
|
60
59
|
if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
|
|
61
|
-
errors.push(new _TransactionError.TransactionError(
|
|
60
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
62
61
|
}
|
|
63
62
|
|
|
64
63
|
if (poolPosition.unstakings.length > maxUnstakeRequest) {
|
|
65
|
-
errors.push(new _TransactionError.TransactionError(
|
|
64
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
|
|
66
65
|
replace: {
|
|
67
66
|
number: maxUnstakeRequest
|
|
68
67
|
}
|
|
@@ -70,7 +69,7 @@ class BaseLendingPoolHandler extends _special.default {
|
|
|
70
69
|
}
|
|
71
70
|
}
|
|
72
71
|
if (bnRemainingStake.lt(0)) {
|
|
73
|
-
errors.push(new _TransactionError.TransactionError(
|
|
72
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
74
73
|
}
|
|
75
74
|
|
|
76
75
|
return Promise.resolve(errors);
|
|
@@ -176,7 +176,7 @@ class InterlayLendingPoolHandler extends _base.default {
|
|
|
176
176
|
const inputTokenInfo = this.state.getAssetBySlug(inputTokenSlug);
|
|
177
177
|
const yieldPositionInfo = await this.getPoolPosition(address);
|
|
178
178
|
if (!yieldPositionInfo) {
|
|
179
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
179
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
|
|
180
180
|
}
|
|
181
181
|
const bnAmount = new _util.BN(amount);
|
|
182
182
|
const bnActiveBalance = new _util.BN(yieldPositionInfo.activeStake);
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _TransactionError = require("@subwallet/extension-base/background/errors/TransactionError");
|
|
9
|
-
var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
|
|
10
9
|
var _utils = require("@subwallet/extension-base/koni/api/yield/helper/utils");
|
|
11
10
|
var _types = require("@subwallet/extension-base/types");
|
|
12
11
|
var _utils2 = require("@subwallet/extension-base/utils");
|
|
@@ -36,7 +35,7 @@ class BaseLiquidStakingPoolHandler extends _special.default {
|
|
|
36
35
|
const derivativeTokenInfo = this.state.getAssetBySlug(derivativeTokenSlug);
|
|
37
36
|
const originTokenInfo = this.state.getAssetBySlug(originTokenSlug);
|
|
38
37
|
if (!yieldPositionInfo || !poolInfo) {
|
|
39
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
38
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
|
|
40
39
|
}
|
|
41
40
|
const formattedMinAmount = (0, _utils.convertDerivativeToOriginToken)(amount, poolInfo, derivativeTokenInfo, originTokenInfo);
|
|
42
41
|
return new _bignumber.default(formattedMinAmount).multipliedBy(this.minAmountPercent).toFixed(0);
|
|
@@ -45,13 +44,13 @@ class BaseLiquidStakingPoolHandler extends _special.default {
|
|
|
45
44
|
const poolInfo = await this.getPoolInfo();
|
|
46
45
|
const poolPosition = await this.getPoolPosition(address);
|
|
47
46
|
if (!poolInfo || !poolInfo.statistic || !poolPosition) {
|
|
48
|
-
return [new _TransactionError.TransactionError(
|
|
47
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
49
48
|
}
|
|
50
49
|
if (!this.availableMethod.defaultUnstake && !fastLeave) {
|
|
51
|
-
return [new _TransactionError.TransactionError(
|
|
50
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
52
51
|
}
|
|
53
52
|
if (!this.availableMethod.fastUnstake && fastLeave) {
|
|
54
|
-
return [new _TransactionError.TransactionError(
|
|
53
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
|
|
55
54
|
}
|
|
56
55
|
const errors = [];
|
|
57
56
|
const bnActiveStake = new _util.BN(poolPosition.activeStake);
|
|
@@ -62,11 +61,11 @@ class BaseLiquidStakingPoolHandler extends _special.default {
|
|
|
62
61
|
const maxUnstakeRequest = poolInfo.statistic.maxWithdrawalRequestPerFarmer;
|
|
63
62
|
const derivativeTokenInfo = this.state.getAssetBySlug(this.derivativeAssets[0]);
|
|
64
63
|
if (bnAmount.lte(_util.BN_ZERO)) {
|
|
65
|
-
return [new _TransactionError.TransactionError(
|
|
64
|
+
return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0'))];
|
|
66
65
|
}
|
|
67
66
|
if (bnAmount.lt(minUnstake)) {
|
|
68
67
|
const minUnstakeStr = (0, _utils2.formatNumber)(minUnstake.toString(), derivativeTokenInfo.decimals || 0);
|
|
69
|
-
errors.push(new _TransactionError.TransactionError(
|
|
68
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_UNSTAKE, (0, _i18next.t)('You need to unstake at least {{amount}} {{token}}', {
|
|
70
69
|
replace: {
|
|
71
70
|
amount: minUnstakeStr,
|
|
72
71
|
token: derivativeTokenInfo.symbol
|
|
@@ -75,11 +74,11 @@ class BaseLiquidStakingPoolHandler extends _special.default {
|
|
|
75
74
|
}
|
|
76
75
|
if (!fastLeave) {
|
|
77
76
|
if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
|
|
78
|
-
errors.push(new _TransactionError.TransactionError(
|
|
77
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
79
78
|
}
|
|
80
79
|
|
|
81
80
|
if (poolPosition.unstakings.length > maxUnstakeRequest) {
|
|
82
|
-
errors.push(new _TransactionError.TransactionError(
|
|
81
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
|
|
83
82
|
replace: {
|
|
84
83
|
number: maxUnstakeRequest
|
|
85
84
|
}
|
|
@@ -87,7 +86,7 @@ class BaseLiquidStakingPoolHandler extends _special.default {
|
|
|
87
86
|
}
|
|
88
87
|
}
|
|
89
88
|
if (bnRemainingStake.lt(_util.BN_ZERO)) {
|
|
90
|
-
errors.push(new _TransactionError.TransactionError(
|
|
89
|
+
errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
91
90
|
}
|
|
92
91
|
|
|
93
92
|
return Promise.resolve(errors);
|
|
@@ -324,7 +324,7 @@ class StellaSwapLiquidStakingPoolHandler extends _base.default {
|
|
|
324
324
|
/* Leave pool action */
|
|
325
325
|
|
|
326
326
|
async handleYieldRedeem(amount, address, selectedTarget) {
|
|
327
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
327
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
|
|
328
328
|
}
|
|
329
329
|
async handleYieldUnstake(amount, address, selectedTarget) {
|
|
330
330
|
var _priority$maxFeePerGa2, _priority$maxPriority2;
|
|
@@ -433,7 +433,7 @@ class AmplitudeNativeStakingPoolHandler extends _basePara.default {
|
|
|
433
433
|
const binaryAmount = new _util.BN(amount);
|
|
434
434
|
const poolPosition = await this.getPoolPosition(address);
|
|
435
435
|
if (!selectedTarget || !poolPosition) {
|
|
436
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
436
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
|
|
437
437
|
}
|
|
438
438
|
const unstakeAll = (0, _utils.isUnstakeAll)(selectedTarget, poolPosition.nominations, amount);
|
|
439
439
|
let extrinsic;
|
|
@@ -400,7 +400,7 @@ class AstarNativeStakingPoolHandler extends _basePara.default {
|
|
|
400
400
|
const chainApi = await this.substrateApi.isReady;
|
|
401
401
|
const binaryAmount = new _util.BN(amount);
|
|
402
402
|
if (!selectedTarget) {
|
|
403
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
403
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
|
|
404
404
|
}
|
|
405
405
|
const dappParam = (0, _utilCrypto.isEthereumAddress)(selectedTarget) ? {
|
|
406
406
|
Evm: selectedTarget
|
|
@@ -416,7 +416,7 @@ class AstarNativeStakingPoolHandler extends _basePara.default {
|
|
|
416
416
|
/* Other action */
|
|
417
417
|
|
|
418
418
|
async handleYieldCancelUnstake(params) {
|
|
419
|
-
return Promise.reject(new _TransactionError.TransactionError(
|
|
419
|
+
return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
|
|
420
420
|
}
|
|
421
421
|
async handleYieldWithdraw(address, unstakingInfo) {
|
|
422
422
|
const chainApi = await this.substrateApi.isReady;
|