starknet 10.7.3 → 10.7.5

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [10.7.5](https://github.com/starknet-io/starknet.js/compare/v10.7.4...v10.7.5) (2026-09-08)
2
+
3
+ ### Bug Fixes
4
+
5
+ - **calldata:** default to the parsing strategy that decodes signed integers correctly ([d766915](https://github.com/starknet-io/starknet.js/commit/d76691531bd095a13b822249be11aededc472b6d))
6
+
7
+ ## [10.7.4](https://github.com/starknet-io/starknet.js/compare/v10.7.3...v10.7.4) (2026-09-08)
8
+
9
+ ### Bug Fixes
10
+
11
+ - **typedData:** reject caller types that shadow SNIP-12 preset names ([3f06927](https://github.com/starknet-io/starknet.js/commit/3f06927e1b1325df657c8056539cff84144d729c))
12
+
1
13
  ## [10.7.3](https://github.com/starknet-io/starknet.js/compare/v10.7.2...v10.7.3) (2026-09-08)
2
14
 
3
15
  ### Bug Fixes
package/dist/index.d.ts CHANGED
@@ -8463,7 +8463,9 @@ interface Context {
8463
8463
  key?: string;
8464
8464
  }
8465
8465
  /**
8466
- * Validates that `data` matches the EIP-712 JSON schema.
8466
+ * Validates that `data` matches the EIP-712 JSON schema, and that it does not redefine any
8467
+ * of the active revision's preset type names (SNIP-12 reserves those names and requires such
8468
+ * a request to be rejected).
8467
8469
  */
8468
8470
  declare function validateTypedData(data: unknown): data is TypedData;
8469
8471
  /**
@@ -7538,7 +7538,7 @@ ${indent}}` : "}";
7538
7538
  parsingStrategy;
7539
7539
  constructor(abi, parsingStrategy) {
7540
7540
  this.abi = abi;
7541
- this.parsingStrategy = parsingStrategy || fastParsingStrategy;
7541
+ this.parsingStrategy = parsingStrategy || hdParsingStrategy;
7542
7542
  }
7543
7543
  getRequestParser(abiType) {
7544
7544
  if (this.parsingStrategy.request[abiType]) {
@@ -7584,7 +7584,7 @@ ${indent}}` : "}";
7584
7584
  parsingStrategy;
7585
7585
  constructor(abi, parsingStrategy) {
7586
7586
  this.abi = abi;
7587
- this.parsingStrategy = parsingStrategy || fastParsingStrategy;
7587
+ this.parsingStrategy = parsingStrategy || hdParsingStrategy;
7588
7588
  }
7589
7589
  getRequestParser(abiType) {
7590
7590
  if (this.parsingStrategy.request[abiType]) {
@@ -13814,9 +13814,15 @@ ${indent}}` : "}";
13814
13814
  }
13815
13815
  function validateTypedData(data) {
13816
13816
  const typedData = data;
13817
- return Boolean(
13818
- typedData.message && typedData.primaryType && typedData.types && identifyRevision(typedData)
13819
- );
13817
+ if (!(typedData.message && typedData.primaryType && typedData.types)) {
13818
+ return false;
13819
+ }
13820
+ const revision = identifyRevision(typedData);
13821
+ if (!revision) {
13822
+ return false;
13823
+ }
13824
+ const presetNames = Object.keys(revisionConfiguration[revision].presetTypes);
13825
+ return Object.keys(typedData.types).every((name) => !presetNames.includes(name));
13820
13826
  }
13821
13827
  function prepareSelector(selector) {
13822
13828
  return isHex2(selector) ? selector : getSelectorFromName(selector);