@fuel-ts/account 0.0.0-rc-2037-20240422095321 → 0.0.0-rc-2130-20240422142413
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/hdwallet/hdwallet.d.ts.map +1 -1
- package/dist/index.global.js +1407 -2588
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +154 -230
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +70 -140
- package/dist/index.mjs.map +1 -1
- package/dist/mnemonic/mnemonic.d.ts.map +1 -1
- package/dist/predicate/predicate.d.ts +2 -17
- package/dist/predicate/predicate.d.ts.map +1 -1
- package/dist/providers/coin.d.ts +1 -2
- package/dist/providers/coin.d.ts.map +1 -1
- package/dist/providers/message.d.ts +0 -1
- package/dist/providers/message.d.ts.map +1 -1
- package/dist/providers/provider.d.ts +0 -9
- package/dist/providers/provider.d.ts.map +1 -1
- package/dist/providers/transaction-request/index.d.ts +0 -1
- package/dist/providers/transaction-request/index.d.ts.map +1 -1
- package/dist/providers/transaction-request/transaction-request.d.ts +20 -4
- package/dist/providers/transaction-request/transaction-request.d.ts.map +1 -1
- package/dist/test-utils/index.d.ts +0 -1
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/seedTestWallet.d.ts +1 -1
- package/dist/test-utils/seedTestWallet.d.ts.map +1 -1
- package/dist/test-utils.global.js +1448 -2606
- package/dist/test-utils.global.js.map +1 -1
- package/dist/test-utils.js +149 -203
- package/dist/test-utils.js.map +1 -1
- package/dist/test-utils.mjs +70 -121
- package/dist/test-utils.mjs.map +1 -1
- package/dist/wallet/base-wallet-unlocked.d.ts +2 -2
- package/dist/wallet/base-wallet-unlocked.d.ts.map +1 -1
- package/package.json +15 -16
- package/dist/providers/transaction-request/helpers.d.ts +0 -10
- package/dist/providers/transaction-request/helpers.d.ts.map +0 -1
- package/dist/test-utils/resources.d.ts +0 -4
- package/dist/test-utils/resources.d.ts.map +0 -1
- package/dist/test-utils/transactionRequest.d.ts +0 -5
- package/dist/test-utils/transactionRequest.d.ts.map +0 -1
package/dist/index.js
CHANGED
@@ -88,7 +88,7 @@ __export(src_exports, {
|
|
88
88
|
StorageAbstract: () => StorageAbstract,
|
89
89
|
TransactionResponse: () => TransactionResponse,
|
90
90
|
TransactionStatus: () => TransactionStatus,
|
91
|
-
TransactionType: () =>
|
91
|
+
TransactionType: () => import_transactions6.TransactionType,
|
92
92
|
TransactionTypeName: () => TransactionTypeName,
|
93
93
|
Vault: () => Vault,
|
94
94
|
Wallet: () => Wallet,
|
@@ -104,7 +104,6 @@ __export(src_exports, {
|
|
104
104
|
assets: () => assets,
|
105
105
|
buildBlockExplorerUrl: () => buildBlockExplorerUrl,
|
106
106
|
cacheFor: () => cacheFor,
|
107
|
-
cacheResources: () => cacheResources,
|
108
107
|
calculateMetadataGasForTxCreate: () => calculateMetadataGasForTxCreate,
|
109
108
|
calculateMetadataGasForTxScript: () => calculateMetadataGasForTxScript,
|
110
109
|
calculatePriceWithFactor: () => calculatePriceWithFactor,
|
@@ -151,7 +150,6 @@ __export(src_exports, {
|
|
151
150
|
getReceiptsMessageOut: () => getReceiptsMessageOut,
|
152
151
|
getReceiptsTransferOut: () => getReceiptsTransferOut,
|
153
152
|
getReceiptsWithMissingData: () => getReceiptsWithMissingData,
|
154
|
-
getRequestInputResourceOwner: () => getRequestInputResourceOwner,
|
155
153
|
getTransactionStatusName: () => getTransactionStatusName,
|
156
154
|
getTransactionSummary: () => getTransactionSummary,
|
157
155
|
getTransactionSummaryFromRequest: () => getTransactionSummaryFromRequest,
|
@@ -165,10 +163,6 @@ __export(src_exports, {
|
|
165
163
|
isMessage: () => isMessage,
|
166
164
|
isRawCoin: () => isRawCoin,
|
167
165
|
isRawMessage: () => isRawMessage,
|
168
|
-
isRequestInputCoin: () => isRequestInputCoin,
|
169
|
-
isRequestInputMessage: () => isRequestInputMessage,
|
170
|
-
isRequestInputResource: () => isRequestInputResource,
|
171
|
-
isRequestInputResourceFromOwner: () => isRequestInputResourceFromOwner,
|
172
166
|
isType: () => isType,
|
173
167
|
isTypeCreate: () => isTypeCreate,
|
174
168
|
isTypeMint: () => isTypeMint,
|
@@ -236,11 +230,10 @@ var addAmountToAsset = (params) => {
|
|
236
230
|
var import_address3 = require("@fuel-ts/address");
|
237
231
|
var import_errors14 = require("@fuel-ts/errors");
|
238
232
|
var import_math15 = require("@fuel-ts/math");
|
239
|
-
var
|
233
|
+
var import_transactions18 = require("@fuel-ts/transactions");
|
240
234
|
var import_utils23 = require("@fuel-ts/utils");
|
241
235
|
var import_versions = require("@fuel-ts/versions");
|
242
236
|
var import_utils24 = require("@noble/curves/abstract/utils");
|
243
|
-
var import_ethers = require("ethers");
|
244
237
|
var import_graphql_request = require("graphql-request");
|
245
238
|
var import_ramda3 = require("ramda");
|
246
239
|
|
@@ -1326,7 +1319,7 @@ var import_address = require("@fuel-ts/address");
|
|
1326
1319
|
var import_configs7 = require("@fuel-ts/address/configs");
|
1327
1320
|
var import_crypto = require("@fuel-ts/crypto");
|
1328
1321
|
var import_math7 = require("@fuel-ts/math");
|
1329
|
-
var
|
1322
|
+
var import_transactions6 = require("@fuel-ts/transactions");
|
1330
1323
|
var import_utils9 = require("@fuel-ts/utils");
|
1331
1324
|
|
1332
1325
|
// src/providers/resource.ts
|
@@ -1813,28 +1806,6 @@ var NoWitnessByOwnerError = class extends Error {
|
|
1813
1806
|
name = "NoWitnessByOwnerError";
|
1814
1807
|
};
|
1815
1808
|
|
1816
|
-
// src/providers/transaction-request/helpers.ts
|
1817
|
-
var import_transactions6 = require("@fuel-ts/transactions");
|
1818
|
-
var isRequestInputCoin = (input) => input.type === import_transactions6.InputType.Coin;
|
1819
|
-
var isRequestInputMessage = (input) => input.type === import_transactions6.InputType.Message;
|
1820
|
-
var isRequestInputResource = (input) => isRequestInputCoin(input) || isRequestInputMessage(input);
|
1821
|
-
var getRequestInputResourceOwner = (input) => isRequestInputCoin(input) ? input.owner : input.recipient;
|
1822
|
-
var isRequestInputResourceFromOwner = (input, owner) => getRequestInputResourceOwner(input) === owner.toB256();
|
1823
|
-
var cacheResources = (resources) => resources.reduce(
|
1824
|
-
(cache2, resource) => {
|
1825
|
-
if (isCoin(resource)) {
|
1826
|
-
cache2.utxos.push(resource.id);
|
1827
|
-
} else {
|
1828
|
-
cache2.messages.push(resource.nonce);
|
1829
|
-
}
|
1830
|
-
return cache2;
|
1831
|
-
},
|
1832
|
-
{
|
1833
|
-
utxos: [],
|
1834
|
-
messages: []
|
1835
|
-
}
|
1836
|
-
);
|
1837
|
-
|
1838
1809
|
// src/providers/transaction-request/witness.ts
|
1839
1810
|
var import_utils8 = require("@fuel-ts/utils");
|
1840
1811
|
var witnessify = (value) => {
|
@@ -1887,20 +1858,20 @@ var BaseTransactionRequest = class {
|
|
1887
1858
|
let policyTypes = 0;
|
1888
1859
|
const policies = [];
|
1889
1860
|
if (req.gasPrice) {
|
1890
|
-
policyTypes +=
|
1891
|
-
policies.push({ data: req.gasPrice, type:
|
1861
|
+
policyTypes += import_transactions6.PolicyType.GasPrice;
|
1862
|
+
policies.push({ data: req.gasPrice, type: import_transactions6.PolicyType.GasPrice });
|
1892
1863
|
}
|
1893
1864
|
if (req.witnessLimit) {
|
1894
|
-
policyTypes +=
|
1895
|
-
policies.push({ data: req.witnessLimit, type:
|
1865
|
+
policyTypes += import_transactions6.PolicyType.WitnessLimit;
|
1866
|
+
policies.push({ data: req.witnessLimit, type: import_transactions6.PolicyType.WitnessLimit });
|
1896
1867
|
}
|
1897
1868
|
if (req.maturity > 0) {
|
1898
|
-
policyTypes +=
|
1899
|
-
policies.push({ data: req.maturity, type:
|
1869
|
+
policyTypes += import_transactions6.PolicyType.Maturity;
|
1870
|
+
policies.push({ data: req.maturity, type: import_transactions6.PolicyType.Maturity });
|
1900
1871
|
}
|
1901
1872
|
if (req.maxFee) {
|
1902
|
-
policyTypes +=
|
1903
|
-
policies.push({ data: req.maxFee, type:
|
1873
|
+
policyTypes += import_transactions6.PolicyType.MaxFee;
|
1874
|
+
policies.push({ data: req.maxFee, type: import_transactions6.PolicyType.MaxFee });
|
1904
1875
|
}
|
1905
1876
|
return {
|
1906
1877
|
policyTypes,
|
@@ -1934,7 +1905,7 @@ var BaseTransactionRequest = class {
|
|
1934
1905
|
* @returns The transaction bytes.
|
1935
1906
|
*/
|
1936
1907
|
toTransactionBytes() {
|
1937
|
-
return new
|
1908
|
+
return new import_transactions6.TransactionCoder().encode(this.toTransaction());
|
1938
1909
|
}
|
1939
1910
|
/**
|
1940
1911
|
* @hidden
|
@@ -2025,7 +1996,7 @@ var BaseTransactionRequest = class {
|
|
2025
1996
|
*/
|
2026
1997
|
getCoinInputs() {
|
2027
1998
|
return this.inputs.filter(
|
2028
|
-
(input) => input.type ===
|
1999
|
+
(input) => input.type === import_transactions6.InputType.Coin
|
2029
2000
|
);
|
2030
2001
|
}
|
2031
2002
|
/**
|
@@ -2035,7 +2006,7 @@ var BaseTransactionRequest = class {
|
|
2035
2006
|
*/
|
2036
2007
|
getCoinOutputs() {
|
2037
2008
|
return this.outputs.filter(
|
2038
|
-
(output) => output.type ===
|
2009
|
+
(output) => output.type === import_transactions6.OutputType.Coin
|
2039
2010
|
);
|
2040
2011
|
}
|
2041
2012
|
/**
|
@@ -2045,7 +2016,7 @@ var BaseTransactionRequest = class {
|
|
2045
2016
|
*/
|
2046
2017
|
getChangeOutputs() {
|
2047
2018
|
return this.outputs.filter(
|
2048
|
-
(output) => output.type ===
|
2019
|
+
(output) => output.type === import_transactions6.OutputType.Change
|
2049
2020
|
);
|
2050
2021
|
}
|
2051
2022
|
/**
|
@@ -2057,9 +2028,9 @@ var BaseTransactionRequest = class {
|
|
2057
2028
|
const ownerAddress = (0, import_address.addressify)(owner);
|
2058
2029
|
const found = this.inputs.find((input) => {
|
2059
2030
|
switch (input.type) {
|
2060
|
-
case
|
2031
|
+
case import_transactions6.InputType.Coin:
|
2061
2032
|
return (0, import_utils9.hexlify)(input.owner) === ownerAddress.toB256();
|
2062
|
-
case
|
2033
|
+
case import_transactions6.InputType.Message:
|
2063
2034
|
return (0, import_utils9.hexlify)(input.recipient) === ownerAddress.toB256();
|
2064
2035
|
default:
|
2065
2036
|
return false;
|
@@ -2075,8 +2046,8 @@ var BaseTransactionRequest = class {
|
|
2075
2046
|
* @param predicate - Predicate bytes.
|
2076
2047
|
* @param predicateData - Predicate data bytes.
|
2077
2048
|
*/
|
2078
|
-
addCoinInput(coin) {
|
2079
|
-
const { assetId, owner, amount
|
2049
|
+
addCoinInput(coin, predicate) {
|
2050
|
+
const { assetId, owner, amount } = coin;
|
2080
2051
|
let witnessIndex;
|
2081
2052
|
if (predicate) {
|
2082
2053
|
witnessIndex = 0;
|
@@ -2087,14 +2058,14 @@ var BaseTransactionRequest = class {
|
|
2087
2058
|
}
|
2088
2059
|
}
|
2089
2060
|
const input = {
|
2090
|
-
|
2091
|
-
type:
|
2061
|
+
...coin,
|
2062
|
+
type: import_transactions6.InputType.Coin,
|
2092
2063
|
owner: owner.toB256(),
|
2093
2064
|
amount,
|
2094
2065
|
assetId,
|
2095
2066
|
txPointer: "0x00000000000000000000000000000000",
|
2096
2067
|
witnessIndex,
|
2097
|
-
predicate
|
2068
|
+
predicate: predicate?.bytes
|
2098
2069
|
};
|
2099
2070
|
this.pushInput(input);
|
2100
2071
|
this.addChangeOutput(owner, assetId);
|
@@ -2107,8 +2078,8 @@ var BaseTransactionRequest = class {
|
|
2107
2078
|
* @param predicate - Predicate bytes.
|
2108
2079
|
* @param predicateData - Predicate data bytes.
|
2109
2080
|
*/
|
2110
|
-
addMessageInput(message) {
|
2111
|
-
const { recipient, sender, amount
|
2081
|
+
addMessageInput(message, predicate) {
|
2082
|
+
const { recipient, sender, amount } = message;
|
2112
2083
|
const assetId = import_configs7.BaseAssetId;
|
2113
2084
|
let witnessIndex;
|
2114
2085
|
if (predicate) {
|
@@ -2120,13 +2091,13 @@ var BaseTransactionRequest = class {
|
|
2120
2091
|
}
|
2121
2092
|
}
|
2122
2093
|
const input = {
|
2123
|
-
|
2124
|
-
type:
|
2094
|
+
...message,
|
2095
|
+
type: import_transactions6.InputType.Message,
|
2125
2096
|
sender: sender.toB256(),
|
2126
2097
|
recipient: recipient.toB256(),
|
2127
2098
|
amount,
|
2128
2099
|
witnessIndex,
|
2129
|
-
predicate
|
2100
|
+
predicate: predicate?.bytes
|
2130
2101
|
};
|
2131
2102
|
this.pushInput(input);
|
2132
2103
|
this.addChangeOutput(recipient, assetId);
|
@@ -2157,6 +2128,32 @@ var BaseTransactionRequest = class {
|
|
2157
2128
|
resources.forEach((resource) => this.addResource(resource));
|
2158
2129
|
return this;
|
2159
2130
|
}
|
2131
|
+
/**
|
2132
|
+
* Adds multiple resources to the transaction by adding coin/message inputs and change
|
2133
|
+
* outputs from the related assetIds.
|
2134
|
+
*
|
2135
|
+
* @param resources - The resources to add.
|
2136
|
+
* @returns This transaction.
|
2137
|
+
*/
|
2138
|
+
addPredicateResource(resource, predicate) {
|
2139
|
+
if (isCoin(resource)) {
|
2140
|
+
this.addCoinInput(resource, predicate);
|
2141
|
+
} else {
|
2142
|
+
this.addMessageInput(resource, predicate);
|
2143
|
+
}
|
2144
|
+
return this;
|
2145
|
+
}
|
2146
|
+
/**
|
2147
|
+
* Adds multiple predicate coin/message inputs to the transaction and change outputs
|
2148
|
+
* from the related assetIds.
|
2149
|
+
*
|
2150
|
+
* @param resources - The resources to add.
|
2151
|
+
* @returns This transaction.
|
2152
|
+
*/
|
2153
|
+
addPredicateResources(resources, predicate) {
|
2154
|
+
resources.forEach((resource) => this.addPredicateResource(resource, predicate));
|
2155
|
+
return this;
|
2156
|
+
}
|
2160
2157
|
/**
|
2161
2158
|
* Adds a coin output to the transaction.
|
2162
2159
|
*
|
@@ -2166,7 +2163,7 @@ var BaseTransactionRequest = class {
|
|
2166
2163
|
*/
|
2167
2164
|
addCoinOutput(to, amount, assetId = import_configs7.BaseAssetId) {
|
2168
2165
|
this.pushOutput({
|
2169
|
-
type:
|
2166
|
+
type: import_transactions6.OutputType.Coin,
|
2170
2167
|
to: (0, import_address.addressify)(to).toB256(),
|
2171
2168
|
amount,
|
2172
2169
|
assetId
|
@@ -2182,7 +2179,7 @@ var BaseTransactionRequest = class {
|
|
2182
2179
|
addCoinOutputs(to, quantities) {
|
2183
2180
|
quantities.map(coinQuantityfy).forEach((quantity) => {
|
2184
2181
|
this.pushOutput({
|
2185
|
-
type:
|
2182
|
+
type: import_transactions6.OutputType.Coin,
|
2186
2183
|
to: (0, import_address.addressify)(to).toB256(),
|
2187
2184
|
amount: quantity.amount,
|
2188
2185
|
assetId: quantity.assetId
|
@@ -2202,7 +2199,7 @@ var BaseTransactionRequest = class {
|
|
2202
2199
|
);
|
2203
2200
|
if (!changeOutput) {
|
2204
2201
|
this.pushOutput({
|
2205
|
-
type:
|
2202
|
+
type: import_transactions6.OutputType.Change,
|
2206
2203
|
to: (0, import_address.addressify)(to).toB256(),
|
2207
2204
|
assetId
|
2208
2205
|
});
|
@@ -2305,20 +2302,16 @@ var BaseTransactionRequest = class {
|
|
2305
2302
|
toJSON() {
|
2306
2303
|
return normalizeJSON(this);
|
2307
2304
|
}
|
2308
|
-
removeWitness(index) {
|
2309
|
-
this.witnesses.splice(index, 1);
|
2310
|
-
this.adjustWitnessIndexes(index);
|
2311
|
-
}
|
2312
2305
|
updatePredicateInputs(inputs) {
|
2313
2306
|
this.inputs.forEach((i) => {
|
2314
2307
|
let correspondingInput;
|
2315
2308
|
switch (i.type) {
|
2316
|
-
case
|
2317
|
-
correspondingInput = inputs.find((x) => x.type ===
|
2309
|
+
case import_transactions6.InputType.Coin:
|
2310
|
+
correspondingInput = inputs.find((x) => x.type === import_transactions6.InputType.Coin && x.owner === i.owner);
|
2318
2311
|
break;
|
2319
|
-
case
|
2312
|
+
case import_transactions6.InputType.Message:
|
2320
2313
|
correspondingInput = inputs.find(
|
2321
|
-
(x) => x.type ===
|
2314
|
+
(x) => x.type === import_transactions6.InputType.Message && x.sender === i.sender
|
2322
2315
|
);
|
2323
2316
|
break;
|
2324
2317
|
default:
|
@@ -2331,37 +2324,30 @@ var BaseTransactionRequest = class {
|
|
2331
2324
|
}
|
2332
2325
|
});
|
2333
2326
|
}
|
2334
|
-
adjustWitnessIndexes(removedIndex) {
|
2335
|
-
this.inputs.filter(isRequestInputResource).forEach((input) => {
|
2336
|
-
if (input.witnessIndex > removedIndex) {
|
2337
|
-
input.witnessIndex -= 1;
|
2338
|
-
}
|
2339
|
-
});
|
2340
|
-
}
|
2341
2327
|
};
|
2342
2328
|
|
2343
2329
|
// src/providers/transaction-request/create-transaction-request.ts
|
2344
2330
|
var import_configs9 = require("@fuel-ts/address/configs");
|
2345
2331
|
var import_math9 = require("@fuel-ts/math");
|
2346
|
-
var
|
2332
|
+
var import_transactions8 = require("@fuel-ts/transactions");
|
2347
2333
|
var import_utils13 = require("@fuel-ts/utils");
|
2348
2334
|
|
2349
2335
|
// src/providers/transaction-request/hash-transaction.ts
|
2350
2336
|
var import_configs8 = require("@fuel-ts/address/configs");
|
2351
2337
|
var import_hasher = require("@fuel-ts/hasher");
|
2352
2338
|
var import_math8 = require("@fuel-ts/math");
|
2353
|
-
var
|
2339
|
+
var import_transactions7 = require("@fuel-ts/transactions");
|
2354
2340
|
var import_utils11 = require("@fuel-ts/utils");
|
2355
2341
|
var import_ramda2 = require("ramda");
|
2356
2342
|
function hashTransaction(transactionRequest, chainId) {
|
2357
2343
|
const transaction = transactionRequest.toTransaction();
|
2358
|
-
if (transaction.type ===
|
2344
|
+
if (transaction.type === import_transactions7.TransactionType.Script) {
|
2359
2345
|
transaction.receiptsRoot = import_configs8.ZeroBytes32;
|
2360
2346
|
}
|
2361
2347
|
transaction.inputs = transaction.inputs.map((input) => {
|
2362
2348
|
const inputClone = (0, import_ramda2.clone)(input);
|
2363
2349
|
switch (inputClone.type) {
|
2364
|
-
case
|
2350
|
+
case import_transactions7.InputType.Coin: {
|
2365
2351
|
inputClone.txPointer = {
|
2366
2352
|
blockHeight: 0,
|
2367
2353
|
txIndex: 0
|
@@ -2369,11 +2355,11 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2369
2355
|
inputClone.predicateGasUsed = (0, import_math8.bn)(0);
|
2370
2356
|
return inputClone;
|
2371
2357
|
}
|
2372
|
-
case
|
2358
|
+
case import_transactions7.InputType.Message: {
|
2373
2359
|
inputClone.predicateGasUsed = (0, import_math8.bn)(0);
|
2374
2360
|
return inputClone;
|
2375
2361
|
}
|
2376
|
-
case
|
2362
|
+
case import_transactions7.InputType.Contract: {
|
2377
2363
|
inputClone.txPointer = {
|
2378
2364
|
blockHeight: 0,
|
2379
2365
|
txIndex: 0
|
@@ -2391,16 +2377,16 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2391
2377
|
transaction.outputs = transaction.outputs.map((output) => {
|
2392
2378
|
const outputClone = (0, import_ramda2.clone)(output);
|
2393
2379
|
switch (outputClone.type) {
|
2394
|
-
case
|
2380
|
+
case import_transactions7.OutputType.Contract: {
|
2395
2381
|
outputClone.balanceRoot = import_configs8.ZeroBytes32;
|
2396
2382
|
outputClone.stateRoot = import_configs8.ZeroBytes32;
|
2397
2383
|
return outputClone;
|
2398
2384
|
}
|
2399
|
-
case
|
2385
|
+
case import_transactions7.OutputType.Change: {
|
2400
2386
|
outputClone.amount = (0, import_math8.bn)(0);
|
2401
2387
|
return outputClone;
|
2402
2388
|
}
|
2403
|
-
case
|
2389
|
+
case import_transactions7.OutputType.Variable: {
|
2404
2390
|
outputClone.to = import_configs8.ZeroBytes32;
|
2405
2391
|
outputClone.amount = (0, import_math8.bn)(0);
|
2406
2392
|
outputClone.assetId = import_configs8.ZeroBytes32;
|
@@ -2413,7 +2399,7 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2413
2399
|
transaction.witnessesCount = 0;
|
2414
2400
|
transaction.witnesses = [];
|
2415
2401
|
const chainIdBytes = (0, import_hasher.uint64ToBytesBE)(chainId);
|
2416
|
-
const concatenatedData = (0, import_utils11.concat)([chainIdBytes, new
|
2402
|
+
const concatenatedData = (0, import_utils11.concat)([chainIdBytes, new import_transactions7.TransactionCoder().encode(transaction)]);
|
2417
2403
|
return (0, import_hasher.sha256)(concatenatedData);
|
2418
2404
|
}
|
2419
2405
|
|
@@ -2449,7 +2435,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2449
2435
|
return new this(obj);
|
2450
2436
|
}
|
2451
2437
|
/** Type of the transaction */
|
2452
|
-
type =
|
2438
|
+
type = import_transactions8.TransactionType.Create;
|
2453
2439
|
/** Witness index of contract bytecode to create */
|
2454
2440
|
bytecodeWitnessIndex;
|
2455
2441
|
/** Salt */
|
@@ -2482,7 +2468,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2482
2468
|
const bytecodeWitnessIndex = this.bytecodeWitnessIndex;
|
2483
2469
|
const storageSlots = this.storageSlots?.map(storageSlotify) ?? [];
|
2484
2470
|
return {
|
2485
|
-
type:
|
2471
|
+
type: import_transactions8.TransactionType.Create,
|
2486
2472
|
...baseTransaction,
|
2487
2473
|
bytecodeLength: baseTransaction.witnesses[bytecodeWitnessIndex].dataLength / 4,
|
2488
2474
|
bytecodeWitnessIndex,
|
@@ -2498,7 +2484,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2498
2484
|
*/
|
2499
2485
|
getContractCreatedOutputs() {
|
2500
2486
|
return this.outputs.filter(
|
2501
|
-
(output) => output.type ===
|
2487
|
+
(output) => output.type === import_transactions8.OutputType.ContractCreated
|
2502
2488
|
);
|
2503
2489
|
}
|
2504
2490
|
/**
|
@@ -2519,7 +2505,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2519
2505
|
*/
|
2520
2506
|
addContractCreatedOutput(contractId, stateRoot) {
|
2521
2507
|
this.pushOutput({
|
2522
|
-
type:
|
2508
|
+
type: import_transactions8.OutputType.ContractCreated,
|
2523
2509
|
contractId,
|
2524
2510
|
stateRoot
|
2525
2511
|
});
|
@@ -2539,7 +2525,7 @@ var import_abi_coder3 = require("@fuel-ts/abi-coder");
|
|
2539
2525
|
var import_address2 = require("@fuel-ts/address");
|
2540
2526
|
var import_configs10 = require("@fuel-ts/address/configs");
|
2541
2527
|
var import_math10 = require("@fuel-ts/math");
|
2542
|
-
var
|
2528
|
+
var import_transactions9 = require("@fuel-ts/transactions");
|
2543
2529
|
var import_utils15 = require("@fuel-ts/utils");
|
2544
2530
|
|
2545
2531
|
// src/providers/transaction-request/scripts.ts
|
@@ -2577,7 +2563,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2577
2563
|
return new this(obj);
|
2578
2564
|
}
|
2579
2565
|
/** Type of the transaction */
|
2580
|
-
type =
|
2566
|
+
type = import_transactions9.TransactionType.Script;
|
2581
2567
|
/** Gas limit for transaction */
|
2582
2568
|
gasLimit;
|
2583
2569
|
/** Script to execute */
|
@@ -2606,7 +2592,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2606
2592
|
const script = (0, import_utils15.arrayify)(this.script ?? "0x");
|
2607
2593
|
const scriptData = (0, import_utils15.arrayify)(this.scriptData ?? "0x");
|
2608
2594
|
return {
|
2609
|
-
type:
|
2595
|
+
type: import_transactions9.TransactionType.Script,
|
2610
2596
|
scriptGasLimit: this.gasLimit,
|
2611
2597
|
...super.getBaseTransaction(),
|
2612
2598
|
scriptLength: script.length,
|
@@ -2623,7 +2609,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2623
2609
|
*/
|
2624
2610
|
getContractInputs() {
|
2625
2611
|
return this.inputs.filter(
|
2626
|
-
(input) => input.type ===
|
2612
|
+
(input) => input.type === import_transactions9.InputType.Contract
|
2627
2613
|
);
|
2628
2614
|
}
|
2629
2615
|
/**
|
@@ -2633,7 +2619,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2633
2619
|
*/
|
2634
2620
|
getContractOutputs() {
|
2635
2621
|
return this.outputs.filter(
|
2636
|
-
(output) => output.type ===
|
2622
|
+
(output) => output.type === import_transactions9.OutputType.Contract
|
2637
2623
|
);
|
2638
2624
|
}
|
2639
2625
|
/**
|
@@ -2643,7 +2629,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2643
2629
|
*/
|
2644
2630
|
getVariableOutputs() {
|
2645
2631
|
return this.outputs.filter(
|
2646
|
-
(output) => output.type ===
|
2632
|
+
(output) => output.type === import_transactions9.OutputType.Variable
|
2647
2633
|
);
|
2648
2634
|
}
|
2649
2635
|
/**
|
@@ -2666,7 +2652,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2666
2652
|
let outputsNumber = numberOfVariables;
|
2667
2653
|
while (outputsNumber) {
|
2668
2654
|
this.pushOutput({
|
2669
|
-
type:
|
2655
|
+
type: import_transactions9.OutputType.Variable
|
2670
2656
|
});
|
2671
2657
|
outputsNumber -= 1;
|
2672
2658
|
}
|
@@ -2699,12 +2685,12 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2699
2685
|
return this;
|
2700
2686
|
}
|
2701
2687
|
const inputIndex = super.pushInput({
|
2702
|
-
type:
|
2688
|
+
type: import_transactions9.InputType.Contract,
|
2703
2689
|
contractId: contractAddress.toB256(),
|
2704
2690
|
txPointer: "0x00000000000000000000000000000000"
|
2705
2691
|
});
|
2706
2692
|
this.pushOutput({
|
2707
|
-
type:
|
2693
|
+
type: import_transactions9.OutputType.Contract,
|
2708
2694
|
inputIndex
|
2709
2695
|
});
|
2710
2696
|
return this;
|
@@ -2741,17 +2727,17 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2741
2727
|
|
2742
2728
|
// src/providers/transaction-request/utils.ts
|
2743
2729
|
var import_errors9 = require("@fuel-ts/errors");
|
2744
|
-
var
|
2730
|
+
var import_transactions10 = require("@fuel-ts/transactions");
|
2745
2731
|
var transactionRequestify = (obj) => {
|
2746
2732
|
if (obj instanceof ScriptTransactionRequest || obj instanceof CreateTransactionRequest) {
|
2747
2733
|
return obj;
|
2748
2734
|
}
|
2749
2735
|
const { type } = obj;
|
2750
2736
|
switch (obj.type) {
|
2751
|
-
case
|
2737
|
+
case import_transactions10.TransactionType.Script: {
|
2752
2738
|
return ScriptTransactionRequest.from(obj);
|
2753
2739
|
}
|
2754
|
-
case
|
2740
|
+
case import_transactions10.TransactionType.Create: {
|
2755
2741
|
return CreateTransactionRequest.from(obj);
|
2756
2742
|
}
|
2757
2743
|
default: {
|
@@ -2763,7 +2749,7 @@ var transactionRequestify = (obj) => {
|
|
2763
2749
|
// src/providers/transaction-response/transaction-response.ts
|
2764
2750
|
var import_errors13 = require("@fuel-ts/errors");
|
2765
2751
|
var import_math14 = require("@fuel-ts/math");
|
2766
|
-
var
|
2752
|
+
var import_transactions17 = require("@fuel-ts/transactions");
|
2767
2753
|
var import_utils21 = require("@fuel-ts/utils");
|
2768
2754
|
|
2769
2755
|
// src/providers/transaction-summary/assemble-transaction-summary.ts
|
@@ -2771,7 +2757,7 @@ var import_utils19 = require("@fuel-ts/utils");
|
|
2771
2757
|
|
2772
2758
|
// src/providers/transaction-summary/calculate-transaction-fee.ts
|
2773
2759
|
var import_math11 = require("@fuel-ts/math");
|
2774
|
-
var
|
2760
|
+
var import_transactions11 = require("@fuel-ts/transactions");
|
2775
2761
|
var import_utils16 = require("@fuel-ts/utils");
|
2776
2762
|
var calculateTransactionFee = (params) => {
|
2777
2763
|
const {
|
@@ -2782,8 +2768,8 @@ var calculateTransactionFee = (params) => {
|
|
2782
2768
|
const gasPerByte = (0, import_math11.bn)(feeParams.gasPerByte);
|
2783
2769
|
const gasPriceFactor = (0, import_math11.bn)(feeParams.gasPriceFactor);
|
2784
2770
|
const transactionBytes = (0, import_utils16.arrayify)(rawPayload);
|
2785
|
-
const [transaction] = new
|
2786
|
-
if (transaction.type ===
|
2771
|
+
const [transaction] = new import_transactions11.TransactionCoder().decode(transactionBytes, 0);
|
2772
|
+
if (transaction.type === import_transactions11.TransactionType.Mint) {
|
2787
2773
|
return {
|
2788
2774
|
fee: (0, import_math11.bn)(0),
|
2789
2775
|
minFee: (0, import_math11.bn)(0),
|
@@ -2794,7 +2780,7 @@ var calculateTransactionFee = (params) => {
|
|
2794
2780
|
const { type, witnesses, inputs, policies } = transaction;
|
2795
2781
|
let metadataGas = (0, import_math11.bn)(0);
|
2796
2782
|
let gasLimit = (0, import_math11.bn)(0);
|
2797
|
-
if (type ===
|
2783
|
+
if (type === import_transactions11.TransactionType.Create) {
|
2798
2784
|
const { bytecodeWitnessIndex, storageSlots } = transaction;
|
2799
2785
|
const contractBytesSize = (0, import_math11.bn)((0, import_utils16.arrayify)(witnesses[bytecodeWitnessIndex].data).length);
|
2800
2786
|
metadataGas = calculateMetadataGasForTxCreate({
|
@@ -2820,8 +2806,8 @@ var calculateTransactionFee = (params) => {
|
|
2820
2806
|
metadataGas,
|
2821
2807
|
txBytesSize: transactionBytes.length
|
2822
2808
|
});
|
2823
|
-
const gasPrice = (0, import_math11.bn)(policies.find((policy) => policy.type ===
|
2824
|
-
const witnessLimit = policies.find((policy) => policy.type ===
|
2809
|
+
const gasPrice = (0, import_math11.bn)(policies.find((policy) => policy.type === import_transactions11.PolicyType.GasPrice)?.data);
|
2810
|
+
const witnessLimit = policies.find((policy) => policy.type === import_transactions11.PolicyType.WitnessLimit)?.data;
|
2825
2811
|
const witnessesLength = witnesses.reduce((acc, wit) => acc + wit.dataLength, 0);
|
2826
2812
|
const maxGas = getMaxGas({
|
2827
2813
|
gasPerByte,
|
@@ -2846,7 +2832,7 @@ var calculateTransactionFee = (params) => {
|
|
2846
2832
|
var import_configs11 = require("@fuel-ts/address/configs");
|
2847
2833
|
var import_errors11 = require("@fuel-ts/errors");
|
2848
2834
|
var import_math13 = require("@fuel-ts/math");
|
2849
|
-
var
|
2835
|
+
var import_transactions14 = require("@fuel-ts/transactions");
|
2850
2836
|
|
2851
2837
|
// src/providers/transaction-summary/call.ts
|
2852
2838
|
var import_abi_coder4 = require("@fuel-ts/abi-coder");
|
@@ -2894,7 +2880,7 @@ var getFunctionCall = ({ abi, receipt, rawPayload, maxInputs }) => {
|
|
2894
2880
|
|
2895
2881
|
// src/providers/transaction-summary/input.ts
|
2896
2882
|
var import_errors10 = require("@fuel-ts/errors");
|
2897
|
-
var
|
2883
|
+
var import_transactions12 = require("@fuel-ts/transactions");
|
2898
2884
|
function getInputsByTypes(inputs, types) {
|
2899
2885
|
return inputs.filter((i) => types.includes(i.type));
|
2900
2886
|
}
|
@@ -2902,16 +2888,16 @@ function getInputsByType(inputs, type) {
|
|
2902
2888
|
return inputs.filter((i) => i.type === type);
|
2903
2889
|
}
|
2904
2890
|
function getInputsCoin(inputs) {
|
2905
|
-
return getInputsByType(inputs,
|
2891
|
+
return getInputsByType(inputs, import_transactions12.InputType.Coin);
|
2906
2892
|
}
|
2907
2893
|
function getInputsMessage(inputs) {
|
2908
|
-
return getInputsByType(inputs,
|
2894
|
+
return getInputsByType(inputs, import_transactions12.InputType.Message);
|
2909
2895
|
}
|
2910
2896
|
function getInputsCoinAndMessage(inputs) {
|
2911
|
-
return getInputsByTypes(inputs, [
|
2897
|
+
return getInputsByTypes(inputs, [import_transactions12.InputType.Coin, import_transactions12.InputType.Message]);
|
2912
2898
|
}
|
2913
2899
|
function getInputsContract(inputs) {
|
2914
|
-
return getInputsByType(inputs,
|
2900
|
+
return getInputsByType(inputs, import_transactions12.InputType.Contract);
|
2915
2901
|
}
|
2916
2902
|
function getInputFromAssetId(inputs, assetId) {
|
2917
2903
|
const coinInputs = getInputsCoin(inputs);
|
@@ -2930,7 +2916,7 @@ function getInputContractFromIndex(inputs, inputIndex) {
|
|
2930
2916
|
if (!contractInput) {
|
2931
2917
|
return void 0;
|
2932
2918
|
}
|
2933
|
-
if (contractInput.type !==
|
2919
|
+
if (contractInput.type !== import_transactions12.InputType.Contract) {
|
2934
2920
|
throw new import_errors10.FuelError(
|
2935
2921
|
import_errors10.ErrorCode.INVALID_TRANSACTION_INPUT,
|
2936
2922
|
`Contract input should be of type 'contract'.`
|
@@ -2939,34 +2925,34 @@ function getInputContractFromIndex(inputs, inputIndex) {
|
|
2939
2925
|
return contractInput;
|
2940
2926
|
}
|
2941
2927
|
function getInputAccountAddress(input) {
|
2942
|
-
if (input.type ===
|
2928
|
+
if (input.type === import_transactions12.InputType.Coin) {
|
2943
2929
|
return input.owner.toString();
|
2944
2930
|
}
|
2945
|
-
if (input.type ===
|
2931
|
+
if (input.type === import_transactions12.InputType.Message) {
|
2946
2932
|
return input.recipient.toString();
|
2947
2933
|
}
|
2948
2934
|
return "";
|
2949
2935
|
}
|
2950
2936
|
|
2951
2937
|
// src/providers/transaction-summary/output.ts
|
2952
|
-
var
|
2938
|
+
var import_transactions13 = require("@fuel-ts/transactions");
|
2953
2939
|
function getOutputsByType(outputs, type) {
|
2954
2940
|
return outputs.filter((o) => o.type === type);
|
2955
2941
|
}
|
2956
2942
|
function getOutputsContractCreated(outputs) {
|
2957
|
-
return getOutputsByType(outputs,
|
2943
|
+
return getOutputsByType(outputs, import_transactions13.OutputType.ContractCreated);
|
2958
2944
|
}
|
2959
2945
|
function getOutputsCoin(outputs) {
|
2960
|
-
return getOutputsByType(outputs,
|
2946
|
+
return getOutputsByType(outputs, import_transactions13.OutputType.Coin);
|
2961
2947
|
}
|
2962
2948
|
function getOutputsChange(outputs) {
|
2963
|
-
return getOutputsByType(outputs,
|
2949
|
+
return getOutputsByType(outputs, import_transactions13.OutputType.Change);
|
2964
2950
|
}
|
2965
2951
|
function getOutputsContract(outputs) {
|
2966
|
-
return getOutputsByType(outputs,
|
2952
|
+
return getOutputsByType(outputs, import_transactions13.OutputType.Contract);
|
2967
2953
|
}
|
2968
2954
|
function getOutputsVariable(outputs) {
|
2969
|
-
return getOutputsByType(outputs,
|
2955
|
+
return getOutputsByType(outputs, import_transactions13.OutputType.Variable);
|
2970
2956
|
}
|
2971
2957
|
|
2972
2958
|
// src/providers/transaction-summary/types.ts
|
@@ -3013,11 +2999,11 @@ function getReceiptsByType(receipts, type) {
|
|
3013
2999
|
}
|
3014
3000
|
function getTransactionTypeName(transactionType) {
|
3015
3001
|
switch (transactionType) {
|
3016
|
-
case
|
3002
|
+
case import_transactions14.TransactionType.Mint:
|
3017
3003
|
return "Mint" /* Mint */;
|
3018
|
-
case
|
3004
|
+
case import_transactions14.TransactionType.Create:
|
3019
3005
|
return "Create" /* Create */;
|
3020
|
-
case
|
3006
|
+
case import_transactions14.TransactionType.Script:
|
3021
3007
|
return "Script" /* Script */;
|
3022
3008
|
default:
|
3023
3009
|
throw new import_errors11.FuelError(
|
@@ -3043,10 +3029,10 @@ function hasSameAssetId(a) {
|
|
3043
3029
|
return (b) => a.assetId === b.assetId;
|
3044
3030
|
}
|
3045
3031
|
function getReceiptsCall(receipts) {
|
3046
|
-
return getReceiptsByType(receipts,
|
3032
|
+
return getReceiptsByType(receipts, import_transactions14.ReceiptType.Call);
|
3047
3033
|
}
|
3048
3034
|
function getReceiptsMessageOut(receipts) {
|
3049
|
-
return getReceiptsByType(receipts,
|
3035
|
+
return getReceiptsByType(receipts, import_transactions14.ReceiptType.MessageOut);
|
3050
3036
|
}
|
3051
3037
|
var mergeAssets = (op1, op2) => {
|
3052
3038
|
const assets1 = op1.assetsSent || [];
|
@@ -3085,7 +3071,7 @@ function addOperation(operations, toAdd) {
|
|
3085
3071
|
return allOperations;
|
3086
3072
|
}
|
3087
3073
|
function getReceiptsTransferOut(receipts) {
|
3088
|
-
return getReceiptsByType(receipts,
|
3074
|
+
return getReceiptsByType(receipts, import_transactions14.ReceiptType.TransferOut);
|
3089
3075
|
}
|
3090
3076
|
function getWithdrawFromFuelOperations({
|
3091
3077
|
inputs,
|
@@ -3245,11 +3231,11 @@ function getTransferOperations({
|
|
3245
3231
|
});
|
3246
3232
|
const transferReceipts = getReceiptsByType(
|
3247
3233
|
receipts,
|
3248
|
-
|
3234
|
+
import_transactions14.ReceiptType.Transfer
|
3249
3235
|
);
|
3250
3236
|
const transferOutReceipts = getReceiptsByType(
|
3251
3237
|
receipts,
|
3252
|
-
|
3238
|
+
import_transactions14.ReceiptType.TransferOut
|
3253
3239
|
);
|
3254
3240
|
[...transferReceipts, ...transferOutReceipts].forEach((receipt) => {
|
3255
3241
|
const operation = extractTransferOperationFromReceipt(receipt, contractInputs, changeOutputs);
|
@@ -3334,17 +3320,17 @@ function getOperations({
|
|
3334
3320
|
}
|
3335
3321
|
|
3336
3322
|
// src/providers/transaction-summary/receipt.ts
|
3337
|
-
var
|
3323
|
+
var import_transactions15 = require("@fuel-ts/transactions");
|
3338
3324
|
var processGqlReceipt = (gqlReceipt) => {
|
3339
3325
|
const receipt = assembleReceiptByType(gqlReceipt);
|
3340
3326
|
switch (receipt.type) {
|
3341
|
-
case
|
3327
|
+
case import_transactions15.ReceiptType.ReturnData: {
|
3342
3328
|
return {
|
3343
3329
|
...receipt,
|
3344
3330
|
data: gqlReceipt.data || "0x"
|
3345
3331
|
};
|
3346
3332
|
}
|
3347
|
-
case
|
3333
|
+
case import_transactions15.ReceiptType.LogData: {
|
3348
3334
|
return {
|
3349
3335
|
...receipt,
|
3350
3336
|
data: gqlReceipt.data || "0x"
|
@@ -3357,7 +3343,7 @@ var processGqlReceipt = (gqlReceipt) => {
|
|
3357
3343
|
var extractMintedAssetsFromReceipts = (receipts) => {
|
3358
3344
|
const mintedAssets = [];
|
3359
3345
|
receipts.forEach((receipt) => {
|
3360
|
-
if (receipt.type ===
|
3346
|
+
if (receipt.type === import_transactions15.ReceiptType.Mint) {
|
3361
3347
|
mintedAssets.push({
|
3362
3348
|
subId: receipt.subId,
|
3363
3349
|
contractId: receipt.contractId,
|
@@ -3371,7 +3357,7 @@ var extractMintedAssetsFromReceipts = (receipts) => {
|
|
3371
3357
|
var extractBurnedAssetsFromReceipts = (receipts) => {
|
3372
3358
|
const burnedAssets = [];
|
3373
3359
|
receipts.forEach((receipt) => {
|
3374
|
-
if (receipt.type ===
|
3360
|
+
if (receipt.type === import_transactions15.ReceiptType.Burn) {
|
3375
3361
|
burnedAssets.push({
|
3376
3362
|
subId: receipt.subId,
|
3377
3363
|
contractId: receipt.contractId,
|
@@ -3510,12 +3496,12 @@ function assembleTransactionSummary(params) {
|
|
3510
3496
|
|
3511
3497
|
// src/providers/transaction-response/getDecodedLogs.ts
|
3512
3498
|
var import_abi_coder5 = require("@fuel-ts/abi-coder");
|
3513
|
-
var
|
3499
|
+
var import_transactions16 = require("@fuel-ts/transactions");
|
3514
3500
|
function getDecodedLogs(receipts, mainAbi, externalAbis = {}) {
|
3515
3501
|
return receipts.reduce((logs, receipt) => {
|
3516
|
-
if (receipt.type ===
|
3502
|
+
if (receipt.type === import_transactions16.ReceiptType.LogData || receipt.type === import_transactions16.ReceiptType.Log) {
|
3517
3503
|
const interfaceToUse = new import_abi_coder5.Interface(externalAbis[receipt.id] || mainAbi);
|
3518
|
-
const data = receipt.type ===
|
3504
|
+
const data = receipt.type === import_transactions16.ReceiptType.Log ? new import_abi_coder5.BigNumberCoder("u64").encode(receipt.val0) : receipt.data;
|
3519
3505
|
const [decodedLog] = interfaceToUse.decodeLog(data, receipt.val1.toNumber());
|
3520
3506
|
logs.push(decodedLog);
|
3521
3507
|
}
|
@@ -3588,7 +3574,7 @@ var TransactionResponse = class {
|
|
3588
3574
|
* @returns The decoded transaction.
|
3589
3575
|
*/
|
3590
3576
|
decodeTransaction(transactionWithReceipts) {
|
3591
|
-
return new
|
3577
|
+
return new import_transactions17.TransactionCoder().decode(
|
3592
3578
|
(0, import_utils21.arrayify)(transactionWithReceipts.rawPayload),
|
3593
3579
|
0
|
3594
3580
|
)?.[0];
|
@@ -3943,21 +3929,6 @@ var _Provider = class {
|
|
3943
3929
|
} = await this.operations.getVersion();
|
3944
3930
|
return nodeVersion;
|
3945
3931
|
}
|
3946
|
-
/**
|
3947
|
-
* @hidden
|
3948
|
-
*
|
3949
|
-
* Returns the network configuration of the connected Fuel node.
|
3950
|
-
*
|
3951
|
-
* @returns A promise that resolves to the network configuration object
|
3952
|
-
*/
|
3953
|
-
async getNetwork() {
|
3954
|
-
const {
|
3955
|
-
name,
|
3956
|
-
consensusParameters: { chainId }
|
3957
|
-
} = await this.getChain();
|
3958
|
-
const network = new import_ethers.Network(name, chainId.toNumber());
|
3959
|
-
return Promise.resolve(network);
|
3960
|
-
}
|
3961
3932
|
/**
|
3962
3933
|
* Returns the block number.
|
3963
3934
|
*
|
@@ -4025,7 +3996,7 @@ var _Provider = class {
|
|
4025
3996
|
}
|
4026
3997
|
const encodedTransaction = (0, import_utils23.hexlify)(transactionRequest.toTransactionBytes());
|
4027
3998
|
let abis;
|
4028
|
-
if (transactionRequest.type ===
|
3999
|
+
if (transactionRequest.type === import_transactions18.TransactionType.Script) {
|
4029
4000
|
abis = transactionRequest.abis;
|
4030
4001
|
}
|
4031
4002
|
if (awaitExecution) {
|
@@ -4121,7 +4092,7 @@ var _Provider = class {
|
|
4121
4092
|
* @returns A promise.
|
4122
4093
|
*/
|
4123
4094
|
async estimateTxDependencies(transactionRequest) {
|
4124
|
-
if (transactionRequest.type ===
|
4095
|
+
if (transactionRequest.type === import_transactions18.TransactionType.Create) {
|
4125
4096
|
return {
|
4126
4097
|
receipts: [],
|
4127
4098
|
outputVariables: 0,
|
@@ -4170,7 +4141,7 @@ var _Provider = class {
|
|
4170
4141
|
transactionRequest.gasPrice = gasPrice;
|
4171
4142
|
const minGas = transactionRequest.calculateMinGas(chainInfo);
|
4172
4143
|
const minFee = calculatePriceWithFactor(minGas, gasPrice, gasPriceFactor).normalizeZeroToOne();
|
4173
|
-
if (transactionRequest.type ===
|
4144
|
+
if (transactionRequest.type === import_transactions18.TransactionType.Script) {
|
4174
4145
|
if (transactionRequest.gasLimit.eq(0)) {
|
4175
4146
|
transactionRequest.gasLimit = minGas;
|
4176
4147
|
transactionRequest.gasLimit = maxGasPerTx.sub(
|
@@ -4236,7 +4207,7 @@ var _Provider = class {
|
|
4236
4207
|
const txRequestClone = (0, import_ramda3.clone)(transactionRequestify(transactionRequestLike));
|
4237
4208
|
const { minGasPrice } = this.getGasConfig();
|
4238
4209
|
const setGasPrice = (0, import_math15.max)(txRequestClone.gasPrice, minGasPrice);
|
4239
|
-
const isScriptTransaction = txRequestClone.type ===
|
4210
|
+
const isScriptTransaction = txRequestClone.type === import_transactions18.TransactionType.Script;
|
4240
4211
|
const coinOutputsQuantities = txRequestClone.getCoinOutputsQuantities();
|
4241
4212
|
const allQuantities = mergeQuantities(coinOutputsQuantities, forwardingQuantities);
|
4242
4213
|
txRequestClone.fundWithFakeUtxos(allQuantities, resourcesOwner?.address);
|
@@ -4452,7 +4423,7 @@ var _Provider = class {
|
|
4452
4423
|
time: block.header.time,
|
4453
4424
|
transactionIds: block.transactions.map((tx) => tx.id),
|
4454
4425
|
transactions: block.transactions.map(
|
4455
|
-
(tx) => new
|
4426
|
+
(tx) => new import_transactions18.TransactionCoder().decode((0, import_utils23.arrayify)(tx.rawPayload), 0)?.[0]
|
4456
4427
|
)
|
4457
4428
|
};
|
4458
4429
|
}
|
@@ -4467,7 +4438,7 @@ var _Provider = class {
|
|
4467
4438
|
if (!transaction) {
|
4468
4439
|
return null;
|
4469
4440
|
}
|
4470
|
-
return new
|
4441
|
+
return new import_transactions18.TransactionCoder().decode(
|
4471
4442
|
(0, import_utils23.arrayify)(transaction.rawPayload),
|
4472
4443
|
0
|
4473
4444
|
)?.[0];
|
@@ -4547,7 +4518,7 @@ var _Provider = class {
|
|
4547
4518
|
});
|
4548
4519
|
const messages = result.messages.edges.map((edge) => edge.node);
|
4549
4520
|
return messages.map((message) => ({
|
4550
|
-
messageId:
|
4521
|
+
messageId: import_transactions18.InputMessageCoder.getMessageId({
|
4551
4522
|
sender: message.sender,
|
4552
4523
|
recipient: message.recipient,
|
4553
4524
|
nonce: message.nonce,
|
@@ -4558,7 +4529,7 @@ var _Provider = class {
|
|
4558
4529
|
recipient: import_address3.Address.fromAddressOrString(message.recipient),
|
4559
4530
|
nonce: message.nonce,
|
4560
4531
|
amount: (0, import_math15.bn)(message.amount),
|
4561
|
-
data:
|
4532
|
+
data: import_transactions18.InputMessageCoder.decodeData(message.data),
|
4562
4533
|
daHeight: (0, import_math15.bn)(message.daHeight)
|
4563
4534
|
}));
|
4564
4535
|
}
|
@@ -4686,7 +4657,7 @@ cacheInputs_fn = function(inputs) {
|
|
4686
4657
|
return;
|
4687
4658
|
}
|
4688
4659
|
inputs.forEach((input) => {
|
4689
|
-
if (input.type ===
|
4660
|
+
if (input.type === import_transactions18.InputType.Coin) {
|
4690
4661
|
this.cache?.set(input.id);
|
4691
4662
|
}
|
4692
4663
|
});
|
@@ -4697,7 +4668,7 @@ __publicField(Provider, "nodeInfoCache", {});
|
|
4697
4668
|
// src/providers/transaction-summary/get-transaction-summary.ts
|
4698
4669
|
var import_errors15 = require("@fuel-ts/errors");
|
4699
4670
|
var import_math16 = require("@fuel-ts/math");
|
4700
|
-
var
|
4671
|
+
var import_transactions19 = require("@fuel-ts/transactions");
|
4701
4672
|
var import_utils26 = require("@fuel-ts/utils");
|
4702
4673
|
async function getTransactionSummary(params) {
|
4703
4674
|
const { id, provider, abiMap } = params;
|
@@ -4710,7 +4681,7 @@ async function getTransactionSummary(params) {
|
|
4710
4681
|
`Transaction not found for given id: ${id}.`
|
4711
4682
|
);
|
4712
4683
|
}
|
4713
|
-
const [decodedTransaction] = new
|
4684
|
+
const [decodedTransaction] = new import_transactions19.TransactionCoder().decode(
|
4714
4685
|
(0, import_utils26.arrayify)(gqlTransaction.rawPayload),
|
4715
4686
|
0
|
4716
4687
|
);
|
@@ -4764,7 +4735,7 @@ async function getTransactionsSummaries(params) {
|
|
4764
4735
|
const transactions = edges.map((edge) => {
|
4765
4736
|
const { node: gqlTransaction } = edge;
|
4766
4737
|
const { id, rawPayload, receipts: gqlReceipts, status } = gqlTransaction;
|
4767
|
-
const [decodedTransaction] = new
|
4738
|
+
const [decodedTransaction] = new import_transactions19.TransactionCoder().decode((0, import_utils26.arrayify)(rawPayload), 0);
|
4768
4739
|
const receipts = gqlReceipts?.map(processGqlReceipt) || [];
|
4769
4740
|
const transactionSummary = assembleTransactionSummary({
|
4770
4741
|
id,
|
@@ -5684,18 +5655,17 @@ var BaseWalletUnlocked = class extends Account {
|
|
5684
5655
|
__publicField(BaseWalletUnlocked, "defaultPath", "m/44'/1179993420'/0'/0/0");
|
5685
5656
|
|
5686
5657
|
// src/hdwallet/hdwallet.ts
|
5658
|
+
var import_crypto5 = require("@fuel-ts/crypto");
|
5687
5659
|
var import_errors20 = require("@fuel-ts/errors");
|
5688
5660
|
var import_hasher6 = require("@fuel-ts/hasher");
|
5689
5661
|
var import_math20 = require("@fuel-ts/math");
|
5690
5662
|
var import_utils35 = require("@fuel-ts/utils");
|
5691
|
-
var import_ethers3 = require("ethers");
|
5692
5663
|
|
5693
5664
|
// src/mnemonic/mnemonic.ts
|
5694
5665
|
var import_crypto4 = require("@fuel-ts/crypto");
|
5695
5666
|
var import_errors19 = require("@fuel-ts/errors");
|
5696
5667
|
var import_hasher5 = require("@fuel-ts/hasher");
|
5697
5668
|
var import_utils33 = require("@fuel-ts/utils");
|
5698
|
-
var import_ethers2 = require("ethers");
|
5699
5669
|
|
5700
5670
|
// src/wordlists/words/english.ts
|
5701
5671
|
var english = [
|
@@ -7949,7 +7919,7 @@ var Mnemonic = class {
|
|
7949
7919
|
assertMnemonic(getWords(phrase));
|
7950
7920
|
const phraseBytes = toUtf8Bytes(getPhrase(phrase));
|
7951
7921
|
const salt = toUtf8Bytes(`mnemonic${passphrase}`);
|
7952
|
-
return (0,
|
7922
|
+
return (0, import_crypto4.pbkdf2)(phraseBytes, salt, 2048, 64, "sha512");
|
7953
7923
|
}
|
7954
7924
|
/**
|
7955
7925
|
* @param phrase - Mnemonic phrase composed by words from the provided wordlist
|
@@ -8011,7 +7981,7 @@ var Mnemonic = class {
|
|
8011
7981
|
`Seed length should be between 16 and 64 bytes, but received ${seedArray.length} bytes.`
|
8012
7982
|
);
|
8013
7983
|
}
|
8014
|
-
return (0, import_utils33.arrayify)((0,
|
7984
|
+
return (0, import_utils33.arrayify)((0, import_crypto4.computeHmac)("sha512", MasterSecret, seedArray));
|
8015
7985
|
}
|
8016
7986
|
/**
|
8017
7987
|
* Get the extendKey as defined on BIP-32 from the provided seed
|
@@ -8036,8 +8006,8 @@ var Mnemonic = class {
|
|
8036
8006
|
chainCode,
|
8037
8007
|
(0, import_utils33.concat)(["0x00", privateKey])
|
8038
8008
|
]);
|
8039
|
-
const checksum = (0,
|
8040
|
-
return (0,
|
8009
|
+
const checksum = (0, import_utils33.dataSlice)((0, import_hasher5.sha256)((0, import_hasher5.sha256)(extendedKey)), 0, 4);
|
8010
|
+
return (0, import_utils33.encodeBase58)((0, import_utils33.concat)([extendedKey, checksum]));
|
8041
8011
|
}
|
8042
8012
|
/**
|
8043
8013
|
* Create a new mnemonic using a randomly generated number as entropy.
|
@@ -8065,7 +8035,7 @@ var MainnetPUB = (0, import_utils35.hexlify)("0x0488b21e");
|
|
8065
8035
|
var TestnetPRV2 = (0, import_utils35.hexlify)("0x04358394");
|
8066
8036
|
var TestnetPUB = (0, import_utils35.hexlify)("0x043587cf");
|
8067
8037
|
function base58check(data) {
|
8068
|
-
return (0,
|
8038
|
+
return (0, import_utils35.encodeBase58)((0, import_utils35.concat)([data, (0, import_utils35.dataSlice)((0, import_hasher6.sha256)((0, import_hasher6.sha256)(data)), 0, 4)]));
|
8069
8039
|
}
|
8070
8040
|
function getExtendedKeyPrefix(isPublic = false, testnet = false) {
|
8071
8041
|
if (isPublic) {
|
@@ -8121,7 +8091,7 @@ var HDWallet = class {
|
|
8121
8091
|
this.publicKey = (0, import_utils35.hexlify)(config.publicKey);
|
8122
8092
|
}
|
8123
8093
|
this.parentFingerprint = config.parentFingerprint || this.parentFingerprint;
|
8124
|
-
this.fingerprint = (0,
|
8094
|
+
this.fingerprint = (0, import_utils35.dataSlice)((0, import_crypto5.ripemd160)((0, import_hasher6.sha256)(this.publicKey)), 0, 4);
|
8125
8095
|
this.depth = config.depth || this.depth;
|
8126
8096
|
this.index = config.index || this.index;
|
8127
8097
|
this.chainCode = config.chainCode;
|
@@ -8153,7 +8123,7 @@ var HDWallet = class {
|
|
8153
8123
|
data.set((0, import_utils35.arrayify)(this.publicKey));
|
8154
8124
|
}
|
8155
8125
|
data.set((0, import_math20.toBytes)(index, 4), 33);
|
8156
|
-
const bytes = (0, import_utils35.arrayify)((0,
|
8126
|
+
const bytes = (0, import_utils35.arrayify)((0, import_crypto5.computeHmac)("sha512", chainCode, data));
|
8157
8127
|
const IL = bytes.slice(0, 32);
|
8158
8128
|
const IR = bytes.slice(32);
|
8159
8129
|
if (privateKey) {
|
@@ -8224,7 +8194,8 @@ var HDWallet = class {
|
|
8224
8194
|
});
|
8225
8195
|
}
|
8226
8196
|
static fromExtendedKey(extendedKey) {
|
8227
|
-
|
8197
|
+
let decoded = (0, import_math20.toHex)((0, import_utils35.decodeBase58)(extendedKey));
|
8198
|
+
decoded = `${decoded.substring(0, 2)}0${decoded.substring(2)}`;
|
8228
8199
|
const bytes = (0, import_utils35.arrayify)(decoded);
|
8229
8200
|
const validChecksum = base58check(bytes.slice(0, 78)) === extendedKey;
|
8230
8201
|
if (bytes.length !== 82 || !isValidExtendedKey(bytes)) {
|
@@ -8424,7 +8395,7 @@ __publicField(Wallet, "fromEncryptedJson", WalletUnlocked.fromEncryptedJson);
|
|
8424
8395
|
|
8425
8396
|
// src/wallet-manager/wallet-manager.ts
|
8426
8397
|
var import_address9 = require("@fuel-ts/address");
|
8427
|
-
var
|
8398
|
+
var import_crypto6 = require("@fuel-ts/crypto");
|
8428
8399
|
var import_errors23 = require("@fuel-ts/errors");
|
8429
8400
|
var import_events = require("events");
|
8430
8401
|
|
@@ -8752,7 +8723,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8752
8723
|
await assert(!__privateGet(this, _isLocked), ERROR_MESSAGES.wallet_not_unlocked);
|
8753
8724
|
const data = await this.storage.getItem(this.STORAGE_KEY);
|
8754
8725
|
if (data) {
|
8755
|
-
const state = await (0,
|
8726
|
+
const state = await (0, import_crypto6.decrypt)(__privateGet(this, _passphrase), JSON.parse(data));
|
8756
8727
|
__privateSet(this, _vaults, __privateMethod(this, _deserializeVaults, deserializeVaults_fn).call(this, state.vaults));
|
8757
8728
|
}
|
8758
8729
|
}
|
@@ -8761,7 +8732,7 @@ var _WalletManager = class extends import_events.EventEmitter {
|
|
8761
8732
|
*/
|
8762
8733
|
async saveState() {
|
8763
8734
|
await assert(!__privateGet(this, _isLocked), ERROR_MESSAGES.wallet_not_unlocked);
|
8764
|
-
const encryptedData = await (0,
|
8735
|
+
const encryptedData = await (0, import_crypto6.encrypt)(__privateGet(this, _passphrase), {
|
8765
8736
|
vaults: __privateMethod(this, _serializeVaults, serializeVaults_fn).call(this, __privateGet(this, _vaults))
|
8766
8737
|
});
|
8767
8738
|
await this.storage.setItem(this.STORAGE_KEY, JSON.stringify(encryptedData));
|
@@ -8841,7 +8812,7 @@ var import_abi_coder7 = require("@fuel-ts/abi-coder");
|
|
8841
8812
|
var import_address10 = require("@fuel-ts/address");
|
8842
8813
|
var import_configs13 = require("@fuel-ts/address/configs");
|
8843
8814
|
var import_errors25 = require("@fuel-ts/errors");
|
8844
|
-
var
|
8815
|
+
var import_transactions20 = require("@fuel-ts/transactions");
|
8845
8816
|
var import_utils37 = require("@fuel-ts/utils");
|
8846
8817
|
|
8847
8818
|
// src/predicate/utils/getPredicateRoot.ts
|
@@ -8900,15 +8871,10 @@ var Predicate = class extends Account {
|
|
8900
8871
|
populateTransactionPredicateData(transactionRequestLike) {
|
8901
8872
|
const request = transactionRequestify(transactionRequestLike);
|
8902
8873
|
const { policies } = BaseTransactionRequest.getPolicyMeta(request);
|
8903
|
-
|
8904
|
-
|
8905
|
-
request.removeWitness(placeholderIndex);
|
8906
|
-
}
|
8907
|
-
request.inputs.filter(isRequestInputResource).forEach((input) => {
|
8908
|
-
if (isRequestInputResourceFromOwner(input, this.address)) {
|
8874
|
+
request.inputs?.forEach((input) => {
|
8875
|
+
if (input.type === import_transactions20.InputType.Coin && (0, import_utils37.hexlify)(input.owner) === this.address.toB256()) {
|
8909
8876
|
input.predicate = this.bytes;
|
8910
8877
|
input.predicateData = this.getPredicateData(policies.length);
|
8911
|
-
input.witnessIndex = 0;
|
8912
8878
|
}
|
8913
8879
|
});
|
8914
8880
|
return request;
|
@@ -8946,26 +8912,12 @@ var Predicate = class extends Account {
|
|
8946
8912
|
const transactionRequest = this.populateTransactionPredicateData(transactionRequestLike);
|
8947
8913
|
return super.simulateTransaction(transactionRequest);
|
8948
8914
|
}
|
8949
|
-
/**
|
8950
|
-
* Retrieves resources satisfying the spend query for the account.
|
8951
|
-
*
|
8952
|
-
* @param quantities - Coins to retrieve.
|
8953
|
-
* @param excludedIds - IDs of resources to be excluded from the query.
|
8954
|
-
* @returns A promise that resolves to an array of Resources.
|
8955
|
-
*/
|
8956
|
-
async getResourcesToSpend(quantities, excludedIds) {
|
8957
|
-
const resources = await super.getResourcesToSpend(quantities, excludedIds);
|
8958
|
-
return resources.map((resource) => ({
|
8959
|
-
...resource,
|
8960
|
-
predicate: (0, import_utils37.hexlify)(this.bytes)
|
8961
|
-
}));
|
8962
|
-
}
|
8963
8915
|
getPredicateData(policiesLength) {
|
8964
8916
|
if (!this.predicateData.length) {
|
8965
8917
|
return new Uint8Array();
|
8966
8918
|
}
|
8967
8919
|
const mainFn = this.interface?.functions.main;
|
8968
|
-
const paddedCode = new
|
8920
|
+
const paddedCode = new import_transactions20.ByteArrayCoder(this.bytes.length).encode(this.bytes);
|
8969
8921
|
const VM_TX_MEMORY = (0, import_abi_coder7.calculateVmTxMemory)({
|
8970
8922
|
maxInputs: this.provider.getChain().consensusParameters.maxInputs.toNumber()
|
8971
8923
|
});
|
@@ -9039,28 +8991,6 @@ var Predicate = class extends Account {
|
|
9039
8991
|
}
|
9040
8992
|
return mutatedBytes;
|
9041
8993
|
}
|
9042
|
-
/**
|
9043
|
-
* Returns the index of the witness placeholder that was added to this predicate.
|
9044
|
-
* If no witness placeholder was added, it returns -1.
|
9045
|
-
* @param request - The transaction request.
|
9046
|
-
* @returns The index of the witness placeholder, or -1 if there is no witness placeholder.
|
9047
|
-
*/
|
9048
|
-
getIndexFromPlaceholderWitness(request) {
|
9049
|
-
const predicateInputs = request.inputs.filter(isRequestInputResource).filter((input) => isRequestInputResourceFromOwner(input, this.address));
|
9050
|
-
let index = -1;
|
9051
|
-
const hasEmptyPredicateInputs = predicateInputs.find((input) => !input.predicate);
|
9052
|
-
if (hasEmptyPredicateInputs) {
|
9053
|
-
index = hasEmptyPredicateInputs.witnessIndex;
|
9054
|
-
const allInputsAreEmpty = predicateInputs.every((input) => !input.predicate);
|
9055
|
-
if (!allInputsAreEmpty) {
|
9056
|
-
const wasFilledInputAddedFirst = !!predicateInputs[0]?.predicate;
|
9057
|
-
if (wasFilledInputAddedFirst) {
|
9058
|
-
index = -1;
|
9059
|
-
}
|
9060
|
-
}
|
9061
|
-
}
|
9062
|
-
return index;
|
9063
|
-
}
|
9064
8994
|
};
|
9065
8995
|
|
9066
8996
|
// src/connectors/fuel.ts
|
@@ -9784,7 +9714,6 @@ __publicField(Fuel, "defaultConfig", {});
|
|
9784
9714
|
assets,
|
9785
9715
|
buildBlockExplorerUrl,
|
9786
9716
|
cacheFor,
|
9787
|
-
cacheResources,
|
9788
9717
|
calculateMetadataGasForTxCreate,
|
9789
9718
|
calculateMetadataGasForTxScript,
|
9790
9719
|
calculatePriceWithFactor,
|
@@ -9831,7 +9760,6 @@ __publicField(Fuel, "defaultConfig", {});
|
|
9831
9760
|
getReceiptsMessageOut,
|
9832
9761
|
getReceiptsTransferOut,
|
9833
9762
|
getReceiptsWithMissingData,
|
9834
|
-
getRequestInputResourceOwner,
|
9835
9763
|
getTransactionStatusName,
|
9836
9764
|
getTransactionSummary,
|
9837
9765
|
getTransactionSummaryFromRequest,
|
@@ -9845,10 +9773,6 @@ __publicField(Fuel, "defaultConfig", {});
|
|
9845
9773
|
isMessage,
|
9846
9774
|
isRawCoin,
|
9847
9775
|
isRawMessage,
|
9848
|
-
isRequestInputCoin,
|
9849
|
-
isRequestInputMessage,
|
9850
|
-
isRequestInputResource,
|
9851
|
-
isRequestInputResourceFromOwner,
|
9852
9776
|
isType,
|
9853
9777
|
isTypeCreate,
|
9854
9778
|
isTypeMint,
|