@fuel-ts/account 0.0.0-rc-1962-20240328175938 → 0.0.0-rc-1895-20240328175953

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/index.mjs CHANGED
@@ -30,9 +30,9 @@ var __privateMethod = (obj, member, method) => {
30
30
  // src/account.ts
31
31
  import { Address as Address3 } from "@fuel-ts/address";
32
32
  import { BaseAssetId as BaseAssetId3 } from "@fuel-ts/address/configs";
33
- import { ErrorCode as ErrorCode14, FuelError as FuelError14 } from "@fuel-ts/errors";
33
+ import { ErrorCode as ErrorCode15, FuelError as FuelError15 } from "@fuel-ts/errors";
34
34
  import { AbstractAccount } from "@fuel-ts/interfaces";
35
- import { bn as bn16 } from "@fuel-ts/math";
35
+ import { bn as bn17 } from "@fuel-ts/math";
36
36
  import { arrayify as arrayify14 } from "@fuel-ts/utils";
37
37
 
38
38
  // src/providers/coin-quantity.ts
@@ -73,8 +73,8 @@ var addAmountToAsset = (params) => {
73
73
 
74
74
  // src/providers/provider.ts
75
75
  import { Address as Address2 } from "@fuel-ts/address";
76
- import { ErrorCode as ErrorCode12, FuelError as FuelError12 } from "@fuel-ts/errors";
77
- import { BN, bn as bn14, max } from "@fuel-ts/math";
76
+ import { ErrorCode as ErrorCode13, FuelError as FuelError13 } from "@fuel-ts/errors";
77
+ import { BN, bn as bn15, max } from "@fuel-ts/math";
78
78
  import {
79
79
  InputType as InputType6,
80
80
  TransactionType as TransactionType8,
@@ -1157,7 +1157,7 @@ var outputify = (value) => {
1157
1157
  // src/providers/transaction-request/transaction-request.ts
1158
1158
  import { Address, addressify } from "@fuel-ts/address";
1159
1159
  import { BaseAssetId as BaseAssetId2, ZeroBytes32 as ZeroBytes324 } from "@fuel-ts/address/configs";
1160
- import { bn as bn6 } from "@fuel-ts/math";
1160
+ import { bn as bn7 } from "@fuel-ts/math";
1161
1161
  import {
1162
1162
  PolicyType,
1163
1163
  TransactionCoder,
@@ -1562,6 +1562,76 @@ function sleep(time) {
1562
1562
  });
1563
1563
  }
1564
1564
 
1565
+ // src/providers/utils/extract-tx-error.ts
1566
+ import { ErrorCode as ErrorCode7, FuelError as FuelError7 } from "@fuel-ts/errors";
1567
+ import { bn as bn6 } from "@fuel-ts/math";
1568
+ import { ReceiptType as ReceiptType3 } from "@fuel-ts/transactions";
1569
+ import {
1570
+ FAILED_REQUIRE_SIGNAL,
1571
+ FAILED_ASSERT_EQ_SIGNAL,
1572
+ FAILED_ASSERT_NE_SIGNAL,
1573
+ FAILED_ASSERT_SIGNAL,
1574
+ FAILED_TRANSFER_TO_ADDRESS_SIGNAL as FAILED_TRANSFER_TO_ADDRESS_SIGNAL2,
1575
+ PANIC_REASONS,
1576
+ PANIC_DOC_URL
1577
+ } from "@fuel-ts/transactions/configs";
1578
+ var assemblePanicError = (status) => {
1579
+ let errorMessage = `The transaction reverted with reason: "${status.reason}".`;
1580
+ if (PANIC_REASONS.includes(status.reason)) {
1581
+ errorMessage = `${errorMessage}
1582
+
1583
+ You can read more about this error at:
1584
+
1585
+ ${PANIC_DOC_URL}#variant.${status.reason}`;
1586
+ }
1587
+ return errorMessage;
1588
+ };
1589
+ var stringify = (obj) => JSON.stringify(obj, null, 2);
1590
+ var assembleRevertError = (receipts, logs) => {
1591
+ let errorMessage = "The transaction reverted with an unknown reason.";
1592
+ const revertReceipt = receipts.find(({ type }) => type === ReceiptType3.Revert);
1593
+ if (revertReceipt) {
1594
+ const reasonHex = bn6(revertReceipt.val).toHex();
1595
+ switch (reasonHex) {
1596
+ case FAILED_REQUIRE_SIGNAL: {
1597
+ errorMessage = `The transaction reverted because a "require" statement has thrown ${logs.length ? stringify(logs[0]) : "an error."}.`;
1598
+ break;
1599
+ }
1600
+ case FAILED_ASSERT_EQ_SIGNAL: {
1601
+ const sufix = logs.length >= 2 ? ` comparing ${stringify(logs[1])} and ${stringify(logs[0])}.` : ".";
1602
+ errorMessage = `The transaction reverted because of an "assert_eq" statement${sufix}`;
1603
+ break;
1604
+ }
1605
+ case FAILED_ASSERT_NE_SIGNAL: {
1606
+ const sufix = logs.length >= 2 ? ` comparing ${stringify(logs[1])} and ${stringify(logs[0])}.` : ".";
1607
+ errorMessage = `The transaction reverted because of an "assert_ne" statement${sufix}`;
1608
+ break;
1609
+ }
1610
+ case FAILED_ASSERT_SIGNAL:
1611
+ errorMessage = `The transaction reverted because an "assert" statement failed to evaluate to true.`;
1612
+ break;
1613
+ case FAILED_TRANSFER_TO_ADDRESS_SIGNAL2:
1614
+ errorMessage = `The transaction reverted because it's missing an "OutputChange".`;
1615
+ break;
1616
+ default:
1617
+ errorMessage = `The transaction reverted with an unknown reason: ${revertReceipt.val}`;
1618
+ }
1619
+ }
1620
+ return errorMessage;
1621
+ };
1622
+ var extractTxError = (params) => {
1623
+ const { receipts, status, logs } = params;
1624
+ const isPanic = receipts.some(({ type }) => type === ReceiptType3.Panic);
1625
+ let err = status?.type === "FailureStatus" && isPanic ? assemblePanicError(status) : assembleRevertError(receipts, logs);
1626
+ err += `
1627
+
1628
+ logs: ${JSON.stringify(logs, null, 2)}`;
1629
+ err += `
1630
+
1631
+ receipts: ${JSON.stringify(receipts, null, 2)}`;
1632
+ return new FuelError7(ErrorCode7.SCRIPT_REVERTED, err);
1633
+ };
1634
+
1565
1635
  // src/providers/transaction-request/errors.ts
1566
1636
  var ChangeOutputCollisionError = class extends Error {
1567
1637
  name = "ChangeOutputCollisionError";
@@ -1624,10 +1694,10 @@ var BaseTransactionRequest = class {
1624
1694
  outputs,
1625
1695
  witnesses
1626
1696
  } = {}) {
1627
- this.gasPrice = bn6(gasPrice);
1697
+ this.gasPrice = bn7(gasPrice);
1628
1698
  this.maturity = maturity ?? 0;
1629
- this.witnessLimit = witnessLimit ? bn6(witnessLimit) : void 0;
1630
- this.maxFee = maxFee ? bn6(maxFee) : void 0;
1699
+ this.witnessLimit = witnessLimit ? bn7(witnessLimit) : void 0;
1700
+ this.maxFee = maxFee ? bn7(maxFee) : void 0;
1631
1701
  this.inputs = inputs ?? [];
1632
1702
  this.outputs = outputs ?? [];
1633
1703
  this.witnesses = witnesses ?? [];
@@ -2057,13 +2127,13 @@ var BaseTransactionRequest = class {
2057
2127
  assetId,
2058
2128
  owner: resourcesOwner || Address.fromRandom(),
2059
2129
  maturity: 0,
2060
- blockCreated: bn6(1),
2061
- txCreatedIdx: bn6(1)
2130
+ blockCreated: bn7(1),
2131
+ txCreatedIdx: bn7(1)
2062
2132
  }
2063
2133
  ]);
2064
2134
  }
2065
2135
  };
2066
- updateAssetInput(BaseAssetId2, bn6(1e11));
2136
+ updateAssetInput(BaseAssetId2, bn7(1e11));
2067
2137
  quantities.forEach((q) => updateAssetInput(q.assetId, q.amount));
2068
2138
  }
2069
2139
  /**
@@ -2074,7 +2144,7 @@ var BaseTransactionRequest = class {
2074
2144
  */
2075
2145
  getCoinOutputsQuantities() {
2076
2146
  const coinsQuantities = this.getCoinOutputs().map(({ amount, assetId }) => ({
2077
- amount: bn6(amount),
2147
+ amount: bn7(amount),
2078
2148
  assetId: assetId.toString()
2079
2149
  }));
2080
2150
  return coinsQuantities;
@@ -2103,7 +2173,7 @@ var BaseTransactionRequest = class {
2103
2173
  default:
2104
2174
  return;
2105
2175
  }
2106
- if (correspondingInput && "predicateGasUsed" in correspondingInput && bn6(correspondingInput.predicateGasUsed).gt(0)) {
2176
+ if (correspondingInput && "predicateGasUsed" in correspondingInput && bn7(correspondingInput.predicateGasUsed).gt(0)) {
2107
2177
  i.predicate = correspondingInput.predicate;
2108
2178
  i.predicateData = correspondingInput.predicateData;
2109
2179
  i.predicateGasUsed = correspondingInput.predicateGasUsed;
@@ -2114,14 +2184,14 @@ var BaseTransactionRequest = class {
2114
2184
 
2115
2185
  // src/providers/transaction-request/create-transaction-request.ts
2116
2186
  import { ZeroBytes32 as ZeroBytes326 } from "@fuel-ts/address/configs";
2117
- import { bn as bn8 } from "@fuel-ts/math";
2187
+ import { bn as bn9 } from "@fuel-ts/math";
2118
2188
  import { TransactionType as TransactionType3, OutputType as OutputType4 } from "@fuel-ts/transactions";
2119
2189
  import { arrayify as arrayify6, hexlify as hexlify9 } from "@fuel-ts/utils";
2120
2190
 
2121
2191
  // src/providers/transaction-request/hash-transaction.ts
2122
2192
  import { ZeroBytes32 as ZeroBytes325 } from "@fuel-ts/address/configs";
2123
2193
  import { uint64ToBytesBE, sha256 } from "@fuel-ts/hasher";
2124
- import { bn as bn7 } from "@fuel-ts/math";
2194
+ import { bn as bn8 } from "@fuel-ts/math";
2125
2195
  import { TransactionType as TransactionType2, InputType as InputType3, OutputType as OutputType3, TransactionCoder as TransactionCoder2 } from "@fuel-ts/transactions";
2126
2196
  import { concat as concat2 } from "@fuel-ts/utils";
2127
2197
  import { clone as clone2 } from "ramda";
@@ -2138,11 +2208,11 @@ function hashTransaction(transactionRequest, chainId) {
2138
2208
  blockHeight: 0,
2139
2209
  txIndex: 0
2140
2210
  };
2141
- inputClone.predicateGasUsed = bn7(0);
2211
+ inputClone.predicateGasUsed = bn8(0);
2142
2212
  return inputClone;
2143
2213
  }
2144
2214
  case InputType3.Message: {
2145
- inputClone.predicateGasUsed = bn7(0);
2215
+ inputClone.predicateGasUsed = bn8(0);
2146
2216
  return inputClone;
2147
2217
  }
2148
2218
  case InputType3.Contract: {
@@ -2169,12 +2239,12 @@ function hashTransaction(transactionRequest, chainId) {
2169
2239
  return outputClone;
2170
2240
  }
2171
2241
  case OutputType3.Change: {
2172
- outputClone.amount = bn7(0);
2242
+ outputClone.amount = bn8(0);
2173
2243
  return outputClone;
2174
2244
  }
2175
2245
  case OutputType3.Variable: {
2176
2246
  outputClone.to = ZeroBytes325;
2177
- outputClone.amount = bn7(0);
2247
+ outputClone.amount = bn8(0);
2178
2248
  outputClone.assetId = ZeroBytes325;
2179
2249
  return outputClone;
2180
2250
  }
@@ -2298,7 +2368,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
2298
2368
  }
2299
2369
  metadataGas(gasCosts) {
2300
2370
  return calculateMetadataGasForTxCreate({
2301
- contractBytesSize: bn8(arrayify6(this.witnesses[this.bytecodeWitnessIndex] || "0x").length),
2371
+ contractBytesSize: bn9(arrayify6(this.witnesses[this.bytecodeWitnessIndex] || "0x").length),
2302
2372
  gasCosts,
2303
2373
  stateRootSize: this.storageSlots.length,
2304
2374
  txBytesSize: this.byteSize()
@@ -2310,7 +2380,7 @@ var CreateTransactionRequest = class extends BaseTransactionRequest {
2310
2380
  import { Interface } from "@fuel-ts/abi-coder";
2311
2381
  import { addressify as addressify2 } from "@fuel-ts/address";
2312
2382
  import { ZeroBytes32 as ZeroBytes327 } from "@fuel-ts/address/configs";
2313
- import { bn as bn9 } from "@fuel-ts/math";
2383
+ import { bn as bn10 } from "@fuel-ts/math";
2314
2384
  import { InputType as InputType4, OutputType as OutputType5, TransactionType as TransactionType4 } from "@fuel-ts/transactions";
2315
2385
  import { arrayify as arrayify8, hexlify as hexlify10 } from "@fuel-ts/utils";
2316
2386
 
@@ -2364,7 +2434,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
2364
2434
  */
2365
2435
  constructor({ script, scriptData, gasLimit, ...rest } = {}) {
2366
2436
  super(rest);
2367
- this.gasLimit = bn9(gasLimit);
2437
+ this.gasLimit = bn10(gasLimit);
2368
2438
  this.script = arrayify8(script ?? returnZeroScript.bytes);
2369
2439
  this.scriptData = arrayify8(scriptData ?? returnZeroScript.encodeScriptData());
2370
2440
  this.abis = rest.abis;
@@ -2512,7 +2582,7 @@ var ScriptTransactionRequest = class extends BaseTransactionRequest {
2512
2582
  };
2513
2583
 
2514
2584
  // src/providers/transaction-request/utils.ts
2515
- import { ErrorCode as ErrorCode7, FuelError as FuelError7 } from "@fuel-ts/errors";
2585
+ import { ErrorCode as ErrorCode8, FuelError as FuelError8 } from "@fuel-ts/errors";
2516
2586
  import { TransactionType as TransactionType5 } from "@fuel-ts/transactions";
2517
2587
  var transactionRequestify = (obj) => {
2518
2588
  if (obj instanceof ScriptTransactionRequest || obj instanceof CreateTransactionRequest) {
@@ -2527,14 +2597,14 @@ var transactionRequestify = (obj) => {
2527
2597
  return CreateTransactionRequest.from(obj);
2528
2598
  }
2529
2599
  default: {
2530
- throw new FuelError7(ErrorCode7.INVALID_TRANSACTION_TYPE, `Invalid transaction type: ${type}.`);
2600
+ throw new FuelError8(ErrorCode8.INVALID_TRANSACTION_TYPE, `Invalid transaction type: ${type}.`);
2531
2601
  }
2532
2602
  }
2533
2603
  };
2534
2604
 
2535
2605
  // src/providers/transaction-response/transaction-response.ts
2536
- import { ErrorCode as ErrorCode11, FuelError as FuelError11 } from "@fuel-ts/errors";
2537
- import { bn as bn13 } from "@fuel-ts/math";
2606
+ import { ErrorCode as ErrorCode12, FuelError as FuelError12 } from "@fuel-ts/errors";
2607
+ import { bn as bn14 } from "@fuel-ts/math";
2538
2608
  import { TransactionCoder as TransactionCoder4 } from "@fuel-ts/transactions";
2539
2609
  import { arrayify as arrayify10 } from "@fuel-ts/utils";
2540
2610
 
@@ -2542,7 +2612,7 @@ import { arrayify as arrayify10 } from "@fuel-ts/utils";
2542
2612
  import { DateTime, hexlify as hexlify11 } from "@fuel-ts/utils";
2543
2613
 
2544
2614
  // src/providers/transaction-summary/calculate-transaction-fee.ts
2545
- import { bn as bn10 } from "@fuel-ts/math";
2615
+ import { bn as bn11 } from "@fuel-ts/math";
2546
2616
  import { PolicyType as PolicyType2, TransactionCoder as TransactionCoder3, TransactionType as TransactionType6 } from "@fuel-ts/transactions";
2547
2617
  import { arrayify as arrayify9 } from "@fuel-ts/utils";
2548
2618
  var calculateTransactionFee = (params) => {
@@ -2551,24 +2621,24 @@ var calculateTransactionFee = (params) => {
2551
2621
  rawPayload,
2552
2622
  consensusParameters: { gasCosts, feeParams }
2553
2623
  } = params;
2554
- const gasPerByte = bn10(feeParams.gasPerByte);
2555
- const gasPriceFactor = bn10(feeParams.gasPriceFactor);
2624
+ const gasPerByte = bn11(feeParams.gasPerByte);
2625
+ const gasPriceFactor = bn11(feeParams.gasPriceFactor);
2556
2626
  const transactionBytes = arrayify9(rawPayload);
2557
2627
  const [transaction] = new TransactionCoder3().decode(transactionBytes, 0);
2558
2628
  if (transaction.type === TransactionType6.Mint) {
2559
2629
  return {
2560
- fee: bn10(0),
2561
- minFee: bn10(0),
2562
- maxFee: bn10(0),
2563
- feeFromGasUsed: bn10(0)
2630
+ fee: bn11(0),
2631
+ minFee: bn11(0),
2632
+ maxFee: bn11(0),
2633
+ feeFromGasUsed: bn11(0)
2564
2634
  };
2565
2635
  }
2566
2636
  const { type, witnesses, inputs, policies } = transaction;
2567
- let metadataGas = bn10(0);
2568
- let gasLimit = bn10(0);
2637
+ let metadataGas = bn11(0);
2638
+ let gasLimit = bn11(0);
2569
2639
  if (type === TransactionType6.Create) {
2570
2640
  const { bytecodeWitnessIndex, storageSlots } = transaction;
2571
- const contractBytesSize = bn10(arrayify9(witnesses[bytecodeWitnessIndex].data).length);
2641
+ const contractBytesSize = bn11(arrayify9(witnesses[bytecodeWitnessIndex].data).length);
2572
2642
  metadataGas = calculateMetadataGasForTxCreate({
2573
2643
  contractBytesSize,
2574
2644
  gasCosts,
@@ -2587,12 +2657,12 @@ var calculateTransactionFee = (params) => {
2587
2657
  }
2588
2658
  const minGas = getMinGas({
2589
2659
  gasCosts,
2590
- gasPerByte: bn10(gasPerByte),
2660
+ gasPerByte: bn11(gasPerByte),
2591
2661
  inputs,
2592
2662
  metadataGas,
2593
2663
  txBytesSize: transactionBytes.length
2594
2664
  });
2595
- const gasPrice = bn10(policies.find((policy) => policy.type === PolicyType2.GasPrice)?.data);
2665
+ const gasPrice = bn11(policies.find((policy) => policy.type === PolicyType2.GasPrice)?.data);
2596
2666
  const witnessLimit = policies.find((policy) => policy.type === PolicyType2.WitnessLimit)?.data;
2597
2667
  const witnessesLength = witnesses.reduce((acc, wit) => acc + wit.dataLength, 0);
2598
2668
  const maxGas = getMaxGas({
@@ -2616,13 +2686,13 @@ var calculateTransactionFee = (params) => {
2616
2686
 
2617
2687
  // src/providers/transaction-summary/operations.ts
2618
2688
  import { ZeroBytes32 as ZeroBytes328 } from "@fuel-ts/address/configs";
2619
- import { ErrorCode as ErrorCode9, FuelError as FuelError9 } from "@fuel-ts/errors";
2620
- import { bn as bn12 } from "@fuel-ts/math";
2621
- import { ReceiptType as ReceiptType3, TransactionType as TransactionType7 } from "@fuel-ts/transactions";
2689
+ import { ErrorCode as ErrorCode10, FuelError as FuelError10 } from "@fuel-ts/errors";
2690
+ import { bn as bn13 } from "@fuel-ts/math";
2691
+ import { ReceiptType as ReceiptType4, TransactionType as TransactionType7 } from "@fuel-ts/transactions";
2622
2692
 
2623
2693
  // src/providers/transaction-summary/call.ts
2624
2694
  import { Interface as Interface2, calculateVmTxMemory } from "@fuel-ts/abi-coder";
2625
- import { bn as bn11 } from "@fuel-ts/math";
2695
+ import { bn as bn12 } from "@fuel-ts/math";
2626
2696
  var getFunctionCall = ({ abi, receipt, rawPayload, maxInputs }) => {
2627
2697
  const abiInterface = new Interface2(abi);
2628
2698
  const callFunctionSelector = receipt.param1.toHex(8);
@@ -2631,7 +2701,7 @@ var getFunctionCall = ({ abi, receipt, rawPayload, maxInputs }) => {
2631
2701
  let encodedArgs;
2632
2702
  if (functionFragment.isInputDataPointer) {
2633
2703
  if (rawPayload) {
2634
- const argsOffset = bn11(receipt.param2).sub(calculateVmTxMemory({ maxInputs: maxInputs.toNumber() })).toNumber();
2704
+ const argsOffset = bn12(receipt.param2).sub(calculateVmTxMemory({ maxInputs: maxInputs.toNumber() })).toNumber();
2635
2705
  encodedArgs = `0x${rawPayload.slice(2).slice(argsOffset * 2)}`;
2636
2706
  }
2637
2707
  } else {
@@ -2665,7 +2735,7 @@ var getFunctionCall = ({ abi, receipt, rawPayload, maxInputs }) => {
2665
2735
  };
2666
2736
 
2667
2737
  // src/providers/transaction-summary/input.ts
2668
- import { ErrorCode as ErrorCode8, FuelError as FuelError8 } from "@fuel-ts/errors";
2738
+ import { ErrorCode as ErrorCode9, FuelError as FuelError9 } from "@fuel-ts/errors";
2669
2739
  import { InputType as InputType5 } from "@fuel-ts/transactions";
2670
2740
  function getInputsByTypes(inputs, types) {
2671
2741
  return inputs.filter((i) => types.includes(i.type));
@@ -2703,8 +2773,8 @@ function getInputContractFromIndex(inputs, inputIndex) {
2703
2773
  return void 0;
2704
2774
  }
2705
2775
  if (contractInput.type !== InputType5.Contract) {
2706
- throw new FuelError8(
2707
- ErrorCode8.INVALID_TRANSACTION_INPUT,
2776
+ throw new FuelError9(
2777
+ ErrorCode9.INVALID_TRANSACTION_INPUT,
2708
2778
  `Contract input should be of type 'contract'.`
2709
2779
  );
2710
2780
  }
@@ -2792,8 +2862,8 @@ function getTransactionTypeName(transactionType) {
2792
2862
  case TransactionType7.Script:
2793
2863
  return "Script" /* Script */;
2794
2864
  default:
2795
- throw new FuelError9(
2796
- ErrorCode9.INVALID_TRANSACTION_TYPE,
2865
+ throw new FuelError10(
2866
+ ErrorCode10.INVALID_TRANSACTION_TYPE,
2797
2867
  `Invalid transaction type: ${transactionType}.`
2798
2868
  );
2799
2869
  }
@@ -2815,10 +2885,10 @@ function hasSameAssetId(a) {
2815
2885
  return (b) => a.assetId === b.assetId;
2816
2886
  }
2817
2887
  function getReceiptsCall(receipts) {
2818
- return getReceiptsByType(receipts, ReceiptType3.Call);
2888
+ return getReceiptsByType(receipts, ReceiptType4.Call);
2819
2889
  }
2820
2890
  function getReceiptsMessageOut(receipts) {
2821
- return getReceiptsByType(receipts, ReceiptType3.MessageOut);
2891
+ return getReceiptsByType(receipts, ReceiptType4.MessageOut);
2822
2892
  }
2823
2893
  var mergeAssets = (op1, op2) => {
2824
2894
  const assets1 = op1.assetsSent || [];
@@ -2831,7 +2901,7 @@ var mergeAssets = (op1, op2) => {
2831
2901
  if (!matchingAsset) {
2832
2902
  return asset1;
2833
2903
  }
2834
- const mergedAmount = bn12(asset1.amount).add(matchingAsset.amount);
2904
+ const mergedAmount = bn13(asset1.amount).add(matchingAsset.amount);
2835
2905
  return { ...asset1, amount: mergedAmount };
2836
2906
  });
2837
2907
  return mergedAssets.concat(filteredAssets);
@@ -2857,7 +2927,7 @@ function addOperation(operations, toAdd) {
2857
2927
  return allOperations;
2858
2928
  }
2859
2929
  function getReceiptsTransferOut(receipts) {
2860
- return getReceiptsByType(receipts, ReceiptType3.TransferOut);
2930
+ return getReceiptsByType(receipts, ReceiptType4.TransferOut);
2861
2931
  }
2862
2932
  function getWithdrawFromFuelOperations({
2863
2933
  inputs,
@@ -3017,11 +3087,11 @@ function getTransferOperations({
3017
3087
  });
3018
3088
  const transferReceipts = getReceiptsByType(
3019
3089
  receipts,
3020
- ReceiptType3.Transfer
3090
+ ReceiptType4.Transfer
3021
3091
  );
3022
3092
  const transferOutReceipts = getReceiptsByType(
3023
3093
  receipts,
3024
- ReceiptType3.TransferOut
3094
+ ReceiptType4.TransferOut
3025
3095
  );
3026
3096
  [...transferReceipts, ...transferOutReceipts].forEach((receipt) => {
3027
3097
  const operation = extractTransferOperationFromReceipt(receipt, contractInputs, changeOutputs);
@@ -3106,17 +3176,17 @@ function getOperations({
3106
3176
  }
3107
3177
 
3108
3178
  // src/providers/transaction-summary/receipt.ts
3109
- import { ReceiptType as ReceiptType4 } from "@fuel-ts/transactions";
3179
+ import { ReceiptType as ReceiptType5 } from "@fuel-ts/transactions";
3110
3180
  var processGqlReceipt = (gqlReceipt) => {
3111
3181
  const receipt = assembleReceiptByType(gqlReceipt);
3112
3182
  switch (receipt.type) {
3113
- case ReceiptType4.ReturnData: {
3183
+ case ReceiptType5.ReturnData: {
3114
3184
  return {
3115
3185
  ...receipt,
3116
3186
  data: gqlReceipt.data || "0x"
3117
3187
  };
3118
3188
  }
3119
- case ReceiptType4.LogData: {
3189
+ case ReceiptType5.LogData: {
3120
3190
  return {
3121
3191
  ...receipt,
3122
3192
  data: gqlReceipt.data || "0x"
@@ -3129,7 +3199,7 @@ var processGqlReceipt = (gqlReceipt) => {
3129
3199
  var extractMintedAssetsFromReceipts = (receipts) => {
3130
3200
  const mintedAssets = [];
3131
3201
  receipts.forEach((receipt) => {
3132
- if (receipt.type === ReceiptType4.Mint) {
3202
+ if (receipt.type === ReceiptType5.Mint) {
3133
3203
  mintedAssets.push({
3134
3204
  subId: receipt.subId,
3135
3205
  contractId: receipt.contractId,
@@ -3143,7 +3213,7 @@ var extractMintedAssetsFromReceipts = (receipts) => {
3143
3213
  var extractBurnedAssetsFromReceipts = (receipts) => {
3144
3214
  const burnedAssets = [];
3145
3215
  receipts.forEach((receipt) => {
3146
- if (receipt.type === ReceiptType4.Burn) {
3216
+ if (receipt.type === ReceiptType5.Burn) {
3147
3217
  burnedAssets.push({
3148
3218
  subId: receipt.subId,
3149
3219
  contractId: receipt.contractId,
@@ -3156,7 +3226,7 @@ var extractBurnedAssetsFromReceipts = (receipts) => {
3156
3226
  };
3157
3227
 
3158
3228
  // src/providers/transaction-summary/status.ts
3159
- import { ErrorCode as ErrorCode10, FuelError as FuelError10 } from "@fuel-ts/errors";
3229
+ import { ErrorCode as ErrorCode11, FuelError as FuelError11 } from "@fuel-ts/errors";
3160
3230
  var getTransactionStatusName = (gqlStatus) => {
3161
3231
  switch (gqlStatus) {
3162
3232
  case "FailureStatus":
@@ -3168,8 +3238,8 @@ var getTransactionStatusName = (gqlStatus) => {
3168
3238
  case "SqueezedOutStatus":
3169
3239
  return "squeezedout" /* squeezedout */;
3170
3240
  default:
3171
- throw new FuelError10(
3172
- ErrorCode10.INVALID_TRANSACTION_STATUS,
3241
+ throw new FuelError11(
3242
+ ErrorCode11.INVALID_TRANSACTION_STATUS,
3173
3243
  `Invalid transaction status: ${gqlStatus}.`
3174
3244
  );
3175
3245
  }
@@ -3282,12 +3352,12 @@ function assembleTransactionSummary(params) {
3282
3352
 
3283
3353
  // src/providers/transaction-response/getDecodedLogs.ts
3284
3354
  import { Interface as Interface3, BigNumberCoder } from "@fuel-ts/abi-coder";
3285
- import { ReceiptType as ReceiptType5 } from "@fuel-ts/transactions";
3355
+ import { ReceiptType as ReceiptType6 } from "@fuel-ts/transactions";
3286
3356
  function getDecodedLogs(receipts, mainAbi, externalAbis = {}) {
3287
3357
  return receipts.reduce((logs, receipt) => {
3288
- if (receipt.type === ReceiptType5.LogData || receipt.type === ReceiptType5.Log) {
3358
+ if (receipt.type === ReceiptType6.LogData || receipt.type === ReceiptType6.Log) {
3289
3359
  const interfaceToUse = new Interface3(externalAbis[receipt.id] || mainAbi);
3290
- const data = receipt.type === ReceiptType5.Log ? new BigNumberCoder("u64").encode(receipt.val0) : receipt.data;
3360
+ const data = receipt.type === ReceiptType6.Log ? new BigNumberCoder("u64").encode(receipt.val0) : receipt.data;
3291
3361
  const [decodedLog] = interfaceToUse.decodeLog(data, receipt.val1.toNumber());
3292
3362
  logs.push(decodedLog);
3293
3363
  }
@@ -3302,7 +3372,7 @@ var TransactionResponse = class {
3302
3372
  /** Current provider */
3303
3373
  provider;
3304
3374
  /** Gas used on the transaction */
3305
- gasUsed = bn13(0);
3375
+ gasUsed = bn14(0);
3306
3376
  /** The graphql Transaction with receipts object. */
3307
3377
  gqlTransaction;
3308
3378
  abis;
@@ -3407,8 +3477,8 @@ var TransactionResponse = class {
3407
3477
  });
3408
3478
  for await (const { statusChange } of subscription) {
3409
3479
  if (statusChange.type === "SqueezedOutStatus") {
3410
- throw new FuelError11(
3411
- ErrorCode11.TRANSACTION_SQUEEZED_OUT,
3480
+ throw new FuelError12(
3481
+ ErrorCode12.TRANSACTION_SQUEEZED_OUT,
3412
3482
  `Transaction Squeezed Out with reason: ${statusChange.reason}`
3413
3483
  );
3414
3484
  }
@@ -3430,14 +3500,26 @@ var TransactionResponse = class {
3430
3500
  gqlTransaction: this.gqlTransaction,
3431
3501
  ...transactionSummary
3432
3502
  };
3503
+ let logs = [];
3433
3504
  if (this.abis) {
3434
- const logs = getDecodedLogs(
3505
+ logs = getDecodedLogs(
3435
3506
  transactionSummary.receipts,
3436
3507
  this.abis.main,
3437
3508
  this.abis.otherContractsAbis
3438
3509
  );
3439
3510
  transactionResult.logs = logs;
3440
3511
  }
3512
+ if (transactionResult.isStatusFailure) {
3513
+ const {
3514
+ receipts,
3515
+ gqlTransaction: { status }
3516
+ } = transactionResult;
3517
+ throw extractTxError({
3518
+ receipts,
3519
+ status,
3520
+ logs
3521
+ });
3522
+ }
3441
3523
  return transactionResult;
3442
3524
  }
3443
3525
  /**
@@ -3446,14 +3528,7 @@ var TransactionResponse = class {
3446
3528
  * @param contractsAbiMap - The contracts ABI map.
3447
3529
  */
3448
3530
  async wait(contractsAbiMap) {
3449
- const result = await this.waitForResult(contractsAbiMap);
3450
- if (result.isStatusFailure) {
3451
- throw new FuelError11(
3452
- ErrorCode11.TRANSACTION_FAILED,
3453
- `Transaction failed: ${result.gqlTransaction.status.reason}`
3454
- );
3455
- }
3456
- return result;
3531
+ return this.waitForResult(contractsAbiMap);
3457
3532
  }
3458
3533
  };
3459
3534
 
@@ -3515,29 +3590,29 @@ var processGqlChain = (chain) => {
3515
3590
  const { contractParams, feeParams, predicateParams, scriptParams, txParams, gasCosts } = consensusParameters;
3516
3591
  return {
3517
3592
  name,
3518
- baseChainHeight: bn14(daHeight),
3593
+ baseChainHeight: bn15(daHeight),
3519
3594
  consensusParameters: {
3520
- contractMaxSize: bn14(contractParams.contractMaxSize),
3521
- maxInputs: bn14(txParams.maxInputs),
3522
- maxOutputs: bn14(txParams.maxOutputs),
3523
- maxWitnesses: bn14(txParams.maxWitnesses),
3524
- maxGasPerTx: bn14(txParams.maxGasPerTx),
3525
- maxScriptLength: bn14(scriptParams.maxScriptLength),
3526
- maxScriptDataLength: bn14(scriptParams.maxScriptDataLength),
3527
- maxStorageSlots: bn14(contractParams.maxStorageSlots),
3528
- maxPredicateLength: bn14(predicateParams.maxPredicateLength),
3529
- maxPredicateDataLength: bn14(predicateParams.maxPredicateDataLength),
3530
- maxGasPerPredicate: bn14(predicateParams.maxGasPerPredicate),
3531
- gasPriceFactor: bn14(feeParams.gasPriceFactor),
3532
- gasPerByte: bn14(feeParams.gasPerByte),
3533
- maxMessageDataLength: bn14(predicateParams.maxMessageDataLength),
3534
- chainId: bn14(consensusParameters.chainId),
3595
+ contractMaxSize: bn15(contractParams.contractMaxSize),
3596
+ maxInputs: bn15(txParams.maxInputs),
3597
+ maxOutputs: bn15(txParams.maxOutputs),
3598
+ maxWitnesses: bn15(txParams.maxWitnesses),
3599
+ maxGasPerTx: bn15(txParams.maxGasPerTx),
3600
+ maxScriptLength: bn15(scriptParams.maxScriptLength),
3601
+ maxScriptDataLength: bn15(scriptParams.maxScriptDataLength),
3602
+ maxStorageSlots: bn15(contractParams.maxStorageSlots),
3603
+ maxPredicateLength: bn15(predicateParams.maxPredicateLength),
3604
+ maxPredicateDataLength: bn15(predicateParams.maxPredicateDataLength),
3605
+ maxGasPerPredicate: bn15(predicateParams.maxGasPerPredicate),
3606
+ gasPriceFactor: bn15(feeParams.gasPriceFactor),
3607
+ gasPerByte: bn15(feeParams.gasPerByte),
3608
+ maxMessageDataLength: bn15(predicateParams.maxMessageDataLength),
3609
+ chainId: bn15(consensusParameters.chainId),
3535
3610
  gasCosts
3536
3611
  },
3537
3612
  gasCosts,
3538
3613
  latestBlock: {
3539
3614
  id: latestBlock.id,
3540
- height: bn14(latestBlock.header.height),
3615
+ height: bn15(latestBlock.header.height),
3541
3616
  time: latestBlock.header.time,
3542
3617
  transactions: latestBlock.transactions.map((i) => ({
3543
3618
  id: i.id
@@ -3607,8 +3682,8 @@ var _Provider = class {
3607
3682
  getChain() {
3608
3683
  const chain = _Provider.chainInfoCache[this.url];
3609
3684
  if (!chain) {
3610
- throw new FuelError12(
3611
- ErrorCode12.CHAIN_INFO_CACHE_EMPTY,
3685
+ throw new FuelError13(
3686
+ ErrorCode13.CHAIN_INFO_CACHE_EMPTY,
3612
3687
  "Chain info cache is empty. Make sure you have called `Provider.create` to initialize the provider."
3613
3688
  );
3614
3689
  }
@@ -3620,8 +3695,8 @@ var _Provider = class {
3620
3695
  getNode() {
3621
3696
  const node = _Provider.nodeInfoCache[this.url];
3622
3697
  if (!node) {
3623
- throw new FuelError12(
3624
- ErrorCode12.NODE_INFO_CACHE_EMPTY,
3698
+ throw new FuelError13(
3699
+ ErrorCode13.NODE_INFO_CACHE_EMPTY,
3625
3700
  "Node info cache is empty. Make sure you have called `Provider.create` to initialize the provider."
3626
3701
  );
3627
3702
  }
@@ -3668,8 +3743,8 @@ var _Provider = class {
3668
3743
  static ensureClientVersionIsSupported(nodeInfo) {
3669
3744
  const { isMajorSupported, isMinorSupported, supportedVersion } = checkFuelCoreVersionCompatibility(nodeInfo.nodeVersion);
3670
3745
  if (!isMajorSupported || !isMinorSupported) {
3671
- throw new FuelError12(
3672
- FuelError12.CODES.UNSUPPORTED_FUEL_CLIENT_VERSION,
3746
+ throw new FuelError13(
3747
+ FuelError13.CODES.UNSUPPORTED_FUEL_CLIENT_VERSION,
3673
3748
  `Fuel client version: ${nodeInfo.nodeVersion}, Supported version: ${supportedVersion}`
3674
3749
  );
3675
3750
  }
@@ -3732,7 +3807,7 @@ var _Provider = class {
3732
3807
  */
3733
3808
  async getBlockNumber() {
3734
3809
  const { chain } = await this.operations.getChain();
3735
- return bn14(chain.latestBlock.header.height, 10);
3810
+ return bn15(chain.latestBlock.header.height, 10);
3736
3811
  }
3737
3812
  /**
3738
3813
  * Returns the chain information.
@@ -3742,9 +3817,9 @@ var _Provider = class {
3742
3817
  async fetchNode() {
3743
3818
  const { nodeInfo } = await this.operations.getNodeInfo();
3744
3819
  const processedNodeInfo = {
3745
- maxDepth: bn14(nodeInfo.maxDepth),
3746
- maxTx: bn14(nodeInfo.maxTx),
3747
- minGasPrice: bn14(nodeInfo.minGasPrice),
3820
+ maxDepth: bn15(nodeInfo.maxDepth),
3821
+ maxTx: bn15(nodeInfo.maxTx),
3822
+ minGasPrice: bn15(nodeInfo.minGasPrice),
3748
3823
  nodeVersion: nodeInfo.nodeVersion,
3749
3824
  utxoValidation: nodeInfo.utxoValidation,
3750
3825
  vmBacktrace: nodeInfo.vmBacktrace,
@@ -3799,8 +3874,8 @@ var _Provider = class {
3799
3874
  const subscription = this.operations.submitAndAwait({ encodedTransaction });
3800
3875
  for await (const { submitAndAwait } of subscription) {
3801
3876
  if (submitAndAwait.type === "SqueezedOutStatus") {
3802
- throw new FuelError12(
3803
- ErrorCode12.TRANSACTION_SQUEEZED_OUT,
3877
+ throw new FuelError13(
3878
+ ErrorCode13.TRANSACTION_SQUEEZED_OUT,
3804
3879
  `Transaction Squeezed Out with reason: ${submitAndAwait.reason}`
3805
3880
  );
3806
3881
  }
@@ -3867,7 +3942,7 @@ var _Provider = class {
3867
3942
  } = response;
3868
3943
  if (inputs) {
3869
3944
  inputs.forEach((input, index) => {
3870
- if ("predicateGasUsed" in input && bn14(input.predicateGasUsed).gt(0)) {
3945
+ if ("predicateGasUsed" in input && bn15(input.predicateGasUsed).gt(0)) {
3871
3946
  transactionRequest.inputs[index].predicateGasUsed = input.predicateGasUsed;
3872
3947
  }
3873
3948
  });
@@ -3980,7 +4055,7 @@ var _Provider = class {
3980
4055
  txRequestClone.fundWithFakeUtxos(allQuantities, resourcesOwner?.address);
3981
4056
  if (estimatePredicates) {
3982
4057
  if (isScriptTransaction) {
3983
- txRequestClone.gasLimit = bn14(0);
4058
+ txRequestClone.gasLimit = bn15(0);
3984
4059
  }
3985
4060
  if (resourcesOwner && "populateTransactionPredicateData" in resourcesOwner) {
3986
4061
  resourcesOwner.populateTransactionPredicateData(txRequestClone);
@@ -3996,8 +4071,8 @@ var _Provider = class {
3996
4071
  let missingContractIds = [];
3997
4072
  let outputVariables = 0;
3998
4073
  if (isScriptTransaction && estimateTxDependencies) {
3999
- txRequestClone.gasPrice = bn14(0);
4000
- txRequestClone.gasLimit = bn14(maxGasPerTx.sub(maxGas).toNumber() * 0.9);
4074
+ txRequestClone.gasPrice = bn15(0);
4075
+ txRequestClone.gasLimit = bn15(maxGasPerTx.sub(maxGas).toNumber() * 0.9);
4001
4076
  const result = await this.estimateTxDependencies(txRequestClone);
4002
4077
  receipts = result.receipts;
4003
4078
  outputVariables = result.outputVariables;
@@ -4059,11 +4134,11 @@ var _Provider = class {
4059
4134
  return coins.map((coin) => ({
4060
4135
  id: coin.utxoId,
4061
4136
  assetId: coin.assetId,
4062
- amount: bn14(coin.amount),
4137
+ amount: bn15(coin.amount),
4063
4138
  owner: Address2.fromAddressOrString(coin.owner),
4064
- maturity: bn14(coin.maturity).toNumber(),
4065
- blockCreated: bn14(coin.blockCreated),
4066
- txCreatedIdx: bn14(coin.txCreatedIdx)
4139
+ maturity: bn15(coin.maturity).toNumber(),
4140
+ blockCreated: bn15(coin.blockCreated),
4141
+ txCreatedIdx: bn15(coin.txCreatedIdx)
4067
4142
  }));
4068
4143
  }
4069
4144
  /**
@@ -4100,9 +4175,9 @@ var _Provider = class {
4100
4175
  switch (coin.__typename) {
4101
4176
  case "MessageCoin":
4102
4177
  return {
4103
- amount: bn14(coin.amount),
4178
+ amount: bn15(coin.amount),
4104
4179
  assetId: coin.assetId,
4105
- daHeight: bn14(coin.daHeight),
4180
+ daHeight: bn15(coin.daHeight),
4106
4181
  sender: Address2.fromAddressOrString(coin.sender),
4107
4182
  recipient: Address2.fromAddressOrString(coin.recipient),
4108
4183
  nonce: coin.nonce
@@ -4110,12 +4185,12 @@ var _Provider = class {
4110
4185
  case "Coin":
4111
4186
  return {
4112
4187
  id: coin.utxoId,
4113
- amount: bn14(coin.amount),
4188
+ amount: bn15(coin.amount),
4114
4189
  assetId: coin.assetId,
4115
4190
  owner: Address2.fromAddressOrString(coin.owner),
4116
- maturity: bn14(coin.maturity).toNumber(),
4117
- blockCreated: bn14(coin.blockCreated),
4118
- txCreatedIdx: bn14(coin.txCreatedIdx)
4191
+ maturity: bn15(coin.maturity).toNumber(),
4192
+ blockCreated: bn15(coin.blockCreated),
4193
+ txCreatedIdx: bn15(coin.txCreatedIdx)
4119
4194
  };
4120
4195
  default:
4121
4196
  return null;
@@ -4132,13 +4207,13 @@ var _Provider = class {
4132
4207
  async getBlock(idOrHeight) {
4133
4208
  let variables;
4134
4209
  if (typeof idOrHeight === "number") {
4135
- variables = { height: bn14(idOrHeight).toString(10) };
4210
+ variables = { height: bn15(idOrHeight).toString(10) };
4136
4211
  } else if (idOrHeight === "latest") {
4137
4212
  variables = { height: (await this.getBlockNumber()).toString(10) };
4138
4213
  } else if (idOrHeight.length === 66) {
4139
4214
  variables = { blockId: idOrHeight };
4140
4215
  } else {
4141
- variables = { blockId: bn14(idOrHeight).toString(10) };
4216
+ variables = { blockId: bn15(idOrHeight).toString(10) };
4142
4217
  }
4143
4218
  const { block } = await this.operations.getBlock(variables);
4144
4219
  if (!block) {
@@ -4146,7 +4221,7 @@ var _Provider = class {
4146
4221
  }
4147
4222
  return {
4148
4223
  id: block.id,
4149
- height: bn14(block.header.height),
4224
+ height: bn15(block.header.height),
4150
4225
  time: block.header.time,
4151
4226
  transactionIds: block.transactions.map((tx) => tx.id)
4152
4227
  };
@@ -4161,7 +4236,7 @@ var _Provider = class {
4161
4236
  const { blocks: fetchedData } = await this.operations.getBlocks(params);
4162
4237
  const blocks = fetchedData.edges.map(({ node: block }) => ({
4163
4238
  id: block.id,
4164
- height: bn14(block.header.height),
4239
+ height: bn15(block.header.height),
4165
4240
  time: block.header.time,
4166
4241
  transactionIds: block.transactions.map((tx) => tx.id)
4167
4242
  }));
@@ -4176,7 +4251,7 @@ var _Provider = class {
4176
4251
  async getBlockWithTransactions(idOrHeight) {
4177
4252
  let variables;
4178
4253
  if (typeof idOrHeight === "number") {
4179
- variables = { blockHeight: bn14(idOrHeight).toString(10) };
4254
+ variables = { blockHeight: bn15(idOrHeight).toString(10) };
4180
4255
  } else if (idOrHeight === "latest") {
4181
4256
  variables = { blockHeight: (await this.getBlockNumber()).toString() };
4182
4257
  } else {
@@ -4188,7 +4263,7 @@ var _Provider = class {
4188
4263
  }
4189
4264
  return {
4190
4265
  id: block.id,
4191
- height: bn14(block.header.height, 10),
4266
+ height: bn15(block.header.height, 10),
4192
4267
  time: block.header.time,
4193
4268
  transactionIds: block.transactions.map((tx) => tx.id),
4194
4269
  transactions: block.transactions.map(
@@ -4237,7 +4312,7 @@ var _Provider = class {
4237
4312
  contract: Address2.fromAddressOrString(contractId).toB256(),
4238
4313
  asset: hexlify12(assetId)
4239
4314
  });
4240
- return bn14(contractBalance.amount, 10);
4315
+ return bn15(contractBalance.amount, 10);
4241
4316
  }
4242
4317
  /**
4243
4318
  * Returns the balance for the given owner for the given asset ID.
@@ -4251,7 +4326,7 @@ var _Provider = class {
4251
4326
  owner: Address2.fromAddressOrString(owner).toB256(),
4252
4327
  assetId: hexlify12(assetId)
4253
4328
  });
4254
- return bn14(balance.amount, 10);
4329
+ return bn15(balance.amount, 10);
4255
4330
  }
4256
4331
  /**
4257
4332
  * Returns balances for the given owner.
@@ -4269,7 +4344,7 @@ var _Provider = class {
4269
4344
  const balances = result.balances.edges.map((edge) => edge.node);
4270
4345
  return balances.map((balance) => ({
4271
4346
  assetId: balance.assetId,
4272
- amount: bn14(balance.amount)
4347
+ amount: bn15(balance.amount)
4273
4348
  }));
4274
4349
  }
4275
4350
  /**
@@ -4291,15 +4366,15 @@ var _Provider = class {
4291
4366
  sender: message.sender,
4292
4367
  recipient: message.recipient,
4293
4368
  nonce: message.nonce,
4294
- amount: bn14(message.amount),
4369
+ amount: bn15(message.amount),
4295
4370
  data: message.data
4296
4371
  }),
4297
4372
  sender: Address2.fromAddressOrString(message.sender),
4298
4373
  recipient: Address2.fromAddressOrString(message.recipient),
4299
4374
  nonce: message.nonce,
4300
- amount: bn14(message.amount),
4375
+ amount: bn15(message.amount),
4301
4376
  data: InputMessageCoder.decodeData(message.data),
4302
- daHeight: bn14(message.daHeight)
4377
+ daHeight: bn15(message.daHeight)
4303
4378
  }));
4304
4379
  }
4305
4380
  /**
@@ -4317,8 +4392,8 @@ var _Provider = class {
4317
4392
  nonce
4318
4393
  };
4319
4394
  if (commitBlockId && commitBlockHeight) {
4320
- throw new FuelError12(
4321
- ErrorCode12.INVALID_INPUT_PARAMETERS,
4395
+ throw new FuelError13(
4396
+ ErrorCode13.INVALID_INPUT_PARAMETERS,
4322
4397
  "commitBlockId and commitBlockHeight cannot be used together"
4323
4398
  );
4324
4399
  }
@@ -4352,41 +4427,41 @@ var _Provider = class {
4352
4427
  } = result.messageProof;
4353
4428
  return {
4354
4429
  messageProof: {
4355
- proofIndex: bn14(messageProof.proofIndex),
4430
+ proofIndex: bn15(messageProof.proofIndex),
4356
4431
  proofSet: messageProof.proofSet
4357
4432
  },
4358
4433
  blockProof: {
4359
- proofIndex: bn14(blockProof.proofIndex),
4434
+ proofIndex: bn15(blockProof.proofIndex),
4360
4435
  proofSet: blockProof.proofSet
4361
4436
  },
4362
4437
  messageBlockHeader: {
4363
4438
  id: messageBlockHeader.id,
4364
- daHeight: bn14(messageBlockHeader.daHeight),
4365
- transactionsCount: bn14(messageBlockHeader.transactionsCount),
4439
+ daHeight: bn15(messageBlockHeader.daHeight),
4440
+ transactionsCount: bn15(messageBlockHeader.transactionsCount),
4366
4441
  transactionsRoot: messageBlockHeader.transactionsRoot,
4367
- height: bn14(messageBlockHeader.height),
4442
+ height: bn15(messageBlockHeader.height),
4368
4443
  prevRoot: messageBlockHeader.prevRoot,
4369
4444
  time: messageBlockHeader.time,
4370
4445
  applicationHash: messageBlockHeader.applicationHash,
4371
4446
  messageReceiptRoot: messageBlockHeader.messageReceiptRoot,
4372
- messageReceiptCount: bn14(messageBlockHeader.messageReceiptCount)
4447
+ messageReceiptCount: bn15(messageBlockHeader.messageReceiptCount)
4373
4448
  },
4374
4449
  commitBlockHeader: {
4375
4450
  id: commitBlockHeader.id,
4376
- daHeight: bn14(commitBlockHeader.daHeight),
4377
- transactionsCount: bn14(commitBlockHeader.transactionsCount),
4451
+ daHeight: bn15(commitBlockHeader.daHeight),
4452
+ transactionsCount: bn15(commitBlockHeader.transactionsCount),
4378
4453
  transactionsRoot: commitBlockHeader.transactionsRoot,
4379
- height: bn14(commitBlockHeader.height),
4454
+ height: bn15(commitBlockHeader.height),
4380
4455
  prevRoot: commitBlockHeader.prevRoot,
4381
4456
  time: commitBlockHeader.time,
4382
4457
  applicationHash: commitBlockHeader.applicationHash,
4383
4458
  messageReceiptRoot: commitBlockHeader.messageReceiptRoot,
4384
- messageReceiptCount: bn14(commitBlockHeader.messageReceiptCount)
4459
+ messageReceiptCount: bn15(commitBlockHeader.messageReceiptCount)
4385
4460
  },
4386
4461
  sender: Address2.fromAddressOrString(sender),
4387
4462
  recipient: Address2.fromAddressOrString(recipient),
4388
4463
  nonce,
4389
- amount: bn14(amount),
4464
+ amount: bn15(amount),
4390
4465
  data
4391
4466
  };
4392
4467
  }
@@ -4409,10 +4484,10 @@ var _Provider = class {
4409
4484
  */
4410
4485
  async produceBlocks(amount, startTime) {
4411
4486
  const { produceBlocks: latestBlockHeight } = await this.operations.produceBlocks({
4412
- blocksToProduce: bn14(amount).toString(10),
4487
+ blocksToProduce: bn15(amount).toString(10),
4413
4488
  startTimestamp: startTime ? DateTime2.fromUnixMilliseconds(startTime).toTai64() : void 0
4414
4489
  });
4415
- return bn14(latestBlockHeight);
4490
+ return bn15(latestBlockHeight);
4416
4491
  }
4417
4492
  // eslint-disable-next-line @typescript-eslint/require-await
4418
4493
  async getTransactionResponse(transactionId) {
@@ -4435,8 +4510,8 @@ __publicField(Provider, "chainInfoCache", {});
4435
4510
  __publicField(Provider, "nodeInfoCache", {});
4436
4511
 
4437
4512
  // src/providers/transaction-summary/get-transaction-summary.ts
4438
- import { ErrorCode as ErrorCode13, FuelError as FuelError13 } from "@fuel-ts/errors";
4439
- import { bn as bn15 } from "@fuel-ts/math";
4513
+ import { ErrorCode as ErrorCode14, FuelError as FuelError14 } from "@fuel-ts/errors";
4514
+ import { bn as bn16 } from "@fuel-ts/math";
4440
4515
  import { TransactionCoder as TransactionCoder6 } from "@fuel-ts/transactions";
4441
4516
  import { arrayify as arrayify12 } from "@fuel-ts/utils";
4442
4517
  async function getTransactionSummary(params) {
@@ -4445,8 +4520,8 @@ async function getTransactionSummary(params) {
4445
4520
  transactionId: id
4446
4521
  });
4447
4522
  if (!gqlTransaction) {
4448
- throw new FuelError13(
4449
- ErrorCode13.TRANSACTION_NOT_FOUND,
4523
+ throw new FuelError14(
4524
+ ErrorCode14.TRANSACTION_NOT_FOUND,
4450
4525
  `Transaction not found for given id: ${id}.`
4451
4526
  );
4452
4527
  }
@@ -4464,8 +4539,8 @@ async function getTransactionSummary(params) {
4464
4539
  transaction: decodedTransaction,
4465
4540
  transactionBytes: arrayify12(gqlTransaction.rawPayload),
4466
4541
  gqlTransactionStatus: gqlTransaction.status,
4467
- gasPerByte: bn15(gasPerByte),
4468
- gasPriceFactor: bn15(gasPriceFactor),
4542
+ gasPerByte: bn16(gasPerByte),
4543
+ gasPriceFactor: bn16(gasPriceFactor),
4469
4544
  abiMap,
4470
4545
  maxInputs,
4471
4546
  gasCosts
@@ -4719,7 +4794,7 @@ var Account = class extends AbstractAccount {
4719
4794
  */
4720
4795
  get provider() {
4721
4796
  if (!this._provider) {
4722
- throw new FuelError14(ErrorCode14.MISSING_PROVIDER, "Provider not set");
4797
+ throw new FuelError15(ErrorCode15.MISSING_PROVIDER, "Provider not set");
4723
4798
  }
4724
4799
  return this._provider;
4725
4800
  }
@@ -4771,8 +4846,8 @@ var Account = class extends AbstractAccount {
4771
4846
  if (!hasNextPage) {
4772
4847
  break;
4773
4848
  }
4774
- throw new FuelError14(
4775
- ErrorCode14.NOT_SUPPORTED,
4849
+ throw new FuelError15(
4850
+ ErrorCode15.NOT_SUPPORTED,
4776
4851
  `Wallets containing more than ${pageSize} coins exceed the current supported limit.`
4777
4852
  );
4778
4853
  }
@@ -4797,8 +4872,8 @@ var Account = class extends AbstractAccount {
4797
4872
  if (!hasNextPage) {
4798
4873
  break;
4799
4874
  }
4800
- throw new FuelError14(
4801
- ErrorCode14.NOT_SUPPORTED,
4875
+ throw new FuelError15(
4876
+ ErrorCode15.NOT_SUPPORTED,
4802
4877
  `Wallets containing more than ${pageSize} messages exceed the current supported limit.`
4803
4878
  );
4804
4879
  }
@@ -4833,8 +4908,8 @@ var Account = class extends AbstractAccount {
4833
4908
  if (!hasNextPage) {
4834
4909
  break;
4835
4910
  }
4836
- throw new FuelError14(
4837
- ErrorCode14.NOT_SUPPORTED,
4911
+ throw new FuelError15(
4912
+ ErrorCode15.NOT_SUPPORTED,
4838
4913
  `Wallets containing more than ${pageSize} balances exceed the current supported limit.`
4839
4914
  );
4840
4915
  }
@@ -4850,7 +4925,7 @@ var Account = class extends AbstractAccount {
4850
4925
  */
4851
4926
  async fund(request, coinQuantities, fee) {
4852
4927
  const updatedQuantities = addAmountToAsset({
4853
- amount: bn16(fee),
4928
+ amount: bn17(fee),
4854
4929
  assetId: BaseAssetId3,
4855
4930
  coinQuantities
4856
4931
  });
@@ -4858,7 +4933,7 @@ var Account = class extends AbstractAccount {
4858
4933
  updatedQuantities.forEach(({ amount, assetId }) => {
4859
4934
  quantitiesDict[assetId] = {
4860
4935
  required: amount,
4861
- owned: bn16(0)
4936
+ owned: bn17(0)
4862
4937
  };
4863
4938
  });
4864
4939
  const cachedUtxos = [];
@@ -4871,7 +4946,7 @@ var Account = class extends AbstractAccount {
4871
4946
  if (isCoin2) {
4872
4947
  const assetId = String(input.assetId);
4873
4948
  if (input.owner === owner && quantitiesDict[assetId]) {
4874
- const amount = bn16(input.amount);
4949
+ const amount = bn17(input.amount);
4875
4950
  quantitiesDict[assetId].owned = quantitiesDict[assetId].owned.add(amount);
4876
4951
  cachedUtxos.push(input.id);
4877
4952
  }
@@ -4917,8 +4992,8 @@ var Account = class extends AbstractAccount {
4917
4992
  estimateTxDependencies: true,
4918
4993
  resourcesOwner: this
4919
4994
  });
4920
- request.gasPrice = bn16(txParams.gasPrice ?? minGasPrice);
4921
- request.gasLimit = bn16(txParams.gasLimit ?? gasUsed);
4995
+ request.gasPrice = bn17(txParams.gasPrice ?? minGasPrice);
4996
+ request.gasLimit = bn17(txParams.gasLimit ?? gasUsed);
4922
4997
  this.validateGas({
4923
4998
  gasUsed,
4924
4999
  gasPrice: request.gasPrice,
@@ -4939,9 +5014,9 @@ var Account = class extends AbstractAccount {
4939
5014
  * @returns A promise that resolves to the transaction response.
4940
5015
  */
4941
5016
  async transfer(destination, amount, assetId = BaseAssetId3, txParams = {}) {
4942
- if (bn16(amount).lte(0)) {
4943
- throw new FuelError14(
4944
- ErrorCode14.INVALID_TRANSFER_AMOUNT,
5017
+ if (bn17(amount).lte(0)) {
5018
+ throw new FuelError15(
5019
+ ErrorCode15.INVALID_TRANSFER_AMOUNT,
4945
5020
  "Transfer amount must be a positive number."
4946
5021
  );
4947
5022
  }
@@ -4958,9 +5033,9 @@ var Account = class extends AbstractAccount {
4958
5033
  * @returns A promise that resolves to the transaction response.
4959
5034
  */
4960
5035
  async transferToContract(contractId, amount, assetId = BaseAssetId3, txParams = {}) {
4961
- if (bn16(amount).lte(0)) {
4962
- throw new FuelError14(
4963
- ErrorCode14.INVALID_TRANSFER_AMOUNT,
5036
+ if (bn17(amount).lte(0)) {
5037
+ throw new FuelError15(
5038
+ ErrorCode15.INVALID_TRANSFER_AMOUNT,
4964
5039
  "Transfer amount must be a positive number."
4965
5040
  );
4966
5041
  }
@@ -4969,7 +5044,7 @@ var Account = class extends AbstractAccount {
4969
5044
  const params = { gasPrice: minGasPrice, ...txParams };
4970
5045
  const { script, scriptData } = await assembleTransferToContractScript({
4971
5046
  hexlifiedContractId: contractAddress.toB256(),
4972
- amountToTransfer: bn16(amount),
5047
+ amountToTransfer: bn17(amount),
4973
5048
  assetId
4974
5049
  });
4975
5050
  const request = new ScriptTransactionRequest({
@@ -4980,9 +5055,9 @@ var Account = class extends AbstractAccount {
4980
5055
  request.addContractInputAndOutput(contractAddress);
4981
5056
  const { maxFee, requiredQuantities, gasUsed } = await this.provider.getTransactionCost(
4982
5057
  request,
4983
- [{ amount: bn16(amount), assetId: String(assetId) }]
5058
+ [{ amount: bn17(amount), assetId: String(assetId) }]
4984
5059
  );
4985
- request.gasLimit = bn16(params.gasLimit ?? gasUsed);
5060
+ request.gasLimit = bn17(params.gasLimit ?? gasUsed);
4986
5061
  this.validateGas({
4987
5062
  gasUsed,
4988
5063
  gasPrice: request.gasPrice,
@@ -5007,7 +5082,7 @@ var Account = class extends AbstractAccount {
5007
5082
  "0x".concat(recipientAddress.toHexString().substring(2).padStart(64, "0"))
5008
5083
  );
5009
5084
  const amountDataArray = arrayify14(
5010
- "0x".concat(bn16(amount).toHex().substring(2).padStart(16, "0"))
5085
+ "0x".concat(bn17(amount).toHex().substring(2).padStart(16, "0"))
5011
5086
  );
5012
5087
  const script = new Uint8Array([
5013
5088
  ...arrayify14(withdrawScript.bytes),
@@ -5016,12 +5091,12 @@ var Account = class extends AbstractAccount {
5016
5091
  ]);
5017
5092
  const params = { script, gasPrice: minGasPrice, ...txParams };
5018
5093
  const request = new ScriptTransactionRequest(params);
5019
- const forwardingQuantities = [{ amount: bn16(amount), assetId: BaseAssetId3 }];
5094
+ const forwardingQuantities = [{ amount: bn17(amount), assetId: BaseAssetId3 }];
5020
5095
  const { requiredQuantities, maxFee, gasUsed } = await this.provider.getTransactionCost(
5021
5096
  request,
5022
5097
  forwardingQuantities
5023
5098
  );
5024
- request.gasLimit = bn16(params.gasLimit ?? gasUsed);
5099
+ request.gasLimit = bn17(params.gasLimit ?? gasUsed);
5025
5100
  this.validateGas({
5026
5101
  gasUsed,
5027
5102
  gasPrice: request.gasPrice,
@@ -5033,7 +5108,7 @@ var Account = class extends AbstractAccount {
5033
5108
  }
5034
5109
  async signMessage(message) {
5035
5110
  if (!this._connector) {
5036
- throw new FuelError14(ErrorCode14.MISSING_CONNECTOR, "A connector is required to sign messages.");
5111
+ throw new FuelError15(ErrorCode15.MISSING_CONNECTOR, "A connector is required to sign messages.");
5037
5112
  }
5038
5113
  return this._connector.signMessage(this.address.toString(), message);
5039
5114
  }
@@ -5045,8 +5120,8 @@ var Account = class extends AbstractAccount {
5045
5120
  */
5046
5121
  async signTransaction(transactionRequestLike) {
5047
5122
  if (!this._connector) {
5048
- throw new FuelError14(
5049
- ErrorCode14.MISSING_CONNECTOR,
5123
+ throw new FuelError15(
5124
+ ErrorCode15.MISSING_CONNECTOR,
5050
5125
  "A connector is required to sign transactions."
5051
5126
  );
5052
5127
  }
@@ -5093,14 +5168,14 @@ var Account = class extends AbstractAccount {
5093
5168
  minGasPrice
5094
5169
  }) {
5095
5170
  if (minGasPrice.gt(gasPrice)) {
5096
- throw new FuelError14(
5097
- ErrorCode14.GAS_PRICE_TOO_LOW,
5171
+ throw new FuelError15(
5172
+ ErrorCode15.GAS_PRICE_TOO_LOW,
5098
5173
  `Gas price '${gasPrice}' is lower than the required: '${minGasPrice}'.`
5099
5174
  );
5100
5175
  }
5101
5176
  if (gasUsed.gt(gasLimit)) {
5102
- throw new FuelError14(
5103
- ErrorCode14.GAS_LIMIT_TOO_LOW,
5177
+ throw new FuelError15(
5178
+ ErrorCode15.GAS_LIMIT_TOO_LOW,
5104
5179
  `Gas limit '${gasLimit}' is lower than the required: '${gasUsed}'.`
5105
5180
  );
5106
5181
  }
@@ -5231,7 +5306,7 @@ import {
5231
5306
  decryptJsonWalletData,
5232
5307
  encryptJsonWalletData
5233
5308
  } from "@fuel-ts/crypto";
5234
- import { ErrorCode as ErrorCode15, FuelError as FuelError15 } from "@fuel-ts/errors";
5309
+ import { ErrorCode as ErrorCode16, FuelError as FuelError16 } from "@fuel-ts/errors";
5235
5310
  import { hexlify as hexlify14 } from "@fuel-ts/utils";
5236
5311
  import { v4 as uuidv4 } from "uuid";
5237
5312
  var DEFAULT_KDF_PARAMS_LOG_N = 13;
@@ -5309,8 +5384,8 @@ async function decryptKeystoreWallet(jsonWallet, password) {
5309
5384
  const macHashUint8Array = keccak256(data);
5310
5385
  const macHash = stringFromBuffer(macHashUint8Array, "hex");
5311
5386
  if (mac !== macHash) {
5312
- throw new FuelError15(
5313
- ErrorCode15.INVALID_PASSWORD,
5387
+ throw new FuelError16(
5388
+ ErrorCode16.INVALID_PASSWORD,
5314
5389
  "Failed to decrypt the keystore wallet, the provided password is incorrect."
5315
5390
  );
5316
5391
  }
@@ -5432,15 +5507,15 @@ var BaseWalletUnlocked = class extends Account {
5432
5507
  __publicField(BaseWalletUnlocked, "defaultPath", "m/44'/1179993420'/0'/0/0");
5433
5508
 
5434
5509
  // src/hdwallet/hdwallet.ts
5435
- import { ErrorCode as ErrorCode18, FuelError as FuelError18 } from "@fuel-ts/errors";
5510
+ import { ErrorCode as ErrorCode19, FuelError as FuelError19 } from "@fuel-ts/errors";
5436
5511
  import { sha256 as sha2564 } from "@fuel-ts/hasher";
5437
- import { bn as bn17, toBytes as toBytes2, toHex } from "@fuel-ts/math";
5512
+ import { bn as bn18, toBytes as toBytes2, toHex } from "@fuel-ts/math";
5438
5513
  import { arrayify as arrayify18, hexlify as hexlify17, concat as concat5 } from "@fuel-ts/utils";
5439
5514
  import { toBeHex, dataSlice as dataSlice2, encodeBase58 as encodeBase582, decodeBase58, computeHmac as computeHmac2, ripemd160 } from "ethers";
5440
5515
 
5441
5516
  // src/mnemonic/mnemonic.ts
5442
5517
  import { randomBytes as randomBytes3 } from "@fuel-ts/crypto";
5443
- import { ErrorCode as ErrorCode17, FuelError as FuelError17 } from "@fuel-ts/errors";
5518
+ import { ErrorCode as ErrorCode18, FuelError as FuelError18 } from "@fuel-ts/errors";
5444
5519
  import { sha256 as sha2563 } from "@fuel-ts/hasher";
5445
5520
  import { arrayify as arrayify17, hexlify as hexlify16, concat as concat4 } from "@fuel-ts/utils";
5446
5521
  import { dataSlice, pbkdf2, computeHmac, encodeBase58 } from "ethers";
@@ -7504,7 +7579,7 @@ var Language = /* @__PURE__ */ ((Language2) => {
7504
7579
  })(Language || {});
7505
7580
 
7506
7581
  // src/mnemonic/utils.ts
7507
- import { ErrorCode as ErrorCode16, FuelError as FuelError16 } from "@fuel-ts/errors";
7582
+ import { ErrorCode as ErrorCode17, FuelError as FuelError17 } from "@fuel-ts/errors";
7508
7583
  import { sha256 as sha2562 } from "@fuel-ts/hasher";
7509
7584
  import { arrayify as arrayify16 } from "@fuel-ts/utils";
7510
7585
  function toUtf8Bytes(stri) {
@@ -7521,8 +7596,8 @@ function toUtf8Bytes(stri) {
7521
7596
  i += 1;
7522
7597
  const c2 = str.charCodeAt(i);
7523
7598
  if (i >= str.length || (c2 & 64512) !== 56320) {
7524
- throw new FuelError16(
7525
- ErrorCode16.INVALID_INPUT_PARAMETERS,
7599
+ throw new FuelError17(
7600
+ ErrorCode17.INVALID_INPUT_PARAMETERS,
7526
7601
  "Invalid UTF-8 in the input string."
7527
7602
  );
7528
7603
  }
@@ -7585,8 +7660,8 @@ function mnemonicWordsToEntropy(words, wordlist) {
7585
7660
  for (let i = 0; i < words.length; i += 1) {
7586
7661
  const index = wordlist.indexOf(words[i].normalize("NFKD"));
7587
7662
  if (index === -1) {
7588
- throw new FuelError16(
7589
- ErrorCode16.INVALID_MNEMONIC,
7663
+ throw new FuelError17(
7664
+ ErrorCode17.INVALID_MNEMONIC,
7590
7665
  `Invalid mnemonic: the word '${words[i]}' is not found in the provided wordlist.`
7591
7666
  );
7592
7667
  }
@@ -7602,8 +7677,8 @@ function mnemonicWordsToEntropy(words, wordlist) {
7602
7677
  const checksumMask = getUpperMask(checksumBits);
7603
7678
  const checksum = arrayify16(sha2562(entropy.slice(0, entropyBits / 8)))[0] & checksumMask;
7604
7679
  if (checksum !== (entropy[entropy.length - 1] & checksumMask)) {
7605
- throw new FuelError16(
7606
- ErrorCode16.INVALID_CHECKSUM,
7680
+ throw new FuelError17(
7681
+ ErrorCode17.INVALID_CHECKSUM,
7607
7682
  "Checksum validation failed for the provided mnemonic."
7608
7683
  );
7609
7684
  }
@@ -7617,16 +7692,16 @@ var TestnetPRV = "0x04358394";
7617
7692
  var MNEMONIC_SIZES = [12, 15, 18, 21, 24];
7618
7693
  function assertWordList(wordlist) {
7619
7694
  if (wordlist.length !== 2048) {
7620
- throw new FuelError17(
7621
- ErrorCode17.INVALID_WORD_LIST,
7695
+ throw new FuelError18(
7696
+ ErrorCode18.INVALID_WORD_LIST,
7622
7697
  `Expected word list length of 2048, but got ${wordlist.length}.`
7623
7698
  );
7624
7699
  }
7625
7700
  }
7626
7701
  function assertEntropy(entropy) {
7627
7702
  if (entropy.length % 4 !== 0 || entropy.length < 16 || entropy.length > 32) {
7628
- throw new FuelError17(
7629
- ErrorCode17.INVALID_ENTROPY,
7703
+ throw new FuelError18(
7704
+ ErrorCode18.INVALID_ENTROPY,
7630
7705
  `Entropy should be between 16 and 32 bytes and a multiple of 4, but got ${entropy.length} bytes.`
7631
7706
  );
7632
7707
  }
@@ -7636,7 +7711,7 @@ function assertMnemonic(words) {
7636
7711
  const errorMsg = `Invalid mnemonic size. Expected one of [${MNEMONIC_SIZES.join(
7637
7712
  ", "
7638
7713
  )}] words, but got ${words.length}.`;
7639
- throw new FuelError17(ErrorCode17.INVALID_MNEMONIC, errorMsg);
7714
+ throw new FuelError18(ErrorCode18.INVALID_MNEMONIC, errorMsg);
7640
7715
  }
7641
7716
  }
7642
7717
  var Mnemonic = class {
@@ -7754,8 +7829,8 @@ var Mnemonic = class {
7754
7829
  static masterKeysFromSeed(seed) {
7755
7830
  const seedArray = arrayify17(seed);
7756
7831
  if (seedArray.length < 16 || seedArray.length > 64) {
7757
- throw new FuelError17(
7758
- ErrorCode17.INVALID_SEED,
7832
+ throw new FuelError18(
7833
+ ErrorCode18.INVALID_SEED,
7759
7834
  `Seed length should be between 16 and 64 bytes, but received ${seedArray.length} bytes.`
7760
7835
  );
7761
7836
  }
@@ -7832,7 +7907,7 @@ function isValidExtendedKey(extendedKey) {
7832
7907
  function parsePath(path, depth = 0) {
7833
7908
  const components = path.split("/");
7834
7909
  if (components.length === 0 || components[0] === "m" && depth !== 0) {
7835
- throw new FuelError18(ErrorCode18.HD_WALLET_ERROR, `invalid path - ${path}`);
7910
+ throw new FuelError19(ErrorCode19.HD_WALLET_ERROR, `invalid path - ${path}`);
7836
7911
  }
7837
7912
  if (components[0] === "m") {
7838
7913
  components.shift();
@@ -7861,8 +7936,8 @@ var HDWallet = class {
7861
7936
  this.privateKey = hexlify17(config.privateKey);
7862
7937
  } else {
7863
7938
  if (!config.publicKey) {
7864
- throw new FuelError18(
7865
- ErrorCode18.HD_WALLET_ERROR,
7939
+ throw new FuelError19(
7940
+ ErrorCode19.HD_WALLET_ERROR,
7866
7941
  "Both public and private Key cannot be missing. At least one should be provided."
7867
7942
  );
7868
7943
  }
@@ -7891,8 +7966,8 @@ var HDWallet = class {
7891
7966
  const data = new Uint8Array(37);
7892
7967
  if (index & HARDENED_INDEX) {
7893
7968
  if (!privateKey) {
7894
- throw new FuelError18(
7895
- ErrorCode18.HD_WALLET_ERROR,
7969
+ throw new FuelError19(
7970
+ ErrorCode19.HD_WALLET_ERROR,
7896
7971
  "Cannot derive a hardened index without a private Key."
7897
7972
  );
7898
7973
  }
@@ -7906,7 +7981,7 @@ var HDWallet = class {
7906
7981
  const IR = bytes.slice(32);
7907
7982
  if (privateKey) {
7908
7983
  const N = "0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141";
7909
- const ki = bn17(IL).add(privateKey).mod(N).toBytes(32);
7984
+ const ki = bn18(IL).add(privateKey).mod(N).toBytes(32);
7910
7985
  return new HDWallet({
7911
7986
  privateKey: ki,
7912
7987
  chainCode: IR,
@@ -7944,8 +8019,8 @@ var HDWallet = class {
7944
8019
  */
7945
8020
  toExtendedKey(isPublic = false, testnet = false) {
7946
8021
  if (this.depth >= 256) {
7947
- throw new FuelError18(
7948
- ErrorCode18.HD_WALLET_ERROR,
8022
+ throw new FuelError19(
8023
+ ErrorCode19.HD_WALLET_ERROR,
7949
8024
  `Exceeded max depth of 255. Current depth: ${this.depth}.`
7950
8025
  );
7951
8026
  }
@@ -7976,10 +8051,10 @@ var HDWallet = class {
7976
8051
  const bytes = arrayify18(decoded);
7977
8052
  const validChecksum = base58check(bytes.slice(0, 78)) === extendedKey;
7978
8053
  if (bytes.length !== 82 || !isValidExtendedKey(bytes)) {
7979
- throw new FuelError18(ErrorCode18.HD_WALLET_ERROR, "Provided key is not a valid extended key.");
8054
+ throw new FuelError19(ErrorCode19.HD_WALLET_ERROR, "Provided key is not a valid extended key.");
7980
8055
  }
7981
8056
  if (!validChecksum) {
7982
- throw new FuelError18(ErrorCode18.HD_WALLET_ERROR, "Provided key has an invalid checksum.");
8057
+ throw new FuelError19(ErrorCode19.HD_WALLET_ERROR, "Provided key has an invalid checksum.");
7983
8058
  }
7984
8059
  const depth = bytes[4];
7985
8060
  const parentFingerprint = hexlify17(bytes.slice(5, 9));
@@ -7987,14 +8062,14 @@ var HDWallet = class {
7987
8062
  const chainCode = hexlify17(bytes.slice(13, 45));
7988
8063
  const key = bytes.slice(45, 78);
7989
8064
  if (depth === 0 && parentFingerprint !== "0x00000000" || depth === 0 && index !== 0) {
7990
- throw new FuelError18(
7991
- ErrorCode18.HD_WALLET_ERROR,
8065
+ throw new FuelError19(
8066
+ ErrorCode19.HD_WALLET_ERROR,
7992
8067
  "Inconsistency detected: Depth is zero but fingerprint/index is non-zero."
7993
8068
  );
7994
8069
  }
7995
8070
  if (isPublicExtendedKey(bytes)) {
7996
8071
  if (key[0] !== 3) {
7997
- throw new FuelError18(ErrorCode18.HD_WALLET_ERROR, "Invalid public extended key.");
8072
+ throw new FuelError19(ErrorCode19.HD_WALLET_ERROR, "Invalid public extended key.");
7998
8073
  }
7999
8074
  return new HDWallet({
8000
8075
  publicKey: key,
@@ -8005,7 +8080,7 @@ var HDWallet = class {
8005
8080
  });
8006
8081
  }
8007
8082
  if (key[0] !== 0) {
8008
- throw new FuelError18(ErrorCode18.HD_WALLET_ERROR, "Invalid private extended key.");
8083
+ throw new FuelError19(ErrorCode19.HD_WALLET_ERROR, "Invalid private extended key.");
8009
8084
  }
8010
8085
  return new HDWallet({
8011
8086
  privateKey: key.slice(1),
@@ -8173,7 +8248,7 @@ __publicField(Wallet, "fromEncryptedJson", WalletUnlocked.fromEncryptedJson);
8173
8248
  // src/wallet-manager/wallet-manager.ts
8174
8249
  import { Address as Address8 } from "@fuel-ts/address";
8175
8250
  import { encrypt, decrypt } from "@fuel-ts/crypto";
8176
- import { ErrorCode as ErrorCode21, FuelError as FuelError21 } from "@fuel-ts/errors";
8251
+ import { ErrorCode as ErrorCode22, FuelError as FuelError22 } from "@fuel-ts/errors";
8177
8252
  import { EventEmitter } from "events";
8178
8253
 
8179
8254
  // src/wallet-manager/storages/memory-storage.ts
@@ -8196,7 +8271,7 @@ var MemoryStorage = class {
8196
8271
 
8197
8272
  // src/wallet-manager/vaults/mnemonic-vault.ts
8198
8273
  import { Address as Address6 } from "@fuel-ts/address";
8199
- import { ErrorCode as ErrorCode19, FuelError as FuelError19 } from "@fuel-ts/errors";
8274
+ import { ErrorCode as ErrorCode20, FuelError as FuelError20 } from "@fuel-ts/errors";
8200
8275
  var _secret;
8201
8276
  var MnemonicVault = class {
8202
8277
  constructor(options) {
@@ -8252,8 +8327,8 @@ var MnemonicVault = class {
8252
8327
  }
8253
8328
  numberOfAccounts += 1;
8254
8329
  } while (numberOfAccounts < this.numberOfAccounts);
8255
- throw new FuelError19(
8256
- ErrorCode19.WALLET_MANAGER_ERROR,
8330
+ throw new FuelError20(
8331
+ ErrorCode20.WALLET_MANAGER_ERROR,
8257
8332
  `Account with address '${address}' not found in derived wallets.`
8258
8333
  );
8259
8334
  }
@@ -8267,7 +8342,7 @@ __publicField(MnemonicVault, "type", "mnemonic");
8267
8342
 
8268
8343
  // src/wallet-manager/vaults/privatekey-vault.ts
8269
8344
  import { Address as Address7 } from "@fuel-ts/address";
8270
- import { ErrorCode as ErrorCode20, FuelError as FuelError20 } from "@fuel-ts/errors";
8345
+ import { ErrorCode as ErrorCode21, FuelError as FuelError21 } from "@fuel-ts/errors";
8271
8346
  var _privateKeys;
8272
8347
  var PrivateKeyVault = class {
8273
8348
  /**
@@ -8308,8 +8383,8 @@ var PrivateKeyVault = class {
8308
8383
  (pk) => Wallet.fromPrivateKey(pk).address.equals(ownerAddress)
8309
8384
  );
8310
8385
  if (!privateKey) {
8311
- throw new FuelError20(
8312
- ErrorCode20.WALLET_MANAGER_ERROR,
8386
+ throw new FuelError21(
8387
+ ErrorCode21.WALLET_MANAGER_ERROR,
8313
8388
  `No private key found for address '${address}'.`
8314
8389
  );
8315
8390
  }
@@ -8333,7 +8408,7 @@ var ERROR_MESSAGES = {
8333
8408
  };
8334
8409
  function assert(condition, message) {
8335
8410
  if (!condition) {
8336
- throw new FuelError21(ErrorCode21.WALLET_MANAGER_ERROR, message);
8411
+ throw new FuelError22(ErrorCode22.WALLET_MANAGER_ERROR, message);
8337
8412
  }
8338
8413
  }
8339
8414
  var _vaults, _passphrase, _isLocked, _serializeVaults, serializeVaults_fn, _deserializeVaults, deserializeVaults_fn;
@@ -8559,25 +8634,25 @@ deserializeVaults_fn = function(vaults) {
8559
8634
  __publicField(WalletManager, "Vaults", [MnemonicVault, PrivateKeyVault]);
8560
8635
 
8561
8636
  // src/wallet-manager/types.ts
8562
- import { ErrorCode as ErrorCode22, FuelError as FuelError22 } from "@fuel-ts/errors";
8637
+ import { ErrorCode as ErrorCode23, FuelError as FuelError23 } from "@fuel-ts/errors";
8563
8638
  var Vault = class {
8564
8639
  constructor(_options) {
8565
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8640
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8566
8641
  }
8567
8642
  serialize() {
8568
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8643
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8569
8644
  }
8570
8645
  getAccounts() {
8571
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8646
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8572
8647
  }
8573
8648
  addAccount() {
8574
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8649
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8575
8650
  }
8576
8651
  exportAccount(_address) {
8577
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8652
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8578
8653
  }
8579
8654
  getWallet(_address) {
8580
- throw new FuelError22(ErrorCode22.NOT_IMPLEMENTED, "Not implemented.");
8655
+ throw new FuelError23(ErrorCode23.NOT_IMPLEMENTED, "Not implemented.");
8581
8656
  }
8582
8657
  };
8583
8658
  __publicField(Vault, "type");
@@ -8594,7 +8669,7 @@ import {
8594
8669
  } from "@fuel-ts/abi-coder";
8595
8670
  import { Address as Address9 } from "@fuel-ts/address";
8596
8671
  import { BaseAssetId as BaseAssetId4 } from "@fuel-ts/address/configs";
8597
- import { ErrorCode as ErrorCode23, FuelError as FuelError23 } from "@fuel-ts/errors";
8672
+ import { ErrorCode as ErrorCode24, FuelError as FuelError24 } from "@fuel-ts/errors";
8598
8673
  import { ByteArrayCoder, InputType as InputType7 } from "@fuel-ts/transactions";
8599
8674
  import { arrayify as arrayify20, hexlify as hexlify19 } from "@fuel-ts/utils";
8600
8675
 
@@ -8722,8 +8797,8 @@ var Predicate = class extends Account {
8722
8797
  if (jsonAbi) {
8723
8798
  abiInterface = new Interface4(jsonAbi);
8724
8799
  if (abiInterface.functions.main === void 0) {
8725
- throw new FuelError23(
8726
- ErrorCode23.ABI_MAIN_METHOD_MISSING,
8800
+ throw new FuelError24(
8801
+ ErrorCode24.ABI_MAIN_METHOD_MISSING,
8727
8802
  'Cannot use ABI without "main" function.'
8728
8803
  );
8729
8804
  }
@@ -8768,8 +8843,8 @@ var Predicate = class extends Account {
8768
8843
  mutatedBytes.set(encoded, offset);
8769
8844
  });
8770
8845
  } catch (err) {
8771
- throw new FuelError23(
8772
- ErrorCode23.INVALID_CONFIGURABLE_CONSTANTS,
8846
+ throw new FuelError24(
8847
+ ErrorCode24.INVALID_CONFIGURABLE_CONSTANTS,
8773
8848
  `Error setting configurable constants: ${err.message}.`
8774
8849
  );
8775
8850
  }
@@ -8778,7 +8853,7 @@ var Predicate = class extends Account {
8778
8853
  };
8779
8854
 
8780
8855
  // src/connectors/fuel.ts
8781
- import { ErrorCode as ErrorCode24, FuelError as FuelError24 } from "@fuel-ts/errors";
8856
+ import { ErrorCode as ErrorCode25, FuelError as FuelError25 } from "@fuel-ts/errors";
8782
8857
 
8783
8858
  // src/connectors/fuel-connector.ts
8784
8859
  import { EventEmitter as EventEmitter2 } from "events";
@@ -9411,7 +9486,7 @@ var _Fuel = class extends FuelConnector {
9411
9486
  const currentNetwork = await this.currentNetwork();
9412
9487
  provider = await Provider.create(currentNetwork.url);
9413
9488
  } else {
9414
- throw new FuelError24(ErrorCode24.INVALID_PROVIDER, "Provider is not valid.");
9489
+ throw new FuelError25(ErrorCode25.INVALID_PROVIDER, "Provider is not valid.");
9415
9490
  }
9416
9491
  return provider;
9417
9492
  }
@@ -9490,7 +9565,9 @@ export {
9490
9565
  WalletUnlocked,
9491
9566
  addAmountToAsset,
9492
9567
  addOperation,
9568
+ assemblePanicError,
9493
9569
  assembleReceiptByType,
9570
+ assembleRevertError,
9494
9571
  assembleTransactionSummary,
9495
9572
  assets,
9496
9573
  buildBlockExplorerUrl,
@@ -9505,6 +9582,7 @@ export {
9505
9582
  english,
9506
9583
  extractBurnedAssetsFromReceipts,
9507
9584
  extractMintedAssetsFromReceipts,
9585
+ extractTxError,
9508
9586
  gasUsedByInputs,
9509
9587
  getAssetEth,
9510
9588
  getAssetFuel,