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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (668) hide show
  1. package/README.md +366 -544
  2. package/dist/cjs/config/index.js +12 -0
  3. package/dist/cjs/config/index.js.map +1 -0
  4. package/dist/cjs/config/initialize.js +95 -0
  5. package/dist/cjs/config/initialize.js.map +1 -0
  6. package/dist/cjs/config/update.js +163 -0
  7. package/dist/cjs/config/update.js.map +1 -0
  8. package/dist/cjs/contract/close.js +128 -67
  9. package/dist/cjs/contract/close.js.map +1 -1
  10. package/dist/cjs/contract/create.js +232 -43
  11. package/dist/cjs/contract/create.js.map +1 -1
  12. package/dist/cjs/contract/index.js +49 -0
  13. package/dist/cjs/contract/index.js.map +1 -1
  14. package/dist/cjs/demos.js +69 -0
  15. package/dist/cjs/demos.js.map +1 -0
  16. package/dist/cjs/generated/codama/accounts/configState.js +123 -0
  17. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -0
  18. package/dist/cjs/{codama/devnet → generated/codama}/accounts/contractState.js +47 -9
  19. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -0
  20. package/dist/cjs/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  21. package/dist/cjs/generated/codama/accounts/index.js.map +1 -0
  22. package/dist/cjs/{codama/devnet → generated/codama}/accounts/rentalState.js +49 -11
  23. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -0
  24. package/dist/cjs/{codama/mainnet → generated/codama}/accounts/thread.js +42 -5
  25. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -0
  26. package/dist/cjs/generated/codama/errors/index.js.map +1 -0
  27. package/dist/cjs/generated/codama/errors/srsly.js +101 -0
  28. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -0
  29. package/dist/cjs/generated/codama/index.js.map +1 -0
  30. package/dist/cjs/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  31. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -0
  32. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  33. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -0
  34. package/dist/cjs/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +29 -38
  35. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -0
  36. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/closeRental.js +89 -44
  37. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -0
  38. package/dist/cjs/{codama/devnet → generated/codama}/instructions/createContract.js +13 -16
  39. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -0
  40. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  41. package/dist/cjs/generated/codama/instructions/index.js.map +1 -0
  42. package/dist/cjs/generated/codama/instructions/initializeConfig.js +139 -0
  43. package/dist/cjs/generated/codama/instructions/initializeConfig.js.map +1 -0
  44. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/payRental.js +14 -71
  45. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -0
  46. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  47. package/dist/cjs/generated/codama/instructions/resetRental.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/updateConfig.js +143 -0
  49. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -0
  50. package/dist/cjs/generated/codama/programs/index.js.map +1 -0
  51. package/dist/cjs/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  52. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -0
  53. package/dist/cjs/{codama/devnet → generated/codama}/shared/index.js +1 -1
  54. package/dist/cjs/generated/codama/shared/index.js.map +1 -0
  55. package/dist/cjs/generated/codama/types/clockData.js +58 -0
  56. package/dist/cjs/generated/codama/types/clockData.js.map +1 -0
  57. package/dist/cjs/generated/codama/types/equality.js.map +1 -0
  58. package/dist/cjs/{codama/devnet → generated/codama}/types/execContext.js +31 -1
  59. package/dist/cjs/generated/codama/types/execContext.js.map +1 -0
  60. package/dist/cjs/{codama/devnet → generated/codama}/types/index.js +1 -0
  61. package/dist/cjs/generated/codama/types/index.js.map +1 -0
  62. package/dist/cjs/generated/codama/types/paymentFrequency.js +36 -0
  63. package/dist/cjs/generated/codama/types/paymentFrequency.js.map +1 -0
  64. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableAccount.js +28 -1
  65. package/dist/cjs/generated/codama/types/serializableAccount.js.map +1 -0
  66. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableInstruction.js +28 -1
  67. package/dist/cjs/generated/codama/types/serializableInstruction.js.map +1 -0
  68. package/dist/cjs/{codama/mainnet → generated/codama}/types/threadResponse.js +31 -1
  69. package/dist/cjs/generated/codama/types/threadResponse.js.map +1 -0
  70. package/dist/cjs/generated/codama/types/trigger.js.map +1 -0
  71. package/dist/cjs/generated/codama/types/triggerContext.js.map +1 -0
  72. package/dist/cjs/idl/index.js +27 -0
  73. package/dist/cjs/idl/index.js.map +1 -0
  74. package/dist/cjs/idl/srsly-data.js +3140 -0
  75. package/dist/cjs/idl/srsly-data.js.map +1 -0
  76. package/dist/cjs/idl/srsly.json +3104 -0
  77. package/dist/cjs/index.js +244 -4
  78. package/dist/cjs/index.js.map +1 -1
  79. package/dist/cjs/package.json +29 -30
  80. package/dist/cjs/rental/accept.js +228 -55
  81. package/dist/cjs/rental/accept.js.map +1 -1
  82. package/dist/cjs/rental/cancel.js +155 -25
  83. package/dist/cjs/rental/cancel.js.map +1 -1
  84. package/dist/cjs/rental/close.js +157 -29
  85. package/dist/cjs/rental/close.js.map +1 -1
  86. package/dist/cjs/rental/index.js +84 -0
  87. package/dist/cjs/rental/index.js.map +1 -1
  88. package/dist/cjs/rental/reset.js +159 -36
  89. package/dist/cjs/rental/reset.js.map +1 -1
  90. package/dist/cjs/types/payment-frequency.js +87 -0
  91. package/dist/cjs/types/payment-frequency.js.map +1 -0
  92. package/dist/cjs/types/srsly.js +3 -0
  93. package/dist/cjs/types/srsly.js.map +1 -0
  94. package/dist/cjs/utils/config.js +142 -100
  95. package/dist/cjs/utils/config.js.map +1 -1
  96. package/dist/cjs/utils/constants.js +45 -81
  97. package/dist/cjs/utils/constants.js.map +1 -1
  98. package/dist/cjs/utils/cron.js +204 -0
  99. package/dist/cjs/utils/cron.js.map +1 -0
  100. package/dist/cjs/utils/derive-pda.js +415 -0
  101. package/dist/cjs/utils/derive-pda.js.map +1 -0
  102. package/dist/cjs/utils/fetch-accounts.js +241 -0
  103. package/dist/cjs/utils/fetch-accounts.js.map +1 -0
  104. package/dist/cjs/utils/index.js +14 -1
  105. package/dist/cjs/utils/index.js.map +1 -1
  106. package/dist/cjs/utils/instruction-converter.js +125 -0
  107. package/dist/cjs/utils/instruction-converter.js.map +1 -0
  108. package/dist/cjs/utils/param-converters.js +190 -0
  109. package/dist/cjs/utils/param-converters.js.map +1 -0
  110. package/dist/cjs/utils/payment-frequency.js +111 -0
  111. package/dist/cjs/utils/payment-frequency.js.map +1 -0
  112. package/dist/cjs/utils/schedule-builder.js +158 -0
  113. package/dist/cjs/utils/schedule-builder.js.map +1 -0
  114. package/dist/cjs/utils/schedule-validation.js +136 -0
  115. package/dist/cjs/utils/schedule-validation.js.map +1 -0
  116. package/dist/cjs/utils/signer.js +127 -0
  117. package/dist/cjs/utils/signer.js.map +1 -0
  118. package/dist/cjs/utils/smart-params.js +52 -0
  119. package/dist/cjs/utils/smart-params.js.map +1 -0
  120. package/dist/esm/config/index.js +7 -0
  121. package/dist/esm/config/index.js.map +1 -0
  122. package/dist/esm/config/initialize.js +92 -0
  123. package/dist/esm/config/initialize.js.map +1 -0
  124. package/dist/esm/config/update.js +159 -0
  125. package/dist/esm/config/update.js.map +1 -0
  126. package/dist/esm/contract/close.js +130 -70
  127. package/dist/esm/contract/close.js.map +1 -1
  128. package/dist/esm/contract/create.js +233 -44
  129. package/dist/esm/contract/create.js.map +1 -1
  130. package/dist/esm/contract/index.js +51 -2
  131. package/dist/esm/contract/index.js.map +1 -1
  132. package/dist/esm/demos.js +26 -0
  133. package/dist/esm/demos.js.map +1 -0
  134. package/dist/esm/generated/codama/accounts/configState.js +111 -0
  135. package/dist/esm/generated/codama/accounts/configState.js.map +1 -0
  136. package/dist/esm/{codama/mainnet → generated/codama}/accounts/contractState.js +48 -10
  137. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -0
  138. package/dist/esm/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  139. package/dist/esm/generated/codama/accounts/index.js.map +1 -0
  140. package/dist/esm/generated/codama/accounts/rentalState.js +113 -0
  141. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -0
  142. package/dist/esm/{codama/mainnet → generated/codama}/accounts/thread.js +43 -6
  143. package/dist/esm/generated/codama/accounts/thread.js.map +1 -0
  144. package/dist/esm/generated/codama/errors/index.js.map +1 -0
  145. package/dist/esm/generated/codama/errors/srsly.js +96 -0
  146. package/dist/esm/generated/codama/errors/srsly.js.map +1 -0
  147. package/dist/esm/generated/codama/index.js.map +1 -0
  148. package/dist/esm/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  149. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -0
  150. package/dist/esm/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  151. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -0
  152. package/dist/esm/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +21 -30
  153. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -0
  154. package/dist/esm/{codama/devnet → generated/codama}/instructions/closeRental.js +89 -44
  155. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -0
  156. package/dist/esm/{codama/mainnet → generated/codama}/instructions/createContract.js +13 -16
  157. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -0
  158. package/dist/esm/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  159. package/dist/esm/generated/codama/instructions/index.js.map +1 -0
  160. package/dist/esm/generated/codama/instructions/initializeConfig.js +129 -0
  161. package/dist/esm/generated/codama/instructions/initializeConfig.js.map +1 -0
  162. package/dist/esm/{codama/mainnet → generated/codama}/instructions/payRental.js +16 -73
  163. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -0
  164. package/dist/esm/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  165. package/dist/esm/generated/codama/instructions/resetRental.js.map +1 -0
  166. package/dist/esm/generated/codama/instructions/updateConfig.js +133 -0
  167. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -0
  168. package/dist/esm/generated/codama/programs/index.js.map +1 -0
  169. package/dist/esm/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  170. package/dist/esm/generated/codama/programs/srsly.js.map +1 -0
  171. package/dist/esm/{codama/devnet → generated/codama}/shared/index.js +1 -1
  172. package/dist/esm/generated/codama/shared/index.js.map +1 -0
  173. package/dist/esm/generated/codama/types/clockData.js +53 -0
  174. package/dist/esm/generated/codama/types/clockData.js.map +1 -0
  175. package/dist/esm/generated/codama/types/equality.js.map +1 -0
  176. package/dist/esm/generated/codama/types/execContext.js +63 -0
  177. package/dist/esm/generated/codama/types/execContext.js.map +1 -0
  178. package/dist/esm/{codama/devnet → generated/codama}/types/index.js +1 -0
  179. package/dist/esm/generated/codama/types/index.js.map +1 -0
  180. package/dist/esm/generated/codama/types/paymentFrequency.js +30 -0
  181. package/dist/esm/generated/codama/types/paymentFrequency.js.map +1 -0
  182. package/dist/esm/generated/codama/types/serializableAccount.js +53 -0
  183. package/dist/esm/generated/codama/types/serializableAccount.js.map +1 -0
  184. package/dist/esm/generated/codama/types/serializableInstruction.js +54 -0
  185. package/dist/esm/generated/codama/types/serializableInstruction.js.map +1 -0
  186. package/dist/esm/generated/codama/types/threadResponse.js +63 -0
  187. package/dist/esm/generated/codama/types/threadResponse.js.map +1 -0
  188. package/dist/esm/generated/codama/types/trigger.js.map +1 -0
  189. package/dist/esm/generated/codama/types/triggerContext.js.map +1 -0
  190. package/dist/esm/idl/index.js +21 -0
  191. package/dist/esm/idl/index.js.map +1 -0
  192. package/dist/esm/idl/srsly-data.js +3137 -0
  193. package/dist/esm/idl/srsly-data.js.map +1 -0
  194. package/dist/esm/idl/srsly.json +3104 -0
  195. package/dist/esm/index.js +213 -5
  196. package/dist/esm/index.js.map +1 -1
  197. package/dist/esm/package.json +29 -30
  198. package/dist/esm/rental/accept.js +230 -58
  199. package/dist/esm/rental/accept.js.map +1 -1
  200. package/dist/esm/rental/cancel.js +155 -26
  201. package/dist/esm/rental/cancel.js.map +1 -1
  202. package/dist/esm/rental/close.js +157 -30
  203. package/dist/esm/rental/close.js.map +1 -1
  204. package/dist/esm/rental/index.js +88 -4
  205. package/dist/esm/rental/index.js.map +1 -1
  206. package/dist/esm/rental/reset.js +161 -39
  207. package/dist/esm/rental/reset.js.map +1 -1
  208. package/dist/esm/types/payment-frequency.js +83 -0
  209. package/dist/esm/types/payment-frequency.js.map +1 -0
  210. package/dist/esm/types/srsly.js +2 -0
  211. package/dist/esm/types/srsly.js.map +1 -0
  212. package/dist/esm/utils/config.js +134 -92
  213. package/dist/esm/utils/config.js.map +1 -1
  214. package/dist/esm/utils/constants.js +43 -77
  215. package/dist/esm/utils/constants.js.map +1 -1
  216. package/dist/esm/utils/cron.js +195 -0
  217. package/dist/esm/utils/cron.js.map +1 -0
  218. package/dist/esm/utils/derive-pda.js +402 -0
  219. package/dist/esm/utils/derive-pda.js.map +1 -0
  220. package/dist/esm/utils/fetch-accounts.js +233 -0
  221. package/dist/esm/utils/fetch-accounts.js.map +1 -0
  222. package/dist/esm/utils/index.js +16 -3
  223. package/dist/esm/utils/index.js.map +1 -1
  224. package/dist/esm/utils/instruction-converter.js +120 -0
  225. package/dist/esm/utils/instruction-converter.js.map +1 -0
  226. package/dist/esm/utils/param-converters.js +182 -0
  227. package/dist/esm/utils/param-converters.js.map +1 -0
  228. package/dist/esm/utils/payment-frequency.js +104 -0
  229. package/dist/esm/utils/payment-frequency.js.map +1 -0
  230. package/dist/esm/utils/schedule-builder.js +153 -0
  231. package/dist/esm/utils/schedule-builder.js.map +1 -0
  232. package/dist/esm/utils/schedule-validation.js +132 -0
  233. package/dist/esm/utils/schedule-validation.js.map +1 -0
  234. package/dist/esm/utils/signer.js +119 -0
  235. package/dist/esm/utils/signer.js.map +1 -0
  236. package/dist/esm/utils/smart-params.js +49 -0
  237. package/dist/esm/utils/smart-params.js.map +1 -0
  238. package/dist/types/config/index.d.ts +7 -0
  239. package/dist/types/config/index.d.ts.map +1 -0
  240. package/dist/types/config/initialize.d.ts +66 -0
  241. package/dist/types/config/initialize.d.ts.map +1 -0
  242. package/dist/types/config/update.d.ts +143 -0
  243. package/dist/types/config/update.d.ts.map +1 -0
  244. package/dist/types/contract/close.d.ts +100 -28
  245. package/dist/types/contract/close.d.ts.map +1 -1
  246. package/dist/types/contract/create.d.ts +115 -45
  247. package/dist/types/contract/create.d.ts.map +1 -1
  248. package/dist/types/contract/index.d.ts +51 -2
  249. package/dist/types/contract/index.d.ts.map +1 -1
  250. package/dist/types/demos.d.ts +66 -0
  251. package/dist/types/demos.d.ts.map +1 -0
  252. package/dist/types/generated/codama/accounts/configState.d.ts +75 -0
  253. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -0
  254. package/dist/types/generated/codama/accounts/contractState.d.ts +78 -0
  255. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -0
  256. package/dist/types/{codama/devnet → generated/codama}/accounts/index.d.ts +1 -1
  257. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -0
  258. package/dist/types/generated/codama/accounts/rentalState.d.ts +78 -0
  259. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -0
  260. package/dist/types/{codama/mainnet → generated/codama}/accounts/thread.d.ts +8 -7
  261. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -0
  262. package/dist/types/generated/codama/errors/index.d.ts.map +1 -0
  263. package/dist/types/generated/codama/errors/srsly.d.ts +68 -0
  264. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -0
  265. package/dist/types/generated/codama/index.d.ts.map +1 -0
  266. package/dist/types/generated/codama/instructions/acceptRental.d.ts +132 -0
  267. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -0
  268. package/dist/types/generated/codama/instructions/cancelRental.d.ts +87 -0
  269. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -0
  270. package/dist/types/generated/codama/instructions/closeContract.d.ts +71 -0
  271. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -0
  272. package/dist/types/generated/codama/instructions/closeRental.d.ts +119 -0
  273. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -0
  274. package/dist/types/generated/codama/instructions/createContract.d.ts +112 -0
  275. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -0
  276. package/dist/types/{codama/devnet → generated/codama}/instructions/index.d.ts +2 -0
  277. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -0
  278. package/dist/types/generated/codama/instructions/initializeConfig.d.ts +60 -0
  279. package/dist/types/generated/codama/instructions/initializeConfig.d.ts.map +1 -0
  280. package/dist/types/generated/codama/instructions/payRental.d.ts +103 -0
  281. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -0
  282. package/dist/types/generated/codama/instructions/resetRental.d.ts +79 -0
  283. package/dist/types/generated/codama/instructions/resetRental.d.ts.map +1 -0
  284. package/dist/types/generated/codama/instructions/updateConfig.d.ts +109 -0
  285. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -0
  286. package/dist/types/generated/codama/programs/index.d.ts.map +1 -0
  287. package/dist/types/{codama/mainnet → generated/codama}/programs/srsly.d.ts +12 -6
  288. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -0
  289. package/dist/types/{codama/devnet → generated/codama}/shared/index.d.ts +14 -3
  290. package/dist/types/generated/codama/shared/index.d.ts.map +1 -0
  291. package/dist/types/{codama/devnet → generated/codama}/types/clockData.d.ts +4 -3
  292. package/dist/types/generated/codama/types/clockData.d.ts.map +1 -0
  293. package/dist/types/{codama/devnet → generated/codama}/types/equality.d.ts +4 -4
  294. package/dist/types/generated/codama/types/equality.d.ts.map +1 -0
  295. package/dist/types/{codama/devnet → generated/codama}/types/execContext.d.ts +2 -1
  296. package/dist/types/generated/codama/types/execContext.d.ts.map +1 -0
  297. package/dist/types/{codama/devnet → generated/codama}/types/index.d.ts +1 -0
  298. package/dist/types/generated/codama/types/index.d.ts.map +1 -0
  299. package/dist/types/generated/codama/types/paymentFrequency.d.ts +24 -0
  300. package/dist/types/generated/codama/types/paymentFrequency.d.ts.map +1 -0
  301. package/dist/types/{codama/devnet → generated/codama}/types/serializableAccount.d.ts +4 -3
  302. package/dist/types/generated/codama/types/serializableAccount.d.ts.map +1 -0
  303. package/dist/types/{codama/mainnet → generated/codama}/types/serializableInstruction.d.ts +2 -1
  304. package/dist/types/generated/codama/types/serializableInstruction.d.ts.map +1 -0
  305. package/dist/types/{codama/devnet → generated/codama}/types/threadResponse.d.ts +2 -1
  306. package/dist/types/generated/codama/types/threadResponse.d.ts.map +1 -0
  307. package/dist/types/generated/codama/types/trigger.d.ts.map +1 -0
  308. package/dist/types/generated/codama/types/triggerContext.d.ts.map +1 -0
  309. package/dist/types/idl/index.d.ts +21 -0
  310. package/dist/types/idl/index.d.ts.map +1 -0
  311. package/dist/types/idl/srsly-data.d.ts +1458 -0
  312. package/dist/types/idl/srsly-data.d.ts.map +1 -0
  313. package/dist/types/index.d.ts +213 -5
  314. package/dist/types/index.d.ts.map +1 -1
  315. package/dist/types/rental/accept.d.ts +165 -61
  316. package/dist/types/rental/accept.d.ts.map +1 -1
  317. package/dist/types/rental/cancel.d.ts +119 -22
  318. package/dist/types/rental/cancel.d.ts.map +1 -1
  319. package/dist/types/rental/close.d.ts +108 -27
  320. package/dist/types/rental/close.d.ts.map +1 -1
  321. package/dist/types/rental/index.d.ts +88 -4
  322. package/dist/types/rental/index.d.ts.map +1 -1
  323. package/dist/types/rental/reset.d.ts +137 -39
  324. package/dist/types/rental/reset.d.ts.map +1 -1
  325. package/dist/types/types/payment-frequency.d.ts +55 -0
  326. package/dist/types/types/payment-frequency.d.ts.map +1 -0
  327. package/dist/types/types/srsly.d.ts +3111 -0
  328. package/dist/types/types/srsly.d.ts.map +1 -0
  329. package/dist/types/utils/config.d.ts +78 -61
  330. package/dist/types/utils/config.d.ts.map +1 -1
  331. package/dist/types/utils/constants.d.ts +16 -22
  332. package/dist/types/utils/constants.d.ts.map +1 -1
  333. package/dist/types/utils/cron.d.ts +77 -0
  334. package/dist/types/utils/cron.d.ts.map +1 -0
  335. package/dist/types/utils/derive-pda.d.ts +213 -0
  336. package/dist/types/utils/derive-pda.d.ts.map +1 -0
  337. package/dist/types/utils/fetch-accounts.d.ts +158 -0
  338. package/dist/types/utils/fetch-accounts.d.ts.map +1 -0
  339. package/dist/types/utils/index.d.ts +16 -3
  340. package/dist/types/utils/index.d.ts.map +1 -1
  341. package/dist/types/utils/instruction-converter.d.ts +171 -0
  342. package/dist/types/utils/instruction-converter.d.ts.map +1 -0
  343. package/dist/types/utils/param-converters.d.ts +67 -0
  344. package/dist/types/utils/param-converters.d.ts.map +1 -0
  345. package/dist/types/utils/payment-frequency.d.ts +38 -0
  346. package/dist/types/utils/payment-frequency.d.ts.map +1 -0
  347. package/dist/types/utils/schedule-builder.d.ts +64 -0
  348. package/dist/types/utils/schedule-builder.d.ts.map +1 -0
  349. package/dist/types/utils/schedule-validation.d.ts +36 -0
  350. package/dist/types/utils/schedule-validation.d.ts.map +1 -0
  351. package/dist/types/utils/signer.d.ts +61 -0
  352. package/dist/types/utils/signer.d.ts.map +1 -0
  353. package/dist/types/utils/smart-params.d.ts +112 -0
  354. package/dist/types/utils/smart-params.d.ts.map +1 -0
  355. package/package.json +51 -36
  356. package/dist/cjs/codama/devnet/accounts/contractState.js.map +0 -1
  357. package/dist/cjs/codama/devnet/accounts/fleet.js +0 -77
  358. package/dist/cjs/codama/devnet/accounts/fleet.js.map +0 -1
  359. package/dist/cjs/codama/devnet/accounts/index.js.map +0 -1
  360. package/dist/cjs/codama/devnet/accounts/rentalState.js.map +0 -1
  361. package/dist/cjs/codama/devnet/accounts/thread.js +0 -89
  362. package/dist/cjs/codama/devnet/accounts/thread.js.map +0 -1
  363. package/dist/cjs/codama/devnet/constants.js +0 -32
  364. package/dist/cjs/codama/devnet/constants.js.map +0 -1
  365. package/dist/cjs/codama/devnet/errors/index.js.map +0 -1
  366. package/dist/cjs/codama/devnet/errors/srsly.js +0 -74
  367. package/dist/cjs/codama/devnet/errors/srsly.js.map +0 -1
  368. package/dist/cjs/codama/devnet/index.js.map +0 -1
  369. package/dist/cjs/codama/devnet/instructions/acceptRental.js.map +0 -1
  370. package/dist/cjs/codama/devnet/instructions/cancelRental.js +0 -225
  371. package/dist/cjs/codama/devnet/instructions/cancelRental.js.map +0 -1
  372. package/dist/cjs/codama/devnet/instructions/closeContract.js +0 -246
  373. package/dist/cjs/codama/devnet/instructions/closeContract.js.map +0 -1
  374. package/dist/cjs/codama/devnet/instructions/closeRental.js +0 -260
  375. package/dist/cjs/codama/devnet/instructions/closeRental.js.map +0 -1
  376. package/dist/cjs/codama/devnet/instructions/createContract.js.map +0 -1
  377. package/dist/cjs/codama/devnet/instructions/index.js +0 -31
  378. package/dist/cjs/codama/devnet/instructions/index.js.map +0 -1
  379. package/dist/cjs/codama/devnet/instructions/payRental.js +0 -280
  380. package/dist/cjs/codama/devnet/instructions/payRental.js.map +0 -1
  381. package/dist/cjs/codama/devnet/instructions/resetRental.js.map +0 -1
  382. package/dist/cjs/codama/devnet/programs/index.js.map +0 -1
  383. package/dist/cjs/codama/devnet/programs/srsly.js.map +0 -1
  384. package/dist/cjs/codama/devnet/shared/index.js.map +0 -1
  385. package/dist/cjs/codama/devnet/types/clockData.js +0 -31
  386. package/dist/cjs/codama/devnet/types/clockData.js.map +0 -1
  387. package/dist/cjs/codama/devnet/types/equality.js.map +0 -1
  388. package/dist/cjs/codama/devnet/types/execContext.js.map +0 -1
  389. package/dist/cjs/codama/devnet/types/index.js.map +0 -1
  390. package/dist/cjs/codama/devnet/types/serializableAccount.js +0 -31
  391. package/dist/cjs/codama/devnet/types/serializableAccount.js.map +0 -1
  392. package/dist/cjs/codama/devnet/types/serializableInstruction.js +0 -32
  393. package/dist/cjs/codama/devnet/types/serializableInstruction.js.map +0 -1
  394. package/dist/cjs/codama/devnet/types/threadResponse.js +0 -38
  395. package/dist/cjs/codama/devnet/types/threadResponse.js.map +0 -1
  396. package/dist/cjs/codama/devnet/types/trigger.js.map +0 -1
  397. package/dist/cjs/codama/devnet/types/triggerContext.js.map +0 -1
  398. package/dist/cjs/codama/mainnet/accounts/contractState.js +0 -87
  399. package/dist/cjs/codama/mainnet/accounts/contractState.js.map +0 -1
  400. package/dist/cjs/codama/mainnet/accounts/fleet.js +0 -77
  401. package/dist/cjs/codama/mainnet/accounts/fleet.js.map +0 -1
  402. package/dist/cjs/codama/mainnet/accounts/index.js +0 -28
  403. package/dist/cjs/codama/mainnet/accounts/index.js.map +0 -1
  404. package/dist/cjs/codama/mainnet/accounts/rentalState.js +0 -87
  405. package/dist/cjs/codama/mainnet/accounts/rentalState.js.map +0 -1
  406. package/dist/cjs/codama/mainnet/accounts/thread.js.map +0 -1
  407. package/dist/cjs/codama/mainnet/constants.js +0 -32
  408. package/dist/cjs/codama/mainnet/constants.js.map +0 -1
  409. package/dist/cjs/codama/mainnet/errors/index.js +0 -25
  410. package/dist/cjs/codama/mainnet/errors/index.js.map +0 -1
  411. package/dist/cjs/codama/mainnet/errors/srsly.js +0 -74
  412. package/dist/cjs/codama/mainnet/errors/srsly.js.map +0 -1
  413. package/dist/cjs/codama/mainnet/index.js +0 -29
  414. package/dist/cjs/codama/mainnet/index.js.map +0 -1
  415. package/dist/cjs/codama/mainnet/instructions/acceptRental.js +0 -357
  416. package/dist/cjs/codama/mainnet/instructions/acceptRental.js.map +0 -1
  417. package/dist/cjs/codama/mainnet/instructions/cancelRental.js.map +0 -1
  418. package/dist/cjs/codama/mainnet/instructions/closeContract.js +0 -246
  419. package/dist/cjs/codama/mainnet/instructions/closeContract.js.map +0 -1
  420. package/dist/cjs/codama/mainnet/instructions/closeRental.js.map +0 -1
  421. package/dist/cjs/codama/mainnet/instructions/createContract.js +0 -261
  422. package/dist/cjs/codama/mainnet/instructions/createContract.js.map +0 -1
  423. package/dist/cjs/codama/mainnet/instructions/index.js.map +0 -1
  424. package/dist/cjs/codama/mainnet/instructions/payRental.js.map +0 -1
  425. package/dist/cjs/codama/mainnet/instructions/resetRental.js.map +0 -1
  426. package/dist/cjs/codama/mainnet/programs/index.js +0 -25
  427. package/dist/cjs/codama/mainnet/programs/index.js.map +0 -1
  428. package/dist/cjs/codama/mainnet/programs/srsly.js +0 -73
  429. package/dist/cjs/codama/mainnet/programs/srsly.js.map +0 -1
  430. package/dist/cjs/codama/mainnet/shared/index.js +0 -95
  431. package/dist/cjs/codama/mainnet/shared/index.js.map +0 -1
  432. package/dist/cjs/codama/mainnet/types/clockData.js +0 -31
  433. package/dist/cjs/codama/mainnet/types/clockData.js.map +0 -1
  434. package/dist/cjs/codama/mainnet/types/equality.js +0 -30
  435. package/dist/cjs/codama/mainnet/types/equality.js.map +0 -1
  436. package/dist/cjs/codama/mainnet/types/execContext.js +0 -38
  437. package/dist/cjs/codama/mainnet/types/execContext.js.map +0 -1
  438. package/dist/cjs/codama/mainnet/types/index.js +0 -32
  439. package/dist/cjs/codama/mainnet/types/index.js.map +0 -1
  440. package/dist/cjs/codama/mainnet/types/serializableAccount.js.map +0 -1
  441. package/dist/cjs/codama/mainnet/types/serializableInstruction.js.map +0 -1
  442. package/dist/cjs/codama/mainnet/types/threadResponse.js.map +0 -1
  443. package/dist/cjs/codama/mainnet/types/trigger.js +0 -90
  444. package/dist/cjs/codama/mainnet/types/trigger.js.map +0 -1
  445. package/dist/cjs/codama/mainnet/types/triggerContext.js +0 -49
  446. package/dist/cjs/codama/mainnet/types/triggerContext.js.map +0 -1
  447. package/dist/cjs/utils/profiles.js +0 -159
  448. package/dist/cjs/utils/profiles.js.map +0 -1
  449. package/dist/esm/codama/devnet/accounts/contractState.js +0 -75
  450. package/dist/esm/codama/devnet/accounts/contractState.js.map +0 -1
  451. package/dist/esm/codama/devnet/accounts/fleet.js +0 -64
  452. package/dist/esm/codama/devnet/accounts/fleet.js.map +0 -1
  453. package/dist/esm/codama/devnet/accounts/index.js.map +0 -1
  454. package/dist/esm/codama/devnet/accounts/rentalState.js +0 -74
  455. package/dist/esm/codama/devnet/accounts/rentalState.js.map +0 -1
  456. package/dist/esm/codama/devnet/accounts/thread.js +0 -77
  457. package/dist/esm/codama/devnet/accounts/thread.js.map +0 -1
  458. package/dist/esm/codama/devnet/constants.js +0 -29
  459. package/dist/esm/codama/devnet/constants.js.map +0 -1
  460. package/dist/esm/codama/devnet/errors/index.js.map +0 -1
  461. package/dist/esm/codama/devnet/errors/srsly.js +0 -69
  462. package/dist/esm/codama/devnet/errors/srsly.js.map +0 -1
  463. package/dist/esm/codama/devnet/index.js.map +0 -1
  464. package/dist/esm/codama/devnet/instructions/acceptRental.js.map +0 -1
  465. package/dist/esm/codama/devnet/instructions/cancelRental.js +0 -215
  466. package/dist/esm/codama/devnet/instructions/cancelRental.js.map +0 -1
  467. package/dist/esm/codama/devnet/instructions/closeContract.js +0 -236
  468. package/dist/esm/codama/devnet/instructions/closeContract.js.map +0 -1
  469. package/dist/esm/codama/devnet/instructions/closeRental.js.map +0 -1
  470. package/dist/esm/codama/devnet/instructions/createContract.js +0 -251
  471. package/dist/esm/codama/devnet/instructions/createContract.js.map +0 -1
  472. package/dist/esm/codama/devnet/instructions/index.js +0 -15
  473. package/dist/esm/codama/devnet/instructions/index.js.map +0 -1
  474. package/dist/esm/codama/devnet/instructions/payRental.js +0 -270
  475. package/dist/esm/codama/devnet/instructions/payRental.js.map +0 -1
  476. package/dist/esm/codama/devnet/instructions/resetRental.js.map +0 -1
  477. package/dist/esm/codama/devnet/programs/index.js.map +0 -1
  478. package/dist/esm/codama/devnet/programs/srsly.js.map +0 -1
  479. package/dist/esm/codama/devnet/shared/index.js.map +0 -1
  480. package/dist/esm/codama/devnet/types/clockData.js +0 -26
  481. package/dist/esm/codama/devnet/types/clockData.js.map +0 -1
  482. package/dist/esm/codama/devnet/types/equality.js.map +0 -1
  483. package/dist/esm/codama/devnet/types/execContext.js +0 -33
  484. package/dist/esm/codama/devnet/types/execContext.js.map +0 -1
  485. package/dist/esm/codama/devnet/types/index.js.map +0 -1
  486. package/dist/esm/codama/devnet/types/serializableAccount.js +0 -26
  487. package/dist/esm/codama/devnet/types/serializableAccount.js.map +0 -1
  488. package/dist/esm/codama/devnet/types/serializableInstruction.js +0 -27
  489. package/dist/esm/codama/devnet/types/serializableInstruction.js.map +0 -1
  490. package/dist/esm/codama/devnet/types/threadResponse.js +0 -33
  491. package/dist/esm/codama/devnet/types/threadResponse.js.map +0 -1
  492. package/dist/esm/codama/devnet/types/trigger.js.map +0 -1
  493. package/dist/esm/codama/devnet/types/triggerContext.js.map +0 -1
  494. package/dist/esm/codama/mainnet/accounts/contractState.js.map +0 -1
  495. package/dist/esm/codama/mainnet/accounts/fleet.js +0 -64
  496. package/dist/esm/codama/mainnet/accounts/fleet.js.map +0 -1
  497. package/dist/esm/codama/mainnet/accounts/index.js +0 -12
  498. package/dist/esm/codama/mainnet/accounts/index.js.map +0 -1
  499. package/dist/esm/codama/mainnet/accounts/rentalState.js +0 -74
  500. package/dist/esm/codama/mainnet/accounts/rentalState.js.map +0 -1
  501. package/dist/esm/codama/mainnet/accounts/thread.js.map +0 -1
  502. package/dist/esm/codama/mainnet/constants.js +0 -29
  503. package/dist/esm/codama/mainnet/constants.js.map +0 -1
  504. package/dist/esm/codama/mainnet/errors/index.js +0 -9
  505. package/dist/esm/codama/mainnet/errors/index.js.map +0 -1
  506. package/dist/esm/codama/mainnet/errors/srsly.js +0 -69
  507. package/dist/esm/codama/mainnet/errors/srsly.js.map +0 -1
  508. package/dist/esm/codama/mainnet/index.js +0 -13
  509. package/dist/esm/codama/mainnet/index.js.map +0 -1
  510. package/dist/esm/codama/mainnet/instructions/acceptRental.js +0 -347
  511. package/dist/esm/codama/mainnet/instructions/acceptRental.js.map +0 -1
  512. package/dist/esm/codama/mainnet/instructions/cancelRental.js.map +0 -1
  513. package/dist/esm/codama/mainnet/instructions/closeContract.js +0 -236
  514. package/dist/esm/codama/mainnet/instructions/closeContract.js.map +0 -1
  515. package/dist/esm/codama/mainnet/instructions/closeRental.js +0 -250
  516. package/dist/esm/codama/mainnet/instructions/closeRental.js.map +0 -1
  517. package/dist/esm/codama/mainnet/instructions/createContract.js.map +0 -1
  518. package/dist/esm/codama/mainnet/instructions/index.js.map +0 -1
  519. package/dist/esm/codama/mainnet/instructions/payRental.js.map +0 -1
  520. package/dist/esm/codama/mainnet/instructions/resetRental.js.map +0 -1
  521. package/dist/esm/codama/mainnet/programs/index.js +0 -9
  522. package/dist/esm/codama/mainnet/programs/index.js.map +0 -1
  523. package/dist/esm/codama/mainnet/programs/srsly.js +0 -68
  524. package/dist/esm/codama/mainnet/programs/srsly.js.map +0 -1
  525. package/dist/esm/codama/mainnet/shared/index.js +0 -87
  526. package/dist/esm/codama/mainnet/shared/index.js.map +0 -1
  527. package/dist/esm/codama/mainnet/types/clockData.js +0 -26
  528. package/dist/esm/codama/mainnet/types/clockData.js.map +0 -1
  529. package/dist/esm/codama/mainnet/types/equality.js +0 -24
  530. package/dist/esm/codama/mainnet/types/equality.js.map +0 -1
  531. package/dist/esm/codama/mainnet/types/execContext.js +0 -33
  532. package/dist/esm/codama/mainnet/types/execContext.js.map +0 -1
  533. package/dist/esm/codama/mainnet/types/index.js +0 -16
  534. package/dist/esm/codama/mainnet/types/index.js.map +0 -1
  535. package/dist/esm/codama/mainnet/types/serializableAccount.js +0 -26
  536. package/dist/esm/codama/mainnet/types/serializableAccount.js.map +0 -1
  537. package/dist/esm/codama/mainnet/types/serializableInstruction.js +0 -27
  538. package/dist/esm/codama/mainnet/types/serializableInstruction.js.map +0 -1
  539. package/dist/esm/codama/mainnet/types/threadResponse.js +0 -33
  540. package/dist/esm/codama/mainnet/types/threadResponse.js.map +0 -1
  541. package/dist/esm/codama/mainnet/types/trigger.js +0 -83
  542. package/dist/esm/codama/mainnet/types/trigger.js.map +0 -1
  543. package/dist/esm/codama/mainnet/types/triggerContext.js +0 -42
  544. package/dist/esm/codama/mainnet/types/triggerContext.js.map +0 -1
  545. package/dist/esm/utils/profiles.js +0 -152
  546. package/dist/esm/utils/profiles.js.map +0 -1
  547. package/dist/types/codama/devnet/accounts/contractState.d.ts +0 -51
  548. package/dist/types/codama/devnet/accounts/contractState.d.ts.map +0 -1
  549. package/dist/types/codama/devnet/accounts/fleet.d.ts +0 -38
  550. package/dist/types/codama/devnet/accounts/fleet.d.ts.map +0 -1
  551. package/dist/types/codama/devnet/accounts/index.d.ts.map +0 -1
  552. package/dist/types/codama/devnet/accounts/rentalState.d.ts +0 -48
  553. package/dist/types/codama/devnet/accounts/rentalState.d.ts.map +0 -1
  554. package/dist/types/codama/devnet/accounts/thread.d.ts +0 -74
  555. package/dist/types/codama/devnet/accounts/thread.d.ts.map +0 -1
  556. package/dist/types/codama/devnet/constants.d.ts +0 -33
  557. package/dist/types/codama/devnet/constants.d.ts.map +0 -1
  558. package/dist/types/codama/devnet/errors/index.d.ts.map +0 -1
  559. package/dist/types/codama/devnet/errors/srsly.d.ts +0 -50
  560. package/dist/types/codama/devnet/errors/srsly.d.ts.map +0 -1
  561. package/dist/types/codama/devnet/index.d.ts.map +0 -1
  562. package/dist/types/codama/devnet/instructions/acceptRental.d.ts +0 -131
  563. package/dist/types/codama/devnet/instructions/acceptRental.d.ts.map +0 -1
  564. package/dist/types/codama/devnet/instructions/cancelRental.d.ts +0 -71
  565. package/dist/types/codama/devnet/instructions/cancelRental.d.ts.map +0 -1
  566. package/dist/types/codama/devnet/instructions/closeContract.d.ts +0 -100
  567. package/dist/types/codama/devnet/instructions/closeContract.d.ts.map +0 -1
  568. package/dist/types/codama/devnet/instructions/closeRental.d.ts +0 -83
  569. package/dist/types/codama/devnet/instructions/closeRental.d.ts.map +0 -1
  570. package/dist/types/codama/devnet/instructions/createContract.d.ts +0 -108
  571. package/dist/types/codama/devnet/instructions/createContract.d.ts.map +0 -1
  572. package/dist/types/codama/devnet/instructions/index.d.ts.map +0 -1
  573. package/dist/types/codama/devnet/instructions/payRental.d.ts +0 -110
  574. package/dist/types/codama/devnet/instructions/payRental.d.ts.map +0 -1
  575. package/dist/types/codama/devnet/instructions/resetRental.d.ts +0 -71
  576. package/dist/types/codama/devnet/instructions/resetRental.d.ts.map +0 -1
  577. package/dist/types/codama/devnet/programs/index.d.ts.map +0 -1
  578. package/dist/types/codama/devnet/programs/srsly.d.ts +0 -47
  579. package/dist/types/codama/devnet/programs/srsly.d.ts.map +0 -1
  580. package/dist/types/codama/devnet/shared/index.d.ts.map +0 -1
  581. package/dist/types/codama/devnet/types/clockData.d.ts.map +0 -1
  582. package/dist/types/codama/devnet/types/equality.d.ts.map +0 -1
  583. package/dist/types/codama/devnet/types/execContext.d.ts.map +0 -1
  584. package/dist/types/codama/devnet/types/index.d.ts.map +0 -1
  585. package/dist/types/codama/devnet/types/serializableAccount.d.ts.map +0 -1
  586. package/dist/types/codama/devnet/types/serializableInstruction.d.ts +0 -30
  587. package/dist/types/codama/devnet/types/serializableInstruction.d.ts.map +0 -1
  588. package/dist/types/codama/devnet/types/threadResponse.d.ts.map +0 -1
  589. package/dist/types/codama/devnet/types/trigger.d.ts.map +0 -1
  590. package/dist/types/codama/devnet/types/triggerContext.d.ts.map +0 -1
  591. package/dist/types/codama/mainnet/accounts/contractState.d.ts +0 -51
  592. package/dist/types/codama/mainnet/accounts/contractState.d.ts.map +0 -1
  593. package/dist/types/codama/mainnet/accounts/fleet.d.ts +0 -38
  594. package/dist/types/codama/mainnet/accounts/fleet.d.ts.map +0 -1
  595. package/dist/types/codama/mainnet/accounts/index.d.ts +0 -12
  596. package/dist/types/codama/mainnet/accounts/index.d.ts.map +0 -1
  597. package/dist/types/codama/mainnet/accounts/rentalState.d.ts +0 -48
  598. package/dist/types/codama/mainnet/accounts/rentalState.d.ts.map +0 -1
  599. package/dist/types/codama/mainnet/accounts/thread.d.ts.map +0 -1
  600. package/dist/types/codama/mainnet/constants.d.ts +0 -33
  601. package/dist/types/codama/mainnet/constants.d.ts.map +0 -1
  602. package/dist/types/codama/mainnet/errors/index.d.ts +0 -9
  603. package/dist/types/codama/mainnet/errors/index.d.ts.map +0 -1
  604. package/dist/types/codama/mainnet/errors/srsly.d.ts +0 -50
  605. package/dist/types/codama/mainnet/errors/srsly.d.ts.map +0 -1
  606. package/dist/types/codama/mainnet/index.d.ts +0 -13
  607. package/dist/types/codama/mainnet/index.d.ts.map +0 -1
  608. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts +0 -131
  609. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts.map +0 -1
  610. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts +0 -71
  611. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts.map +0 -1
  612. package/dist/types/codama/mainnet/instructions/closeContract.d.ts +0 -100
  613. package/dist/types/codama/mainnet/instructions/closeContract.d.ts.map +0 -1
  614. package/dist/types/codama/mainnet/instructions/closeRental.d.ts +0 -83
  615. package/dist/types/codama/mainnet/instructions/closeRental.d.ts.map +0 -1
  616. package/dist/types/codama/mainnet/instructions/createContract.d.ts +0 -108
  617. package/dist/types/codama/mainnet/instructions/createContract.d.ts.map +0 -1
  618. package/dist/types/codama/mainnet/instructions/index.d.ts +0 -15
  619. package/dist/types/codama/mainnet/instructions/index.d.ts.map +0 -1
  620. package/dist/types/codama/mainnet/instructions/payRental.d.ts +0 -110
  621. package/dist/types/codama/mainnet/instructions/payRental.d.ts.map +0 -1
  622. package/dist/types/codama/mainnet/instructions/resetRental.d.ts +0 -71
  623. package/dist/types/codama/mainnet/instructions/resetRental.d.ts.map +0 -1
  624. package/dist/types/codama/mainnet/programs/index.d.ts +0 -9
  625. package/dist/types/codama/mainnet/programs/index.d.ts.map +0 -1
  626. package/dist/types/codama/mainnet/programs/srsly.d.ts.map +0 -1
  627. package/dist/types/codama/mainnet/shared/index.d.ts +0 -50
  628. package/dist/types/codama/mainnet/shared/index.d.ts.map +0 -1
  629. package/dist/types/codama/mainnet/types/clockData.d.ts +0 -29
  630. package/dist/types/codama/mainnet/types/clockData.d.ts.map +0 -1
  631. package/dist/types/codama/mainnet/types/equality.d.ts +0 -18
  632. package/dist/types/codama/mainnet/types/equality.d.ts.map +0 -1
  633. package/dist/types/codama/mainnet/types/execContext.d.ts +0 -48
  634. package/dist/types/codama/mainnet/types/execContext.d.ts.map +0 -1
  635. package/dist/types/codama/mainnet/types/index.d.ts +0 -16
  636. package/dist/types/codama/mainnet/types/index.d.ts.map +0 -1
  637. package/dist/types/codama/mainnet/types/serializableAccount.d.ts +0 -22
  638. package/dist/types/codama/mainnet/types/serializableAccount.d.ts.map +0 -1
  639. package/dist/types/codama/mainnet/types/serializableInstruction.d.ts.map +0 -1
  640. package/dist/types/codama/mainnet/types/threadResponse.d.ts +0 -42
  641. package/dist/types/codama/mainnet/types/threadResponse.d.ts.map +0 -1
  642. package/dist/types/codama/mainnet/types/trigger.d.ts +0 -98
  643. package/dist/types/codama/mainnet/types/trigger.d.ts.map +0 -1
  644. package/dist/types/codama/mainnet/types/triggerContext.d.ts +0 -75
  645. package/dist/types/codama/mainnet/types/triggerContext.d.ts.map +0 -1
  646. package/dist/types/utils/profiles.d.ts +0 -54
  647. package/dist/types/utils/profiles.d.ts.map +0 -1
  648. package/target/idl/srsly-devnet.json +0 -3275
  649. package/target/idl/srsly-mainnet.json +0 -3275
  650. package/target/types/srsly-devnet.ts +0 -1
  651. package/target/types/srsly-mainnet.ts +0 -1
  652. /package/dist/cjs/{codama/devnet → generated/codama}/errors/index.js +0 -0
  653. /package/dist/cjs/{codama/devnet → generated/codama}/index.js +0 -0
  654. /package/dist/cjs/{codama/devnet → generated/codama}/programs/index.js +0 -0
  655. /package/dist/cjs/{codama/devnet → generated/codama}/types/equality.js +0 -0
  656. /package/dist/cjs/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  657. /package/dist/cjs/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  658. /package/dist/esm/{codama/devnet → generated/codama}/errors/index.js +0 -0
  659. /package/dist/esm/{codama/devnet → generated/codama}/index.js +0 -0
  660. /package/dist/esm/{codama/devnet → generated/codama}/programs/index.js +0 -0
  661. /package/dist/esm/{codama/devnet → generated/codama}/types/equality.js +0 -0
  662. /package/dist/esm/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  663. /package/dist/esm/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  664. /package/dist/types/{codama/devnet → generated/codama}/errors/index.d.ts +0 -0
  665. /package/dist/types/{codama/devnet → generated/codama}/index.d.ts +0 -0
  666. /package/dist/types/{codama/devnet → generated/codama}/programs/index.d.ts +0 -0
  667. /package/dist/types/{codama/devnet → generated/codama}/types/trigger.d.ts +0 -0
  668. /package/dist/types/{codama/devnet → generated/codama}/types/triggerContext.d.ts +0 -0
@@ -1,66 +1,255 @@
1
- import { getCachedNetworkModule, createConfigSelector } from '../utils/config';
2
- import { getSageGameId } from '../utils/constants';
3
1
  /**
4
- * Internal function to create a contract instruction with configuration options
2
+ * @purpose Contract creation with validation, duration alignment, and SAGE integration
3
+ * @reviewed 2025-07-29
4
+ */
5
+ /**
6
+ * # Contract Creation Module
7
+ *
8
+ * This module provides functionality for creating rental contracts on the SRSLY program.
9
+ * It offers a unified API that works with both @solana/kit and @solana/web3.js libraries,
10
+ * using strings for all addresses to eliminate library-specific type complexity.
11
+ *
12
+ * ## Features
13
+ *
14
+ * - **Universal Compatibility**: Works with both major Solana libraries
15
+ * - **Fluent API**: Chainable configuration and format conversion
16
+ * - **Validation**: Built-in parameter validation and duration alignment checking
17
+ * - **Network Agnostic**: Supports mainnet, devnet, and custom configurations
18
+ *
19
+ * @module Contract/Create
20
+ */
21
+ import { getModule, createSdkConfigSelector, resolveProgramAddresses, getSdkConfig, } from '../utils/config';
22
+ import { toAddress } from '../utils/constants';
23
+ import { normalizePaymentSchedule } from '../utils/payment-frequency';
24
+ import { createFluentInstruction, createSmartFluentConfigSelector, } from '../utils/instruction-converter';
25
+ import { createTransactionSigner } from '../utils/signer';
26
+ import { fetchFleetState, fetchConfigState } from '../utils/fetch-accounts';
27
+ import { validateDurationLimits, convertDurationToSeconds } from '../utils/param-converters';
28
+ /**
29
+ * Internal function to create a rental contract instruction with configuration options.
30
+ *
31
+ * This function handles the core logic of creating a contract instruction, including
32
+ * parameter validation, address resolution, and instruction generation. It's used
33
+ * internally by the public createContract function.
34
+ *
35
+ * NOTE: The generated instruction uses field names 'durationMin' and 'durationMax'
36
+ * for backward compatibility, but these values are always in seconds.
37
+ *
38
+ * @internal
39
+ * @param params - The contract creation parameters
40
+ * @param config - Optional configuration for network and program settings
41
+ * @returns Promise resolving to a fluent instruction object
42
+ * @throws Error when validation fails or required parameters are missing
5
43
  */
6
44
  async function _createContract(params, config) {
7
- const { owner, fleet, ownerProfile, rate, durationMin, durationMax, paymentsFreq, ownerKeyIndex = 0, gameId, } = params;
8
- // Get the actual game ID to use (param override, config override, or network default)
9
- const actualGameId = gameId || await getSageGameId(config);
10
- // Dynamically import network-specific codama functions
11
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
12
- const { getCreateContractInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
13
- // Let codama derive the rest (contract, rentalAuthority, ownerTokenAccount, etc.)
45
+ console.log('[DEBUG] createContract - Input params:', {
46
+ owner: params.owner,
47
+ fleet: params.fleet,
48
+ ownerProfile: params.ownerProfile,
49
+ rate: params.rate,
50
+ durationMin: params.durationMin,
51
+ durationMax: params.durationMax,
52
+ paymentsFreq: params.paymentsFreq,
53
+ ownerKeyIndex: params.ownerKeyIndex
54
+ });
55
+ let { owner, fleet, ownerProfile, rate, durationMin: customDurationMin, durationMax, paymentsFreq, ownerKeyIndex = 0, } = params;
56
+ // Fetch fleet state to get ownerProfile and gameId
57
+ console.log('[DEBUG] Fetching fleet state for:', fleet);
58
+ const fleetState = await fetchFleetState(fleet);
59
+ console.log('[DEBUG] Fleet state fetched:', {
60
+ ownerProfile: fleetState.ownerProfile,
61
+ gameId: fleetState.gameId
62
+ });
63
+ if (!ownerProfile) {
64
+ ownerProfile = fleetState.ownerProfile;
65
+ console.log('[DEBUG] Using ownerProfile from fleet state:', ownerProfile);
66
+ }
67
+ // Normalize and validate the payment schedule
68
+ const normalizedSchedule = normalizePaymentSchedule(paymentsFreq);
69
+ console.log('[DEBUG] Normalized payment schedule:', normalizedSchedule);
70
+ // Convert smart parameters to chain values
71
+ // NOTE: The Rust program expects rate in ATLAS units, not stardust
72
+ // TODO: This will change when contract.rate is migrated to stardust units
73
+ console.log('[DEBUG] Converting rate parameter:', rate);
74
+ let rateAtlas;
75
+ if (typeof rate === 'number') {
76
+ rateAtlas = BigInt(rate);
77
+ }
78
+ else if ('atlas' in rate) {
79
+ rateAtlas = BigInt(Math.floor(rate.atlas));
80
+ }
81
+ else if ('stardust' in rate) {
82
+ // Convert stardust back to ATLAS
83
+ const config = await fetchConfigState();
84
+ rateAtlas = BigInt(rate.stardust) / config.stardustToAtlas;
85
+ }
86
+ else {
87
+ throw new Error('Invalid rate parameter');
88
+ }
89
+ console.log('[DEBUG] Rate in ATLAS:', rateAtlas.toString());
90
+ // Convert durations to seconds (durations are now independent of payment frequency)
91
+ // NOTE: The instruction expects 'durationMin' and 'durationMax' as field names,
92
+ // but the values are always in seconds regardless of the field names
93
+ console.log('[DEBUG] Converting durations - min:', customDurationMin, 'max:', durationMax);
94
+ const durationMinSeconds = customDurationMin
95
+ ? await convertDurationToSeconds(customDurationMin)
96
+ : 3600; // Default to 1 hour minimum
97
+ const durationMaxSeconds = await convertDurationToSeconds(durationMax);
98
+ console.log('[DEBUG] Duration in seconds - min:', durationMinSeconds, 'max:', durationMaxSeconds);
99
+ // Validate that max is greater than or equal to min
100
+ if (durationMaxSeconds < durationMinSeconds) {
101
+ throw new Error(`Maximum duration must be greater than or equal to minimum duration`);
102
+ }
103
+ // Validate against config limits
104
+ await validateDurationLimits(durationMinSeconds);
105
+ await validateDurationLimits(durationMaxSeconds);
106
+ // Get the resolved addresses from config (including network-specific addresses)
107
+ const globalConfig = getSdkConfig();
108
+ const effectiveConfig = { ...globalConfig, ...config };
109
+ const resolvedAddresses = resolveProgramAddresses(effectiveConfig);
110
+ // Handle owner using smart signer handler for universal compatibility
111
+ console.log('[DEBUG] Creating owner signer from:', owner);
112
+ const ownerSigner = createTransactionSigner(owner);
113
+ console.log('[DEBUG] Owner signer created:', ownerSigner);
14
114
  const input = {
15
- owner,
16
- fleet,
17
- ownerProfile,
18
- gameId: actualGameId,
19
- rate,
20
- durationMin,
21
- durationMax,
22
- paymentsFeq: paymentsFreq,
115
+ owner: ownerSigner,
116
+ fleet: toAddress(fleet),
117
+ ownerProfile: toAddress(ownerProfile),
118
+ gameId: fleetState.gameId,
119
+ sageProgram: resolvedAddresses.sageProgramAddress,
120
+ mint: resolvedAddresses.atlasMint,
121
+ durationMin: durationMinSeconds, // Field name matches instruction args (value is in seconds)
122
+ durationMax: durationMaxSeconds, // Field name matches instruction args (value is in seconds)
123
+ rate: rateAtlas,
124
+ paymentsFeq: normalizedSchedule, // Use the normalized schedule (cron expression)
23
125
  ownerKeyIndex,
24
126
  };
25
- return getCreateContractInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
127
+ console.log('[DEBUG] Instruction input object:', {
128
+ owner: input.owner,
129
+ fleet: input.fleet,
130
+ ownerProfile: input.ownerProfile,
131
+ gameId: input.gameId,
132
+ sageProgram: input.sageProgram,
133
+ mint: input.mint,
134
+ durationMin: input.durationMin,
135
+ durationMax: input.durationMax,
136
+ rate: input.rate?.toString(),
137
+ paymentsFeq: input.paymentsFeq,
138
+ ownerKeyIndex: input.ownerKeyIndex
139
+ });
140
+ // Get network-specific codama functions from centralized config
141
+ const instructionsModule = getModule('instructions');
142
+ const { getCreateContractInstructionAsync } = instructionsModule;
143
+ console.log('[DEBUG] About to call getCreateContractInstructionAsync with validated input');
144
+ console.log('[DEBUG] Checking for undefined values:');
145
+ console.log('[DEBUG] Type checks:');
146
+ console.log(' - owner type:', typeof input.owner, 'value:', input.owner);
147
+ console.log(' - fleet type:', typeof input.fleet, 'value:', input.fleet);
148
+ console.log(' - ownerProfile type:', typeof input.ownerProfile, 'value:', input.ownerProfile);
149
+ console.log(' - gameId type:', typeof input.gameId, 'value:', input.gameId);
150
+ console.log(' - sageProgram type:', typeof input.sageProgram, 'value:', input.sageProgram);
151
+ console.log(' - mint type:', typeof input.mint, 'value:', input.mint);
152
+ console.log(' - durationMin type:', typeof input.durationMin, 'value (seconds):', input.durationMin);
153
+ console.log(' - durationMax type:', typeof input.durationMax, 'value (seconds):', input.durationMax);
154
+ console.log(' - rate type:', typeof input.rate, 'is BigInt?', typeof input.rate === 'bigint', 'value:', input.rate.toString());
155
+ console.log(' - paymentsFeq type:', typeof input.paymentsFeq, 'value:', input.paymentsFeq);
156
+ console.log(' - ownerKeyIndex type:', typeof input.ownerKeyIndex, 'value:', input.ownerKeyIndex);
157
+ Object.entries(input).forEach(([key, value]) => {
158
+ if (value === undefined || value === null) {
159
+ console.error(`[DEBUG] ERROR: ${key} is ${value} - THIS WILL CAUSE THE BIGINT ERROR`);
160
+ }
161
+ });
162
+ const rawInstruction = await getCreateContractInstructionAsync(input, {
163
+ programAddress: resolvedAddresses.srslyProgramAddress,
164
+ });
165
+ console.log('[DEBUG] Instruction created successfully');
166
+ return createFluentInstruction(rawInstruction);
26
167
  }
27
168
  /**
28
169
  * Creates an instruction to create a rental contract with fluent configuration.
29
170
  *
171
+ * This is the main function for creating rental contracts on the SRSLY program.
172
+ * It provides a unified API that works with both @solana/kit and @solana/web3.js
173
+ * libraries, using strings for all addresses to eliminate compatibility issues.
174
+ *
175
+ * ## Features
176
+ *
177
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
178
+ * - **Fluent Configuration**: Chain configuration options with `.set()`
179
+ * - **Format Conversion**: Convert between library formats with `.web3js()`
180
+ * - **Validation**: Built-in parameter validation and duration alignment
181
+ * - **Network Support**: Configurable for different Solana networks
182
+ *
183
+ * ## Validation
184
+ *
185
+ * The function automatically validates:
186
+ * - Payment frequency is supported
187
+ * - Duration alignment with payment frequency
188
+ * - Required parameters are provided
189
+ *
190
+ * ## Process
191
+ *
192
+ * 1. **Validate Parameters**: Checks payment frequency and duration alignment
193
+ * 2. **Resolve Addresses**: Gets network-specific program and mint addresses
194
+ * 3. **Generate Instruction**: Creates the contract creation instruction
195
+ * 4. **Return Fluent Object**: Allows for configuration and format conversion
196
+ *
30
197
  * @example
31
198
  * ```typescript
32
- * // Use devnet defaults
33
- * const ix = await createContract(params);
199
+ * import { createContract } from '@srsly/sdk';
34
200
  *
35
- * // Use mainnet configuration
36
- * const ix = await createContract(params).set({ network: 'mainnet' });
201
+ * // Basic usage with ATLAS rates (v3 - numbers are ATLAS)
202
+ * const instruction = await createContract({
203
+ * owner: wallet, // Can be signer object or string
204
+ * fleet: "FleetAddress123...", // String address
205
+ * ownerProfile: "ProfileAddr...", // String address
206
+ * rate: 100, // 100 ATLAS per payment
207
+ * durationMax: { days: 30 }, // Maximum 30 days
208
+ * paymentsFreq: '@daily' // Daily payments
209
+ * });
37
210
  *
38
- * // Override specific constants
39
- * const ix = await createContract(params).set({
40
- * network: 'mainnet',
41
- * gameId: 'custom-game-id...',
42
- * sageProgramAddress: 'custom-sage...'
211
+ * // With duration objects for clarity
212
+ * const customMinInstruction = await createContract({
213
+ * owner: wallet,
214
+ * fleet: "FleetAddress123...",
215
+ * ownerProfile: "ProfileAddr...",
216
+ * rate: 10, // 10 ATLAS per hour
217
+ * durationMin: { days: 1 }, // Minimum 1 day
218
+ * durationMax: { weeks: 4 }, // Maximum 4 weeks
219
+ * paymentsFreq: '@hourly' // Hourly payments
43
220
  * });
44
221
  *
45
- * // Chain configurations
46
- * const ix = await createContract(params)
47
- * .set({ network: 'devnet' })
48
- * .set({ gameId: 'override-game...' });
222
+ * // Using explicit atlas/stardust for precision
223
+ * const preciseInstruction = await createContract({
224
+ * owner: wallet,
225
+ * fleet: "FleetAddress123...",
226
+ * rate: { atlas: 1.5 }, // 1.5 ATLAS per payment
227
+ * durationMin: { days: 7 }, // Minimum 1 week
228
+ * durationMax: { months: 3 }, // Maximum 3 months
229
+ * paymentsFreq: '@daily'
230
+ * });
49
231
  * ```
50
232
  *
51
- * @param params The simplified parameters for creating a rental contract
52
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
233
+ * @param params - The contract creation parameters including owner, fleet, rate, and duration
234
+ * @returns A FluentConfigSelector that can be configured with .set() or awaited directly
235
+ * @throws Error when payment frequency is invalid or duration alignment fails
53
236
  */
54
237
  export function createContract(params) {
55
- return createConfigSelector((config) => _createContract(params, config));
56
- }
57
- /**
58
- * Export config selector for getCreateContractInstructionAsync
59
- */
60
- export function getCreateContractInstructionAsync(input, options) {
61
- return createConfigSelector(async (config) => {
62
- const codamaModule = await getCachedNetworkModule('instructions', config?.network);
63
- return codamaModule.getCreateContractInstructionAsync(input, options);
64
- });
238
+ const baseSelector = createSdkConfigSelector(config => _createContract(params, config));
239
+ return createSmartFluentConfigSelector(baseSelector);
65
240
  }
241
+ // Demo export for documentation site
242
+ export const createContractDemo = {
243
+ tabName: 'create',
244
+ description: 'Create a new rental contract for your fleet',
245
+ imports: `import { createContract } from '@wuwei-labs/srsly';`,
246
+ instruction: `const instruction = await createContract({
247
+ owner: {{signerType}}.publicKey?.toBase58(),
248
+ fleet: "FLEET_ADDRESS",
249
+ rate: { atlas: 1 }, // 1 ATLAS per payment
250
+ durationMin: { days: 1 },
251
+ durationMax: { months: 3 },
252
+ paymentsFreq: "@daily" // or '@hourly', '@weekly', '@monthly', or custom cron
253
+ });`,
254
+ };
66
255
  //# sourceMappingURL=create.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/contract/create.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAA2C,MAAM,iBAAiB,CAAC;AACxH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAyDnD;;GAEG;AACH,KAAK,UAAU,eAAe,CAC5B,MAA4B,EAC5B,MAAsB;IAEtB,MAAM,EACJ,KAAK,EACL,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,aAAa,GAAG,CAAC,EACjB,MAAM,GACP,GAAG,MAAM,CAAC;IAEX,sFAAsF;IACtF,MAAM,YAAY,GAAG,MAAM,IAAI,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAE3D,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACnF,MAAM,EAAE,iCAAiC,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAElF,kFAAkF;IAClF,MAAM,KAAK,GAAG;QACZ,KAAK;QACL,KAAK;QACL,YAAY;QACZ,MAAM,EAAE,YAAY;QACpB,IAAI;QACJ,WAAW;QACX,WAAW;QACX,WAAW,EAAE,YAAY;QACzB,aAAa;KACd,CAAC;IAEF,OAAO,iCAAiC,CACtC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA4B;IAE5B,OAAO,oBAAoB,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iCAAiC,CAAC,KAAU,EAAE,OAAa;IACzE,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnF,OAAO,YAAY,CAAC,iCAAiC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/contract/create.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,52 @@
1
- export * from "./close";
2
- export * from "./create";
1
+ /**
2
+ * @purpose Contract management module with create and close functionality
3
+ * @reviewed 2025-07-29
4
+ */
5
+ /**
6
+ * # Contract Management Module
7
+ *
8
+ * This module provides comprehensive functionality for managing rental contracts
9
+ * on the SRSLY program. It includes functions for creating and closing contracts,
10
+ * with full support for both @solana/kit and @solana/web3.js libraries.
11
+ *
12
+ * ## Available Functions
13
+ *
14
+ * - **createContract**: Create a new rental contract for a fleet
15
+ * - **closeContract**: Permanently close an existing rental contract
16
+ *
17
+ * ## Features
18
+ *
19
+ * - **Universal Library Support**: Works with both major Solana libraries
20
+ * - **String-Based Addresses**: Eliminates library-specific type conflicts
21
+ * - **Fluent API**: Chainable configuration and format conversion
22
+ * - **Network Agnostic**: Supports different Solana networks
23
+ * - **Validation**: Built-in parameter validation and error checking
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * import { createContract, closeContract } from '@srsly/sdk';
28
+ *
29
+ * // Create a rental contract
30
+ * const createInstruction = await createContract({
31
+ * owner: wallet,
32
+ * fleet: "FleetAddress123...",
33
+ * ownerProfile: "ProfileAddr...",
34
+ * rate: 1000,
35
+ * durationMax: { days: 30 }, // Smart parameter format
36
+ * paymentsFreq: 'daily'
37
+ * });
38
+ *
39
+ * // Close the contract later
40
+ * const closeInstruction = await closeContract({
41
+ * owner: wallet,
42
+ * fleet: "FleetAddress123...",
43
+ * contract: "ContractAddr...",
44
+ * faction: 'mud'
45
+ * });
46
+ * ```
47
+ *
48
+ * @module Contract
49
+ */
50
+ export * from './close';
51
+ export * from './create';
3
52
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contract/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/contract/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @purpose Demo exports for documentation site providing interactive examples
3
+ * @reviewed 2025-07-29
4
+ *
5
+ * This module exports demo templates for all SRSLY SDK instructions.
6
+ * These templates are used in the documentation site to provide interactive examples.
7
+ */
8
+ // Re-export demo templates from instruction files
9
+ export { createContractDemo } from './contract/create';
10
+ export { closeContractDemo } from './contract/close';
11
+ export { acceptRentalDemo } from './rental/accept';
12
+ export { cancelRentalDemo } from './rental/cancel';
13
+ export { closeRentalDemo } from './rental/close';
14
+ export { resetRentalDemo } from './rental/reset';
15
+ export { updateConfigDemo } from './config/update';
16
+ // Collect all demos for easy access
17
+ export const ALL_DEMOS = {
18
+ createContract: () => import('./contract/create').then(m => m.createContractDemo),
19
+ closeContract: () => import('./contract/close').then(m => m.closeContractDemo),
20
+ acceptRental: () => import('./rental/accept').then(m => m.acceptRentalDemo),
21
+ cancelRental: () => import('./rental/cancel').then(m => m.cancelRentalDemo),
22
+ closeRental: () => import('./rental/close').then(m => m.closeRentalDemo),
23
+ resetRental: () => import('./rental/reset').then(m => m.resetRentalDemo),
24
+ updateConfig: () => import('./config/update').then(m => m.updateConfigDemo),
25
+ };
26
+ //# sourceMappingURL=demos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"demos.js","sourceRoot":"","sources":["../../src/demos.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,kDAAkD;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAUnD,oCAAoC;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACjF,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC9E,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC3E,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC3E,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;IACxE,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;IACxE,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;CACnE,CAAC"}
@@ -0,0 +1,111 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { assertAccountExists, assertAccountsExist, combineCodec, createDecoder, decodeAccount, fetchEncodedAccount, fetchEncodedAccounts, fixDecoderSize, fixEncoderSize, getAddressDecoder, getAddressEncoder, getArrayDecoder, getArrayEncoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder, } from '@solana/kit';
9
+ import { getPaymentFrequencyDecoder, getPaymentFrequencyEncoder, } from '../types';
10
+ export const CONFIG_STATE_DISCRIMINATOR = new Uint8Array([
11
+ 193, 77, 160, 128, 208, 254, 180, 135,
12
+ ]);
13
+ export function getConfigStateDiscriminatorBytes() {
14
+ return fixEncoderSize(getBytesEncoder(), 8).encode(CONFIG_STATE_DISCRIMINATOR);
15
+ }
16
+ export function getConfigStateEncoder() {
17
+ return transformEncoder(getStructEncoder([
18
+ ['discriminator', fixEncoderSize(getBytesEncoder(), 8)],
19
+ ['version', getU8Encoder()],
20
+ ['bump', getU8Encoder()],
21
+ ['authority', getAddressEncoder()],
22
+ ['stardustToAtlas', getU64Encoder()],
23
+ ['serviceFeeBps', getU64Encoder()],
24
+ ['baseBps', getU64Encoder()],
25
+ ['rentalDurationMinSeconds', getU64Encoder()],
26
+ ['rentalDurationMaxSeconds', getU64Encoder()],
27
+ ['feesAccount', getAddressEncoder()],
28
+ ['atlasMint', getAddressEncoder()],
29
+ ['defaultPaymentFrequency', getPaymentFrequencyEncoder()],
30
+ ['allowedFrequencies', getArrayEncoder(getPaymentFrequencyEncoder())],
31
+ ]), (value) => ({ ...value, discriminator: CONFIG_STATE_DISCRIMINATOR }));
32
+ }
33
+ export function getConfigStateDecoder(options) {
34
+ const fields = [
35
+ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
36
+ ['version', getU8Decoder()],
37
+ ['bump', getU8Decoder()],
38
+ ['authority', getAddressDecoder()],
39
+ ['stardustToAtlas', getU64Decoder()],
40
+ ['serviceFeeBps', getU64Decoder()],
41
+ ['baseBps', getU64Decoder()],
42
+ ['rentalDurationMinSeconds', getU64Decoder()],
43
+ ['rentalDurationMaxSeconds', getU64Decoder()],
44
+ ['feesAccount', getAddressDecoder()],
45
+ ['atlasMint', getAddressDecoder()],
46
+ ['defaultPaymentFrequency', getPaymentFrequencyDecoder()],
47
+ ['allowedFrequencies', getArrayDecoder(getPaymentFrequencyDecoder())],
48
+ ];
49
+ if (options?.lazy) {
50
+ return createDecoder({
51
+ read(bytes, offset) {
52
+ const result = {};
53
+ let currentOffset = offset;
54
+ for (const [fieldName, decoder] of fields) {
55
+ try {
56
+ if (currentOffset >= bytes.length) {
57
+ continue;
58
+ }
59
+ const [value, newOffset] = decoder.read(bytes, currentOffset);
60
+ result[fieldName] = value;
61
+ currentOffset = newOffset;
62
+ }
63
+ catch (error) {
64
+ break;
65
+ }
66
+ }
67
+ return [result, currentOffset];
68
+ },
69
+ });
70
+ }
71
+ return getStructDecoder([
72
+ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
73
+ ['version', getU8Decoder()],
74
+ ['bump', getU8Decoder()],
75
+ ['authority', getAddressDecoder()],
76
+ ['stardustToAtlas', getU64Decoder()],
77
+ ['serviceFeeBps', getU64Decoder()],
78
+ ['baseBps', getU64Decoder()],
79
+ ['rentalDurationMinSeconds', getU64Decoder()],
80
+ ['rentalDurationMaxSeconds', getU64Decoder()],
81
+ ['feesAccount', getAddressDecoder()],
82
+ ['atlasMint', getAddressDecoder()],
83
+ ['defaultPaymentFrequency', getPaymentFrequencyDecoder()],
84
+ ['allowedFrequencies', getArrayDecoder(getPaymentFrequencyDecoder())],
85
+ ]);
86
+ }
87
+ export function getConfigStateCodec() {
88
+ return combineCodec(getConfigStateEncoder(), getConfigStateDecoder());
89
+ }
90
+ export function decodeConfigState(encodedAccount, options) {
91
+ return decodeAccount(encodedAccount, getConfigStateDecoder(options));
92
+ }
93
+ export async function fetchConfigState(rpc, address, config) {
94
+ const maybeAccount = await fetchMaybeConfigState(rpc, address, config);
95
+ assertAccountExists(maybeAccount);
96
+ return maybeAccount;
97
+ }
98
+ export async function fetchMaybeConfigState(rpc, address, config) {
99
+ const maybeAccount = await fetchEncodedAccount(rpc, address, config);
100
+ return decodeConfigState(maybeAccount, { lazy: config?.lazy });
101
+ }
102
+ export async function fetchAllConfigState(rpc, addresses, config) {
103
+ const maybeAccounts = await fetchAllMaybeConfigState(rpc, addresses, config);
104
+ assertAccountsExist(maybeAccounts);
105
+ return maybeAccounts;
106
+ }
107
+ export async function fetchAllMaybeConfigState(rpc, addresses, config) {
108
+ const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config);
109
+ return maybeAccounts.map((maybeAccount) => decodeConfigState(maybeAccount, { lazy: config?.lazy }));
110
+ }
111
+ //# sourceMappingURL=configState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configState.js","sourceRoot":"","sources":["../../../../../src/generated/codama/accounts/configState.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
- import { addDecoderSizePrefix, addEncoderSizePrefix, assertAccountExists, assertAccountsExist, combineCodec, decodeAccount, fetchEncodedAccount, fetchEncodedAccounts, fixDecoderSize, fixEncoderSize, getAddressDecoder, getAddressEncoder, getBooleanDecoder, getBooleanEncoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, getUtf8Decoder, getUtf8Encoder, transformEncoder, } from '@solana/kit';
8
+ import { addDecoderSizePrefix, addEncoderSizePrefix, assertAccountExists, assertAccountsExist, combineCodec, createDecoder, decodeAccount, fetchEncodedAccount, fetchEncodedAccounts, fixDecoderSize, fixEncoderSize, getAddressDecoder, getAddressEncoder, getBooleanDecoder, getBooleanEncoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, getUtf8Decoder, getUtf8Encoder, transformEncoder, } from '@solana/kit';
9
9
  export const CONTRACT_STATE_DISCRIMINATOR = new Uint8Array([
10
10
  190, 138, 10, 223, 189, 116, 222, 115,
11
11
  ]);
@@ -18,8 +18,8 @@ export function getContractStateEncoder() {
18
18
  ['version', getU8Encoder()],
19
19
  ['toClose', getBooleanEncoder()],
20
20
  ['rate', getU64Encoder()],
21
- ['durationMin', getU64Encoder()],
22
- ['durationMax', getU64Encoder()],
21
+ ['durationMinSeconds', getU64Encoder()],
22
+ ['durationMaxSeconds', getU64Encoder()],
23
23
  ['paymentsFeq', addEncoderSizePrefix(getUtf8Encoder(), getU32Encoder())],
24
24
  ['fleet', getAddressEncoder()],
25
25
  ['gameId', getAddressEncoder()],
@@ -30,14 +30,52 @@ export function getContractStateEncoder() {
30
30
  ['bump', getU8Encoder()],
31
31
  ]), (value) => ({ ...value, discriminator: CONTRACT_STATE_DISCRIMINATOR }));
32
32
  }
33
- export function getContractStateDecoder() {
33
+ export function getContractStateDecoder(options) {
34
+ const fields = [
35
+ ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
36
+ ['version', getU8Decoder()],
37
+ ['toClose', getBooleanDecoder()],
38
+ ['rate', getU64Decoder()],
39
+ ['durationMinSeconds', getU64Decoder()],
40
+ ['durationMaxSeconds', getU64Decoder()],
41
+ ['paymentsFeq', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
42
+ ['fleet', getAddressDecoder()],
43
+ ['gameId', getAddressDecoder()],
44
+ ['currentRentalState', getAddressDecoder()],
45
+ ['owner', getAddressDecoder()],
46
+ ['ownerTokenAccount', getAddressDecoder()],
47
+ ['ownerProfile', getAddressDecoder()],
48
+ ['bump', getU8Decoder()],
49
+ ];
50
+ if (options?.lazy) {
51
+ return createDecoder({
52
+ read(bytes, offset) {
53
+ const result = {};
54
+ let currentOffset = offset;
55
+ for (const [fieldName, decoder] of fields) {
56
+ try {
57
+ if (currentOffset >= bytes.length) {
58
+ continue;
59
+ }
60
+ const [value, newOffset] = decoder.read(bytes, currentOffset);
61
+ result[fieldName] = value;
62
+ currentOffset = newOffset;
63
+ }
64
+ catch (error) {
65
+ break;
66
+ }
67
+ }
68
+ return [result, currentOffset];
69
+ },
70
+ });
71
+ }
34
72
  return getStructDecoder([
35
73
  ['discriminator', fixDecoderSize(getBytesDecoder(), 8)],
36
74
  ['version', getU8Decoder()],
37
75
  ['toClose', getBooleanDecoder()],
38
76
  ['rate', getU64Decoder()],
39
- ['durationMin', getU64Decoder()],
40
- ['durationMax', getU64Decoder()],
77
+ ['durationMinSeconds', getU64Decoder()],
78
+ ['durationMaxSeconds', getU64Decoder()],
41
79
  ['paymentsFeq', addDecoderSizePrefix(getUtf8Decoder(), getU32Decoder())],
42
80
  ['fleet', getAddressDecoder()],
43
81
  ['gameId', getAddressDecoder()],
@@ -51,8 +89,8 @@ export function getContractStateDecoder() {
51
89
  export function getContractStateCodec() {
52
90
  return combineCodec(getContractStateEncoder(), getContractStateDecoder());
53
91
  }
54
- export function decodeContractState(encodedAccount) {
55
- return decodeAccount(encodedAccount, getContractStateDecoder());
92
+ export function decodeContractState(encodedAccount, options) {
93
+ return decodeAccount(encodedAccount, getContractStateDecoder(options));
56
94
  }
57
95
  export async function fetchContractState(rpc, address, config) {
58
96
  const maybeAccount = await fetchMaybeContractState(rpc, address, config);
@@ -61,7 +99,7 @@ export async function fetchContractState(rpc, address, config) {
61
99
  }
62
100
  export async function fetchMaybeContractState(rpc, address, config) {
63
101
  const maybeAccount = await fetchEncodedAccount(rpc, address, config);
64
- return decodeContractState(maybeAccount);
102
+ return decodeContractState(maybeAccount, { lazy: config?.lazy });
65
103
  }
66
104
  export async function fetchAllContractState(rpc, addresses, config) {
67
105
  const maybeAccounts = await fetchAllMaybeContractState(rpc, addresses, config);
@@ -70,6 +108,6 @@ export async function fetchAllContractState(rpc, addresses, config) {
70
108
  }
71
109
  export async function fetchAllMaybeContractState(rpc, addresses, config) {
72
110
  const maybeAccounts = await fetchEncodedAccounts(rpc, addresses, config);
73
- return maybeAccounts.map((maybeAccount) => decodeContractState(maybeAccount));
111
+ return maybeAccounts.map((maybeAccount) => decodeContractState(maybeAccount, { lazy: config?.lazy }));
74
112
  }
75
113
  //# sourceMappingURL=contractState.js.map