@subwallet/extension-base 1.1.53-beta.0 → 1.1.54-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 (96) hide show
  1. package/background/KoniTypes.d.ts +1 -9
  2. package/background/KoniTypes.js +0 -1
  3. package/background/errors/TransactionError.js +0 -9
  4. package/cjs/background/KoniTypes.js +0 -1
  5. package/cjs/background/errors/TransactionError.js +0 -9
  6. package/cjs/koni/api/staking/bonding/utils.js +6 -35
  7. package/cjs/koni/background/handlers/Extension.js +0 -85
  8. package/cjs/koni/background/handlers/State.js +5 -25
  9. package/cjs/packageInfo.js +1 -1
  10. package/cjs/services/balance-service/index.js +3 -6
  11. package/cjs/services/chain-service/constants.js +1 -1
  12. package/cjs/services/chain-service/index.js +18 -43
  13. package/cjs/services/chain-service/utils/index.js +2 -7
  14. package/cjs/services/chain-service/utils/patch.js +1 -1
  15. package/cjs/services/earning-service/constants/chains.js +2 -4
  16. package/cjs/services/earning-service/handlers/native-staking/astar.js +3 -4
  17. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +3 -22
  18. package/cjs/services/transaction-service/index.js +0 -20
  19. package/cjs/services/transaction-service/utils.js +0 -6
  20. package/cjs/types/fee/index.js +1 -27
  21. package/cjs/utils/index.js +0 -12
  22. package/koni/api/staking/bonding/utils.d.ts +1 -3
  23. package/koni/api/staking/bonding/utils.js +6 -32
  24. package/koni/background/handlers/Extension.d.ts +0 -5
  25. package/koni/background/handlers/Extension.js +0 -85
  26. package/koni/background/handlers/State.d.ts +0 -2
  27. package/koni/background/handlers/State.js +6 -26
  28. package/package.json +7 -64
  29. package/packageInfo.js +1 -1
  30. package/services/balance-service/index.js +3 -6
  31. package/services/base/types.d.ts +0 -4
  32. package/services/chain-service/constants.js +1 -1
  33. package/services/chain-service/index.d.ts +0 -4
  34. package/services/chain-service/index.js +0 -24
  35. package/services/chain-service/utils/index.d.ts +5 -6
  36. package/services/chain-service/utils/index.js +2 -5
  37. package/services/chain-service/utils/patch.js +1 -1
  38. package/services/earning-service/constants/chains.d.ts +0 -1
  39. package/services/earning-service/constants/chains.js +0 -1
  40. package/services/earning-service/handlers/native-staking/astar.js +3 -4
  41. package/services/earning-service/handlers/native-staking/relay-chain.js +5 -24
  42. package/services/event-service/types.d.ts +0 -1
  43. package/services/transaction-service/index.js +0 -20
  44. package/services/transaction-service/utils.d.ts +0 -2
  45. package/services/transaction-service/utils.js +2 -6
  46. package/types/fee/index.d.ts +49 -2
  47. package/types/fee/index.js +1 -5
  48. package/types/yield/info/chain/target.d.ts +0 -2
  49. package/types/yield/info/pallet.d.ts +0 -4
  50. package/utils/index.d.ts +0 -1
  51. package/utils/index.js +1 -2
  52. package/background/errors/SwapError.d.ts +0 -6
  53. package/background/errors/SwapError.js +0 -57
  54. package/cjs/background/errors/SwapError.js +0 -64
  55. package/cjs/koni/api/dotsama/balance.js +0 -464
  56. package/cjs/koni/api/nft/ordinal_nft/utils.js +0 -41
  57. package/cjs/services/balance-service/helpers/subscribe/balance.js +0 -140
  58. package/cjs/services/chain-service/utils.js +0 -506
  59. package/cjs/services/migration-service/scripts/MigrateEthProvider.js +0 -17
  60. package/cjs/services/migration-service/scripts/MigratePioneerProvider.js +0 -17
  61. package/cjs/services/migration-service/scripts/MigrateProvider.js +0 -29
  62. package/cjs/services/storage-service/index.js +0 -241
  63. package/cjs/services/swap-service/handler/base-handler.js +0 -171
  64. package/cjs/services/swap-service/handler/chainflip-handler.js +0 -407
  65. package/cjs/services/swap-service/handler/hydradx-handler.js +0 -444
  66. package/cjs/services/swap-service/index.js +0 -249
  67. package/cjs/services/swap-service/utils.js +0 -126
  68. package/cjs/types/balance.js +0 -1
  69. package/cjs/types/fee/evm.js +0 -1
  70. package/cjs/types/fee/fee.js +0 -70
  71. package/cjs/types/service-base.js +0 -1
  72. package/cjs/types/swap/index.js +0 -50
  73. package/cjs/types.js +0 -1
  74. package/cjs/utils/address.js +0 -34
  75. package/cjs/utils/keyring.js +0 -57
  76. package/cjs/utils/swap.js +0 -78
  77. package/services/swap-service/handler/base-handler.d.ts +0 -38
  78. package/services/swap-service/handler/base-handler.js +0 -162
  79. package/services/swap-service/handler/chainflip-handler.d.ts +0 -30
  80. package/services/swap-service/handler/chainflip-handler.js +0 -399
  81. package/services/swap-service/handler/hydradx-handler.d.ts +0 -36
  82. package/services/swap-service/handler/hydradx-handler.js +0 -435
  83. package/services/swap-service/index.d.ts +0 -32
  84. package/services/swap-service/index.js +0 -240
  85. package/services/swap-service/utils.d.ts +0 -18
  86. package/services/swap-service/utils.js +0 -105
  87. package/types/fee/evm.d.ts +0 -49
  88. package/types/fee/evm.js +0 -1
  89. package/types/fee/fee.d.ts +0 -32
  90. package/types/fee/fee.js +0 -63
  91. package/types/service-base.d.ts +0 -10
  92. package/types/service-base.js +0 -1
  93. package/types/swap/index.d.ts +0 -166
  94. package/types/swap/index.js +0 -41
  95. package/utils/swap.d.ts +0 -3
  96. package/utils/swap.js +0 -70
@@ -8,7 +8,6 @@ import { CrowdloanContributionsResponse } from '@subwallet/extension-base/servic
8
8
  import { SWTransactionResponse, SWTransactionResult } from '@subwallet/extension-base/services/transaction-service/types';
9
9
  import { WalletConnectNotSupportRequest, WalletConnectSessionRequest } from '@subwallet/extension-base/services/wallet-connect-service/types';
10
10
  import { BalanceJson, BuyServiceInfo, BuyTokenInfo, EarningRewardHistoryItem, EarningRewardJson, EarningStatus, HandleYieldStepParams, LeavePoolAdditionalData, NominationPoolInfo, OptimalYieldPath, OptimalYieldPathParams, RequestEarlyValidateYield, RequestGetYieldPoolTargets, RequestStakeCancelWithdrawal, RequestStakeClaimReward, RequestUnlockDotCheckCanMint, RequestUnlockDotSubscribeMintedData, RequestYieldLeave, RequestYieldStepSubmit, RequestYieldWithdrawal, ResponseEarlyValidateYield, ResponseGetYieldPoolTargets, SubmitYieldStepData, TokenApproveData, UnlockDotTransactionNft, UnstakingStatus, ValidateYieldProcessParams, YieldPoolInfo, YieldPositionInfo, YieldValidationStatus } from '@subwallet/extension-base/types';
11
- import { SwapErrorType, SwapPair, SwapQuoteResponse, SwapRequest, SwapRequestResult, SwapSubmitParams, SwapTxData, ValidateSwapProcessParams } from '@subwallet/extension-base/types/swap';
12
11
  import { InjectedAccount, InjectedAccountWithMeta, MetadataDefBase } from '@subwallet/extension-inject/types';
13
12
  import { KeyringPair$Json, KeyringPair$Meta } from '@subwallet/keyring/types';
14
13
  import { KeyringOptions } from '@subwallet/ui-keyring/options/types';
@@ -387,7 +386,6 @@ export declare enum ExtrinsicType {
387
386
  UNSTAKE_STDOT = "earn.unstake_stdot",
388
387
  UNSTAKE_VMANTA = "earn.unstake_vmanta",
389
388
  TOKEN_APPROVE = "evm.token_approve",
390
- SWAP = "swap",
391
389
  EVM_EXECUTE = "evm.execute",
392
390
  UNKNOWN = "unknown"
393
391
  }
@@ -429,7 +427,6 @@ export interface ExtrinsicDataTypeMap {
429
427
  [ExtrinsicType.TOKEN_APPROVE]: TokenApproveData;
430
428
  [ExtrinsicType.EVM_EXECUTE]: TransactionConfig;
431
429
  [ExtrinsicType.CROWDLOAN]: any;
432
- [ExtrinsicType.SWAP]: SwapTxData;
433
430
  [ExtrinsicType.UNKNOWN]: any;
434
431
  }
435
432
  export declare enum ExtrinsicStatus {
@@ -573,7 +570,7 @@ export declare enum TransferTxErrorType {
573
570
  TRANSFER_ERROR = "TRANSFER_ERROR",
574
571
  RECEIVER_NOT_ENOUGH_EXISTENTIAL_DEPOSIT = "RECEIVER_NOT_ENOUGH_EXISTENTIAL_DEPOSIT"
575
572
  }
576
- export declare type TransactionErrorType = BasicTxErrorType | TransferTxErrorType | StakingTxErrorType | YieldValidationStatus | SwapErrorType;
573
+ export declare type TransactionErrorType = BasicTxErrorType | TransferTxErrorType | StakingTxErrorType | YieldValidationStatus;
577
574
  export declare enum BasicTxWarningCode {
578
575
  NOT_ENOUGH_EXISTENTIAL_DEPOSIT = "notEnoughExistentialDeposit"
579
576
  }
@@ -1851,11 +1848,6 @@ export interface KoniRequestSignatures {
1851
1848
  'pri(database.export)': [null, string];
1852
1849
  'pri(database.import)': [string, boolean];
1853
1850
  'pri(database.exportJson)': [null, DexieExportJsonStructure];
1854
- 'pri(swapService.subscribePairs)': [null, SwapPair[], SwapPair[]];
1855
- 'pri(swapService.handleSwapRequest)': [SwapRequest, SwapRequestResult];
1856
- 'pri(swapService.handleSwapStep)': [SwapSubmitParams, SWTransactionResponse];
1857
- 'pri(swapService.getLatestQuote)': [SwapRequest, SwapQuoteResponse];
1858
- 'pri(swapService.validateSwapProcess)': [ValidateSwapProcessParams, TransactionError[]];
1859
1851
  }
1860
1852
  export interface ApplicationMetadataType {
1861
1853
  version: string;
@@ -95,7 +95,6 @@ export let ExtrinsicType;
95
95
  ExtrinsicType["UNSTAKE_STDOT"] = "earn.unstake_stdot";
96
96
  ExtrinsicType["UNSTAKE_VMANTA"] = "earn.unstake_vmanta";
97
97
  ExtrinsicType["TOKEN_APPROVE"] = "evm.token_approve";
98
- ExtrinsicType["SWAP"] = "swap";
99
98
  ExtrinsicType["EVM_EXECUTE"] = "evm.execute";
100
99
  ExtrinsicType["UNKNOWN"] = "unknown";
101
100
  })(ExtrinsicType || (ExtrinsicType = {}));
@@ -4,7 +4,6 @@
4
4
  import { SWError } from '@subwallet/extension-base/background/errors/SWError';
5
5
  import { BasicTxErrorType, StakingTxErrorType, TransferTxErrorType } from '@subwallet/extension-base/background/KoniTypes';
6
6
  import { YieldValidationStatus } from '@subwallet/extension-base/types';
7
- import { SwapErrorType } from '@subwallet/extension-base/types/swap';
8
7
  import { detectTranslate } from '@subwallet/extension-base/utils';
9
8
  import { t } from 'i18next';
10
9
 
@@ -100,14 +99,6 @@ const defaultErrorMap = {
100
99
  [YieldValidationStatus.NOT_ENOUGH_MIN_JOIN_POOL]: {
101
100
  message: detectTranslate('Not enough min earning amount'),
102
101
  code: undefined
103
- },
104
- [SwapErrorType.QUOTE_TIMEOUT]: {
105
- message: detectTranslate('Quote timeout'),
106
- code: undefined
107
- },
108
- [SwapErrorType.INVALID_RECIPIENT]: {
109
- message: detectTranslate('Invalid recipient'),
110
- code: undefined
111
102
  }
112
103
  };
113
104
  export class TransactionError extends SWError {
@@ -109,7 +109,6 @@ exports.ExtrinsicType = ExtrinsicType;
109
109
  ExtrinsicType["UNSTAKE_STDOT"] = "earn.unstake_stdot";
110
110
  ExtrinsicType["UNSTAKE_VMANTA"] = "earn.unstake_vmanta";
111
111
  ExtrinsicType["TOKEN_APPROVE"] = "evm.token_approve";
112
- ExtrinsicType["SWAP"] = "swap";
113
112
  ExtrinsicType["EVM_EXECUTE"] = "evm.execute";
114
113
  ExtrinsicType["UNKNOWN"] = "unknown";
115
114
  })(ExtrinsicType || (exports.ExtrinsicType = ExtrinsicType = {}));
@@ -7,7 +7,6 @@ exports.TransactionError = void 0;
7
7
  var _SWError = require("@subwallet/extension-base/background/errors/SWError");
8
8
  var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
9
9
  var _types = require("@subwallet/extension-base/types");
10
- var _swap = require("@subwallet/extension-base/types/swap");
11
10
  var _utils = require("@subwallet/extension-base/utils");
12
11
  var _i18next = require("i18next");
13
12
  // Copyright 2019-2022 @subwallet/extension-koni authors & contributors
@@ -105,14 +104,6 @@ const defaultErrorMap = {
105
104
  [_types.YieldValidationStatus.NOT_ENOUGH_MIN_JOIN_POOL]: {
106
105
  message: (0, _utils.detectTranslate)('Not enough min earning amount'),
107
106
  code: undefined
108
- },
109
- [_swap.SwapErrorType.QUOTE_TIMEOUT]: {
110
- message: (0, _utils.detectTranslate)('Quote timeout'),
111
- code: undefined
112
- },
113
- [_swap.SwapErrorType.INVALID_RECIPIENT]: {
114
- message: (0, _utils.detectTranslate)('Invalid recipient'),
115
- code: undefined
116
107
  }
117
108
  };
118
109
  class TransactionError extends _SWError.SWError {
@@ -24,9 +24,7 @@ exports.getParaCurrentInflation = getParaCurrentInflation;
24
24
  exports.getStakingAvailableActionsByChain = getStakingAvailableActionsByChain;
25
25
  exports.getStakingAvailableActionsByNominator = getStakingAvailableActionsByNominator;
26
26
  exports.getSupportedDaysByHistoryDepth = getSupportedDaysByHistoryDepth;
27
- exports.getTopValidatorByPoints = getTopValidatorByPoints;
28
27
  exports.getValidatorLabel = getValidatorLabel;
29
- exports.getValidatorPointsMap = getValidatorPointsMap;
30
28
  exports.getWithdrawalInfo = getWithdrawalInfo;
31
29
  exports.getYieldAvailableActionsByPosition = getYieldAvailableActionsByPosition;
32
30
  exports.getYieldAvailableActionsByType = getYieldAvailableActionsByType;
@@ -235,13 +233,13 @@ function getYieldAvailableActionsByPosition(yieldPosition, yieldPoolInfo, unclai
235
233
  const result = [];
236
234
  if ([_types.YieldPoolType.NATIVE_STAKING, _types.YieldPoolType.NOMINATION_POOL].includes(yieldPoolInfo.type)) {
237
235
  result.push(YieldAction.STAKE);
238
- const bnActiveStake = new _bignumber.default(yieldPosition.activeStake);
239
- if (yieldPosition.activeStake && bnActiveStake.gt('0')) {
236
+ const bnActiveStake = new _util.BN(yieldPosition.activeStake);
237
+ if (yieldPosition.activeStake && bnActiveStake.gt(_util.BN_ZERO)) {
240
238
  result.push(YieldAction.UNSTAKE);
241
239
  const isAstarNetwork = _constants2._STAKING_CHAIN_GROUP.astar.includes(yieldPosition.chain);
242
240
  const isAmplitudeNetwork = _constants2._STAKING_CHAIN_GROUP.amplitude.includes(yieldPosition.chain);
243
- const bnUnclaimedReward = new _bignumber.default(unclaimedReward || '0');
244
- if ((yieldPosition.type === _types.YieldPoolType.NOMINATION_POOL || isAmplitudeNetwork) && bnUnclaimedReward.gt('0') || isAstarNetwork) {
241
+ const bnUnclaimedReward = new _util.BN(unclaimedReward || '0');
242
+ if ((yieldPosition.type === _types.YieldPoolType.NOMINATION_POOL || isAmplitudeNetwork) && bnUnclaimedReward.gt(_util.BN_ZERO) || isAstarNetwork) {
245
243
  result.push(YieldAction.CLAIM_REWARD);
246
244
  }
247
245
  }
@@ -254,8 +252,8 @@ function getYieldAvailableActionsByPosition(yieldPosition, yieldPoolInfo, unclai
254
252
  }
255
253
  } else if (yieldPoolInfo.type === _types.YieldPoolType.LIQUID_STAKING) {
256
254
  result.push(YieldAction.START_EARNING);
257
- const activeBalance = new _bignumber.default(yieldPosition.activeStake);
258
- if (activeBalance.gt('0')) {
255
+ const activeBalance = new _util.BN(yieldPosition.activeStake || '0');
256
+ if (activeBalance.gt(_util.BN_ZERO)) {
259
257
  result.push(YieldAction.UNSTAKE);
260
258
  }
261
259
  const hasWithdrawal = yieldPosition.unstakings.some(unstakingInfo => unstakingInfo.status === _types.UnstakingStatus.CLAIMABLE);
@@ -389,33 +387,6 @@ function getSupportedDaysByHistoryDepth(erasPerDay, maxSupportedEras) {
389
387
  return 15;
390
388
  }
391
389
  }
392
- function getValidatorPointsMap(eraRewardMap) {
393
- // mapping store validator and totalPoints
394
- const validatorTotalPointsMap = {};
395
- Object.values(eraRewardMap).forEach(info => {
396
- const individual = info.individual;
397
- Object.entries(individual).forEach(_ref => {
398
- let [validator, rawPoints] = _ref;
399
- const points = rawPoints.replaceAll(',', '');
400
- if (!validatorTotalPointsMap[validator]) {
401
- validatorTotalPointsMap[validator] = new _bignumber.default(points);
402
- } else {
403
- validatorTotalPointsMap[validator] = validatorTotalPointsMap[validator].plus(points);
404
- }
405
- });
406
- });
407
- return validatorTotalPointsMap;
408
- }
409
- function getTopValidatorByPoints(validatorPointsList) {
410
- const sortValidatorPointsList = Object.fromEntries(Object.entries(validatorPointsList).sort((a, b) => a[1].minus(b[1]).toNumber()).reverse());
411
-
412
- // keep 50% first validator
413
- const entries = Object.entries(sortValidatorPointsList);
414
- const endIndex = Math.ceil(entries.length / 2);
415
- const top50PercentEntries = entries.slice(0, endIndex);
416
- const top50PercentRecord = Object.fromEntries(top50PercentEntries);
417
- return Object.keys(top50PercentRecord);
418
- }
419
390
  const getMinStakeErrorMessage = (chainInfo, bnMinStake) => {
420
391
  const tokenInfo = (0, _utils._getChainNativeTokenBasicInfo)(chainInfo);
421
392
  const number = (0, _number.formatNumber)(bnMinStake.toString(), tokenInfo.decimals || 0, _number.balanceFormatter);
@@ -4047,78 +4047,6 @@ class KoniExtension {
4047
4047
 
4048
4048
  /* Buy service */
4049
4049
 
4050
- /* Swap service */
4051
- async subscribeSwapPairs(id, port) {
4052
- const cb = (0, _subscriptions.createSubscription)(id, port);
4053
- let ready = false;
4054
- await this.#koniState.swapService.waitForStarted();
4055
- const callback = rs => {
4056
- if (ready) {
4057
- cb(rs);
4058
- }
4059
- };
4060
- const subscription = this.#koniState.swapService.subscribeSwapPairs(callback);
4061
- this.createUnsubscriptionHandle(id, subscription.unsubscribe);
4062
- port.onDisconnect.addListener(() => {
4063
- this.cancelSubscription(id);
4064
- });
4065
- ready = true;
4066
- return this.#koniState.swapService.getSwapPairs();
4067
- }
4068
- async handleSwapRequest(request) {
4069
- return this.#koniState.swapService.handleSwapRequest(request);
4070
- }
4071
- async getLatestSwapQuote(swapRequest) {
4072
- return this.#koniState.swapService.getLatestQuotes(swapRequest);
4073
- }
4074
- async validateSwapProcess(params) {
4075
- return this.#koniState.swapService.validateSwapProcess(params);
4076
- }
4077
- async handleSwapStep(inputData) {
4078
- const {
4079
- address,
4080
- process,
4081
- quote,
4082
- recipient
4083
- } = inputData;
4084
- if (!quote || !address || !process) {
4085
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)]);
4086
- }
4087
- const isLastStep = inputData.currentStep + 1 === process.steps.length;
4088
- const swapValidations = await this.#koniState.swapService.validateSwapProcess({
4089
- address,
4090
- process,
4091
- selectedQuote: quote,
4092
- recipient
4093
- });
4094
- if (swapValidations.length > 0) {
4095
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors(swapValidations);
4096
- }
4097
-
4098
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
4099
- const {
4100
- chainType,
4101
- extrinsic,
4102
- extrinsicType,
4103
- transferNativeAmount,
4104
- txChain,
4105
- txData
4106
- } = await this.#koniState.swapService.handleSwapProcess(inputData);
4107
- return await this.#koniState.transactionService.handleTransaction({
4108
- address,
4109
- chain: txChain,
4110
- transaction: extrinsic,
4111
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
4112
- data: txData,
4113
- extrinsicType,
4114
- // change this depends on step
4115
- chainType,
4116
- resolveOnDone: !isLastStep,
4117
- transferNativeAmount
4118
- });
4119
- }
4120
- /* Swap service */
4121
-
4122
4050
  // --------------------------------------------------------------
4123
4051
  // eslint-disable-next-line @typescript-eslint/require-await
4124
4052
  async handle(id, type, request, port) {
@@ -4648,19 +4576,6 @@ class KoniExtension {
4648
4576
  case 'pri(database.exportJson)':
4649
4577
  return this.#koniState.dbService.getExportJson();
4650
4578
  /* Database */
4651
-
4652
- /* Swap service */
4653
- case 'pri(swapService.subscribePairs)':
4654
- return this.subscribeSwapPairs(id, port);
4655
- case 'pri(swapService.handleSwapRequest)':
4656
- return this.handleSwapRequest(request);
4657
- case 'pri(swapService.getLatestQuote)':
4658
- return this.getLatestSwapQuote(request);
4659
- case 'pri(swapService.validateSwapProcess)':
4660
- return this.validateSwapProcess(request);
4661
- case 'pri(swapService.handleSwapStep)':
4662
- return this.handleSwapStep(request);
4663
- /* Swap service */
4664
4579
  // Default
4665
4580
  default:
4666
4581
  throw new Error(`Unable to handle message of type ${type}`);
@@ -32,7 +32,6 @@ var _SettingService = _interopRequireDefault(require("@subwallet/extension-base/
32
32
  var _DatabaseService = _interopRequireDefault(require("@subwallet/extension-base/services/storage-service/DatabaseService"));
33
33
  var _subscanService = require("@subwallet/extension-base/services/subscan-service");
34
34
  var _subscanChainMap = require("@subwallet/extension-base/services/subscan-service/subscan-chain-map");
35
- var _swapService = require("@subwallet/extension-base/services/swap-service");
36
35
  var _transactionService = _interopRequireDefault(require("@subwallet/extension-base/services/transaction-service"));
37
36
  var _walletConnectService = _interopRequireDefault(require("@subwallet/extension-base/services/wallet-connect-service"));
38
37
  var _AccountRef = _interopRequireDefault(require("@subwallet/extension-base/stores/AccountRef"));
@@ -112,7 +111,6 @@ class KoniState {
112
111
  this.transactionService = new _transactionService.default(this);
113
112
  this.earningService = new _service.default(this);
114
113
  this.feeService = new _service2.default(this);
115
- this.swapService = new _swapService.SwapService(this);
116
114
  this.subscription = new _subscription.KoniSubscription(this, this.dbService);
117
115
  this.cron = new _cron.KoniCron(this, this.subscription, this.dbService);
118
116
  this.logger = (0, _util.logger)('State');
@@ -236,7 +234,6 @@ class KoniState {
236
234
  this.eventService.emit('chain.ready', true);
237
235
  await this.balanceService.init();
238
236
  await this.earningService.init();
239
- await this.swapService.init();
240
237
  this.onReady();
241
238
  this.onAccountAdd();
242
239
  this.onAccountRemove();
@@ -1227,34 +1224,17 @@ class KoniState {
1227
1224
  maxFeePerGas: autoFormatNumber(transactionParams.maxFeePerGas),
1228
1225
  data: transactionParams.data
1229
1226
  };
1230
- const getTransactionGas = async () => {
1231
- try {
1232
- transaction.gas = await web3.eth.estimateGas({
1233
- ...transaction
1234
- });
1235
- } catch (e) {
1236
- // @ts-ignore
1237
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
1238
- throw new _EvmProviderError.EvmProviderError(_KoniTypes.EvmProviderErrorType.INVALID_PARAMS, e === null || e === void 0 ? void 0 : e.message);
1239
- }
1240
- };
1241
1227
 
1242
1228
  // Calculate transaction data
1243
1229
  try {
1244
- await Promise.race([getTransactionGas(), (0, _utils3.wait)(3000).then(async () => {
1245
- if (!transaction.gas) {
1246
- await this.chainService.initSingleApi(networkKey);
1247
- await getTransactionGas();
1248
- }
1249
- })]);
1230
+ transaction.gas = await web3.eth.estimateGas({
1231
+ ...transaction
1232
+ });
1250
1233
  } catch (e) {
1251
1234
  // @ts-ignore
1252
1235
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
1253
1236
  throw new _EvmProviderError.EvmProviderError(_KoniTypes.EvmProviderErrorType.INVALID_PARAMS, e === null || e === void 0 ? void 0 : e.message);
1254
1237
  }
1255
- if (!transaction.gas) {
1256
- throw new _EvmProviderError.EvmProviderError(_KoniTypes.EvmProviderErrorType.INVALID_PARAMS);
1257
- }
1258
1238
  let estimateGas;
1259
1239
 
1260
1240
  // TODO: Review, If not override, transaction maybe fail because fee too low
@@ -1439,7 +1419,7 @@ class KoniState {
1439
1419
  // Stopping services
1440
1420
  await Promise.all([this.cron.stop(), this.subscription.stop()]);
1441
1421
  await this.pauseAllNetworks(undefined, 'IDLE mode');
1442
- await Promise.all([this.historyService.stop(), this.priceService.stop(), this.balanceService.stop(), this.earningService.stop(), this.swapService.stop()]);
1422
+ await Promise.all([this.historyService.stop(), this.priceService.stop(), this.balanceService.stop(), this.earningService.stop()]);
1443
1423
 
1444
1424
  // Complete sleeping
1445
1425
  sleeping.resolve();
@@ -1472,7 +1452,7 @@ class KoniState {
1472
1452
  }
1473
1453
 
1474
1454
  // Start services
1475
- await Promise.all([this.cron.start(), this.subscription.start(), this.historyService.start(), this.priceService.start(), this.balanceService.start(), this.earningService.start(), this.swapService.start()]);
1455
+ await Promise.all([this.cron.start(), this.subscription.start(), this.historyService.start(), this.priceService.start(), this.balanceService.start(), this.earningService.start()]);
1476
1456
 
1477
1457
  // Complete starting
1478
1458
  starting.resolve();
@@ -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.53-0'
16
+ version: '1.1.54-0'
17
17
  };
18
18
  exports.packageInfo = packageInfo;
@@ -191,8 +191,7 @@ class BalanceService {
191
191
  const chainInfoMap = this.state.chainService.getChainInfoMap();
192
192
  const evmApiMap = this.state.chainService.getEvmApiMap();
193
193
  const substrateApiMap = this.state.chainService.getSubstrateApiMap();
194
- let unsub = _util.noop;
195
- unsub = (0, _helpers.subscribeBalance)([address], [chain], [tSlug], assetMap, chainInfoMap, substrateApiMap, evmApiMap, result => {
194
+ const unsub = (0, _helpers.subscribeBalance)([address], [chain], [tSlug], assetMap, chainInfoMap, substrateApiMap, evmApiMap, result => {
196
195
  const rs = result[0];
197
196
  if (rs.tokenSlug === tSlug) {
198
197
  hasError = false;
@@ -204,17 +203,15 @@ class BalanceService {
204
203
  if (callback) {
205
204
  callback(balance);
206
205
  } else {
207
- var _unsub;
208
206
  // Auto unsubscribe if no callback
209
- (_unsub = unsub) === null || _unsub === void 0 ? void 0 : _unsub();
207
+ unsub();
210
208
  }
211
209
  resolve([unsub, balance]);
212
210
  }
213
211
  });
214
212
  setTimeout(() => {
215
213
  if (hasError) {
216
- var _unsub2;
217
- (_unsub2 = unsub) === null || _unsub2 === void 0 ? void 0 : _unsub2();
214
+ unsub();
218
215
  reject(new Error((0, _i18next.t)('Failed to get balance. Please check your internet connection or change your network endpoint')));
219
216
  }
220
217
  }, 9999);
@@ -39,7 +39,7 @@ const _BALANCE_CHAIN_GROUP = {
39
39
  kintsugi: ['kintsugi', 'interlay', 'kintsugi_test', 'mangatax_para'],
40
40
  genshiro: ['genshiro_testnet', 'genshiro'],
41
41
  equilibrium_parachain: ['equilibrium_parachain'],
42
- bifrost: ['bifrost', 'acala', 'karura', 'acala_testnet', 'pioneer', 'bitcountry', 'bifrost_dot', 'hydradx_main', 'hydradx_rococo', 'pendulum', 'amplitude', 'continuum_network'],
42
+ bifrost: ['bifrost', 'acala', 'karura', 'acala_testnet', 'pioneer', 'bitcountry', 'bifrost_dot', 'hydradx_main', 'pendulum', 'amplitude', 'continuum_network'],
43
43
  statemine: ['statemine', 'astar', 'shiden', 'statemint', 'moonbeam', 'moonbase', 'moonriver', 'crabParachain', 'darwinia2', 'parallel', 'calamari', 'manta_network', 'rococo_assethub', 'liberlandTest', 'liberland', 'dentnet', 'pangolin', 'crust', 'phala', 'shibuya'],
44
44
  kusama: ['kusama', 'kintsugi', 'kintsugi_test', 'interlay', 'acala', 'statemint', 'karura', 'bifrost'],
45
45
  // perhaps there are some runtime updates
@@ -42,7 +42,6 @@ class ChainService {
42
42
  assetRegistrySubject = new _rxjs.Subject();
43
43
  multiChainAssetMapSubject = new _rxjs.Subject();
44
44
  xcmRefMapSubject = new _rxjs.Subject();
45
- swapRefMapSubject = new _rxjs.Subject();
46
45
  assetLogoMapSubject = new _rxjs.BehaviorSubject(_chainList.AssetLogoMap);
47
46
  chainLogoMapSubject = new _rxjs.BehaviorSubject(_chainList.ChainLogoMap);
48
47
  assetMapPatch = JSON.stringify({});
@@ -58,7 +57,6 @@ class ChainService {
58
57
  this.chainStateMapSubject.next(this.dataMap.chainStateMap);
59
58
  this.assetRegistrySubject.next(this.dataMap.assetRegistry);
60
59
  this.xcmRefMapSubject.next(this.xcmRefMap);
61
- this.swapRefMapSubject.next(this.swapRefMap);
62
60
  if (_utils2.MODULE_SUPPORT.MANTA_ZK) {
63
61
  console.log('Init Manta ZK');
64
62
  this.mantaChainHandler = new _MantaPrivateHandler.MantaPrivateHandler(dbService);
@@ -67,9 +65,6 @@ class ChainService {
67
65
  this.evmChainHandler = new _EvmChainHandler.EvmChainHandler(this);
68
66
  this.logger = (0, _logger.logger)('chain-service');
69
67
  }
70
- subscribeSwapRefMap() {
71
- return this.swapRefMapSubject;
72
- }
73
68
 
74
69
  // Getter
75
70
  get xcmRefMap() {
@@ -82,16 +77,6 @@ class ChainService {
82
77
  });
83
78
  return result;
84
79
  }
85
- get swapRefMap() {
86
- const result = {};
87
- Object.entries(this.dataMap.assetRefMap).forEach(_ref2 => {
88
- let [key, assetRef] = _ref2;
89
- if (assetRef.path === _types._AssetRefPath.SWAP) {
90
- result[key] = assetRef;
91
- }
92
- });
93
- return result;
94
- }
95
80
  getEvmApi(slug) {
96
81
  return this.evmChainHandler.getEvmApiByChain(slug);
97
82
  }
@@ -215,11 +200,11 @@ class ChainService {
215
200
  return this.getChainStatusMap()[key];
216
201
  }
217
202
  getActiveChains() {
218
- return Object.entries(this.dataMap.chainStateMap).filter(_ref3 => {
219
- let [, chainState] = _ref3;
203
+ return Object.entries(this.dataMap.chainStateMap).filter(_ref2 => {
204
+ let [, chainState] = _ref2;
220
205
  return (0, _utils._isChainEnabled)(chainState);
221
- }).map(_ref4 => {
222
- let [key] = _ref4;
206
+ }).map(_ref3 => {
207
+ let [key] = _ref3;
223
208
  return key;
224
209
  });
225
210
  }
@@ -379,8 +364,8 @@ class ChainService {
379
364
  (0, _utils2.addLazy)('updateChainConnectionStatus', () => {
380
365
  const chainStatusMap = this.getChainStatusMap();
381
366
  let update = false;
382
- Object.entries(this.connectionStatusQueueMap).forEach(_ref5 => {
383
- let [slug, status] = _ref5;
367
+ Object.entries(this.connectionStatusQueueMap).forEach(_ref4 => {
368
+ let [slug, status] = _ref4;
384
369
  if (chainStatusMap[slug]) {
385
370
  if (chainStatusMap[slug].connectionStatus !== status) {
386
371
  chainStatusMap[slug].connectionStatus = status;
@@ -512,13 +497,12 @@ class ChainService {
512
497
  });
513
498
  this.dataMap.assetRefMap = updatedAssetRefMap;
514
499
  this.xcmRefMapSubject.next(this.xcmRefMap);
515
- this.swapRefMapSubject.next(this.swapRefMap);
516
500
  this.logger.log('Finished updating latest asset ref');
517
501
  }
518
502
  handleLatestPriceId(latestPriceIds) {
519
503
  let isUpdated = false;
520
- Object.entries(latestPriceIds).forEach(_ref6 => {
521
- let [slug, priceId] = _ref6;
504
+ Object.entries(latestPriceIds).forEach(_ref5 => {
505
+ let [slug, priceId] = _ref5;
522
506
  if (this.dataMap.assetRegistry[slug] && this.dataMap.assetRegistry[slug].priceId !== priceId) {
523
507
  isUpdated = true;
524
508
  this.dataMap.assetRegistry[slug].priceId = priceId;
@@ -597,8 +581,8 @@ class ChainService {
597
581
  }
598
582
  }
599
583
  handleLatestData() {
600
- this.fetchLatestAssetData().then(_ref7 => {
601
- let [latestAssetInfo, latestAssetLogoMap] = _ref7;
584
+ this.fetchLatestAssetData().then(_ref6 => {
585
+ let [latestAssetInfo, latestAssetLogoMap] = _ref6;
602
586
  this.eventService.waitAssetReady.then(() => {
603
587
  this.handleLatestAssetData(latestAssetInfo, latestAssetLogoMap);
604
588
  }).catch(console.error);
@@ -606,8 +590,8 @@ class ChainService {
606
590
  this.fetchLatestChainData().then(latestChainInfo => {
607
591
  this.handleLatestChainData(latestChainInfo);
608
592
  }).catch(console.error);
609
- this.fetchLatestAssetRef().then(_ref8 => {
610
- let [latestAssetRef, latestAssetRefMap] = _ref8;
593
+ this.fetchLatestAssetRef().then(_ref7 => {
594
+ let [latestAssetRef, latestAssetRefMap] = _ref7;
611
595
  this.handleLatestAssetRef(latestAssetRef, latestAssetRefMap);
612
596
  }).catch(console.error);
613
597
  this.fetchLatestPriceIdsData().then(latestPriceIds => {
@@ -617,12 +601,12 @@ class ChainService {
617
601
  async initApis() {
618
602
  const chainInfoMap = this.getChainInfoMap();
619
603
  const chainStateMap = this.getChainStateMap();
620
- await Promise.all(Object.entries(chainInfoMap).filter(_ref9 => {
604
+ await Promise.all(Object.entries(chainInfoMap).filter(_ref8 => {
621
605
  var _chainStateMap$slug;
622
- let [slug] = _ref9;
606
+ let [slug] = _ref8;
623
607
  return (_chainStateMap$slug = chainStateMap[slug]) === null || _chainStateMap$slug === void 0 ? void 0 : _chainStateMap$slug.active;
624
- }).map(_ref10 => {
625
- let [, chainInfo] = _ref10;
608
+ }).map(_ref9 => {
609
+ let [, chainInfo] = _ref9;
626
610
  try {
627
611
  return this.initApiForChain(chainInfo);
628
612
  } catch (e) {
@@ -631,15 +615,6 @@ class ChainService {
631
615
  }
632
616
  }));
633
617
  }
634
- async initSingleApi(slug) {
635
- const chainInfoMap = this.getChainInfoMap();
636
- const chainStateMap = this.getChainStateMap();
637
- if (!chainStateMap[slug].active) {
638
- return false;
639
- }
640
- await this.initApiForChain(chainInfoMap[slug]);
641
- return true;
642
- }
643
618
  async initApiForChain(chainInfo) {
644
619
  const {
645
620
  endpoint,
@@ -974,8 +949,8 @@ class ChainService {
974
949
  }
975
950
 
976
951
  // Fill in the missing chainState and storageData (new chains never before seen)
977
- Object.entries(mergedChainInfoMap).forEach(_ref11 => {
978
- let [slug, chainInfo] = _ref11;
952
+ Object.entries(mergedChainInfoMap).forEach(_ref10 => {
953
+ let [slug, chainInfo] = _ref10;
979
954
  if (!(slug in this.dataMap.chainStateMap)) {
980
955
  this.dataMap.chainStateMap[slug] = {
981
956
  currentProvider: Object.keys(chainInfo.providers)[0],
@@ -55,7 +55,6 @@ var _exportNames = {
55
55
  _isAssetValuable: true,
56
56
  _getMultiChainAsset: true,
57
57
  _getAssetPriceId: true,
58
- _getAssetName: true,
59
58
  _getMultiChainAssetPriceId: true,
60
59
  _getAssetSymbol: true,
61
60
  _getMultiChainAssetSymbol: true,
@@ -79,7 +78,6 @@ var _exportNames = {
79
78
  exports._checkSmartContractSupportByChain = _checkSmartContractSupportByChain;
80
79
  exports._generateCustomProviderKey = _generateCustomProviderKey;
81
80
  exports._getAssetDecimals = _getAssetDecimals;
82
- exports._getAssetName = _getAssetName;
83
81
  exports._getAssetOriginChain = _getAssetOriginChain;
84
82
  exports._getAssetPriceId = _getAssetPriceId;
85
83
  exports._getAssetSymbol = _getAssetSymbol;
@@ -441,9 +439,6 @@ function _getMultiChainAsset(assetInfo) {
441
439
  function _getAssetPriceId(assetInfo) {
442
440
  return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.priceId) || '';
443
441
  }
444
- function _getAssetName(assetInfo) {
445
- return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.name) || '';
446
- }
447
442
  function _getMultiChainAssetPriceId(multiChainAsset) {
448
443
  return (multiChainAsset === null || multiChainAsset === void 0 ? void 0 : multiChainAsset.priceId) || '';
449
444
  }
@@ -454,13 +449,13 @@ function _getMultiChainAssetSymbol(multiChainAsset) {
454
449
  return multiChainAsset.symbol;
455
450
  }
456
451
  function _getAssetOriginChain(assetInfo) {
457
- return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.originChain) || '';
452
+ return assetInfo.originChain;
458
453
  }
459
454
  function _getChainName(chainInfo) {
460
455
  return chainInfo.name;
461
456
  }
462
457
  function _getAssetDecimals(assetInfo) {
463
- return (assetInfo === null || assetInfo === void 0 ? void 0 : assetInfo.decimals) || 0;
458
+ return assetInfo.decimals || 0;
464
459
  }
465
460
  function _getBlockExplorerFromChain(chainInfo) {
466
461
  let blockExplorer;
@@ -12,7 +12,7 @@ var _crossFetch = _interopRequireDefault(require("cross-fetch"));
12
12
  const PRODUCTION_BRANCHES = ['master', 'webapp', 'webapp-dev'];
13
13
  const branchName = process.env.BRANCH_NAME || 'subwallet-dev';
14
14
  const fetchDomain = PRODUCTION_BRANCHES.indexOf(branchName) > -1 ? 'https://chain-list-assets.subwallet.app' : 'https://dev.sw-chain-list-assets.pages.dev';
15
- const ChainListVersion = '0.2.55-beta.3';
15
+ const ChainListVersion = '0.2.54';
16
16
  async function fetchPatchData(slug) {
17
17
  try {
18
18
  const fetchPromise = (0, _crossFetch.default)(`${fetchDomain}/patch/${ChainListVersion}/${slug}`);
@@ -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.ST_LIQUID_TOKEN_ABI = 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
 
@@ -24,11 +24,9 @@ const _STAKING_CHAIN_GROUP = {
24
24
  krest_network: ['krest_network'],
25
25
  manta: ['manta_network']
26
26
  };
27
- exports._STAKING_CHAIN_GROUP = _STAKING_CHAIN_GROUP;
28
- const MaxEraRewardPointsEras = 14;
29
27
 
30
28
  // eslint-disable-next-line @typescript-eslint/no-var-requires,@typescript-eslint/no-unsafe-assignment
31
- exports.MaxEraRewardPointsEras = MaxEraRewardPointsEras;
29
+ exports._STAKING_CHAIN_GROUP = _STAKING_CHAIN_GROUP;
32
30
  const ST_LIQUID_TOKEN_ABI = require('./abis/st_liquid_token_abi.json');
33
31
  exports.ST_LIQUID_TOKEN_ABI = ST_LIQUID_TOKEN_ABI;
34
32
  const MANTA_VALIDATOR_POINTS_PER_BLOCK = 20;
@@ -250,12 +250,11 @@ class AstarNativeStakingPoolHandler extends _basePara.default {
250
250
  };
251
251
  }
252
252
  async subscribePoolPosition(useAddresses, resultCallback) {
253
- var _substrateApi$api$que;
254
253
  let cancel = false;
255
254
  const substrateApi = await this.substrateApi.isReady;
256
255
  const defaultInfo = this.baseInfo;
257
256
  const chainInfo = this.chainInfo;
258
- const unsub = await ((_substrateApi$api$que = substrateApi.api.query.dappsStaking) === null || _substrateApi$api$que === void 0 ? void 0 : _substrateApi$api$que.ledger.multi(useAddresses, async ledgers => {
257
+ const unsub = await substrateApi.api.query.dappsStaking.ledger.multi(useAddresses, async ledgers => {
259
258
  if (cancel) {
260
259
  unsub();
261
260
  return;
@@ -289,10 +288,10 @@ class AstarNativeStakingPoolHandler extends _basePara.default {
289
288
  }
290
289
  }));
291
290
  }
292
- }));
291
+ });
293
292
  return () => {
294
293
  cancel = true;
295
- unsub && unsub();
294
+ unsub();
296
295
  };
297
296
  }
298
297