@paraspell/sdk-core 8.10.0 → 8.11.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.
- package/dist/index.cjs +689 -48
- package/dist/index.d.ts +45 -1
- package/dist/index.mjs +689 -48
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -3212,7 +3212,7 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3212
3212
|
key: "transfer",
|
|
3213
3213
|
value: function () {
|
|
3214
3214
|
var _transfer = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(options) {
|
|
3215
|
-
var api, asset, feeAsset, address, destination, paraIdTo, overriddenAsset, version, senderAddress, pallet, method, isRelayDestination, scenario, paraId, versionOrDefault, isBifrostOrigin, isAssetHubDest, shouldUseMultiasset, input, _options, isEthAsset, isAHPOrigin, isAHPDest, isEthDest;
|
|
3215
|
+
var api, asset, feeAsset, address, destination, paraIdTo, overriddenAsset, version, senderAddress, pallet, method, isRelayDestination, scenario, paraId, versionOrDefault, isLocalTransfer, isBifrostOrigin, isAssetHubDest, shouldUseMultiasset, input, _options, isEthAsset, isAHPOrigin, isAHPDest, isEthDest;
|
|
3216
3216
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
3217
3217
|
while (1) switch (_context.prev = _context.next) {
|
|
3218
3218
|
case 0:
|
|
@@ -3220,15 +3220,22 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3220
3220
|
isRelayDestination = !isTMultiLocation(destination) && isRelayChain(destination);
|
|
3221
3221
|
scenario = isRelayDestination ? 'ParaToRelay' : 'ParaToPara';
|
|
3222
3222
|
paraId = resolveParaId(paraIdTo, destination);
|
|
3223
|
-
if (!(destination === 'Polimec' && this.node !== 'AssetHubPolkadot' && this.node !== 'Hydration')) {
|
|
3223
|
+
if (!(destination === 'Polimec' && this.node !== 'AssetHubPolkadot' && this.node !== 'Hydration' && this.node !== destination)) {
|
|
3224
3224
|
_context.next = 6;
|
|
3225
3225
|
break;
|
|
3226
3226
|
}
|
|
3227
3227
|
throw new Error('Sending assets to Polimec is supported only from AssetHubPolkadot and Hydration');
|
|
3228
3228
|
case 6:
|
|
3229
3229
|
versionOrDefault = version !== null && version !== void 0 ? version : this.version;
|
|
3230
|
+
isLocalTransfer = this.node === destination;
|
|
3231
|
+
if (!isLocalTransfer) {
|
|
3232
|
+
_context.next = 10;
|
|
3233
|
+
break;
|
|
3234
|
+
}
|
|
3235
|
+
return _context.abrupt("return", this.transferLocal(options));
|
|
3236
|
+
case 10:
|
|
3230
3237
|
if (!(supportsXTokens(this) && this.canUseXTokens(options))) {
|
|
3231
|
-
_context.next =
|
|
3238
|
+
_context.next = 20;
|
|
3232
3239
|
break;
|
|
3233
3240
|
}
|
|
3234
3241
|
isBifrostOrigin = this.node === 'BifrostPolkadot' || this.node === 'BifrostKusama';
|
|
@@ -3255,15 +3262,15 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3255
3262
|
method: method
|
|
3256
3263
|
};
|
|
3257
3264
|
if (!shouldUseMultiasset) {
|
|
3258
|
-
_context.next =
|
|
3265
|
+
_context.next = 17;
|
|
3259
3266
|
break;
|
|
3260
3267
|
}
|
|
3261
3268
|
return _context.abrupt("return", XTokensTransferImpl.transferXTokens(input, undefined));
|
|
3262
|
-
case 14:
|
|
3263
|
-
return _context.abrupt("return", this.transferXTokens(input));
|
|
3264
3269
|
case 17:
|
|
3270
|
+
return _context.abrupt("return", this.transferXTokens(input));
|
|
3271
|
+
case 20:
|
|
3265
3272
|
if (!supportsXTransfer(this)) {
|
|
3266
|
-
_context.next =
|
|
3273
|
+
_context.next = 24;
|
|
3267
3274
|
break;
|
|
3268
3275
|
}
|
|
3269
3276
|
return _context.abrupt("return", this.transferXTransfer({
|
|
@@ -3277,9 +3284,9 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3277
3284
|
pallet: pallet,
|
|
3278
3285
|
method: method
|
|
3279
3286
|
}));
|
|
3280
|
-
case
|
|
3287
|
+
case 24:
|
|
3281
3288
|
if (!supportsPolkadotXCM(this)) {
|
|
3282
|
-
_context.next =
|
|
3289
|
+
_context.next = 37;
|
|
3283
3290
|
break;
|
|
3284
3291
|
}
|
|
3285
3292
|
_options = {
|
|
@@ -3311,21 +3318,21 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3311
3318
|
isAHPDest = destination === 'AssetHubPolkadot' || destination === 'AssetHubKusama';
|
|
3312
3319
|
isEthDest = destination === 'Ethereum'; // Any origin to any dest via AH - DestinationReserve - multiple instructions
|
|
3313
3320
|
if (!(isEthAsset && !isAHPOrigin && !isAHPDest && !isEthDest)) {
|
|
3314
|
-
_context.next =
|
|
3321
|
+
_context.next = 32;
|
|
3315
3322
|
break;
|
|
3316
3323
|
}
|
|
3317
3324
|
return _context.abrupt("return", this.transferEthAssetViaAH(_options));
|
|
3318
|
-
case
|
|
3325
|
+
case 32:
|
|
3319
3326
|
if (!(isEthAsset && isAHPDest && !isAHPOrigin && !isEthDest)) {
|
|
3320
|
-
_context.next =
|
|
3327
|
+
_context.next = 34;
|
|
3321
3328
|
break;
|
|
3322
3329
|
}
|
|
3323
3330
|
return _context.abrupt("return", this.transferToEthereum(_options, true));
|
|
3324
|
-
case 31:
|
|
3325
|
-
return _context.abrupt("return", this.transferPolkadotXCM(_options));
|
|
3326
3331
|
case 34:
|
|
3332
|
+
return _context.abrupt("return", this.transferPolkadotXCM(_options));
|
|
3333
|
+
case 37:
|
|
3327
3334
|
throw new NoXCMSupportImplementedError(this._node);
|
|
3328
|
-
case
|
|
3335
|
+
case 38:
|
|
3329
3336
|
case "end":
|
|
3330
3337
|
return _context.stop();
|
|
3331
3338
|
}
|
|
@@ -3380,6 +3387,65 @@ var ParachainNode = /*#__PURE__*/function () {
|
|
|
3380
3387
|
value: function getNativeAssetSymbol$1() {
|
|
3381
3388
|
return getNativeAssetSymbol(this.node);
|
|
3382
3389
|
}
|
|
3390
|
+
}, {
|
|
3391
|
+
key: "transferLocal",
|
|
3392
|
+
value: function transferLocal(options) {
|
|
3393
|
+
var asset = options.asset,
|
|
3394
|
+
address = options.address;
|
|
3395
|
+
if (isTMultiLocation(address)) {
|
|
3396
|
+
throw new InvalidAddressError('Multi-Location address is not supported for local transfers');
|
|
3397
|
+
}
|
|
3398
|
+
var validatedOptions = _objectSpread2(_objectSpread2({}, options), {}, {
|
|
3399
|
+
address: address
|
|
3400
|
+
});
|
|
3401
|
+
var isNativeAsset = asset.symbol === this.getNativeAssetSymbol() && !isForeignAsset(asset);
|
|
3402
|
+
if (isNativeAsset) {
|
|
3403
|
+
return this.transferLocalNativeAsset(validatedOptions);
|
|
3404
|
+
} else {
|
|
3405
|
+
return this.transferLocalNonNativeAsset(validatedOptions);
|
|
3406
|
+
}
|
|
3407
|
+
}
|
|
3408
|
+
}, {
|
|
3409
|
+
key: "transferLocalNativeAsset",
|
|
3410
|
+
value: function transferLocalNativeAsset(options) {
|
|
3411
|
+
var api = options.api,
|
|
3412
|
+
asset = options.asset,
|
|
3413
|
+
address = options.address;
|
|
3414
|
+
return api.callTxMethod({
|
|
3415
|
+
module: 'Balances',
|
|
3416
|
+
section: 'transfer_keep_alive',
|
|
3417
|
+
parameters: {
|
|
3418
|
+
dest: isNodeEvm(this.node) ? address : {
|
|
3419
|
+
Id: address
|
|
3420
|
+
},
|
|
3421
|
+
value: BigInt(asset.amount)
|
|
3422
|
+
}
|
|
3423
|
+
});
|
|
3424
|
+
}
|
|
3425
|
+
}, {
|
|
3426
|
+
key: "transferLocalNonNativeAsset",
|
|
3427
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
3428
|
+
var api = options.api,
|
|
3429
|
+
asset = options.asset,
|
|
3430
|
+
address = options.address;
|
|
3431
|
+
if (!isForeignAsset(asset)) {
|
|
3432
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
3433
|
+
}
|
|
3434
|
+
if (asset.assetId === undefined) {
|
|
3435
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
3436
|
+
}
|
|
3437
|
+
return api.callTxMethod({
|
|
3438
|
+
module: 'Tokens',
|
|
3439
|
+
section: 'transfer',
|
|
3440
|
+
parameters: {
|
|
3441
|
+
dest: {
|
|
3442
|
+
Id: address
|
|
3443
|
+
},
|
|
3444
|
+
currency_id: BigInt(asset.assetId),
|
|
3445
|
+
amount: BigInt(asset.amount)
|
|
3446
|
+
}
|
|
3447
|
+
});
|
|
3448
|
+
}
|
|
3383
3449
|
}, {
|
|
3384
3450
|
key: "transferEthAssetViaAH",
|
|
3385
3451
|
value: function () {
|
|
@@ -3636,16 +3702,61 @@ var Acala = /*#__PURE__*/function (_ParachainNode) {
|
|
|
3636
3702
|
}
|
|
3637
3703
|
_inherits(Acala, _ParachainNode);
|
|
3638
3704
|
return _createClass(Acala, [{
|
|
3639
|
-
key: "
|
|
3640
|
-
value: function
|
|
3641
|
-
|
|
3642
|
-
var currencySelection = isForeignAsset(asset) ? {
|
|
3705
|
+
key: "getCurrencySelection",
|
|
3706
|
+
value: function getCurrencySelection(asset) {
|
|
3707
|
+
return isForeignAsset(asset) ? {
|
|
3643
3708
|
ForeignAsset: Number(asset.assetId)
|
|
3644
3709
|
} : {
|
|
3645
3710
|
Token: asset.symbol
|
|
3646
3711
|
};
|
|
3712
|
+
}
|
|
3713
|
+
}, {
|
|
3714
|
+
key: "transferXTokens",
|
|
3715
|
+
value: function transferXTokens(input) {
|
|
3716
|
+
var asset = input.asset;
|
|
3717
|
+
var currencySelection = this.getCurrencySelection(asset);
|
|
3647
3718
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
3648
3719
|
}
|
|
3720
|
+
}, {
|
|
3721
|
+
key: "transferLocalNativeAsset",
|
|
3722
|
+
value: function transferLocalNativeAsset(options) {
|
|
3723
|
+
var api = options.api,
|
|
3724
|
+
asset = options.asset,
|
|
3725
|
+
address = options.address;
|
|
3726
|
+
return api.callTxMethod({
|
|
3727
|
+
module: 'Currencies',
|
|
3728
|
+
section: 'transfer_native_currency',
|
|
3729
|
+
parameters: {
|
|
3730
|
+
dest: {
|
|
3731
|
+
Id: address
|
|
3732
|
+
},
|
|
3733
|
+
amount: BigInt(asset.amount)
|
|
3734
|
+
}
|
|
3735
|
+
});
|
|
3736
|
+
}
|
|
3737
|
+
}, {
|
|
3738
|
+
key: "transferLocalNonNativeAsset",
|
|
3739
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
3740
|
+
var api = options.api,
|
|
3741
|
+
asset = options.asset,
|
|
3742
|
+
address = options.address;
|
|
3743
|
+
if (asset.symbol.toLowerCase() === 'lcdot') {
|
|
3744
|
+
throw new InvalidCurrencyError('LcDOT local transfers are not supported');
|
|
3745
|
+
}
|
|
3746
|
+
return api.callTxMethod({
|
|
3747
|
+
module: 'Currencies',
|
|
3748
|
+
section: 'transfer',
|
|
3749
|
+
parameters: {
|
|
3750
|
+
dest: {
|
|
3751
|
+
Id: address
|
|
3752
|
+
},
|
|
3753
|
+
currency_id: this.getCurrencySelection(_objectSpread2(_objectSpread2({}, asset), {}, {
|
|
3754
|
+
symbol: asset.symbol === 'aSEED' ? 'AUSD' : asset.symbol
|
|
3755
|
+
})),
|
|
3756
|
+
amount: BigInt(asset.amount)
|
|
3757
|
+
}
|
|
3758
|
+
});
|
|
3759
|
+
}
|
|
3649
3760
|
}]);
|
|
3650
3761
|
}(ParachainNode);
|
|
3651
3762
|
|
|
@@ -3673,6 +3784,30 @@ var Altair = /*#__PURE__*/function (_ParachainNode) {
|
|
|
3673
3784
|
var currencySelection = this.getCurrencySelection(asset);
|
|
3674
3785
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
3675
3786
|
}
|
|
3787
|
+
}, {
|
|
3788
|
+
key: "transferLocalNonNativeAsset",
|
|
3789
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
3790
|
+
var api = options.api,
|
|
3791
|
+
asset = options.asset,
|
|
3792
|
+
address = options.address;
|
|
3793
|
+
if (!isForeignAsset(asset)) {
|
|
3794
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
3795
|
+
}
|
|
3796
|
+
if (asset.assetId === undefined) {
|
|
3797
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
3798
|
+
}
|
|
3799
|
+
return api.callTxMethod({
|
|
3800
|
+
module: 'Tokens',
|
|
3801
|
+
section: 'transfer',
|
|
3802
|
+
parameters: {
|
|
3803
|
+
dest: {
|
|
3804
|
+
Id: address
|
|
3805
|
+
},
|
|
3806
|
+
currency_id: this.getCurrencySelection(asset),
|
|
3807
|
+
amount: BigInt(asset.amount)
|
|
3808
|
+
}
|
|
3809
|
+
});
|
|
3810
|
+
}
|
|
3676
3811
|
}]);
|
|
3677
3812
|
}(ParachainNode);
|
|
3678
3813
|
|
|
@@ -3778,6 +3913,11 @@ var AssetHubKusama = /*#__PURE__*/function (_ParachainNode) {
|
|
|
3778
3913
|
value: function createCurrencySpec(amount, scenario, version, asset, isOverridenAsset) {
|
|
3779
3914
|
return getNode('AssetHubPolkadot').createCurrencySpec(amount, scenario, version, asset, isOverridenAsset);
|
|
3780
3915
|
}
|
|
3916
|
+
}, {
|
|
3917
|
+
key: "transferLocalNonNativeAsset",
|
|
3918
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
3919
|
+
return getNode('AssetHubPolkadot').transferLocalNonNativeAsset(options);
|
|
3920
|
+
}
|
|
3781
3921
|
}]);
|
|
3782
3922
|
}(ParachainNode);
|
|
3783
3923
|
|
|
@@ -4344,6 +4484,40 @@ var AssetHubPolkadot = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4344
4484
|
return _superPropGet(AssetHubPolkadot, "createCurrencySpec", this, 3)([amount, scenario, version, asset]);
|
|
4345
4485
|
}
|
|
4346
4486
|
}
|
|
4487
|
+
}, {
|
|
4488
|
+
key: "transferLocalNonNativeAsset",
|
|
4489
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4490
|
+
var api = options.api,
|
|
4491
|
+
asset = options.asset,
|
|
4492
|
+
address = options.address;
|
|
4493
|
+
if (!isForeignAsset(asset)) {
|
|
4494
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
4495
|
+
}
|
|
4496
|
+
if (asset.assetId !== undefined) {
|
|
4497
|
+
return api.callTxMethod({
|
|
4498
|
+
module: 'Assets',
|
|
4499
|
+
section: 'transfer',
|
|
4500
|
+
parameters: {
|
|
4501
|
+
id: Number(asset.assetId),
|
|
4502
|
+
target: {
|
|
4503
|
+
Id: address
|
|
4504
|
+
},
|
|
4505
|
+
amount: BigInt(asset.amount)
|
|
4506
|
+
}
|
|
4507
|
+
});
|
|
4508
|
+
}
|
|
4509
|
+
return api.callTxMethod({
|
|
4510
|
+
module: 'ForeignAssets',
|
|
4511
|
+
section: 'transfer',
|
|
4512
|
+
parameters: {
|
|
4513
|
+
id: asset.multiLocation,
|
|
4514
|
+
target: {
|
|
4515
|
+
Id: address
|
|
4516
|
+
},
|
|
4517
|
+
amount: BigInt(asset.amount)
|
|
4518
|
+
}
|
|
4519
|
+
});
|
|
4520
|
+
}
|
|
4347
4521
|
}]);
|
|
4348
4522
|
}(ParachainNode);
|
|
4349
4523
|
|
|
@@ -4374,6 +4548,30 @@ var Astar = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4374
4548
|
var asset = _ref.asset;
|
|
4375
4549
|
return asset.symbol !== this.getNativeAssetSymbol();
|
|
4376
4550
|
}
|
|
4551
|
+
}, {
|
|
4552
|
+
key: "transferLocalNonNativeAsset",
|
|
4553
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4554
|
+
var api = options.api,
|
|
4555
|
+
asset = options.asset,
|
|
4556
|
+
address = options.address;
|
|
4557
|
+
if (!isForeignAsset(asset)) {
|
|
4558
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
4559
|
+
}
|
|
4560
|
+
if (asset.assetId === undefined) {
|
|
4561
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
4562
|
+
}
|
|
4563
|
+
return api.callTxMethod({
|
|
4564
|
+
module: 'Assets',
|
|
4565
|
+
section: 'transfer',
|
|
4566
|
+
parameters: {
|
|
4567
|
+
id: Number(asset.assetId),
|
|
4568
|
+
target: {
|
|
4569
|
+
Id: address
|
|
4570
|
+
},
|
|
4571
|
+
amount: BigInt(asset.amount)
|
|
4572
|
+
}
|
|
4573
|
+
});
|
|
4574
|
+
}
|
|
4377
4575
|
}]);
|
|
4378
4576
|
}(ParachainNode);
|
|
4379
4577
|
|
|
@@ -4392,6 +4590,16 @@ var Basilisk = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4392
4590
|
}
|
|
4393
4591
|
return XTokensTransferImpl.transferXTokens(input, Number(asset.assetId));
|
|
4394
4592
|
}
|
|
4593
|
+
}, {
|
|
4594
|
+
key: "transferLocalNativeAsset",
|
|
4595
|
+
value: function transferLocalNativeAsset(options) {
|
|
4596
|
+
return getNode('Hydration').transferLocalNativeAsset(options);
|
|
4597
|
+
}
|
|
4598
|
+
}, {
|
|
4599
|
+
key: "transferLocalNonNativeAsset",
|
|
4600
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4601
|
+
return getNode('Hydration').transferLocalNonNativeAsset(options);
|
|
4602
|
+
}
|
|
4395
4603
|
}]);
|
|
4396
4604
|
}(ParachainNode);
|
|
4397
4605
|
|
|
@@ -4406,6 +4614,11 @@ var BifrostKusama = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4406
4614
|
value: function transferXTokens(input) {
|
|
4407
4615
|
return getNode('BifrostPolkadot').transferXTokens(input);
|
|
4408
4616
|
}
|
|
4617
|
+
}, {
|
|
4618
|
+
key: "transferLocalNonNativeAsset",
|
|
4619
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4620
|
+
return getNode('BifrostPolkadot').transferLocalNonNativeAsset(options);
|
|
4621
|
+
}
|
|
4409
4622
|
}]);
|
|
4410
4623
|
}(ParachainNode);
|
|
4411
4624
|
|
|
@@ -4490,6 +4703,24 @@ var BifrostPolkadot = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4490
4703
|
if (destination === 'Ethereum') return false;
|
|
4491
4704
|
return asset.symbol !== 'WETH' && asset.symbol !== 'DOT' || destination !== 'AssetHubPolkadot';
|
|
4492
4705
|
}
|
|
4706
|
+
}, {
|
|
4707
|
+
key: "transferLocalNonNativeAsset",
|
|
4708
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4709
|
+
var api = options.api,
|
|
4710
|
+
asset = options.asset,
|
|
4711
|
+
address = options.address;
|
|
4712
|
+
return api.callTxMethod({
|
|
4713
|
+
module: 'Tokens',
|
|
4714
|
+
section: 'transfer',
|
|
4715
|
+
parameters: {
|
|
4716
|
+
dest: {
|
|
4717
|
+
Id: address
|
|
4718
|
+
},
|
|
4719
|
+
currency_id: this.getCurrencySelection(asset),
|
|
4720
|
+
amount: BigInt(asset.amount)
|
|
4721
|
+
}
|
|
4722
|
+
});
|
|
4723
|
+
}
|
|
4493
4724
|
}]);
|
|
4494
4725
|
}(ParachainNode);
|
|
4495
4726
|
|
|
@@ -4608,6 +4839,30 @@ var Centrifuge = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4608
4839
|
var currencySelection = this.getCurrencySelection(asset);
|
|
4609
4840
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
4610
4841
|
}
|
|
4842
|
+
}, {
|
|
4843
|
+
key: "transferLocalNonNativeAsset",
|
|
4844
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
4845
|
+
var api = options.api,
|
|
4846
|
+
asset = options.asset,
|
|
4847
|
+
address = options.address;
|
|
4848
|
+
if (!isForeignAsset(asset)) {
|
|
4849
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
4850
|
+
}
|
|
4851
|
+
if (asset.assetId === undefined) {
|
|
4852
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
4853
|
+
}
|
|
4854
|
+
return api.callTxMethod({
|
|
4855
|
+
module: 'Tokens',
|
|
4856
|
+
section: 'transfer',
|
|
4857
|
+
parameters: {
|
|
4858
|
+
dest: {
|
|
4859
|
+
Id: address
|
|
4860
|
+
},
|
|
4861
|
+
currency_id: this.getCurrencySelection(asset),
|
|
4862
|
+
amount: BigInt(asset.amount)
|
|
4863
|
+
}
|
|
4864
|
+
});
|
|
4865
|
+
}
|
|
4611
4866
|
}]);
|
|
4612
4867
|
}(ParachainNode);
|
|
4613
4868
|
|
|
@@ -4751,6 +5006,11 @@ var Crab = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4751
5006
|
return _superPropGet(Crab, "createCurrencySpec", this, 3)([amount, scenario, version]);
|
|
4752
5007
|
}
|
|
4753
5008
|
}
|
|
5009
|
+
}, {
|
|
5010
|
+
key: "transferLocalNonNativeAsset",
|
|
5011
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5012
|
+
return getNode('Darwinia').transferLocalNonNativeAsset(options);
|
|
5013
|
+
}
|
|
4754
5014
|
}]);
|
|
4755
5015
|
}(ParachainNode);
|
|
4756
5016
|
|
|
@@ -4780,6 +5040,30 @@ var Crust = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4780
5040
|
var currencySelection = this.getCurrencySelection(asset);
|
|
4781
5041
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
4782
5042
|
}
|
|
5043
|
+
}, {
|
|
5044
|
+
key: "transferLocalNonNativeAsset",
|
|
5045
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5046
|
+
var api = options.api,
|
|
5047
|
+
asset = options.asset,
|
|
5048
|
+
address = options.address;
|
|
5049
|
+
if (!isForeignAsset(asset)) {
|
|
5050
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5051
|
+
}
|
|
5052
|
+
if (asset.assetId === undefined) {
|
|
5053
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5054
|
+
}
|
|
5055
|
+
return api.callTxMethod({
|
|
5056
|
+
module: 'Assets',
|
|
5057
|
+
section: 'transfer',
|
|
5058
|
+
parameters: {
|
|
5059
|
+
id: BigInt(asset.assetId),
|
|
5060
|
+
target: {
|
|
5061
|
+
Id: address
|
|
5062
|
+
},
|
|
5063
|
+
amount: BigInt(asset.amount)
|
|
5064
|
+
}
|
|
5065
|
+
});
|
|
5066
|
+
}
|
|
4783
5067
|
}]);
|
|
4784
5068
|
}(ParachainNode);
|
|
4785
5069
|
|
|
@@ -4809,6 +5093,11 @@ var CrustShadow = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4809
5093
|
var currencySelection = this.getCurrencySelection(asset);
|
|
4810
5094
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
4811
5095
|
}
|
|
5096
|
+
}, {
|
|
5097
|
+
key: "transferLocalNonNativeAsset",
|
|
5098
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5099
|
+
return getNode('Crust').transferLocalNonNativeAsset(options);
|
|
5100
|
+
}
|
|
4812
5101
|
}]);
|
|
4813
5102
|
}(ParachainNode);
|
|
4814
5103
|
|
|
@@ -4847,6 +5136,28 @@ var Darwinia = /*#__PURE__*/function (_ParachainNode) {
|
|
|
4847
5136
|
}
|
|
4848
5137
|
return Promise.resolve(PolkadotXCMTransferImpl.transferPolkadotXCM(input, 'reserve_transfer_assets'));
|
|
4849
5138
|
}
|
|
5139
|
+
}, {
|
|
5140
|
+
key: "transferLocalNonNativeAsset",
|
|
5141
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5142
|
+
var api = options.api,
|
|
5143
|
+
asset = options.asset,
|
|
5144
|
+
address = options.address;
|
|
5145
|
+
if (!isForeignAsset(asset)) {
|
|
5146
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5147
|
+
}
|
|
5148
|
+
if (asset.assetId === undefined) {
|
|
5149
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5150
|
+
}
|
|
5151
|
+
return api.callTxMethod({
|
|
5152
|
+
module: 'Assets',
|
|
5153
|
+
section: 'transfer',
|
|
5154
|
+
parameters: {
|
|
5155
|
+
id: BigInt(asset.assetId),
|
|
5156
|
+
target: address,
|
|
5157
|
+
amount: BigInt(asset.amount)
|
|
5158
|
+
}
|
|
5159
|
+
});
|
|
5160
|
+
}
|
|
4850
5161
|
}]);
|
|
4851
5162
|
}(ParachainNode);
|
|
4852
5163
|
|
|
@@ -5058,6 +5369,30 @@ var Polimec = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5058
5369
|
}), version, 'Teleport');
|
|
5059
5370
|
return call;
|
|
5060
5371
|
}
|
|
5372
|
+
}, {
|
|
5373
|
+
key: "transferLocalNonNativeAsset",
|
|
5374
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5375
|
+
var api = options.api,
|
|
5376
|
+
asset = options.asset,
|
|
5377
|
+
address = options.address;
|
|
5378
|
+
if (!isForeignAsset(asset)) {
|
|
5379
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5380
|
+
}
|
|
5381
|
+
if (asset.multiLocation === undefined) {
|
|
5382
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no multi-location"));
|
|
5383
|
+
}
|
|
5384
|
+
return api.callTxMethod({
|
|
5385
|
+
module: 'ForeignAssets',
|
|
5386
|
+
section: 'transfer',
|
|
5387
|
+
parameters: {
|
|
5388
|
+
id: asset.multiLocation,
|
|
5389
|
+
target: {
|
|
5390
|
+
Id: address
|
|
5391
|
+
},
|
|
5392
|
+
amount: BigInt(asset.amount)
|
|
5393
|
+
}
|
|
5394
|
+
});
|
|
5395
|
+
}
|
|
5061
5396
|
}]);
|
|
5062
5397
|
}(ParachainNode);
|
|
5063
5398
|
|
|
@@ -5187,6 +5522,43 @@ var Hydration = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5187
5522
|
var isEthAsset = asset.multiLocation && findAssetByMultiLocation(getOtherAssets('Ethereum'), asset.multiLocation);
|
|
5188
5523
|
return destination !== 'Ethereum' && destination !== 'Polimec' && !(destination === 'AssetHubPolkadot' && asset.symbol === 'DOT') && !isEthAsset;
|
|
5189
5524
|
}
|
|
5525
|
+
}, {
|
|
5526
|
+
key: "transferLocalNativeAsset",
|
|
5527
|
+
value: function transferLocalNativeAsset(options) {
|
|
5528
|
+
var api = options.api,
|
|
5529
|
+
asset = options.asset,
|
|
5530
|
+
address = options.address;
|
|
5531
|
+
return api.callTxMethod({
|
|
5532
|
+
module: 'Balances',
|
|
5533
|
+
section: 'transfer_keep_alive',
|
|
5534
|
+
parameters: {
|
|
5535
|
+
dest: address,
|
|
5536
|
+
value: BigInt(asset.amount)
|
|
5537
|
+
}
|
|
5538
|
+
});
|
|
5539
|
+
}
|
|
5540
|
+
}, {
|
|
5541
|
+
key: "transferLocalNonNativeAsset",
|
|
5542
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5543
|
+
var api = options.api,
|
|
5544
|
+
asset = options.asset,
|
|
5545
|
+
address = options.address;
|
|
5546
|
+
if (!isForeignAsset(asset)) {
|
|
5547
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5548
|
+
}
|
|
5549
|
+
if (asset.assetId === undefined) {
|
|
5550
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5551
|
+
}
|
|
5552
|
+
return api.callTxMethod({
|
|
5553
|
+
module: 'Tokens',
|
|
5554
|
+
section: 'transfer',
|
|
5555
|
+
parameters: {
|
|
5556
|
+
dest: address,
|
|
5557
|
+
currency_id: Number(asset.assetId),
|
|
5558
|
+
amount: BigInt(asset.amount)
|
|
5559
|
+
}
|
|
5560
|
+
});
|
|
5561
|
+
}
|
|
5190
5562
|
}]);
|
|
5191
5563
|
}(ParachainNode);
|
|
5192
5564
|
Hydration.NATIVE_ASSET_ID = 0;
|
|
@@ -5198,16 +5570,42 @@ var Interlay = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5198
5570
|
}
|
|
5199
5571
|
_inherits(Interlay, _ParachainNode);
|
|
5200
5572
|
return _createClass(Interlay, [{
|
|
5201
|
-
key: "
|
|
5202
|
-
value: function
|
|
5203
|
-
|
|
5204
|
-
var currencySelection = isForeignAsset(asset) ? {
|
|
5573
|
+
key: "getCurrencySelection",
|
|
5574
|
+
value: function getCurrencySelection(asset) {
|
|
5575
|
+
return isForeignAsset(asset) ? {
|
|
5205
5576
|
ForeignAsset: Number(asset.assetId)
|
|
5206
5577
|
} : {
|
|
5207
5578
|
Token: asset.symbol
|
|
5208
5579
|
};
|
|
5580
|
+
}
|
|
5581
|
+
}, {
|
|
5582
|
+
key: "transferXTokens",
|
|
5583
|
+
value: function transferXTokens(input) {
|
|
5584
|
+
var asset = input.asset;
|
|
5585
|
+
var currencySelection = this.getCurrencySelection(asset);
|
|
5209
5586
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
5210
5587
|
}
|
|
5588
|
+
}, {
|
|
5589
|
+
key: "transferLocalNativeAsset",
|
|
5590
|
+
value: function transferLocalNativeAsset(options) {
|
|
5591
|
+
return this.transferLocalNonNativeAsset(options);
|
|
5592
|
+
}
|
|
5593
|
+
}, {
|
|
5594
|
+
key: "transferLocalNonNativeAsset",
|
|
5595
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5596
|
+
var api = options.api,
|
|
5597
|
+
asset = options.asset,
|
|
5598
|
+
address = options.address;
|
|
5599
|
+
return api.callTxMethod({
|
|
5600
|
+
module: 'Tokens',
|
|
5601
|
+
section: 'transfer',
|
|
5602
|
+
parameters: {
|
|
5603
|
+
dest: address,
|
|
5604
|
+
currency_id: this.getCurrencySelection(asset),
|
|
5605
|
+
value: BigInt(asset.amount)
|
|
5606
|
+
}
|
|
5607
|
+
});
|
|
5608
|
+
}
|
|
5211
5609
|
}]);
|
|
5212
5610
|
}(ParachainNode);
|
|
5213
5611
|
|
|
@@ -5240,6 +5638,16 @@ var Karura = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5240
5638
|
value: function transferXTokens(input) {
|
|
5241
5639
|
return getNode('Acala').transferXTokens(input);
|
|
5242
5640
|
}
|
|
5641
|
+
}, {
|
|
5642
|
+
key: "transferLocalNativeAsset",
|
|
5643
|
+
value: function transferLocalNativeAsset(options) {
|
|
5644
|
+
return getNode('Acala').transferLocalNativeAsset(options);
|
|
5645
|
+
}
|
|
5646
|
+
}, {
|
|
5647
|
+
key: "transferLocalNonNativeAsset",
|
|
5648
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5649
|
+
return getNode('Acala').transferLocalNonNativeAsset(options);
|
|
5650
|
+
}
|
|
5243
5651
|
}]);
|
|
5244
5652
|
}(ParachainNode);
|
|
5245
5653
|
|
|
@@ -5272,16 +5680,42 @@ var Kintsugi = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5272
5680
|
}
|
|
5273
5681
|
_inherits(Kintsugi, _ParachainNode);
|
|
5274
5682
|
return _createClass(Kintsugi, [{
|
|
5275
|
-
key: "
|
|
5276
|
-
value: function
|
|
5277
|
-
|
|
5278
|
-
var currencySelection = isForeignAsset(asset) ? {
|
|
5683
|
+
key: "getCurrencySelection",
|
|
5684
|
+
value: function getCurrencySelection(asset) {
|
|
5685
|
+
return isForeignAsset(asset) ? {
|
|
5279
5686
|
ForeignAsset: Number(asset.assetId)
|
|
5280
5687
|
} : {
|
|
5281
5688
|
Token: asset.symbol
|
|
5282
5689
|
};
|
|
5690
|
+
}
|
|
5691
|
+
}, {
|
|
5692
|
+
key: "transferXTokens",
|
|
5693
|
+
value: function transferXTokens(input) {
|
|
5694
|
+
var asset = input.asset;
|
|
5695
|
+
var currencySelection = this.getCurrencySelection(asset);
|
|
5283
5696
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
5284
5697
|
}
|
|
5698
|
+
}, {
|
|
5699
|
+
key: "transferLocalNativeAsset",
|
|
5700
|
+
value: function transferLocalNativeAsset(options) {
|
|
5701
|
+
return this.transferLocalNonNativeAsset(options);
|
|
5702
|
+
}
|
|
5703
|
+
}, {
|
|
5704
|
+
key: "transferLocalNonNativeAsset",
|
|
5705
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5706
|
+
var api = options.api,
|
|
5707
|
+
asset = options.asset,
|
|
5708
|
+
address = options.address;
|
|
5709
|
+
return api.callTxMethod({
|
|
5710
|
+
module: 'Tokens',
|
|
5711
|
+
section: 'transfer',
|
|
5712
|
+
parameters: {
|
|
5713
|
+
dest: address,
|
|
5714
|
+
currency_id: this.getCurrencySelection(asset),
|
|
5715
|
+
value: BigInt(asset.amount)
|
|
5716
|
+
}
|
|
5717
|
+
});
|
|
5718
|
+
}
|
|
5285
5719
|
}]);
|
|
5286
5720
|
}(ParachainNode);
|
|
5287
5721
|
|
|
@@ -5309,6 +5743,30 @@ var Manta = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5309
5743
|
};
|
|
5310
5744
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
5311
5745
|
}
|
|
5746
|
+
}, {
|
|
5747
|
+
key: "transferLocalNonNativeAsset",
|
|
5748
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5749
|
+
var api = options.api,
|
|
5750
|
+
asset = options.asset,
|
|
5751
|
+
address = options.address;
|
|
5752
|
+
if (!isForeignAsset(asset)) {
|
|
5753
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5754
|
+
}
|
|
5755
|
+
if (asset.assetId === undefined) {
|
|
5756
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5757
|
+
}
|
|
5758
|
+
return api.callTxMethod({
|
|
5759
|
+
module: 'Assets',
|
|
5760
|
+
section: 'transfer',
|
|
5761
|
+
parameters: {
|
|
5762
|
+
id: BigInt(asset.assetId),
|
|
5763
|
+
target: {
|
|
5764
|
+
Id: address
|
|
5765
|
+
},
|
|
5766
|
+
amount: BigInt(asset.amount)
|
|
5767
|
+
}
|
|
5768
|
+
});
|
|
5769
|
+
}
|
|
5312
5770
|
}]);
|
|
5313
5771
|
}(ParachainNode);
|
|
5314
5772
|
Manta.NATIVE_ASSET_ID = 1n;
|
|
@@ -5356,6 +5814,28 @@ var Moonbeam = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5356
5814
|
includeFee: true
|
|
5357
5815
|
};
|
|
5358
5816
|
}
|
|
5817
|
+
}, {
|
|
5818
|
+
key: "transferLocalNonNativeAsset",
|
|
5819
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5820
|
+
var api = options.api,
|
|
5821
|
+
asset = options.asset,
|
|
5822
|
+
address = options.address;
|
|
5823
|
+
if (!isForeignAsset(asset)) {
|
|
5824
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5825
|
+
}
|
|
5826
|
+
if (asset.assetId === undefined) {
|
|
5827
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5828
|
+
}
|
|
5829
|
+
return api.callTxMethod({
|
|
5830
|
+
module: 'Assets',
|
|
5831
|
+
section: 'transfer',
|
|
5832
|
+
parameters: {
|
|
5833
|
+
id: BigInt(asset.assetId),
|
|
5834
|
+
target: address,
|
|
5835
|
+
amount: BigInt(asset.amount)
|
|
5836
|
+
}
|
|
5837
|
+
});
|
|
5838
|
+
}
|
|
5359
5839
|
}]);
|
|
5360
5840
|
}(ParachainNode);
|
|
5361
5841
|
|
|
@@ -5402,6 +5882,11 @@ var Moonriver = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5402
5882
|
includeFee: true
|
|
5403
5883
|
};
|
|
5404
5884
|
}
|
|
5885
|
+
}, {
|
|
5886
|
+
key: "transferLocalNonNativeAsset",
|
|
5887
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5888
|
+
return getNode('Moonbeam').transferLocalNonNativeAsset(options);
|
|
5889
|
+
}
|
|
5405
5890
|
}]);
|
|
5406
5891
|
}(ParachainNode);
|
|
5407
5892
|
|
|
@@ -5499,6 +5984,30 @@ var Peaq = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5499
5984
|
value: function transferRelayToPara() {
|
|
5500
5985
|
throw new NodeNotSupportedError();
|
|
5501
5986
|
}
|
|
5987
|
+
}, {
|
|
5988
|
+
key: "transferLocalNonNativeAsset",
|
|
5989
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
5990
|
+
var api = options.api,
|
|
5991
|
+
asset = options.asset,
|
|
5992
|
+
address = options.address;
|
|
5993
|
+
if (!isForeignAsset(asset)) {
|
|
5994
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
5995
|
+
}
|
|
5996
|
+
if (asset.assetId === undefined) {
|
|
5997
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
5998
|
+
}
|
|
5999
|
+
return api.callTxMethod({
|
|
6000
|
+
module: 'Assets',
|
|
6001
|
+
section: 'transfer',
|
|
6002
|
+
parameters: {
|
|
6003
|
+
id: BigInt(asset.assetId),
|
|
6004
|
+
target: {
|
|
6005
|
+
Id: address
|
|
6006
|
+
},
|
|
6007
|
+
amount: BigInt(asset.amount)
|
|
6008
|
+
}
|
|
6009
|
+
});
|
|
6010
|
+
}
|
|
5502
6011
|
}]);
|
|
5503
6012
|
}(ParachainNode);
|
|
5504
6013
|
|
|
@@ -5688,6 +6197,30 @@ var Phala = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5688
6197
|
}
|
|
5689
6198
|
return XTransferTransferImpl.transferXTransfer(input);
|
|
5690
6199
|
}
|
|
6200
|
+
}, {
|
|
6201
|
+
key: "transferLocalNonNativeAsset",
|
|
6202
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6203
|
+
var api = options.api,
|
|
6204
|
+
asset = options.asset,
|
|
6205
|
+
address = options.address;
|
|
6206
|
+
if (!isForeignAsset(asset)) {
|
|
6207
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
6208
|
+
}
|
|
6209
|
+
if (asset.assetId === undefined) {
|
|
6210
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
6211
|
+
}
|
|
6212
|
+
return api.callTxMethod({
|
|
6213
|
+
module: 'Assets',
|
|
6214
|
+
section: 'transfer',
|
|
6215
|
+
parameters: {
|
|
6216
|
+
id: BigInt(asset.assetId),
|
|
6217
|
+
target: {
|
|
6218
|
+
Id: address
|
|
6219
|
+
},
|
|
6220
|
+
amount: BigInt(asset.amount)
|
|
6221
|
+
}
|
|
6222
|
+
});
|
|
6223
|
+
}
|
|
5691
6224
|
}]);
|
|
5692
6225
|
}(ParachainNode);
|
|
5693
6226
|
|
|
@@ -5724,6 +6257,11 @@ var RobonomicsKusama = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5724
6257
|
value: function transferPolkadotXCM(input) {
|
|
5725
6258
|
return Promise.resolve(PolkadotXCMTransferImpl.transferPolkadotXCM(input, 'limited_reserve_transfer_assets', 'Unlimited'));
|
|
5726
6259
|
}
|
|
6260
|
+
}, {
|
|
6261
|
+
key: "transferLocalNonNativeAsset",
|
|
6262
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6263
|
+
return getNode('RobonomicsPolkadot').transferLocalNonNativeAsset(options);
|
|
6264
|
+
}
|
|
5727
6265
|
}]);
|
|
5728
6266
|
}(ParachainNode);
|
|
5729
6267
|
|
|
@@ -5738,6 +6276,30 @@ var RobonomicsPolkadot = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5738
6276
|
value: function transferPolkadotXCM(input) {
|
|
5739
6277
|
return Promise.resolve(PolkadotXCMTransferImpl.transferPolkadotXCM(input, 'limited_reserve_transfer_assets', 'Unlimited'));
|
|
5740
6278
|
}
|
|
6279
|
+
}, {
|
|
6280
|
+
key: "transferLocalNonNativeAsset",
|
|
6281
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6282
|
+
var api = options.api,
|
|
6283
|
+
asset = options.asset,
|
|
6284
|
+
address = options.address;
|
|
6285
|
+
if (!isForeignAsset(asset)) {
|
|
6286
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
6287
|
+
}
|
|
6288
|
+
if (asset.assetId === undefined) {
|
|
6289
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
6290
|
+
}
|
|
6291
|
+
return api.callTxMethod({
|
|
6292
|
+
module: 'Assets',
|
|
6293
|
+
section: 'transfer',
|
|
6294
|
+
parameters: {
|
|
6295
|
+
id: BigInt(asset.assetId),
|
|
6296
|
+
target: {
|
|
6297
|
+
Id: address
|
|
6298
|
+
},
|
|
6299
|
+
amount: BigInt(asset.amount)
|
|
6300
|
+
}
|
|
6301
|
+
});
|
|
6302
|
+
}
|
|
5741
6303
|
}]);
|
|
5742
6304
|
}(ParachainNode);
|
|
5743
6305
|
|
|
@@ -5765,6 +6327,11 @@ var Shiden = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5765
6327
|
var asset = _ref.asset;
|
|
5766
6328
|
return asset.symbol !== this.getNativeAssetSymbol();
|
|
5767
6329
|
}
|
|
6330
|
+
}, {
|
|
6331
|
+
key: "transferLocalNonNativeAsset",
|
|
6332
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6333
|
+
return getNode('Astar').transferLocalNonNativeAsset(options);
|
|
6334
|
+
}
|
|
5768
6335
|
}]);
|
|
5769
6336
|
}(ParachainNode);
|
|
5770
6337
|
|
|
@@ -5807,6 +6374,30 @@ var Turing = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5807
6374
|
useMultiAssetTransfer: true
|
|
5808
6375
|
}), BigInt(asset.assetId));
|
|
5809
6376
|
}
|
|
6377
|
+
}, {
|
|
6378
|
+
key: "transferLocalNonNativeAsset",
|
|
6379
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6380
|
+
var api = options.api,
|
|
6381
|
+
asset = options.asset,
|
|
6382
|
+
address = options.address;
|
|
6383
|
+
if (!isForeignAsset(asset)) {
|
|
6384
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
6385
|
+
}
|
|
6386
|
+
if (asset.assetId === undefined) {
|
|
6387
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
6388
|
+
}
|
|
6389
|
+
return api.callTxMethod({
|
|
6390
|
+
module: 'Currencies',
|
|
6391
|
+
section: 'transfer',
|
|
6392
|
+
parameters: {
|
|
6393
|
+
dest: {
|
|
6394
|
+
Id: address
|
|
6395
|
+
},
|
|
6396
|
+
currency_id: BigInt(asset.assetId),
|
|
6397
|
+
amount: BigInt(asset.amount)
|
|
6398
|
+
}
|
|
6399
|
+
});
|
|
6400
|
+
}
|
|
5810
6401
|
}]);
|
|
5811
6402
|
}(ParachainNode);
|
|
5812
6403
|
|
|
@@ -5828,6 +6419,11 @@ var Unique = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5828
6419
|
}
|
|
5829
6420
|
return XTokensTransferImpl.transferXTokens(input, Number(asset.assetId));
|
|
5830
6421
|
}
|
|
6422
|
+
}, {
|
|
6423
|
+
key: "transferLocalNonNativeAsset",
|
|
6424
|
+
value: function transferLocalNonNativeAsset(_options) {
|
|
6425
|
+
throw new ScenarioNotSupportedError(this.node, 'ParaToPara', "".concat(this.node, " does not support foreign assets local transfers"));
|
|
6426
|
+
}
|
|
5831
6427
|
}]);
|
|
5832
6428
|
}(ParachainNode);
|
|
5833
6429
|
Unique.NATIVE_ASSET_ID = 0;
|
|
@@ -5856,6 +6452,30 @@ var Zeitgeist = /*#__PURE__*/function (_ParachainNode) {
|
|
|
5856
6452
|
var currencySelection = this.getCurrencySelection(asset);
|
|
5857
6453
|
return XTokensTransferImpl.transferXTokens(input, currencySelection);
|
|
5858
6454
|
}
|
|
6455
|
+
}, {
|
|
6456
|
+
key: "transferLocalNonNativeAsset",
|
|
6457
|
+
value: function transferLocalNonNativeAsset(options) {
|
|
6458
|
+
var api = options.api,
|
|
6459
|
+
asset = options.asset,
|
|
6460
|
+
address = options.address;
|
|
6461
|
+
if (!isForeignAsset(asset)) {
|
|
6462
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " is not a foreign asset"));
|
|
6463
|
+
}
|
|
6464
|
+
if (asset.assetId === undefined) {
|
|
6465
|
+
throw new InvalidCurrencyError("Asset ".concat(JSON.stringify(asset), " has no assetId"));
|
|
6466
|
+
}
|
|
6467
|
+
return api.callTxMethod({
|
|
6468
|
+
module: 'AssetManager',
|
|
6469
|
+
section: 'transfer',
|
|
6470
|
+
parameters: {
|
|
6471
|
+
dest: {
|
|
6472
|
+
Id: address
|
|
6473
|
+
},
|
|
6474
|
+
currency_id: this.getCurrencySelection(asset),
|
|
6475
|
+
amount: BigInt(asset.amount)
|
|
6476
|
+
}
|
|
6477
|
+
});
|
|
6478
|
+
}
|
|
5859
6479
|
}]);
|
|
5860
6480
|
}(ParachainNode);
|
|
5861
6481
|
|
|
@@ -6518,7 +7138,7 @@ var validateCurrency = function validateCurrency(currency, feeAsset) {
|
|
|
6518
7138
|
}
|
|
6519
7139
|
};
|
|
6520
7140
|
var validateDestination = function validateDestination(origin, destination) {
|
|
6521
|
-
if (isRelayChain(origin) && !isTMultiLocation(destination) && isRelayChain(destination)) {
|
|
7141
|
+
if (isRelayChain(origin) && !isTMultiLocation(destination) && isRelayChain(destination) && origin !== destination) {
|
|
6522
7142
|
throw new IncompatibleNodesError('Direct relay chain to relay chain transfers are not supported. Please use Polkadot <-> Kusama bridge through AssetHub.');
|
|
6523
7143
|
}
|
|
6524
7144
|
if (destination === 'Ethereum' && origin !== 'AssetHubPolkadot' && origin !== 'Hydration' && origin !== 'BifrostPolkadot') {
|
|
@@ -6647,7 +7267,7 @@ var validateDestinationAddress = function validateDestinationAddress(address, de
|
|
|
6647
7267
|
|
|
6648
7268
|
var send = /*#__PURE__*/function () {
|
|
6649
7269
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(options) {
|
|
6650
|
-
var api, origin, currency, feeAsset, address, destination, paraIdTo, version, senderAddress, pallet, method, isBridge, assetCheckEnabled, asset, resolvedFeeAsset, overriddenAsset, resolvedAsset, originNode;
|
|
7270
|
+
var api, origin, currency, feeAsset, address, destination, paraIdTo, version, senderAddress, pallet, method, isBridge, assetCheckEnabled, asset, resolvedFeeAsset, isLocalTransfer, overriddenAsset, resolvedAsset, originNode;
|
|
6651
7271
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
6652
7272
|
while (1) switch (_context.prev = _context.next) {
|
|
6653
7273
|
case 0:
|
|
@@ -6656,12 +7276,6 @@ var send = /*#__PURE__*/function () {
|
|
|
6656
7276
|
validateDestination(origin, destination);
|
|
6657
7277
|
validateDestinationAddress(address, destination);
|
|
6658
7278
|
if (senderAddress) validateAddress(senderAddress, origin, false);
|
|
6659
|
-
if (!(isRelayChain(origin) && !isTMultiLocation(destination) && isRelayChain(destination))) {
|
|
6660
|
-
_context.next = 7;
|
|
6661
|
-
break;
|
|
6662
|
-
}
|
|
6663
|
-
throw new Error('Relay chain to relay chain transfers are not supported.');
|
|
6664
|
-
case 7:
|
|
6665
7279
|
isBridge = isBridgeTransfer(origin, destination);
|
|
6666
7280
|
assetCheckEnabled = determineAssetCheckEnabled(origin, currency);
|
|
6667
7281
|
validateAssetSpecifiers(assetCheckEnabled, currency);
|
|
@@ -6669,21 +7283,46 @@ var send = /*#__PURE__*/function () {
|
|
|
6669
7283
|
resolvedFeeAsset = feeAsset ? resolveFeeAsset(feeAsset, origin, destination, currency) : undefined;
|
|
6670
7284
|
validateAssetSupport(options, assetCheckEnabled, isBridge, asset);
|
|
6671
7285
|
if (!isRelayChain(origin)) {
|
|
6672
|
-
_context.next =
|
|
7286
|
+
_context.next = 24;
|
|
6673
7287
|
break;
|
|
6674
7288
|
}
|
|
6675
7289
|
if (!(destination === 'Ethereum')) {
|
|
6676
|
-
_context.next =
|
|
7290
|
+
_context.next = 14;
|
|
6677
7291
|
break;
|
|
6678
7292
|
}
|
|
6679
7293
|
throw new Error('Transfers from relay chain to Ethereum are not supported.');
|
|
6680
|
-
case
|
|
7294
|
+
case 14:
|
|
6681
7295
|
if (asset) {
|
|
6682
|
-
_context.next =
|
|
7296
|
+
_context.next = 16;
|
|
6683
7297
|
break;
|
|
6684
7298
|
}
|
|
6685
7299
|
throw new Error('Asset is required for relay chain to relay chain transfers.');
|
|
6686
|
-
case
|
|
7300
|
+
case 16:
|
|
7301
|
+
isLocalTransfer = origin === destination;
|
|
7302
|
+
if (!isLocalTransfer) {
|
|
7303
|
+
_context.next = 23;
|
|
7304
|
+
break;
|
|
7305
|
+
}
|
|
7306
|
+
if (!isTMultiLocation(address)) {
|
|
7307
|
+
_context.next = 20;
|
|
7308
|
+
break;
|
|
7309
|
+
}
|
|
7310
|
+
throw new InvalidAddressError('Multi-Location address is not supported for local transfers.');
|
|
7311
|
+
case 20:
|
|
7312
|
+
_context.next = 22;
|
|
7313
|
+
return api.init(origin);
|
|
7314
|
+
case 22:
|
|
7315
|
+
return _context.abrupt("return", api.callTxMethod({
|
|
7316
|
+
module: 'Balances',
|
|
7317
|
+
section: 'transfer_keep_alive',
|
|
7318
|
+
parameters: {
|
|
7319
|
+
dest: {
|
|
7320
|
+
Id: address
|
|
7321
|
+
},
|
|
7322
|
+
value: 'multiasset' in currency ? 0n : BigInt(currency.amount)
|
|
7323
|
+
}
|
|
7324
|
+
}));
|
|
7325
|
+
case 23:
|
|
6687
7326
|
return _context.abrupt("return", transferRelayToPara({
|
|
6688
7327
|
api: api,
|
|
6689
7328
|
origin: origin,
|
|
@@ -6697,11 +7336,11 @@ var send = /*#__PURE__*/function () {
|
|
|
6697
7336
|
pallet: pallet,
|
|
6698
7337
|
method: method
|
|
6699
7338
|
}));
|
|
6700
|
-
case
|
|
7339
|
+
case 24:
|
|
6701
7340
|
overriddenAsset = resolveOverriddenAsset(options, isBridge, assetCheckEnabled, resolvedFeeAsset);
|
|
6702
|
-
_context.next =
|
|
7341
|
+
_context.next = 27;
|
|
6703
7342
|
return api.init(origin);
|
|
6704
|
-
case
|
|
7343
|
+
case 27:
|
|
6705
7344
|
// In case asset check is disabled, we create asset object from currency symbol
|
|
6706
7345
|
resolvedAsset = asset !== null && asset !== void 0 ? asset : {
|
|
6707
7346
|
symbol: 'symbol' in currency ? currency.symbol : undefined
|
|
@@ -6722,7 +7361,7 @@ var send = /*#__PURE__*/function () {
|
|
|
6722
7361
|
pallet: pallet,
|
|
6723
7362
|
method: method
|
|
6724
7363
|
}));
|
|
6725
|
-
case
|
|
7364
|
+
case 30:
|
|
6726
7365
|
case "end":
|
|
6727
7366
|
return _context.stop();
|
|
6728
7367
|
}
|
|
@@ -6976,6 +7615,7 @@ var GeneralBuilder = /*#__PURE__*/function () {
|
|
|
6976
7615
|
key: "build",
|
|
6977
7616
|
value: (function () {
|
|
6978
7617
|
var _build = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
|
7618
|
+
var _this$_options, from, to;
|
|
6979
7619
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
6980
7620
|
while (1) switch (_context2.prev = _context2.next) {
|
|
6981
7621
|
case 0:
|
|
@@ -6985,16 +7625,17 @@ var GeneralBuilder = /*#__PURE__*/function () {
|
|
|
6985
7625
|
}
|
|
6986
7626
|
throw new Error('Transaction manager contains batched items. Use buildBatch() to process them.');
|
|
6987
7627
|
case 2:
|
|
6988
|
-
|
|
6989
|
-
|
|
7628
|
+
_this$_options = this._options, from = _this$_options.from, to = _this$_options.to;
|
|
7629
|
+
if (!(!isTMultiLocation(to) && isRelayChain(from) && isRelayChain(to) && from !== to)) {
|
|
7630
|
+
_context2.next = 5;
|
|
6990
7631
|
break;
|
|
6991
7632
|
}
|
|
6992
7633
|
throw new Error('Transfers between relay chains are not yet supported.');
|
|
6993
|
-
case
|
|
7634
|
+
case 5:
|
|
6994
7635
|
return _context2.abrupt("return", send(_objectSpread2({
|
|
6995
7636
|
api: this.api
|
|
6996
7637
|
}, this._options)));
|
|
6997
|
-
case
|
|
7638
|
+
case 6:
|
|
6998
7639
|
case "end":
|
|
6999
7640
|
return _context2.stop();
|
|
7000
7641
|
}
|