@gardenfi/utils 3.0.0-beta.1 → 3.0.0-beta.3

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 (453) hide show
  1. package/dist/index10.cjs +1 -1
  2. package/dist/index10.js +4 -4
  3. package/dist/index100.cjs +1 -1
  4. package/dist/index100.js +125 -3
  5. package/dist/index101.cjs +1 -1
  6. package/dist/index101.js +5 -26
  7. package/dist/index102.cjs +1 -2
  8. package/dist/index102.js +20 -23
  9. package/dist/index103.cjs +1 -1
  10. package/dist/index103.js +45 -9
  11. package/dist/index104.cjs +1 -1
  12. package/dist/index104.js +38 -8
  13. package/dist/index105.cjs +1 -1
  14. package/dist/index105.js +6 -10
  15. package/dist/index106.cjs +1 -1
  16. package/dist/index106.js +90 -11
  17. package/dist/index107.cjs +1 -1
  18. package/dist/index107.js +14 -13
  19. package/dist/index108.cjs +1 -1
  20. package/dist/index108.js +3 -14
  21. package/dist/index109.cjs +1 -1
  22. package/dist/index109.js +26 -4
  23. package/dist/index110.cjs +2 -1
  24. package/dist/index110.js +24 -6
  25. package/dist/index111.cjs +1 -1
  26. package/dist/index111.js +9 -18
  27. package/dist/index112.cjs +1 -1
  28. package/dist/index112.js +8 -13
  29. package/dist/index113.cjs +1 -1
  30. package/dist/index113.js +10 -6
  31. package/dist/index114.cjs +1 -1
  32. package/dist/index114.js +11 -7
  33. package/dist/index115.cjs +1 -1
  34. package/dist/index115.js +13 -21
  35. package/dist/index116.cjs +1 -1
  36. package/dist/index116.js +21 -7
  37. package/dist/index117.cjs +1 -1
  38. package/dist/index117.js +14 -21
  39. package/dist/index118.cjs +1 -1
  40. package/dist/index118.js +4 -17
  41. package/dist/index119.cjs +1 -1
  42. package/dist/index119.js +5 -39
  43. package/dist/index120.cjs +1 -1
  44. package/dist/index120.js +18 -21
  45. package/dist/index121.cjs +1 -1
  46. package/dist/index121.js +10 -80
  47. package/dist/index122.cjs +1 -1
  48. package/dist/index122.js +57 -10
  49. package/dist/index123.cjs +1 -1
  50. package/dist/index123.js +6 -58
  51. package/dist/index124.cjs +1 -1
  52. package/dist/index124.js +13 -13
  53. package/dist/index125.cjs +1 -1
  54. package/dist/index125.js +7 -8
  55. package/dist/index126.cjs +1 -1
  56. package/dist/index126.js +137 -20
  57. package/dist/index127.cjs +1 -1
  58. package/dist/index127.js +7 -6
  59. package/dist/index128.cjs +1 -1
  60. package/dist/index128.js +19 -33
  61. package/dist/index129.cjs +1 -1
  62. package/dist/index129.js +17 -32
  63. package/dist/index130.cjs +1 -1
  64. package/dist/index130.js +43 -9
  65. package/dist/index131.cjs +1 -1
  66. package/dist/index131.js +20 -49
  67. package/dist/index132.cjs +1 -1
  68. package/dist/index132.js +79 -18
  69. package/dist/index133.cjs +1 -1
  70. package/dist/index133.js +10 -105
  71. package/dist/index134.cjs +1 -1
  72. package/dist/index134.js +8 -63
  73. package/dist/index135.cjs +1 -1
  74. package/dist/index135.js +6 -9
  75. package/dist/index136.cjs +1 -1
  76. package/dist/index136.js +41 -71
  77. package/dist/index137.cjs +1 -2
  78. package/dist/index137.js +6 -3
  79. package/dist/index138.cjs +1 -1
  80. package/dist/index138.js +34 -9
  81. package/dist/index139.cjs +1 -1
  82. package/dist/index139.js +9 -13
  83. package/dist/index140.cjs +1 -1
  84. package/dist/index140.js +60 -4
  85. package/dist/index141.cjs +1 -1
  86. package/dist/index141.js +19 -12
  87. package/dist/index142.cjs +1 -1
  88. package/dist/index142.js +107 -2
  89. package/dist/index143.cjs +1 -1
  90. package/dist/index143.js +79 -32
  91. package/dist/index144.cjs +1 -1
  92. package/dist/index144.js +8 -20
  93. package/dist/index145.cjs +1 -1
  94. package/dist/index145.js +71 -5
  95. package/dist/index146.cjs +2 -1
  96. package/dist/index146.js +3 -6
  97. package/dist/index147.cjs +1 -1
  98. package/dist/index147.js +9 -6
  99. package/dist/index148.cjs +1 -9
  100. package/dist/index148.js +11 -33
  101. package/dist/index149.cjs +1 -1
  102. package/dist/index149.js +5 -3
  103. package/dist/index150.cjs +1 -1
  104. package/dist/index150.js +11 -17
  105. package/dist/index151.cjs +1 -1
  106. package/dist/index151.js +2 -21
  107. package/dist/index152.cjs +1 -1
  108. package/dist/index152.js +32 -36
  109. package/dist/index153.cjs +1 -1
  110. package/dist/index153.js +20 -7
  111. package/dist/index154.cjs +1 -4
  112. package/dist/index154.js +5 -194
  113. package/dist/index155.cjs +1 -1
  114. package/dist/index155.js +5 -27
  115. package/dist/index156.cjs +1 -1
  116. package/dist/index156.js +5 -161
  117. package/dist/index157.cjs +9 -1
  118. package/dist/index157.js +34 -126
  119. package/dist/index158.cjs +1 -1
  120. package/dist/index158.js +3 -28
  121. package/dist/index159.cjs +1 -1
  122. package/dist/index159.js +15 -52
  123. package/dist/index160.cjs +1 -1
  124. package/dist/index160.js +14 -185
  125. package/dist/index161.cjs +1 -1
  126. package/dist/index161.js +36 -4
  127. package/dist/index162.cjs +1 -1
  128. package/dist/index162.js +6 -18
  129. package/dist/index163.cjs +4 -1
  130. package/dist/index163.js +195 -3
  131. package/dist/index164.cjs +1 -1
  132. package/dist/index164.js +26 -15
  133. package/dist/index165.cjs +1 -1
  134. package/dist/index165.js +161 -11
  135. package/dist/index166.cjs +1 -1
  136. package/dist/index166.js +126 -33
  137. package/dist/index167.cjs +1 -1
  138. package/dist/index167.js +28 -3
  139. package/dist/index168.cjs +1 -1
  140. package/dist/index168.js +54 -26
  141. package/dist/index169.cjs +1 -1
  142. package/dist/index169.js +191 -8
  143. package/dist/index17.cjs +1 -1
  144. package/dist/index17.js +2 -2
  145. package/dist/index170.cjs +1 -1
  146. package/dist/index170.js +4 -26
  147. package/dist/index171.cjs +1 -1
  148. package/dist/index171.js +19 -27
  149. package/dist/index172.cjs +1 -1
  150. package/dist/index172.js +3 -4
  151. package/dist/index173.cjs +1 -1
  152. package/dist/index173.js +16 -6
  153. package/dist/index174.cjs +1 -1
  154. package/dist/index174.js +11 -6
  155. package/dist/index175.cjs +1 -1
  156. package/dist/index175.js +32 -30
  157. package/dist/index176.cjs +1 -1
  158. package/dist/index176.js +3 -5
  159. package/dist/index177.cjs +1 -1
  160. package/dist/index177.js +25 -35
  161. package/dist/index178.cjs +1 -1
  162. package/dist/index178.js +8 -49
  163. package/dist/index179.cjs +1 -1
  164. package/dist/index179.js +25 -32
  165. package/dist/index18.cjs +1 -1
  166. package/dist/index18.js +5 -5
  167. package/dist/index180.cjs +1 -1
  168. package/dist/index180.js +28 -8
  169. package/dist/index181.cjs +1 -1
  170. package/dist/index181.js +3 -42
  171. package/dist/index182.cjs +1 -1
  172. package/dist/index182.js +6 -51
  173. package/dist/index183.cjs +1 -1
  174. package/dist/index183.js +6 -104
  175. package/dist/index184.cjs +1 -1
  176. package/dist/index184.js +33 -3
  177. package/dist/index185.cjs +1 -1
  178. package/dist/index185.js +5 -6
  179. package/dist/index186.cjs +1 -1
  180. package/dist/index186.js +37 -3
  181. package/dist/index187.cjs +1 -1
  182. package/dist/index187.js +49 -17
  183. package/dist/index188.cjs +1 -1
  184. package/dist/index188.js +32 -5
  185. package/dist/index189.cjs +1 -1
  186. package/dist/index189.js +17 -8
  187. package/dist/index190.cjs +1 -1
  188. package/dist/index190.js +39 -100
  189. package/dist/index191.cjs +1 -1
  190. package/dist/index191.js +104 -5
  191. package/dist/index192.cjs +1 -1
  192. package/dist/index192.js +3 -7
  193. package/dist/index193.cjs +1 -1
  194. package/dist/index193.js +5 -27
  195. package/dist/index194.cjs +1 -1
  196. package/dist/index194.js +3 -34
  197. package/dist/index195.cjs +1 -1
  198. package/dist/index195.js +17 -13
  199. package/dist/index196.cjs +1 -1
  200. package/dist/index196.js +5 -78
  201. package/dist/index197.cjs +1 -1
  202. package/dist/index197.js +9 -2
  203. package/dist/index198.cjs +1 -1
  204. package/dist/index198.js +102 -17
  205. package/dist/index199.cjs +1 -1
  206. package/dist/index199.js +5 -171
  207. package/dist/index20.cjs +1 -1
  208. package/dist/index20.js +8 -8
  209. package/dist/index200.cjs +1 -1
  210. package/dist/index200.js +6 -17
  211. package/dist/index201.cjs +1 -1
  212. package/dist/index201.js +27 -10
  213. package/dist/index202.cjs +1 -1
  214. package/dist/index202.js +34 -25
  215. package/dist/index203.cjs +1 -1
  216. package/dist/index203.js +13 -18
  217. package/dist/index204.cjs +1 -1
  218. package/dist/index204.js +78 -15
  219. package/dist/index205.cjs +1 -1
  220. package/dist/index205.js +2 -6
  221. package/dist/index206.cjs +1 -1
  222. package/dist/index206.js +18 -13
  223. package/dist/index207.cjs +1 -1
  224. package/dist/index207.js +171 -10
  225. package/dist/index208.cjs +1 -1
  226. package/dist/index208.js +17 -16
  227. package/dist/index209.cjs +1 -1
  228. package/dist/index209.js +10 -24
  229. package/dist/index210.cjs +1 -1
  230. package/dist/index210.js +24 -45
  231. package/dist/index211.cjs +1 -1
  232. package/dist/index211.js +17 -8
  233. package/dist/index212.cjs +1 -2
  234. package/dist/index212.js +15 -41
  235. package/dist/index213.cjs +1 -1
  236. package/dist/index213.js +6 -2
  237. package/dist/index214.cjs +1 -1
  238. package/dist/index214.js +13 -5
  239. package/dist/index215.cjs +1 -1
  240. package/dist/index215.js +10 -10
  241. package/dist/index216.cjs +1 -1
  242. package/dist/index216.js +16 -19
  243. package/dist/index217.cjs +1 -1
  244. package/dist/index217.js +24 -8
  245. package/dist/index218.cjs +1 -1
  246. package/dist/index218.js +46 -66
  247. package/dist/index219.cjs +1 -1
  248. package/dist/index219.js +9 -65
  249. package/dist/index22.cjs +1 -1
  250. package/dist/index22.js +8 -8
  251. package/dist/index220.cjs +2 -1
  252. package/dist/index220.js +40 -187
  253. package/dist/index221.cjs +1 -1
  254. package/dist/index221.js +2 -29
  255. package/dist/index222.cjs +1 -1
  256. package/dist/index222.js +5 -76
  257. package/dist/index223.cjs +1 -1
  258. package/dist/index223.js +9 -39
  259. package/dist/index224.cjs +1 -1
  260. package/dist/index224.js +17 -14
  261. package/dist/index225.cjs +1 -1
  262. package/dist/index225.js +8 -13
  263. package/dist/index226.cjs +1 -1
  264. package/dist/index226.js +66 -11
  265. package/dist/index227.cjs +1 -1
  266. package/dist/index227.js +64 -11
  267. package/dist/index228.cjs +1 -1
  268. package/dist/index228.js +187 -18
  269. package/dist/index229.cjs +1 -1
  270. package/dist/index229.js +26 -106
  271. package/dist/index23.cjs +1 -1
  272. package/dist/index23.js +26 -12
  273. package/dist/index230.cjs +1 -1
  274. package/dist/index230.js +76 -6
  275. package/dist/index231.cjs +1 -1
  276. package/dist/index231.js +41 -7
  277. package/dist/index232.cjs +1 -1
  278. package/dist/index232.js +15 -102
  279. package/dist/index233.cjs +1 -1
  280. package/dist/index233.js +12 -25
  281. package/dist/index234.cjs +1 -1
  282. package/dist/index234.js +11 -16
  283. package/dist/index235.cjs +1 -1
  284. package/dist/index235.js +10 -212
  285. package/dist/index236.cjs +1 -1
  286. package/dist/index236.js +18 -41
  287. package/dist/index237.cjs +1 -1
  288. package/dist/index237.js +106 -76
  289. package/dist/index238.cjs +1 -1
  290. package/dist/index238.js +104 -2
  291. package/dist/index239.cjs +1 -1
  292. package/dist/index239.js +6 -11
  293. package/dist/index24.cjs +1 -1
  294. package/dist/index24.js +8 -59
  295. package/dist/index240.cjs +1 -1
  296. package/dist/index240.js +7 -20
  297. package/dist/index241.cjs +1 -2
  298. package/dist/index241.js +24 -64
  299. package/dist/index242.cjs +1 -1
  300. package/dist/index242.js +16 -14
  301. package/dist/index243.cjs +1 -1
  302. package/dist/index243.js +214 -68
  303. package/dist/index244.cjs +1 -1
  304. package/dist/index244.js +196 -647
  305. package/dist/index245.cjs +1 -1
  306. package/dist/index245.js +39 -203
  307. package/dist/index246.cjs +1 -1
  308. package/dist/index246.js +72 -171
  309. package/dist/index247.cjs +1 -1
  310. package/dist/index247.js +2 -5
  311. package/dist/index248.cjs +1 -1
  312. package/dist/index248.js +12 -2
  313. package/dist/index249.cjs +1 -0
  314. package/dist/index249.js +22 -0
  315. package/dist/index25.cjs +1 -16
  316. package/dist/index25.js +12 -113
  317. package/dist/index250.cjs +2 -0
  318. package/dist/index250.js +94 -0
  319. package/dist/index251.cjs +1 -0
  320. package/dist/index251.js +17 -0
  321. package/dist/index252.cjs +1 -0
  322. package/dist/index252.js +71 -0
  323. package/dist/index253.cjs +1 -0
  324. package/dist/index253.js +660 -0
  325. package/dist/index254.cjs +1 -0
  326. package/dist/index254.js +180 -0
  327. package/dist/index255.cjs +1 -0
  328. package/dist/index255.js +7 -0
  329. package/dist/index256.cjs +1 -0
  330. package/dist/index256.js +4 -0
  331. package/dist/index26.cjs +1 -1
  332. package/dist/index26.js +59 -30
  333. package/dist/index27.cjs +16 -1
  334. package/dist/index27.js +111 -24
  335. package/dist/index28.cjs +1 -1
  336. package/dist/index28.js +29 -7
  337. package/dist/index29.cjs +1 -1
  338. package/dist/index29.js +35 -35
  339. package/dist/index30.cjs +1 -1
  340. package/dist/index30.js +9 -9
  341. package/dist/index31.cjs +1 -1
  342. package/dist/index31.js +2 -2
  343. package/dist/index35.cjs +1 -1
  344. package/dist/index35.js +1 -1
  345. package/dist/index37.cjs +1 -1
  346. package/dist/index37.js +11 -11
  347. package/dist/index38.cjs +1 -1
  348. package/dist/index38.js +3 -3
  349. package/dist/index39.cjs +1 -1
  350. package/dist/index39.js +3 -3
  351. package/dist/index40.cjs +1 -1
  352. package/dist/index40.js +3 -3
  353. package/dist/index42.cjs +1 -1
  354. package/dist/index42.js +2 -2
  355. package/dist/index43.cjs +1 -1
  356. package/dist/index43.js +2 -2
  357. package/dist/index45.cjs +1 -1
  358. package/dist/index45.js +15 -15
  359. package/dist/index46.cjs +1 -1
  360. package/dist/index46.js +1 -1
  361. package/dist/index47.cjs +1 -1
  362. package/dist/index47.js +4 -4
  363. package/dist/index48.cjs +1 -1
  364. package/dist/index48.js +14 -17
  365. package/dist/index49.cjs +1 -1
  366. package/dist/index49.js +3 -3
  367. package/dist/index51.cjs +1 -1
  368. package/dist/index51.js +8 -8
  369. package/dist/index54.cjs +1 -1
  370. package/dist/index54.js +14 -14
  371. package/dist/index56.cjs +1 -1
  372. package/dist/index56.js +60 -56
  373. package/dist/index58.cjs +1 -1
  374. package/dist/index58.js +1 -1
  375. package/dist/index60.cjs +1 -1
  376. package/dist/index60.js +8 -8
  377. package/dist/index62.cjs +1 -1
  378. package/dist/index62.js +2 -2
  379. package/dist/index63.cjs +1 -1
  380. package/dist/index63.js +3 -3
  381. package/dist/index64.cjs +1 -1
  382. package/dist/index64.js +131 -76
  383. package/dist/index65.cjs +1 -1
  384. package/dist/index65.js +2 -2
  385. package/dist/index66.cjs +1 -1
  386. package/dist/index66.js +76 -6
  387. package/dist/index67.cjs +1 -1
  388. package/dist/index67.js +13 -21
  389. package/dist/index68.cjs +1 -1
  390. package/dist/index68.js +51 -8
  391. package/dist/index69.cjs +1 -1
  392. package/dist/index69.js +7 -31
  393. package/dist/index70.cjs +1 -1
  394. package/dist/index70.js +7 -7
  395. package/dist/index71.cjs +1 -1
  396. package/dist/index71.js +21 -16
  397. package/dist/index72.cjs +1 -1
  398. package/dist/index72.js +8 -73
  399. package/dist/index73.cjs +1 -1
  400. package/dist/index73.js +31 -35
  401. package/dist/index74.cjs +1 -1
  402. package/dist/index74.js +15 -15
  403. package/dist/index75.cjs +1 -1
  404. package/dist/index75.js +69 -61
  405. package/dist/index76.cjs +1 -1
  406. package/dist/index76.js +35 -11
  407. package/dist/index77.cjs +1 -1
  408. package/dist/index77.js +15 -13
  409. package/dist/index78.cjs +1 -3
  410. package/dist/index78.js +72 -92
  411. package/dist/index79.cjs +1 -1
  412. package/dist/index79.js +11 -23
  413. package/dist/index80.cjs +1 -1
  414. package/dist/index80.js +28 -32
  415. package/dist/index81.cjs +2 -1
  416. package/dist/index81.js +118 -42
  417. package/dist/index82.cjs +1 -1
  418. package/dist/index82.js +13 -5
  419. package/dist/index83.cjs +1 -1
  420. package/dist/index83.js +24 -151
  421. package/dist/index84.cjs +1 -20
  422. package/dist/index84.js +31 -324
  423. package/dist/index85.cjs +1 -3
  424. package/dist/index85.js +42 -449
  425. package/dist/index86.cjs +1 -1
  426. package/dist/index86.js +6 -64
  427. package/dist/index87.cjs +1 -1
  428. package/dist/index87.js +101 -35
  429. package/dist/index88.cjs +1 -1
  430. package/dist/index88.js +36 -14
  431. package/dist/index89.cjs +1 -1
  432. package/dist/index89.js +9 -2
  433. package/dist/index90.cjs +1 -1
  434. package/dist/index90.js +19 -15
  435. package/dist/index91.cjs +1 -1
  436. package/dist/index91.js +2 -11
  437. package/dist/index92.cjs +1 -1
  438. package/dist/index92.js +72 -122
  439. package/dist/index93.cjs +1 -1
  440. package/dist/index93.js +15 -5
  441. package/dist/index94.cjs +1 -1
  442. package/dist/index94.js +151 -21
  443. package/dist/index95.cjs +20 -1
  444. package/dist/index95.js +326 -45
  445. package/dist/index96.cjs +3 -1
  446. package/dist/index96.js +451 -38
  447. package/dist/index97.cjs +1 -1
  448. package/dist/index97.js +64 -6
  449. package/dist/index98.cjs +1 -1
  450. package/dist/index98.js +15 -87
  451. package/dist/index99.cjs +1 -1
  452. package/dist/index99.js +10 -14
  453. package/package.json +3 -3
package/dist/index10.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("tough-cookie"),g=require("fetch-cookie"),k=require("./index14.cjs"),f=require("./index15.cjs"),h=require("./index3.cjs"),n=require("./index5.cjs"),m=require("./index23.cjs"),y=require("./index24.cjs"),C=require("./index22.cjs"),T=require("./index25.cjs"),v=require("./index26.cjs"),S=c=>c&&c.__esModule?c:{default:c},p=S(g);class u{constructor(t,i,e){if(this.url=t.endpoint("siwe"),this.walletClient=i,this.domain=(e==null?void 0:e.domain)||"app.garden.finance",this.domain.startsWith("https://")&&(this.domain=this.domain.split("https://")[1]),this.signingStatement=(e==null?void 0:e.signingStatement)??"Garden.fi",this.store=(e==null?void 0:e.store)??(typeof window<"u"?window.localStorage:new k.MemoryStorage),typeof window>"u"){const r=new w.CookieJar;this.fetchWithCookies=p.default(fetch,r)}else this.fetchWithCookies=window.fetch.bind(window)}static fromDigestKey(t,i,e){const r=m.createWalletClient({account:C.privateKeyToAccount(h.add0x(i.digestKey)),transport:y.http(),chain:v.mainnet});return new u(t,r,e)}verifyToken(t,i){try{const e=h.parseJwt(t);if(!e)return n.Ok(!1);const r=Math.floor(Date.now()/1e3)+120;return n.Ok(e.exp>r&&e.user_id.toLowerCase()===i.toLowerCase())}catch{return n.Ok(!1)}}async getToken(){var s;if(!((s=this.walletClient.account)!=null&&s.address))return n.Err("Wallet client does not have an account");const t=this.store.getItem(f.StoreKeys.AUTH_TOKEN);if(t){const o=this.verifyToken(t,this.walletClient.account.address);if(o.ok&&o.val)return n.Ok(t)}const i=await this.signStatement();if(i.error)return n.Err(i.error);let e;try{const a=await(await this.fetchWithCookies(this.url.endpoint("tokens"),{method:"POST",body:JSON.stringify({...i.val}),headers:{"Content-Type":"application/json"},credentials:"include"})).json();if(a.error||!a.result)return n.Err(a.error??"Failed to get token");e=a.result}catch(o){return n.Err("Failed to get token",o)}if(!this.verifyToken(e,this.walletClient.account.address).val)throw new Error("Token verification failed");return this.store.setItem(f.StoreKeys.AUTH_TOKEN,e),n.Ok(e)}async signStatement(){var a;if(!((a=this.walletClient.account)!=null&&a.address))return n.Err("Wallet client does not have a valid account");const t=new Date,i=new Date(t.getTime()+300*1e3);let e;try{const l=await(await this.fetchWithCookies(this.url.endpoint("challenges"),{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include"})).json();if(l.error||!l.result)return n.Err("Failed to get nonce");e=l.result}catch(d){return n.Err("Failed to get nonce",d)}const r=await this.walletClient.getChainId(),s=T.createSiweMessage({domain:this.domain,address:this.walletClient.account.address,statement:this.signingStatement,nonce:e,uri:"https://"+this.domain,version:"1",chainId:r,notBefore:i}),o=await this.walletClient.signMessage({account:this.walletClient.account,message:s});return n.Ok({message:s,signature:o,nonce:e})}async getAuthHeaders(){const t=await this.getToken();return t.ok?n.Ok({Authorization:h.Authorization(t.val)}):n.Err(t.error)}}exports.Siwe=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("tough-cookie"),g=require("fetch-cookie"),k=require("./index14.cjs"),f=require("./index15.cjs"),h=require("./index3.cjs"),n=require("./index5.cjs"),m=require("./index25.cjs"),y=require("./index26.cjs"),C=require("./index22.cjs"),T=require("./index27.cjs"),v=require("./index28.cjs"),S=c=>c&&c.__esModule?c:{default:c},p=S(g);class u{constructor(t,i,e){if(this.url=t.endpoint("siwe"),this.walletClient=i,this.domain=(e==null?void 0:e.domain)||"app.garden.finance",this.domain.startsWith("https://")&&(this.domain=this.domain.split("https://")[1]),this.signingStatement=(e==null?void 0:e.signingStatement)??"Garden.fi",this.store=(e==null?void 0:e.store)??(typeof window<"u"?window.localStorage:new k.MemoryStorage),typeof window>"u"){const r=new w.CookieJar;this.fetchWithCookies=p.default(fetch,r)}else this.fetchWithCookies=window.fetch.bind(window)}static fromDigestKey(t,i,e){const r=m.createWalletClient({account:C.privateKeyToAccount(h.add0x(i.digestKey)),transport:y.http(),chain:v.mainnet});return new u(t,r,e)}verifyToken(t,i){try{const e=h.parseJwt(t);if(!e)return n.Ok(!1);const r=Math.floor(Date.now()/1e3)+120;return n.Ok(e.exp>r&&e.user_id.toLowerCase()===i.toLowerCase())}catch{return n.Ok(!1)}}async getToken(){var s;if(!((s=this.walletClient.account)!=null&&s.address))return n.Err("Wallet client does not have an account");const t=this.store.getItem(f.StoreKeys.AUTH_TOKEN);if(t){const o=this.verifyToken(t,this.walletClient.account.address);if(o.ok&&o.val)return n.Ok(t)}const i=await this.signStatement();if(i.error)return n.Err(i.error);let e;try{const a=await(await this.fetchWithCookies(this.url.endpoint("tokens"),{method:"POST",body:JSON.stringify({...i.val}),headers:{"Content-Type":"application/json"},credentials:"include"})).json();if(a.error||!a.result)return n.Err(a.error??"Failed to get token");e=a.result}catch(o){return n.Err("Failed to get token",o)}if(!this.verifyToken(e,this.walletClient.account.address).val)throw new Error("Token verification failed");return this.store.setItem(f.StoreKeys.AUTH_TOKEN,e),n.Ok(e)}async signStatement(){var a;if(!((a=this.walletClient.account)!=null&&a.address))return n.Err("Wallet client does not have a valid account");const t=new Date,i=new Date(t.getTime()+300*1e3);let e;try{const l=await(await this.fetchWithCookies(this.url.endpoint("challenges"),{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include"})).json();if(l.error||!l.result)return n.Err("Failed to get nonce");e=l.result}catch(d){return n.Err("Failed to get nonce",d)}const r=await this.walletClient.getChainId(),s=T.createSiweMessage({domain:this.domain,address:this.walletClient.account.address,statement:this.signingStatement,nonce:e,uri:"https://"+this.domain,version:"1",chainId:r,notBefore:i}),o=await this.walletClient.signMessage({account:this.walletClient.account,message:s});return n.Ok({message:s,signature:o,nonce:e})}async getAuthHeaders(){const t=await this.getToken();return t.ok?n.Ok({Authorization:h.Authorization(t.val)}):n.Err(t.error)}}exports.Siwe=u;
package/dist/index10.js CHANGED
@@ -4,11 +4,11 @@ import { MemoryStorage as w } from "./index14.js";
4
4
  import { StoreKeys as d } from "./index15.js";
5
5
  import { add0x as g, parseJwt as k, Authorization as p } from "./index3.js";
6
6
  import { Ok as s, Err as r } from "./index5.js";
7
- import { createWalletClient as y } from "./index23.js";
8
- import { http as C } from "./index24.js";
7
+ import { createWalletClient as y } from "./index25.js";
8
+ import { http as C } from "./index26.js";
9
9
  import { privateKeyToAccount as T } from "./index22.js";
10
- import { createSiweMessage as v } from "./index25.js";
11
- import { mainnet as S } from "./index26.js";
10
+ import { createSiweMessage as v } from "./index27.js";
11
+ import { mainnet as S } from "./index28.js";
12
12
  class f {
13
13
  constructor(e, n, t) {
14
14
  if (this.url = e.endpoint("siwe"), this.walletClient = n, this.domain = (t == null ? void 0 : t.domain) || "app.garden.finance", this.domain.startsWith("https://") && (this.domain = this.domain.split("https://")[1]), this.signingStatement = (t == null ? void 0 : t.signingStatement) ?? "Garden.fi", this.store = (t == null ? void 0 : t.store) ?? (typeof window < "u" ? window.localStorage : new w()), typeof window > "u") {
package/dist/index100.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});async function s(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}exports.getPermissions=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const G=require("./index32.cjs"),u=require("./index110.cjs"),O=require("./index35.cjs"),j=require("./index62.cjs"),B=require("./index125.cjs"),U=require("./index67.cjs"),W=require("./index44.cjs"),k=require("./index45.cjs"),l=require("./index55.cjs"),D=require("./index116.cjs"),H=require("./index48.cjs"),J=require("./index69.cjs"),L=require("./index64.cjs"),K=require("./index123.cjs"),f=new D.LruMap(128);async function Q(r,e){var M,z,I,S;const{account:d=r.account,chain:n=r.chain,accessList:w,authorizationList:s,blobs:q,data:m,gas:T,gasPrice:g,maxFeePerBlobGas:y,maxFeePerGas:R,maxPriorityFeePerGas:A,nonce:E,type:C,value:N,...P}=e;if(typeof d>"u")throw new u.AccountNotFoundError({docsPath:"/docs/actions/wallet/sendTransaction"});const t=d?G.parseAccount(d):null;try{H.assertRequest(e);const a=await(async()=>{if(e.to)return e.to;if(e.to!==null&&s&&s.length>0)return await j.recoverAuthorizationAddress({authorization:s[0]}).catch(()=>{throw new O.BaseError("`to` is required. Could not infer from `authorizationList`.")})})();if((t==null?void 0:t.type)==="json-rpc"||t===null){let i;n!==null&&(i=await l.getAction(r,J.getChainId,"getChainId")({}),B.assertCurrentChain({currentChainId:i,chain:n}));const c=(I=(z=(M=r.chain)==null?void 0:M.formatters)==null?void 0:z.transactionRequest)==null?void 0:I.format,F=(c||k.formatTransactionRequest)({...W.extract(P,{format:c}),accessList:w,account:t,authorizationList:s,blobs:q,chainId:i,data:m,gas:T,gasPrice:g,maxFeePerBlobGas:y,maxFeePerGas:R,maxPriorityFeePerGas:A,nonce:E,to:a,type:C,value:N},"sendTransaction"),v=f.get(r.uid),_=v?"wallet_sendTransaction":"eth_sendTransaction";try{return await r.request({method:_,params:[F]},{retryCount:0})}catch(x){if(v===!1)throw x;const o=x;if(o.name==="InvalidInputRpcError"||o.name==="InvalidParamsRpcError"||o.name==="MethodNotFoundRpcError"||o.name==="MethodNotSupportedRpcError")return await r.request({method:"wallet_sendTransaction",params:[F]},{retryCount:0}).then(p=>(f.set(r.uid,!0),p)).catch(p=>{const h=p;throw h.name==="MethodNotFoundRpcError"||h.name==="MethodNotSupportedRpcError"?(f.set(r.uid,!1),o):h});throw o}}if((t==null?void 0:t.type)==="local"){const i=await l.getAction(r,L.prepareTransactionRequest,"prepareTransactionRequest")({account:t,accessList:w,authorizationList:s,blobs:q,chain:n,data:m,gas:T,gasPrice:g,maxFeePerBlobGas:y,maxFeePerGas:R,maxPriorityFeePerGas:A,nonce:E,nonceManager:t.nonceManager,parameters:[...L.defaultParameters,"sidecars"],type:C,value:N,...P,to:a}),c=(S=n==null?void 0:n.serializers)==null?void 0:S.transaction,b=await t.signTransaction(i,{serializer:c});return await l.getAction(r,K.sendRawTransaction,"sendRawTransaction")({serializedTransaction:b})}throw(t==null?void 0:t.type)==="smart"?new u.AccountTypeNotSupportedError({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:"/docs/actions/bundler/sendUserOperation",type:"smart"}):new u.AccountTypeNotSupportedError({docsPath:"/docs/actions/wallet/sendTransaction",type:t==null?void 0:t.type})}catch(a){throw a instanceof u.AccountTypeNotSupportedError?a:U.getTransactionError(a,{...e,account:t,chain:e.chain||void 0})}}exports.sendTransaction=Q;
package/dist/index100.js CHANGED
@@ -1,6 +1,128 @@
1
- async function t(e) {
2
- return await e.request({ method: "wallet_getPermissions" }, { dedupe: !0 });
1
+ import { parseAccount as _ } from "./index32.js";
2
+ import { AccountNotFoundError as G, AccountTypeNotSupportedError as p } from "./index110.js";
3
+ import { BaseError as B } from "./index35.js";
4
+ import { recoverAuthorizationAddress as O } from "./index62.js";
5
+ import { assertCurrentChain as U } from "./index125.js";
6
+ import { getTransactionError as W } from "./index67.js";
7
+ import { extract as j } from "./index44.js";
8
+ import { formatTransactionRequest as k } from "./index45.js";
9
+ import { getAction as f } from "./index55.js";
10
+ import { LruMap as D } from "./index116.js";
11
+ import { assertRequest as H } from "./index48.js";
12
+ import { getChainId as J } from "./index69.js";
13
+ import { prepareTransactionRequest as K, defaultParameters as Q } from "./index64.js";
14
+ import { sendRawTransaction as V } from "./index123.js";
15
+ const h = new D(128);
16
+ async function ur(t, o) {
17
+ var z, A, F, I;
18
+ const { account: d = t.account, chain: e = t.chain, accessList: w, authorizationList: s, blobs: l, data: y, gas: T, gasPrice: g, maxFeePerBlobGas: R, maxFeePerGas: E, maxPriorityFeePerGas: q, nonce: P, type: C, value: N, ...M } = o;
19
+ if (typeof d > "u")
20
+ throw new G({
21
+ docsPath: "/docs/actions/wallet/sendTransaction"
22
+ });
23
+ const r = d ? _(d) : null;
24
+ try {
25
+ H(o);
26
+ const a = await (async () => {
27
+ if (o.to)
28
+ return o.to;
29
+ if (o.to !== null && s && s.length > 0)
30
+ return await O({
31
+ authorization: s[0]
32
+ }).catch(() => {
33
+ throw new B("`to` is required. Could not infer from `authorizationList`.");
34
+ });
35
+ })();
36
+ if ((r == null ? void 0 : r.type) === "json-rpc" || r === null) {
37
+ let i;
38
+ e !== null && (i = await f(t, J, "getChainId")({}), U({
39
+ currentChainId: i,
40
+ chain: e
41
+ }));
42
+ const c = (F = (A = (z = t.chain) == null ? void 0 : z.formatters) == null ? void 0 : A.transactionRequest) == null ? void 0 : F.format, b = (c || k)({
43
+ // Pick out extra data that might exist on the chain's transaction request type.
44
+ ...j(M, { format: c }),
45
+ accessList: w,
46
+ account: r,
47
+ authorizationList: s,
48
+ blobs: l,
49
+ chainId: i,
50
+ data: y,
51
+ gas: T,
52
+ gasPrice: g,
53
+ maxFeePerBlobGas: R,
54
+ maxFeePerGas: E,
55
+ maxPriorityFeePerGas: q,
56
+ nonce: P,
57
+ to: a,
58
+ type: C,
59
+ value: N
60
+ }, "sendTransaction"), v = h.get(t.uid), S = v ? "wallet_sendTransaction" : "eth_sendTransaction";
61
+ try {
62
+ return await t.request({
63
+ method: S,
64
+ params: [b]
65
+ }, { retryCount: 0 });
66
+ } catch (L) {
67
+ if (v === !1)
68
+ throw L;
69
+ const n = L;
70
+ if (n.name === "InvalidInputRpcError" || n.name === "InvalidParamsRpcError" || n.name === "MethodNotFoundRpcError" || n.name === "MethodNotSupportedRpcError")
71
+ return await t.request({
72
+ method: "wallet_sendTransaction",
73
+ params: [b]
74
+ }, { retryCount: 0 }).then((u) => (h.set(t.uid, !0), u)).catch((u) => {
75
+ const m = u;
76
+ throw m.name === "MethodNotFoundRpcError" || m.name === "MethodNotSupportedRpcError" ? (h.set(t.uid, !1), n) : m;
77
+ });
78
+ throw n;
79
+ }
80
+ }
81
+ if ((r == null ? void 0 : r.type) === "local") {
82
+ const i = await f(t, K, "prepareTransactionRequest")({
83
+ account: r,
84
+ accessList: w,
85
+ authorizationList: s,
86
+ blobs: l,
87
+ chain: e,
88
+ data: y,
89
+ gas: T,
90
+ gasPrice: g,
91
+ maxFeePerBlobGas: R,
92
+ maxFeePerGas: E,
93
+ maxPriorityFeePerGas: q,
94
+ nonce: P,
95
+ nonceManager: r.nonceManager,
96
+ parameters: [...Q, "sidecars"],
97
+ type: C,
98
+ value: N,
99
+ ...M,
100
+ to: a
101
+ }), c = (I = e == null ? void 0 : e.serializers) == null ? void 0 : I.transaction, x = await r.signTransaction(i, {
102
+ serializer: c
103
+ });
104
+ return await f(t, V, "sendRawTransaction")({
105
+ serializedTransaction: x
106
+ });
107
+ }
108
+ throw (r == null ? void 0 : r.type) === "smart" ? new p({
109
+ metaMessages: [
110
+ "Consider using the `sendUserOperation` Action instead."
111
+ ],
112
+ docsPath: "/docs/actions/bundler/sendUserOperation",
113
+ type: "smart"
114
+ }) : new p({
115
+ docsPath: "/docs/actions/wallet/sendTransaction",
116
+ type: r == null ? void 0 : r.type
117
+ });
118
+ } catch (a) {
119
+ throw a instanceof p ? a : W(a, {
120
+ ...o,
121
+ account: r,
122
+ chain: o.chain || void 0
123
+ });
124
+ }
3
125
  }
4
126
  export {
5
- t as getPermissions
127
+ ur as sendTransaction
6
128
  };
package/dist/index101.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index32.cjs"),f=require("./index102.cjs"),g=require("./index103.cjs"),s=require("./index55.cjs"),h=require("./index70.cjs"),A=require("./index77.cjs");async function p(o,n){var i;const{account:c=o.account,chainId:u,nonce:a}=n;if(!c)throw new f.AccountNotFoundError({docsPath:"/docs/eip7702/prepareAuthorization"});const r=d.parseAccount(c),t=(()=>{if(n.executor)return n.executor==="self"?n.executor:d.parseAccount(n.executor)})(),e={address:n.contractAddress??n.address,chainId:u,nonce:a};return typeof e.chainId>"u"&&(e.chainId=((i=o.chain)==null?void 0:i.id)??await s.getAction(o,h.getChainId,"getChainId")({})),typeof e.nonce>"u"&&(e.nonce=await s.getAction(o,A.getTransactionCount,"getTransactionCount")({address:r.address,blockTag:"pending"}),(t==="self"||t!=null&&t.address&&g.isAddressEqual(t.address,r.address))&&(e.nonce+=1)),e}exports.prepareAuthorization=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index102.cjs");async function r(e){var s;return((s=e.account)==null?void 0:s.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"},{dedupe:!0})).map(t=>d.checksumAddress(t))}exports.getAddresses=r;
package/dist/index101.js CHANGED
@@ -1,29 +1,8 @@
1
- import { parseAccount as e } from "./index32.js";
2
- import { AccountNotFoundError as f } from "./index102.js";
3
- import { isAddressEqual as h } from "./index103.js";
4
- import { getAction as a } from "./index55.js";
5
- import { getChainId as p } from "./index70.js";
6
- import { getTransactionCount as g } from "./index77.js";
7
- async function y(r, o) {
8
- var i;
9
- const { account: c = r.account, chainId: s, nonce: u } = o;
10
- if (!c)
11
- throw new f({
12
- docsPath: "/docs/eip7702/prepareAuthorization"
13
- });
14
- const d = e(c), t = (() => {
15
- if (o.executor)
16
- return o.executor === "self" ? o.executor : e(o.executor);
17
- })(), n = {
18
- address: o.contractAddress ?? o.address,
19
- chainId: s,
20
- nonce: u
21
- };
22
- return typeof n.chainId > "u" && (n.chainId = ((i = r.chain) == null ? void 0 : i.id) ?? await a(r, p, "getChainId")({})), typeof n.nonce > "u" && (n.nonce = await a(r, g, "getTransactionCount")({
23
- address: d.address,
24
- blockTag: "pending"
25
- }), (t === "self" || t != null && t.address && h(t.address, d.address)) && (n.nonce += 1)), n;
1
+ import { checksumAddress as t } from "./index102.js";
2
+ async function c(e) {
3
+ var s;
4
+ return ((s = e.account) == null ? void 0 : s.type) === "local" ? [e.account.address] : (await e.request({ method: "eth_accounts" }, { dedupe: !0 })).map((r) => t(r));
26
5
  }
27
6
  export {
28
- y as prepareAuthorization
7
+ c as getAddresses
29
8
  };
package/dist/index102.cjs CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index35.cjs");class c extends t.BaseError{constructor({docsPath:o}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
2
- `),{docsPath:o,docsSlug:"account",name:"AccountNotFoundError"})}}class u extends t.BaseError{constructor({docsPath:o,metaMessages:e,type:n}){super(`Account type "${n}" is not supported.`,{docsPath:o,metaMessages:e,name:"AccountTypeNotSupportedError"})}}exports.AccountNotFoundError=c;exports.AccountTypeNotSupportedError=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./index150.cjs"),f=require("./index168.cjs"),a=require("./index178.cjs"),l=require("./index116.cjs"),A=require("./index174.cjs"),o=new l.LruMap(8192);function u(s,t){if(o.has(`${s}.${t}`))return o.get(`${s}.${t}`);const c=s.substring(2).toLowerCase(),n=a.keccak256(f.stringToBytes(c),"bytes"),r=c.split("");for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());const i=`0x${r.join("")}`;return o.set(`${s}.${t}`,i),i}function g(s,t){if(!A.isAddress(s,{strict:!1}))throw new d.InvalidAddressError({address:s});return u(s,t)}exports.checksumAddress=u;exports.getAddress=g;
package/dist/index102.js CHANGED
@@ -1,27 +1,24 @@
1
- import { BaseError as t } from "./index35.js";
2
- class u extends t {
3
- constructor({ docsPath: o } = {}) {
4
- super([
5
- "Could not find an Account to execute with this Action.",
6
- "Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."
7
- ].join(`
8
- `), {
9
- docsPath: o,
10
- docsSlug: "account",
11
- name: "AccountNotFoundError"
12
- });
13
- }
1
+ import { InvalidAddressError as c } from "./index150.js";
2
+ import { stringToBytes as m } from "./index168.js";
3
+ import { keccak256 as p } from "./index178.js";
4
+ import { LruMap as u } from "./index116.js";
5
+ import { isAddress as $ } from "./index174.js";
6
+ const s = /* @__PURE__ */ new u(8192);
7
+ function h(t, o) {
8
+ if (s.has(`${t}.${o}`))
9
+ return s.get(`${t}.${o}`);
10
+ const i = t.substring(2).toLowerCase(), n = p(m(i), "bytes"), e = i.split("");
11
+ for (let r = 0; r < 40; r += 2)
12
+ n[r >> 1] >> 4 >= 8 && e[r] && (e[r] = e[r].toUpperCase()), (n[r >> 1] & 15) >= 8 && e[r + 1] && (e[r + 1] = e[r + 1].toUpperCase());
13
+ const f = `0x${e.join("")}`;
14
+ return s.set(`${t}.${o}`, f), f;
14
15
  }
15
- class s extends t {
16
- constructor({ docsPath: o, metaMessages: c, type: r }) {
17
- super(`Account type "${r}" is not supported.`, {
18
- docsPath: o,
19
- metaMessages: c,
20
- name: "AccountTypeNotSupportedError"
21
- });
22
- }
16
+ function w(t, o) {
17
+ if (!$(t, { strict: !1 }))
18
+ throw new c({ address: t });
19
+ return h(t, o);
23
20
  }
24
21
  export {
25
- u as AccountNotFoundError,
26
- s as AccountTypeNotSupportedError
22
+ h as checksumAddress,
23
+ w as getAddress
27
24
  };
package/dist/index103.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index141.cjs"),d=require("./index165.cjs");function t(s,r){if(!d.isAddress(s,{strict:!1}))throw new e.InvalidAddressError({address:s});if(!d.isAddress(r,{strict:!1}))throw new e.InvalidAddressError({address:r});return s.toLowerCase()===r.toLowerCase()}exports.isAddressEqual=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index104.cjs"),I=require("./index105.cjs"),n=require("./index65.cjs"),T=require("./index83.cjs"),o=require("./index106.cjs");async function q(r,l){async function d(e){if(e.endsWith(o.fallbackMagicIdentifier.slice(2))){const p=I.trim(c.sliceHex(e,-64,-32)),b=c.sliceHex(e,0,-64).slice(2).match(/.{1,64}/g),s=await Promise.all(b.map(t=>o.fallbackTransactionErrorMagicIdentifier.slice(2)!==t?r.request({method:"eth_getTransactionReceipt",params:[`0x${t}`]},{dedupe:!0}):void 0)),x=s.some(t=>t===null)?100:s.every(t=>(t==null?void 0:t.status)==="0x1")?200:s.every(t=>(t==null?void 0:t.status)==="0x0")?500:600;return{atomic:!1,chainId:n.hexToNumber(p),receipts:s.filter(Boolean),status:x,version:"2.0.0"}}return r.request({method:"wallet_getCallsStatus",params:[e]})}const{atomic:f=!1,chainId:i,receipts:a,version:m="2.0.0",...u}=await d(l.id),[g,h]=(()=>{const e=u.status;return e>=100&&e<200?["pending",e]:e>=200&&e<300?["success",e]:e>=300&&e<700?["failure",e]:e==="CONFIRMED"?["success",200]:e==="PENDING"?["pending",100]:[void 0,e]})();return{...u,atomic:f,chainId:i?n.hexToNumber(i):void 0,receipts:(a==null?void 0:a.map(e=>({...e,blockNumber:n.hexToBigInt(e.blockNumber),gasUsed:n.hexToBigInt(e.gasUsed),status:T.receiptStatuses[e.status]})))??[],statusCode:h,status:g,version:m}}exports.getCallsStatus=q;
package/dist/index103.js CHANGED
@@ -1,12 +1,48 @@
1
- import { InvalidAddressError as e } from "./index141.js";
2
- import { isAddress as o } from "./index165.js";
3
- function i(r, s) {
4
- if (!o(r, { strict: !1 }))
5
- throw new e({ address: r });
6
- if (!o(s, { strict: !1 }))
7
- throw new e({ address: s });
8
- return r.toLowerCase() === s.toLowerCase();
1
+ import { sliceHex as o } from "./index104.js";
2
+ import { trim as x } from "./index105.js";
3
+ import { hexToNumber as u, hexToBigInt as c } from "./index65.js";
4
+ import { receiptStatuses as N } from "./index83.js";
5
+ import { fallbackMagicIdentifier as T, fallbackTransactionErrorMagicIdentifier as C } from "./index106.js";
6
+ async function M(a, f) {
7
+ async function m(t) {
8
+ if (t.endsWith(T.slice(2))) {
9
+ const h = x(o(t, -64, -32)), I = o(t, 0, -64).slice(2).match(/.{1,64}/g), s = await Promise.all(I.map((e) => C.slice(2) !== e ? a.request({
10
+ method: "eth_getTransactionReceipt",
11
+ params: [`0x${e}`]
12
+ }, { dedupe: !0 }) : void 0)), b = s.some((e) => e === null) ? 100 : s.every((e) => (e == null ? void 0 : e.status) === "0x1") ? 200 : s.every((e) => (e == null ? void 0 : e.status) === "0x0") ? 500 : 600;
13
+ return {
14
+ atomic: !1,
15
+ chainId: u(h),
16
+ receipts: s.filter(Boolean),
17
+ status: b,
18
+ version: "2.0.0"
19
+ };
20
+ }
21
+ return a.request({
22
+ method: "wallet_getCallsStatus",
23
+ params: [t]
24
+ });
25
+ }
26
+ const { atomic: l = !1, chainId: r, receipts: n, version: d = "2.0.0", ...i } = await m(f.id), [p, g] = (() => {
27
+ const t = i.status;
28
+ return t >= 100 && t < 200 ? ["pending", t] : t >= 200 && t < 300 ? ["success", t] : t >= 300 && t < 700 ? ["failure", t] : t === "CONFIRMED" ? ["success", 200] : t === "PENDING" ? ["pending", 100] : [void 0, t];
29
+ })();
30
+ return {
31
+ ...i,
32
+ atomic: l,
33
+ // @ts-expect-error: for backwards compatibility
34
+ chainId: r ? u(r) : void 0,
35
+ receipts: (n == null ? void 0 : n.map((t) => ({
36
+ ...t,
37
+ blockNumber: c(t.blockNumber),
38
+ gasUsed: c(t.gasUsed),
39
+ status: N[t.status]
40
+ }))) ?? [],
41
+ statusCode: g,
42
+ status: p,
43
+ version: d
44
+ };
9
45
  }
10
46
  export {
11
- i as isAddressEqual
47
+ M as getCallsStatus
12
48
  };
package/dist/index104.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index159.cjs"),l=require("./index42.cjs");function c(o){const{kzg:s}=o,n=o.to??(typeof o.blobs[0]=="string"?"hex":"bytes"),e=typeof o.blobs[0]=="string"?o.blobs.map(t=>i.hexToBytes(t)):o.blobs,b=[];for(const t of e)b.push(Uint8Array.from(s.blobToKzgCommitment(t)));return n==="bytes"?b:b.map(t=>l.bytesToHex(t))}exports.blobsToCommitments=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index159.cjs"),O=require("./index181.cjs"),n=require("./index149.cjs");function p(i,e,s,{strict:f}={}){return O.isHex(i,{strict:!1})?l(i,e,s,{strict:f}):u(i,e,s,{strict:f})}function r(i,e){if(typeof e=="number"&&e>0&&e>n.size(i)-1)throw new t.SliceOffsetOutOfBoundsError({offset:e,position:"start",size:n.size(i)})}function c(i,e,s){if(typeof e=="number"&&typeof s=="number"&&n.size(i)!==s-e)throw new t.SliceOffsetOutOfBoundsError({offset:s,position:"end",size:n.size(i)})}function u(i,e,s,{strict:f}={}){r(i,e);const o=i.slice(e,s);return f&&c(o,e,s),o}function l(i,e,s,{strict:f}={}){r(i,e);const o=`0x${i.replace("0x","").slice((e??0)*2,(s??i.length)*2)}`;return f&&c(o,e,s),o}exports.slice=p;exports.sliceBytes=u;exports.sliceHex=l;
package/dist/index104.js CHANGED
@@ -1,11 +1,41 @@
1
- import { hexToBytes as i } from "./index159.js";
2
- import { bytesToHex as f } from "./index42.js";
3
- function y(o) {
4
- const { kzg: s } = o, n = o.to ?? (typeof o.blobs[0] == "string" ? "hex" : "bytes"), m = typeof o.blobs[0] == "string" ? o.blobs.map((t) => i(t)) : o.blobs, b = [];
5
- for (const t of m)
6
- b.push(Uint8Array.from(s.blobToKzgCommitment(t)));
7
- return n === "bytes" ? b : b.map((t) => f(t));
1
+ import { SliceOffsetOutOfBoundsError as t } from "./index159.js";
2
+ import { isHex as p } from "./index181.js";
3
+ import { size as r } from "./index149.js";
4
+ function w(e, f, i, { strict: o } = {}) {
5
+ return p(e, { strict: !1 }) ? u(e, f, i, {
6
+ strict: o
7
+ }) : m(e, f, i, {
8
+ strict: o
9
+ });
10
+ }
11
+ function s(e, f) {
12
+ if (typeof f == "number" && f > 0 && f > r(e) - 1)
13
+ throw new t({
14
+ offset: f,
15
+ position: "start",
16
+ size: r(e)
17
+ });
18
+ }
19
+ function c(e, f, i) {
20
+ if (typeof f == "number" && typeof i == "number" && r(e) !== i - f)
21
+ throw new t({
22
+ offset: i,
23
+ position: "end",
24
+ size: r(e)
25
+ });
26
+ }
27
+ function m(e, f, i, { strict: o } = {}) {
28
+ s(e, f);
29
+ const n = e.slice(f, i);
30
+ return o && c(n, f, i), n;
31
+ }
32
+ function u(e, f, i, { strict: o } = {}) {
33
+ s(e, f);
34
+ const n = `0x${e.replace("0x", "").slice((f ?? 0) * 2, (i ?? e.length) * 2)}`;
35
+ return o && c(n, f, i), n;
8
36
  }
9
37
  export {
10
- y as blobsToCommitments
38
+ w as slice,
39
+ m as sliceBytes,
40
+ u as sliceHex
11
41
  };
package/dist/index105.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./index159.cjs"),y=require("./index42.cjs");function f(t){const{kzg:c}=t,e=t.to??(typeof t.blobs[0]=="string"?"hex":"bytes"),n=typeof t.blobs[0]=="string"?t.blobs.map(o=>b.hexToBytes(o)):t.blobs,i=typeof t.commitments[0]=="string"?t.commitments.map(o=>b.hexToBytes(o)):t.commitments,s=[];for(let o=0;o<n.length;o++){const l=n[o],m=i[o];s.push(Uint8Array.from(c.computeBlobKzgProof(l,m)))}return e==="bytes"?s:s.map(o=>y.bytesToHex(o))}exports.blobsToProofs=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function g(e,{dir:i="left"}={}){let t=typeof e=="string"?e.replace("0x",""):e,n=0;for(let l=0;l<t.length-1&&t[i==="left"?l:t.length-l-1].toString()==="0";l++)n++;return t=i==="left"?t.slice(n):t.slice(0,t.length-n),typeof e=="string"?(t.length===1&&i==="right"&&(t=`${t}0`),`0x${t.length%2===1?`0${t}`:t}`):t}exports.trim=g;
package/dist/index105.js CHANGED
@@ -1,13 +1,9 @@
1
- import { hexToBytes as b } from "./index159.js";
2
- import { bytesToHex as y } from "./index42.js";
3
- function h(t) {
4
- const { kzg: m } = t, c = t.to ?? (typeof t.blobs[0] == "string" ? "hex" : "bytes"), s = typeof t.blobs[0] == "string" ? t.blobs.map((o) => b(o)) : t.blobs, i = typeof t.commitments[0] == "string" ? t.commitments.map((o) => b(o)) : t.commitments, n = [];
5
- for (let o = 0; o < s.length; o++) {
6
- const f = s[o], l = i[o];
7
- n.push(Uint8Array.from(m.computeBlobKzgProof(f, l)));
8
- }
9
- return c === "bytes" ? n : n.map((o) => y(o));
1
+ function f(e, { dir: n = "left" } = {}) {
2
+ let t = typeof e == "string" ? e.replace("0x", "") : e, i = 0;
3
+ for (let l = 0; l < t.length - 1 && t[n === "left" ? l : t.length - l - 1].toString() === "0"; l++)
4
+ i++;
5
+ return t = n === "left" ? t.slice(i) : t.slice(0, t.length - i), typeof e == "string" ? (t.length === 1 && n === "right" && (t = `${t}0`), `0x${t.length % 2 === 1 ? `0${t}` : t}`) : t;
10
6
  }
11
7
  export {
12
- h as blobsToProofs
8
+ f as trim
13
9
  };
package/dist/index106.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index173.cjs");function c(o){const{commitments:e,version:s}=o,n=o.to??(typeof e[0]=="string"?"hex":"bytes"),t=[];for(const m of e)t.push(i.commitmentToVersionedHash({commitment:m,to:n,version:s}));return t}exports.commitmentsToVersionedHashes=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("./index32.cjs"),h=require("./index35.cjs"),g=require("./index96.cjs"),L=require("./index40.cjs"),w=require("./index120.cjs"),N=require("./index65.cjs"),c=require("./index42.cjs"),M=require("./index67.cjs"),S=require("./index100.cjs"),C="0x5792579257925792579257925792579257925792579257925792579257925792",T=c.numberToHex(0,{size:32});async function _(s,i){const{account:p=s.account,capabilities:l,chain:u=s.chain,experimental_fallback:v,experimental_fallbackDelay:m=32,forceAtomic:b=!1,id:q,version:x="2.0.0"}=i,r=p?k.parseAccount(p):null,d=i.calls.map(o=>{const e=o,a=e.abi?L.encodeFunctionData({abi:e.abi,functionName:e.functionName,args:e.args}):e.data;return{data:e.dataSuffix&&a?w.concat([a,e.dataSuffix]):a,to:e.to,value:e.value?c.numberToHex(e.value):void 0}});try{const o=await s.request({method:"wallet_sendCalls",params:[{atomicRequired:b,calls:d,capabilities:l,chainId:c.numberToHex(u.id),from:r==null?void 0:r.address,id:q,version:x}]},{retryCount:0});return typeof o=="string"?{id:o}:o}catch(o){const e=o;if(v&&(e.name==="MethodNotFoundRpcError"||e.name==="MethodNotSupportedRpcError"||e.name==="UnknownRpcError"||e.details.toLowerCase().includes("does not exist / is not available")||e.details.toLowerCase().includes("missing or invalid. request()")||e.details.toLowerCase().includes("did not match any variant of untagged enum")||e.details.toLowerCase().includes("account upgraded to unsupported contract")||e.details.toLowerCase().includes("eip-7702 not supported")||e.details.toLowerCase().includes("unsupported wc_ method")||e.details.toLowerCase().includes("feature toggled misconfigured")||e.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))){if(l&&Object.values(l).some(n=>!n.optional)){const n="non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";throw new g.UnsupportedNonOptionalCapabilityError(new h.BaseError(n,{details:n}))}if(b&&d.length>1){const t="`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";throw new g.AtomicityNotSupportedError(new h.BaseError(t,{details:t}))}const a=[];for(const t of d){const n=S.sendTransaction(s,{account:r,chain:u,data:t.data,to:t.to,value:t.value?N.hexToBigInt(t.value):void 0});a.push(n),m>0&&await new Promise(E=>setTimeout(E,m))}const f=await Promise.allSettled(a);if(f.every(t=>t.status==="rejected"))throw f[0].reason;const y=f.map(t=>t.status==="fulfilled"?t.value:T);return{id:w.concat([...y,c.numberToHex(u.id,{size:32}),C])}}throw M.getTransactionError(o,{...i,account:r,chain:i.chain})}}exports.fallbackMagicIdentifier=C;exports.fallbackTransactionErrorMagicIdentifier=T;exports.sendCalls=_;
package/dist/index106.js CHANGED
@@ -1,14 +1,93 @@
1
- import { commitmentToVersionedHash as i } from "./index173.js";
2
- function r(o) {
3
- const { commitments: t, version: n } = o, e = o.to ?? (typeof t[0] == "string" ? "hex" : "bytes"), s = [];
4
- for (const m of t)
5
- s.push(i({
6
- commitment: m,
7
- to: e,
8
- version: n
9
- }));
10
- return s;
1
+ import { parseAccount as E } from "./index32.js";
2
+ import { BaseError as w } from "./index35.js";
3
+ import { UnsupportedNonOptionalCapabilityError as L, AtomicityNotSupportedError as N } from "./index96.js";
4
+ import { encodeFunctionData as T } from "./index40.js";
5
+ import { concat as g } from "./index120.js";
6
+ import { hexToBigInt as k } from "./index65.js";
7
+ import { numberToHex as c } from "./index42.js";
8
+ import { getTransactionError as _ } from "./index67.js";
9
+ import { sendTransaction as S } from "./index100.js";
10
+ const q = "0x5792579257925792579257925792579257925792579257925792579257925792", A = c(0, {
11
+ size: 32
12
+ });
13
+ async function P(i, s) {
14
+ const { account: f = i.account, capabilities: l, chain: d = i.chain, experimental_fallback: b, experimental_fallbackDelay: m = 32, forceAtomic: h = !1, id: C, version: v = "2.0.0" } = s, r = f ? E(f) : null, u = s.calls.map((t) => {
15
+ const e = t, a = e.abi ? T({
16
+ abi: e.abi,
17
+ functionName: e.functionName,
18
+ args: e.args
19
+ }) : e.data;
20
+ return {
21
+ data: e.dataSuffix && a ? g([a, e.dataSuffix]) : a,
22
+ to: e.to,
23
+ value: e.value ? c(e.value) : void 0
24
+ };
25
+ });
26
+ try {
27
+ const t = await i.request({
28
+ method: "wallet_sendCalls",
29
+ params: [
30
+ {
31
+ atomicRequired: h,
32
+ calls: u,
33
+ capabilities: l,
34
+ chainId: c(d.id),
35
+ from: r == null ? void 0 : r.address,
36
+ id: C,
37
+ version: v
38
+ }
39
+ ]
40
+ }, { retryCount: 0 });
41
+ return typeof t == "string" ? { id: t } : t;
42
+ } catch (t) {
43
+ const e = t;
44
+ if (b && (e.name === "MethodNotFoundRpcError" || e.name === "MethodNotSupportedRpcError" || e.name === "UnknownRpcError" || e.details.toLowerCase().includes("does not exist / is not available") || e.details.toLowerCase().includes("missing or invalid. request()") || e.details.toLowerCase().includes("did not match any variant of untagged enum") || e.details.toLowerCase().includes("account upgraded to unsupported contract") || e.details.toLowerCase().includes("eip-7702 not supported") || e.details.toLowerCase().includes("unsupported wc_ method") || // magic.link
45
+ e.details.toLowerCase().includes("feature toggled misconfigured") || // Trust Wallet
46
+ e.details.toLowerCase().includes("jsonrpcengine: response has no error or result for request"))) {
47
+ if (l && Object.values(l).some((n) => !n.optional)) {
48
+ const n = "non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.";
49
+ throw new L(new w(n, {
50
+ details: n
51
+ }));
52
+ }
53
+ if (h && u.length > 1) {
54
+ const o = "`forceAtomic` is not supported on fallback to `eth_sendTransaction`.";
55
+ throw new N(new w(o, {
56
+ details: o
57
+ }));
58
+ }
59
+ const a = [];
60
+ for (const o of u) {
61
+ const n = S(i, {
62
+ account: r,
63
+ chain: d,
64
+ data: o.data,
65
+ to: o.to,
66
+ value: o.value ? k(o.value) : void 0
67
+ });
68
+ a.push(n), m > 0 && await new Promise((x) => setTimeout(x, m));
69
+ }
70
+ const p = await Promise.allSettled(a);
71
+ if (p.every((o) => o.status === "rejected"))
72
+ throw p[0].reason;
73
+ const y = p.map((o) => o.status === "fulfilled" ? o.value : A);
74
+ return {
75
+ id: g([
76
+ ...y,
77
+ c(d.id, { size: 32 }),
78
+ q
79
+ ])
80
+ };
81
+ }
82
+ throw _(t, {
83
+ ...s,
84
+ account: r,
85
+ chain: s.chain
86
+ });
87
+ }
11
88
  }
12
89
  export {
13
- r as commitmentsToVersionedHashes
90
+ q as fallbackMagicIdentifier,
91
+ A as fallbackTransactionErrorMagicIdentifier,
92
+ P as sendCalls
14
93
  };
package/dist/index107.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index104.cjs"),m=require("./index105.cjs"),u=require("./index175.cjs");function f(t){const{data:i,kzg:n,to:b}=t,s=t.blobs??u.toBlobs({data:i,to:b}),e=t.commitments??r.blobsToCommitments({blobs:s,kzg:n,to:b}),l=t.proofs??m.blobsToProofs({blobs:s,commitments:e,kzg:n,to:b}),c=[];for(let o=0;o<s.length;o++)c.push({blob:s[o],commitment:e[o],proof:l[o]});return c}exports.toBlobSidecars=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./index32.cjs"),p=require("./index42.cjs");async function f(s,c={}){const{account:n=s.account,chainId:t}=c,e=n?l.parseAccount(n):void 0,o=t?[e==null?void 0:e.address,[p.numberToHex(t)]]:[e==null?void 0:e.address],u=await s.request({method:"wallet_getCapabilities",params:o}),a={};for(const[r,b]of Object.entries(u)){a[Number(r)]={};for(let[i,d]of Object.entries(b))i==="addSubAccount"&&(i="unstable_addSubAccount"),a[Number(r)][i]=d}return typeof t=="number"?a[t]:a}exports.getCapabilities=f;
package/dist/index107.js CHANGED
@@ -1,16 +1,17 @@
1
- import { blobsToCommitments as f } from "./index104.js";
2
- import { blobsToProofs as l } from "./index105.js";
3
- import { toBlobs as p } from "./index175.js";
4
- function k(t) {
5
- const { data: i, kzg: n, to: m } = t, s = t.blobs ?? p({ data: i, to: m }), b = t.commitments ?? f({ blobs: s, kzg: n, to: m }), r = t.proofs ?? l({ blobs: s, commitments: b, kzg: n, to: m }), c = [];
6
- for (let o = 0; o < s.length; o++)
7
- c.push({
8
- blob: s[o],
9
- commitment: b[o],
10
- proof: r[o]
11
- });
12
- return c;
1
+ import { parseAccount as p } from "./index32.js";
2
+ import { numberToHex as f } from "./index42.js";
3
+ async function h(s, n = {}) {
4
+ const { account: o = s.account, chainId: t } = n, e = o ? p(o) : void 0, c = t ? [e == null ? void 0 : e.address, [f(t)]] : [e == null ? void 0 : e.address], b = await s.request({
5
+ method: "wallet_getCapabilities",
6
+ params: c
7
+ }), a = {};
8
+ for (const [r, u] of Object.entries(b)) {
9
+ a[Number(r)] = {};
10
+ for (let [i, d] of Object.entries(u))
11
+ i === "addSubAccount" && (i = "unstable_addSubAccount"), a[Number(r)][i] = d;
12
+ }
13
+ return typeof t == "number" ? a[t] : a;
13
14
  }
14
15
  export {
15
- k as toBlobSidecars
16
+ h as getCapabilities
16
17
  };
package/dist/index108.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index78.cjs");function f(e){if(e.type)return e.type;if(typeof e.authorizationList<"u")return"eip7702";if(typeof e.blobs<"u"||typeof e.blobVersionedHashes<"u"||typeof e.maxFeePerBlobGas<"u"||typeof e.sidecars<"u")return"eip4844";if(typeof e.maxFeePerGas<"u"||typeof e.maxPriorityFeePerGas<"u")return"eip1559";if(typeof e.gasPrice<"u")return typeof e.accessList<"u"?"eip2930":"legacy";throw new i.InvalidSerializableTransactionError({transaction:e})}exports.getTransactionType=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});async function s(e){return await e.request({method:"wallet_getPermissions"},{dedupe:!0})}exports.getPermissions=s;
package/dist/index108.js CHANGED
@@ -1,17 +1,6 @@
1
- import { InvalidSerializableTransactionError as f } from "./index78.js";
2
- function d(e) {
3
- if (e.type)
4
- return e.type;
5
- if (typeof e.authorizationList < "u")
6
- return "eip7702";
7
- if (typeof e.blobs < "u" || typeof e.blobVersionedHashes < "u" || typeof e.maxFeePerBlobGas < "u" || typeof e.sidecars < "u")
8
- return "eip4844";
9
- if (typeof e.maxFeePerGas < "u" || typeof e.maxPriorityFeePerGas < "u")
10
- return "eip1559";
11
- if (typeof e.gasPrice < "u")
12
- return typeof e.accessList < "u" ? "eip2930" : "legacy";
13
- throw new f({ transaction: e });
1
+ async function t(e) {
2
+ return await e.request({ method: "wallet_getPermissions" }, { dedupe: !0 });
14
3
  }
15
4
  export {
16
- d as getTransactionType
5
+ t as getPermissions
17
6
  };