@wuwei-labs/srsly 2.0.0-beta.9 → 2.3.3-canary.36.16828894446.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,90 +1,263 @@
1
1
  "use strict";
2
+ /**
3
+ * @purpose Rental contract acceptance with payment calculation and SAGE integration
4
+ * @reviewed 2025-07-29
5
+ */
2
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.acceptRentalDemo = void 0;
3
8
  exports.acceptRental = acceptRental;
4
9
  exports.getAcceptRentalInstructionAsync = getAcceptRentalInstructionAsync;
5
10
  const config_1 = require("../utils/config");
6
11
  const constants_1 = require("../utils/constants");
7
12
  const utils_1 = require("../utils");
13
+ const instruction_converter_1 = require("../utils/instruction-converter");
14
+ const fetch_accounts_1 = require("../utils/fetch-accounts");
15
+ const cron_1 = require("../utils/cron");
16
+ const derive_pda_1 = require("../utils/derive-pda");
17
+ const signer_1 = require("../utils/signer");
18
+ const param_converters_1 = require("../utils/param-converters");
8
19
  /**
9
- * Internal function to accept a rental instruction with configuration options
20
+ * Internal function to accept a rental instruction with configuration options.
21
+ *
22
+ * This function handles the core logic of creating a rental acceptance instruction,
23
+ * including contract state fetching, payment calculation, account derivation, and
24
+ * instruction generation. It automatically validates contract constraints and
25
+ * calculates the required payment amount.
26
+ *
27
+ * @internal
28
+ * @param params - The rental acceptance parameters
29
+ * @param config - Optional configuration for network and program settings
30
+ * @returns Promise resolving to a fluent instruction object
31
+ * @throws Error when contract is not found, duration constraints are violated, or account derivation fails
10
32
  */
11
33
  async function _acceptRental(params, config) {
12
- const { borrower, borrowerProfile, borrowerFaction, fleet, contract, gameId, rate, duration, referralTokenAccount, } = params;
13
- // Get the actual game ID to use (param override, config override, or network default)
14
- const actualGameId = gameId || await (0, constants_1.getSageGameId)(config);
15
- // Calculate the total amount from rate and duration
16
- // Convert ATLAS to stardust (smallest unit): 1 ATLAS = 100,000,000 stardust
17
- const amount = BigInt(rate) * BigInt(duration) * BigInt(constants_1.ATLAS_TO_STARDUST);
18
- // Derive the three accounts we need
19
- const { profileFaction, starbase, starbasePlayer } = await (0, utils_1.deriveGameAccounts)(borrowerProfile, borrowerFaction, actualGameId, 0, // starbaseSeqId
20
- config);
21
- // Let codama derive the rest (rentalThread, rentalState, rentalAuthority, etc.)
34
+ let { borrowerProfile, borrowerFaction, contract, duration } = params;
35
+ // Get the resolved addresses from config (including network-specific addresses)
36
+ const globalConfig = (0, config_1.getSdkConfig)();
37
+ const effectiveConfig = { ...globalConfig, ...config };
38
+ const resolvedAddresses = (0, config_1.resolveProgramAddresses)(effectiveConfig);
39
+ // Fetch contract state to get payment frequency and validate parameters
40
+ const contractState = await (0, fetch_accounts_1.fetchContractState)(contract);
41
+ const configState = await (0, fetch_accounts_1.fetchConfigState)();
42
+ // Extract data from contract state
43
+ const rate = contractState.rate; // Keep as bigint
44
+ const fleet = contractState.fleet;
45
+ // Resolve faction - use provided faction or fetch from fleet
46
+ if (!borrowerFaction) {
47
+ const fleetState = await (0, fetch_accounts_1.fetchFleetState)(fleet);
48
+ borrowerFaction = fleetState.faction;
49
+ }
50
+ // Convert duration to seconds using smart parameter converter
51
+ const durationSeconds = await (0, param_converters_1.convertDurationToSeconds)(duration);
52
+ // Get the actual period duration using prev/next method
53
+ const currentTime = Math.floor(Date.now() / 1000);
54
+ // Normalize the payment frequency for JavaScript cron-parser
55
+ const normalizedFreq = contractState.paymentsFeq.startsWith('@')
56
+ ? {
57
+ '@hourly': '0 * * * *',
58
+ '@daily': '0 0 * * *',
59
+ '@weekly': '0 0 * * 0',
60
+ '@monthly': '0 0 1 * *',
61
+ '@decasecond': '*/10 * * * * *',
62
+ '@minute': '0 * * * * *',
63
+ }[contractState.paymentsFeq] || contractState.paymentsFeq
64
+ : contractState.paymentsFeq;
65
+ // Get actual period duration (not time-to-first-payment)
66
+ const actualPeriodDuration = (0, cron_1.getActualPeriodDuration)(normalizedFreq, currentTime);
67
+ // Calculate proportional amount using integer math
68
+ // amount = rate * duration / period * stardust_to_atlas
69
+ const amount = rate
70
+ * BigInt(durationSeconds)
71
+ / BigInt(actualPeriodDuration)
72
+ * configState.stardustToAtlas;
73
+ // Derive the fee_token_account from config state
74
+ const feeTokenAccount = await (0, derive_pda_1.deriveFeeTokenAccount)(configState);
75
+ // Manually derive ALL game accounts - they all use different program addresses than main SAGE program
76
+ const { profileFaction, starbase, starbasePlayer } = await (0, utils_1.deriveGameAccounts)((0, constants_1.toAddress)(borrowerProfile), borrowerFaction, 0, // starbaseSeqId
77
+ contractState.gameId);
78
+ // Handle borrower using smart signer handler for universal compatibility
79
+ const borrower = (0, signer_1.createTransactionSigner)(params.borrower);
80
+ // Manually derive PDAs with correct program IDs
81
+ const rentalStatePda = await (0, derive_pda_1.deriveRental)((0, constants_1.toAddress)(contract), borrower.address, // Use TransactionSigner.address for PDA derivation
82
+ resolvedAddresses.srslyProgramAddress);
83
+ const rentalAuthorityPda = await (0, derive_pda_1.deriveRentalAuthority)(resolvedAddresses.srslyProgramAddress);
84
+ const rentalThreadPda = await (0, derive_pda_1.deriveRentalThread)(rentalAuthorityPda, rentalStatePda, resolvedAddresses.antegenProgramAddress);
22
85
  const input = {
23
- borrower,
24
- borrowerProfile,
25
- borrowerProfileFaction: profileFaction,
26
- fleet,
27
- contract,
28
- gameId: actualGameId,
29
- starbase,
30
- starbasePlayer,
86
+ borrower: borrower,
87
+ borrowerProfile: (0, constants_1.toAddress)(borrowerProfile),
88
+ borrowerProfileFaction: (0, constants_1.toAddress)(profileFaction),
89
+ fleet: (0, constants_1.toAddress)(fleet),
90
+ contract: (0, constants_1.toAddress)(contract),
91
+ gameId: contractState.gameId,
92
+ starbase: (0, constants_1.toAddress)(starbase),
93
+ starbasePlayer: (0, constants_1.toAddress)(starbasePlayer),
94
+ // Override PDAs with correctly derived addresses
95
+ rentalState: rentalStatePda,
96
+ rentalAuthority: rentalAuthorityPda,
97
+ rentalThread: rentalThreadPda,
31
98
  amount,
32
- duration,
33
- referralTokenAccount,
99
+ duration: durationSeconds,
100
+ feeTokenAccount,
101
+ mint: resolvedAddresses.atlasMint,
102
+ sageProgram: resolvedAddresses.sageProgramAddress,
103
+ antegenProgram: resolvedAddresses.antegenProgramAddress,
34
104
  };
35
- // Dynamically import network-specific codama functions
36
- const codamaModule = await (0, config_1.getCachedNetworkModule)('instructions', config?.network);
37
- const { getAcceptRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
38
- return getAcceptRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
105
+ // Get network-specific codama functions from centralized config
106
+ const instructionsModule = (0, config_1.getModule)('instructions');
107
+ const { getAcceptRentalInstructionAsync } = instructionsModule;
108
+ const rawInstruction = await getAcceptRentalInstructionAsync(input, {
109
+ programAddress: resolvedAddresses.srslyProgramAddress,
110
+ });
111
+ return (0, instruction_converter_1.createFluentInstruction)(rawInstruction);
39
112
  }
40
113
  /**
41
- * Creates an instruction to accept a rental with fluent configuration.
114
+ * Creates an instruction to accept a rental contract with fluent configuration.
115
+ *
116
+ * This function allows a borrower to accept an existing rental contract, automatically
117
+ * calculating the required payment amount based on the contract's rate and payment frequency.
118
+ * The SDK fetches contract details, validates duration constraints, and derives all
119
+ * necessary accounts for the rental operation.
120
+ *
121
+ * ## Features
122
+ *
123
+ * - **Automatic Payment Calculation**: Fetches contract state and calculates exact payment amount
124
+ * - **Automatic Faction Resolution**: Optionally fetches faction from fleet account if not provided
125
+ * - **Duration Validation**: Ensures rental duration meets contract constraints
126
+ * - **Account Derivation**: Automatically derives all required game accounts
127
+ * - **SAGE Integration**: Sets up fleet ownership transfer in the Star Atlas ecosystem
128
+ * - **Clockwork Integration**: Configures automated payment scheduling
129
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
130
+ *
131
+ * ## Process
132
+ *
133
+ * 1. **Fetch Contract**: Retrieves contract state from the blockchain
134
+ * 2. **Validate Duration**: Checks that rental duration meets contract constraints
135
+ * 3. **Calculate Payment**: Computes payment amount using contract rate and payment frequency
136
+ * 4. **Derive Accounts**: Generates required game accounts (starbase, faction, etc.)
137
+ * 5. **Create Instruction**: Builds the rental acceptance instruction
138
+ * 6. **Setup Threading**: Configures automated payment processing
139
+ *
140
+ * ## Payment Calculation
141
+ *
142
+ * The payment amount is calculated using the formula:
143
+ * ```text
144
+ * payment = rate × payment_periods × stardust_to_atlas_conversion
145
+ * ```
146
+ *
147
+ * Where:
148
+ * - `rate`: Contract's rental rate per payment period
149
+ * - `payment_periods`: Duration divided by payment frequency interval
150
+ * - `stardust_to_atlas_conversion`: Network-specific conversion factor
151
+ *
152
+ * ## Requirements
153
+ *
154
+ * - Contract must exist and be active
155
+ * - Duration must be within contract's min/max limits
156
+ * - Duration must be multiple of payment frequency
157
+ * - Borrower must have sufficient ATLAS tokens for payment
42
158
  *
43
159
  * @example
44
160
  * ```typescript
45
- * // Use devnet defaults
46
- * const ix = await acceptRental({
161
+ * import { acceptRental } from '@srsly/sdk';
162
+ *
163
+ * // Using smart duration parameters (recommended)
164
+ * const instruction = await acceptRental({
165
+ * borrower: wallet, // Wallet object for signing
166
+ * borrowerProfile: "ProfileAddr...", // Borrower's Star Atlas profile
167
+ * contract: "ContractAddr...", // Contract to accept
168
+ * duration: { days: 7 } // 7 days rental duration
169
+ * // borrowerFaction auto-resolved from fleet account
170
+ * });
171
+ *
172
+ * // Different duration formats
173
+ * const hourlyRental = await acceptRental({
47
174
  * borrower: wallet,
48
- * borrowerProfile: profileAddress,
49
- * borrowerFaction: 1, // 1 = mud, 2 = oni, 3 = ustur
50
- * fleet: fleetAddress,
51
- * contract: contractAddress,
52
- * rate: 1000, // ATLAS tokens
53
- * duration: 86400 // 1 day in seconds (total: 1000 * 86400 * 100M stardust)
175
+ * borrowerProfile: "ProfileAddr...",
176
+ * contract: "ContractAddr...",
177
+ * duration: { hours: 12 } // 12 hours
54
178
  * });
55
179
  *
56
- * // With referral (referrer gets 5% of platform fees)
57
- * const ix = await acceptRental({
180
+ * const weeklyRental = await acceptRental({
58
181
  * borrower: wallet,
59
- * borrowerProfile: profileAddress,
60
- * borrowerFaction: 1,
61
- * fleet: fleetAddress,
62
- * contract: contractAddress,
63
- * rate: 1000,
64
- * duration: 86400,
65
- * referralTokenAccount: referrerTokenAddress
182
+ * borrowerProfile: "ProfileAddr...",
183
+ * contract: "ContractAddr...",
184
+ * duration: { weeks: 2 } // 2 weeks
66
185
  * });
67
186
  *
68
- * // Use mainnet configuration
69
- * const ix = await acceptRental(params).set({ network: 'mainnet' });
187
+ * const monthlyRental = await acceptRental({
188
+ * borrower: wallet,
189
+ * borrowerProfile: "ProfileAddr...",
190
+ * contract: "ContractAddr...",
191
+ * duration: { months: 1 } // 1 month
192
+ * });
70
193
  *
71
- * // Override specific constants
72
- * const ix = await acceptRental(params).set({
73
- * network: 'mainnet',
74
- * gameId: 'custom-game-id...'
194
+ * // Backwards compatible - raw seconds
195
+ * const legacyRental = await acceptRental({
196
+ * borrower: wallet,
197
+ * borrowerProfile: "ProfileAddr...",
198
+ * contract: "ContractAddr...",
199
+ * duration: 604800 // 7 days in seconds
75
200
  * });
201
+ *
202
+ * // Manual faction specification (optional)
203
+ * const manualInstruction = await acceptRental({
204
+ * borrower: wallet.publicKey.toString(), // Address string for browser
205
+ * borrowerProfile: "ProfileAddr...", // Borrower's Star Atlas profile
206
+ * borrowerFaction: 'mud', // Optional: 'mud', 'oni', or 'ustur'
207
+ * contract: "ContractAddr...", // Contract to accept
208
+ * duration: { days: 7 } // 7 days rental duration
209
+ * });
210
+ *
211
+ * // Configure for mainnet
212
+ * const mainnetInstruction = await acceptRental({
213
+ * borrower: wallet, // Wallet object (CLI style)
214
+ * borrowerProfile: "ProfileAddr...",
215
+ * borrowerFaction: 1, // Can use numbers: 1=mud, 2=oni, 3=ustur
216
+ * contract: "ContractAddr...",
217
+ * duration: { days: 7 }
218
+ * }).set({ programs: 'mainnet' });
219
+ *
220
+ * // Use with your preferred Solana library
221
+ * const transaction = new Transaction().add(mainnetInstruction);
222
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
76
223
  * ```
77
224
  *
78
- * @param params The simplified parameters for accepting a rental
79
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
225
+ * @param params - The rental acceptance parameters including borrower, contract, and duration
226
+ * @returns A SmartFluentConfigSelector that can be configured with .set() or awaited directly
227
+ * @throws Error when contract is not found, duration constraints are violated, or payment calculation fails
80
228
  */
81
229
  function acceptRental(params) {
82
- return (0, config_1.createConfigSelector)((config) => _acceptRental(params, config));
230
+ const baseSelector = (0, config_1.createSdkConfigSelector)(config => _acceptRental(params, config));
231
+ return (0, instruction_converter_1.createSmartFluentConfigSelector)(baseSelector);
83
232
  }
233
+ /**
234
+ * Low-level function to create a rental acceptance instruction with raw input parameters.
235
+ *
236
+ * This function provides direct access to the underlying codama-generated instruction
237
+ * builder. It's primarily used internally by the SDK but can be used for advanced
238
+ * use cases where full control over instruction parameters is needed.
239
+ *
240
+ * @internal
241
+ * @param input - Raw instruction input parameters as expected by codama
242
+ * @param options - Optional instruction options including program address
243
+ * @returns A SdkConfigSelector for the raw instruction
244
+ */
84
245
  function getAcceptRentalInstructionAsync(input, options) {
85
- return (0, config_1.createConfigSelector)(async (config) => {
86
- const codamaModule = await (0, config_1.getCachedNetworkModule)('instructions', config?.network);
87
- return codamaModule.getAcceptRentalInstructionAsync(input, options);
246
+ return (0, config_1.createSdkConfigSelector)(async () => {
247
+ const instructionsModule = (0, config_1.getModule)('instructions');
248
+ return instructionsModule.getAcceptRentalInstructionAsync(input, options);
88
249
  });
89
250
  }
251
+ // Demo export for documentation site
252
+ exports.acceptRentalDemo = {
253
+ tabName: 'accept',
254
+ description: 'Accept a rental offer from an existing contract',
255
+ imports: `import { acceptRental } from '@wuwei-labs/srsly';`,
256
+ instruction: `const instruction = await acceptRental({
257
+ borrower: {{signerType}}.publicKey?.toBase58(),
258
+ borrowerProfile: "BORROWER_PROFILE_ADDRESS",
259
+ contract: "CONTRACT_ADDRESS",
260
+ duration: { days: 7 }
261
+ });`,
262
+ };
90
263
  //# sourceMappingURL=accept.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accept.js","sourceRoot":"","sources":["../../../src/rental/accept.ts"],"names":[],"mappings":";;AA8KA,oCAIC;AAED,0EAKC;AApLD,4CAAwH;AACxH,kDAAsE;AAMtE,oCAEkB;AAuDlB;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,MAA0B,EAC1B,MAAsB;IAEtB,MAAM,EACJ,QAAQ,EACR,eAAe,EACf,eAAe,EACf,KAAK,EACL,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,oBAAoB,GACrB,GAAG,MAAM,CAAC;IAEX,sFAAsF;IACtF,MAAM,YAAY,GAAG,MAAM,IAAI,MAAM,IAAA,yBAAa,EAAC,MAAM,CAAC,CAAC;IAE3D,oDAAoD;IACpD,4EAA4E;IAC5E,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,6BAAiB,CAAC,CAAC;IAE3E,oCAAoC;IACpC,MAAM,EACJ,cAAc,EACd,QAAQ,EACR,cAAc,EACf,GAAG,MAAM,IAAA,0BAAkB,EAC1B,eAAe,EACf,eAAe,EACf,YAA+B,EAC/B,CAAC,EAAE,gBAAgB;IACnB,MAAM,CACP,CAAC;IAEF,gFAAgF;IAChF,MAAM,KAAK,GAAoC;QAC7C,QAAQ;QACR,eAAe;QACf,sBAAsB,EAAE,cAAc;QACtC,KAAK;QACL,QAAQ;QACR,MAAM,EAAE,YAAY;QACpB,QAAQ;QACR,cAAc;QACd,MAAM;QACN,QAAQ;QACR,oBAAoB;KACrB,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,IAAA,+BAAsB,EAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnF,MAAM,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAEhF,OAAO,+BAA+B,CACpC,KAAY,EACZ,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,SAAgB,YAAY,CAC1B,MAA0B;IAE1B,OAAO,IAAA,6BAAoB,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAgB,+BAA+B,CAAC,KAAU,EAAE,OAAa;IACvE,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,YAAY,GAAG,MAAM,IAAA,+BAAsB,EAAC,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":"accept.js","sourceRoot":"","sources":["../../../src/rental/accept.ts"],"names":[],"mappings":"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"}
@@ -1,54 +1,184 @@
1
1
  "use strict";
2
+ /**
3
+ * @purpose Rental cancellation with penalty processing and thread cleanup
4
+ * @reviewed 2025-07-29
5
+ */
2
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.cancelRentalDemo = void 0;
3
8
  exports.cancelRental = cancelRental;
4
9
  exports.getCancelRentalInstructionAsync = getCancelRentalInstructionAsync;
5
10
  const config_1 = require("../utils/config");
11
+ const constants_1 = require("../utils/constants");
12
+ const signer_1 = require("../utils/signer");
13
+ const instruction_converter_1 = require("../utils/instruction-converter");
14
+ const fetch_accounts_1 = require("../utils/fetch-accounts");
15
+ const derive_pda_1 = require("../utils/derive-pda");
6
16
  /**
7
- * Internal function to cancel a rental instruction with configuration options
17
+ * Internal function to cancel a rental instruction with configuration options.
18
+ *
19
+ * This function handles the core logic of creating a rental cancellation instruction,
20
+ * including address resolution and instruction generation. The cancellation stops
21
+ * automated payments and may incur penalty fees.
22
+ *
23
+ * @internal
24
+ * @param params - The rental cancellation parameters
25
+ * @param config - Optional configuration for network and program settings
26
+ * @returns Promise resolving to a cancellation instruction
27
+ * @throws Error when instruction generation fails or required parameters are missing
8
28
  */
9
29
  async function _cancelRental(params, config) {
10
- const { borrower, contract, } = params;
11
- // Let codama derive all the optional accounts
30
+ let { contract, rental } = params;
31
+ // Validate that at least one parameter is provided
32
+ if (!contract && !rental) {
33
+ throw new Error('Either contract or rental must be provided');
34
+ }
35
+ // Prioritize rental over contract if both are provided
36
+ if (rental || !contract) {
37
+ const rentalState = await (0, fetch_accounts_1.fetchRentalState)((0, constants_1.toAddress)(rental));
38
+ contract = rentalState.contract;
39
+ }
40
+ // Handle borrower using smart signer handler for universal compatibility
41
+ const borrower = (0, signer_1.createTransactionSigner)(params.borrower);
42
+ // Get the resolved addresses from config (including network-specific addresses)
43
+ const globalConfig = (0, config_1.getSdkConfig)();
44
+ const effectiveConfig = { ...globalConfig, ...config };
45
+ const resolvedAddresses = (0, config_1.resolveProgramAddresses)(effectiveConfig);
46
+ // Fetch contract state using high-level function (same pattern as close contract)
47
+ const contractState = await (0, fetch_accounts_1.fetchContractState)((0, constants_1.toAddress)(contract));
48
+ // Fetch config state to get the authority using zero-argument overload
49
+ const configState = await (0, fetch_accounts_1.fetchConfigState)();
50
+ const authorityAddress = configState.authority;
51
+ // Derive PDAs individually (same pattern as accept rental to ensure consistency)
52
+ if (!rental) {
53
+ rental = await (0, derive_pda_1.deriveRental)((0, constants_1.toAddress)(contract), (0, constants_1.toAddress)(borrower.address), resolvedAddresses.srslyProgramAddress);
54
+ }
55
+ const rentalAuthorityPda = await (0, derive_pda_1.deriveRentalAuthority)(resolvedAddresses.srslyProgramAddress);
56
+ const rentalThreadPda = await (0, derive_pda_1.deriveRentalThread)(rentalAuthorityPda, (0, constants_1.toAddress)(rental), resolvedAddresses.antegenProgramAddress);
57
+ // Build the input with all required accounts (same pattern as accept rental)
12
58
  const input = {
13
- borrower,
14
- contract,
59
+ borrower: borrower,
60
+ owner: (0, constants_1.toAddress)(contractState.owner),
61
+ contract: (0, constants_1.toAddress)(contract),
62
+ authority: (0, constants_1.toAddress)(authorityAddress),
63
+ mint: resolvedAddresses.atlasMint,
64
+ // Override the auto-generated PDAs with our manually derived ones (same as accept rental)
65
+ rentalState: (0, constants_1.toAddress)(rental),
66
+ rentalAuthority: rentalAuthorityPda,
67
+ rentalThread: rentalThreadPda,
15
68
  };
16
- // Dynamically import network-specific codama functions
17
- const codamaModule = await (0, config_1.getCachedNetworkModule)('instructions', config?.network);
18
- const { getCancelRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
19
- return getCancelRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
69
+ // Get network-specific codama functions from centralized config
70
+ const instructionsModule = (0, config_1.getModule)('instructions');
71
+ const { getCancelRentalInstructionAsync } = instructionsModule;
72
+ const rawInstruction = await getCancelRentalInstructionAsync(input, {
73
+ programAddress: resolvedAddresses.srslyProgramAddress,
74
+ });
75
+ return (0, instruction_converter_1.createFluentInstruction)(rawInstruction);
20
76
  }
21
77
  /**
22
78
  * Creates an instruction to cancel a rental with fluent configuration.
23
79
  *
80
+ * This function allows a borrower to cancel their active rental before the
81
+ * rental period expires. Canceling a rental stops automated payments but
82
+ * may incur penalty fees as defined in the contract terms. The fleet ownership
83
+ * is immediately returned to the original owner.
84
+ *
85
+ * ## Features
86
+ *
87
+ * - **Immediate Cancellation**: Stops the rental and automated payments immediately
88
+ * - **Fleet Transfer**: Returns fleet control to the original owner
89
+ * - **Thread Cleanup**: Cancels the automated payment thread
90
+ * - **Penalty Processing**: Handles any cancellation fees as defined in the contract
91
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
92
+ *
93
+ * ## Process
94
+ *
95
+ * 1. **Validate Authority**: Ensures only the borrower can cancel their rental
96
+ * 2. **Calculate Penalties**: Computes any cancellation fees owed
97
+ * 3. **Transfer Fleet**: Returns fleet ownership to the original owner
98
+ * 4. **Cancel Thread**: Stops automated payment processing
99
+ * 5. **Update State**: Marks rental as canceled in the rental state account
100
+ *
101
+ * ## Requirements
102
+ *
103
+ * - Rental must be active (not already canceled or completed)
104
+ * - Caller must be the original borrower
105
+ * - Borrower must have sufficient funds for any cancellation penalties
106
+ *
107
+ * ## Cancellation Effects
108
+ *
109
+ * - **Fleet Control**: Immediately returned to owner
110
+ * - **Automated Payments**: Stopped permanently
111
+ * - **Rental State**: Marked as canceled
112
+ * - **Thread Account**: Cleaned up and closed
113
+ * - **Penalties**: Charged according to contract terms
114
+ *
24
115
  * @example
25
116
  * ```typescript
26
- * // Use devnet defaults
27
- * const ix = await cancelRental({
117
+ * import { cancelRental } from '@srsly/sdk';
118
+ *
119
+ * // Cancel rental using contract address
120
+ * const instruction = await cancelRental({
28
121
  * borrower: wallet,
29
- * contract: contractAddress
122
+ * contract: "ContractAddr..."
30
123
  * });
31
124
  *
32
- * // Use mainnet configuration
33
- * const ix = await cancelRental(params).set({ network: 'mainnet' });
34
- *
35
- * // Override specific constants
36
- * const ix = await cancelRental(params).set({
37
- * network: 'mainnet',
38
- * sageProgramAddress: 'custom...'
125
+ * // Cancel rental using rental state address (alternative approach)
126
+ * const instruction2 = await cancelRental({
127
+ * borrower: wallet,
128
+ * rental: "RentalStateAddr..."
39
129
  * });
130
+ *
131
+ * // Configure for mainnet
132
+ * const mainnetInstruction = await cancelRental({
133
+ * borrower: wallet,
134
+ * contract: "ContractAddr..."
135
+ * }).set({ programs: 'mainnet' });
136
+ *
137
+ * // Convert to @solana/web3.js format
138
+ * const web3jsInstruction = await cancelRental({
139
+ * borrower: wallet,
140
+ * rental: "RentalStateAddr..."
141
+ * }).web3js();
142
+ *
143
+ * // Use with your preferred Solana library
144
+ * const transaction = new Transaction().add(web3jsInstruction);
145
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
40
146
  * ```
41
147
  *
42
- * @param params The simplified parameters for canceling a rental
43
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
148
+ * @param params - The rental cancellation parameters including borrower and either contract or rentalState
149
+ * @returns A SmartFluentConfigSelector that can be configured with .set() or awaited directly
150
+ * @throws Error when rental is not active, caller is not the borrower, or instruction generation fails
44
151
  */
45
152
  function cancelRental(params) {
46
- return (0, config_1.createConfigSelector)((config) => _cancelRental(params, config));
153
+ const baseSelector = (0, config_1.createSdkConfigSelector)(config => _cancelRental(params, config));
154
+ return (0, instruction_converter_1.createSmartFluentConfigSelector)(baseSelector);
47
155
  }
156
+ /**
157
+ * Low-level function to create a rental cancellation instruction with raw input parameters.
158
+ *
159
+ * This function provides direct access to the underlying codama-generated instruction
160
+ * builder. It's primarily used internally by the SDK but can be used for advanced
161
+ * use cases where full control over instruction parameters is needed.
162
+ *
163
+ * @internal
164
+ * @param input - Raw instruction input parameters as expected by codama
165
+ * @param options - Optional instruction options including program address
166
+ * @returns A SdkConfigSelector for the raw instruction
167
+ */
48
168
  function getCancelRentalInstructionAsync(input, options) {
49
- return (0, config_1.createConfigSelector)(async (config) => {
50
- const codamaModule = await (0, config_1.getCachedNetworkModule)('instructions', config?.network);
51
- return codamaModule.getCancelRentalInstructionAsync(input, options);
169
+ return (0, config_1.createSdkConfigSelector)(async () => {
170
+ const instructionsModule = (0, config_1.getModule)('instructions');
171
+ return instructionsModule.getCancelRentalInstructionAsync(input, options);
52
172
  });
53
173
  }
174
+ // Demo export for documentation site
175
+ exports.cancelRentalDemo = {
176
+ tabName: 'cancel',
177
+ description: 'Cancel an active rental (using contract address)',
178
+ imports: `import { cancelRental } from '@wuwei-labs/srsly';`,
179
+ instruction: `const instruction = await cancelRental({
180
+ borrower: {{signerType}}.publicKey?.toBase58(),
181
+ rental: "RENTAL_STATE_ADDRESS" // or contract: "CONTRACT_ADDRESS"
182
+ });`,
183
+ };
54
184
  //# sourceMappingURL=cancel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":";;AA6EA,oCAIC;AAED,0EAKC;AAnFD,4CAAwH;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,IAAA,+BAAsB,EAAC,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,SAAgB,YAAY,CAC1B,MAA0B;IAE1B,OAAO,IAAA,6BAAoB,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAgB,+BAA+B,CAAC,KAAU,EAAE,OAAa;IACvE,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,YAAY,GAAG,MAAM,IAAA,+BAAsB,EAAC,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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"}