@subwallet/extension-base 1.1.2-0 → 1.1.3-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.
Files changed (110) hide show
  1. package/background/KoniTypes.d.ts +32 -4
  2. package/background/KoniTypes.js +2 -1
  3. package/cjs/background/KoniTypes.js +4 -2
  4. package/cjs/constants/i18n.js +10 -2
  5. package/cjs/koni/api/dotsama/transfer.js +6 -2
  6. package/cjs/koni/api/nft/acala_nft/index.js +0 -2
  7. package/cjs/koni/api/nft/bit.country/index.js +49 -18
  8. package/cjs/koni/api/nft/config.js +5 -3
  9. package/cjs/koni/api/nft/evm_nft/index.js +0 -5
  10. package/cjs/koni/api/nft/index.js +2 -3
  11. package/cjs/koni/api/nft/karura_nft/index.js +0 -2
  12. package/cjs/koni/api/nft/rmrk_nft/index.js +0 -4
  13. package/cjs/koni/api/nft/statemine_nft/index.js +0 -2
  14. package/cjs/koni/api/nft/unique_nft/index.js +0 -5
  15. package/cjs/koni/api/nft/wasm_nft/index.js +0 -5
  16. package/cjs/koni/api/staking/bonding/amplitude.js +6 -6
  17. package/cjs/koni/api/staking/bonding/astar.js +6 -6
  18. package/cjs/koni/api/staking/bonding/paraChain.js +5 -5
  19. package/cjs/koni/api/staking/bonding/relayChain.js +24 -14
  20. package/cjs/koni/api/staking/bonding/utils.js +1 -7
  21. package/cjs/koni/api/xcm/xTokens.js +1 -1
  22. package/cjs/koni/background/cron.js +2 -37
  23. package/cjs/koni/background/handlers/Extension.js +206 -137
  24. package/cjs/koni/background/handlers/State.js +72 -84
  25. package/cjs/koni/background/subscription.js +6 -88
  26. package/cjs/packageInfo.js +1 -1
  27. package/cjs/services/chain-service/constants.js +8 -5
  28. package/cjs/services/chain-service/handler/SubstrateApi.js +8 -0
  29. package/cjs/services/chain-service/handler/manta/MantaPrivateHandler.js +1 -1
  30. package/cjs/services/chain-service/handler/manta/manta-extension-sdk-empty.js +13 -0
  31. package/cjs/services/chain-service/index.js +11 -6
  32. package/cjs/services/request-service/handler/PopupHandler.js +2 -2
  33. package/cjs/services/request-service/helper/index.js +2 -26
  34. package/cjs/services/setting-service/constants.js +16 -6
  35. package/cjs/services/storage-service/DatabaseService.js +3 -0
  36. package/cjs/services/storage-service/db-stores/Metadata.js +1 -1
  37. package/cjs/services/storage-service/db-stores/Nft.js +3 -0
  38. package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -2
  39. package/cjs/services/wallet-connect-service/constants.js +8 -5
  40. package/cjs/services/wallet-connect-service/index.js +50 -36
  41. package/cjs/utils/environment.js +32 -2
  42. package/cjs/utils/index.js +33 -5
  43. package/cjs/utils/registry.js +25 -0
  44. package/cjs/utils/translate.js +11 -0
  45. package/constants/i18n.d.ts +2 -1
  46. package/constants/i18n.js +8 -1
  47. package/koni/api/dotsama/transfer.js +6 -2
  48. package/koni/api/nft/acala_nft/index.js +0 -2
  49. package/koni/api/nft/bit.country/index.d.ts +1 -0
  50. package/koni/api/nft/bit.country/index.js +50 -19
  51. package/koni/api/nft/config.d.ts +2 -1
  52. package/koni/api/nft/config.js +2 -1
  53. package/koni/api/nft/evm_nft/index.js +0 -4
  54. package/koni/api/nft/index.d.ts +1 -1
  55. package/koni/api/nft/index.js +2 -3
  56. package/koni/api/nft/karura_nft/index.js +0 -2
  57. package/koni/api/nft/nft.d.ts +0 -1
  58. package/koni/api/nft/rmrk_nft/index.js +0 -4
  59. package/koni/api/nft/statemine_nft/index.js +0 -2
  60. package/koni/api/nft/unique_nft/index.js +0 -5
  61. package/koni/api/nft/wasm_nft/index.js +0 -4
  62. package/koni/api/staking/bonding/amplitude.js +6 -6
  63. package/koni/api/staking/bonding/astar.js +6 -6
  64. package/koni/api/staking/bonding/paraChain.js +5 -5
  65. package/koni/api/staking/bonding/relayChain.js +24 -14
  66. package/koni/api/staking/bonding/utils.js +1 -7
  67. package/koni/api/xcm/xTokens.js +1 -1
  68. package/koni/background/cron.d.ts +0 -5
  69. package/koni/background/cron.js +4 -39
  70. package/koni/background/handlers/Extension.d.ts +4 -0
  71. package/koni/background/handlers/Extension.js +97 -32
  72. package/koni/background/handlers/State.d.ts +8 -7
  73. package/koni/background/handlers/State.js +72 -84
  74. package/koni/background/subscription.d.ts +1 -4
  75. package/koni/background/subscription.js +9 -88
  76. package/package.json +22 -6
  77. package/packageInfo.js +1 -1
  78. package/services/chain-service/constants.d.ts +2 -0
  79. package/services/chain-service/constants.js +8 -5
  80. package/services/chain-service/handler/SubstrateApi.js +8 -0
  81. package/services/chain-service/handler/manta/MantaPrivateHandler.d.ts +1 -1
  82. package/services/chain-service/handler/manta/MantaPrivateHandler.js +1 -1
  83. package/services/chain-service/handler/manta/manta-extension-sdk-empty.d.ts +4 -0
  84. package/services/chain-service/handler/manta/manta-extension-sdk-empty.js +5 -0
  85. package/services/chain-service/index.d.ts +2 -1
  86. package/services/chain-service/index.js +11 -6
  87. package/services/request-service/handler/PopupHandler.js +1 -1
  88. package/services/request-service/helper/index.d.ts +0 -2
  89. package/services/request-service/helper/index.js +0 -23
  90. package/services/request-service/types.d.ts +0 -1
  91. package/services/setting-service/constants.d.ts +6 -1
  92. package/services/setting-service/constants.js +10 -5
  93. package/services/storage-service/DatabaseService.d.ts +1 -0
  94. package/services/storage-service/DatabaseService.js +3 -0
  95. package/services/storage-service/db-stores/Metadata.js +1 -1
  96. package/services/storage-service/db-stores/Nft.d.ts +1 -0
  97. package/services/storage-service/db-stores/Nft.js +3 -0
  98. package/services/storage-service/db-stores/NominatorMetadata.js +3 -2
  99. package/services/wallet-connect-service/constants.d.ts +2 -1
  100. package/services/wallet-connect-service/constants.js +5 -3
  101. package/services/wallet-connect-service/index.d.ts +0 -1
  102. package/services/wallet-connect-service/index.js +50 -36
  103. package/utils/environment.d.ts +4 -1
  104. package/utils/environment.js +28 -1
  105. package/utils/index.d.ts +3 -0
  106. package/utils/index.js +6 -2
  107. package/utils/registry.d.ts +4 -0
  108. package/utils/registry.js +18 -0
  109. package/utils/translate.d.ts +1 -0
  110. package/utils/translate.js +4 -0
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getOS = exports.extractMetadata = void 0;
6
+ exports.extractMetadata = void 0;
7
7
  var _extensionChains = require("@subwallet/extension-chains");
8
8
  var _defaults = require("@polkadot/networks/defaults");
9
9
  // Copyright 2019-2022 @subwallet/extension-base authors & contributors
@@ -55,28 +55,4 @@ const extractMetadata = store => {
55
55
  });
56
56
  });
57
57
  };
58
- exports.extractMetadata = extractMetadata;
59
- const getOS = () => {
60
- var _window$navigator, _window$navigator$use;
61
- const userAgent = window.navigator.userAgent;
62
- // @ts-ignore
63
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-assignment
64
- const platform = ((_window$navigator = window.navigator) === null || _window$navigator === void 0 ? void 0 : (_window$navigator$use = _window$navigator.userAgentData) === null || _window$navigator$use === void 0 ? void 0 : _window$navigator$use.platform) || window.navigator.platform;
65
- const macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'];
66
- const windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'];
67
- const iosPlatforms = ['iPhone', 'iPad', 'iPod'];
68
- let os = 'Unknown';
69
- if (macosPlatforms.indexOf(platform) !== -1) {
70
- os = 'Mac OS';
71
- } else if (iosPlatforms.indexOf(platform) !== -1) {
72
- os = 'iOS';
73
- } else if (windowsPlatforms.indexOf(platform) !== -1) {
74
- os = 'Windows';
75
- } else if (/Android/.test(userAgent)) {
76
- os = 'Android';
77
- } else if (/Linux/.test(platform)) {
78
- os = 'Linux';
79
- }
80
- return os;
81
- };
82
- exports.getOS = getOS;
58
+ exports.extractMetadata = extractMetadata;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.DEFAULT_THEME = exports.DEFAULT_SETTING = exports.DEFAULT_NOTIFICATION_TYPE = exports.DEFAULT_CHAIN_PATROL_ENABLE = exports.DEFAULT_AUTO_LOCK_TIME = void 0;
6
+ exports.DEFAULT_THEME = exports.DEFAULT_SHOW_ZERO_BALANCE = exports.DEFAULT_SHOW_BALANCE = exports.DEFAULT_SETTING = exports.DEFAULT_NOTIFICATION_TYPE = exports.DEFAULT_LANGUAGE = exports.DEFAULT_CHAIN_PATROL_ENABLE = exports.DEFAULT_CAMERA_ENABLE = exports.DEFAULT_AUTO_LOCK_TIME = exports.DEFAULT_ALL_LOGO = void 0;
7
7
  var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
8
8
  // Copyright 2019-2022 @subwallet/extension-koni authors & contributors
9
9
  // SPDX-License-Identifier: Apache-2.0
@@ -16,14 +16,24 @@ const DEFAULT_AUTO_LOCK_TIME = 15;
16
16
  exports.DEFAULT_AUTO_LOCK_TIME = DEFAULT_AUTO_LOCK_TIME;
17
17
  const DEFAULT_CHAIN_PATROL_ENABLE = false;
18
18
  exports.DEFAULT_CHAIN_PATROL_ENABLE = DEFAULT_CHAIN_PATROL_ENABLE;
19
+ const DEFAULT_LANGUAGE = 'en';
20
+ exports.DEFAULT_LANGUAGE = DEFAULT_LANGUAGE;
21
+ const DEFAULT_SHOW_ZERO_BALANCE = true;
22
+ exports.DEFAULT_SHOW_ZERO_BALANCE = DEFAULT_SHOW_ZERO_BALANCE;
23
+ const DEFAULT_SHOW_BALANCE = false;
24
+ exports.DEFAULT_SHOW_BALANCE = DEFAULT_SHOW_BALANCE;
25
+ const DEFAULT_ALL_LOGO = '';
26
+ exports.DEFAULT_ALL_LOGO = DEFAULT_ALL_LOGO;
27
+ const DEFAULT_CAMERA_ENABLE = false;
28
+ exports.DEFAULT_CAMERA_ENABLE = DEFAULT_CAMERA_ENABLE;
19
29
  const DEFAULT_SETTING = {
20
- // language: 'en',
30
+ language: DEFAULT_LANGUAGE,
21
31
  browserConfirmationType: DEFAULT_NOTIFICATION_TYPE,
22
- // isShowZeroBalance: true,
23
- isShowBalance: false,
24
- accountAllLogo: '',
32
+ isShowZeroBalance: DEFAULT_SHOW_ZERO_BALANCE,
33
+ isShowBalance: DEFAULT_SHOW_BALANCE,
34
+ accountAllLogo: DEFAULT_ALL_LOGO,
25
35
  theme: DEFAULT_THEME,
26
- camera: false,
36
+ camera: DEFAULT_CAMERA_ENABLE,
27
37
  timeAutoLock: DEFAULT_AUTO_LOCK_TIME,
28
38
  enableChainPatrol: DEFAULT_CHAIN_PATROL_ENABLE
29
39
  };
@@ -178,6 +178,9 @@ class DatabaseService {
178
178
  removeNfts(chain, address, collectionId, nftIds) {
179
179
  return this.stores.nft.removeNfts(chain, address, collectionId, nftIds);
180
180
  }
181
+ removeNftsByAddress(address) {
182
+ return this.stores.nft.removeNftsByAddress([address]);
183
+ }
181
184
 
182
185
  // Chain
183
186
  async updateChainStore(item) {
@@ -17,7 +17,7 @@ class MetadataStore extends _BaseStoreWithChain.default {
17
17
  return this.table.put(metadata, chain);
18
18
  }
19
19
  getMetadataByGenesisHash(genesisHash) {
20
- return this.table.where('[genesisHash]').equals([genesisHash]).first();
20
+ return this.table.get(genesisHash);
21
21
  }
22
22
  updateMetadataByGenesisHash(genesisHash, metadata) {
23
23
  return this.table.put(metadata, genesisHash);
@@ -55,6 +55,9 @@ class NftStore extends _BaseStoreWithAddressAndChain.default {
55
55
  collectionId
56
56
  }).filter(item => nftIds.includes(item.id || '')).delete();
57
57
  }
58
+ removeNftsByAddress(addresses) {
59
+ return this.table.where('address').anyOfIgnoreCase(addresses).delete();
60
+ }
58
61
 
59
62
  // reformatCollectionIds (items: INft[]) {
60
63
  // return items.map((item) => {
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
+ var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
8
9
  var _BaseStoreWithAddressAndChain = _interopRequireDefault(require("@subwallet/extension-base/services/storage-service/db-stores/BaseStoreWithAddressAndChain"));
9
10
  var _dexie = require("dexie");
10
11
  // Copyright 2019-2022 @subwallet/extension-base authors & contributors
@@ -12,7 +13,7 @@ var _dexie = require("dexie");
12
13
 
13
14
  class NominatorMetadataStore extends _BaseStoreWithAddressAndChain.default {
14
15
  async getAll() {
15
- return this.table.toArray();
16
+ return this.table.filter(item => item.status !== _KoniTypes.StakingStatus.NOT_STAKING).toArray();
16
17
  }
17
18
  subscribeByAddresses(addresses) {
18
19
  return (0, _dexie.liveQuery)(() => this.getByAddress(addresses));
@@ -21,7 +22,7 @@ class NominatorMetadataStore extends _BaseStoreWithAddressAndChain.default {
21
22
  return (0, _dexie.liveQuery)(() => this.getAll());
22
23
  }
23
24
  getByAddress(addresses) {
24
- return this.table.where('address').anyOfIgnoreCase(addresses).toArray();
25
+ return this.table.where('address').anyOfIgnoreCase(addresses).and(item => item.status !== _KoniTypes.StakingStatus.NOT_STAKING).toArray();
25
26
  }
26
27
  async removeByAddress(address) {
27
28
  return this.table.where('address').anyOfIgnoreCase(address).delete();
@@ -3,24 +3,27 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.WALLET_CONNECT_SUPPORT_NAMESPACES = exports.WALLET_CONNECT_SUPPORTED_METHODS = exports.WALLET_CONNECT_REQUEST_KEY = exports.WALLET_CONNECT_POLKADOT_NAMESPACE = exports.WALLET_CONNECT_EIP155_NAMESPACE = exports.RELAY_URL = exports.PROJECT_ID = exports.DEFAULT_WALLET_CONNECT_OPTIONS = exports.ALL_WALLET_CONNECT_EVENT = void 0;
6
+ exports.WALLET_CONNECT_SUPPORT_NAMESPACES = exports.WALLET_CONNECT_SUPPORTED_METHODS = exports.WALLET_CONNECT_REQUEST_KEY = exports.WALLET_CONNECT_POLKADOT_NAMESPACE = exports.WALLET_CONNECT_EIP155_NAMESPACE = exports.RELAY_URL = exports.PROJECT_ID_MOBILE = exports.PROJECT_ID_EXTENSION = exports.DEFAULT_WALLET_CONNECT_OPTIONS = exports.ALL_WALLET_CONNECT_EVENT = void 0;
7
7
  var _types = require("@subwallet/extension-base/services/wallet-connect-service/types");
8
+ var _utils = require("@subwallet/extension-base/utils");
8
9
  // Copyright 2019-2022 @subwallet/extension-base authors & contributors
9
10
  // SPDX-License-Identifier: Apache-2.0
10
11
 
11
- const PROJECT_ID = '6da34c0b48164d27681924dd9a46d6be';
12
- exports.PROJECT_ID = PROJECT_ID;
12
+ const PROJECT_ID_EXTENSION = '6da34c0b48164d27681924dd9a46d6be';
13
+ exports.PROJECT_ID_EXTENSION = PROJECT_ID_EXTENSION;
14
+ const PROJECT_ID_MOBILE = '6da34c0b48164d27681924dd9a46d6be';
15
+ exports.PROJECT_ID_MOBILE = PROJECT_ID_MOBILE;
13
16
  const RELAY_URL = 'wss://relay.walletconnect.com';
14
17
  exports.RELAY_URL = RELAY_URL;
15
18
  const DEFAULT_WALLET_CONNECT_OPTIONS = {
16
19
  logger: 'debug',
17
- projectId: PROJECT_ID,
20
+ projectId: !_utils.isMobile ? PROJECT_ID_EXTENSION : PROJECT_ID_MOBILE,
18
21
  relayUrl: RELAY_URL,
19
22
  metadata: {
20
23
  name: 'SubWallet',
21
24
  description: 'React Wallet for WalletConnect',
22
25
  url: 'https://www.subwallet.app/',
23
- icons: ['https://1570604715-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Lh39Kwxa1xxZM9WX_Bs%2Ficon%2FiETEgi1ykXUQRW63vPnL%2FLogo%3DWhite%2C%20Background%3DGradient.jpg?alt=media&token=46c5dafa-ce09-4576-bcd9-a5c796786f1a']
26
+ icons: ['https://raw.githubusercontent.com/Koniverse/SubWallet-Extension/master/packages/extension-koni/public/images/icon-128.png']
24
27
  }
25
28
  };
26
29
  exports.DEFAULT_WALLET_CONNECT_OPTIONS = DEFAULT_WALLET_CONNECT_OPTIONS;
@@ -24,6 +24,7 @@ var _eip155RequestHandler = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default
24
24
  var _koniState = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("koniState");
25
25
  var _client = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("client");
26
26
  var _option = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("option");
27
+ var _haveData = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("haveData");
27
28
  var _initClient = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("initClient");
28
29
  var _updateSessions = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("updateSessions");
29
30
  var _onSessionProposal = /*#__PURE__*/(0, _classPrivateFieldLooseKey2.default)("onSessionProposal");
@@ -55,6 +56,10 @@ class WalletConnectService {
55
56
  Object.defineProperty(this, _initClient, {
56
57
  value: _initClient2
57
58
  });
59
+ Object.defineProperty(this, _haveData, {
60
+ get: _get_haveData,
61
+ set: void 0
62
+ });
58
63
  Object.defineProperty(this, _requestService, {
59
64
  writable: true,
60
65
  value: void 0
@@ -104,66 +109,64 @@ class WalletConnectService {
104
109
  (0, _classPrivateFieldLooseBase2.default)(this, _option)[_option] = Object.assign({}, (0, _classPrivateFieldLooseBase2.default)(this, _option)[_option], newOption);
105
110
  await (0, _classPrivateFieldLooseBase2.default)(this, _initClient)[_initClient]();
106
111
  }
107
- getSessions() {
108
- var _classPrivateFieldLoo3;
109
- (0, _classPrivateFieldLooseBase2.default)(this, _checkClient)[_checkClient]();
110
- console.log((_classPrivateFieldLoo3 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo3 === void 0 ? void 0 : _classPrivateFieldLoo3.session.values);
111
- }
112
112
  async connect(uri) {
113
- var _classPrivateFieldLoo4;
113
+ var _classPrivateFieldLoo3;
114
+ if (!(0, _classPrivateFieldLooseBase2.default)(this, _haveData)[_haveData]) {
115
+ await (0, _classPrivateFieldLooseBase2.default)(this, _initClient)[_initClient](true);
116
+ }
114
117
  (0, _classPrivateFieldLooseBase2.default)(this, _checkClient)[_checkClient]();
115
- await ((_classPrivateFieldLoo4 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo4 === void 0 ? void 0 : _classPrivateFieldLoo4.pair({
118
+ await ((_classPrivateFieldLoo3 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo3 === void 0 ? void 0 : _classPrivateFieldLoo3.pair({
116
119
  uri
117
120
  }));
118
121
  }
119
122
  async approveSession(result) {
120
- var _classPrivateFieldLoo5;
123
+ var _classPrivateFieldLoo4;
121
124
  (0, _classPrivateFieldLooseBase2.default)(this, _checkClient)[_checkClient]();
122
- await ((_classPrivateFieldLoo5 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo5 === void 0 ? void 0 : _classPrivateFieldLoo5.approve(result));
125
+ await ((_classPrivateFieldLoo4 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo4 === void 0 ? void 0 : _classPrivateFieldLoo4.approve(result));
123
126
  (0, _classPrivateFieldLooseBase2.default)(this, _updateSessions)[_updateSessions]();
124
127
  }
125
128
  async rejectSession(id) {
126
- var _classPrivateFieldLoo6;
129
+ var _classPrivateFieldLoo5;
127
130
  (0, _classPrivateFieldLooseBase2.default)(this, _checkClient)[_checkClient]();
128
- await ((_classPrivateFieldLoo6 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo6 === void 0 ? void 0 : _classPrivateFieldLoo6.reject({
131
+ await ((_classPrivateFieldLoo5 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo5 === void 0 ? void 0 : _classPrivateFieldLoo5.reject({
129
132
  id: id,
130
133
  reason: (0, _utils2.getSdkError)('USER_REJECTED')
131
134
  }));
132
135
  }
133
136
  async responseRequest(response) {
134
- var _classPrivateFieldLoo7;
137
+ var _classPrivateFieldLoo6;
135
138
  (0, _classPrivateFieldLooseBase2.default)(this, _checkClient)[_checkClient]();
136
- await ((_classPrivateFieldLoo7 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo7 === void 0 ? void 0 : _classPrivateFieldLoo7.respond(response));
139
+ await ((_classPrivateFieldLoo6 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo6 === void 0 ? void 0 : _classPrivateFieldLoo6.respond(response));
137
140
  }
138
141
  async resetWallet(resetAll) {
139
- var _classPrivateFieldLoo8, _classPrivateFieldLoo10, _classPrivateFieldLoo12;
142
+ var _classPrivateFieldLoo7, _classPrivateFieldLoo9, _classPrivateFieldLoo11;
140
143
  (0, _classPrivateFieldLooseBase2.default)(this, _removeListener)[_removeListener]();
141
144
 
142
145
  // Disconnect session
143
- const sessions = ((_classPrivateFieldLoo8 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo8 === void 0 ? void 0 : _classPrivateFieldLoo8.session.values) || [];
146
+ const sessions = ((_classPrivateFieldLoo7 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo7 === void 0 ? void 0 : _classPrivateFieldLoo7.session.values) || [];
144
147
  for (const session of sessions) {
145
- var _classPrivateFieldLoo9;
146
- (_classPrivateFieldLoo9 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo9 === void 0 ? void 0 : _classPrivateFieldLoo9.disconnect({
148
+ var _classPrivateFieldLoo8;
149
+ (_classPrivateFieldLoo8 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo8 === void 0 ? void 0 : _classPrivateFieldLoo8.disconnect({
147
150
  topic: session.topic,
148
151
  reason: (0, _utils2.getSdkError)('USER_DISCONNECTED')
149
152
  }).catch(console.error);
150
153
  }
151
154
 
152
155
  // Disconnect pair
153
- const pairs = ((_classPrivateFieldLoo10 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo10 === void 0 ? void 0 : _classPrivateFieldLoo10.pairing.values) || [];
156
+ const pairs = ((_classPrivateFieldLoo9 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo9 === void 0 ? void 0 : _classPrivateFieldLoo9.pairing.values) || [];
154
157
  for (const pair of pairs) {
155
- var _classPrivateFieldLoo11;
156
- (_classPrivateFieldLoo11 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo11 === void 0 ? void 0 : _classPrivateFieldLoo11.disconnect({
158
+ var _classPrivateFieldLoo10;
159
+ (_classPrivateFieldLoo10 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo10 === void 0 ? void 0 : _classPrivateFieldLoo10.disconnect({
157
160
  topic: pair.topic,
158
161
  reason: (0, _utils2.getSdkError)('USER_DISCONNECTED')
159
162
  }).catch(console.error);
160
163
  }
161
- const keys = (await ((_classPrivateFieldLoo12 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo12 === void 0 ? void 0 : _classPrivateFieldLoo12.core.storage.getKeys())) || [];
164
+ const keys = (await ((_classPrivateFieldLoo11 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo11 === void 0 ? void 0 : _classPrivateFieldLoo11.core.storage.getKeys())) || [];
162
165
  const deleteKeys = resetAll ? keys : keys.filter(key => key.startsWith('wc@'));
163
166
  for (const key of deleteKeys) {
164
167
  try {
165
- var _classPrivateFieldLoo13;
166
- await ((_classPrivateFieldLoo13 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo13 === void 0 ? void 0 : _classPrivateFieldLoo13.core.storage.removeItem(key));
168
+ var _classPrivateFieldLoo12;
169
+ await ((_classPrivateFieldLoo12 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo12 === void 0 ? void 0 : _classPrivateFieldLoo12.core.storage.removeItem(key));
167
170
  } catch (e) {
168
171
  console.error(e);
169
172
  }
@@ -171,8 +174,8 @@ class WalletConnectService {
171
174
  await (0, _classPrivateFieldLooseBase2.default)(this, _initClient)[_initClient]();
172
175
  }
173
176
  async disconnect(topic) {
174
- var _classPrivateFieldLoo14;
175
- await ((_classPrivateFieldLoo14 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo14 === void 0 ? void 0 : _classPrivateFieldLoo14.disconnect({
177
+ var _classPrivateFieldLoo13;
178
+ await ((_classPrivateFieldLoo13 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo13 === void 0 ? void 0 : _classPrivateFieldLoo13.disconnect({
176
179
  topic: topic,
177
180
  reason: (0, _utils2.getSdkError)('USER_DISCONNECTED')
178
181
  }));
@@ -180,9 +183,20 @@ class WalletConnectService {
180
183
  }
181
184
  }
182
185
  exports.default = WalletConnectService;
183
- async function _initClient2() {
186
+ function _get_haveData() {
187
+ const sessionStorage = localStorage.getItem('wc@2:client:0.3//session');
188
+ const pairingStorage = localStorage.getItem('wc@2:core:0.3//pairing');
189
+ const subscriptionStorage = localStorage.getItem('wc@2:core:0.3//subscription');
190
+ const sessions = sessionStorage ? JSON.parse(sessionStorage) : [];
191
+ const pairings = pairingStorage ? JSON.parse(pairingStorage) : [];
192
+ const subscriptions = subscriptionStorage ? JSON.parse(subscriptionStorage) : [];
193
+ return !!sessions.length || !!pairings.length || !!subscriptions.length;
194
+ }
195
+ async function _initClient2(force) {
184
196
  (0, _classPrivateFieldLooseBase2.default)(this, _removeListener)[_removeListener]();
185
- (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client] = await _signClient.default.init((0, _classPrivateFieldLooseBase2.default)(this, _option)[_option]);
197
+ if (force || (0, _classPrivateFieldLooseBase2.default)(this, _haveData)[_haveData]) {
198
+ (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client] = await _signClient.default.init((0, _classPrivateFieldLooseBase2.default)(this, _option)[_option]);
199
+ }
186
200
  (0, _classPrivateFieldLooseBase2.default)(this, _updateSessions)[_updateSessions]();
187
201
  (0, _classPrivateFieldLooseBase2.default)(this, _createListener)[_createListener]();
188
202
  }
@@ -252,18 +266,18 @@ function _onSessionRequest2(requestEvent) {
252
266
  }
253
267
  }
254
268
  function _createListener2() {
255
- var _classPrivateFieldLoo15, _classPrivateFieldLoo16, _classPrivateFieldLoo17, _classPrivateFieldLoo18, _classPrivateFieldLoo19, _classPrivateFieldLoo20;
256
- (_classPrivateFieldLoo15 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo15 === void 0 ? void 0 : _classPrivateFieldLoo15.on('session_proposal', (0, _classPrivateFieldLooseBase2.default)(this, _onSessionProposal)[_onSessionProposal].bind(this));
257
- (_classPrivateFieldLoo16 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo16 === void 0 ? void 0 : _classPrivateFieldLoo16.on('session_request', (0, _classPrivateFieldLooseBase2.default)(this, _onSessionRequest)[_onSessionRequest].bind(this));
258
- (_classPrivateFieldLoo17 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo17 === void 0 ? void 0 : _classPrivateFieldLoo17.on('session_ping', data => console.log('ping', data));
259
- (_classPrivateFieldLoo18 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo18 === void 0 ? void 0 : _classPrivateFieldLoo18.on('session_event', data => console.log('event', data));
260
- (_classPrivateFieldLoo19 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo19 === void 0 ? void 0 : _classPrivateFieldLoo19.on('session_update', data => console.log('update', data));
261
- (_classPrivateFieldLoo20 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo20 === void 0 ? void 0 : _classPrivateFieldLoo20.on('session_delete', (0, _classPrivateFieldLooseBase2.default)(this, _updateSessions)[_updateSessions].bind(this));
269
+ var _classPrivateFieldLoo14, _classPrivateFieldLoo15, _classPrivateFieldLoo16, _classPrivateFieldLoo17, _classPrivateFieldLoo18, _classPrivateFieldLoo19;
270
+ (_classPrivateFieldLoo14 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo14 === void 0 ? void 0 : _classPrivateFieldLoo14.on('session_proposal', (0, _classPrivateFieldLooseBase2.default)(this, _onSessionProposal)[_onSessionProposal].bind(this));
271
+ (_classPrivateFieldLoo15 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo15 === void 0 ? void 0 : _classPrivateFieldLoo15.on('session_request', (0, _classPrivateFieldLooseBase2.default)(this, _onSessionRequest)[_onSessionRequest].bind(this));
272
+ (_classPrivateFieldLoo16 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo16 === void 0 ? void 0 : _classPrivateFieldLoo16.on('session_ping', data => console.log('ping', data));
273
+ (_classPrivateFieldLoo17 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo17 === void 0 ? void 0 : _classPrivateFieldLoo17.on('session_event', data => console.log('event', data));
274
+ (_classPrivateFieldLoo18 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo18 === void 0 ? void 0 : _classPrivateFieldLoo18.on('session_update', data => console.log('update', data));
275
+ (_classPrivateFieldLoo19 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo19 === void 0 ? void 0 : _classPrivateFieldLoo19.on('session_delete', (0, _classPrivateFieldLooseBase2.default)(this, _updateSessions)[_updateSessions].bind(this));
262
276
  }
263
277
  function _removeListener2() {
264
278
  _constants.ALL_WALLET_CONNECT_EVENT.forEach(event => {
265
- var _classPrivateFieldLoo21;
266
- (_classPrivateFieldLoo21 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo21 === void 0 ? void 0 : _classPrivateFieldLoo21.removeAllListeners(event);
279
+ var _classPrivateFieldLoo20;
280
+ (_classPrivateFieldLoo20 = (0, _classPrivateFieldLooseBase2.default)(this, _client)[_client]) === null || _classPrivateFieldLoo20 === void 0 ? void 0 : _classPrivateFieldLoo20.removeAllListeners(event);
267
281
  });
268
282
  }
269
283
  function _checkClient2() {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.RuntimeInfo = void 0;
6
+ exports.getOS = exports.TARGET_ENV = exports.RuntimeInfo = exports.MODULE_SUPPORT = void 0;
7
7
  var _KoniTypes = require("../background/KoniTypes");
8
8
  // Copyright 2019-2022 @polkadot/extension authors & contributors
9
9
  // SPDX-License-Identifier: Apache-2.0
@@ -63,4 +63,34 @@ function detectRuntimeEnvironment() {
63
63
  }
64
64
  }
65
65
  const RuntimeInfo = detectRuntimeEnvironment();
66
- exports.RuntimeInfo = RuntimeInfo;
66
+ exports.RuntimeInfo = RuntimeInfo;
67
+ const getOS = () => {
68
+ var _window$navigator, _window$navigator$use;
69
+ const userAgent = window.navigator.userAgent;
70
+ // @ts-ignore
71
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access,@typescript-eslint/no-unsafe-assignment
72
+ const platform = ((_window$navigator = window.navigator) === null || _window$navigator === void 0 ? void 0 : (_window$navigator$use = _window$navigator.userAgentData) === null || _window$navigator$use === void 0 ? void 0 : _window$navigator$use.platform) || window.navigator.platform;
73
+ const macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'];
74
+ const windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'];
75
+ const iosPlatforms = ['iPhone', 'iPad', 'iPod'];
76
+ let os = 'Unknown';
77
+ if (macosPlatforms.indexOf(platform) !== -1) {
78
+ os = 'Mac OS';
79
+ } else if (iosPlatforms.indexOf(platform) !== -1) {
80
+ os = 'iOS';
81
+ } else if (windowsPlatforms.indexOf(platform) !== -1) {
82
+ os = 'Windows';
83
+ } else if (/Android/.test(userAgent)) {
84
+ os = 'Android';
85
+ } else if (/Linux/.test(platform)) {
86
+ os = 'Linux';
87
+ }
88
+ return os;
89
+ };
90
+ exports.getOS = getOS;
91
+ const TARGET_ENV = process.env.TARGET_ENV || 'extension';
92
+ exports.TARGET_ENV = TARGET_ENV;
93
+ const MODULE_SUPPORT = {
94
+ MANTA_ZK: TARGET_ENV === 'extension'
95
+ };
96
+ exports.MODULE_SUPPORT = MODULE_SUPPORT;
@@ -9,6 +9,7 @@ var _exportNames = {
9
9
  nonEmptyArr: true,
10
10
  isEmptyArray: true,
11
11
  isAccountAll: true,
12
+ isMobile: true,
12
13
  reformatAddress: true,
13
14
  filterAddressByNetworkKey: true,
14
15
  categoryAddresses: true,
@@ -55,7 +56,7 @@ exports.hexToStr = hexToStr;
55
56
  exports.hexToUTF16 = hexToUTF16;
56
57
  exports.inJestTest = inJestTest;
57
58
  exports.isAccountAll = isAccountAll;
58
- exports.isEmptyArray = exports.isDef = exports.isAddressesEqual = void 0;
59
+ exports.isMobile = exports.isEmptyArray = exports.isDef = exports.isAddressesEqual = void 0;
59
60
  exports.isSameAddress = isSameAddress;
60
61
  exports.isUrl = isUrl;
61
62
  exports.isValidSubstrateAddress = exports.isValidProvider = void 0;
@@ -70,6 +71,7 @@ exports.utf16ToString = utf16ToString;
70
71
  exports.waitTimeout = waitTimeout;
71
72
  var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
72
73
  var _constants = require("@subwallet/extension-base/constants");
74
+ var _environment = require("@subwallet/extension-base/utils/environment");
73
75
  var _util = require("@polkadot/util");
74
76
  var _utilCrypto = require("@polkadot/util-crypto");
75
77
  var _canDerive = require("./canDerive");
@@ -85,15 +87,15 @@ Object.keys(_array).forEach(function (key) {
85
87
  }
86
88
  });
87
89
  });
88
- var _environment = require("./environment");
89
- Object.keys(_environment).forEach(function (key) {
90
+ var _environment2 = require("./environment");
91
+ Object.keys(_environment2).forEach(function (key) {
90
92
  if (key === "default" || key === "__esModule") return;
91
93
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
92
- if (key in exports && exports[key] === _environment[key]) return;
94
+ if (key in exports && exports[key] === _environment2[key]) return;
93
95
  Object.defineProperty(exports, key, {
94
96
  enumerable: true,
95
97
  get: function () {
96
- return _environment[key];
98
+ return _environment2[key];
97
99
  }
98
100
  });
99
101
  });
@@ -109,6 +111,30 @@ Object.keys(_lazy).forEach(function (key) {
109
111
  }
110
112
  });
111
113
  });
114
+ var _registry = require("./registry");
115
+ Object.keys(_registry).forEach(function (key) {
116
+ if (key === "default" || key === "__esModule") return;
117
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
118
+ if (key in exports && exports[key] === _registry[key]) return;
119
+ Object.defineProperty(exports, key, {
120
+ enumerable: true,
121
+ get: function () {
122
+ return _registry[key];
123
+ }
124
+ });
125
+ });
126
+ var _translate = require("./translate");
127
+ Object.keys(_translate).forEach(function (key) {
128
+ if (key === "default" || key === "__esModule") return;
129
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
130
+ if (key in exports && exports[key] === _translate[key]) return;
131
+ Object.defineProperty(exports, key, {
132
+ enumerable: true,
133
+ get: function () {
134
+ return _translate[key];
135
+ }
136
+ });
137
+ });
112
138
  // Copyright 2019-2022 @subwallet/extension-base authors & contributors
113
139
  // SPDX-License-Identifier: Apache-2.0
114
140
 
@@ -123,6 +149,8 @@ exports.isEmptyArray = isEmptyArray;
123
149
  function isAccountAll(address) {
124
150
  return address === _constants.ALL_ACCOUNT_KEY;
125
151
  }
152
+ const isMobile = _KoniTypes.MobileOS.includes((0, _environment.getOS)());
153
+ exports.isMobile = isMobile;
126
154
  function reformatAddress(address) {
127
155
  let networkPrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 42;
128
156
  let isEthereum = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createRegistry = void 0;
7
+ var _utils = require("@subwallet/extension-base/services/chain-service/utils");
8
+ var _types = require("@polkadot/types");
9
+ // Copyright 2019-2022 @subwallet/extension-base
10
+ // SPDX-License-Identifier: Apache-2.0
11
+
12
+ const createRegistry = (chain, rawMetadata) => {
13
+ var _chain$substrateInfo;
14
+ const registry = new _types.TypeRegistry();
15
+ const metadata = new _types.Metadata(registry, rawMetadata);
16
+ registry.setMetadata(metadata);
17
+ const tokenInfo = (0, _utils._getChainNativeTokenBasicInfo)(chain);
18
+ registry.setChainProperties(registry.createType('ChainProperties', {
19
+ ss58Format: ((_chain$substrateInfo = chain.substrateInfo) === null || _chain$substrateInfo === void 0 ? void 0 : _chain$substrateInfo.addressPrefix) || 42,
20
+ tokenDecimals: tokenInfo.decimals,
21
+ tokenSymbol: tokenInfo.symbol
22
+ }));
23
+ return registry;
24
+ };
25
+ exports.createRegistry = createRegistry;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.detectTranslate = void 0;
7
+ // Copyright 2019-2022 @subwallet/extension-base
8
+ // SPDX-License-Identifier: Apache-2.0
9
+
10
+ const detectTranslate = message => message;
11
+ exports.detectTranslate = detectTranslate;
@@ -1,2 +1,3 @@
1
- import { LanguageOptionType } from '@subwallet/extension-base/background/KoniTypes';
1
+ import { LanguageOptionType, LanguageType } from '@subwallet/extension-base/background/KoniTypes';
2
2
  export declare const languageOptions: LanguageOptionType[];
3
+ export declare const ENABLE_LANGUAGES: LanguageType[];
package/constants/i18n.js CHANGED
@@ -4,9 +4,15 @@
4
4
  export const languageOptions = [{
5
5
  text: 'English',
6
6
  value: 'en'
7
+ }, {
8
+ text: 'Tiếng Việt',
9
+ value: 'vi'
7
10
  }, {
8
11
  text: '汉语',
9
12
  value: 'zh'
13
+ }, {
14
+ text: '日本語',
15
+ value: 'ja'
10
16
  }, {
11
17
  text: 'Français',
12
18
  value: 'fr'
@@ -22,4 +28,5 @@ export const languageOptions = [{
22
28
  }, {
23
29
  text: 'اردو',
24
30
  value: 'ur'
25
- }];
31
+ }];
32
+ export const ENABLE_LANGUAGES = ['en', 'vi', 'zh'];
@@ -140,6 +140,12 @@ export const createTransferExtrinsic = async ({
140
140
  } else if (value) {
141
141
  transfer = api.tx.tokens.transfer(to, _getTokenOnChainInfo(tokenInfo) || _getTokenOnChainAssetId(tokenInfo), new BN(value));
142
142
  }
143
+ } else if (_TRANSFER_CHAIN_GROUP.pendulum.includes(networkKey) && isTxTokensSupported) {
144
+ if (transferAll) {
145
+ transfer = api.tx.tokens.transferAll(to, _getTokenOnChainInfo(tokenInfo), false);
146
+ } else if (value) {
147
+ transfer = api.tx.tokens.transfer(to, _getTokenOnChainInfo(tokenInfo), new BN(value));
148
+ }
143
149
  } else if (_TRANSFER_CHAIN_GROUP.genshiro.includes(networkKey)
144
150
  // && isTxEqBalancesSupported
145
151
  ) {
@@ -161,8 +167,6 @@ export const createTransferExtrinsic = async ({
161
167
  // }
162
168
  } else if (_TRANSFER_CHAIN_GROUP.sora_substrate.includes(networkKey) && isTxAssetsSupported) {
163
169
  transfer = api.tx.assets.transfer(_getTokenOnChainAssetId(tokenInfo), to, value);
164
- } else if (_TRANSFER_CHAIN_GROUP.avail.includes(networkKey)) {
165
- /* empty */
166
170
  } else if (isTxBalancesSupported && _isNativeToken(tokenInfo)) {
167
171
  if (transferAll) {
168
172
  transfer = api.tx.balances.transferAll(to, false);
@@ -75,7 +75,6 @@ export class AcalaNftApi extends BaseNftApi {
75
75
  const assetIds = await this.getNfts([address]);
76
76
  try {
77
77
  if (!assetIds || assetIds.length === 0) {
78
- params.cleanUpNfts(this.chain, address, [], [], true);
79
78
  return;
80
79
  }
81
80
  const collectionIds = [];
@@ -111,7 +110,6 @@ export class AcalaNftApi extends BaseNftApi {
111
110
  params.updateItem(this.chain, parsedNft, address);
112
111
  params.updateCollection(this.chain, parsedCollection);
113
112
  }));
114
- params.cleanUpNfts(this.chain, address, collectionIds, nftIds);
115
113
  } catch (e) {
116
114
  console.error(`${this.chain}`, e);
117
115
  }
@@ -6,6 +6,7 @@ export declare class BitCountryNftApi extends BaseNftApi {
6
6
  private getNfts;
7
7
  private getTokenDetails;
8
8
  private getCollectionDetails;
9
+ private parseMetadata;
9
10
  fetchNfts(params: HandleNftParams): Promise<number>;
10
11
  handleNft(address: string, params: HandleNftParams): Promise<void>;
11
12
  handleNfts(params: HandleNftParams): Promise<void>;