@injectivelabs/wallet-trezor 1.14.41-alpha.5 → 1.14.41-alpha.7

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 (65) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/index.d.ts +2 -1
  3. package/dist/cjs/index.d.ts.map +1 -1
  4. package/dist/cjs/index.js +5 -3
  5. package/dist/cjs/index.js.map +1 -1
  6. package/dist/cjs/strategy/{strategy.d.ts → Base.d.ts} +8 -3
  7. package/dist/cjs/strategy/Base.d.ts.map +1 -0
  8. package/dist/cjs/strategy/Base.js +284 -0
  9. package/dist/cjs/strategy/Base.js.map +1 -0
  10. package/dist/cjs/strategy/TrezorBip32.d.ts +6 -0
  11. package/dist/cjs/strategy/TrezorBip32.d.ts.map +1 -0
  12. package/dist/cjs/strategy/TrezorBip32.js +18 -0
  13. package/dist/cjs/strategy/TrezorBip32.js.map +1 -0
  14. package/dist/cjs/strategy/TrezorBip44.d.ts +6 -0
  15. package/dist/cjs/strategy/TrezorBip44.d.ts.map +1 -0
  16. package/dist/cjs/strategy/TrezorBip44.js +18 -0
  17. package/dist/cjs/strategy/TrezorBip44.js.map +1 -0
  18. package/dist/cjs/strategy/hw/AccountManager.d.ts +7 -2
  19. package/dist/cjs/strategy/hw/AccountManager.d.ts.map +1 -1
  20. package/dist/cjs/strategy/hw/AccountManager.js +44 -45
  21. package/dist/cjs/strategy/hw/AccountManager.js.map +1 -1
  22. package/dist/cjs/strategy/hw/index.d.ts.map +1 -1
  23. package/dist/cjs/strategy/hw/index.js +34 -48
  24. package/dist/cjs/strategy/hw/index.js.map +1 -1
  25. package/dist/cjs/types.d.ts +4 -0
  26. package/dist/cjs/types.d.ts.map +1 -1
  27. package/dist/cjs/types.js +6 -0
  28. package/dist/cjs/types.js.map +1 -1
  29. package/dist/cjs/utils.d.ts.map +1 -1
  30. package/dist/cjs/utils.js +5 -1
  31. package/dist/cjs/utils.js.map +1 -1
  32. package/dist/esm/index.d.ts +2 -1
  33. package/dist/esm/index.d.ts.map +1 -1
  34. package/dist/esm/index.js +2 -1
  35. package/dist/esm/index.js.map +1 -1
  36. package/dist/esm/strategy/{strategy.d.ts → Base.d.ts} +8 -3
  37. package/dist/esm/strategy/Base.d.ts.map +1 -0
  38. package/dist/esm/strategy/{strategy.js → Base.js} +12 -6
  39. package/dist/esm/strategy/Base.js.map +1 -0
  40. package/dist/esm/strategy/TrezorBip32.d.ts +6 -0
  41. package/dist/esm/strategy/TrezorBip32.d.ts.map +1 -0
  42. package/dist/esm/strategy/TrezorBip32.js +11 -0
  43. package/dist/esm/strategy/TrezorBip32.js.map +1 -0
  44. package/dist/esm/strategy/TrezorBip44.d.ts +6 -0
  45. package/dist/esm/strategy/TrezorBip44.d.ts.map +1 -0
  46. package/dist/esm/strategy/TrezorBip44.js +11 -0
  47. package/dist/esm/strategy/TrezorBip44.js.map +1 -0
  48. package/dist/esm/strategy/hw/AccountManager.d.ts +7 -2
  49. package/dist/esm/strategy/hw/AccountManager.d.ts.map +1 -1
  50. package/dist/esm/strategy/hw/AccountManager.js +20 -7
  51. package/dist/esm/strategy/hw/AccountManager.js.map +1 -1
  52. package/dist/esm/strategy/hw/index.d.ts.map +1 -1
  53. package/dist/esm/strategy/hw/index.js +5 -4
  54. package/dist/esm/strategy/hw/index.js.map +1 -1
  55. package/dist/esm/types.d.ts +4 -0
  56. package/dist/esm/types.d.ts.map +1 -1
  57. package/dist/esm/types.js +5 -1
  58. package/dist/esm/types.js.map +1 -1
  59. package/dist/esm/utils.d.ts.map +1 -1
  60. package/package.json +13 -22
  61. package/dist/cjs/strategy/strategy.d.ts.map +0 -1
  62. package/dist/cjs/strategy/strategy.js +0 -315
  63. package/dist/cjs/strategy/strategy.js.map +0 -1
  64. package/dist/esm/strategy/strategy.d.ts.map +0 -1
  65. package/dist/esm/strategy/strategy.js.map +0 -1
package/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  <!-- TODO -->
4
4
 
5
- [![downloads](https://img.shields.io/npm/dm/@injectivelabs/wallet-ts.svg)](https://www.npmjs.com/package/@injectivelabs/wallet-ts)
6
- [![npm-version](https://img.shields.io/npm/v/@injectivelabs/wallet-ts.svg)](https://www.npmjs.com/package/@injectivelabs/wallet-ts)
5
+ [![downloads](https://img.shields.io/npm/dm/@injectivelabs/wallet-trezor.svg)](https://www.npmjs.com/package/@injectivelabs/wallet-trezor)
6
+ [![npm-version](https://img.shields.io/npm/v/@injectivelabs/wallet-trezor.svg)](https://www.npmjs.com/package/@injectivelabs/wallet-trezor)
7
7
  [![license](https://img.shields.io/npm/l/express.svg)]()
8
8
 
9
9
  _Package to use Trezor Wallets on Injective via the wallet strategy._
@@ -1,3 +1,4 @@
1
- export { TrezorWallet as TrezorWalletStrategy } from './strategy/strategy.js';
1
+ export { TrezorBip32 as TrezorStrategy } from './strategy/TrezorBip32.js';
2
+ export { TrezorBip44 as TrezorBip44Strategy } from './strategy/TrezorBip44.js';
2
3
  export * from './types.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7E,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,2BAA2B,CAAA;AACzE,OAAO,EAAE,WAAW,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAE9E,cAAc,YAAY,CAAA"}
package/dist/cjs/index.js CHANGED
@@ -14,8 +14,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.TrezorWalletStrategy = void 0;
18
- var strategy_js_1 = require("./strategy/strategy.js");
19
- Object.defineProperty(exports, "TrezorWalletStrategy", { enumerable: true, get: function () { return strategy_js_1.TrezorWallet; } });
17
+ exports.TrezorBip44Strategy = exports.TrezorStrategy = void 0;
18
+ var TrezorBip32_js_1 = require("./strategy/TrezorBip32.js");
19
+ Object.defineProperty(exports, "TrezorStrategy", { enumerable: true, get: function () { return TrezorBip32_js_1.TrezorBip32; } });
20
+ var TrezorBip44_js_1 = require("./strategy/TrezorBip44.js");
21
+ Object.defineProperty(exports, "TrezorBip44Strategy", { enumerable: true, get: function () { return TrezorBip44_js_1.TrezorBip44; } });
20
22
  __exportStar(require("./types.js"), exports);
21
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,sDAA6E;AAApE,mHAAA,YAAY,OAAwB;AAE7C,6CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4DAAyE;AAAhE,gHAAA,WAAW,OAAkB;AACtC,4DAA8E;AAArE,qHAAA,WAAW,OAAuB;AAE3C,6CAA0B"}
@@ -1,11 +1,16 @@
1
1
  import { AccountAddress, EthereumChainId } from '@injectivelabs/ts-types';
2
2
  import { TxRaw, TxResponse, DirectSignResponse, AminoSignResponse } from '@injectivelabs/sdk-ts';
3
3
  import { StdSignDoc, WalletDeviceType, BaseConcreteStrategy, ConcreteWalletStrategy, SendTransactionOptions, ConcreteEthereumWalletStrategyArgs } from '@injectivelabs/wallet-base';
4
- export declare class TrezorWallet extends BaseConcreteStrategy implements ConcreteWalletStrategy {
4
+ import { TrezorDerivationPathType } from '../types.js';
5
+ export default class TrezorBase extends BaseConcreteStrategy implements ConcreteWalletStrategy {
6
+ private baseDerivationPath;
5
7
  private trezor;
6
8
  private ethereumOptions;
7
9
  private alchemy;
8
- constructor(args: ConcreteEthereumWalletStrategyArgs);
10
+ private derivationPathType;
11
+ constructor(args: ConcreteEthereumWalletStrategyArgs & {
12
+ derivationPathType: TrezorDerivationPathType;
13
+ });
9
14
  getWalletDeviceType(): Promise<WalletDeviceType>;
10
15
  enable(): Promise<boolean>;
11
16
  disconnect(): Promise<void>;
@@ -35,4 +40,4 @@ export declare class TrezorWallet extends BaseConcreteStrategy implements Concre
35
40
  private getWalletForAddress;
36
41
  private getAlchemy;
37
42
  }
38
- //# sourceMappingURL=strategy.d.ts.map
43
+ //# sourceMappingURL=Base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Base.d.ts","sourceRoot":"","sources":["../../../src/strategy/Base.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAczE,OAAO,EACL,KAAK,EAGL,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,UAAU,EAIV,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EAKtB,kCAAkC,EACnC,MAAM,4BAA4B,CAAA;AAGnC,OAAO,EAAE,wBAAwB,EAAoB,MAAM,aAAa,CAAA;AA8BxE,MAAM,CAAC,OAAO,OAAO,UACnB,SAAQ,oBACR,YAAW,sBAAsB;IAEjC,OAAO,CAAC,kBAAkB,CAAQ;IAElC,OAAO,CAAC,MAAM,CAAU;IAExB,OAAO,CAAC,eAAe,CAA+B;IAEtD,OAAO,CAAC,OAAO,CAAqB;IAEpC,OAAO,CAAC,kBAAkB,CAA0B;gBAGlD,IAAI,EAAE,kCAAkC,GAAG;QACzC,kBAAkB,EAAE,wBAAwB,CAAA;KAC7C;IAUG,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAIhD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAInB,UAAU;IAIV,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAqBxC,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAQ7D,uBAAuB,CAC3B,MAAM,EAAE,GAAG,EACX,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,eAAe,CAAA;KAAE,GAC7D,OAAO,CAAC,MAAM,CAAC;IAsBZ,eAAe,CACnB,WAAW,EAAE,KAAK,EAClB,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,UAAU,CAAC;IAyBhB,mBAAmB,CACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,MAAM,CAAC;IAqDZ,0BAA0B,CAAC,YAAY,EAAE;QAC7C,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,UAAU,CAAA;KACpB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAYxB,qBAAqB,CAAC,YAAY,EAAE;QACxC,KAAK,EAAE,KAAK,CAAA;QACZ,aAAa,EAAE,MAAM,CAAA;QACrB,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;KAChB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWzB,aAAa,CACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,GAAG,UAAU,GACxB,OAAO,CAAC,MAAM,CAAC;IA0BZ,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAOrC,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9D,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;YAMpB,uBAAuB;YA+EvB,mBAAmB;YA2BnB,UAAU;CAuBzB"}
@@ -0,0 +1,284 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /* eslint-disable camelcase */
7
+ /* eslint-disable class-methods-use-this */
8
+ const ts_types_1 = require("@injectivelabs/ts-types");
9
+ const alchemy_sdk_1 = require("alchemy-sdk");
10
+ const ethereumjs_util_1 = require("ethereumjs-util");
11
+ const tx_1 = require("@ethereumjs/tx");
12
+ const common_1 = require("@ethereumjs/common");
13
+ const connect_web_1 = require("@trezor/connect-web");
14
+ const exceptions_1 = require("@injectivelabs/exceptions");
15
+ const sdk_ts_1 = require("@injectivelabs/sdk-ts");
16
+ const wallet_base_1 = require("@injectivelabs/wallet-base");
17
+ const index_js_1 = __importDefault(require("./hw/index.js"));
18
+ const utils_js_1 = require("../utils.js");
19
+ const getNetworkFromChainId = (chainId) => {
20
+ if (chainId === ts_types_1.EthereumChainId.Goerli) {
21
+ return common_1.Chain.Goerli;
22
+ }
23
+ if (chainId === ts_types_1.EthereumChainId.Sepolia) {
24
+ return common_1.Chain.Sepolia;
25
+ }
26
+ if (chainId === ts_types_1.EthereumChainId.Kovan) {
27
+ return common_1.Chain.Goerli;
28
+ }
29
+ return common_1.Chain.Mainnet;
30
+ };
31
+ class TrezorBase extends wallet_base_1.BaseConcreteStrategy {
32
+ baseDerivationPath;
33
+ trezor;
34
+ ethereumOptions;
35
+ alchemy;
36
+ derivationPathType;
37
+ constructor(args) {
38
+ super(args);
39
+ this.baseDerivationPath = wallet_base_1.DEFAULT_BASE_DERIVATION_PATH;
40
+ this.derivationPathType = args.derivationPathType;
41
+ this.trezor = new index_js_1.default();
42
+ this.ethereumOptions = args.ethereumOptions;
43
+ }
44
+ async getWalletDeviceType() {
45
+ return Promise.resolve(wallet_base_1.WalletDeviceType.Hardware);
46
+ }
47
+ async enable() {
48
+ return Promise.resolve(true);
49
+ }
50
+ async disconnect() {
51
+ this.trezor = new index_js_1.default();
52
+ }
53
+ async getAddresses() {
54
+ const { baseDerivationPath, derivationPathType } = this;
55
+ try {
56
+ await this.trezor.connect();
57
+ const accountManager = await this.trezor.getAccountManager();
58
+ const wallets = await accountManager.getWallets(baseDerivationPath, derivationPathType);
59
+ return wallets.map((k) => k.address);
60
+ }
61
+ catch (e) {
62
+ throw new exceptions_1.TrezorException(new Error(e.message), {
63
+ code: exceptions_1.UnspecifiedErrorCode,
64
+ type: exceptions_1.ErrorType.WalletError,
65
+ contextModule: wallet_base_1.WalletAction.GetAccounts,
66
+ });
67
+ }
68
+ }
69
+ async getSessionOrConfirm(address) {
70
+ return Promise.resolve(`0x${Buffer.from(`Confirmation for ${address} at time: ${Date.now()}`).toString('hex')}`);
71
+ }
72
+ async sendEthereumTransaction(txData, options) {
73
+ const signedTransaction = await this.signEthereumTransaction(txData, options);
74
+ try {
75
+ const alchemy = await this.getAlchemy();
76
+ const txReceipt = await alchemy.core.sendTransaction((0, ethereumjs_util_1.addHexPrefix)(signedTransaction.serialize().toString('hex')));
77
+ return txReceipt.hash;
78
+ }
79
+ catch (e) {
80
+ throw new exceptions_1.TrezorException(new Error(e.message), {
81
+ code: exceptions_1.UnspecifiedErrorCode,
82
+ type: exceptions_1.ErrorType.WalletError,
83
+ contextModule: wallet_base_1.WalletAction.SendEthereumTransaction,
84
+ });
85
+ }
86
+ }
87
+ async sendTransaction(transaction, options) {
88
+ const { endpoints, txTimeout } = options;
89
+ if (!endpoints) {
90
+ throw new exceptions_1.WalletException(new Error('You have to pass endpoints.grpc within the options for using Ethereum native wallets'));
91
+ }
92
+ const txApi = new sdk_ts_1.TxGrpcApi(endpoints.grpc);
93
+ const response = await txApi.broadcast(transaction, { txTimeout });
94
+ if (response.code !== 0) {
95
+ throw new exceptions_1.TransactionException(new Error(response.rawLog), {
96
+ code: exceptions_1.UnspecifiedErrorCode,
97
+ contextCode: response.code,
98
+ contextModule: response.codespace,
99
+ });
100
+ }
101
+ return response;
102
+ }
103
+ async signEip712TypedData(eip712json, address) {
104
+ const object = JSON.parse(eip712json);
105
+ const compatibleObject = {
106
+ ...object,
107
+ domain: {
108
+ ...object.domain,
109
+ chainId: object.domain.chainId,
110
+ salt: '0',
111
+ },
112
+ };
113
+ const dataWithHashes = (0, utils_js_1.transformTypedData)(compatibleObject);
114
+ const { types: { EIP712Domain = [], ...otherTypes } = {}, message = {}, domain = {}, primaryType, domain_separator_hash, message_hash, } = dataWithHashes;
115
+ try {
116
+ await this.trezor.connect();
117
+ const { derivationPath } = await this.getWalletForAddress(address);
118
+ const response = await connect_web_1.TrezorConnect.ethereumSignTypedData({
119
+ path: derivationPath,
120
+ data: {
121
+ types: { EIP712Domain, ...otherTypes },
122
+ message,
123
+ domain,
124
+ primaryType,
125
+ },
126
+ message_hash,
127
+ domain_separator_hash,
128
+ metamask_v4_compat: true,
129
+ });
130
+ if (!response.success) {
131
+ // noinspection ExceptionCaughtLocallyJS
132
+ throw new Error((response.payload && response.payload.error) || 'Unknown error');
133
+ }
134
+ return response.payload.signature;
135
+ }
136
+ catch (e) {
137
+ throw new exceptions_1.TrezorException(new Error(e.message), {
138
+ code: exceptions_1.UnspecifiedErrorCode,
139
+ type: exceptions_1.ErrorType.WalletError,
140
+ contextModule: wallet_base_1.WalletAction.SignTransaction,
141
+ });
142
+ }
143
+ }
144
+ async signAminoCosmosTransaction(_transaction) {
145
+ throw new exceptions_1.WalletException(new Error('This wallet does not support signing Cosmos transactions'), {
146
+ code: exceptions_1.UnspecifiedErrorCode,
147
+ type: exceptions_1.ErrorType.WalletError,
148
+ contextModule: wallet_base_1.WalletAction.SendTransaction,
149
+ });
150
+ }
151
+ // eslint-disable-next-line class-methods-use-this
152
+ async signCosmosTransaction(_transaction) {
153
+ throw new exceptions_1.WalletException(new Error('This wallet does not support signing Cosmos transactions'), {
154
+ code: exceptions_1.UnspecifiedErrorCode,
155
+ type: exceptions_1.ErrorType.WalletError,
156
+ contextModule: wallet_base_1.WalletAction.SendTransaction,
157
+ });
158
+ }
159
+ async signArbitrary(signer, data) {
160
+ try {
161
+ await this.trezor.connect();
162
+ const { derivationPath } = await this.getWalletForAddress(signer);
163
+ const response = await connect_web_1.TrezorConnect.ethereumSignMessage({
164
+ path: derivationPath,
165
+ message: (0, sdk_ts_1.toUtf8)(data),
166
+ });
167
+ if (!response.success) {
168
+ throw new Error((response.payload && response.payload.error) || 'Unknown error');
169
+ }
170
+ return response.payload.signature;
171
+ }
172
+ catch (e) {
173
+ throw new exceptions_1.TrezorException(new Error(e.message), {
174
+ code: exceptions_1.UnspecifiedErrorCode,
175
+ type: exceptions_1.ErrorType.WalletError,
176
+ contextModule: wallet_base_1.WalletAction.SignTransaction,
177
+ });
178
+ }
179
+ }
180
+ async getEthereumChainId() {
181
+ const alchemy = await this.getAlchemy();
182
+ const alchemyProvider = await alchemy.config.getProvider();
183
+ return alchemyProvider.network.chainId.toString();
184
+ }
185
+ async getEthereumTransactionReceipt(txHash) {
186
+ return Promise.resolve(txHash);
187
+ }
188
+ // eslint-disable-next-line class-methods-use-this
189
+ async getPubKey() {
190
+ throw new exceptions_1.WalletException(new Error('You can only fetch PubKey from Cosmos native wallets'));
191
+ }
192
+ async signEthereumTransaction(txData, options) {
193
+ const chainId = parseInt(options.ethereumChainId.toString(), 10);
194
+ const alchemy = await this.getAlchemy();
195
+ const nonce = await alchemy.core.getTransactionCount(options.address);
196
+ const common = new common_1.Common({
197
+ chain: getNetworkFromChainId(chainId),
198
+ hardfork: common_1.Hardfork.London,
199
+ });
200
+ const eip1559TxData = {
201
+ from: txData.from,
202
+ data: txData.data,
203
+ to: txData.to,
204
+ nonce: (0, ethereumjs_util_1.addHexPrefix)(nonce.toString(16)),
205
+ gas: (0, ethereumjs_util_1.addHexPrefix)(txData.gas),
206
+ gasLimit: (0, ethereumjs_util_1.addHexPrefix)(txData.gas),
207
+ maxFeePerGas: (0, ethereumjs_util_1.addHexPrefix)(txData.gasPrice || txData.maxFeePerGas),
208
+ maxPriorityFeePerGas: (0, ethereumjs_util_1.addHexPrefix)(txData.maxPriorityFeePerGas || wallet_base_1.TIP_IN_GWEI.toString(16)),
209
+ };
210
+ const tx = tx_1.FeeMarketEIP1559Transaction.fromTxData(eip1559TxData, {
211
+ common,
212
+ });
213
+ const transaction = {
214
+ ...tx.toJSON(),
215
+ chainId,
216
+ };
217
+ try {
218
+ await this.trezor.connect();
219
+ const { derivationPath } = await this.getWalletForAddress(options.address);
220
+ const response = await connect_web_1.TrezorConnect.ethereumSignTransaction({
221
+ path: derivationPath,
222
+ transaction,
223
+ });
224
+ if (!response.success) {
225
+ throw new exceptions_1.TrezorException(new Error((response.payload && response.payload.error) ||
226
+ 'Something happened while signing with Trezor'), {
227
+ code: exceptions_1.UnspecifiedErrorCode,
228
+ type: exceptions_1.ErrorType.WalletError,
229
+ contextModule: wallet_base_1.WalletAction.SignEthereumTransaction,
230
+ });
231
+ }
232
+ const signedTxData = {
233
+ ...eip1559TxData,
234
+ v: `${response.payload.v}`,
235
+ r: `${response.payload.r}`,
236
+ s: `${response.payload.s}`,
237
+ };
238
+ return tx_1.FeeMarketEIP1559Transaction.fromTxData(signedTxData, {
239
+ common,
240
+ });
241
+ }
242
+ catch (e) {
243
+ if (e instanceof exceptions_1.TrezorException) {
244
+ throw e;
245
+ }
246
+ throw new exceptions_1.TrezorException(new Error(e.message), {
247
+ code: exceptions_1.UnspecifiedErrorCode,
248
+ type: exceptions_1.ErrorType.WalletError,
249
+ contextModule: wallet_base_1.WalletAction.SignEthereumTransaction,
250
+ });
251
+ }
252
+ }
253
+ async getWalletForAddress(address) {
254
+ const { baseDerivationPath, derivationPathType } = this;
255
+ const accountManager = await this.trezor.getAccountManager();
256
+ if (!accountManager.hasWalletForAddress(address)) {
257
+ for (let i = 0; i < wallet_base_1.DEFAULT_ADDRESS_SEARCH_LIMIT / wallet_base_1.DEFAULT_NUM_ADDRESSES_TO_FETCH; i += 1) {
258
+ await accountManager.getWallets(baseDerivationPath, derivationPathType);
259
+ if (accountManager.hasWalletForAddress(address)) {
260
+ return (await accountManager.getWalletForAddress(address));
261
+ }
262
+ }
263
+ }
264
+ return (await accountManager.getWalletForAddress(address));
265
+ }
266
+ async getAlchemy() {
267
+ if (this.alchemy) {
268
+ return this.alchemy;
269
+ }
270
+ const { rpcUrl, ethereumChainId } = this.ethereumOptions;
271
+ if (!rpcUrl) {
272
+ throw new exceptions_1.GeneralException(new Error('Please pass rpcUrl within the ethereumOptions'));
273
+ }
274
+ this.alchemy = new alchemy_sdk_1.Alchemy({
275
+ apiKey: (0, wallet_base_1.getKeyFromRpcUrl)(rpcUrl),
276
+ network: ethereumChainId === ts_types_1.EthereumChainId.Mainnet
277
+ ? alchemy_sdk_1.Network.ETH_MAINNET
278
+ : alchemy_sdk_1.Network.ETH_SEPOLIA,
279
+ });
280
+ return this.alchemy;
281
+ }
282
+ }
283
+ exports.default = TrezorBase;
284
+ //# sourceMappingURL=Base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/strategy/Base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ConcreteEthereumWalletStrategyArgs } from '@injectivelabs/wallet-base';
2
+ import TrezorBase from './Base.js';
3
+ export declare class TrezorBip32 extends TrezorBase {
4
+ constructor(args: ConcreteEthereumWalletStrategyArgs);
5
+ }
6
+ //# sourceMappingURL=TrezorBip32.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrezorBip32.d.ts","sourceRoot":"","sources":["../../../src/strategy/TrezorBip32.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAA;AAE/E,OAAO,UAAU,MAAM,WAAW,CAAA;AAElC,qBAAa,WAAY,SAAQ,UAAU;gBAC7B,IAAI,EAAE,kCAAkC;CAMrD"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TrezorBip32 = void 0;
7
+ const types_js_1 = require("../types.js");
8
+ const Base_js_1 = __importDefault(require("./Base.js"));
9
+ class TrezorBip32 extends Base_js_1.default {
10
+ constructor(args) {
11
+ super({
12
+ ...args,
13
+ derivationPathType: types_js_1.TrezorDerivationPathType.Bip32,
14
+ });
15
+ }
16
+ }
17
+ exports.TrezorBip32 = TrezorBip32;
18
+ //# sourceMappingURL=TrezorBip32.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrezorBip32.js","sourceRoot":"","sources":["../../../src/strategy/TrezorBip32.ts"],"names":[],"mappings":";;;;;;AAEA,0CAAsD;AACtD,wDAAkC;AAElC,MAAa,WAAY,SAAQ,iBAAU;IACzC,YAAY,IAAwC;QAClD,KAAK,CAAC;YACJ,GAAG,IAAI;YACP,kBAAkB,EAAE,mCAAwB,CAAC,KAAK;SACnD,CAAC,CAAA;IACJ,CAAC;CACF;AAPD,kCAOC"}
@@ -0,0 +1,6 @@
1
+ import { ConcreteEthereumWalletStrategyArgs } from '@injectivelabs/wallet-base';
2
+ import TrezorBase from './Base.js';
3
+ export declare class TrezorBip44 extends TrezorBase {
4
+ constructor(args: ConcreteEthereumWalletStrategyArgs);
5
+ }
6
+ //# sourceMappingURL=TrezorBip44.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrezorBip44.d.ts","sourceRoot":"","sources":["../../../src/strategy/TrezorBip44.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAA;AAE/E,OAAO,UAAU,MAAM,WAAW,CAAA;AAElC,qBAAa,WAAY,SAAQ,UAAU;gBAC7B,IAAI,EAAE,kCAAkC;CAMrD"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TrezorBip44 = void 0;
7
+ const types_js_1 = require("../types.js");
8
+ const Base_js_1 = __importDefault(require("./Base.js"));
9
+ class TrezorBip44 extends Base_js_1.default {
10
+ constructor(args) {
11
+ super({
12
+ ...args,
13
+ derivationPathType: types_js_1.TrezorDerivationPathType.Bip44,
14
+ });
15
+ }
16
+ }
17
+ exports.TrezorBip44 = TrezorBip44;
18
+ //# sourceMappingURL=TrezorBip44.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrezorBip44.js","sourceRoot":"","sources":["../../../src/strategy/TrezorBip44.ts"],"names":[],"mappings":";;;;;;AAEA,0CAAsD;AACtD,wDAAkC;AAElC,MAAa,WAAY,SAAQ,iBAAU;IACzC,YAAY,IAAwC;QAClD,KAAK,CAAC;YACJ,GAAG,IAAI;YACP,kBAAkB,EAAE,mCAAwB,CAAC,KAAK;SACnD,CAAC,CAAA;IACJ,CAAC;CACF;AAPD,kCAOC"}
@@ -1,11 +1,16 @@
1
1
  import { AccountAddress } from '@injectivelabs/ts-types';
2
2
  import HDNode from 'hdkey';
3
- import { TrezorWalletInfo } from '../../types.js';
3
+ import { TrezorWalletInfo, TrezorDerivationPathType } from '../../types.js';
4
4
  export default class AccountManager {
5
5
  private wallets;
6
6
  private hdKey;
7
7
  constructor(hdKey: HDNode);
8
- getWallets(): Promise<TrezorWalletInfo[]>;
8
+ getWallets(baseDerivationPath: string, derivationPathType: TrezorDerivationPathType): Promise<TrezorWalletInfo[]>;
9
+ getTrezorDerivationPathBasedOnType: ({ fullBaseDerivationPath, derivationPathType, index, }: {
10
+ fullBaseDerivationPath: string;
11
+ derivationPathType: TrezorDerivationPathType;
12
+ index: number;
13
+ }) => string;
9
14
  private getWalletsBasedOnIndex;
10
15
  private hasWallets;
11
16
  private hasWalletsInOffset;
@@ -1 +1 @@
1
- {"version":3,"file":"AccountManager.d.ts","sourceRoot":"","sources":["../../../../src/strategy/hw/AccountManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,MAAM,MAAM,OAAO,CAAA;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAkBjD,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,OAAO,CAAC,OAAO,CAAyB;IAExC,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM;IAKnB,UAAU,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAiBjC,sBAAsB;IAoBpC,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,SAAS;IAWjB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAQ/C,mBAAmB,CACvB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAMxC,KAAK;CAGN"}
1
+ {"version":3,"file":"AccountManager.d.ts","sourceRoot":"","sources":["../../../../src/strategy/hw/AccountManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,MAAM,MAAM,OAAO,CAAA;AAC1B,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAiB3E,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,OAAO,CAAC,OAAO,CAAyB;IAExC,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM;IAKnB,UAAU,CACd,kBAAkB,EAAE,MAAM,EAC1B,kBAAkB,EAAE,wBAAwB,GAC3C,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAmB9B,kCAAkC,2DAI/B;QACD,sBAAsB,EAAE,MAAM,CAAA;QAC9B,kBAAkB,EAAE,wBAAwB,CAAA;QAC5C,KAAK,EAAE,MAAM,CAAA;KACd,KAAG,MAAM,CAMT;YAEa,sBAAsB;IA4BpC,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,SAAS;IAWjB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAQ/C,mBAAmB,CACvB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAMxC,KAAK;CAGN"}
@@ -1,58 +1,59 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
- const ethereumjs_util_1 = require("ethereumjs-util");
3
+ const types_js_1 = require("../../types.js");
4
+ const sdk_ts_1 = require("@injectivelabs/sdk-ts");
13
5
  const wallet_base_1 = require("@injectivelabs/wallet-base");
14
6
  const addressOfHDKey = (hdKey) => {
15
7
  const shouldSanitizePublicKey = true;
16
8
  const derivedPublicKey = hdKey.publicKey;
17
- const ethereumAddressWithoutPrefix = (0, ethereumjs_util_1.publicToAddress)(derivedPublicKey, shouldSanitizePublicKey).toString('hex');
18
- const address = (0, ethereumjs_util_1.addHexPrefix)(ethereumAddressWithoutPrefix);
9
+ const ethereumAddressWithoutPrefix = Buffer.from((0, sdk_ts_1.publicKeyToAddress)(derivedPublicKey, shouldSanitizePublicKey)).toString('hex');
10
+ const address = (0, sdk_ts_1.addHexPrefix)(ethereumAddressWithoutPrefix);
19
11
  return address;
20
12
  };
21
13
  class AccountManager {
14
+ wallets = [];
15
+ hdKey;
22
16
  constructor(hdKey) {
23
- this.wallets = [];
24
17
  this.wallets = [];
25
18
  this.hdKey = hdKey;
26
19
  }
27
- getWallets() {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const { start, end } = this.getOffset();
30
- /**
31
- * 1. Wallets are not yet fetched at all,
32
- * 2. Wallets are not yet fetched for that offset
33
- */
34
- if (!this.hasWallets() || !this.hasWalletsInOffset(start)) {
35
- yield this.getWalletsBasedOnIndex({
36
- start,
37
- end,
38
- });
39
- }
40
- return this.wallets.slice(start, end);
41
- });
20
+ async getWallets(baseDerivationPath, derivationPathType) {
21
+ const { start, end } = this.getOffset();
22
+ /**
23
+ * 1. Wallets are not yet fetched at all,
24
+ * 2. Wallets are not yet fetched for that offset
25
+ */
26
+ if (!this.hasWallets() || !this.hasWalletsInOffset(start)) {
27
+ await this.getWalletsBasedOnIndex({
28
+ start,
29
+ end,
30
+ baseDerivationPath,
31
+ derivationPathType,
32
+ });
33
+ }
34
+ return this.wallets.slice(start, end);
42
35
  }
43
- getWalletsBasedOnIndex(_a) {
44
- return __awaiter(this, arguments, void 0, function* ({ start, end, }) {
45
- for (let index = start; index < end; index += 1) {
46
- const path = `m/${index}`;
47
- const hdKey = this.hdKey.derive(path);
48
- const address = addressOfHDKey(hdKey);
49
- this.wallets.push({
50
- hdKey,
51
- address: address.toLowerCase(),
52
- derivationPath: `${wallet_base_1.DEFAULT_BASE_DERIVATION_PATH}/0'/0/${index}`,
53
- });
54
- }
55
- });
36
+ getTrezorDerivationPathBasedOnType = ({ fullBaseDerivationPath, derivationPathType, index, }) => {
37
+ if (derivationPathType === types_js_1.TrezorDerivationPathType.Bip44) {
38
+ return `${fullBaseDerivationPath}/${index}'/0/0`;
39
+ }
40
+ return `${fullBaseDerivationPath}/0'/0/${index}`;
41
+ };
42
+ async getWalletsBasedOnIndex({ start, end, baseDerivationPath, derivationPathType, }) {
43
+ for (let index = start; index < end; index += 1) {
44
+ const path = this.getTrezorDerivationPathBasedOnType({
45
+ fullBaseDerivationPath: baseDerivationPath,
46
+ derivationPathType,
47
+ index,
48
+ });
49
+ const hdKey = this.hdKey.derive(path);
50
+ const address = addressOfHDKey(hdKey);
51
+ this.wallets.push({
52
+ hdKey,
53
+ derivationPath: path,
54
+ address: address.toLowerCase(),
55
+ });
56
+ }
56
57
  }
57
58
  hasWallets() {
58
59
  return this.wallets.length > 0;
@@ -72,10 +73,8 @@ class AccountManager {
72
73
  hasWalletForAddress(address) {
73
74
  return (this.wallets.find((wallet) => wallet.address.toLowerCase() === address.toLowerCase()) !== undefined);
74
75
  }
75
- getWalletForAddress(address) {
76
- return __awaiter(this, void 0, void 0, function* () {
77
- return this.wallets.find((wallet) => wallet.address.toLowerCase() === address.toLowerCase());
78
- });
76
+ async getWalletForAddress(address) {
77
+ return this.wallets.find((wallet) => wallet.address.toLowerCase() === address.toLowerCase());
79
78
  }
80
79
  reset() {
81
80
  this.wallets = [];
@@ -1 +1 @@
1
- {"version":3,"file":"AccountManager.js","sourceRoot":"","sources":["../../../../src/strategy/hw/AccountManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccountManager.js","sourceRoot":"","sources":["../../../../src/strategy/hw/AccountManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/strategy/hw/index.ts"],"names":[],"mappings":"AAGA,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAWhD,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,CAAC,cAAc,CAA8B;IAEpD,OAAO,CAAC,KAAK,CAAuB;;IAU9B,OAAO;IAIP,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAQlD,OAAO,CAAC,UAAU;YAIJ,IAAI;CAmCnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/strategy/hw/index.ts"],"names":[],"mappings":"AAGA,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAQhD,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,CAAC,cAAc,CAA8B;IAEpD,OAAO,CAAC,KAAK,CAAuB;;IAa9B,OAAO;IAIP,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC;IAQlD,OAAO,CAAC,UAAU;YAIJ,IAAI;CAmCnB"}