@fuel-ts/account 0.0.0-rc-1866-20240322113439 → 0.0.0-rc-1889-20240322122653
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.
Potentially problematic release.
This version of @fuel-ts/account might be problematic. Click here for more details.
- package/dist/account-E9nGNf5X.d.mts +3837 -0
- package/dist/account-E9nGNf5X.d.ts +3837 -0
- package/dist/configs.d.mts +3 -0
- package/dist/configs.d.ts +3 -2
- package/dist/index.d.mts +904 -0
- package/dist/index.d.ts +904 -13
- package/dist/index.global.js +385 -454
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +202 -248
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +202 -250
- package/dist/index.mjs.map +1 -1
- package/dist/test-utils.d.mts +66 -0
- package/dist/{test-utils/launchNode.d.ts → test-utils.d.ts} +24 -12
- package/dist/test-utils.global.js +289 -332
- package/dist/test-utils.global.js.map +1 -1
- package/dist/test-utils.js +102 -125
- package/dist/test-utils.js.map +1 -1
- package/dist/test-utils.mjs +102 -127
- package/dist/test-utils.mjs.map +1 -1
- package/package.json +21 -25
- package/dist/account.d.ts +0 -177
- package/dist/account.d.ts.map +0 -1
- package/dist/configs.d.ts.map +0 -1
- package/dist/connectors/fuel-connector.d.ts +0 -188
- package/dist/connectors/fuel-connector.d.ts.map +0 -1
- package/dist/connectors/fuel.d.ts +0 -133
- package/dist/connectors/fuel.d.ts.map +0 -1
- package/dist/connectors/index.d.ts +0 -5
- package/dist/connectors/index.d.ts.map +0 -1
- package/dist/connectors/types/connector-metadata.d.ts +0 -12
- package/dist/connectors/types/connector-metadata.d.ts.map +0 -1
- package/dist/connectors/types/connector-types.d.ts +0 -34
- package/dist/connectors/types/connector-types.d.ts.map +0 -1
- package/dist/connectors/types/data-type.d.ts +0 -34
- package/dist/connectors/types/data-type.d.ts.map +0 -1
- package/dist/connectors/types/events.d.ts +0 -111
- package/dist/connectors/types/events.d.ts.map +0 -1
- package/dist/connectors/types/index.d.ts +0 -7
- package/dist/connectors/types/index.d.ts.map +0 -1
- package/dist/connectors/types/local-storage.d.ts +0 -11
- package/dist/connectors/types/local-storage.d.ts.map +0 -1
- package/dist/connectors/types/target-object.d.ts +0 -14
- package/dist/connectors/types/target-object.d.ts.map +0 -1
- package/dist/connectors/utils/cache.d.ts +0 -14
- package/dist/connectors/utils/cache.d.ts.map +0 -1
- package/dist/connectors/utils/dispatch-fuel-connector-event.d.ts +0 -7
- package/dist/connectors/utils/dispatch-fuel-connector-event.d.ts.map +0 -1
- package/dist/connectors/utils/index.d.ts +0 -4
- package/dist/connectors/utils/index.d.ts.map +0 -1
- package/dist/connectors/utils/promises.d.ts +0 -8
- package/dist/connectors/utils/promises.d.ts.map +0 -1
- package/dist/hdwallet/hdwallet.d.ts +0 -58
- package/dist/hdwallet/hdwallet.d.ts.map +0 -1
- package/dist/hdwallet/index.d.ts +0 -2
- package/dist/hdwallet/index.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/mnemonic/index.d.ts +0 -3
- package/dist/mnemonic/index.d.ts.map +0 -1
- package/dist/mnemonic/mnemonic.d.ts +0 -85
- package/dist/mnemonic/mnemonic.d.ts.map +0 -1
- package/dist/mnemonic/utils.d.ts +0 -8
- package/dist/mnemonic/utils.d.ts.map +0 -1
- package/dist/predicate/index.d.ts +0 -3
- package/dist/predicate/index.d.ts.map +0 -1
- package/dist/predicate/predicate.d.ts +0 -94
- package/dist/predicate/predicate.d.ts.map +0 -1
- package/dist/predicate/utils/getPredicateRoot.d.ts +0 -12
- package/dist/predicate/utils/getPredicateRoot.d.ts.map +0 -1
- package/dist/predicate/utils/index.d.ts +0 -2
- package/dist/predicate/utils/index.d.ts.map +0 -1
- package/dist/providers/__generated__/operations.d.ts +0 -3477
- package/dist/providers/__generated__/operations.d.ts.map +0 -1
- package/dist/providers/assets/index.d.ts +0 -5
- package/dist/providers/assets/index.d.ts.map +0 -1
- package/dist/providers/assets/types.d.ts +0 -36
- package/dist/providers/assets/types.d.ts.map +0 -1
- package/dist/providers/assets/utils/index.d.ts +0 -4
- package/dist/providers/assets/utils/index.d.ts.map +0 -1
- package/dist/providers/assets/utils/network.d.ts +0 -33
- package/dist/providers/assets/utils/network.d.ts.map +0 -1
- package/dist/providers/assets/utils/resolveIconPaths.d.ts +0 -14
- package/dist/providers/assets/utils/resolveIconPaths.d.ts.map +0 -1
- package/dist/providers/assets/utils/url.d.ts +0 -2
- package/dist/providers/assets/utils/url.d.ts.map +0 -1
- package/dist/providers/chains.d.ts +0 -11
- package/dist/providers/chains.d.ts.map +0 -1
- package/dist/providers/coin-quantity.d.ts +0 -21
- package/dist/providers/coin-quantity.d.ts.map +0 -1
- package/dist/providers/coin.d.ts +0 -15
- package/dist/providers/coin.d.ts.map +0 -1
- package/dist/providers/fuel-graphql-subscriber.d.ts +0 -23
- package/dist/providers/fuel-graphql-subscriber.d.ts.map +0 -1
- package/dist/providers/index.d.ts +0 -13
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/memory-cache.d.ts +0 -11
- package/dist/providers/memory-cache.d.ts.map +0 -1
- package/dist/providers/message.d.ts +0 -60
- package/dist/providers/message.d.ts.map +0 -1
- package/dist/providers/provider.d.ts +0 -522
- package/dist/providers/provider.d.ts.map +0 -1
- package/dist/providers/resource.d.ts +0 -37
- package/dist/providers/resource.d.ts.map +0 -1
- package/dist/providers/transaction-request/create-transaction-request.d.ts +0 -73
- package/dist/providers/transaction-request/create-transaction-request.d.ts.map +0 -1
- package/dist/providers/transaction-request/errors.d.ts +0 -25
- package/dist/providers/transaction-request/errors.d.ts.map +0 -1
- package/dist/providers/transaction-request/hash-transaction.d.ts +0 -9
- package/dist/providers/transaction-request/hash-transaction.d.ts.map +0 -1
- package/dist/providers/transaction-request/index.d.ts +0 -10
- package/dist/providers/transaction-request/index.d.ts.map +0 -1
- package/dist/providers/transaction-request/input.d.ts +0 -59
- package/dist/providers/transaction-request/input.d.ts.map +0 -1
- package/dist/providers/transaction-request/output.d.ts +0 -39
- package/dist/providers/transaction-request/output.d.ts.map +0 -1
- package/dist/providers/transaction-request/script-transaction-request.d.ts +0 -106
- package/dist/providers/transaction-request/script-transaction-request.d.ts.map +0 -1
- package/dist/providers/transaction-request/scripts.d.ts +0 -6
- package/dist/providers/transaction-request/scripts.d.ts.map +0 -1
- package/dist/providers/transaction-request/storage-slot.d.ts +0 -10
- package/dist/providers/transaction-request/storage-slot.d.ts.map +0 -1
- package/dist/providers/transaction-request/transaction-request.d.ts +0 -259
- package/dist/providers/transaction-request/transaction-request.d.ts.map +0 -1
- package/dist/providers/transaction-request/types.d.ts +0 -10
- package/dist/providers/transaction-request/types.d.ts.map +0 -1
- package/dist/providers/transaction-request/utils.d.ts +0 -4
- package/dist/providers/transaction-request/utils.d.ts.map +0 -1
- package/dist/providers/transaction-request/witness.d.ts +0 -5
- package/dist/providers/transaction-request/witness.d.ts.map +0 -1
- package/dist/providers/transaction-response/getDecodedLogs.d.ts +0 -5
- package/dist/providers/transaction-response/getDecodedLogs.d.ts.map +0 -1
- package/dist/providers/transaction-response/index.d.ts +0 -3
- package/dist/providers/transaction-response/index.d.ts.map +0 -1
- package/dist/providers/transaction-response/transaction-response.d.ts +0 -106
- package/dist/providers/transaction-response/transaction-response.d.ts.map +0 -1
- package/dist/providers/transaction-summary/assemble-transaction-summary.d.ts +0 -20
- package/dist/providers/transaction-summary/assemble-transaction-summary.d.ts.map +0 -1
- package/dist/providers/transaction-summary/calculate-transaction-fee.d.ts +0 -21
- package/dist/providers/transaction-summary/calculate-transaction-fee.d.ts.map +0 -1
- package/dist/providers/transaction-summary/call.d.ts +0 -18
- package/dist/providers/transaction-summary/call.d.ts.map +0 -1
- package/dist/providers/transaction-summary/get-transaction-summary.d.ts +0 -31
- package/dist/providers/transaction-summary/get-transaction-summary.d.ts.map +0 -1
- package/dist/providers/transaction-summary/index.d.ts +0 -10
- package/dist/providers/transaction-summary/index.d.ts.map +0 -1
- package/dist/providers/transaction-summary/input.d.ts +0 -21
- package/dist/providers/transaction-summary/input.d.ts.map +0 -1
- package/dist/providers/transaction-summary/operations.d.ts +0 -40
- package/dist/providers/transaction-summary/operations.d.ts.map +0 -1
- package/dist/providers/transaction-summary/output.d.ts +0 -15
- package/dist/providers/transaction-summary/output.d.ts.map +0 -1
- package/dist/providers/transaction-summary/receipt.d.ts +0 -7
- package/dist/providers/transaction-summary/receipt.d.ts.map +0 -1
- package/dist/providers/transaction-summary/status.d.ts +0 -9
- package/dist/providers/transaction-summary/status.d.ts.map +0 -1
- package/dist/providers/transaction-summary/types.d.ts +0 -146
- package/dist/providers/transaction-summary/types.d.ts.map +0 -1
- package/dist/providers/utils/auto-retry-fetch.d.ts +0 -36
- package/dist/providers/utils/auto-retry-fetch.d.ts.map +0 -1
- package/dist/providers/utils/block-explorer.d.ts +0 -14
- package/dist/providers/utils/block-explorer.d.ts.map +0 -1
- package/dist/providers/utils/gas.d.ts +0 -38
- package/dist/providers/utils/gas.d.ts.map +0 -1
- package/dist/providers/utils/index.d.ts +0 -6
- package/dist/providers/utils/index.d.ts.map +0 -1
- package/dist/providers/utils/json.d.ts +0 -7
- package/dist/providers/utils/json.d.ts.map +0 -1
- package/dist/providers/utils/merge-quantities.d.ts +0 -3
- package/dist/providers/utils/merge-quantities.d.ts.map +0 -1
- package/dist/providers/utils/receipts.d.ts +0 -10
- package/dist/providers/utils/receipts.d.ts.map +0 -1
- package/dist/providers/utils/sleep.d.ts +0 -3
- package/dist/providers/utils/sleep.d.ts.map +0 -1
- package/dist/signer/index.d.ts +0 -2
- package/dist/signer/index.d.ts.map +0 -1
- package/dist/signer/signer.d.ts +0 -64
- package/dist/signer/signer.d.ts.map +0 -1
- package/dist/test-utils/generateTestWallet.d.ts +0 -4
- package/dist/test-utils/generateTestWallet.d.ts.map +0 -1
- package/dist/test-utils/index.d.ts +0 -4
- package/dist/test-utils/index.d.ts.map +0 -1
- package/dist/test-utils/launchNode.d.ts.map +0 -1
- package/dist/test-utils/seedTestWallet.d.ts +0 -4
- package/dist/test-utils/seedTestWallet.d.ts.map +0 -1
- package/dist/utils/formatTransferToContractScriptData.d.ts +0 -14
- package/dist/utils/formatTransferToContractScriptData.d.ts.map +0 -1
- package/dist/wallet/base-wallet-unlocked.d.ts +0 -73
- package/dist/wallet/base-wallet-unlocked.d.ts.map +0 -1
- package/dist/wallet/index.d.ts +0 -4
- package/dist/wallet/index.d.ts.map +0 -1
- package/dist/wallet/keystore-wallet.d.ts +0 -38
- package/dist/wallet/keystore-wallet.d.ts.map +0 -1
- package/dist/wallet/wallet.d.ts +0 -68
- package/dist/wallet/wallet.d.ts.map +0 -1
- package/dist/wallet/wallets.d.ts +0 -76
- package/dist/wallet/wallets.d.ts.map +0 -1
- package/dist/wallet-manager/index.d.ts +0 -6
- package/dist/wallet-manager/index.d.ts.map +0 -1
- package/dist/wallet-manager/storages/memory-storage.d.ts +0 -9
- package/dist/wallet-manager/storages/memory-storage.d.ts.map +0 -1
- package/dist/wallet-manager/types.d.ts +0 -42
- package/dist/wallet-manager/types.d.ts.map +0 -1
- package/dist/wallet-manager/vaults/mnemonic-vault.d.ts +0 -29
- package/dist/wallet-manager/vaults/mnemonic-vault.d.ts.map +0 -1
- package/dist/wallet-manager/vaults/privatekey-vault.d.ts +0 -29
- package/dist/wallet-manager/vaults/privatekey-vault.d.ts.map +0 -1
- package/dist/wallet-manager/wallet-manager.d.ts +0 -104
- package/dist/wallet-manager/wallet-manager.d.ts.map +0 -1
- package/dist/wordlists/index.d.ts +0 -5
- package/dist/wordlists/index.d.ts.map +0 -1
- package/dist/wordlists/words/english.d.ts +0 -2
- package/dist/wordlists/words/english.d.ts.map +0 -1
package/dist/index.js
CHANGED
@@ -5,7 +5,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
8
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
9
8
|
var __export = (target, all) => {
|
10
9
|
for (var name in all)
|
11
10
|
__defProp(target, name, { get: all[name], enumerable: true });
|
@@ -27,32 +26,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
27
26
|
mod
|
28
27
|
));
|
29
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
30
|
-
var __publicField = (obj, key, value) => {
|
31
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
32
|
-
return value;
|
33
|
-
};
|
34
|
-
var __accessCheck = (obj, member, msg) => {
|
35
|
-
if (!member.has(obj))
|
36
|
-
throw TypeError("Cannot " + msg);
|
37
|
-
};
|
38
|
-
var __privateGet = (obj, member, getter) => {
|
39
|
-
__accessCheck(obj, member, "read from private field");
|
40
|
-
return getter ? getter.call(obj) : member.get(obj);
|
41
|
-
};
|
42
|
-
var __privateAdd = (obj, member, value) => {
|
43
|
-
if (member.has(obj))
|
44
|
-
throw TypeError("Cannot add the same private member more than once");
|
45
|
-
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
46
|
-
};
|
47
|
-
var __privateSet = (obj, member, value, setter) => {
|
48
|
-
__accessCheck(obj, member, "write to private field");
|
49
|
-
setter ? setter.call(obj, value) : member.set(obj, value);
|
50
|
-
return value;
|
51
|
-
};
|
52
|
-
var __privateMethod = (obj, member, method) => {
|
53
|
-
__accessCheck(obj, member, "access private method");
|
54
|
-
return method;
|
55
|
-
};
|
56
29
|
|
57
30
|
// src/index.ts
|
58
31
|
var src_exports = {};
|
@@ -1043,11 +1016,12 @@ function getSdk(requester) {
|
|
1043
1016
|
// src/providers/fuel-graphql-subscriber.ts
|
1044
1017
|
var import_errors = require("@fuel-ts/errors");
|
1045
1018
|
var import_graphql = require("graphql");
|
1046
|
-
var
|
1019
|
+
var FuelGraphqlSubscriber = class _FuelGraphqlSubscriber {
|
1047
1020
|
constructor(options) {
|
1048
1021
|
this.options = options;
|
1049
1022
|
}
|
1050
1023
|
stream;
|
1024
|
+
static textDecoder = new TextDecoder();
|
1051
1025
|
async setStream() {
|
1052
1026
|
const { url, query, variables, fetchFn } = this.options;
|
1053
1027
|
const response = await fetchFn(`${url}-sub`, {
|
@@ -1107,8 +1081,6 @@ var _FuelGraphqlSubscriber = class {
|
|
1107
1081
|
return this;
|
1108
1082
|
}
|
1109
1083
|
};
|
1110
|
-
var FuelGraphqlSubscriber = _FuelGraphqlSubscriber;
|
1111
|
-
__publicField(FuelGraphqlSubscriber, "textDecoder", new TextDecoder());
|
1112
1084
|
|
1113
1085
|
// src/providers/memory-cache.ts
|
1114
1086
|
var import_errors2 = require("@fuel-ts/errors");
|
@@ -1731,7 +1703,7 @@ var witnessify = (value) => {
|
|
1731
1703
|
};
|
1732
1704
|
|
1733
1705
|
// src/providers/transaction-request/transaction-request.ts
|
1734
|
-
var BaseTransactionRequest = class {
|
1706
|
+
var BaseTransactionRequest = class _BaseTransactionRequest {
|
1735
1707
|
/** Gas price for transaction */
|
1736
1708
|
gasPrice;
|
1737
1709
|
/** Block until which tx cannot be included */
|
@@ -1801,7 +1773,7 @@ var BaseTransactionRequest = class {
|
|
1801
1773
|
const inputs = this.inputs?.map(inputify) ?? [];
|
1802
1774
|
const outputs = this.outputs?.map(outputify) ?? [];
|
1803
1775
|
const witnesses = this.witnesses?.map(witnessify) ?? [];
|
1804
|
-
const { policyTypes, policies } =
|
1776
|
+
const { policyTypes, policies } = _BaseTransactionRequest.getPolicyMeta(this);
|
1805
1777
|
return {
|
1806
1778
|
policyTypes,
|
1807
1779
|
inputs,
|
@@ -3386,7 +3358,7 @@ function assembleTransactionSummary(params) {
|
|
3386
3358
|
}
|
3387
3359
|
|
3388
3360
|
// src/providers/transaction-response/transaction-response.ts
|
3389
|
-
var TransactionResponse = class {
|
3361
|
+
var TransactionResponse = class _TransactionResponse {
|
3390
3362
|
/** Transaction ID */
|
3391
3363
|
id;
|
3392
3364
|
/** Current provider */
|
@@ -3414,7 +3386,7 @@ var TransactionResponse = class {
|
|
3414
3386
|
* @param provider - The provider.
|
3415
3387
|
*/
|
3416
3388
|
static async create(id, provider) {
|
3417
|
-
const response = new
|
3389
|
+
const response = new _TransactionResponse(id, provider);
|
3418
3390
|
await response.fetch();
|
3419
3391
|
return response;
|
3420
3392
|
}
|
@@ -3642,8 +3614,7 @@ var processGqlChain = (chain) => {
|
|
3642
3614
|
}
|
3643
3615
|
};
|
3644
3616
|
};
|
3645
|
-
var
|
3646
|
-
var _Provider = class {
|
3617
|
+
var Provider = class _Provider {
|
3647
3618
|
/**
|
3648
3619
|
* Constructor to initialize a Provider.
|
3649
3620
|
*
|
@@ -3654,27 +3625,25 @@ var _Provider = class {
|
|
3654
3625
|
*/
|
3655
3626
|
constructor(url, options = {}) {
|
3656
3627
|
this.url = url;
|
3657
|
-
/**
|
3658
|
-
* @hidden
|
3659
|
-
*/
|
3660
|
-
__privateAdd(this, _cacheInputs);
|
3661
|
-
__publicField(this, "operations");
|
3662
|
-
__publicField(this, "cache");
|
3663
|
-
__publicField(this, "options", {
|
3664
|
-
timeout: void 0,
|
3665
|
-
cacheUtxo: void 0,
|
3666
|
-
fetch: void 0,
|
3667
|
-
retryOptions: void 0
|
3668
|
-
});
|
3669
3628
|
this.options = { ...this.options, ...options };
|
3670
3629
|
this.url = url;
|
3671
3630
|
this.operations = this.createOperations();
|
3672
3631
|
this.cache = options.cacheUtxo ? new MemoryCache(options.cacheUtxo) : void 0;
|
3673
3632
|
}
|
3633
|
+
operations;
|
3634
|
+
cache;
|
3674
3635
|
static clearChainAndNodeCaches() {
|
3675
3636
|
_Provider.nodeInfoCache = {};
|
3676
3637
|
_Provider.chainInfoCache = {};
|
3677
3638
|
}
|
3639
|
+
static chainInfoCache = {};
|
3640
|
+
static nodeInfoCache = {};
|
3641
|
+
options = {
|
3642
|
+
timeout: void 0,
|
3643
|
+
cacheUtxo: void 0,
|
3644
|
+
fetch: void 0,
|
3645
|
+
retryOptions: void 0
|
3646
|
+
};
|
3678
3647
|
static getFetchFn(options) {
|
3679
3648
|
const { retryOptions, timeout } = options;
|
3680
3649
|
return autoRetryFetch(async (...args) => {
|
@@ -3871,6 +3840,19 @@ var _Provider = class {
|
|
3871
3840
|
} = this.getChain();
|
3872
3841
|
return chainId.toNumber();
|
3873
3842
|
}
|
3843
|
+
/**
|
3844
|
+
* @hidden
|
3845
|
+
*/
|
3846
|
+
#cacheInputs(inputs) {
|
3847
|
+
if (!this.cache) {
|
3848
|
+
return;
|
3849
|
+
}
|
3850
|
+
inputs.forEach((input) => {
|
3851
|
+
if (input.type === import_transactions17.InputType.Coin) {
|
3852
|
+
this.cache?.set(input.id);
|
3853
|
+
}
|
3854
|
+
});
|
3855
|
+
}
|
3874
3856
|
/**
|
3875
3857
|
* Submits a transaction to the chain to be executed.
|
3876
3858
|
*
|
@@ -3883,7 +3865,7 @@ var _Provider = class {
|
|
3883
3865
|
// #region Provider-sendTransaction
|
3884
3866
|
async sendTransaction(transactionRequestLike, { estimateTxDependencies = true, awaitExecution = false } = {}) {
|
3885
3867
|
const transactionRequest = transactionRequestify(transactionRequestLike);
|
3886
|
-
|
3868
|
+
this.#cacheInputs(transactionRequest.inputs);
|
3887
3869
|
if (estimateTxDependencies) {
|
3888
3870
|
await this.estimateTxDependencies(transactionRequest);
|
3889
3871
|
}
|
@@ -4508,20 +4490,6 @@ var _Provider = class {
|
|
4508
4490
|
return new TransactionResponse(transactionId, this);
|
4509
4491
|
}
|
4510
4492
|
};
|
4511
|
-
var Provider = _Provider;
|
4512
|
-
_cacheInputs = new WeakSet();
|
4513
|
-
cacheInputs_fn = function(inputs) {
|
4514
|
-
if (!this.cache) {
|
4515
|
-
return;
|
4516
|
-
}
|
4517
|
-
inputs.forEach((input) => {
|
4518
|
-
if (input.type === import_transactions17.InputType.Coin) {
|
4519
|
-
this.cache?.set(input.id);
|
4520
|
-
}
|
4521
|
-
});
|
4522
|
-
};
|
4523
|
-
__publicField(Provider, "chainInfoCache", {});
|
4524
|
-
__publicField(Provider, "nodeInfoCache", {});
|
4525
4493
|
|
4526
4494
|
// src/providers/transaction-summary/get-transaction-summary.ts
|
4527
4495
|
var import_errors14 = require("@fuel-ts/errors");
|
@@ -5192,7 +5160,7 @@ var import_hasher2 = require("@fuel-ts/hasher");
|
|
5192
5160
|
var import_math18 = require("@fuel-ts/math");
|
5193
5161
|
var import_utils28 = require("@fuel-ts/utils");
|
5194
5162
|
var import_secp256k1 = require("@noble/curves/secp256k1");
|
5195
|
-
var Signer = class {
|
5163
|
+
var Signer = class _Signer {
|
5196
5164
|
address;
|
5197
5165
|
publicKey;
|
5198
5166
|
compressedPublicKey;
|
@@ -5271,7 +5239,7 @@ var Signer = class {
|
|
5271
5239
|
* @returns Address from signature
|
5272
5240
|
*/
|
5273
5241
|
static recoverAddress(data, signature) {
|
5274
|
-
return import_address5.Address.fromPublicKey(
|
5242
|
+
return import_address5.Address.fromPublicKey(_Signer.recoverPublicKey(data, signature));
|
5275
5243
|
}
|
5276
5244
|
/**
|
5277
5245
|
* Generate a random privateKey
|
@@ -5387,6 +5355,10 @@ async function decryptKeystoreWallet(jsonWallet, password) {
|
|
5387
5355
|
|
5388
5356
|
// src/wallet/base-wallet-unlocked.ts
|
5389
5357
|
var BaseWalletUnlocked = class extends Account {
|
5358
|
+
/**
|
5359
|
+
* Default HDWallet path.
|
5360
|
+
*/
|
5361
|
+
static defaultPath = "m/44'/1179993420'/0'/0/0";
|
5390
5362
|
/**
|
5391
5363
|
* A function that returns the wallet's signer.
|
5392
5364
|
*/
|
@@ -5492,10 +5464,6 @@ var BaseWalletUnlocked = class extends Account {
|
|
5492
5464
|
return encryptKeystoreWallet(this.privateKey, this.address, password);
|
5493
5465
|
}
|
5494
5466
|
};
|
5495
|
-
/**
|
5496
|
-
* Default HDWallet path.
|
5497
|
-
*/
|
5498
|
-
__publicField(BaseWalletUnlocked, "defaultPath", "m/44'/1179993420'/0'/0/0");
|
5499
5467
|
|
5500
5468
|
// src/hdwallet/hdwallet.ts
|
5501
5469
|
var import_errors19 = require("@fuel-ts/errors");
|
@@ -7705,7 +7673,7 @@ function assertMnemonic(words) {
|
|
7705
7673
|
throw new import_errors18.FuelError(import_errors18.ErrorCode.INVALID_MNEMONIC, errorMsg);
|
7706
7674
|
}
|
7707
7675
|
}
|
7708
|
-
var Mnemonic = class {
|
7676
|
+
var Mnemonic = class _Mnemonic {
|
7709
7677
|
wordlist;
|
7710
7678
|
/**
|
7711
7679
|
*
|
@@ -7722,7 +7690,7 @@ var Mnemonic = class {
|
|
7722
7690
|
* @returns Entropy hash
|
7723
7691
|
*/
|
7724
7692
|
mnemonicToEntropy(phrase) {
|
7725
|
-
return
|
7693
|
+
return _Mnemonic.mnemonicToEntropy(phrase, this.wordlist);
|
7726
7694
|
}
|
7727
7695
|
/**
|
7728
7696
|
*
|
@@ -7730,7 +7698,7 @@ var Mnemonic = class {
|
|
7730
7698
|
* @returns Mnemonic phrase
|
7731
7699
|
*/
|
7732
7700
|
entropyToMnemonic(entropy) {
|
7733
|
-
return
|
7701
|
+
return _Mnemonic.entropyToMnemonic(entropy, this.wordlist);
|
7734
7702
|
}
|
7735
7703
|
/**
|
7736
7704
|
*
|
@@ -7771,8 +7739,8 @@ var Mnemonic = class {
|
|
7771
7739
|
* @returns 64-byte array contains privateKey and chainCode as described on BIP39
|
7772
7740
|
*/
|
7773
7741
|
static mnemonicToMasterKeys(phrase, passphrase = "") {
|
7774
|
-
const seed =
|
7775
|
-
return
|
7742
|
+
const seed = _Mnemonic.mnemonicToSeed(phrase, passphrase);
|
7743
|
+
return _Mnemonic.masterKeysFromSeed(seed);
|
7776
7744
|
}
|
7777
7745
|
/**
|
7778
7746
|
* Validates if given mnemonic is valid
|
@@ -7788,7 +7756,7 @@ var Mnemonic = class {
|
|
7788
7756
|
return false;
|
7789
7757
|
}
|
7790
7758
|
while (i < words.length) {
|
7791
|
-
if (
|
7759
|
+
if (_Mnemonic.binarySearch(words[i]) === false) {
|
7792
7760
|
return false;
|
7793
7761
|
}
|
7794
7762
|
i += 1;
|
@@ -7835,7 +7803,7 @@ var Mnemonic = class {
|
|
7835
7803
|
* @returns BIP-32 extended private key
|
7836
7804
|
*/
|
7837
7805
|
static seedToExtendedKey(seed, testnet = false) {
|
7838
|
-
const masterKey =
|
7806
|
+
const masterKey = _Mnemonic.masterKeysFromSeed(seed);
|
7839
7807
|
const prefix = (0, import_utils32.arrayify)(testnet ? TestnetPRV : MainnetPRV);
|
7840
7808
|
const depth = "0x00";
|
7841
7809
|
const fingerprint = "0x00000000";
|
@@ -7867,7 +7835,7 @@ var Mnemonic = class {
|
|
7867
7835
|
*/
|
7868
7836
|
static generate(size = 32, extraEntropy = "") {
|
7869
7837
|
const entropy = extraEntropy ? (0, import_hasher5.sha256)((0, import_utils32.concat)([(0, import_crypto3.randomBytes)(size), (0, import_utils32.arrayify)(extraEntropy)])) : (0, import_crypto3.randomBytes)(size);
|
7870
|
-
return
|
7838
|
+
return _Mnemonic.entropyToMnemonic(entropy);
|
7871
7839
|
}
|
7872
7840
|
};
|
7873
7841
|
var mnemonic_default = Mnemonic;
|
@@ -7907,7 +7875,7 @@ function parsePath(path, depth = 0) {
|
|
7907
7875
|
(p) => ~p.indexOf(`'`) ? parseInt(p, 10) + HARDENED_INDEX : parseInt(p, 10)
|
7908
7876
|
);
|
7909
7877
|
}
|
7910
|
-
var HDWallet = class {
|
7878
|
+
var HDWallet = class _HDWallet {
|
7911
7879
|
depth = 0;
|
7912
7880
|
index = 0;
|
7913
7881
|
fingerprint = (0, import_utils34.hexlify)("0x00000000");
|
@@ -7973,7 +7941,7 @@ var HDWallet = class {
|
|
7973
7941
|
if (privateKey) {
|
7974
7942
|
const N = "0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141";
|
7975
7943
|
const ki = (0, import_math19.bn)(IL).add(privateKey).mod(N).toBytes(32);
|
7976
|
-
return new
|
7944
|
+
return new _HDWallet({
|
7977
7945
|
privateKey: ki,
|
7978
7946
|
chainCode: IR,
|
7979
7947
|
index,
|
@@ -7983,7 +7951,7 @@ var HDWallet = class {
|
|
7983
7951
|
}
|
7984
7952
|
const signer = new Signer((0, import_utils34.hexlify)(IL));
|
7985
7953
|
const Ki = signer.addPoint(publicKey);
|
7986
|
-
return new
|
7954
|
+
return new _HDWallet({
|
7987
7955
|
publicKey: Ki,
|
7988
7956
|
chainCode: IR,
|
7989
7957
|
index,
|
@@ -8032,7 +8000,7 @@ var HDWallet = class {
|
|
8032
8000
|
*/
|
8033
8001
|
static fromSeed(seed) {
|
8034
8002
|
const masterKey = mnemonic_default.masterKeysFromSeed(seed);
|
8035
|
-
return new
|
8003
|
+
return new _HDWallet({
|
8036
8004
|
chainCode: (0, import_utils34.arrayify)(masterKey.slice(32)),
|
8037
8005
|
privateKey: (0, import_utils34.arrayify)(masterKey.slice(0, 32))
|
8038
8006
|
});
|
@@ -8062,7 +8030,7 @@ var HDWallet = class {
|
|
8062
8030
|
if (key[0] !== 3) {
|
8063
8031
|
throw new import_errors19.FuelError(import_errors19.ErrorCode.HD_WALLET_ERROR, "Invalid public extended key.");
|
8064
8032
|
}
|
8065
|
-
return new
|
8033
|
+
return new _HDWallet({
|
8066
8034
|
publicKey: key,
|
8067
8035
|
chainCode,
|
8068
8036
|
index,
|
@@ -8073,7 +8041,7 @@ var HDWallet = class {
|
|
8073
8041
|
if (key[0] !== 0) {
|
8074
8042
|
throw new import_errors19.FuelError(import_errors19.ErrorCode.HD_WALLET_ERROR, "Invalid private extended key.");
|
8075
8043
|
}
|
8076
|
-
return new
|
8044
|
+
return new _HDWallet({
|
8077
8045
|
privateKey: key.slice(1),
|
8078
8046
|
chainCode,
|
8079
8047
|
index,
|
@@ -8096,7 +8064,7 @@ var WalletLocked = class extends Account {
|
|
8096
8064
|
return new WalletUnlocked(privateKey, this._provider);
|
8097
8065
|
}
|
8098
8066
|
};
|
8099
|
-
var WalletUnlocked = class extends BaseWalletUnlocked {
|
8067
|
+
var WalletUnlocked = class _WalletUnlocked extends BaseWalletUnlocked {
|
8100
8068
|
/**
|
8101
8069
|
* Locks the wallet and returns an instance of WalletLocked.
|
8102
8070
|
*
|
@@ -8114,7 +8082,7 @@ var WalletUnlocked = class extends BaseWalletUnlocked {
|
|
8114
8082
|
*/
|
8115
8083
|
static generate(generateOptions) {
|
8116
8084
|
const privateKey = Signer.generatePrivateKey(generateOptions?.entropy);
|
8117
|
-
return new
|
8085
|
+
return new _WalletUnlocked(privateKey, generateOptions?.provider);
|
8118
8086
|
}
|
8119
8087
|
/**
|
8120
8088
|
* Create a Wallet Unlocked from a seed.
|
@@ -8126,8 +8094,8 @@ var WalletUnlocked = class extends BaseWalletUnlocked {
|
|
8126
8094
|
*/
|
8127
8095
|
static fromSeed(seed, path, provider) {
|
8128
8096
|
const hdWallet = hdwallet_default.fromSeed(seed);
|
8129
|
-
const childWallet = hdWallet.derivePath(path ||
|
8130
|
-
return new
|
8097
|
+
const childWallet = hdWallet.derivePath(path || _WalletUnlocked.defaultPath);
|
8098
|
+
return new _WalletUnlocked(childWallet.privateKey, provider);
|
8131
8099
|
}
|
8132
8100
|
/**
|
8133
8101
|
* Create a Wallet Unlocked from a mnemonic phrase.
|
@@ -8141,8 +8109,8 @@ var WalletUnlocked = class extends BaseWalletUnlocked {
|
|
8141
8109
|
static fromMnemonic(mnemonic, path, passphrase, provider) {
|
8142
8110
|
const seed = mnemonic_default.mnemonicToSeed(mnemonic, passphrase);
|
8143
8111
|
const hdWallet = hdwallet_default.fromSeed(seed);
|
8144
|
-
const childWallet = hdWallet.derivePath(path ||
|
8145
|
-
return new
|
8112
|
+
const childWallet = hdWallet.derivePath(path || _WalletUnlocked.defaultPath);
|
8113
|
+
return new _WalletUnlocked(childWallet.privateKey, provider);
|
8146
8114
|
}
|
8147
8115
|
/**
|
8148
8116
|
* Create a Wallet Unlocked from an extended key.
|
@@ -8153,7 +8121,7 @@ var WalletUnlocked = class extends BaseWalletUnlocked {
|
|
8153
8121
|
*/
|
8154
8122
|
static fromExtendedKey(extendedKey, provider) {
|
8155
8123
|
const hdWallet = hdwallet_default.fromExtendedKey(extendedKey);
|
8156
|
-
return new
|
8124
|
+
return new _WalletUnlocked(hdWallet.privateKey, provider);
|
8157
8125
|
}
|
8158
8126
|
/**
|
8159
8127
|
* Create a Wallet Unlocked from an encrypted JSON.
|
@@ -8165,7 +8133,7 @@ var WalletUnlocked = class extends BaseWalletUnlocked {
|
|
8165
8133
|
*/
|
8166
8134
|
static async fromEncryptedJson(jsonWallet, password, provider) {
|
8167
8135
|
const privateKey = await decryptKeystoreWallet(jsonWallet, password);
|
8168
|
-
return new
|
8136
|
+
return new _WalletUnlocked(privateKey, provider);
|
8169
8137
|
}
|
8170
8138
|
};
|
8171
8139
|
|
@@ -8191,50 +8159,50 @@ var Wallet = class {
|
|
8191
8159
|
static fromPrivateKey(privateKey, provider) {
|
8192
8160
|
return new WalletUnlocked(privateKey, provider);
|
8193
8161
|
}
|
8162
|
+
/**
|
8163
|
+
* Generate a new Wallet Unlocked with a random key pair.
|
8164
|
+
*
|
8165
|
+
* @param generateOptions - Options to customize the generation process (optional).
|
8166
|
+
* @returns An unlocked wallet instance.
|
8167
|
+
*/
|
8168
|
+
static generate = WalletUnlocked.generate;
|
8169
|
+
/**
|
8170
|
+
* Create a Wallet Unlocked from a seed.
|
8171
|
+
*
|
8172
|
+
* @param seed - The seed phrase.
|
8173
|
+
* @param provider - A Provider instance (optional).
|
8174
|
+
* @param path - The derivation path (optional).
|
8175
|
+
* @returns An unlocked wallet instance.
|
8176
|
+
*/
|
8177
|
+
static fromSeed = WalletUnlocked.fromSeed;
|
8178
|
+
/**
|
8179
|
+
* Create a Wallet Unlocked from a mnemonic phrase.
|
8180
|
+
*
|
8181
|
+
* @param mnemonic - The mnemonic phrase.
|
8182
|
+
* @param provider - A Provider instance (optional).
|
8183
|
+
* @param path - The derivation path (optional).
|
8184
|
+
* @param passphrase - The passphrase for the mnemonic (optional).
|
8185
|
+
* @returns An unlocked wallet instance.
|
8186
|
+
*/
|
8187
|
+
static fromMnemonic = WalletUnlocked.fromMnemonic;
|
8188
|
+
/**
|
8189
|
+
* Create a Wallet Unlocked from an extended key.
|
8190
|
+
*
|
8191
|
+
* @param extendedKey - The extended key.
|
8192
|
+
* @param provider - A Provider instance (optional).
|
8193
|
+
* @returns An unlocked wallet instance.
|
8194
|
+
*/
|
8195
|
+
static fromExtendedKey = WalletUnlocked.fromExtendedKey;
|
8196
|
+
/**
|
8197
|
+
* Create a Wallet Unlocked from an encrypted JSON.
|
8198
|
+
*
|
8199
|
+
* @param jsonWallet - The encrypted JSON keystore.
|
8200
|
+
* @param password - The password to decrypt the JSON.
|
8201
|
+
* @param provider - A Provider instance (optional).
|
8202
|
+
* @returns An unlocked wallet instance.
|
8203
|
+
*/
|
8204
|
+
static fromEncryptedJson = WalletUnlocked.fromEncryptedJson;
|
8194
8205
|
};
|
8195
|
-
/**
|
8196
|
-
* Generate a new Wallet Unlocked with a random key pair.
|
8197
|
-
*
|
8198
|
-
* @param generateOptions - Options to customize the generation process (optional).
|
8199
|
-
* @returns An unlocked wallet instance.
|
8200
|
-
*/
|
8201
|
-
__publicField(Wallet, "generate", WalletUnlocked.generate);
|
8202
|
-
/**
|
8203
|
-
* Create a Wallet Unlocked from a seed.
|
8204
|
-
*
|
8205
|
-
* @param seed - The seed phrase.
|
8206
|
-
* @param provider - A Provider instance (optional).
|
8207
|
-
* @param path - The derivation path (optional).
|
8208
|
-
* @returns An unlocked wallet instance.
|
8209
|
-
*/
|
8210
|
-
__publicField(Wallet, "fromSeed", WalletUnlocked.fromSeed);
|
8211
|
-
/**
|
8212
|
-
* Create a Wallet Unlocked from a mnemonic phrase.
|
8213
|
-
*
|
8214
|
-
* @param mnemonic - The mnemonic phrase.
|
8215
|
-
* @param provider - A Provider instance (optional).
|
8216
|
-
* @param path - The derivation path (optional).
|
8217
|
-
* @param passphrase - The passphrase for the mnemonic (optional).
|
8218
|
-
* @returns An unlocked wallet instance.
|
8219
|
-
*/
|
8220
|
-
__publicField(Wallet, "fromMnemonic", WalletUnlocked.fromMnemonic);
|
8221
|
-
/**
|
8222
|
-
* Create a Wallet Unlocked from an extended key.
|
8223
|
-
*
|
8224
|
-
* @param extendedKey - The extended key.
|
8225
|
-
* @param provider - A Provider instance (optional).
|
8226
|
-
* @returns An unlocked wallet instance.
|
8227
|
-
*/
|
8228
|
-
__publicField(Wallet, "fromExtendedKey", WalletUnlocked.fromExtendedKey);
|
8229
|
-
/**
|
8230
|
-
* Create a Wallet Unlocked from an encrypted JSON.
|
8231
|
-
*
|
8232
|
-
* @param jsonWallet - The encrypted JSON keystore.
|
8233
|
-
* @param password - The password to decrypt the JSON.
|
8234
|
-
* @param provider - A Provider instance (optional).
|
8235
|
-
* @returns An unlocked wallet instance.
|
8236
|
-
*/
|
8237
|
-
__publicField(Wallet, "fromEncryptedJson", WalletUnlocked.fromEncryptedJson);
|
8238
8206
|
|
8239
8207
|
// src/wallet-manager/wallet-manager.ts
|
8240
8208
|
var import_address9 = require("@fuel-ts/address");
|
@@ -8263,14 +8231,14 @@ var MemoryStorage = class {
|
|
8263
8231
|
// src/wallet-manager/vaults/mnemonic-vault.ts
|
8264
8232
|
var import_address7 = require("@fuel-ts/address");
|
8265
8233
|
var import_errors20 = require("@fuel-ts/errors");
|
8266
|
-
var _secret;
|
8267
8234
|
var MnemonicVault = class {
|
8235
|
+
static type = "mnemonic";
|
8236
|
+
#secret;
|
8237
|
+
pathKey = "{}";
|
8238
|
+
rootPath = `m/44'/1179993420'/${this.pathKey}'/0/0`;
|
8239
|
+
numberOfAccounts = 0;
|
8268
8240
|
constructor(options) {
|
8269
|
-
|
8270
|
-
__publicField(this, "pathKey", "{}");
|
8271
|
-
__publicField(this, "rootPath", `m/44'/1179993420'/${this.pathKey}'/0/0`);
|
8272
|
-
__publicField(this, "numberOfAccounts", 0);
|
8273
|
-
__privateSet(this, _secret, options.secret || mnemonic_default.generate());
|
8241
|
+
this.#secret = options.secret || mnemonic_default.generate();
|
8274
8242
|
this.rootPath = options.rootPath || this.rootPath;
|
8275
8243
|
this.numberOfAccounts = options.numberOfAccounts || 1;
|
8276
8244
|
}
|
@@ -8282,7 +8250,7 @@ var MnemonicVault = class {
|
|
8282
8250
|
}
|
8283
8251
|
serialize() {
|
8284
8252
|
return {
|
8285
|
-
secret:
|
8253
|
+
secret: this.#secret,
|
8286
8254
|
rootPath: this.rootPath,
|
8287
8255
|
numberOfAccounts: this.numberOfAccounts
|
8288
8256
|
};
|
@@ -8291,7 +8259,7 @@ var MnemonicVault = class {
|
|
8291
8259
|
const accounts = [];
|
8292
8260
|
let numberOfAccounts = 0;
|
8293
8261
|
do {
|
8294
|
-
const wallet = Wallet.fromMnemonic(
|
8262
|
+
const wallet = Wallet.fromMnemonic(this.#secret, this.getDerivePath(numberOfAccounts));
|
8295
8263
|
accounts.push({
|
8296
8264
|
publicKey: wallet.publicKey,
|
8297
8265
|
address: wallet.address
|
@@ -8302,7 +8270,7 @@ var MnemonicVault = class {
|
|
8302
8270
|
}
|
8303
8271
|
addAccount() {
|
8304
8272
|
this.numberOfAccounts += 1;
|
8305
|
-
const wallet = Wallet.fromMnemonic(
|
8273
|
+
const wallet = Wallet.fromMnemonic(this.#secret, this.getDerivePath(this.numberOfAccounts - 1));
|
8306
8274
|
return {
|
8307
8275
|
publicKey: wallet.publicKey,
|
8308
8276
|
address: wallet.address
|
@@ -8312,7 +8280,7 @@ var MnemonicVault = class {
|
|
8312
8280
|
let numberOfAccounts = 0;
|
8313
8281
|
const ownerAddress = import_address7.Address.fromAddressOrString(address);
|
8314
8282
|
do {
|
8315
|
-
const wallet = Wallet.fromMnemonic(
|
8283
|
+
const wallet = Wallet.fromMnemonic(this.#secret, this.getDerivePath(numberOfAccounts));
|
8316
8284
|
if (wallet.address.equals(ownerAddress)) {
|
8317
8285
|
return wallet.privateKey;
|
8318
8286
|
}
|
@@ -8328,29 +8296,27 @@ var MnemonicVault = class {
|
|
8328
8296
|
return Wallet.fromPrivateKey(privateKey);
|
8329
8297
|
}
|
8330
8298
|
};
|
8331
|
-
_secret = new WeakMap();
|
8332
|
-
__publicField(MnemonicVault, "type", "mnemonic");
|
8333
8299
|
|
8334
8300
|
// src/wallet-manager/vaults/privatekey-vault.ts
|
8335
8301
|
var import_address8 = require("@fuel-ts/address");
|
8336
8302
|
var import_errors21 = require("@fuel-ts/errors");
|
8337
|
-
var _privateKeys;
|
8338
8303
|
var PrivateKeyVault = class {
|
8304
|
+
static type = "privateKey";
|
8305
|
+
#privateKeys = [];
|
8339
8306
|
/**
|
8340
8307
|
* If privateKey vault is initialized with a secretKey, it creates
|
8341
8308
|
* one account with the fallowing secret
|
8342
8309
|
*/
|
8343
8310
|
constructor(options = {}) {
|
8344
|
-
__privateAdd(this, _privateKeys, []);
|
8345
8311
|
if (options.secret) {
|
8346
|
-
|
8312
|
+
this.#privateKeys = [options.secret];
|
8347
8313
|
} else {
|
8348
|
-
|
8314
|
+
this.#privateKeys = options.accounts || [Wallet.generate().privateKey];
|
8349
8315
|
}
|
8350
8316
|
}
|
8351
8317
|
serialize() {
|
8352
8318
|
return {
|
8353
|
-
accounts:
|
8319
|
+
accounts: this.#privateKeys
|
8354
8320
|
};
|
8355
8321
|
}
|
8356
8322
|
getPublicAccount(privateKey) {
|
@@ -8361,16 +8327,16 @@ var PrivateKeyVault = class {
|
|
8361
8327
|
};
|
8362
8328
|
}
|
8363
8329
|
getAccounts() {
|
8364
|
-
return
|
8330
|
+
return this.#privateKeys.map((pk) => this.getPublicAccount(pk));
|
8365
8331
|
}
|
8366
8332
|
addAccount() {
|
8367
8333
|
const wallet = Wallet.generate();
|
8368
|
-
|
8334
|
+
this.#privateKeys.push(wallet.privateKey);
|
8369
8335
|
return this.getPublicAccount(wallet.privateKey);
|
8370
8336
|
}
|
8371
8337
|
exportAccount(address) {
|
8372
8338
|
const ownerAddress = import_address8.Address.fromAddressOrString(address);
|
8373
|
-
const privateKey =
|
8339
|
+
const privateKey = this.#privateKeys.find(
|
8374
8340
|
(pk) => Wallet.fromPrivateKey(pk).address.equals(ownerAddress)
|
8375
8341
|
);
|
8376
8342
|
if (!privateKey) {
|
@@ -8386,8 +8352,6 @@ var PrivateKeyVault = class {
|
|
8386
8352
|
return Wallet.fromPrivateKey(privateKey);
|
8387
8353
|
}
|
8388
8354
|
};
|
8389
|
-
_privateKeys = new WeakMap();
|
8390
|
-
__publicField(PrivateKeyVault, "type", "privateKey");
|
8391
8355
|
|
8392
8356
|
// src/wallet-manager/wallet-manager.ts
|
8393
8357
|
var ERROR_MESSAGES = {
|
@@ -8402,46 +8366,43 @@ function assert(condition, message) {
|
|
8402
8366
|
throw new import_errors22.FuelError(import_errors22.ErrorCode.WALLET_MANAGER_ERROR, message);
|
8403
8367
|
}
|
8404
8368
|
}
|
8405
|
-
var
|
8406
|
-
|
8369
|
+
var WalletManager = class _WalletManager extends import_events.EventEmitter {
|
8370
|
+
/**
|
8371
|
+
* Vaults
|
8372
|
+
*
|
8373
|
+
* Vaults are responsible to store secret keys and return an `Wallet` instance,
|
8374
|
+
* to interact with the network.
|
8375
|
+
*
|
8376
|
+
* Each vault has access to its own state
|
8377
|
+
*
|
8378
|
+
*/
|
8379
|
+
static Vaults = [MnemonicVault, PrivateKeyVault];
|
8380
|
+
/**
|
8381
|
+
* Storage
|
8382
|
+
*
|
8383
|
+
* Persistent encrypted data. `The default storage works only on memory`.
|
8384
|
+
*/
|
8385
|
+
storage = new MemoryStorage();
|
8386
|
+
/* Key name passed to the storage */
|
8387
|
+
STORAGE_KEY = "WalletManager";
|
8388
|
+
// `This variables are only accessible from inside the class`
|
8389
|
+
#vaults = [];
|
8390
|
+
#passphrase = "";
|
8391
|
+
#isLocked = true;
|
8407
8392
|
constructor(options) {
|
8408
8393
|
super();
|
8409
|
-
/**
|
8410
|
-
* Serialize all vaults to store
|
8411
|
-
*
|
8412
|
-
* `This is only accessible from inside the class`
|
8413
|
-
*/
|
8414
|
-
__privateAdd(this, _serializeVaults);
|
8415
|
-
/**
|
8416
|
-
* Deserialize all vaults to state
|
8417
|
-
*
|
8418
|
-
* `This is only accessible from inside the class`
|
8419
|
-
*/
|
8420
|
-
__privateAdd(this, _deserializeVaults);
|
8421
|
-
/**
|
8422
|
-
* Storage
|
8423
|
-
*
|
8424
|
-
* Persistent encrypted data. `The default storage works only on memory`.
|
8425
|
-
*/
|
8426
|
-
__publicField(this, "storage", new MemoryStorage());
|
8427
|
-
/* Key name passed to the storage */
|
8428
|
-
__publicField(this, "STORAGE_KEY", "WalletManager");
|
8429
|
-
// `This variables are only accessible from inside the class`
|
8430
|
-
__privateAdd(this, _vaults, []);
|
8431
|
-
__privateAdd(this, _passphrase, "");
|
8432
|
-
__privateAdd(this, _isLocked, true);
|
8433
8394
|
this.storage = options?.storage || this.storage;
|
8434
8395
|
}
|
8435
8396
|
get isLocked() {
|
8436
|
-
return
|
8397
|
+
return this.#isLocked;
|
8437
8398
|
}
|
8438
8399
|
/**
|
8439
8400
|
* Return the vault serialized object containing all the privateKeys,
|
8440
8401
|
* the format of the return depends on the Vault type.
|
8441
8402
|
*/
|
8442
8403
|
exportVault(vaultId) {
|
8443
|
-
assert(!
|
8444
|
-
const vaultState =
|
8404
|
+
assert(!this.#isLocked, ERROR_MESSAGES.wallet_not_unlocked);
|
8405
|
+
const vaultState = this.#vaults.find((_, idx) => idx === vaultId);
|
8445
8406
|
assert(vaultState, ERROR_MESSAGES.vault_not_found);
|
8446
8407
|
return vaultState.vault.serialize();
|
8447
8408
|
}
|
@@ -8449,7 +8410,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8449
8410
|
* List all vaults on the Wallet Manager, this function not return secret's
|
8450
8411
|
*/
|
8451
8412
|
getVaults() {
|
8452
|
-
return
|
8413
|
+
return this.#vaults.map((v, idx) => ({
|
8453
8414
|
title: v.title,
|
8454
8415
|
type: v.type,
|
8455
8416
|
vaultId: idx
|
@@ -8459,7 +8420,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8459
8420
|
* List all accounts on the Wallet Manager not vault information is revealed
|
8460
8421
|
*/
|
8461
8422
|
getAccounts() {
|
8462
|
-
return
|
8423
|
+
return this.#vaults.flatMap(
|
8463
8424
|
(vaultState, vaultId) => vaultState.vault.getAccounts().map((account) => ({ ...account, vaultId }))
|
8464
8425
|
);
|
8465
8426
|
}
|
@@ -8468,7 +8429,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8468
8429
|
*/
|
8469
8430
|
getWallet(address) {
|
8470
8431
|
const ownerAddress = import_address9.Address.fromAddressOrString(address);
|
8471
|
-
const vaultState =
|
8432
|
+
const vaultState = this.#vaults.find(
|
8472
8433
|
(vs) => vs.vault.getAccounts().find((a) => a.address.equals(ownerAddress))
|
8473
8434
|
);
|
8474
8435
|
assert(vaultState, ERROR_MESSAGES.address_not_found);
|
@@ -8479,8 +8440,8 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8479
8440
|
*/
|
8480
8441
|
exportPrivateKey(address) {
|
8481
8442
|
const ownerAddress = import_address9.Address.fromAddressOrString(address);
|
8482
|
-
assert(!
|
8483
|
-
const vaultState =
|
8443
|
+
assert(!this.#isLocked, ERROR_MESSAGES.wallet_not_unlocked);
|
8444
|
+
const vaultState = this.#vaults.find(
|
8484
8445
|
(vs) => vs.vault.getAccounts().find((a) => a.address.equals(ownerAddress))
|
8485
8446
|
);
|
8486
8447
|
assert(vaultState, ERROR_MESSAGES.address_not_found);
|
@@ -8492,7 +8453,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8492
8453
|
*/
|
8493
8454
|
async addAccount(options) {
|
8494
8455
|
await this.loadState();
|
8495
|
-
const vaultState =
|
8456
|
+
const vaultState = this.#vaults[options?.vaultId || 0];
|
8496
8457
|
await assert(vaultState, ERROR_MESSAGES.vault_not_found);
|
8497
8458
|
const account = vaultState.vault.addAccount();
|
8498
8459
|
await this.saveState();
|
@@ -8503,7 +8464,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8503
8464
|
* created by the vault.
|
8504
8465
|
*/
|
8505
8466
|
async removeVault(index) {
|
8506
|
-
|
8467
|
+
this.#vaults.splice(index, 1);
|
8507
8468
|
await this.saveState();
|
8508
8469
|
}
|
8509
8470
|
/**
|
@@ -8514,11 +8475,11 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8514
8475
|
await this.loadState();
|
8515
8476
|
const Vault2 = this.getVaultClass(vaultConfig.type);
|
8516
8477
|
const vault = new Vault2(vaultConfig);
|
8517
|
-
|
8478
|
+
this.#vaults = this.#vaults.concat({
|
8518
8479
|
title: vaultConfig.title,
|
8519
8480
|
type: vaultConfig.type,
|
8520
8481
|
vault
|
8521
|
-
})
|
8482
|
+
});
|
8522
8483
|
await this.saveState();
|
8523
8484
|
}
|
8524
8485
|
/**
|
@@ -8526,9 +8487,9 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8526
8487
|
* secrets.
|
8527
8488
|
*/
|
8528
8489
|
lock() {
|
8529
|
-
|
8530
|
-
|
8531
|
-
|
8490
|
+
this.#isLocked = true;
|
8491
|
+
this.#vaults = [];
|
8492
|
+
this.#passphrase = "";
|
8532
8493
|
this.emit("lock");
|
8533
8494
|
}
|
8534
8495
|
/**
|
@@ -8536,8 +8497,8 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8536
8497
|
* Vaults with secrets are not unlocked or instantiated on this moment.
|
8537
8498
|
*/
|
8538
8499
|
async unlock(passphrase) {
|
8539
|
-
|
8540
|
-
|
8500
|
+
this.#passphrase = passphrase;
|
8501
|
+
this.#isLocked = false;
|
8541
8502
|
try {
|
8542
8503
|
await this.loadState();
|
8543
8504
|
this.emit("unlock");
|
@@ -8550,9 +8511,9 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8550
8511
|
* Update WalletManager encryption passphrase
|
8551
8512
|
*/
|
8552
8513
|
async updatePassphrase(oldpass, newpass) {
|
8553
|
-
const isLocked =
|
8514
|
+
const isLocked = this.#isLocked;
|
8554
8515
|
await this.unlock(oldpass);
|
8555
|
-
|
8516
|
+
this.#passphrase = newpass;
|
8556
8517
|
await this.saveState();
|
8557
8518
|
await this.loadState();
|
8558
8519
|
if (isLocked) {
|
@@ -8563,24 +8524,51 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8563
8524
|
* Retrieve and decrypt WalletManager state from storage
|
8564
8525
|
*/
|
8565
8526
|
async loadState() {
|
8566
|
-
await assert(!
|
8527
|
+
await assert(!this.#isLocked, ERROR_MESSAGES.wallet_not_unlocked);
|
8567
8528
|
const data = await this.storage.getItem(this.STORAGE_KEY);
|
8568
8529
|
if (data) {
|
8569
|
-
const state = await (0, import_crypto4.decrypt)(
|
8570
|
-
|
8530
|
+
const state = await (0, import_crypto4.decrypt)(this.#passphrase, JSON.parse(data));
|
8531
|
+
this.#vaults = this.#deserializeVaults(state.vaults);
|
8571
8532
|
}
|
8572
8533
|
}
|
8573
8534
|
/**
|
8574
8535
|
* Store encrypted WalletManager state on storage
|
8575
8536
|
*/
|
8576
8537
|
async saveState() {
|
8577
|
-
await assert(!
|
8578
|
-
const encryptedData = await (0, import_crypto4.encrypt)(
|
8579
|
-
vaults:
|
8538
|
+
await assert(!this.#isLocked, ERROR_MESSAGES.wallet_not_unlocked);
|
8539
|
+
const encryptedData = await (0, import_crypto4.encrypt)(this.#passphrase, {
|
8540
|
+
vaults: this.#serializeVaults(this.#vaults)
|
8580
8541
|
});
|
8581
8542
|
await this.storage.setItem(this.STORAGE_KEY, JSON.stringify(encryptedData));
|
8582
8543
|
this.emit("update");
|
8583
8544
|
}
|
8545
|
+
/**
|
8546
|
+
* Serialize all vaults to store
|
8547
|
+
*
|
8548
|
+
* `This is only accessible from inside the class`
|
8549
|
+
*/
|
8550
|
+
#serializeVaults(vaults) {
|
8551
|
+
return vaults.map(({ title, type, vault }) => ({
|
8552
|
+
title,
|
8553
|
+
type,
|
8554
|
+
data: vault.serialize()
|
8555
|
+
}));
|
8556
|
+
}
|
8557
|
+
/**
|
8558
|
+
* Deserialize all vaults to state
|
8559
|
+
*
|
8560
|
+
* `This is only accessible from inside the class`
|
8561
|
+
*/
|
8562
|
+
#deserializeVaults(vaults) {
|
8563
|
+
return vaults.map(({ title, type, data: vaultConfig }) => {
|
8564
|
+
const VaultClass = this.getVaultClass(type);
|
8565
|
+
return {
|
8566
|
+
title,
|
8567
|
+
type,
|
8568
|
+
vault: new VaultClass(vaultConfig)
|
8569
|
+
};
|
8570
|
+
});
|
8571
|
+
}
|
8584
8572
|
/**
|
8585
8573
|
* Return a instantiable Class reference from `WalletManager.Vaults` supported list.
|
8586
8574
|
*/
|
@@ -8590,43 +8578,11 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8590
8578
|
return VaultClass;
|
8591
8579
|
}
|
8592
8580
|
};
|
8593
|
-
var WalletManager = _WalletManager;
|
8594
|
-
_vaults = new WeakMap();
|
8595
|
-
_passphrase = new WeakMap();
|
8596
|
-
_isLocked = new WeakMap();
|
8597
|
-
_serializeVaults = new WeakSet();
|
8598
|
-
serializeVaults_fn = function(vaults) {
|
8599
|
-
return vaults.map(({ title, type, vault }) => ({
|
8600
|
-
title,
|
8601
|
-
type,
|
8602
|
-
data: vault.serialize()
|
8603
|
-
}));
|
8604
|
-
};
|
8605
|
-
_deserializeVaults = new WeakSet();
|
8606
|
-
deserializeVaults_fn = function(vaults) {
|
8607
|
-
return vaults.map(({ title, type, data: vaultConfig }) => {
|
8608
|
-
const VaultClass = this.getVaultClass(type);
|
8609
|
-
return {
|
8610
|
-
title,
|
8611
|
-
type,
|
8612
|
-
vault: new VaultClass(vaultConfig)
|
8613
|
-
};
|
8614
|
-
});
|
8615
|
-
};
|
8616
|
-
/**
|
8617
|
-
* Vaults
|
8618
|
-
*
|
8619
|
-
* Vaults are responsible to store secret keys and return an `Wallet` instance,
|
8620
|
-
* to interact with the network.
|
8621
|
-
*
|
8622
|
-
* Each vault has access to its own state
|
8623
|
-
*
|
8624
|
-
*/
|
8625
|
-
__publicField(WalletManager, "Vaults", [MnemonicVault, PrivateKeyVault]);
|
8626
8581
|
|
8627
8582
|
// src/wallet-manager/types.ts
|
8628
8583
|
var import_errors23 = require("@fuel-ts/errors");
|
8629
8584
|
var Vault = class {
|
8585
|
+
static type;
|
8630
8586
|
constructor(_options) {
|
8631
8587
|
throw new import_errors23.FuelError(import_errors23.ErrorCode.NOT_IMPLEMENTED, "Not implemented.");
|
8632
8588
|
}
|
@@ -8646,7 +8602,6 @@ var Vault = class {
|
|
8646
8602
|
throw new import_errors23.FuelError(import_errors23.ErrorCode.NOT_IMPLEMENTED, "Not implemented.");
|
8647
8603
|
}
|
8648
8604
|
};
|
8649
|
-
__publicField(Vault, "type");
|
8650
8605
|
var StorageAbstract = class {
|
8651
8606
|
};
|
8652
8607
|
|
@@ -8672,7 +8627,7 @@ var getPredicateRoot = (bytecode) => {
|
|
8672
8627
|
};
|
8673
8628
|
|
8674
8629
|
// src/predicate/predicate.ts
|
8675
|
-
var Predicate = class extends Account {
|
8630
|
+
var Predicate = class _Predicate extends Account {
|
8676
8631
|
bytes;
|
8677
8632
|
predicateDataBytes = Uint8Array.from([]);
|
8678
8633
|
predicateData = [];
|
@@ -8693,7 +8648,7 @@ var Predicate = class extends Account {
|
|
8693
8648
|
inputData,
|
8694
8649
|
configurableConstants
|
8695
8650
|
}) {
|
8696
|
-
const { predicateBytes, predicateInterface } =
|
8651
|
+
const { predicateBytes, predicateInterface } = _Predicate.processPredicateData(
|
8697
8652
|
bytecode,
|
8698
8653
|
abi,
|
8699
8654
|
configurableConstants
|
@@ -8789,7 +8744,7 @@ var Predicate = class extends Account {
|
|
8789
8744
|
}
|
8790
8745
|
}
|
8791
8746
|
if (configurableConstants && Object.keys(configurableConstants).length) {
|
8792
|
-
predicateBytes =
|
8747
|
+
predicateBytes = _Predicate.setConfigurableConstants(
|
8793
8748
|
predicateBytes,
|
8794
8749
|
configurableConstants,
|
8795
8750
|
abiInterface
|
@@ -9169,7 +9124,9 @@ async function withTimeout(promise, timeout = 1050) {
|
|
9169
9124
|
var HAS_CONNECTOR_TIMEOUT = 2e3;
|
9170
9125
|
var PING_CACHE_TIME = 5e3;
|
9171
9126
|
var { warn } = console;
|
9172
|
-
var
|
9127
|
+
var Fuel = class _Fuel extends FuelConnector {
|
9128
|
+
static STORAGE_KEY = "fuel-current-connector";
|
9129
|
+
static defaultConfig = {};
|
9173
9130
|
_storage = null;
|
9174
9131
|
_connectors = [];
|
9175
9132
|
_targetObject = null;
|
@@ -9494,9 +9451,6 @@ var _Fuel = class extends FuelConnector {
|
|
9494
9451
|
await this.clean();
|
9495
9452
|
}
|
9496
9453
|
};
|
9497
|
-
var Fuel = _Fuel;
|
9498
|
-
__publicField(Fuel, "STORAGE_KEY", "fuel-current-connector");
|
9499
|
-
__publicField(Fuel, "defaultConfig", {});
|
9500
9454
|
// Annotate the CommonJS export names for ESM import in node:
|
9501
9455
|
0 && (module.exports = {
|
9502
9456
|
Account,
|