@fuel-ts/account 0.0.0-rc-1832-20240403171523 → 0.0.0-rc-1976-20240403225009
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.d.ts.map +1 -1
- package/dist/index.global.js +77 -103
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +80 -62
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +49 -31
- package/dist/index.mjs.map +1 -1
- package/dist/predicate/predicate.d.ts.map +1 -1
- package/dist/providers/coin-quantity.d.ts +2 -2
- package/dist/providers/coin-quantity.d.ts.map +1 -1
- package/dist/providers/provider.d.ts +7 -0
- package/dist/providers/provider.d.ts.map +1 -1
- package/dist/providers/transaction-request/transaction-request.d.ts +5 -2
- package/dist/providers/transaction-request/transaction-request.d.ts.map +1 -1
- package/dist/test-utils/launchNode.d.ts.map +1 -1
- package/dist/test-utils.global.js +79 -104
- package/dist/test-utils.global.js.map +1 -1
- package/dist/test-utils.js +81 -62
- package/dist/test-utils.js.map +1 -1
- package/dist/test-utils.mjs +50 -31
- package/dist/test-utils.mjs.map +1 -1
- package/package.json +16 -16
package/dist/index.js
CHANGED
@@ -181,14 +181,12 @@ module.exports = __toCommonJS(src_exports);
|
|
181
181
|
|
182
182
|
// src/account.ts
|
183
183
|
var import_address4 = require("@fuel-ts/address");
|
184
|
-
var import_configs11 = require("@fuel-ts/address/configs");
|
185
184
|
var import_errors15 = require("@fuel-ts/errors");
|
186
185
|
var import_interfaces = require("@fuel-ts/interfaces");
|
187
186
|
var import_math17 = require("@fuel-ts/math");
|
188
187
|
var import_utils27 = require("@fuel-ts/utils");
|
189
188
|
|
190
189
|
// src/providers/coin-quantity.ts
|
191
|
-
var import_configs = require("@fuel-ts/address/configs");
|
192
190
|
var import_math = require("@fuel-ts/math");
|
193
191
|
var import_utils = require("@fuel-ts/utils");
|
194
192
|
var coinQuantityfy = (coinQuantityLike) => {
|
@@ -197,11 +195,11 @@ var coinQuantityfy = (coinQuantityLike) => {
|
|
197
195
|
let max2;
|
198
196
|
if (Array.isArray(coinQuantityLike)) {
|
199
197
|
amount = coinQuantityLike[0];
|
200
|
-
assetId = coinQuantityLike[1]
|
201
|
-
max2 = coinQuantityLike[2]
|
198
|
+
assetId = coinQuantityLike[1];
|
199
|
+
max2 = coinQuantityLike[2];
|
202
200
|
} else {
|
203
201
|
amount = coinQuantityLike.amount;
|
204
|
-
assetId = coinQuantityLike.assetId
|
202
|
+
assetId = coinQuantityLike.assetId;
|
205
203
|
max2 = coinQuantityLike.max ?? void 0;
|
206
204
|
}
|
207
205
|
const bnAmount = (0, import_math.bn)(amount);
|
@@ -1170,7 +1168,7 @@ var MemoryCache = class {
|
|
1170
1168
|
};
|
1171
1169
|
|
1172
1170
|
// src/providers/transaction-request/input.ts
|
1173
|
-
var
|
1171
|
+
var import_configs = require("@fuel-ts/address/configs");
|
1174
1172
|
var import_errors3 = require("@fuel-ts/errors");
|
1175
1173
|
var import_math2 = require("@fuel-ts/math");
|
1176
1174
|
var import_transactions = require("@fuel-ts/transactions");
|
@@ -1204,10 +1202,10 @@ var inputify = (value) => {
|
|
1204
1202
|
case import_transactions.InputType.Contract: {
|
1205
1203
|
return {
|
1206
1204
|
type: import_transactions.InputType.Contract,
|
1207
|
-
txID:
|
1205
|
+
txID: import_configs.ZeroBytes32,
|
1208
1206
|
outputIndex: 0,
|
1209
|
-
balanceRoot:
|
1210
|
-
stateRoot:
|
1207
|
+
balanceRoot: import_configs.ZeroBytes32,
|
1208
|
+
stateRoot: import_configs.ZeroBytes32,
|
1211
1209
|
txPointer: {
|
1212
1210
|
blockHeight: (0, import_math2.toNumber)((0, import_utils3.arrayify)(value.txPointer).slice(0, 8)),
|
1213
1211
|
txIndex: (0, import_math2.toNumber)((0, import_utils3.arrayify)(value.txPointer).slice(8, 16))
|
@@ -1245,7 +1243,7 @@ var inputify = (value) => {
|
|
1245
1243
|
};
|
1246
1244
|
|
1247
1245
|
// src/providers/transaction-request/output.ts
|
1248
|
-
var
|
1246
|
+
var import_configs2 = require("@fuel-ts/address/configs");
|
1249
1247
|
var import_errors4 = require("@fuel-ts/errors");
|
1250
1248
|
var import_math3 = require("@fuel-ts/math");
|
1251
1249
|
var import_transactions2 = require("@fuel-ts/transactions");
|
@@ -1265,8 +1263,8 @@ var outputify = (value) => {
|
|
1265
1263
|
return {
|
1266
1264
|
type: import_transactions2.OutputType.Contract,
|
1267
1265
|
inputIndex: value.inputIndex,
|
1268
|
-
balanceRoot:
|
1269
|
-
stateRoot:
|
1266
|
+
balanceRoot: import_configs2.ZeroBytes32,
|
1267
|
+
stateRoot: import_configs2.ZeroBytes32
|
1270
1268
|
};
|
1271
1269
|
}
|
1272
1270
|
case import_transactions2.OutputType.Change: {
|
@@ -1280,9 +1278,9 @@ var outputify = (value) => {
|
|
1280
1278
|
case import_transactions2.OutputType.Variable: {
|
1281
1279
|
return {
|
1282
1280
|
type: import_transactions2.OutputType.Variable,
|
1283
|
-
to:
|
1281
|
+
to: import_configs2.ZeroBytes32,
|
1284
1282
|
amount: (0, import_math3.bn)(0),
|
1285
|
-
assetId:
|
1283
|
+
assetId: import_configs2.ZeroBytes32
|
1286
1284
|
};
|
1287
1285
|
}
|
1288
1286
|
case import_transactions2.OutputType.ContractCreated: {
|
@@ -1303,7 +1301,7 @@ var outputify = (value) => {
|
|
1303
1301
|
|
1304
1302
|
// src/providers/transaction-request/transaction-request.ts
|
1305
1303
|
var import_address = require("@fuel-ts/address");
|
1306
|
-
var
|
1304
|
+
var import_configs5 = require("@fuel-ts/address/configs");
|
1307
1305
|
var import_math6 = require("@fuel-ts/math");
|
1308
1306
|
var import_transactions5 = require("@fuel-ts/transactions");
|
1309
1307
|
var import_utils9 = require("@fuel-ts/utils");
|
@@ -1315,13 +1313,13 @@ var isCoin = (resource) => "id" in resource;
|
|
1315
1313
|
var isMessage = (resource) => "recipient" in resource;
|
1316
1314
|
|
1317
1315
|
// src/providers/utils/receipts.ts
|
1318
|
-
var
|
1316
|
+
var import_configs3 = require("@fuel-ts/address/configs");
|
1319
1317
|
var import_errors5 = require("@fuel-ts/errors");
|
1320
1318
|
var import_math4 = require("@fuel-ts/math");
|
1321
1319
|
var import_transactions3 = require("@fuel-ts/transactions");
|
1322
|
-
var
|
1320
|
+
var import_configs4 = require("@fuel-ts/transactions/configs");
|
1323
1321
|
var import_utils5 = require("@fuel-ts/utils");
|
1324
|
-
var doesReceiptHaveMissingOutputVariables = (receipt) => receipt.type === import_transactions3.ReceiptType.Revert && receipt.val.toString("hex") ===
|
1322
|
+
var doesReceiptHaveMissingOutputVariables = (receipt) => receipt.type === import_transactions3.ReceiptType.Revert && receipt.val.toString("hex") === import_configs4.FAILED_TRANSFER_TO_ADDRESS_SIGNAL;
|
1325
1323
|
var doesReceiptHaveMissingContractId = (receipt) => receipt.type === import_transactions3.ReceiptType.Panic && receipt.contractId !== "0x0000000000000000000000000000000000000000000000000000000000000000";
|
1326
1324
|
var getReceiptsWithMissingData = (receipts) => receipts.reduce(
|
1327
1325
|
(memo, receipt) => {
|
@@ -1338,7 +1336,7 @@ var getReceiptsWithMissingData = (receipts) => receipts.reduce(
|
|
1338
1336
|
missingOutputContractIds: []
|
1339
1337
|
}
|
1340
1338
|
);
|
1341
|
-
var hexOrZero = (hex) => hex ||
|
1339
|
+
var hexOrZero = (hex) => hex || import_configs3.ZeroBytes32;
|
1342
1340
|
function assembleReceiptByType(receipt) {
|
1343
1341
|
const { receiptType } = receipt;
|
1344
1342
|
switch (receiptType) {
|
@@ -1746,6 +1744,8 @@ var BaseTransactionRequest = class {
|
|
1746
1744
|
outputs = [];
|
1747
1745
|
/** List of witnesses */
|
1748
1746
|
witnesses = [];
|
1747
|
+
/** Base asset ID - should be fetched from the chain */
|
1748
|
+
baseAssetId = import_configs5.ZeroBytes32;
|
1749
1749
|
/**
|
1750
1750
|
* Constructor for initializing a base transaction request.
|
1751
1751
|
*
|
@@ -1758,7 +1758,8 @@ var BaseTransactionRequest = class {
|
|
1758
1758
|
witnessLimit,
|
1759
1759
|
inputs,
|
1760
1760
|
outputs,
|
1761
|
-
witnesses
|
1761
|
+
witnesses,
|
1762
|
+
baseAssetId
|
1762
1763
|
} = {}) {
|
1763
1764
|
this.gasPrice = (0, import_math6.bn)(gasPrice);
|
1764
1765
|
this.maturity = maturity ?? 0;
|
@@ -1767,6 +1768,7 @@ var BaseTransactionRequest = class {
|
|
1767
1768
|
this.inputs = inputs ?? [];
|
1768
1769
|
this.outputs = outputs ?? [];
|
1769
1770
|
this.witnesses = witnesses ?? [];
|
1771
|
+
this.baseAssetId = baseAssetId ?? import_configs5.ZeroBytes32;
|
1770
1772
|
}
|
1771
1773
|
static getPolicyMeta(req) {
|
1772
1774
|
let policyTypes = 0;
|
@@ -1859,7 +1861,7 @@ var BaseTransactionRequest = class {
|
|
1859
1861
|
* @returns The index of the created witness.
|
1860
1862
|
*/
|
1861
1863
|
addEmptyWitness() {
|
1862
|
-
this.addWitness((0, import_utils9.concat)([
|
1864
|
+
this.addWitness((0, import_utils9.concat)([import_configs5.ZeroBytes32, import_configs5.ZeroBytes32]));
|
1863
1865
|
return this.witnesses.length - 1;
|
1864
1866
|
}
|
1865
1867
|
/**
|
@@ -1991,11 +1993,9 @@ var BaseTransactionRequest = class {
|
|
1991
1993
|
*
|
1992
1994
|
* @param message - Message resource.
|
1993
1995
|
* @param predicate - Predicate bytes.
|
1994
|
-
* @param predicateData - Predicate data bytes.
|
1995
1996
|
*/
|
1996
1997
|
addMessageInput(message, predicate) {
|
1997
1998
|
const { recipient, sender, amount } = message;
|
1998
|
-
const assetId = import_configs6.BaseAssetId;
|
1999
1999
|
let witnessIndex;
|
2000
2000
|
if (predicate) {
|
2001
2001
|
witnessIndex = 0;
|
@@ -2016,7 +2016,7 @@ var BaseTransactionRequest = class {
|
|
2016
2016
|
predicateData: predicate?.predicateDataBytes
|
2017
2017
|
};
|
2018
2018
|
this.pushInput(input);
|
2019
|
-
this.addChangeOutput(recipient,
|
2019
|
+
this.addChangeOutput(recipient, this.baseAssetId);
|
2020
2020
|
}
|
2021
2021
|
/**
|
2022
2022
|
* Adds a single resource to the transaction by adding a coin/message input and a
|
@@ -2077,12 +2077,12 @@ var BaseTransactionRequest = class {
|
|
2077
2077
|
* @param amount - Amount of coin.
|
2078
2078
|
* @param assetId - Asset ID of coin.
|
2079
2079
|
*/
|
2080
|
-
addCoinOutput(to, amount, assetId
|
2080
|
+
addCoinOutput(to, amount, assetId) {
|
2081
2081
|
this.pushOutput({
|
2082
2082
|
type: import_transactions5.OutputType.Coin,
|
2083
2083
|
to: (0, import_address.addressify)(to).toB256(),
|
2084
2084
|
amount,
|
2085
|
-
assetId
|
2085
|
+
assetId: assetId ?? this.baseAssetId
|
2086
2086
|
});
|
2087
2087
|
return this;
|
2088
2088
|
}
|
@@ -2109,7 +2109,7 @@ var BaseTransactionRequest = class {
|
|
2109
2109
|
* @param to - Address of the owner.
|
2110
2110
|
* @param assetId - Asset ID of coin.
|
2111
2111
|
*/
|
2112
|
-
addChangeOutput(to, assetId
|
2112
|
+
addChangeOutput(to, assetId) {
|
2113
2113
|
const changeOutput = this.getChangeOutputs().find(
|
2114
2114
|
(output) => (0, import_utils9.hexlify)(output.assetId) === assetId
|
2115
2115
|
);
|
@@ -2117,7 +2117,7 @@ var BaseTransactionRequest = class {
|
|
2117
2117
|
this.pushOutput({
|
2118
2118
|
type: import_transactions5.OutputType.Change,
|
2119
2119
|
to: (0, import_address.addressify)(to).toB256(),
|
2120
|
-
assetId
|
2120
|
+
assetId: assetId ?? this.baseAssetId
|
2121
2121
|
});
|
2122
2122
|
}
|
2123
2123
|
}
|
@@ -2171,7 +2171,7 @@ var BaseTransactionRequest = class {
|
|
2171
2171
|
let idCounter = 0;
|
2172
2172
|
const generateId = () => {
|
2173
2173
|
const counterString = String(idCounter++);
|
2174
|
-
const id =
|
2174
|
+
const id = import_configs5.ZeroBytes32.slice(0, -counterString.length).concat(counterString);
|
2175
2175
|
return id;
|
2176
2176
|
};
|
2177
2177
|
const findAssetInput = (assetId) => this.inputs.find((input) => {
|
@@ -2199,7 +2199,7 @@ var BaseTransactionRequest = class {
|
|
2199
2199
|
]);
|
2200
2200
|
}
|
2201
2201
|
};
|
2202
|
-
updateAssetInput(
|
2202
|
+
updateAssetInput(this.baseAssetId, (0, import_math6.bn)(1e11));
|
2203
2203
|
quantities.forEach((q) => updateAssetInput(q.assetId, q.amount));
|
2204
2204
|
}
|
2205
2205
|
/**
|
@@ -2249,13 +2249,13 @@ var BaseTransactionRequest = class {
|
|
2249
2249
|
};
|
2250
2250
|
|
2251
2251
|
// src/providers/transaction-request/create-transaction-request.ts
|
2252
|
-
var
|
2252
|
+
var import_configs7 = require("@fuel-ts/address/configs");
|
2253
2253
|
var import_math8 = require("@fuel-ts/math");
|
2254
2254
|
var import_transactions7 = require("@fuel-ts/transactions");
|
2255
2255
|
var import_utils13 = require("@fuel-ts/utils");
|
2256
2256
|
|
2257
2257
|
// src/providers/transaction-request/hash-transaction.ts
|
2258
|
-
var
|
2258
|
+
var import_configs6 = require("@fuel-ts/address/configs");
|
2259
2259
|
var import_hasher = require("@fuel-ts/hasher");
|
2260
2260
|
var import_math7 = require("@fuel-ts/math");
|
2261
2261
|
var import_transactions6 = require("@fuel-ts/transactions");
|
@@ -2264,7 +2264,7 @@ var import_ramda2 = require("ramda");
|
|
2264
2264
|
function hashTransaction(transactionRequest, chainId) {
|
2265
2265
|
const transaction = transactionRequest.toTransaction();
|
2266
2266
|
if (transaction.type === import_transactions6.TransactionType.Script) {
|
2267
|
-
transaction.receiptsRoot =
|
2267
|
+
transaction.receiptsRoot = import_configs6.ZeroBytes32;
|
2268
2268
|
}
|
2269
2269
|
transaction.inputs = transaction.inputs.map((input) => {
|
2270
2270
|
const inputClone = (0, import_ramda2.clone)(input);
|
@@ -2286,10 +2286,10 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2286
2286
|
blockHeight: 0,
|
2287
2287
|
txIndex: 0
|
2288
2288
|
};
|
2289
|
-
inputClone.txID =
|
2289
|
+
inputClone.txID = import_configs6.ZeroBytes32;
|
2290
2290
|
inputClone.outputIndex = 0;
|
2291
|
-
inputClone.balanceRoot =
|
2292
|
-
inputClone.stateRoot =
|
2291
|
+
inputClone.balanceRoot = import_configs6.ZeroBytes32;
|
2292
|
+
inputClone.stateRoot = import_configs6.ZeroBytes32;
|
2293
2293
|
return inputClone;
|
2294
2294
|
}
|
2295
2295
|
default:
|
@@ -2300,8 +2300,8 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2300
2300
|
const outputClone = (0, import_ramda2.clone)(output);
|
2301
2301
|
switch (outputClone.type) {
|
2302
2302
|
case import_transactions6.OutputType.Contract: {
|
2303
|
-
outputClone.balanceRoot =
|
2304
|
-
outputClone.stateRoot =
|
2303
|
+
outputClone.balanceRoot = import_configs6.ZeroBytes32;
|
2304
|
+
outputClone.stateRoot = import_configs6.ZeroBytes32;
|
2305
2305
|
return outputClone;
|
2306
2306
|
}
|
2307
2307
|
case import_transactions6.OutputType.Change: {
|
@@ -2309,9 +2309,9 @@ function hashTransaction(transactionRequest, chainId) {
|
|
2309
2309
|
return outputClone;
|
2310
2310
|
}
|
2311
2311
|
case import_transactions6.OutputType.Variable: {
|
2312
|
-
outputClone.to =
|
2312
|
+
outputClone.to = import_configs6.ZeroBytes32;
|
2313
2313
|
outputClone.amount = (0, import_math7.bn)(0);
|
2314
|
-
outputClone.assetId =
|
2314
|
+
outputClone.assetId = import_configs6.ZeroBytes32;
|
2315
2315
|
return outputClone;
|
2316
2316
|
}
|
2317
2317
|
default:
|
@@ -2377,7 +2377,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2377
2377
|
} = {}) {
|
2378
2378
|
super(rest);
|
2379
2379
|
this.bytecodeWitnessIndex = bytecodeWitnessIndex ?? 0;
|
2380
|
-
this.salt = (0, import_utils13.hexlify)(salt ??
|
2380
|
+
this.salt = (0, import_utils13.hexlify)(salt ?? import_configs7.ZeroBytes32);
|
2381
2381
|
this.storageSlots = [...storageSlots ?? []];
|
2382
2382
|
}
|
2383
2383
|
/**
|
@@ -2395,7 +2395,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2395
2395
|
bytecodeLength: baseTransaction.witnesses[bytecodeWitnessIndex].dataLength / 4,
|
2396
2396
|
bytecodeWitnessIndex,
|
2397
2397
|
storageSlotsCount: storageSlots.length,
|
2398
|
-
salt: this.salt ? (0, import_utils13.hexlify)(this.salt) :
|
2398
|
+
salt: this.salt ? (0, import_utils13.hexlify)(this.salt) : import_configs7.ZeroBytes32,
|
2399
2399
|
storageSlots
|
2400
2400
|
};
|
2401
2401
|
}
|
@@ -2445,7 +2445,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
|
|
2445
2445
|
// src/providers/transaction-request/script-transaction-request.ts
|
2446
2446
|
var import_abi_coder = require("@fuel-ts/abi-coder");
|
2447
2447
|
var import_address2 = require("@fuel-ts/address");
|
2448
|
-
var
|
2448
|
+
var import_configs8 = require("@fuel-ts/address/configs");
|
2449
2449
|
var import_math9 = require("@fuel-ts/math");
|
2450
2450
|
var import_transactions8 = require("@fuel-ts/transactions");
|
2451
2451
|
var import_utils15 = require("@fuel-ts/utils");
|
@@ -2519,7 +2519,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
|
|
2519
2519
|
...super.getBaseTransaction(),
|
2520
2520
|
scriptLength: script.length,
|
2521
2521
|
scriptDataLength: scriptData.length,
|
2522
|
-
receiptsRoot:
|
2522
|
+
receiptsRoot: import_configs8.ZeroBytes32,
|
2523
2523
|
script: (0, import_utils15.hexlify)(script),
|
2524
2524
|
scriptData: (0, import_utils15.hexlify)(scriptData)
|
2525
2525
|
};
|
@@ -2751,7 +2751,7 @@ var calculateTransactionFee = (params) => {
|
|
2751
2751
|
};
|
2752
2752
|
|
2753
2753
|
// src/providers/transaction-summary/operations.ts
|
2754
|
-
var
|
2754
|
+
var import_configs9 = require("@fuel-ts/address/configs");
|
2755
2755
|
var import_errors10 = require("@fuel-ts/errors");
|
2756
2756
|
var import_math12 = require("@fuel-ts/math");
|
2757
2757
|
var import_transactions13 = require("@fuel-ts/transactions");
|
@@ -3096,7 +3096,7 @@ function extractTransferOperationFromReceipt(receipt, contractInputs, changeOutp
|
|
3096
3096
|
const { to: toAddress, assetId, amount } = receipt;
|
3097
3097
|
let { from: fromAddress } = receipt;
|
3098
3098
|
const toType = contractInputs.some((input) => input.contractID === toAddress) ? 0 /* contract */ : 1 /* account */;
|
3099
|
-
if (
|
3099
|
+
if (import_configs9.ZeroBytes32 === fromAddress) {
|
3100
3100
|
const change = changeOutputs.find((output) => output.assetId === assetId);
|
3101
3101
|
fromAddress = change?.to || fromAddress;
|
3102
3102
|
}
|
@@ -3668,6 +3668,7 @@ var processGqlChain = (chain) => {
|
|
3668
3668
|
gasPerByte: (0, import_math14.bn)(feeParams.gasPerByte),
|
3669
3669
|
maxMessageDataLength: (0, import_math14.bn)(predicateParams.maxMessageDataLength),
|
3670
3670
|
chainId: (0, import_math14.bn)(consensusParameters.chainId),
|
3671
|
+
baseAssetId: consensusParameters.baseAssetId,
|
3671
3672
|
gasCosts
|
3672
3673
|
},
|
3673
3674
|
gasCosts,
|
@@ -3910,6 +3911,17 @@ var _Provider = class {
|
|
3910
3911
|
} = this.getChain();
|
3911
3912
|
return chainId.toNumber();
|
3912
3913
|
}
|
3914
|
+
/**
|
3915
|
+
* Returns the base asset ID
|
3916
|
+
*
|
3917
|
+
* @returns A promise that resolves to the base asset ID
|
3918
|
+
*/
|
3919
|
+
getBaseAssetId() {
|
3920
|
+
const {
|
3921
|
+
consensusParameters: { baseAssetId }
|
3922
|
+
} = this.getChain();
|
3923
|
+
return baseAssetId;
|
3924
|
+
}
|
3913
3925
|
/**
|
3914
3926
|
* Submits a transaction to the chain to be executed.
|
3915
3927
|
*
|
@@ -4946,8 +4958,9 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
4946
4958
|
* @param assetId - The asset ID to check the balance for.
|
4947
4959
|
* @returns A promise that resolves to the balance amount.
|
4948
4960
|
*/
|
4949
|
-
async getBalance(assetId
|
4950
|
-
const
|
4961
|
+
async getBalance(assetId) {
|
4962
|
+
const assetIdToFetch = assetId ?? this.provider.getBaseAssetId();
|
4963
|
+
const amount = await this.provider.getBalance(this.address, assetIdToFetch);
|
4951
4964
|
return amount;
|
4952
4965
|
}
|
4953
4966
|
/**
|
@@ -4985,9 +4998,10 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
4985
4998
|
* @returns A promise that resolves when the resources are added to the transaction.
|
4986
4999
|
*/
|
4987
5000
|
async fund(request, coinQuantities, fee) {
|
5001
|
+
const baseAssetId = this.provider.getBaseAssetId();
|
4988
5002
|
const updatedQuantities = addAmountToAsset({
|
4989
5003
|
amount: (0, import_math17.bn)(fee),
|
4990
|
-
assetId:
|
5004
|
+
assetId: baseAssetId,
|
4991
5005
|
coinQuantities
|
4992
5006
|
});
|
4993
5007
|
const quantitiesDict = {};
|
@@ -5011,8 +5025,8 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5011
5025
|
quantitiesDict[assetId].owned = quantitiesDict[assetId].owned.add(amount);
|
5012
5026
|
cachedUtxos.push(input.id);
|
5013
5027
|
}
|
5014
|
-
} else if (input.recipient === owner && input.amount && quantitiesDict[
|
5015
|
-
quantitiesDict[
|
5028
|
+
} else if (input.recipient === owner && input.amount && quantitiesDict[baseAssetId]) {
|
5029
|
+
quantitiesDict[baseAssetId].owned = quantitiesDict[baseAssetId].owned.add(input.amount);
|
5016
5030
|
cachedMessages.push(input.nonce);
|
5017
5031
|
}
|
5018
5032
|
}
|
@@ -5044,11 +5058,12 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5044
5058
|
* @param txParams - The transaction parameters (gasLimit, gasPrice, maturity).
|
5045
5059
|
* @returns A promise that resolves to the prepared transaction request.
|
5046
5060
|
*/
|
5047
|
-
async createTransfer(destination, amount, assetId
|
5061
|
+
async createTransfer(destination, amount, assetId, txParams = {}) {
|
5048
5062
|
const { minGasPrice } = this.provider.getGasConfig();
|
5063
|
+
const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
|
5049
5064
|
const params = { gasPrice: minGasPrice, ...txParams };
|
5050
5065
|
const request = new ScriptTransactionRequest(params);
|
5051
|
-
request.addCoinOutput(import_address4.Address.fromAddressOrString(destination), amount,
|
5066
|
+
request.addCoinOutput(import_address4.Address.fromAddressOrString(destination), amount, assetIdToTransfer);
|
5052
5067
|
const { maxFee, requiredQuantities, gasUsed, estimatedInputs } = await this.provider.getTransactionCost(request, [], {
|
5053
5068
|
estimateTxDependencies: true,
|
5054
5069
|
resourcesOwner: this
|
@@ -5074,14 +5089,15 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5074
5089
|
* @param txParams - The transaction parameters (gasLimit, gasPrice, maturity).
|
5075
5090
|
* @returns A promise that resolves to the transaction response.
|
5076
5091
|
*/
|
5077
|
-
async transfer(destination, amount, assetId
|
5092
|
+
async transfer(destination, amount, assetId, txParams = {}) {
|
5078
5093
|
if ((0, import_math17.bn)(amount).lte(0)) {
|
5079
5094
|
throw new import_errors15.FuelError(
|
5080
5095
|
import_errors15.ErrorCode.INVALID_TRANSFER_AMOUNT,
|
5081
5096
|
"Transfer amount must be a positive number."
|
5082
5097
|
);
|
5083
5098
|
}
|
5084
|
-
const
|
5099
|
+
const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
|
5100
|
+
const request = await this.createTransfer(destination, amount, assetIdToTransfer, txParams);
|
5085
5101
|
return this.sendTransaction(request, { estimateTxDependencies: false });
|
5086
5102
|
}
|
5087
5103
|
/**
|
@@ -5093,7 +5109,7 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5093
5109
|
* @param txParams - The optional transaction parameters.
|
5094
5110
|
* @returns A promise that resolves to the transaction response.
|
5095
5111
|
*/
|
5096
|
-
async transferToContract(contractId, amount, assetId
|
5112
|
+
async transferToContract(contractId, amount, assetId, txParams = {}) {
|
5097
5113
|
if ((0, import_math17.bn)(amount).lte(0)) {
|
5098
5114
|
throw new import_errors15.FuelError(
|
5099
5115
|
import_errors15.ErrorCode.INVALID_TRANSFER_AMOUNT,
|
@@ -5102,11 +5118,12 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5102
5118
|
}
|
5103
5119
|
const contractAddress = import_address4.Address.fromAddressOrString(contractId);
|
5104
5120
|
const { minGasPrice } = this.provider.getGasConfig();
|
5121
|
+
const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
|
5105
5122
|
const params = { gasPrice: minGasPrice, ...txParams };
|
5106
5123
|
const { script, scriptData } = await assembleTransferToContractScript({
|
5107
5124
|
hexlifiedContractId: contractAddress.toB256(),
|
5108
5125
|
amountToTransfer: (0, import_math17.bn)(amount),
|
5109
|
-
assetId
|
5126
|
+
assetId: assetIdToTransfer
|
5110
5127
|
});
|
5111
5128
|
const request = new ScriptTransactionRequest({
|
5112
5129
|
...params,
|
@@ -5116,7 +5133,7 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5116
5133
|
request.addContractInputAndOutput(contractAddress);
|
5117
5134
|
const { maxFee, requiredQuantities, gasUsed } = await this.provider.getTransactionCost(
|
5118
5135
|
request,
|
5119
|
-
[{ amount: (0, import_math17.bn)(amount), assetId: String(
|
5136
|
+
[{ amount: (0, import_math17.bn)(amount), assetId: String(assetIdToTransfer) }]
|
5120
5137
|
);
|
5121
5138
|
request.gasLimit = (0, import_math17.bn)(params.gasLimit ?? gasUsed);
|
5122
5139
|
this.validateGas({
|
@@ -5138,6 +5155,7 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5138
5155
|
*/
|
5139
5156
|
async withdrawToBaseLayer(recipient, amount, txParams = {}) {
|
5140
5157
|
const { minGasPrice } = this.provider.getGasConfig();
|
5158
|
+
const baseAssetId = this.provider.getBaseAssetId();
|
5141
5159
|
const recipientAddress = import_address4.Address.fromAddressOrString(recipient);
|
5142
5160
|
const recipientDataArray = (0, import_utils27.arrayify)(
|
5143
5161
|
"0x".concat(recipientAddress.toHexString().substring(2).padStart(64, "0"))
|
@@ -5152,7 +5170,7 @@ var Account = class extends import_interfaces.AbstractAccount {
|
|
5152
5170
|
]);
|
5153
5171
|
const params = { script, gasPrice: minGasPrice, ...txParams };
|
5154
5172
|
const request = new ScriptTransactionRequest(params);
|
5155
|
-
const forwardingQuantities = [{ amount: (0, import_math17.bn)(amount), assetId:
|
5173
|
+
const forwardingQuantities = [{ amount: (0, import_math17.bn)(amount), assetId: baseAssetId }];
|
5156
5174
|
const { requiredQuantities, maxFee, gasUsed } = await this.provider.getTransactionCost(
|
5157
5175
|
request,
|
5158
5176
|
forwardingQuantities
|
@@ -8715,7 +8733,6 @@ var StorageAbstract = class {
|
|
8715
8733
|
// src/predicate/predicate.ts
|
8716
8734
|
var import_abi_coder5 = require("@fuel-ts/abi-coder");
|
8717
8735
|
var import_address10 = require("@fuel-ts/address");
|
8718
|
-
var import_configs12 = require("@fuel-ts/address/configs");
|
8719
8736
|
var import_errors24 = require("@fuel-ts/errors");
|
8720
8737
|
var import_transactions19 = require("@fuel-ts/transactions");
|
8721
8738
|
var import_utils36 = require("@fuel-ts/utils");
|
@@ -8794,8 +8811,9 @@ var Predicate = class extends Account {
|
|
8794
8811
|
* @param txParams - The transaction parameters (gasLimit, gasPrice, maturity).
|
8795
8812
|
* @returns A promise that resolves to the prepared transaction request.
|
8796
8813
|
*/
|
8797
|
-
async createTransfer(destination, amount, assetId
|
8798
|
-
const
|
8814
|
+
async createTransfer(destination, amount, assetId, txParams = {}) {
|
8815
|
+
const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
|
8816
|
+
const request = await super.createTransfer(destination, amount, assetIdToTransfer, txParams);
|
8799
8817
|
return this.populateTransactionPredicateData(request);
|
8800
8818
|
}
|
8801
8819
|
/**
|