@fuel-ts/account 0.0.0-rc-2037-20240417234504 → 0.0.0-rc-2045-20240418110507

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.

Files changed (35) hide show
  1. package/dist/index.global.js +40 -86
  2. package/dist/index.global.js.map +1 -1
  3. package/dist/index.js +141 -200
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +64 -117
  6. package/dist/index.mjs.map +1 -1
  7. package/dist/predicate/predicate.d.ts +2 -11
  8. package/dist/predicate/predicate.d.ts.map +1 -1
  9. package/dist/providers/coin.d.ts +1 -2
  10. package/dist/providers/coin.d.ts.map +1 -1
  11. package/dist/providers/message.d.ts +0 -1
  12. package/dist/providers/message.d.ts.map +1 -1
  13. package/dist/providers/transaction-request/index.d.ts +0 -1
  14. package/dist/providers/transaction-request/index.d.ts.map +1 -1
  15. package/dist/providers/transaction-request/transaction-request.d.ts +20 -4
  16. package/dist/providers/transaction-request/transaction-request.d.ts.map +1 -1
  17. package/dist/test-utils/index.d.ts +0 -1
  18. package/dist/test-utils/index.d.ts.map +1 -1
  19. package/dist/test-utils/seedTestWallet.d.ts +1 -1
  20. package/dist/test-utils/seedTestWallet.d.ts.map +1 -1
  21. package/dist/test-utils.global.js +41 -65
  22. package/dist/test-utils.global.js.map +1 -1
  23. package/dist/test-utils.js +135 -173
  24. package/dist/test-utils.js.map +1 -1
  25. package/dist/test-utils.mjs +64 -99
  26. package/dist/test-utils.mjs.map +1 -1
  27. package/dist/wallet/base-wallet-unlocked.d.ts +2 -2
  28. package/dist/wallet/base-wallet-unlocked.d.ts.map +1 -1
  29. package/package.json +15 -15
  30. package/dist/providers/transaction-request/helpers.d.ts +0 -10
  31. package/dist/providers/transaction-request/helpers.d.ts.map +0 -1
  32. package/dist/test-utils/resources.d.ts +0 -4
  33. package/dist/test-utils/resources.d.ts.map +0 -1
  34. package/dist/test-utils/transactionRequest.d.ts +0 -5
  35. package/dist/test-utils/transactionRequest.d.ts.map +0 -1
@@ -28952,9 +28952,9 @@ spurious results.`);
28952
28952
  // ../versions/dist/index.mjs
28953
28953
  function getBuiltinVersions() {
28954
28954
  return {
28955
- FORC: "0.49.3",
28955
+ FORC: "0.53.0",
28956
28956
  FUEL_CORE: "0.22.1",
28957
- FUELS: "0.80.0"
28957
+ FUELS: "0.81.0"
28958
28958
  };
28959
28959
  }
28960
28960
  function parseVersion(version2) {
@@ -31144,7 +31144,7 @@ This unreleased fuel-core build may include features and updates not yet support
31144
31144
  toEvmAddress() {
31145
31145
  const b256Address = toB256(this.bech32Address);
31146
31146
  return {
31147
- value: clearFirst12BytesFromB256(b256Address)
31147
+ bits: clearFirst12BytesFromB256(b256Address)
31148
31148
  };
31149
31149
  }
31150
31150
  /**
@@ -31154,7 +31154,7 @@ This unreleased fuel-core build may include features and updates not yet support
31154
31154
  */
31155
31155
  toAssetId() {
31156
31156
  return {
31157
- value: this.toB256()
31157
+ bits: this.toB256()
31158
31158
  };
31159
31159
  }
31160
31160
  /**
@@ -39525,32 +39525,6 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39525
39525
  name = "NoWitnessByOwnerError";
39526
39526
  };
39527
39527
 
39528
- // src/providers/transaction-request/helpers.ts
39529
- var isRequestInputCoin = (input) => input.type === InputType.Coin;
39530
- var isRequestInputMessage = (input) => input.type === InputType.Message;
39531
- var isRequestInputResource = (input) => isRequestInputCoin(input) || isRequestInputMessage(input);
39532
- var getRequestInputResourceOwner = (input) => {
39533
- if (isRequestInputCoin(input)) {
39534
- return input.owner;
39535
- }
39536
- return input.recipient;
39537
- };
39538
- var isRequestInputResourceFromOwner = (input, owner) => getRequestInputResourceOwner(input) === owner.toB256();
39539
- var cacheResources = (resources) => resources.reduce(
39540
- (cache2, resource) => {
39541
- if (isCoin(resource)) {
39542
- cache2.utxos.push(resource.id);
39543
- } else {
39544
- cache2.messages.push(resource.nonce);
39545
- }
39546
- return cache2;
39547
- },
39548
- {
39549
- utxos: [],
39550
- messages: []
39551
- }
39552
- );
39553
-
39554
39528
  // src/providers/transaction-request/witness.ts
39555
39529
  var witnessify = (value) => {
39556
39530
  const data = arrayify(value);
@@ -39790,8 +39764,8 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39790
39764
  * @param predicate - Predicate bytes.
39791
39765
  * @param predicateData - Predicate data bytes.
39792
39766
  */
39793
- addCoinInput(coin) {
39794
- const { assetId, owner, amount, id, predicate } = coin;
39767
+ addCoinInput(coin, predicate) {
39768
+ const { assetId, owner, amount } = coin;
39795
39769
  let witnessIndex;
39796
39770
  if (predicate) {
39797
39771
  witnessIndex = 0;
@@ -39802,14 +39776,14 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39802
39776
  }
39803
39777
  }
39804
39778
  const input = {
39805
- id,
39779
+ ...coin,
39806
39780
  type: InputType.Coin,
39807
39781
  owner: owner.toB256(),
39808
39782
  amount,
39809
39783
  assetId,
39810
39784
  txPointer: "0x00000000000000000000000000000000",
39811
39785
  witnessIndex,
39812
- predicate
39786
+ predicate: predicate?.bytes
39813
39787
  };
39814
39788
  this.pushInput(input);
39815
39789
  this.addChangeOutput(owner, assetId);
@@ -39822,8 +39796,8 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39822
39796
  * @param predicate - Predicate bytes.
39823
39797
  * @param predicateData - Predicate data bytes.
39824
39798
  */
39825
- addMessageInput(message) {
39826
- const { recipient, sender, amount, predicate, nonce } = message;
39799
+ addMessageInput(message, predicate) {
39800
+ const { recipient, sender, amount } = message;
39827
39801
  const assetId = BaseAssetId;
39828
39802
  let witnessIndex;
39829
39803
  if (predicate) {
@@ -39835,13 +39809,13 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39835
39809
  }
39836
39810
  }
39837
39811
  const input = {
39838
- nonce,
39812
+ ...message,
39839
39813
  type: InputType.Message,
39840
39814
  sender: sender.toB256(),
39841
39815
  recipient: recipient.toB256(),
39842
39816
  amount,
39843
39817
  witnessIndex,
39844
- predicate
39818
+ predicate: predicate?.bytes
39845
39819
  };
39846
39820
  this.pushInput(input);
39847
39821
  this.addChangeOutput(recipient, assetId);
@@ -39872,6 +39846,32 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
39872
39846
  resources.forEach((resource) => this.addResource(resource));
39873
39847
  return this;
39874
39848
  }
39849
+ /**
39850
+ * Adds multiple resources to the transaction by adding coin/message inputs and change
39851
+ * outputs from the related assetIds.
39852
+ *
39853
+ * @param resources - The resources to add.
39854
+ * @returns This transaction.
39855
+ */
39856
+ addPredicateResource(resource, predicate) {
39857
+ if (isCoin(resource)) {
39858
+ this.addCoinInput(resource, predicate);
39859
+ } else {
39860
+ this.addMessageInput(resource, predicate);
39861
+ }
39862
+ return this;
39863
+ }
39864
+ /**
39865
+ * Adds multiple predicate coin/message inputs to the transaction and change outputs
39866
+ * from the related assetIds.
39867
+ *
39868
+ * @param resources - The resources to add.
39869
+ * @returns This transaction.
39870
+ */
39871
+ addPredicateResources(resources, predicate) {
39872
+ resources.forEach((resource) => this.addPredicateResource(resource, predicate));
39873
+ return this;
39874
+ }
39875
39875
  /**
39876
39876
  * Adds a coin output to the transaction.
39877
39877
  *
@@ -40020,10 +40020,6 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
40020
40020
  toJSON() {
40021
40021
  return normalizeJSON(this);
40022
40022
  }
40023
- removeWitness(index) {
40024
- this.witnesses.splice(index, 1);
40025
- this.adjustWitnessIndexes(index);
40026
- }
40027
40023
  updatePredicateInputs(inputs) {
40028
40024
  this.inputs.forEach((i) => {
40029
40025
  let correspondingInput;
@@ -40046,13 +40042,6 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
40046
40042
  }
40047
40043
  });
40048
40044
  }
40049
- adjustWitnessIndexes(removedIndex) {
40050
- this.inputs.filter(isRequestInputResource).forEach((input) => {
40051
- if (input.witnessIndex > removedIndex) {
40052
- input.witnessIndex -= 1;
40053
- }
40054
- });
40055
- }
40056
40045
  };
40057
40046
 
40058
40047
  // src/providers/transaction-request/hash-transaction.ts
@@ -47879,15 +47868,10 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
47879
47868
  populateTransactionPredicateData(transactionRequestLike) {
47880
47869
  const request = transactionRequestify(transactionRequestLike);
47881
47870
  const { policies } = BaseTransactionRequest.getPolicyMeta(request);
47882
- const placeholderIndex = this.getIndexFromPlaceholderWitness(request);
47883
- if (placeholderIndex !== -1) {
47884
- request.removeWitness(placeholderIndex);
47885
- }
47886
- request.inputs.filter(isRequestInputResource).forEach((input) => {
47887
- if (isRequestInputResourceFromOwner(input, this.address)) {
47871
+ request.inputs?.forEach((input) => {
47872
+ if (input.type === InputType.Coin && hexlify(input.owner) === this.address.toB256()) {
47888
47873
  input.predicate = this.bytes;
47889
47874
  input.predicateData = this.getPredicateData(policies.length);
47890
- input.witnessIndex = 0;
47891
47875
  }
47892
47876
  });
47893
47877
  return request;
@@ -47925,20 +47909,6 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
47925
47909
  const transactionRequest = this.populateTransactionPredicateData(transactionRequestLike);
47926
47910
  return super.simulateTransaction(transactionRequest);
47927
47911
  }
47928
- /**
47929
- * Retrieves resources satisfying the spend query for the account.
47930
- *
47931
- * @param quantities - IDs of coins to exclude.
47932
- * @param excludedIds - IDs of resources to be excluded from the query.
47933
- * @returns A promise that resolves to an array of Resources.
47934
- */
47935
- async getResourcesToSpend(quantities, excludedIds) {
47936
- const resources = await super.getResourcesToSpend(quantities, excludedIds);
47937
- return resources.map((resource) => ({
47938
- ...resource,
47939
- predicate: hexlify(this.bytes)
47940
- }));
47941
- }
47942
47912
  getPredicateData(policiesLength) {
47943
47913
  if (!this.predicateData.length) {
47944
47914
  return new Uint8Array();
@@ -48018,22 +47988,6 @@ ${PANIC_DOC_URL}#variant.${status.reason}`;
48018
47988
  }
48019
47989
  return mutatedBytes;
48020
47990
  }
48021
- getIndexFromPlaceholderWitness(request) {
48022
- const predicateInputs = request.inputs.filter(isRequestInputResource).filter((input) => isRequestInputResourceFromOwner(input, this.address));
48023
- let index = -1;
48024
- const hasEmptyPredicateInputs = predicateInputs.find((input) => !input.predicate);
48025
- if (hasEmptyPredicateInputs) {
48026
- index = hasEmptyPredicateInputs.witnessIndex;
48027
- const allInputsAreEmpty = predicateInputs.every((input) => !input.predicate);
48028
- if (!allInputsAreEmpty) {
48029
- const wasFilledInputAddedFirst = !!predicateInputs[0]?.predicate;
48030
- if (wasFilledInputAddedFirst) {
48031
- index = -1;
48032
- }
48033
- }
48034
- }
48035
- return index;
48036
- }
48037
47991
  };
48038
47992
 
48039
47993
  // src/connectors/fuel-connector.ts