UNPKG

@turnkey/ethers

Version:

Turnkey Signer for Ethers

1,006 lines (635 loc) 19.1 kB
# @turnkey/ethers ## 1.1.31 ### Patch Changes - Updated dependencies: - @turnkey/sdk-browser@5.2.3 ## 1.1.30 ### Patch Changes - Updated dependencies: - @turnkey/sdk-browser@5.2.2 ## 1.1.29 ### Patch Changes - [#665](https://github.com/tkhq/sdk/pull/665) [`be0a621`](https://github.com/tkhq/sdk/commit/be0a621fb962bd51d2df1a1e79f5260d7c696772) Author [@amircheikh](https://github.com/amircheikh) - Fix for `no runner registered` error when using mismatched versions of turnkey/http - Updated dependencies [[`be0a621`](https://github.com/tkhq/sdk/commit/be0a621fb962bd51d2df1a1e79f5260d7c696772)]: - @turnkey/http@3.4.2 - @turnkey/sdk-browser@5.2.1 - @turnkey/sdk-server@4.1.1 ## 1.1.28 ### Patch Changes - Updated dependencies [[`5afbe51`](https://github.com/tkhq/sdk/commit/5afbe51949bdd1997fad083a4c1e4272ff7409dc), [`a38a6e3`](https://github.com/tkhq/sdk/commit/a38a6e36dc2bf9abdea64bc817d1cad95b8a289a), [`40c4035`](https://github.com/tkhq/sdk/commit/40c40359ec7096d0bca39ffc93e89361b3b11a1a), [`593de2d`](https://github.com/tkhq/sdk/commit/593de2d9404ec8cf53426f9cf832c13eefa3fbf2)]: - @turnkey/sdk-browser@5.2.0 - @turnkey/sdk-server@4.1.0 - @turnkey/http@3.4.1 - @turnkey/api-key-stamper@0.4.6 ## 1.1.27 ### Patch Changes - Updated dependencies [[`27fe590`](https://github.com/tkhq/sdk/commit/27fe590cdc3eb6a8cde093eeefda2ee1cdc79412)]: - @turnkey/sdk-browser@5.1.0 - @turnkey/sdk-server@4.0.1 ## 1.1.26 ### Patch Changes - Updated dependencies [[`07dfd33`](https://github.com/tkhq/sdk/commit/07dfd3397472687092e1c73b1d68714f421b9ca0), [`e8a5f1b`](https://github.com/tkhq/sdk/commit/e8a5f1b431623c4ff1cb85c6039464b328cf0e6a)]: - @turnkey/sdk-browser@5.0.0 - @turnkey/sdk-server@4.0.0 - @turnkey/http@3.4.0 ## 1.1.25 ### Patch Changes - Updated dependencies [25ca339] - @turnkey/sdk-browser@4.3.0 - @turnkey/sdk-server@3.3.0 - @turnkey/http@3.3.0 ## 1.1.24 ### Patch Changes - Updated dependencies [3f6e415] - Updated dependencies [4d1d775] - @turnkey/sdk-browser@4.2.0 - @turnkey/sdk-server@3.2.0 - @turnkey/http@3.2.0 - @turnkey/api-key-stamper@0.4.5 ## 1.1.23 ### Patch Changes - Updated dependencies [3e4a482] - @turnkey/sdk-browser@4.1.0 - @turnkey/sdk-server@3.1.0 - @turnkey/http@3.1.0 ## 1.1.22 ### Patch Changes - Updated dependencies [7b72769] - @turnkey/sdk-server@3.0.1 ## 1.1.21 ### Patch Changes - Updated dependencies [e501690] - Updated dependencies [d1083bd] - Updated dependencies [f94d36e] - @turnkey/sdk-browser@4.0.0 - @turnkey/sdk-server@3.0.0 - @turnkey/http@3.0.0 ## 1.1.20 ### Patch Changes - Updated dependencies [bf87774] - @turnkey/sdk-browser@3.1.0 ## 1.1.19 ### Patch Changes - Updated dependencies [5ec5187] - @turnkey/sdk-browser@3.0.1 - @turnkey/sdk-server@2.6.1 ## 1.1.18 ### Patch Changes - Updated dependencies [0e4e959] - Updated dependencies [856f449] - Updated dependencies [c9ae537] - Updated dependencies [d4ce5fa] - Updated dependencies [ecdb29a] - Updated dependencies [72890f5] - @turnkey/sdk-browser@3.0.0 - @turnkey/sdk-server@2.6.0 - @turnkey/http@2.22.0 ## 1.1.17 ### Patch Changes - Updated dependencies [93540e7] - Updated dependencies [fdb8bf0] - Updated dependencies [9147962] - @turnkey/sdk-browser@2.0.0 - @turnkey/sdk-server@2.5.0 ## 1.1.16 ### Patch Changes - Updated dependencies [233ae71] - Updated dependencies [9317588] - @turnkey/sdk-browser@1.16.0 - @turnkey/sdk-server@2.4.0 ## 1.1.15 ### Patch Changes - Updated dependencies [56a307e] - @turnkey/sdk-browser@1.15.0 - @turnkey/sdk-server@2.3.0 - @turnkey/http@2.21.0 ## 1.1.14 ### Patch Changes - Updated dependencies [3c44c4a] - Updated dependencies [bfc833f] - @turnkey/sdk-browser@1.14.0 - @turnkey/sdk-server@2.2.0 - @turnkey/http@2.20.0 ## 1.1.13 ### Patch Changes - Updated dependencies [69d2571] - Updated dependencies [57f9cb0] - @turnkey/sdk-browser@1.13.0 - @turnkey/sdk-server@2.1.0 - @turnkey/http@2.19.0 ## 1.1.12 ### Patch Changes - Updated dependencies [755833b] - @turnkey/sdk-browser@1.12.1 - @turnkey/sdk-server@2.0.1 ## 1.1.11 ### Patch Changes - Updated dependencies [6695af2] - Updated dependencies [1ebd4e2] - @turnkey/sdk-browser@1.12.0 - @turnkey/sdk-server@2.0.0 - @turnkey/http@2.18.0 ## 1.1.10 ### Patch Changes - Updated dependencies [053fbfb] - @turnkey/sdk-browser@1.11.2 - @turnkey/sdk-server@1.7.3 - @turnkey/http@2.17.3 ## 1.1.9 ### Patch Changes - Updated dependencies [328d6aa] - Updated dependencies [b90947e] - Updated dependencies [2d5977b] - Updated dependencies [fad7c37] - @turnkey/sdk-browser@1.11.1 - @turnkey/sdk-server@1.7.2 - @turnkey/api-key-stamper@0.4.4 - @turnkey/http@2.17.2 ## 1.1.8 ### Patch Changes - Updated dependencies [7988bc1] - Updated dependencies [538d4fc] - Updated dependencies [12d5aaa] - @turnkey/sdk-browser@1.11.0 - @turnkey/sdk-server@1.7.1 - @turnkey/http@2.17.1 ## 1.1.7 ### Patch Changes - @turnkey/sdk-browser@1.10.2 ## 1.1.6 ### Patch Changes - Updated dependencies [78bc39c] - @turnkey/sdk-server@1.7.0 - @turnkey/http@2.17.0 - @turnkey/sdk-browser@1.10.1 ## 1.1.5 ### Patch Changes - Updated dependencies [8bea78f] - @turnkey/sdk-browser@1.10.0 ## 1.1.4 ### Patch Changes - Updated dependencies [3dd74ac] - Updated dependencies [1e36edf] - Updated dependencies [4df8914] - Updated dependencies [11a9e2f] - @turnkey/sdk-browser@1.9.0 - @turnkey/sdk-server@1.6.0 - @turnkey/http@2.16.0 ## 1.1.3 ### Patch Changes - Updated dependencies [9ebd062] - @turnkey/sdk-browser@1.8.0 - @turnkey/sdk-server@1.5.0 - @turnkey/http@2.15.0 ## 1.1.2 ### Patch Changes - Updated dependencies [abe7138] - Updated dependencies [96d7f99] - @turnkey/sdk-server@1.4.2 - @turnkey/sdk-browser@1.7.1 - @turnkey/http@2.14.2 - @turnkey/api-key-stamper@0.4.3 ## 1.1.1 ### Patch Changes - Updated dependencies [ff059d5] - Updated dependencies [ff059d5] - @turnkey/sdk-browser@1.7.0 - @turnkey/sdk-server@1.4.1 - @turnkey/http@2.14.1 - @turnkey/api-key-stamper@0.4.2 ## 1.1.0 ### Minor Changes - bdded80: Support awaiting consensus - Add a few new helper functions: - `serializeSignature` serializes a raw signature ### Patch Changes - Updated dependencies [c988ed0] - Updated dependencies [848f8d3] - @turnkey/sdk-browser@1.6.0 - @turnkey/sdk-server@1.4.0 - @turnkey/http@2.14.0 ## 1.0.21 ### Patch Changes - Updated dependencies [1813ed5] - @turnkey/sdk-browser@1.5.0 ## 1.0.20 ### Patch Changes - Updated dependencies [bab5393] - Updated dependencies [a16073c] - Updated dependencies [7e7d209] - @turnkey/sdk-browser@1.4.0 ## 1.0.19 ### Patch Changes - Updated dependencies [93dee46] - @turnkey/http@2.13.0 - @turnkey/sdk-browser@1.3.0 - @turnkey/sdk-server@1.3.0 ## 1.0.18 ### Patch Changes - Updated dependencies [e2f2e0b] - @turnkey/sdk-browser@1.2.4 - @turnkey/sdk-server@1.2.4 - @turnkey/http@2.12.3 ## 1.0.17 ### Patch Changes - Updated dependencies - @turnkey/sdk-browser@1.2.3 - @turnkey/sdk-server@1.2.3 ## 1.0.16 ### Patch Changes - Updated dependencies - @turnkey/api-key-stamper@0.4.1 - @turnkey/http@2.12.2 - @turnkey/sdk-browser@1.2.2 - @turnkey/sdk-server@1.2.2 ## 1.0.15 ### Patch Changes - Updated dependencies [f17a229] - @turnkey/http@2.12.1 - @turnkey/sdk-browser@1.2.1 - @turnkey/sdk-server@1.2.1 ## 1.0.14 ### Patch Changes - Updated dependencies - @turnkey/http@2.12.0 - @turnkey/sdk-browser@1.2.0 - @turnkey/sdk-server@1.2.0 ## 1.0.13 ### Patch Changes - Updated dependencies - @turnkey/http@2.11.0 - @turnkey/sdk-browser@1.1.0 - @turnkey/sdk-server@1.1.0 ## 1.0.12 ### Patch Changes - Updated dependencies - @turnkey/sdk-browser@1.0.0 - @turnkey/sdk-server@1.0.0 ## 1.0.11 ### Patch Changes - @turnkey/sdk-browser@0.4.1 ## 1.0.10 ### Patch Changes - Updated dependencies [e4b29da] - @turnkey/sdk-browser@0.4.0 ## 1.0.9 ### Patch Changes - Updated dependencies [d409d81] - @turnkey/sdk-browser@0.3.0 ## 1.0.8 ### Patch Changes - @turnkey/sdk-browser@0.2.1 ## 1.0.7 ### Patch Changes - Updated dependencies - Updated dependencies [e4d2a84] - @turnkey/sdk-browser@0.2.0 - @turnkey/sdk-server@0.2.0 ## 1.0.6 ### Patch Changes - Updated dependencies - @turnkey/sdk-browser@0.1.0 - @turnkey/sdk-server@0.1.0 ## 1.0.5 ### Patch Changes - a6502e6: Add support for new Turnkey Client types ## 1.0.4 ### Patch Changes - Updated dependencies [7a9ce7a] - @turnkey/http@2.10.0 ## 1.0.3 ### Patch Changes - Updated dependencies - @turnkey/http@2.9.1 ## 1.0.2 ### Patch Changes - Updated dependencies [83b62b5] - @turnkey/http@2.9.0 ## 1.0.1 ### Patch Changes - Updated dependencies [46a7d90] - @turnkey/http@2.8.0 ## 1.0.0 ### Major Changes Updates @turnkey/ethers package and examples to use ethers v6. Refer to https://docs.ethers.org/v6/migrating for full migration instructions. ✨Summary of Changes✨ `getBalance` is no longer a method on the signer. It must be obtained via the provider instance. Additionally, it requires an address to be passed in: ``` // before const balance = await connectedSigner.getBalance(); // after // first get the address const address = await connectedSigner.getAddress() // then pass it in const balance = await connectedSigner.provider?.getBalance(address) ``` `getChainId` is no longer a method on the signer. It must be obtained via the network object on the provider instance: ``` // before const chainId = await connectedSigner.getChainId(); // after const chainId = (await connectedSigner.provider?.getNetwork())?.chainId; ``` `getTransactionCount` is no longer a method on the signer. It must be obtained via the provider instance. Additionally, it requires an address to be passed in: ``` // before const transactionCount = await connectedSigner.getTransactionCount(); // after // first get the address const address = await connectedSigner.getAddress() // then pass it in const transactionCount = await connectedSigner.provider?.getTransactionCount(address); ``` `getFeeData` is no longer a method on the signer. It must be obtained via the provider instance: ``` // before const feeData = await connectedSigner.getFeeData(); // after const feeData = await connectedSigner.provider?.getFeeData(); ``` BigNumber -> bigint: numerical values such as, chainId, fee data, balance now use new ES6 primitive `bigint` instead of `BigNumber`. For example, when checking if the balance is `0`, `bigint` must now be used for comparison: ``` // before if (balance.isZero()) {...} // after if (balance === 0n) {...} ``` ## 0.19.9 ### Patch Changes - Updated dependencies - @turnkey/http@2.7.1 ## 0.19.8 ### Patch Changes - Updated dependencies ([c3b423b], [d73725b]) - @turnkey/api-key-stamper@0.4.0 - @turnkey/http@2.7.0 ## 0.19.7 ### Patch Changes - Updated dependencies [f9d636c] - @turnkey/http@2.6.2 ## 0.19.6 ### Patch Changes - Updated dependencies [52e2389] - @turnkey/http@2.6.1 ## 0.19.5 ### Patch Changes - Updated dependencies [7a3c890] - @turnkey/http@2.6.0 ## 0.19.4 ### Patch Changes - Upgrade to Node v18 (#184) - Updated dependencies - @turnkey/api-key-stamper@0.3.1 - @turnkey/http@2.5.1 ## 0.19.3 ### Patch Changes - Updated dependencies [464ac0e] - @turnkey/http@2.5.0 ## 0.19.2 ### Patch Changes - @turnkey/http@2.4.2 ## 0.19.1 ### Patch Changes - Updated dependencies [f87ced8] - @turnkey/http@2.4.1 ## 0.19.0 ### Minor Changes - Use rollup to build ESM and CommonJS, fix ESM support (#174) ### Patch Changes - Updated dependencies [fc5b291] - @turnkey/api-key-stamper@0.3.0 - @turnkey/http@2.4.0 ## 0.18.3 ### Patch Changes - Updated dependencies - @turnkey/api-key-stamper@0.3.0 - @turnkey/http@2.3.1 ## 0.18.2 ### Patch Changes - Updated dependencies [f1bd68a] - @turnkey/http@2.3.0 ## 0.18.1 ### Patch Changes - Updated dependencies [ed50a0f] - Updated dependencies - @turnkey/http@2.2.0 ## 0.18.0 ### Minor Changes - cf8631a: Update interface to support `signWith` This change supports signing with wallet account addresses, private key addresses, or private key IDs. See below for an example: ```js const turnkeyClient = new TurnkeyClient( { baseUrl: "https://api.turnkey.com", }, // This uses API key credentials. // If you're using passkeys, use `@turnkey/webauthn-stamper` to collect webauthn signatures: // new WebauthnStamper({...options...}) new ApiKeyStamper({ apiPublicKey: "...", apiPrivateKey: "...", }), ); // Initialize a Turnkey Signer const turnkeySigner = new TurnkeySigner({ client: turnkeyClient, organizationId: "...", signWith: "...", }); ``` ## 0.17.4 ### Patch Changes - Updated dependencies [bb6ea0b] - @turnkey/http@2.1.0 ## 0.17.3 ### Patch Changes - Updated dependencies - @turnkey/http@2.0.0 - Updated the shape of signing ## 0.17.2 ### Patch Changes - Updated dependencies - @turnkey/http@1.3.0 ## 0.17.1 ### Patch Changes - Update documentation as follows: - ebf87a9: This breaking change adds support for stampers (@turnkey/api-key-stamper / @turnkey/webauthn-stamper) to integrate with API keys or passkeys, bringing it to parity with our [Viem](https://github.com/tkhq/sdk/tree/main/packages/viem) package. See the following examples for sample usage: - [with-ethers](https://github.com/tkhq/sdk/tree/main/examples/with-ethers): updated to use `@turnkey/api-key-stamper` - [with-ethers-and-passkeys](https://github.com/tkhq/sdk/tree/main/examples/with-ethers-and-passkeys): demonstrates usage of `@turnkey/webauthn-stamper` ## 0.17.0 ### Minor Changes - Add support for stampers (@turnkey/api-key-stamper / @turnkey/webauthn-stamper) to integrate with API keys or passkeys. ## 0.16.8 ### Patch Changes - Updated dependencies - @turnkey/http@1.2.0 ## 0.16.7 ### Patch Changes - @turnkey/http@1.1.1 ## 0.16.6 ### Patch Changes - Updated dependencies - @turnkey/http@1.1.0 ## 0.16.5 ### Patch Changes - Updated dependencies [8d1d0e8] - @turnkey/http@1.0.1 ## 0.16.4 ### Patch Changes - 46473ec: This breaking change updates generated code to be shorter and more intuitive to read: - generated fetchers do not include the HTTP method in their name. For example `useGetGetActivity` is now `useGetActivity`, and `usePostSignTransaction` is `useSignTransaction`. - input types follow the same convention (no HTTP method in the name): `TPostCreatePrivateKeysInput` is now `TCreatePrivateKeysInput`. - the "federated" request helpers introduced in `0.18.0` are now named "signed" requests to better reflect what they are. `FederatedRequest` is now `SignedRequest`, and generated types follow. For example: `federatedPostCreatePrivateKeys` is now `signCreatePrivateKeys`, `federatedGetGetActivity` is now `signGetActivity`, and so on. The name updates should be automatically suggested if you use VSCode since the new names are simply shorter versions of the old one. - Updated dependencies [46473ec] - Updated dependencies [38b424f] - @turnkey/http@1.0.0 ## 0.16.3 ### Patch Changes - Updated dependencies - @turnkey/http@0.18.1 ## 0.16.2 ### Patch Changes - Updated dependencies - @turnkey/http@0.18.0 ## 0.16.1 ### Patch Changes - Updated dependencies - @turnkey/http@0.17.1 ## 0.16.0 ### Minor Changes - No public facing changes ### Patch Changes - Updated dependencies [9317f51] - @turnkey/http@0.17.0 ## 0.15.0 ### Minor Changes - No public facing changes ### Patch Changes - Updated dependencies - @turnkey/http@0.16.0 - Fix `.postGetPrivateKey(...)`'s underlying path, while adding `@deprecated` `.postGetPrivateKeyBackwardsCompat(...)` for backward compatibility ## 0.14.1 ### Patch Changes - Updated dependencies - @turnkey/http@0.15.0 ## 0.14.0 ### Minor Changes - `signTransaction(...)` now verifies and drops `tx.from` if present - This mimics the behavior of ethers' Wallet [implementation](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/wallet/src.ts/index.ts#L117-L121) ### Patch Changes - Updated dependencies - @turnkey/http@0.14.0 ## 0.13.2 ### Patch Changes - New `TurnkeyRequestError` error class that contains rich error details - Updated dependencies - @turnkey/http@0.13.2 ## 0.13.1 ### Patch Changes - Error messages now contain Turnkey-specific error details - Updated dependencies - @turnkey/http@0.13.1 ## 0.13.0 ### Minor Changes - No public facing changes ### Patch Changes - Updated dependencies - @turnkey/http@0.13.0 ## 0.12.0 ### Minor Changes - Error messages now contain Turnkey-specific error code and message ### Patch Changes - Updated dependencies - @turnkey/http@0.12.0 ## 0.11.0 ### Minor Changes - `TurnkeySigner` now conforms to ethers' `TypedDataSigner` interface ### Patch Changes - Updated dependencies - @turnkey/http@0.11.0 ## 0.10.0 ### Minor Changes - Added EIP-712 support for signing typed data to Ethers. - Update Gnosis example to make use of new signing functionality. ### Patch Changes - Updated dependencies - @turnkey/http@0.10.0 ## 0.9.0 ### Minor Changes - Improved support for React Native runtime (https://github.com/tkhq/sdk/pull/37) ### Patch Changes - Updated dependencies - @turnkey/http@0.9.0 ## 0.8.1 ### Patch Changes - Switched from `undici` to `cross-fetch` to improve bundler compatibility - Updated dependencies - @turnkey/http@0.8.1 ## 0.8.0 ### Minor Changes - Added browser runtime support — `@turnkey/ethers` is now a universal (isomorphic) package - Dropped support for Node.js v14; we recommend using Node v18+ ### Patch Changes - Updated dependencies - @turnkey/http@0.8.0 ## 0.7.0 ### Minor Changes - No public facing changes ### Patch Changes - Updated dependencies - @turnkey/http@0.7.0 ## 0.6.0 ### Minor Changes - `#signMessage(...)`: move encoding and hashing logic to client side, `eth_sign` style ### Patch Changes - Updated dependencies - @turnkey/http@0.6.0 ## 0.5.0 ### Minor Changes - Arbitrary message signing ### Patch Changes - Updated dependencies - @turnkey/http@0.5.0 ## 0.4.0 ### Minor Changes - `timestamp` -> `timestampMs` ### Patch Changes - Updated dependencies - @turnkey/http@0.4.0 ## 0.3.1 ### Patch Changes - Fix outdated artifact - Updated dependencies - @turnkey/http@0.3.1 ## 0.3.0 ### Minor Changes - `keyId` -> `privateKeyId` everywhere ### Patch Changes - Updated dependencies - @turnkey/http@0.3.0 ## 0.2.0 ### Minor Changes - Change parameter from `keyId` to `privateKeyId` - Bump API version to latest Beta ### Patch Changes - Updated dependencies - @turnkey/http@0.2.0 ## 0.1.3 ### Patch Changes - Support runtime config for credentials - Updated dependencies - @turnkey/http@0.1.3 ## 0.1.2 ### Patch Changes - Drop internal dev dependency - Updated dependencies - @turnkey/http@0.1.2 ## 0.1.1 ### Patch Changes - Initial release - Updated dependencies - @turnkey/http@0.1.1