@paraspell/sdk-core 11.12.5 → 11.12.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +277 -134
- package/dist/index.d.ts +13 -7
- package/dist/index.mjs +277 -134
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -850,6 +850,7 @@ var isConfig = function isConfig(value) {
|
|
|
850
850
|
};
|
|
851
851
|
|
|
852
852
|
var computeOverridenAmount = function computeOverridenAmount(options, increaseAmount) {
|
|
853
|
+
var relative = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
853
854
|
var from = options.from,
|
|
854
855
|
to = options.to,
|
|
855
856
|
currency = options.currency,
|
|
@@ -857,21 +858,23 @@ var computeOverridenAmount = function computeOverridenAmount(options, increaseAm
|
|
|
857
858
|
var amount = options.currency.amount;
|
|
858
859
|
var config = api.getConfig();
|
|
859
860
|
if (isConfig(config) && config.abstractDecimals && typeof amount !== 'bigint') {
|
|
860
|
-
|
|
861
|
+
var base = relative ? Number(amount) : 0;
|
|
862
|
+
return Number(increaseAmount) + base;
|
|
861
863
|
} else {
|
|
862
864
|
assertToIsString(to);
|
|
863
865
|
var asset = findAssetInfoOrThrow(from, currency, to);
|
|
864
|
-
|
|
866
|
+
var _base = relative ? BigInt(amount) : 0n;
|
|
867
|
+
return parseUnits(increaseAmount, asset.decimals) + _base;
|
|
865
868
|
}
|
|
866
869
|
};
|
|
867
870
|
var overrideTxAmount = /*#__PURE__*/function () {
|
|
868
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(options, builder, amount) {
|
|
871
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(options, builder, amount, relative) {
|
|
869
872
|
var modifiedBuilder, _yield$modifiedBuilde, tx;
|
|
870
873
|
return _regenerator().w(function (_context) {
|
|
871
874
|
while (1) switch (_context.n) {
|
|
872
875
|
case 0:
|
|
873
876
|
modifiedBuilder = builder.currency(_objectSpread2(_objectSpread2({}, options.currency), {}, {
|
|
874
|
-
amount: computeOverridenAmount(options, amount)
|
|
877
|
+
amount: computeOverridenAmount(options, amount, relative)
|
|
875
878
|
}));
|
|
876
879
|
_context.n = 1;
|
|
877
880
|
return modifiedBuilder['buildInternal']();
|
|
@@ -882,12 +885,12 @@ var overrideTxAmount = /*#__PURE__*/function () {
|
|
|
882
885
|
}
|
|
883
886
|
}, _callee);
|
|
884
887
|
}));
|
|
885
|
-
return function overrideTxAmount(_x, _x2, _x3) {
|
|
888
|
+
return function overrideTxAmount(_x, _x2, _x3, _x4) {
|
|
886
889
|
return _ref.apply(this, arguments);
|
|
887
890
|
};
|
|
888
891
|
}();
|
|
889
892
|
var createTx = /*#__PURE__*/function () {
|
|
890
|
-
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(options, builder, amount) {
|
|
893
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(options, builder, amount, relative) {
|
|
891
894
|
var _yield$builder$buildI, tx;
|
|
892
895
|
return _regenerator().w(function (_context2) {
|
|
893
896
|
while (1) switch (_context2.n) {
|
|
@@ -904,13 +907,13 @@ var createTx = /*#__PURE__*/function () {
|
|
|
904
907
|
return _context2.a(2, tx);
|
|
905
908
|
case 2:
|
|
906
909
|
_context2.n = 3;
|
|
907
|
-
return overrideTxAmount(options, builder, amount);
|
|
910
|
+
return overrideTxAmount(options, builder, amount, relative);
|
|
908
911
|
case 3:
|
|
909
912
|
return _context2.a(2, _context2.v);
|
|
910
913
|
}
|
|
911
914
|
}, _callee2);
|
|
912
915
|
}));
|
|
913
|
-
return function createTx(
|
|
916
|
+
return function createTx(_x5, _x6, _x7, _x8) {
|
|
914
917
|
return _ref2.apply(this, arguments);
|
|
915
918
|
};
|
|
916
919
|
}();
|
|
@@ -4528,15 +4531,20 @@ var resolveAsset = function resolveAsset(currency, origin, destination, assetChe
|
|
|
4528
4531
|
};
|
|
4529
4532
|
|
|
4530
4533
|
var resolveHopAsset = function resolveHopAsset(_ref) {
|
|
4531
|
-
var
|
|
4532
|
-
var
|
|
4534
|
+
var _findAssetInfoOnDest;
|
|
4535
|
+
var api = _ref.api,
|
|
4536
|
+
tx = _ref.tx,
|
|
4537
|
+
originChain = _ref.originChain,
|
|
4533
4538
|
currentChain = _ref.currentChain,
|
|
4539
|
+
destination = _ref.destination,
|
|
4534
4540
|
swapConfig = _ref.swapConfig,
|
|
4535
4541
|
asset = _ref.asset,
|
|
4536
4542
|
hasPassedExchange = _ref.hasPassedExchange,
|
|
4537
4543
|
currency = _ref.currency;
|
|
4538
|
-
var
|
|
4539
|
-
|
|
4544
|
+
var isRelayAssetIncluded = api.getTypeThenAssetCount(tx) === 2;
|
|
4545
|
+
var isSubBridge = !isTLocation(destination) && isSubstrateBridge(originChain, destination);
|
|
4546
|
+
var useRelayAssetAsFee = destination === 'Ethereum' || isSubBridge || isRelayAssetIncluded;
|
|
4547
|
+
if (useRelayAssetAsFee) {
|
|
4540
4548
|
return findNativeAssetInfoOrThrow(getRelayChainOf(currentChain));
|
|
4541
4549
|
}
|
|
4542
4550
|
if (hasPassedExchange && swapConfig && currentChain !== swapConfig.exchangeChain) {
|
|
@@ -5559,8 +5567,11 @@ var dryRunInternal = /*#__PURE__*/function () {
|
|
|
5559
5567
|
case 0:
|
|
5560
5568
|
hopApi = params.api, currentChain = params.currentChain, currentOrigin = params.currentOrigin, currentAsset = params.currentAsset, forwardedXcms = params.forwardedXcms, hasPassedExchange = params.hasPassedExchange;
|
|
5561
5569
|
hopAsset = resolveHopAsset({
|
|
5570
|
+
api: api,
|
|
5571
|
+
tx: tx,
|
|
5562
5572
|
originChain: origin,
|
|
5563
5573
|
currentChain: currentChain,
|
|
5574
|
+
destination: destination,
|
|
5564
5575
|
asset: currentAsset,
|
|
5565
5576
|
currency: currency,
|
|
5566
5577
|
swapConfig: swapConfig,
|
|
@@ -9357,6 +9368,16 @@ var Manta = /*#__PURE__*/function (_Parachain) {
|
|
|
9357
9368
|
};
|
|
9358
9369
|
return transferXTokens(input, currencySelection);
|
|
9359
9370
|
}
|
|
9371
|
+
}, {
|
|
9372
|
+
key: "isSendingTempDisabled",
|
|
9373
|
+
value: function isSendingTempDisabled(_options) {
|
|
9374
|
+
return true;
|
|
9375
|
+
}
|
|
9376
|
+
}, {
|
|
9377
|
+
key: "isReceivingTempDisabled",
|
|
9378
|
+
value: function isReceivingTempDisabled(_scenario) {
|
|
9379
|
+
return true;
|
|
9380
|
+
}
|
|
9360
9381
|
}, {
|
|
9361
9382
|
key: "transferLocalNonNativeAsset",
|
|
9362
9383
|
value: function transferLocalNonNativeAsset(options) {
|
|
@@ -10647,14 +10668,16 @@ var CurrenciesPallet = /*#__PURE__*/function (_BaseAssetsPallet) {
|
|
|
10647
10668
|
key: "mint",
|
|
10648
10669
|
value: function mint(address, asset, balance, chain) {
|
|
10649
10670
|
var isKarura = chain.startsWith('Karura');
|
|
10650
|
-
var
|
|
10671
|
+
var isAcala = chain.startsWith('Acala');
|
|
10672
|
+
var isAcalaLike = isKarura || isAcala;
|
|
10673
|
+
var id = isAcalaLike ? getChain(isKarura ? 'Karura' : 'Acala').getCurrencySelection(asset) : (assertHasId(asset), Number(asset.assetId));
|
|
10651
10674
|
var amount = asset.amount;
|
|
10652
10675
|
return Promise.resolve({
|
|
10653
10676
|
balanceTx: {
|
|
10654
10677
|
module: this.palletName,
|
|
10655
10678
|
method: 'update_balance',
|
|
10656
10679
|
parameters: {
|
|
10657
|
-
who:
|
|
10680
|
+
who: isAcalaLike ? {
|
|
10658
10681
|
Id: address
|
|
10659
10682
|
} : address,
|
|
10660
10683
|
currency_id: id,
|
|
@@ -10774,6 +10797,20 @@ var SystemPallet = /*#__PURE__*/function (_BaseAssetsPallet) {
|
|
|
10774
10797
|
}]);
|
|
10775
10798
|
}(BaseAssetsPallet);
|
|
10776
10799
|
|
|
10800
|
+
var resolveId = function resolveId(asset, chain) {
|
|
10801
|
+
var isBifrost = chain.startsWith('Bifrost');
|
|
10802
|
+
if (isBifrost) {
|
|
10803
|
+
var _asset$assetId;
|
|
10804
|
+
var isEthAsset = isForeignAsset(asset) && ((_asset$assetId = asset.assetId) === null || _asset$assetId === void 0 ? void 0 : _asset$assetId.startsWith('0x'));
|
|
10805
|
+
var resolvedAsset = isEthAsset && asset.location ? findAssetInfoOrThrow(chain, {
|
|
10806
|
+
location: asset.location
|
|
10807
|
+
}, null) : asset;
|
|
10808
|
+
return getChain('BifrostPolkadot').getCurrencySelection(resolvedAsset);
|
|
10809
|
+
} else {
|
|
10810
|
+
assertHasId(asset);
|
|
10811
|
+
return asset.assetId;
|
|
10812
|
+
}
|
|
10813
|
+
};
|
|
10777
10814
|
var TokensPallet = /*#__PURE__*/function (_BaseAssetsPallet) {
|
|
10778
10815
|
function TokensPallet() {
|
|
10779
10816
|
_classCallCheck(this, TokensPallet);
|
|
@@ -10785,7 +10822,7 @@ var TokensPallet = /*#__PURE__*/function (_BaseAssetsPallet) {
|
|
|
10785
10822
|
value: function mint(address, asset, balance, chain) {
|
|
10786
10823
|
var isBifrost = chain.startsWith('Bifrost');
|
|
10787
10824
|
if (!isBifrost) assertHasId(asset);
|
|
10788
|
-
var id =
|
|
10825
|
+
var id = resolveId(asset, chain);
|
|
10789
10826
|
var amount = asset.amount;
|
|
10790
10827
|
return Promise.resolve({
|
|
10791
10828
|
balanceTx: {
|
|
@@ -11023,130 +11060,212 @@ var wrapTxBypass = /*#__PURE__*/function () {
|
|
|
11023
11060
|
};
|
|
11024
11061
|
}();
|
|
11025
11062
|
|
|
11063
|
+
var MAX_INCREASE_RETRIES = 5;
|
|
11064
|
+
var INCREASE_BUMP_STEP = 100;
|
|
11065
|
+
var DECREASE_START_AMOUNT = 1;
|
|
11066
|
+
var MAX_DECREASE_RETRIES = 5;
|
|
11067
|
+
var DECREASE_DIVIDE_FACTOR = 5;
|
|
11068
|
+
var FAILED_TO_TRANSACT_ASSET = 'FailedToTransactAsset';
|
|
11026
11069
|
var getBypassResultWithRetries = /*#__PURE__*/function () {
|
|
11027
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function
|
|
11070
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(options, internalFn, initialTx) {
|
|
11028
11071
|
var maxRetries,
|
|
11029
11072
|
bumpStep,
|
|
11030
|
-
|
|
11073
|
+
getResultError,
|
|
11074
|
+
isFailedToTransact,
|
|
11075
|
+
isAmountTooLow,
|
|
11076
|
+
attempt,
|
|
11077
|
+
retryWithReducedAmount,
|
|
11031
11078
|
first,
|
|
11032
|
-
result,
|
|
11033
11079
|
i,
|
|
11034
11080
|
amount,
|
|
11035
|
-
|
|
11036
|
-
|
|
11037
|
-
|
|
11081
|
+
res,
|
|
11082
|
+
err,
|
|
11083
|
+
_args3 = arguments,
|
|
11038
11084
|
_t2,
|
|
11039
11085
|
_t3;
|
|
11040
|
-
return _regenerator().w(function (
|
|
11041
|
-
while (1) switch (
|
|
11086
|
+
return _regenerator().w(function (_context3) {
|
|
11087
|
+
while (1) switch (_context3.p = _context3.n) {
|
|
11042
11088
|
case 0:
|
|
11043
|
-
maxRetries =
|
|
11044
|
-
bumpStep =
|
|
11045
|
-
|
|
11046
|
-
return 'failureReason' in res ?
|
|
11089
|
+
maxRetries = _args3.length > 3 && _args3[3] !== undefined ? _args3[3] : MAX_INCREASE_RETRIES;
|
|
11090
|
+
bumpStep = _args3.length > 4 && _args3[4] !== undefined ? _args3[4] : INCREASE_BUMP_STEP;
|
|
11091
|
+
getResultError = function getResultError(res) {
|
|
11092
|
+
return 'failureReason' in res ? res.failureReason : 'dryRunError' in res ? res.dryRunError : undefined;
|
|
11047
11093
|
};
|
|
11094
|
+
isFailedToTransact = function isFailedToTransact(res) {
|
|
11095
|
+
return 'failureReason' in res && res.failureReason === FAILED_TO_TRANSACT_ASSET;
|
|
11096
|
+
};
|
|
11097
|
+
isAmountTooLow = function isAmountTooLow(e) {
|
|
11098
|
+
return e instanceof AmountTooLowError;
|
|
11099
|
+
};
|
|
11100
|
+
attempt = /*#__PURE__*/function () {
|
|
11101
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(amount, relative) {
|
|
11102
|
+
var tx;
|
|
11103
|
+
return _regenerator().w(function (_context) {
|
|
11104
|
+
while (1) switch (_context.n) {
|
|
11105
|
+
case 0:
|
|
11106
|
+
_context.n = 1;
|
|
11107
|
+
return options.buildTx(amount, relative);
|
|
11108
|
+
case 1:
|
|
11109
|
+
tx = _context.v;
|
|
11110
|
+
return _context.a(2, internalFn(_objectSpread2(_objectSpread2({}, options), {}, {
|
|
11111
|
+
tx: tx,
|
|
11112
|
+
useRootOrigin: true
|
|
11113
|
+
})));
|
|
11114
|
+
}
|
|
11115
|
+
}, _callee);
|
|
11116
|
+
}));
|
|
11117
|
+
return function attempt(_x4, _x5) {
|
|
11118
|
+
return _ref2.apply(this, arguments);
|
|
11119
|
+
};
|
|
11120
|
+
}();
|
|
11121
|
+
retryWithReducedAmount = /*#__PURE__*/function () {
|
|
11122
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
11123
|
+
var start,
|
|
11124
|
+
divide,
|
|
11125
|
+
amount,
|
|
11126
|
+
attemptIdx,
|
|
11127
|
+
res,
|
|
11128
|
+
err,
|
|
11129
|
+
_args2 = arguments,
|
|
11130
|
+
_t;
|
|
11131
|
+
return _regenerator().w(function (_context2) {
|
|
11132
|
+
while (1) switch (_context2.p = _context2.n) {
|
|
11133
|
+
case 0:
|
|
11134
|
+
start = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : DECREASE_START_AMOUNT;
|
|
11135
|
+
divide = function divide(v) {
|
|
11136
|
+
var next = v / DECREASE_DIVIDE_FACTOR;
|
|
11137
|
+
return next > 0 ? next : 1;
|
|
11138
|
+
};
|
|
11139
|
+
amount = divide(start);
|
|
11140
|
+
attemptIdx = 0;
|
|
11141
|
+
case 1:
|
|
11142
|
+
if (!(attemptIdx < MAX_DECREASE_RETRIES && amount > 0)) {
|
|
11143
|
+
_context2.n = 9;
|
|
11144
|
+
break;
|
|
11145
|
+
}
|
|
11146
|
+
_context2.p = 2;
|
|
11147
|
+
_context2.n = 3;
|
|
11148
|
+
return attempt(amount.toString(), false);
|
|
11149
|
+
case 3:
|
|
11150
|
+
res = _context2.v;
|
|
11151
|
+
err = getResultError(res);
|
|
11152
|
+
if (err) {
|
|
11153
|
+
_context2.n = 4;
|
|
11154
|
+
break;
|
|
11155
|
+
}
|
|
11156
|
+
return _context2.a(2, res);
|
|
11157
|
+
case 4:
|
|
11158
|
+
if (!isFailedToTransact(res)) {
|
|
11159
|
+
_context2.n = 5;
|
|
11160
|
+
break;
|
|
11161
|
+
}
|
|
11162
|
+
amount = divide(amount);
|
|
11163
|
+
return _context2.a(3, 8);
|
|
11164
|
+
case 5:
|
|
11165
|
+
return _context2.a(2, res);
|
|
11166
|
+
case 6:
|
|
11167
|
+
_context2.p = 6;
|
|
11168
|
+
_t = _context2.v;
|
|
11169
|
+
if (!isAmountTooLow(_t)) {
|
|
11170
|
+
_context2.n = 7;
|
|
11171
|
+
break;
|
|
11172
|
+
}
|
|
11173
|
+
amount = divide(amount);
|
|
11174
|
+
return _context2.a(3, 8);
|
|
11175
|
+
case 7:
|
|
11176
|
+
throw _t;
|
|
11177
|
+
case 8:
|
|
11178
|
+
attemptIdx++;
|
|
11179
|
+
_context2.n = 1;
|
|
11180
|
+
break;
|
|
11181
|
+
case 9:
|
|
11182
|
+
return _context2.a(2, attempt(amount.toString(), false));
|
|
11183
|
+
}
|
|
11184
|
+
}, _callee2, null, [[2, 6]]);
|
|
11185
|
+
}));
|
|
11186
|
+
return function retryWithReducedAmount() {
|
|
11187
|
+
return _ref3.apply(this, arguments);
|
|
11188
|
+
};
|
|
11189
|
+
}();
|
|
11048
11190
|
if (!initialTx) {
|
|
11049
|
-
|
|
11191
|
+
_context3.n = 5;
|
|
11050
11192
|
break;
|
|
11051
11193
|
}
|
|
11052
|
-
|
|
11053
|
-
|
|
11194
|
+
_context3.p = 1;
|
|
11195
|
+
_context3.n = 2;
|
|
11054
11196
|
return internalFn(_objectSpread2(_objectSpread2({}, options), {}, {
|
|
11055
11197
|
tx: initialTx,
|
|
11056
11198
|
useRootOrigin: true
|
|
11057
11199
|
}));
|
|
11058
11200
|
case 2:
|
|
11059
|
-
first =
|
|
11060
|
-
if (
|
|
11061
|
-
|
|
11201
|
+
first = _context3.v;
|
|
11202
|
+
if (getResultError(first)) {
|
|
11203
|
+
_context3.n = 3;
|
|
11062
11204
|
break;
|
|
11063
11205
|
}
|
|
11064
|
-
return
|
|
11206
|
+
return _context3.a(2, first);
|
|
11065
11207
|
case 3:
|
|
11066
|
-
|
|
11208
|
+
_context3.n = 5;
|
|
11067
11209
|
break;
|
|
11068
11210
|
case 4:
|
|
11069
|
-
|
|
11070
|
-
|
|
11071
|
-
if (
|
|
11072
|
-
|
|
11211
|
+
_context3.p = 4;
|
|
11212
|
+
_t2 = _context3.v;
|
|
11213
|
+
if (isAmountTooLow(_t2)) {
|
|
11214
|
+
_context3.n = 5;
|
|
11073
11215
|
break;
|
|
11074
11216
|
}
|
|
11075
|
-
throw
|
|
11217
|
+
throw _t2;
|
|
11076
11218
|
case 5:
|
|
11077
|
-
result = null;
|
|
11078
11219
|
i = 1;
|
|
11079
11220
|
case 6:
|
|
11080
11221
|
if (!(i <= maxRetries)) {
|
|
11081
|
-
|
|
11222
|
+
_context3.n = 15;
|
|
11082
11223
|
break;
|
|
11083
11224
|
}
|
|
11084
|
-
amount =
|
|
11085
|
-
|
|
11086
|
-
|
|
11087
|
-
|
|
11088
|
-
return options.buildTx(amount);
|
|
11225
|
+
amount = bumpStep * i;
|
|
11226
|
+
_context3.p = 7;
|
|
11227
|
+
_context3.n = 8;
|
|
11228
|
+
return attempt(amount.toString());
|
|
11089
11229
|
case 8:
|
|
11090
|
-
|
|
11091
|
-
|
|
11092
|
-
|
|
11093
|
-
|
|
11094
|
-
_context.p = 9;
|
|
11095
|
-
_t2 = _context.v;
|
|
11096
|
-
if (!(_t2 instanceof AmountTooLowError)) {
|
|
11097
|
-
_context.n = 11;
|
|
11230
|
+
res = _context3.v;
|
|
11231
|
+
err = getResultError(res);
|
|
11232
|
+
if (err) {
|
|
11233
|
+
_context3.n = 9;
|
|
11098
11234
|
break;
|
|
11099
11235
|
}
|
|
11100
|
-
|
|
11101
|
-
|
|
11236
|
+
return _context3.a(2, res);
|
|
11237
|
+
case 9:
|
|
11238
|
+
if (!isFailedToTransact(res)) {
|
|
11239
|
+
_context3.n = 10;
|
|
11102
11240
|
break;
|
|
11103
11241
|
}
|
|
11104
|
-
|
|
11242
|
+
return _context3.a(2, retryWithReducedAmount(DECREASE_START_AMOUNT));
|
|
11105
11243
|
case 10:
|
|
11106
|
-
return
|
|
11244
|
+
return _context3.a(3, 14);
|
|
11107
11245
|
case 11:
|
|
11108
|
-
|
|
11109
|
-
|
|
11110
|
-
|
|
11111
|
-
|
|
11112
|
-
return internalFn(_objectSpread2(_objectSpread2({}, options), {}, {
|
|
11113
|
-
tx: bumpedTx,
|
|
11114
|
-
useRootOrigin: true
|
|
11115
|
-
}));
|
|
11116
|
-
case 13:
|
|
11117
|
-
result = _context.v;
|
|
11118
|
-
if (hasError(result)) {
|
|
11119
|
-
_context.n = 14;
|
|
11120
|
-
break;
|
|
11121
|
-
}
|
|
11122
|
-
return _context.a(2, result);
|
|
11123
|
-
case 14:
|
|
11124
|
-
_context.n = 18;
|
|
11125
|
-
break;
|
|
11126
|
-
case 15:
|
|
11127
|
-
_context.p = 15;
|
|
11128
|
-
_t3 = _context.v;
|
|
11129
|
-
if (!(_t3 instanceof AmountTooLowError)) {
|
|
11130
|
-
_context.n = 17;
|
|
11246
|
+
_context3.p = 11;
|
|
11247
|
+
_t3 = _context3.v;
|
|
11248
|
+
if (!isAmountTooLow(_t3)) {
|
|
11249
|
+
_context3.n = 13;
|
|
11131
11250
|
break;
|
|
11132
11251
|
}
|
|
11133
11252
|
if (!(i === maxRetries)) {
|
|
11134
|
-
|
|
11253
|
+
_context3.n = 12;
|
|
11135
11254
|
break;
|
|
11136
11255
|
}
|
|
11137
11256
|
throw _t3;
|
|
11138
|
-
case
|
|
11139
|
-
return
|
|
11140
|
-
case
|
|
11257
|
+
case 12:
|
|
11258
|
+
return _context3.a(3, 14);
|
|
11259
|
+
case 13:
|
|
11141
11260
|
throw _t3;
|
|
11142
|
-
case
|
|
11261
|
+
case 14:
|
|
11143
11262
|
i++;
|
|
11144
|
-
|
|
11263
|
+
_context3.n = 6;
|
|
11145
11264
|
break;
|
|
11146
|
-
case
|
|
11147
|
-
return
|
|
11265
|
+
case 15:
|
|
11266
|
+
return _context3.a(2, attempt(String(bumpStep * maxRetries)));
|
|
11148
11267
|
}
|
|
11149
|
-
},
|
|
11268
|
+
}, _callee3, null, [[7, 11], [1, 4]]);
|
|
11150
11269
|
}));
|
|
11151
11270
|
return function getBypassResultWithRetries(_x, _x2, _x3) {
|
|
11152
11271
|
return _ref.apply(this, arguments);
|
|
@@ -11507,8 +11626,11 @@ var getXcmFeeInternal = /*#__PURE__*/function () {
|
|
|
11507
11626
|
case 0:
|
|
11508
11627
|
hopApi = params.api, currentChain = params.currentChain, currentOrigin = params.currentOrigin, currentAsset = params.currentAsset, forwardedXcms = params.forwardedXcms, hasPassedExchange = params.hasPassedExchange;
|
|
11509
11628
|
hopAsset = resolveHopAsset({
|
|
11629
|
+
api: api,
|
|
11630
|
+
tx: tx,
|
|
11510
11631
|
originChain: origin,
|
|
11511
11632
|
currentChain: currentChain,
|
|
11633
|
+
destination: destination,
|
|
11512
11634
|
asset: currentAsset,
|
|
11513
11635
|
currency: currency,
|
|
11514
11636
|
swapConfig: swapConfig,
|
|
@@ -12717,35 +12839,45 @@ var buildTypeAndThenCall = function buildTypeAndThenCall(_ref, isDotAsset, custo
|
|
|
12717
12839
|
};
|
|
12718
12840
|
|
|
12719
12841
|
var FEE_PADDING_PERCENTAGE = 20;
|
|
12842
|
+
var FEE_ETH_ASSET_PADDING_PERCENTAGE = 100;
|
|
12720
12843
|
var FEE_PADDING_HYDRATION = 500;
|
|
12844
|
+
var getPadding = function getPadding(chain, _ref) {
|
|
12845
|
+
var assetInfo = _ref.assetInfo,
|
|
12846
|
+
dest = _ref.dest;
|
|
12847
|
+
var isEthAsset = assetInfo.location && findAssetInfoByLoc(getOtherAssets('Ethereum'), assetInfo.location);
|
|
12848
|
+
if (chain === 'Hydration') return FEE_PADDING_HYDRATION;
|
|
12849
|
+
if (isEthAsset && dest.chain.startsWith('AssetHub')) return FEE_ETH_ASSET_PADDING_PERCENTAGE;
|
|
12850
|
+
return FEE_PADDING_PERCENTAGE;
|
|
12851
|
+
};
|
|
12721
12852
|
var computeInstructionFee = /*#__PURE__*/function () {
|
|
12722
|
-
var
|
|
12723
|
-
var chain, api, _t;
|
|
12853
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref2, version, xcm, context) {
|
|
12854
|
+
var chain, api, padding, _t;
|
|
12724
12855
|
return _regenerator().w(function (_context) {
|
|
12725
12856
|
while (1) switch (_context.n) {
|
|
12726
12857
|
case 0:
|
|
12727
|
-
chain =
|
|
12858
|
+
chain = _ref2.chain, api = _ref2.api;
|
|
12859
|
+
padding = getPadding(chain, context);
|
|
12728
12860
|
_t = padValueBy;
|
|
12729
12861
|
_context.n = 1;
|
|
12730
12862
|
return api.getXcmPaymentApiFee(chain, addXcmVersionHeader(xcm, version), [], {
|
|
12731
12863
|
location: DOT_LOCATION
|
|
12732
12864
|
}, true);
|
|
12733
12865
|
case 1:
|
|
12734
|
-
return _context.a(2, _t(_context.v,
|
|
12866
|
+
return _context.a(2, _t(_context.v, padding));
|
|
12735
12867
|
}
|
|
12736
12868
|
}, _callee);
|
|
12737
12869
|
}));
|
|
12738
|
-
return function computeInstructionFee(_x, _x2, _x3) {
|
|
12739
|
-
return
|
|
12870
|
+
return function computeInstructionFee(_x, _x2, _x3, _x4) {
|
|
12871
|
+
return _ref3.apply(this, arguments);
|
|
12740
12872
|
};
|
|
12741
12873
|
}();
|
|
12742
12874
|
var computeAllFees = /*#__PURE__*/function () {
|
|
12743
|
-
var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(
|
|
12875
|
+
var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(context, customXcm, isDotAsset, refundInstruction) {
|
|
12744
12876
|
var reserve, dest, version, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t0;
|
|
12745
12877
|
return _regenerator().w(function (_context2) {
|
|
12746
12878
|
while (1) switch (_context2.n) {
|
|
12747
12879
|
case 0:
|
|
12748
|
-
reserve =
|
|
12880
|
+
reserve = context.reserve, dest = context.dest, version = context.options.version;
|
|
12749
12881
|
if (!customXcm.some(function (x) {
|
|
12750
12882
|
return 'DepositReserveAsset' in x || 'InitiateTeleport' in x;
|
|
12751
12883
|
})) {
|
|
@@ -12753,7 +12885,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12753
12885
|
break;
|
|
12754
12886
|
}
|
|
12755
12887
|
_context2.n = 1;
|
|
12756
|
-
return computeInstructionFee(reserve, version, customXcm);
|
|
12888
|
+
return computeInstructionFee(reserve, version, customXcm, context);
|
|
12757
12889
|
case 1:
|
|
12758
12890
|
_t3 = _context2.v;
|
|
12759
12891
|
if (!refundInstruction) {
|
|
@@ -12761,7 +12893,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12761
12893
|
break;
|
|
12762
12894
|
}
|
|
12763
12895
|
_context2.n = 2;
|
|
12764
|
-
return computeInstructionFee(reserve, version, [refundInstruction]);
|
|
12896
|
+
return computeInstructionFee(reserve, version, [refundInstruction], context);
|
|
12765
12897
|
case 2:
|
|
12766
12898
|
_t4 = _context2.v;
|
|
12767
12899
|
_context2.n = 4;
|
|
@@ -12776,7 +12908,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12776
12908
|
return 'DepositReserveAsset' in j || 'InitiateTeleport' in j;
|
|
12777
12909
|
});
|
|
12778
12910
|
return instr ? 'DepositReserveAsset' in instr ? instr.DepositReserveAsset.xcm : instr.InitiateTeleport.xcm : undefined;
|
|
12779
|
-
}());
|
|
12911
|
+
}(), context);
|
|
12780
12912
|
case 5:
|
|
12781
12913
|
_t6 = _context2.v;
|
|
12782
12914
|
_t2 = {
|
|
@@ -12792,7 +12924,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12792
12924
|
break;
|
|
12793
12925
|
}
|
|
12794
12926
|
_context2.n = 7;
|
|
12795
|
-
return computeInstructionFee(hasXcmPaymentApiSupport(dest.chain) ? dest : reserve, version, customXcm);
|
|
12927
|
+
return computeInstructionFee(hasXcmPaymentApiSupport(dest.chain) ? dest : reserve, version, customXcm, context);
|
|
12796
12928
|
case 7:
|
|
12797
12929
|
_t7 = _context2.v;
|
|
12798
12930
|
_context2.n = 9;
|
|
@@ -12806,7 +12938,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12806
12938
|
break;
|
|
12807
12939
|
}
|
|
12808
12940
|
_context2.n = 10;
|
|
12809
|
-
return computeInstructionFee(hasXcmPaymentApiSupport(reserve.chain) ? reserve : dest, version, [refundInstruction]);
|
|
12941
|
+
return computeInstructionFee(hasXcmPaymentApiSupport(reserve.chain) ? reserve : dest, version, [refundInstruction], context);
|
|
12810
12942
|
case 10:
|
|
12811
12943
|
_t9 = _context2.v;
|
|
12812
12944
|
_context2.n = 12;
|
|
@@ -12825,7 +12957,7 @@ var computeAllFees = /*#__PURE__*/function () {
|
|
|
12825
12957
|
}
|
|
12826
12958
|
}, _callee2);
|
|
12827
12959
|
}));
|
|
12828
|
-
return function computeAllFees(
|
|
12960
|
+
return function computeAllFees(_x5, _x6, _x7, _x8) {
|
|
12829
12961
|
return _ref4.apply(this, arguments);
|
|
12830
12962
|
};
|
|
12831
12963
|
}();
|
|
@@ -13474,8 +13606,8 @@ var AssetClaimBuilder = /*#__PURE__*/function () {
|
|
|
13474
13606
|
}();
|
|
13475
13607
|
|
|
13476
13608
|
var normalizeAmountAll = /*#__PURE__*/function () {
|
|
13477
|
-
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(api,
|
|
13478
|
-
var currency, isAmountAll, transferable;
|
|
13609
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(api, builder, options) {
|
|
13610
|
+
var currency, isAmountAll, builderWithMinAmount, buildTx, transferable, finalBuildTx;
|
|
13479
13611
|
return _regenerator().w(function (_context) {
|
|
13480
13612
|
while (1) switch (_context.n) {
|
|
13481
13613
|
case 0:
|
|
@@ -13485,11 +13617,18 @@ var normalizeAmountAll = /*#__PURE__*/function () {
|
|
|
13485
13617
|
_context.n = 1;
|
|
13486
13618
|
break;
|
|
13487
13619
|
}
|
|
13488
|
-
return _context.a(2,
|
|
13489
|
-
|
|
13490
|
-
|
|
13491
|
-
|
|
13620
|
+
return _context.a(2, {
|
|
13621
|
+
options: _objectSpread2({
|
|
13622
|
+
api: api,
|
|
13623
|
+
isAmountAll: isAmountAll
|
|
13624
|
+
}, options),
|
|
13625
|
+
buildTx: builder['createTxFactory']()
|
|
13626
|
+
});
|
|
13492
13627
|
case 1:
|
|
13628
|
+
builderWithMinAmount = builder.currency(_objectSpread2(_objectSpread2({}, options.currency), {}, {
|
|
13629
|
+
amount: MIN_AMOUNT
|
|
13630
|
+
}));
|
|
13631
|
+
buildTx = builderWithMinAmount['createTxFactory']();
|
|
13493
13632
|
assertToIsString(options.to);
|
|
13494
13633
|
assertSenderAddress(options.senderAddress);
|
|
13495
13634
|
_context.n = 2;
|
|
@@ -13506,13 +13645,19 @@ var normalizeAmountAll = /*#__PURE__*/function () {
|
|
|
13506
13645
|
});
|
|
13507
13646
|
case 2:
|
|
13508
13647
|
transferable = _context.v;
|
|
13509
|
-
|
|
13510
|
-
|
|
13511
|
-
|
|
13512
|
-
|
|
13513
|
-
|
|
13514
|
-
|
|
13515
|
-
|
|
13648
|
+
finalBuildTx = builder.currency(_objectSpread2(_objectSpread2({}, options.currency), {}, {
|
|
13649
|
+
amount: transferable
|
|
13650
|
+
}))['createTxFactory']();
|
|
13651
|
+
return _context.a(2, {
|
|
13652
|
+
options: _objectSpread2(_objectSpread2({}, options), {}, {
|
|
13653
|
+
api: api,
|
|
13654
|
+
isAmountAll: isAmountAll,
|
|
13655
|
+
currency: _objectSpread2(_objectSpread2({}, currency), {}, {
|
|
13656
|
+
amount: transferable
|
|
13657
|
+
})
|
|
13658
|
+
}),
|
|
13659
|
+
buildTx: finalBuildTx
|
|
13660
|
+
});
|
|
13516
13661
|
}
|
|
13517
13662
|
}, _callee);
|
|
13518
13663
|
}));
|
|
@@ -13574,12 +13719,12 @@ var BatchTransactionManager = /*#__PURE__*/function () {
|
|
|
13574
13719
|
_context2.n = 4;
|
|
13575
13720
|
return Promise.all(this.transactionOptions.map(/*#__PURE__*/function () {
|
|
13576
13721
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(opts) {
|
|
13577
|
-
var
|
|
13722
|
+
var builder;
|
|
13578
13723
|
return _regenerator().w(function (_context) {
|
|
13579
13724
|
while (1) switch (_context.n) {
|
|
13580
13725
|
case 0:
|
|
13581
|
-
|
|
13582
|
-
return _context.a(2, normalizeAmountAll(api,
|
|
13726
|
+
builder = opts.builder;
|
|
13727
|
+
return _context.a(2, normalizeAmountAll(api, builder, opts));
|
|
13583
13728
|
}
|
|
13584
13729
|
}, _callee);
|
|
13585
13730
|
}));
|
|
@@ -13590,8 +13735,9 @@ var BatchTransactionManager = /*#__PURE__*/function () {
|
|
|
13590
13735
|
case 4:
|
|
13591
13736
|
normalized = _context2.v;
|
|
13592
13737
|
_context2.n = 5;
|
|
13593
|
-
return Promise.all(normalized.map(function (
|
|
13594
|
-
|
|
13738
|
+
return Promise.all(normalized.map(function (_ref2) {
|
|
13739
|
+
var options = _ref2.options;
|
|
13740
|
+
return send(options);
|
|
13595
13741
|
}));
|
|
13596
13742
|
case 5:
|
|
13597
13743
|
txs = _context2.v;
|
|
@@ -13790,11 +13936,10 @@ var GeneralBuilder = /*#__PURE__*/function () {
|
|
|
13790
13936
|
}, {
|
|
13791
13937
|
key: "addToBatch",
|
|
13792
13938
|
value: function addToBatch() {
|
|
13793
|
-
var buildTx = this.createTxFactory();
|
|
13794
13939
|
this.batchManager.addTransaction(_objectSpread2(_objectSpread2({
|
|
13795
13940
|
api: this.api
|
|
13796
13941
|
}, this._options), {}, {
|
|
13797
|
-
|
|
13942
|
+
builder: this
|
|
13798
13943
|
}));
|
|
13799
13944
|
return new GeneralBuilder(this.api, this.batchManager, {
|
|
13800
13945
|
from: this._options.from
|
|
@@ -13831,18 +13976,16 @@ var GeneralBuilder = /*#__PURE__*/function () {
|
|
|
13831
13976
|
key: "prepareNormalizedOptions",
|
|
13832
13977
|
value: function () {
|
|
13833
13978
|
var _prepareNormalizedOptions = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(options) {
|
|
13834
|
-
var
|
|
13979
|
+
var _yield$normalizeAmoun, normalizedOptions, buildTx;
|
|
13835
13980
|
return _regenerator().w(function (_context2) {
|
|
13836
13981
|
while (1) switch (_context2.n) {
|
|
13837
13982
|
case 0:
|
|
13838
|
-
builder = this.currency(_objectSpread2(_objectSpread2({}, options.currency), {}, {
|
|
13839
|
-
amount: MIN_AMOUNT.toString()
|
|
13840
|
-
}));
|
|
13841
|
-
buildTx = builder.createTxFactory();
|
|
13842
13983
|
_context2.n = 1;
|
|
13843
|
-
return normalizeAmountAll(this.api,
|
|
13984
|
+
return normalizeAmountAll(this.api, this, options);
|
|
13844
13985
|
case 1:
|
|
13845
|
-
|
|
13986
|
+
_yield$normalizeAmoun = _context2.v;
|
|
13987
|
+
normalizedOptions = _yield$normalizeAmoun.options;
|
|
13988
|
+
buildTx = _yield$normalizeAmoun.buildTx;
|
|
13846
13989
|
return _context2.a(2, {
|
|
13847
13990
|
normalizedOptions: normalizedOptions,
|
|
13848
13991
|
buildTx: buildTx
|
|
@@ -14016,10 +14159,10 @@ var GeneralBuilder = /*#__PURE__*/function () {
|
|
|
14016
14159
|
key: "createTxFactory",
|
|
14017
14160
|
value: function createTxFactory() {
|
|
14018
14161
|
var _this = this;
|
|
14019
|
-
return function (amount) {
|
|
14162
|
+
return function (amount, relative) {
|
|
14020
14163
|
return createTx(_objectSpread2(_objectSpread2({}, _this._options), {}, {
|
|
14021
14164
|
api: _this.api
|
|
14022
|
-
}), _this, amount);
|
|
14165
|
+
}), _this, amount, relative);
|
|
14023
14166
|
};
|
|
14024
14167
|
}
|
|
14025
14168
|
/**
|