viem 2.28.4 → 2.29.0

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 (84) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/_cjs/actions/public/watchBlocks.js +4 -4
  3. package/_cjs/actions/public/watchBlocks.js.map +1 -1
  4. package/_cjs/actions/wallet/getCapabilities.js +8 -2
  5. package/_cjs/actions/wallet/getCapabilities.js.map +1 -1
  6. package/_cjs/errors/version.js +1 -1
  7. package/_cjs/experimental/erc7846/actions/connect.js +108 -0
  8. package/_cjs/experimental/erc7846/actions/connect.js.map +1 -0
  9. package/_cjs/experimental/erc7846/actions/disconnect.js +7 -0
  10. package/_cjs/experimental/erc7846/actions/disconnect.js.map +1 -0
  11. package/_cjs/experimental/erc7846/decorators/erc7846.js +14 -0
  12. package/_cjs/experimental/erc7846/decorators/erc7846.js.map +1 -0
  13. package/_cjs/experimental/erc7846/index.js +10 -0
  14. package/_cjs/experimental/erc7846/index.js.map +1 -0
  15. package/_cjs/experimental/erc7895/actions/addSubAccount.js +21 -0
  16. package/_cjs/experimental/erc7895/actions/addSubAccount.js.map +1 -0
  17. package/_cjs/experimental/erc7895/decorators/erc7895.js +12 -0
  18. package/_cjs/experimental/erc7895/decorators/erc7895.js.map +1 -0
  19. package/_cjs/experimental/erc7895/index.js +8 -0
  20. package/_cjs/experimental/erc7895/index.js.map +1 -0
  21. package/_cjs/experimental/index.js +5 -1
  22. package/_cjs/experimental/index.js.map +1 -1
  23. package/_esm/actions/public/watchBlocks.js +4 -4
  24. package/_esm/actions/public/watchBlocks.js.map +1 -1
  25. package/_esm/actions/wallet/getCapabilities.js +8 -2
  26. package/_esm/actions/wallet/getCapabilities.js.map +1 -1
  27. package/_esm/errors/version.js +1 -1
  28. package/_esm/experimental/erc7846/actions/connect.js +128 -0
  29. package/_esm/experimental/erc7846/actions/connect.js.map +1 -0
  30. package/_esm/experimental/erc7846/actions/disconnect.js +25 -0
  31. package/_esm/experimental/erc7846/actions/disconnect.js.map +1 -0
  32. package/_esm/experimental/erc7846/decorators/erc7846.js +26 -0
  33. package/_esm/experimental/erc7846/decorators/erc7846.js.map +1 -0
  34. package/_esm/experimental/erc7846/index.js +5 -0
  35. package/_esm/experimental/erc7846/index.js.map +1 -0
  36. package/_esm/experimental/erc7895/actions/addSubAccount.js +42 -0
  37. package/_esm/experimental/erc7895/actions/addSubAccount.js.map +1 -0
  38. package/_esm/experimental/erc7895/decorators/erc7895.js +27 -0
  39. package/_esm/experimental/erc7895/decorators/erc7895.js.map +1 -0
  40. package/_esm/experimental/erc7895/index.js +4 -0
  41. package/_esm/experimental/erc7895/index.js.map +1 -0
  42. package/_esm/experimental/index.js +2 -0
  43. package/_esm/experimental/index.js.map +1 -1
  44. package/_types/actions/wallet/getCapabilities.d.ts.map +1 -1
  45. package/_types/errors/version.d.ts +1 -1
  46. package/_types/experimental/erc7846/actions/connect.d.ts +41 -0
  47. package/_types/experimental/erc7846/actions/connect.d.ts.map +1 -0
  48. package/_types/experimental/erc7846/actions/disconnect.d.ts +28 -0
  49. package/_types/experimental/erc7846/actions/disconnect.d.ts.map +1 -0
  50. package/_types/experimental/erc7846/decorators/erc7846.d.ts +68 -0
  51. package/_types/experimental/erc7846/decorators/erc7846.d.ts.map +1 -0
  52. package/_types/experimental/erc7846/index.d.ts +4 -0
  53. package/_types/experimental/erc7846/index.d.ts.map +1 -0
  54. package/_types/experimental/erc7895/actions/addSubAccount.d.ts +56 -0
  55. package/_types/experimental/erc7895/actions/addSubAccount.d.ts.map +1 -0
  56. package/_types/experimental/erc7895/decorators/erc7895.d.ts +52 -0
  57. package/_types/experimental/erc7895/decorators/erc7895.d.ts.map +1 -0
  58. package/_types/experimental/erc7895/index.d.ts +3 -0
  59. package/_types/experimental/erc7895/index.d.ts.map +1 -0
  60. package/_types/experimental/index.d.ts +2 -0
  61. package/_types/experimental/index.d.ts.map +1 -1
  62. package/_types/index.d.ts +1 -1
  63. package/_types/index.d.ts.map +1 -1
  64. package/_types/types/capabilities.d.ts +24 -2
  65. package/_types/types/capabilities.d.ts.map +1 -1
  66. package/_types/types/eip1193.d.ts +66 -0
  67. package/_types/types/eip1193.d.ts.map +1 -1
  68. package/actions/public/watchBlocks.ts +4 -4
  69. package/actions/wallet/getCapabilities.ts +7 -2
  70. package/errors/version.ts +1 -1
  71. package/experimental/erc7846/actions/connect.ts +179 -0
  72. package/experimental/erc7846/actions/disconnect.ts +36 -0
  73. package/experimental/erc7846/decorators/erc7846.ts +88 -0
  74. package/experimental/erc7846/index.ts +13 -0
  75. package/experimental/erc7846/package.json +6 -0
  76. package/experimental/erc7895/actions/addSubAccount.ts +84 -0
  77. package/experimental/erc7895/decorators/erc7895.ts +70 -0
  78. package/experimental/erc7895/index.ts +9 -0
  79. package/experimental/erc7895/package.json +6 -0
  80. package/experimental/index.ts +10 -0
  81. package/index.ts +1 -1
  82. package/package.json +9 -1
  83. package/types/capabilities.ts +40 -2
  84. package/types/eip1193.ts +70 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # viem
2
2
 
3
+ ## 2.29.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#3621](https://github.com/wevm/viem/pull/3621) [`cede184b5ed9519ce8538bd9e99db4961d531798`](https://github.com/wevm/viem/commit/cede184b5ed9519ce8538bd9e99db4961d531798) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Added `addSubAccount` Action as per [ERC-7895](https://github.com/ethereum/ERCs/blob/4d3d641ee3c84750baf461b8dd71d27c424417a9/ERCS/erc-7895.md).
8
+
9
+ - [#3619](https://github.com/wevm/viem/pull/3619) [`4563ed5147f13c679043fae30d955b7a72cfc60f`](https://github.com/wevm/viem/commit/4563ed5147f13c679043fae30d955b7a72cfc60f) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Added capabilities for the `connect` Action:
10
+
11
+ - `unstable_addSubAccount`: Adds a sub-account to the connected account. [See more](https://github.com/ethereum/ERCs/blob/4d3d641ee3c84750baf461b8dd71d27c424417a9/ERCS/erc-7895.md).
12
+ - `unstable_getSubAccounts`: Returns all sub-accounts of the connected account. [See more](https://github.com/ethereum/ERCs/blob/4d3d641ee3c84750baf461b8dd71d27c424417a9/ERCS/erc-7895.md).
13
+ - `unstable_signInWithEthereum`: Connect + Authenticate using Sign-In with Ethereum.[See more](https://github.com/ethereum/ERCs/blob/abd1c9f4eda2d6ad06ade0e3af314637a27d1ee7/ERCS/erc-7846.md#signinwithethereum).
14
+
15
+ - [#3619](https://github.com/wevm/viem/pull/3619) [`4563ed5147f13c679043fae30d955b7a72cfc60f`](https://github.com/wevm/viem/commit/4563ed5147f13c679043fae30d955b7a72cfc60f) Thanks [@jxom](https://github.com/jxom)! - **Experimental:** Added `connect` + `disconnect` Actions as per [ERC-7836: Wallet Connection API (`wallet_connect`)](https://github.com/ethereum/ERCs/pull/779).
16
+
17
+ ### Patch Changes
18
+
19
+ - [#3626](https://github.com/wevm/viem/pull/3626) [`da3a50f01b8383c2c6023a57806aae0fb6e6e585`](https://github.com/wevm/viem/commit/da3a50f01b8383c2c6023a57806aae0fb6e6e585) Thanks [@fubhy](https://github.com/fubhy)! - Updated `watchBlocks` to also work from genesis blocks using `emitMissed`.
20
+
3
21
  ## 2.28.4
4
22
 
5
23
  ### Patch Changes
@@ -35,7 +35,7 @@ function watchBlocks(client, { blockTag = 'latest', emitMissed = false, emitOnBe
35
35
  blockTag,
36
36
  includeTransactions,
37
37
  });
38
- if (block.number && prevBlock?.number) {
38
+ if (block.number !== null && prevBlock?.number != null) {
39
39
  if (block.number === prevBlock.number)
40
40
  return;
41
41
  if (block.number - prevBlock.number > 1 && emitMissed) {
@@ -49,9 +49,9 @@ function watchBlocks(client, { blockTag = 'latest', emitMissed = false, emitOnBe
49
49
  }
50
50
  }
51
51
  }
52
- if (!prevBlock?.number ||
53
- (blockTag === 'pending' && !block?.number) ||
54
- (block.number && block.number > prevBlock.number)) {
52
+ if (prevBlock?.number == null ||
53
+ (blockTag === 'pending' && block?.number == null) ||
54
+ (block.number !== null && block.number > prevBlock.number)) {
55
55
  emit.onBlock(block, prevBlock);
56
56
  prevBlock = block;
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"watchBlocks.js","sourceRoot":"","sources":["../../../actions/public/watchBlocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watchBlocks.js","sourceRoot":"","sources":["../../../actions/public/watchBlocks.ts"],"names":[],"mappings":";;AAiGA,kCAyKC;AApQD,2DAAoD;AACpD,uDAAgD;AAChD,iDAA8D;AAC9D,2DAA6E;AAE7E,+CAAiE;AAsFjE,SAAgB,WAAW,CAMzB,MAAgC,EAChC,EACE,QAAQ,GAAG,QAAQ,EACnB,UAAU,GAAG,KAAK,EAClB,WAAW,GAAG,KAAK,EACnB,OAAO,EACP,OAAO,EACP,mBAAmB,EAAE,oBAAoB,EACzC,IAAI,EAAE,KAAK,EACX,eAAe,GAAG,MAAM,CAAC,eAAe,GAC+B;IAEzE,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE;QAC1B,IAAI,OAAO,KAAK,KAAK,WAAW;YAAE,OAAO,KAAK,CAAA;QAC9C,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW;YAAE,OAAO,KAAK,CAAA;QACvD,IACE,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU;YACpC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW;YAE1D,OAAO,KAAK,CAAA;QACd,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,EAAE,CAAA;IACJ,MAAM,mBAAmB,GAAG,oBAAoB,IAAI,KAAK,CAAA;IAEzD,IAAI,SAES,CAAA;IAEb,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,UAAU,GAAG,IAAA,wBAAS,EAAC;YAC3B,aAAa;YACb,MAAM,CAAC,GAAG;YACV,QAAQ;YACR,UAAU;YACV,WAAW;YACX,mBAAmB;YACnB,eAAe;SAChB,CAAC,CAAA;QAEF,OAAO,IAAA,oBAAO,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CACxD,IAAA,cAAI,EACF,KAAK,IAAI,EAAE;YACT,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAS,EAC3B,MAAM,EACN,sBAAQ,EACR,UAAU,CACX,CAAC;oBACA,QAAQ;oBACR,mBAAmB;iBACpB,CAAC,CAAA;gBACF,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,SAAS,EAAE,MAAM,IAAI,IAAI,EAAE,CAAC;oBAGvD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;wBAAE,OAAM;oBAI7C,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;wBACtD,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,MAAM,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC3D,MAAM,KAAK,GAAG,CAAC,MAAM,IAAA,wBAAS,EAC5B,MAAM,EACN,sBAAQ,EACR,UAAU,CACX,CAAC;gCACA,WAAW,EAAE,CAAC;gCACd,mBAAmB;6BACpB,CAAC,CAA8B,CAAA;4BAChC,IAAI,CAAC,OAAO,CAAC,KAAY,EAAE,SAAgB,CAAC,CAAA;4BAC5C,SAAS,GAAG,KAAK,CAAA;wBACnB,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAEE,SAAS,EAAE,MAAM,IAAI,IAAI;oBAEzB,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC;oBAGjD,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,EAC1D,CAAC;oBACD,IAAI,CAAC,OAAO,CAAC,KAAY,EAAE,SAAgB,CAAC,CAAA;oBAC5C,SAAS,GAAG,KAAY,CAAA;gBAC1B,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,EAAE,CAAC,GAAY,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC,EACD;YACE,WAAW;YACX,QAAQ,EAAE,eAAe;SAC1B,CACF,CACF,CAAA;IACH,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAA;QACjB,IAAI,WAAW,GAAG,IAAI,CAAA;QACtB,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,CACvC;QAAA,CAAC,KAAK,IAAI,EAAE;YACX,IAAI,CAAC;gBACH,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAA,wBAAS,EACP,MAAM,EACN,sBAAQ,EACR,UAAU,CACX,CAAC;wBACA,QAAQ;wBACR,mBAAmB;qBACpB,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;wBAChB,IAAI,CAAC,MAAM;4BAAE,OAAM;wBACnB,IAAI,CAAC,WAAW;4BAAE,OAAM;wBACxB,OAAO,CAAC,KAAY,EAAE,SAAS,CAAC,CAAA;wBAChC,WAAW,GAAG,KAAK,CAAA;oBACrB,CAAC,CAAC,CAAA;gBACJ,CAAC;gBAED,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAChD,CAAC,SAAgC,EAAE,EAAE,CACnC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,CACxC,CAAA;wBACD,IAAI,CAAC,SAAS;4BAAE,OAAO,MAAM,CAAC,SAAS,CAAA;wBACvC,OAAO,SAAS,CAAC,KAAK,CAAA;oBACxB,CAAC;oBACD,OAAO,MAAM,CAAC,SAAS,CAAA;gBACzB,CAAC,CAAC,EAAE,CAAA;gBAEJ,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC;oBAC9D,MAAM,EAAE,CAAC,UAAU,CAAC;oBACpB,KAAK,CAAC,MAAM,CAAC,IAAS;wBACpB,IAAI,CAAC,MAAM;4BAAE,OAAM;wBACnB,MAAM,KAAK,GAAG,CAAC,MAAM,IAAA,wBAAS,EAC5B,MAAM,EACN,sBAAQ,EACR,UAAU,CACX,CAAC;4BACA,WAAW,EAAE,IAAI,CAAC,WAAW;4BAC7B,mBAAmB;yBACpB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAA8B,CAAA;wBAChD,IAAI,CAAC,MAAM;4BAAE,OAAM;wBACnB,OAAO,CAAC,KAAY,EAAE,SAAgB,CAAC,CAAA;wBACvC,WAAW,GAAG,KAAK,CAAA;wBACnB,SAAS,GAAG,KAAK,CAAA;oBACnB,CAAC;oBACD,OAAO,CAAC,KAAY;wBAClB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;oBAClB,CAAC;iBACF,CAAC,CAAA;gBACF,WAAW,GAAG,YAAY,CAAA;gBAC1B,IAAI,CAAC,MAAM;oBAAE,WAAW,EAAE,CAAA;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC,GAAY,CAAC,CAAA;YACzB,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;QACJ,OAAO,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;IAC5B,CAAC,CAAA;IAED,OAAO,aAAa,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,CAAA;AACzD,CAAC"}
@@ -14,8 +14,14 @@ async function getCapabilities(client, parameters = {}) {
14
14
  params,
15
15
  });
16
16
  const capabilities = {};
17
- for (const [key, value] of Object.entries(capabilities_raw))
18
- capabilities[Number(key)] = value;
17
+ for (const [chainId, capabilities_] of Object.entries(capabilities_raw)) {
18
+ capabilities[Number(chainId)] = {};
19
+ for (let [key, value] of Object.entries(capabilities_)) {
20
+ if (key === 'addSubAccount')
21
+ key = 'unstable_addSubAccount';
22
+ capabilities[Number(chainId)][key] = value;
23
+ }
24
+ }
19
25
  return (typeof chainId === 'number' ? capabilities[chainId] : capabilities);
20
26
  }
21
27
  //# sourceMappingURL=getCapabilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCapabilities.js","sourceRoot":"","sources":["../../../actions/wallet/getCapabilities.ts"],"names":[],"mappings":";;AAwDA,0CA2BC;AAjFD,0EAAmE;AAYnE,4DAA2D;AA0CpD,KAAK,UAAU,eAAe,CAGnC,MAAyB,EACzB,aAAiD,EAAE;IAEnD,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAExD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE5D,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC,CAAW;QACxD,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,CAAW,CAAA;IAClC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAC5C,MAAM,EAAE,wBAAwB;QAChC,MAAM;KACP,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,EAGpB,CAAA;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzD,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,KAAc,CAAA;IAC5C,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAC1D,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"getCapabilities.js","sourceRoot":"","sources":["../../../actions/wallet/getCapabilities.ts"],"names":[],"mappings":";;AAwDA,0CAgCC;AAtFD,0EAAmE;AAYnE,4DAA2D;AA0CpD,KAAK,UAAU,eAAe,CAGnC,MAAyB,EACzB,aAAiD,EAAE;IAEnD,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAExD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE5D,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,IAAA,sBAAW,EAAC,OAAO,CAAC,CAAC,CAAW;QACxD,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,CAAW,CAAA;IAClC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAC5C,MAAM,EAAE,wBAAwB;QAChC,MAAM;KACP,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,EAGpB,CAAA;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAA;QAClC,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,IAAI,GAAG,KAAK,eAAe;gBAAE,GAAG,GAAG,wBAAwB,CAAA;YAC3D,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAC1D,CAAA;AACZ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '2.28.4';
4
+ exports.version = '2.29.0';
5
5
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.connect = connect;
4
+ const requestAddresses_js_1 = require("../../../actions/wallet/requestAddresses.js");
5
+ const toHex_js_1 = require("../../../utils/encoding/toHex.js");
6
+ async function connect(client, parameters = {}) {
7
+ const capabilities = formatRequestCapabilities(parameters.capabilities);
8
+ const response = await (async () => {
9
+ try {
10
+ return await client.request({ method: 'wallet_connect', params: [{ capabilities, version: '1' }] }, { dedupe: true, retryCount: 0 });
11
+ }
12
+ catch (e) {
13
+ const error = e;
14
+ if (!parameters.capabilities &&
15
+ (error.name === 'InvalidInputRpcError' ||
16
+ error.name === 'InvalidParamsRpcError' ||
17
+ error.name === 'MethodNotFoundRpcError' ||
18
+ error.name === 'MethodNotSupportedRpcError' ||
19
+ error.name === 'UnsupportedProviderMethodError')) {
20
+ const addresses = await (0, requestAddresses_js_1.requestAddresses)(client);
21
+ return {
22
+ accounts: addresses.map((address) => ({
23
+ address,
24
+ capabilities: {},
25
+ })),
26
+ };
27
+ }
28
+ throw error;
29
+ }
30
+ })();
31
+ return {
32
+ ...response,
33
+ accounts: (response.accounts ?? []).map((account) => ({
34
+ ...account,
35
+ capabilities: formatResponseCapabilities(account.capabilities),
36
+ })),
37
+ };
38
+ }
39
+ function formatRequestCapabilities(capabilities) {
40
+ const { unstable_addSubAccount, unstable_getSubAccounts: getSubAccounts, unstable_signInWithEthereum, ...rest } = capabilities ?? {};
41
+ const addSubAccount = unstable_addSubAccount
42
+ ? {
43
+ ...unstable_addSubAccount,
44
+ account: {
45
+ ...unstable_addSubAccount.account,
46
+ ...(unstable_addSubAccount.account.chainId
47
+ ? {
48
+ chainId: (0, toHex_js_1.numberToHex)(unstable_addSubAccount.account.chainId),
49
+ }
50
+ : {}),
51
+ },
52
+ }
53
+ : undefined;
54
+ const { chainId, expirationTime, issuedAt, notBefore } = unstable_signInWithEthereum ?? {};
55
+ const signInWithEthereum = unstable_signInWithEthereum
56
+ ? {
57
+ ...unstable_signInWithEthereum,
58
+ chainId: (0, toHex_js_1.numberToHex)(chainId),
59
+ ...(expirationTime
60
+ ? {
61
+ expirationTime: expirationTime.toISOString(),
62
+ }
63
+ : {}),
64
+ ...(issuedAt
65
+ ? {
66
+ issuedAt: issuedAt.toISOString(),
67
+ }
68
+ : {}),
69
+ ...(notBefore
70
+ ? {
71
+ notBefore: notBefore.toISOString(),
72
+ }
73
+ : {}),
74
+ }
75
+ : undefined;
76
+ return {
77
+ ...rest,
78
+ ...(addSubAccount
79
+ ? {
80
+ addSubAccount,
81
+ }
82
+ : {}),
83
+ ...(getSubAccounts
84
+ ? {
85
+ getSubAccounts,
86
+ }
87
+ : {}),
88
+ ...(signInWithEthereum
89
+ ? {
90
+ signInWithEthereum,
91
+ }
92
+ : {}),
93
+ };
94
+ }
95
+ function formatResponseCapabilities(capabilities) {
96
+ return Object.entries(capabilities ?? {}).reduce((capabilities, [key, value]) => {
97
+ const k = (() => {
98
+ if (key === 'signInWithEthereum')
99
+ return 'unstable_signInWithEthereum';
100
+ if (key === 'subAccounts')
101
+ return 'unstable_subAccounts';
102
+ return key;
103
+ })();
104
+ capabilities[k] = value;
105
+ return capabilities;
106
+ }, {});
107
+ }
108
+ //# sourceMappingURL=connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../../experimental/erc7846/actions/connect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.disconnect = disconnect;
4
+ async function disconnect(client) {
5
+ return await client.request({ method: 'wallet_disconnect' }, { dedupe: true, retryCount: 0 });
6
+ }
7
+ //# sourceMappingURL=disconnect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../../experimental/erc7846/actions/disconnect.ts"],"names":[],"mappings":";;AA4BA,gCAOC;AAPM,KAAK,UAAU,UAAU,CAC9B,MAAgC;IAEhC,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAC/B,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAChC,CAAA;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.erc7846Actions = erc7846Actions;
4
+ const connect_js_1 = require("../actions/connect.js");
5
+ const disconnect_js_1 = require("../actions/disconnect.js");
6
+ function erc7846Actions() {
7
+ return (client) => {
8
+ return {
9
+ connect: (parameters) => (0, connect_js_1.connect)(client, parameters),
10
+ disconnect: () => (0, disconnect_js_1.disconnect)(client),
11
+ };
12
+ };
13
+ }
14
+ //# sourceMappingURL=erc7846.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc7846.js","sourceRoot":"","sources":["../../../../experimental/erc7846/decorators/erc7846.ts"],"names":[],"mappings":";;AA2EA,wCAYC;AApFD,sDAI8B;AAC9B,4DAAqD;AAmErD,SAAgB,cAAc;IAC5B,OAAO,CAIL,MAAgC,EAChB,EAAE;QAClB,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAA,oBAAO,EAAC,MAAM,EAAE,UAAU,CAAC;YACpD,UAAU,EAAE,GAAG,EAAE,CAAC,IAAA,0BAAU,EAAC,MAAM,CAAC;SACrC,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.erc7846Actions = exports.disconnect = exports.connect = void 0;
4
+ var connect_js_1 = require("./actions/connect.js");
5
+ Object.defineProperty(exports, "connect", { enumerable: true, get: function () { return connect_js_1.connect; } });
6
+ var disconnect_js_1 = require("./actions/disconnect.js");
7
+ Object.defineProperty(exports, "disconnect", { enumerable: true, get: function () { return disconnect_js_1.disconnect; } });
8
+ var erc7846_js_1 = require("./decorators/erc7846.js");
9
+ Object.defineProperty(exports, "erc7846Actions", { enumerable: true, get: function () { return erc7846_js_1.erc7846Actions; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../experimental/erc7846/index.ts"],"names":[],"mappings":";;;AACA,mDAK6B;AAD3B,qGAAA,OAAO,OAAA;AAET,yDAGgC;AAD9B,2GAAA,UAAU,OAAA;AAGZ,sDAA6E;AAA/C,4GAAA,cAAc,OAAA"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addSubAccount = addSubAccount;
4
+ const index_js_1 = require("../../../utils/index.js");
5
+ async function addSubAccount(client, parameters) {
6
+ return client.request({
7
+ method: 'wallet_addSubAccount',
8
+ params: [
9
+ {
10
+ account: {
11
+ ...parameters,
12
+ ...(parameters.chainId
13
+ ? { chainId: (0, index_js_1.numberToHex)(parameters.chainId) }
14
+ : {}),
15
+ },
16
+ version: '1',
17
+ },
18
+ ],
19
+ });
20
+ }
21
+ //# sourceMappingURL=addSubAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addSubAccount.js","sourceRoot":"","sources":["../../../../experimental/erc7895/actions/addSubAccount.ts"],"names":[],"mappings":";;AAiEA,sCAkBC;AA5ED,sDAAqD;AA0D9C,KAAK,UAAU,aAAa,CACjC,MAAgC,EAChC,UAAmC;IAEnC,OAAO,MAAM,CAAC,OAAO,CAAC;QACpB,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE;YACN;gBACE,OAAO,EAAE;oBACP,GAAG,UAAU;oBACb,GAAG,CAAC,UAAU,CAAC,OAAO;wBACpB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAA,sBAAW,EAAC,UAAU,CAAC,OAAO,CAAC,EAAE;wBAC9C,CAAC,CAAC,EAAE,CAAC;iBACC;gBACV,OAAO,EAAE,GAAG;aACb;SACF;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.erc7895Actions = erc7895Actions;
4
+ const addSubAccount_js_1 = require("../actions/addSubAccount.js");
5
+ function erc7895Actions() {
6
+ return (client) => {
7
+ return {
8
+ addSubAccount: (parameters) => (0, addSubAccount_js_1.addSubAccount)(client, parameters),
9
+ };
10
+ };
11
+ }
12
+ //# sourceMappingURL=erc7895.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc7895.js","sourceRoot":"","sources":["../../../../experimental/erc7895/decorators/erc7895.ts"],"names":[],"mappings":";;AA0DA,wCAWC;AAlED,kEAIoC;AAmDpC,SAAgB,cAAc;IAC5B,OAAO,CAIL,MAAgC,EAChB,EAAE;QAClB,OAAO;YACL,aAAa,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAA,gCAAa,EAAC,MAAM,EAAE,UAAU,CAAC;SACjE,CAAA;IACH,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.erc7895Actions = exports.addSubAccount = void 0;
4
+ var addSubAccount_js_1 = require("./actions/addSubAccount.js");
5
+ Object.defineProperty(exports, "addSubAccount", { enumerable: true, get: function () { return addSubAccount_js_1.addSubAccount; } });
6
+ var erc7895_js_1 = require("./decorators/erc7895.js");
7
+ Object.defineProperty(exports, "erc7895Actions", { enumerable: true, get: function () { return erc7895_js_1.erc7895Actions; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../experimental/erc7895/index.ts"],"names":[],"mappings":";;;AACA,+DAKmC;AADjC,iHAAA,aAAa,OAAA;AAGf,sDAA6E;AAA/C,4GAAA,cAAc,OAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.erc7821Actions = exports.erc7739Actions = exports.erc7715Actions = exports.grantPermissions = exports.verifyAuthorization = exports.serializeAuthorizationList = exports.recoverAuthorizationAddress = exports.hashAuthorization = exports.signAuthorization = exports.prepareAuthorization = exports.eip7702Actions = exports.eip5792Actions = exports.writeContracts = exports.waitForCallsStatus = exports.showCallsStatus = exports.getCallsStatus = exports.sendCalls = exports.getCapabilities = void 0;
3
+ exports.erc7895Actions = exports.erc7846Actions = exports.erc7821Actions = exports.erc7739Actions = exports.erc7715Actions = exports.grantPermissions = exports.verifyAuthorization = exports.serializeAuthorizationList = exports.recoverAuthorizationAddress = exports.hashAuthorization = exports.signAuthorization = exports.prepareAuthorization = exports.eip7702Actions = exports.eip5792Actions = exports.writeContracts = exports.waitForCallsStatus = exports.showCallsStatus = exports.getCallsStatus = exports.sendCalls = exports.getCapabilities = void 0;
4
4
  var getCapabilities_js_1 = require("../actions/wallet/getCapabilities.js");
5
5
  Object.defineProperty(exports, "getCapabilities", { enumerable: true, get: function () { return getCapabilities_js_1.getCapabilities; } });
6
6
  var sendCalls_js_1 = require("../actions/wallet/sendCalls.js");
@@ -37,4 +37,8 @@ var erc7739_js_1 = require("./erc7739/decorators/erc7739.js");
37
37
  Object.defineProperty(exports, "erc7739Actions", { enumerable: true, get: function () { return erc7739_js_1.erc7739Actions; } });
38
38
  var erc7821_js_1 = require("./erc7821/decorators/erc7821.js");
39
39
  Object.defineProperty(exports, "erc7821Actions", { enumerable: true, get: function () { return erc7821_js_1.erc7821Actions; } });
40
+ var erc7846_js_1 = require("./erc7846/decorators/erc7846.js");
41
+ Object.defineProperty(exports, "erc7846Actions", { enumerable: true, get: function () { return erc7846_js_1.erc7846Actions; } });
42
+ var erc7895_js_1 = require("./erc7895/decorators/erc7895.js");
43
+ Object.defineProperty(exports, "erc7895Actions", { enumerable: true, get: function () { return erc7895_js_1.erc7895Actions; } });
40
44
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../experimental/index.ts"],"names":[],"mappings":";;;AACA,2EAS6C;AAD3C,qHAAA,eAAe,OAAA;AAEjB,+DASuC;AADrC,yGAAA,SAAS,OAAA;AAEX,yEAS4C;AAD1C,mHAAA,cAAc,OAAA;AAEhB,2EAS6C;AAD3C,qHAAA,eAAe,OAAA;AAEjB,iFAWgD;AAD9C,2HAAA,kBAAkB,OAAA;AAEpB,yEAW4C;AAD1C,mHAAA,cAAc,OAAA;AAEhB,8DAKwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,6DAKwC;AADtC,2GAAA,aAAa,OAAkB;AAEjC,qFASkD;AADhD,+HAAA,oBAAoB,OAAA;AAEtB,+EAS+C;AAD7C,yHAAA,iBAAiB,OAAA;AAsBnB,oFASoD;AADlD,yHAAA,iBAAiB,OAAA;AAEnB,wGAS8D;AAD5D,6IAAA,2BAA2B,OAAA;AAE7B,sGAO6D;AAD3D,2IAAA,0BAA0B,OAAA;AAE5B,wFASsD;AADpD,6HAAA,mBAAmB,OAAA;AAGrB,6EAI8C;AAD5C,uHAAA,gBAAgB,OAAA;AAElB,8DAGwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAIwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAGwC;AADtC,4GAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../experimental/index.ts"],"names":[],"mappings":";;;AACA,2EAS6C;AAD3C,qHAAA,eAAe,OAAA;AAEjB,+DASuC;AADrC,yGAAA,SAAS,OAAA;AAEX,yEAS4C;AAD1C,mHAAA,cAAc,OAAA;AAEhB,2EAS6C;AAD3C,qHAAA,eAAe,OAAA;AAEjB,iFAWgD;AAD9C,2HAAA,kBAAkB,OAAA;AAEpB,yEAW4C;AAD1C,mHAAA,cAAc,OAAA;AAEhB,8DAKwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,6DAKwC;AADtC,2GAAA,aAAa,OAAkB;AAEjC,qFASkD;AADhD,+HAAA,oBAAoB,OAAA;AAEtB,+EAS+C;AAD7C,yHAAA,iBAAiB,OAAA;AAsBnB,oFASoD;AADlD,yHAAA,iBAAiB,OAAA;AAEnB,wGAS8D;AAD5D,6IAAA,2BAA2B,OAAA;AAE7B,sGAO6D;AAD3D,2IAAA,0BAA0B,OAAA;AAE5B,wFASsD;AADpD,6HAAA,mBAAmB,OAAA;AAGrB,6EAI8C;AAD5C,uHAAA,gBAAgB,OAAA;AAElB,8DAGwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAIwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAGwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAGwC;AADtC,4GAAA,cAAc,OAAA;AAGhB,8DAGwC;AADtC,4GAAA,cAAc,OAAA"}
@@ -57,7 +57,7 @@ export function watchBlocks(client, { blockTag = 'latest', emitMissed = false, e
57
57
  blockTag,
58
58
  includeTransactions,
59
59
  });
60
- if (block.number && prevBlock?.number) {
60
+ if (block.number !== null && prevBlock?.number != null) {
61
61
  // If the current block number is the same as the previous,
62
62
  // we can skip.
63
63
  if (block.number === prevBlock.number)
@@ -77,12 +77,12 @@ export function watchBlocks(client, { blockTag = 'latest', emitMissed = false, e
77
77
  }
78
78
  if (
79
79
  // If no previous block exists, emit.
80
- !prevBlock?.number ||
80
+ prevBlock?.number == null ||
81
81
  // If the block tag is "pending" with no block number, emit.
82
- (blockTag === 'pending' && !block?.number) ||
82
+ (blockTag === 'pending' && block?.number == null) ||
83
83
  // If the next block number is greater than the previous block number, emit.
84
84
  // We don't want to emit blocks in the past.
85
- (block.number && block.number > prevBlock.number)) {
85
+ (block.number !== null && block.number > prevBlock.number)) {
86
86
  emit.onBlock(block, prevBlock);
87
87
  prevBlock = block;
88
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"watchBlocks.js","sourceRoot":"","sources":["../../../actions/public/watchBlocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watchBlocks.js","sourceRoot":"","sources":["../../../actions/public/watchBlocks.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,14 @@ export async function getCapabilities(client, parameters = {}) {
31
31
  params,
32
32
  });
33
33
  const capabilities = {};
34
- for (const [key, value] of Object.entries(capabilities_raw))
35
- capabilities[Number(key)] = value;
34
+ for (const [chainId, capabilities_] of Object.entries(capabilities_raw)) {
35
+ capabilities[Number(chainId)] = {};
36
+ for (let [key, value] of Object.entries(capabilities_)) {
37
+ if (key === 'addSubAccount')
38
+ key = 'unstable_addSubAccount';
39
+ capabilities[Number(chainId)][key] = value;
40
+ }
41
+ }
36
42
  return (typeof chainId === 'number' ? capabilities[chainId] : capabilities);
37
43
  }
38
44
  //# sourceMappingURL=getCapabilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCapabilities.js","sourceRoot":"","sources":["../../../actions/wallet/getCapabilities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AAYnE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAsB3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAGnC,MAAyB,EACzB,aAAiD,EAAE;IAEnD,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAExD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE5D,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAW;QACxD,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,CAAW,CAAA;IAClC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAC5C,MAAM,EAAE,wBAAwB;QAChC,MAAM;KACP,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,EAGpB,CAAA;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACzD,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,KAAc,CAAA;IAC5C,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAC1D,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"getCapabilities.js","sourceRoot":"","sources":["../../../actions/wallet/getCapabilities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AAYnE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAsB3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAGnC,MAAyB,EACzB,aAAiD,EAAE;IAEnD,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,CAAA;IAExD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE5D,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAW;QACxD,CAAC,CAAE,CAAC,QAAQ,EAAE,OAAO,CAAW,CAAA;IAClC,MAAM,gBAAgB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC;QAC5C,MAAM,EAAE,wBAAwB;QAChC,MAAM;KACP,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,EAGpB,CAAA;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAA;QAClC,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,IAAI,GAAG,KAAK,eAAe;gBAAE,GAAG,GAAG,wBAAwB,CAAA;YAC3D,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAC1D,CAAA;AACZ,CAAC"}
@@ -1,2 +1,2 @@
1
- export const version = '2.28.4';
1
+ export const version = '2.29.0';
2
2
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,128 @@
1
+ import { requestAddresses, } from '../../../actions/wallet/requestAddresses.js';
2
+ import { numberToHex } from '../../../utils/encoding/toHex.js';
3
+ /**
4
+ * Requests to connect account(s) with optional capabilities.
5
+ *
6
+ * - Docs: https://viem.sh/experimental/erc7846/connect
7
+ * - JSON-RPC Methods: [`wallet_connect`](https://github.com/ethereum/ERCs/blob/abd1c9f4eda2d6ad06ade0e3af314637a27d1ee7/ERCS/erc-7846.md)
8
+ *
9
+ * @param client - Client to use
10
+ * @param parameters - {@link ConnectParameters}
11
+ * @returns List of accounts managed by a wallet {@link ConnectReturnType}
12
+ *
13
+ * @example
14
+ * import { createWalletClient, custom } from 'viem'
15
+ * import { mainnet } from 'viem/chains'
16
+ * import { connect } from 'viem/experimental/erc7846'
17
+ *
18
+ * const client = createWalletClient({
19
+ * chain: mainnet,
20
+ * transport: custom(window.ethereum),
21
+ * })
22
+ * const response = await connect(client)
23
+ */
24
+ export async function connect(client, parameters = {}) {
25
+ const capabilities = formatRequestCapabilities(parameters.capabilities);
26
+ const response = await (async () => {
27
+ try {
28
+ return await client.request({ method: 'wallet_connect', params: [{ capabilities, version: '1' }] }, { dedupe: true, retryCount: 0 });
29
+ }
30
+ catch (e) {
31
+ const error = e;
32
+ // If the wallet does not support `wallet_connect`, and has no
33
+ // capabilities, attempt to use `eth_requestAccounts` instead.
34
+ if (!parameters.capabilities &&
35
+ (error.name === 'InvalidInputRpcError' ||
36
+ error.name === 'InvalidParamsRpcError' ||
37
+ error.name === 'MethodNotFoundRpcError' ||
38
+ error.name === 'MethodNotSupportedRpcError' ||
39
+ error.name === 'UnsupportedProviderMethodError')) {
40
+ const addresses = await requestAddresses(client);
41
+ return {
42
+ accounts: addresses.map((address) => ({
43
+ address,
44
+ capabilities: {},
45
+ })),
46
+ };
47
+ }
48
+ throw error;
49
+ }
50
+ })();
51
+ return {
52
+ ...response,
53
+ accounts: (response.accounts ?? []).map((account) => ({
54
+ ...account,
55
+ capabilities: formatResponseCapabilities(account.capabilities),
56
+ })),
57
+ };
58
+ }
59
+ function formatRequestCapabilities(capabilities) {
60
+ const { unstable_addSubAccount, unstable_getSubAccounts: getSubAccounts, unstable_signInWithEthereum, ...rest } = capabilities ?? {};
61
+ const addSubAccount = unstable_addSubAccount
62
+ ? {
63
+ ...unstable_addSubAccount,
64
+ account: {
65
+ ...unstable_addSubAccount.account,
66
+ ...(unstable_addSubAccount.account.chainId
67
+ ? {
68
+ chainId: numberToHex(unstable_addSubAccount.account.chainId),
69
+ }
70
+ : {}),
71
+ },
72
+ }
73
+ : undefined;
74
+ const { chainId, expirationTime, issuedAt, notBefore } = unstable_signInWithEthereum ?? {};
75
+ const signInWithEthereum = unstable_signInWithEthereum
76
+ ? {
77
+ ...unstable_signInWithEthereum,
78
+ chainId: numberToHex(chainId),
79
+ ...(expirationTime
80
+ ? {
81
+ expirationTime: expirationTime.toISOString(),
82
+ }
83
+ : {}),
84
+ ...(issuedAt
85
+ ? {
86
+ issuedAt: issuedAt.toISOString(),
87
+ }
88
+ : {}),
89
+ ...(notBefore
90
+ ? {
91
+ notBefore: notBefore.toISOString(),
92
+ }
93
+ : {}),
94
+ }
95
+ : undefined;
96
+ return {
97
+ ...rest,
98
+ ...(addSubAccount
99
+ ? {
100
+ addSubAccount,
101
+ }
102
+ : {}),
103
+ ...(getSubAccounts
104
+ ? {
105
+ getSubAccounts,
106
+ }
107
+ : {}),
108
+ ...(signInWithEthereum
109
+ ? {
110
+ signInWithEthereum,
111
+ }
112
+ : {}),
113
+ };
114
+ }
115
+ function formatResponseCapabilities(capabilities) {
116
+ return Object.entries(capabilities ?? {}).reduce((capabilities, [key, value]) => {
117
+ const k = (() => {
118
+ if (key === 'signInWithEthereum')
119
+ return 'unstable_signInWithEthereum';
120
+ if (key === 'subAccounts')
121
+ return 'unstable_subAccounts';
122
+ return key;
123
+ })();
124
+ capabilities[k] = value;
125
+ return capabilities;
126
+ }, {});
127
+ }
128
+ //# sourceMappingURL=connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../../experimental/erc7846/actions/connect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Requests to disconnect connected accounts.
3
+ *
4
+ * - Docs: https://viem.sh/experimental/erc7846/disconnect
5
+ * - JSON-RPC Methods: [`wallet_disconnect`](https://github.com/ethereum/ERCs/blob/abd1c9f4eda2d6ad06ade0e3af314637a27d1ee7/ERCS/erc-7846.md)
6
+ *
7
+ * @param client - Client to use
8
+ * @returns void
9
+ *
10
+ * @example
11
+ * import { createWalletClient, custom } from 'viem'
12
+ * import { mainnet } from 'viem/chains'
13
+ * import { disconnect } from 'viem/experimental/erc7846'
14
+ *
15
+ * const client = createWalletClient({
16
+ * chain: mainnet,
17
+ * transport: custom(window.ethereum),
18
+ * })
19
+ *
20
+ * await disconnect(client)
21
+ */
22
+ export async function disconnect(client) {
23
+ return await client.request({ method: 'wallet_disconnect' }, { dedupe: true, retryCount: 0 });
24
+ }
25
+ //# sourceMappingURL=disconnect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../../experimental/erc7846/actions/disconnect.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAgC;IAEhC,OAAO,MAAM,MAAM,CAAC,OAAO,CACzB,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAC/B,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAChC,CAAA;AACH,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { connect, } from '../actions/connect.js';
2
+ import { disconnect } from '../actions/disconnect.js';
3
+ /**
4
+ * A suite of ERC-7846 Wallet Actions.
5
+ *
6
+ * @example
7
+ * import { createPublicClient, createWalletClient, http } from 'viem'
8
+ * import { mainnet } from 'viem/chains'
9
+ * import { erc7846Actions } from 'viem/experimental/erc7846'
10
+ *
11
+ * const client = createWalletClient({
12
+ * chain: mainnet,
13
+ * transport: http(),
14
+ * }).extend(erc7846Actions())
15
+ *
16
+ * const response = await client.connect()
17
+ */
18
+ export function erc7846Actions() {
19
+ return (client) => {
20
+ return {
21
+ connect: (parameters) => connect(client, parameters),
22
+ disconnect: () => disconnect(client),
23
+ };
24
+ };
25
+ }
26
+ //# sourceMappingURL=erc7846.js.map