@ordanetwork/sdk 1.0.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 (341) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +315 -0
  3. package/dist/browser/api/OffRampAPI.d.ts +45 -0
  4. package/dist/browser/api/OffRampAPI.d.ts.map +1 -0
  5. package/dist/browser/api/OffRampAPI.js +73 -0
  6. package/dist/browser/api/OffRampAPI.js.map +1 -0
  7. package/dist/browser/api/OnRampAPI.d.ts +42 -0
  8. package/dist/browser/api/OnRampAPI.d.ts.map +1 -0
  9. package/dist/browser/api/OnRampAPI.js +73 -0
  10. package/dist/browser/api/OnRampAPI.js.map +1 -0
  11. package/dist/browser/api/QuoteAPI.d.ts +16 -0
  12. package/dist/browser/api/QuoteAPI.d.ts.map +1 -0
  13. package/dist/browser/api/QuoteAPI.js +17 -0
  14. package/dist/browser/api/QuoteAPI.js.map +1 -0
  15. package/dist/browser/api/RecipientAPI.d.ts +25 -0
  16. package/dist/browser/api/RecipientAPI.d.ts.map +1 -0
  17. package/dist/browser/api/RecipientAPI.js +30 -0
  18. package/dist/browser/api/RecipientAPI.js.map +1 -0
  19. package/dist/browser/api/TransactionAPI.d.ts +35 -0
  20. package/dist/browser/api/TransactionAPI.d.ts.map +1 -0
  21. package/dist/browser/api/TransactionAPI.js +72 -0
  22. package/dist/browser/api/TransactionAPI.js.map +1 -0
  23. package/dist/browser/auth/hmac.d.ts +24 -0
  24. package/dist/browser/auth/hmac.d.ts.map +1 -0
  25. package/dist/browser/auth/hmac.js +70 -0
  26. package/dist/browser/auth/hmac.js.map +1 -0
  27. package/dist/browser/crypto/factory.d.ts +7 -0
  28. package/dist/browser/crypto/factory.d.ts.map +1 -0
  29. package/dist/browser/crypto/factory.js +18 -0
  30. package/dist/browser/crypto/factory.js.map +1 -0
  31. package/dist/browser/crypto/node-crypto.d.ts +10 -0
  32. package/dist/browser/crypto/node-crypto.d.ts.map +1 -0
  33. package/dist/browser/crypto/node-crypto.js +28 -0
  34. package/dist/browser/crypto/node-crypto.js.map +1 -0
  35. package/dist/browser/crypto/types.d.ts +13 -0
  36. package/dist/browser/crypto/types.d.ts.map +1 -0
  37. package/dist/browser/crypto/types.js +2 -0
  38. package/dist/browser/crypto/types.js.map +1 -0
  39. package/dist/browser/crypto/web-crypto.d.ts +8 -0
  40. package/dist/browser/crypto/web-crypto.d.ts.map +1 -0
  41. package/dist/browser/crypto/web-crypto.js +17 -0
  42. package/dist/browser/crypto/web-crypto.js.map +1 -0
  43. package/dist/browser/errors/index.d.ts +38 -0
  44. package/dist/browser/errors/index.d.ts.map +1 -0
  45. package/dist/browser/errors/index.js +72 -0
  46. package/dist/browser/errors/index.js.map +1 -0
  47. package/dist/browser/http/client.d.ts +50 -0
  48. package/dist/browser/http/client.d.ts.map +1 -0
  49. package/dist/browser/http/client.js +153 -0
  50. package/dist/browser/http/client.js.map +1 -0
  51. package/dist/browser/index.d.ts +59 -0
  52. package/dist/browser/index.d.ts.map +1 -0
  53. package/dist/browser/index.js +78 -0
  54. package/dist/browser/index.js.map +1 -0
  55. package/dist/browser/smart-wallets/LocalSigner.d.ts +19 -0
  56. package/dist/browser/smart-wallets/LocalSigner.d.ts.map +1 -0
  57. package/dist/browser/smart-wallets/LocalSigner.js +57 -0
  58. package/dist/browser/smart-wallets/LocalSigner.js.map +1 -0
  59. package/dist/browser/smart-wallets/SmartWalletClient.d.ts +19 -0
  60. package/dist/browser/smart-wallets/SmartWalletClient.d.ts.map +1 -0
  61. package/dist/browser/smart-wallets/SmartWalletClient.js +180 -0
  62. package/dist/browser/smart-wallets/SmartWalletClient.js.map +1 -0
  63. package/dist/browser/smart-wallets/SmartWalletManager.d.ts +17 -0
  64. package/dist/browser/smart-wallets/SmartWalletManager.d.ts.map +1 -0
  65. package/dist/browser/smart-wallets/SmartWalletManager.js +59 -0
  66. package/dist/browser/smart-wallets/SmartWalletManager.js.map +1 -0
  67. package/dist/browser/smart-wallets/chains.d.ts +11 -0
  68. package/dist/browser/smart-wallets/chains.d.ts.map +1 -0
  69. package/dist/browser/smart-wallets/chains.js +30 -0
  70. package/dist/browser/smart-wallets/chains.js.map +1 -0
  71. package/dist/browser/smart-wallets/errors.d.ts +23 -0
  72. package/dist/browser/smart-wallets/errors.d.ts.map +1 -0
  73. package/dist/browser/smart-wallets/errors.js +44 -0
  74. package/dist/browser/smart-wallets/errors.js.map +1 -0
  75. package/dist/browser/smart-wallets/index.d.ts +11 -0
  76. package/dist/browser/smart-wallets/index.d.ts.map +1 -0
  77. package/dist/browser/smart-wallets/index.js +13 -0
  78. package/dist/browser/smart-wallets/index.js.map +1 -0
  79. package/dist/browser/smart-wallets/types.d.ts +47 -0
  80. package/dist/browser/smart-wallets/types.d.ts.map +1 -0
  81. package/dist/browser/smart-wallets/types.js +2 -0
  82. package/dist/browser/smart-wallets/types.js.map +1 -0
  83. package/dist/browser/smart-wallets/utils.d.ts +22 -0
  84. package/dist/browser/smart-wallets/utils.d.ts.map +1 -0
  85. package/dist/browser/smart-wallets/utils.js +57 -0
  86. package/dist/browser/smart-wallets/utils.js.map +1 -0
  87. package/dist/browser/types/index.d.ts +170 -0
  88. package/dist/browser/types/index.d.ts.map +1 -0
  89. package/dist/browser/types/index.js +10 -0
  90. package/dist/browser/types/index.js.map +1 -0
  91. package/dist/browser/types/offramp.d.ts +55 -0
  92. package/dist/browser/types/offramp.d.ts.map +1 -0
  93. package/dist/browser/types/offramp.js +2 -0
  94. package/dist/browser/types/offramp.js.map +1 -0
  95. package/dist/browser/types/onramp.d.ts +54 -0
  96. package/dist/browser/types/onramp.d.ts.map +1 -0
  97. package/dist/browser/types/onramp.js +2 -0
  98. package/dist/browser/types/onramp.js.map +1 -0
  99. package/dist/cjs/api/OffRampAPI.d.ts +45 -0
  100. package/dist/cjs/api/OffRampAPI.d.ts.map +1 -0
  101. package/dist/cjs/api/OffRampAPI.js +77 -0
  102. package/dist/cjs/api/OffRampAPI.js.map +1 -0
  103. package/dist/cjs/api/OnRampAPI.d.ts +42 -0
  104. package/dist/cjs/api/OnRampAPI.d.ts.map +1 -0
  105. package/dist/cjs/api/OnRampAPI.js +77 -0
  106. package/dist/cjs/api/OnRampAPI.js.map +1 -0
  107. package/dist/cjs/api/QuoteAPI.d.ts +16 -0
  108. package/dist/cjs/api/QuoteAPI.d.ts.map +1 -0
  109. package/dist/cjs/api/QuoteAPI.js +21 -0
  110. package/dist/cjs/api/QuoteAPI.js.map +1 -0
  111. package/dist/cjs/api/RecipientAPI.d.ts +25 -0
  112. package/dist/cjs/api/RecipientAPI.d.ts.map +1 -0
  113. package/dist/cjs/api/RecipientAPI.js +34 -0
  114. package/dist/cjs/api/RecipientAPI.js.map +1 -0
  115. package/dist/cjs/api/TransactionAPI.d.ts +35 -0
  116. package/dist/cjs/api/TransactionAPI.d.ts.map +1 -0
  117. package/dist/cjs/api/TransactionAPI.js +76 -0
  118. package/dist/cjs/api/TransactionAPI.js.map +1 -0
  119. package/dist/cjs/auth/hmac.d.ts +24 -0
  120. package/dist/cjs/auth/hmac.d.ts.map +1 -0
  121. package/dist/cjs/auth/hmac.js +74 -0
  122. package/dist/cjs/auth/hmac.js.map +1 -0
  123. package/dist/cjs/crypto/factory.d.ts +7 -0
  124. package/dist/cjs/crypto/factory.d.ts.map +1 -0
  125. package/dist/cjs/crypto/factory.js +21 -0
  126. package/dist/cjs/crypto/factory.js.map +1 -0
  127. package/dist/cjs/crypto/node-crypto.d.ts +10 -0
  128. package/dist/cjs/crypto/node-crypto.d.ts.map +1 -0
  129. package/dist/cjs/crypto/node-crypto.js +65 -0
  130. package/dist/cjs/crypto/node-crypto.js.map +1 -0
  131. package/dist/cjs/crypto/types.d.ts +13 -0
  132. package/dist/cjs/crypto/types.d.ts.map +1 -0
  133. package/dist/cjs/crypto/types.js +3 -0
  134. package/dist/cjs/crypto/types.js.map +1 -0
  135. package/dist/cjs/crypto/web-crypto.d.ts +8 -0
  136. package/dist/cjs/crypto/web-crypto.d.ts.map +1 -0
  137. package/dist/cjs/crypto/web-crypto.js +21 -0
  138. package/dist/cjs/crypto/web-crypto.js.map +1 -0
  139. package/dist/cjs/errors/index.d.ts +38 -0
  140. package/dist/cjs/errors/index.d.ts.map +1 -0
  141. package/dist/cjs/errors/index.js +85 -0
  142. package/dist/cjs/errors/index.js.map +1 -0
  143. package/dist/cjs/http/client.d.ts +50 -0
  144. package/dist/cjs/http/client.d.ts.map +1 -0
  145. package/dist/cjs/http/client.js +157 -0
  146. package/dist/cjs/http/client.js.map +1 -0
  147. package/dist/cjs/index.d.ts +59 -0
  148. package/dist/cjs/index.d.ts.map +1 -0
  149. package/dist/cjs/index.js +112 -0
  150. package/dist/cjs/index.js.map +1 -0
  151. package/dist/cjs/package.json +1 -0
  152. package/dist/cjs/smart-wallets/LocalSigner.d.ts +19 -0
  153. package/dist/cjs/smart-wallets/LocalSigner.d.ts.map +1 -0
  154. package/dist/cjs/smart-wallets/LocalSigner.js +61 -0
  155. package/dist/cjs/smart-wallets/LocalSigner.js.map +1 -0
  156. package/dist/cjs/smart-wallets/SmartWalletClient.d.ts +19 -0
  157. package/dist/cjs/smart-wallets/SmartWalletClient.d.ts.map +1 -0
  158. package/dist/cjs/smart-wallets/SmartWalletClient.js +184 -0
  159. package/dist/cjs/smart-wallets/SmartWalletClient.js.map +1 -0
  160. package/dist/cjs/smart-wallets/SmartWalletManager.d.ts +17 -0
  161. package/dist/cjs/smart-wallets/SmartWalletManager.d.ts.map +1 -0
  162. package/dist/cjs/smart-wallets/SmartWalletManager.js +63 -0
  163. package/dist/cjs/smart-wallets/SmartWalletManager.js.map +1 -0
  164. package/dist/cjs/smart-wallets/chains.d.ts +11 -0
  165. package/dist/cjs/smart-wallets/chains.d.ts.map +1 -0
  166. package/dist/cjs/smart-wallets/chains.js +36 -0
  167. package/dist/cjs/smart-wallets/chains.js.map +1 -0
  168. package/dist/cjs/smart-wallets/errors.d.ts +23 -0
  169. package/dist/cjs/smart-wallets/errors.d.ts.map +1 -0
  170. package/dist/cjs/smart-wallets/errors.js +54 -0
  171. package/dist/cjs/smart-wallets/errors.js.map +1 -0
  172. package/dist/cjs/smart-wallets/index.d.ts +11 -0
  173. package/dist/cjs/smart-wallets/index.d.ts.map +1 -0
  174. package/dist/cjs/smart-wallets/index.js +36 -0
  175. package/dist/cjs/smart-wallets/index.js.map +1 -0
  176. package/dist/cjs/smart-wallets/types.d.ts +47 -0
  177. package/dist/cjs/smart-wallets/types.d.ts.map +1 -0
  178. package/dist/cjs/smart-wallets/types.js +3 -0
  179. package/dist/cjs/smart-wallets/types.js.map +1 -0
  180. package/dist/cjs/smart-wallets/utils.d.ts +22 -0
  181. package/dist/cjs/smart-wallets/utils.d.ts.map +1 -0
  182. package/dist/cjs/smart-wallets/utils.js +64 -0
  183. package/dist/cjs/smart-wallets/utils.js.map +1 -0
  184. package/dist/cjs/types/index.d.ts +170 -0
  185. package/dist/cjs/types/index.d.ts.map +1 -0
  186. package/dist/cjs/types/index.js +13 -0
  187. package/dist/cjs/types/index.js.map +1 -0
  188. package/dist/cjs/types/offramp.d.ts +55 -0
  189. package/dist/cjs/types/offramp.d.ts.map +1 -0
  190. package/dist/cjs/types/offramp.js +3 -0
  191. package/dist/cjs/types/offramp.js.map +1 -0
  192. package/dist/cjs/types/onramp.d.ts +54 -0
  193. package/dist/cjs/types/onramp.d.ts.map +1 -0
  194. package/dist/cjs/types/onramp.js +3 -0
  195. package/dist/cjs/types/onramp.js.map +1 -0
  196. package/dist/esm/api/OffRampAPI.d.ts +45 -0
  197. package/dist/esm/api/OffRampAPI.d.ts.map +1 -0
  198. package/dist/esm/api/OffRampAPI.js +73 -0
  199. package/dist/esm/api/OffRampAPI.js.map +1 -0
  200. package/dist/esm/api/OnRampAPI.d.ts +42 -0
  201. package/dist/esm/api/OnRampAPI.d.ts.map +1 -0
  202. package/dist/esm/api/OnRampAPI.js +73 -0
  203. package/dist/esm/api/OnRampAPI.js.map +1 -0
  204. package/dist/esm/api/QuoteAPI.d.ts +16 -0
  205. package/dist/esm/api/QuoteAPI.d.ts.map +1 -0
  206. package/dist/esm/api/QuoteAPI.js +17 -0
  207. package/dist/esm/api/QuoteAPI.js.map +1 -0
  208. package/dist/esm/api/RecipientAPI.d.ts +25 -0
  209. package/dist/esm/api/RecipientAPI.d.ts.map +1 -0
  210. package/dist/esm/api/RecipientAPI.js +30 -0
  211. package/dist/esm/api/RecipientAPI.js.map +1 -0
  212. package/dist/esm/api/TransactionAPI.d.ts +35 -0
  213. package/dist/esm/api/TransactionAPI.d.ts.map +1 -0
  214. package/dist/esm/api/TransactionAPI.js +72 -0
  215. package/dist/esm/api/TransactionAPI.js.map +1 -0
  216. package/dist/esm/auth/hmac.d.ts +24 -0
  217. package/dist/esm/auth/hmac.d.ts.map +1 -0
  218. package/dist/esm/auth/hmac.js +70 -0
  219. package/dist/esm/auth/hmac.js.map +1 -0
  220. package/dist/esm/crypto/factory.d.ts +7 -0
  221. package/dist/esm/crypto/factory.d.ts.map +1 -0
  222. package/dist/esm/crypto/factory.js +18 -0
  223. package/dist/esm/crypto/factory.js.map +1 -0
  224. package/dist/esm/crypto/node-crypto.d.ts +10 -0
  225. package/dist/esm/crypto/node-crypto.d.ts.map +1 -0
  226. package/dist/esm/crypto/node-crypto.js +28 -0
  227. package/dist/esm/crypto/node-crypto.js.map +1 -0
  228. package/dist/esm/crypto/types.d.ts +13 -0
  229. package/dist/esm/crypto/types.d.ts.map +1 -0
  230. package/dist/esm/crypto/types.js +2 -0
  231. package/dist/esm/crypto/types.js.map +1 -0
  232. package/dist/esm/crypto/web-crypto.d.ts +8 -0
  233. package/dist/esm/crypto/web-crypto.d.ts.map +1 -0
  234. package/dist/esm/crypto/web-crypto.js +17 -0
  235. package/dist/esm/crypto/web-crypto.js.map +1 -0
  236. package/dist/esm/errors/index.d.ts +38 -0
  237. package/dist/esm/errors/index.d.ts.map +1 -0
  238. package/dist/esm/errors/index.js +72 -0
  239. package/dist/esm/errors/index.js.map +1 -0
  240. package/dist/esm/http/client.d.ts +50 -0
  241. package/dist/esm/http/client.d.ts.map +1 -0
  242. package/dist/esm/http/client.js +153 -0
  243. package/dist/esm/http/client.js.map +1 -0
  244. package/dist/esm/index.d.ts +59 -0
  245. package/dist/esm/index.d.ts.map +1 -0
  246. package/dist/esm/index.js +78 -0
  247. package/dist/esm/index.js.map +1 -0
  248. package/dist/esm/package.json +1 -0
  249. package/dist/esm/smart-wallets/LocalSigner.d.ts +19 -0
  250. package/dist/esm/smart-wallets/LocalSigner.d.ts.map +1 -0
  251. package/dist/esm/smart-wallets/LocalSigner.js +57 -0
  252. package/dist/esm/smart-wallets/LocalSigner.js.map +1 -0
  253. package/dist/esm/smart-wallets/SmartWalletClient.d.ts +19 -0
  254. package/dist/esm/smart-wallets/SmartWalletClient.d.ts.map +1 -0
  255. package/dist/esm/smart-wallets/SmartWalletClient.js +180 -0
  256. package/dist/esm/smart-wallets/SmartWalletClient.js.map +1 -0
  257. package/dist/esm/smart-wallets/SmartWalletManager.d.ts +17 -0
  258. package/dist/esm/smart-wallets/SmartWalletManager.d.ts.map +1 -0
  259. package/dist/esm/smart-wallets/SmartWalletManager.js +59 -0
  260. package/dist/esm/smart-wallets/SmartWalletManager.js.map +1 -0
  261. package/dist/esm/smart-wallets/chains.d.ts +11 -0
  262. package/dist/esm/smart-wallets/chains.d.ts.map +1 -0
  263. package/dist/esm/smart-wallets/chains.js +30 -0
  264. package/dist/esm/smart-wallets/chains.js.map +1 -0
  265. package/dist/esm/smart-wallets/errors.d.ts +23 -0
  266. package/dist/esm/smart-wallets/errors.d.ts.map +1 -0
  267. package/dist/esm/smart-wallets/errors.js +44 -0
  268. package/dist/esm/smart-wallets/errors.js.map +1 -0
  269. package/dist/esm/smart-wallets/index.d.ts +11 -0
  270. package/dist/esm/smart-wallets/index.d.ts.map +1 -0
  271. package/dist/esm/smart-wallets/index.js +13 -0
  272. package/dist/esm/smart-wallets/index.js.map +1 -0
  273. package/dist/esm/smart-wallets/types.d.ts +47 -0
  274. package/dist/esm/smart-wallets/types.d.ts.map +1 -0
  275. package/dist/esm/smart-wallets/types.js +2 -0
  276. package/dist/esm/smart-wallets/types.js.map +1 -0
  277. package/dist/esm/smart-wallets/utils.d.ts +22 -0
  278. package/dist/esm/smart-wallets/utils.d.ts.map +1 -0
  279. package/dist/esm/smart-wallets/utils.js +57 -0
  280. package/dist/esm/smart-wallets/utils.js.map +1 -0
  281. package/dist/esm/types/index.d.ts +170 -0
  282. package/dist/esm/types/index.d.ts.map +1 -0
  283. package/dist/esm/types/index.js +10 -0
  284. package/dist/esm/types/index.js.map +1 -0
  285. package/dist/esm/types/offramp.d.ts +55 -0
  286. package/dist/esm/types/offramp.d.ts.map +1 -0
  287. package/dist/esm/types/offramp.js +2 -0
  288. package/dist/esm/types/offramp.js.map +1 -0
  289. package/dist/esm/types/onramp.d.ts +54 -0
  290. package/dist/esm/types/onramp.d.ts.map +1 -0
  291. package/dist/esm/types/onramp.js +2 -0
  292. package/dist/esm/types/onramp.js.map +1 -0
  293. package/dist/types/api/OffRampAPI.d.ts +45 -0
  294. package/dist/types/api/OffRampAPI.d.ts.map +1 -0
  295. package/dist/types/api/OnRampAPI.d.ts +42 -0
  296. package/dist/types/api/OnRampAPI.d.ts.map +1 -0
  297. package/dist/types/api/QuoteAPI.d.ts +16 -0
  298. package/dist/types/api/QuoteAPI.d.ts.map +1 -0
  299. package/dist/types/api/RecipientAPI.d.ts +25 -0
  300. package/dist/types/api/RecipientAPI.d.ts.map +1 -0
  301. package/dist/types/api/TransactionAPI.d.ts +35 -0
  302. package/dist/types/api/TransactionAPI.d.ts.map +1 -0
  303. package/dist/types/auth/hmac.d.ts +24 -0
  304. package/dist/types/auth/hmac.d.ts.map +1 -0
  305. package/dist/types/crypto/factory.d.ts +7 -0
  306. package/dist/types/crypto/factory.d.ts.map +1 -0
  307. package/dist/types/crypto/node-crypto.d.ts +10 -0
  308. package/dist/types/crypto/node-crypto.d.ts.map +1 -0
  309. package/dist/types/crypto/types.d.ts +13 -0
  310. package/dist/types/crypto/types.d.ts.map +1 -0
  311. package/dist/types/crypto/web-crypto.d.ts +8 -0
  312. package/dist/types/crypto/web-crypto.d.ts.map +1 -0
  313. package/dist/types/errors/index.d.ts +38 -0
  314. package/dist/types/errors/index.d.ts.map +1 -0
  315. package/dist/types/http/client.d.ts +50 -0
  316. package/dist/types/http/client.d.ts.map +1 -0
  317. package/dist/types/index.d.ts +59 -0
  318. package/dist/types/index.d.ts.map +1 -0
  319. package/dist/types/smart-wallets/LocalSigner.d.ts +19 -0
  320. package/dist/types/smart-wallets/LocalSigner.d.ts.map +1 -0
  321. package/dist/types/smart-wallets/SmartWalletClient.d.ts +19 -0
  322. package/dist/types/smart-wallets/SmartWalletClient.d.ts.map +1 -0
  323. package/dist/types/smart-wallets/SmartWalletManager.d.ts +17 -0
  324. package/dist/types/smart-wallets/SmartWalletManager.d.ts.map +1 -0
  325. package/dist/types/smart-wallets/chains.d.ts +11 -0
  326. package/dist/types/smart-wallets/chains.d.ts.map +1 -0
  327. package/dist/types/smart-wallets/errors.d.ts +23 -0
  328. package/dist/types/smart-wallets/errors.d.ts.map +1 -0
  329. package/dist/types/smart-wallets/index.d.ts +11 -0
  330. package/dist/types/smart-wallets/index.d.ts.map +1 -0
  331. package/dist/types/smart-wallets/types.d.ts +47 -0
  332. package/dist/types/smart-wallets/types.d.ts.map +1 -0
  333. package/dist/types/smart-wallets/utils.d.ts +22 -0
  334. package/dist/types/smart-wallets/utils.d.ts.map +1 -0
  335. package/dist/types/types/index.d.ts +170 -0
  336. package/dist/types/types/index.d.ts.map +1 -0
  337. package/dist/types/types/offramp.d.ts +55 -0
  338. package/dist/types/types/offramp.d.ts.map +1 -0
  339. package/dist/types/types/onramp.d.ts +54 -0
  340. package/dist/types/types/onramp.d.ts.map +1 -0
  341. package/package.json +99 -0
@@ -0,0 +1,59 @@
1
+ import { QuoteAPI } from './api/QuoteAPI';
2
+ import { RecipientAPI } from './api/RecipientAPI';
3
+ import { TransactionAPI } from './api/TransactionAPI';
4
+ import { OffRampAPI } from './api/OffRampAPI';
5
+ import { OnRampAPI } from './api/OnRampAPI';
6
+ import { SmartWalletManager } from './smart-wallets';
7
+ /**
8
+ * Configuration options for OrdaSDK
9
+ */
10
+ export interface OrdaConfig {
11
+ clientId: string;
12
+ clientSecret: string;
13
+ requestTimeout?: number;
14
+ enableTimestamp?: boolean;
15
+ debug?: boolean;
16
+ alchemyApiKey?: string;
17
+ }
18
+ /**
19
+ * Main SDK class for interacting with Orda API
20
+ */
21
+ export declare class OrdaSDK {
22
+ private httpClient;
23
+ private config;
24
+ quote: QuoteAPI;
25
+ recipients: RecipientAPI;
26
+ transactions: TransactionAPI;
27
+ offRamp: OffRampAPI;
28
+ onRamp: OnRampAPI;
29
+ smartWallets: SmartWalletManager;
30
+ constructor(config: OrdaConfig);
31
+ /**
32
+ * Checks if the SDK is running in a browser environment
33
+ */
34
+ static isBrowser(): boolean;
35
+ /**
36
+ * Checks if the SDK is running in Node.js
37
+ */
38
+ static isNode(): boolean;
39
+ /**
40
+ * Gets the current SDK version
41
+ */
42
+ static get version(): string;
43
+ }
44
+ export * from './types';
45
+ export * from './types/offramp';
46
+ export * from './types/onramp';
47
+ export * from './errors';
48
+ export { QuoteAPI } from './api/QuoteAPI';
49
+ export { RecipientAPI } from './api/RecipientAPI';
50
+ export { TransactionAPI, type PollingOptions } from './api/TransactionAPI';
51
+ export { OffRampAPI, type OffRampPollingOptions } from './api/OffRampAPI';
52
+ export { OnRampAPI, type OnRampPollingOptions } from './api/OnRampAPI';
53
+ export { UniversalHttpClient, type RequestConfig, type HttpClientConfig } from './http/client';
54
+ export { HmacAuthenticator } from './auth/hmac';
55
+ export { SmartWalletClient, SmartWalletManager, LocalSigner, createSmartWallet } from './smart-wallets';
56
+ export type { SmartWalletConfig, SmartWalletInterface, UserOperationRequest, TransactionResult, AccountType, SmartWalletState, } from './smart-wallets';
57
+ export { SmartWalletError, ConnectionError, UserOperationError, InsufficientFundsError, AccountNotDeployedError, } from './smart-wallets';
58
+ export default OrdaSDK;
59
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,MAAM,CAAa;IAEpB,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,YAAY,CAAC;IACzB,YAAY,EAAE,cAAc,CAAC;IAC7B,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,YAAY,EAAE,kBAAkB,CAAC;gBAE5B,MAAM,EAAE,UAAU;IA6C9B;;OAEG;IACH,MAAM,CAAC,SAAS,IAAI,OAAO;IAI3B;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,OAAO;IAIxB;;OAEG;IACH,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;CACF;AAED,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,KAAK,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACxG,YAAY,EACV,iBAAiB,EAAE,oBAAoB,EAAE,oBAAoB,EAC7D,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,GACjD,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,uBAAuB,GAAG,MAAM,iBAAiB,CAAC;AAE1I,eAAe,OAAO,CAAC"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.AccountNotDeployedError = exports.InsufficientFundsError = exports.UserOperationError = exports.ConnectionError = exports.SmartWalletError = exports.createSmartWallet = exports.LocalSigner = exports.SmartWalletManager = exports.SmartWalletClient = exports.HmacAuthenticator = exports.UniversalHttpClient = exports.OnRampAPI = exports.OffRampAPI = exports.TransactionAPI = exports.RecipientAPI = exports.QuoteAPI = exports.OrdaSDK = void 0;
18
+ const QuoteAPI_1 = require("./api/QuoteAPI");
19
+ const RecipientAPI_1 = require("./api/RecipientAPI");
20
+ const TransactionAPI_1 = require("./api/TransactionAPI");
21
+ const OffRampAPI_1 = require("./api/OffRampAPI");
22
+ const OnRampAPI_1 = require("./api/OnRampAPI");
23
+ const client_1 = require("./http/client");
24
+ const hmac_1 = require("./auth/hmac");
25
+ const smart_wallets_1 = require("./smart-wallets");
26
+ /**
27
+ * Main SDK class for interacting with Orda API
28
+ */
29
+ class OrdaSDK {
30
+ constructor(config) {
31
+ this.config = config;
32
+ if (!config.clientId || !config.clientSecret) {
33
+ throw new Error('clientId and clientSecret are required');
34
+ }
35
+ // Prevent any attempts to override the API URL
36
+ if ('baseUrl' in config || 'environment' in config) {
37
+ throw new Error('API endpoint configuration is not allowed. This SDK only connects to production.');
38
+ }
39
+ if (typeof window !== 'undefined') {
40
+ console.warn('Security Warning: Using API credentials in the browser is not recommended for production. ' +
41
+ 'Consider using a backend proxy to protect your credentials.');
42
+ }
43
+ const authenticator = new hmac_1.HmacAuthenticator(config.clientId, config.clientSecret);
44
+ const baseUrl = 'https://api.orda.network/v1';
45
+ this.httpClient = new client_1.UniversalHttpClient(baseUrl, config.requestTimeout || 30000, {
46
+ authenticator,
47
+ enableTimestamp: config.enableTimestamp !== false,
48
+ debug: config.debug || false
49
+ });
50
+ // init API modules
51
+ this.quote = new QuoteAPI_1.QuoteAPI(this.httpClient);
52
+ this.recipients = new RecipientAPI_1.RecipientAPI(this.httpClient);
53
+ this.transactions = new TransactionAPI_1.TransactionAPI(this.httpClient);
54
+ this.offRamp = new OffRampAPI_1.OffRampAPI(this.httpClient);
55
+ this.onRamp = new OnRampAPI_1.OnRampAPI(this.httpClient);
56
+ // init smart wallet manager
57
+ this.smartWallets = new smart_wallets_1.SmartWalletManager({
58
+ alchemyApiKey: this.config.alchemyApiKey
59
+ });
60
+ }
61
+ /**
62
+ * Checks if the SDK is running in a browser environment
63
+ */
64
+ static isBrowser() {
65
+ return typeof window !== 'undefined' && typeof window.document !== 'undefined';
66
+ }
67
+ /**
68
+ * Checks if the SDK is running in Node.js
69
+ */
70
+ static isNode() {
71
+ return typeof process !== 'undefined' && !!process.versions?.node;
72
+ }
73
+ /**
74
+ * Gets the current SDK version
75
+ */
76
+ static get version() {
77
+ return '1.0.0';
78
+ }
79
+ }
80
+ exports.OrdaSDK = OrdaSDK;
81
+ __exportStar(require("./types"), exports);
82
+ __exportStar(require("./types/offramp"), exports);
83
+ __exportStar(require("./types/onramp"), exports);
84
+ __exportStar(require("./errors"), exports);
85
+ var QuoteAPI_2 = require("./api/QuoteAPI");
86
+ Object.defineProperty(exports, "QuoteAPI", { enumerable: true, get: function () { return QuoteAPI_2.QuoteAPI; } });
87
+ var RecipientAPI_2 = require("./api/RecipientAPI");
88
+ Object.defineProperty(exports, "RecipientAPI", { enumerable: true, get: function () { return RecipientAPI_2.RecipientAPI; } });
89
+ var TransactionAPI_2 = require("./api/TransactionAPI");
90
+ Object.defineProperty(exports, "TransactionAPI", { enumerable: true, get: function () { return TransactionAPI_2.TransactionAPI; } });
91
+ var OffRampAPI_2 = require("./api/OffRampAPI");
92
+ Object.defineProperty(exports, "OffRampAPI", { enumerable: true, get: function () { return OffRampAPI_2.OffRampAPI; } });
93
+ var OnRampAPI_2 = require("./api/OnRampAPI");
94
+ Object.defineProperty(exports, "OnRampAPI", { enumerable: true, get: function () { return OnRampAPI_2.OnRampAPI; } });
95
+ var client_2 = require("./http/client");
96
+ Object.defineProperty(exports, "UniversalHttpClient", { enumerable: true, get: function () { return client_2.UniversalHttpClient; } });
97
+ var hmac_2 = require("./auth/hmac");
98
+ Object.defineProperty(exports, "HmacAuthenticator", { enumerable: true, get: function () { return hmac_2.HmacAuthenticator; } });
99
+ // Smart Wallet exports
100
+ var smart_wallets_2 = require("./smart-wallets");
101
+ Object.defineProperty(exports, "SmartWalletClient", { enumerable: true, get: function () { return smart_wallets_2.SmartWalletClient; } });
102
+ Object.defineProperty(exports, "SmartWalletManager", { enumerable: true, get: function () { return smart_wallets_2.SmartWalletManager; } });
103
+ Object.defineProperty(exports, "LocalSigner", { enumerable: true, get: function () { return smart_wallets_2.LocalSigner; } });
104
+ Object.defineProperty(exports, "createSmartWallet", { enumerable: true, get: function () { return smart_wallets_2.createSmartWallet; } });
105
+ var smart_wallets_3 = require("./smart-wallets");
106
+ Object.defineProperty(exports, "SmartWalletError", { enumerable: true, get: function () { return smart_wallets_3.SmartWalletError; } });
107
+ Object.defineProperty(exports, "ConnectionError", { enumerable: true, get: function () { return smart_wallets_3.ConnectionError; } });
108
+ Object.defineProperty(exports, "UserOperationError", { enumerable: true, get: function () { return smart_wallets_3.UserOperationError; } });
109
+ Object.defineProperty(exports, "InsufficientFundsError", { enumerable: true, get: function () { return smart_wallets_3.InsufficientFundsError; } });
110
+ Object.defineProperty(exports, "AccountNotDeployedError", { enumerable: true, get: function () { return smart_wallets_3.AccountNotDeployedError; } });
111
+ exports.default = OrdaSDK;
112
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"type": "commonjs"}
@@ -0,0 +1,19 @@
1
+ import { type SmartAccountSigner } from '@aa-sdk/core';
2
+ import type { EntityType } from './types';
3
+ export declare class LocalSigner {
4
+ private signer;
5
+ private entityType;
6
+ private privateKey;
7
+ constructor(privateKey: string, entityType: EntityType);
8
+ getSigner(): SmartAccountSigner;
9
+ getEntityType(): EntityType;
10
+ getAddress(): Promise<string>;
11
+ static isValidPrivateKey(privateKey: string): boolean;
12
+ static generateNewSigner(): Promise<{
13
+ signer: SmartAccountSigner;
14
+ privateKey: string;
15
+ address: string;
16
+ }>;
17
+ static getAddressFromPrivateKey(privateKey: string): Promise<string>;
18
+ }
19
+ //# sourceMappingURL=LocalSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalSigner.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/LocalSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAG3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAS;gBAEf,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU;IAUtD,SAAS,IAAI,kBAAkB;IAI/B,aAAa,IAAI,UAAU;IAIrB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAKnC,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;WAkBxC,iBAAiB,IAAI,OAAO,CAAC;QACxC,MAAM,EAAE,kBAAkB,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;WAYW,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAQ3E"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalSigner = void 0;
4
+ const core_1 = require("@aa-sdk/core");
5
+ const accounts_1 = require("viem/accounts");
6
+ const errors_1 = require("./errors");
7
+ class LocalSigner {
8
+ constructor(privateKey, entityType) {
9
+ if (!LocalSigner.isValidPrivateKey(privateKey)) {
10
+ throw new errors_1.InvalidPrivateKeyError();
11
+ }
12
+ this.privateKey = privateKey;
13
+ this.entityType = entityType;
14
+ this.signer = core_1.LocalAccountSigner.privateKeyToAccountSigner(privateKey);
15
+ }
16
+ getSigner() {
17
+ return this.signer;
18
+ }
19
+ getEntityType() {
20
+ return this.entityType;
21
+ }
22
+ async getAddress() {
23
+ const account = (0, accounts_1.privateKeyToAccount)(this.privateKey);
24
+ return account.address;
25
+ }
26
+ static isValidPrivateKey(privateKey) {
27
+ if (!privateKey || typeof privateKey !== 'string') {
28
+ return false;
29
+ }
30
+ // Check if it starts with 0x and has correct length (64 hex chars + 0x = 66)
31
+ if (!/^0x[0-9a-fA-F]{64}$/.test(privateKey)) {
32
+ return false;
33
+ }
34
+ try {
35
+ (0, accounts_1.privateKeyToAccount)(privateKey);
36
+ return true;
37
+ }
38
+ catch {
39
+ return false;
40
+ }
41
+ }
42
+ static async generateNewSigner() {
43
+ const privateKey = (0, accounts_1.generatePrivateKey)();
44
+ const signer = core_1.LocalAccountSigner.privateKeyToAccountSigner(privateKey);
45
+ const account = (0, accounts_1.privateKeyToAccount)(privateKey);
46
+ return {
47
+ signer,
48
+ privateKey,
49
+ address: account.address
50
+ };
51
+ }
52
+ static async getAddressFromPrivateKey(privateKey) {
53
+ if (!LocalSigner.isValidPrivateKey(privateKey)) {
54
+ throw new errors_1.InvalidPrivateKeyError();
55
+ }
56
+ const account = (0, accounts_1.privateKeyToAccount)(privateKey);
57
+ return account.address;
58
+ }
59
+ }
60
+ exports.LocalSigner = LocalSigner;
61
+ //# sourceMappingURL=LocalSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalSigner.js","sourceRoot":"","sources":["../../../src/smart-wallets/LocalSigner.ts"],"names":[],"mappings":";;;AAAA,uCAA2E;AAC3E,4CAAwE;AACxE,qCAAkD;AAGlD,MAAa,WAAW;IAKtB,YAAY,UAAkB,EAAE,UAAsB;QACpD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,+BAAsB,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,UAA2B,CAAC,CAAC;IAC1F,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,IAAI,CAAC,UAA2B,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,UAAkB;QACzC,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,IAAA,8BAAmB,EAAC,UAA2B,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,iBAAiB;QAK5B,MAAM,UAAU,GAAG,IAAA,6BAAkB,GAAE,CAAC;QACxC,MAAM,MAAM,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,UAAU,CAAC,CAAC;QAEhD,OAAO;YACL,MAAM;YACN,UAAU;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,UAAkB;QACtD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,+BAAsB,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,8BAAmB,EAAC,UAA2B,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC,OAAO,CAAC;IACzB,CAAC;CACF;AAtED,kCAsEC"}
@@ -0,0 +1,19 @@
1
+ import type { SmartWalletConfig, SmartWalletInterface, SmartWalletState, UserOperationRequest, TransactionResult } from './types';
2
+ export declare class SmartWalletClient implements SmartWalletInterface {
3
+ private client?;
4
+ private publicClient?;
5
+ private config;
6
+ private state;
7
+ private signer;
8
+ constructor(config: SmartWalletConfig);
9
+ connect(): Promise<void>;
10
+ disconnect(): void;
11
+ sendUserOperation(request: UserOperationRequest): Promise<TransactionResult>;
12
+ sendBatchUserOperation(requests: UserOperationRequest[]): Promise<TransactionResult>;
13
+ getAddress(): string;
14
+ isDeployed(): Promise<boolean>;
15
+ getState(): SmartWalletState;
16
+ private getTransport;
17
+ waitForUserOperationReceipt(hash: string, timeout?: number): Promise<TransactionResult>;
18
+ }
19
+ //# sourceMappingURL=SmartWalletClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartWalletClient.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletClient.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAMjB,qBAAa,iBAAkB,YAAW,oBAAoB;IAC5D,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,MAAM,CAAc;gBAEhB,MAAM,EAAE,iBAAiB;IAc/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B,UAAU,IAAI,IAAI;IAOZ,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4B5E,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAgC1F,UAAU,IAAI,MAAM;IAOd,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAiBpC,QAAQ,IAAI,gBAAgB;IAI5B,OAAO,CAAC,YAAY;IAmBd,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,SAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC;CA+B7F"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SmartWalletClient = void 0;
4
+ const smart_contracts_1 = require("@account-kit/smart-contracts");
5
+ const infra_1 = require("@account-kit/infra");
6
+ const viem_1 = require("viem");
7
+ const LocalSigner_1 = require("./LocalSigner");
8
+ const chains_1 = require("./chains");
9
+ const utils_1 = require("./utils");
10
+ const errors_1 = require("./errors");
11
+ class SmartWalletClient {
12
+ constructor(config) {
13
+ if (!(0, chains_1.isSupportedChain)(config.chain)) {
14
+ throw new errors_1.ChainNotSupportedError(config.chain);
15
+ }
16
+ this.config = config;
17
+ this.signer = new LocalSigner_1.LocalSigner(config.credentials.privateKey, config.credentials.entityType);
18
+ this.state = {
19
+ isConnected: false,
20
+ chainId: config.chain,
21
+ address: config.credentials.address
22
+ };
23
+ }
24
+ async connect() {
25
+ try {
26
+ const chain = (0, chains_1.getChainConfig)(this.config.chain);
27
+ if (!chain) {
28
+ throw new errors_1.ChainNotSupportedError(this.config.chain);
29
+ }
30
+ // validate address matches private key (skip if address is empty for new wallet generation)
31
+ if (this.config.credentials.address && this.config.credentials.address !== '') {
32
+ const derivedAddress = await this.signer.getAddress();
33
+ if (derivedAddress.toLowerCase() !== this.config.credentials.address.toLowerCase()) {
34
+ throw new errors_1.ConnectionError(`Private key address mismatch. Expected: ${this.config.credentials.address}, got: ${derivedAddress}`);
35
+ }
36
+ }
37
+ const transport = this.getTransport();
38
+ const signer = this.signer.getSigner();
39
+ // TODO: Add support for Light Account when credentials.type === 'LIGHT_ACCOUNT'
40
+ // TODO: Add support for '7702' mode variant
41
+ this.client = await (0, smart_contracts_1.createModularAccountV2Client)({
42
+ chain,
43
+ transport,
44
+ signer,
45
+ mode: 'default' // default for modular acc v2
46
+ });
47
+ this.publicClient = (0, viem_1.createPublicClient)({
48
+ chain,
49
+ transport: (0, viem_1.http)(chain.rpcUrls?.default?.http?.[0] || this.config.rpcUrl)
50
+ });
51
+ this.state.isConnected = true;
52
+ this.state.address = this.client.account?.address || this.config.credentials.address;
53
+ this.state.isDeployed = await this.isDeployed(); // check if account is deployed
54
+ }
55
+ catch (error) {
56
+ this.state.isConnected = false;
57
+ throw new errors_1.ConnectionError(error instanceof Error ? error.message : 'Failed to connect to smart wallet', error);
58
+ }
59
+ }
60
+ disconnect() {
61
+ this.client = undefined;
62
+ this.publicClient = undefined;
63
+ this.state.isConnected = false;
64
+ this.state.isDeployed = undefined;
65
+ }
66
+ async sendUserOperation(request) {
67
+ if (!this.client || !this.client.account) {
68
+ throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
69
+ }
70
+ try {
71
+ const result = await this.client.sendUserOperation({
72
+ uo: {
73
+ target: (0, utils_1.toAddress)(request.target),
74
+ data: (0, utils_1.toHex)(request.data),
75
+ value: (0, utils_1.toBigInt)(request.value)
76
+ },
77
+ account: this.client.account
78
+ });
79
+ return {
80
+ hash: result.hash,
81
+ sender: result.request.sender,
82
+ status: 'pending'
83
+ };
84
+ }
85
+ catch (error) {
86
+ throw new errors_1.UserOperationError(error instanceof Error ? error.message : 'Failed to send user operation', error);
87
+ }
88
+ }
89
+ async sendBatchUserOperation(requests) {
90
+ if (!this.client || !this.client.account) {
91
+ throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
92
+ }
93
+ try {
94
+ // convert requests to the format expected by the client
95
+ // the uo field accepts arrays directly for batch operations
96
+ const operations = requests.map((req) => ({
97
+ target: (0, utils_1.toAddress)(req.target),
98
+ data: (0, utils_1.toHex)(req.data),
99
+ value: (0, utils_1.toBigInt)(req.value)
100
+ }));
101
+ const result = await this.client.sendUserOperation({
102
+ uo: operations,
103
+ account: this.client.account
104
+ });
105
+ return {
106
+ hash: result.hash,
107
+ sender: result.request.sender,
108
+ status: 'pending'
109
+ };
110
+ }
111
+ catch (error) {
112
+ throw new errors_1.UserOperationError(error instanceof Error ? error.message : 'Failed to send batch user operation', error);
113
+ }
114
+ }
115
+ getAddress() {
116
+ if (!this.state.address) {
117
+ throw new errors_1.ConnectionError('Address not available. Call connect() first.');
118
+ }
119
+ return this.state.address;
120
+ }
121
+ async isDeployed() {
122
+ if (!this.client || !this.client.account || !this.publicClient) {
123
+ throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
124
+ }
125
+ try {
126
+ const code = await this.publicClient.getCode({
127
+ address: (0, utils_1.toAddress)(this.client.account.address)
128
+ });
129
+ return code !== undefined && code !== '0x';
130
+ }
131
+ catch (error) {
132
+ // Return false if unable to check deployment status
133
+ return false;
134
+ }
135
+ }
136
+ getState() {
137
+ return { ...this.state };
138
+ }
139
+ getTransport() {
140
+ if (this.config.transport === 'alchemy' && this.config.alchemyApiKey) {
141
+ return (0, infra_1.alchemy)({ apiKey: this.config.alchemyApiKey });
142
+ }
143
+ // default to HTTP transport
144
+ if (this.config.rpcUrl) {
145
+ return (0, viem_1.http)(this.config.rpcUrl);
146
+ }
147
+ // use chain's default RPC if available
148
+ const chain = (0, chains_1.getChainConfig)(this.config.chain);
149
+ if (chain?.rpcUrls?.default?.http?.[0]) {
150
+ return (0, viem_1.http)(chain.rpcUrls.default.http[0]);
151
+ }
152
+ throw new errors_1.ConnectionError('No valid transport configuration provided');
153
+ }
154
+ async waitForUserOperationReceipt(hash, timeout = 60000) {
155
+ if (!this.client || !this.client.account || !this.publicClient) {
156
+ throw new errors_1.ConnectionError('Client not connected. Call connect() first.');
157
+ }
158
+ const startTime = Date.now();
159
+ const pollInterval = 5000;
160
+ const maxPollTime = 10000; // 10 seconds per attempt
161
+ while (Date.now() - startTime < timeout) {
162
+ try {
163
+ const receipt = await this.publicClient.waitForTransactionReceipt({
164
+ hash: (0, utils_1.toHex)(hash),
165
+ timeout: maxPollTime
166
+ });
167
+ return {
168
+ hash,
169
+ sender: this.client.account.address,
170
+ status: receipt.status === 'success' ? 'success' : 'failed'
171
+ };
172
+ }
173
+ catch (error) {
174
+ // continue polling if not found yet
175
+ if (Date.now() - startTime < timeout) {
176
+ await new Promise((resolve) => setTimeout(resolve, pollInterval));
177
+ }
178
+ }
179
+ }
180
+ throw new errors_1.UserOperationError(`Timeout waiting for user operation receipt: ${hash}`);
181
+ }
182
+ }
183
+ exports.SmartWalletClient = SmartWalletClient;
184
+ //# sourceMappingURL=SmartWalletClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartWalletClient.js","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { SmartWalletClient } from './SmartWalletClient';
2
+ export interface SmartWalletManagerConfig {
3
+ alchemyApiKey?: string;
4
+ }
5
+ export declare class SmartWalletManager {
6
+ private config;
7
+ constructor(config?: SmartWalletManagerConfig);
8
+ createProjectWallet(projectId: string, privateKey: string, chainId: number, accountType?: 'MODULAR_ACCOUNT_V2' | 'LIGHT_ACCOUNT'): Promise<SmartWalletClient>;
9
+ createRecipientWallet(recipientId: string, privateKey: string, chainId: number, accountType?: 'MODULAR_ACCOUNT_V2' | 'LIGHT_ACCOUNT'): Promise<SmartWalletClient>;
10
+ validatePrivateKey(privateKey: string): boolean;
11
+ generatePrivateKey(): Promise<{
12
+ privateKey: string;
13
+ address: string;
14
+ }>;
15
+ getAddressFromPrivateKey(privateKey: string): Promise<string>;
16
+ }
17
+ //# sourceMappingURL=SmartWalletManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartWalletManager.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA2B;gBAE7B,MAAM,GAAE,wBAA6B;IAI3C,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,oBAAoB,GAAG,eAAsC,GACzE,OAAO,CAAC,iBAAiB,CAAC;IAsBvB,qBAAqB,CACzB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,oBAAoB,GAAG,eAAsC,GACzE,OAAO,CAAC,iBAAiB,CAAC;IAsB7B,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIzC,kBAAkB,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQtE,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAGpE"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SmartWalletManager = void 0;
4
+ const SmartWalletClient_1 = require("./SmartWalletClient");
5
+ const LocalSigner_1 = require("./LocalSigner");
6
+ class SmartWalletManager {
7
+ constructor(config = {}) {
8
+ this.config = config;
9
+ }
10
+ async createProjectWallet(projectId, privateKey, chainId, accountType = 'MODULAR_ACCOUNT_V2') {
11
+ const address = await LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
12
+ const config = {
13
+ credentials: {
14
+ address,
15
+ privateKey,
16
+ type: accountType,
17
+ entityType: 'project',
18
+ entityId: projectId,
19
+ chainId
20
+ },
21
+ chain: chainId,
22
+ transport: this.config.alchemyApiKey ? 'alchemy' : 'http',
23
+ alchemyApiKey: this.config.alchemyApiKey
24
+ };
25
+ const wallet = new SmartWalletClient_1.SmartWalletClient(config);
26
+ await wallet.connect();
27
+ return wallet;
28
+ }
29
+ async createRecipientWallet(recipientId, privateKey, chainId, accountType = 'MODULAR_ACCOUNT_V2') {
30
+ const address = await LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
31
+ const config = {
32
+ credentials: {
33
+ address,
34
+ privateKey,
35
+ type: accountType,
36
+ entityType: 'recipient',
37
+ entityId: recipientId,
38
+ chainId
39
+ },
40
+ chain: chainId,
41
+ transport: this.config.alchemyApiKey ? 'alchemy' : 'http',
42
+ alchemyApiKey: this.config.alchemyApiKey
43
+ };
44
+ const wallet = new SmartWalletClient_1.SmartWalletClient(config);
45
+ await wallet.connect();
46
+ return wallet;
47
+ }
48
+ validatePrivateKey(privateKey) {
49
+ return LocalSigner_1.LocalSigner.isValidPrivateKey(privateKey);
50
+ }
51
+ async generatePrivateKey() {
52
+ const result = await LocalSigner_1.LocalSigner.generateNewSigner();
53
+ return {
54
+ privateKey: result.privateKey,
55
+ address: result.address
56
+ };
57
+ }
58
+ async getAddressFromPrivateKey(privateKey) {
59
+ return LocalSigner_1.LocalSigner.getAddressFromPrivateKey(privateKey);
60
+ }
61
+ }
62
+ exports.SmartWalletManager = SmartWalletManager;
63
+ //# sourceMappingURL=SmartWalletManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SmartWalletManager.js","sourceRoot":"","sources":["../../../src/smart-wallets/SmartWalletManager.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AACxD,+CAA4C;AAO5C,MAAa,kBAAkB;IAG7B,YAAY,SAAmC,EAAE;QAC/C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,SAAiB,EACjB,UAAkB,EAClB,OAAe,EACf,cAAsD,oBAAoB;QAE1E,MAAM,OAAO,GAAG,MAAM,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAEvE,MAAM,MAAM,GAAsB;YAChC,WAAW,EAAE;gBACX,OAAO;gBACP,UAAU;gBACV,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,SAAS;gBACnB,OAAO;aACR;YACD,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YACzD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;SACzC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,WAAmB,EACnB,UAAkB,EAClB,OAAe,EACf,cAAsD,oBAAoB;QAE1E,MAAM,OAAO,GAAG,MAAM,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAEvE,MAAM,MAAM,GAAsB;YAChC,WAAW,EAAE;gBACX,OAAO;gBACP,UAAU;gBACV,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,WAAW;gBACvB,QAAQ,EAAE,WAAW;gBACrB,OAAO;aACR;YACD,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YACzD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;SACzC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,kBAAkB,CAAC,UAAkB;QACnC,OAAO,yBAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,MAAM,GAAG,MAAM,yBAAW,CAAC,iBAAiB,EAAE,CAAC;QACrD,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,UAAkB;QAC/C,OAAO,yBAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF;AA5ED,gDA4EC"}
@@ -0,0 +1,11 @@
1
+ import type { Chain } from 'viem';
2
+ /**
3
+ * Supported chains for smart wallets
4
+ *
5
+ * NOTE: The orda backend API only supports mainnet chains (1, 137, 10, 42161, 8453).
6
+ */
7
+ export declare const SUPPORTED_CHAINS: Record<number, Chain>;
8
+ export declare function getChainConfig(chainId: number): Chain | undefined;
9
+ export declare function isSupportedChain(chainId: number): boolean;
10
+ export declare function getSupportedChainIds(): number[];
11
+ //# sourceMappingURL=chains.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../../../src/smart-wallets/chains.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAclD,CAAC;AAEF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAEjE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SUPPORTED_CHAINS = void 0;
4
+ exports.getChainConfig = getChainConfig;
5
+ exports.isSupportedChain = isSupportedChain;
6
+ exports.getSupportedChainIds = getSupportedChainIds;
7
+ const infra_1 = require("@account-kit/infra");
8
+ /**
9
+ * Supported chains for smart wallets
10
+ *
11
+ * NOTE: The orda backend API only supports mainnet chains (1, 137, 10, 42161, 8453).
12
+ */
13
+ exports.SUPPORTED_CHAINS = {
14
+ // Mainnet chains
15
+ 1: infra_1.mainnet, // Ethereum
16
+ 137: infra_1.polygon, // Polygon
17
+ 10: infra_1.optimism, // Optimism
18
+ 42161: infra_1.arbitrum, // Arbitrum
19
+ 8453: infra_1.base // Base
20
+ // // Testnet chains (not supported)
21
+ // 11155111: sepolia, // Ethereum Sepolia
22
+ // 80002: polygonAmoy, // Polygon Amoy
23
+ // 11155420: optimismSepolia, // Optimism Sepolia
24
+ // 421614: arbitrumSepolia, // Arbitrum Sepolia
25
+ // 84532: baseSepolia, // Base Sepolia
26
+ };
27
+ function getChainConfig(chainId) {
28
+ return exports.SUPPORTED_CHAINS[chainId];
29
+ }
30
+ function isSupportedChain(chainId) {
31
+ return chainId in exports.SUPPORTED_CHAINS;
32
+ }
33
+ function getSupportedChainIds() {
34
+ return Object.keys(exports.SUPPORTED_CHAINS).map((id) => parseInt(id, 10));
35
+ }
36
+ //# sourceMappingURL=chains.js.map