@sidhujag/sysweb3-keyring 2.1.3 → 2.1.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.
Files changed (129) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +47 -47
  3. package/cjs/hardware-transaction-authority.js +36 -0
  4. package/cjs/hardware-transaction-authority.js.map +1 -0
  5. package/cjs/index.js +5 -5
  6. package/cjs/index.js.map +1 -1
  7. package/cjs/keyring-core.js +171 -220
  8. package/cjs/keyring-core.js.map +1 -1
  9. package/cjs/keyring-host.js +113 -0
  10. package/cjs/keyring-host.js.map +1 -0
  11. package/cjs/keyring-manager.js +15 -151
  12. package/cjs/keyring-manager.js.map +1 -1
  13. package/cjs/ledger/host-types.js.map +1 -1
  14. package/cjs/ledger/index.js +44 -19
  15. package/cjs/ledger/index.js.map +1 -1
  16. package/cjs/providers.js +3 -1
  17. package/cjs/providers.js.map +1 -1
  18. package/cjs/software.js +10 -56
  19. package/cjs/software.js.map +1 -1
  20. package/cjs/transactions/ethereum.js +306 -229
  21. package/cjs/transactions/ethereum.js.map +1 -1
  22. package/cjs/transactions/evm-local-signer.js +15 -0
  23. package/cjs/transactions/evm-local-signer.js.map +1 -1
  24. package/cjs/transactions/evm-submission.js +61 -65
  25. package/cjs/transactions/evm-submission.js.map +1 -1
  26. package/cjs/transactions/hardware-psbt.js +11 -8
  27. package/cjs/transactions/hardware-psbt.js.map +1 -1
  28. package/cjs/transactions/index.js +10 -2
  29. package/cjs/transactions/index.js.map +1 -1
  30. package/cjs/transactions/prepared-evm.js +10 -7
  31. package/cjs/transactions/prepared-evm.js.map +1 -1
  32. package/cjs/transactions/syscoin-core.js +308 -205
  33. package/cjs/transactions/syscoin-core.js.map +1 -1
  34. package/cjs/trezor/connect.js +19 -2
  35. package/cjs/trezor/connect.js.map +1 -1
  36. package/cjs/trezor/index.js +38 -16
  37. package/cjs/trezor/index.js.map +1 -1
  38. package/cjs/types.js.map +1 -1
  39. package/cjs/utils/excluded-utxos.js +6 -2
  40. package/cjs/utils/excluded-utxos.js.map +1 -1
  41. package/cjs/utils/owned-blockbook-account.js +45 -0
  42. package/cjs/utils/owned-blockbook-account.js.map +1 -0
  43. package/esm/current-vault-refusal.js +3 -0
  44. package/esm/current-vault-refusal.js.map +1 -0
  45. package/esm/evm-fees.js +242 -0
  46. package/esm/evm-fees.js.map +1 -0
  47. package/esm/hardware-transaction-authority.js +33 -0
  48. package/esm/hardware-transaction-authority.js.map +1 -0
  49. package/esm/initial-state.js +102 -0
  50. package/esm/initial-state.js.map +1 -0
  51. package/esm/keyring-core.js +2781 -0
  52. package/esm/keyring-core.js.map +1 -0
  53. package/esm/keyring-host.js +108 -0
  54. package/esm/keyring-host.js.map +1 -0
  55. package/esm/ledger/dmk-session.js +1 -0
  56. package/esm/ledger/dmk-session.js.map +1 -1
  57. package/esm/ledger/dmk-utxo.js +9 -3
  58. package/esm/ledger/dmk-utxo.js.map +1 -1
  59. package/esm/ledger/host-types.js.map +1 -1
  60. package/esm/ledger/index.js +44 -19
  61. package/esm/ledger/index.js.map +1 -1
  62. package/esm/network-utils.js +70 -0
  63. package/esm/network-utils.js.map +1 -0
  64. package/esm/providers.js +3 -1
  65. package/esm/providers.js.map +1 -1
  66. package/esm/software-hd-account.js +20 -0
  67. package/esm/software-hd-account.js.map +1 -0
  68. package/esm/storage-core.js +258 -0
  69. package/esm/storage-core.js.map +1 -0
  70. package/esm/transactions/ethereum.js +2753 -0
  71. package/esm/transactions/ethereum.js.map +1 -0
  72. package/esm/transactions/evm-cancellation.js +40 -0
  73. package/esm/transactions/evm-cancellation.js.map +1 -0
  74. package/esm/transactions/evm-local-signer.js +202 -0
  75. package/esm/transactions/evm-local-signer.js.map +1 -0
  76. package/esm/transactions/evm-submission.js +187 -0
  77. package/esm/transactions/evm-submission.js.map +1 -0
  78. package/esm/transactions/prepared-evm.js +194 -0
  79. package/esm/transactions/prepared-evm.js.map +1 -0
  80. package/esm/transactions/syscoin-core.js +714 -0
  81. package/esm/transactions/syscoin-core.js.map +1 -0
  82. package/esm/trezor/connect.js +19 -2
  83. package/esm/trezor/connect.js.map +1 -1
  84. package/esm/trezor/index.js +38 -16
  85. package/esm/trezor/index.js.map +1 -1
  86. package/esm/types.js.map +1 -1
  87. package/esm/utils/excluded-utxos.js +57 -0
  88. package/esm/utils/excluded-utxos.js.map +1 -0
  89. package/esm/utils/owned-blockbook-account.js +9 -0
  90. package/esm/utils/owned-blockbook-account.js.map +1 -0
  91. package/esm/utils/psbt.js +32 -0
  92. package/esm/utils/psbt.js.map +1 -0
  93. package/esm/utils/watch-descriptor.js +138 -0
  94. package/esm/utils/watch-descriptor.js.map +1 -0
  95. package/package.json +5 -11
  96. package/types/hardware-transaction-authority.d.ts +5 -0
  97. package/types/index.d.ts +3 -3
  98. package/types/keyring-core.d.ts +22 -51
  99. package/types/keyring-host.d.ts +46 -0
  100. package/types/keyring-manager.d.ts +13 -18
  101. package/types/ledger/host-types.d.ts +4 -1
  102. package/types/ledger/index.d.ts +1 -1
  103. package/types/ledger/types.d.ts +3 -2
  104. package/types/providers.d.ts +1 -1
  105. package/types/software.d.ts +6 -19
  106. package/types/transactions/ethereum.d.ts +14 -11
  107. package/types/transactions/evm-local-signer.d.ts +2 -2
  108. package/types/transactions/evm-submission.d.ts +11 -4
  109. package/types/transactions/hardware-psbt.d.ts +1 -1
  110. package/types/transactions/index.d.ts +3 -2
  111. package/types/transactions/prepared-evm.d.ts +4 -1
  112. package/types/transactions/syscoin-core.d.ts +48 -21
  113. package/types/trezor/connect.d.ts +6 -3
  114. package/types/trezor/index.d.ts +4 -3
  115. package/types/types.d.ts +95 -63
  116. package/types/utils/excluded-utxos.d.ts +1 -1
  117. package/types/utils/owned-blockbook-account.d.ts +3 -0
  118. package/cjs/hardware-wallet-manager-singleton.js +0 -34
  119. package/cjs/hardware-wallet-manager-singleton.js.map +0 -1
  120. package/cjs/storage.js +0 -20
  121. package/cjs/storage.js.map +0 -1
  122. package/cjs/transactions/syscoin.js +0 -16
  123. package/cjs/transactions/syscoin.js.map +0 -1
  124. package/cjs/utils/blockbook-cache.js +0 -76
  125. package/cjs/utils/blockbook-cache.js.map +0 -1
  126. package/types/hardware-wallet-manager-singleton.d.ts +0 -19
  127. package/types/storage.d.ts +0 -5
  128. package/types/transactions/syscoin.d.ts +0 -9
  129. package/types/utils/blockbook-cache.d.ts +0 -6
@@ -1,173 +1,37 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  Object.defineProperty(exports, "__esModule", { value: true });
36
3
  exports.KeyringManager = void 0;
37
- exports.createKeyringManagerHost = createKeyringManagerHost;
38
- const sysweb3 = __importStar(require("@sidhujag/sysweb3-core"));
39
4
  const hardware_wallet_manager_1 = require("./hardware-wallet-manager");
40
- const hardware_wallet_manager_singleton_1 = require("./hardware-wallet-manager-singleton");
41
5
  const keyring_core_1 = require("./keyring-core");
6
+ const keyring_host_1 = require("./keyring-host");
42
7
  const ledger_1 = require("./ledger");
43
- const storage_1 = require("./storage");
44
- const storage_core_1 = require("./storage-core");
45
8
  const hardware_psbt_1 = require("./transactions/hardware-psbt");
46
9
  const trezor_1 = require("./trezor");
47
- const legacyAuthority = Object.freeze({});
48
- const legacyVaultPersistence = { getDecryptedVault: storage_1.getDecryptedVault, setEncryptedVault: storage_1.setEncryptedVault };
49
- const managerHosts = new WeakMap();
50
- /** Create once for a fixed wallet store and share across replacement managers. */
51
- function createKeyringManagerHost(storage, deviceUnlock) {
52
- if (!storage ||
53
- storage.setClient !== undefined ||
54
- typeof storage.get !== 'function' ||
55
- typeof storage.set !== 'function' ||
56
- typeof storage.deleteItem !== 'function' ||
57
- typeof storage.createManyIfAbsent !== 'function') {
58
- throw new TypeError('Device unlock requires fixed wallet storage');
59
- }
60
- if (typeof storage.readDeviceUnlockVaultPair !== 'function')
61
- throw new TypeError('Device unlock requires an atomic vault pair reader');
62
- if (typeof deviceUnlock?.readCredential !== 'function' ||
63
- typeof deviceUnlock.writeCredential !== 'function') {
64
- throw new TypeError('Device unlock requires a protected credential port');
65
- }
66
- const fixedStorage = Object.freeze({
67
- get: storage.get.bind(storage),
68
- set: storage.set.bind(storage),
69
- deleteItem: storage.deleteItem.bind(storage),
70
- createManyIfAbsent: storage.createManyIfAbsent.bind(storage),
71
- readDeviceUnlockVaultPair: storage.readDeviceUnlockVaultPair.bind(storage),
72
- });
73
- const host = Object.freeze({});
74
- managerHosts.set(host, {
75
- storage: fixedStorage,
76
- vaultPersistence: (0, storage_core_1.createVaultPersistence)(fixedStorage),
77
- sessionOwner: { epoch: 0 },
78
- port: Object.freeze({
79
- readCredential: deviceUnlock.readCredential.bind(deviceUnlock),
80
- writeCredential: deviceUnlock.writeCredential.bind(deviceUnlock),
81
- }),
82
- });
83
- return host;
84
- }
85
- function prepareDeviceUnlockReceiver(receive) {
86
- let controls;
87
- const requireControls = () => {
88
- if (!controls)
89
- throw new Error('Device unlock controls are unavailable');
90
- return controls;
91
- };
92
- // The caller can capture the handle now. It only becomes usable once the
93
- // manager has been constructed successfully.
94
- const result = receive(Object.freeze({
95
- async issue(password, assertCurrent) {
96
- return requireControls().issue(password, assertCurrent);
97
- },
98
- async resume(assertCurrent) {
99
- return requireControls().resume(assertCurrent);
100
- },
101
- }));
102
- if (result !== undefined) {
103
- void Promise.resolve(result).catch(() => undefined);
104
- throw new TypeError('Device unlock receiver must complete synchronously');
105
- }
106
- return (value) => {
107
- controls = value;
108
- };
109
- }
110
- /** Existing browser entry. Native/software hosts must use the software entry. */
10
+ /** Browser keyring with an explicit wallet authority and hardware adapter. */
111
11
  class KeyringManager extends keyring_core_1.KeyringCore {
112
- constructor(sharedHardwareWalletManager, ledgerHost, options) {
113
- if (sharedHardwareWalletManager && ledgerHost) {
114
- throw new Error('Supply a shared hardware manager or a Ledger host, not both');
12
+ constructor(host, options) {
13
+ const { hardwareManager, ledgerHost } = options ?? {};
14
+ if ((!hardwareManager && !ledgerHost) || (hardwareManager && ledgerHost)) {
15
+ throw new Error('Supply exactly one hardware manager or Ledger host');
115
16
  }
116
- const authority = options?.host;
117
- const host = authority === undefined ? undefined : managerHosts.get(authority);
118
- const receive = options?.receiveDeviceUnlock;
119
- if (authority !== undefined && !host)
120
- throw new TypeError('Invalid browser keyring host');
121
- if (receive !== undefined && (!host || typeof receive !== 'function'))
122
- throw new TypeError('Device unlock requires an explicit browser keyring host');
123
- // Reject failed receivers before setting up any shared hardware authority.
124
- const publishControls = receive
125
- ? prepareDeviceUnlockReceiver(receive)
126
- : undefined;
127
- const storage = host?.storage ?? sysweb3.sysweb3Di.getStateStorageDb();
128
- const hardwareManager = sharedHardwareWalletManager ||
129
- (ledgerHost
130
- ? new hardware_wallet_manager_1.HardwareWalletManager(ledgerHost)
131
- : hardware_wallet_manager_singleton_1.HardwareWalletManagerSingleton.getInstance());
17
+ if (typeof options.captureEvmSubmission !== 'function')
18
+ throw new TypeError('Browser keyring requires durable EVM submission');
19
+ const { binding, publishControls } = (0, keyring_host_1.prepareKeyringHost)(host, options);
20
+ const manager = hardwareManager ?? new hardware_wallet_manager_1.HardwareWalletManager(ledgerHost);
132
21
  const trezorSigner = new trezor_1.TrezorKeyring();
133
- const ledgerSigner = new ledger_1.LedgerKeyring(hardwareManager, ledgerHost);
134
- let controls;
135
- const deviceUnlock = host && publishControls
136
- ? {
137
- port: host.port,
138
- receive(value) {
139
- controls = value;
140
- },
141
- }
142
- : undefined;
143
- super({
144
- authority: authority ?? legacyAuthority,
145
- captureEvmSubmission: options?.captureEvmSubmission,
146
- storage,
147
- vaultPersistence: host?.vaultPersistence ?? legacyVaultPersistence,
22
+ const ledgerSigner = new ledger_1.LedgerKeyring(manager, ledgerHost);
23
+ super(binding, {
148
24
  ledgerSigner,
149
25
  trezorSigner,
150
26
  syscoinHardwareSigners: {
151
27
  ledger: (0, hardware_psbt_1.createLedgerPsbtSigner)(ledgerSigner),
152
28
  trezor: (0, hardware_psbt_1.createTrezorPsbtSigner)(trezorSigner),
153
29
  },
154
- ...(host ? { sessionOwner: host.sessionOwner, deviceUnlock } : {}),
155
30
  });
156
- if (host) {
157
- this.receiveSessionOwnership = () => {
158
- throw new Error('Direct session injection is unavailable in this host');
159
- };
160
- }
161
- if (publishControls) {
162
- if (!controls)
163
- throw new Error('Device unlock controls are unavailable');
164
- publishControls(controls);
165
- }
31
+ publishControls?.();
166
32
  }
167
- static async createInitialized(seed, password, vaultStateGetter, options) {
168
- const keyring = new KeyringManager(undefined, undefined, {
169
- captureEvmSubmission: options?.captureEvmSubmission,
170
- });
33
+ static async createInitialized(host, seed, password, vaultStateGetter, options) {
34
+ const keyring = new KeyringManager(host, options);
171
35
  keyring.setVaultStateGetter(vaultStateGetter);
172
36
  await keyring.initializeWalletSecurely(seed, password);
173
37
  return keyring;
@@ -1 +1 @@
1
- {"version":3,"file":"keyring-manager.js","sourceRoot":"","sources":["../../src/keyring-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyring-manager.js","sourceRoot":"","sources":["../../src/keyring-manager.ts"],"names":[],"mappings":";;;AAAA,uEAAkE;AAClE,iDAA6C;AAC7C,iDAAoD;AACpD,qCAAyC;AACzC,gEAGsC;AACtC,qCAAyC;AAyBzC,8EAA8E;AAC9E,MAAa,cACX,SAAQ,0BAAyC;IAGjD,YAAY,IAAiB,EAAE,OAA8B;QAC3D,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,CAAC,eAAe,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,IAAI,UAAU,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,OAAO,OAAO,CAAC,oBAAoB,KAAK,UAAU;YACpD,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;QACzE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,IAAA,iCAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,eAAe,IAAI,IAAI,+CAAqB,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,IAAI,sBAAa,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,sBAAa,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC5D,KAAK,CAAC,OAAO,EAAE;YACb,YAAY;YACZ,YAAY;YACZ,sBAAsB,EAAE;gBACtB,MAAM,EAAE,IAAA,sCAAsB,EAAC,YAAY,CAAC;gBAC5C,MAAM,EAAE,IAAA,sCAAsB,EAAC,YAAY,CAAC;aAC7C;SACF,CAAC,CAAC;QACH,eAAe,EAAE,EAAE,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,iBAAiB,CACnC,IAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,gBAA2B,EAC3B,OAA8B;QAE9B,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC9C,MAAM,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAtCD,wCAsCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"host-types.js","sourceRoot":"","sources":["../../../src/ledger/host-types.ts"],"names":[],"mappings":";;;AAgJA,0CAOC;AAPD,SAAgB,eAAe,CAC7B,IAAY,EACZ,OAAe;IAIf,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAEM,MAAM,oBAAoB,GAAG,GAAG,EAAE,CACvC,eAAe,CAAC,4BAA4B,EAAE,0BAA0B,CAAC,CAAC;AAD/D,QAAA,oBAAoB,wBAC2C"}
1
+ {"version":3,"file":"host-types.js","sourceRoot":"","sources":["../../../src/ledger/host-types.ts"],"names":[],"mappings":";;;AAsJA,0CAOC;AAPD,SAAgB,eAAe,CAC7B,IAAY,EACZ,OAAe;IAIf,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAEM,MAAM,oBAAoB,GAAG,GAAG,EAAE,CACvC,eAAe,CAAC,4BAA4B,EAAE,0BAA0B,CAAC,CAAC;AAD/D,QAAA,oBAAoB,wBAC2C"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LedgerKeyring = void 0;
4
4
  const eth_sig_util_1 = require("@metamask/eth-sig-util");
5
5
  const ethers_1 = require("ethers");
6
+ const hardware_transaction_authority_1 = require("../hardware-transaction-authority");
6
7
  const hardware_wallet_manager_1 = require("../hardware-wallet-manager");
7
8
  const host_types_1 = require("./host-types");
8
9
  const invalidRequest = () => (0, host_types_1.ledgerHostError)('LEDGER_INVALID_REQUEST', 'Invalid Ledger signing request');
@@ -116,7 +117,8 @@ class LedgerKeyring {
116
117
  });
117
118
  return this.run((host) => host.utxo.signMessage(approved));
118
119
  };
119
- this.signPsbt = (request) => {
120
+ this.signPsbt = async (request, authority) => {
121
+ const owner = (0, hardware_transaction_authority_1.captureHardwareTransactionAuthority)(authority);
120
122
  const approved = Object.freeze({
121
123
  currency: request.currency,
122
124
  slip44: request.slip44,
@@ -124,7 +126,19 @@ class LedgerKeyring {
124
126
  accountXpub: request.accountXpub,
125
127
  psbtBase64: request.psbtBase64,
126
128
  });
127
- return this.run((host) => host.utxo.signPsbt(approved));
129
+ try {
130
+ return await this.run(async (host, assertCurrent) => {
131
+ owner.assertCurrent();
132
+ const result = await host.utxo.signPsbt(approved, owner);
133
+ owner.assertCurrent();
134
+ assertCurrent();
135
+ return result;
136
+ }, owner);
137
+ }
138
+ catch (error) {
139
+ owner.assertCurrent();
140
+ throw error;
141
+ }
128
142
  };
129
143
  this.evm = {
130
144
  getEvmAddressAndPubKey: async (request) => {
@@ -144,7 +158,8 @@ class LedgerKeyring {
144
158
  }
145
159
  });
146
160
  },
147
- signEVMTransaction: async (request) => {
161
+ signEVMTransaction: async (request, authority) => {
162
+ const owner = (0, hardware_transaction_authority_1.captureHardwareTransactionAuthority)(authority);
148
163
  const index = accountIndex(request.accountIndex);
149
164
  const expected = approvedAddress(request.expectedAddress);
150
165
  let transaction;
@@ -162,19 +177,27 @@ class LedgerKeyring {
162
177
  unsignedTxHex: transaction.unsignedSerialized.replace(/^0x/, ''),
163
178
  };
164
179
  const digest = transaction.unsignedHash;
165
- return this.run(async (host, assertCurrent) => {
166
- const result = await host.evm.signTransaction(approved);
167
- assertCurrent();
168
- const signature = checkedSignature(result, digest, expected);
169
- if (signature.legacyChainId !== null &&
170
- signature.legacyChainId !== transaction.chainId)
171
- throw invalidSignature();
172
- return {
173
- r: signature.r.slice(2),
174
- s: signature.s.slice(2),
175
- v: signature.v.toString(16),
176
- };
177
- });
180
+ try {
181
+ return await this.run(async (host, assertCurrent) => {
182
+ owner.assertCurrent();
183
+ const result = await host.evm.signTransaction(approved, owner);
184
+ owner.assertCurrent();
185
+ assertCurrent();
186
+ const signature = checkedSignature(result, digest, expected);
187
+ if (signature.legacyChainId !== null &&
188
+ signature.legacyChainId !== transaction.chainId)
189
+ throw invalidSignature();
190
+ return {
191
+ r: signature.r.slice(2),
192
+ s: signature.s.slice(2),
193
+ v: signature.v.toString(16),
194
+ };
195
+ }, owner);
196
+ }
197
+ catch (error) {
198
+ owner.assertCurrent();
199
+ throw error;
200
+ }
178
201
  },
179
202
  signPersonalMessage: async (request) => {
180
203
  const expected = approvedAddress(request.expectedAddress);
@@ -229,12 +252,14 @@ class LedgerKeyring {
229
252
  throw (0, host_types_1.ledgerHostError)('HARDWARE_SIGNER_UNAVAILABLE', 'Ledger requires an authorized device host');
230
253
  return this.host;
231
254
  }
232
- async run(operation) {
255
+ async run(operation, options) {
233
256
  const generation = this.generation;
234
257
  const host = this.requireHost();
235
258
  // A visible platform host owns discovery, permission and device selection.
236
- if (!host.getStatus().connected)
237
- await host.connect({ useGrantedDevices: true });
259
+ if (!host.getStatus().connected) {
260
+ const request = { useGrantedDevices: true };
261
+ await (options ? host.connect(request, options) : host.connect(request));
262
+ }
238
263
  const assertCurrent = () => {
239
264
  if (generation !== this.generation)
240
265
  throw (0, host_types_1.ledgerCancelledError)();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ledger/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ledger/index.ts"],"names":[],"mappings":"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"}
package/cjs/providers.js CHANGED
@@ -273,9 +273,11 @@ class BaseProvider extends ethers_v6_1.JsonRpcProvider {
273
273
  }
274
274
  }
275
275
  }
276
- async verifyConfiguredChainId() {
276
+ async verifyConfiguredChainId(fresh = false) {
277
277
  if (this.configuredChainId == null)
278
278
  return;
279
+ if (fresh)
280
+ return this.fetchAndVerifyConfiguredChainId();
279
281
  if (!this.chainIdVerificationPromise) {
280
282
  this.chainIdVerificationPromise =
281
283
  this.fetchAndVerifyConfiguredChainId().finally(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
package/cjs/software.js CHANGED
@@ -1,65 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.evmSubmissionFailure = exports.submitSignedEvmTransaction = exports.captureEvmSubmission = exports.INetworkType = exports.KeyringAccountType = exports.SoftwareKeyring = exports.createSoftwareKeyringHost = void 0;
3
+ exports.evmSubmissionFailure = exports.submitSignedEvmTransaction = exports.captureEvmSubmission = exports.INetworkType = exports.KeyringAccountType = exports.createKeyringHost = exports.SoftwareKeyring = void 0;
4
4
  /** Software-only entry: explicit host storage, no browser/device initialization. */
5
5
  const keyring_core_1 = require("./keyring-core");
6
- const storage_core_1 = require("./storage-core");
7
- const hosts = new WeakMap();
8
- /** Create once per wallet authority, then share with its per-network keyrings. */
9
- const createSoftwareKeyringHost = (storage, options) => {
10
- const vaultPersistence = (0, storage_core_1.createVaultPersistence)(storage);
11
- if (typeof storage.deleteItem !== 'function') {
12
- throw new TypeError('Keyring storage port must provide deleteItem');
13
- }
14
- const host = Object.freeze({});
15
- const deviceUnlock = options?.deviceUnlock;
16
- hosts.set(host, {
17
- storage,
18
- vaultPersistence,
19
- captureEvmSubmission: options?.captureEvmSubmission,
20
- sessionOwner: deviceUnlock ? { epoch: 0 } : undefined,
21
- deviceUnlock: deviceUnlock &&
22
- Object.freeze({
23
- readCredential: deviceUnlock.readCredential.bind(deviceUnlock),
24
- writeCredential: deviceUnlock.writeCredential.bind(deviceUnlock),
25
- }),
26
- });
27
- return host;
28
- };
29
- exports.createSoftwareKeyringHost = createSoftwareKeyringHost;
30
- const requireHost = (host) => {
31
- const dependencies = hosts.get(host);
32
- if (!dependencies)
33
- throw new TypeError('Invalid software keyring host');
34
- return dependencies;
35
- };
6
+ const keyring_host_1 = require("./keyring-host");
36
7
  class SoftwareKeyring extends keyring_core_1.KeyringCore {
37
- constructor(host, receiveDeviceUnlock) {
38
- const dependencies = requireHost(host);
39
- if (receiveDeviceUnlock && !dependencies.deviceUnlock)
40
- throw new TypeError('Device unlock is unavailable in this host');
41
- super({
42
- authority: host,
43
- captureEvmSubmission: dependencies.captureEvmSubmission,
44
- sessionOwner: dependencies.sessionOwner,
45
- storage: dependencies.storage,
46
- vaultPersistence: dependencies.vaultPersistence,
8
+ constructor(host, options) {
9
+ const { binding, publishControls } = (0, keyring_host_1.prepareKeyringHost)(host, options);
10
+ super(binding, {
47
11
  ledgerSigner: undefined,
48
12
  trezorSigner: undefined,
49
- deviceUnlock: receiveDeviceUnlock && dependencies.deviceUnlock
50
- ? { port: dependencies.deviceUnlock, receive: receiveDeviceUnlock }
51
- : undefined,
52
13
  });
53
- /** Software authorities cannot rebind their backing store after creation. */
54
- this.setStorage = (client) => {
55
- void client;
56
- throw new Error('Storage replacement is unavailable in this host');
57
- };
58
- /** Sessions may move only through the core's same-authority transfer path. */
59
- this.receiveSessionOwnership = (...session) => {
60
- void session;
61
- throw new Error('Direct session injection is unavailable in this host');
62
- };
14
+ publishControls?.();
63
15
  }
64
16
  /**
65
17
  * Derive a fixed-path Ethereum HD runtime account without network or storage
@@ -77,14 +29,16 @@ class SoftwareKeyring extends keyring_core_1.KeyringCore {
77
29
  signPreparedEvmTransaction(request, options) {
78
30
  return this.signPreparedSoftwareEvmTransaction(request, options);
79
31
  }
80
- static async createInitialized(host, seed, password, vaultStateGetter) {
81
- const keyring = new SoftwareKeyring(host);
32
+ static async createInitialized(host, seed, password, vaultStateGetter, options) {
33
+ const keyring = new SoftwareKeyring(host, options);
82
34
  keyring.setVaultStateGetter(vaultStateGetter);
83
35
  await keyring.initializeWalletSecurely(seed, password);
84
36
  return keyring;
85
37
  }
86
38
  }
87
39
  exports.SoftwareKeyring = SoftwareKeyring;
40
+ var keyring_host_2 = require("./keyring-host");
41
+ Object.defineProperty(exports, "createKeyringHost", { enumerable: true, get: function () { return keyring_host_2.createKeyringHost; } });
88
42
  var types_1 = require("./types");
89
43
  Object.defineProperty(exports, "KeyringAccountType", { enumerable: true, get: function () { return types_1.KeyringAccountType; } });
90
44
  var sysweb3_network_1 = require("@sidhujag/sysweb3-network");
@@ -1 +1 @@
1
- {"version":3,"file":"software.js","sourceRoot":"","sources":["../../src/software.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"software.js","sourceRoot":"","sources":["../../src/software.ts"],"names":[],"mappings":";;;AAAA,oFAAoF;AACpF,iDAA6C;AAC7C,iDAAoD;AAcpD,MAAa,eAAgB,SAAQ,0BAAiC;IACpE,YAAY,IAAiB,EAAE,OAAuB;QACpD,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,IAAA,iCAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvE,KAAK,CAAC,OAAO,EAAE;YACb,YAAY,EAAE,SAAS;YACvB,YAAY,EAAE,SAAS;SACxB,CAAC,CAAC;QACH,eAAe,EAAE,EAAE,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,yBAAyB,CAC9B,OAAmC,EACnC,OAAmC;QAEnC,OAAO,IAAI,CAAC,iCAAiC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACI,0BAA0B,CAC/B,OAA0C,EAC1C,OAAkC;QAElC,OAAO,IAAI,CAAC,kCAAkC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,iBAAiB,CACnC,IAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,gBAA2B,EAC3B,OAAuB;QAEvB,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC9C,MAAM,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AA9CD,0CA8CC;AAED,+CAAmD;AAA1C,iHAAA,iBAAiB,OAAA;AAE1B,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,6DAAyD;AAAhD,+GAAA,YAAY,OAAA;AA6BrB,gEAIuC;AAHrC,sHAAA,oBAAoB,OAAA;AACpB,4HAAA,0BAA0B,OAAA;AAC1B,sHAAA,oBAAoB,OAAA"}