@subwallet/extension-base 1.1.63-0 → 1.1.64-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.
@@ -13,6 +13,6 @@ const packageInfo = {
13
13
  name: '@subwallet/extension-base',
14
14
  path: typeof __dirname === 'string' ? __dirname : 'auto',
15
15
  type: 'cjs',
16
- version: '1.1.63-0'
16
+ version: '1.1.64-0'
17
17
  };
18
18
  exports.packageInfo = packageInfo;
@@ -725,21 +725,25 @@ class ChainService {
725
725
  }
726
726
  this.lockChainInfoMap = true;
727
727
  const initPromises = chainSlugs.map(async chainSlug => {
728
- var _chainStateMap$chainS;
729
- const chainInfo = chainInfoMap[chainSlug];
730
- const currentState = (_chainStateMap$chainS = chainStateMap[chainSlug]) === null || _chainStateMap$chainS === void 0 ? void 0 : _chainStateMap$chainS.active;
731
- if (!currentState) {
732
- this.dbService.updateChainStore({
733
- ...chainInfo,
734
- active: true,
735
- currentProvider: chainStateMap[chainSlug].currentProvider,
736
- manualTurnOff: !!chainStateMap[chainSlug].manualTurnOff
737
- }).catch(console.error);
738
- chainStateMap[chainSlug].active = true;
739
- await this.initApiForChain(chainInfo);
740
- this.eventService.emit('chain.updateState', chainSlug);
741
- needUpdate = true;
742
- }
728
+ // Add try catch to prevent one chain error stop the whole process
729
+ try {
730
+ var _chainStateMap$chainS;
731
+ const chainInfo = chainInfoMap[chainSlug];
732
+ const currentState = (_chainStateMap$chainS = chainStateMap[chainSlug]) === null || _chainStateMap$chainS === void 0 ? void 0 : _chainStateMap$chainS.active;
733
+ if (!currentState) {
734
+ // Enable chain success then update chain state
735
+ await this.initApiForChain(chainInfo);
736
+ this.dbService.updateChainStore({
737
+ ...chainInfo,
738
+ active: true,
739
+ currentProvider: chainStateMap[chainSlug].currentProvider,
740
+ manualTurnOff: !!chainStateMap[chainSlug].manualTurnOff
741
+ }).catch(console.error);
742
+ chainStateMap[chainSlug].active = true;
743
+ this.eventService.emit('chain.updateState', chainSlug);
744
+ needUpdate = true;
745
+ }
746
+ } catch (e) {}
743
747
  });
744
748
  await Promise.all(initPromises);
745
749
  this.lockChainInfoMap = false;
@@ -14,10 +14,7 @@ class MigrateTransactionHistoryBySymbol extends _Base.default {
14
14
  const state = this.state;
15
15
  try {
16
16
  const changeSlugsMap = {
17
- 'moonbeam-LOCAL-xcaUSD': 'moonbeam-LOCAL-xcaSEED',
18
- 'calamari-LOCAL-AUSD': 'calamari-LOCAL-aSEED',
19
- 'moonriver-LOCAL-xcaSeed': 'moonriver-LOCAL-xcaSEED',
20
- 'bifrost-LOCAL-KUSD': 'bifrost-LOCAL-aSEED'
17
+ 'commune-NATIVE-C': 'commune-NATIVE-COMAI'
21
18
  };
22
19
  const allTxs = [];
23
20
  await Promise.all(Object.entries(changeSlugsMap).map(async (_ref, i) => {
@@ -13,10 +13,7 @@ class MigrateAssetSetting extends _Base.default {
13
13
  async run() {
14
14
  try {
15
15
  const changeSlugsMap = {
16
- 'moonbeam-LOCAL-xcaUSD': 'moonbeam-LOCAL-xcaSEED',
17
- 'calamari-LOCAL-AUSD': 'calamari-LOCAL-aSEED',
18
- 'moonriver-LOCAL-xcaSeed': 'moonriver-LOCAL-xcaSEED',
19
- 'bifrost-LOCAL-KUSD': 'bifrost-LOCAL-aSEED'
16
+ 'commune-NATIVE-C': 'commune-NATIVE-COMAI'
20
17
  };
21
18
  const assetSetting = await this.state.chainService.getAssetSettings();
22
19
  const migratedAssetSetting = {};
@@ -56,8 +56,8 @@ var _default = {
56
56
  '1.1.28-01': _MigrateEarningVersion.default,
57
57
  '1.1.41-01': _DeleteChainStaking.default,
58
58
  '1.1.46-01': _AutoEnableSomeTokens.default,
59
- '1.1.53-01': _MigrateAssetSetting.default,
60
- '1.1.53-02': _MigrateTransactionHistoryBySymbol.default
59
+ '1.1.62-01': _MigrateAssetSetting.default,
60
+ '1.1.62-02': _MigrateTransactionHistoryBySymbol.default
61
61
  // [`${EVERYTIME}-1.1.42-02`]: MigrateTransactionHistoryBySymbol
62
62
  // [`${EVERYTIME}-1`]: AutoEnableChainsTokens
63
63
  };
@@ -891,7 +891,7 @@ class TransactionService {
891
891
  maxFeePerGas: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.maxFeePerGas).toString(16)),
892
892
  maxPriorityFeePerGas: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.maxPriorityFeePerGas).toString(16)),
893
893
  gasLimit: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.gas).toString(16)),
894
- to: transaction.to !== undefined ? transaction.to : '',
894
+ to: transaction.to,
895
895
  value: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.value).toString(16)),
896
896
  data: transaction.data,
897
897
  chainId: (0, _utils._getEvmChainId)(chainInfo),
@@ -903,7 +903,7 @@ class TransactionService {
903
903
  nonce: (_transaction$nonce2 = transaction.nonce) !== null && _transaction$nonce2 !== void 0 ? _transaction$nonce2 : 0,
904
904
  gasPrice: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.gasPrice).toString(16)),
905
905
  gasLimit: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.gas).toString(16)),
906
- to: transaction.to !== undefined ? transaction.to : '',
906
+ to: transaction.to,
907
907
  value: (0, _ethereumjsUtil.addHexPrefix)((0, _utils4.anyNumberToBN)(transaction.value).toString(16)),
908
908
  data: transaction.data,
909
909
  chainId: (0, _utils._getEvmChainId)(chainInfo),
@@ -978,7 +978,7 @@ class TransactionService {
978
978
  maxFeePerGas: (0, _utils4.anyNumberToBN)(payload.maxFeePerGas).toNumber(),
979
979
  maxPriorityFeePerGas: (0, _utils4.anyNumberToBN)(payload.maxPriorityFeePerGas).toNumber(),
980
980
  gasLimit: (0, _utils4.anyNumberToBN)(payload.gas).toNumber(),
981
- to: payload.to !== undefined ? payload.to : '',
981
+ to: payload.to,
982
982
  value: (0, _utils4.anyNumberToBN)(payload.value).toNumber(),
983
983
  data: payload.data,
984
984
  chainId: payload.chainId
@@ -33,6 +33,9 @@ function getBlockExplorerAccountRoute(explorerLink) {
33
33
  if (explorerLink.includes('explorer.polimec.org')) {
34
34
  return 'account';
35
35
  }
36
+ if (explorerLink.includes('invarch.statescan.io')) {
37
+ return '#/accounts';
38
+ }
36
39
  return 'address';
37
40
  }
38
41
  function getBlockExplorerTxRoute(chainInfo) {
@@ -42,6 +45,9 @@ function getBlockExplorerTxRoute(chainInfo) {
42
45
  if (['aventus', 'deeper_network'].includes(chainInfo.slug)) {
43
46
  return 'transaction';
44
47
  }
48
+ if (['invarch'].includes(chainInfo.slug)) {
49
+ return '#/extrinsics';
50
+ }
45
51
  return 'extrinsic';
46
52
  }
47
53
  function getExplorerLink(chainInfo, value, type) {
@@ -100,7 +100,7 @@ const parseResult = (type, input, name) => {
100
100
  }
101
101
  };
102
102
  const isContractAddress = async (address, evmApi) => {
103
- if (!evmApi) {
103
+ if (!evmApi || !address) {
104
104
  return false;
105
105
  } else {
106
106
  const code = await evmApi.api.eth.getCode(address);
package/package.json CHANGED
@@ -17,7 +17,7 @@
17
17
  "./cjs/detectPackage.js"
18
18
  ],
19
19
  "type": "module",
20
- "version": "1.1.63-0",
20
+ "version": "1.1.64-0",
21
21
  "main": "./cjs/index.js",
22
22
  "module": "./index.js",
23
23
  "types": "./index.d.ts",
@@ -1869,11 +1869,11 @@
1869
1869
  "@reduxjs/toolkit": "^1.9.1",
1870
1870
  "@sora-substrate/type-definitions": "^1.17.7",
1871
1871
  "@substrate/connect": "^0.8.9",
1872
- "@subwallet/chain-list": "0.2.59",
1873
- "@subwallet/extension-base": "^1.1.63-0",
1874
- "@subwallet/extension-chains": "^1.1.63-0",
1875
- "@subwallet/extension-dapp": "^1.1.63-0",
1876
- "@subwallet/extension-inject": "^1.1.63-0",
1872
+ "@subwallet/chain-list": "0.2.60",
1873
+ "@subwallet/extension-base": "^1.1.64-0",
1874
+ "@subwallet/extension-chains": "^1.1.64-0",
1875
+ "@subwallet/extension-dapp": "^1.1.64-0",
1876
+ "@subwallet/extension-inject": "^1.1.64-0",
1877
1877
  "@subwallet/keyring": "^0.1.5",
1878
1878
  "@subwallet/ui-keyring": "^0.1.5",
1879
1879
  "@walletconnect/sign-client": "^2.8.4",
package/packageInfo.js CHANGED
@@ -7,5 +7,5 @@ export const packageInfo = {
7
7
  name: '@subwallet/extension-base',
8
8
  path: (import.meta && import.meta.url) ? new URL(import.meta.url).pathname.substring(0, new URL(import.meta.url).pathname.lastIndexOf('/') + 1) : 'auto',
9
9
  type: 'esm',
10
- version: '1.1.63-0'
10
+ version: '1.1.64-0'
11
11
  };
@@ -703,21 +703,25 @@ export class ChainService {
703
703
  }
704
704
  this.lockChainInfoMap = true;
705
705
  const initPromises = chainSlugs.map(async chainSlug => {
706
- var _chainStateMap$chainS;
707
- const chainInfo = chainInfoMap[chainSlug];
708
- const currentState = (_chainStateMap$chainS = chainStateMap[chainSlug]) === null || _chainStateMap$chainS === void 0 ? void 0 : _chainStateMap$chainS.active;
709
- if (!currentState) {
710
- this.dbService.updateChainStore({
711
- ...chainInfo,
712
- active: true,
713
- currentProvider: chainStateMap[chainSlug].currentProvider,
714
- manualTurnOff: !!chainStateMap[chainSlug].manualTurnOff
715
- }).catch(console.error);
716
- chainStateMap[chainSlug].active = true;
717
- await this.initApiForChain(chainInfo);
718
- this.eventService.emit('chain.updateState', chainSlug);
719
- needUpdate = true;
720
- }
706
+ // Add try catch to prevent one chain error stop the whole process
707
+ try {
708
+ var _chainStateMap$chainS;
709
+ const chainInfo = chainInfoMap[chainSlug];
710
+ const currentState = (_chainStateMap$chainS = chainStateMap[chainSlug]) === null || _chainStateMap$chainS === void 0 ? void 0 : _chainStateMap$chainS.active;
711
+ if (!currentState) {
712
+ // Enable chain success then update chain state
713
+ await this.initApiForChain(chainInfo);
714
+ this.dbService.updateChainStore({
715
+ ...chainInfo,
716
+ active: true,
717
+ currentProvider: chainStateMap[chainSlug].currentProvider,
718
+ manualTurnOff: !!chainStateMap[chainSlug].manualTurnOff
719
+ }).catch(console.error);
720
+ chainStateMap[chainSlug].active = true;
721
+ this.eventService.emit('chain.updateState', chainSlug);
722
+ needUpdate = true;
723
+ }
724
+ } catch (e) {}
721
725
  });
722
726
  await Promise.all(initPromises);
723
727
  this.lockChainInfoMap = false;
@@ -7,10 +7,7 @@ export default class MigrateTransactionHistoryBySymbol extends BaseMigrationJob
7
7
  const state = this.state;
8
8
  try {
9
9
  const changeSlugsMap = {
10
- 'moonbeam-LOCAL-xcaUSD': 'moonbeam-LOCAL-xcaSEED',
11
- 'calamari-LOCAL-AUSD': 'calamari-LOCAL-aSEED',
12
- 'moonriver-LOCAL-xcaSeed': 'moonriver-LOCAL-xcaSEED',
13
- 'bifrost-LOCAL-KUSD': 'bifrost-LOCAL-aSEED'
10
+ 'commune-NATIVE-C': 'commune-NATIVE-COMAI'
14
11
  };
15
12
  const allTxs = [];
16
13
  await Promise.all(Object.entries(changeSlugsMap).map(async ([oldSlug, newSlug], i) => {
@@ -6,10 +6,7 @@ export default class MigrateAssetSetting extends BaseMigrationJob {
6
6
  async run() {
7
7
  try {
8
8
  const changeSlugsMap = {
9
- 'moonbeam-LOCAL-xcaUSD': 'moonbeam-LOCAL-xcaSEED',
10
- 'calamari-LOCAL-AUSD': 'calamari-LOCAL-aSEED',
11
- 'moonriver-LOCAL-xcaSeed': 'moonriver-LOCAL-xcaSEED',
12
- 'bifrost-LOCAL-KUSD': 'bifrost-LOCAL-aSEED'
9
+ 'commune-NATIVE-C': 'commune-NATIVE-COMAI'
13
10
  };
14
11
  const assetSetting = await this.state.chainService.getAssetSettings();
15
12
  const migratedAssetSetting = {};
@@ -48,8 +48,8 @@ export default {
48
48
  '1.1.28-01': MigrateEarningVersion,
49
49
  '1.1.41-01': DeleteChainStaking,
50
50
  '1.1.46-01': AutoEnableSomeTokens,
51
- '1.1.53-01': MigrateAssetSetting,
52
- '1.1.53-02': MigrateTransactionHistoryBySymbol
51
+ '1.1.62-01': MigrateAssetSetting,
52
+ '1.1.62-02': MigrateTransactionHistoryBySymbol
53
53
  // [`${EVERYTIME}-1.1.42-02`]: MigrateTransactionHistoryBySymbol
54
54
  // [`${EVERYTIME}-1`]: AutoEnableChainsTokens
55
55
  };
@@ -878,7 +878,7 @@ export default class TransactionService {
878
878
  maxFeePerGas: addHexPrefix(anyNumberToBN(transaction.maxFeePerGas).toString(16)),
879
879
  maxPriorityFeePerGas: addHexPrefix(anyNumberToBN(transaction.maxPriorityFeePerGas).toString(16)),
880
880
  gasLimit: addHexPrefix(anyNumberToBN(transaction.gas).toString(16)),
881
- to: transaction.to !== undefined ? transaction.to : '',
881
+ to: transaction.to,
882
882
  value: addHexPrefix(anyNumberToBN(transaction.value).toString(16)),
883
883
  data: transaction.data,
884
884
  chainId: _getEvmChainId(chainInfo),
@@ -890,7 +890,7 @@ export default class TransactionService {
890
890
  nonce: (_transaction$nonce2 = transaction.nonce) !== null && _transaction$nonce2 !== void 0 ? _transaction$nonce2 : 0,
891
891
  gasPrice: addHexPrefix(anyNumberToBN(transaction.gasPrice).toString(16)),
892
892
  gasLimit: addHexPrefix(anyNumberToBN(transaction.gas).toString(16)),
893
- to: transaction.to !== undefined ? transaction.to : '',
893
+ to: transaction.to,
894
894
  value: addHexPrefix(anyNumberToBN(transaction.value).toString(16)),
895
895
  data: transaction.data,
896
896
  chainId: _getEvmChainId(chainInfo),
@@ -964,7 +964,7 @@ export default class TransactionService {
964
964
  maxFeePerGas: anyNumberToBN(payload.maxFeePerGas).toNumber(),
965
965
  maxPriorityFeePerGas: anyNumberToBN(payload.maxPriorityFeePerGas).toNumber(),
966
966
  gasLimit: anyNumberToBN(payload.gas).toNumber(),
967
- to: payload.to !== undefined ? payload.to : '',
967
+ to: payload.to,
968
968
  value: anyNumberToBN(payload.value).toNumber(),
969
969
  data: payload.data,
970
970
  chainId: payload.chainId
@@ -25,6 +25,9 @@ function getBlockExplorerAccountRoute(explorerLink) {
25
25
  if (explorerLink.includes('explorer.polimec.org')) {
26
26
  return 'account';
27
27
  }
28
+ if (explorerLink.includes('invarch.statescan.io')) {
29
+ return '#/accounts';
30
+ }
28
31
  return 'address';
29
32
  }
30
33
  function getBlockExplorerTxRoute(chainInfo) {
@@ -34,6 +37,9 @@ function getBlockExplorerTxRoute(chainInfo) {
34
37
  if (['aventus', 'deeper_network'].includes(chainInfo.slug)) {
35
38
  return 'transaction';
36
39
  }
40
+ if (['invarch'].includes(chainInfo.slug)) {
41
+ return '#/extrinsics';
42
+ }
37
43
  return 'extrinsic';
38
44
  }
39
45
  export function getExplorerLink(chainInfo, value, type) {
@@ -6,7 +6,7 @@ export interface QrState {
6
6
  isEthereum: boolean;
7
7
  }
8
8
  export interface Web3TransactionBase {
9
- to: string;
9
+ to?: string;
10
10
  gasPrice: number;
11
11
  maxFeePerGas: number;
12
12
  maxPriorityFeePerGas: number;
@@ -94,7 +94,7 @@ const parseResult = (type, input, name) => {
94
94
  }
95
95
  };
96
96
  export const isContractAddress = async (address, evmApi) => {
97
- if (!evmApi) {
97
+ if (!evmApi || !address) {
98
98
  return false;
99
99
  } else {
100
100
  const code = await evmApi.api.eth.getCode(address);