@wuwei-labs/srsly 2.0.0-beta.9 → 2.3.3-canary.36.16828734028.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (668) hide show
  1. package/README.md +366 -544
  2. package/dist/cjs/config/index.js +12 -0
  3. package/dist/cjs/config/index.js.map +1 -0
  4. package/dist/cjs/config/initialize.js +95 -0
  5. package/dist/cjs/config/initialize.js.map +1 -0
  6. package/dist/cjs/config/update.js +163 -0
  7. package/dist/cjs/config/update.js.map +1 -0
  8. package/dist/cjs/contract/close.js +128 -67
  9. package/dist/cjs/contract/close.js.map +1 -1
  10. package/dist/cjs/contract/create.js +232 -43
  11. package/dist/cjs/contract/create.js.map +1 -1
  12. package/dist/cjs/contract/index.js +49 -0
  13. package/dist/cjs/contract/index.js.map +1 -1
  14. package/dist/cjs/demos.js +69 -0
  15. package/dist/cjs/demos.js.map +1 -0
  16. package/dist/cjs/generated/codama/accounts/configState.js +123 -0
  17. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -0
  18. package/dist/cjs/{codama/devnet → generated/codama}/accounts/contractState.js +47 -9
  19. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -0
  20. package/dist/cjs/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  21. package/dist/cjs/generated/codama/accounts/index.js.map +1 -0
  22. package/dist/cjs/{codama/devnet → generated/codama}/accounts/rentalState.js +49 -11
  23. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -0
  24. package/dist/cjs/{codama/mainnet → generated/codama}/accounts/thread.js +42 -5
  25. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -0
  26. package/dist/cjs/generated/codama/errors/index.js.map +1 -0
  27. package/dist/cjs/generated/codama/errors/srsly.js +101 -0
  28. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -0
  29. package/dist/cjs/generated/codama/index.js.map +1 -0
  30. package/dist/cjs/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  31. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -0
  32. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  33. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -0
  34. package/dist/cjs/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +29 -38
  35. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -0
  36. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/closeRental.js +89 -44
  37. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -0
  38. package/dist/cjs/{codama/devnet → generated/codama}/instructions/createContract.js +13 -16
  39. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -0
  40. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  41. package/dist/cjs/generated/codama/instructions/index.js.map +1 -0
  42. package/dist/cjs/generated/codama/instructions/initializeConfig.js +139 -0
  43. package/dist/cjs/generated/codama/instructions/initializeConfig.js.map +1 -0
  44. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/payRental.js +14 -71
  45. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -0
  46. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  47. package/dist/cjs/generated/codama/instructions/resetRental.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/updateConfig.js +143 -0
  49. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -0
  50. package/dist/cjs/generated/codama/programs/index.js.map +1 -0
  51. package/dist/cjs/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  52. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -0
  53. package/dist/cjs/{codama/devnet → generated/codama}/shared/index.js +1 -1
  54. package/dist/cjs/generated/codama/shared/index.js.map +1 -0
  55. package/dist/cjs/generated/codama/types/clockData.js +58 -0
  56. package/dist/cjs/generated/codama/types/clockData.js.map +1 -0
  57. package/dist/cjs/generated/codama/types/equality.js.map +1 -0
  58. package/dist/cjs/{codama/devnet → generated/codama}/types/execContext.js +31 -1
  59. package/dist/cjs/generated/codama/types/execContext.js.map +1 -0
  60. package/dist/cjs/{codama/devnet → generated/codama}/types/index.js +1 -0
  61. package/dist/cjs/generated/codama/types/index.js.map +1 -0
  62. package/dist/cjs/generated/codama/types/paymentFrequency.js +36 -0
  63. package/dist/cjs/generated/codama/types/paymentFrequency.js.map +1 -0
  64. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableAccount.js +28 -1
  65. package/dist/cjs/generated/codama/types/serializableAccount.js.map +1 -0
  66. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableInstruction.js +28 -1
  67. package/dist/cjs/generated/codama/types/serializableInstruction.js.map +1 -0
  68. package/dist/cjs/{codama/mainnet → generated/codama}/types/threadResponse.js +31 -1
  69. package/dist/cjs/generated/codama/types/threadResponse.js.map +1 -0
  70. package/dist/cjs/generated/codama/types/trigger.js.map +1 -0
  71. package/dist/cjs/generated/codama/types/triggerContext.js.map +1 -0
  72. package/dist/cjs/idl/index.js +27 -0
  73. package/dist/cjs/idl/index.js.map +1 -0
  74. package/dist/cjs/idl/srsly-data.js +3140 -0
  75. package/dist/cjs/idl/srsly-data.js.map +1 -0
  76. package/dist/cjs/idl/srsly.json +3104 -0
  77. package/dist/cjs/index.js +244 -4
  78. package/dist/cjs/index.js.map +1 -1
  79. package/dist/cjs/package.json +29 -30
  80. package/dist/cjs/rental/accept.js +228 -55
  81. package/dist/cjs/rental/accept.js.map +1 -1
  82. package/dist/cjs/rental/cancel.js +155 -25
  83. package/dist/cjs/rental/cancel.js.map +1 -1
  84. package/dist/cjs/rental/close.js +157 -29
  85. package/dist/cjs/rental/close.js.map +1 -1
  86. package/dist/cjs/rental/index.js +84 -0
  87. package/dist/cjs/rental/index.js.map +1 -1
  88. package/dist/cjs/rental/reset.js +159 -36
  89. package/dist/cjs/rental/reset.js.map +1 -1
  90. package/dist/cjs/types/payment-frequency.js +87 -0
  91. package/dist/cjs/types/payment-frequency.js.map +1 -0
  92. package/dist/cjs/types/srsly.js +3 -0
  93. package/dist/cjs/types/srsly.js.map +1 -0
  94. package/dist/cjs/utils/config.js +142 -100
  95. package/dist/cjs/utils/config.js.map +1 -1
  96. package/dist/cjs/utils/constants.js +45 -81
  97. package/dist/cjs/utils/constants.js.map +1 -1
  98. package/dist/cjs/utils/cron.js +204 -0
  99. package/dist/cjs/utils/cron.js.map +1 -0
  100. package/dist/cjs/utils/derive-pda.js +415 -0
  101. package/dist/cjs/utils/derive-pda.js.map +1 -0
  102. package/dist/cjs/utils/fetch-accounts.js +241 -0
  103. package/dist/cjs/utils/fetch-accounts.js.map +1 -0
  104. package/dist/cjs/utils/index.js +14 -1
  105. package/dist/cjs/utils/index.js.map +1 -1
  106. package/dist/cjs/utils/instruction-converter.js +125 -0
  107. package/dist/cjs/utils/instruction-converter.js.map +1 -0
  108. package/dist/cjs/utils/param-converters.js +190 -0
  109. package/dist/cjs/utils/param-converters.js.map +1 -0
  110. package/dist/cjs/utils/payment-frequency.js +111 -0
  111. package/dist/cjs/utils/payment-frequency.js.map +1 -0
  112. package/dist/cjs/utils/schedule-builder.js +158 -0
  113. package/dist/cjs/utils/schedule-builder.js.map +1 -0
  114. package/dist/cjs/utils/schedule-validation.js +136 -0
  115. package/dist/cjs/utils/schedule-validation.js.map +1 -0
  116. package/dist/cjs/utils/signer.js +127 -0
  117. package/dist/cjs/utils/signer.js.map +1 -0
  118. package/dist/cjs/utils/smart-params.js +52 -0
  119. package/dist/cjs/utils/smart-params.js.map +1 -0
  120. package/dist/esm/config/index.js +7 -0
  121. package/dist/esm/config/index.js.map +1 -0
  122. package/dist/esm/config/initialize.js +92 -0
  123. package/dist/esm/config/initialize.js.map +1 -0
  124. package/dist/esm/config/update.js +159 -0
  125. package/dist/esm/config/update.js.map +1 -0
  126. package/dist/esm/contract/close.js +130 -70
  127. package/dist/esm/contract/close.js.map +1 -1
  128. package/dist/esm/contract/create.js +233 -44
  129. package/dist/esm/contract/create.js.map +1 -1
  130. package/dist/esm/contract/index.js +51 -2
  131. package/dist/esm/contract/index.js.map +1 -1
  132. package/dist/esm/demos.js +26 -0
  133. package/dist/esm/demos.js.map +1 -0
  134. package/dist/esm/generated/codama/accounts/configState.js +111 -0
  135. package/dist/esm/generated/codama/accounts/configState.js.map +1 -0
  136. package/dist/esm/{codama/mainnet → generated/codama}/accounts/contractState.js +48 -10
  137. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -0
  138. package/dist/esm/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  139. package/dist/esm/generated/codama/accounts/index.js.map +1 -0
  140. package/dist/esm/generated/codama/accounts/rentalState.js +113 -0
  141. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -0
  142. package/dist/esm/{codama/mainnet → generated/codama}/accounts/thread.js +43 -6
  143. package/dist/esm/generated/codama/accounts/thread.js.map +1 -0
  144. package/dist/esm/generated/codama/errors/index.js.map +1 -0
  145. package/dist/esm/generated/codama/errors/srsly.js +96 -0
  146. package/dist/esm/generated/codama/errors/srsly.js.map +1 -0
  147. package/dist/esm/generated/codama/index.js.map +1 -0
  148. package/dist/esm/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  149. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -0
  150. package/dist/esm/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  151. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -0
  152. package/dist/esm/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +21 -30
  153. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -0
  154. package/dist/esm/{codama/devnet → generated/codama}/instructions/closeRental.js +89 -44
  155. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -0
  156. package/dist/esm/{codama/mainnet → generated/codama}/instructions/createContract.js +13 -16
  157. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -0
  158. package/dist/esm/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  159. package/dist/esm/generated/codama/instructions/index.js.map +1 -0
  160. package/dist/esm/generated/codama/instructions/initializeConfig.js +129 -0
  161. package/dist/esm/generated/codama/instructions/initializeConfig.js.map +1 -0
  162. package/dist/esm/{codama/mainnet → generated/codama}/instructions/payRental.js +16 -73
  163. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -0
  164. package/dist/esm/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  165. package/dist/esm/generated/codama/instructions/resetRental.js.map +1 -0
  166. package/dist/esm/generated/codama/instructions/updateConfig.js +133 -0
  167. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -0
  168. package/dist/esm/generated/codama/programs/index.js.map +1 -0
  169. package/dist/esm/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  170. package/dist/esm/generated/codama/programs/srsly.js.map +1 -0
  171. package/dist/esm/{codama/devnet → generated/codama}/shared/index.js +1 -1
  172. package/dist/esm/generated/codama/shared/index.js.map +1 -0
  173. package/dist/esm/generated/codama/types/clockData.js +53 -0
  174. package/dist/esm/generated/codama/types/clockData.js.map +1 -0
  175. package/dist/esm/generated/codama/types/equality.js.map +1 -0
  176. package/dist/esm/generated/codama/types/execContext.js +63 -0
  177. package/dist/esm/generated/codama/types/execContext.js.map +1 -0
  178. package/dist/esm/{codama/devnet → generated/codama}/types/index.js +1 -0
  179. package/dist/esm/generated/codama/types/index.js.map +1 -0
  180. package/dist/esm/generated/codama/types/paymentFrequency.js +30 -0
  181. package/dist/esm/generated/codama/types/paymentFrequency.js.map +1 -0
  182. package/dist/esm/generated/codama/types/serializableAccount.js +53 -0
  183. package/dist/esm/generated/codama/types/serializableAccount.js.map +1 -0
  184. package/dist/esm/generated/codama/types/serializableInstruction.js +54 -0
  185. package/dist/esm/generated/codama/types/serializableInstruction.js.map +1 -0
  186. package/dist/esm/generated/codama/types/threadResponse.js +63 -0
  187. package/dist/esm/generated/codama/types/threadResponse.js.map +1 -0
  188. package/dist/esm/generated/codama/types/trigger.js.map +1 -0
  189. package/dist/esm/generated/codama/types/triggerContext.js.map +1 -0
  190. package/dist/esm/idl/index.js +21 -0
  191. package/dist/esm/idl/index.js.map +1 -0
  192. package/dist/esm/idl/srsly-data.js +3137 -0
  193. package/dist/esm/idl/srsly-data.js.map +1 -0
  194. package/dist/esm/idl/srsly.json +3104 -0
  195. package/dist/esm/index.js +213 -5
  196. package/dist/esm/index.js.map +1 -1
  197. package/dist/esm/package.json +29 -30
  198. package/dist/esm/rental/accept.js +230 -58
  199. package/dist/esm/rental/accept.js.map +1 -1
  200. package/dist/esm/rental/cancel.js +155 -26
  201. package/dist/esm/rental/cancel.js.map +1 -1
  202. package/dist/esm/rental/close.js +157 -30
  203. package/dist/esm/rental/close.js.map +1 -1
  204. package/dist/esm/rental/index.js +88 -4
  205. package/dist/esm/rental/index.js.map +1 -1
  206. package/dist/esm/rental/reset.js +161 -39
  207. package/dist/esm/rental/reset.js.map +1 -1
  208. package/dist/esm/types/payment-frequency.js +83 -0
  209. package/dist/esm/types/payment-frequency.js.map +1 -0
  210. package/dist/esm/types/srsly.js +2 -0
  211. package/dist/esm/types/srsly.js.map +1 -0
  212. package/dist/esm/utils/config.js +134 -92
  213. package/dist/esm/utils/config.js.map +1 -1
  214. package/dist/esm/utils/constants.js +43 -77
  215. package/dist/esm/utils/constants.js.map +1 -1
  216. package/dist/esm/utils/cron.js +195 -0
  217. package/dist/esm/utils/cron.js.map +1 -0
  218. package/dist/esm/utils/derive-pda.js +402 -0
  219. package/dist/esm/utils/derive-pda.js.map +1 -0
  220. package/dist/esm/utils/fetch-accounts.js +233 -0
  221. package/dist/esm/utils/fetch-accounts.js.map +1 -0
  222. package/dist/esm/utils/index.js +16 -3
  223. package/dist/esm/utils/index.js.map +1 -1
  224. package/dist/esm/utils/instruction-converter.js +120 -0
  225. package/dist/esm/utils/instruction-converter.js.map +1 -0
  226. package/dist/esm/utils/param-converters.js +182 -0
  227. package/dist/esm/utils/param-converters.js.map +1 -0
  228. package/dist/esm/utils/payment-frequency.js +104 -0
  229. package/dist/esm/utils/payment-frequency.js.map +1 -0
  230. package/dist/esm/utils/schedule-builder.js +153 -0
  231. package/dist/esm/utils/schedule-builder.js.map +1 -0
  232. package/dist/esm/utils/schedule-validation.js +132 -0
  233. package/dist/esm/utils/schedule-validation.js.map +1 -0
  234. package/dist/esm/utils/signer.js +119 -0
  235. package/dist/esm/utils/signer.js.map +1 -0
  236. package/dist/esm/utils/smart-params.js +49 -0
  237. package/dist/esm/utils/smart-params.js.map +1 -0
  238. package/dist/types/config/index.d.ts +7 -0
  239. package/dist/types/config/index.d.ts.map +1 -0
  240. package/dist/types/config/initialize.d.ts +66 -0
  241. package/dist/types/config/initialize.d.ts.map +1 -0
  242. package/dist/types/config/update.d.ts +143 -0
  243. package/dist/types/config/update.d.ts.map +1 -0
  244. package/dist/types/contract/close.d.ts +100 -28
  245. package/dist/types/contract/close.d.ts.map +1 -1
  246. package/dist/types/contract/create.d.ts +115 -45
  247. package/dist/types/contract/create.d.ts.map +1 -1
  248. package/dist/types/contract/index.d.ts +51 -2
  249. package/dist/types/contract/index.d.ts.map +1 -1
  250. package/dist/types/demos.d.ts +66 -0
  251. package/dist/types/demos.d.ts.map +1 -0
  252. package/dist/types/generated/codama/accounts/configState.d.ts +75 -0
  253. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -0
  254. package/dist/types/generated/codama/accounts/contractState.d.ts +78 -0
  255. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -0
  256. package/dist/types/{codama/devnet → generated/codama}/accounts/index.d.ts +1 -1
  257. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -0
  258. package/dist/types/generated/codama/accounts/rentalState.d.ts +78 -0
  259. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -0
  260. package/dist/types/{codama/mainnet → generated/codama}/accounts/thread.d.ts +8 -7
  261. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -0
  262. package/dist/types/generated/codama/errors/index.d.ts.map +1 -0
  263. package/dist/types/generated/codama/errors/srsly.d.ts +68 -0
  264. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -0
  265. package/dist/types/generated/codama/index.d.ts.map +1 -0
  266. package/dist/types/generated/codama/instructions/acceptRental.d.ts +132 -0
  267. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -0
  268. package/dist/types/generated/codama/instructions/cancelRental.d.ts +87 -0
  269. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -0
  270. package/dist/types/generated/codama/instructions/closeContract.d.ts +71 -0
  271. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -0
  272. package/dist/types/generated/codama/instructions/closeRental.d.ts +119 -0
  273. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -0
  274. package/dist/types/generated/codama/instructions/createContract.d.ts +112 -0
  275. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -0
  276. package/dist/types/{codama/devnet → generated/codama}/instructions/index.d.ts +2 -0
  277. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -0
  278. package/dist/types/generated/codama/instructions/initializeConfig.d.ts +60 -0
  279. package/dist/types/generated/codama/instructions/initializeConfig.d.ts.map +1 -0
  280. package/dist/types/generated/codama/instructions/payRental.d.ts +103 -0
  281. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -0
  282. package/dist/types/generated/codama/instructions/resetRental.d.ts +79 -0
  283. package/dist/types/generated/codama/instructions/resetRental.d.ts.map +1 -0
  284. package/dist/types/generated/codama/instructions/updateConfig.d.ts +109 -0
  285. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -0
  286. package/dist/types/generated/codama/programs/index.d.ts.map +1 -0
  287. package/dist/types/{codama/mainnet → generated/codama}/programs/srsly.d.ts +12 -6
  288. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -0
  289. package/dist/types/{codama/devnet → generated/codama}/shared/index.d.ts +14 -3
  290. package/dist/types/generated/codama/shared/index.d.ts.map +1 -0
  291. package/dist/types/{codama/devnet → generated/codama}/types/clockData.d.ts +4 -3
  292. package/dist/types/generated/codama/types/clockData.d.ts.map +1 -0
  293. package/dist/types/{codama/devnet → generated/codama}/types/equality.d.ts +4 -4
  294. package/dist/types/generated/codama/types/equality.d.ts.map +1 -0
  295. package/dist/types/{codama/devnet → generated/codama}/types/execContext.d.ts +2 -1
  296. package/dist/types/generated/codama/types/execContext.d.ts.map +1 -0
  297. package/dist/types/{codama/devnet → generated/codama}/types/index.d.ts +1 -0
  298. package/dist/types/generated/codama/types/index.d.ts.map +1 -0
  299. package/dist/types/generated/codama/types/paymentFrequency.d.ts +24 -0
  300. package/dist/types/generated/codama/types/paymentFrequency.d.ts.map +1 -0
  301. package/dist/types/{codama/devnet → generated/codama}/types/serializableAccount.d.ts +4 -3
  302. package/dist/types/generated/codama/types/serializableAccount.d.ts.map +1 -0
  303. package/dist/types/{codama/mainnet → generated/codama}/types/serializableInstruction.d.ts +2 -1
  304. package/dist/types/generated/codama/types/serializableInstruction.d.ts.map +1 -0
  305. package/dist/types/{codama/devnet → generated/codama}/types/threadResponse.d.ts +2 -1
  306. package/dist/types/generated/codama/types/threadResponse.d.ts.map +1 -0
  307. package/dist/types/generated/codama/types/trigger.d.ts.map +1 -0
  308. package/dist/types/generated/codama/types/triggerContext.d.ts.map +1 -0
  309. package/dist/types/idl/index.d.ts +21 -0
  310. package/dist/types/idl/index.d.ts.map +1 -0
  311. package/dist/types/idl/srsly-data.d.ts +1458 -0
  312. package/dist/types/idl/srsly-data.d.ts.map +1 -0
  313. package/dist/types/index.d.ts +213 -5
  314. package/dist/types/index.d.ts.map +1 -1
  315. package/dist/types/rental/accept.d.ts +165 -61
  316. package/dist/types/rental/accept.d.ts.map +1 -1
  317. package/dist/types/rental/cancel.d.ts +119 -22
  318. package/dist/types/rental/cancel.d.ts.map +1 -1
  319. package/dist/types/rental/close.d.ts +108 -27
  320. package/dist/types/rental/close.d.ts.map +1 -1
  321. package/dist/types/rental/index.d.ts +88 -4
  322. package/dist/types/rental/index.d.ts.map +1 -1
  323. package/dist/types/rental/reset.d.ts +137 -39
  324. package/dist/types/rental/reset.d.ts.map +1 -1
  325. package/dist/types/types/payment-frequency.d.ts +55 -0
  326. package/dist/types/types/payment-frequency.d.ts.map +1 -0
  327. package/dist/types/types/srsly.d.ts +3111 -0
  328. package/dist/types/types/srsly.d.ts.map +1 -0
  329. package/dist/types/utils/config.d.ts +78 -61
  330. package/dist/types/utils/config.d.ts.map +1 -1
  331. package/dist/types/utils/constants.d.ts +16 -22
  332. package/dist/types/utils/constants.d.ts.map +1 -1
  333. package/dist/types/utils/cron.d.ts +77 -0
  334. package/dist/types/utils/cron.d.ts.map +1 -0
  335. package/dist/types/utils/derive-pda.d.ts +213 -0
  336. package/dist/types/utils/derive-pda.d.ts.map +1 -0
  337. package/dist/types/utils/fetch-accounts.d.ts +158 -0
  338. package/dist/types/utils/fetch-accounts.d.ts.map +1 -0
  339. package/dist/types/utils/index.d.ts +16 -3
  340. package/dist/types/utils/index.d.ts.map +1 -1
  341. package/dist/types/utils/instruction-converter.d.ts +171 -0
  342. package/dist/types/utils/instruction-converter.d.ts.map +1 -0
  343. package/dist/types/utils/param-converters.d.ts +67 -0
  344. package/dist/types/utils/param-converters.d.ts.map +1 -0
  345. package/dist/types/utils/payment-frequency.d.ts +38 -0
  346. package/dist/types/utils/payment-frequency.d.ts.map +1 -0
  347. package/dist/types/utils/schedule-builder.d.ts +64 -0
  348. package/dist/types/utils/schedule-builder.d.ts.map +1 -0
  349. package/dist/types/utils/schedule-validation.d.ts +36 -0
  350. package/dist/types/utils/schedule-validation.d.ts.map +1 -0
  351. package/dist/types/utils/signer.d.ts +61 -0
  352. package/dist/types/utils/signer.d.ts.map +1 -0
  353. package/dist/types/utils/smart-params.d.ts +112 -0
  354. package/dist/types/utils/smart-params.d.ts.map +1 -0
  355. package/package.json +51 -36
  356. package/dist/cjs/codama/devnet/accounts/contractState.js.map +0 -1
  357. package/dist/cjs/codama/devnet/accounts/fleet.js +0 -77
  358. package/dist/cjs/codama/devnet/accounts/fleet.js.map +0 -1
  359. package/dist/cjs/codama/devnet/accounts/index.js.map +0 -1
  360. package/dist/cjs/codama/devnet/accounts/rentalState.js.map +0 -1
  361. package/dist/cjs/codama/devnet/accounts/thread.js +0 -89
  362. package/dist/cjs/codama/devnet/accounts/thread.js.map +0 -1
  363. package/dist/cjs/codama/devnet/constants.js +0 -32
  364. package/dist/cjs/codama/devnet/constants.js.map +0 -1
  365. package/dist/cjs/codama/devnet/errors/index.js.map +0 -1
  366. package/dist/cjs/codama/devnet/errors/srsly.js +0 -74
  367. package/dist/cjs/codama/devnet/errors/srsly.js.map +0 -1
  368. package/dist/cjs/codama/devnet/index.js.map +0 -1
  369. package/dist/cjs/codama/devnet/instructions/acceptRental.js.map +0 -1
  370. package/dist/cjs/codama/devnet/instructions/cancelRental.js +0 -225
  371. package/dist/cjs/codama/devnet/instructions/cancelRental.js.map +0 -1
  372. package/dist/cjs/codama/devnet/instructions/closeContract.js +0 -246
  373. package/dist/cjs/codama/devnet/instructions/closeContract.js.map +0 -1
  374. package/dist/cjs/codama/devnet/instructions/closeRental.js +0 -260
  375. package/dist/cjs/codama/devnet/instructions/closeRental.js.map +0 -1
  376. package/dist/cjs/codama/devnet/instructions/createContract.js.map +0 -1
  377. package/dist/cjs/codama/devnet/instructions/index.js +0 -31
  378. package/dist/cjs/codama/devnet/instructions/index.js.map +0 -1
  379. package/dist/cjs/codama/devnet/instructions/payRental.js +0 -280
  380. package/dist/cjs/codama/devnet/instructions/payRental.js.map +0 -1
  381. package/dist/cjs/codama/devnet/instructions/resetRental.js.map +0 -1
  382. package/dist/cjs/codama/devnet/programs/index.js.map +0 -1
  383. package/dist/cjs/codama/devnet/programs/srsly.js.map +0 -1
  384. package/dist/cjs/codama/devnet/shared/index.js.map +0 -1
  385. package/dist/cjs/codama/devnet/types/clockData.js +0 -31
  386. package/dist/cjs/codama/devnet/types/clockData.js.map +0 -1
  387. package/dist/cjs/codama/devnet/types/equality.js.map +0 -1
  388. package/dist/cjs/codama/devnet/types/execContext.js.map +0 -1
  389. package/dist/cjs/codama/devnet/types/index.js.map +0 -1
  390. package/dist/cjs/codama/devnet/types/serializableAccount.js +0 -31
  391. package/dist/cjs/codama/devnet/types/serializableAccount.js.map +0 -1
  392. package/dist/cjs/codama/devnet/types/serializableInstruction.js +0 -32
  393. package/dist/cjs/codama/devnet/types/serializableInstruction.js.map +0 -1
  394. package/dist/cjs/codama/devnet/types/threadResponse.js +0 -38
  395. package/dist/cjs/codama/devnet/types/threadResponse.js.map +0 -1
  396. package/dist/cjs/codama/devnet/types/trigger.js.map +0 -1
  397. package/dist/cjs/codama/devnet/types/triggerContext.js.map +0 -1
  398. package/dist/cjs/codama/mainnet/accounts/contractState.js +0 -87
  399. package/dist/cjs/codama/mainnet/accounts/contractState.js.map +0 -1
  400. package/dist/cjs/codama/mainnet/accounts/fleet.js +0 -77
  401. package/dist/cjs/codama/mainnet/accounts/fleet.js.map +0 -1
  402. package/dist/cjs/codama/mainnet/accounts/index.js +0 -28
  403. package/dist/cjs/codama/mainnet/accounts/index.js.map +0 -1
  404. package/dist/cjs/codama/mainnet/accounts/rentalState.js +0 -87
  405. package/dist/cjs/codama/mainnet/accounts/rentalState.js.map +0 -1
  406. package/dist/cjs/codama/mainnet/accounts/thread.js.map +0 -1
  407. package/dist/cjs/codama/mainnet/constants.js +0 -32
  408. package/dist/cjs/codama/mainnet/constants.js.map +0 -1
  409. package/dist/cjs/codama/mainnet/errors/index.js +0 -25
  410. package/dist/cjs/codama/mainnet/errors/index.js.map +0 -1
  411. package/dist/cjs/codama/mainnet/errors/srsly.js +0 -74
  412. package/dist/cjs/codama/mainnet/errors/srsly.js.map +0 -1
  413. package/dist/cjs/codama/mainnet/index.js +0 -29
  414. package/dist/cjs/codama/mainnet/index.js.map +0 -1
  415. package/dist/cjs/codama/mainnet/instructions/acceptRental.js +0 -357
  416. package/dist/cjs/codama/mainnet/instructions/acceptRental.js.map +0 -1
  417. package/dist/cjs/codama/mainnet/instructions/cancelRental.js.map +0 -1
  418. package/dist/cjs/codama/mainnet/instructions/closeContract.js +0 -246
  419. package/dist/cjs/codama/mainnet/instructions/closeContract.js.map +0 -1
  420. package/dist/cjs/codama/mainnet/instructions/closeRental.js.map +0 -1
  421. package/dist/cjs/codama/mainnet/instructions/createContract.js +0 -261
  422. package/dist/cjs/codama/mainnet/instructions/createContract.js.map +0 -1
  423. package/dist/cjs/codama/mainnet/instructions/index.js.map +0 -1
  424. package/dist/cjs/codama/mainnet/instructions/payRental.js.map +0 -1
  425. package/dist/cjs/codama/mainnet/instructions/resetRental.js.map +0 -1
  426. package/dist/cjs/codama/mainnet/programs/index.js +0 -25
  427. package/dist/cjs/codama/mainnet/programs/index.js.map +0 -1
  428. package/dist/cjs/codama/mainnet/programs/srsly.js +0 -73
  429. package/dist/cjs/codama/mainnet/programs/srsly.js.map +0 -1
  430. package/dist/cjs/codama/mainnet/shared/index.js +0 -95
  431. package/dist/cjs/codama/mainnet/shared/index.js.map +0 -1
  432. package/dist/cjs/codama/mainnet/types/clockData.js +0 -31
  433. package/dist/cjs/codama/mainnet/types/clockData.js.map +0 -1
  434. package/dist/cjs/codama/mainnet/types/equality.js +0 -30
  435. package/dist/cjs/codama/mainnet/types/equality.js.map +0 -1
  436. package/dist/cjs/codama/mainnet/types/execContext.js +0 -38
  437. package/dist/cjs/codama/mainnet/types/execContext.js.map +0 -1
  438. package/dist/cjs/codama/mainnet/types/index.js +0 -32
  439. package/dist/cjs/codama/mainnet/types/index.js.map +0 -1
  440. package/dist/cjs/codama/mainnet/types/serializableAccount.js.map +0 -1
  441. package/dist/cjs/codama/mainnet/types/serializableInstruction.js.map +0 -1
  442. package/dist/cjs/codama/mainnet/types/threadResponse.js.map +0 -1
  443. package/dist/cjs/codama/mainnet/types/trigger.js +0 -90
  444. package/dist/cjs/codama/mainnet/types/trigger.js.map +0 -1
  445. package/dist/cjs/codama/mainnet/types/triggerContext.js +0 -49
  446. package/dist/cjs/codama/mainnet/types/triggerContext.js.map +0 -1
  447. package/dist/cjs/utils/profiles.js +0 -159
  448. package/dist/cjs/utils/profiles.js.map +0 -1
  449. package/dist/esm/codama/devnet/accounts/contractState.js +0 -75
  450. package/dist/esm/codama/devnet/accounts/contractState.js.map +0 -1
  451. package/dist/esm/codama/devnet/accounts/fleet.js +0 -64
  452. package/dist/esm/codama/devnet/accounts/fleet.js.map +0 -1
  453. package/dist/esm/codama/devnet/accounts/index.js.map +0 -1
  454. package/dist/esm/codama/devnet/accounts/rentalState.js +0 -74
  455. package/dist/esm/codama/devnet/accounts/rentalState.js.map +0 -1
  456. package/dist/esm/codama/devnet/accounts/thread.js +0 -77
  457. package/dist/esm/codama/devnet/accounts/thread.js.map +0 -1
  458. package/dist/esm/codama/devnet/constants.js +0 -29
  459. package/dist/esm/codama/devnet/constants.js.map +0 -1
  460. package/dist/esm/codama/devnet/errors/index.js.map +0 -1
  461. package/dist/esm/codama/devnet/errors/srsly.js +0 -69
  462. package/dist/esm/codama/devnet/errors/srsly.js.map +0 -1
  463. package/dist/esm/codama/devnet/index.js.map +0 -1
  464. package/dist/esm/codama/devnet/instructions/acceptRental.js.map +0 -1
  465. package/dist/esm/codama/devnet/instructions/cancelRental.js +0 -215
  466. package/dist/esm/codama/devnet/instructions/cancelRental.js.map +0 -1
  467. package/dist/esm/codama/devnet/instructions/closeContract.js +0 -236
  468. package/dist/esm/codama/devnet/instructions/closeContract.js.map +0 -1
  469. package/dist/esm/codama/devnet/instructions/closeRental.js.map +0 -1
  470. package/dist/esm/codama/devnet/instructions/createContract.js +0 -251
  471. package/dist/esm/codama/devnet/instructions/createContract.js.map +0 -1
  472. package/dist/esm/codama/devnet/instructions/index.js +0 -15
  473. package/dist/esm/codama/devnet/instructions/index.js.map +0 -1
  474. package/dist/esm/codama/devnet/instructions/payRental.js +0 -270
  475. package/dist/esm/codama/devnet/instructions/payRental.js.map +0 -1
  476. package/dist/esm/codama/devnet/instructions/resetRental.js.map +0 -1
  477. package/dist/esm/codama/devnet/programs/index.js.map +0 -1
  478. package/dist/esm/codama/devnet/programs/srsly.js.map +0 -1
  479. package/dist/esm/codama/devnet/shared/index.js.map +0 -1
  480. package/dist/esm/codama/devnet/types/clockData.js +0 -26
  481. package/dist/esm/codama/devnet/types/clockData.js.map +0 -1
  482. package/dist/esm/codama/devnet/types/equality.js.map +0 -1
  483. package/dist/esm/codama/devnet/types/execContext.js +0 -33
  484. package/dist/esm/codama/devnet/types/execContext.js.map +0 -1
  485. package/dist/esm/codama/devnet/types/index.js.map +0 -1
  486. package/dist/esm/codama/devnet/types/serializableAccount.js +0 -26
  487. package/dist/esm/codama/devnet/types/serializableAccount.js.map +0 -1
  488. package/dist/esm/codama/devnet/types/serializableInstruction.js +0 -27
  489. package/dist/esm/codama/devnet/types/serializableInstruction.js.map +0 -1
  490. package/dist/esm/codama/devnet/types/threadResponse.js +0 -33
  491. package/dist/esm/codama/devnet/types/threadResponse.js.map +0 -1
  492. package/dist/esm/codama/devnet/types/trigger.js.map +0 -1
  493. package/dist/esm/codama/devnet/types/triggerContext.js.map +0 -1
  494. package/dist/esm/codama/mainnet/accounts/contractState.js.map +0 -1
  495. package/dist/esm/codama/mainnet/accounts/fleet.js +0 -64
  496. package/dist/esm/codama/mainnet/accounts/fleet.js.map +0 -1
  497. package/dist/esm/codama/mainnet/accounts/index.js +0 -12
  498. package/dist/esm/codama/mainnet/accounts/index.js.map +0 -1
  499. package/dist/esm/codama/mainnet/accounts/rentalState.js +0 -74
  500. package/dist/esm/codama/mainnet/accounts/rentalState.js.map +0 -1
  501. package/dist/esm/codama/mainnet/accounts/thread.js.map +0 -1
  502. package/dist/esm/codama/mainnet/constants.js +0 -29
  503. package/dist/esm/codama/mainnet/constants.js.map +0 -1
  504. package/dist/esm/codama/mainnet/errors/index.js +0 -9
  505. package/dist/esm/codama/mainnet/errors/index.js.map +0 -1
  506. package/dist/esm/codama/mainnet/errors/srsly.js +0 -69
  507. package/dist/esm/codama/mainnet/errors/srsly.js.map +0 -1
  508. package/dist/esm/codama/mainnet/index.js +0 -13
  509. package/dist/esm/codama/mainnet/index.js.map +0 -1
  510. package/dist/esm/codama/mainnet/instructions/acceptRental.js +0 -347
  511. package/dist/esm/codama/mainnet/instructions/acceptRental.js.map +0 -1
  512. package/dist/esm/codama/mainnet/instructions/cancelRental.js.map +0 -1
  513. package/dist/esm/codama/mainnet/instructions/closeContract.js +0 -236
  514. package/dist/esm/codama/mainnet/instructions/closeContract.js.map +0 -1
  515. package/dist/esm/codama/mainnet/instructions/closeRental.js +0 -250
  516. package/dist/esm/codama/mainnet/instructions/closeRental.js.map +0 -1
  517. package/dist/esm/codama/mainnet/instructions/createContract.js.map +0 -1
  518. package/dist/esm/codama/mainnet/instructions/index.js.map +0 -1
  519. package/dist/esm/codama/mainnet/instructions/payRental.js.map +0 -1
  520. package/dist/esm/codama/mainnet/instructions/resetRental.js.map +0 -1
  521. package/dist/esm/codama/mainnet/programs/index.js +0 -9
  522. package/dist/esm/codama/mainnet/programs/index.js.map +0 -1
  523. package/dist/esm/codama/mainnet/programs/srsly.js +0 -68
  524. package/dist/esm/codama/mainnet/programs/srsly.js.map +0 -1
  525. package/dist/esm/codama/mainnet/shared/index.js +0 -87
  526. package/dist/esm/codama/mainnet/shared/index.js.map +0 -1
  527. package/dist/esm/codama/mainnet/types/clockData.js +0 -26
  528. package/dist/esm/codama/mainnet/types/clockData.js.map +0 -1
  529. package/dist/esm/codama/mainnet/types/equality.js +0 -24
  530. package/dist/esm/codama/mainnet/types/equality.js.map +0 -1
  531. package/dist/esm/codama/mainnet/types/execContext.js +0 -33
  532. package/dist/esm/codama/mainnet/types/execContext.js.map +0 -1
  533. package/dist/esm/codama/mainnet/types/index.js +0 -16
  534. package/dist/esm/codama/mainnet/types/index.js.map +0 -1
  535. package/dist/esm/codama/mainnet/types/serializableAccount.js +0 -26
  536. package/dist/esm/codama/mainnet/types/serializableAccount.js.map +0 -1
  537. package/dist/esm/codama/mainnet/types/serializableInstruction.js +0 -27
  538. package/dist/esm/codama/mainnet/types/serializableInstruction.js.map +0 -1
  539. package/dist/esm/codama/mainnet/types/threadResponse.js +0 -33
  540. package/dist/esm/codama/mainnet/types/threadResponse.js.map +0 -1
  541. package/dist/esm/codama/mainnet/types/trigger.js +0 -83
  542. package/dist/esm/codama/mainnet/types/trigger.js.map +0 -1
  543. package/dist/esm/codama/mainnet/types/triggerContext.js +0 -42
  544. package/dist/esm/codama/mainnet/types/triggerContext.js.map +0 -1
  545. package/dist/esm/utils/profiles.js +0 -152
  546. package/dist/esm/utils/profiles.js.map +0 -1
  547. package/dist/types/codama/devnet/accounts/contractState.d.ts +0 -51
  548. package/dist/types/codama/devnet/accounts/contractState.d.ts.map +0 -1
  549. package/dist/types/codama/devnet/accounts/fleet.d.ts +0 -38
  550. package/dist/types/codama/devnet/accounts/fleet.d.ts.map +0 -1
  551. package/dist/types/codama/devnet/accounts/index.d.ts.map +0 -1
  552. package/dist/types/codama/devnet/accounts/rentalState.d.ts +0 -48
  553. package/dist/types/codama/devnet/accounts/rentalState.d.ts.map +0 -1
  554. package/dist/types/codama/devnet/accounts/thread.d.ts +0 -74
  555. package/dist/types/codama/devnet/accounts/thread.d.ts.map +0 -1
  556. package/dist/types/codama/devnet/constants.d.ts +0 -33
  557. package/dist/types/codama/devnet/constants.d.ts.map +0 -1
  558. package/dist/types/codama/devnet/errors/index.d.ts.map +0 -1
  559. package/dist/types/codama/devnet/errors/srsly.d.ts +0 -50
  560. package/dist/types/codama/devnet/errors/srsly.d.ts.map +0 -1
  561. package/dist/types/codama/devnet/index.d.ts.map +0 -1
  562. package/dist/types/codama/devnet/instructions/acceptRental.d.ts +0 -131
  563. package/dist/types/codama/devnet/instructions/acceptRental.d.ts.map +0 -1
  564. package/dist/types/codama/devnet/instructions/cancelRental.d.ts +0 -71
  565. package/dist/types/codama/devnet/instructions/cancelRental.d.ts.map +0 -1
  566. package/dist/types/codama/devnet/instructions/closeContract.d.ts +0 -100
  567. package/dist/types/codama/devnet/instructions/closeContract.d.ts.map +0 -1
  568. package/dist/types/codama/devnet/instructions/closeRental.d.ts +0 -83
  569. package/dist/types/codama/devnet/instructions/closeRental.d.ts.map +0 -1
  570. package/dist/types/codama/devnet/instructions/createContract.d.ts +0 -108
  571. package/dist/types/codama/devnet/instructions/createContract.d.ts.map +0 -1
  572. package/dist/types/codama/devnet/instructions/index.d.ts.map +0 -1
  573. package/dist/types/codama/devnet/instructions/payRental.d.ts +0 -110
  574. package/dist/types/codama/devnet/instructions/payRental.d.ts.map +0 -1
  575. package/dist/types/codama/devnet/instructions/resetRental.d.ts +0 -71
  576. package/dist/types/codama/devnet/instructions/resetRental.d.ts.map +0 -1
  577. package/dist/types/codama/devnet/programs/index.d.ts.map +0 -1
  578. package/dist/types/codama/devnet/programs/srsly.d.ts +0 -47
  579. package/dist/types/codama/devnet/programs/srsly.d.ts.map +0 -1
  580. package/dist/types/codama/devnet/shared/index.d.ts.map +0 -1
  581. package/dist/types/codama/devnet/types/clockData.d.ts.map +0 -1
  582. package/dist/types/codama/devnet/types/equality.d.ts.map +0 -1
  583. package/dist/types/codama/devnet/types/execContext.d.ts.map +0 -1
  584. package/dist/types/codama/devnet/types/index.d.ts.map +0 -1
  585. package/dist/types/codama/devnet/types/serializableAccount.d.ts.map +0 -1
  586. package/dist/types/codama/devnet/types/serializableInstruction.d.ts +0 -30
  587. package/dist/types/codama/devnet/types/serializableInstruction.d.ts.map +0 -1
  588. package/dist/types/codama/devnet/types/threadResponse.d.ts.map +0 -1
  589. package/dist/types/codama/devnet/types/trigger.d.ts.map +0 -1
  590. package/dist/types/codama/devnet/types/triggerContext.d.ts.map +0 -1
  591. package/dist/types/codama/mainnet/accounts/contractState.d.ts +0 -51
  592. package/dist/types/codama/mainnet/accounts/contractState.d.ts.map +0 -1
  593. package/dist/types/codama/mainnet/accounts/fleet.d.ts +0 -38
  594. package/dist/types/codama/mainnet/accounts/fleet.d.ts.map +0 -1
  595. package/dist/types/codama/mainnet/accounts/index.d.ts +0 -12
  596. package/dist/types/codama/mainnet/accounts/index.d.ts.map +0 -1
  597. package/dist/types/codama/mainnet/accounts/rentalState.d.ts +0 -48
  598. package/dist/types/codama/mainnet/accounts/rentalState.d.ts.map +0 -1
  599. package/dist/types/codama/mainnet/accounts/thread.d.ts.map +0 -1
  600. package/dist/types/codama/mainnet/constants.d.ts +0 -33
  601. package/dist/types/codama/mainnet/constants.d.ts.map +0 -1
  602. package/dist/types/codama/mainnet/errors/index.d.ts +0 -9
  603. package/dist/types/codama/mainnet/errors/index.d.ts.map +0 -1
  604. package/dist/types/codama/mainnet/errors/srsly.d.ts +0 -50
  605. package/dist/types/codama/mainnet/errors/srsly.d.ts.map +0 -1
  606. package/dist/types/codama/mainnet/index.d.ts +0 -13
  607. package/dist/types/codama/mainnet/index.d.ts.map +0 -1
  608. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts +0 -131
  609. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts.map +0 -1
  610. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts +0 -71
  611. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts.map +0 -1
  612. package/dist/types/codama/mainnet/instructions/closeContract.d.ts +0 -100
  613. package/dist/types/codama/mainnet/instructions/closeContract.d.ts.map +0 -1
  614. package/dist/types/codama/mainnet/instructions/closeRental.d.ts +0 -83
  615. package/dist/types/codama/mainnet/instructions/closeRental.d.ts.map +0 -1
  616. package/dist/types/codama/mainnet/instructions/createContract.d.ts +0 -108
  617. package/dist/types/codama/mainnet/instructions/createContract.d.ts.map +0 -1
  618. package/dist/types/codama/mainnet/instructions/index.d.ts +0 -15
  619. package/dist/types/codama/mainnet/instructions/index.d.ts.map +0 -1
  620. package/dist/types/codama/mainnet/instructions/payRental.d.ts +0 -110
  621. package/dist/types/codama/mainnet/instructions/payRental.d.ts.map +0 -1
  622. package/dist/types/codama/mainnet/instructions/resetRental.d.ts +0 -71
  623. package/dist/types/codama/mainnet/instructions/resetRental.d.ts.map +0 -1
  624. package/dist/types/codama/mainnet/programs/index.d.ts +0 -9
  625. package/dist/types/codama/mainnet/programs/index.d.ts.map +0 -1
  626. package/dist/types/codama/mainnet/programs/srsly.d.ts.map +0 -1
  627. package/dist/types/codama/mainnet/shared/index.d.ts +0 -50
  628. package/dist/types/codama/mainnet/shared/index.d.ts.map +0 -1
  629. package/dist/types/codama/mainnet/types/clockData.d.ts +0 -29
  630. package/dist/types/codama/mainnet/types/clockData.d.ts.map +0 -1
  631. package/dist/types/codama/mainnet/types/equality.d.ts +0 -18
  632. package/dist/types/codama/mainnet/types/equality.d.ts.map +0 -1
  633. package/dist/types/codama/mainnet/types/execContext.d.ts +0 -48
  634. package/dist/types/codama/mainnet/types/execContext.d.ts.map +0 -1
  635. package/dist/types/codama/mainnet/types/index.d.ts +0 -16
  636. package/dist/types/codama/mainnet/types/index.d.ts.map +0 -1
  637. package/dist/types/codama/mainnet/types/serializableAccount.d.ts +0 -22
  638. package/dist/types/codama/mainnet/types/serializableAccount.d.ts.map +0 -1
  639. package/dist/types/codama/mainnet/types/serializableInstruction.d.ts.map +0 -1
  640. package/dist/types/codama/mainnet/types/threadResponse.d.ts +0 -42
  641. package/dist/types/codama/mainnet/types/threadResponse.d.ts.map +0 -1
  642. package/dist/types/codama/mainnet/types/trigger.d.ts +0 -98
  643. package/dist/types/codama/mainnet/types/trigger.d.ts.map +0 -1
  644. package/dist/types/codama/mainnet/types/triggerContext.d.ts +0 -75
  645. package/dist/types/codama/mainnet/types/triggerContext.d.ts.map +0 -1
  646. package/dist/types/utils/profiles.d.ts +0 -54
  647. package/dist/types/utils/profiles.d.ts.map +0 -1
  648. package/target/idl/srsly-devnet.json +0 -3275
  649. package/target/idl/srsly-mainnet.json +0 -3275
  650. package/target/types/srsly-devnet.ts +0 -1
  651. package/target/types/srsly-mainnet.ts +0 -1
  652. /package/dist/cjs/{codama/devnet → generated/codama}/errors/index.js +0 -0
  653. /package/dist/cjs/{codama/devnet → generated/codama}/index.js +0 -0
  654. /package/dist/cjs/{codama/devnet → generated/codama}/programs/index.js +0 -0
  655. /package/dist/cjs/{codama/devnet → generated/codama}/types/equality.js +0 -0
  656. /package/dist/cjs/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  657. /package/dist/cjs/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  658. /package/dist/esm/{codama/devnet → generated/codama}/errors/index.js +0 -0
  659. /package/dist/esm/{codama/devnet → generated/codama}/index.js +0 -0
  660. /package/dist/esm/{codama/devnet → generated/codama}/programs/index.js +0 -0
  661. /package/dist/esm/{codama/devnet → generated/codama}/types/equality.js +0 -0
  662. /package/dist/esm/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  663. /package/dist/esm/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  664. /package/dist/types/{codama/devnet → generated/codama}/errors/index.d.ts +0 -0
  665. /package/dist/types/{codama/devnet → generated/codama}/index.d.ts +0 -0
  666. /package/dist/types/{codama/devnet → generated/codama}/programs/index.d.ts +0 -0
  667. /package/dist/types/{codama/devnet → generated/codama}/types/trigger.d.ts +0 -0
  668. /package/dist/types/{codama/devnet → generated/codama}/types/triggerContext.d.ts +0 -0
@@ -1,50 +1,179 @@
1
- import { getCachedNetworkModule, createConfigSelector } from '../utils/config';
2
1
  /**
3
- * Internal function to cancel a rental instruction with configuration options
2
+ * @purpose Rental cancellation with penalty processing and thread cleanup
3
+ * @reviewed 2025-07-29
4
+ */
5
+ import { getModule, createSdkConfigSelector, resolveProgramAddresses, getSdkConfig, } from '../utils/config';
6
+ import { toAddress } from '../utils/constants';
7
+ import { createTransactionSigner } from '../utils/signer';
8
+ import { createFluentInstruction, createSmartFluentConfigSelector, } from '../utils/instruction-converter';
9
+ import { fetchContractState, fetchConfigState, fetchRentalState } from '../utils/fetch-accounts';
10
+ import { deriveRental, deriveRentalAuthority, deriveRentalThread } from '../utils/derive-pda';
11
+ /**
12
+ * Internal function to cancel a rental instruction with configuration options.
13
+ *
14
+ * This function handles the core logic of creating a rental cancellation instruction,
15
+ * including address resolution and instruction generation. The cancellation stops
16
+ * automated payments and may incur penalty fees.
17
+ *
18
+ * @internal
19
+ * @param params - The rental cancellation parameters
20
+ * @param config - Optional configuration for network and program settings
21
+ * @returns Promise resolving to a cancellation instruction
22
+ * @throws Error when instruction generation fails or required parameters are missing
4
23
  */
5
24
  async function _cancelRental(params, config) {
6
- const { borrower, contract, } = params;
7
- // Let codama derive all the optional accounts
25
+ let { contract, rental } = params;
26
+ // Validate that at least one parameter is provided
27
+ if (!contract && !rental) {
28
+ throw new Error('Either contract or rental must be provided');
29
+ }
30
+ // Prioritize rental over contract if both are provided
31
+ if (rental || !contract) {
32
+ const rentalState = await fetchRentalState(toAddress(rental));
33
+ contract = rentalState.contract;
34
+ }
35
+ // Handle borrower using smart signer handler for universal compatibility
36
+ const borrower = createTransactionSigner(params.borrower);
37
+ // Get the resolved addresses from config (including network-specific addresses)
38
+ const globalConfig = getSdkConfig();
39
+ const effectiveConfig = { ...globalConfig, ...config };
40
+ const resolvedAddresses = resolveProgramAddresses(effectiveConfig);
41
+ // Fetch contract state using high-level function (same pattern as close contract)
42
+ const contractState = await fetchContractState(toAddress(contract));
43
+ // Fetch config state to get the authority using zero-argument overload
44
+ const configState = await fetchConfigState();
45
+ const authorityAddress = configState.authority;
46
+ // Derive PDAs individually (same pattern as accept rental to ensure consistency)
47
+ if (!rental) {
48
+ rental = await deriveRental(toAddress(contract), toAddress(borrower.address), resolvedAddresses.srslyProgramAddress);
49
+ }
50
+ const rentalAuthorityPda = await deriveRentalAuthority(resolvedAddresses.srslyProgramAddress);
51
+ const rentalThreadPda = await deriveRentalThread(rentalAuthorityPda, toAddress(rental), resolvedAddresses.antegenProgramAddress);
52
+ // Build the input with all required accounts (same pattern as accept rental)
8
53
  const input = {
9
- borrower,
10
- contract,
54
+ borrower: borrower,
55
+ owner: toAddress(contractState.owner),
56
+ contract: toAddress(contract),
57
+ authority: toAddress(authorityAddress),
58
+ mint: resolvedAddresses.atlasMint,
59
+ // Override the auto-generated PDAs with our manually derived ones (same as accept rental)
60
+ rentalState: toAddress(rental),
61
+ rentalAuthority: rentalAuthorityPda,
62
+ rentalThread: rentalThreadPda,
11
63
  };
12
- // Dynamically import network-specific codama functions
13
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
14
- const { getCancelRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
15
- return getCancelRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
64
+ // Get network-specific codama functions from centralized config
65
+ const instructionsModule = getModule('instructions');
66
+ const { getCancelRentalInstructionAsync } = instructionsModule;
67
+ const rawInstruction = await getCancelRentalInstructionAsync(input, {
68
+ programAddress: resolvedAddresses.srslyProgramAddress,
69
+ });
70
+ return createFluentInstruction(rawInstruction);
16
71
  }
17
72
  /**
18
73
  * Creates an instruction to cancel a rental with fluent configuration.
19
74
  *
75
+ * This function allows a borrower to cancel their active rental before the
76
+ * rental period expires. Canceling a rental stops automated payments but
77
+ * may incur penalty fees as defined in the contract terms. The fleet ownership
78
+ * is immediately returned to the original owner.
79
+ *
80
+ * ## Features
81
+ *
82
+ * - **Immediate Cancellation**: Stops the rental and automated payments immediately
83
+ * - **Fleet Transfer**: Returns fleet control to the original owner
84
+ * - **Thread Cleanup**: Cancels the automated payment thread
85
+ * - **Penalty Processing**: Handles any cancellation fees as defined in the contract
86
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
87
+ *
88
+ * ## Process
89
+ *
90
+ * 1. **Validate Authority**: Ensures only the borrower can cancel their rental
91
+ * 2. **Calculate Penalties**: Computes any cancellation fees owed
92
+ * 3. **Transfer Fleet**: Returns fleet ownership to the original owner
93
+ * 4. **Cancel Thread**: Stops automated payment processing
94
+ * 5. **Update State**: Marks rental as canceled in the rental state account
95
+ *
96
+ * ## Requirements
97
+ *
98
+ * - Rental must be active (not already canceled or completed)
99
+ * - Caller must be the original borrower
100
+ * - Borrower must have sufficient funds for any cancellation penalties
101
+ *
102
+ * ## Cancellation Effects
103
+ *
104
+ * - **Fleet Control**: Immediately returned to owner
105
+ * - **Automated Payments**: Stopped permanently
106
+ * - **Rental State**: Marked as canceled
107
+ * - **Thread Account**: Cleaned up and closed
108
+ * - **Penalties**: Charged according to contract terms
109
+ *
20
110
  * @example
21
111
  * ```typescript
22
- * // Use devnet defaults
23
- * const ix = await cancelRental({
112
+ * import { cancelRental } from '@srsly/sdk';
113
+ *
114
+ * // Cancel rental using contract address
115
+ * const instruction = await cancelRental({
24
116
  * borrower: wallet,
25
- * contract: contractAddress
117
+ * contract: "ContractAddr..."
26
118
  * });
27
119
  *
28
- * // Use mainnet configuration
29
- * const ix = await cancelRental(params).set({ network: 'mainnet' });
30
- *
31
- * // Override specific constants
32
- * const ix = await cancelRental(params).set({
33
- * network: 'mainnet',
34
- * sageProgramAddress: 'custom...'
120
+ * // Cancel rental using rental state address (alternative approach)
121
+ * const instruction2 = await cancelRental({
122
+ * borrower: wallet,
123
+ * rental: "RentalStateAddr..."
35
124
  * });
125
+ *
126
+ * // Configure for mainnet
127
+ * const mainnetInstruction = await cancelRental({
128
+ * borrower: wallet,
129
+ * contract: "ContractAddr..."
130
+ * }).set({ programs: 'mainnet' });
131
+ *
132
+ * // Convert to @solana/web3.js format
133
+ * const web3jsInstruction = await cancelRental({
134
+ * borrower: wallet,
135
+ * rental: "RentalStateAddr..."
136
+ * }).web3js();
137
+ *
138
+ * // Use with your preferred Solana library
139
+ * const transaction = new Transaction().add(web3jsInstruction);
140
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
36
141
  * ```
37
142
  *
38
- * @param params The simplified parameters for canceling a rental
39
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
143
+ * @param params - The rental cancellation parameters including borrower and either contract or rentalState
144
+ * @returns A SmartFluentConfigSelector that can be configured with .set() or awaited directly
145
+ * @throws Error when rental is not active, caller is not the borrower, or instruction generation fails
40
146
  */
41
147
  export function cancelRental(params) {
42
- return createConfigSelector((config) => _cancelRental(params, config));
148
+ const baseSelector = createSdkConfigSelector(config => _cancelRental(params, config));
149
+ return createSmartFluentConfigSelector(baseSelector);
43
150
  }
151
+ /**
152
+ * Low-level function to create a rental cancellation instruction with raw input parameters.
153
+ *
154
+ * This function provides direct access to the underlying codama-generated instruction
155
+ * builder. It's primarily used internally by the SDK but can be used for advanced
156
+ * use cases where full control over instruction parameters is needed.
157
+ *
158
+ * @internal
159
+ * @param input - Raw instruction input parameters as expected by codama
160
+ * @param options - Optional instruction options including program address
161
+ * @returns A SdkConfigSelector for the raw instruction
162
+ */
44
163
  export function getCancelRentalInstructionAsync(input, options) {
45
- return createConfigSelector(async (config) => {
46
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
47
- return codamaModule.getCancelRentalInstructionAsync(input, options);
164
+ return createSdkConfigSelector(async () => {
165
+ const instructionsModule = getModule('instructions');
166
+ return instructionsModule.getCancelRentalInstructionAsync(input, options);
48
167
  });
49
168
  }
169
+ // Demo export for documentation site
170
+ export const cancelRentalDemo = {
171
+ tabName: 'cancel',
172
+ description: 'Cancel an active rental (using contract address)',
173
+ imports: `import { cancelRental } from '@wuwei-labs/srsly';`,
174
+ instruction: `const instruction = await cancelRental({
175
+ borrower: {{signerType}}.publicKey?.toBase58(),
176
+ rental: "RENTAL_STATE_ADDRESS" // or contract: "CONTRACT_ADDRESS"
177
+ });`,
178
+ };
50
179
  //# sourceMappingURL=cancel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAA2C,MAAM,iBAAiB,CAAC;AAoBxH;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,MAA0B,EAC1B,MAAsB;IAEtB,MAAM,EACJ,QAAQ,EACR,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,8CAA8C;IAC9C,MAAM,KAAK,GAAG;QACZ,QAAQ;QACR,QAAQ;KACT,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnF,MAAM,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAEhF,OAAO,+BAA+B,CACpC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,YAAY,CAC1B,MAA0B;IAE1B,OAAO,oBAAoB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAAU,EAAE,OAAa;IACvE,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnF,OAAO,YAAY,CAAC,+BAA+B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":"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"}
@@ -1,52 +1,179 @@
1
- import { getCachedNetworkModule, createConfigSelector } from '../utils/config';
2
1
  /**
3
- * Internal function to close a rental instruction with configuration options
2
+ * @purpose Rental closure with fund transfer and thread cleanup
3
+ * @reviewed 2025-07-29
4
+ */
5
+ import { getModule, createSdkConfigSelector, resolveProgramAddresses, getSdkConfig, } from '../utils/config';
6
+ import { toAddress } from '../utils/constants';
7
+ import { createFluentInstruction, createSmartFluentConfigSelector, } from '../utils/instruction-converter';
8
+ import { fetchConfigState, fetchRentalState, fetchContractState, fetchFleetState } from '../utils/fetch-accounts';
9
+ import { deriveRentalThread, deriveRentalAuthority, deriveGameAccounts } from '../utils/derive-pda';
10
+ import { createTransactionSigner } from '../utils/signer';
11
+ /**
12
+ * Internal function to close a rental instruction with configuration options.
13
+ *
14
+ * This function handles the core logic of creating a rental closure instruction,
15
+ * including address resolution and instruction generation. The closure finalizes
16
+ * the rental period and transfers any remaining funds to the owner.
17
+ *
18
+ * @internal
19
+ * @param params - The rental closure parameters
20
+ * @param config - Optional configuration for network and program settings
21
+ * @returns Promise resolving to a closure instruction
22
+ * @throws Error when instruction generation fails or required parameters are missing
4
23
  */
5
24
  async function _closeRental(params, config) {
6
- const { borrower, ownerTokenAccount, contract, } = params;
7
- // Let codama derive the optional accounts
25
+ let { payer, rental, borrowerProfile, borrowerFaction } = params;
26
+ // Get the resolved addresses from config (including network-specific addresses)
27
+ const globalConfig = getSdkConfig();
28
+ const effectiveConfig = { ...globalConfig, ...config };
29
+ const resolvedAddresses = resolveProgramAddresses(effectiveConfig);
30
+ const rentalState = await fetchRentalState(rental);
31
+ // Extract required addresses from rental state
32
+ const contract = rentalState.contract;
33
+ const borrower = rentalState.borrower;
34
+ const rentalAuthorityPda = await deriveRentalAuthority(resolvedAddresses.srslyProgramAddress.toString());
35
+ const rentalThreadPda = await deriveRentalThread(rentalAuthorityPda, toAddress(rental), // Use the passed-in rental state address
36
+ resolvedAddresses.antegenProgramAddress);
37
+ // Fetch contract state to get owner and SAGE-related accounts
38
+ const contractState = await fetchContractState(contract);
39
+ // Fetch config state to get the authority using zero-argument overload
40
+ const configState = await fetchConfigState();
41
+ // Handle payer using smart signer handler for universal compatibility
42
+ const payerSigner = createTransactionSigner(payer);
43
+ // Resolve faction - use provided faction or fetch from fleet
44
+ if (!borrowerFaction) {
45
+ const fleetState = await fetchFleetState(contractState.fleet);
46
+ borrowerFaction = fleetState.faction;
47
+ }
48
+ // Derive game accounts for the BORROWER (not the owner)
49
+ const gameAccounts = await deriveGameAccounts(toAddress(borrowerProfile), borrowerFaction, 0, // starbaseSeqId
50
+ contractState.gameId);
51
+ const starbase = toAddress(gameAccounts.starbase);
52
+ const starbasePlayer = toAddress(gameAccounts.starbasePlayer);
53
+ // Only provide required fields - let Codama auto-generate the rest except rental_thread
8
54
  const input = {
9
- borrower,
10
- ownerTokenAccount,
11
- contract,
55
+ payer: payerSigner, // Pass TransactionSigner for proper handling
56
+ mint: resolvedAddresses.atlasMint, // Use resolved ATLAS mint from config
57
+ authority: toAddress(configState.authority), // Config authority for fee collection
58
+ borrower: toAddress(borrower),
59
+ owner: toAddress(contractState.owner),
60
+ contract: toAddress(contract),
61
+ // Only override rental_thread since Codama can't auto-generate this one
62
+ rentalThread: rentalThreadPda, // Uses Antegen program ID!
63
+ // Add SAGE-related accounts
64
+ fleet: toAddress(contractState.fleet),
65
+ gameId: contractState.gameId,
66
+ starbase: toAddress(starbase),
67
+ starbasePlayer: toAddress(starbasePlayer),
68
+ sageProgram: resolvedAddresses.sageProgramAddress,
12
69
  };
13
- // Dynamically import network-specific codama functions
14
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
15
- const { getCloseRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
16
- return getCloseRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
70
+ // Get network-specific codama functions from centralized config
71
+ const instructionsModule = getModule('instructions');
72
+ const { getCloseRentalInstructionAsync } = instructionsModule;
73
+ const rawInstruction = await getCloseRentalInstructionAsync(input, {
74
+ programAddress: resolvedAddresses.srslyProgramAddress,
75
+ });
76
+ return createFluentInstruction(rawInstruction);
17
77
  }
18
78
  /**
19
- * Creates an instruction to close a rental with fluent configuration.
79
+ * Creates an instruction to close a completed rental with fluent configuration.
80
+ *
81
+ * This function finalizes a rental that has reached its expiration or been fully paid.
82
+ * It transfers any remaining funds to the owner, returns fleet control, and cleans up
83
+ * the rental state account. This instruction can be called by anyone once the rental
84
+ * period has ended.
85
+ *
86
+ * ## Features
87
+ *
88
+ * - **Rental Finalization**: Properly closes completed or expired rentals
89
+ * - **Fund Transfer**: Moves any remaining payments or deposits to the owner
90
+ * - **Fleet Return**: Ensures fleet ownership is returned to the original owner
91
+ * - **State Cleanup**: Closes rental state account and returns lamports
92
+ * - **Thread Cleanup**: Cleans up automated payment threads
93
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
94
+ *
95
+ * ## Process
96
+ *
97
+ * 1. **Validate Completion**: Ensures rental period has ended or been fully paid
98
+ * 2. **Transfer Funds**: Moves any remaining ATLAS tokens to owner's account
99
+ * 3. **Return Fleet**: Transfers fleet ownership back to original owner
100
+ * 4. **Clean State**: Closes rental state account and returns SOL to payer
101
+ * 5. **Cancel Thread**: Cleans up any remaining automated payment threads
102
+ *
103
+ * ## Requirements
104
+ *
105
+ * - Rental must be completed or expired
106
+ * - Owner token account must be valid ATLAS token account
107
+ * - Rental state account must exist and be properly initialized
108
+ *
109
+ * ## When to Use
110
+ *
111
+ * - **Natural Expiration**: When rental period has ended
112
+ * - **Full Payment**: When all required payments have been made
113
+ * - **Account Cleanup**: To close expired rental accounts and recover SOL
114
+ * - **Fleet Recovery**: When fleet needs to be returned to owner
20
115
  *
21
116
  * @example
22
117
  * ```typescript
23
- * // Use devnet defaults
24
- * const ix = await closeRental({
25
- * borrower: borrowerAddress,
26
- * ownerTokenAccount: ownerTokenAccountAddress,
27
- * contract: contractAddress
118
+ * import { closeRental } from '@srsly/sdk';
119
+ *
120
+ * // Close a completed rental
121
+ * const instruction = await closeRental({
122
+ * payer: wallet, // Transaction payer
123
+ * rental: "RentalState..." // Rental state address
28
124
  * });
29
125
  *
30
- * // Use mainnet configuration
31
- * const ix = await closeRental(params).set({ network: 'mainnet' });
126
+ * // Configure for mainnet
127
+ * const mainnetInstruction = await closeRental({
128
+ * payer: wallet,
129
+ * rental: "RentalState..."
130
+ * }).set({ programs: 'mainnet' });
32
131
  *
33
- * // Override specific constants
34
- * const ix = await closeRental(params).set({
35
- * network: 'mainnet',
36
- * sageProgramAddress: 'custom...'
37
- * });
132
+ * // Convert to @solana/web3.js format
133
+ * const web3jsInstruction = await closeRental({
134
+ * payer: wallet,
135
+ * rental: "RentalState..."
136
+ * }).web3js(PublicKey);
137
+ *
138
+ * // Use with your preferred Solana library
139
+ * const transaction = new Transaction().add(web3jsInstruction);
140
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
38
141
  * ```
39
142
  *
40
- * @param params The simplified parameters for closing a rental
41
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
143
+ * @param params - The rental closure parameters including payer and rental state address
144
+ * @returns A FluentConfigSelector that can be configured with .set() or awaited directly
145
+ * @throws Error when rental is not ready for closure or instruction generation fails
42
146
  */
43
147
  export function closeRental(params) {
44
- return createConfigSelector((config) => _closeRental(params, config));
148
+ const baseSelector = createSdkConfigSelector(config => _closeRental(params, config));
149
+ return createSmartFluentConfigSelector(baseSelector);
45
150
  }
151
+ /**
152
+ * Low-level function to create a rental closure instruction with raw input parameters.
153
+ *
154
+ * This function provides direct access to the underlying codama-generated instruction
155
+ * builder. It's primarily used internally by the SDK but can be used for advanced
156
+ * use cases where full control over instruction parameters is needed.
157
+ *
158
+ * @internal
159
+ * @param input - Raw instruction input parameters as expected by codama
160
+ * @param options - Optional instruction options including program address
161
+ * @returns A SdkConfigSelector for the raw instruction
162
+ */
46
163
  export function getCloseRentalInstructionAsync(input, options) {
47
- return createConfigSelector(async (config) => {
48
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
49
- return codamaModule.getCloseRentalInstructionAsync(input, options);
164
+ return createSdkConfigSelector(async () => {
165
+ const instructionsModule = getModule('instructions');
166
+ return instructionsModule.getCloseRentalInstructionAsync(input, options);
50
167
  });
51
168
  }
169
+ // Demo export for documentation site
170
+ export const closeRentalDemo = {
171
+ tabName: 'close',
172
+ description: 'Close a completed rental',
173
+ imports: `import { closeRental } from '@wuwei-labs/srsly';`,
174
+ instruction: `const instruction = await closeRental({
175
+ payer: {{signerType}}.publicKey?.toBase58(),
176
+ rental: "RENTAL_STATE_ADDRESS"
177
+ });`,
178
+ };
52
179
  //# sourceMappingURL=close.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/rental/close.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAA2C,MAAM,iBAAiB,CAAC;AAyBxH;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,MAAyB,EACzB,MAAsB;IAEtB,MAAM,EACJ,QAAQ,EACR,iBAAiB,EACjB,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,0CAA0C;IAC1C,MAAM,KAAK,GAAG;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnF,MAAM,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAE/E,OAAO,8BAA8B,CACnC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,WAAW,CACzB,MAAyB;IAEzB,OAAO,oBAAoB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,KAAU,EAAE,OAAa;IACtE,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnF,OAAO,YAAY,CAAC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/rental/close.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,89 @@
1
- export * from "./accept";
2
- export * from "./cancel";
3
- export * from "./close";
4
- export * from "./reset";
1
+ /**
2
+ * @purpose Rental operations module with accept, cancel, close, and reset functionality
3
+ * @reviewed 2025-07-29
4
+ */
5
+ /**
6
+ * # Rental Operations Module
7
+ *
8
+ * This module provides comprehensive functionality for managing rental operations
9
+ * on the SRSLY program. It includes functions for accepting, canceling, closing,
10
+ * and resetting rentals, with full support for both @solana/kit and @solana/web3.js libraries.
11
+ *
12
+ * ## Available Functions
13
+ *
14
+ * - **acceptRental**: Accept an existing rental contract as a borrower
15
+ * - **cancelRental**: Cancel an active rental before completion
16
+ * - **closeRental**: Close a completed or expired rental
17
+ * - **resetRental**: Reset a canceled rental to make the contract available again
18
+ *
19
+ * ## Rental Lifecycle
20
+ *
21
+ * ```text
22
+ * Contract Created → Accept → [Active Rental] → Close (Complete)
23
+ * ↓ ↓
24
+ * [Payment] Cancel → Reset → [Available Again]
25
+ * ↑ ↓
26
+ * [Automated] [Cleanup]
27
+ * ```
28
+ *
29
+ * ## Features
30
+ *
31
+ * - **Universal Library Support**: Works with both major Solana libraries
32
+ * - **String-Based Addresses**: Eliminates library-specific type conflicts
33
+ * - **Fluent API**: Chainable configuration and format conversion
34
+ * - **Network Agnostic**: Supports different Solana networks
35
+ * - **Automated Payments**: Integration with Clockwork for scheduled payments
36
+ * - **SAGE Integration**: Fleet ownership management in Star Atlas ecosystem
37
+ *
38
+ * ## Common Patterns
39
+ *
40
+ * ### Accept a Rental
41
+ * ```typescript
42
+ * import { acceptRental } from '@srsly/sdk';
43
+ *
44
+ * const instruction = await acceptRental({
45
+ * borrower: wallet,
46
+ * borrowerProfile: "ProfileAddr...",
47
+ * contract: "ContractAddr...",
48
+ * duration: { days: 7 } // Smart parameter format
49
+ * });
50
+ * ```
51
+ *
52
+ * ### Cancel Active Rental
53
+ * ```typescript
54
+ * import { cancelRental } from '@srsly/sdk';
55
+ *
56
+ * const instruction = await cancelRental({
57
+ * borrower: wallet,
58
+ * contract: "ContractAddr..."
59
+ * });
60
+ * ```
61
+ *
62
+ * ### Close Completed Rental
63
+ * ```typescript
64
+ * import { closeRental } from '@srsly/sdk';
65
+ *
66
+ * const instruction = await closeRental({
67
+ * payer: wallet,
68
+ * rental: "RentalStateAddr..."
69
+ * });
70
+ * ```
71
+ *
72
+ * ### Reset Canceled Rental
73
+ * ```typescript
74
+ * import { resetRental } from '@srsly/sdk';
75
+ *
76
+ * const instruction = await resetRental({
77
+ * payer: wallet,
78
+ * contract: "ContractAddr..."
79
+ * // fleet, rental, faction, ownerProfile auto-fetched if not provided
80
+ * });
81
+ * ```
82
+ *
83
+ * @module Rental
84
+ */
85
+ export * from './accept';
86
+ export * from './cancel';
87
+ export * from './close';
88
+ export * from './reset';
5
89
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rental/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rental/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}