@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.

@@ -62,14 +62,12 @@ var import_utils30 = require("@fuel-ts/utils");
62
62
 
63
63
  // src/account.ts
64
64
  var import_address4 = require("@fuel-ts/address");
65
- var import_configs11 = require("@fuel-ts/address/configs");
66
65
  var import_errors15 = require("@fuel-ts/errors");
67
66
  var import_interfaces = require("@fuel-ts/interfaces");
68
67
  var import_math17 = require("@fuel-ts/math");
69
68
  var import_utils27 = require("@fuel-ts/utils");
70
69
 
71
70
  // src/providers/coin-quantity.ts
72
- var import_configs = require("@fuel-ts/address/configs");
73
71
  var import_math = require("@fuel-ts/math");
74
72
  var import_utils = require("@fuel-ts/utils");
75
73
  var coinQuantityfy = (coinQuantityLike) => {
@@ -78,11 +76,11 @@ var coinQuantityfy = (coinQuantityLike) => {
78
76
  let max2;
79
77
  if (Array.isArray(coinQuantityLike)) {
80
78
  amount = coinQuantityLike[0];
81
- assetId = coinQuantityLike[1] ?? import_configs.BaseAssetId;
82
- max2 = coinQuantityLike[2] ?? void 0;
79
+ assetId = coinQuantityLike[1];
80
+ max2 = coinQuantityLike[2];
83
81
  } else {
84
82
  amount = coinQuantityLike.amount;
85
- assetId = coinQuantityLike.assetId ?? import_configs.BaseAssetId;
83
+ assetId = coinQuantityLike.assetId;
86
84
  max2 = coinQuantityLike.max ?? void 0;
87
85
  }
88
86
  const bnAmount = (0, import_math.bn)(amount);
@@ -1051,7 +1049,7 @@ var MemoryCache = class {
1051
1049
  };
1052
1050
 
1053
1051
  // src/providers/transaction-request/input.ts
1054
- var import_configs2 = require("@fuel-ts/address/configs");
1052
+ var import_configs = require("@fuel-ts/address/configs");
1055
1053
  var import_errors3 = require("@fuel-ts/errors");
1056
1054
  var import_math2 = require("@fuel-ts/math");
1057
1055
  var import_transactions = require("@fuel-ts/transactions");
@@ -1085,10 +1083,10 @@ var inputify = (value) => {
1085
1083
  case import_transactions.InputType.Contract: {
1086
1084
  return {
1087
1085
  type: import_transactions.InputType.Contract,
1088
- txID: import_configs2.ZeroBytes32,
1086
+ txID: import_configs.ZeroBytes32,
1089
1087
  outputIndex: 0,
1090
- balanceRoot: import_configs2.ZeroBytes32,
1091
- stateRoot: import_configs2.ZeroBytes32,
1088
+ balanceRoot: import_configs.ZeroBytes32,
1089
+ stateRoot: import_configs.ZeroBytes32,
1092
1090
  txPointer: {
1093
1091
  blockHeight: (0, import_math2.toNumber)((0, import_utils3.arrayify)(value.txPointer).slice(0, 8)),
1094
1092
  txIndex: (0, import_math2.toNumber)((0, import_utils3.arrayify)(value.txPointer).slice(8, 16))
@@ -1126,7 +1124,7 @@ var inputify = (value) => {
1126
1124
  };
1127
1125
 
1128
1126
  // src/providers/transaction-request/output.ts
1129
- var import_configs3 = require("@fuel-ts/address/configs");
1127
+ var import_configs2 = require("@fuel-ts/address/configs");
1130
1128
  var import_errors4 = require("@fuel-ts/errors");
1131
1129
  var import_math3 = require("@fuel-ts/math");
1132
1130
  var import_transactions2 = require("@fuel-ts/transactions");
@@ -1146,8 +1144,8 @@ var outputify = (value) => {
1146
1144
  return {
1147
1145
  type: import_transactions2.OutputType.Contract,
1148
1146
  inputIndex: value.inputIndex,
1149
- balanceRoot: import_configs3.ZeroBytes32,
1150
- stateRoot: import_configs3.ZeroBytes32
1147
+ balanceRoot: import_configs2.ZeroBytes32,
1148
+ stateRoot: import_configs2.ZeroBytes32
1151
1149
  };
1152
1150
  }
1153
1151
  case import_transactions2.OutputType.Change: {
@@ -1161,9 +1159,9 @@ var outputify = (value) => {
1161
1159
  case import_transactions2.OutputType.Variable: {
1162
1160
  return {
1163
1161
  type: import_transactions2.OutputType.Variable,
1164
- to: import_configs3.ZeroBytes32,
1162
+ to: import_configs2.ZeroBytes32,
1165
1163
  amount: (0, import_math3.bn)(0),
1166
- assetId: import_configs3.ZeroBytes32
1164
+ assetId: import_configs2.ZeroBytes32
1167
1165
  };
1168
1166
  }
1169
1167
  case import_transactions2.OutputType.ContractCreated: {
@@ -1184,7 +1182,7 @@ var outputify = (value) => {
1184
1182
 
1185
1183
  // src/providers/transaction-request/transaction-request.ts
1186
1184
  var import_address = require("@fuel-ts/address");
1187
- var import_configs6 = require("@fuel-ts/address/configs");
1185
+ var import_configs5 = require("@fuel-ts/address/configs");
1188
1186
  var import_math6 = require("@fuel-ts/math");
1189
1187
  var import_transactions5 = require("@fuel-ts/transactions");
1190
1188
  var import_utils9 = require("@fuel-ts/utils");
@@ -1193,13 +1191,13 @@ var import_utils9 = require("@fuel-ts/utils");
1193
1191
  var isCoin = (resource) => "id" in resource;
1194
1192
 
1195
1193
  // src/providers/utils/receipts.ts
1196
- var import_configs4 = require("@fuel-ts/address/configs");
1194
+ var import_configs3 = require("@fuel-ts/address/configs");
1197
1195
  var import_errors5 = require("@fuel-ts/errors");
1198
1196
  var import_math4 = require("@fuel-ts/math");
1199
1197
  var import_transactions3 = require("@fuel-ts/transactions");
1200
- var import_configs5 = require("@fuel-ts/transactions/configs");
1198
+ var import_configs4 = require("@fuel-ts/transactions/configs");
1201
1199
  var import_utils5 = require("@fuel-ts/utils");
1202
- var doesReceiptHaveMissingOutputVariables = (receipt) => receipt.type === import_transactions3.ReceiptType.Revert && receipt.val.toString("hex") === import_configs5.FAILED_TRANSFER_TO_ADDRESS_SIGNAL;
1200
+ var doesReceiptHaveMissingOutputVariables = (receipt) => receipt.type === import_transactions3.ReceiptType.Revert && receipt.val.toString("hex") === import_configs4.FAILED_TRANSFER_TO_ADDRESS_SIGNAL;
1203
1201
  var doesReceiptHaveMissingContractId = (receipt) => receipt.type === import_transactions3.ReceiptType.Panic && receipt.contractId !== "0x0000000000000000000000000000000000000000000000000000000000000000";
1204
1202
  var getReceiptsWithMissingData = (receipts) => receipts.reduce(
1205
1203
  (memo, receipt) => {
@@ -1216,7 +1214,7 @@ var getReceiptsWithMissingData = (receipts) => receipts.reduce(
1216
1214
  missingOutputContractIds: []
1217
1215
  }
1218
1216
  );
1219
- var hexOrZero = (hex) => hex || import_configs4.ZeroBytes32;
1217
+ var hexOrZero = (hex) => hex || import_configs3.ZeroBytes32;
1220
1218
  function assembleReceiptByType(receipt) {
1221
1219
  const { receiptType } = receipt;
1222
1220
  switch (receiptType) {
@@ -1553,6 +1551,8 @@ var BaseTransactionRequest = class {
1553
1551
  outputs = [];
1554
1552
  /** List of witnesses */
1555
1553
  witnesses = [];
1554
+ /** Base asset ID - should be fetched from the chain */
1555
+ baseAssetId = import_configs5.ZeroBytes32;
1556
1556
  /**
1557
1557
  * Constructor for initializing a base transaction request.
1558
1558
  *
@@ -1565,7 +1565,8 @@ var BaseTransactionRequest = class {
1565
1565
  witnessLimit,
1566
1566
  inputs,
1567
1567
  outputs,
1568
- witnesses
1568
+ witnesses,
1569
+ baseAssetId
1569
1570
  } = {}) {
1570
1571
  this.gasPrice = (0, import_math6.bn)(gasPrice);
1571
1572
  this.maturity = maturity ?? 0;
@@ -1574,6 +1575,7 @@ var BaseTransactionRequest = class {
1574
1575
  this.inputs = inputs ?? [];
1575
1576
  this.outputs = outputs ?? [];
1576
1577
  this.witnesses = witnesses ?? [];
1578
+ this.baseAssetId = baseAssetId ?? import_configs5.ZeroBytes32;
1577
1579
  }
1578
1580
  static getPolicyMeta(req) {
1579
1581
  let policyTypes = 0;
@@ -1666,7 +1668,7 @@ var BaseTransactionRequest = class {
1666
1668
  * @returns The index of the created witness.
1667
1669
  */
1668
1670
  addEmptyWitness() {
1669
- this.addWitness((0, import_utils9.concat)([import_configs6.ZeroBytes32, import_configs6.ZeroBytes32]));
1671
+ this.addWitness((0, import_utils9.concat)([import_configs5.ZeroBytes32, import_configs5.ZeroBytes32]));
1670
1672
  return this.witnesses.length - 1;
1671
1673
  }
1672
1674
  /**
@@ -1798,11 +1800,9 @@ var BaseTransactionRequest = class {
1798
1800
  *
1799
1801
  * @param message - Message resource.
1800
1802
  * @param predicate - Predicate bytes.
1801
- * @param predicateData - Predicate data bytes.
1802
1803
  */
1803
1804
  addMessageInput(message, predicate) {
1804
1805
  const { recipient, sender, amount } = message;
1805
- const assetId = import_configs6.BaseAssetId;
1806
1806
  let witnessIndex;
1807
1807
  if (predicate) {
1808
1808
  witnessIndex = 0;
@@ -1823,7 +1823,7 @@ var BaseTransactionRequest = class {
1823
1823
  predicateData: predicate?.predicateDataBytes
1824
1824
  };
1825
1825
  this.pushInput(input);
1826
- this.addChangeOutput(recipient, assetId);
1826
+ this.addChangeOutput(recipient, this.baseAssetId);
1827
1827
  }
1828
1828
  /**
1829
1829
  * Adds a single resource to the transaction by adding a coin/message input and a
@@ -1884,12 +1884,12 @@ var BaseTransactionRequest = class {
1884
1884
  * @param amount - Amount of coin.
1885
1885
  * @param assetId - Asset ID of coin.
1886
1886
  */
1887
- addCoinOutput(to, amount, assetId = import_configs6.BaseAssetId) {
1887
+ addCoinOutput(to, amount, assetId) {
1888
1888
  this.pushOutput({
1889
1889
  type: import_transactions5.OutputType.Coin,
1890
1890
  to: (0, import_address.addressify)(to).toB256(),
1891
1891
  amount,
1892
- assetId
1892
+ assetId: assetId ?? this.baseAssetId
1893
1893
  });
1894
1894
  return this;
1895
1895
  }
@@ -1916,7 +1916,7 @@ var BaseTransactionRequest = class {
1916
1916
  * @param to - Address of the owner.
1917
1917
  * @param assetId - Asset ID of coin.
1918
1918
  */
1919
- addChangeOutput(to, assetId = import_configs6.BaseAssetId) {
1919
+ addChangeOutput(to, assetId) {
1920
1920
  const changeOutput = this.getChangeOutputs().find(
1921
1921
  (output) => (0, import_utils9.hexlify)(output.assetId) === assetId
1922
1922
  );
@@ -1924,7 +1924,7 @@ var BaseTransactionRequest = class {
1924
1924
  this.pushOutput({
1925
1925
  type: import_transactions5.OutputType.Change,
1926
1926
  to: (0, import_address.addressify)(to).toB256(),
1927
- assetId
1927
+ assetId: assetId ?? this.baseAssetId
1928
1928
  });
1929
1929
  }
1930
1930
  }
@@ -1978,7 +1978,7 @@ var BaseTransactionRequest = class {
1978
1978
  let idCounter = 0;
1979
1979
  const generateId = () => {
1980
1980
  const counterString = String(idCounter++);
1981
- const id = import_configs6.ZeroBytes32.slice(0, -counterString.length).concat(counterString);
1981
+ const id = import_configs5.ZeroBytes32.slice(0, -counterString.length).concat(counterString);
1982
1982
  return id;
1983
1983
  };
1984
1984
  const findAssetInput = (assetId) => this.inputs.find((input) => {
@@ -2006,7 +2006,7 @@ var BaseTransactionRequest = class {
2006
2006
  ]);
2007
2007
  }
2008
2008
  };
2009
- updateAssetInput(import_configs6.BaseAssetId, (0, import_math6.bn)(1e11));
2009
+ updateAssetInput(this.baseAssetId, (0, import_math6.bn)(1e11));
2010
2010
  quantities.forEach((q) => updateAssetInput(q.assetId, q.amount));
2011
2011
  }
2012
2012
  /**
@@ -2056,13 +2056,13 @@ var BaseTransactionRequest = class {
2056
2056
  };
2057
2057
 
2058
2058
  // src/providers/transaction-request/create-transaction-request.ts
2059
- var import_configs8 = require("@fuel-ts/address/configs");
2059
+ var import_configs7 = require("@fuel-ts/address/configs");
2060
2060
  var import_math8 = require("@fuel-ts/math");
2061
2061
  var import_transactions7 = require("@fuel-ts/transactions");
2062
2062
  var import_utils13 = require("@fuel-ts/utils");
2063
2063
 
2064
2064
  // src/providers/transaction-request/hash-transaction.ts
2065
- var import_configs7 = require("@fuel-ts/address/configs");
2065
+ var import_configs6 = require("@fuel-ts/address/configs");
2066
2066
  var import_hasher = require("@fuel-ts/hasher");
2067
2067
  var import_math7 = require("@fuel-ts/math");
2068
2068
  var import_transactions6 = require("@fuel-ts/transactions");
@@ -2071,7 +2071,7 @@ var import_ramda2 = require("ramda");
2071
2071
  function hashTransaction(transactionRequest, chainId) {
2072
2072
  const transaction = transactionRequest.toTransaction();
2073
2073
  if (transaction.type === import_transactions6.TransactionType.Script) {
2074
- transaction.receiptsRoot = import_configs7.ZeroBytes32;
2074
+ transaction.receiptsRoot = import_configs6.ZeroBytes32;
2075
2075
  }
2076
2076
  transaction.inputs = transaction.inputs.map((input) => {
2077
2077
  const inputClone = (0, import_ramda2.clone)(input);
@@ -2093,10 +2093,10 @@ function hashTransaction(transactionRequest, chainId) {
2093
2093
  blockHeight: 0,
2094
2094
  txIndex: 0
2095
2095
  };
2096
- inputClone.txID = import_configs7.ZeroBytes32;
2096
+ inputClone.txID = import_configs6.ZeroBytes32;
2097
2097
  inputClone.outputIndex = 0;
2098
- inputClone.balanceRoot = import_configs7.ZeroBytes32;
2099
- inputClone.stateRoot = import_configs7.ZeroBytes32;
2098
+ inputClone.balanceRoot = import_configs6.ZeroBytes32;
2099
+ inputClone.stateRoot = import_configs6.ZeroBytes32;
2100
2100
  return inputClone;
2101
2101
  }
2102
2102
  default:
@@ -2107,8 +2107,8 @@ function hashTransaction(transactionRequest, chainId) {
2107
2107
  const outputClone = (0, import_ramda2.clone)(output);
2108
2108
  switch (outputClone.type) {
2109
2109
  case import_transactions6.OutputType.Contract: {
2110
- outputClone.balanceRoot = import_configs7.ZeroBytes32;
2111
- outputClone.stateRoot = import_configs7.ZeroBytes32;
2110
+ outputClone.balanceRoot = import_configs6.ZeroBytes32;
2111
+ outputClone.stateRoot = import_configs6.ZeroBytes32;
2112
2112
  return outputClone;
2113
2113
  }
2114
2114
  case import_transactions6.OutputType.Change: {
@@ -2116,9 +2116,9 @@ function hashTransaction(transactionRequest, chainId) {
2116
2116
  return outputClone;
2117
2117
  }
2118
2118
  case import_transactions6.OutputType.Variable: {
2119
- outputClone.to = import_configs7.ZeroBytes32;
2119
+ outputClone.to = import_configs6.ZeroBytes32;
2120
2120
  outputClone.amount = (0, import_math7.bn)(0);
2121
- outputClone.assetId = import_configs7.ZeroBytes32;
2121
+ outputClone.assetId = import_configs6.ZeroBytes32;
2122
2122
  return outputClone;
2123
2123
  }
2124
2124
  default:
@@ -2184,7 +2184,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
2184
2184
  } = {}) {
2185
2185
  super(rest);
2186
2186
  this.bytecodeWitnessIndex = bytecodeWitnessIndex ?? 0;
2187
- this.salt = (0, import_utils13.hexlify)(salt ?? import_configs8.ZeroBytes32);
2187
+ this.salt = (0, import_utils13.hexlify)(salt ?? import_configs7.ZeroBytes32);
2188
2188
  this.storageSlots = [...storageSlots ?? []];
2189
2189
  }
2190
2190
  /**
@@ -2202,7 +2202,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
2202
2202
  bytecodeLength: baseTransaction.witnesses[bytecodeWitnessIndex].dataLength / 4,
2203
2203
  bytecodeWitnessIndex,
2204
2204
  storageSlotsCount: storageSlots.length,
2205
- salt: this.salt ? (0, import_utils13.hexlify)(this.salt) : import_configs8.ZeroBytes32,
2205
+ salt: this.salt ? (0, import_utils13.hexlify)(this.salt) : import_configs7.ZeroBytes32,
2206
2206
  storageSlots
2207
2207
  };
2208
2208
  }
@@ -2252,7 +2252,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
2252
2252
  // src/providers/transaction-request/script-transaction-request.ts
2253
2253
  var import_abi_coder = require("@fuel-ts/abi-coder");
2254
2254
  var import_address2 = require("@fuel-ts/address");
2255
- var import_configs9 = require("@fuel-ts/address/configs");
2255
+ var import_configs8 = require("@fuel-ts/address/configs");
2256
2256
  var import_math9 = require("@fuel-ts/math");
2257
2257
  var import_transactions8 = require("@fuel-ts/transactions");
2258
2258
  var import_utils15 = require("@fuel-ts/utils");
@@ -2326,7 +2326,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
2326
2326
  ...super.getBaseTransaction(),
2327
2327
  scriptLength: script.length,
2328
2328
  scriptDataLength: scriptData.length,
2329
- receiptsRoot: import_configs9.ZeroBytes32,
2329
+ receiptsRoot: import_configs8.ZeroBytes32,
2330
2330
  script: (0, import_utils15.hexlify)(script),
2331
2331
  scriptData: (0, import_utils15.hexlify)(scriptData)
2332
2332
  };
@@ -2558,7 +2558,7 @@ var calculateTransactionFee = (params) => {
2558
2558
  };
2559
2559
 
2560
2560
  // src/providers/transaction-summary/operations.ts
2561
- var import_configs10 = require("@fuel-ts/address/configs");
2561
+ var import_configs9 = require("@fuel-ts/address/configs");
2562
2562
  var import_errors10 = require("@fuel-ts/errors");
2563
2563
  var import_math12 = require("@fuel-ts/math");
2564
2564
  var import_transactions13 = require("@fuel-ts/transactions");
@@ -2856,7 +2856,7 @@ function extractTransferOperationFromReceipt(receipt, contractInputs, changeOutp
2856
2856
  const { to: toAddress, assetId, amount } = receipt;
2857
2857
  let { from: fromAddress } = receipt;
2858
2858
  const toType = contractInputs.some((input) => input.contractID === toAddress) ? 0 /* contract */ : 1 /* account */;
2859
- if (import_configs10.ZeroBytes32 === fromAddress) {
2859
+ if (import_configs9.ZeroBytes32 === fromAddress) {
2860
2860
  const change = changeOutputs.find((output) => output.assetId === assetId);
2861
2861
  fromAddress = change?.to || fromAddress;
2862
2862
  }
@@ -3428,6 +3428,7 @@ var processGqlChain = (chain) => {
3428
3428
  gasPerByte: (0, import_math14.bn)(feeParams.gasPerByte),
3429
3429
  maxMessageDataLength: (0, import_math14.bn)(predicateParams.maxMessageDataLength),
3430
3430
  chainId: (0, import_math14.bn)(consensusParameters.chainId),
3431
+ baseAssetId: consensusParameters.baseAssetId,
3431
3432
  gasCosts
3432
3433
  },
3433
3434
  gasCosts,
@@ -3670,6 +3671,17 @@ var _Provider = class {
3670
3671
  } = this.getChain();
3671
3672
  return chainId.toNumber();
3672
3673
  }
3674
+ /**
3675
+ * Returns the base asset ID
3676
+ *
3677
+ * @returns A promise that resolves to the base asset ID
3678
+ */
3679
+ getBaseAssetId() {
3680
+ const {
3681
+ consensusParameters: { baseAssetId }
3682
+ } = this.getChain();
3683
+ return baseAssetId;
3684
+ }
3673
3685
  /**
3674
3686
  * Submits a transaction to the chain to be executed.
3675
3687
  *
@@ -4540,8 +4552,9 @@ var Account = class extends import_interfaces.AbstractAccount {
4540
4552
  * @param assetId - The asset ID to check the balance for.
4541
4553
  * @returns A promise that resolves to the balance amount.
4542
4554
  */
4543
- async getBalance(assetId = import_configs11.BaseAssetId) {
4544
- const amount = await this.provider.getBalance(this.address, assetId);
4555
+ async getBalance(assetId) {
4556
+ const assetIdToFetch = assetId ?? this.provider.getBaseAssetId();
4557
+ const amount = await this.provider.getBalance(this.address, assetIdToFetch);
4545
4558
  return amount;
4546
4559
  }
4547
4560
  /**
@@ -4579,9 +4592,10 @@ var Account = class extends import_interfaces.AbstractAccount {
4579
4592
  * @returns A promise that resolves when the resources are added to the transaction.
4580
4593
  */
4581
4594
  async fund(request, coinQuantities, fee) {
4595
+ const baseAssetId = this.provider.getBaseAssetId();
4582
4596
  const updatedQuantities = addAmountToAsset({
4583
4597
  amount: (0, import_math17.bn)(fee),
4584
- assetId: import_configs11.BaseAssetId,
4598
+ assetId: baseAssetId,
4585
4599
  coinQuantities
4586
4600
  });
4587
4601
  const quantitiesDict = {};
@@ -4605,8 +4619,8 @@ var Account = class extends import_interfaces.AbstractAccount {
4605
4619
  quantitiesDict[assetId].owned = quantitiesDict[assetId].owned.add(amount);
4606
4620
  cachedUtxos.push(input.id);
4607
4621
  }
4608
- } else if (input.recipient === owner && input.amount && quantitiesDict[import_configs11.BaseAssetId]) {
4609
- quantitiesDict[import_configs11.BaseAssetId].owned = quantitiesDict[import_configs11.BaseAssetId].owned.add(input.amount);
4622
+ } else if (input.recipient === owner && input.amount && quantitiesDict[baseAssetId]) {
4623
+ quantitiesDict[baseAssetId].owned = quantitiesDict[baseAssetId].owned.add(input.amount);
4610
4624
  cachedMessages.push(input.nonce);
4611
4625
  }
4612
4626
  }
@@ -4638,11 +4652,12 @@ var Account = class extends import_interfaces.AbstractAccount {
4638
4652
  * @param txParams - The transaction parameters (gasLimit, gasPrice, maturity).
4639
4653
  * @returns A promise that resolves to the prepared transaction request.
4640
4654
  */
4641
- async createTransfer(destination, amount, assetId = import_configs11.BaseAssetId, txParams = {}) {
4655
+ async createTransfer(destination, amount, assetId, txParams = {}) {
4642
4656
  const { minGasPrice } = this.provider.getGasConfig();
4657
+ const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
4643
4658
  const params = { gasPrice: minGasPrice, ...txParams };
4644
4659
  const request = new ScriptTransactionRequest(params);
4645
- request.addCoinOutput(import_address4.Address.fromAddressOrString(destination), amount, assetId);
4660
+ request.addCoinOutput(import_address4.Address.fromAddressOrString(destination), amount, assetIdToTransfer);
4646
4661
  const { maxFee, requiredQuantities, gasUsed, estimatedInputs } = await this.provider.getTransactionCost(request, [], {
4647
4662
  estimateTxDependencies: true,
4648
4663
  resourcesOwner: this
@@ -4668,14 +4683,15 @@ var Account = class extends import_interfaces.AbstractAccount {
4668
4683
  * @param txParams - The transaction parameters (gasLimit, gasPrice, maturity).
4669
4684
  * @returns A promise that resolves to the transaction response.
4670
4685
  */
4671
- async transfer(destination, amount, assetId = import_configs11.BaseAssetId, txParams = {}) {
4686
+ async transfer(destination, amount, assetId, txParams = {}) {
4672
4687
  if ((0, import_math17.bn)(amount).lte(0)) {
4673
4688
  throw new import_errors15.FuelError(
4674
4689
  import_errors15.ErrorCode.INVALID_TRANSFER_AMOUNT,
4675
4690
  "Transfer amount must be a positive number."
4676
4691
  );
4677
4692
  }
4678
- const request = await this.createTransfer(destination, amount, assetId, txParams);
4693
+ const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
4694
+ const request = await this.createTransfer(destination, amount, assetIdToTransfer, txParams);
4679
4695
  return this.sendTransaction(request, { estimateTxDependencies: false });
4680
4696
  }
4681
4697
  /**
@@ -4687,7 +4703,7 @@ var Account = class extends import_interfaces.AbstractAccount {
4687
4703
  * @param txParams - The optional transaction parameters.
4688
4704
  * @returns A promise that resolves to the transaction response.
4689
4705
  */
4690
- async transferToContract(contractId, amount, assetId = import_configs11.BaseAssetId, txParams = {}) {
4706
+ async transferToContract(contractId, amount, assetId, txParams = {}) {
4691
4707
  if ((0, import_math17.bn)(amount).lte(0)) {
4692
4708
  throw new import_errors15.FuelError(
4693
4709
  import_errors15.ErrorCode.INVALID_TRANSFER_AMOUNT,
@@ -4696,11 +4712,12 @@ var Account = class extends import_interfaces.AbstractAccount {
4696
4712
  }
4697
4713
  const contractAddress = import_address4.Address.fromAddressOrString(contractId);
4698
4714
  const { minGasPrice } = this.provider.getGasConfig();
4715
+ const assetIdToTransfer = assetId ?? this.provider.getBaseAssetId();
4699
4716
  const params = { gasPrice: minGasPrice, ...txParams };
4700
4717
  const { script, scriptData } = await assembleTransferToContractScript({
4701
4718
  hexlifiedContractId: contractAddress.toB256(),
4702
4719
  amountToTransfer: (0, import_math17.bn)(amount),
4703
- assetId
4720
+ assetId: assetIdToTransfer
4704
4721
  });
4705
4722
  const request = new ScriptTransactionRequest({
4706
4723
  ...params,
@@ -4710,7 +4727,7 @@ var Account = class extends import_interfaces.AbstractAccount {
4710
4727
  request.addContractInputAndOutput(contractAddress);
4711
4728
  const { maxFee, requiredQuantities, gasUsed } = await this.provider.getTransactionCost(
4712
4729
  request,
4713
- [{ amount: (0, import_math17.bn)(amount), assetId: String(assetId) }]
4730
+ [{ amount: (0, import_math17.bn)(amount), assetId: String(assetIdToTransfer) }]
4714
4731
  );
4715
4732
  request.gasLimit = (0, import_math17.bn)(params.gasLimit ?? gasUsed);
4716
4733
  this.validateGas({
@@ -4732,6 +4749,7 @@ var Account = class extends import_interfaces.AbstractAccount {
4732
4749
  */
4733
4750
  async withdrawToBaseLayer(recipient, amount, txParams = {}) {
4734
4751
  const { minGasPrice } = this.provider.getGasConfig();
4752
+ const baseAssetId = this.provider.getBaseAssetId();
4735
4753
  const recipientAddress = import_address4.Address.fromAddressOrString(recipient);
4736
4754
  const recipientDataArray = (0, import_utils27.arrayify)(
4737
4755
  "0x".concat(recipientAddress.toHexString().substring(2).padStart(64, "0"))
@@ -4746,7 +4764,7 @@ var Account = class extends import_interfaces.AbstractAccount {
4746
4764
  ]);
4747
4765
  const params = { script, gasPrice: minGasPrice, ...txParams };
4748
4766
  const request = new ScriptTransactionRequest(params);
4749
- const forwardingQuantities = [{ amount: (0, import_math17.bn)(amount), assetId: import_configs11.BaseAssetId }];
4767
+ const forwardingQuantities = [{ amount: (0, import_math17.bn)(amount), assetId: baseAssetId }];
4750
4768
  const { requiredQuantities, maxFee, gasUsed } = await this.provider.getTransactionCost(
4751
4769
  request,
4752
4770
  forwardingQuantities
@@ -7910,7 +7928,7 @@ var generateTestWallet = async (provider, quantities) => {
7910
7928
  };
7911
7929
 
7912
7930
  // src/test-utils/launchNode.ts
7913
- var import_configs12 = require("@fuel-ts/address/configs");
7931
+ var import_configs10 = require("@fuel-ts/address/configs");
7914
7932
  var import_math20 = require("@fuel-ts/math");
7915
7933
  var import_utils35 = require("@fuel-ts/utils");
7916
7934
  var import_cli_utils = require("@fuel-ts/utils/cli-utils");
@@ -8010,7 +8028,7 @@ var launchNode = async ({
8010
8028
  {
8011
8029
  owner: signer.address.toHexString(),
8012
8030
  amount: (0, import_math20.toHex)(1e9),
8013
- asset_id: import_configs12.BaseAssetId
8031
+ asset_id: import_utils35.defaultChainConfig?.consensus_parameters?.base_asset_id ?? import_configs10.ZeroBytes32
8014
8032
  }
8015
8033
  ]
8016
8034
  }
@@ -8076,9 +8094,10 @@ var launchNode = async ({
8076
8094
  })
8077
8095
  );
8078
8096
  var generateWallets = async (count, provider) => {
8097
+ const baseAssetId = provider.getBaseAssetId();
8079
8098
  const wallets = [];
8080
8099
  for (let i = 0; i < count; i += 1) {
8081
- const wallet = await generateTestWallet(provider, [[1e3, import_configs12.BaseAssetId]]);
8100
+ const wallet = await generateTestWallet(provider, [[1e3, baseAssetId]]);
8082
8101
  wallets.push(wallet);
8083
8102
  }
8084
8103
  return wallets;