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