@paraspell/sdk-pjs 12.9.7 → 13.0.0-rc.1
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.d.ts +7 -17
- package/dist/index.mjs +150 -33
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _paraspell_sdk_core from '@paraspell/sdk-core';
|
|
2
|
-
import { TApiOrUrl, WithApi, TEvmChainFrom, TChain, TCurrencyInputWithAmount, Foreign, ForeignAbstract, Native, Override, findAssetInfo, getAllAssetsSymbols, getAssetDecimals, getAssetId, getAssets, getAssetsObject, getExistentialDeposit, getNativeAssetSymbol, getNativeAssets, getOtherAssets, getRelayChainSymbol, getSupportedAssets, getTChain, hasSupportForAsset, isChainEvm, TSubstrateChain, TBuilderOptions, GeneralBuilder as GeneralBuilder$1,
|
|
2
|
+
import { TApiOrUrl, WithApi, TEvmChainFrom, TChain, TCurrencyInputWithAmount, Foreign, ForeignAbstract, Native, Override, findAssetInfo, getAllAssetsSymbols, getAssetDecimals, getAssetId, getAssets, getAssetsObject, getExistentialDeposit, getNativeAssetSymbol, getNativeAssets, getOtherAssets, getRelayChainSymbol, getSupportedAssets, getTChain, hasSupportForAsset, isChainEvm, TSubstrateChain, TBuilderOptions, GeneralBuilder as GeneralBuilder$1, TTransferBaseOptions } from '@paraspell/sdk-core';
|
|
3
3
|
export * from '@paraspell/sdk-core';
|
|
4
4
|
import * as _polkadot_api from '@polkadot/api';
|
|
5
5
|
import { ApiPromise } from '@polkadot/api';
|
|
@@ -32,7 +32,7 @@ type TEvmBuilderOptionsBase = {
|
|
|
32
32
|
/**
|
|
33
33
|
* The Polkadot destination address.
|
|
34
34
|
*/
|
|
35
|
-
|
|
35
|
+
recipient: string;
|
|
36
36
|
/**
|
|
37
37
|
* The AssetHub address
|
|
38
38
|
*/
|
|
@@ -56,20 +56,11 @@ declare const getBalance: (options: _paraspell_sdk_core.TGetBalanceCommonOptions
|
|
|
56
56
|
} & {
|
|
57
57
|
api?: TPjsApiOrUrl;
|
|
58
58
|
}) => Promise<bigint>;
|
|
59
|
-
/**
|
|
60
|
-
* Claims assets from a parachain.
|
|
61
|
-
*
|
|
62
|
-
* @returns An extrinsic representing the claim transaction.
|
|
63
|
-
*/
|
|
64
|
-
declare const claimAssets: (options: _paraspell_sdk_core.TAssetClaimOptionsBase & {
|
|
65
|
-
api?: TPjsApiOrUrl;
|
|
66
|
-
}) => Promise<Extrinsic>;
|
|
67
59
|
|
|
68
60
|
declare const assets_Foreign: typeof Foreign;
|
|
69
61
|
declare const assets_ForeignAbstract: typeof ForeignAbstract;
|
|
70
62
|
declare const assets_Native: typeof Native;
|
|
71
63
|
declare const assets_Override: typeof Override;
|
|
72
|
-
declare const assets_claimAssets: typeof claimAssets;
|
|
73
64
|
declare const assets_findAssetInfo: typeof findAssetInfo;
|
|
74
65
|
declare const assets_getAllAssetsSymbols: typeof getAllAssetsSymbols;
|
|
75
66
|
declare const assets_getAssetDecimals: typeof getAssetDecimals;
|
|
@@ -92,7 +83,6 @@ declare namespace assets {
|
|
|
92
83
|
assets_ForeignAbstract as ForeignAbstract,
|
|
93
84
|
assets_Native as Native,
|
|
94
85
|
assets_Override as Override,
|
|
95
|
-
assets_claimAssets as claimAssets,
|
|
96
86
|
assets_findAssetInfo as findAssetInfo,
|
|
97
87
|
assets_getAllAssetsSymbols as getAllAssetsSymbols,
|
|
98
88
|
assets_getAssetDecimals as getAssetDecimals,
|
|
@@ -147,8 +137,8 @@ declare class EvmBuilderCore<TApi, TRes, TSigner, T extends Partial<TPjsEvmBuild
|
|
|
147
137
|
* @param address - The Polkadot address to receive the transfer.
|
|
148
138
|
* @returns An instance of EvmBuilder
|
|
149
139
|
*/
|
|
150
|
-
|
|
151
|
-
|
|
140
|
+
recipient(address: string): EvmBuilderCore<TApi, TRes, TSigner, T & {
|
|
141
|
+
recipient: string;
|
|
152
142
|
}>;
|
|
153
143
|
/**
|
|
154
144
|
* Sets the asset hub address. This is used for transfers that go through the Asset Hub.
|
|
@@ -183,7 +173,7 @@ declare class EvmBuilderCore<TApi, TRes, TSigner, T extends Partial<TPjsEvmBuild
|
|
|
183
173
|
* @returns A new Builder instance.
|
|
184
174
|
*/
|
|
185
175
|
declare const Builder: (api?: TBuilderOptions<TPjsApiOrUrl>) => GeneralBuilder$1<_polkadot_api.ApiPromise, Extrinsic, TPjsSigner, object>;
|
|
186
|
-
type GeneralBuilder<T extends Partial<
|
|
176
|
+
type GeneralBuilder<T extends Partial<TTransferBaseOptions<TPjsApi, Extrinsic, TPjsSigner>> = object> = GeneralBuilder$1<TPjsApi, Extrinsic, TPjsSigner, T>;
|
|
187
177
|
declare const EvmBuilder: (provider?: AbstractProvider, api?: TBuilderOptions<TPjsApiOrUrl>) => EvmBuilderCore<unknown, unknown, unknown, {
|
|
188
178
|
api: _paraspell_sdk_core.IPolkadotApi<_polkadot_api.ApiPromise, Extrinsic, TPjsSigner>;
|
|
189
179
|
provider: AbstractProvider | undefined;
|
|
@@ -209,7 +199,7 @@ declare const depositToken: (signer: Signer$1, amount: bigint, symbol: string) =
|
|
|
209
199
|
*
|
|
210
200
|
* @throws Will throw an error if the transfer validation fails or if the transfer cannot be completed.
|
|
211
201
|
*/
|
|
212
|
-
declare const transferEthToPolkadot$1: <TApi, TRes, TSigner>({ api, provider, signer,
|
|
202
|
+
declare const transferEthToPolkadot$1: <TApi, TRes, TSigner>({ api, provider, signer, recipient, to, currency }: TPjsEvmBuilderOptions<TApi, TRes, TSigner>) => Promise<{
|
|
213
203
|
response: ethers.TransactionResponse;
|
|
214
204
|
messageReceipt: toPolkadotV2.MessageReceipt;
|
|
215
205
|
}>;
|
|
@@ -252,5 +242,5 @@ declare namespace transfer {
|
|
|
252
242
|
|
|
253
243
|
declare const createChainClient: (chain: TSubstrateChain, builderOptions?: TBuilderOptions<TPjsApiOrUrl>) => Promise<_polkadot_api.ApiPromise>;
|
|
254
244
|
|
|
255
|
-
export { Builder, EvmBuilder, approveToken, assets,
|
|
245
|
+
export { Builder, EvmBuilder, approveToken, assets, convertSs58, createChainClient, depositToken, dryRun, dryRunOrigin, getBalance, getBridgeStatus, getParaEthTransferFees, getTokenBalance, transferEthToPolkadot, transfer as xcmPallet };
|
|
256
246
|
export type { Extrinsic, GeneralBuilder, TPjsApi, TPjsApiOrUrl, TPjsEvmBuilderOptions, TPjsSigner };
|
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getNativeAssetSymbol, getOtherAssets, hasJunction, getJunctionValue, getEvmPrivateKeyHex, createClientCache, MAX_CLIENTS, EXTENSION_MS, createClientPoolHelpers, BatchMode, isConfig, findNativeAssetInfoOrThrow, getChainProviders, isSenderSigner, DEFAULT_TTL_MS, resolveChainApi, isExternalChain,
|
|
1
|
+
import { getNativeAssetSymbol, getOtherAssets, hasJunction, getJunctionValue, getEvmPrivateKeyHex, UnsupportedOperationError, createClientCache, MAX_CLIENTS, EXTENSION_MS, createClientPoolHelpers, BatchMode, isConfig, findNativeAssetInfoOrThrow, getChainProviders, isSenderSigner, DEFAULT_TTL_MS, resolveChainApi, isExternalChain, findAssetInfoOrThrow, hasXcmPaymentApiSupport, resolveModuleError, getAssetsObject, RuntimeApiUnavailableError, wrapTxBypass, localizeLocation, addXcmVersionHeader, isAssetXcEqual, RELAY_LOCATION, getRelayChainOf, SubmitTransactionError, createChainClient as createChainClient$1, getBalance as getBalance$1, Foreign, ForeignAbstract, Native, Override, findAssetInfo, getAllAssetsSymbols, getAssetDecimals, getAssetId, getAssets, getExistentialDeposit, getNativeAssets, getRelayChainSymbol, getSupportedAssets, getTChain, hasSupportForAsset, isChainEvm, convertSs58 as convertSs58$1, assertHasId, getParaId, RoutingResolutionError, abstractDecimals, MissingParameterError, isOverrideLocationSpecifier, transferMoonbeamEvm, transferMoonbeamToEth, validateAddress as validateAddress$1, Builder as Builder$1, getBridgeStatus as getBridgeStatus$1, getParaEthTransferFees as getParaEthTransferFees$1, DRY_RUN_CLIENT_TIMEOUT_MS, dryRun as dryRun$1, dryRunOrigin as dryRunOrigin$1 } from '@paraspell/sdk-core';
|
|
2
2
|
export * from '@paraspell/sdk-core';
|
|
3
3
|
import { Keyring, WsProvider, ApiPromise } from '@polkadot/api';
|
|
4
|
-
import { isHex, u8aToHex, hexToU8a, stringToU8a } from '@polkadot/util';
|
|
4
|
+
import { u8aConcat, compactToU8a, u8aEq, isHex, u8aToHex, hexToU8a, stringToU8a } from '@polkadot/util';
|
|
5
5
|
import { decodeAddress, blake2AsHex, validateAddress } from '@polkadot/util-crypto';
|
|
6
6
|
import { WETH9__factory } from '@snowbridge/contract-types';
|
|
7
7
|
import { bridgeInfoFor } from '@snowbridge/registry';
|
|
@@ -359,6 +359,54 @@ var snakeToCamel = function snakeToCamel(str) {
|
|
|
359
359
|
});
|
|
360
360
|
};
|
|
361
361
|
|
|
362
|
+
var txFromHex = function txFromHex(api, hex) {
|
|
363
|
+
var _api$tx$section;
|
|
364
|
+
// Try as full extrinsic
|
|
365
|
+
try {
|
|
366
|
+
var tx = api.tx(hex);
|
|
367
|
+
if (tx.toHex() === hex) return tx;
|
|
368
|
+
} catch (_unused) {
|
|
369
|
+
// Not a valid extrinsic, try other formats
|
|
370
|
+
}
|
|
371
|
+
// Try as Call
|
|
372
|
+
try {
|
|
373
|
+
var _call = api.createType('Call', hex);
|
|
374
|
+
var callHex = _call.toHex();
|
|
375
|
+
if (callHex === hex) {
|
|
376
|
+
var _api$tx$_section;
|
|
377
|
+
var _api$registry$findMet = api.registry.findMetaCall(_call.callIndex),
|
|
378
|
+
_method = _api$registry$findMet.method,
|
|
379
|
+
_section = _api$registry$findMet.section;
|
|
380
|
+
return (_api$tx$_section = api.tx[_section])[_method].apply(_api$tx$_section, _toConsumableArray(_call.args));
|
|
381
|
+
}
|
|
382
|
+
if (hex.startsWith(callHex)) {
|
|
383
|
+
// Try as un-prefixed ExtrinsicPayload
|
|
384
|
+
var prefixed = u8aConcat(compactToU8a(_call.encodedLength), hex);
|
|
385
|
+
var _payload = api.createType('ExtrinsicPayload', prefixed);
|
|
386
|
+
if (u8aEq(_payload.toU8a(), prefixed)) {
|
|
387
|
+
var _api$tx$_section2;
|
|
388
|
+
var payloadCall = api.createType('Call', _payload.method.toHex());
|
|
389
|
+
var _api$registry$findMet2 = api.registry.findMetaCall(payloadCall.callIndex),
|
|
390
|
+
_method2 = _api$registry$findMet2.method,
|
|
391
|
+
_section2 = _api$registry$findMet2.section;
|
|
392
|
+
return (_api$tx$_section2 = api.tx[_section2])[_method2].apply(_api$tx$_section2, _toConsumableArray(payloadCall.args));
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
} catch (_unused2) {
|
|
396
|
+
// Not a valid call, try as payload
|
|
397
|
+
}
|
|
398
|
+
// Final attempt: try as prefixed ExtrinsicPayload
|
|
399
|
+
var payload = api.createType('ExtrinsicPayload', hex);
|
|
400
|
+
if (payload.toHex() !== hex) {
|
|
401
|
+
throw new UnsupportedOperationError('Unable to decode hex as Extrinsic, Call, or ExtrinsicPayload');
|
|
402
|
+
}
|
|
403
|
+
var call = api.createType('Call', payload.method.toHex());
|
|
404
|
+
var _api$registry$findMet3 = api.registry.findMetaCall(call.callIndex),
|
|
405
|
+
method = _api$registry$findMet3.method,
|
|
406
|
+
section = _api$registry$findMet3.section;
|
|
407
|
+
return (_api$tx$section = api.tx[section])[method].apply(_api$tx$section, _toConsumableArray(call.args));
|
|
408
|
+
};
|
|
409
|
+
|
|
362
410
|
var clientPool = createClientCache(MAX_CLIENTS, /*#__PURE__*/function () {
|
|
363
411
|
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(client) {
|
|
364
412
|
return _regenerator().w(function (_context) {
|
|
@@ -497,8 +545,8 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
497
545
|
}
|
|
498
546
|
}, {
|
|
499
547
|
key: "txFromHex",
|
|
500
|
-
value: function txFromHex(hex) {
|
|
501
|
-
return Promise.resolve(this.api
|
|
548
|
+
value: function txFromHex$1(hex) {
|
|
549
|
+
return Promise.resolve(txFromHex(this.api, hex));
|
|
502
550
|
}
|
|
503
551
|
}, {
|
|
504
552
|
key: "queryState",
|
|
@@ -691,13 +739,13 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
691
739
|
return _regenerator().w(function (_context8) {
|
|
692
740
|
while (1) switch (_context8.n) {
|
|
693
741
|
case 0:
|
|
694
|
-
api = new PolkadotJsApi();
|
|
742
|
+
api = new PolkadotJsApi(isConfig(this._config) ? this._config : undefined);
|
|
695
743
|
_context8.n = 1;
|
|
696
744
|
return api.init(chain);
|
|
697
745
|
case 1:
|
|
698
746
|
return _context8.a(2, api);
|
|
699
747
|
}
|
|
700
|
-
}, _callee8);
|
|
748
|
+
}, _callee8, this);
|
|
701
749
|
}));
|
|
702
750
|
function createApiForChain(_x11) {
|
|
703
751
|
return _createApiForChain.apply(this, arguments);
|
|
@@ -747,7 +795,7 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
747
795
|
isCustomAsset: true,
|
|
748
796
|
asset: findAssetInfoOrThrow(chain, {
|
|
749
797
|
id: assetId
|
|
750
|
-
}
|
|
798
|
+
})
|
|
751
799
|
});
|
|
752
800
|
}
|
|
753
801
|
}, _callee9, this);
|
|
@@ -762,7 +810,7 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
762
810
|
value: function () {
|
|
763
811
|
var _getDryRunCall = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(options) {
|
|
764
812
|
var _this2 = this;
|
|
765
|
-
var tx, address, feeAsset, chain, destination, version, _options$useRootOrigi, useRootOrigin, bypassOptions, supportsDryRunApi, basePayload, resolvedTx, resolvedFeeAsset, performDryRunCall, getExecutionSuccessFromResult, extractFailureReasonFromResult, response, resultHuman, resultJson, isSuccess, failureErr, shouldRetryWithVersion, msg, _msg, forwardedXcms, actualWeight, weight, destParaId, overriddenWeight, xcmFee, _yield$this$getPaymen, executionFee, fee, _t, _t2, _t3, _t4;
|
|
813
|
+
var tx, address, feeAsset, chain, destination, version, _options$useRootOrigi, useRootOrigin, bypassOptions, supportsDryRunApi, basePayload, resolvedTx, resolvedFeeAsset, performDryRunCall, findFailingEventInResult, getExecutionSuccessFromResult, extractFailureReasonFromResult, response, resultHuman, resultJson, isSuccess, failureErr, shouldRetryWithVersion, msg, _msg, forwardedXcms, actualWeight, weight, destParaId, overriddenWeight, xcmFee, _yield$this$getPaymen, executionFee, fee, _t, _t2, _t3, _t4;
|
|
766
814
|
return _regenerator().w(function (_context1) {
|
|
767
815
|
while (1) switch (_context1.p = _context1.n) {
|
|
768
816
|
case 0:
|
|
@@ -819,23 +867,31 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
819
867
|
return _ref5.apply(this, arguments);
|
|
820
868
|
};
|
|
821
869
|
}();
|
|
870
|
+
findFailingEventInResult = function findFailingEventInResult(resultHuman) {
|
|
871
|
+
var _resultHuman$Ok;
|
|
872
|
+
return resultHuman === null || resultHuman === void 0 || (_resultHuman$Ok = resultHuman.Ok) === null || _resultHuman$Ok === void 0 || (_resultHuman$Ok = _resultHuman$Ok.emittedEvents) === null || _resultHuman$Ok === void 0 ? void 0 : _resultHuman$Ok.find(function (event) {
|
|
873
|
+
var _event$data;
|
|
874
|
+
return (event.section === 'utility' || event.section === 'Utility') && event.method === 'DispatchedAs' && ((_event$data = event.data) === null || _event$data === void 0 || (_event$data = _event$data.result) === null || _event$data === void 0 ? void 0 : _event$data.Err);
|
|
875
|
+
});
|
|
876
|
+
};
|
|
822
877
|
getExecutionSuccessFromResult = function getExecutionSuccessFromResult(resultHuman) {
|
|
823
878
|
var _resultHuman$Ok$execu;
|
|
824
|
-
|
|
879
|
+
var errorInEvents = findFailingEventInResult(resultHuman);
|
|
880
|
+
return Boolean((resultHuman === null || resultHuman === void 0 ? void 0 : resultHuman.Ok) && ((_resultHuman$Ok$execu = resultHuman.Ok.executionResult) === null || _resultHuman$Ok$execu === void 0 ? void 0 : _resultHuman$Ok$execu.Ok) && !errorInEvents);
|
|
825
881
|
};
|
|
826
882
|
extractFailureReasonFromResult = function extractFailureReasonFromResult(resultHuman, resultJson) {
|
|
827
|
-
var _resultHuman$
|
|
828
|
-
var modErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$
|
|
883
|
+
var _resultHuman$Ok2, _resultHuman$Ok3, _resultHuman$Ok4, _resultJson$ok, _ref6;
|
|
884
|
+
var modErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$Ok2 = resultHuman.Ok) === null || _resultHuman$Ok2 === void 0 || (_resultHuman$Ok2 = _resultHuman$Ok2.executionResult) === null || _resultHuman$Ok2 === void 0 || (_resultHuman$Ok2 = _resultHuman$Ok2.Err) === null || _resultHuman$Ok2 === void 0 || (_resultHuman$Ok2 = _resultHuman$Ok2.error) === null || _resultHuman$Ok2 === void 0 ? void 0 : _resultHuman$Ok2.Module;
|
|
829
885
|
if (modErrHuman) {
|
|
830
886
|
return resolveModuleError(chain, modErrHuman);
|
|
831
887
|
}
|
|
832
|
-
var otherErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$
|
|
888
|
+
var otherErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$Ok3 = resultHuman.Ok) === null || _resultHuman$Ok3 === void 0 || (_resultHuman$Ok3 = _resultHuman$Ok3.executionResult) === null || _resultHuman$Ok3 === void 0 || (_resultHuman$Ok3 = _resultHuman$Ok3.Err) === null || _resultHuman$Ok3 === void 0 || (_resultHuman$Ok3 = _resultHuman$Ok3.error) === null || _resultHuman$Ok3 === void 0 ? void 0 : _resultHuman$Ok3.Other;
|
|
833
889
|
if (otherErrHuman) {
|
|
834
890
|
return {
|
|
835
891
|
failureReason: String(otherErrHuman)
|
|
836
892
|
};
|
|
837
893
|
}
|
|
838
|
-
var secondErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$
|
|
894
|
+
var secondErrHuman = resultHuman === null || resultHuman === void 0 || (_resultHuman$Ok4 = resultHuman.Ok) === null || _resultHuman$Ok4 === void 0 || (_resultHuman$Ok4 = _resultHuman$Ok4.executionResult) === null || _resultHuman$Ok4 === void 0 || (_resultHuman$Ok4 = _resultHuman$Ok4.Err) === null || _resultHuman$Ok4 === void 0 ? void 0 : _resultHuman$Ok4.error;
|
|
839
895
|
if (secondErrHuman) {
|
|
840
896
|
return {
|
|
841
897
|
failureReason: String(secondErrHuman)
|
|
@@ -850,6 +906,19 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
850
906
|
failureReason: String(execErrJson.other)
|
|
851
907
|
};
|
|
852
908
|
}
|
|
909
|
+
var erroredEvent = findFailingEventInResult(resultHuman);
|
|
910
|
+
if (erroredEvent) {
|
|
911
|
+
var _erroredEvent$data;
|
|
912
|
+
var err = (_erroredEvent$data = erroredEvent.data) === null || _erroredEvent$data === void 0 || (_erroredEvent$data = _erroredEvent$data.result) === null || _erroredEvent$data === void 0 ? void 0 : _erroredEvent$data.Err;
|
|
913
|
+
if (err !== null && err !== void 0 && err.Module) {
|
|
914
|
+
return resolveModuleError(chain, err.Module);
|
|
915
|
+
}
|
|
916
|
+
if (err) {
|
|
917
|
+
return {
|
|
918
|
+
failureReason: typeof err === 'string' ? err : JSON.stringify(err)
|
|
919
|
+
};
|
|
920
|
+
}
|
|
921
|
+
}
|
|
853
922
|
return {
|
|
854
923
|
failureReason: JSON.stringify((_ref6 = resultJson !== null && resultJson !== void 0 ? resultJson : resultHuman) !== null && _ref6 !== void 0 ? _ref6 : 'Unknown error')
|
|
855
924
|
};
|
|
@@ -1426,6 +1495,61 @@ var PolkadotJsApi = /*#__PURE__*/function () {
|
|
|
1426
1495
|
}
|
|
1427
1496
|
return signAndSubmit;
|
|
1428
1497
|
}()
|
|
1498
|
+
}, {
|
|
1499
|
+
key: "signAndSubmitFinalized",
|
|
1500
|
+
value: function () {
|
|
1501
|
+
var _signAndSubmitFinalized = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17(tx, sender) {
|
|
1502
|
+
var _this3 = this;
|
|
1503
|
+
return _regenerator().w(function (_context17) {
|
|
1504
|
+
while (1) switch (_context17.n) {
|
|
1505
|
+
case 0:
|
|
1506
|
+
if (!isSenderSigner(sender)) {
|
|
1507
|
+
_context17.n = 2;
|
|
1508
|
+
break;
|
|
1509
|
+
}
|
|
1510
|
+
_context17.n = 1;
|
|
1511
|
+
return tx.signAsync(sender.address, {
|
|
1512
|
+
signer: sender.signer
|
|
1513
|
+
});
|
|
1514
|
+
case 1:
|
|
1515
|
+
_context17.n = 3;
|
|
1516
|
+
break;
|
|
1517
|
+
case 2:
|
|
1518
|
+
_context17.n = 3;
|
|
1519
|
+
return tx.signAsync(createKeyringPair(sender));
|
|
1520
|
+
case 3:
|
|
1521
|
+
return _context17.a(2, new Promise(function (resolve, reject) {
|
|
1522
|
+
tx.send(function (_ref13) {
|
|
1523
|
+
var status = _ref13.status,
|
|
1524
|
+
dispatchError = _ref13.dispatchError,
|
|
1525
|
+
txHash = _ref13.txHash;
|
|
1526
|
+
if (status.isFinalized) {
|
|
1527
|
+
if (dispatchError !== undefined) {
|
|
1528
|
+
if (dispatchError.isModule) {
|
|
1529
|
+
var decoded = _this3.api.registry.findMetaError(dispatchError.asModule);
|
|
1530
|
+
var docs = decoded.docs,
|
|
1531
|
+
name = decoded.name,
|
|
1532
|
+
section = decoded.section;
|
|
1533
|
+
reject(new SubmitTransactionError("".concat(section, ".").concat(name, ": ").concat(docs.join(' '))));
|
|
1534
|
+
} else {
|
|
1535
|
+
reject(new SubmitTransactionError(dispatchError.toString()));
|
|
1536
|
+
}
|
|
1537
|
+
} else {
|
|
1538
|
+
resolve(txHash.toString());
|
|
1539
|
+
}
|
|
1540
|
+
}
|
|
1541
|
+
})["catch"](function (error) {
|
|
1542
|
+
reject(error instanceof Error ? error : new SubmitTransactionError(String(error)));
|
|
1543
|
+
});
|
|
1544
|
+
}));
|
|
1545
|
+
}
|
|
1546
|
+
}, _callee17);
|
|
1547
|
+
}));
|
|
1548
|
+
function signAndSubmitFinalized(_x33, _x34) {
|
|
1549
|
+
return _signAndSubmitFinalized.apply(this, arguments);
|
|
1550
|
+
}
|
|
1551
|
+
return signAndSubmitFinalized;
|
|
1552
|
+
}()
|
|
1429
1553
|
}]);
|
|
1430
1554
|
}();
|
|
1431
1555
|
|
|
@@ -1463,12 +1587,6 @@ var isEthersSigner = function isEthersSigner(signer) {
|
|
|
1463
1587
|
* @returns The asset balance as a bigint.
|
|
1464
1588
|
*/
|
|
1465
1589
|
var getBalance = createPolkadotJsApiCall(getBalance$1);
|
|
1466
|
-
/**
|
|
1467
|
-
* Claims assets from a parachain.
|
|
1468
|
-
*
|
|
1469
|
-
* @returns An extrinsic representing the claim transaction.
|
|
1470
|
-
*/
|
|
1471
|
-
var claimAssets = createPolkadotJsApiCall(claimAssets$1);
|
|
1472
1590
|
|
|
1473
1591
|
var assets = /*#__PURE__*/Object.freeze({
|
|
1474
1592
|
__proto__: null,
|
|
@@ -1476,7 +1594,6 @@ var assets = /*#__PURE__*/Object.freeze({
|
|
|
1476
1594
|
ForeignAbstract: ForeignAbstract,
|
|
1477
1595
|
Native: Native,
|
|
1478
1596
|
Override: Override,
|
|
1479
|
-
claimAssets: claimAssets,
|
|
1480
1597
|
findAssetInfo: findAssetInfo,
|
|
1481
1598
|
getAllAssetsSymbols: getAllAssetsSymbols,
|
|
1482
1599
|
getAssetDecimals: getAssetDecimals,
|
|
@@ -1509,7 +1626,7 @@ var approveToken = /*#__PURE__*/function () {
|
|
|
1509
1626
|
_bridgeInfoFor = bridgeInfoFor('polkadot_mainnet'), gatewayContract = _bridgeInfoFor.environment.gatewayContract;
|
|
1510
1627
|
asset = findAssetInfoOrThrow('Ethereum', {
|
|
1511
1628
|
symbol: symbol
|
|
1512
|
-
}
|
|
1629
|
+
});
|
|
1513
1630
|
assertHasId(asset);
|
|
1514
1631
|
weth9 = WETH9__factory.connect(asset.assetId, signer);
|
|
1515
1632
|
_context.n = 1;
|
|
@@ -1540,7 +1657,7 @@ var depositToken = /*#__PURE__*/function () {
|
|
|
1540
1657
|
case 0:
|
|
1541
1658
|
asset = findAssetInfoOrThrow('Ethereum', {
|
|
1542
1659
|
symbol: symbol
|
|
1543
|
-
}
|
|
1660
|
+
});
|
|
1544
1661
|
assertHasId(asset);
|
|
1545
1662
|
weth9 = WETH9__factory.connect(asset.assetId, signer);
|
|
1546
1663
|
_context.n = 1;
|
|
@@ -1599,11 +1716,11 @@ var createContext = function createContext(executionUrl, env) {
|
|
|
1599
1716
|
*/
|
|
1600
1717
|
var transferEthToPolkadot$1 = /*#__PURE__*/function () {
|
|
1601
1718
|
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref) {
|
|
1602
|
-
var api, provider, signer,
|
|
1719
|
+
var api, provider, signer, recipient, to, currency, ethAsset, amount, _bridgeInfoFor, environment, registry, context, destParaId, fee, sourceAddress, transfer, validation, tx, response, receipt, messageReceipt, _t, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t0, _t1;
|
|
1603
1720
|
return _regenerator().w(function (_context) {
|
|
1604
1721
|
while (1) switch (_context.n) {
|
|
1605
1722
|
case 0:
|
|
1606
|
-
api = _ref.api, provider = _ref.provider, signer = _ref.signer,
|
|
1723
|
+
api = _ref.api, provider = _ref.provider, signer = _ref.signer, recipient = _ref.recipient, to = _ref.to, currency = _ref.currency;
|
|
1607
1724
|
if (!Array.isArray(currency)) {
|
|
1608
1725
|
_context.n = 1;
|
|
1609
1726
|
break;
|
|
@@ -1657,7 +1774,7 @@ var transferEthToPolkadot$1 = /*#__PURE__*/function () {
|
|
|
1657
1774
|
case 8:
|
|
1658
1775
|
sourceAddress = _context.v;
|
|
1659
1776
|
_context.n = 9;
|
|
1660
|
-
return toPolkadotV2.createTransfer(registry, sourceAddress,
|
|
1777
|
+
return toPolkadotV2.createTransfer(registry, sourceAddress, recipient, ethAsset.assetId, destParaId, amount, fee);
|
|
1661
1778
|
case 9:
|
|
1662
1779
|
transfer = _context.v;
|
|
1663
1780
|
_t5 = toPolkadotV2;
|
|
@@ -1752,7 +1869,7 @@ var getTokenBalance = /*#__PURE__*/function () {
|
|
|
1752
1869
|
case 0:
|
|
1753
1870
|
asset = findAssetInfoOrThrow('Ethereum', {
|
|
1754
1871
|
symbol: symbol
|
|
1755
|
-
}
|
|
1872
|
+
});
|
|
1756
1873
|
assertHasId(asset);
|
|
1757
1874
|
weth9 = WETH9__factory.connect(asset.assetId, signer);
|
|
1758
1875
|
_context.n = 1;
|
|
@@ -1816,10 +1933,10 @@ var EvmBuilderCore = /*#__PURE__*/function () {
|
|
|
1816
1933
|
* @returns An instance of EvmBuilder
|
|
1817
1934
|
*/
|
|
1818
1935
|
}, {
|
|
1819
|
-
key: "
|
|
1820
|
-
value: function address
|
|
1936
|
+
key: "recipient",
|
|
1937
|
+
value: function recipient(address) {
|
|
1821
1938
|
return new EvmBuilderCore(_objectSpread2(_objectSpread2({}, this._options), {}, {
|
|
1822
|
-
|
|
1939
|
+
recipient: address
|
|
1823
1940
|
}));
|
|
1824
1941
|
}
|
|
1825
1942
|
/**
|
|
@@ -1857,12 +1974,12 @@ var EvmBuilderCore = /*#__PURE__*/function () {
|
|
|
1857
1974
|
key: "build",
|
|
1858
1975
|
value: (function () {
|
|
1859
1976
|
var _build = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
1860
|
-
var _this$_options, from, to,
|
|
1977
|
+
var _this$_options, from, to, recipient, signer, api, _yield$transferEthToP, response;
|
|
1861
1978
|
return _regenerator().w(function (_context) {
|
|
1862
1979
|
while (1) switch (_context.n) {
|
|
1863
1980
|
case 0:
|
|
1864
|
-
_this$_options = this._options, from = _this$_options.from, to = _this$_options.to,
|
|
1865
|
-
validateAddress$1(api,
|
|
1981
|
+
_this$_options = this._options, from = _this$_options.from, to = _this$_options.to, recipient = _this$_options.recipient, signer = _this$_options.signer, api = _this$_options.api;
|
|
1982
|
+
validateAddress$1(api, recipient, to);
|
|
1866
1983
|
if (!(from === 'Moonbeam' && to === 'Ethereum')) {
|
|
1867
1984
|
_context.n = 2;
|
|
1868
1985
|
break;
|
|
@@ -1993,4 +2110,4 @@ var transfer = /*#__PURE__*/Object.freeze({
|
|
|
1993
2110
|
transferEthToPolkadot: transferEthToPolkadot
|
|
1994
2111
|
});
|
|
1995
2112
|
|
|
1996
|
-
export { Builder, EvmBuilder, approveToken, assets,
|
|
2113
|
+
export { Builder, EvmBuilder, approveToken, assets, convertSs58, createChainClient, depositToken, dryRun, dryRunOrigin, getBalance, getBridgeStatus, getParaEthTransferFees, getTokenBalance, transferEthToPolkadot, transfer as xcmPallet };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paraspell/sdk-pjs",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "13.0.0-rc.1",
|
|
4
4
|
"description": "Polkadot.js based SDK for ParaSpell XCM/XCMP tool for developers",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"@snowbridge/registry": "^0.4.4",
|
|
30
30
|
"ethers": "^6.16.0",
|
|
31
31
|
"viem": "2.47.1",
|
|
32
|
-
"@paraspell/sdk-core": "
|
|
32
|
+
"@paraspell/sdk-core": "13.0.0-rc.1"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"@polkadot/api": ">= 16.0 < 17",
|