@wuwei-labs/srsly 3.0.0-beta.2 → 3.0.0-beta.21

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 (782) hide show
  1. package/README.md +38 -0
  2. package/dist/cjs/accounts/borrower.js +79 -15
  3. package/dist/cjs/accounts/borrower.js.map +1 -1
  4. package/dist/cjs/accounts/config.js +51 -3
  5. package/dist/cjs/accounts/config.js.map +1 -1
  6. package/dist/cjs/accounts/contract.js +52 -1
  7. package/dist/cjs/accounts/contract.js.map +1 -1
  8. package/dist/cjs/accounts/fleet.js +2 -1
  9. package/dist/cjs/accounts/fleet.js.map +1 -1
  10. package/dist/cjs/accounts/member.js +16 -0
  11. package/dist/cjs/accounts/member.js.map +1 -0
  12. package/dist/cjs/accounts/owner.js +105 -0
  13. package/dist/cjs/accounts/owner.js.map +1 -0
  14. package/dist/cjs/accounts/rental.js +49 -1
  15. package/dist/cjs/accounts/rental.js.map +1 -1
  16. package/dist/cjs/demos.js +337 -34
  17. package/dist/cjs/demos.js.map +1 -1
  18. package/dist/cjs/generated/codama/accounts/borrowerState.js +25 -25
  19. package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -1
  20. package/dist/cjs/generated/codama/accounts/configState.js +55 -48
  21. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
  22. package/dist/cjs/generated/codama/accounts/contractState.js +59 -42
  23. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
  24. package/dist/cjs/generated/codama/accounts/fleet.js +103 -0
  25. package/dist/cjs/generated/codama/accounts/fleet.js.map +1 -0
  26. package/dist/cjs/generated/codama/accounts/index.js +2 -2
  27. package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
  28. package/dist/cjs/generated/codama/accounts/ownerState.js +86 -0
  29. package/dist/cjs/generated/codama/accounts/ownerState.js.map +1 -0
  30. package/dist/cjs/generated/codama/accounts/rentalState.js +42 -30
  31. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
  32. package/dist/cjs/generated/codama/accounts/thread.js +47 -44
  33. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
  34. package/dist/cjs/generated/codama/errors/srsly.js +61 -19
  35. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
  36. package/dist/cjs/generated/codama/instructions/acceptRental.js +39 -61
  37. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
  38. package/dist/cjs/generated/codama/instructions/activateRental.js +193 -0
  39. package/dist/cjs/generated/codama/instructions/activateRental.js.map +1 -0
  40. package/dist/cjs/generated/codama/instructions/cancelRental.js +50 -28
  41. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
  42. package/dist/cjs/generated/codama/instructions/claimBorrower.js +36 -23
  43. package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -1
  44. package/dist/cjs/generated/codama/instructions/{claimContractPayments.js → claimOwner.js} +70 -56
  45. package/dist/cjs/generated/codama/instructions/claimOwner.js.map +1 -0
  46. package/dist/cjs/generated/codama/instructions/claimRental.js +336 -0
  47. package/dist/cjs/generated/codama/instructions/claimRental.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/closeContract.js +17 -85
  49. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
  50. package/dist/cjs/generated/codama/instructions/closeRental.js +46 -45
  51. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
  52. package/dist/cjs/generated/codama/instructions/createConfig.js +56 -20
  53. package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -1
  54. package/dist/cjs/generated/codama/instructions/createContract.js +53 -37
  55. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
  56. package/dist/cjs/generated/codama/instructions/deleteConfig.js +15 -15
  57. package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -1
  58. package/dist/cjs/generated/codama/instructions/deleteContract.js +5 -5
  59. package/dist/cjs/generated/codama/instructions/deleteRental.js +5 -5
  60. package/dist/cjs/generated/codama/instructions/index.js +7 -4
  61. package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
  62. package/dist/cjs/generated/codama/instructions/invalidateRental.js +156 -0
  63. package/dist/cjs/generated/codama/instructions/invalidateRental.js.map +1 -0
  64. package/dist/cjs/generated/codama/instructions/payRental.js +64 -24
  65. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -1
  66. package/dist/cjs/generated/codama/instructions/releaseRental.js +8 -49
  67. package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -1
  68. package/dist/cjs/generated/codama/instructions/reserveRental.js +41 -22
  69. package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
  70. package/dist/cjs/generated/codama/instructions/scheduleRental.js +265 -0
  71. package/dist/cjs/generated/codama/instructions/scheduleRental.js.map +1 -0
  72. package/dist/cjs/generated/codama/instructions/setDelegate.js +79 -0
  73. package/dist/cjs/generated/codama/instructions/setDelegate.js.map +1 -0
  74. package/dist/cjs/generated/codama/instructions/updateBorrower.js +9 -9
  75. package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -1
  76. package/dist/cjs/generated/codama/instructions/updateConfig.js +43 -45
  77. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
  78. package/dist/cjs/generated/codama/instructions/updateContract.js +24 -22
  79. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
  80. package/dist/cjs/generated/codama/instructions/updateOwner.js +79 -0
  81. package/dist/cjs/generated/codama/instructions/updateOwner.js.map +1 -0
  82. package/dist/cjs/generated/codama/programs/srsly.js +48 -36
  83. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
  84. package/dist/cjs/generated/codama/shared/index.js +8 -8
  85. package/dist/cjs/generated/codama/types/atlasClaimed.js +33 -0
  86. package/dist/cjs/generated/codama/types/atlasClaimed.js.map +1 -0
  87. package/dist/cjs/generated/codama/types/borrowerInitialized.js +29 -0
  88. package/dist/cjs/generated/codama/types/borrowerInitialized.js.map +1 -0
  89. package/dist/cjs/generated/codama/types/cargoStats.js +43 -0
  90. package/dist/cjs/generated/codama/types/cargoStats.js.map +1 -0
  91. package/dist/cjs/generated/codama/types/contractClosed.js +31 -0
  92. package/dist/cjs/generated/codama/types/contractClosed.js.map +1 -0
  93. package/dist/cjs/generated/codama/types/contractCreated.js +33 -0
  94. package/dist/cjs/generated/codama/types/contractCreated.js.map +1 -0
  95. package/dist/cjs/generated/codama/types/contractDelegateSet.js +31 -0
  96. package/dist/cjs/generated/codama/types/contractDelegateSet.js.map +1 -0
  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/contractUpdated.js +34 -0
  100. package/dist/cjs/generated/codama/types/contractUpdated.js.map +1 -0
  101. package/dist/cjs/generated/codama/types/discountAuthorization.js +33 -0
  102. package/dist/cjs/generated/codama/types/discountAuthorization.js.map +1 -0
  103. package/dist/cjs/generated/codama/types/fieldUpdate.js +29 -0
  104. package/dist/cjs/generated/codama/types/fieldUpdate.js.map +1 -0
  105. package/dist/cjs/generated/codama/types/index.js +25 -3
  106. package/dist/cjs/generated/codama/types/index.js.map +1 -1
  107. package/dist/cjs/generated/codama/types/miscStats.js +47 -0
  108. package/dist/cjs/generated/codama/types/miscStats.js.map +1 -0
  109. package/dist/cjs/generated/codama/types/movementStats.js +39 -0
  110. package/dist/cjs/generated/codama/types/movementStats.js.map +1 -0
  111. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js +23 -0
  112. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  113. package/dist/cjs/generated/codama/types/rentalAccepted.js +43 -0
  114. package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -0
  115. package/dist/cjs/generated/codama/types/rentalActivated.js +31 -0
  116. package/dist/cjs/generated/codama/types/rentalActivated.js.map +1 -0
  117. package/dist/cjs/generated/codama/types/rentalCancelled.js +35 -0
  118. package/dist/cjs/generated/codama/types/rentalCancelled.js.map +1 -0
  119. package/dist/cjs/generated/codama/types/rentalClaimed.js +41 -0
  120. package/dist/cjs/generated/codama/types/rentalClaimed.js.map +1 -0
  121. package/dist/cjs/generated/codama/types/rentalClosed.js +33 -0
  122. package/dist/cjs/generated/codama/types/rentalClosed.js.map +1 -0
  123. package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js +33 -0
  124. package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js.map +1 -0
  125. package/dist/cjs/generated/codama/types/rentalScheduled.js +35 -0
  126. package/dist/cjs/generated/codama/types/rentalScheduled.js.map +1 -0
  127. package/dist/cjs/generated/codama/types/rentalStatus.js +31 -0
  128. package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -0
  129. package/dist/cjs/generated/codama/types/reservationCreated.js +35 -0
  130. package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -0
  131. package/dist/cjs/generated/codama/types/reservationKnockoff.js +35 -0
  132. package/dist/cjs/generated/codama/types/reservationKnockoff.js.map +1 -0
  133. package/dist/cjs/generated/codama/types/schedule.js +14 -14
  134. package/dist/cjs/generated/codama/types/shipCounts.js +45 -0
  135. package/dist/cjs/generated/codama/types/shipCounts.js.map +1 -0
  136. package/dist/cjs/generated/codama/types/shipStats.js +32 -0
  137. package/dist/cjs/generated/codama/types/shipStats.js.map +1 -0
  138. package/dist/cjs/generated/codama/types/signal.js +12 -12
  139. package/dist/cjs/generated/codama/types/trigger.js +36 -36
  140. package/dist/cjs/index.js +64 -11
  141. package/dist/cjs/index.js.map +1 -1
  142. package/dist/cjs/instructions/acceptRental.js +82 -24
  143. package/dist/cjs/instructions/acceptRental.js.map +1 -1
  144. package/dist/cjs/instructions/approveAffiliate.js +11 -0
  145. package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
  146. package/dist/cjs/instructions/cancelRental.js +12 -5
  147. package/dist/cjs/instructions/cancelRental.js.map +1 -1
  148. package/dist/cjs/instructions/claimBorrower.js +7 -3
  149. package/dist/cjs/instructions/claimBorrower.js.map +1 -1
  150. package/dist/cjs/instructions/claimRental.js +201 -0
  151. package/dist/cjs/instructions/claimRental.js.map +1 -0
  152. package/dist/cjs/instructions/closeContract.js +4 -3
  153. package/dist/cjs/instructions/closeContract.js.map +1 -1
  154. package/dist/cjs/instructions/closeRental.js +42 -12
  155. package/dist/cjs/instructions/closeRental.js.map +1 -1
  156. package/dist/cjs/instructions/createAffiliate.js +73 -0
  157. package/dist/cjs/instructions/createAffiliate.js.map +1 -0
  158. package/dist/cjs/instructions/createConfig.js +12 -0
  159. package/dist/cjs/instructions/createConfig.js.map +1 -1
  160. package/dist/cjs/instructions/createContract.js +12 -5
  161. package/dist/cjs/instructions/createContract.js.map +1 -1
  162. package/dist/cjs/instructions/deleteConfig.js +16 -5
  163. package/dist/cjs/instructions/deleteConfig.js.map +1 -1
  164. package/dist/cjs/instructions/deleteContract.js +79 -0
  165. package/dist/cjs/instructions/deleteContract.js.map +1 -0
  166. package/dist/cjs/instructions/index.js +56 -0
  167. package/dist/cjs/instructions/index.js.map +1 -0
  168. package/dist/cjs/instructions/invalidateRental.js +101 -0
  169. package/dist/cjs/instructions/invalidateRental.js.map +1 -0
  170. package/dist/cjs/instructions/ownerClaim.js +110 -0
  171. package/dist/cjs/instructions/ownerClaim.js.map +1 -0
  172. package/dist/cjs/instructions/ownerUpdate.js +68 -0
  173. package/dist/cjs/instructions/ownerUpdate.js.map +1 -0
  174. package/dist/cjs/instructions/releaseRental.js +20 -53
  175. package/dist/cjs/instructions/releaseRental.js.map +1 -1
  176. package/dist/cjs/instructions/removeAffiliate.js +11 -0
  177. package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
  178. package/dist/cjs/instructions/reserveRental.js +8 -6
  179. package/dist/cjs/instructions/reserveRental.js.map +1 -1
  180. package/dist/cjs/instructions/setDelegate.js +72 -0
  181. package/dist/cjs/instructions/setDelegate.js.map +1 -0
  182. package/dist/cjs/instructions/updateAffiliate.js +57 -0
  183. package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
  184. package/dist/cjs/instructions/updateBorrower.js +4 -2
  185. package/dist/cjs/instructions/updateBorrower.js.map +1 -1
  186. package/dist/cjs/instructions/updateConfig.js +0 -1
  187. package/dist/cjs/instructions/updateConfig.js.map +1 -1
  188. package/dist/cjs/instructions/updateContract.js +12 -5
  189. package/dist/cjs/instructions/updateContract.js.map +1 -1
  190. package/dist/cjs/kit/index.js +34 -0
  191. package/dist/cjs/kit/index.js.map +1 -0
  192. package/dist/cjs/legacy/index.js +127 -0
  193. package/dist/cjs/legacy/index.js.map +1 -0
  194. package/dist/cjs/package.json +9 -5
  195. package/dist/cjs/params/amount.js +4 -4
  196. package/dist/cjs/pda/constants.js +2 -1
  197. package/dist/cjs/pda/constants.js.map +1 -1
  198. package/dist/cjs/pda/index.js +7 -2
  199. package/dist/cjs/pda/index.js.map +1 -1
  200. package/dist/cjs/pda/lookupTable.js +59 -0
  201. package/dist/cjs/pda/lookupTable.js.map +1 -0
  202. package/dist/cjs/pda/slyvault.js +5 -49
  203. package/dist/cjs/pda/slyvault.js.map +1 -1
  204. package/dist/cjs/pda/srsly.js +32 -6
  205. package/dist/cjs/pda/srsly.js.map +1 -1
  206. package/dist/cjs/pda/thread.js +2 -2
  207. package/dist/cjs/utils/addresses.js +7 -1
  208. package/dist/cjs/utils/addresses.js.map +1 -1
  209. package/dist/cjs/utils/config.js +20 -2
  210. package/dist/cjs/utils/config.js.map +1 -1
  211. package/dist/cjs/utils/discountAuth.js +157 -0
  212. package/dist/cjs/utils/discountAuth.js.map +1 -0
  213. package/dist/cjs/utils/index.js +27 -1
  214. package/dist/cjs/utils/index.js.map +1 -1
  215. package/dist/cjs/utils/instructionResult.js +76 -0
  216. package/dist/cjs/utils/instructionResult.js.map +1 -0
  217. package/dist/cjs/utils/instructions.js +12 -17
  218. package/dist/cjs/utils/instructions.js.map +1 -1
  219. package/dist/cjs/utils/lookupTable.js +143 -0
  220. package/dist/cjs/utils/lookupTable.js.map +1 -0
  221. package/dist/cjs/utils/rental.js +135 -0
  222. package/dist/cjs/utils/rental.js.map +1 -0
  223. package/dist/cjs/utils/rpc.js +57 -0
  224. package/dist/cjs/utils/rpc.js.map +1 -0
  225. package/dist/cjs/utils/signer.js +8 -8
  226. package/dist/cjs/utils/signer.js.map +1 -1
  227. package/dist/cjs/version.js +1 -1
  228. package/dist/cjs/version.js.map +1 -1
  229. package/dist/esm/accounts/borrower.js +80 -17
  230. package/dist/esm/accounts/borrower.js.map +1 -1
  231. package/dist/esm/accounts/config.js +50 -3
  232. package/dist/esm/accounts/config.js.map +1 -1
  233. package/dist/esm/accounts/contract.js +53 -3
  234. package/dist/esm/accounts/contract.js.map +1 -1
  235. package/dist/esm/accounts/fleet.js +3 -2
  236. package/dist/esm/accounts/fleet.js.map +1 -1
  237. package/dist/esm/accounts/member.js +9 -0
  238. package/dist/esm/accounts/member.js.map +1 -0
  239. package/dist/esm/accounts/owner.js +101 -0
  240. package/dist/esm/accounts/owner.js.map +1 -0
  241. package/dist/esm/accounts/rental.js +50 -3
  242. package/dist/esm/accounts/rental.js.map +1 -1
  243. package/dist/esm/demos.js +336 -33
  244. package/dist/esm/demos.js.map +1 -1
  245. package/dist/esm/generated/codama/accounts/borrowerState.js +26 -26
  246. package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -1
  247. package/dist/esm/generated/codama/accounts/configState.js +57 -50
  248. package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
  249. package/dist/esm/generated/codama/accounts/contractState.js +60 -43
  250. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
  251. package/dist/esm/generated/codama/accounts/fleet.js +90 -0
  252. package/dist/esm/generated/codama/accounts/fleet.js.map +1 -0
  253. package/dist/esm/generated/codama/accounts/index.js +7 -7
  254. package/dist/esm/generated/codama/accounts/index.js.map +1 -1
  255. package/dist/esm/generated/codama/accounts/ownerState.js +73 -0
  256. package/dist/esm/generated/codama/accounts/ownerState.js.map +1 -0
  257. package/dist/esm/generated/codama/accounts/rentalState.js +43 -30
  258. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
  259. package/dist/esm/generated/codama/accounts/thread.js +49 -46
  260. package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
  261. package/dist/esm/generated/codama/errors/index.js +1 -1
  262. package/dist/esm/generated/codama/errors/srsly.js +62 -20
  263. package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
  264. package/dist/esm/generated/codama/index.js +5 -5
  265. package/dist/esm/generated/codama/instructions/acceptRental.js +42 -64
  266. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
  267. package/dist/esm/generated/codama/instructions/activateRental.js +183 -0
  268. package/dist/esm/generated/codama/instructions/activateRental.js.map +1 -0
  269. package/dist/esm/generated/codama/instructions/cancelRental.js +53 -31
  270. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
  271. package/dist/esm/generated/codama/instructions/claimBorrower.js +39 -26
  272. package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -1
  273. package/dist/esm/generated/codama/instructions/{claimContractPayments.js → claimOwner.js} +65 -51
  274. package/dist/esm/generated/codama/instructions/claimOwner.js.map +1 -0
  275. package/dist/esm/generated/codama/instructions/claimRental.js +326 -0
  276. package/dist/esm/generated/codama/instructions/claimRental.js.map +1 -0
  277. package/dist/esm/generated/codama/instructions/closeContract.js +20 -88
  278. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
  279. package/dist/esm/generated/codama/instructions/closeRental.js +49 -48
  280. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
  281. package/dist/esm/generated/codama/instructions/createConfig.js +59 -23
  282. package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -1
  283. package/dist/esm/generated/codama/instructions/createContract.js +56 -40
  284. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
  285. package/dist/esm/generated/codama/instructions/deleteConfig.js +18 -18
  286. package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -1
  287. package/dist/esm/generated/codama/instructions/deleteContract.js +8 -8
  288. package/dist/esm/generated/codama/instructions/deleteRental.js +8 -8
  289. package/dist/esm/generated/codama/instructions/index.js +23 -20
  290. package/dist/esm/generated/codama/instructions/index.js.map +1 -1
  291. package/dist/esm/generated/codama/instructions/invalidateRental.js +146 -0
  292. package/dist/esm/generated/codama/instructions/invalidateRental.js.map +1 -0
  293. package/dist/esm/generated/codama/instructions/payRental.js +67 -27
  294. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -1
  295. package/dist/esm/generated/codama/instructions/releaseRental.js +11 -52
  296. package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -1
  297. package/dist/esm/generated/codama/instructions/reserveRental.js +44 -25
  298. package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
  299. package/dist/esm/generated/codama/instructions/scheduleRental.js +255 -0
  300. package/dist/esm/generated/codama/instructions/scheduleRental.js.map +1 -0
  301. package/dist/esm/generated/codama/instructions/setDelegate.js +70 -0
  302. package/dist/esm/generated/codama/instructions/setDelegate.js.map +1 -0
  303. package/dist/esm/generated/codama/instructions/updateBorrower.js +12 -12
  304. package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -1
  305. package/dist/esm/generated/codama/instructions/updateConfig.js +47 -49
  306. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
  307. package/dist/esm/generated/codama/instructions/updateContract.js +27 -25
  308. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
  309. package/dist/esm/generated/codama/instructions/updateOwner.js +70 -0
  310. package/dist/esm/generated/codama/instructions/updateOwner.js.map +1 -0
  311. package/dist/esm/generated/codama/programs/index.js +1 -1
  312. package/dist/esm/generated/codama/programs/srsly.js +49 -37
  313. package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
  314. package/dist/esm/generated/codama/shared/index.js +9 -9
  315. package/dist/esm/generated/codama/types/atlasClaimed.js +28 -0
  316. package/dist/esm/generated/codama/types/atlasClaimed.js.map +1 -0
  317. package/dist/esm/generated/codama/types/borrowerInitialized.js +24 -0
  318. package/dist/esm/generated/codama/types/borrowerInitialized.js.map +1 -0
  319. package/dist/esm/generated/codama/types/cargoStats.js +38 -0
  320. package/dist/esm/generated/codama/types/cargoStats.js.map +1 -0
  321. package/dist/esm/generated/codama/types/contractClosed.js +26 -0
  322. package/dist/esm/generated/codama/types/contractClosed.js.map +1 -0
  323. package/dist/esm/generated/codama/types/contractCreated.js +28 -0
  324. package/dist/esm/generated/codama/types/contractCreated.js.map +1 -0
  325. package/dist/esm/generated/codama/types/contractDelegateSet.js +26 -0
  326. package/dist/esm/generated/codama/types/contractDelegateSet.js.map +1 -0
  327. package/dist/esm/generated/codama/types/contractPendingClose.js +26 -0
  328. package/dist/esm/generated/codama/types/contractPendingClose.js.map +1 -0
  329. package/dist/esm/generated/codama/types/contractUpdated.js +29 -0
  330. package/dist/esm/generated/codama/types/contractUpdated.js.map +1 -0
  331. package/dist/esm/generated/codama/types/discountAuthorization.js +28 -0
  332. package/dist/esm/generated/codama/types/discountAuthorization.js.map +1 -0
  333. package/dist/esm/generated/codama/types/fieldUpdate.js +24 -0
  334. package/dist/esm/generated/codama/types/fieldUpdate.js.map +1 -0
  335. package/dist/esm/generated/codama/types/index.js +29 -7
  336. package/dist/esm/generated/codama/types/index.js.map +1 -1
  337. package/dist/esm/generated/codama/types/miscStats.js +42 -0
  338. package/dist/esm/generated/codama/types/miscStats.js.map +1 -0
  339. package/dist/esm/generated/codama/types/movementStats.js +34 -0
  340. package/dist/esm/generated/codama/types/movementStats.js.map +1 -0
  341. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js +18 -0
  342. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  343. package/dist/esm/generated/codama/types/paymentFrequency.js +1 -1
  344. package/dist/esm/generated/codama/types/rentalAccepted.js +38 -0
  345. package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -0
  346. package/dist/esm/generated/codama/types/rentalActivated.js +26 -0
  347. package/dist/esm/generated/codama/types/rentalActivated.js.map +1 -0
  348. package/dist/esm/generated/codama/types/rentalCancelled.js +30 -0
  349. package/dist/esm/generated/codama/types/rentalCancelled.js.map +1 -0
  350. package/dist/esm/generated/codama/types/rentalClaimed.js +36 -0
  351. package/dist/esm/generated/codama/types/rentalClaimed.js.map +1 -0
  352. package/dist/esm/generated/codama/types/rentalClosed.js +28 -0
  353. package/dist/esm/generated/codama/types/rentalClosed.js.map +1 -0
  354. package/dist/esm/generated/codama/types/rentalPaymentProcessed.js +28 -0
  355. package/dist/esm/generated/codama/types/rentalPaymentProcessed.js.map +1 -0
  356. package/dist/esm/generated/codama/types/rentalScheduled.js +30 -0
  357. package/dist/esm/generated/codama/types/rentalScheduled.js.map +1 -0
  358. package/dist/esm/generated/codama/types/rentalStatus.js +25 -0
  359. package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -0
  360. package/dist/esm/generated/codama/types/reservationCreated.js +30 -0
  361. package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -0
  362. package/dist/esm/generated/codama/types/reservationKnockoff.js +30 -0
  363. package/dist/esm/generated/codama/types/reservationKnockoff.js.map +1 -0
  364. package/dist/esm/generated/codama/types/schedule.js +15 -15
  365. package/dist/esm/generated/codama/types/shipCounts.js +40 -0
  366. package/dist/esm/generated/codama/types/shipCounts.js.map +1 -0
  367. package/dist/esm/generated/codama/types/shipStats.js +27 -0
  368. package/dist/esm/generated/codama/types/shipStats.js.map +1 -0
  369. package/dist/esm/generated/codama/types/signal.js +14 -14
  370. package/dist/esm/generated/codama/types/trigger.js +37 -37
  371. package/dist/esm/index.js +38 -13
  372. package/dist/esm/index.js.map +1 -1
  373. package/dist/esm/instructions/acceptRental.js +84 -26
  374. package/dist/esm/instructions/acceptRental.js.map +1 -1
  375. package/dist/esm/instructions/approveAffiliate.js +7 -0
  376. package/dist/esm/instructions/approveAffiliate.js.map +1 -0
  377. package/dist/esm/instructions/cancelRental.js +12 -5
  378. package/dist/esm/instructions/cancelRental.js.map +1 -1
  379. package/dist/esm/instructions/claimBorrower.js +8 -4
  380. package/dist/esm/instructions/claimBorrower.js.map +1 -1
  381. package/dist/esm/instructions/claimRental.js +198 -0
  382. package/dist/esm/instructions/claimRental.js.map +1 -0
  383. package/dist/esm/instructions/closeContract.js +4 -3
  384. package/dist/esm/instructions/closeContract.js.map +1 -1
  385. package/dist/esm/instructions/closeRental.js +43 -13
  386. package/dist/esm/instructions/closeRental.js.map +1 -1
  387. package/dist/esm/instructions/createAffiliate.js +70 -0
  388. package/dist/esm/instructions/createAffiliate.js.map +1 -0
  389. package/dist/esm/instructions/createConfig.js +12 -0
  390. package/dist/esm/instructions/createConfig.js.map +1 -1
  391. package/dist/esm/instructions/createContract.js +12 -5
  392. package/dist/esm/instructions/createContract.js.map +1 -1
  393. package/dist/esm/instructions/deleteConfig.js +17 -6
  394. package/dist/esm/instructions/deleteConfig.js.map +1 -1
  395. package/dist/esm/instructions/deleteContract.js +76 -0
  396. package/dist/esm/instructions/deleteContract.js.map +1 -0
  397. package/dist/esm/instructions/index.js +29 -0
  398. package/dist/esm/instructions/index.js.map +1 -0
  399. package/dist/esm/instructions/invalidateRental.js +98 -0
  400. package/dist/esm/instructions/invalidateRental.js.map +1 -0
  401. package/dist/esm/instructions/ownerClaim.js +107 -0
  402. package/dist/esm/instructions/ownerClaim.js.map +1 -0
  403. package/dist/esm/instructions/ownerUpdate.js +65 -0
  404. package/dist/esm/instructions/ownerUpdate.js.map +1 -0
  405. package/dist/esm/instructions/releaseRental.js +20 -53
  406. package/dist/esm/instructions/releaseRental.js.map +1 -1
  407. package/dist/esm/instructions/removeAffiliate.js +7 -0
  408. package/dist/esm/instructions/removeAffiliate.js.map +1 -0
  409. package/dist/esm/instructions/reserveRental.js +10 -8
  410. package/dist/esm/instructions/reserveRental.js.map +1 -1
  411. package/dist/esm/instructions/setDelegate.js +69 -0
  412. package/dist/esm/instructions/setDelegate.js.map +1 -0
  413. package/dist/esm/instructions/updateAffiliate.js +54 -0
  414. package/dist/esm/instructions/updateAffiliate.js.map +1 -0
  415. package/dist/esm/instructions/updateBorrower.js +4 -2
  416. package/dist/esm/instructions/updateBorrower.js.map +1 -1
  417. package/dist/esm/instructions/updateConfig.js +0 -1
  418. package/dist/esm/instructions/updateConfig.js.map +1 -1
  419. package/dist/esm/instructions/updateContract.js +12 -5
  420. package/dist/esm/instructions/updateContract.js.map +1 -1
  421. package/dist/esm/kit/index.js +18 -0
  422. package/dist/esm/kit/index.js.map +1 -0
  423. package/dist/esm/legacy/index.js +86 -0
  424. package/dist/esm/legacy/index.js.map +1 -0
  425. package/dist/esm/package.json +9 -5
  426. package/dist/esm/params/amount.js +4 -4
  427. package/dist/esm/pda/constants.js +1 -0
  428. package/dist/esm/pda/constants.js.map +1 -1
  429. package/dist/esm/pda/index.js +5 -3
  430. package/dist/esm/pda/index.js.map +1 -1
  431. package/dist/esm/pda/lookupTable.js +56 -0
  432. package/dist/esm/pda/lookupTable.js.map +1 -0
  433. package/dist/esm/pda/slyvault.js +2 -47
  434. package/dist/esm/pda/slyvault.js.map +1 -1
  435. package/dist/esm/pda/srsly.js +32 -7
  436. package/dist/esm/pda/srsly.js.map +1 -1
  437. package/dist/esm/pda/thread.js +2 -2
  438. package/dist/esm/utils/addresses.js +7 -1
  439. package/dist/esm/utils/addresses.js.map +1 -1
  440. package/dist/esm/utils/config.js +19 -2
  441. package/dist/esm/utils/config.js.map +1 -1
  442. package/dist/esm/utils/discountAuth.js +151 -0
  443. package/dist/esm/utils/discountAuth.js.map +1 -0
  444. package/dist/esm/utils/index.js +11 -1
  445. package/dist/esm/utils/index.js.map +1 -1
  446. package/dist/esm/utils/instructionResult.js +72 -0
  447. package/dist/esm/utils/instructionResult.js.map +1 -0
  448. package/dist/esm/utils/instructions.js +12 -17
  449. package/dist/esm/utils/instructions.js.map +1 -1
  450. package/dist/esm/utils/lookupTable.js +139 -0
  451. package/dist/esm/utils/lookupTable.js.map +1 -0
  452. package/dist/esm/utils/rental.js +129 -0
  453. package/dist/esm/utils/rental.js.map +1 -0
  454. package/dist/esm/utils/rpc.js +52 -0
  455. package/dist/esm/utils/rpc.js.map +1 -0
  456. package/dist/esm/utils/signer.js +8 -8
  457. package/dist/esm/utils/signer.js.map +1 -1
  458. package/dist/esm/version.js +1 -1
  459. package/dist/esm/version.js.map +1 -1
  460. package/dist/idl/srsly.json +7364 -0
  461. package/dist/types/accounts/borrower.d.ts +33 -9
  462. package/dist/types/accounts/borrower.d.ts.map +1 -1
  463. package/dist/types/accounts/config.d.ts +19 -0
  464. package/dist/types/accounts/config.d.ts.map +1 -1
  465. package/dist/types/accounts/contract.d.ts +19 -0
  466. package/dist/types/accounts/contract.d.ts.map +1 -1
  467. package/dist/types/accounts/fleet.d.ts.map +1 -1
  468. package/dist/types/accounts/member.d.ts +9 -0
  469. package/dist/types/accounts/member.d.ts.map +1 -0
  470. package/dist/types/accounts/owner.d.ts +52 -0
  471. package/dist/types/accounts/owner.d.ts.map +1 -0
  472. package/dist/types/accounts/rental.d.ts +19 -0
  473. package/dist/types/accounts/rental.d.ts.map +1 -1
  474. package/dist/types/demos.d.ts +47 -2
  475. package/dist/types/demos.d.ts.map +1 -1
  476. package/dist/types/generated/codama/accounts/borrowerState.d.ts +12 -20
  477. package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -1
  478. package/dist/types/generated/codama/accounts/configState.d.ts +23 -6
  479. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
  480. package/dist/types/generated/codama/accounts/contractState.d.ts +64 -19
  481. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
  482. package/dist/types/generated/codama/accounts/fleet.d.ts +64 -0
  483. package/dist/types/generated/codama/accounts/fleet.d.ts.map +1 -0
  484. package/dist/types/generated/codama/accounts/index.d.ts +7 -7
  485. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
  486. package/dist/types/generated/codama/accounts/ownerState.d.ts +65 -0
  487. package/dist/types/generated/codama/accounts/ownerState.d.ts.map +1 -0
  488. package/dist/types/generated/codama/accounts/rentalState.d.ts +32 -5
  489. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
  490. package/dist/types/generated/codama/accounts/thread.d.ts +5 -2
  491. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
  492. package/dist/types/generated/codama/errors/index.d.ts +1 -1
  493. package/dist/types/generated/codama/errors/srsly.d.ts +43 -15
  494. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
  495. package/dist/types/generated/codama/index.d.ts +5 -5
  496. package/dist/types/generated/codama/instructions/acceptRental.d.ts +28 -27
  497. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
  498. package/dist/types/generated/codama/instructions/activateRental.d.ts +90 -0
  499. package/dist/types/generated/codama/instructions/activateRental.d.ts.map +1 -0
  500. package/dist/types/generated/codama/instructions/cancelRental.d.ts +25 -13
  501. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
  502. package/dist/types/generated/codama/instructions/claimBorrower.d.ts +33 -21
  503. package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -1
  504. package/dist/types/generated/codama/instructions/claimOwner.d.ts +91 -0
  505. package/dist/types/generated/codama/instructions/claimOwner.d.ts.map +1 -0
  506. package/dist/types/generated/codama/instructions/claimRental.d.ts +133 -0
  507. package/dist/types/generated/codama/instructions/claimRental.d.ts.map +1 -0
  508. package/dist/types/generated/codama/instructions/closeContract.d.ts +20 -29
  509. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
  510. package/dist/types/generated/codama/instructions/closeRental.d.ts +45 -24
  511. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
  512. package/dist/types/generated/codama/instructions/createConfig.d.ts +36 -15
  513. package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -1
  514. package/dist/types/generated/codama/instructions/createContract.d.ts +47 -36
  515. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
  516. package/dist/types/generated/codama/instructions/deleteConfig.d.ts +3 -3
  517. package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -1
  518. package/dist/types/generated/codama/instructions/deleteContract.d.ts +2 -2
  519. package/dist/types/generated/codama/instructions/deleteRental.d.ts +2 -2
  520. package/dist/types/generated/codama/instructions/index.d.ts +23 -20
  521. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
  522. package/dist/types/generated/codama/instructions/invalidateRental.d.ts +89 -0
  523. package/dist/types/generated/codama/instructions/invalidateRental.d.ts.map +1 -0
  524. package/dist/types/generated/codama/instructions/payRental.d.ts +50 -28
  525. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -1
  526. package/dist/types/generated/codama/instructions/releaseRental.d.ts +42 -49
  527. package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -1
  528. package/dist/types/generated/codama/instructions/reserveRental.d.ts +25 -21
  529. package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
  530. package/dist/types/generated/codama/instructions/scheduleRental.d.ts +114 -0
  531. package/dist/types/generated/codama/instructions/scheduleRental.d.ts.map +1 -0
  532. package/dist/types/generated/codama/instructions/setDelegate.d.ts +44 -0
  533. package/dist/types/generated/codama/instructions/setDelegate.d.ts.map +1 -0
  534. package/dist/types/generated/codama/instructions/updateBorrower.d.ts +5 -5
  535. package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -1
  536. package/dist/types/generated/codama/instructions/updateConfig.d.ts +41 -47
  537. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
  538. package/dist/types/generated/codama/instructions/updateContract.d.ts +37 -31
  539. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
  540. package/dist/types/generated/codama/instructions/updateOwner.d.ts +44 -0
  541. package/dist/types/generated/codama/instructions/updateOwner.d.ts.map +1 -0
  542. package/dist/types/generated/codama/programs/index.d.ts +1 -1
  543. package/dist/types/generated/codama/programs/srsly.d.ts +39 -30
  544. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
  545. package/dist/types/generated/codama/shared/index.d.ts +2 -2
  546. package/dist/types/generated/codama/types/atlasClaimed.d.ts +24 -0
  547. package/dist/types/generated/codama/types/atlasClaimed.d.ts.map +1 -0
  548. package/dist/types/generated/codama/types/borrowerInitialized.d.ts +17 -0
  549. package/dist/types/generated/codama/types/borrowerInitialized.d.ts.map +1 -0
  550. package/dist/types/generated/codama/types/cargoStats.d.ts +25 -0
  551. package/dist/types/generated/codama/types/cargoStats.d.ts.map +1 -0
  552. package/dist/types/generated/codama/types/contractClosed.d.ts +18 -0
  553. package/dist/types/generated/codama/types/contractClosed.d.ts.map +1 -0
  554. package/dist/types/generated/codama/types/contractCreated.d.ts +24 -0
  555. package/dist/types/generated/codama/types/contractCreated.d.ts.map +1 -0
  556. package/dist/types/generated/codama/types/contractDelegateSet.d.ts +22 -0
  557. package/dist/types/generated/codama/types/contractDelegateSet.d.ts.map +1 -0
  558. package/dist/types/generated/codama/types/contractPendingClose.d.ts +18 -0
  559. package/dist/types/generated/codama/types/contractPendingClose.d.ts.map +1 -0
  560. package/dist/types/generated/codama/types/contractUpdated.d.ts +27 -0
  561. package/dist/types/generated/codama/types/contractUpdated.d.ts.map +1 -0
  562. package/dist/types/generated/codama/types/discountAuthorization.d.ts +36 -0
  563. package/dist/types/generated/codama/types/discountAuthorization.d.ts.map +1 -0
  564. package/dist/types/generated/codama/types/fieldUpdate.d.ts +20 -0
  565. package/dist/types/generated/codama/types/fieldUpdate.d.ts.map +1 -0
  566. package/dist/types/generated/codama/types/index.d.ts +29 -7
  567. package/dist/types/generated/codama/types/index.d.ts.map +1 -1
  568. package/dist/types/generated/codama/types/miscStats.d.ts +27 -0
  569. package/dist/types/generated/codama/types/miscStats.d.ts.map +1 -0
  570. package/dist/types/generated/codama/types/movementStats.d.ts +23 -0
  571. package/dist/types/generated/codama/types/movementStats.d.ts.map +1 -0
  572. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts +17 -0
  573. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts.map +1 -0
  574. package/dist/types/generated/codama/types/paymentFrequency.d.ts +1 -1
  575. package/dist/types/generated/codama/types/rentalAccepted.d.ts +34 -0
  576. package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -0
  577. package/dist/types/generated/codama/types/rentalActivated.d.ts +18 -0
  578. package/dist/types/generated/codama/types/rentalActivated.d.ts.map +1 -0
  579. package/dist/types/generated/codama/types/rentalCancelled.d.ts +26 -0
  580. package/dist/types/generated/codama/types/rentalCancelled.d.ts.map +1 -0
  581. package/dist/types/generated/codama/types/rentalClaimed.d.ts +32 -0
  582. package/dist/types/generated/codama/types/rentalClaimed.d.ts.map +1 -0
  583. package/dist/types/generated/codama/types/rentalClosed.d.ts +19 -0
  584. package/dist/types/generated/codama/types/rentalClosed.d.ts.map +1 -0
  585. package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts +24 -0
  586. package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts.map +1 -0
  587. package/dist/types/generated/codama/types/rentalScheduled.d.ts +20 -0
  588. package/dist/types/generated/codama/types/rentalScheduled.d.ts.map +1 -0
  589. package/dist/types/generated/codama/types/rentalStatus.d.ts +19 -0
  590. package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -0
  591. package/dist/types/generated/codama/types/reservationCreated.d.ts +26 -0
  592. package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -0
  593. package/dist/types/generated/codama/types/reservationKnockoff.d.ts +26 -0
  594. package/dist/types/generated/codama/types/reservationKnockoff.d.ts.map +1 -0
  595. package/dist/types/generated/codama/types/schedule.d.ts +11 -11
  596. package/dist/types/generated/codama/types/shipCounts.d.ts +26 -0
  597. package/dist/types/generated/codama/types/shipCounts.d.ts.map +1 -0
  598. package/dist/types/generated/codama/types/shipStats.d.ts +24 -0
  599. package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -0
  600. package/dist/types/generated/codama/types/signal.d.ts +21 -21
  601. package/dist/types/generated/codama/types/trigger.d.ts +23 -23
  602. package/dist/types/index.d.ts +20 -11
  603. package/dist/types/index.d.ts.map +1 -1
  604. package/dist/types/instructions/acceptRental.d.ts +31 -2
  605. package/dist/types/instructions/acceptRental.d.ts.map +1 -1
  606. package/dist/types/instructions/approveAffiliate.d.ts +7 -0
  607. package/dist/types/instructions/approveAffiliate.d.ts.map +1 -0
  608. package/dist/types/instructions/cancelRental.d.ts +5 -0
  609. package/dist/types/instructions/cancelRental.d.ts.map +1 -1
  610. package/dist/types/instructions/claimBorrower.d.ts +6 -0
  611. package/dist/types/instructions/claimBorrower.d.ts.map +1 -1
  612. package/dist/types/instructions/claimRental.d.ts +114 -0
  613. package/dist/types/instructions/claimRental.d.ts.map +1 -0
  614. package/dist/types/instructions/closeContract.d.ts.map +1 -1
  615. package/dist/types/instructions/closeRental.d.ts +12 -5
  616. package/dist/types/instructions/closeRental.d.ts.map +1 -1
  617. package/dist/types/instructions/createAffiliate.d.ts +66 -0
  618. package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
  619. package/dist/types/instructions/createConfig.d.ts +10 -0
  620. package/dist/types/instructions/createConfig.d.ts.map +1 -1
  621. package/dist/types/instructions/createContract.d.ts +17 -9
  622. package/dist/types/instructions/createContract.d.ts.map +1 -1
  623. package/dist/types/instructions/deleteConfig.d.ts +4 -2
  624. package/dist/types/instructions/deleteConfig.d.ts.map +1 -1
  625. package/dist/types/instructions/deleteContract.d.ts +60 -0
  626. package/dist/types/instructions/deleteContract.d.ts.map +1 -0
  627. package/dist/types/instructions/index.d.ts +29 -0
  628. package/dist/types/instructions/index.d.ts.map +1 -0
  629. package/dist/types/instructions/invalidateRental.d.ts +86 -0
  630. package/dist/types/instructions/invalidateRental.d.ts.map +1 -0
  631. package/dist/types/instructions/ownerClaim.d.ts +72 -0
  632. package/dist/types/instructions/ownerClaim.d.ts.map +1 -0
  633. package/dist/types/instructions/ownerUpdate.d.ts +57 -0
  634. package/dist/types/instructions/ownerUpdate.d.ts.map +1 -0
  635. package/dist/types/instructions/releaseRental.d.ts +19 -39
  636. package/dist/types/instructions/releaseRental.d.ts.map +1 -1
  637. package/dist/types/instructions/removeAffiliate.d.ts +7 -0
  638. package/dist/types/instructions/removeAffiliate.d.ts.map +1 -0
  639. package/dist/types/instructions/reserveRental.d.ts.map +1 -1
  640. package/dist/types/instructions/setDelegate.d.ts +63 -0
  641. package/dist/types/instructions/setDelegate.d.ts.map +1 -0
  642. package/dist/types/instructions/updateAffiliate.d.ts +64 -0
  643. package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
  644. package/dist/types/instructions/updateBorrower.d.ts.map +1 -1
  645. package/dist/types/instructions/updateConfig.d.ts.map +1 -1
  646. package/dist/types/instructions/updateContract.d.ts +13 -4
  647. package/dist/types/instructions/updateContract.d.ts.map +1 -1
  648. package/dist/types/kit/index.d.ts +18 -0
  649. package/dist/types/kit/index.d.ts.map +1 -0
  650. package/dist/types/legacy/index.d.ts +90 -0
  651. package/dist/types/legacy/index.d.ts.map +1 -0
  652. package/dist/types/params/amount.d.ts +3 -3
  653. package/dist/types/pda/constants.d.ts +1 -0
  654. package/dist/types/pda/constants.d.ts.map +1 -1
  655. package/dist/types/pda/index.d.ts +4 -3
  656. package/dist/types/pda/index.d.ts.map +1 -1
  657. package/dist/types/pda/lookupTable.d.ts +29 -0
  658. package/dist/types/pda/lookupTable.d.ts.map +1 -0
  659. package/dist/types/pda/slyvault.d.ts +2 -23
  660. package/dist/types/pda/slyvault.d.ts.map +1 -1
  661. package/dist/types/pda/srsly.d.ts +17 -3
  662. package/dist/types/pda/srsly.d.ts.map +1 -1
  663. package/dist/types/pda/thread.d.ts +2 -2
  664. package/dist/types/utils/addresses.d.ts +7 -1
  665. package/dist/types/utils/addresses.d.ts.map +1 -1
  666. package/dist/types/utils/config.d.ts +48 -0
  667. package/dist/types/utils/config.d.ts.map +1 -1
  668. package/dist/types/utils/discountAuth.d.ts +90 -0
  669. package/dist/types/utils/discountAuth.d.ts.map +1 -0
  670. package/dist/types/utils/index.d.ts +6 -1
  671. package/dist/types/utils/index.d.ts.map +1 -1
  672. package/dist/types/utils/instructionResult.d.ts +57 -0
  673. package/dist/types/utils/instructionResult.d.ts.map +1 -0
  674. package/dist/types/utils/instructions.d.ts +16 -18
  675. package/dist/types/utils/instructions.d.ts.map +1 -1
  676. package/dist/types/utils/lookupTable.d.ts +48 -0
  677. package/dist/types/utils/lookupTable.d.ts.map +1 -0
  678. package/dist/types/utils/rental.d.ts +80 -0
  679. package/dist/types/utils/rental.d.ts.map +1 -0
  680. package/dist/types/utils/rpc.d.ts +37 -0
  681. package/dist/types/utils/rpc.d.ts.map +1 -0
  682. package/dist/types/utils/signer.d.ts +2 -2
  683. package/dist/types/utils/signer.d.ts.map +1 -1
  684. package/dist/types/version.d.ts +1 -1
  685. package/dist/types/version.d.ts.map +1 -1
  686. package/package.json +40 -21
  687. package/dist/cjs/generated/codama/accounts/memberState.js +0 -78
  688. package/dist/cjs/generated/codama/accounts/memberState.js.map +0 -1
  689. package/dist/cjs/generated/codama/accounts/vaultState.js +0 -82
  690. package/dist/cjs/generated/codama/accounts/vaultState.js.map +0 -1
  691. package/dist/cjs/generated/codama/instructions/captureRental.js +0 -129
  692. package/dist/cjs/generated/codama/instructions/captureRental.js.map +0 -1
  693. package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js +0 -225
  694. package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js.map +0 -1
  695. package/dist/cjs/generated/codama/instructions/claimContractPayments.js.map +0 -1
  696. package/dist/cjs/generated/codama/instructions/closeBorrower.js +0 -84
  697. package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +0 -1
  698. package/dist/cjs/generated/codama/instructions/deleteBorrower.js +0 -126
  699. package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +0 -1
  700. package/dist/cjs/generated/codama/instructions/discountBorrower.js +0 -118
  701. package/dist/cjs/generated/codama/instructions/discountBorrower.js.map +0 -1
  702. package/dist/cjs/generated/codama/types/capturedFlagData.js +0 -31
  703. package/dist/cjs/generated/codama/types/capturedFlagData.js.map +0 -1
  704. package/dist/cjs/generated/codama/types/memberConfig.js +0 -33
  705. package/dist/cjs/generated/codama/types/memberConfig.js.map +0 -1
  706. package/dist/cjs/generated/codama/types/memberType.js +0 -55
  707. package/dist/cjs/generated/codama/types/memberType.js.map +0 -1
  708. package/dist/cjs/instructions/captureRental.js +0 -85
  709. package/dist/cjs/instructions/captureRental.js.map +0 -1
  710. package/dist/cjs/instructions/claimBorrowerPayments.js +0 -69
  711. package/dist/cjs/instructions/claimBorrowerPayments.js.map +0 -1
  712. package/dist/cjs/instructions/claimContractPayments.js +0 -79
  713. package/dist/cjs/instructions/claimContractPayments.js.map +0 -1
  714. package/dist/cjs/instructions/closeBorrower.js +0 -60
  715. package/dist/cjs/instructions/closeBorrower.js.map +0 -1
  716. package/dist/cjs/instructions/deleteBorrower.js +0 -60
  717. package/dist/cjs/instructions/deleteBorrower.js.map +0 -1
  718. package/dist/cjs/instructions/discountBorrower.js +0 -75
  719. package/dist/cjs/instructions/discountBorrower.js.map +0 -1
  720. package/dist/esm/generated/codama/accounts/memberState.js +0 -66
  721. package/dist/esm/generated/codama/accounts/memberState.js.map +0 -1
  722. package/dist/esm/generated/codama/accounts/vaultState.js +0 -70
  723. package/dist/esm/generated/codama/accounts/vaultState.js.map +0 -1
  724. package/dist/esm/generated/codama/instructions/captureRental.js +0 -119
  725. package/dist/esm/generated/codama/instructions/captureRental.js.map +0 -1
  726. package/dist/esm/generated/codama/instructions/claimContractPayments.js.map +0 -1
  727. package/dist/esm/generated/codama/instructions/closeBorrower.js +0 -75
  728. package/dist/esm/generated/codama/instructions/closeBorrower.js.map +0 -1
  729. package/dist/esm/generated/codama/instructions/deleteBorrower.js +0 -116
  730. package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +0 -1
  731. package/dist/esm/generated/codama/instructions/discountBorrower.js +0 -108
  732. package/dist/esm/generated/codama/instructions/discountBorrower.js.map +0 -1
  733. package/dist/esm/generated/codama/types/capturedFlagData.js +0 -26
  734. package/dist/esm/generated/codama/types/capturedFlagData.js.map +0 -1
  735. package/dist/esm/generated/codama/types/memberConfig.js +0 -28
  736. package/dist/esm/generated/codama/types/memberConfig.js.map +0 -1
  737. package/dist/esm/generated/codama/types/memberType.js +0 -48
  738. package/dist/esm/generated/codama/types/memberType.js.map +0 -1
  739. package/dist/esm/instructions/captureRental.js +0 -82
  740. package/dist/esm/instructions/captureRental.js.map +0 -1
  741. package/dist/esm/instructions/claimContractPayments.js +0 -76
  742. package/dist/esm/instructions/claimContractPayments.js.map +0 -1
  743. package/dist/esm/instructions/closeBorrower.js +0 -57
  744. package/dist/esm/instructions/closeBorrower.js.map +0 -1
  745. package/dist/esm/instructions/deleteBorrower.js +0 -57
  746. package/dist/esm/instructions/deleteBorrower.js.map +0 -1
  747. package/dist/esm/instructions/discountBorrower.js +0 -72
  748. package/dist/esm/instructions/discountBorrower.js.map +0 -1
  749. package/dist/types/generated/codama/accounts/memberState.d.ts +0 -58
  750. package/dist/types/generated/codama/accounts/memberState.d.ts.map +0 -1
  751. package/dist/types/generated/codama/accounts/vaultState.d.ts +0 -66
  752. package/dist/types/generated/codama/accounts/vaultState.d.ts.map +0 -1
  753. package/dist/types/generated/codama/instructions/captureRental.d.ts +0 -59
  754. package/dist/types/generated/codama/instructions/captureRental.d.ts.map +0 -1
  755. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts +0 -75
  756. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts.map +0 -1
  757. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts +0 -98
  758. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts.map +0 -1
  759. package/dist/types/generated/codama/instructions/closeBorrower.d.ts +0 -43
  760. package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +0 -1
  761. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +0 -55
  762. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +0 -1
  763. package/dist/types/generated/codama/instructions/discountBorrower.d.ts +0 -56
  764. package/dist/types/generated/codama/instructions/discountBorrower.d.ts.map +0 -1
  765. package/dist/types/generated/codama/types/capturedFlagData.d.ts +0 -35
  766. package/dist/types/generated/codama/types/capturedFlagData.d.ts.map +0 -1
  767. package/dist/types/generated/codama/types/memberConfig.d.ts +0 -33
  768. package/dist/types/generated/codama/types/memberConfig.d.ts.map +0 -1
  769. package/dist/types/generated/codama/types/memberType.d.ts +0 -48
  770. package/dist/types/generated/codama/types/memberType.d.ts.map +0 -1
  771. package/dist/types/instructions/captureRental.d.ts +0 -58
  772. package/dist/types/instructions/captureRental.d.ts.map +0 -1
  773. package/dist/types/instructions/claimBorrowerPayments.d.ts +0 -59
  774. package/dist/types/instructions/claimBorrowerPayments.d.ts.map +0 -1
  775. package/dist/types/instructions/claimContractPayments.d.ts +0 -78
  776. package/dist/types/instructions/claimContractPayments.d.ts.map +0 -1
  777. package/dist/types/instructions/closeBorrower.d.ts +0 -45
  778. package/dist/types/instructions/closeBorrower.d.ts.map +0 -1
  779. package/dist/types/instructions/deleteBorrower.d.ts +0 -53
  780. package/dist/types/instructions/deleteBorrower.d.ts.map +0 -1
  781. package/dist/types/instructions/discountBorrower.d.ts +0 -64
  782. package/dist/types/instructions/discountBorrower.d.ts.map +0 -1
@@ -6,14 +6,18 @@
6
6
  */
7
7
  import { address } from '@solana/kit';
8
8
  import { getCloseRentalInstructionAsync } from '../generated/codama/instructions';
9
+ import { fetchRentalState } from '../generated/codama/accounts';
9
10
  import { mergeConfig, getAddresses } from '../utils/config';
10
11
  import { toTransactionSigner } from '../utils/signer';
11
12
  import { fetchContract } from '../accounts/contract';
13
+ import { fetchConfig } from '../accounts/config';
12
14
  import { fetchFleet } from '../accounts/fleet';
13
15
  import { deriveGameAccounts } from '../pda/sage';
14
- import { deriveRental, deriveRentalAuthority, deriveBorrowerState } from '../pda/srsly';
16
+ import { deriveRental, deriveRentalAuthority, deriveBorrowerState, deriveOwnerState } from '../pda/srsly';
15
17
  import { deriveRentalThread } from '../pda/thread';
16
18
  import { prepareInstructions } from '../utils/instructions';
19
+ import { createRpc } from '../utils/rpc';
20
+ import { requireExistingRentalSlot } from '../utils/rental';
17
21
  /**
18
22
  * Close a rental
19
23
  *
@@ -27,7 +31,7 @@ import { prepareInstructions } from '../utils/instructions';
27
31
  * - Derives rental thread for automated payments
28
32
  * - Codama auto-derives contractTokenAccount as ATA
29
33
  *
30
- * @param params - Rental closure parameters (payer, borrower, contract)
34
+ * @param params - Rental closure parameters (payer, rentalSlot, contract)
31
35
  * @param config - Optional SDK configuration overrides
32
36
  * @returns Kit instruction (or web3.js if PublicKey in config)
33
37
  *
@@ -35,7 +39,7 @@ import { prepareInstructions } from '../utils/instructions';
35
39
  * ```typescript
36
40
  * const ix = await closeRental({
37
41
  * payer: ownerWallet,
38
- * borrower: borrowerAddress,
42
+ * rentalSlot: 0,
39
43
  * contract: contractAddress
40
44
  * });
41
45
  * ```
@@ -47,9 +51,6 @@ export async function closeRental(params, config) {
47
51
  if (!params.payer) {
48
52
  throw new Error('payer is required');
49
53
  }
50
- if (!params.borrower) {
51
- throw new Error('borrower is required');
52
- }
53
54
  if (!params.contract) {
54
55
  throw new Error('contract is required');
55
56
  }
@@ -60,6 +61,9 @@ export async function closeRental(params, config) {
60
61
  const gameId = contractAccount.data.gameId;
61
62
  // Convert payer to transaction signer
62
63
  const payerSigner = toTransactionSigner(params.payer);
64
+ // Auto-detect rental slot if not provided
65
+ const rentalSlot = params.rentalSlot ?? requireExistingRentalSlot(contractAccount.data);
66
+ const otherSlot = rentalSlot === 0 ? 1 : 0;
63
67
  // Fetch fleet data to get faction (for SAGE account derivation)
64
68
  const fleetState = await fetchFleet(fleet, finalConfig.rpcUrl);
65
69
  const faction = fleetState.faction;
@@ -67,32 +71,58 @@ export async function closeRental(params, config) {
67
71
  // Derive SAGE game accounts (we need owner's profile for starbase player)
68
72
  const gameAccounts = await deriveGameAccounts(ownerProfile, faction, gameId);
69
73
  // Derive rental and rental authority PDAs
70
- const rental = await deriveRental(params.contract, params.borrower);
74
+ const rental = await deriveRental(params.contract, rentalSlot);
71
75
  const rentalAuthority = await deriveRentalAuthority();
76
+ // Get borrower - use provided value, or fetch from rental state, or fall back to payer
77
+ let borrower;
78
+ if (params.borrower) {
79
+ borrower = params.borrower;
80
+ }
81
+ else {
82
+ // Try to fetch from rental state
83
+ try {
84
+ const rpc = createRpc(finalConfig.rpcUrl || 'https://api.devnet.solana.com');
85
+ const rentalState = await fetchRentalState(rpc, rental);
86
+ borrower = rentalState.data.borrower;
87
+ }
88
+ catch {
89
+ // Rental state doesn't exist, fall back to payer
90
+ borrower = payerSigner.address;
91
+ }
92
+ }
72
93
  // Derive borrower state PDA
73
- const borrowerState = await deriveBorrowerState(params.borrower);
94
+ const borrowerState = await deriveBorrowerState(borrower);
74
95
  // Derive rental thread for automated payments
75
96
  const rentalThread = await deriveRentalThread(rental, rentalAuthority);
76
- // Get network-specific addresses
97
+ // Get atlasMint from on-chain config
98
+ const configAccount = await fetchConfig(finalConfig.rpcUrl);
99
+ const atlasMint = configAccount.data.atlasMint;
77
100
  const addresses = getAddresses(config);
78
- const atlasMint = address(addresses.atlasMint);
79
101
  const sageProgram = address(addresses.sage);
80
102
  const programAddress = address(addresses.srsly);
103
+ // Derive queuedThread from the other slot's rental
104
+ const otherSlotRental = await deriveRental(params.contract, otherSlot);
105
+ const queuedThread = await deriveRentalThread(otherSlotRental, rentalAuthority);
106
+ // Derive ownerState PDA from owner address
107
+ const ownerState = await deriveOwnerState(owner);
81
108
  // Call Codama-generated instruction
82
- // Note: contractTokenAccount is auto-derived by Codama as ATA for contract + mint
109
+ // Note: ownerTokenAccount is auto-derived by Codama as ATA for ownerState + mint
83
110
  const kitInstruction = await getCloseRentalInstructionAsync({
84
111
  payer: payerSigner,
85
112
  mint: atlasMint,
86
- borrower: address(params.borrower),
113
+ borrower: address(borrower),
87
114
  borrowerState,
88
- owner: address(owner),
115
+ ownerState,
89
116
  contract: address(params.contract),
117
+ rentalState: rental,
90
118
  rentalThread,
91
119
  fleet: address(fleet),
92
120
  gameId: address(gameId),
93
121
  starbase: gameAccounts.starbase,
94
122
  starbasePlayer: gameAccounts.starbasePlayer,
123
+ queuedThread,
95
124
  sageProgram,
125
+ rentalSlot,
96
126
  }, { programAddress });
97
127
  return prepareInstructions(kitInstruction, {
98
128
  computeUnits: params.computeUnits,
@@ -1 +1 @@
1
- {"version":3,"file":"closeRental.js","sourceRoot":"","sources":["../../../src/instructions/closeRental.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"closeRental.js","sourceRoot":"","sources":["../../../src/instructions/closeRental.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * @purpose Create a pending affiliate (Affiliate member) for SRSLY vault
3
+ *
4
+ * Wraps slyvault's initMember instruction with Affiliate type pre-configured.
5
+ * Auto-fetches vault and nonce from parent member state.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { initMember, fetchMember, } from '@wuwei-labs/slyvault';
9
+ import { mergeConfig } from '../utils/config';
10
+ /**
11
+ * Create a pending affiliate (Affiliate member)
12
+ *
13
+ * Creates a new Affiliate member state that references a parent Normal member.
14
+ * The affiliate must be approved by the parent member's authority using approveAffiliate.
15
+ *
16
+ * This function auto-fetches the vault address and parent member nonce from the
17
+ * parent member state, making it easier to use than the underlying initMember.
18
+ *
19
+ * @param params - Affiliate creation parameters
20
+ * @param config - Optional SDK configuration overrides
21
+ * @returns Prepared instruction(s)
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * import { createAffiliate } from '@wuwei-labs/srsly';
26
+ *
27
+ * // Create affiliate linked to parent member
28
+ * const ix = await createAffiliate({
29
+ * affiliate: wallet,
30
+ * parentMemberState: "PARENT_MEMBER_STATE_PDA",
31
+ * discountAuthority: "OPTIONAL_DISCOUNT_SIGNER", // optional, defaults to main authority
32
+ * // vault and nonce are auto-fetched from parent state
33
+ * });
34
+ * ```
35
+ */
36
+ export async function createAffiliate(params, config) {
37
+ const finalConfig = mergeConfig(config);
38
+ if (!params.affiliate)
39
+ throw new Error('affiliate is required');
40
+ if (!params.parentMemberState)
41
+ throw new Error('parentMemberState is required');
42
+ // Fetch parent member state to get vault and nonce
43
+ const { data: parentState } = await fetchMember(address(params.parentMemberState), finalConfig.rpcUrl);
44
+ // Validate parent is Normal type with affiliateEnabled
45
+ if (parentState.memberType.__kind !== 'Normal') {
46
+ throw new Error('Parent member is not a Normal member type');
47
+ }
48
+ if (!parentState.memberType.affiliateEnabled) {
49
+ throw new Error('Parent member does not have affiliates enabled');
50
+ }
51
+ // Get vault and nonce from parent state
52
+ const vaultAddress = parentState.vault;
53
+ const parentNonce = parentState.nonce;
54
+ // Call slyvault initMember with Affiliate type pre-configured
55
+ return initMember({
56
+ member: params.affiliate,
57
+ vault: vaultAddress,
58
+ nonce: params.nonce,
59
+ memberType: {
60
+ __kind: 'Affiliate',
61
+ parentMemberNonce: parentNonce,
62
+ percentageBps: 0,
63
+ claimableBalance: 0n,
64
+ isActive: false,
65
+ },
66
+ discountAuthority: params.discountAuthority,
67
+ computeUnits: params.computeUnits,
68
+ });
69
+ }
70
+ //# sourceMappingURL=createAffiliate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAffiliate.js","sourceRoot":"","sources":["../../../src/instructions/createAffiliate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,UAAU,EACV,WAAW,GAEZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAkB,MAAM,iBAAiB,CAAC;AAoC9D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAA6B,EAC7B,MAA2B;IAE3B,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM,CAAC,iBAAiB;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAEhF,mDAAmD;IACnD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,WAAW,CAC7C,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,EACjC,WAAW,CAAC,MAAM,CACnB,CAAC;IAEF,uDAAuD;IACvD,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,wCAAwC;IACxC,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC;IACvC,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC;IAEtC,8DAA8D;IAC9D,OAAO,UAAU,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC,SAAS;QACxB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE;YACV,MAAM,EAAE,WAAW;YACnB,iBAAiB,EAAE,WAAW;YAC9B,aAAa,EAAE,CAAC;YAChB,gBAAgB,EAAE,EAAE;YACpB,QAAQ,EAAE,KAAK;SAChB;QACD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;AACL,CAAC"}
@@ -45,10 +45,18 @@ export async function createConfig(params, config) {
45
45
  if (!params.vaultTokenAccount) {
46
46
  throw new Error('vaultTokenAccount is required');
47
47
  }
48
+ if (!params.lookupTable) {
49
+ throw new Error('lookupTable is required');
50
+ }
51
+ if (params.recentSlot === undefined || params.recentSlot === null) {
52
+ throw new Error('recentSlot is required');
53
+ }
48
54
  // Get network-specific addresses
49
55
  const addresses = getAddresses(config);
50
56
  const atlasMint = address(addresses.atlasMint);
51
57
  const programAddress = address(addresses.srsly);
58
+ const sageProgram = address(addresses.sage);
59
+ const antegenProgram = address(addresses.antegen);
52
60
  // Convert authority to TransactionSigner
53
61
  // Handles both real signers (CLI/backend) and addresses (browser/wallet)
54
62
  const authoritySigner = params.authority
@@ -61,7 +69,11 @@ export async function createConfig(params, config) {
61
69
  mint: atlasMint,
62
70
  vault: address(params.vault),
63
71
  vaultTokenAccount: address(params.vaultTokenAccount),
72
+ lookupTable: address(params.lookupTable),
73
+ sageProgram,
74
+ antegenProgram,
64
75
  srslyProgram: programAddress,
76
+ recentSlot: BigInt(params.recentSlot),
65
77
  }, { programAddress });
66
78
  return prepareInstructions(kitInstruction, {
67
79
  computeUnits: params.computeUnits,
@@ -1 +1 @@
1
- {"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../../src/instructions/createConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA8B5D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,yCAAyC;IACzC,yEAAyE;IACzE,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,8EAA8E;IAC9E,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAA4B,CAAC;QAC/D,YAAY,EAAE,cAAc;KAC7B,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../../src/instructions/createConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA0C5D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAe,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,OAAkB,CAAC,CAAC;IAE7D,yCAAyC;IACzC,yEAAyE;IACzE,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,8EAA8E;IAC9E,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAA4B,CAAC;QAC/D,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAsB,CAAC;QACnD,WAAW;QACX,cAAc;QACd,YAAY,EAAE,cAAc;QAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;KACtC,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -12,6 +12,7 @@ import { convertAmount, stardustToAtlas } from '../params/amount';
12
12
  import { convertDuration } from '../params/duration';
13
13
  import { normalizeSchedule } from '../params/schedule';
14
14
  import { fetchFleet } from '../accounts/fleet';
15
+ import { fetchConfig } from '../accounts/config';
15
16
  import { prepareInstructions } from '../utils/instructions';
16
17
  /**
17
18
  * Create a rental contract for a Star Atlas fleet
@@ -99,11 +100,16 @@ export async function createContract(params, config) {
99
100
  if (durationMaxSeconds < durationMinSeconds) {
100
101
  throw new Error(`durationMax (${durationMaxSeconds}s) must be >= durationMin (${durationMinSeconds}s)`);
101
102
  }
102
- // Get network-specific addresses
103
+ // Get atlasMint from on-chain config
104
+ const configAccount = await fetchConfig(finalConfig.rpcUrl);
105
+ const atlasMint = configAccount.data.atlasMint;
103
106
  const addresses = getAddresses(config);
104
- const atlasMint = address(addresses.atlasMint);
105
107
  const sageProgram = address(addresses.sage);
106
108
  const programAddress = address(addresses.srsly);
109
+ // Convert cancelDelayMin duration to seconds
110
+ const cancelDelayMinSeconds = params.cancelDelayMin
111
+ ? BigInt(convertDuration(params.cancelDelayMin))
112
+ : 1n; // Default 1 second (no instant cancel)
107
113
  // Call Codama-generated instruction
108
114
  const kitInstruction = await getCreateContractInstructionAsync({
109
115
  owner: ownerSigner,
@@ -115,10 +121,11 @@ export async function createContract(params, config) {
115
121
  rate: rateStardust,
116
122
  durationMin: BigInt(durationMinSeconds),
117
123
  durationMax: BigInt(durationMaxSeconds),
118
- paymentsFeq: normalizedSchedule,
124
+ paymentsFreq: normalizedSchedule,
119
125
  ownerKeyIndex: params.ownerKeyIndex ?? 0,
120
- allowInstantCancel: params.allowInstantCancel ?? false,
121
- reservationsDisabled: params.disableReservations ?? false
126
+ cancelDelayMin: cancelDelayMinSeconds,
127
+ reservationsDisabled: params.reservationsDisabled ?? true,
128
+ automationRequired: params.automationRequired ?? true
122
129
  }, { programAddress });
123
130
  return prepareInstructions(kitInstruction, {
124
131
  computeUnits: params.computeUnits,
@@ -1 +1 @@
1
- {"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createContract.js","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,8 @@ import { getDeleteConfigInstructionAsync } from '../generated/codama/instruction
12
12
  import { mergeConfig, getAddresses } from '../utils/config';
13
13
  import { toTransactionSigner } from '../utils/signer';
14
14
  import { prepareInstructions } from '../utils/instructions';
15
- import { deriveSlyvaultVault } from '../pda/slyvault';
15
+ import { fetchConfig } from '../accounts/config';
16
+ import { deriveVault } from '../pda/slyvault';
16
17
  /**
17
18
  * Delete program configuration
18
19
  *
@@ -50,17 +51,27 @@ export async function deleteConfig(params, config) {
50
51
  if (!addresses.srsly || addresses.srsly === 'undefined') {
51
52
  throw new Error(`Invalid SRSLY program address: ${addresses.srsly}. SDK config may not be initialized properly.`);
52
53
  }
53
- if (!params.mint) {
54
- throw new Error('mint is required for vault derivation');
55
- }
56
54
  const programAddress = address(addresses.srsly);
57
- const mintAddress = address(params.mint);
55
+ // Resolve mint: explicit param > on-chain config > hardcoded fallback
56
+ let mintAddress;
57
+ if (params.mint) {
58
+ mintAddress = address(params.mint);
59
+ }
60
+ else {
61
+ try {
62
+ const configAccount = await fetchConfig(finalConfig.rpcUrl);
63
+ mintAddress = configAccount.data.atlasMint;
64
+ }
65
+ catch {
66
+ mintAddress = address(addresses.atlasMint);
67
+ }
68
+ }
58
69
  // Convert authority to TransactionSigner if provided
59
70
  const authoritySigner = params.authority
60
71
  ? toTransactionSigner(params.authority)
61
72
  : undefined;
62
73
  // Derive vault PDA (creator = SRSLY program)
63
- const { vault, vaultTokenAccount } = await deriveSlyvaultVault(programAddress, mintAddress);
74
+ const { vault, vaultTokenAccount } = await deriveVault(programAddress, mintAddress);
64
75
  // Call Codama-generated instruction
65
76
  const kitInstruction = await getDeleteConfigInstructionAsync({
66
77
  authority: authoritySigner,
@@ -1 +1 @@
1
- {"version":3,"file":"deleteConfig.js","sourceRoot":"","sources":["../../../src/instructions/deleteConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAyBtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEvC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,kCAAkC,SAAS,CAAC,KAAK,+CAA+C,CAAC,CAAC;IACpH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEzC,qDAAqD;IACrD,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,6CAA6C;IAC7C,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,MAAM,mBAAmB,CAC5D,cAAc,EACd,WAAW,CACZ,CAAC;IAEF,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,KAAK;QACL,iBAAiB;QACjB,IAAI,EAAE,WAAW;KAClB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"deleteConfig.js","sourceRoot":"","sources":["../../../src/instructions/deleteConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AA2B9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEvC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,kCAAkC,SAAS,CAAC,KAAK,+CAA+C,CAAC,CAAC;IACpH,CAAC;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,sEAAsE;IACtE,IAAI,WAAoB,CAAC;IACzB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5D,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS;QACtC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,SAAS,CAAC;IAEd,6CAA6C;IAC7C,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CACpD,cAAc,EACd,WAAW,CACZ,CAAC;IAEF,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,SAAS,EAAE,eAAe;QAC1B,KAAK;QACL,iBAAiB;QACjB,IAAI,EAAE,WAAW;KAClB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * @purpose Simplified deleteContract instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated deleteContract instruction.
5
+ * Admin-only instruction to delete contract state for schema migrations.
6
+ * Returns lamports to the contract owner.
7
+ */
8
+ import { address } from '@solana/kit';
9
+ import { getDeleteContractInstructionAsync } from '../generated/codama/instructions';
10
+ import { mergeConfig, getAddresses, getRpcUrl } from '../utils/config';
11
+ import { toTransactionSigner } from '../utils/signer';
12
+ import { prepareInstructions } from '../utils/instructions';
13
+ import { fetchContract } from '../accounts/contract';
14
+ /**
15
+ * Delete contract state (admin-only for schema migrations)
16
+ *
17
+ * Used to delete contract state when the ContractState structure changes.
18
+ * Returns lamports to the contract owner. This is an escape hatch for
19
+ * fixing broken state and bypasses normal deserialization.
20
+ *
21
+ * @param params - Delete contract parameters
22
+ * @param config - Optional SDK configuration overrides
23
+ * @returns Kit instruction (or web3.js if PublicKey in config)
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * // Admin deletes corrupted contract state
28
+ * const ix = await deleteContract({
29
+ * admin: adminWallet,
30
+ * owner: "OWNER_WALLET_ADDRESS",
31
+ * contract: "CONTRACT_STATE_ADDRESS"
32
+ * });
33
+ * ```
34
+ */
35
+ export async function deleteContract(params, config) {
36
+ // Merge config
37
+ const finalConfig = mergeConfig(config);
38
+ // Validate required params
39
+ if (!params.admin) {
40
+ throw new Error('admin is required');
41
+ }
42
+ if (!params.contract) {
43
+ throw new Error('contract is required');
44
+ }
45
+ // Auto-fetch owner from contract if not provided
46
+ let ownerAddress;
47
+ if (params.owner) {
48
+ ownerAddress = address(params.owner);
49
+ }
50
+ else {
51
+ try {
52
+ const rpcUrl = getRpcUrl();
53
+ const contractData = await fetchContract(params.contract, rpcUrl);
54
+ ownerAddress = contractData.data.owner;
55
+ }
56
+ catch (error) {
57
+ throw new Error(`Could not fetch owner from contract. If contract state is corrupted, provide --owner manually. Error: ${error.message}`);
58
+ }
59
+ }
60
+ // Convert admin to transaction signer
61
+ const adminSigner = toTransactionSigner(params.admin);
62
+ // Get network-specific addresses
63
+ const addresses = getAddresses(config);
64
+ const programAddress = address(addresses.srsly);
65
+ // Call Codama-generated instruction (config PDA auto-derived)
66
+ const kitInstruction = await getDeleteContractInstructionAsync({
67
+ admin: adminSigner,
68
+ owner: ownerAddress,
69
+ contract: address(params.contract)
70
+ }, { programAddress });
71
+ return prepareInstructions(kitInstruction, {
72
+ computeUnits: params.computeUnits,
73
+ PublicKey: finalConfig.PublicKey
74
+ });
75
+ }
76
+ //# sourceMappingURL=deleteContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteContract.js","sourceRoot":"","sources":["../../../src/instructions/deleteContract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,iCAAiC,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAkB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAgCrD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA4B,EAC5B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,iDAAiD;IACjD,IAAI,YAAqB,CAAC;IAC1B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,QAAmB,EAAE,MAAM,CAAC,CAAC;YAC7E,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACzC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,yGAAyG,KAAK,CAAC,OAAO,EAAE,CACzH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,8DAA8D;IAC9D,MAAM,cAAc,GAAG,MAAM,iCAAiC,CAC5D;QACE,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC;KAC9C,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Instruction wrappers for SRSLY
3
+ * @module instructions
4
+ */
5
+ export { createContract } from './createContract';
6
+ export { updateContract } from './updateContract';
7
+ export { closeContract } from './closeContract';
8
+ export { deleteContract } from './deleteContract';
9
+ export { setDelegate } from './setDelegate';
10
+ export { acceptRental } from './acceptRental';
11
+ export { cancelRental } from './cancelRental';
12
+ export { closeRental } from './closeRental';
13
+ export { releaseRental } from './releaseRental';
14
+ export { invalidateRental } from './invalidateRental';
15
+ export { reserveRental } from './reserveRental';
16
+ export { deleteRental } from './deleteRental';
17
+ export { claimRental } from './claimRental';
18
+ export { claimBorrower } from './claimBorrower';
19
+ export { updateBorrower } from './updateBorrower';
20
+ export { ownerClaim } from './ownerClaim';
21
+ export { ownerUpdate } from './ownerUpdate';
22
+ export { createConfig } from './createConfig';
23
+ export { updateConfig } from './updateConfig';
24
+ export { deleteConfig } from './deleteConfig';
25
+ export { createAffiliate } from './createAffiliate';
26
+ export { approveAffiliate } from './approveAffiliate';
27
+ export { removeAffiliate } from './removeAffiliate';
28
+ export { updateAffiliate } from './updateAffiliate';
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/instructions/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAA+B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAA6B,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAyB,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAA+B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,eAAe,EAA8B,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * @purpose Simplified invalidateRental instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated invalidateRental instruction.
5
+ * Emergency function to invalidate a fleet's rental status when contract doesn't exist.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getInvalidateRentalInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { prepareInstructions } from '../utils/instructions';
12
+ import { deriveGameAccounts } from '../pda/sage';
13
+ /**
14
+ * Invalidate a rental
15
+ *
16
+ * Emergency function to invalidate a fleet's rental status in SAGE when:
17
+ * - Contract does NOT exist (was never created or was deleted)
18
+ * - Borrower is unknown (can't use releaseRental)
19
+ * - Fleet is stuck in SAGE rental mode
20
+ *
21
+ * If the contract exists, use `releaseRental` instead.
22
+ *
23
+ * **Use Cases:**
24
+ * - Fleet stuck in SAGE rental mode without a contract
25
+ * - Recovery when borrower is unknown
26
+ * - Contract was never created but fleet shows as rented
27
+ *
28
+ * **This function:**
29
+ * - Derives contract PDA from fleet (but doesn't require it to exist)
30
+ * - Gets gameId from config (based on programSet)
31
+ * - Derives owner's SAGE accounts (starbase, starbase_player)
32
+ * - Calls SAGE invalidate_rental to unlock the fleet
33
+ *
34
+ * @param params - Invalidate rental parameters
35
+ * @param config - Optional SDK configuration overrides
36
+ * @returns Kit instruction (or web3.js if PublicKey in config)
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * // Emergency invalidation of a stuck fleet (contract doesn't exist)
41
+ * const ix = await invalidateRental({
42
+ * fleet: "FLEET_ADDRESS",
43
+ * signer: wallet,
44
+ * ownerProfile: "OWNER_PROFILE_ADDRESS",
45
+ * faction: "mud"
46
+ * });
47
+ *
48
+ * // With compute budget
49
+ * const ix2 = await invalidateRental({
50
+ * fleet: fleetAddress,
51
+ * signer: adminWallet,
52
+ * ownerProfile: ownerProfileAddress,
53
+ * faction: 1,
54
+ * computeUnits: 200_000
55
+ * });
56
+ * ```
57
+ */
58
+ export async function invalidateRental(params, config) {
59
+ // Merge config
60
+ const finalConfig = mergeConfig(config);
61
+ // Validate required params
62
+ if (!params.fleet) {
63
+ throw new Error('fleet is required');
64
+ }
65
+ if (!params.signer) {
66
+ throw new Error('signer is required');
67
+ }
68
+ if (!params.ownerProfile) {
69
+ throw new Error('ownerProfile is required');
70
+ }
71
+ if (!params.faction) {
72
+ throw new Error('faction is required');
73
+ }
74
+ // Convert signer to transaction signer
75
+ const signerAccount = toTransactionSigner(params.signer);
76
+ // Get network-specific addresses (including gameId)
77
+ const addresses = getAddresses(config);
78
+ const gameId = address(addresses.gameId);
79
+ const sageProgram = address(addresses.sage);
80
+ const programAddress = address(addresses.srsly);
81
+ // Derive owner's SAGE accounts (NOT borrower's)
82
+ const gameAccounts = await deriveGameAccounts(params.ownerProfile, params.faction, gameId);
83
+ // Call Codama-generated instruction
84
+ // Contract and rentalAuthority are auto-derived by Codama
85
+ const kitInstruction = await getInvalidateRentalInstructionAsync({
86
+ signer: signerAccount,
87
+ fleet: address(params.fleet),
88
+ gameId: gameId,
89
+ starbase: gameAccounts.starbase,
90
+ starbasePlayer: gameAccounts.starbasePlayer,
91
+ sageProgram,
92
+ }, { programAddress });
93
+ return prepareInstructions(kitInstruction, {
94
+ computeUnits: params.computeUnits,
95
+ PublicKey: finalConfig.PublicKey
96
+ });
97
+ }
98
+ //# sourceMappingURL=invalidateRental.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalidateRental.js","sourceRoot":"","sources":["../../../src/instructions/invalidateRental.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,mCAAmC,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAoCjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA8B,EAC9B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,uCAAuC;IACvC,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEzD,oDAAoD;IACpD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,MAAiB,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,IAAe,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,gDAAgD;IAChD,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAC3C,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,OAAO,EACd,MAAM,CACP,CAAC;IAEF,oCAAoC;IACpC,0DAA0D;IAC1D,MAAM,cAAc,GAAG,MAAM,mCAAmC,CAC9D;QACE,MAAM,EAAE,aAAa;QACrB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,YAAY,CAAC,QAAQ;QAC/B,cAAc,EAAE,YAAY,CAAC,cAAc;QAC3C,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}