@sidhujag/sysweb3-keyring 2.1.1 → 2.1.3

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +5 -2
  2. package/README.md +8 -0
  3. package/cjs/current-vault-refusal.js +6 -0
  4. package/cjs/current-vault-refusal.js.map +1 -0
  5. package/cjs/evm-fees.js +29 -1
  6. package/cjs/evm-fees.js.map +1 -1
  7. package/cjs/keyring-core.js +349 -84
  8. package/cjs/keyring-core.js.map +1 -1
  9. package/cjs/keyring-manager.js +100 -4
  10. package/cjs/keyring-manager.js.map +1 -1
  11. package/cjs/software.js +14 -1
  12. package/cjs/software.js.map +1 -1
  13. package/cjs/storage-core.js +44 -4
  14. package/cjs/storage-core.js.map +1 -1
  15. package/cjs/transactions/ethereum.js +138 -82
  16. package/cjs/transactions/ethereum.js.map +1 -1
  17. package/cjs/transactions/evm-cancellation.js +43 -0
  18. package/cjs/transactions/evm-cancellation.js.map +1 -0
  19. package/cjs/transactions/evm-local-signer.js +4 -2
  20. package/cjs/transactions/evm-local-signer.js.map +1 -1
  21. package/cjs/transactions/evm-submission.js +23 -2
  22. package/cjs/transactions/evm-submission.js.map +1 -1
  23. package/cjs/transactions/prepared-evm.js +3 -6
  24. package/cjs/transactions/prepared-evm.js.map +1 -1
  25. package/esm/ledger/dmk-host.js +31 -0
  26. package/esm/ledger/dmk-host.js.map +1 -0
  27. package/esm/ledger/dmk-selected-host.js +6 -0
  28. package/esm/ledger/dmk-selected-host.js.map +1 -0
  29. package/esm/ledger/dmk-session.js +153 -34
  30. package/esm/ledger/dmk-session.js.map +1 -1
  31. package/esm/ledger-host.js +3 -27
  32. package/esm/ledger-host.js.map +1 -1
  33. package/package.json +13 -1
  34. package/types/current-vault-refusal.d.ts +2 -0
  35. package/types/evm-fees.d.ts +25 -0
  36. package/types/keyring-core.d.ts +36 -3
  37. package/types/keyring-manager.d.ts +15 -3
  38. package/types/ledger/dmk-host.d.ts +7 -0
  39. package/types/ledger/dmk-selected-host.d.ts +7 -0
  40. package/types/ledger/dmk-session.d.ts +10 -2
  41. package/types/ledger-host.d.ts +6 -2
  42. package/types/software.d.ts +4 -3
  43. package/types/storage-core.d.ts +3 -1
  44. package/types/storage.d.ts +1 -1
  45. package/types/transactions/evm-cancellation.d.ts +10 -0
  46. package/types/transactions/evm-submission.d.ts +4 -1
package/CHANGELOG.md CHANGED
@@ -1,11 +1,14 @@
1
1
  # Changelog
2
2
 
3
- ## Unreleased — API removal pending release-version decision
3
+ ## 2.1.2
4
4
 
5
- - Remove the duplicate public BIP84 and bounded native-transfer APIs introduced in 2.1.0. Existing descriptor, SJS/HD and generic PSBT paths remain. This removes published exports and is **not** a compatible 2.1.1 patch. Historical 2.1.0 notes below describe the already-published package.
5
+ - Preserve explicit hardware transaction nonces, including zero, instead of replacing them with the pending RPC nonce.
6
+ - Bind software and hardware signed bytes to the complete unsigned envelope captured before signing, before persistence or broadcast. Expose the same comparison through the lightweight shared submission entry.
7
+ - Detach ordinary formatted-send inputs before asynchronous work, preserve strict quantity validation and explicit zero gas prices, and keep nullish fee/nonce autofill on the existing shared path.
6
8
 
7
9
  ## 2.1.1
8
10
 
11
+ - Remove the duplicate public BIP84 and bounded native-transfer APIs introduced in 2.1.0. Existing descriptor, SJS/HD and generic PSBT paths remain. These prototype export removals shipped in 2.1.1; historical 2.1.0 notes below describe that earlier package.
9
12
  - Share the existing successful gas-estimate 20% buffer/minimum calculation through `bufferedEvmGasLimit`; SDK and mobile can use the same integer rounding without copying the formula.
10
13
 
11
14
  - Expose dependency-free `cjs/evm-fees` for the existing standard EVM fee recommendation and make `EthereumTransactions` use the same implementation.
package/README.md CHANGED
@@ -350,6 +350,14 @@ A missing host fails with `HARDWARE_SIGNER_UNAVAILABLE`; there is no legacy
350
350
  LedgerJS fallback. Pass either a shared hardware manager or a Ledger host to
351
351
  `KeyringManager`, not both.
352
352
 
353
+ A platform that owns its transport can lazily import
354
+ `createSelectedLedgerDmkHost` from
355
+ `@sidhujag/sysweb3-keyring/esm/ledger/dmk-selected-host.js` with an ESM-aware
356
+ bundler. Supply the platform's DMK and the same trusted approval callback.
357
+ This entry leaves WebHID to the browser host and cannot connect until a
358
+ single-use `beginDeviceSelection` capability accepts a device selected by the
359
+ user. The platform still owns transport permissions and cancellation.
360
+
353
361
  The default host performs no remote metadata lookup, transaction checks, or
354
362
  signing telemetry. The current Ethereum signer library can fall back to blind
355
363
  signing, so transaction and typed-data signing require per-request approval
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.currentVaultRefusals = void 0;
4
+ /** Internal ciphertext comparison for a current-vault tag refusal. */
5
+ exports.currentVaultRefusals = new WeakMap();
6
+ //# sourceMappingURL=current-vault-refusal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"current-vault-refusal.js","sourceRoot":"","sources":["../../src/current-vault-refusal.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACzD,QAAA,oBAAoB,GAAG,IAAI,OAAO,EAG5C,CAAC"}
package/cjs/evm-fees.js CHANGED
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EvmGasLimitError = void 0;
3
+ exports.EVM_CANCELLATION_GAS_LIMIT = exports.EvmGasLimitError = void 0;
4
4
  exports.assertEvmGasLimit = assertEvmGasLimit;
5
5
  exports.parseEvmFeeQuantity = parseEvmFeeQuantity;
6
6
  exports.bufferedEvmGasLimit = bufferedEvmGasLimit;
7
+ exports.planEvmCancellationFees = planEvmCancellationFees;
7
8
  exports.getEvmFeeData = getEvmFeeData;
8
9
  /** Standard EVM fee discovery shared by extension and restricted native hosts. */
9
10
  const evm_js_1 = require("@sidhujag/sysweb3-network/cjs/evm.js");
@@ -74,6 +75,33 @@ function bufferedEvmGasLimit(estimate, minimum) {
74
75
  const buffered = (estimate * 120n) / 100n;
75
76
  return minimum !== undefined && minimum > buffered ? minimum : buffered;
76
77
  }
78
+ exports.EVM_CANCELLATION_GAS_LIMIT = 42000n;
79
+ /** Plan only the cancellation fees. The host validates the rates and envelope. */
80
+ function planEvmCancellationFees(input) {
81
+ const gasLimit = exports.EVM_CANCELLATION_GAS_LIMIT;
82
+ const higher = (left, right) => (left > right ? left : right);
83
+ // The replacement must also bump zero and small rates by at least one wei.
84
+ const bump = (fee) => higher((fee * 120n) / 100n, fee + 1n);
85
+ if (input.type === 0) {
86
+ const gasPrice = bump(higher(input.currentGasPrice, input.originalGasPrice ?? 0n));
87
+ return Object.freeze({
88
+ type: 0,
89
+ gasLimit,
90
+ gasPrice,
91
+ maximumFee: gasLimit * gasPrice,
92
+ });
93
+ }
94
+ const priority = higher(input.currentMaxPriorityFeePerGas, input.originalMaxPriorityFeePerGas ?? 0n);
95
+ const cap = higher(input.currentMaxFeePerGas, input.originalMaxFeePerGas ?? 0n);
96
+ const maxFeePerGas = bump(higher(cap, priority));
97
+ return Object.freeze({
98
+ type: 2,
99
+ gasLimit,
100
+ maxFeePerGas,
101
+ maxPriorityFeePerGas: bump(priority),
102
+ maximumFee: gasLimit * maxFeePerGas,
103
+ });
104
+ }
77
105
  function unsupportedPriorityMethod(error) {
78
106
  const unsupportedCode = (code) => code === -32601 || code === 4200;
79
107
  if (unsupportedCode(error?.code))
@@ -1 +1 @@
1
- {"version":3,"file":"evm-fees.js","sourceRoot":"","sources":["../../src/evm-fees.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evm-fees.js","sourceRoot":"","sources":["../../src/evm-fees.ts"],"names":[],"mappings":"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"}