@wuwei-labs/srsly 2.0.0-beta.7 → 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 +370 -505
  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 +63 -0
  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 +63 -0
  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 +55 -34
  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
package/dist/cjs/index.js CHANGED
@@ -1,4 +1,56 @@
1
1
  "use strict";
2
+ /**
3
+ * @purpose SRSLY SDK - Solana Rental System Library main entry point
4
+ * @reviewed 2025-07-29
5
+ *
6
+ * A comprehensive TypeScript SDK for interacting with the SRSLY Solana program,
7
+ * which facilitates fleet rentals in the Star Atlas ecosystem. This SDK provides
8
+ * a fluent, developer-friendly interface that works with both @solana/kit and
9
+ * @solana/web3.js libraries.
10
+ *
11
+ * ## Features
12
+ *
13
+ * - **Universal Compatibility**: Works with both @solana/kit and @solana/web3.js
14
+ * - **Fluent API**: Chainable methods for intuitive development experience
15
+ * - **String-Based Addresses**: Uses strings for all addresses to eliminate library conflicts
16
+ * - **Network Agnostic**: Supports mainnet, devnet, and custom RPC endpoints
17
+ * - **Type Safety**: Full TypeScript support with comprehensive type definitions
18
+ * - **Auto-Generated Types**: Types generated from Solana program IDL for accuracy
19
+ *
20
+ * ## Quick Start
21
+ *
22
+ * ```typescript
23
+ * import { createContract, acceptRental } from '@srsly/sdk';
24
+ *
25
+ * // Create a rental contract
26
+ * const instruction = await createContract({
27
+ * owner: wallet,
28
+ * fleet: "FleetAddress123...",
29
+ * ownerProfile: "ProfileAddr...",
30
+ * rate: 1000,
31
+ * durationMax: 7, // 7 payment periods (7 days for @daily)
32
+ * paymentsFreq: 'daily'
33
+ * });
34
+ *
35
+ * // Accept a rental
36
+ * const rentalInstruction = await acceptRental({
37
+ * borrower: borrowerWallet,
38
+ * contract: contractAddress,
39
+ * amount: 7000,
40
+ * duration: { days: 7 } // Smart parameter format
41
+ * });
42
+ * ```
43
+ *
44
+ * ## Architecture
45
+ *
46
+ * The SDK is organized into several main modules:
47
+ * - **Contract**: Functions for creating and managing rental contracts
48
+ * - **Rental**: Functions for rental operations (accept, cancel, close)
49
+ * - **Utils**: Helper functions for duration, payment frequency, and account management
50
+ * - **Types**: TypeScript type definitions and interfaces
51
+ *
52
+ * @packageDocumentation
53
+ */
2
54
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
55
  if (k2 === undefined) k2 = k;
4
56
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -14,12 +66,200 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
66
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
67
  };
16
68
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.PaymentFrequency = void 0;
69
+ exports.IDL = exports.createSchedule = exports.ScheduleBuilder = exports.validateFrequencyForDuration = exports.validateRentalSchedule = exports.formatPaymentSchedulePreview = exports.calculatePaymentSchedule = exports.parseScheduleString = exports.paymentFrequencyToCron = exports.validateCronExpression = exports.getNextCronOccurrence = exports.normalizePaymentSchedule = exports.validateDurationAlignment = exports.paymentFrequencyStringToSeconds = exports.paymentFrequencyToSeconds = exports.isValidPaymentFrequency = exports.getPaymentFrequencyFromString = exports.CRON_TO_PAYMENT_FREQUENCY = exports.PAYMENT_FREQUENCY_TO_CRON = exports.PAYMENT_FREQUENCY_CONSTANTS = exports.PAYMENT_FREQUENCY_MAP = exports.VALID_PAYMENT_FREQUENCIES = exports.PaymentFrequency = exports.fetchMultipleRentalStates = exports.fetchMultipleContractStates = exports.fetchFleetState = exports.fetchConfigState = exports.fetchRentalState = exports.fetchContractState = exports.resolveProgramAddresses = exports.clearConfig = exports.getConfig = exports.setConfig = void 0;
18
70
  // Export main SDK functions
19
71
  __exportStar(require("./contract"), exports);
20
72
  __exportStar(require("./rental"), exports);
73
+ // Export config instruction functions
74
+ __exportStar(require("./config"), exports);
75
+ // Export config functions with public-facing names from utils
76
+ var config_1 = require("./utils/config");
77
+ Object.defineProperty(exports, "setConfig", { enumerable: true, get: function () { return config_1.setSdkConfig; } });
78
+ Object.defineProperty(exports, "getConfig", { enumerable: true, get: function () { return config_1.getSdkConfig; } });
79
+ Object.defineProperty(exports, "clearConfig", { enumerable: true, get: function () { return config_1.clearSdkConfig; } });
80
+ Object.defineProperty(exports, "resolveProgramAddresses", { enumerable: true, get: function () { return config_1.resolveProgramAddresses; } });
21
81
  __exportStar(require("./utils"), exports);
22
- // Export PaymentFrequency from utils since it's not in codama
23
- var constants_1 = require("./utils/constants");
24
- Object.defineProperty(exports, "PaymentFrequency", { enumerable: true, get: function () { return constants_1.PaymentFrequency; } });
82
+ /**
83
+ * Account fetch functions that work with any RPC endpoint.
84
+ *
85
+ * These functions accept RPC URL strings and return account data,
86
+ * making it easy to fetch program state from any network.
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * const contract = await fetchContractState(
91
+ * "https://api.mainnet-beta.solana.com",
92
+ * contractAddress
93
+ * );
94
+ *
95
+ * // Fetch SAGE fleet data using manual struct parsing
96
+ * const fleet = await fetchFleetState(fleetAddress);
97
+ * ```
98
+ */
99
+ var fetch_accounts_1 = require("./utils/fetch-accounts");
100
+ Object.defineProperty(exports, "fetchContractState", { enumerable: true, get: function () { return fetch_accounts_1.fetchContractState; } });
101
+ Object.defineProperty(exports, "fetchRentalState", { enumerable: true, get: function () { return fetch_accounts_1.fetchRentalState; } });
102
+ Object.defineProperty(exports, "fetchConfigState", { enumerable: true, get: function () { return fetch_accounts_1.fetchConfigState; } });
103
+ Object.defineProperty(exports, "fetchFleetState", { enumerable: true, get: function () { return fetch_accounts_1.fetchFleetState; } });
104
+ Object.defineProperty(exports, "fetchMultipleContractStates", { enumerable: true, get: function () { return fetch_accounts_1.fetchMultipleContractStates; } });
105
+ Object.defineProperty(exports, "fetchMultipleRentalStates", { enumerable: true, get: function () { return fetch_accounts_1.fetchMultipleRentalStates; } });
106
+ /**
107
+ * Payment frequency enum generated from the Rust program.
108
+ *
109
+ * This enum mirrors the Rust PaymentFrequency type and provides
110
+ * type-safe payment frequency values for contract creation.
111
+ */
112
+ var payment_frequency_1 = require("./types/payment-frequency");
113
+ Object.defineProperty(exports, "PaymentFrequency", { enumerable: true, get: function () { return payment_frequency_1.PaymentFrequency; } });
114
+ /**
115
+ * Payment frequency types and validation utilities.
116
+ *
117
+ * These exports provide string-based payment frequency handling,
118
+ * validation functions, and mapping between different representations.
119
+ *
120
+ * @example
121
+ * ```typescript
122
+ * if (isValidPaymentFrequency('daily')) {
123
+ * const frequency = getPaymentFrequencyFromString('daily');
124
+ * }
125
+ * ```
126
+ */
127
+ var payment_frequency_2 = require("./types/payment-frequency");
128
+ Object.defineProperty(exports, "VALID_PAYMENT_FREQUENCIES", { enumerable: true, get: function () { return payment_frequency_2.VALID_PAYMENT_FREQUENCIES; } });
129
+ Object.defineProperty(exports, "PAYMENT_FREQUENCY_MAP", { enumerable: true, get: function () { return payment_frequency_2.PAYMENT_FREQUENCY_MAP; } });
130
+ Object.defineProperty(exports, "PAYMENT_FREQUENCY_CONSTANTS", { enumerable: true, get: function () { return payment_frequency_2.PAYMENT_FREQUENCY_CONSTANTS; } });
131
+ Object.defineProperty(exports, "PAYMENT_FREQUENCY_TO_CRON", { enumerable: true, get: function () { return payment_frequency_2.PAYMENT_FREQUENCY_TO_CRON; } });
132
+ Object.defineProperty(exports, "CRON_TO_PAYMENT_FREQUENCY", { enumerable: true, get: function () { return payment_frequency_2.CRON_TO_PAYMENT_FREQUENCY; } });
133
+ Object.defineProperty(exports, "getPaymentFrequencyFromString", { enumerable: true, get: function () { return payment_frequency_2.getPaymentFrequencyFromString; } });
134
+ Object.defineProperty(exports, "isValidPaymentFrequency", { enumerable: true, get: function () { return payment_frequency_2.isValidPaymentFrequency; } });
135
+ /**
136
+ * Payment frequency utilities that mirror the Rust program implementation.
137
+ *
138
+ * These functions provide conversion between payment frequencies and time durations,
139
+ * ensuring consistency with the on-chain program logic.
140
+ *
141
+ * @example
142
+ * ```typescript
143
+ * const seconds = paymentFrequencyStringToSeconds('weekly');
144
+ * validateDurationAlignment(duration, 'daily');
145
+ * ```
146
+ */
147
+ var payment_frequency_3 = require("./utils/payment-frequency");
148
+ Object.defineProperty(exports, "paymentFrequencyToSeconds", { enumerable: true, get: function () { return payment_frequency_3.paymentFrequencyToSeconds; } });
149
+ Object.defineProperty(exports, "paymentFrequencyStringToSeconds", { enumerable: true, get: function () { return payment_frequency_3.paymentFrequencyStringToSeconds; } });
150
+ Object.defineProperty(exports, "validateDurationAlignment", { enumerable: true, get: function () { return payment_frequency_3.validateDurationAlignment; } });
151
+ Object.defineProperty(exports, "normalizePaymentSchedule", { enumerable: true, get: function () { return payment_frequency_3.normalizePaymentSchedule; } });
152
+ /**
153
+ * Cron expression utilities for advanced payment scheduling.
154
+ *
155
+ * These functions provide cron expression parsing, validation, and scheduling
156
+ * capabilities using the croner library, mirroring the Rust implementation.
157
+ *
158
+ * @example
159
+ * ```typescript
160
+ * // Validate a cron expression
161
+ * if (validateCronExpression("0 9 * * MON-FRI")) {
162
+ * // Calculate next payment time
163
+ * const nextPayment = getNextCronOccurrence("@daily", Date.now() / 1000);
164
+ * }
165
+ *
166
+ * // Preview payment schedule
167
+ * const schedule = calculatePaymentSchedule("@hourly", startTime, duration);
168
+ * console.log(`${schedule.totalPayments} payments will occur`);
169
+ * ```
170
+ */
171
+ var cron_1 = require("./utils/cron");
172
+ Object.defineProperty(exports, "getNextCronOccurrence", { enumerable: true, get: function () { return cron_1.getNextCronOccurrence; } });
173
+ Object.defineProperty(exports, "validateCronExpression", { enumerable: true, get: function () { return cron_1.validateCronExpression; } });
174
+ Object.defineProperty(exports, "paymentFrequencyToCron", { enumerable: true, get: function () { return cron_1.paymentFrequencyToCron; } });
175
+ Object.defineProperty(exports, "parseScheduleString", { enumerable: true, get: function () { return cron_1.parseScheduleString; } });
176
+ Object.defineProperty(exports, "calculatePaymentSchedule", { enumerable: true, get: function () { return cron_1.calculatePaymentSchedule; } });
177
+ Object.defineProperty(exports, "formatPaymentSchedulePreview", { enumerable: true, get: function () { return cron_1.formatPaymentSchedulePreview; } });
178
+ /**
179
+ * Schedule validation utilities for rental contracts.
180
+ *
181
+ * These functions validate payment schedules against contract constraints
182
+ * and provide detailed feedback on potential issues.
183
+ *
184
+ * @example
185
+ * ```typescript
186
+ * const validation = validateRentalSchedule(
187
+ * "@daily",
188
+ * { days: 7 }, // Smart parameter format
189
+ * { days: 1 }, // Smart parameter format
190
+ * { days: 30 } // Smart parameter format
191
+ * );
192
+ *
193
+ * if (validation.valid) {
194
+ * console.log(`${validation.paymentCount} payments scheduled`);
195
+ * }
196
+ * ```
197
+ */
198
+ var schedule_validation_1 = require("./utils/schedule-validation");
199
+ Object.defineProperty(exports, "validateRentalSchedule", { enumerable: true, get: function () { return schedule_validation_1.validateRentalSchedule; } });
200
+ Object.defineProperty(exports, "validateFrequencyForDuration", { enumerable: true, get: function () { return schedule_validation_1.validateFrequencyForDuration; } });
201
+ /**
202
+ * Schedule builder for creating and previewing payment schedules.
203
+ *
204
+ * Provides a fluent API for building payment schedules with validation
205
+ * and preview capabilities.
206
+ *
207
+ * @example
208
+ * ```typescript
209
+ * // From standard frequency
210
+ * const schedule = ScheduleBuilder
211
+ * .fromFrequency("daily")
212
+ * .preview(Date.now() / 1000, { days: 7 });
213
+ *
214
+ * // Custom cron expression
215
+ * const custom = ScheduleBuilder
216
+ * .fromCron("0 12 * * MON")
217
+ * .validate({ days: 30 }, { days: 1 }, { days: 90 });
218
+ *
219
+ * // Common intervals
220
+ * const every3Hours = ScheduleBuilder
221
+ * .every('hours', 3)
222
+ * .preview(Date.now() / 1000, { days: 1 });
223
+ * ```
224
+ */
225
+ var schedule_builder_1 = require("./utils/schedule-builder");
226
+ Object.defineProperty(exports, "ScheduleBuilder", { enumerable: true, get: function () { return schedule_builder_1.ScheduleBuilder; } });
227
+ Object.defineProperty(exports, "createSchedule", { enumerable: true, get: function () { return schedule_builder_1.createSchedule; } });
228
+ /**
229
+ * Duration helper functions (DEPRECATED)
230
+ *
231
+ * Duration helper functions have been deprecated in favor of smart parameters.
232
+ * Use the smart parameter format instead for better type safety and clarity.
233
+ *
234
+ * @example
235
+ * ```typescript
236
+ * // Old approach (deprecated):
237
+ * // const rentalDuration = days(7);
238
+ *
239
+ * // New approach with smart parameters:
240
+ * const rentalDuration = { days: 7 };
241
+ * const paymentPeriod = { hours: 6 };
242
+ * const longRental = { weeks: 2 };
243
+ * ```
244
+ */
245
+ /**
246
+ * SRSLY Program IDL
247
+ *
248
+ * Export the complete IDL for the SRSLY program, useful for:
249
+ * - Building custom decoders
250
+ * - Generating client code
251
+ * - Inspecting program structure
252
+ * - Version-aware deserialization
253
+ */
254
+ var idl_1 = require("./idl");
255
+ Object.defineProperty(exports, "IDL", { enumerable: true, get: function () { return idl_1.IDL; } });
256
+ /**
257
+ * Legacy versioned decoders are now deprecated.
258
+ *
259
+ * Use the native Codama lazy decoder instead:
260
+ * - Replace: fetchMaybeRentalStateVersioned(rpc, address)
261
+ * - With: fetchMaybeRentalState(rpc, address, { lazy: true })
262
+ *
263
+ * The lazy decoder is available in all generated account fetch functions.
264
+ */
25
265
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4BAA4B;AAC5B,6CAA2B;AAC3B,2CAAyB;AACzB,0CAAwB;AAuBxB,8DAA8D;AAC9D,+CAAqD;AAA5C,6GAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;;;;;;;;;;;;;;;;;AAEH,4BAA4B;AAC5B,6CAA2B;AAC3B,2CAAyB;AAEzB,sCAAsC;AACtC,2CAAyB;AAEzB,8DAA8D;AAC9D,yCAUwB;AATtB,mGAAA,YAAY,OAAa;AACzB,mGAAA,YAAY,OAAa;AACzB,qGAAA,cAAc,OAAe;AAC7B,iHAAA,uBAAuB,OAAA;AAQzB,0CAAwB;AA0BxB;;;;;;;;;;;;;;;;GAgBG;AACH,yDAQgC;AAP9B,oHAAA,kBAAkB,OAAA;AAClB,kHAAA,gBAAgB,OAAA;AAChB,kHAAA,gBAAgB,OAAA;AAChB,iHAAA,eAAe,OAAA;AACf,6HAAA,2BAA2B,OAAA;AAC3B,2HAAA,yBAAyB,OAAA;AAI3B;;;;;GAKG;AACH,+DAA6D;AAApD,qHAAA,gBAAgB,OAAA;AAEzB;;;;;;;;;;;;GAYG;AACH,+DASmC;AAPjC,8HAAA,yBAAyB,OAAA;AACzB,0HAAA,qBAAqB,OAAA;AACrB,gIAAA,2BAA2B,OAAA;AAC3B,8HAAA,yBAAyB,OAAA;AACzB,8HAAA,yBAAyB,OAAA;AACzB,kIAAA,6BAA6B,OAAA;AAC7B,4HAAA,uBAAuB,OAAA;AAGzB;;;;;;;;;;;GAWG;AACH,+DAKmC;AAJjC,8HAAA,yBAAyB,OAAA;AACzB,oIAAA,+BAA+B,OAAA;AAC/B,8HAAA,yBAAyB,OAAA;AACzB,6HAAA,wBAAwB,OAAA;AAG1B;;;;;;;;;;;;;;;;;;GAkBG;AACH,qCAOsB;AANpB,6GAAA,qBAAqB,OAAA;AACrB,8GAAA,sBAAsB,OAAA;AACtB,8GAAA,sBAAsB,OAAA;AACtB,2GAAA,mBAAmB,OAAA;AACnB,gHAAA,wBAAwB,OAAA;AACxB,oHAAA,4BAA4B,OAAA;AAG9B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,mEAIqC;AAHnC,6HAAA,sBAAsB,OAAA;AACtB,mIAAA,4BAA4B,OAAA;AAI9B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,6DAKkC;AAJhC,mHAAA,eAAe,OAAA;AACf,kHAAA,cAAc,OAAA;AAKhB;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;GAQG;AACH,6BAAiD;AAAxC,0FAAA,GAAG,OAAA;AAEZ;;;;;;;;GAQG"}
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "@wuwei-labs/srsly",
3
+ "version": "2.3.2",
4
+ "description": "",
5
+ "source": "./src/index.ts",
6
+ "sideEffects": false,
7
+ "publishConfig": {
8
+ "access": "public"
9
+ },
10
+ "files": [
11
+ "dist/cjs",
12
+ "dist/esm",
13
+ "dist/types",
14
+ "target/idl/srsly.json",
15
+ "target/types/srsly.ts"
16
+ ],
17
+ "keywords": [
18
+ "SRSLY",
19
+ "Star",
20
+ "Atlas",
21
+ "sdk"
22
+ ],
23
+ "scripts": {
24
+ "build": "pnpm run generate && pnpm run package",
25
+ "build:quick": "pnpm run generate && pnpm run package",
26
+ "package": "pnpm run package:cjs && pnpm run package:esm",
27
+ "package:cjs": "tsc -p tsconfig.cjs.json && tsconfig-to-dual-package tsconfig.cjs.json",
28
+ "package:esm": "tsc -p tsconfig.esm.json && tsconfig-to-dual-package tsconfig.esm.json",
29
+ "generate": "node generate.mjs",
30
+ "dev": "vitest",
31
+ "pretest": "pnpm run build:quick",
32
+ "test": "vitest run",
33
+ "test:coverage": "vitest run --coverage",
34
+ "clean": "rm -rf dist target && cargo clean",
35
+ "docs": "typedoc",
36
+ "format": "prettier --write \"src/**/*.{ts,js,json}\" --ignore-path .prettierignore",
37
+ "format:check": "prettier --check \"src/**/*.{ts,js,json}\" --ignore-path .prettierignore",
38
+ "lint": "pnpm run format:check"
39
+ },
40
+ "author": "",
41
+ "license": "ISC",
42
+ "packageManager": "pnpm@10.13.1",
43
+ "dependencies": {
44
+ "@solana/kit": "^2.1.1",
45
+ "cron-parser": "^5.3.0"
46
+ },
47
+ "optionalDependencies": {
48
+ "@srsly/program": "workspace:*"
49
+ },
50
+ "devDependencies": {
51
+ "@codama/nodes-from-anchor": "^1.1.13",
52
+ "@wuwei-labs/renderers-js": "^1.4.2",
53
+ "@types/node": "^24.0.3",
54
+ "codama": "^1.2.13",
55
+ "nodemon": "^3.0.2",
56
+ "tsconfig-to-dual-package": "^1.2.0",
57
+ "typedoc": "^0.27.6",
58
+ "typescript": "^5.9.2",
59
+ "vitest": "^3.2.4",
60
+ "webpack": "^5.99.9"
61
+ },
62
+ "type": "commonjs"
63
+ }
@@ -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