rise-wallet 0.1.4-beta.2 → 0.2.29-beta.1

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 (738) hide show
  1. package/README.md +56 -34
  2. package/dist/cli/Dialog.d.ts +35 -0
  3. package/dist/cli/Dialog.d.ts.map +1 -0
  4. package/dist/cli/Dialog.js +60 -0
  5. package/dist/cli/Dialog.js.map +1 -0
  6. package/dist/cli/Messenger.d.ts +8 -0
  7. package/dist/cli/Messenger.d.ts.map +1 -0
  8. package/dist/cli/Messenger.js +123 -0
  9. package/dist/cli/Messenger.js.map +1 -0
  10. package/dist/cli/bin/commands-BWkYsY2L.js +50 -0
  11. package/dist/cli/bin/index.js +9 -0
  12. package/dist/cli/index.d.ts +3 -0
  13. package/dist/cli/index.d.ts.map +1 -0
  14. package/dist/cli/index.js +3 -0
  15. package/dist/cli/index.js.map +1 -0
  16. package/dist/cli/internal/commands.d.ts +13 -0
  17. package/dist/cli/internal/commands.d.ts.map +1 -0
  18. package/dist/cli/internal/commands.js +180 -0
  19. package/dist/cli/internal/commands.js.map +1 -0
  20. package/dist/cli/internal/context.d.ts +521 -0
  21. package/dist/cli/internal/context.d.ts.map +1 -0
  22. package/dist/cli/internal/context.js +38 -0
  23. package/dist/cli/internal/context.js.map +1 -0
  24. package/dist/cli/internal/http.d.ts +7 -0
  25. package/dist/cli/internal/http.d.ts.map +1 -0
  26. package/dist/cli/internal/http.js +17 -0
  27. package/dist/cli/internal/http.js.map +1 -0
  28. package/dist/cli/internal/utils.d.ts +7 -0
  29. package/dist/cli/internal/utils.d.ts.map +1 -0
  30. package/dist/cli/internal/utils.js +24 -0
  31. package/dist/cli/internal/utils.js.map +1 -0
  32. package/dist/core/Chains.d.ts +211 -0
  33. package/dist/core/Chains.d.ts.map +1 -0
  34. package/dist/core/Chains.js +20 -0
  35. package/dist/core/Chains.js.map +1 -0
  36. package/dist/core/Dialog.d.ts +308 -0
  37. package/dist/core/Dialog.d.ts.map +1 -0
  38. package/dist/core/Dialog.js +809 -0
  39. package/dist/core/Dialog.js.map +1 -0
  40. package/dist/core/Messenger.d.ts +165 -0
  41. package/dist/core/Messenger.d.ts.map +1 -0
  42. package/dist/core/Messenger.js +207 -0
  43. package/dist/core/Messenger.js.map +1 -0
  44. package/dist/core/Mode.d.ts +5 -0
  45. package/dist/core/Mode.d.ts.map +1 -0
  46. package/dist/core/Mode.js +5 -0
  47. package/dist/core/Mode.js.map +1 -0
  48. package/dist/core/Porto.d.ts +1609 -0
  49. package/dist/core/Porto.d.ts.map +1 -0
  50. package/dist/core/Porto.js +105 -0
  51. package/dist/core/Porto.js.map +1 -0
  52. package/dist/core/RpcSchema.d.ts +82 -0
  53. package/dist/core/RpcSchema.d.ts.map +1 -0
  54. package/dist/core/RpcSchema.js +2 -0
  55. package/dist/core/RpcSchema.js.map +1 -0
  56. package/dist/core/Storage.d.ts +15 -0
  57. package/dist/core/Storage.d.ts.map +1 -0
  58. package/dist/core/Storage.js +109 -0
  59. package/dist/core/Storage.js.map +1 -0
  60. package/dist/core/Transport.d.ts +23 -0
  61. package/dist/core/Transport.d.ts.map +1 -0
  62. package/dist/core/Transport.js +37 -0
  63. package/dist/core/Transport.js.map +1 -0
  64. package/dist/core/internal/_generated/chains.d.ts +2 -0
  65. package/dist/core/internal/_generated/chains.d.ts.map +1 -0
  66. package/dist/core/internal/_generated/chains.js +3 -0
  67. package/dist/core/internal/_generated/chains.js.map +1 -0
  68. package/dist/core/internal/_generated/contracts/EIP7702Proxy.d.ts +18 -0
  69. package/dist/core/internal/_generated/contracts/EIP7702Proxy.d.ts.map +1 -0
  70. package/dist/core/internal/_generated/contracts/EIP7702Proxy.js +24 -0
  71. package/dist/core/internal/_generated/contracts/EIP7702Proxy.js.map +1 -0
  72. package/dist/core/internal/_generated/contracts/Escrow.d.ts +256 -0
  73. package/dist/core/internal/_generated/contracts/Escrow.d.ts.map +1 -0
  74. package/dist/core/internal/_generated/contracts/Escrow.js +329 -0
  75. package/dist/core/internal/_generated/contracts/Escrow.js.map +1 -0
  76. package/dist/core/internal/_generated/contracts/ExperimentERC20.d.ts +440 -0
  77. package/dist/core/internal/_generated/contracts/ExperimentERC20.d.ts.map +1 -0
  78. package/dist/core/internal/_generated/contracts/ExperimentERC20.js +568 -0
  79. package/dist/core/internal/_generated/contracts/ExperimentERC20.js.map +1 -0
  80. package/dist/core/internal/_generated/contracts/ExperimentERC721.d.ts +456 -0
  81. package/dist/core/internal/_generated/contracts/ExperimentERC721.d.ts.map +1 -0
  82. package/dist/core/internal/_generated/contracts/ExperimentERC721.js +587 -0
  83. package/dist/core/internal/_generated/contracts/ExperimentERC721.js.map +1 -0
  84. package/dist/core/internal/_generated/contracts/GuardedExecutor.d.ts +482 -0
  85. package/dist/core/internal/_generated/contracts/GuardedExecutor.d.ts.map +1 -0
  86. package/dist/core/internal/_generated/contracts/GuardedExecutor.js +622 -0
  87. package/dist/core/internal/_generated/contracts/GuardedExecutor.js.map +1 -0
  88. package/dist/core/internal/_generated/contracts/ICallChecker.d.ts +25 -0
  89. package/dist/core/internal/_generated/contracts/ICallChecker.d.ts.map +1 -0
  90. package/dist/core/internal/_generated/contracts/ICallChecker.js +33 -0
  91. package/dist/core/internal/_generated/contracts/ICallChecker.js.map +1 -0
  92. package/dist/core/internal/_generated/contracts/ICommon.d.ts +3 -0
  93. package/dist/core/internal/_generated/contracts/ICommon.d.ts.map +1 -0
  94. package/dist/core/internal/_generated/contracts/ICommon.js +3 -0
  95. package/dist/core/internal/_generated/contracts/ICommon.js.map +1 -0
  96. package/dist/core/internal/_generated/contracts/IEscrow.d.ts +88 -0
  97. package/dist/core/internal/_generated/contracts/IEscrow.d.ts.map +1 -0
  98. package/dist/core/internal/_generated/contracts/IEscrow.js +113 -0
  99. package/dist/core/internal/_generated/contracts/IEscrow.js.map +1 -0
  100. package/dist/core/internal/_generated/contracts/IFunder.d.ts +61 -0
  101. package/dist/core/internal/_generated/contracts/IFunder.d.ts.map +1 -0
  102. package/dist/core/internal/_generated/contracts/IFunder.js +79 -0
  103. package/dist/core/internal/_generated/contracts/IFunder.js.map +1 -0
  104. package/dist/core/internal/_generated/contracts/IFunderV4.d.ts +34 -0
  105. package/dist/core/internal/_generated/contracts/IFunderV4.d.ts.map +1 -0
  106. package/dist/core/internal/_generated/contracts/IFunderV4.js +44 -0
  107. package/dist/core/internal/_generated/contracts/IFunderV4.js.map +1 -0
  108. package/dist/core/internal/_generated/contracts/IIthacaAccount.d.ts +81 -0
  109. package/dist/core/internal/_generated/contracts/IIthacaAccount.d.ts.map +1 -0
  110. package/dist/core/internal/_generated/contracts/IIthacaAccount.js +106 -0
  111. package/dist/core/internal/_generated/contracts/IIthacaAccount.js.map +1 -0
  112. package/dist/core/internal/_generated/contracts/IOAppCore.d.ts +108 -0
  113. package/dist/core/internal/_generated/contracts/IOAppCore.d.ts.map +1 -0
  114. package/dist/core/internal/_generated/contracts/IOAppCore.js +141 -0
  115. package/dist/core/internal/_generated/contracts/IOAppCore.js.map +1 -0
  116. package/dist/core/internal/_generated/contracts/IOAppMsgInspector.d.ts +33 -0
  117. package/dist/core/internal/_generated/contracts/IOAppMsgInspector.d.ts.map +1 -0
  118. package/dist/core/internal/_generated/contracts/IOAppMsgInspector.js +44 -0
  119. package/dist/core/internal/_generated/contracts/IOAppMsgInspector.js.map +1 -0
  120. package/dist/core/internal/_generated/contracts/IOAppReceiver.d.ts +122 -0
  121. package/dist/core/internal/_generated/contracts/IOAppReceiver.d.ts.map +1 -0
  122. package/dist/core/internal/_generated/contracts/IOAppReceiver.js +160 -0
  123. package/dist/core/internal/_generated/contracts/IOAppReceiver.js.map +1 -0
  124. package/dist/core/internal/_generated/contracts/IOrchestrator.d.ts +71 -0
  125. package/dist/core/internal/_generated/contracts/IOrchestrator.d.ts.map +1 -0
  126. package/dist/core/internal/_generated/contracts/IOrchestrator.js +94 -0
  127. package/dist/core/internal/_generated/contracts/IOrchestrator.js.map +1 -0
  128. package/dist/core/internal/_generated/contracts/ISettler.d.ts +39 -0
  129. package/dist/core/internal/_generated/contracts/ISettler.d.ts.map +1 -0
  130. package/dist/core/internal/_generated/contracts/ISettler.js +51 -0
  131. package/dist/core/internal/_generated/contracts/ISettler.js.map +1 -0
  132. package/dist/core/internal/_generated/contracts/ISigner.d.ts +25 -0
  133. package/dist/core/internal/_generated/contracts/ISigner.d.ts.map +1 -0
  134. package/dist/core/internal/_generated/contracts/ISigner.js +33 -0
  135. package/dist/core/internal/_generated/contracts/ISigner.js.map +1 -0
  136. package/dist/core/internal/_generated/contracts/IthacaAccount.d.ts +1121 -0
  137. package/dist/core/internal/_generated/contracts/IthacaAccount.d.ts.map +1 -0
  138. package/dist/core/internal/_generated/contracts/IthacaAccount.js +1453 -0
  139. package/dist/core/internal/_generated/contracts/IthacaAccount.js.map +1 -0
  140. package/dist/core/internal/_generated/contracts/IthacaAccountNew.d.ts +1121 -0
  141. package/dist/core/internal/_generated/contracts/IthacaAccountNew.d.ts.map +1 -0
  142. package/dist/core/internal/_generated/contracts/IthacaAccountNew.js +1453 -0
  143. package/dist/core/internal/_generated/contracts/IthacaAccountNew.js.map +1 -0
  144. package/dist/core/internal/_generated/contracts/IthacaAccountOld.d.ts +1121 -0
  145. package/dist/core/internal/_generated/contracts/IthacaAccountOld.d.ts.map +1 -0
  146. package/dist/core/internal/_generated/contracts/IthacaAccountOld.js +1453 -0
  147. package/dist/core/internal/_generated/contracts/IthacaAccountOld.js.map +1 -0
  148. package/dist/core/internal/_generated/contracts/LayerZeroSettler.d.ts +621 -0
  149. package/dist/core/internal/_generated/contracts/LayerZeroSettler.d.ts.map +1 -0
  150. package/dist/core/internal/_generated/contracts/LayerZeroSettler.js +810 -0
  151. package/dist/core/internal/_generated/contracts/LayerZeroSettler.js.map +1 -0
  152. package/dist/core/internal/_generated/contracts/LibNonce.d.ts +11 -0
  153. package/dist/core/internal/_generated/contracts/LibNonce.d.ts.map +1 -0
  154. package/dist/core/internal/_generated/contracts/LibNonce.js +14 -0
  155. package/dist/core/internal/_generated/contracts/LibNonce.js.map +1 -0
  156. package/dist/core/internal/_generated/contracts/LibTStack.d.ts +3 -0
  157. package/dist/core/internal/_generated/contracts/LibTStack.d.ts.map +1 -0
  158. package/dist/core/internal/_generated/contracts/LibTStack.js +3 -0
  159. package/dist/core/internal/_generated/contracts/LibTStack.js.map +1 -0
  160. package/dist/core/internal/_generated/contracts/MultiSigSigner.d.ts +157 -0
  161. package/dist/core/internal/_generated/contracts/MultiSigSigner.d.ts.map +1 -0
  162. package/dist/core/internal/_generated/contracts/MultiSigSigner.js +202 -0
  163. package/dist/core/internal/_generated/contracts/MultiSigSigner.js.map +1 -0
  164. package/dist/core/internal/_generated/contracts/OApp.d.ts +314 -0
  165. package/dist/core/internal/_generated/contracts/OApp.d.ts.map +1 -0
  166. package/dist/core/internal/_generated/contracts/OApp.js +411 -0
  167. package/dist/core/internal/_generated/contracts/OApp.js.map +1 -0
  168. package/dist/core/internal/_generated/contracts/OAppCore.d.ts +175 -0
  169. package/dist/core/internal/_generated/contracts/OAppCore.d.ts.map +1 -0
  170. package/dist/core/internal/_generated/contracts/OAppCore.js +228 -0
  171. package/dist/core/internal/_generated/contracts/OAppCore.js.map +1 -0
  172. package/dist/core/internal/_generated/contracts/OAppReceiver.d.ts +302 -0
  173. package/dist/core/internal/_generated/contracts/OAppReceiver.d.ts.map +1 -0
  174. package/dist/core/internal/_generated/contracts/OAppReceiver.js +395 -0
  175. package/dist/core/internal/_generated/contracts/OAppReceiver.js.map +1 -0
  176. package/dist/core/internal/_generated/contracts/OAppSender.d.ts +187 -0
  177. package/dist/core/internal/_generated/contracts/OAppSender.d.ts.map +1 -0
  178. package/dist/core/internal/_generated/contracts/OAppSender.js +244 -0
  179. package/dist/core/internal/_generated/contracts/OAppSender.js.map +1 -0
  180. package/dist/core/internal/_generated/contracts/Orchestrator.d.ts +302 -0
  181. package/dist/core/internal/_generated/contracts/Orchestrator.d.ts.map +1 -0
  182. package/dist/core/internal/_generated/contracts/Orchestrator.js +389 -0
  183. package/dist/core/internal/_generated/contracts/Orchestrator.js.map +1 -0
  184. package/dist/core/internal/_generated/contracts/SimpleFunder.d.ts +413 -0
  185. package/dist/core/internal/_generated/contracts/SimpleFunder.d.ts.map +1 -0
  186. package/dist/core/internal/_generated/contracts/SimpleFunder.js +533 -0
  187. package/dist/core/internal/_generated/contracts/SimpleFunder.js.map +1 -0
  188. package/dist/core/internal/_generated/contracts/SimpleSettler.d.ts +280 -0
  189. package/dist/core/internal/_generated/contracts/SimpleSettler.d.ts.map +1 -0
  190. package/dist/core/internal/_generated/contracts/SimpleSettler.js +359 -0
  191. package/dist/core/internal/_generated/contracts/SimpleSettler.js.map +1 -0
  192. package/dist/core/internal/_generated/contracts/Simulator.d.ts +131 -0
  193. package/dist/core/internal/_generated/contracts/Simulator.d.ts.map +1 -0
  194. package/dist/core/internal/_generated/contracts/Simulator.js +169 -0
  195. package/dist/core/internal/_generated/contracts/Simulator.js.map +1 -0
  196. package/dist/core/internal/_generated/contracts/TokenTransferLib.d.ts +3 -0
  197. package/dist/core/internal/_generated/contracts/TokenTransferLib.d.ts.map +1 -0
  198. package/dist/core/internal/_generated/contracts/TokenTransferLib.js +3 -0
  199. package/dist/core/internal/_generated/contracts/TokenTransferLib.js.map +1 -0
  200. package/dist/core/internal/call.d.ts +164 -0
  201. package/dist/core/internal/call.d.ts.map +1 -0
  202. package/dist/core/internal/call.js +115 -0
  203. package/dist/core/internal/call.js.map +1 -0
  204. package/dist/core/internal/erc8010.d.ts +18 -0
  205. package/dist/core/internal/erc8010.d.ts.map +1 -0
  206. package/dist/core/internal/erc8010.js +29 -0
  207. package/dist/core/internal/erc8010.js.map +1 -0
  208. package/dist/core/internal/intersectionObserver.d.ts +2 -0
  209. package/dist/core/internal/intersectionObserver.d.ts.map +1 -0
  210. package/dist/core/internal/intersectionObserver.js +5 -0
  211. package/dist/core/internal/intersectionObserver.js.map +1 -0
  212. package/dist/core/internal/logger.d.ts +22 -0
  213. package/dist/core/internal/logger.d.ts.map +1 -0
  214. package/dist/core/internal/logger.js +24 -0
  215. package/dist/core/internal/logger.js.map +1 -0
  216. package/dist/core/internal/mode.d.ts +345 -0
  217. package/dist/core/internal/mode.d.ts.map +1 -0
  218. package/dist/core/internal/mode.js +110 -0
  219. package/dist/core/internal/mode.js.map +1 -0
  220. package/dist/core/internal/modes/dialog.d.ts +800 -0
  221. package/dist/core/internal/modes/dialog.d.ts.map +1 -0
  222. package/dist/core/internal/modes/dialog.js +760 -0
  223. package/dist/core/internal/modes/dialog.js.map +1 -0
  224. package/dist/core/internal/modes/reactNative.d.ts +1402 -0
  225. package/dist/core/internal/modes/reactNative.d.ts.map +1 -0
  226. package/dist/core/internal/modes/reactNative.js +19 -0
  227. package/dist/core/internal/modes/reactNative.js.map +1 -0
  228. package/dist/core/internal/modes/relay.d.ts +685 -0
  229. package/dist/core/internal/modes/relay.d.ts.map +1 -0
  230. package/dist/core/internal/modes/relay.js +708 -0
  231. package/dist/core/internal/modes/relay.js.map +1 -0
  232. package/dist/core/internal/permissions.d.ts +60 -0
  233. package/dist/core/internal/permissions.d.ts.map +1 -0
  234. package/dist/core/internal/permissions.js +30 -0
  235. package/dist/core/internal/permissions.js.map +1 -0
  236. package/dist/core/internal/permissionsRequest.d.ts +72 -0
  237. package/dist/core/internal/permissionsRequest.d.ts.map +1 -0
  238. package/dist/core/internal/permissionsRequest.js +58 -0
  239. package/dist/core/internal/permissionsRequest.js.map +1 -0
  240. package/dist/core/internal/porto.d.ts +14 -0
  241. package/dist/core/internal/porto.d.ts.map +1 -0
  242. package/dist/core/internal/porto.js +2 -0
  243. package/dist/core/internal/porto.js.map +1 -0
  244. package/dist/core/internal/promise.d.ts +9 -0
  245. package/dist/core/internal/promise.d.ts.map +1 -0
  246. package/dist/core/internal/promise.js +11 -0
  247. package/dist/core/internal/promise.js.map +1 -0
  248. package/dist/core/internal/provider.d.ts +30 -0
  249. package/dist/core/internal/provider.d.ts.map +1 -0
  250. package/dist/core/internal/provider.js +944 -0
  251. package/dist/core/internal/provider.js.map +1 -0
  252. package/dist/core/internal/relay/rpcSchema.d.ts +76 -0
  253. package/dist/core/internal/relay/rpcSchema.d.ts.map +1 -0
  254. package/dist/core/internal/relay/rpcSchema.js +7 -0
  255. package/dist/core/internal/relay/rpcSchema.js.map +1 -0
  256. package/dist/core/internal/relay/schema/capabilities.d.ts +165 -0
  257. package/dist/core/internal/relay/schema/capabilities.d.ts.map +1 -0
  258. package/dist/core/internal/relay/schema/capabilities.js +112 -0
  259. package/dist/core/internal/relay/schema/capabilities.js.map +1 -0
  260. package/dist/core/internal/relay/schema/intent.d.ts +168 -0
  261. package/dist/core/internal/relay/schema/intent.d.ts.map +1 -0
  262. package/dist/core/internal/relay/schema/intent.js +170 -0
  263. package/dist/core/internal/relay/schema/intent.js.map +1 -0
  264. package/dist/core/internal/relay/schema/key.d.ts +44 -0
  265. package/dist/core/internal/relay/schema/key.d.ts.map +1 -0
  266. package/dist/core/internal/relay/schema/key.js +30 -0
  267. package/dist/core/internal/relay/schema/key.js.map +1 -0
  268. package/dist/core/internal/relay/schema/permission.d.ts +40 -0
  269. package/dist/core/internal/relay/schema/permission.d.ts.map +1 -0
  270. package/dist/core/internal/relay/schema/permission.js +29 -0
  271. package/dist/core/internal/relay/schema/permission.js.map +1 -0
  272. package/dist/core/internal/relay/schema/preCall.d.ts +63 -0
  273. package/dist/core/internal/relay/schema/preCall.d.ts.map +1 -0
  274. package/dist/core/internal/relay/schema/preCall.js +36 -0
  275. package/dist/core/internal/relay/schema/preCall.js.map +1 -0
  276. package/dist/core/internal/relay/schema/quotes.d.ts +370 -0
  277. package/dist/core/internal/relay/schema/quotes.d.ts.map +1 -0
  278. package/dist/core/internal/relay/schema/quotes.js +89 -0
  279. package/dist/core/internal/relay/schema/quotes.js.map +1 -0
  280. package/dist/core/internal/relay/schema/rpc.d.ts +1529 -0
  281. package/dist/core/internal/relay/schema/rpc.d.ts.map +1 -0
  282. package/dist/core/internal/relay/schema/rpc.js +638 -0
  283. package/dist/core/internal/relay/schema/rpc.js.map +1 -0
  284. package/dist/core/internal/relay/schema/token.d.ts +14 -0
  285. package/dist/core/internal/relay/schema/token.d.ts.map +1 -0
  286. package/dist/core/internal/relay/schema/token.js +13 -0
  287. package/dist/core/internal/relay/schema/token.js.map +1 -0
  288. package/dist/core/internal/requiredFunds.d.ts +19 -0
  289. package/dist/core/internal/requiredFunds.d.ts.map +1 -0
  290. package/dist/core/internal/requiredFunds.js +25 -0
  291. package/dist/core/internal/requiredFunds.js.map +1 -0
  292. package/dist/core/internal/schema/capabilities.d.ts +314 -0
  293. package/dist/core/internal/schema/capabilities.d.ts.map +1 -0
  294. package/dist/core/internal/schema/capabilities.js +133 -0
  295. package/dist/core/internal/schema/capabilities.js.map +1 -0
  296. package/dist/core/internal/schema/key.d.ts +165 -0
  297. package/dist/core/internal/schema/key.d.ts.map +1 -0
  298. package/dist/core/internal/schema/key.js +75 -0
  299. package/dist/core/internal/schema/key.js.map +1 -0
  300. package/dist/core/internal/schema/permissions.d.ts +103 -0
  301. package/dist/core/internal/schema/permissions.d.ts.map +1 -0
  302. package/dist/core/internal/schema/permissions.js +28 -0
  303. package/dist/core/internal/schema/permissions.js.map +1 -0
  304. package/dist/core/internal/schema/request.d.ts +938 -0
  305. package/dist/core/internal/schema/request.d.ts.map +1 -0
  306. package/dist/core/internal/schema/request.js +57 -0
  307. package/dist/core/internal/schema/request.js.map +1 -0
  308. package/dist/core/internal/schema/rpc.d.ts +3315 -0
  309. package/dist/core/internal/schema/rpc.d.ts.map +1 -0
  310. package/dist/core/internal/schema/rpc.js +599 -0
  311. package/dist/core/internal/schema/rpc.js.map +1 -0
  312. package/dist/core/internal/schema/token.d.ts +2 -0
  313. package/dist/core/internal/schema/token.d.ts.map +1 -0
  314. package/dist/core/internal/schema/token.js +2 -0
  315. package/dist/core/internal/schema/token.js.map +1 -0
  316. package/dist/core/internal/schema/utils.d.ts +19 -0
  317. package/dist/core/internal/schema/utils.d.ts.map +1 -0
  318. package/dist/core/internal/schema/utils.js +213 -0
  319. package/dist/core/internal/schema/utils.js.map +1 -0
  320. package/dist/core/internal/siwe.d.ts +33 -0
  321. package/dist/core/internal/siwe.d.ts.map +1 -0
  322. package/dist/core/internal/siwe.js +92 -0
  323. package/dist/core/internal/siwe.js.map +1 -0
  324. package/dist/core/internal/store.d.ts +3 -0
  325. package/dist/core/internal/store.d.ts.map +1 -0
  326. package/dist/core/internal/store.js +9 -0
  327. package/dist/core/internal/store.js.map +1 -0
  328. package/dist/core/internal/tokens.d.ts +58 -0
  329. package/dist/core/internal/tokens.d.ts.map +1 -0
  330. package/dist/core/internal/tokens.js +69 -0
  331. package/dist/core/internal/tokens.js.map +1 -0
  332. package/dist/core/internal/types.d.ts +299 -0
  333. package/dist/core/internal/types.d.ts.map +1 -0
  334. package/dist/core/internal/types.js +2 -0
  335. package/dist/core/internal/types.js.map +1 -0
  336. package/dist/core/internal/urlString.d.ts +2 -0
  337. package/dist/core/internal/urlString.d.ts.map +1 -0
  338. package/dist/core/internal/urlString.js +8 -0
  339. package/dist/core/internal/urlString.js.map +1 -0
  340. package/dist/core/internal/userAgent.d.ts +11 -0
  341. package/dist/core/internal/userAgent.d.ts.map +1 -0
  342. package/dist/core/internal/userAgent.js +19 -0
  343. package/dist/core/internal/userAgent.js.map +1 -0
  344. package/dist/core/internal/utils.d.ts +25 -0
  345. package/dist/core/internal/utils.d.ts.map +1 -0
  346. package/dist/core/internal/utils.js +62 -0
  347. package/dist/core/internal/utils.js.map +1 -0
  348. package/dist/core/react-native/Porto.d.ts +1481 -0
  349. package/dist/core/react-native/Porto.d.ts.map +1 -0
  350. package/dist/core/react-native/Porto.js +17 -0
  351. package/dist/core/react-native/Porto.js.map +1 -0
  352. package/dist/core/react-native/configure.d.ts +10 -0
  353. package/dist/core/react-native/configure.d.ts.map +1 -0
  354. package/dist/core/react-native/configure.js +24 -0
  355. package/dist/core/react-native/configure.js.map +1 -0
  356. package/dist/core/react-native/environment.d.ts +27 -0
  357. package/dist/core/react-native/environment.d.ts.map +1 -0
  358. package/dist/core/react-native/environment.js +13 -0
  359. package/dist/core/react-native/environment.js.map +1 -0
  360. package/dist/core/react-native/index.d.ts +5 -0
  361. package/dist/core/react-native/index.d.ts.map +1 -0
  362. package/dist/core/react-native/index.js +5 -0
  363. package/dist/core/react-native/index.js.map +1 -0
  364. package/dist/core/react-native/utils.d.ts +2 -0
  365. package/dist/core/react-native/utils.d.ts.map +1 -0
  366. package/dist/core/react-native/utils.js +12 -0
  367. package/dist/core/react-native/utils.js.map +1 -0
  368. package/dist/index.d.ts +17 -2
  369. package/dist/index.d.ts.map +1 -0
  370. package/dist/index.js +15 -2
  371. package/dist/index.js.map +1 -0
  372. package/dist/index.native.d.ts +8 -0
  373. package/dist/index.native.d.ts.map +1 -0
  374. package/dist/index.native.js +12 -0
  375. package/dist/index.native.js.map +1 -0
  376. package/dist/internal/index.d.ts +4 -0
  377. package/dist/internal/index.d.ts.map +1 -0
  378. package/dist/internal/index.js +4 -0
  379. package/dist/internal/index.js.map +1 -0
  380. package/dist/react-native/crypto.d.ts +2 -0
  381. package/dist/react-native/crypto.d.ts.map +1 -0
  382. package/dist/react-native/crypto.js +12 -0
  383. package/dist/react-native/crypto.js.map +1 -0
  384. package/dist/react-native/index.d.ts +8 -0
  385. package/dist/react-native/index.d.ts.map +1 -0
  386. package/dist/react-native/index.js +12 -0
  387. package/dist/react-native/index.js.map +1 -0
  388. package/dist/react-native/register.d.ts +3 -0
  389. package/dist/react-native/register.d.ts.map +1 -0
  390. package/dist/react-native/register.js +15 -0
  391. package/dist/react-native/register.js.map +1 -0
  392. package/dist/register/index.d.ts +15 -0
  393. package/dist/register/index.d.ts.map +1 -0
  394. package/dist/register/index.js +2 -0
  395. package/dist/register/index.js.map +1 -0
  396. package/dist/remote/Actions.d.ts +34 -0
  397. package/dist/remote/Actions.d.ts.map +1 -0
  398. package/dist/remote/Actions.js +76 -0
  399. package/dist/remote/Actions.js.map +1 -0
  400. package/dist/remote/Events.d.ts +47 -0
  401. package/dist/remote/Events.d.ts.map +1 -0
  402. package/dist/remote/Events.js +132 -0
  403. package/dist/remote/Events.js.map +1 -0
  404. package/dist/remote/Hooks.d.ts +3801 -0
  405. package/dist/remote/Hooks.d.ts.map +1 -0
  406. package/dist/remote/Hooks.js +106 -0
  407. package/dist/remote/Hooks.js.map +1 -0
  408. package/dist/remote/Porto.d.ts +858 -0
  409. package/dist/remote/Porto.d.ts.map +1 -0
  410. package/dist/remote/Porto.js +66 -0
  411. package/dist/remote/Porto.js.map +1 -0
  412. package/dist/remote/index.d.ts +5 -0
  413. package/dist/remote/index.d.ts.map +1 -0
  414. package/dist/remote/index.js +5 -0
  415. package/dist/remote/index.js.map +1 -0
  416. package/dist/remote/internal/methodPolicies.d.ts +97 -0
  417. package/dist/remote/internal/methodPolicies.d.ts.map +1 -0
  418. package/dist/remote/internal/methodPolicies.js +102 -0
  419. package/dist/remote/internal/methodPolicies.js.map +1 -0
  420. package/dist/server/Route.d.ts +88 -0
  421. package/dist/server/Route.d.ts.map +1 -0
  422. package/dist/server/Route.js +189 -0
  423. package/dist/server/Route.js.map +1 -0
  424. package/dist/server/Router.d.ts +24 -0
  425. package/dist/server/Router.d.ts.map +1 -0
  426. package/dist/server/Router.js +29 -0
  427. package/dist/server/Router.js.map +1 -0
  428. package/dist/server/index.d.ts +3 -0
  429. package/dist/server/index.d.ts.map +1 -0
  430. package/dist/server/index.js +3 -0
  431. package/dist/server/index.js.map +1 -0
  432. package/dist/server/internal/merchantSchema.d.ts +65 -0
  433. package/dist/server/internal/merchantSchema.d.ts.map +1 -0
  434. package/dist/server/internal/merchantSchema.js +7 -0
  435. package/dist/server/internal/merchantSchema.js.map +1 -0
  436. package/dist/server/internal/requestListener.d.ts +124 -0
  437. package/dist/server/internal/requestListener.d.ts.map +1 -0
  438. package/dist/server/internal/requestListener.js +172 -0
  439. package/dist/server/internal/requestListener.js.map +1 -0
  440. package/dist/theme/Theme.d.ts +122 -0
  441. package/dist/theme/Theme.d.ts.map +1 -0
  442. package/dist/theme/Theme.js +18 -0
  443. package/dist/theme/Theme.js.map +1 -0
  444. package/dist/theme/index.d.ts +3 -0
  445. package/dist/theme/index.d.ts.map +1 -0
  446. package/dist/theme/index.js +2 -0
  447. package/dist/theme/index.js.map +1 -0
  448. package/dist/trusted-hosts.d.ts +2 -0
  449. package/dist/trusted-hosts.d.ts.map +1 -0
  450. package/dist/trusted-hosts.js +44 -0
  451. package/dist/trusted-hosts.js.map +1 -0
  452. package/dist/tsconfig.tmp.tsbuildinfo +1 -0
  453. package/dist/viem/Account.d.ts +111 -0
  454. package/dist/viem/Account.d.ts.map +1 -0
  455. package/dist/viem/Account.js +132 -0
  456. package/dist/viem/Account.js.map +1 -0
  457. package/dist/viem/AccountActions.d.ts +11 -0
  458. package/dist/viem/AccountActions.d.ts.map +1 -0
  459. package/dist/viem/AccountActions.js +14 -0
  460. package/dist/viem/AccountActions.js.map +1 -0
  461. package/dist/viem/CapabilitiesSchema.d.ts +15 -0
  462. package/dist/viem/CapabilitiesSchema.d.ts.map +1 -0
  463. package/dist/viem/CapabilitiesSchema.js +2 -0
  464. package/dist/viem/CapabilitiesSchema.js.map +1 -0
  465. package/dist/viem/ContractActions.d.ts +209 -0
  466. package/dist/viem/ContractActions.d.ts.map +1 -0
  467. package/dist/viem/ContractActions.js +350 -0
  468. package/dist/viem/ContractActions.js.map +1 -0
  469. package/dist/viem/Key.d.ts +1156 -0
  470. package/dist/viem/Key.d.ts.map +1 -0
  471. package/dist/viem/Key.js +924 -0
  472. package/dist/viem/Key.js.map +1 -0
  473. package/dist/viem/RelayActions.d.ts +436 -0
  474. package/dist/viem/RelayActions.d.ts.map +1 -0
  475. package/dist/viem/RelayActions.js +385 -0
  476. package/dist/viem/RelayActions.js.map +1 -0
  477. package/dist/viem/RelayClient.d.ts +27 -0
  478. package/dist/viem/RelayClient.d.ts.map +1 -0
  479. package/dist/viem/RelayClient.js +44 -0
  480. package/dist/viem/RelayClient.js.map +1 -0
  481. package/dist/viem/RpcSchema.d.ts +23 -0
  482. package/dist/viem/RpcSchema.d.ts.map +1 -0
  483. package/dist/viem/RpcSchema.js +2 -0
  484. package/dist/viem/RpcSchema.js.map +1 -0
  485. package/dist/viem/WalletActions.d.ts +87 -0
  486. package/dist/viem/WalletActions.d.ts.map +1 -0
  487. package/dist/viem/WalletActions.js +220 -0
  488. package/dist/viem/WalletActions.js.map +1 -0
  489. package/dist/viem/WalletClient.d.ts +21 -0
  490. package/dist/viem/WalletClient.d.ts.map +1 -0
  491. package/dist/viem/WalletClient.js +23 -0
  492. package/dist/viem/WalletClient.js.map +1 -0
  493. package/dist/viem/index.d.ts +14 -0
  494. package/dist/viem/index.d.ts.map +1 -0
  495. package/dist/viem/index.js +12 -0
  496. package/dist/viem/index.js.map +1 -0
  497. package/dist/viem/internal/relayActions.d.ts +365 -0
  498. package/dist/viem/internal/relayActions.d.ts.map +1 -0
  499. package/dist/viem/internal/relayActions.js +783 -0
  500. package/dist/viem/internal/relayActions.js.map +1 -0
  501. package/dist/viem/internal/utils.d.ts +16 -0
  502. package/dist/viem/internal/utils.d.ts.map +1 -0
  503. package/dist/viem/internal/utils.js +2 -0
  504. package/dist/viem/internal/utils.js.map +1 -0
  505. package/dist/wagmi/Actions.d.ts +2 -0
  506. package/dist/wagmi/Actions.d.ts.map +1 -0
  507. package/dist/wagmi/Actions.js +2 -0
  508. package/dist/wagmi/Actions.js.map +1 -0
  509. package/dist/wagmi/Connector.d.ts +28 -0
  510. package/dist/wagmi/Connector.d.ts.map +1 -0
  511. package/dist/wagmi/Connector.js +238 -0
  512. package/dist/wagmi/Connector.js.map +1 -0
  513. package/dist/wagmi/Hooks.d.ts +2 -0
  514. package/dist/wagmi/Hooks.d.ts.map +1 -0
  515. package/dist/wagmi/Hooks.js +2 -0
  516. package/dist/wagmi/Hooks.js.map +1 -0
  517. package/dist/wagmi/Hooks.native.d.ts +3 -0
  518. package/dist/wagmi/Hooks.native.d.ts.map +1 -0
  519. package/dist/wagmi/Hooks.native.js +3 -0
  520. package/dist/wagmi/Hooks.native.js.map +1 -0
  521. package/dist/wagmi/Query.d.ts +2 -0
  522. package/dist/wagmi/Query.d.ts.map +1 -0
  523. package/dist/wagmi/Query.js +2 -0
  524. package/dist/wagmi/Query.js.map +1 -0
  525. package/dist/wagmi/index.d.ts +5 -0
  526. package/dist/wagmi/index.d.ts.map +1 -0
  527. package/dist/wagmi/index.js +5 -0
  528. package/dist/wagmi/index.js.map +1 -0
  529. package/dist/wagmi/index.native.d.ts +6 -0
  530. package/dist/wagmi/index.native.d.ts.map +1 -0
  531. package/dist/wagmi/index.native.js +6 -0
  532. package/dist/wagmi/index.native.js.map +1 -0
  533. package/dist/wagmi/internal/core.d.ts +84 -0
  534. package/dist/wagmi/internal/core.d.ts.map +1 -0
  535. package/dist/wagmi/internal/core.js +229 -0
  536. package/dist/wagmi/internal/core.js.map +1 -0
  537. package/dist/wagmi/internal/query.d.ts +33 -0
  538. package/dist/wagmi/internal/query.d.ts.map +1 -0
  539. package/dist/wagmi/internal/query.js +23 -0
  540. package/dist/wagmi/internal/query.js.map +1 -0
  541. package/dist/wagmi/internal/react.d.ts +91 -0
  542. package/dist/wagmi/internal/react.d.ts.map +1 -0
  543. package/dist/wagmi/internal/react.js +256 -0
  544. package/dist/wagmi/internal/react.js.map +1 -0
  545. package/dist/wagmi/internal/types.d.ts +11 -0
  546. package/dist/wagmi/internal/types.d.ts.map +1 -0
  547. package/dist/wagmi/internal/types.js +2 -0
  548. package/dist/wagmi/internal/types.js.map +1 -0
  549. package/dist/wagmi/internal/utils.d.ts +2 -0
  550. package/dist/wagmi/internal/utils.d.ts.map +1 -0
  551. package/dist/wagmi/internal/utils.js +18 -0
  552. package/dist/wagmi/internal/utils.js.map +1 -0
  553. package/package.json +287 -34
  554. package/src/cli/Dialog.ts +75 -0
  555. package/src/cli/Messenger.ts +148 -0
  556. package/src/cli/bin/index.ts +37 -0
  557. package/src/cli/bin/tsconfig.json +8 -0
  558. package/src/cli/index.ts +2 -0
  559. package/src/cli/internal/commands.ts +216 -0
  560. package/src/cli/internal/context.ts +56 -0
  561. package/src/cli/internal/http.ts +28 -0
  562. package/src/cli/internal/utils.ts +28 -0
  563. package/src/cli/tsdown.config.ts +37 -0
  564. package/src/core/Chains.ts +25 -0
  565. package/src/core/Dialog.ts +1059 -0
  566. package/src/core/Messenger.ts +394 -0
  567. package/src/core/Mode.ts +4 -0
  568. package/src/core/Porto.ts +287 -0
  569. package/src/core/RpcSchema.ts +124 -0
  570. package/src/core/Storage.ts +122 -0
  571. package/src/core/Transport.ts +45 -0
  572. package/src/core/internal/_generated/chains.ts +4 -0
  573. package/src/core/internal/_generated/contracts/EIP7702Proxy.ts +25 -0
  574. package/src/core/internal/_generated/contracts/Escrow.ts +330 -0
  575. package/src/core/internal/_generated/contracts/ExperimentERC20.ts +569 -0
  576. package/src/core/internal/_generated/contracts/ExperimentERC721.ts +588 -0
  577. package/src/core/internal/_generated/contracts/GuardedExecutor.ts +623 -0
  578. package/src/core/internal/_generated/contracts/ICallChecker.ts +34 -0
  579. package/src/core/internal/_generated/contracts/ICommon.ts +4 -0
  580. package/src/core/internal/_generated/contracts/IEscrow.ts +114 -0
  581. package/src/core/internal/_generated/contracts/IFunder.ts +80 -0
  582. package/src/core/internal/_generated/contracts/IFunderV4.ts +45 -0
  583. package/src/core/internal/_generated/contracts/IIthacaAccount.ts +107 -0
  584. package/src/core/internal/_generated/contracts/IOAppCore.ts +142 -0
  585. package/src/core/internal/_generated/contracts/IOAppMsgInspector.ts +45 -0
  586. package/src/core/internal/_generated/contracts/IOAppReceiver.ts +161 -0
  587. package/src/core/internal/_generated/contracts/IOrchestrator.ts +95 -0
  588. package/src/core/internal/_generated/contracts/ISettler.ts +52 -0
  589. package/src/core/internal/_generated/contracts/ISigner.ts +34 -0
  590. package/src/core/internal/_generated/contracts/IthacaAccount.ts +1454 -0
  591. package/src/core/internal/_generated/contracts/IthacaAccountNew.ts +1454 -0
  592. package/src/core/internal/_generated/contracts/IthacaAccountOld.ts +1454 -0
  593. package/src/core/internal/_generated/contracts/LayerZeroSettler.ts +811 -0
  594. package/src/core/internal/_generated/contracts/LibNonce.ts +15 -0
  595. package/src/core/internal/_generated/contracts/LibTStack.ts +4 -0
  596. package/src/core/internal/_generated/contracts/MultiSigSigner.ts +203 -0
  597. package/src/core/internal/_generated/contracts/OApp.ts +412 -0
  598. package/src/core/internal/_generated/contracts/OAppCore.ts +229 -0
  599. package/src/core/internal/_generated/contracts/OAppReceiver.ts +396 -0
  600. package/src/core/internal/_generated/contracts/OAppSender.ts +245 -0
  601. package/src/core/internal/_generated/contracts/Orchestrator.ts +390 -0
  602. package/src/core/internal/_generated/contracts/SimpleFunder.ts +534 -0
  603. package/src/core/internal/_generated/contracts/SimpleSettler.ts +360 -0
  604. package/src/core/internal/_generated/contracts/Simulator.ts +170 -0
  605. package/src/core/internal/_generated/contracts/TokenTransferLib.ts +4 -0
  606. package/src/core/internal/_snapshots/provider.browser.test.ts.snap +119 -0
  607. package/src/core/internal/_snapshots/provider.test.ts.snap +1103 -0
  608. package/src/core/internal/call.test.ts +116 -0
  609. package/src/core/internal/call.ts +245 -0
  610. package/src/core/internal/erc8010.test.ts +74 -0
  611. package/src/core/internal/erc8010.ts +44 -0
  612. package/src/core/internal/intersectionObserver.ts +5 -0
  613. package/src/core/internal/logger.ts +42 -0
  614. package/src/core/internal/mode.ts +498 -0
  615. package/src/core/internal/modes/dialog.ts +1051 -0
  616. package/src/core/internal/modes/reactNative.ts +29 -0
  617. package/src/core/internal/modes/relay.ts +893 -0
  618. package/src/core/internal/permissions.ts +43 -0
  619. package/src/core/internal/permissionsRequest.ts +88 -0
  620. package/src/core/internal/porto.ts +16 -0
  621. package/src/core/internal/promise.ts +19 -0
  622. package/src/core/internal/provider.browser.test.ts +311 -0
  623. package/src/core/internal/provider.test.ts +3552 -0
  624. package/src/core/internal/provider.ts +1278 -0
  625. package/src/core/internal/relay/rpcSchema.ts +101 -0
  626. package/src/core/internal/relay/schema/capabilities.test.ts +663 -0
  627. package/src/core/internal/relay/schema/capabilities.ts +156 -0
  628. package/src/core/internal/relay/schema/intent.test.ts +433 -0
  629. package/src/core/internal/relay/schema/intent.ts +174 -0
  630. package/src/core/internal/relay/schema/key.test.ts +424 -0
  631. package/src/core/internal/relay/schema/key.ts +34 -0
  632. package/src/core/internal/relay/schema/permission.test.ts +499 -0
  633. package/src/core/internal/relay/schema/permission.ts +34 -0
  634. package/src/core/internal/relay/schema/preCall.ts +39 -0
  635. package/src/core/internal/relay/schema/quotes.test.ts +901 -0
  636. package/src/core/internal/relay/schema/quotes.ts +98 -0
  637. package/src/core/internal/relay/schema/rpc.ts +822 -0
  638. package/src/core/internal/relay/schema/token.ts +16 -0
  639. package/src/core/internal/requiredFunds.test.ts +141 -0
  640. package/src/core/internal/requiredFunds.ts +45 -0
  641. package/src/core/internal/schema/capabilities.test.ts +1334 -0
  642. package/src/core/internal/schema/capabilities.ts +162 -0
  643. package/src/core/internal/schema/key.test.ts +570 -0
  644. package/src/core/internal/schema/key.ts +98 -0
  645. package/src/core/internal/schema/permissions.test.ts +948 -0
  646. package/src/core/internal/schema/permissions.ts +31 -0
  647. package/src/core/internal/schema/request.bench.ts +35 -0
  648. package/src/core/internal/schema/request.ts +90 -0
  649. package/src/core/internal/schema/rpc.ts +821 -0
  650. package/src/core/internal/schema/token.ts +1 -0
  651. package/src/core/internal/schema/utils.test.ts +572 -0
  652. package/src/core/internal/schema/utils.ts +236 -0
  653. package/src/core/internal/siwe.test.ts +473 -0
  654. package/src/core/internal/siwe.ts +144 -0
  655. package/src/core/internal/store.ts +9 -0
  656. package/src/core/internal/tokens.test.ts +317 -0
  657. package/src/core/internal/tokens.ts +125 -0
  658. package/src/core/internal/types.ts +448 -0
  659. package/src/core/internal/urlString.ts +5 -0
  660. package/src/core/internal/userAgent.ts +35 -0
  661. package/src/core/internal/utils.test.ts +35 -0
  662. package/src/core/internal/utils.ts +67 -0
  663. package/src/core/react-native/Porto.ts +22 -0
  664. package/src/core/react-native/configure.ts +31 -0
  665. package/src/core/react-native/environment.ts +43 -0
  666. package/src/core/react-native/index.ts +4 -0
  667. package/src/core/react-native/utils.ts +18 -0
  668. package/src/index.native.ts +15 -0
  669. package/src/index.ts +17 -0
  670. package/src/internal/index.ts +3 -0
  671. package/src/react-native/crypto.ts +19 -0
  672. package/src/react-native/index.ts +15 -0
  673. package/src/react-native/register.ts +24 -0
  674. package/src/register/index.ts +17 -0
  675. package/src/remote/Actions.ts +115 -0
  676. package/src/remote/Events.ts +193 -0
  677. package/src/remote/Hooks.ts +194 -0
  678. package/src/remote/Porto.ts +144 -0
  679. package/src/remote/index.ts +4 -0
  680. package/src/remote/internal/methodPolicies.ts +124 -0
  681. package/src/server/Route.test.ts +347 -0
  682. package/src/server/Route.ts +259 -0
  683. package/src/server/Router.test.ts +32 -0
  684. package/src/server/Router.ts +59 -0
  685. package/src/server/index.ts +2 -0
  686. package/src/server/internal/merchantSchema.ts +11 -0
  687. package/src/server/internal/requestListener.ts +284 -0
  688. package/src/theme/Theme.ts +163 -0
  689. package/src/theme/index.ts +2 -0
  690. package/src/trusted-hosts.ts +43 -0
  691. package/src/tsconfig.build.tsbuildinfo +1 -0
  692. package/src/tsconfig.json +15 -0
  693. package/src/viem/Account.test.ts +270 -0
  694. package/src/viem/Account.ts +278 -0
  695. package/src/viem/AccountActions.test.ts +3 -0
  696. package/src/viem/AccountActions.ts +30 -0
  697. package/src/viem/CapabilitiesSchema.ts +18 -0
  698. package/src/viem/ContractActions.test.ts +980 -0
  699. package/src/viem/ContractActions.ts +624 -0
  700. package/src/viem/Key.test.ts +1420 -0
  701. package/src/viem/Key.ts +1318 -0
  702. package/src/viem/RelayActions.test.ts +1730 -0
  703. package/src/viem/RelayActions.ts +1082 -0
  704. package/src/viem/RelayClient.test.ts +127 -0
  705. package/src/viem/RelayClient.ts +87 -0
  706. package/src/viem/RpcSchema.ts +27 -0
  707. package/src/viem/WalletActions.test.ts +646 -0
  708. package/src/viem/WalletActions.ts +476 -0
  709. package/src/viem/WalletClient.test.ts +36 -0
  710. package/src/viem/WalletClient.ts +74 -0
  711. package/src/viem/index.ts +13 -0
  712. package/src/viem/internal/relayActions.test.ts +1296 -0
  713. package/src/viem/internal/relayActions.ts +1222 -0
  714. package/src/viem/internal/utils.ts +27 -0
  715. package/src/wagmi/Actions.ts +13 -0
  716. package/src/wagmi/Connector.ts +306 -0
  717. package/src/wagmi/Hooks.native.ts +16 -0
  718. package/src/wagmi/Hooks.ts +14 -0
  719. package/src/wagmi/Query.ts +5 -0
  720. package/src/wagmi/index.native.ts +6 -0
  721. package/src/wagmi/index.ts +4 -0
  722. package/src/wagmi/internal/core.test.ts +12 -0
  723. package/src/wagmi/internal/core.ts +468 -0
  724. package/src/wagmi/internal/query.ts +52 -0
  725. package/src/wagmi/internal/react.test.ts +12 -0
  726. package/src/wagmi/internal/react.ts +705 -0
  727. package/src/wagmi/internal/types.ts +21 -0
  728. package/src/wagmi/internal/utils.ts +25 -0
  729. package/dist/chain.cjs +0 -17
  730. package/dist/chain.d.cts +0 -41
  731. package/dist/chain.d.ts +0 -41
  732. package/dist/chain.js +0 -13
  733. package/dist/config.cjs +0 -19
  734. package/dist/config.d.cts +0 -3
  735. package/dist/config.d.ts +0 -3
  736. package/dist/config.js +0 -16
  737. package/dist/index.cjs +0 -18
  738. package/dist/index.d.cts +0 -2
@@ -0,0 +1,1082 @@
1
+ import type * as Address from 'ox/Address'
2
+ import type * as Errors from 'ox/Errors'
3
+ import type * as Hex from 'ox/Hex'
4
+ import * as Secp256k1 from 'ox/Secp256k1'
5
+ import {
6
+ type Calls,
7
+ type Client,
8
+ createClient,
9
+ http,
10
+ type Narrow,
11
+ type Transport,
12
+ } from 'viem'
13
+ import type { Chain } from '../core/Chains.js'
14
+ import type * as Capabilities from '../core/internal/relay/schema/capabilities.js'
15
+ import type * as Quotes from '../core/internal/relay/schema/quotes.js'
16
+ import type { OneOf, PartialBy, RequiredBy } from '../core/internal/types.js'
17
+ import type { relay } from '../core/Mode.js'
18
+ import * as Account from './Account.js'
19
+ import * as RelayActions from './internal/relayActions.js'
20
+ import type {
21
+ GetAccountParameter,
22
+ GetChainParameter,
23
+ } from './internal/utils.js'
24
+ import * as Key from './Key.js'
25
+
26
+ export {
27
+ addFaucetFunds,
28
+ getAssets,
29
+ getAuthorization,
30
+ getCallsStatus,
31
+ getCapabilities,
32
+ health,
33
+ verifySignature,
34
+ } from './internal/relayActions.js'
35
+
36
+ /**
37
+ * Creates a new Porto Account using an ephemeral EOA.
38
+ *
39
+ * @example
40
+ * TODO
41
+ *
42
+ * @param client - Client.
43
+ * @param parameters - Parameters.
44
+ * @returns Result.
45
+ */
46
+ export async function createAccount<chain extends Chain | undefined>(
47
+ client: Client<Transport, chain>,
48
+ parameters: createAccount.Parameters<chain>,
49
+ ): Promise<createAccount.ReturnType> {
50
+ const account = Account.fromPrivateKey(Secp256k1.randomPrivateKey(), {
51
+ keys: parameters.authorizeKeys,
52
+ })
53
+ return await upgradeAccount(client, {
54
+ ...(parameters as any),
55
+ account,
56
+ })
57
+ }
58
+
59
+ export declare namespace createAccount {
60
+ export type Parameters<chain extends Chain | undefined = Chain | undefined> =
61
+ Omit<upgradeAccount.UnpreparedParameters<chain>, 'account'>
62
+
63
+ export type ReturnType = RequiredBy<Account.Account, 'keys'>
64
+ }
65
+
66
+ /**
67
+ * Gets the keys for an account.
68
+ *
69
+ * @example
70
+ * TODO
71
+ *
72
+ * @param client - Client.
73
+ * @param parameters - Parameters.
74
+ * @returns Account keys.
75
+ */
76
+ export async function getKeys<
77
+ chain extends Chain | undefined,
78
+ account extends Account.Account | undefined,
79
+ >(
80
+ client: Client<Transport, chain, account>,
81
+ parameters: getKeys.Parameters<account>,
82
+ ): Promise<getKeys.ReturnType> {
83
+ const { account = client.account, chainIds } = parameters
84
+ const account_ = account ? Account.from(account) : undefined
85
+ if (!account_) throw new Error('account is required.')
86
+ const keys = await RelayActions.getKeys(client, {
87
+ address: account_.address,
88
+ chainIds,
89
+ })
90
+ return Object.entries(keys).flatMap(([chainId, keys]) =>
91
+ keys.map((key) => Key.fromRelay(key, { chainId: Number(chainId) })),
92
+ )
93
+ }
94
+
95
+ export namespace getKeys {
96
+ export type Parameters<
97
+ account extends Account.Account | undefined = Account.Account | undefined,
98
+ > = GetAccountParameter<account> &
99
+ Pick<RelayActions.getKeys.Parameters, 'chainIds'>
100
+
101
+ export type ReturnType = readonly Key.Key[]
102
+
103
+ export type ErrorType = RelayActions.getKeys.ErrorType
104
+ }
105
+
106
+ /**
107
+ * Gets onramp contact info for address.
108
+ *
109
+ * @example
110
+ * TODO
111
+ *
112
+ * @param client - Client to use.
113
+ * @param parameters - Parameters.
114
+ * @returns Result.
115
+ */
116
+ export async function getOnrampContactInfo<chain extends Chain | undefined>(
117
+ client: Client<Transport, chain>,
118
+ parameters: getOnrampContactInfo.Parameters,
119
+ ): Promise<getOnrampContactInfo.ReturnType>
120
+ export async function getOnrampContactInfo(
121
+ client: Client,
122
+ parameters: getOnrampContactInfo.Parameters,
123
+ ) {
124
+ const { address, secret } = parameters
125
+ return await RelayActions.getOnrampContactInfo(client, {
126
+ address,
127
+ secret,
128
+ })
129
+ }
130
+
131
+ export declare namespace getOnrampContactInfo {
132
+ export type Parameters = RelayActions.getOnrampContactInfo.Parameters
133
+
134
+ export type ReturnType = RelayActions.getOnrampContactInfo.ReturnType
135
+
136
+ export type ErrorType =
137
+ | RelayActions.getOnrampContactInfo.ErrorType
138
+ | Errors.GlobalErrorType
139
+ }
140
+
141
+ /**
142
+ * Gets onramp status for address.
143
+ *
144
+ * @example
145
+ * TODO
146
+ *
147
+ * @param client - Client to use.
148
+ * @param parameters - Parameters.
149
+ * @returns Result.
150
+ */
151
+ export async function onrampStatus<chain extends Chain | undefined>(
152
+ client: Client<Transport, chain>,
153
+ parameters: onrampStatus.Parameters,
154
+ ): Promise<onrampStatus.ReturnType>
155
+ export async function onrampStatus(
156
+ client: Client,
157
+ parameters: onrampStatus.Parameters,
158
+ ) {
159
+ const { address } = parameters
160
+ return await RelayActions.onrampStatus(client, {
161
+ address,
162
+ })
163
+ }
164
+
165
+ export declare namespace onrampStatus {
166
+ export type Parameters = RelayActions.onrampStatus.Parameters
167
+
168
+ export type ReturnType = RelayActions.onrampStatus.ReturnType
169
+
170
+ export type ErrorType =
171
+ | RelayActions.onrampStatus.ErrorType
172
+ | Errors.GlobalErrorType
173
+ }
174
+
175
+ /**
176
+ * Prepares the digest to sign over and fills the request to send a call bundle.
177
+ *
178
+ * @example
179
+ * TODO
180
+ *
181
+ * @param client - Client.
182
+ * @param parameters - Prepare call bundle parameters.
183
+ * @returns Prepared properties.
184
+ */
185
+ export async function prepareCalls<
186
+ const calls extends readonly unknown[],
187
+ chain extends Chain | undefined,
188
+ account extends Account.Account | undefined,
189
+ >(
190
+ client: Client<Transport, chain, account>,
191
+ parameters: prepareCalls.Parameters<calls, chain, account>,
192
+ ): Promise<prepareCalls.ReturnType> {
193
+ const {
194
+ account = client.account,
195
+ calls,
196
+ chain = client.chain,
197
+ feePayer,
198
+ merchantUrl,
199
+ nonce,
200
+ preCalls,
201
+ requiredFunds,
202
+ revokeKeys,
203
+ } = parameters
204
+
205
+ const account_ = account ? Account.from(account) : undefined
206
+ const key =
207
+ parameters.key ??
208
+ (account_ ? Account.getKey(account_, { role: 'admin' }) : undefined)
209
+
210
+ const hasSessionKey = parameters.authorizeKeys?.some(
211
+ (x) => x.role === 'session',
212
+ )
213
+ const {
214
+ contracts,
215
+ fees: { tokens },
216
+ } = await RelayActions.getCapabilities(client, { chainId: chain?.id })
217
+ const orchestrator = hasSessionKey
218
+ ? contracts.orchestrator.address
219
+ : undefined
220
+
221
+ const authorizeKeys = (parameters.authorizeKeys ?? []).map((key) =>
222
+ Key.toRelay(key, { feeTokens: tokens, orchestrator }),
223
+ )
224
+
225
+ // If a fee token is provided, use it.
226
+ // Otherwise, if there are spend permissions set, we cannot predictably
227
+ // infer the fee token (not pass it) as the fee token needs to have
228
+ // an assigned spend permission set. It is assumed that the first spend
229
+ // permission is the one that is used for the fee token.
230
+ const feeToken = (() => {
231
+ if (parameters.feeToken) return parameters.feeToken
232
+ return key?.permissions?.spend?.[0]?.token
233
+ })()
234
+
235
+ const preCall = typeof preCalls === 'boolean' ? preCalls : false
236
+ const signedPreCalls =
237
+ typeof preCalls === 'object'
238
+ ? preCalls.map(({ context, signature }) => ({
239
+ ...(context.preCall as any),
240
+ signature,
241
+ }))
242
+ : undefined
243
+
244
+ const args = {
245
+ address: account_?.address,
246
+ calls: (calls ?? []) as never,
247
+ capabilities: {
248
+ authorizeKeys,
249
+ meta: {
250
+ feePayer,
251
+ feeToken,
252
+ nonce,
253
+ },
254
+ preCall,
255
+ preCalls: signedPreCalls,
256
+ requiredFunds,
257
+ revokeKeys: revokeKeys?.map((key) => ({
258
+ hash: key.hash,
259
+ })),
260
+ },
261
+ chain: chain as never,
262
+ key: key ? Key.toRelay(key, { feeTokens: tokens }) : undefined,
263
+ } as const
264
+
265
+ const result = await (async () => {
266
+ if (merchantUrl) {
267
+ const client_ = createClient({
268
+ chain: client.chain,
269
+ transport: http(merchantUrl),
270
+ })
271
+ // Prepare with Merchant RPC.
272
+ return await RelayActions.prepareCalls(client_, args).catch((e) => {
273
+ console.error(e)
274
+ // Fall back to default client.
275
+ return RelayActions.prepareCalls(client, args)
276
+ })
277
+ }
278
+ return await RelayActions.prepareCalls(client, args)
279
+ })()
280
+
281
+ const { capabilities, context, digest, signature, typedData } = result
282
+
283
+ if (merchantUrl) {
284
+ const isValid = await RelayActions.verifyPrepareCallsResponse(client, {
285
+ response: result._raw,
286
+ signature,
287
+ })
288
+ if (!isValid)
289
+ throw new Error(
290
+ `cannot verify integrity of \`wallet_prepareCalls\` response from ${merchantUrl}`,
291
+ )
292
+ }
293
+
294
+ return {
295
+ capabilities: { ...capabilities, quote: context.quote as any },
296
+ context,
297
+ digest,
298
+ key,
299
+ typedData,
300
+ } as const
301
+ }
302
+
303
+ export namespace prepareCalls {
304
+ export type Parameters<
305
+ calls extends readonly unknown[] = readonly unknown[],
306
+ chain extends Chain | undefined = Chain | undefined,
307
+ account extends Account.Account | undefined = Account.Account | undefined,
308
+ > = GetChainParameter<chain> &
309
+ GetAccountParameter<account, false> & {
310
+ /** Additional keys to authorize on the account. */
311
+ authorizeKeys?: readonly Key.Key[] | undefined
312
+ /** Calls to prepare. */
313
+ calls?: Calls<Narrow<calls>> | undefined
314
+ /** Key that will be used to sign the calls. */
315
+ key?:
316
+ | Pick<Key.Key, 'permissions' | 'publicKey' | 'prehash' | 'type'>
317
+ | undefined
318
+ /**
319
+ * Indicates if the bundle is "pre-calls", and should be executed before
320
+ * the main bundle.
321
+ *
322
+ * Accepts:
323
+ * - `true`: Indicates this is pre-calls.
324
+ * - An array: Set of prepared pre-calls.
325
+ */
326
+ preCalls?:
327
+ | true
328
+ | readonly {
329
+ context: prepareCalls.ReturnType['context']
330
+ signature: Hex.Hex
331
+ }[]
332
+ | undefined
333
+ /** Required funds to execute the calls. */
334
+ requiredFunds?: Capabilities.requiredFunds.Request | undefined
335
+ /** Additional keys to revoke from the account. */
336
+ revokeKeys?: readonly Key.Key[] | undefined
337
+ /** Merchant RPC URL. */
338
+ merchantUrl?: string | undefined
339
+ } & Omit<Capabilities.meta.Request, 'keyHash'>
340
+
341
+ export type ReturnType = {
342
+ capabilities: RelayActions.prepareCalls.ReturnType['capabilities'] & {
343
+ quote: Quotes.Signed
344
+ }
345
+ context: RelayActions.prepareCalls.ReturnType['context']
346
+ digest: RelayActions.prepareCalls.ReturnType['digest']
347
+ key: Parameters['key']
348
+ typedData: RelayActions.prepareCalls.ReturnType['typedData']
349
+ }
350
+
351
+ export type ErrorType =
352
+ | RelayActions.prepareCalls.ErrorType
353
+ | Errors.GlobalErrorType
354
+ }
355
+
356
+ /**
357
+ * Prepares an account upgrade.
358
+ *
359
+ * @example
360
+ * TODO
361
+ *
362
+ * @param client - Client to use.
363
+ * @param parameters - Parameters.
364
+ * @returns Result.
365
+ */
366
+ export async function prepareUpgradeAccount<chain extends Chain | undefined>(
367
+ client: Client<Transport, chain>,
368
+ parameters: prepareUpgradeAccount.Parameters<chain>,
369
+ ): Promise<prepareUpgradeAccount.ReturnType> {
370
+ const { address, authorizeKeys: keys, chain = client.chain } = parameters
371
+
372
+ if (!chain) throw new Error('chain is required.')
373
+
374
+ const {
375
+ contracts,
376
+ fees: { tokens },
377
+ } = await RelayActions.getCapabilities(client, { chainId: chain.id })
378
+
379
+ const delegation = parameters.delegation ?? contracts.accountProxy.address
380
+ const hasSessionKey = keys.some((x) => x.role === 'session')
381
+ const orchestrator = hasSessionKey
382
+ ? contracts.orchestrator.address
383
+ : undefined
384
+
385
+ const authorizeKeys = keys.map((key) => {
386
+ const permissions = key.role === 'session' ? key.permissions : {}
387
+ return Key.toRelay(
388
+ { ...key, permissions },
389
+ { feeTokens: tokens, orchestrator },
390
+ )
391
+ })
392
+
393
+ const { capabilities, chainId, context, digests, typedData } =
394
+ await RelayActions.prepareUpgradeAccount(client, {
395
+ address,
396
+ authorizeKeys,
397
+ chain,
398
+ delegation,
399
+ })
400
+
401
+ const account = Account.from({
402
+ address,
403
+ keys,
404
+ })
405
+
406
+ return {
407
+ capabilities,
408
+ chainId,
409
+ context: {
410
+ ...context,
411
+ account,
412
+ },
413
+ digests,
414
+ typedData,
415
+ }
416
+ }
417
+
418
+ export declare namespace prepareUpgradeAccount {
419
+ export type Parameters<chain extends Chain | undefined = Chain | undefined> =
420
+ GetChainParameter<chain> & {
421
+ /** Address of the account to upgrade. */
422
+ address: Address.Address
423
+ /** Keys to authorize. */
424
+ authorizeKeys: readonly Key.Key[]
425
+ /** Contract address to delegate to. */
426
+ delegation?: Address.Address | undefined
427
+ /** Fee token. */
428
+ feeToken?: Address.Address | undefined
429
+ }
430
+
431
+ export type ReturnType = Omit<
432
+ RelayActions.prepareUpgradeAccount.ReturnType,
433
+ 'context'
434
+ > & {
435
+ context: RelayActions.prepareUpgradeAccount.ReturnType['context'] & {
436
+ account: Account.Account
437
+ }
438
+ }
439
+
440
+ export type ErrorType =
441
+ | RelayActions.prepareUpgradeAccount.ErrorType
442
+ | Errors.GlobalErrorType
443
+ }
444
+
445
+ /**
446
+ * Resends phone verification code for address
447
+ *
448
+ * @example
449
+ * TODO
450
+ *
451
+ * @param client - Client to use.
452
+ * @param parameters - Parameters.
453
+ * @returns Result.
454
+ */
455
+ export async function resendVerifyPhone<chain extends Chain | undefined>(
456
+ client: Client<Transport, chain>,
457
+ parameters: resendVerifyPhone.Parameters,
458
+ ): Promise<resendVerifyPhone.ReturnType>
459
+ export async function resendVerifyPhone(
460
+ client: Client,
461
+ parameters: resendVerifyPhone.Parameters,
462
+ ) {
463
+ const { phone, walletAddress } = parameters
464
+ return await RelayActions.resendVerifyPhone(client, {
465
+ phone,
466
+ walletAddress,
467
+ })
468
+ }
469
+
470
+ export declare namespace resendVerifyPhone {
471
+ export type Parameters = RelayActions.resendVerifyPhone.Parameters
472
+
473
+ export type ReturnType = RelayActions.resendVerifyPhone.ReturnType
474
+
475
+ export type ErrorType =
476
+ | RelayActions.resendVerifyPhone.ErrorType
477
+ | Errors.GlobalErrorType
478
+ }
479
+
480
+ /**
481
+ * Broadcasts a call bundle to the Relay.
482
+ *
483
+ * @example
484
+ * TODO
485
+ *
486
+ * @param client - Client.
487
+ * @param parameters - Parameters.
488
+ * @returns Bundle identifier.
489
+ */
490
+ export async function sendCalls<
491
+ const calls extends readonly unknown[],
492
+ chain extends Chain | undefined,
493
+ account extends Account.Account | undefined,
494
+ >(
495
+ client: Client<Transport, chain, account>,
496
+ parameters: sendCalls.Parameters<calls, chain, account>,
497
+ ): Promise<sendCalls.ReturnType> {
498
+ const {
499
+ account = client.account,
500
+ chain = client.chain,
501
+ webAuthn,
502
+ } = parameters
503
+
504
+ if (!chain) throw new Error('`chain` is required.')
505
+
506
+ // If no signature is provided, prepare the calls and sign them.
507
+ const account_ = account ? Account.from(account) : undefined
508
+ if (!account_) throw new Error('`account` is required.')
509
+
510
+ const key = parameters.key ?? Account.getKey(account_, parameters)
511
+ if (!key && !account_.sign)
512
+ throw new Error('`key` or `account` with `sign` is required')
513
+
514
+ // Prepare pre-calls.
515
+ const preCalls = await Promise.all(
516
+ (parameters.preCalls ?? []).map(async (pre) => {
517
+ if (pre.signature) return pre
518
+
519
+ const { authorizeKeys, key, calls, revokeKeys } = pre
520
+ const { context, digest } = await prepareCalls(client, {
521
+ account: account_,
522
+ authorizeKeys,
523
+ calls,
524
+ chain,
525
+ feeToken: parameters.feeToken,
526
+ key,
527
+ preCalls: true,
528
+ revokeKeys,
529
+ })
530
+ const signature = await Key.sign(key, {
531
+ address: null,
532
+ payload: digest,
533
+ webAuthn,
534
+ })
535
+ return { context, signature }
536
+ }),
537
+ )
538
+
539
+ // Prepare main bundle.
540
+ const { capabilities, context, digest } = await prepareCalls(client, {
541
+ ...parameters,
542
+ account: account_,
543
+ chain,
544
+ key,
545
+ preCalls,
546
+ } as never)
547
+
548
+ // Sign over the bundles.
549
+ const signature = await (async () => {
550
+ if (key)
551
+ return await Key.sign(key, {
552
+ address: null,
553
+ payload: digest,
554
+ webAuthn,
555
+ wrap: false,
556
+ })
557
+ return await account_.sign({
558
+ hash: digest,
559
+ })
560
+ })()
561
+
562
+ // Broadcast the bundle to the Relay.
563
+ return await sendPreparedCalls(client, {
564
+ capabilities: capabilities.feeSignature
565
+ ? {
566
+ feeSignature: capabilities.feeSignature,
567
+ }
568
+ : undefined,
569
+ context,
570
+ key,
571
+ signature,
572
+ })
573
+ }
574
+
575
+ export declare namespace sendCalls {
576
+ export type Parameters<
577
+ calls extends readonly unknown[] = readonly unknown[],
578
+ chain extends Chain | undefined = Chain | undefined,
579
+ account extends Account.Account | undefined = Account.Account | undefined,
580
+ > = Omit<
581
+ prepareCalls.Parameters,
582
+ 'account' | 'calls' | 'chain' | 'key' | 'preCalls'
583
+ > &
584
+ GetAccountParameter<account> &
585
+ GetChainParameter<chain> & {
586
+ /** Calls to execute. */
587
+ calls?: Calls<Narrow<calls>> | undefined
588
+ /** Key to sign the bundle with. */
589
+ key?: Key.Key | undefined
590
+ /** Calls to execute before the main bundle. */
591
+ preCalls?:
592
+ | readonly OneOf<
593
+ | {
594
+ context: prepareCalls.ReturnType['context']
595
+ signature: Hex.Hex
596
+ }
597
+ | (Pick<
598
+ prepareCalls.Parameters<calls>,
599
+ 'authorizeKeys' | 'calls' | 'revokeKeys'
600
+ > & {
601
+ key: Key.Key
602
+ })
603
+ >[]
604
+ | undefined
605
+ /** Merchant RPC URL. */
606
+ merchantUrl?: string | undefined
607
+ webAuthn?: relay.Parameters['webAuthn']
608
+ }
609
+
610
+ export type ReturnType = RelayActions.sendPreparedCalls.ReturnType
611
+
612
+ export type ErrorType =
613
+ | RelayActions.sendPreparedCalls.ErrorType
614
+ | Errors.GlobalErrorType
615
+ }
616
+
617
+ export async function signCalls(
618
+ request: prepareCalls.ReturnType,
619
+ options: signCalls.Options,
620
+ ) {
621
+ const isPrecall = Boolean(request.context.preCall)
622
+ const { account, key } = options
623
+
624
+ if (account) {
625
+ const keyIndex = account.keys?.findIndex(
626
+ (k) => k.publicKey === request.key?.publicKey,
627
+ )
628
+ if (keyIndex === -1) throw new Error('key not found')
629
+ return await Account.sign(account, {
630
+ key: keyIndex,
631
+ payload: request.digest,
632
+ replaySafe: false,
633
+ wrap: isPrecall,
634
+ })
635
+ }
636
+ if (key)
637
+ return await Key.sign(key, {
638
+ address: null,
639
+ payload: request.digest,
640
+ wrap: isPrecall,
641
+ })
642
+ throw new Error('no key or account provided')
643
+ }
644
+
645
+ export declare namespace signCalls {
646
+ export type Options = OneOf<
647
+ | {
648
+ account: Account.Account
649
+ }
650
+ | {
651
+ key: Key.Key
652
+ }
653
+ >
654
+ }
655
+
656
+ export async function sendPreparedCalls(
657
+ client: Client,
658
+ parameters: sendPreparedCalls.Parameters,
659
+ ): Promise<sendPreparedCalls.ReturnType> {
660
+ const { capabilities, context, key, signature } = parameters
661
+ return await RelayActions.sendPreparedCalls(client, {
662
+ capabilities,
663
+ context,
664
+ key: key ? Key.toRelay(key) : undefined,
665
+ signature,
666
+ })
667
+ }
668
+
669
+ export declare namespace sendPreparedCalls {
670
+ export type Parameters = {
671
+ /** Capabilities. */
672
+ capabilities?:
673
+ | RelayActions.sendPreparedCalls.Parameters['capabilities']
674
+ | undefined
675
+ /** Context. */
676
+ context: prepareCalls.ReturnType['context']
677
+ /** Key. */
678
+ key?: Pick<Key.Key, 'publicKey' | 'prehash' | 'type'> | undefined
679
+ /** Signature. */
680
+ signature: Hex.Hex
681
+ }
682
+
683
+ export type ReturnType = RelayActions.sendPreparedCalls.ReturnType
684
+
685
+ export type ErrorType = RelayActions.sendPreparedCalls.ErrorType
686
+ }
687
+
688
+ /**
689
+ * Sets email for address
690
+ *
691
+ * @example
692
+ * TODO
693
+ *
694
+ * @param client - Client to use.
695
+ * @param parameters - Parameters.
696
+ * @returns Result.
697
+ */
698
+ export async function setEmail<chain extends Chain | undefined>(
699
+ client: Client<Transport, chain>,
700
+ parameters: setEmail.Parameters,
701
+ ): Promise<setEmail.ReturnType>
702
+ export async function setEmail(
703
+ client: Client,
704
+ parameters: setEmail.Parameters,
705
+ ) {
706
+ const { email, walletAddress } = parameters
707
+ return await RelayActions.setEmail(client, {
708
+ email,
709
+ walletAddress,
710
+ })
711
+ }
712
+
713
+ export declare namespace setEmail {
714
+ export type Parameters = RelayActions.setEmail.Parameters
715
+
716
+ export type ReturnType = RelayActions.setEmail.ReturnType
717
+
718
+ export type ErrorType =
719
+ | RelayActions.setEmail.ErrorType
720
+ | Errors.GlobalErrorType
721
+ }
722
+
723
+ /**
724
+ * Sets phone for address
725
+ *
726
+ * @example
727
+ * TODO
728
+ *
729
+ * @param client - Client to use.
730
+ * @param parameters - Parameters.
731
+ * @returns Result.
732
+ */
733
+ export async function setPhone<chain extends Chain | undefined>(
734
+ client: Client<Transport, chain>,
735
+ parameters: setPhone.Parameters,
736
+ ): Promise<setPhone.ReturnType>
737
+ export async function setPhone(
738
+ client: Client,
739
+ parameters: setPhone.Parameters,
740
+ ) {
741
+ const { phone, walletAddress } = parameters
742
+ return await RelayActions.setPhone(client, {
743
+ phone,
744
+ walletAddress,
745
+ })
746
+ }
747
+
748
+ export declare namespace setPhone {
749
+ export type Parameters = RelayActions.setPhone.Parameters
750
+
751
+ export type ReturnType = RelayActions.setPhone.ReturnType
752
+
753
+ export type ErrorType =
754
+ | RelayActions.setPhone.ErrorType
755
+ | Errors.GlobalErrorType
756
+ }
757
+
758
+ /**
759
+ * Broadcasts an account upgrade.
760
+ *
761
+ * @example
762
+ * TODO
763
+ *
764
+ * @param client - Client to use.
765
+ * @param parameters - Parameters.
766
+ * @returns Result.
767
+ */
768
+ // @ts-expect-error
769
+ export async function upgradeAccount<chain extends Chain | undefined>(
770
+ client: Client<Transport, chain>,
771
+ parameters: upgradeAccount.Parameters<chain>,
772
+ ): Promise<upgradeAccount.ReturnType>
773
+ export async function upgradeAccount(
774
+ client: Client,
775
+ parameters: upgradeAccount.Parameters,
776
+ ) {
777
+ if (parameters.account) {
778
+ const { account } = parameters
779
+ const authorizeKeys = [
780
+ ...(account.keys ?? []),
781
+ ...(parameters.authorizeKeys ?? []),
782
+ ].filter(
783
+ (key, index, array) => array.findIndex((k) => k.id === key.id) === index,
784
+ )
785
+ const { digests, ...request } = await prepareUpgradeAccount(client, {
786
+ ...parameters,
787
+ address: account.address,
788
+ authorizeKeys,
789
+ })
790
+
791
+ const signatures = {
792
+ auth: await account.sign({ hash: digests.auth }),
793
+ exec: await account.sign({ hash: digests.exec }),
794
+ }
795
+
796
+ return await upgradeAccount(client, {
797
+ ...request,
798
+ signatures,
799
+ })
800
+ }
801
+
802
+ const { context, signatures } = parameters
803
+
804
+ const account = Account.from(context.account)
805
+
806
+ await RelayActions.upgradeAccount(client, {
807
+ context,
808
+ signatures,
809
+ })
810
+
811
+ return account
812
+ }
813
+
814
+ export declare namespace upgradeAccount {
815
+ type Parameters<chain extends Chain | undefined = Chain | undefined> = OneOf<
816
+ PreparedParameters | UnpreparedParameters<chain>
817
+ >
818
+
819
+ type PreparedParameters = {
820
+ context: prepareUpgradeAccount.ReturnType['context']
821
+ signatures: RelayActions.upgradeAccount.Parameters['signatures']
822
+ }
823
+
824
+ type UnpreparedParameters<
825
+ chain extends Chain | undefined = Chain | undefined,
826
+ > = PartialBy<
827
+ Omit<prepareUpgradeAccount.Parameters<chain>, 'address'>,
828
+ 'authorizeKeys'
829
+ > & {
830
+ account: Account.Account<'privateKey'>
831
+ }
832
+
833
+ type ReturnType = RequiredBy<Account.Account, 'keys'>
834
+
835
+ type ErrorType =
836
+ | RelayActions.upgradeAccount.ErrorType
837
+ | Errors.GlobalErrorType
838
+ }
839
+
840
+ /**
841
+ * Verifies email for address
842
+ *
843
+ * @example
844
+ * TODO
845
+ *
846
+ * @param client - Client to use.
847
+ * @param parameters - Parameters.
848
+ * @returns Result.
849
+ */
850
+ export async function verifyEmail<chain extends Chain | undefined>(
851
+ client: Client<Transport, chain>,
852
+ parameters: verifyEmail.Parameters,
853
+ ): Promise<verifyEmail.ReturnType>
854
+ export async function verifyEmail(
855
+ client: Client,
856
+ parameters: verifyEmail.Parameters,
857
+ ) {
858
+ const { chainId, email, signature, token, walletAddress } = parameters
859
+ return await RelayActions.verifyEmail(client, {
860
+ chainId,
861
+ email,
862
+ signature,
863
+ token,
864
+ walletAddress,
865
+ })
866
+ }
867
+
868
+ export declare namespace verifyEmail {
869
+ export type Parameters = RelayActions.verifyEmail.Parameters
870
+
871
+ export type ReturnType = RelayActions.verifyEmail.ReturnType
872
+
873
+ export type ErrorType =
874
+ | RelayActions.verifyEmail.ErrorType
875
+ | Errors.GlobalErrorType
876
+ }
877
+
878
+ /**
879
+ * Verifies phone for address
880
+ *
881
+ * @example
882
+ * TODO
883
+ *
884
+ * @param client - Client to use.
885
+ * @param parameters - Parameters.
886
+ * @returns Result.
887
+ */
888
+ export async function verifyPhone<chain extends Chain | undefined>(
889
+ client: Client<Transport, chain>,
890
+ parameters: verifyPhone.Parameters,
891
+ ): Promise<verifyPhone.ReturnType>
892
+ export async function verifyPhone(
893
+ client: Client,
894
+ parameters: verifyPhone.Parameters,
895
+ ) {
896
+ const { code, phone, walletAddress } = parameters
897
+ return await RelayActions.verifyPhone(client, {
898
+ code,
899
+ phone,
900
+ walletAddress,
901
+ })
902
+ }
903
+
904
+ export declare namespace verifyPhone {
905
+ export type Parameters = RelayActions.verifyPhone.Parameters
906
+
907
+ export type ReturnType = RelayActions.verifyPhone.ReturnType
908
+
909
+ export type ErrorType =
910
+ | RelayActions.verifyPhone.ErrorType
911
+ | Errors.GlobalErrorType
912
+ }
913
+
914
+ export type Decorator<
915
+ chain extends Chain | undefined = Chain | undefined,
916
+ account extends Account.Account | undefined = Account.Account | undefined,
917
+ > = {
918
+ /**
919
+ * Creates a new Porto Account using an ephemeral EOA.
920
+ *
921
+ * @example
922
+ * TODO
923
+ *
924
+ * @param client - Client.
925
+ * @param parameters - Parameters.
926
+ * @returns Result.
927
+ */
928
+ createAccount: (
929
+ parameters: createAccount.Parameters<chain>,
930
+ ) => Promise<createAccount.ReturnType>
931
+ /**
932
+ * Gets the status of a call bundle.
933
+ *
934
+ * @example
935
+ * TODO
936
+ *
937
+ * @param client - The client to use.
938
+ * @param parameters - Parameters.
939
+ * @returns Result.
940
+ */
941
+ getCallsStatus: (
942
+ parameters: RelayActions.getCallsStatus.Parameters,
943
+ ) => Promise<RelayActions.getCallsStatus.ReturnType>
944
+ /**
945
+ * Gets the capabilities for a given chain ID.
946
+ *
947
+ * @example
948
+ * TODO
949
+ *
950
+ * @param client - The client to use.
951
+ * @param options - Options.
952
+ * @returns Result.
953
+ */
954
+ getCapabilities: <
955
+ const chainIds extends readonly number[] | undefined = undefined,
956
+ const raw extends boolean = false,
957
+ >() => Promise<RelayActions.getCapabilities.ReturnType<chainIds, raw>>
958
+ /**
959
+ * Gets the keys for a given account.
960
+ *
961
+ * @example
962
+ * TODO
963
+ *
964
+ * @param client - The client to use.
965
+ * @param parameters - Parameters.
966
+ * @returns Result.
967
+ */
968
+ getKeys: (
969
+ parameters: getKeys.Parameters<account>,
970
+ ) => Promise<getKeys.ReturnType>
971
+ /**
972
+ * Gets the health of the RPC.
973
+ *
974
+ * @example
975
+ * TODO
976
+ *
977
+ * @param client - The client to use.
978
+ * @returns Result.
979
+ */
980
+ health: () => Promise<RelayActions.health.ReturnType>
981
+ /**
982
+ * Prepares a call bundle.
983
+ *
984
+ * @example
985
+ * TODO
986
+ *
987
+ * @param client - The client to use.
988
+ * @param parameters - Parameters.
989
+ * @returns Result.
990
+ */
991
+ prepareCalls: <const calls extends readonly unknown[]>(
992
+ parameters: prepareCalls.Parameters<calls, chain, account>,
993
+ ) => Promise<prepareCalls.ReturnType>
994
+ /**
995
+ * Prepares an account upgrade.
996
+ *
997
+ * @example
998
+ * TODO
999
+ *
1000
+ * @param client - Client to use.
1001
+ * @param parameters - Parameters.
1002
+ * @returns Result.
1003
+ */
1004
+ prepareUpgradeAccount: (
1005
+ parameters: prepareUpgradeAccount.Parameters<chain>,
1006
+ ) => Promise<prepareUpgradeAccount.ReturnType>
1007
+ /**
1008
+ * Broadcasts a call bundle.
1009
+ *
1010
+ * @example
1011
+ * TODO
1012
+ *
1013
+ * @param client - Client to use.
1014
+ * @param parameters - Parameters.
1015
+ * @returns Result.
1016
+ */
1017
+ sendCalls: <const calls extends readonly unknown[]>(
1018
+ parameters: sendCalls.Parameters<calls, chain, account>,
1019
+ ) => Promise<sendCalls.ReturnType>
1020
+ /**
1021
+ * Broadcasts a signed call bundle.
1022
+ *
1023
+ * @example
1024
+ * TODO
1025
+ *
1026
+ * @param client - The client to use.
1027
+ * @param parameters - Parameters.
1028
+ * @returns Result.
1029
+ */
1030
+ sendPreparedCalls: (
1031
+ parameters: sendPreparedCalls.Parameters,
1032
+ ) => Promise<sendPreparedCalls.ReturnType>
1033
+ /**
1034
+ * Broadcasts an account upgrade.
1035
+ *
1036
+ * @example
1037
+ * TODO
1038
+ *
1039
+ * @param client - Client to use.
1040
+ * @param parameters - Parameters.
1041
+ * @returns Result.
1042
+ */
1043
+ upgradeAccount: (
1044
+ parameters: upgradeAccount.Parameters<chain>,
1045
+ ) => Promise<upgradeAccount.ReturnType>
1046
+ /**
1047
+ * Verifies a signature.
1048
+ *
1049
+ * @example
1050
+ * TODO
1051
+ *
1052
+ * @param client - The client to use.
1053
+ * @param parameters - Parameters.
1054
+ * @returns Result.
1055
+ */
1056
+ verifySignature: (
1057
+ parameters: RelayActions.verifySignature.Parameters<chain>,
1058
+ ) => Promise<RelayActions.verifySignature.ReturnType>
1059
+ }
1060
+
1061
+ export function decorator<
1062
+ transport extends Transport,
1063
+ chain extends Chain | undefined,
1064
+ account extends Account.Account | undefined,
1065
+ >(client: Client<transport, chain, account>): Decorator<chain, account> {
1066
+ return {
1067
+ createAccount: (parameters) => createAccount(client, parameters),
1068
+ getCallsStatus: (parameters) =>
1069
+ RelayActions.getCallsStatus(client, parameters),
1070
+ getCapabilities: () => RelayActions.getCapabilities(client),
1071
+ getKeys: (parameters) => getKeys(client, parameters),
1072
+ health: () => RelayActions.health(client),
1073
+ prepareCalls: (parameters) => prepareCalls(client, parameters),
1074
+ prepareUpgradeAccount: (parameters) =>
1075
+ prepareUpgradeAccount(client, parameters),
1076
+ sendCalls: (parameters) => sendCalls(client, parameters),
1077
+ sendPreparedCalls: (parameters) => sendPreparedCalls(client, parameters),
1078
+ upgradeAccount: (parameters) => upgradeAccount(client, parameters),
1079
+ verifySignature: (parameters) =>
1080
+ RelayActions.verifySignature(client, parameters),
1081
+ }
1082
+ }