@wuwei-labs/srsly 3.0.0-beta.3 → 3.0.0-beta.30

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 (926) hide show
  1. package/README.md +38 -0
  2. package/dist/cjs/accounts/borrower.js +86 -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 +59 -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/index.js +23 -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/owner.js +105 -0
  15. package/dist/cjs/accounts/owner.js.map +1 -0
  16. package/dist/cjs/accounts/rental.js +56 -1
  17. package/dist/cjs/accounts/rental.js.map +1 -1
  18. package/dist/cjs/demos.js +446 -44
  19. package/dist/cjs/demos.js.map +1 -1
  20. package/dist/cjs/generated/codama/accounts/borrowerState.js +31 -22
  21. package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -1
  22. package/dist/cjs/generated/codama/accounts/configState.js +53 -49
  23. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
  24. package/dist/cjs/generated/codama/accounts/contractState.js +52 -44
  25. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
  26. package/dist/cjs/generated/codama/accounts/fleet.js +103 -0
  27. package/dist/cjs/generated/codama/accounts/fleet.js.map +1 -0
  28. package/dist/cjs/generated/codama/accounts/index.js +1 -2
  29. package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
  30. package/dist/cjs/generated/codama/accounts/ownerState.js +86 -0
  31. package/dist/cjs/generated/codama/accounts/ownerState.js.map +1 -0
  32. package/dist/cjs/generated/codama/accounts/rentalState.js +48 -30
  33. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
  34. package/dist/cjs/generated/codama/accounts/thread.js +41 -50
  35. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
  36. package/dist/cjs/generated/codama/errors/srsly.js +92 -32
  37. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
  38. package/dist/cjs/generated/codama/instructions/acceptRental.js +69 -140
  39. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
  40. package/dist/cjs/generated/codama/instructions/activateRental.js +328 -0
  41. package/dist/cjs/generated/codama/instructions/activateRental.js.map +1 -0
  42. package/dist/cjs/generated/codama/instructions/cancelRental.js +70 -53
  43. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
  44. package/dist/cjs/generated/codama/instructions/claimBorrower.js +26 -21
  45. package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -1
  46. package/dist/cjs/generated/codama/instructions/claimContract.js +202 -0
  47. package/dist/cjs/generated/codama/instructions/claimContract.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/{claimContractPayments.js → claimOwner.js} +70 -56
  49. package/dist/cjs/generated/codama/instructions/claimOwner.js.map +1 -0
  50. package/dist/cjs/generated/codama/instructions/claimRental.js +336 -0
  51. package/dist/cjs/generated/codama/instructions/claimRental.js.map +1 -0
  52. package/dist/cjs/generated/codama/instructions/closeBorrower.js +105 -6
  53. package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -1
  54. package/dist/cjs/generated/codama/instructions/closeContract.js +82 -34
  55. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
  56. package/dist/cjs/generated/codama/instructions/closeContractThread.js +167 -0
  57. package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -0
  58. package/dist/cjs/generated/codama/instructions/closeRental.js +9 -119
  59. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
  60. package/dist/cjs/generated/codama/instructions/{claimBorrowerPayments.js → createBorrower.js} +59 -73
  61. package/dist/cjs/generated/codama/instructions/createBorrower.js.map +1 -0
  62. package/dist/cjs/generated/codama/instructions/createConfig.js +56 -20
  63. package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -1
  64. package/dist/cjs/generated/codama/instructions/createContract.js +59 -27
  65. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
  66. package/dist/cjs/generated/codama/instructions/createContractThread.js +317 -0
  67. package/dist/cjs/generated/codama/instructions/createContractThread.js.map +1 -0
  68. package/dist/cjs/generated/codama/instructions/deleteBorrower.js +5 -16
  69. package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -1
  70. package/dist/cjs/generated/codama/instructions/deleteConfig.js +15 -15
  71. package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -1
  72. package/dist/cjs/generated/codama/instructions/deleteContract.js +5 -5
  73. package/dist/cjs/generated/codama/instructions/deleteRental.js +7 -7
  74. package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -1
  75. package/dist/cjs/generated/codama/instructions/index.js +8 -3
  76. package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
  77. package/dist/cjs/generated/codama/instructions/invalidateRental.js +156 -0
  78. package/dist/cjs/generated/codama/instructions/invalidateRental.js.map +1 -0
  79. package/dist/cjs/generated/codama/instructions/payContract.js +224 -0
  80. package/dist/cjs/generated/codama/instructions/payContract.js.map +1 -0
  81. package/dist/cjs/generated/codama/instructions/payRental.js +64 -24
  82. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -1
  83. package/dist/cjs/generated/codama/instructions/processContract.js +224 -0
  84. package/dist/cjs/generated/codama/instructions/processContract.js.map +1 -0
  85. package/dist/cjs/generated/codama/instructions/releaseRental.js +8 -49
  86. package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -1
  87. package/dist/cjs/generated/codama/instructions/reserveRental.js +114 -59
  88. package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -1
  89. package/dist/cjs/generated/codama/instructions/scheduleRental.js +265 -0
  90. package/dist/cjs/generated/codama/instructions/scheduleRental.js.map +1 -0
  91. package/dist/cjs/generated/codama/instructions/setDelegate.js +6 -6
  92. package/dist/cjs/generated/codama/instructions/updateBorrower.js +14 -50
  93. package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -1
  94. package/dist/cjs/generated/codama/instructions/updateConfig.js +37 -55
  95. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
  96. package/dist/cjs/generated/codama/instructions/updateContract.js +17 -23
  97. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
  98. package/dist/cjs/generated/codama/instructions/updateContractThread.js +177 -0
  99. package/dist/cjs/generated/codama/instructions/updateContractThread.js.map +1 -0
  100. package/dist/cjs/generated/codama/instructions/updateOwner.js +79 -0
  101. package/dist/cjs/generated/codama/instructions/updateOwner.js.map +1 -0
  102. package/dist/cjs/generated/codama/programs/srsly.js +54 -38
  103. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
  104. package/dist/cjs/generated/codama/shared/index.js +8 -8
  105. package/dist/cjs/generated/codama/types/atlasClaimed.js +8 -8
  106. package/dist/cjs/generated/codama/types/bidType.js +30 -0
  107. package/dist/cjs/generated/codama/types/bidType.js.map +1 -0
  108. package/dist/cjs/generated/codama/types/borrowerInitialized.js +4 -4
  109. package/dist/cjs/generated/codama/types/cargoStats.js +43 -0
  110. package/dist/cjs/generated/codama/types/cargoStats.js.map +1 -0
  111. package/dist/cjs/generated/codama/types/contractClosed.js +6 -6
  112. package/dist/cjs/generated/codama/types/contractCreated.js +8 -8
  113. package/dist/cjs/generated/codama/types/contractDelegateSet.js +6 -6
  114. package/dist/cjs/generated/codama/types/contractPendingClose.js +31 -0
  115. package/dist/cjs/generated/codama/types/contractPendingClose.js.map +1 -0
  116. package/dist/cjs/generated/codama/types/contractProcessed.js +33 -0
  117. package/dist/cjs/generated/codama/types/contractProcessed.js.map +1 -0
  118. package/dist/cjs/generated/codama/types/contractThreadClosed.js +29 -0
  119. package/dist/cjs/generated/codama/types/contractThreadClosed.js.map +1 -0
  120. package/dist/cjs/generated/codama/types/contractThreadCreated.js +29 -0
  121. package/dist/cjs/generated/codama/types/contractThreadCreated.js.map +1 -0
  122. package/dist/cjs/generated/codama/types/contractThreadUpdated.js +39 -0
  123. package/dist/cjs/generated/codama/types/contractThreadUpdated.js.map +1 -0
  124. package/dist/cjs/generated/codama/types/contractUpdated.js +9 -4
  125. package/dist/cjs/generated/codama/types/contractUpdated.js.map +1 -1
  126. package/dist/cjs/generated/codama/types/discountAuthorization.js +35 -0
  127. package/dist/cjs/generated/codama/types/discountAuthorization.js.map +1 -0
  128. package/dist/cjs/generated/codama/types/fieldUpdate.js +29 -0
  129. package/dist/cjs/generated/codama/types/fieldUpdate.js.map +1 -0
  130. package/dist/cjs/generated/codama/types/index.js +17 -5
  131. package/dist/cjs/generated/codama/types/index.js.map +1 -1
  132. package/dist/cjs/generated/codama/types/miscStats.js +47 -0
  133. package/dist/cjs/generated/codama/types/miscStats.js.map +1 -0
  134. package/dist/cjs/generated/codama/types/movementStats.js +39 -0
  135. package/dist/cjs/generated/codama/types/movementStats.js.map +1 -0
  136. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js +23 -0
  137. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  138. package/dist/cjs/generated/codama/types/queuedRentalRefunded.js +33 -0
  139. package/dist/cjs/generated/codama/types/queuedRentalRefunded.js.map +1 -0
  140. package/dist/cjs/generated/codama/types/rentalAccepted.js +10 -18
  141. package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -1
  142. package/dist/cjs/generated/codama/types/rentalActivated.js +33 -0
  143. package/dist/cjs/generated/codama/types/rentalActivated.js.map +1 -0
  144. package/dist/cjs/generated/codama/types/rentalCancelled.js +10 -10
  145. package/dist/cjs/generated/codama/types/rentalClaimed.js +41 -0
  146. package/dist/cjs/generated/codama/types/rentalClaimed.js.map +1 -0
  147. package/dist/cjs/generated/codama/types/rentalClosed.js +8 -8
  148. package/dist/cjs/generated/codama/types/rentalExpired.js +31 -0
  149. package/dist/cjs/generated/codama/types/rentalExpired.js.map +1 -0
  150. package/dist/cjs/generated/codama/types/rentalExpiredInline.js +31 -0
  151. package/dist/cjs/generated/codama/types/rentalExpiredInline.js.map +1 -0
  152. package/dist/cjs/generated/codama/types/rentalPaymentProcessed.js +8 -8
  153. package/dist/cjs/generated/codama/types/rentalScheduled.js +35 -0
  154. package/dist/cjs/generated/codama/types/rentalScheduled.js.map +1 -0
  155. package/dist/cjs/generated/codama/types/rentalStatus.js +32 -0
  156. package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -0
  157. package/dist/cjs/generated/codama/types/reservationCreated.js +14 -10
  158. package/dist/cjs/generated/codama/types/reservationCreated.js.map +1 -1
  159. package/dist/cjs/generated/codama/types/reservationKnockoff.js +10 -10
  160. package/dist/cjs/generated/codama/types/schedule.js +14 -14
  161. package/dist/cjs/generated/codama/types/shipCounts.js +45 -0
  162. package/dist/cjs/generated/codama/types/shipCounts.js.map +1 -0
  163. package/dist/cjs/generated/codama/types/shipStats.js +32 -0
  164. package/dist/cjs/generated/codama/types/shipStats.js.map +1 -0
  165. package/dist/cjs/generated/codama/types/signal.js +26 -12
  166. package/dist/cjs/generated/codama/types/signal.js.map +1 -1
  167. package/dist/cjs/generated/codama/types/trigger.js +36 -36
  168. package/dist/cjs/index.js +4 -170
  169. package/dist/cjs/index.js.map +1 -1
  170. package/dist/cjs/instructions/acceptRental.js +95 -57
  171. package/dist/cjs/instructions/acceptRental.js.map +1 -1
  172. package/dist/cjs/instructions/activateRental.js +85 -0
  173. package/dist/cjs/instructions/activateRental.js.map +1 -0
  174. package/dist/cjs/instructions/approveAffiliate.js +11 -0
  175. package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
  176. package/dist/cjs/instructions/cancelRental.js +32 -23
  177. package/dist/cjs/instructions/cancelRental.js.map +1 -1
  178. package/dist/cjs/instructions/claimBorrower.js +47 -21
  179. package/dist/cjs/instructions/claimBorrower.js.map +1 -1
  180. package/dist/cjs/instructions/claimContract.js +56 -0
  181. package/dist/cjs/instructions/claimContract.js.map +1 -0
  182. package/dist/cjs/instructions/claimRental.js +201 -0
  183. package/dist/cjs/instructions/claimRental.js.map +1 -0
  184. package/dist/cjs/instructions/closeBorrower.js +21 -23
  185. package/dist/cjs/instructions/closeBorrower.js.map +1 -1
  186. package/dist/cjs/instructions/closeContract.js +96 -21
  187. package/dist/cjs/instructions/closeContract.js.map +1 -1
  188. package/dist/cjs/instructions/closeContractThread.js +66 -0
  189. package/dist/cjs/instructions/closeContractThread.js.map +1 -0
  190. package/dist/cjs/instructions/closeRental.js +50 -31
  191. package/dist/cjs/instructions/closeRental.js.map +1 -1
  192. package/dist/cjs/instructions/createAffiliate.js +73 -0
  193. package/dist/cjs/instructions/createAffiliate.js.map +1 -0
  194. package/dist/cjs/instructions/createBorrower.js +64 -0
  195. package/dist/cjs/instructions/createBorrower.js.map +1 -0
  196. package/dist/cjs/instructions/createConfig.js +12 -0
  197. package/dist/cjs/instructions/createConfig.js.map +1 -1
  198. package/dist/cjs/instructions/createContract.js +46 -35
  199. package/dist/cjs/instructions/createContract.js.map +1 -1
  200. package/dist/cjs/instructions/createContractThread.js +79 -0
  201. package/dist/cjs/instructions/createContractThread.js.map +1 -0
  202. package/dist/cjs/instructions/deleteBorrower.js +13 -13
  203. package/dist/cjs/instructions/deleteBorrower.js.map +1 -1
  204. package/dist/cjs/instructions/deleteConfig.js +16 -5
  205. package/dist/cjs/instructions/deleteConfig.js.map +1 -1
  206. package/dist/cjs/instructions/deleteContract.js +79 -0
  207. package/dist/cjs/instructions/deleteContract.js.map +1 -0
  208. package/dist/cjs/instructions/deleteRental.js +1 -4
  209. package/dist/cjs/instructions/deleteRental.js.map +1 -1
  210. package/dist/cjs/instructions/index.js +50 -0
  211. package/dist/cjs/instructions/index.js.map +1 -0
  212. package/dist/cjs/instructions/invalidateRental.js +101 -0
  213. package/dist/cjs/instructions/invalidateRental.js.map +1 -0
  214. package/dist/cjs/instructions/ownerClaim.js +110 -0
  215. package/dist/cjs/instructions/ownerClaim.js.map +1 -0
  216. package/dist/cjs/instructions/ownerUpdate.js +68 -0
  217. package/dist/cjs/instructions/ownerUpdate.js.map +1 -0
  218. package/dist/cjs/instructions/releaseRental.js +20 -53
  219. package/dist/cjs/instructions/releaseRental.js.map +1 -1
  220. package/dist/cjs/instructions/removeAffiliate.js +11 -0
  221. package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
  222. package/dist/cjs/instructions/reserveRental.js +78 -70
  223. package/dist/cjs/instructions/reserveRental.js.map +1 -1
  224. package/dist/cjs/instructions/updateAffiliate.js +57 -0
  225. package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
  226. package/dist/cjs/instructions/updateBorrower.js +44 -38
  227. package/dist/cjs/instructions/updateBorrower.js.map +1 -1
  228. package/dist/cjs/instructions/updateConfig.js +0 -4
  229. package/dist/cjs/instructions/updateConfig.js.map +1 -1
  230. package/dist/cjs/instructions/updateContract.js +22 -30
  231. package/dist/cjs/instructions/updateContract.js.map +1 -1
  232. package/dist/cjs/instructions/updateContractThread.js +60 -0
  233. package/dist/cjs/instructions/updateContractThread.js.map +1 -0
  234. package/dist/cjs/kit/index.js +68 -0
  235. package/dist/cjs/kit/index.js.map +1 -0
  236. package/dist/cjs/legacy/index.js +126 -0
  237. package/dist/cjs/legacy/index.js.map +1 -0
  238. package/dist/cjs/package.json +9 -5
  239. package/dist/cjs/params/amount.js +4 -4
  240. package/dist/cjs/params/index.js +21 -0
  241. package/dist/cjs/params/index.js.map +1 -0
  242. package/dist/cjs/params/sol.js +71 -0
  243. package/dist/cjs/params/sol.js.map +1 -0
  244. package/dist/cjs/pda/constants.js +7 -2
  245. package/dist/cjs/pda/constants.js.map +1 -1
  246. package/dist/cjs/pda/index.js +13 -22
  247. package/dist/cjs/pda/index.js.map +1 -1
  248. package/dist/cjs/pda/lookupTable.js +60 -0
  249. package/dist/cjs/pda/lookupTable.js.map +1 -0
  250. package/dist/cjs/pda/sage.js +11 -10
  251. package/dist/cjs/pda/sage.js.map +1 -1
  252. package/dist/cjs/pda/slyvault.js +5 -49
  253. package/dist/cjs/pda/slyvault.js.map +1 -1
  254. package/dist/cjs/pda/srsly.js +39 -19
  255. package/dist/cjs/pda/srsly.js.map +1 -1
  256. package/dist/cjs/pda/thread.js +41 -31
  257. package/dist/cjs/pda/thread.js.map +1 -1
  258. package/dist/cjs/pda/token.js +5 -4
  259. package/dist/cjs/pda/token.js.map +1 -1
  260. package/dist/cjs/utils/addresses.js +8 -1
  261. package/dist/cjs/utils/addresses.js.map +1 -1
  262. package/dist/cjs/utils/config.js +20 -2
  263. package/dist/cjs/utils/config.js.map +1 -1
  264. package/dist/cjs/utils/discountAuth.js +161 -0
  265. package/dist/cjs/utils/discountAuth.js.map +1 -0
  266. package/dist/cjs/utils/index.js +25 -1
  267. package/dist/cjs/utils/index.js.map +1 -1
  268. package/dist/cjs/utils/instructionResult.js +76 -0
  269. package/dist/cjs/utils/instructionResult.js.map +1 -0
  270. package/dist/cjs/utils/instructions.js +12 -17
  271. package/dist/cjs/utils/instructions.js.map +1 -1
  272. package/dist/cjs/utils/lookupTable.js +143 -0
  273. package/dist/cjs/utils/lookupTable.js.map +1 -0
  274. package/dist/cjs/utils/rental.js +49 -0
  275. package/dist/cjs/utils/rental.js.map +1 -0
  276. package/dist/cjs/utils/rpc.js +57 -0
  277. package/dist/cjs/utils/rpc.js.map +1 -0
  278. package/dist/cjs/utils/signer.js +16 -9
  279. package/dist/cjs/utils/signer.js.map +1 -1
  280. package/dist/cjs/version.js +1 -1
  281. package/dist/cjs/version.js.map +1 -1
  282. package/dist/esm/accounts/borrower.js +87 -17
  283. package/dist/esm/accounts/borrower.js.map +1 -1
  284. package/dist/esm/accounts/config.js +50 -3
  285. package/dist/esm/accounts/config.js.map +1 -1
  286. package/dist/esm/accounts/contract.js +60 -3
  287. package/dist/esm/accounts/contract.js.map +1 -1
  288. package/dist/esm/accounts/fleet.js +3 -2
  289. package/dist/esm/accounts/fleet.js.map +1 -1
  290. package/dist/esm/accounts/index.js +7 -0
  291. package/dist/esm/accounts/index.js.map +1 -0
  292. package/dist/esm/accounts/member.js +9 -0
  293. package/dist/esm/accounts/member.js.map +1 -0
  294. package/dist/esm/accounts/owner.js +101 -0
  295. package/dist/esm/accounts/owner.js.map +1 -0
  296. package/dist/esm/accounts/rental.js +57 -3
  297. package/dist/esm/accounts/rental.js.map +1 -1
  298. package/dist/esm/demos.js +445 -43
  299. package/dist/esm/demos.js.map +1 -1
  300. package/dist/esm/generated/codama/accounts/borrowerState.js +32 -23
  301. package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -1
  302. package/dist/esm/generated/codama/accounts/configState.js +53 -50
  303. package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
  304. package/dist/esm/generated/codama/accounts/contractState.js +53 -45
  305. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
  306. package/dist/esm/generated/codama/accounts/fleet.js +90 -0
  307. package/dist/esm/generated/codama/accounts/fleet.js.map +1 -0
  308. package/dist/esm/generated/codama/accounts/index.js +6 -7
  309. package/dist/esm/generated/codama/accounts/index.js.map +1 -1
  310. package/dist/esm/generated/codama/accounts/ownerState.js +73 -0
  311. package/dist/esm/generated/codama/accounts/ownerState.js.map +1 -0
  312. package/dist/esm/generated/codama/accounts/rentalState.js +49 -30
  313. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
  314. package/dist/esm/generated/codama/accounts/thread.js +43 -52
  315. package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
  316. package/dist/esm/generated/codama/errors/index.js +1 -1
  317. package/dist/esm/generated/codama/errors/srsly.js +92 -32
  318. package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
  319. package/dist/esm/generated/codama/index.js +5 -5
  320. package/dist/esm/generated/codama/instructions/acceptRental.js +72 -143
  321. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
  322. package/dist/esm/generated/codama/instructions/activateRental.js +318 -0
  323. package/dist/esm/generated/codama/instructions/activateRental.js.map +1 -0
  324. package/dist/esm/generated/codama/instructions/cancelRental.js +73 -56
  325. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
  326. package/dist/esm/generated/codama/instructions/claimBorrower.js +29 -24
  327. package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -1
  328. package/dist/esm/generated/codama/instructions/{claimContractPayments.js → claimContract.js} +36 -64
  329. package/dist/esm/generated/codama/instructions/claimContract.js.map +1 -0
  330. package/dist/esm/generated/codama/instructions/claimOwner.js +234 -0
  331. package/dist/esm/generated/codama/instructions/claimOwner.js.map +1 -0
  332. package/dist/esm/generated/codama/instructions/claimRental.js +326 -0
  333. package/dist/esm/generated/codama/instructions/claimRental.js.map +1 -0
  334. package/dist/esm/generated/codama/instructions/closeBorrower.js +107 -9
  335. package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -1
  336. package/dist/esm/generated/codama/instructions/closeContract.js +85 -37
  337. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
  338. package/dist/esm/generated/codama/instructions/closeContractThread.js +157 -0
  339. package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -0
  340. package/dist/esm/generated/codama/instructions/closeRental.js +12 -122
  341. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
  342. package/dist/esm/generated/codama/instructions/createBorrower.js +201 -0
  343. package/dist/esm/generated/codama/instructions/createBorrower.js.map +1 -0
  344. package/dist/esm/generated/codama/instructions/createConfig.js +59 -23
  345. package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -1
  346. package/dist/esm/generated/codama/instructions/createContract.js +62 -30
  347. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
  348. package/dist/esm/generated/codama/instructions/createContractThread.js +307 -0
  349. package/dist/esm/generated/codama/instructions/createContractThread.js.map +1 -0
  350. package/dist/esm/generated/codama/instructions/deleteBorrower.js +8 -19
  351. package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -1
  352. package/dist/esm/generated/codama/instructions/deleteConfig.js +18 -18
  353. package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -1
  354. package/dist/esm/generated/codama/instructions/deleteContract.js +8 -8
  355. package/dist/esm/generated/codama/instructions/deleteRental.js +10 -10
  356. package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -1
  357. package/dist/esm/generated/codama/instructions/index.js +26 -21
  358. package/dist/esm/generated/codama/instructions/index.js.map +1 -1
  359. package/dist/esm/generated/codama/instructions/invalidateRental.js +146 -0
  360. package/dist/esm/generated/codama/instructions/invalidateRental.js.map +1 -0
  361. package/dist/esm/generated/codama/instructions/payContract.js +214 -0
  362. package/dist/esm/generated/codama/instructions/payContract.js.map +1 -0
  363. package/dist/esm/generated/codama/instructions/payRental.js +67 -27
  364. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -1
  365. package/dist/esm/generated/codama/instructions/processContract.js +214 -0
  366. package/dist/esm/generated/codama/instructions/processContract.js.map +1 -0
  367. package/dist/esm/generated/codama/instructions/releaseRental.js +11 -52
  368. package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -1
  369. package/dist/esm/generated/codama/instructions/reserveRental.js +117 -62
  370. package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -1
  371. package/dist/esm/generated/codama/instructions/scheduleRental.js +255 -0
  372. package/dist/esm/generated/codama/instructions/scheduleRental.js.map +1 -0
  373. package/dist/esm/generated/codama/instructions/setDelegate.js +9 -9
  374. package/dist/esm/generated/codama/instructions/updateBorrower.js +17 -52
  375. package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -1
  376. package/dist/esm/generated/codama/instructions/updateConfig.js +40 -58
  377. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
  378. package/dist/esm/generated/codama/instructions/updateContract.js +20 -26
  379. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
  380. package/dist/esm/generated/codama/instructions/updateContractThread.js +167 -0
  381. package/dist/esm/generated/codama/instructions/updateContractThread.js.map +1 -0
  382. package/dist/esm/generated/codama/instructions/updateOwner.js +70 -0
  383. package/dist/esm/generated/codama/instructions/updateOwner.js.map +1 -0
  384. package/dist/esm/generated/codama/programs/index.js +1 -1
  385. package/dist/esm/generated/codama/programs/srsly.js +55 -39
  386. package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
  387. package/dist/esm/generated/codama/shared/index.js +9 -9
  388. package/dist/esm/generated/codama/types/atlasClaimed.js +9 -9
  389. package/dist/esm/generated/codama/types/bidType.js +24 -0
  390. package/dist/esm/generated/codama/types/bidType.js.map +1 -0
  391. package/dist/esm/generated/codama/types/borrowerInitialized.js +5 -5
  392. package/dist/esm/generated/codama/types/cargoStats.js +38 -0
  393. package/dist/esm/generated/codama/types/cargoStats.js.map +1 -0
  394. package/dist/esm/generated/codama/types/contractClosed.js +7 -7
  395. package/dist/esm/generated/codama/types/contractCreated.js +9 -9
  396. package/dist/esm/generated/codama/types/contractDelegateSet.js +7 -7
  397. package/dist/esm/generated/codama/types/contractPendingClose.js +26 -0
  398. package/dist/esm/generated/codama/types/contractPendingClose.js.map +1 -0
  399. package/dist/esm/generated/codama/types/contractProcessed.js +28 -0
  400. package/dist/esm/generated/codama/types/contractProcessed.js.map +1 -0
  401. package/dist/esm/generated/codama/types/contractThreadClosed.js +24 -0
  402. package/dist/esm/generated/codama/types/contractThreadClosed.js.map +1 -0
  403. package/dist/esm/generated/codama/types/contractThreadCreated.js +24 -0
  404. package/dist/esm/generated/codama/types/contractThreadCreated.js.map +1 -0
  405. package/dist/esm/generated/codama/types/contractThreadUpdated.js +34 -0
  406. package/dist/esm/generated/codama/types/contractThreadUpdated.js.map +1 -0
  407. package/dist/esm/generated/codama/types/contractUpdated.js +10 -5
  408. package/dist/esm/generated/codama/types/contractUpdated.js.map +1 -1
  409. package/dist/esm/generated/codama/types/discountAuthorization.js +30 -0
  410. package/dist/esm/generated/codama/types/discountAuthorization.js.map +1 -0
  411. package/dist/esm/generated/codama/types/fieldUpdate.js +24 -0
  412. package/dist/esm/generated/codama/types/fieldUpdate.js.map +1 -0
  413. package/dist/esm/generated/codama/types/index.js +31 -19
  414. package/dist/esm/generated/codama/types/index.js.map +1 -1
  415. package/dist/esm/generated/codama/types/miscStats.js +42 -0
  416. package/dist/esm/generated/codama/types/miscStats.js.map +1 -0
  417. package/dist/esm/generated/codama/types/movementStats.js +34 -0
  418. package/dist/esm/generated/codama/types/movementStats.js.map +1 -0
  419. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js +18 -0
  420. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  421. package/dist/esm/generated/codama/types/paymentFrequency.js +1 -1
  422. package/dist/esm/generated/codama/types/queuedRentalRefunded.js +28 -0
  423. package/dist/esm/generated/codama/types/queuedRentalRefunded.js.map +1 -0
  424. package/dist/esm/generated/codama/types/rentalAccepted.js +11 -19
  425. package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -1
  426. package/dist/esm/generated/codama/types/rentalActivated.js +28 -0
  427. package/dist/esm/generated/codama/types/rentalActivated.js.map +1 -0
  428. package/dist/esm/generated/codama/types/rentalCancelled.js +11 -11
  429. package/dist/esm/generated/codama/types/rentalClaimed.js +36 -0
  430. package/dist/esm/generated/codama/types/rentalClaimed.js.map +1 -0
  431. package/dist/esm/generated/codama/types/rentalClosed.js +9 -9
  432. package/dist/esm/generated/codama/types/rentalExpired.js +26 -0
  433. package/dist/esm/generated/codama/types/rentalExpired.js.map +1 -0
  434. package/dist/esm/generated/codama/types/rentalExpiredInline.js +26 -0
  435. package/dist/esm/generated/codama/types/rentalExpiredInline.js.map +1 -0
  436. package/dist/esm/generated/codama/types/rentalPaymentProcessed.js +9 -9
  437. package/dist/esm/generated/codama/types/rentalScheduled.js +30 -0
  438. package/dist/esm/generated/codama/types/rentalScheduled.js.map +1 -0
  439. package/dist/esm/generated/codama/types/rentalStatus.js +26 -0
  440. package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -0
  441. package/dist/esm/generated/codama/types/reservationCreated.js +15 -11
  442. package/dist/esm/generated/codama/types/reservationCreated.js.map +1 -1
  443. package/dist/esm/generated/codama/types/reservationKnockoff.js +11 -11
  444. package/dist/esm/generated/codama/types/schedule.js +15 -15
  445. package/dist/esm/generated/codama/types/shipCounts.js +40 -0
  446. package/dist/esm/generated/codama/types/shipCounts.js.map +1 -0
  447. package/dist/esm/generated/codama/types/shipStats.js +27 -0
  448. package/dist/esm/generated/codama/types/shipStats.js.map +1 -0
  449. package/dist/esm/generated/codama/types/signal.js +28 -14
  450. package/dist/esm/generated/codama/types/signal.js.map +1 -1
  451. package/dist/esm/generated/codama/types/trigger.js +37 -37
  452. package/dist/esm/index.js +1 -75
  453. package/dist/esm/index.js.map +1 -1
  454. package/dist/esm/instructions/acceptRental.js +98 -60
  455. package/dist/esm/instructions/acceptRental.js.map +1 -1
  456. package/dist/esm/instructions/activateRental.js +82 -0
  457. package/dist/esm/instructions/activateRental.js.map +1 -0
  458. package/dist/esm/instructions/approveAffiliate.js +7 -0
  459. package/dist/esm/instructions/approveAffiliate.js.map +1 -0
  460. package/dist/esm/instructions/cancelRental.js +33 -24
  461. package/dist/esm/instructions/cancelRental.js.map +1 -1
  462. package/dist/esm/instructions/claimBorrower.js +49 -23
  463. package/dist/esm/instructions/claimBorrower.js.map +1 -1
  464. package/dist/esm/instructions/claimContract.js +53 -0
  465. package/dist/esm/instructions/claimContract.js.map +1 -0
  466. package/dist/esm/instructions/claimRental.js +198 -0
  467. package/dist/esm/instructions/claimRental.js.map +1 -0
  468. package/dist/esm/instructions/closeBorrower.js +22 -24
  469. package/dist/esm/instructions/closeBorrower.js.map +1 -1
  470. package/dist/esm/instructions/closeContract.js +66 -24
  471. package/dist/esm/instructions/closeContract.js.map +1 -1
  472. package/dist/esm/instructions/closeContractThread.js +63 -0
  473. package/dist/esm/instructions/closeContractThread.js.map +1 -0
  474. package/dist/esm/instructions/closeRental.js +51 -32
  475. package/dist/esm/instructions/closeRental.js.map +1 -1
  476. package/dist/esm/instructions/createAffiliate.js +70 -0
  477. package/dist/esm/instructions/createAffiliate.js.map +1 -0
  478. package/dist/esm/instructions/createBorrower.js +61 -0
  479. package/dist/esm/instructions/createBorrower.js.map +1 -0
  480. package/dist/esm/instructions/createConfig.js +12 -0
  481. package/dist/esm/instructions/createConfig.js.map +1 -1
  482. package/dist/esm/instructions/createContract.js +48 -37
  483. package/dist/esm/instructions/createContract.js.map +1 -1
  484. package/dist/esm/instructions/createContractThread.js +76 -0
  485. package/dist/esm/instructions/createContractThread.js.map +1 -0
  486. package/dist/esm/instructions/deleteBorrower.js +13 -13
  487. package/dist/esm/instructions/deleteBorrower.js.map +1 -1
  488. package/dist/esm/instructions/deleteConfig.js +17 -6
  489. package/dist/esm/instructions/deleteConfig.js.map +1 -1
  490. package/dist/esm/instructions/deleteContract.js +76 -0
  491. package/dist/esm/instructions/deleteContract.js.map +1 -0
  492. package/dist/esm/instructions/deleteRental.js +1 -4
  493. package/dist/esm/instructions/deleteRental.js.map +1 -1
  494. package/dist/esm/instructions/index.js +34 -0
  495. package/dist/esm/instructions/index.js.map +1 -0
  496. package/dist/esm/instructions/invalidateRental.js +98 -0
  497. package/dist/esm/instructions/invalidateRental.js.map +1 -0
  498. package/dist/esm/instructions/ownerClaim.js +107 -0
  499. package/dist/esm/instructions/ownerClaim.js.map +1 -0
  500. package/dist/esm/instructions/ownerUpdate.js +65 -0
  501. package/dist/esm/instructions/ownerUpdate.js.map +1 -0
  502. package/dist/esm/instructions/releaseRental.js +20 -53
  503. package/dist/esm/instructions/releaseRental.js.map +1 -1
  504. package/dist/esm/instructions/removeAffiliate.js +7 -0
  505. package/dist/esm/instructions/removeAffiliate.js.map +1 -0
  506. package/dist/esm/instructions/reserveRental.js +80 -72
  507. package/dist/esm/instructions/reserveRental.js.map +1 -1
  508. package/dist/esm/instructions/updateAffiliate.js +54 -0
  509. package/dist/esm/instructions/updateAffiliate.js.map +1 -0
  510. package/dist/esm/instructions/updateBorrower.js +45 -39
  511. package/dist/esm/instructions/updateBorrower.js.map +1 -1
  512. package/dist/esm/instructions/updateConfig.js +0 -4
  513. package/dist/esm/instructions/updateConfig.js.map +1 -1
  514. package/dist/esm/instructions/updateContract.js +22 -30
  515. package/dist/esm/instructions/updateContract.js.map +1 -1
  516. package/dist/esm/instructions/updateContractThread.js +57 -0
  517. package/dist/esm/instructions/updateContractThread.js.map +1 -0
  518. package/dist/esm/kit/index.js +26 -0
  519. package/dist/esm/kit/index.js.map +1 -0
  520. package/dist/esm/legacy/index.js +85 -0
  521. package/dist/esm/legacy/index.js.map +1 -0
  522. package/dist/esm/package.json +9 -5
  523. package/dist/esm/params/amount.js +4 -4
  524. package/dist/esm/params/index.js +5 -0
  525. package/dist/esm/params/index.js.map +1 -0
  526. package/dist/esm/params/sol.js +68 -0
  527. package/dist/esm/params/sol.js.map +1 -0
  528. package/dist/esm/pda/constants.js +6 -1
  529. package/dist/esm/pda/constants.js.map +1 -1
  530. package/dist/esm/pda/index.js +6 -22
  531. package/dist/esm/pda/index.js.map +1 -1
  532. package/dist/esm/pda/lookupTable.js +57 -0
  533. package/dist/esm/pda/lookupTable.js.map +1 -0
  534. package/dist/esm/pda/sage.js +11 -10
  535. package/dist/esm/pda/sage.js.map +1 -1
  536. package/dist/esm/pda/slyvault.js +2 -47
  537. package/dist/esm/pda/slyvault.js.map +1 -1
  538. package/dist/esm/pda/srsly.js +38 -19
  539. package/dist/esm/pda/srsly.js.map +1 -1
  540. package/dist/esm/pda/thread.js +40 -31
  541. package/dist/esm/pda/thread.js.map +1 -1
  542. package/dist/esm/pda/token.js +5 -4
  543. package/dist/esm/pda/token.js.map +1 -1
  544. package/dist/esm/utils/addresses.js +8 -1
  545. package/dist/esm/utils/addresses.js.map +1 -1
  546. package/dist/esm/utils/config.js +19 -2
  547. package/dist/esm/utils/config.js.map +1 -1
  548. package/dist/esm/utils/discountAuth.js +155 -0
  549. package/dist/esm/utils/discountAuth.js.map +1 -0
  550. package/dist/esm/utils/index.js +11 -1
  551. package/dist/esm/utils/index.js.map +1 -1
  552. package/dist/esm/utils/instructionResult.js +72 -0
  553. package/dist/esm/utils/instructionResult.js.map +1 -0
  554. package/dist/esm/utils/instructions.js +12 -17
  555. package/dist/esm/utils/instructions.js.map +1 -1
  556. package/dist/esm/utils/lookupTable.js +139 -0
  557. package/dist/esm/utils/lookupTable.js.map +1 -0
  558. package/dist/esm/utils/rental.js +45 -0
  559. package/dist/esm/utils/rental.js.map +1 -0
  560. package/dist/esm/utils/rpc.js +52 -0
  561. package/dist/esm/utils/rpc.js.map +1 -0
  562. package/dist/esm/utils/signer.js +16 -9
  563. package/dist/esm/utils/signer.js.map +1 -1
  564. package/dist/esm/version.js +1 -1
  565. package/dist/esm/version.js.map +1 -1
  566. package/{src → dist}/idl/srsly.json +2786 -1677
  567. package/dist/types/accounts/borrower.d.ts +33 -9
  568. package/dist/types/accounts/borrower.d.ts.map +1 -1
  569. package/dist/types/accounts/config.d.ts +19 -0
  570. package/dist/types/accounts/config.d.ts.map +1 -1
  571. package/dist/types/accounts/contract.d.ts +19 -0
  572. package/dist/types/accounts/contract.d.ts.map +1 -1
  573. package/dist/types/accounts/fleet.d.ts.map +1 -1
  574. package/dist/types/accounts/index.d.ts +7 -0
  575. package/dist/types/accounts/index.d.ts.map +1 -0
  576. package/dist/types/accounts/member.d.ts +9 -0
  577. package/dist/types/accounts/member.d.ts.map +1 -0
  578. package/dist/types/accounts/owner.d.ts +52 -0
  579. package/dist/types/accounts/owner.d.ts.map +1 -0
  580. package/dist/types/accounts/rental.d.ts +19 -0
  581. package/dist/types/accounts/rental.d.ts.map +1 -1
  582. package/dist/types/demos.d.ts +59 -0
  583. package/dist/types/demos.d.ts.map +1 -1
  584. package/dist/types/generated/codama/accounts/borrowerState.d.ts +26 -11
  585. package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -1
  586. package/dist/types/generated/codama/accounts/configState.d.ts +26 -21
  587. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
  588. package/dist/types/generated/codama/accounts/contractState.d.ts +71 -59
  589. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
  590. package/dist/types/generated/codama/accounts/fleet.d.ts +64 -0
  591. package/dist/types/generated/codama/accounts/fleet.d.ts.map +1 -0
  592. package/dist/types/generated/codama/accounts/index.d.ts +6 -7
  593. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
  594. package/dist/types/generated/codama/accounts/ownerState.d.ts +65 -0
  595. package/dist/types/generated/codama/accounts/ownerState.d.ts.map +1 -0
  596. package/dist/types/generated/codama/accounts/rentalState.d.ts +58 -19
  597. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
  598. package/dist/types/generated/codama/accounts/thread.d.ts +5 -8
  599. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
  600. package/dist/types/generated/codama/errors/index.d.ts +1 -1
  601. package/dist/types/generated/codama/errors/srsly.d.ts +66 -26
  602. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
  603. package/dist/types/generated/codama/index.d.ts +5 -5
  604. package/dist/types/generated/codama/instructions/acceptRental.d.ts +62 -70
  605. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
  606. package/dist/types/generated/codama/instructions/activateRental.d.ts +134 -0
  607. package/dist/types/generated/codama/instructions/activateRental.d.ts.map +1 -0
  608. package/dist/types/generated/codama/instructions/cancelRental.d.ts +40 -25
  609. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
  610. package/dist/types/generated/codama/instructions/claimBorrower.d.ts +27 -35
  611. package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -1
  612. package/dist/types/generated/codama/instructions/claimContract.d.ts +79 -0
  613. package/dist/types/generated/codama/instructions/claimContract.d.ts.map +1 -0
  614. package/dist/types/generated/codama/instructions/claimOwner.d.ts +91 -0
  615. package/dist/types/generated/codama/instructions/claimOwner.d.ts.map +1 -0
  616. package/dist/types/generated/codama/instructions/claimRental.d.ts +133 -0
  617. package/dist/types/generated/codama/instructions/claimRental.d.ts.map +1 -0
  618. package/dist/types/generated/codama/instructions/closeBorrower.d.ts +51 -11
  619. package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -1
  620. package/dist/types/generated/codama/instructions/closeContract.d.ts +67 -24
  621. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
  622. package/dist/types/generated/codama/instructions/closeContractThread.d.ts +70 -0
  623. package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -0
  624. package/dist/types/generated/codama/instructions/closeRental.d.ts +23 -52
  625. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
  626. package/dist/types/generated/codama/instructions/createBorrower.d.ts +88 -0
  627. package/dist/types/generated/codama/instructions/createBorrower.d.ts.map +1 -0
  628. package/dist/types/generated/codama/instructions/createConfig.d.ts +36 -15
  629. package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -1
  630. package/dist/types/generated/codama/instructions/createContract.d.ts +43 -36
  631. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
  632. package/dist/types/generated/codama/instructions/createContractThread.d.ts +133 -0
  633. package/dist/types/generated/codama/instructions/createContractThread.d.ts.map +1 -0
  634. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +3 -3
  635. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -1
  636. package/dist/types/generated/codama/instructions/deleteConfig.d.ts +3 -3
  637. package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -1
  638. package/dist/types/generated/codama/instructions/deleteContract.d.ts +2 -2
  639. package/dist/types/generated/codama/instructions/deleteRental.d.ts +6 -3
  640. package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -1
  641. package/dist/types/generated/codama/instructions/index.d.ts +26 -21
  642. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
  643. package/dist/types/generated/codama/instructions/invalidateRental.d.ts +89 -0
  644. package/dist/types/generated/codama/instructions/invalidateRental.d.ts.map +1 -0
  645. package/dist/types/generated/codama/instructions/payContract.d.ts +100 -0
  646. package/dist/types/generated/codama/instructions/payContract.d.ts.map +1 -0
  647. package/dist/types/generated/codama/instructions/payRental.d.ts +50 -28
  648. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -1
  649. package/dist/types/generated/codama/instructions/processContract.d.ts +100 -0
  650. package/dist/types/generated/codama/instructions/processContract.d.ts.map +1 -0
  651. package/dist/types/generated/codama/instructions/releaseRental.d.ts +42 -49
  652. package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -1
  653. package/dist/types/generated/codama/instructions/reserveRental.d.ts +97 -69
  654. package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -1
  655. package/dist/types/generated/codama/instructions/scheduleRental.d.ts +114 -0
  656. package/dist/types/generated/codama/instructions/scheduleRental.d.ts.map +1 -0
  657. package/dist/types/generated/codama/instructions/setDelegate.d.ts +3 -3
  658. package/dist/types/generated/codama/instructions/updateBorrower.d.ts +24 -22
  659. package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -1
  660. package/dist/types/generated/codama/instructions/updateConfig.d.ts +34 -59
  661. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
  662. package/dist/types/generated/codama/instructions/updateContract.d.ts +24 -24
  663. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
  664. package/dist/types/generated/codama/instructions/updateContractThread.d.ts +76 -0
  665. package/dist/types/generated/codama/instructions/updateContractThread.d.ts.map +1 -0
  666. package/dist/types/generated/codama/instructions/updateOwner.d.ts +44 -0
  667. package/dist/types/generated/codama/instructions/updateOwner.d.ts.map +1 -0
  668. package/dist/types/generated/codama/programs/index.d.ts +1 -1
  669. package/dist/types/generated/codama/programs/srsly.d.ts +48 -34
  670. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
  671. package/dist/types/generated/codama/shared/index.d.ts +2 -2
  672. package/dist/types/generated/codama/types/atlasClaimed.d.ts +1 -1
  673. package/dist/types/generated/codama/types/bidType.d.ts +18 -0
  674. package/dist/types/generated/codama/types/bidType.d.ts.map +1 -0
  675. package/dist/types/generated/codama/types/borrowerInitialized.d.ts +1 -1
  676. package/dist/types/generated/codama/types/cargoStats.d.ts +25 -0
  677. package/dist/types/generated/codama/types/cargoStats.d.ts.map +1 -0
  678. package/dist/types/generated/codama/types/contractClosed.d.ts +1 -1
  679. package/dist/types/generated/codama/types/contractCreated.d.ts +1 -1
  680. package/dist/types/generated/codama/types/contractDelegateSet.d.ts +1 -1
  681. package/dist/types/generated/codama/types/contractPendingClose.d.ts +18 -0
  682. package/dist/types/generated/codama/types/contractPendingClose.d.ts.map +1 -0
  683. package/dist/types/generated/codama/types/contractProcessed.d.ts +24 -0
  684. package/dist/types/generated/codama/types/contractProcessed.d.ts.map +1 -0
  685. package/dist/types/generated/codama/types/contractThreadClosed.d.ts +17 -0
  686. package/dist/types/generated/codama/types/contractThreadClosed.d.ts.map +1 -0
  687. package/dist/types/generated/codama/types/contractThreadCreated.d.ts +17 -0
  688. package/dist/types/generated/codama/types/contractThreadCreated.d.ts.map +1 -0
  689. package/dist/types/generated/codama/types/contractThreadUpdated.d.ts +24 -0
  690. package/dist/types/generated/codama/types/contractThreadUpdated.d.ts.map +1 -0
  691. package/dist/types/generated/codama/types/contractUpdated.d.ts +16 -6
  692. package/dist/types/generated/codama/types/contractUpdated.d.ts.map +1 -1
  693. package/dist/types/generated/codama/types/discountAuthorization.d.ts +40 -0
  694. package/dist/types/generated/codama/types/discountAuthorization.d.ts.map +1 -0
  695. package/dist/types/generated/codama/types/fieldUpdate.d.ts +20 -0
  696. package/dist/types/generated/codama/types/fieldUpdate.d.ts.map +1 -0
  697. package/dist/types/generated/codama/types/index.d.ts +31 -19
  698. package/dist/types/generated/codama/types/index.d.ts.map +1 -1
  699. package/dist/types/generated/codama/types/miscStats.d.ts +27 -0
  700. package/dist/types/generated/codama/types/miscStats.d.ts.map +1 -0
  701. package/dist/types/generated/codama/types/movementStats.d.ts +23 -0
  702. package/dist/types/generated/codama/types/movementStats.d.ts.map +1 -0
  703. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts +17 -0
  704. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts.map +1 -0
  705. package/dist/types/generated/codama/types/paymentFrequency.d.ts +1 -1
  706. package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts +24 -0
  707. package/dist/types/generated/codama/types/queuedRentalRefunded.d.ts.map +1 -0
  708. package/dist/types/generated/codama/types/rentalAccepted.d.ts +3 -11
  709. package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -1
  710. package/dist/types/generated/codama/types/rentalActivated.d.ts +24 -0
  711. package/dist/types/generated/codama/types/rentalActivated.d.ts.map +1 -0
  712. package/dist/types/generated/codama/types/rentalCancelled.d.ts +1 -1
  713. package/dist/types/generated/codama/types/rentalClaimed.d.ts +32 -0
  714. package/dist/types/generated/codama/types/rentalClaimed.d.ts.map +1 -0
  715. package/dist/types/generated/codama/types/rentalClosed.d.ts +1 -1
  716. package/dist/types/generated/codama/types/rentalExpired.d.ts +18 -0
  717. package/dist/types/generated/codama/types/rentalExpired.d.ts.map +1 -0
  718. package/dist/types/generated/codama/types/rentalExpiredInline.d.ts +18 -0
  719. package/dist/types/generated/codama/types/rentalExpiredInline.d.ts.map +1 -0
  720. package/dist/types/generated/codama/types/rentalPaymentProcessed.d.ts +1 -1
  721. package/dist/types/generated/codama/types/rentalScheduled.d.ts +20 -0
  722. package/dist/types/generated/codama/types/rentalScheduled.d.ts.map +1 -0
  723. package/dist/types/generated/codama/types/rentalStatus.d.ts +20 -0
  724. package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -0
  725. package/dist/types/generated/codama/types/reservationCreated.d.ts +11 -7
  726. package/dist/types/generated/codama/types/reservationCreated.d.ts.map +1 -1
  727. package/dist/types/generated/codama/types/reservationKnockoff.d.ts +1 -1
  728. package/dist/types/generated/codama/types/schedule.d.ts +11 -11
  729. package/dist/types/generated/codama/types/shipCounts.d.ts +26 -0
  730. package/dist/types/generated/codama/types/shipCounts.d.ts.map +1 -0
  731. package/dist/types/generated/codama/types/shipStats.d.ts +24 -0
  732. package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -0
  733. package/dist/types/generated/codama/types/signal.d.ts +27 -23
  734. package/dist/types/generated/codama/types/signal.d.ts.map +1 -1
  735. package/dist/types/generated/codama/types/trigger.d.ts +23 -23
  736. package/dist/types/index.d.ts +1 -34
  737. package/dist/types/index.d.ts.map +1 -1
  738. package/dist/types/instructions/acceptRental.d.ts +33 -25
  739. package/dist/types/instructions/acceptRental.d.ts.map +1 -1
  740. package/dist/types/instructions/activateRental.d.ts +41 -0
  741. package/dist/types/instructions/activateRental.d.ts.map +1 -0
  742. package/dist/types/instructions/approveAffiliate.d.ts +7 -0
  743. package/dist/types/instructions/approveAffiliate.d.ts.map +1 -0
  744. package/dist/types/instructions/cancelRental.d.ts +10 -15
  745. package/dist/types/instructions/cancelRental.d.ts.map +1 -1
  746. package/dist/types/instructions/claimBorrower.d.ts +38 -10
  747. package/dist/types/instructions/claimBorrower.d.ts.map +1 -1
  748. package/dist/types/instructions/claimContract.d.ts +40 -0
  749. package/dist/types/instructions/claimContract.d.ts.map +1 -0
  750. package/dist/types/instructions/claimRental.d.ts +114 -0
  751. package/dist/types/instructions/claimRental.d.ts.map +1 -0
  752. package/dist/types/instructions/closeBorrower.d.ts +17 -11
  753. package/dist/types/instructions/closeBorrower.d.ts.map +1 -1
  754. package/dist/types/instructions/closeContract.d.ts +8 -15
  755. package/dist/types/instructions/closeContract.d.ts.map +1 -1
  756. package/dist/types/instructions/closeContractThread.d.ts +40 -0
  757. package/dist/types/instructions/closeContractThread.d.ts.map +1 -0
  758. package/dist/types/instructions/closeRental.d.ts +11 -12
  759. package/dist/types/instructions/closeRental.d.ts.map +1 -1
  760. package/dist/types/instructions/createAffiliate.d.ts +66 -0
  761. package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
  762. package/dist/types/instructions/createBorrower.d.ts +49 -0
  763. package/dist/types/instructions/createBorrower.d.ts.map +1 -0
  764. package/dist/types/instructions/createConfig.d.ts +10 -0
  765. package/dist/types/instructions/createConfig.d.ts.map +1 -1
  766. package/dist/types/instructions/createContract.d.ts +34 -42
  767. package/dist/types/instructions/createContract.d.ts.map +1 -1
  768. package/dist/types/instructions/createContractThread.d.ts +52 -0
  769. package/dist/types/instructions/createContractThread.d.ts.map +1 -0
  770. package/dist/types/instructions/deleteBorrower.d.ts +14 -11
  771. package/dist/types/instructions/deleteBorrower.d.ts.map +1 -1
  772. package/dist/types/instructions/deleteConfig.d.ts +4 -2
  773. package/dist/types/instructions/deleteConfig.d.ts.map +1 -1
  774. package/dist/types/instructions/deleteContract.d.ts +60 -0
  775. package/dist/types/instructions/deleteContract.d.ts.map +1 -0
  776. package/dist/types/instructions/deleteRental.d.ts +3 -2
  777. package/dist/types/instructions/deleteRental.d.ts.map +1 -1
  778. package/dist/types/instructions/index.d.ts +34 -0
  779. package/dist/types/instructions/index.d.ts.map +1 -0
  780. package/dist/types/instructions/invalidateRental.d.ts +86 -0
  781. package/dist/types/instructions/invalidateRental.d.ts.map +1 -0
  782. package/dist/types/instructions/ownerClaim.d.ts +72 -0
  783. package/dist/types/instructions/ownerClaim.d.ts.map +1 -0
  784. package/dist/types/instructions/ownerUpdate.d.ts +57 -0
  785. package/dist/types/instructions/ownerUpdate.d.ts.map +1 -0
  786. package/dist/types/instructions/releaseRental.d.ts +19 -39
  787. package/dist/types/instructions/releaseRental.d.ts.map +1 -1
  788. package/dist/types/instructions/removeAffiliate.d.ts +7 -0
  789. package/dist/types/instructions/removeAffiliate.d.ts.map +1 -0
  790. package/dist/types/instructions/reserveRental.d.ts +39 -29
  791. package/dist/types/instructions/reserveRental.d.ts.map +1 -1
  792. package/dist/types/instructions/updateAffiliate.d.ts +64 -0
  793. package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
  794. package/dist/types/instructions/updateBorrower.d.ts +23 -29
  795. package/dist/types/instructions/updateBorrower.d.ts.map +1 -1
  796. package/dist/types/instructions/updateConfig.d.ts +0 -13
  797. package/dist/types/instructions/updateConfig.d.ts.map +1 -1
  798. package/dist/types/instructions/updateContract.d.ts +24 -31
  799. package/dist/types/instructions/updateContract.d.ts.map +1 -1
  800. package/dist/types/instructions/updateContractThread.d.ts +48 -0
  801. package/dist/types/instructions/updateContractThread.d.ts.map +1 -0
  802. package/dist/types/kit/index.d.ts +25 -0
  803. package/dist/types/kit/index.d.ts.map +1 -0
  804. package/dist/types/legacy/index.d.ts +64 -0
  805. package/dist/types/legacy/index.d.ts.map +1 -0
  806. package/dist/types/params/amount.d.ts +3 -3
  807. package/dist/types/params/index.d.ts +5 -0
  808. package/dist/types/params/index.d.ts.map +1 -0
  809. package/dist/types/params/sol.d.ts +34 -0
  810. package/dist/types/params/sol.d.ts.map +1 -0
  811. package/dist/types/pda/constants.d.ts +6 -1
  812. package/dist/types/pda/constants.d.ts.map +1 -1
  813. package/dist/types/pda/index.d.ts +6 -22
  814. package/dist/types/pda/index.d.ts.map +1 -1
  815. package/dist/types/pda/lookupTable.d.ts +30 -0
  816. package/dist/types/pda/lookupTable.d.ts.map +1 -0
  817. package/dist/types/pda/sage.d.ts +6 -5
  818. package/dist/types/pda/sage.d.ts.map +1 -1
  819. package/dist/types/pda/slyvault.d.ts +2 -23
  820. package/dist/types/pda/slyvault.d.ts.map +1 -1
  821. package/dist/types/pda/srsly.d.ts +21 -8
  822. package/dist/types/pda/srsly.d.ts.map +1 -1
  823. package/dist/types/pda/thread.d.ts +18 -18
  824. package/dist/types/pda/thread.d.ts.map +1 -1
  825. package/dist/types/pda/token.d.ts +2 -1
  826. package/dist/types/pda/token.d.ts.map +1 -1
  827. package/dist/types/utils/addresses.d.ts +7 -1
  828. package/dist/types/utils/addresses.d.ts.map +1 -1
  829. package/dist/types/utils/config.d.ts +48 -0
  830. package/dist/types/utils/config.d.ts.map +1 -1
  831. package/dist/types/utils/discountAuth.d.ts +94 -0
  832. package/dist/types/utils/discountAuth.d.ts.map +1 -0
  833. package/dist/types/utils/index.d.ts +6 -1
  834. package/dist/types/utils/index.d.ts.map +1 -1
  835. package/dist/types/utils/instructionResult.d.ts +57 -0
  836. package/dist/types/utils/instructionResult.d.ts.map +1 -0
  837. package/dist/types/utils/instructions.d.ts +16 -18
  838. package/dist/types/utils/instructions.d.ts.map +1 -1
  839. package/dist/types/utils/lookupTable.d.ts +48 -0
  840. package/dist/types/utils/lookupTable.d.ts.map +1 -0
  841. package/dist/types/utils/rental.d.ts +22 -0
  842. package/dist/types/utils/rental.d.ts.map +1 -0
  843. package/dist/types/utils/rpc.d.ts +37 -0
  844. package/dist/types/utils/rpc.d.ts.map +1 -0
  845. package/dist/types/utils/signer.d.ts +5 -2
  846. package/dist/types/utils/signer.d.ts.map +1 -1
  847. package/dist/types/version.d.ts +1 -1
  848. package/dist/types/version.d.ts.map +1 -1
  849. package/package.json +40 -21
  850. package/dist/cjs/generated/codama/accounts/memberState.js +0 -78
  851. package/dist/cjs/generated/codama/accounts/memberState.js.map +0 -1
  852. package/dist/cjs/generated/codama/accounts/vaultState.js +0 -82
  853. package/dist/cjs/generated/codama/accounts/vaultState.js.map +0 -1
  854. package/dist/cjs/generated/codama/instructions/captureRental.js +0 -129
  855. package/dist/cjs/generated/codama/instructions/captureRental.js.map +0 -1
  856. package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js.map +0 -1
  857. package/dist/cjs/generated/codama/instructions/claimContractPayments.js.map +0 -1
  858. package/dist/cjs/generated/codama/instructions/discountBorrower.js +0 -118
  859. package/dist/cjs/generated/codama/instructions/discountBorrower.js.map +0 -1
  860. package/dist/cjs/generated/codama/types/borrowerDiscountSet.js +0 -29
  861. package/dist/cjs/generated/codama/types/borrowerDiscountSet.js.map +0 -1
  862. package/dist/cjs/generated/codama/types/capturedFlagData.js +0 -31
  863. package/dist/cjs/generated/codama/types/capturedFlagData.js.map +0 -1
  864. package/dist/cjs/generated/codama/types/memberConfig.js +0 -33
  865. package/dist/cjs/generated/codama/types/memberConfig.js.map +0 -1
  866. package/dist/cjs/generated/codama/types/memberType.js +0 -55
  867. package/dist/cjs/generated/codama/types/memberType.js.map +0 -1
  868. package/dist/cjs/instructions/captureRental.js +0 -85
  869. package/dist/cjs/instructions/captureRental.js.map +0 -1
  870. package/dist/cjs/instructions/claimBorrowerPayments.js +0 -69
  871. package/dist/cjs/instructions/claimBorrowerPayments.js.map +0 -1
  872. package/dist/cjs/instructions/claimContractPayments.js +0 -79
  873. package/dist/cjs/instructions/claimContractPayments.js.map +0 -1
  874. package/dist/cjs/instructions/discountBorrower.js +0 -75
  875. package/dist/cjs/instructions/discountBorrower.js.map +0 -1
  876. package/dist/esm/generated/codama/accounts/memberState.js +0 -66
  877. package/dist/esm/generated/codama/accounts/memberState.js.map +0 -1
  878. package/dist/esm/generated/codama/accounts/vaultState.js +0 -70
  879. package/dist/esm/generated/codama/accounts/vaultState.js.map +0 -1
  880. package/dist/esm/generated/codama/instructions/captureRental.js +0 -119
  881. package/dist/esm/generated/codama/instructions/captureRental.js.map +0 -1
  882. package/dist/esm/generated/codama/instructions/claimContractPayments.js.map +0 -1
  883. package/dist/esm/generated/codama/instructions/discountBorrower.js +0 -108
  884. package/dist/esm/generated/codama/instructions/discountBorrower.js.map +0 -1
  885. package/dist/esm/generated/codama/types/borrowerDiscountSet.js +0 -24
  886. package/dist/esm/generated/codama/types/borrowerDiscountSet.js.map +0 -1
  887. package/dist/esm/generated/codama/types/capturedFlagData.js +0 -26
  888. package/dist/esm/generated/codama/types/capturedFlagData.js.map +0 -1
  889. package/dist/esm/generated/codama/types/memberConfig.js +0 -28
  890. package/dist/esm/generated/codama/types/memberConfig.js.map +0 -1
  891. package/dist/esm/generated/codama/types/memberType.js +0 -48
  892. package/dist/esm/generated/codama/types/memberType.js.map +0 -1
  893. package/dist/esm/instructions/captureRental.js +0 -82
  894. package/dist/esm/instructions/captureRental.js.map +0 -1
  895. package/dist/esm/instructions/claimContractPayments.js +0 -76
  896. package/dist/esm/instructions/claimContractPayments.js.map +0 -1
  897. package/dist/esm/instructions/discountBorrower.js +0 -72
  898. package/dist/esm/instructions/discountBorrower.js.map +0 -1
  899. package/dist/types/generated/codama/accounts/memberState.d.ts +0 -58
  900. package/dist/types/generated/codama/accounts/memberState.d.ts.map +0 -1
  901. package/dist/types/generated/codama/accounts/vaultState.d.ts +0 -66
  902. package/dist/types/generated/codama/accounts/vaultState.d.ts.map +0 -1
  903. package/dist/types/generated/codama/instructions/captureRental.d.ts +0 -59
  904. package/dist/types/generated/codama/instructions/captureRental.d.ts.map +0 -1
  905. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts +0 -75
  906. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts.map +0 -1
  907. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts +0 -98
  908. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts.map +0 -1
  909. package/dist/types/generated/codama/instructions/discountBorrower.d.ts +0 -56
  910. package/dist/types/generated/codama/instructions/discountBorrower.d.ts.map +0 -1
  911. package/dist/types/generated/codama/types/borrowerDiscountSet.d.ts +0 -20
  912. package/dist/types/generated/codama/types/borrowerDiscountSet.d.ts.map +0 -1
  913. package/dist/types/generated/codama/types/capturedFlagData.d.ts +0 -35
  914. package/dist/types/generated/codama/types/capturedFlagData.d.ts.map +0 -1
  915. package/dist/types/generated/codama/types/memberConfig.d.ts +0 -33
  916. package/dist/types/generated/codama/types/memberConfig.d.ts.map +0 -1
  917. package/dist/types/generated/codama/types/memberType.d.ts +0 -48
  918. package/dist/types/generated/codama/types/memberType.d.ts.map +0 -1
  919. package/dist/types/instructions/captureRental.d.ts +0 -58
  920. package/dist/types/instructions/captureRental.d.ts.map +0 -1
  921. package/dist/types/instructions/claimBorrowerPayments.d.ts +0 -59
  922. package/dist/types/instructions/claimBorrowerPayments.d.ts.map +0 -1
  923. package/dist/types/instructions/claimContractPayments.d.ts +0 -78
  924. package/dist/types/instructions/claimContractPayments.d.ts.map +0 -1
  925. package/dist/types/instructions/discountBorrower.d.ts +0 -64
  926. package/dist/types/instructions/discountBorrower.d.ts.map +0 -1
@@ -4,7 +4,8 @@
4
4
  */
5
5
  import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
6
  import { getAddresses } from '../utils/config';
7
- import { CONFIG_SEED, CONTRACT_SEED, RENTAL_SEED, RENTAL_AUTHORITY_SEED, BORROWER_STATE_SEED, } from './constants';
7
+ import { getSignerAddress } from '../utils/signer';
8
+ import { CONFIG_SEED, CONTRACT_SEED, RENTAL_SEED, RENTAL_AUTHORITY_SEED, BORROWER_STATE_SEED, ACTIVE_RENTAL_SEED, QUEUED_RENTAL_SEED, } from './constants';
8
9
  /**
9
10
  * Address encoder for PDA seeds
10
11
  */
@@ -20,9 +21,9 @@ const textEncoder = new TextEncoder();
20
21
  * @returns The derived contract PDA
21
22
  */
22
23
  export async function deriveContract(fleet, programAddress) {
23
- const fleetAddress = address(typeof fleet === 'string' ? fleet : fleet);
24
+ const fleetAddress = getSignerAddress(fleet);
24
25
  const program = programAddress
25
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
26
+ ? getSignerAddress(programAddress)
26
27
  : address(getAddresses().srsly);
27
28
  // Encode seeds to bytes
28
29
  const contractSeedBytes = textEncoder.encode(CONTRACT_SEED);
@@ -34,28 +35,46 @@ export async function deriveContract(fleet, programAddress) {
34
35
  return pda;
35
36
  }
36
37
  /**
37
- * Derive the rental PDA from contract and borrower addresses
38
- * @param contract - The contract public key
39
- * @param borrower - The borrower public key
40
- * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
41
- * @returns The derived rental PDA
38
+ * Internal helper to derive a rental PDA with a named seed suffix
42
39
  */
43
- export async function deriveRental(contract, borrower, programAddress) {
44
- const contractAddress = address(typeof contract === 'string' ? contract : contract);
45
- const borrowerAddress = address(typeof borrower === 'string' ? borrower : borrower);
40
+ async function deriveRentalWithSeed(contract, seedSuffix, programAddress) {
41
+ const contractAddress = getSignerAddress(contract);
46
42
  const program = programAddress
47
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
43
+ ? getSignerAddress(programAddress)
48
44
  : address(getAddresses().srsly);
49
- // Encode seeds to bytes
50
45
  const rentalSeedBytes = textEncoder.encode(RENTAL_SEED);
51
46
  const contractBytes = addressEncoder.encode(contractAddress);
52
- const borrowerBytes = addressEncoder.encode(borrowerAddress);
47
+ const suffixBytes = textEncoder.encode(seedSuffix);
53
48
  const [pda] = await getProgramDerivedAddress({
54
49
  programAddress: program,
55
- seeds: [rentalSeedBytes, contractBytes, borrowerBytes],
50
+ seeds: [rentalSeedBytes, contractBytes, suffixBytes],
56
51
  });
57
52
  return pda;
58
53
  }
54
+ /**
55
+ * Derive the active rental PDA from contract address
56
+ *
57
+ * Seeds: ["rental_state", contract, "active"]
58
+ *
59
+ * @param contract - The contract public key
60
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
61
+ * @returns The derived active rental PDA
62
+ */
63
+ export async function deriveActiveRental(contract, programAddress) {
64
+ return deriveRentalWithSeed(contract, ACTIVE_RENTAL_SEED, programAddress);
65
+ }
66
+ /**
67
+ * Derive the queued rental PDA from contract address
68
+ *
69
+ * Seeds: ["rental_state", contract, "queued"]
70
+ *
71
+ * @param contract - The contract public key
72
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
73
+ * @returns The derived queued rental PDA
74
+ */
75
+ export async function deriveQueuedRental(contract, programAddress) {
76
+ return deriveRentalWithSeed(contract, QUEUED_RENTAL_SEED, programAddress);
77
+ }
59
78
  /**
60
79
  * Derive the rental authority PDA
61
80
  * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
@@ -63,7 +82,7 @@ export async function deriveRental(contract, borrower, programAddress) {
63
82
  */
64
83
  export async function deriveRentalAuthority(programAddress) {
65
84
  const program = programAddress
66
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
85
+ ? getSignerAddress(programAddress)
67
86
  : address(getAddresses().srsly);
68
87
  // Encode seeds to bytes
69
88
  const rentalAuthoritySeedBytes = textEncoder.encode(RENTAL_AUTHORITY_SEED);
@@ -80,9 +99,9 @@ export async function deriveRentalAuthority(programAddress) {
80
99
  * @returns The derived borrower state PDA
81
100
  */
82
101
  export async function deriveBorrowerState(borrower, programAddress) {
83
- const borrowerAddress = address(typeof borrower === 'string' ? borrower : borrower);
102
+ const borrowerAddress = getSignerAddress(borrower);
84
103
  const program = programAddress
85
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
104
+ ? getSignerAddress(programAddress)
86
105
  : address(getAddresses().srsly);
87
106
  // Encode seeds to bytes
88
107
  const borrowerStateSeedBytes = textEncoder.encode(BORROWER_STATE_SEED);
@@ -100,7 +119,7 @@ export async function deriveBorrowerState(borrower, programAddress) {
100
119
  */
101
120
  export async function deriveConfig(programAddress) {
102
121
  const program = programAddress
103
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
122
+ ? getSignerAddress(programAddress)
104
123
  : address(getAddresses().srsly);
105
124
  // Encode seeds to bytes
106
125
  const configSeedBytes = textEncoder.encode(CONFIG_SEED);
@@ -1 +1 @@
1
- {"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,8 @@
3
3
  * @module pda/thread
4
4
  */
5
5
  import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
- import { THREAD_SEED } from './constants';
7
- /**
8
- * Default Antegen program address (same across all networks)
9
- */
10
- const DEFAULT_ANTEGEN_PROGRAM = 'AgV3xRAdyTe1wW4gTW2oAnzHiAGofsxC7jBVGGkzUQbY';
6
+ import { getSignerAddress } from '../utils/signer';
7
+ import { THREAD_SEED, THREAD_FIBER_SEED, ANTEGEN_THREAD_PROGRAM, ANTEGEN_FIBER_PROGRAM } from './constants';
11
8
  /**
12
9
  * Address encoder for PDA seeds
13
10
  */
@@ -17,45 +14,57 @@ const addressEncoder = getAddressEncoder();
17
14
  */
18
15
  const textEncoder = new TextEncoder();
19
16
  /**
20
- * Derive the rental thread PDA
17
+ * Derive the contract thread PDA
21
18
  *
22
- * The rental thread is used by the Antegen program for automated payment scheduling.
23
- * Thread PDAs ALWAYS use seeds: [SEED_THREAD, authority, id]
19
+ * Per-contract thread used by Antegen for automated payment scheduling.
20
+ * Thread PDAs use seeds: [SEED_THREAD, authority, id]
21
+ * where id = contract address.
24
22
  *
25
- * @param rental - The rental state PDA (used as the thread ID)
26
- * @param authority - The rental authority PDA (REQUIRED - always part of seeds)
23
+ * @param contract - The contract PDA (used as the thread ID)
24
+ * @param authority - The rental authority PDA (thread authority)
27
25
  * @param programAddress - Optional Antegen program address (defaults to Antegen program)
28
- * @returns The derived rental thread PDA
29
- *
30
- * @example
31
- * ```typescript
32
- * import { deriveRental, deriveRentalAuthority } from './srsly';
33
- * import { deriveRentalThread } from './thread';
34
- *
35
- * // Derive rental and authority first
36
- * const rental = await deriveRental(contract, borrower);
37
- * const authority = await deriveRentalAuthority();
38
- *
39
- * // Then derive the thread (authority is required!)
40
- * const thread = await deriveRentalThread(rental, authority);
41
- * ```
26
+ * @returns The derived contract thread PDA
42
27
  */
43
- export async function deriveRentalThread(rental, authority, programAddress) {
44
- const rentalAddress = address(typeof rental === 'string' ? rental : rental);
45
- const authorityAddr = address(typeof authority === 'string' ? authority : authority);
28
+ export async function deriveContractThread(contract, authority, programAddress) {
29
+ const contractAddress = getSignerAddress(contract);
30
+ const authorityAddr = getSignerAddress(authority);
46
31
  const program = programAddress
47
- ? address(typeof programAddress === 'string' ? programAddress : programAddress)
48
- : address(DEFAULT_ANTEGEN_PROGRAM);
32
+ ? getSignerAddress(programAddress)
33
+ : address(ANTEGEN_THREAD_PROGRAM);
49
34
  // Encode seeds to bytes
50
35
  // Antegen ALWAYS uses: [SEED_THREAD, authority, id]
51
36
  const threadSeedBytes = textEncoder.encode(THREAD_SEED);
52
37
  const authorityBytes = addressEncoder.encode(authorityAddr);
53
- const rentalBytes = addressEncoder.encode(rentalAddress);
54
- const seeds = [threadSeedBytes, authorityBytes, rentalBytes];
38
+ const contractBytes = addressEncoder.encode(contractAddress);
39
+ const seeds = [threadSeedBytes, authorityBytes, contractBytes];
55
40
  const [pda] = await getProgramDerivedAddress({
56
41
  programAddress: program,
57
42
  seeds,
58
43
  });
59
44
  return pda;
60
45
  }
46
+ /**
47
+ * Derive the fiber PDA for a thread
48
+ *
49
+ * Fiber PDAs use seeds: ["thread_fiber", thread, fiber_index (u8)]
50
+ *
51
+ * @param thread - The thread PDA
52
+ * @param fiberIndex - The fiber index (1 for close_rental, 2 for activate_rental)
53
+ * @param programAddress - Optional Antegen program address
54
+ * @returns The derived fiber PDA
55
+ */
56
+ export async function deriveFiber(thread, fiberIndex, programAddress) {
57
+ const threadAddress = getSignerAddress(thread);
58
+ const program = programAddress
59
+ ? getSignerAddress(programAddress)
60
+ : address(ANTEGEN_FIBER_PROGRAM);
61
+ const fiberSeedBytes = textEncoder.encode(THREAD_FIBER_SEED);
62
+ const threadBytes = addressEncoder.encode(threadAddress);
63
+ const indexBytes = new Uint8Array([fiberIndex]);
64
+ const [pda] = await getProgramDerivedAddress({
65
+ programAddress: program,
66
+ seeds: [fiberSeedBytes, threadBytes, indexBytes],
67
+ });
68
+ return pda;
69
+ }
61
70
  //# sourceMappingURL=thread.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;GAEG;AACH,MAAM,uBAAuB,GAAG,8CAA8C,CAAC;AAE/E;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAwB,EACxB,SAA2B,EAC3B,cAAiC;IAEjC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,OAAO,CAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;QAC/E,CAAC,CAAC,OAAO,CAAC,uBAAkC,CAAC,CAAC;IAEhD,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAE7D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE5G;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAyB,EACzB,SAA0B,EAC1B,cAAgC;IAEhC,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEpC,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAuB,EACvB,UAAkB,EAClB,cAAgC;IAEhC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAEnC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC;KACjD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -3,6 +3,7 @@
3
3
  * @module pda/token
4
4
  */
5
5
  import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
+ import { getSignerAddress } from '../utils/signer';
6
7
  /**
7
8
  * SPL Token program address
8
9
  */
@@ -38,13 +39,13 @@ const addressEncoder = getAddressEncoder();
38
39
  * ```
39
40
  */
40
41
  export async function deriveAssociatedTokenAccount(owner, mint, tokenProgramAddress, associatedTokenProgramAddress) {
41
- const ownerAddress = address(typeof owner === 'string' ? owner : owner);
42
- const mintAddress = address(typeof mint === 'string' ? mint : mint);
42
+ const ownerAddress = getSignerAddress(owner);
43
+ const mintAddress = getSignerAddress(mint);
43
44
  const tokenProgram = tokenProgramAddress
44
- ? address(typeof tokenProgramAddress === 'string' ? tokenProgramAddress : tokenProgramAddress)
45
+ ? getSignerAddress(tokenProgramAddress)
45
46
  : address(TOKEN_PROGRAM);
46
47
  const ataProgram = associatedTokenProgramAddress
47
- ? address(typeof associatedTokenProgramAddress === 'string' ? associatedTokenProgramAddress : associatedTokenProgramAddress)
48
+ ? getSignerAddress(associatedTokenProgramAddress)
48
49
  : address(ASSOCIATED_TOKEN_PROGRAM);
49
50
  // Encode all address seeds to bytes for PDA derivation
50
51
  const ownerBytes = addressEncoder.encode(ownerAddress);
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE5F;;GAEG;AACH,MAAM,aAAa,GAAG,6CAA6C,CAAC;AAEpE;;GAEG;AACH,MAAM,wBAAwB,GAAG,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAuB,EACvB,IAAsB,EACtB,mBAAsC,EACtC,6BAAgD;IAEhD,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,OAAO,CAAC,OAAO,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC9F,CAAC,CAAC,OAAO,CAAC,aAAwB,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,6BAA6B;QAC9C,CAAC,CAAC,OAAO,CAAC,OAAO,6BAA6B,KAAK,QAAQ,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,6BAA6B,CAAC;QAC5H,CAAC,CAAC,OAAO,CAAC,wBAAmC,CAAC,CAAC;IAEjD,uDAAuD;IACvD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAErD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AAEzE;;GAEG;AACH,MAAM,aAAa,GAAG,6CAA6C,CAAC;AAEpE;;GAEG;AACH,MAAM,wBAAwB,GAAG,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAsB,EACtB,IAAqB,EACrB,mBAAqC,EACrC,6BAA+C;IAE/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC;QACvC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,6BAA6B;QAC9C,CAAC,CAAC,gBAAgB,CAAC,6BAA6B,CAAC;QACjD,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtC,uDAAuD;IACvD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAErD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -5,12 +5,18 @@
5
5
  * Supports mainnet-beta, devnet, and localnet environments.
6
6
  */
7
7
  import { SRSLY_PROGRAM_ADDRESS } from '../generated/codama';
8
+ import { ANTEGEN_THREAD_PROGRAM } from '../pda/constants';
9
+ /**
10
+ * Antegen program address (same across all networks)
11
+ */
12
+ const ANTEGEN_PROGRAM = ANTEGEN_THREAD_PROGRAM;
8
13
  /**
9
14
  * Mainnet addresses (production Star Atlas)
10
15
  */
11
16
  const MAINNET_ADDRESSES = {
12
17
  srsly: SRSLY_PROGRAM_ADDRESS,
13
18
  sage: 'SAGE2HAwep459SNq61LHvjxPk4pLPEJLoMETef7f7EE',
19
+ antegen: ANTEGEN_PROGRAM,
14
20
  atlasMint: 'ATLASXmbPQxBUYbxPsV97usA3fPQYEqzQBUHgiFCUsXx',
15
21
  profileFaction: 'pFACSRuobDmvfMKq1bAzwj27t6d2GJhSCHb1VcfnRmq',
16
22
  gameId: 'GAMEC7U7cqmFFaRow33j1LwuV8u4YhAS1mJ5Dqjnar2k'
@@ -21,7 +27,8 @@ const MAINNET_ADDRESSES = {
21
27
  const ATLASNET_ADDRESSES = {
22
28
  srsly: SRSLY_PROGRAM_ADDRESS,
23
29
  sage: 'SAgEeT8u14TE69JXtanGSgNkEdoPUcLabeyZD2uw8x9',
24
- atlasMint: 'En3GRDgFiY8ZoHA86k7LwJkBrB7u1UrjxENpni3CFe1C',
30
+ antegen: ANTEGEN_PROGRAM,
31
+ atlasMint: '6PhneWhbN4R3nFutrRUVnE3sNgRsFS6yPrjRC29mMWnv',
25
32
  profileFaction: 'pFACzkX2eSpAjDyEohD6i3VRJvREtH9ynbtM1DwVFsj',
26
33
  gameId: 'GAmEqxNYaUqLmLkXGhzUvv4Ud8FotnWPLj6ChdBkUh9j'
27
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AA6B5D;;GAEG;AACH,MAAM,iBAAiB,GAAqB;IAC1C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAqB;IAC3C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAyC;IACjE,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE,kBAAkB;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAsB;IACxD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,wBAAwB,UAAU,oDAAoD,CACvF,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmB;IACrD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EACnB,CAAC"}
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAmC1D;;GAEG;AACH,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAE/C;;GAEG;AACH,MAAM,iBAAiB,GAAqB;IAC1C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAqB;IAC3C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAyC;IACjE,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE,kBAAkB;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAsB;IACxD,MAAM,SAAS,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,wBAAwB,UAAU,oDAAoD,CACvF,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmB;IACrD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,UAAU,IAAI,UAAU,KAAK,UAAU,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EACnB,CAAC"}
@@ -4,7 +4,9 @@
4
4
  * Provides global configuration with per-call overrides.
5
5
  * Supports both @solana/kit (default) and @solana/web3.js modes.
6
6
  */
7
+ import { SRSLY_PROGRAM_ADDRESS } from '../generated/codama';
7
8
  import { getProgramAddresses } from './addresses';
9
+ import { setSdkConfig as setSlyvaultSdkConfig } from '@wuwei-labs/slyvault';
8
10
  /**
9
11
  * Default RPC URLs for each program set
10
12
  */
@@ -15,9 +17,9 @@ const DEFAULT_RPC_URLS = {
15
17
  'localnet': 'http://localhost:8899'
16
18
  };
17
19
  /**
18
- * Default SRSLY program ID (same across all program sets)
20
+ * Default SRSLY program ID (from generated code)
19
21
  */
20
- const DEFAULT_PROGRAM_ID = 'SRSLY1fq9TJqCk1gNSE7VZL2bztvTn9wm4VR8u8jMKT';
22
+ const DEFAULT_PROGRAM_ID = SRSLY_PROGRAM_ADDRESS;
21
23
  /**
22
24
  * Global SDK configuration state
23
25
  */
@@ -59,6 +61,11 @@ let globalConfig = {
59
61
  */
60
62
  export function setSdkConfig(config) {
61
63
  globalConfig = { ...globalConfig, ...config };
64
+ // Propagate relevant config to slyvault SDK
65
+ setSlyvaultSdkConfig({
66
+ rpcUrl: config.rpcUrl,
67
+ PublicKey: config.PublicKey,
68
+ });
62
69
  }
63
70
  /**
64
71
  * Get the current global SDK configuration
@@ -113,6 +120,16 @@ export function getProgramId(config) {
113
120
  export function getCommitment(config) {
114
121
  return config.commitment || 'confirmed';
115
122
  }
123
+ /**
124
+ * Get the affiliate configuration from global config with optional overrides
125
+ *
126
+ * @param config - Optional SDK configuration overrides
127
+ * @returns Affiliate configuration if set, undefined otherwise
128
+ */
129
+ export function getAffiliateConfig(config) {
130
+ const merged = mergeConfig(config);
131
+ return merged.affiliate;
132
+ }
116
133
  /**
117
134
  * Get program-specific addresses with optional overrides
118
135
  *
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,mBAAmB,EAAwF,MAAM,aAAa,CAAC;AAkDxI;;GAEG;AACH,MAAM,gBAAgB,GAA+B;IACnD,UAAU,EAAE,+BAA+B;IAC3C,SAAS,EAAE,+BAA+B;IAC1C,SAAS,EAAE,qCAAqC;IAChD,UAAU,EAAE,uBAAuB;CACpC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG,6CAA6C,CAAC;AAEzE;;GAEG;AACH,IAAI,YAAY,GAAc;IAC5B,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,MAAM,EAAE,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,EAAE,GAAG,YAAY,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,YAAY,GAAG;QACb,QAAQ,EAAE,UAAU;KACrB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,SAA8B;IACxD,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAA2B;IACnD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,WAAW,CAAC,MAAM,IAAI,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC;AACnG,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAAiB;IAC5C,OAAO,MAAM,CAAC,SAAS,IAAI,kBAAkB,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAiB;IAC7C,OAAO,MAAM,CAAC,UAAU,IAAI,WAAW,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,YAAY,CAAC,MAA2B;IACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEnE,uDAAuD;IACvD,OAAO;QACL,GAAG,gBAAgB;QACnB,KAAK,EAAE,WAAW,CAAC,SAAS,IAAI,gBAAgB,CAAC,KAAK;KACvD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAwF,MAAM,aAAa,CAAC;AACxI,OAAO,EAAE,YAAY,IAAI,oBAAoB,EAAsB,MAAM,sBAAsB,CAAC;AA4FhG;;GAEG;AACH,MAAM,gBAAgB,GAA+B;IACnD,UAAU,EAAE,+BAA+B;IAC3C,SAAS,EAAE,+BAA+B;IAC1C,SAAS,EAAE,qCAAqC;IAChD,UAAU,EAAE,uBAAuB;CACpC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAEjD;;GAEG;AACH,IAAI,YAAY,GAAc;IAC5B,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,YAAY,CAAC,MAA0B;IACrD,YAAY,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,MAAM,EAAE,CAAC;IAE9C,4CAA4C;IAC5C,oBAAoB,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,EAAE,GAAG,YAAY,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,YAAY,GAAG;QACb,QAAQ,EAAE,UAAU;KACrB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,SAA8B;IACxD,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAA2B;IACnD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,WAAW,CAAC,MAAM,IAAI,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC;AACnG,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAAiB;IAC5C,OAAO,MAAM,CAAC,SAAS,IAAI,kBAAkB,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAiB;IAC7C,OAAO,MAAM,CAAC,UAAU,IAAI,WAAW,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAA2B;IAC5D,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC,SAAS,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,YAAY,CAAC,MAA2B;IACtD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEnE,uDAAuD;IACvD,OAAO;QACL,GAAG,gBAAgB;QACnB,KAAK,EAAE,WAAW,CAAC,SAAS,IAAI,gBAAgB,CAAC,KAAK;KACvD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,155 @@
1
+ /**
2
+ * @purpose Discount authorization helper for server-side signing
3
+ * @module utils/discountAuth
4
+ */
5
+ import { address, createKeyPairSignerFromBytes } from '@solana/kit';
6
+ import { createDiscountAuth as slyvaultCreateDiscountAuth, fetchMember } from '@wuwei-labs/slyvault';
7
+ import { getRpcUrl, mergeConfig } from './config';
8
+ import { createRpc } from './rpc';
9
+ /**
10
+ * Parse a stringified keypair (JSON array of bytes) into a KeyPairSigner
11
+ */
12
+ async function parseKeypairString(keypairString) {
13
+ try {
14
+ const bytes = JSON.parse(keypairString);
15
+ if (!Array.isArray(bytes) || bytes.length !== 64) {
16
+ throw new Error('Invalid keypair: expected array of 64 bytes');
17
+ }
18
+ return await createKeyPairSignerFromBytes(new Uint8Array(bytes));
19
+ }
20
+ catch (e) {
21
+ throw new Error(`Failed to parse keypair string: ${e.message}`);
22
+ }
23
+ }
24
+ /**
25
+ * Browser-compatible base64 encoding (Uint8Array -> string)
26
+ */
27
+ function uint8ArrayToBase64(bytes) {
28
+ let binary = '';
29
+ for (let i = 0; i < bytes.length; i++) {
30
+ binary += String.fromCharCode(bytes[i]);
31
+ }
32
+ return btoa(binary);
33
+ }
34
+ /**
35
+ * Browser-compatible base64 decoding (string -> Uint8Array)
36
+ */
37
+ function base64ToUint8Array(base64) {
38
+ const binary = atob(base64);
39
+ const bytes = new Uint8Array(binary.length);
40
+ for (let i = 0; i < binary.length; i++) {
41
+ bytes[i] = binary.charCodeAt(i);
42
+ }
43
+ return bytes;
44
+ }
45
+ /**
46
+ * Create a signed discount authorization
47
+ *
48
+ * Server-side helper that fetches the member to get the nonce,
49
+ * then creates a signed discount authorization in a JSON-serializable format.
50
+ *
51
+ * @param params - Discount parameters including member address
52
+ * @param config - Optional SDK configuration overrides
53
+ * @returns A SerializedDiscountAuth object ready for API transport
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * import { createDiscount } from '@wuwei-labs/srsly';
58
+ *
59
+ * const discountAuth = await createDiscount({
60
+ * address: 'AFFILIATE_MEMBER_PDA',
61
+ * discount: 10, // 10%
62
+ * expirySlots: 1000, // ~6-7 minutes
63
+ * discountAuthority: serverKeypair,
64
+ * });
65
+ *
66
+ * // Ready to return via API - no serialization needed
67
+ * return discountAuth;
68
+ * ```
69
+ */
70
+ export async function createDiscount(params, config) {
71
+ const finalConfig = mergeConfig(config);
72
+ const rpcUrl = getRpcUrl(finalConfig);
73
+ // Fetch member to get nonce
74
+ const memberAddr = address(params.address);
75
+ const member = await fetchMember(memberAddr, rpcUrl);
76
+ // Fetch current slot and compute absolute expiry
77
+ const rpc = createRpc(rpcUrl);
78
+ const currentSlot = await rpc.getSlot({ commitment: 'confirmed' }).send();
79
+ const expirySlot = currentSlot + BigInt(params.expirySlots);
80
+ // Convert discountAuthority to KeyPairSigner
81
+ let discountAuthority;
82
+ if (typeof params.discountAuthority === 'string') {
83
+ discountAuthority = await parseKeypairString(params.discountAuthority);
84
+ }
85
+ else if (params.discountAuthority instanceof Uint8Array) {
86
+ discountAuthority = await createKeyPairSignerFromBytes(params.discountAuthority);
87
+ }
88
+ else if (Array.isArray(params.discountAuthority)) {
89
+ discountAuthority = await createKeyPairSignerFromBytes(new Uint8Array(params.discountAuthority));
90
+ }
91
+ else if ('secretKey' in params.discountAuthority && params.discountAuthority.secretKey instanceof Uint8Array) {
92
+ // web3.js Keypair
93
+ discountAuthority = await createKeyPairSignerFromBytes(params.discountAuthority.secretKey);
94
+ }
95
+ else {
96
+ // Already a KeyPairSigner
97
+ discountAuthority = params.discountAuthority;
98
+ }
99
+ // Create the raw discount auth
100
+ const contextAddr = address(params.contextKey);
101
+ const raw = await slyvaultCreateDiscountAuth({
102
+ contextKey: contextAddr,
103
+ memberNonce: member.data.nonce,
104
+ discount: params.discount,
105
+ expirySlot,
106
+ discountAuthority,
107
+ });
108
+ // Return serialized format for API transport
109
+ return serializeDiscountAuth({ ...raw, context: contextAddr });
110
+ }
111
+ /**
112
+ * Deserialize a discount authorization from API format
113
+ *
114
+ * Converts the JSON-safe SerializedDiscountAuth back to the format
115
+ * expected by the on-chain program.
116
+ *
117
+ * @internal Used by acceptRental and claimRental
118
+ */
119
+ export function deserializeDiscountAuth(serialized) {
120
+ return {
121
+ context: address(serialized.context),
122
+ memberNonce: serialized.memberNonce,
123
+ discountBps: serialized.discountBps,
124
+ expirySlot: BigInt(serialized.expirySlot),
125
+ signature: base64ToUint8Array(serialized.signature),
126
+ };
127
+ }
128
+ /**
129
+ * Serialize a raw discount authorization to JSON-safe format
130
+ *
131
+ * Converts bigint expirySlot and Uint8Array signature to string representations
132
+ * suitable for API transport (JSON.stringify/JSON.parse safe).
133
+ *
134
+ * @param raw - Raw discount authorization with bigint/Uint8Array fields
135
+ * @returns SerializedDiscountAuth ready for JSON transport
136
+ */
137
+ export function serializeDiscountAuth(raw) {
138
+ return {
139
+ context: raw.context,
140
+ memberNonce: raw.memberNonce,
141
+ discountBps: raw.discountBps,
142
+ expirySlot: raw.expirySlot.toString(),
143
+ signature: uint8ArrayToBase64(new Uint8Array(raw.signature)),
144
+ };
145
+ }
146
+ /**
147
+ * Check if a value is a SerializedDiscountAuth
148
+ */
149
+ export function isSerializedDiscountAuth(value) {
150
+ return (typeof value === 'object' &&
151
+ value !== null &&
152
+ 'signature' in value &&
153
+ typeof value.signature === 'string');
154
+ }
155
+ //# sourceMappingURL=discountAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discountAuth.js","sourceRoot":"","sources":["../../../src/utils/discountAuth.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * @module utils
4
4
  */
5
5
  // Configuration
6
- export { setSdkConfig, getSdkConfig, clearSdkConfig, mergeConfig, getAddresses } from './config';
6
+ export { setSdkConfig, getSdkConfig, clearSdkConfig, mergeConfig, getAddresses, getAffiliateConfig, getRpcUrl } from './config';
7
7
  // Network Addresses
8
8
  export { getProgramAddresses, getNetworkAddresses, isValidProgramSet, isValidNetwork, MAINNET_ADDRESSES, ATLASNET_ADDRESSES } from './addresses';
9
9
  // Signer Utilities
@@ -12,4 +12,14 @@ export { toTransactionSigner, validateAddress, isWeb3jsSigner, isKitSigner, isAd
12
12
  export { toWeb3Instruction, toAddress } from './web3js';
13
13
  // Instruction Utilities
14
14
  export { prepareInstructions } from './instructions';
15
+ // Instruction Result
16
+ export { InstructionResult } from './instructionResult';
17
+ // RPC Utilities
18
+ export { createRpc, setRpcDebug, isRpcDebugEnabled } from './rpc';
19
+ // Address Lookup Table Utilities
20
+ export { fetchLookupTable, getLookupTableAddress } from './lookupTable';
21
+ // Rental Utilities
22
+ export { hasActiveRental, hasQueuedRental, } from './rental';
23
+ // Discount Authorization Utilities
24
+ export { createDiscount, serializeDiscountAuth, deserializeDiscountAuth, isSerializedDiscountAuth } from './discountAuth';
15
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EAGb,MAAM,UAAU,CAAC;AAElB,oBAAoB;AACpB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAInB,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,WAAW,EACX,eAAe,EAEhB,MAAM,UAAU,CAAC;AAElB,wBAAwB;AACxB,OAAO,EACL,iBAAiB,EACjB,SAAS,EAIV,MAAM,UAAU,CAAC;AAElB,wBAAwB;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,gBAAgB;AAChB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,SAAS,EAIV,MAAM,UAAU,CAAC;AAElB,oBAAoB;AACpB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAInB,MAAM,aAAa,CAAC;AAErB,mBAAmB;AACnB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,WAAW,EACX,eAAe,EAEhB,MAAM,UAAU,CAAC;AAElB,wBAAwB;AACxB,OAAO,EACL,iBAAiB,EACjB,SAAS,EAIV,MAAM,UAAU,CAAC;AAElB,wBAAwB;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,gBAAgB,CAAC;AAExB,qBAAqB;AACrB,OAAO,EACL,iBAAiB,EAElB,MAAM,qBAAqB,CAAC;AAE7B,gBAAgB;AAChB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAElE,iCAAiC;AACjC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAEvB,mBAAmB;AACnB,OAAO,EACL,eAAe,EACf,eAAe,GAChB,MAAM,UAAU,CAAC;AAElB,mCAAmC;AACnC,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EAKzB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @purpose InstructionResult - Array-like wrapper for @solana/kit Instructions with legacy conversion
3
+ *
4
+ * Provides native @solana/kit Instruction[] compatibility with optional .toLegacy() conversion
5
+ * for web3.js users.
6
+ */
7
+ import { getSdkConfig } from './config';
8
+ /**
9
+ * Convert a single @solana/kit Instruction to legacy web3.js format
10
+ */
11
+ function convertToLegacy(instruction, PublicKey) {
12
+ const accounts = instruction.accounts || [];
13
+ const data = instruction.data || new Uint8Array();
14
+ return {
15
+ keys: accounts.map(account => ({
16
+ pubkey: new PublicKey(String(account.address)),
17
+ isWritable: (account.role & 1) === 1, // Check writable bit
18
+ isSigner: (account.role & 2) === 2 // Check signer bit
19
+ })),
20
+ programId: new PublicKey(String(instruction.programAddress)),
21
+ data
22
+ };
23
+ }
24
+ /**
25
+ * InstructionResult - Wrapper for @solana/kit Instructions with legacy conversion
26
+ *
27
+ * Contains a plain Instruction[] array accessible via `.instructions`.
28
+ * Supports iteration (`for...of`, spread) and `.toLegacy()` conversion for web3.js.
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * // Kit users - access instructions directly
33
+ * const result = await createContract(params);
34
+ * for (const ix of result) { ... }
35
+ * // Or unwrap: result.instructions
36
+ *
37
+ * // Web3.js users - convert to legacy format
38
+ * import { PublicKey } from '@solana/web3.js';
39
+ * const legacyIxs = result.toLegacy(PublicKey);
40
+ * // Or if PublicKey is configured in SDK:
41
+ * setSdkConfig({ PublicKey });
42
+ * const legacyIxs = result.toLegacy();
43
+ * ```
44
+ */
45
+ export class InstructionResult {
46
+ instructions;
47
+ constructor(instructions) {
48
+ this.instructions = instructions;
49
+ }
50
+ /**
51
+ * Convert to legacy web3.js instruction format
52
+ *
53
+ * @param PublicKey - Optional PublicKey constructor. If not provided,
54
+ * uses the PublicKey from SDK config (set via setSdkConfig)
55
+ * @returns Array of instructions in web3.js format
56
+ * @throws Error if no PublicKey is available
57
+ */
58
+ toLegacy(PublicKey) {
59
+ const pk = PublicKey || getSdkConfig().PublicKey;
60
+ if (!pk) {
61
+ throw new Error('PublicKey constructor required - pass it to toLegacy() or set in SDK config via setSdkConfig({ PublicKey })');
62
+ }
63
+ return this.instructions.map(ix => convertToLegacy(ix, pk));
64
+ }
65
+ get length() {
66
+ return this.instructions.length;
67
+ }
68
+ [Symbol.iterator]() {
69
+ return this.instructions[Symbol.iterator]();
70
+ }
71
+ }
72
+ //# sourceMappingURL=instructionResult.js.map