@wuwei-labs/srsly 3.0.0-beta.9 → 4.0.0-beta.2

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 (819) hide show
  1. package/README.md +38 -0
  2. package/dist/cjs/accounts/borrower.js +55 -0
  3. package/dist/cjs/accounts/borrower.js.map +1 -1
  4. package/dist/cjs/accounts/config.js +50 -2
  5. package/dist/cjs/accounts/config.js.map +1 -1
  6. package/dist/cjs/accounts/contract.js +58 -0
  7. package/dist/cjs/accounts/contract.js.map +1 -1
  8. package/dist/cjs/accounts/fleet.js +6 -37
  9. package/dist/cjs/accounts/fleet.js.map +1 -1
  10. package/dist/cjs/accounts/index.js +24 -0
  11. package/dist/cjs/accounts/index.js.map +1 -0
  12. package/dist/cjs/accounts/member.js +16 -0
  13. package/dist/cjs/accounts/member.js.map +1 -0
  14. package/dist/cjs/accounts/rental.js +55 -0
  15. package/dist/cjs/accounts/rental.js.map +1 -1
  16. package/dist/cjs/accounts/thread.js +37 -0
  17. package/dist/cjs/accounts/thread.js.map +1 -0
  18. package/dist/cjs/demos.js +426 -65
  19. package/dist/cjs/demos.js.map +1 -1
  20. package/dist/cjs/generated/codama/accounts/borrowerState.js +23 -26
  21. package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -1
  22. package/dist/cjs/generated/codama/accounts/configState.js +53 -55
  23. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
  24. package/dist/cjs/generated/codama/accounts/contractState.js +52 -56
  25. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
  26. package/dist/cjs/generated/codama/accounts/fleet.js +39 -36
  27. package/dist/cjs/generated/codama/accounts/fleet.js.map +1 -1
  28. package/dist/cjs/generated/codama/accounts/index.js +0 -2
  29. package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
  30. package/dist/cjs/generated/codama/accounts/rentalState.js +43 -38
  31. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
  32. package/dist/cjs/generated/codama/accounts/thread.js +41 -50
  33. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
  34. package/dist/cjs/generated/codama/errors/srsly.js +70 -49
  35. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
  36. package/dist/cjs/generated/codama/instructions/acceptRental.js +77 -153
  37. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
  38. package/dist/cjs/generated/codama/instructions/activateRental.js +166 -31
  39. package/dist/cjs/generated/codama/instructions/activateRental.js.map +1 -1
  40. package/dist/cjs/generated/codama/instructions/cancelRental.js +68 -51
  41. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
  42. package/dist/cjs/generated/codama/instructions/claimBorrower.js +26 -21
  43. package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -1
  44. package/dist/cjs/generated/codama/instructions/{claimContractPayments.js → claimContract.js} +41 -69
  45. package/dist/cjs/generated/codama/instructions/claimContract.js.map +1 -0
  46. package/dist/cjs/generated/codama/instructions/closeBorrower.js +105 -6
  47. package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -1
  48. package/dist/cjs/generated/codama/instructions/closeContract.js +82 -34
  49. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
  50. package/dist/cjs/generated/codama/instructions/closeContractThread.js +167 -0
  51. package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -0
  52. package/dist/cjs/generated/codama/instructions/closeRental.js +9 -124
  53. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
  54. package/dist/cjs/generated/codama/instructions/createBorrower.js +197 -0
  55. package/dist/cjs/generated/codama/instructions/createBorrower.js.map +1 -0
  56. package/dist/cjs/generated/codama/instructions/createConfig.js +21 -21
  57. package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -1
  58. package/dist/cjs/generated/codama/instructions/createContract.js +59 -29
  59. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
  60. package/dist/cjs/generated/codama/instructions/createContractThread.js +317 -0
  61. package/dist/cjs/generated/codama/instructions/createContractThread.js.map +1 -0
  62. package/dist/cjs/generated/codama/instructions/deleteBorrower.js +5 -16
  63. package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -1
  64. package/dist/cjs/generated/codama/instructions/deleteConfig.js +15 -15
  65. package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -1
  66. package/dist/cjs/generated/codama/instructions/deleteContract.js +5 -5
  67. package/dist/cjs/generated/codama/instructions/deleteRental.js +5 -5
  68. package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -1
  69. package/dist/cjs/generated/codama/instructions/index.js +6 -6
  70. package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
  71. package/dist/cjs/generated/codama/instructions/invalidateRental.js +5 -5
  72. package/dist/cjs/generated/codama/instructions/processContract.js +224 -0
  73. package/dist/cjs/generated/codama/instructions/processContract.js.map +1 -0
  74. package/dist/cjs/generated/codama/instructions/releaseRental.js +5 -5
  75. package/dist/cjs/generated/codama/instructions/reserveRental.js +114 -59
  76. package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
  77. package/dist/cjs/generated/codama/instructions/setDelegate.js +6 -6
  78. package/dist/cjs/generated/codama/instructions/updateBorrower.js +14 -50
  79. package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -1
  80. package/dist/cjs/generated/codama/instructions/updateConfig.js +37 -55
  81. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
  82. package/dist/cjs/generated/codama/instructions/updateContract.js +17 -25
  83. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
  84. package/dist/cjs/generated/codama/instructions/updateContractThread.js +177 -0
  85. package/dist/cjs/generated/codama/instructions/updateContractThread.js.map +1 -0
  86. package/dist/cjs/generated/codama/programs/srsly.js +41 -49
  87. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
  88. package/dist/cjs/generated/codama/shared/index.js +8 -8
  89. package/dist/cjs/generated/codama/types/atlasClaimed.js +8 -8
  90. package/dist/cjs/generated/codama/types/borrowerInitialized.js +4 -4
  91. package/dist/cjs/generated/codama/types/cargoStats.js +18 -18
  92. package/dist/cjs/generated/codama/types/combatStats.js +49 -0
  93. package/dist/cjs/generated/codama/types/combatStats.js.map +1 -0
  94. package/dist/cjs/generated/codama/types/contractClosed.js +6 -6
  95. package/dist/cjs/generated/codama/types/contractCreated.js +8 -8
  96. package/dist/cjs/generated/codama/types/contractDelegateSet.js +6 -6
  97. package/dist/cjs/generated/codama/types/contractPendingClose.js +31 -0
  98. package/dist/cjs/generated/codama/types/contractPendingClose.js.map +1 -0
  99. package/dist/cjs/generated/codama/types/contractProcessed.js +33 -0
  100. package/dist/cjs/generated/codama/types/contractProcessed.js.map +1 -0
  101. package/dist/cjs/generated/codama/types/contractThreadClosed.js +29 -0
  102. package/dist/cjs/generated/codama/types/contractThreadClosed.js.map +1 -0
  103. package/dist/cjs/generated/codama/types/contractThreadCreated.js +29 -0
  104. package/dist/cjs/generated/codama/types/contractThreadCreated.js.map +1 -0
  105. package/dist/cjs/generated/codama/types/contractThreadUpdated.js +39 -0
  106. package/dist/cjs/generated/codama/types/contractThreadUpdated.js.map +1 -0
  107. package/dist/cjs/generated/codama/types/contractUpdated.js +8 -8
  108. package/dist/cjs/generated/codama/types/discountAuthorization.js +35 -0
  109. package/dist/cjs/generated/codama/types/discountAuthorization.js.map +1 -0
  110. package/dist/cjs/generated/codama/types/fieldUpdate.js +4 -4
  111. package/dist/cjs/generated/codama/types/fleet.js +74 -0
  112. package/dist/cjs/generated/codama/types/fleet.js.map +1 -0
  113. package/dist/cjs/generated/codama/types/index.js +11 -6
  114. package/dist/cjs/generated/codama/types/index.js.map +1 -1
  115. package/dist/cjs/generated/codama/types/miscStats.js +22 -22
  116. package/dist/cjs/generated/codama/types/movementStats.js +14 -14
  117. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js +2 -2
  118. package/dist/cjs/generated/codama/types/queuedRentalRefunded.js +33 -0
  119. package/dist/cjs/generated/codama/types/queuedRentalRefunded.js.map +1 -0
  120. package/dist/cjs/generated/codama/types/rentalAccepted.js +10 -18
  121. package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -1
  122. package/dist/cjs/generated/codama/types/rentalActivated.js +8 -6
  123. package/dist/cjs/generated/codama/types/rentalActivated.js.map +1 -1
  124. package/dist/cjs/generated/codama/types/rentalCancelled.js +10 -10
  125. package/dist/cjs/generated/codama/types/rentalClosed.js +8 -8
  126. package/dist/cjs/generated/codama/types/rentalExpired.js +31 -0
  127. package/dist/cjs/generated/codama/types/rentalExpired.js.map +1 -0
  128. package/dist/cjs/generated/codama/types/rentalStatus.js +4 -3
  129. package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -1
  130. package/dist/cjs/generated/codama/types/reservationCreated.js +14 -10
  131. package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -1
  132. package/dist/cjs/generated/codama/types/reservationKnockoff.js +10 -10
  133. package/dist/cjs/generated/codama/types/schedule.js +14 -14
  134. package/dist/cjs/generated/codama/types/shipCounts.js +20 -20
  135. package/dist/cjs/generated/codama/types/shipStats.js +8 -6
  136. package/dist/cjs/generated/codama/types/shipStats.js.map +1 -1
  137. package/dist/cjs/generated/codama/types/signal.js +26 -12
  138. package/dist/cjs/generated/codama/types/signal.js.map +1 -1
  139. package/dist/cjs/generated/codama/types/thread.js +62 -0
  140. package/dist/cjs/generated/codama/types/thread.js.map +1 -0
  141. package/dist/cjs/generated/codama/types/trigger.js +36 -36
  142. package/dist/cjs/index.js +4 -185
  143. package/dist/cjs/index.js.map +1 -1
  144. package/dist/cjs/instructions/acceptRental.js +87 -82
  145. package/dist/cjs/instructions/acceptRental.js.map +1 -1
  146. package/dist/cjs/instructions/activateRental.js +98 -0
  147. package/dist/cjs/instructions/activateRental.js.map +1 -0
  148. package/dist/cjs/instructions/approveAffiliate.js +11 -0
  149. package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
  150. package/dist/cjs/instructions/cancelRental.js +32 -23
  151. package/dist/cjs/instructions/cancelRental.js.map +1 -1
  152. package/dist/cjs/instructions/claimBorrower.js +47 -21
  153. package/dist/cjs/instructions/claimBorrower.js.map +1 -1
  154. package/dist/cjs/instructions/claimContract.js +56 -0
  155. package/dist/cjs/instructions/claimContract.js.map +1 -0
  156. package/dist/cjs/instructions/closeBorrower.js +21 -23
  157. package/dist/cjs/instructions/closeBorrower.js.map +1 -1
  158. package/dist/cjs/instructions/closeContract.js +94 -21
  159. package/dist/cjs/instructions/closeContract.js.map +1 -1
  160. package/dist/cjs/instructions/closeContractThread.js +64 -0
  161. package/dist/cjs/instructions/closeContractThread.js.map +1 -0
  162. package/dist/cjs/instructions/closeRental.js +35 -46
  163. package/dist/cjs/instructions/closeRental.js.map +1 -1
  164. package/dist/cjs/instructions/createAffiliate.js +73 -0
  165. package/dist/cjs/instructions/createAffiliate.js.map +1 -0
  166. package/dist/cjs/instructions/createBorrower.js +46 -0
  167. package/dist/cjs/instructions/createBorrower.js.map +1 -0
  168. package/dist/cjs/instructions/createContract.js +45 -39
  169. package/dist/cjs/instructions/createContract.js.map +1 -1
  170. package/dist/cjs/instructions/createContractThread.js +102 -0
  171. package/dist/cjs/instructions/createContractThread.js.map +1 -0
  172. package/dist/cjs/instructions/deleteBorrower.js +13 -13
  173. package/dist/cjs/instructions/deleteBorrower.js.map +1 -1
  174. package/dist/cjs/instructions/deleteConfig.js +16 -5
  175. package/dist/cjs/instructions/deleteConfig.js.map +1 -1
  176. package/dist/cjs/instructions/deleteRental.js +1 -4
  177. package/dist/cjs/instructions/deleteRental.js.map +1 -1
  178. package/dist/cjs/instructions/index.js +49 -0
  179. package/dist/cjs/instructions/index.js.map +1 -0
  180. package/dist/cjs/instructions/removeAffiliate.js +11 -0
  181. package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
  182. package/dist/cjs/instructions/reserveRental.js +95 -71
  183. package/dist/cjs/instructions/reserveRental.js.map +1 -1
  184. package/dist/cjs/instructions/updateAffiliate.js +57 -0
  185. package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
  186. package/dist/cjs/instructions/updateBorrower.js +44 -38
  187. package/dist/cjs/instructions/updateBorrower.js.map +1 -1
  188. package/dist/cjs/instructions/updateConfig.js +0 -4
  189. package/dist/cjs/instructions/updateConfig.js.map +1 -1
  190. package/dist/cjs/instructions/updateContract.js +20 -36
  191. package/dist/cjs/instructions/updateContract.js.map +1 -1
  192. package/dist/cjs/instructions/updateContractThread.js +60 -0
  193. package/dist/cjs/instructions/updateContractThread.js.map +1 -0
  194. package/dist/cjs/kit/index.js +68 -0
  195. package/dist/cjs/kit/index.js.map +1 -0
  196. package/dist/cjs/legacy/index.js +125 -0
  197. package/dist/cjs/legacy/index.js.map +1 -0
  198. package/dist/cjs/package.json +5 -3
  199. package/dist/cjs/params/amount.js +4 -4
  200. package/dist/cjs/params/index.js +21 -0
  201. package/dist/cjs/params/index.js.map +1 -0
  202. package/dist/cjs/params/sol.js +71 -0
  203. package/dist/cjs/params/sol.js.map +1 -0
  204. package/dist/cjs/pda/constants.js +7 -2
  205. package/dist/cjs/pda/constants.js.map +1 -1
  206. package/dist/cjs/pda/index.js +10 -22
  207. package/dist/cjs/pda/index.js.map +1 -1
  208. package/dist/cjs/pda/lookupTable.js +3 -2
  209. package/dist/cjs/pda/lookupTable.js.map +1 -1
  210. package/dist/cjs/pda/sage.js +11 -10
  211. package/dist/cjs/pda/sage.js.map +1 -1
  212. package/dist/cjs/pda/slyvault.js +5 -49
  213. package/dist/cjs/pda/slyvault.js.map +1 -1
  214. package/dist/cjs/pda/srsly.js +39 -19
  215. package/dist/cjs/pda/srsly.js.map +1 -1
  216. package/dist/cjs/pda/thread.js +41 -31
  217. package/dist/cjs/pda/thread.js.map +1 -1
  218. package/dist/cjs/pda/token.js +5 -4
  219. package/dist/cjs/pda/token.js.map +1 -1
  220. package/dist/cjs/utils/addresses.js +3 -2
  221. package/dist/cjs/utils/addresses.js.map +1 -1
  222. package/dist/cjs/utils/config.js +20 -2
  223. package/dist/cjs/utils/config.js.map +1 -1
  224. package/dist/cjs/utils/discountAuth.js +161 -0
  225. package/dist/cjs/utils/discountAuth.js.map +1 -0
  226. package/dist/cjs/utils/index.js +16 -1
  227. package/dist/cjs/utils/index.js.map +1 -1
  228. package/dist/cjs/utils/instructionResult.js +76 -0
  229. package/dist/cjs/utils/instructionResult.js.map +1 -0
  230. package/dist/cjs/utils/instructions.js +12 -17
  231. package/dist/cjs/utils/instructions.js.map +1 -1
  232. package/dist/cjs/utils/rental.js +49 -0
  233. package/dist/cjs/utils/rental.js.map +1 -0
  234. package/dist/cjs/utils/signer.js +16 -9
  235. package/dist/cjs/utils/signer.js.map +1 -1
  236. package/dist/cjs/version.js +1 -1
  237. package/dist/esm/accounts/borrower.js +55 -1
  238. package/dist/esm/accounts/borrower.js.map +1 -1
  239. package/dist/esm/accounts/config.js +48 -1
  240. package/dist/esm/accounts/config.js.map +1 -1
  241. package/dist/esm/accounts/contract.js +58 -1
  242. package/dist/esm/accounts/contract.js.map +1 -1
  243. package/dist/esm/accounts/fleet.js +7 -38
  244. package/dist/esm/accounts/fleet.js.map +1 -1
  245. package/dist/esm/accounts/index.js +8 -0
  246. package/dist/esm/accounts/index.js.map +1 -0
  247. package/dist/esm/accounts/member.js +9 -0
  248. package/dist/esm/accounts/member.js.map +1 -0
  249. package/dist/esm/accounts/rental.js +55 -1
  250. package/dist/esm/accounts/rental.js.map +1 -1
  251. package/dist/esm/accounts/thread.js +34 -0
  252. package/dist/esm/accounts/thread.js.map +1 -0
  253. package/dist/esm/demos.js +425 -64
  254. package/dist/esm/demos.js.map +1 -1
  255. package/dist/esm/generated/codama/accounts/borrowerState.js +24 -27
  256. package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -1
  257. package/dist/esm/generated/codama/accounts/configState.js +53 -56
  258. package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
  259. package/dist/esm/generated/codama/accounts/contractState.js +53 -57
  260. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
  261. package/dist/esm/generated/codama/accounts/fleet.js +41 -38
  262. package/dist/esm/generated/codama/accounts/fleet.js.map +1 -1
  263. package/dist/esm/generated/codama/accounts/index.js +4 -6
  264. package/dist/esm/generated/codama/accounts/index.js.map +1 -1
  265. package/dist/esm/generated/codama/accounts/rentalState.js +45 -40
  266. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
  267. package/dist/esm/generated/codama/accounts/thread.js +43 -52
  268. package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
  269. package/dist/esm/generated/codama/errors/index.js +1 -1
  270. package/dist/esm/generated/codama/errors/srsly.js +70 -49
  271. package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
  272. package/dist/esm/generated/codama/index.js +5 -5
  273. package/dist/esm/generated/codama/instructions/acceptRental.js +81 -157
  274. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
  275. package/dist/esm/generated/codama/instructions/activateRental.js +169 -34
  276. package/dist/esm/generated/codama/instructions/activateRental.js.map +1 -1
  277. package/dist/esm/generated/codama/instructions/cancelRental.js +71 -54
  278. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
  279. package/dist/esm/generated/codama/instructions/claimBorrower.js +29 -24
  280. package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -1
  281. package/dist/esm/generated/codama/instructions/{claimContractPayments.js → claimContract.js} +36 -64
  282. package/dist/esm/generated/codama/instructions/claimContract.js.map +1 -0
  283. package/dist/esm/generated/codama/instructions/closeBorrower.js +107 -9
  284. package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -1
  285. package/dist/esm/generated/codama/instructions/closeContract.js +85 -37
  286. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
  287. package/dist/esm/generated/codama/instructions/closeContractThread.js +157 -0
  288. package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -0
  289. package/dist/esm/generated/codama/instructions/closeRental.js +12 -127
  290. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
  291. package/dist/esm/generated/codama/instructions/createBorrower.js +187 -0
  292. package/dist/esm/generated/codama/instructions/createBorrower.js.map +1 -0
  293. package/dist/esm/generated/codama/instructions/createConfig.js +24 -24
  294. package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -1
  295. package/dist/esm/generated/codama/instructions/createContract.js +62 -32
  296. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
  297. package/dist/esm/generated/codama/instructions/createContractThread.js +307 -0
  298. package/dist/esm/generated/codama/instructions/createContractThread.js.map +1 -0
  299. package/dist/esm/generated/codama/instructions/deleteBorrower.js +8 -19
  300. package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -1
  301. package/dist/esm/generated/codama/instructions/deleteConfig.js +18 -18
  302. package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -1
  303. package/dist/esm/generated/codama/instructions/deleteContract.js +8 -8
  304. package/dist/esm/generated/codama/instructions/deleteRental.js +8 -8
  305. package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -1
  306. package/dist/esm/generated/codama/instructions/index.js +25 -25
  307. package/dist/esm/generated/codama/instructions/index.js.map +1 -1
  308. package/dist/esm/generated/codama/instructions/invalidateRental.js +8 -8
  309. package/dist/esm/generated/codama/instructions/processContract.js +214 -0
  310. package/dist/esm/generated/codama/instructions/processContract.js.map +1 -0
  311. package/dist/esm/generated/codama/instructions/releaseRental.js +8 -8
  312. package/dist/esm/generated/codama/instructions/reserveRental.js +117 -62
  313. package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
  314. package/dist/esm/generated/codama/instructions/setDelegate.js +9 -9
  315. package/dist/esm/generated/codama/instructions/updateBorrower.js +17 -52
  316. package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -1
  317. package/dist/esm/generated/codama/instructions/updateConfig.js +40 -58
  318. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
  319. package/dist/esm/generated/codama/instructions/updateContract.js +20 -28
  320. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
  321. package/dist/esm/generated/codama/instructions/updateContractThread.js +167 -0
  322. package/dist/esm/generated/codama/instructions/updateContractThread.js.map +1 -0
  323. package/dist/esm/generated/codama/programs/index.js +1 -1
  324. package/dist/esm/generated/codama/programs/srsly.js +42 -50
  325. package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
  326. package/dist/esm/generated/codama/shared/index.js +9 -9
  327. package/dist/esm/generated/codama/types/atlasClaimed.js +9 -9
  328. package/dist/esm/generated/codama/types/borrowerInitialized.js +5 -5
  329. package/dist/esm/generated/codama/types/cargoStats.js +19 -19
  330. package/dist/esm/generated/codama/types/combatStats.js +44 -0
  331. package/dist/esm/generated/codama/types/combatStats.js.map +1 -0
  332. package/dist/esm/generated/codama/types/contractClosed.js +7 -7
  333. package/dist/esm/generated/codama/types/contractCreated.js +9 -9
  334. package/dist/esm/generated/codama/types/contractDelegateSet.js +7 -7
  335. package/dist/esm/generated/codama/types/contractPendingClose.js +26 -0
  336. package/dist/esm/generated/codama/types/contractPendingClose.js.map +1 -0
  337. package/dist/esm/generated/codama/types/contractProcessed.js +28 -0
  338. package/dist/esm/generated/codama/types/contractProcessed.js.map +1 -0
  339. package/dist/esm/generated/codama/types/contractThreadClosed.js +24 -0
  340. package/dist/esm/generated/codama/types/contractThreadClosed.js.map +1 -0
  341. package/dist/esm/generated/codama/types/contractThreadCreated.js +24 -0
  342. package/dist/esm/generated/codama/types/contractThreadCreated.js.map +1 -0
  343. package/dist/esm/generated/codama/types/contractThreadUpdated.js +34 -0
  344. package/dist/esm/generated/codama/types/contractThreadUpdated.js.map +1 -0
  345. package/dist/esm/generated/codama/types/contractUpdated.js +10 -10
  346. package/dist/esm/generated/codama/types/discountAuthorization.js +30 -0
  347. package/dist/esm/generated/codama/types/discountAuthorization.js.map +1 -0
  348. package/dist/esm/generated/codama/types/fieldUpdate.js +5 -5
  349. package/dist/esm/generated/codama/types/fleet.js +69 -0
  350. package/dist/esm/generated/codama/types/fleet.js.map +1 -0
  351. package/dist/esm/generated/codama/types/index.js +34 -29
  352. package/dist/esm/generated/codama/types/index.js.map +1 -1
  353. package/dist/esm/generated/codama/types/miscStats.js +23 -23
  354. package/dist/esm/generated/codama/types/movementStats.js +15 -15
  355. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js +3 -3
  356. package/dist/esm/generated/codama/types/queuedRentalRefunded.js +28 -0
  357. package/dist/esm/generated/codama/types/queuedRentalRefunded.js.map +1 -0
  358. package/dist/esm/generated/codama/types/rentalAccepted.js +11 -19
  359. package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -1
  360. package/dist/esm/generated/codama/types/rentalActivated.js +9 -7
  361. package/dist/esm/generated/codama/types/rentalActivated.js.map +1 -1
  362. package/dist/esm/generated/codama/types/rentalCancelled.js +11 -11
  363. package/dist/esm/generated/codama/types/rentalClosed.js +9 -9
  364. package/dist/esm/generated/codama/types/rentalExpired.js +26 -0
  365. package/dist/esm/generated/codama/types/rentalExpired.js.map +1 -0
  366. package/dist/esm/generated/codama/types/rentalStatus.js +5 -4
  367. package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -1
  368. package/dist/esm/generated/codama/types/reservationCreated.js +15 -11
  369. package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -1
  370. package/dist/esm/generated/codama/types/reservationKnockoff.js +11 -11
  371. package/dist/esm/generated/codama/types/schedule.js +15 -15
  372. package/dist/esm/generated/codama/types/shipCounts.js +21 -21
  373. package/dist/esm/generated/codama/types/shipStats.js +10 -8
  374. package/dist/esm/generated/codama/types/shipStats.js.map +1 -1
  375. package/dist/esm/generated/codama/types/signal.js +28 -14
  376. package/dist/esm/generated/codama/types/signal.js.map +1 -1
  377. package/dist/esm/generated/codama/types/thread.js +57 -0
  378. package/dist/esm/generated/codama/types/thread.js.map +1 -0
  379. package/dist/esm/generated/codama/types/trigger.js +37 -37
  380. package/dist/esm/index.js +1 -84
  381. package/dist/esm/index.js.map +1 -1
  382. package/dist/esm/instructions/acceptRental.js +91 -86
  383. package/dist/esm/instructions/acceptRental.js.map +1 -1
  384. package/dist/esm/instructions/activateRental.js +95 -0
  385. package/dist/esm/instructions/activateRental.js.map +1 -0
  386. package/dist/esm/instructions/approveAffiliate.js +7 -0
  387. package/dist/esm/instructions/approveAffiliate.js.map +1 -0
  388. package/dist/esm/instructions/cancelRental.js +33 -24
  389. package/dist/esm/instructions/cancelRental.js.map +1 -1
  390. package/dist/esm/instructions/claimBorrower.js +49 -23
  391. package/dist/esm/instructions/claimBorrower.js.map +1 -1
  392. package/dist/esm/instructions/claimContract.js +53 -0
  393. package/dist/esm/instructions/claimContract.js.map +1 -0
  394. package/dist/esm/instructions/closeBorrower.js +22 -24
  395. package/dist/esm/instructions/closeBorrower.js.map +1 -1
  396. package/dist/esm/instructions/closeContract.js +63 -23
  397. package/dist/esm/instructions/closeContract.js.map +1 -1
  398. package/dist/esm/instructions/closeContractThread.js +61 -0
  399. package/dist/esm/instructions/closeContractThread.js.map +1 -0
  400. package/dist/esm/instructions/closeRental.js +36 -47
  401. package/dist/esm/instructions/closeRental.js.map +1 -1
  402. package/dist/esm/instructions/createAffiliate.js +70 -0
  403. package/dist/esm/instructions/createAffiliate.js.map +1 -0
  404. package/dist/esm/instructions/createBorrower.js +43 -0
  405. package/dist/esm/instructions/createBorrower.js.map +1 -0
  406. package/dist/esm/instructions/createContract.js +47 -41
  407. package/dist/esm/instructions/createContract.js.map +1 -1
  408. package/dist/esm/instructions/createContractThread.js +99 -0
  409. package/dist/esm/instructions/createContractThread.js.map +1 -0
  410. package/dist/esm/instructions/deleteBorrower.js +13 -13
  411. package/dist/esm/instructions/deleteBorrower.js.map +1 -1
  412. package/dist/esm/instructions/deleteConfig.js +17 -6
  413. package/dist/esm/instructions/deleteConfig.js.map +1 -1
  414. package/dist/esm/instructions/deleteRental.js +1 -4
  415. package/dist/esm/instructions/deleteRental.js.map +1 -1
  416. package/dist/esm/instructions/index.js +33 -0
  417. package/dist/esm/instructions/index.js.map +1 -0
  418. package/dist/esm/instructions/removeAffiliate.js +7 -0
  419. package/dist/esm/instructions/removeAffiliate.js.map +1 -0
  420. package/dist/esm/instructions/reserveRental.js +97 -73
  421. package/dist/esm/instructions/reserveRental.js.map +1 -1
  422. package/dist/esm/instructions/updateAffiliate.js +54 -0
  423. package/dist/esm/instructions/updateAffiliate.js.map +1 -0
  424. package/dist/esm/instructions/updateBorrower.js +45 -39
  425. package/dist/esm/instructions/updateBorrower.js.map +1 -1
  426. package/dist/esm/instructions/updateConfig.js +0 -4
  427. package/dist/esm/instructions/updateConfig.js.map +1 -1
  428. package/dist/esm/instructions/updateContract.js +20 -36
  429. package/dist/esm/instructions/updateContract.js.map +1 -1
  430. package/dist/esm/instructions/updateContractThread.js +57 -0
  431. package/dist/esm/instructions/updateContractThread.js.map +1 -0
  432. package/dist/esm/kit/index.js +26 -0
  433. package/dist/esm/kit/index.js.map +1 -0
  434. package/dist/esm/legacy/index.js +84 -0
  435. package/dist/esm/legacy/index.js.map +1 -0
  436. package/dist/esm/package.json +5 -3
  437. package/dist/esm/params/amount.js +4 -4
  438. package/dist/esm/params/index.js +5 -0
  439. package/dist/esm/params/index.js.map +1 -0
  440. package/dist/esm/params/sol.js +68 -0
  441. package/dist/esm/params/sol.js.map +1 -0
  442. package/dist/esm/pda/constants.js +6 -1
  443. package/dist/esm/pda/constants.js.map +1 -1
  444. package/dist/esm/pda/index.js +4 -22
  445. package/dist/esm/pda/index.js.map +1 -1
  446. package/dist/esm/pda/lookupTable.js +3 -2
  447. package/dist/esm/pda/lookupTable.js.map +1 -1
  448. package/dist/esm/pda/sage.js +11 -10
  449. package/dist/esm/pda/sage.js.map +1 -1
  450. package/dist/esm/pda/slyvault.js +2 -47
  451. package/dist/esm/pda/slyvault.js.map +1 -1
  452. package/dist/esm/pda/srsly.js +38 -19
  453. package/dist/esm/pda/srsly.js.map +1 -1
  454. package/dist/esm/pda/thread.js +40 -31
  455. package/dist/esm/pda/thread.js.map +1 -1
  456. package/dist/esm/pda/token.js +5 -4
  457. package/dist/esm/pda/token.js.map +1 -1
  458. package/dist/esm/utils/addresses.js +3 -2
  459. package/dist/esm/utils/addresses.js.map +1 -1
  460. package/dist/esm/utils/config.js +19 -2
  461. package/dist/esm/utils/config.js.map +1 -1
  462. package/dist/esm/utils/discountAuth.js +155 -0
  463. package/dist/esm/utils/discountAuth.js.map +1 -0
  464. package/dist/esm/utils/index.js +7 -1
  465. package/dist/esm/utils/index.js.map +1 -1
  466. package/dist/esm/utils/instructionResult.js +72 -0
  467. package/dist/esm/utils/instructionResult.js.map +1 -0
  468. package/dist/esm/utils/instructions.js +12 -17
  469. package/dist/esm/utils/instructions.js.map +1 -1
  470. package/dist/esm/utils/rental.js +45 -0
  471. package/dist/esm/utils/rental.js.map +1 -0
  472. package/dist/esm/utils/signer.js +16 -9
  473. package/dist/esm/utils/signer.js.map +1 -1
  474. package/dist/esm/version.js +1 -1
  475. package/dist/idl/srsly.json +2518 -3336
  476. package/dist/types/accounts/borrower.d.ts +19 -0
  477. package/dist/types/accounts/borrower.d.ts.map +1 -1
  478. package/dist/types/accounts/config.d.ts +19 -0
  479. package/dist/types/accounts/config.d.ts.map +1 -1
  480. package/dist/types/accounts/contract.d.ts +19 -0
  481. package/dist/types/accounts/contract.d.ts.map +1 -1
  482. package/dist/types/accounts/fleet.d.ts +5 -30
  483. package/dist/types/accounts/fleet.d.ts.map +1 -1
  484. package/dist/types/accounts/index.d.ts +8 -0
  485. package/dist/types/accounts/index.d.ts.map +1 -0
  486. package/dist/types/accounts/member.d.ts +9 -0
  487. package/dist/types/accounts/member.d.ts.map +1 -0
  488. package/dist/types/accounts/rental.d.ts +19 -0
  489. package/dist/types/accounts/rental.d.ts.map +1 -1
  490. package/dist/types/accounts/thread.d.ts +21 -0
  491. package/dist/types/accounts/thread.d.ts.map +1 -0
  492. package/dist/types/demos.d.ts +55 -4
  493. package/dist/types/demos.d.ts.map +1 -1
  494. package/dist/types/generated/codama/accounts/borrowerState.d.ts +6 -15
  495. package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -1
  496. package/dist/types/generated/codama/accounts/configState.d.ts +8 -21
  497. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
  498. package/dist/types/generated/codama/accounts/contractState.d.ts +59 -79
  499. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
  500. package/dist/types/generated/codama/accounts/fleet.d.ts +5 -2
  501. package/dist/types/generated/codama/accounts/fleet.d.ts.map +1 -1
  502. package/dist/types/generated/codama/accounts/index.d.ts +4 -6
  503. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
  504. package/dist/types/generated/codama/accounts/rentalState.d.ts +49 -42
  505. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
  506. package/dist/types/generated/codama/accounts/thread.d.ts +5 -8
  507. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
  508. package/dist/types/generated/codama/errors/index.d.ts +1 -1
  509. package/dist/types/generated/codama/errors/srsly.d.ts +55 -41
  510. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
  511. package/dist/types/generated/codama/index.d.ts +5 -5
  512. package/dist/types/generated/codama/instructions/acceptRental.d.ts +61 -77
  513. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
  514. package/dist/types/generated/codama/instructions/activateRental.d.ts +78 -34
  515. package/dist/types/generated/codama/instructions/activateRental.d.ts.map +1 -1
  516. package/dist/types/generated/codama/instructions/cancelRental.d.ts +39 -24
  517. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
  518. package/dist/types/generated/codama/instructions/claimBorrower.d.ts +27 -35
  519. package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -1
  520. package/dist/types/generated/codama/instructions/claimContract.d.ts +79 -0
  521. package/dist/types/generated/codama/instructions/claimContract.d.ts.map +1 -0
  522. package/dist/types/generated/codama/instructions/closeBorrower.d.ts +51 -11
  523. package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -1
  524. package/dist/types/generated/codama/instructions/closeContract.d.ts +65 -25
  525. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
  526. package/dist/types/generated/codama/instructions/closeContractThread.d.ts +70 -0
  527. package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -0
  528. package/dist/types/generated/codama/instructions/closeRental.d.ts +20 -62
  529. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
  530. package/dist/types/generated/codama/instructions/createBorrower.d.ts +71 -0
  531. package/dist/types/generated/codama/instructions/createBorrower.d.ts.map +1 -0
  532. package/dist/types/generated/codama/instructions/createConfig.d.ts +5 -5
  533. package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -1
  534. package/dist/types/generated/codama/instructions/createContract.d.ts +40 -40
  535. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
  536. package/dist/types/generated/codama/instructions/createContractThread.d.ts +133 -0
  537. package/dist/types/generated/codama/instructions/createContractThread.d.ts.map +1 -0
  538. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +3 -3
  539. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -1
  540. package/dist/types/generated/codama/instructions/deleteConfig.d.ts +3 -3
  541. package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -1
  542. package/dist/types/generated/codama/instructions/deleteContract.d.ts +2 -2
  543. package/dist/types/generated/codama/instructions/deleteRental.d.ts +5 -2
  544. package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -1
  545. package/dist/types/generated/codama/instructions/index.d.ts +25 -25
  546. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
  547. package/dist/types/generated/codama/instructions/invalidateRental.d.ts +2 -2
  548. package/dist/types/generated/codama/instructions/processContract.d.ts +100 -0
  549. package/dist/types/generated/codama/instructions/processContract.d.ts.map +1 -0
  550. package/dist/types/generated/codama/instructions/releaseRental.d.ts +2 -2
  551. package/dist/types/generated/codama/instructions/reserveRental.d.ts +97 -69
  552. package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
  553. package/dist/types/generated/codama/instructions/setDelegate.d.ts +3 -3
  554. package/dist/types/generated/codama/instructions/updateBorrower.d.ts +24 -22
  555. package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -1
  556. package/dist/types/generated/codama/instructions/updateConfig.d.ts +34 -59
  557. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
  558. package/dist/types/generated/codama/instructions/updateContract.d.ts +22 -28
  559. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
  560. package/dist/types/generated/codama/instructions/updateContractThread.d.ts +76 -0
  561. package/dist/types/generated/codama/instructions/updateContractThread.d.ts.map +1 -0
  562. package/dist/types/generated/codama/programs/index.d.ts +1 -1
  563. package/dist/types/generated/codama/programs/srsly.d.ts +37 -39
  564. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
  565. package/dist/types/generated/codama/shared/index.d.ts +2 -2
  566. package/dist/types/generated/codama/types/atlasClaimed.d.ts +1 -1
  567. package/dist/types/generated/codama/types/borrowerInitialized.d.ts +1 -1
  568. package/dist/types/generated/codama/types/cargoStats.d.ts +1 -1
  569. package/dist/types/generated/codama/types/combatStats.d.ts +28 -0
  570. package/dist/types/generated/codama/types/combatStats.d.ts.map +1 -0
  571. package/dist/types/generated/codama/types/contractClosed.d.ts +1 -1
  572. package/dist/types/generated/codama/types/contractCreated.d.ts +1 -1
  573. package/dist/types/generated/codama/types/contractDelegateSet.d.ts +1 -1
  574. package/dist/types/generated/codama/types/contractPendingClose.d.ts +18 -0
  575. package/dist/types/generated/codama/types/contractPendingClose.d.ts.map +1 -0
  576. package/dist/types/generated/codama/types/contractProcessed.d.ts +24 -0
  577. package/dist/types/generated/codama/types/contractProcessed.d.ts.map +1 -0
  578. package/dist/types/generated/codama/types/contractThreadClosed.d.ts +17 -0
  579. package/dist/types/generated/codama/types/contractThreadClosed.d.ts.map +1 -0
  580. package/dist/types/generated/codama/types/contractThreadCreated.d.ts +17 -0
  581. package/dist/types/generated/codama/types/contractThreadCreated.d.ts.map +1 -0
  582. package/dist/types/generated/codama/types/contractThreadUpdated.d.ts +24 -0
  583. package/dist/types/generated/codama/types/contractThreadUpdated.d.ts.map +1 -0
  584. package/dist/types/generated/codama/types/contractUpdated.d.ts +2 -2
  585. package/dist/types/generated/codama/types/discountAuthorization.d.ts +40 -0
  586. package/dist/types/generated/codama/types/discountAuthorization.d.ts.map +1 -0
  587. package/dist/types/generated/codama/types/fieldUpdate.d.ts +1 -1
  588. package/dist/types/generated/codama/types/fleet.d.ts +66 -0
  589. package/dist/types/generated/codama/types/fleet.d.ts.map +1 -0
  590. package/dist/types/generated/codama/types/index.d.ts +34 -29
  591. package/dist/types/generated/codama/types/index.d.ts.map +1 -1
  592. package/dist/types/generated/codama/types/miscStats.d.ts +1 -1
  593. package/dist/types/generated/codama/types/movementStats.d.ts +1 -1
  594. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts +1 -1
  595. package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts +24 -0
  596. package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts.map +1 -0
  597. package/dist/types/generated/codama/types/rentalAccepted.d.ts +3 -11
  598. package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -1
  599. package/dist/types/generated/codama/types/rentalActivated.d.ts +8 -2
  600. package/dist/types/generated/codama/types/rentalActivated.d.ts.map +1 -1
  601. package/dist/types/generated/codama/types/rentalCancelled.d.ts +1 -1
  602. package/dist/types/generated/codama/types/rentalClosed.d.ts +1 -1
  603. package/dist/types/generated/codama/types/rentalExpired.d.ts +18 -0
  604. package/dist/types/generated/codama/types/rentalExpired.d.ts.map +1 -0
  605. package/dist/types/generated/codama/types/rentalStatus.d.ts +5 -4
  606. package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -1
  607. package/dist/types/generated/codama/types/reservationCreated.d.ts +11 -7
  608. package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -1
  609. package/dist/types/generated/codama/types/reservationKnockoff.d.ts +1 -1
  610. package/dist/types/generated/codama/types/schedule.d.ts +11 -11
  611. package/dist/types/generated/codama/types/shipCounts.d.ts +1 -1
  612. package/dist/types/generated/codama/types/shipStats.d.ts +4 -2
  613. package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -1
  614. package/dist/types/generated/codama/types/signal.d.ts +27 -23
  615. package/dist/types/generated/codama/types/signal.d.ts.map +1 -1
  616. package/dist/types/generated/codama/types/thread.d.ts +54 -0
  617. package/dist/types/generated/codama/types/thread.d.ts.map +1 -0
  618. package/dist/types/generated/codama/types/trigger.d.ts +23 -23
  619. package/dist/types/index.d.ts +1 -37
  620. package/dist/types/index.d.ts.map +1 -1
  621. package/dist/types/instructions/acceptRental.d.ts +33 -33
  622. package/dist/types/instructions/acceptRental.d.ts.map +1 -1
  623. package/dist/types/instructions/activateRental.d.ts +46 -0
  624. package/dist/types/instructions/activateRental.d.ts.map +1 -0
  625. package/dist/types/instructions/approveAffiliate.d.ts +7 -0
  626. package/dist/types/instructions/approveAffiliate.d.ts.map +1 -0
  627. package/dist/types/instructions/cancelRental.d.ts +10 -15
  628. package/dist/types/instructions/cancelRental.d.ts.map +1 -1
  629. package/dist/types/instructions/claimBorrower.d.ts +38 -10
  630. package/dist/types/instructions/claimBorrower.d.ts.map +1 -1
  631. package/dist/types/instructions/claimContract.d.ts +40 -0
  632. package/dist/types/instructions/claimContract.d.ts.map +1 -0
  633. package/dist/types/instructions/closeBorrower.d.ts +17 -11
  634. package/dist/types/instructions/closeBorrower.d.ts.map +1 -1
  635. package/dist/types/instructions/closeContract.d.ts +8 -15
  636. package/dist/types/instructions/closeContract.d.ts.map +1 -1
  637. package/dist/types/instructions/closeContractThread.d.ts +40 -0
  638. package/dist/types/instructions/closeContractThread.d.ts.map +1 -0
  639. package/dist/types/instructions/closeRental.d.ts +11 -12
  640. package/dist/types/instructions/closeRental.d.ts.map +1 -1
  641. package/dist/types/instructions/createAffiliate.d.ts +66 -0
  642. package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
  643. package/dist/types/instructions/createBorrower.d.ts +36 -0
  644. package/dist/types/instructions/createBorrower.d.ts.map +1 -0
  645. package/dist/types/instructions/createContract.d.ts +27 -43
  646. package/dist/types/instructions/createContract.d.ts.map +1 -1
  647. package/dist/types/instructions/createContractThread.d.ts +52 -0
  648. package/dist/types/instructions/createContractThread.d.ts.map +1 -0
  649. package/dist/types/instructions/deleteBorrower.d.ts +14 -11
  650. package/dist/types/instructions/deleteBorrower.d.ts.map +1 -1
  651. package/dist/types/instructions/deleteConfig.d.ts +4 -2
  652. package/dist/types/instructions/deleteConfig.d.ts.map +1 -1
  653. package/dist/types/instructions/deleteRental.d.ts +3 -2
  654. package/dist/types/instructions/deleteRental.d.ts.map +1 -1
  655. package/dist/types/instructions/index.d.ts +33 -0
  656. package/dist/types/instructions/index.d.ts.map +1 -0
  657. package/dist/types/instructions/removeAffiliate.d.ts +7 -0
  658. package/dist/types/instructions/removeAffiliate.d.ts.map +1 -0
  659. package/dist/types/instructions/reserveRental.d.ts +43 -29
  660. package/dist/types/instructions/reserveRental.d.ts.map +1 -1
  661. package/dist/types/instructions/updateAffiliate.d.ts +64 -0
  662. package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
  663. package/dist/types/instructions/updateBorrower.d.ts +23 -29
  664. package/dist/types/instructions/updateBorrower.d.ts.map +1 -1
  665. package/dist/types/instructions/updateConfig.d.ts +0 -13
  666. package/dist/types/instructions/updateConfig.d.ts.map +1 -1
  667. package/dist/types/instructions/updateContract.d.ts +22 -35
  668. package/dist/types/instructions/updateContract.d.ts.map +1 -1
  669. package/dist/types/instructions/updateContractThread.d.ts +48 -0
  670. package/dist/types/instructions/updateContractThread.d.ts.map +1 -0
  671. package/dist/types/kit/index.d.ts +25 -0
  672. package/dist/types/kit/index.d.ts.map +1 -0
  673. package/dist/types/legacy/index.d.ts +63 -0
  674. package/dist/types/legacy/index.d.ts.map +1 -0
  675. package/dist/types/params/amount.d.ts +3 -3
  676. package/dist/types/params/index.d.ts +5 -0
  677. package/dist/types/params/index.d.ts.map +1 -0
  678. package/dist/types/params/sol.d.ts +34 -0
  679. package/dist/types/params/sol.d.ts.map +1 -0
  680. package/dist/types/pda/constants.d.ts +6 -1
  681. package/dist/types/pda/constants.d.ts.map +1 -1
  682. package/dist/types/pda/index.d.ts +5 -22
  683. package/dist/types/pda/index.d.ts.map +1 -1
  684. package/dist/types/pda/lookupTable.d.ts +2 -1
  685. package/dist/types/pda/lookupTable.d.ts.map +1 -1
  686. package/dist/types/pda/sage.d.ts +6 -5
  687. package/dist/types/pda/sage.d.ts.map +1 -1
  688. package/dist/types/pda/slyvault.d.ts +2 -23
  689. package/dist/types/pda/slyvault.d.ts.map +1 -1
  690. package/dist/types/pda/srsly.d.ts +21 -8
  691. package/dist/types/pda/srsly.d.ts.map +1 -1
  692. package/dist/types/pda/thread.d.ts +18 -18
  693. package/dist/types/pda/thread.d.ts.map +1 -1
  694. package/dist/types/pda/token.d.ts +2 -1
  695. package/dist/types/pda/token.d.ts.map +1 -1
  696. package/dist/types/utils/addresses.d.ts +5 -1
  697. package/dist/types/utils/addresses.d.ts.map +1 -1
  698. package/dist/types/utils/config.d.ts +48 -0
  699. package/dist/types/utils/config.d.ts.map +1 -1
  700. package/dist/types/utils/discountAuth.d.ts +94 -0
  701. package/dist/types/utils/discountAuth.d.ts.map +1 -0
  702. package/dist/types/utils/index.d.ts +4 -1
  703. package/dist/types/utils/index.d.ts.map +1 -1
  704. package/dist/types/utils/instructionResult.d.ts +57 -0
  705. package/dist/types/utils/instructionResult.d.ts.map +1 -0
  706. package/dist/types/utils/instructions.d.ts +16 -18
  707. package/dist/types/utils/instructions.d.ts.map +1 -1
  708. package/dist/types/utils/rental.d.ts +22 -0
  709. package/dist/types/utils/rental.d.ts.map +1 -0
  710. package/dist/types/utils/signer.d.ts +5 -2
  711. package/dist/types/utils/signer.d.ts.map +1 -1
  712. package/dist/types/version.d.ts +1 -1
  713. package/package.json +38 -21
  714. package/dist/cjs/generated/codama/accounts/memberState.js +0 -78
  715. package/dist/cjs/generated/codama/accounts/memberState.js.map +0 -1
  716. package/dist/cjs/generated/codama/accounts/vaultState.js +0 -82
  717. package/dist/cjs/generated/codama/accounts/vaultState.js.map +0 -1
  718. package/dist/cjs/generated/codama/instructions/claimContractPayments.js.map +0 -1
  719. package/dist/cjs/generated/codama/instructions/claimRental.js +0 -361
  720. package/dist/cjs/generated/codama/instructions/claimRental.js.map +0 -1
  721. package/dist/cjs/generated/codama/instructions/discountBorrower.js +0 -118
  722. package/dist/cjs/generated/codama/instructions/discountBorrower.js.map +0 -1
  723. package/dist/cjs/generated/codama/instructions/payRental.js +0 -290
  724. package/dist/cjs/generated/codama/instructions/payRental.js.map +0 -1
  725. package/dist/cjs/generated/codama/instructions/scheduleRental.js +0 -252
  726. package/dist/cjs/generated/codama/instructions/scheduleRental.js.map +0 -1
  727. package/dist/cjs/generated/codama/types/borrowerDiscountSet.js +0 -29
  728. package/dist/cjs/generated/codama/types/borrowerDiscountSet.js.map +0 -1
  729. package/dist/cjs/generated/codama/types/memberConfig.js +0 -33
  730. package/dist/cjs/generated/codama/types/memberConfig.js.map +0 -1
  731. package/dist/cjs/generated/codama/types/memberType.js +0 -57
  732. package/dist/cjs/generated/codama/types/memberType.js.map +0 -1
  733. package/dist/cjs/generated/codama/types/paymentFrequency.js +0 -36
  734. package/dist/cjs/generated/codama/types/paymentFrequency.js.map +0 -1
  735. package/dist/cjs/generated/codama/types/rebateAuthorization.js +0 -35
  736. package/dist/cjs/generated/codama/types/rebateAuthorization.js.map +0 -1
  737. package/dist/cjs/generated/codama/types/rentalClaimed.js +0 -41
  738. package/dist/cjs/generated/codama/types/rentalClaimed.js.map +0 -1
  739. package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js +0 -33
  740. package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js.map +0 -1
  741. package/dist/cjs/generated/codama/types/rentalScheduled.js +0 -35
  742. package/dist/cjs/generated/codama/types/rentalScheduled.js.map +0 -1
  743. package/dist/cjs/instructions/claimContractPayments.js +0 -79
  744. package/dist/cjs/instructions/claimContractPayments.js.map +0 -1
  745. package/dist/cjs/instructions/claimRental.js +0 -155
  746. package/dist/cjs/instructions/claimRental.js.map +0 -1
  747. package/dist/cjs/instructions/discountBorrower.js +0 -75
  748. package/dist/cjs/instructions/discountBorrower.js.map +0 -1
  749. package/dist/esm/generated/codama/accounts/memberState.js +0 -66
  750. package/dist/esm/generated/codama/accounts/memberState.js.map +0 -1
  751. package/dist/esm/generated/codama/accounts/vaultState.js +0 -70
  752. package/dist/esm/generated/codama/accounts/vaultState.js.map +0 -1
  753. package/dist/esm/generated/codama/instructions/claimContractPayments.js.map +0 -1
  754. package/dist/esm/generated/codama/instructions/claimRental.js +0 -351
  755. package/dist/esm/generated/codama/instructions/claimRental.js.map +0 -1
  756. package/dist/esm/generated/codama/instructions/discountBorrower.js +0 -108
  757. package/dist/esm/generated/codama/instructions/discountBorrower.js.map +0 -1
  758. package/dist/esm/generated/codama/instructions/payRental.js +0 -280
  759. package/dist/esm/generated/codama/instructions/payRental.js.map +0 -1
  760. package/dist/esm/generated/codama/instructions/scheduleRental.js +0 -242
  761. package/dist/esm/generated/codama/instructions/scheduleRental.js.map +0 -1
  762. package/dist/esm/generated/codama/types/borrowerDiscountSet.js +0 -24
  763. package/dist/esm/generated/codama/types/borrowerDiscountSet.js.map +0 -1
  764. package/dist/esm/generated/codama/types/memberConfig.js +0 -28
  765. package/dist/esm/generated/codama/types/memberConfig.js.map +0 -1
  766. package/dist/esm/generated/codama/types/memberType.js +0 -50
  767. package/dist/esm/generated/codama/types/memberType.js.map +0 -1
  768. package/dist/esm/generated/codama/types/paymentFrequency.js +0 -30
  769. package/dist/esm/generated/codama/types/paymentFrequency.js.map +0 -1
  770. package/dist/esm/generated/codama/types/rebateAuthorization.js +0 -30
  771. package/dist/esm/generated/codama/types/rebateAuthorization.js.map +0 -1
  772. package/dist/esm/generated/codama/types/rentalClaimed.js +0 -36
  773. package/dist/esm/generated/codama/types/rentalClaimed.js.map +0 -1
  774. package/dist/esm/generated/codama/types/rentalPaymentProcessed.js +0 -28
  775. package/dist/esm/generated/codama/types/rentalPaymentProcessed.js.map +0 -1
  776. package/dist/esm/generated/codama/types/rentalScheduled.js +0 -30
  777. package/dist/esm/generated/codama/types/rentalScheduled.js.map +0 -1
  778. package/dist/esm/instructions/claimContractPayments.js +0 -76
  779. package/dist/esm/instructions/claimContractPayments.js.map +0 -1
  780. package/dist/esm/instructions/claimRental.js +0 -152
  781. package/dist/esm/instructions/claimRental.js.map +0 -1
  782. package/dist/esm/instructions/discountBorrower.js +0 -72
  783. package/dist/esm/instructions/discountBorrower.js.map +0 -1
  784. package/dist/types/generated/codama/accounts/memberState.d.ts +0 -58
  785. package/dist/types/generated/codama/accounts/memberState.d.ts.map +0 -1
  786. package/dist/types/generated/codama/accounts/vaultState.d.ts +0 -66
  787. package/dist/types/generated/codama/accounts/vaultState.d.ts.map +0 -1
  788. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts +0 -98
  789. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts.map +0 -1
  790. package/dist/types/generated/codama/instructions/claimRental.d.ts +0 -136
  791. package/dist/types/generated/codama/instructions/claimRental.d.ts.map +0 -1
  792. package/dist/types/generated/codama/instructions/discountBorrower.d.ts +0 -56
  793. package/dist/types/generated/codama/instructions/discountBorrower.d.ts.map +0 -1
  794. package/dist/types/generated/codama/instructions/payRental.d.ts +0 -140
  795. package/dist/types/generated/codama/instructions/payRental.d.ts.map +0 -1
  796. package/dist/types/generated/codama/instructions/scheduleRental.d.ts +0 -102
  797. package/dist/types/generated/codama/instructions/scheduleRental.d.ts.map +0 -1
  798. package/dist/types/generated/codama/types/borrowerDiscountSet.d.ts +0 -20
  799. package/dist/types/generated/codama/types/borrowerDiscountSet.d.ts.map +0 -1
  800. package/dist/types/generated/codama/types/memberConfig.d.ts +0 -33
  801. package/dist/types/generated/codama/types/memberConfig.d.ts.map +0 -1
  802. package/dist/types/generated/codama/types/memberType.d.ts +0 -57
  803. package/dist/types/generated/codama/types/memberType.d.ts.map +0 -1
  804. package/dist/types/generated/codama/types/paymentFrequency.d.ts +0 -24
  805. package/dist/types/generated/codama/types/paymentFrequency.d.ts.map +0 -1
  806. package/dist/types/generated/codama/types/rebateAuthorization.d.ts +0 -40
  807. package/dist/types/generated/codama/types/rebateAuthorization.d.ts.map +0 -1
  808. package/dist/types/generated/codama/types/rentalClaimed.d.ts +0 -32
  809. package/dist/types/generated/codama/types/rentalClaimed.d.ts.map +0 -1
  810. package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts +0 -24
  811. package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts.map +0 -1
  812. package/dist/types/generated/codama/types/rentalScheduled.d.ts +0 -20
  813. package/dist/types/generated/codama/types/rentalScheduled.d.ts.map +0 -1
  814. package/dist/types/instructions/claimContractPayments.d.ts +0 -78
  815. package/dist/types/instructions/claimContractPayments.d.ts.map +0 -1
  816. package/dist/types/instructions/claimRental.d.ts +0 -88
  817. package/dist/types/instructions/claimRental.d.ts.map +0 -1
  818. package/dist/types/instructions/discountBorrower.d.ts +0 -64
  819. package/dist/types/instructions/discountBorrower.d.ts.map +0 -1
@@ -8,20 +8,22 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.acceptRental = acceptRental;
10
10
  const kit_1 = require("@solana/kit");
11
- const rpc_1 = require("../utils/rpc");
12
11
  const instructions_1 = require("../generated/codama/instructions");
13
12
  const config_1 = require("../utils/config");
14
13
  const signer_1 = require("../utils/signer");
14
+ const amount_1 = require("../params/amount");
15
15
  const duration_1 = require("../params/duration");
16
16
  const fleet_1 = require("../accounts/fleet");
17
17
  const contract_1 = require("../accounts/contract");
18
18
  const config_2 = require("../accounts/config");
19
- const accounts_1 = require("../generated/codama/accounts");
19
+ const rental_1 = require("../accounts/rental");
20
20
  const sage_1 = require("../pda/sage");
21
21
  const srsly_1 = require("../pda/srsly");
22
22
  const token_1 = require("../pda/token");
23
23
  const thread_1 = require("../pda/thread");
24
24
  const instructions_2 = require("../utils/instructions");
25
+ const discountAuth_1 = require("../utils/discountAuth");
26
+ const types_1 = require("../generated/codama/types");
25
27
  /**
26
28
  * Accept a rental contract
27
29
  *
@@ -31,13 +33,13 @@ const instructions_2 = require("../utils/instructions");
31
33
  *
32
34
  * This function automatically fetches the contract and config to get required
33
35
  * data (fleet, vault, gameId), then derives all SAGE accounts (profile faction,
34
- * starbase, starbase player) and the rental thread for automated payments.
36
+ * starbase, starbase player) and the contract thread for automated payments.
35
37
  *
36
38
  * @param params - Rental acceptance parameters
37
39
  * @param config - Optional SDK configuration overrides
38
40
  * @returns Array of instructions (Kit format or web3.js if PublicKey in config)
39
41
  *
40
- * @demo
42
+ * @example
41
43
  * ```typescript
42
44
  * // Accept a 7-day rental (borrowerProfile auto-fetched)
43
45
  * const ixs = await acceptRental({
@@ -47,27 +49,6 @@ const instructions_2 = require("../utils/instructions");
47
49
  * computeUnits: 400_000
48
50
  * });
49
51
  * ```
50
- *
51
- * @example
52
- * ```typescript
53
- * // Accept a 7-day rental (fleet and vault auto-fetched)
54
- * const ixs = await acceptRental({
55
- * borrower: wallet,
56
- * borrowerProfile: borrowerProfileAddress,
57
- * contract: contractAddress,
58
- * duration: { days: 7 }
59
- * });
60
- *
61
- * // With referrer and compute budget
62
- * const ixs2 = await acceptRental({
63
- * borrower: wallet,
64
- * borrowerProfile: borrowerProfileAddress,
65
- * contract: contractAddress,
66
- * referrer: referrerAddress,
67
- * duration: { weeks: 2 },
68
- * computeUnits: 400_000
69
- * });
70
- * ```
71
52
  */
72
53
  async function acceptRental(params, config) {
73
54
  // Merge config
@@ -84,93 +65,117 @@ async function acceptRental(params, config) {
84
65
  }
85
66
  // Convert borrower to transaction signer
86
67
  const borrowerSigner = (0, signer_1.toTransactionSigner)(params.borrower);
87
- // Fetch or use provided borrower profile
88
- let borrowerProfile;
89
- if (params.borrowerProfile) {
90
- // User provided profile - use it directly
91
- borrowerProfile = (0, kit_1.address)(params.borrowerProfile);
92
- }
93
- else {
94
- // Fetch borrower_state to get profile
95
- const borrowerStateAddress = await (0, srsly_1.deriveBorrowerState)(borrowerSigner.address);
96
- const rpc = (0, rpc_1.createRpc)(finalConfig.rpcUrl || 'https://api.devnet.solana.com');
97
- const borrowerState = await (0, accounts_1.fetchBorrowerState)(rpc, borrowerStateAddress);
98
- // Check if borrowerProfile is set (Option type check)
99
- const profileOption = borrowerState.data.borrowerProfile;
100
- if (!profileOption || (typeof profileOption === 'object' && '__option' in profileOption && profileOption.__option === 'None')) {
101
- throw new Error('Borrower profile not set. Please run borrower-update to set your SAGE profile.');
102
- }
103
- // Extract value from Some variant
104
- borrowerProfile = typeof profileOption === 'object' && 'value' in profileOption ? profileOption.value : profileOption;
105
- }
106
68
  // Fetch config to get vault
107
69
  const configAccount = await (0, config_2.fetchConfig)(finalConfig.rpcUrl);
108
70
  const vault = configAccount.data.slyvault;
109
- // Fetch contract to get fleet, gameId, ownerProfile
71
+ // Fetch contract to get fleet, gameId
110
72
  const contractAccount = await (0, contract_1.fetchContract)(params.contract, finalConfig.rpcUrl);
111
73
  const fleet = contractAccount.data.fleet;
112
74
  const gameId = contractAccount.data.gameId;
75
+ // Client-side rate safety check
76
+ if (params.rate != null) {
77
+ const expectedRate = (0, amount_1.convertAmount)(params.rate);
78
+ const contractRate = BigInt(contractAccount.data.rate);
79
+ if (expectedRate !== contractRate) {
80
+ throw new Error(`Contract rate mismatch: expected ${expectedRate} stardust but contract has ${contractRate} stardust. The rate may have changed since you last fetched it.`);
81
+ }
82
+ }
113
83
  // Fetch fleet data for faction (needed to derive SAGE accounts)
114
84
  const fleetState = await (0, fleet_1.fetchFleet)(fleet, finalConfig.rpcUrl);
115
85
  const faction = fleetState.faction;
86
+ // Use param if provided, fallback to fleet.subProfile (current occupant's profile)
87
+ let borrowerProfile;
88
+ if (params.borrowerProfile) {
89
+ borrowerProfile = (0, kit_1.address)(params.borrowerProfile);
90
+ }
91
+ else {
92
+ borrowerProfile = fleetState.subProfile.key;
93
+ }
116
94
  // Derive all SAGE game accounts (profile faction, starbase, starbase player)
117
95
  const gameAccounts = await (0, sage_1.deriveGameAccounts)(borrowerProfile, faction, gameId);
118
- // Derive rental and rental authority PDAs
119
- const rental = await (0, srsly_1.deriveRental)(params.contract, borrowerSigner.address);
96
+ // Derive active rental PDA (no more slot logic)
97
+ const rentalState = await (0, srsly_1.deriveActiveRental)(params.contract);
98
+ // Resolve expiredBorrowerState: use param if provided, otherwise auto-detect
99
+ // When the same borrower re-rents their own expired contract, skip passing
100
+ // expiredBorrowerState to avoid Anchor's duplicate mutable account error.
101
+ const borrowerStatePda = await (0, srsly_1.deriveBorrowerState)(borrowerSigner);
102
+ let expiredBorrowerState;
103
+ if (params.expiredBorrowerState) {
104
+ const explicit = (0, kit_1.address)(params.expiredBorrowerState);
105
+ // Don't pass if it matches the current borrower's state (same-borrower re-rent)
106
+ if (explicit !== borrowerStatePda) {
107
+ expiredBorrowerState = explicit;
108
+ }
109
+ }
110
+ else {
111
+ try {
112
+ const activeRental = await (0, rental_1.fetchRental)(rentalState, finalConfig.rpcUrl);
113
+ if (activeRental.data.status !== types_1.RentalStatus.Available) {
114
+ // Only pass as separate account if it's a DIFFERENT borrower's state
115
+ if (activeRental.data.borrowerState !== borrowerStatePda) {
116
+ expiredBorrowerState = activeRental.data.borrowerState;
117
+ }
118
+ }
119
+ }
120
+ catch {
121
+ // Rental state doesn't exist or can't be fetched — no expired rental to replace
122
+ }
123
+ }
124
+ // Derive rental authority PDA
120
125
  const rentalAuthority = await (0, srsly_1.deriveRentalAuthority)();
121
- // Derive rental thread for automated payments
122
- const rentalThread = await (0, thread_1.deriveRentalThread)(rental, rentalAuthority);
126
+ // Derive contract thread and close_rental fiber (fiber index 1) — only if thread configured
127
+ const thread = (0, kit_1.address)(contractAccount.data.thread);
128
+ const hasThread = thread !== '11111111111111111111111111111111';
129
+ const contractThread = hasThread ? await (0, thread_1.deriveContractThread)(params.contract, rentalAuthority) : undefined;
130
+ const closeRentalFiber = hasThread && contractThread ? await (0, thread_1.deriveFiber)(contractThread, 1) : undefined;
123
131
  // Convert duration parameter
124
132
  const durationSeconds = (0, duration_1.convertDuration)(params.duration);
125
- // Get network-specific addresses
133
+ // Get network-specific addresses (atlasMint sourced from on-chain config)
134
+ const atlasMint = configAccount.data.atlasMint;
126
135
  const addresses = (0, config_1.getAddresses)(config);
127
- const atlasMint = (0, kit_1.address)(addresses.atlasMint);
128
136
  const sageProgram = (0, kit_1.address)(addresses.sage);
129
137
  const programAddress = (0, kit_1.address)(addresses.srsly);
130
- // Optional referrer
138
+ // Deserialize discount auth if provided
139
+ let discountAuth = null;
140
+ if (params.discountAuth) {
141
+ discountAuth = (0, discountAuth_1.deserializeDiscountAuth)(params.discountAuth);
142
+ }
131
143
  const referrer = params.referrer ? (0, kit_1.address)(params.referrer) : undefined;
132
- // Determine if we need to include scheduleRental
133
- // Either explicitly requested or contract requires automation
134
- const shouldSchedule = params.autoSchedule || contractAccount.data.requiresAutomation;
135
144
  // Derive vault token account (ATA)
136
145
  const vaultTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(vault, atlasMint);
146
+ // Derive contract token account (ATA of contract PDA)
147
+ const contractAddress = (0, kit_1.address)(params.contract);
148
+ const contractTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(contractAddress, atlasMint);
149
+ // Derive borrower token account (ATA)
150
+ const borrowerTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(borrowerSigner.address, atlasMint);
137
151
  // Call Codama-generated acceptRental instruction
138
152
  const acceptRentalIx = await (0, instructions_1.getAcceptRentalInstructionAsync)({
139
153
  borrower: borrowerSigner,
140
- borrowerProfile,
141
- borrowerProfileFaction: gameAccounts.profileFaction,
154
+ borrowerTokenAccount,
142
155
  fleet: (0, kit_1.address)(fleet),
143
- contract: (0, kit_1.address)(params.contract),
144
- gameId: (0, kit_1.address)(gameId),
145
- starbase: gameAccounts.starbase,
146
- starbasePlayer: gameAccounts.starbasePlayer,
156
+ expiredBorrowerState,
157
+ contract: contractAddress,
158
+ rentalState,
147
159
  vault: (0, kit_1.address)(vault),
148
160
  vaultTokenAccount,
161
+ contractTokenAccount,
162
+ ...(contractThread && { contractThread }),
163
+ ...(closeRentalFiber && { closeRentalFiber }),
149
164
  referrer,
150
- mint: atlasMint,
151
165
  sageProgram,
152
166
  duration: BigInt(durationSeconds),
153
- rebateAuth: null
167
+ discountAuth
154
168
  }, { programAddress });
155
- // If auto-schedule is enabled, bundle scheduleRental instruction
156
- if (shouldSchedule) {
157
- const scheduleRentalIx = await (0, instructions_1.getScheduleRentalInstructionAsync)({
158
- payer: borrowerSigner,
159
- mint: atlasMint,
160
- contract: (0, kit_1.address)(params.contract),
161
- fleet: (0, kit_1.address)(fleet),
162
- rentalState: rental,
163
- rentalThread,
164
- borrowerProfileFaction: gameAccounts.profileFaction,
165
- sageProgram
166
- }, { programAddress });
167
- // Return both instructions as array
168
- return (0, instructions_2.prepareInstructions)([acceptRentalIx, scheduleRentalIx], {
169
- computeUnits: params.computeUnits,
170
- PublicKey: finalConfig.PublicKey
171
- });
172
- }
173
- // Prepare single instruction with optional compute budget and web3.js conversion
169
+ // Append SAGE pass-through accounts as remaining accounts
170
+ const sageRemainingAccounts = [
171
+ { address: borrowerProfile, role: kit_1.AccountRole.READONLY },
172
+ { address: gameAccounts.profileFaction, role: kit_1.AccountRole.READONLY },
173
+ { address: (0, kit_1.address)(gameId), role: kit_1.AccountRole.READONLY },
174
+ { address: gameAccounts.starbase, role: kit_1.AccountRole.READONLY },
175
+ { address: gameAccounts.starbasePlayer, role: kit_1.AccountRole.WRITABLE },
176
+ ];
177
+ acceptRentalIx.accounts.push(...sageRemainingAccounts);
178
+ // Prepare instruction with optional compute budget
174
179
  return (0, instructions_2.prepareInstructions)(acceptRentalIx, {
175
180
  computeUnits: params.computeUnits,
176
181
  PublicKey: finalConfig.PublicKey
@@ -1 +1 @@
1
- {"version":3,"file":"acceptRental.js","sourceRoot":"","sources":["../../../src/instructions/acceptRental.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acceptRental.js","sourceRoot":"","sources":["../../../src/instructions/acceptRental.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ /**
3
+ * @purpose Simplified activateRental instruction wrapper
4
+ *
5
+ * Thin convenience wrapper around Codama-generated activateRental instruction.
6
+ * Manually activates a queued rental when automation is delayed or unavailable.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.activateRental = activateRental;
10
+ const kit_1 = require("@solana/kit");
11
+ const instructions_1 = require("../generated/codama/instructions");
12
+ const config_1 = require("../utils/config");
13
+ const signer_1 = require("../utils/signer");
14
+ const instructions_2 = require("../utils/instructions");
15
+ const config_2 = require("../accounts/config");
16
+ const contract_1 = require("../accounts/contract");
17
+ const fleet_1 = require("../accounts/fleet");
18
+ const rental_1 = require("../accounts/rental");
19
+ const sage_1 = require("../pda/sage");
20
+ const srsly_1 = require("../pda/srsly");
21
+ const thread_1 = require("../pda/thread");
22
+ const token_1 = require("../pda/token");
23
+ /**
24
+ * Manually activate a queued rental
25
+ *
26
+ * This is a fallback for when the Antegen automation thread is delayed.
27
+ * Anyone can call this — it's permissionless. The queued rental will be
28
+ * promoted to active, the fleet will be delegated to the borrower in SAGE,
29
+ * and deferred fees will be paid.
30
+ *
31
+ * @param params - Activate rental parameters
32
+ * @param config - Optional SDK configuration overrides
33
+ * @returns Kit instruction (or web3.js if PublicKey in config)
34
+ */
35
+ async function activateRental(params, config) {
36
+ const finalConfig = (0, config_1.mergeConfig)(config);
37
+ if (!params.payer) {
38
+ throw new Error('payer is required');
39
+ }
40
+ if (!params.contract) {
41
+ throw new Error('contract is required');
42
+ }
43
+ if (!params.borrowerProfile) {
44
+ throw new Error('borrowerProfile is required for manual activation');
45
+ }
46
+ const payerSigner = (0, signer_1.toTransactionSigner)(params.payer);
47
+ const addresses = (0, config_1.getAddresses)(config);
48
+ const programAddress = (0, kit_1.address)(addresses.srsly);
49
+ const contractAddress = (0, kit_1.address)(params.contract);
50
+ // Fetch config and contract
51
+ const configAccount = await (0, config_2.fetchConfig)(finalConfig.rpcUrl);
52
+ const atlasMint = configAccount.data.atlasMint;
53
+ const contractAccount = await (0, contract_1.fetchContract)(params.contract, finalConfig.rpcUrl);
54
+ // Derive rental PDAs
55
+ const activeRental = await (0, srsly_1.deriveActiveRental)(contractAddress);
56
+ const queuedRental = await (0, srsly_1.deriveQueuedRental)(contractAddress);
57
+ const rentalAuthority = await (0, srsly_1.deriveRentalAuthority)();
58
+ // Derive thread PDAs — only if thread configured
59
+ const thread = (0, kit_1.address)(contractAccount.data.thread);
60
+ const hasThread = thread !== '11111111111111111111111111111111';
61
+ const contractThread = hasThread ? await (0, thread_1.deriveContractThread)(contractAddress, rentalAuthority) : undefined;
62
+ const closeRentalFiber = hasThread && contractThread ? await (0, thread_1.deriveFiber)(contractThread, 1) : undefined;
63
+ // Fetch queued rental to get borrower info
64
+ const queuedRentalAccount = await (0, rental_1.fetchRental)(queuedRental, finalConfig.rpcUrl);
65
+ // Derive SAGE accounts from borrowerProfile + fleet faction
66
+ const borrowerProfileAddr = (0, kit_1.address)(params.borrowerProfile);
67
+ const fleetState = await (0, fleet_1.fetchFleet)(contractAccount.data.fleet, finalConfig.rpcUrl);
68
+ const gameAccounts = await (0, sage_1.deriveGameAccounts)(borrowerProfileAddr, fleetState.faction, contractAccount.data.gameId);
69
+ // Get vault from config and derive vault token account
70
+ const vault = configAccount.data.slyvault;
71
+ const vaultTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(vault, atlasMint);
72
+ const kitInstruction = await (0, instructions_1.getActivateRentalInstructionAsync)({
73
+ payer: payerSigner,
74
+ contract: contractAddress,
75
+ contractTokenAccount: contractAccount.data.managedTokenAccount,
76
+ mint: atlasMint,
77
+ borrowerProfile: borrowerProfileAddr,
78
+ borrowerProfileFaction: gameAccounts.profileFaction,
79
+ fleet: contractAccount.data.fleet,
80
+ gameId: contractAccount.data.gameId,
81
+ ...(contractThread && { contractThread }),
82
+ ...(closeRentalFiber && { closeRentalFiber }),
83
+ vault,
84
+ vaultTokenAccount,
85
+ sageProgram: (0, kit_1.address)(addresses.sage),
86
+ }, { programAddress });
87
+ // Append starbase + starbasePlayer as remaining accounts (for fiber 1 building)
88
+ const sageRemainingAccounts = [
89
+ { address: gameAccounts.starbase, role: kit_1.AccountRole.READONLY },
90
+ { address: gameAccounts.starbasePlayer, role: kit_1.AccountRole.READONLY },
91
+ ];
92
+ kitInstruction.accounts.push(...sageRemainingAccounts);
93
+ return (0, instructions_2.prepareInstructions)(kitInstruction, {
94
+ computeUnits: params.computeUnits,
95
+ PublicKey: finalConfig.PublicKey
96
+ });
97
+ }
98
+ //# sourceMappingURL=activateRental.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activateRental.js","sourceRoot":"","sources":["../../../src/instructions/activateRental.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @purpose Approve and activate an affiliate
4
+ *
5
+ * Re-exports slyvault's approveAffiliate instruction.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.approveAffiliate = void 0;
9
+ var slyvault_1 = require("@wuwei-labs/slyvault");
10
+ Object.defineProperty(exports, "approveAffiliate", { enumerable: true, get: function () { return slyvault_1.approveAffiliate; } });
11
+ //# sourceMappingURL=approveAffiliate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approveAffiliate.js","sourceRoot":"","sources":["../../../src/instructions/approveAffiliate.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,iDAG8B;AAF5B,4GAAA,gBAAgB,OAAA"}
@@ -12,23 +12,22 @@ const instructions_1 = require("../generated/codama/instructions");
12
12
  const config_1 = require("../utils/config");
13
13
  const signer_1 = require("../utils/signer");
14
14
  const srsly_1 = require("../pda/srsly");
15
- const thread_1 = require("../pda/thread");
15
+ const token_1 = require("../pda/token");
16
16
  const instructions_2 = require("../utils/instructions");
17
17
  const duration_1 = require("../params/duration");
18
+ const config_2 = require("../accounts/config");
19
+ const contract_1 = require("../accounts/contract");
18
20
  /**
19
21
  * Cancel a rental
20
22
  *
21
- * Allows a borrower to cancel an active rental.
23
+ * Allows a borrower to cancel an active rental. Always targets the active
24
+ * rental PDA (no more slot detection needed).
22
25
  *
23
26
  * **Cancellation Behavior:**
24
- * - `cancelDelay = 0`: Instant cancellation (requires `allowInstantCancel` on contract)
25
- * - Sets `Trigger::Immediate` so `rental_pay` fires immediately
26
- * - Returns `InstantCancelNotAllowed` error if contract doesn't allow it
27
- * - `cancelDelay > 0`: Deferred cancellation
28
- * - Rental continues until `now + cancelDelay`
29
- * - Existing Cron trigger handles cleanup when `end_time` is reached
27
+ * - `cancelDelay = 0`: Instant cancellation
28
+ * - `cancelDelay > 0`: Deferred cancellation, rental continues until `now + cancelDelay`
30
29
  *
31
- * Both paths refund the borrower for unused time. Owner gets paid when `rental_pay` fires.
30
+ * Both paths refund the borrower for unused time.
32
31
  *
33
32
  * @param params - Cancellation parameters (borrower, contract, cancelDelay)
34
33
  * @param config - Optional SDK configuration overrides
@@ -36,13 +35,13 @@ const duration_1 = require("../params/duration");
36
35
  *
37
36
  * @example
38
37
  * ```typescript
39
- * // Deferred cancellation (cancel after 1 hour - default)
38
+ * // Default cancellation (uses contract's cancelDelayMin)
40
39
  * const ix = await cancelRental({
41
40
  * borrower: borrowerWallet,
42
41
  * contract: contractAddress
43
42
  * });
44
43
  *
45
- * // Instant cancellation (requires allowInstantCancel on contract)
44
+ * // Instant cancellation
46
45
  * const ix2 = await cancelRental({
47
46
  * borrower: borrowerWallet,
48
47
  * contract: contractAddress,
@@ -69,27 +68,37 @@ async function cancelRental(params, config) {
69
68
  }
70
69
  // Convert borrower to transaction signer
71
70
  const borrowerSigner = (0, signer_1.toTransactionSigner)(params.borrower);
72
- // Get network-specific addresses
71
+ // Get atlasMint from on-chain config
72
+ const configAccount = await (0, config_2.fetchConfig)(finalConfig.rpcUrl);
73
+ const atlasMint = configAccount.data.atlasMint;
73
74
  const addresses = (0, config_1.getAddresses)(config);
74
- const atlasMint = (0, kit_1.address)(addresses.atlasMint);
75
75
  const programAddress = (0, kit_1.address)(addresses.srsly);
76
- // Derive rental thread (only PDA not auto-derived by Codama)
77
- const rentalState = await (0, srsly_1.deriveRental)(params.contract, borrowerSigner.address);
78
- const rentalAuthority = await (0, srsly_1.deriveRentalAuthority)();
79
- const rentalThread = await (0, thread_1.deriveRentalThread)(rentalState, rentalAuthority);
76
+ // Fetch contract to get fleet
77
+ const contractAccount = await (0, contract_1.fetchContract)(params.contract, finalConfig.rpcUrl);
78
+ const fleet = contractAccount.data.fleet;
79
+ // Derive active rental PDA (no more slot logic)
80
+ const rentalState = await (0, srsly_1.deriveActiveRental)(params.contract);
81
+ // Derive contract token account (ATA of contract PDA)
82
+ const contractAddress = (0, kit_1.address)(params.contract);
83
+ const contractTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(contractAddress, atlasMint);
80
84
  // Convert duration to seconds (supports { hours: 1 }, { days: 1 }, etc.)
81
- // Default to 1 hour if not specified (safer than instant cancel which requires flag)
85
+ // Default to contract's cancelDelayMin if not specified
82
86
  const cancelDelay = params.cancelDelay !== undefined
83
87
  ? BigInt((0, duration_1.convertDuration)(params.cancelDelay))
84
- : BigInt((0, duration_1.convertDuration)({ hours: 1 }));
88
+ : contractAccount.data.cancelDelayMin;
89
+ // Resolve contract thread (system_program::ID means no thread configured)
90
+ const thread = (0, kit_1.address)(contractAccount.data.thread);
91
+ const hasThread = thread !== '11111111111111111111111111111111';
85
92
  // Call Codama-generated instruction
86
- // Note: Codama auto-derives config, borrowerState, borrowerTokenAccount,
87
- // rentalState, rentalTokenAccount, rentalAuthority, antegenProgram, tokenProgram
93
+ // Note: Codama auto-derives config, borrowerState, borrowerTokenAccount, rentalAuthority
88
94
  const kitInstruction = await (0, instructions_1.getCancelRentalInstructionAsync)({
89
95
  mint: atlasMint,
90
96
  borrower: borrowerSigner,
91
- rentalThread,
92
- contract: (0, kit_1.address)(params.contract),
97
+ rentalState,
98
+ contractTokenAccount,
99
+ contract: contractAddress,
100
+ fleet: (0, kit_1.address)(fleet),
101
+ ...(hasThread && { contractThread: thread }),
93
102
  cancelDelay,
94
103
  }, { programAddress });
95
104
  return (0, instructions_2.prepareInstructions)(kitInstruction, {
@@ -1 +1 @@
1
- {"version":3,"file":"cancelRental.js","sourceRoot":"","sources":["../../../src/instructions/cancelRental.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA4FH,oCAoDC;AA9ID,qCAAoD;AACpD,mEAAmF;AACnF,4CAA4E;AAC5E,4CAA4E;AAC5E,wCAAmE;AACnE,0CAAmD;AACnD,wDAA4D;AAC5D,iDAAyE;AAyCzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACI,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAA,4BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,iCAAiC;IACjC,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,6DAA6D;IAC7D,MAAM,WAAW,GAAG,MAAM,IAAA,oBAAY,EAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChF,MAAM,eAAe,GAAG,MAAM,IAAA,6BAAqB,GAAE,CAAC;IACtD,MAAM,YAAY,GAAG,MAAM,IAAA,2BAAkB,EAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAE5E,yEAAyE;IACzE,qFAAqF;IACrF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS;QAClD,CAAC,CAAC,MAAM,CAAC,IAAA,0BAAe,EAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,MAAM,CAAC,IAAA,0BAAe,EAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C,oCAAoC;IACpC,yEAAyE;IACzE,iFAAiF;IACjF,MAAM,cAAc,GAAG,MAAM,IAAA,8CAA+B,EAC1D;QACE,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,cAAc;QACxB,YAAY;QACZ,QAAQ,EAAE,IAAA,aAAO,EAAC,MAAM,CAAC,QAAmB,CAAC;QAC7C,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,IAAA,kCAAmB,EAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"cancelRental.js","sourceRoot":"","sources":["../../../src/instructions/cancelRental.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAyFH,oCAiEC;AAxJD,qCAAoD;AACpD,mEAAmF;AACnF,4CAA4E;AAC5E,4CAA4E;AAC5E,wCAAkD;AAClD,wCAA4D;AAC5D,wDAA4D;AAC5D,iDAAyE;AACzE,+CAAiD;AACjD,mDAAqD;AAuCrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACI,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAA,4BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,qCAAqC;IACrC,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAW,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,8BAA8B;IAC9B,MAAM,eAAe,GAAG,MAAM,IAAA,wBAAa,EAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjF,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC;IAEzC,gDAAgD;IAChD,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAkB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE9D,sDAAsD;IACtD,MAAM,eAAe,GAAG,IAAA,aAAO,EAAC,MAAM,CAAC,QAAmB,CAAC,CAAC;IAC5D,MAAM,oBAAoB,GAAG,MAAM,IAAA,oCAA4B,EAAC,eAAe,EAAE,SAAS,CAAC,CAAC;IAE5F,yEAAyE;IACzE,wDAAwD;IACxD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS;QAClD,CAAC,CAAC,MAAM,CAAC,IAAA,0BAAe,EAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;IAExC,0EAA0E;IAC1E,MAAM,MAAM,GAAG,IAAA,aAAO,EAAC,eAAe,CAAC,IAAI,CAAC,MAAiB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,MAAM,KAAK,kCAAkC,CAAC;IAEhE,oCAAoC;IACpC,yFAAyF;IACzF,MAAM,cAAc,GAAG,MAAM,IAAA,8CAA+B,EAC1D;QACE,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,cAAc;QACxB,WAAW;QACX,oBAAoB;QACpB,QAAQ,EAAE,eAAe;QACzB,KAAK,EAAE,IAAA,aAAO,EAAC,KAAgB,CAAC;QAChC,GAAG,CAAC,SAAS,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;QAC5C,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,IAAA,kCAAmB,EAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -3,7 +3,9 @@
3
3
  * @purpose Simplified claimBorrower instruction wrapper
4
4
  *
5
5
  * Thin convenience wrapper around Codama-generated claimBorrower instruction.
6
- * Allows borrowers to claim accumulated ATLAS from their managed token account.
6
+ * Allows claiming accumulated ATLAS from a borrower's managed token account.
7
+ * When close is true, bundles a closeBorrower instruction to also close the
8
+ * managed ATA and BorrowerState in a single transaction.
7
9
  */
8
10
  Object.defineProperty(exports, "__esModule", { value: true });
9
11
  exports.claimBorrower = claimBorrower;
@@ -12,6 +14,7 @@ const instructions_1 = require("../generated/codama/instructions");
12
14
  const config_1 = require("../utils/config");
13
15
  const signer_1 = require("../utils/signer");
14
16
  const instructions_2 = require("../utils/instructions");
17
+ const config_2 = require("../accounts/config");
15
18
  /**
16
19
  * Claim borrower ATLAS refunds
17
20
  *
@@ -20,45 +23,68 @@ const instructions_2 = require("../utils/instructions");
20
23
  * account (an ATA with the borrower_state as authority). This instruction
21
24
  * transfers those funds to the borrower's personal wallet.
22
25
  *
26
+ * The payer and borrower can be different accounts, allowing a third party
27
+ * to pay for the claim transaction on behalf of the borrower.
28
+ *
29
+ * When close is true, a closeBorrower instruction is bundled to also close
30
+ * the managed ATA and BorrowerState PDA in the same transaction.
31
+ *
23
32
  * @param params - Borrower claim parameters
24
33
  * @param config - Optional SDK configuration overrides
25
34
  * @returns Kit instruction (or web3.js if PublicKey in config)
26
35
  *
27
36
  * @example
28
37
  * ```typescript
29
- * // Claim accumulated ATLAS refunds
38
+ * // Self-claim: payer is the borrower
30
39
  * const ix = await claimBorrower({
31
- * borrower: borrowerWallet
40
+ * payer: borrowerWallet,
32
41
  * });
33
42
  *
34
- * // With web3.js
35
- * import { PublicKey } from '@solana/web3.js';
36
- * setSdkConfig({ network: 'mainnet-beta', PublicKey });
37
- * const web3Ix = await claimBorrower({
38
- * borrower: keypair
43
+ * // Third-party claim: someone else pays
44
+ * const ix2 = await claimBorrower({
45
+ * payer: relayerWallet,
46
+ * borrower: "BORROWER_ADDRESS"
47
+ * });
48
+ *
49
+ * // Claim and close the BorrowerState account
50
+ * const ix3 = await claimBorrower({
51
+ * payer: borrowerWallet,
52
+ * close: true
39
53
  * });
40
54
  * ```
41
55
  */
42
56
  async function claimBorrower(params, config) {
43
- // Merge config
44
57
  const finalConfig = (0, config_1.mergeConfig)(config);
45
- // Validate required params
46
- if (!params.borrower) {
47
- throw new Error('borrower is required');
58
+ if (!params.payer) {
59
+ throw new Error('payer is required');
48
60
  }
49
- // Convert borrower to transaction signer
50
- const borrowerSigner = (0, signer_1.toTransactionSigner)(params.borrower);
51
- // Get network-specific addresses
61
+ const payerSigner = (0, signer_1.toTransactionSigner)(params.payer);
62
+ const borrowerAddress = params.borrower
63
+ ? (0, kit_1.address)(params.borrower)
64
+ : (0, signer_1.getSignerAddress)(payerSigner);
65
+ const configAccount = await (0, config_2.fetchConfig)(finalConfig.rpcUrl);
66
+ const atlasMint = configAccount.data.atlasMint;
52
67
  const addresses = (0, config_1.getAddresses)(config);
53
- const atlasMint = (0, kit_1.address)(addresses.atlasMint);
54
68
  const programAddress = (0, kit_1.address)(addresses.srsly);
55
- // Call Codama-generated instruction
56
- // Most accounts are auto-derived (config, borrowerState, managed account, destination)
57
- const kitInstruction = await (0, instructions_1.getClaimBorrowerInstructionAsync)({
58
- borrower: borrowerSigner,
69
+ // Build claim instruction
70
+ const claimIx = await (0, instructions_1.getClaimBorrowerInstructionAsync)({
71
+ payer: payerSigner,
72
+ borrower: borrowerAddress,
59
73
  mint: atlasMint,
60
74
  }, { programAddress });
61
- return (0, instructions_2.prepareInstructions)(kitInstruction, {
75
+ // If close requested, bundle a closeBorrower instruction after the claim
76
+ if (params.close) {
77
+ const closeIx = await (0, instructions_1.getCloseBorrowerInstructionAsync)({
78
+ payer: payerSigner,
79
+ borrower: borrowerAddress,
80
+ mint: atlasMint,
81
+ }, { programAddress });
82
+ return (0, instructions_2.prepareInstructions)([claimIx, closeIx], {
83
+ computeUnits: params.computeUnits,
84
+ PublicKey: finalConfig.PublicKey
85
+ });
86
+ }
87
+ return (0, instructions_2.prepareInstructions)(claimIx, {
62
88
  computeUnits: params.computeUnits,
63
89
  PublicKey: finalConfig.PublicKey
64
90
  });
@@ -1 +1 @@
1
- {"version":3,"file":"claimBorrower.js","sourceRoot":"","sources":["../../../src/instructions/claimBorrower.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAoDH,sCAkCC;AApFD,qCAAoD;AACpD,mEAAoF;AACpF,4CAA4E;AAC5E,4CAA4E;AAC5E,wDAA4D;AAmB5D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACI,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,IAAA,4BAAmB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,iCAAiC;IACjC,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,oCAAoC;IACpC,uFAAuF;IACvF,MAAM,cAAc,GAAG,MAAM,IAAA,+CAAgC,EAC3D;QACE,QAAQ,EAAE,cAAc;QACxB,IAAI,EAAE,SAAS;KAChB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,IAAA,kCAAmB,EAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"claimBorrower.js","sourceRoot":"","sources":["../../../src/instructions/claimBorrower.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAgFH,sCAoDC;AAlID,qCAAoD;AACpD,mEAAsH;AACtH,4CAA4E;AAC5E,4CAA8F;AAC9F,wDAA4D;AAC5D,+CAAiD;AAmCjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACI,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,MAAM,WAAW,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,WAAW,GAAG,IAAA,4BAAmB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ;QACrC,CAAC,CAAC,IAAA,aAAO,EAAC,MAAM,CAAC,QAAmB,CAAC;QACrC,CAAC,CAAC,IAAA,yBAAgB,EAAC,WAAW,CAAC,CAAC;IAElC,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAW,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,0BAA0B;IAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,+CAAgC,EACpD;QACE,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAE,SAAS;KAChB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,yEAAyE;IACzE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,MAAM,IAAA,+CAAgC,EACpD;YACE,KAAK,EAAE,WAAW;YAClB,QAAQ,EAAE,eAAe;YACzB,IAAI,EAAE,SAAS;SAChB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;QAEF,OAAO,IAAA,kCAAmB,EAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAC7C,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,SAAS,EAAE,WAAW,CAAC,SAAS;SACjC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAA,kCAAmB,EAAC,OAAO,EAAE;QAClC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}