@wuwei-labs/srsly 2.0.0-beta.3 → 2.0.0-beta.32

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 (414) hide show
  1. package/README.md +322 -197
  2. package/dist/cjs/codama/accounts/config.js +88 -0
  3. package/dist/cjs/codama/accounts/config.js.map +1 -0
  4. package/dist/cjs/codama/{devnet/accounts → accounts}/contractState.js +2 -7
  5. package/dist/cjs/codama/accounts/contractState.js.map +1 -0
  6. package/dist/cjs/codama/{devnet/accounts → accounts}/index.js +1 -1
  7. package/dist/cjs/codama/accounts/index.js.map +1 -0
  8. package/dist/cjs/codama/{devnet/accounts → accounts}/rentalState.js +3 -1
  9. package/dist/cjs/codama/accounts/rentalState.js.map +1 -0
  10. package/dist/cjs/codama/accounts/thread.js.map +1 -0
  11. package/dist/cjs/codama/errors/index.js.map +1 -0
  12. package/dist/cjs/codama/{devnet/errors → errors}/srsly.js +33 -3
  13. package/dist/cjs/codama/errors/srsly.js.map +1 -0
  14. package/dist/cjs/codama/index.js.map +1 -0
  15. package/dist/cjs/codama/{devnet/instructions → instructions}/acceptRental.js +30 -39
  16. package/dist/cjs/codama/instructions/acceptRental.js.map +1 -0
  17. package/dist/cjs/codama/instructions/cancelContract.js +131 -0
  18. package/dist/cjs/codama/instructions/cancelContract.js.map +1 -0
  19. package/dist/cjs/codama/{devnet/instructions → instructions}/cancelRental.js +10 -33
  20. package/dist/cjs/codama/instructions/cancelRental.js.map +1 -0
  21. package/dist/cjs/codama/{devnet/instructions → instructions}/closeContract.js +22 -36
  22. package/dist/cjs/codama/instructions/closeContract.js.map +1 -0
  23. package/dist/cjs/codama/{devnet/instructions → instructions}/closeRental.js +19 -19
  24. package/dist/cjs/codama/instructions/closeRental.js.map +1 -0
  25. package/dist/cjs/codama/{devnet/instructions → instructions}/createContract.js +13 -16
  26. package/dist/cjs/codama/instructions/createContract.js.map +1 -0
  27. package/dist/cjs/codama/{devnet/instructions → instructions}/index.js +3 -1
  28. package/dist/cjs/codama/instructions/index.js.map +1 -0
  29. package/dist/cjs/codama/instructions/initializeConfig.js +131 -0
  30. package/dist/cjs/codama/instructions/initializeConfig.js.map +1 -0
  31. package/dist/cjs/codama/{devnet/instructions → instructions}/payRental.js +32 -23
  32. package/dist/cjs/codama/instructions/payRental.js.map +1 -0
  33. package/dist/cjs/codama/{devnet/instructions → instructions}/resetRental.js +6 -10
  34. package/dist/cjs/codama/instructions/resetRental.js.map +1 -0
  35. package/dist/cjs/codama/instructions/updateConfig.js +145 -0
  36. package/dist/cjs/codama/instructions/updateConfig.js.map +1 -0
  37. package/dist/cjs/codama/programs/index.js.map +1 -0
  38. package/dist/cjs/codama/{devnet/programs → programs}/srsly.js +22 -14
  39. package/dist/cjs/codama/programs/srsly.js.map +1 -0
  40. package/dist/cjs/codama/shared/index.js.map +1 -0
  41. package/dist/cjs/codama/types/clockData.js.map +1 -0
  42. package/dist/cjs/codama/types/equality.js.map +1 -0
  43. package/dist/cjs/codama/types/execContext.js.map +1 -0
  44. package/dist/cjs/codama/types/index.js.map +1 -0
  45. package/dist/cjs/codama/types/paymentFrequency.js.map +1 -0
  46. package/dist/cjs/codama/types/serializableAccount.js.map +1 -0
  47. package/dist/cjs/codama/types/serializableInstruction.js.map +1 -0
  48. package/dist/cjs/codama/types/threadResponse.js.map +1 -0
  49. package/dist/cjs/codama/types/trigger.js.map +1 -0
  50. package/dist/cjs/codama/types/triggerContext.js.map +1 -0
  51. package/dist/cjs/contract/cancel.js +77 -0
  52. package/dist/cjs/contract/cancel.js.map +1 -0
  53. package/dist/cjs/contract/close.js +74 -31
  54. package/dist/cjs/contract/close.js.map +1 -1
  55. package/dist/cjs/contract/create.js +79 -35
  56. package/dist/cjs/contract/create.js.map +1 -1
  57. package/dist/cjs/contract/index.js +1 -0
  58. package/dist/cjs/contract/index.js.map +1 -1
  59. package/dist/cjs/index.js +25 -2
  60. package/dist/cjs/index.js.map +1 -1
  61. package/dist/cjs/package.json +53 -0
  62. package/dist/cjs/rental/accept.js +76 -42
  63. package/dist/cjs/rental/accept.js.map +1 -1
  64. package/dist/cjs/rental/cancel.js +40 -28
  65. package/dist/cjs/rental/cancel.js.map +1 -1
  66. package/dist/cjs/rental/close.js +42 -30
  67. package/dist/cjs/rental/close.js.map +1 -1
  68. package/dist/cjs/rental/reset.js +50 -43
  69. package/dist/cjs/rental/reset.js.map +1 -1
  70. package/dist/cjs/types/paymentFrequency.js +58 -0
  71. package/dist/cjs/types/paymentFrequency.js.map +1 -0
  72. package/dist/cjs/utils/config.js +216 -0
  73. package/dist/cjs/utils/config.js.map +1 -0
  74. package/dist/cjs/utils/constants.js +55 -27
  75. package/dist/cjs/utils/constants.js.map +1 -1
  76. package/dist/cjs/utils/duration.js +77 -0
  77. package/dist/cjs/utils/duration.js.map +1 -0
  78. package/dist/cjs/utils/index.js +4 -0
  79. package/dist/cjs/utils/index.js.map +1 -1
  80. package/dist/cjs/utils/instruction-converter.js +66 -0
  81. package/dist/cjs/utils/instruction-converter.js.map +1 -0
  82. package/dist/cjs/utils/paymentFrequency.js +60 -0
  83. package/dist/cjs/utils/paymentFrequency.js.map +1 -0
  84. package/dist/cjs/utils/profiles.js +38 -18
  85. package/dist/cjs/utils/profiles.js.map +1 -1
  86. package/dist/cjs/utils/types.js +6 -0
  87. package/dist/cjs/utils/types.js.map +1 -0
  88. package/dist/esm/codama/accounts/config.js +76 -0
  89. package/dist/esm/codama/accounts/config.js.map +1 -0
  90. package/dist/esm/codama/{devnet/accounts → accounts}/contractState.js +3 -7
  91. package/dist/esm/codama/accounts/contractState.js.map +1 -0
  92. package/dist/esm/codama/{devnet/accounts → accounts}/index.js +1 -1
  93. package/dist/esm/codama/accounts/index.js.map +1 -0
  94. package/dist/esm/codama/{devnet/accounts → accounts}/rentalState.js +3 -1
  95. package/dist/esm/codama/accounts/rentalState.js.map +1 -0
  96. package/dist/esm/codama/accounts/thread.js.map +1 -0
  97. package/dist/esm/codama/errors/index.js.map +1 -0
  98. package/dist/esm/codama/{devnet/errors → errors}/srsly.js +32 -2
  99. package/dist/esm/codama/errors/srsly.js.map +1 -0
  100. package/dist/esm/codama/index.js.map +1 -0
  101. package/dist/esm/codama/{devnet/instructions → instructions}/acceptRental.js +30 -39
  102. package/dist/esm/codama/instructions/acceptRental.js.map +1 -0
  103. package/dist/esm/codama/instructions/cancelContract.js +121 -0
  104. package/dist/esm/codama/instructions/cancelContract.js.map +1 -0
  105. package/dist/esm/codama/{devnet/instructions → instructions}/cancelRental.js +10 -33
  106. package/dist/esm/codama/instructions/cancelRental.js.map +1 -0
  107. package/dist/esm/codama/{devnet/instructions → instructions}/closeContract.js +24 -38
  108. package/dist/esm/codama/instructions/closeContract.js.map +1 -0
  109. package/dist/esm/codama/{devnet/instructions → instructions}/closeRental.js +19 -19
  110. package/dist/esm/codama/instructions/closeRental.js.map +1 -0
  111. package/dist/esm/codama/{devnet/instructions → instructions}/createContract.js +13 -16
  112. package/dist/esm/codama/instructions/createContract.js.map +1 -0
  113. package/dist/esm/codama/{devnet/instructions → instructions}/index.js +3 -1
  114. package/dist/esm/codama/instructions/index.js.map +1 -0
  115. package/dist/esm/codama/instructions/initializeConfig.js +121 -0
  116. package/dist/esm/codama/instructions/initializeConfig.js.map +1 -0
  117. package/dist/esm/codama/{devnet/instructions → instructions}/payRental.js +34 -25
  118. package/dist/esm/codama/instructions/payRental.js.map +1 -0
  119. package/dist/esm/codama/{devnet/instructions → instructions}/resetRental.js +6 -10
  120. package/dist/esm/codama/instructions/resetRental.js.map +1 -0
  121. package/dist/esm/codama/instructions/updateConfig.js +135 -0
  122. package/dist/esm/codama/instructions/updateConfig.js.map +1 -0
  123. package/dist/esm/codama/programs/index.js.map +1 -0
  124. package/dist/esm/codama/{devnet/programs → programs}/srsly.js +22 -14
  125. package/dist/esm/codama/programs/srsly.js.map +1 -0
  126. package/dist/esm/codama/shared/index.js.map +1 -0
  127. package/dist/esm/codama/types/clockData.js.map +1 -0
  128. package/dist/esm/codama/types/equality.js.map +1 -0
  129. package/dist/esm/codama/types/execContext.js.map +1 -0
  130. package/dist/esm/codama/types/index.js.map +1 -0
  131. package/dist/esm/codama/types/paymentFrequency.js.map +1 -0
  132. package/dist/esm/codama/types/serializableAccount.js.map +1 -0
  133. package/dist/esm/codama/types/serializableInstruction.js.map +1 -0
  134. package/dist/esm/codama/types/threadResponse.js.map +1 -0
  135. package/dist/esm/codama/types/trigger.js.map +1 -0
  136. package/dist/esm/codama/types/triggerContext.js.map +1 -0
  137. package/dist/esm/contract/cancel.js +73 -0
  138. package/dist/esm/contract/cancel.js.map +1 -0
  139. package/dist/esm/contract/close.js +75 -32
  140. package/dist/esm/contract/close.js.map +1 -1
  141. package/dist/esm/contract/create.js +79 -34
  142. package/dist/esm/contract/create.js.map +1 -1
  143. package/dist/esm/contract/index.js +1 -0
  144. package/dist/esm/contract/index.js.map +1 -1
  145. package/dist/esm/index.js +8 -2
  146. package/dist/esm/index.js.map +1 -1
  147. package/dist/esm/package.json +53 -0
  148. package/dist/esm/rental/accept.js +77 -43
  149. package/dist/esm/rental/accept.js.map +1 -1
  150. package/dist/esm/rental/cancel.js +40 -28
  151. package/dist/esm/rental/cancel.js.map +1 -1
  152. package/dist/esm/rental/close.js +42 -30
  153. package/dist/esm/rental/close.js.map +1 -1
  154. package/dist/esm/rental/reset.js +51 -44
  155. package/dist/esm/rental/reset.js.map +1 -1
  156. package/dist/esm/types/paymentFrequency.js +53 -0
  157. package/dist/esm/types/paymentFrequency.js.map +1 -0
  158. package/dist/esm/utils/config.js +173 -0
  159. package/dist/esm/utils/config.js.map +1 -0
  160. package/dist/esm/utils/constants.js +49 -24
  161. package/dist/esm/utils/constants.js.map +1 -1
  162. package/dist/esm/utils/duration.js +68 -0
  163. package/dist/esm/utils/duration.js.map +1 -0
  164. package/dist/esm/utils/index.js +4 -0
  165. package/dist/esm/utils/index.js.map +1 -1
  166. package/dist/esm/utils/instruction-converter.js +62 -0
  167. package/dist/esm/utils/instruction-converter.js.map +1 -0
  168. package/dist/esm/utils/paymentFrequency.js +55 -0
  169. package/dist/esm/utils/paymentFrequency.js.map +1 -0
  170. package/dist/esm/utils/profiles.js +39 -19
  171. package/dist/esm/utils/profiles.js.map +1 -1
  172. package/dist/esm/utils/types.js +5 -0
  173. package/dist/esm/utils/types.js.map +1 -0
  174. package/dist/types/codama/accounts/config.d.ts +52 -0
  175. package/dist/types/codama/accounts/config.d.ts.map +1 -0
  176. package/dist/types/codama/{devnet/accounts → accounts}/contractState.d.ts +2 -4
  177. package/dist/types/codama/accounts/contractState.d.ts.map +1 -0
  178. package/dist/types/codama/{devnet/accounts → accounts}/index.d.ts +1 -1
  179. package/dist/types/codama/accounts/index.d.ts.map +1 -0
  180. package/dist/types/codama/{devnet/accounts → accounts}/rentalState.d.ts +2 -0
  181. package/dist/types/codama/accounts/rentalState.d.ts.map +1 -0
  182. package/dist/types/codama/accounts/thread.d.ts.map +1 -0
  183. package/dist/types/codama/errors/index.d.ts.map +1 -0
  184. package/dist/types/codama/errors/srsly.d.ts +68 -0
  185. package/dist/types/codama/errors/srsly.d.ts.map +1 -0
  186. package/dist/types/codama/index.d.ts.map +1 -0
  187. package/dist/types/codama/instructions/acceptRental.d.ts +135 -0
  188. package/dist/types/codama/instructions/acceptRental.d.ts.map +1 -0
  189. package/dist/types/codama/instructions/cancelContract.d.ts +59 -0
  190. package/dist/types/codama/instructions/cancelContract.d.ts.map +1 -0
  191. package/dist/types/codama/{devnet/instructions → instructions}/cancelRental.d.ts +14 -10
  192. package/dist/types/codama/instructions/cancelRental.d.ts.map +1 -0
  193. package/dist/types/codama/instructions/closeContract.d.ts +104 -0
  194. package/dist/types/codama/instructions/closeContract.d.ts.map +1 -0
  195. package/dist/types/codama/{devnet/instructions → instructions}/closeRental.d.ts +20 -12
  196. package/dist/types/codama/instructions/closeRental.d.ts.map +1 -0
  197. package/dist/types/codama/instructions/createContract.d.ts +112 -0
  198. package/dist/types/codama/instructions/createContract.d.ts.map +1 -0
  199. package/dist/types/codama/{devnet/instructions → instructions}/index.d.ts +3 -1
  200. package/dist/types/codama/instructions/index.d.ts.map +1 -0
  201. package/dist/types/codama/instructions/initializeConfig.d.ts +60 -0
  202. package/dist/types/codama/instructions/initializeConfig.d.ts.map +1 -0
  203. package/dist/types/codama/{devnet/instructions → instructions}/payRental.d.ts +28 -13
  204. package/dist/types/codama/instructions/payRental.d.ts.map +1 -0
  205. package/dist/types/codama/{devnet/instructions → instructions}/resetRental.d.ts +15 -11
  206. package/dist/types/codama/instructions/resetRental.d.ts.map +1 -0
  207. package/dist/types/codama/instructions/updateConfig.d.ts +93 -0
  208. package/dist/types/codama/instructions/updateConfig.d.ts.map +1 -0
  209. package/dist/types/codama/programs/index.d.ts.map +1 -0
  210. package/dist/types/codama/{devnet/programs → programs}/srsly.d.ts +19 -13
  211. package/dist/types/codama/programs/srsly.d.ts.map +1 -0
  212. package/dist/types/codama/shared/index.d.ts.map +1 -0
  213. package/dist/types/codama/types/clockData.d.ts.map +1 -0
  214. package/dist/types/codama/types/equality.d.ts.map +1 -0
  215. package/dist/types/codama/types/execContext.d.ts.map +1 -0
  216. package/dist/types/codama/types/index.d.ts.map +1 -0
  217. package/dist/types/codama/types/paymentFrequency.d.ts.map +1 -0
  218. package/dist/types/codama/types/serializableAccount.d.ts.map +1 -0
  219. package/dist/types/codama/types/serializableInstruction.d.ts.map +1 -0
  220. package/dist/types/codama/types/threadResponse.d.ts.map +1 -0
  221. package/dist/types/codama/types/trigger.d.ts.map +1 -0
  222. package/dist/types/codama/types/triggerContext.d.ts.map +1 -0
  223. package/dist/types/contract/cancel.d.ts +66 -0
  224. package/dist/types/contract/cancel.d.ts.map +1 -0
  225. package/dist/types/contract/close.d.ts +29 -13
  226. package/dist/types/contract/close.d.ts.map +1 -1
  227. package/dist/types/contract/create.d.ts +55 -54
  228. package/dist/types/contract/create.d.ts.map +1 -1
  229. package/dist/types/contract/index.d.ts +1 -0
  230. package/dist/types/contract/index.d.ts.map +1 -1
  231. package/dist/types/index.d.ts +5 -2
  232. package/dist/types/index.d.ts.map +1 -1
  233. package/dist/types/rental/accept.d.ts +65 -15
  234. package/dist/types/rental/accept.d.ts.map +1 -1
  235. package/dist/types/rental/cancel.d.ts +36 -8
  236. package/dist/types/rental/cancel.d.ts.map +1 -1
  237. package/dist/types/rental/close.d.ts +36 -8
  238. package/dist/types/rental/close.d.ts.map +1 -1
  239. package/dist/types/rental/reset.d.ts +42 -11
  240. package/dist/types/rental/reset.d.ts.map +1 -1
  241. package/dist/types/types/paymentFrequency.d.ts +44 -0
  242. package/dist/types/types/paymentFrequency.d.ts.map +1 -0
  243. package/dist/types/utils/config.d.ts +110 -0
  244. package/dist/types/utils/config.d.ts.map +1 -0
  245. package/dist/types/utils/constants.d.ts +14 -11
  246. package/dist/types/utils/constants.d.ts.map +1 -1
  247. package/dist/types/utils/duration.d.ts +56 -0
  248. package/dist/types/utils/duration.d.ts.map +1 -0
  249. package/dist/types/utils/index.d.ts +4 -0
  250. package/dist/types/utils/index.d.ts.map +1 -1
  251. package/dist/types/utils/instruction-converter.d.ts +117 -0
  252. package/dist/types/utils/instruction-converter.d.ts.map +1 -0
  253. package/dist/types/utils/paymentFrequency.d.ts +18 -0
  254. package/dist/types/utils/paymentFrequency.d.ts.map +1 -0
  255. package/dist/types/utils/profiles.d.ts +14 -8
  256. package/dist/types/utils/profiles.d.ts.map +1 -1
  257. package/dist/types/utils/types.d.ts +6 -0
  258. package/dist/types/utils/types.d.ts.map +1 -0
  259. package/package.json +33 -25
  260. package/target/idl/{srsly-devnet.json → srsly.json} +834 -466
  261. package/dist/cjs/codama/devnet/accounts/contractState.js.map +0 -1
  262. package/dist/cjs/codama/devnet/accounts/fleet.js +0 -77
  263. package/dist/cjs/codama/devnet/accounts/fleet.js.map +0 -1
  264. package/dist/cjs/codama/devnet/accounts/index.js.map +0 -1
  265. package/dist/cjs/codama/devnet/accounts/rentalState.js.map +0 -1
  266. package/dist/cjs/codama/devnet/accounts/thread.js.map +0 -1
  267. package/dist/cjs/codama/devnet/errors/index.js.map +0 -1
  268. package/dist/cjs/codama/devnet/errors/srsly.js.map +0 -1
  269. package/dist/cjs/codama/devnet/index.js.map +0 -1
  270. package/dist/cjs/codama/devnet/instructions/acceptRental.js.map +0 -1
  271. package/dist/cjs/codama/devnet/instructions/cancelRental.js.map +0 -1
  272. package/dist/cjs/codama/devnet/instructions/closeContract.js.map +0 -1
  273. package/dist/cjs/codama/devnet/instructions/closeRental.js.map +0 -1
  274. package/dist/cjs/codama/devnet/instructions/createContract.js.map +0 -1
  275. package/dist/cjs/codama/devnet/instructions/index.js.map +0 -1
  276. package/dist/cjs/codama/devnet/instructions/normalizeAdmin.js +0 -152
  277. package/dist/cjs/codama/devnet/instructions/normalizeAdmin.js.map +0 -1
  278. package/dist/cjs/codama/devnet/instructions/payRental.js.map +0 -1
  279. package/dist/cjs/codama/devnet/instructions/resetRental.js.map +0 -1
  280. package/dist/cjs/codama/devnet/programs/index.js.map +0 -1
  281. package/dist/cjs/codama/devnet/programs/srsly.js.map +0 -1
  282. package/dist/cjs/codama/devnet/shared/index.js.map +0 -1
  283. package/dist/cjs/codama/devnet/types/clockData.js.map +0 -1
  284. package/dist/cjs/codama/devnet/types/equality.js.map +0 -1
  285. package/dist/cjs/codama/devnet/types/execContext.js.map +0 -1
  286. package/dist/cjs/codama/devnet/types/index.js.map +0 -1
  287. package/dist/cjs/codama/devnet/types/paymentFrequency.js.map +0 -1
  288. package/dist/cjs/codama/devnet/types/serializableAccount.js.map +0 -1
  289. package/dist/cjs/codama/devnet/types/serializableInstruction.js.map +0 -1
  290. package/dist/cjs/codama/devnet/types/threadResponse.js.map +0 -1
  291. package/dist/cjs/codama/devnet/types/trigger.js.map +0 -1
  292. package/dist/cjs/codama/devnet/types/triggerContext.js.map +0 -1
  293. package/dist/cjs/network.js +0 -107
  294. package/dist/cjs/network.js.map +0 -1
  295. package/dist/esm/codama/devnet/accounts/contractState.js.map +0 -1
  296. package/dist/esm/codama/devnet/accounts/fleet.js +0 -64
  297. package/dist/esm/codama/devnet/accounts/fleet.js.map +0 -1
  298. package/dist/esm/codama/devnet/accounts/index.js.map +0 -1
  299. package/dist/esm/codama/devnet/accounts/rentalState.js.map +0 -1
  300. package/dist/esm/codama/devnet/accounts/thread.js.map +0 -1
  301. package/dist/esm/codama/devnet/errors/index.js.map +0 -1
  302. package/dist/esm/codama/devnet/errors/srsly.js.map +0 -1
  303. package/dist/esm/codama/devnet/index.js.map +0 -1
  304. package/dist/esm/codama/devnet/instructions/acceptRental.js.map +0 -1
  305. package/dist/esm/codama/devnet/instructions/cancelRental.js.map +0 -1
  306. package/dist/esm/codama/devnet/instructions/closeContract.js.map +0 -1
  307. package/dist/esm/codama/devnet/instructions/closeRental.js.map +0 -1
  308. package/dist/esm/codama/devnet/instructions/createContract.js.map +0 -1
  309. package/dist/esm/codama/devnet/instructions/index.js.map +0 -1
  310. package/dist/esm/codama/devnet/instructions/normalizeAdmin.js +0 -142
  311. package/dist/esm/codama/devnet/instructions/normalizeAdmin.js.map +0 -1
  312. package/dist/esm/codama/devnet/instructions/payRental.js.map +0 -1
  313. package/dist/esm/codama/devnet/instructions/resetRental.js.map +0 -1
  314. package/dist/esm/codama/devnet/programs/index.js.map +0 -1
  315. package/dist/esm/codama/devnet/programs/srsly.js.map +0 -1
  316. package/dist/esm/codama/devnet/shared/index.js.map +0 -1
  317. package/dist/esm/codama/devnet/types/clockData.js.map +0 -1
  318. package/dist/esm/codama/devnet/types/equality.js.map +0 -1
  319. package/dist/esm/codama/devnet/types/execContext.js.map +0 -1
  320. package/dist/esm/codama/devnet/types/index.js.map +0 -1
  321. package/dist/esm/codama/devnet/types/paymentFrequency.js.map +0 -1
  322. package/dist/esm/codama/devnet/types/serializableAccount.js.map +0 -1
  323. package/dist/esm/codama/devnet/types/serializableInstruction.js.map +0 -1
  324. package/dist/esm/codama/devnet/types/threadResponse.js.map +0 -1
  325. package/dist/esm/codama/devnet/types/trigger.js.map +0 -1
  326. package/dist/esm/codama/devnet/types/triggerContext.js.map +0 -1
  327. package/dist/esm/network.js +0 -67
  328. package/dist/esm/network.js.map +0 -1
  329. package/dist/types/codama/devnet/accounts/contractState.d.ts.map +0 -1
  330. package/dist/types/codama/devnet/accounts/fleet.d.ts +0 -38
  331. package/dist/types/codama/devnet/accounts/fleet.d.ts.map +0 -1
  332. package/dist/types/codama/devnet/accounts/index.d.ts.map +0 -1
  333. package/dist/types/codama/devnet/accounts/rentalState.d.ts.map +0 -1
  334. package/dist/types/codama/devnet/accounts/thread.d.ts.map +0 -1
  335. package/dist/types/codama/devnet/errors/index.d.ts.map +0 -1
  336. package/dist/types/codama/devnet/errors/srsly.d.ts +0 -48
  337. package/dist/types/codama/devnet/errors/srsly.d.ts.map +0 -1
  338. package/dist/types/codama/devnet/index.d.ts.map +0 -1
  339. package/dist/types/codama/devnet/instructions/acceptRental.d.ts +0 -128
  340. package/dist/types/codama/devnet/instructions/acceptRental.d.ts.map +0 -1
  341. package/dist/types/codama/devnet/instructions/cancelRental.d.ts.map +0 -1
  342. package/dist/types/codama/devnet/instructions/closeContract.d.ts +0 -96
  343. package/dist/types/codama/devnet/instructions/closeContract.d.ts.map +0 -1
  344. package/dist/types/codama/devnet/instructions/closeRental.d.ts.map +0 -1
  345. package/dist/types/codama/devnet/instructions/createContract.d.ts +0 -108
  346. package/dist/types/codama/devnet/instructions/createContract.d.ts.map +0 -1
  347. package/dist/types/codama/devnet/instructions/index.d.ts.map +0 -1
  348. package/dist/types/codama/devnet/instructions/normalizeAdmin.d.ts +0 -67
  349. package/dist/types/codama/devnet/instructions/normalizeAdmin.d.ts.map +0 -1
  350. package/dist/types/codama/devnet/instructions/payRental.d.ts.map +0 -1
  351. package/dist/types/codama/devnet/instructions/resetRental.d.ts.map +0 -1
  352. package/dist/types/codama/devnet/programs/index.d.ts.map +0 -1
  353. package/dist/types/codama/devnet/programs/srsly.d.ts.map +0 -1
  354. package/dist/types/codama/devnet/shared/index.d.ts.map +0 -1
  355. package/dist/types/codama/devnet/types/clockData.d.ts.map +0 -1
  356. package/dist/types/codama/devnet/types/equality.d.ts.map +0 -1
  357. package/dist/types/codama/devnet/types/execContext.d.ts.map +0 -1
  358. package/dist/types/codama/devnet/types/index.d.ts.map +0 -1
  359. package/dist/types/codama/devnet/types/paymentFrequency.d.ts.map +0 -1
  360. package/dist/types/codama/devnet/types/serializableAccount.d.ts.map +0 -1
  361. package/dist/types/codama/devnet/types/serializableInstruction.d.ts.map +0 -1
  362. package/dist/types/codama/devnet/types/threadResponse.d.ts.map +0 -1
  363. package/dist/types/codama/devnet/types/trigger.d.ts.map +0 -1
  364. package/dist/types/codama/devnet/types/triggerContext.d.ts.map +0 -1
  365. package/dist/types/network.d.ts +0 -58
  366. package/dist/types/network.d.ts.map +0 -1
  367. package/target/idl/srsly-mainnet.json +0 -3011
  368. package/target/types/srsly-mainnet.ts +0 -1
  369. /package/dist/cjs/codama/{devnet/accounts → accounts}/thread.js +0 -0
  370. /package/dist/cjs/codama/{devnet/errors → errors}/index.js +0 -0
  371. /package/dist/cjs/codama/{devnet/index.js → index.js} +0 -0
  372. /package/dist/cjs/codama/{devnet/programs → programs}/index.js +0 -0
  373. /package/dist/cjs/codama/{devnet/shared → shared}/index.js +0 -0
  374. /package/dist/cjs/codama/{devnet/types → types}/clockData.js +0 -0
  375. /package/dist/cjs/codama/{devnet/types → types}/equality.js +0 -0
  376. /package/dist/cjs/codama/{devnet/types → types}/execContext.js +0 -0
  377. /package/dist/cjs/codama/{devnet/types → types}/index.js +0 -0
  378. /package/dist/cjs/codama/{devnet/types → types}/paymentFrequency.js +0 -0
  379. /package/dist/cjs/codama/{devnet/types → types}/serializableAccount.js +0 -0
  380. /package/dist/cjs/codama/{devnet/types → types}/serializableInstruction.js +0 -0
  381. /package/dist/cjs/codama/{devnet/types → types}/threadResponse.js +0 -0
  382. /package/dist/cjs/codama/{devnet/types → types}/trigger.js +0 -0
  383. /package/dist/cjs/codama/{devnet/types → types}/triggerContext.js +0 -0
  384. /package/dist/esm/codama/{devnet/accounts → accounts}/thread.js +0 -0
  385. /package/dist/esm/codama/{devnet/errors → errors}/index.js +0 -0
  386. /package/dist/esm/codama/{devnet/index.js → index.js} +0 -0
  387. /package/dist/esm/codama/{devnet/programs → programs}/index.js +0 -0
  388. /package/dist/esm/codama/{devnet/shared → shared}/index.js +0 -0
  389. /package/dist/esm/codama/{devnet/types → types}/clockData.js +0 -0
  390. /package/dist/esm/codama/{devnet/types → types}/equality.js +0 -0
  391. /package/dist/esm/codama/{devnet/types → types}/execContext.js +0 -0
  392. /package/dist/esm/codama/{devnet/types → types}/index.js +0 -0
  393. /package/dist/esm/codama/{devnet/types → types}/paymentFrequency.js +0 -0
  394. /package/dist/esm/codama/{devnet/types → types}/serializableAccount.js +0 -0
  395. /package/dist/esm/codama/{devnet/types → types}/serializableInstruction.js +0 -0
  396. /package/dist/esm/codama/{devnet/types → types}/threadResponse.js +0 -0
  397. /package/dist/esm/codama/{devnet/types → types}/trigger.js +0 -0
  398. /package/dist/esm/codama/{devnet/types → types}/triggerContext.js +0 -0
  399. /package/dist/types/codama/{devnet/accounts → accounts}/thread.d.ts +0 -0
  400. /package/dist/types/codama/{devnet/errors → errors}/index.d.ts +0 -0
  401. /package/dist/types/codama/{devnet/index.d.ts → index.d.ts} +0 -0
  402. /package/dist/types/codama/{devnet/programs → programs}/index.d.ts +0 -0
  403. /package/dist/types/codama/{devnet/shared → shared}/index.d.ts +0 -0
  404. /package/dist/types/codama/{devnet/types → types}/clockData.d.ts +0 -0
  405. /package/dist/types/codama/{devnet/types → types}/equality.d.ts +0 -0
  406. /package/dist/types/codama/{devnet/types → types}/execContext.d.ts +0 -0
  407. /package/dist/types/codama/{devnet/types → types}/index.d.ts +0 -0
  408. /package/dist/types/codama/{devnet/types → types}/paymentFrequency.d.ts +0 -0
  409. /package/dist/types/codama/{devnet/types → types}/serializableAccount.d.ts +0 -0
  410. /package/dist/types/codama/{devnet/types → types}/serializableInstruction.d.ts +0 -0
  411. /package/dist/types/codama/{devnet/types → types}/threadResponse.d.ts +0 -0
  412. /package/dist/types/codama/{devnet/types → types}/trigger.d.ts +0 -0
  413. /package/dist/types/codama/{devnet/types → types}/triggerContext.d.ts +0 -0
  414. /package/target/types/{srsly-devnet.ts → srsly.ts} +0 -0
@@ -2,47 +2,59 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cancelRental = cancelRental;
4
4
  exports.getCancelRentalInstructionAsync = getCancelRentalInstructionAsync;
5
- const network_1 = require("../network");
5
+ const config_1 = require("../utils/config");
6
+ const constants_1 = require("../utils/constants");
6
7
  /**
7
- * Asynchronously creates an instruction to cancel a rental with minimal required parameters.
8
- * Derives rentalState, rentalThread, borrowerTokenAccount, rentalTokenAccount and
9
- * rentalAuthority automatically if not provided.
8
+ * Internal function to cancel a rental instruction with configuration options
9
+ */
10
+ async function _cancelRental(params, config) {
11
+ const { borrower, contract, } = params;
12
+ // Let codama derive all the optional accounts
13
+ const input = {
14
+ borrower, // Pass as-is (string or signer)
15
+ contract: (0, constants_1.toAddress)(contract), // Ensure string
16
+ };
17
+ // Get network-specific codama functions from centralized config
18
+ const instructionsModule = (0, config_1.getModule)('instructions');
19
+ const programsModule = (0, config_1.getModule)('programs');
20
+ const { getCancelRentalInstructionAsync } = instructionsModule;
21
+ const { SRSLY_PROGRAM_ADDRESS } = programsModule;
22
+ return getCancelRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
23
+ }
24
+ /**
25
+ * Creates an instruction to cancel a rental with fluent configuration.
10
26
  *
11
27
  * @example
12
28
  * ```typescript
13
- * // Create the instruction with minimal parameters - just borrower and contract
14
- * const ix = await cancelRental({
15
- * borrower: wallet,
16
- * contract: contractAddress
29
+ * // Works with any library - just use strings for addresses!
30
+ * const instruction = await cancelRental({
31
+ * borrower: wallet, // Can be signer object or string
32
+ * contract: "ContractAddr..." // String address
17
33
  * });
18
34
  *
19
- * // Add to transaction and sign
20
- * const tx = new Transaction().add(ix);
21
- * await sendAndConfirmTransaction(connection, tx, [wallet]);
35
+ * // Use mainnet configuration
36
+ * const instruction = await cancelRental(params).set({ programs: 'mainnet' });
37
+ *
38
+ * // Override specific constants
39
+ * const instruction = await cancelRental(params).set({
40
+ * programs: 'mainnet',
41
+ * sageProgramAddress: 'custom...'
42
+ * });
43
+ *
44
+ * // Use the instruction with your preferred Solana library
45
+ * // instruction is compatible with both @solana/kit and @solana/web3.js
22
46
  * ```
23
47
  *
24
48
  * @param params The simplified parameters for canceling a rental
25
- * @returns A promise that resolves to the instruction to cancel a rental
49
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
26
50
  */
27
- async function _cancelRental(params, network) {
28
- const { borrower, contract, } = params;
29
- // Let codama derive all the optional accounts
30
- const input = {
31
- borrower,
32
- contract,
33
- };
34
- // Dynamically import network-specific codama functions
35
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions');
36
- const { getCancelRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
37
- return getCancelRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
38
- }
39
51
  function cancelRental(params) {
40
- return (0, network_1.createNetworkSelector)((network) => _cancelRental(params, network));
52
+ return (0, config_1.createConfigSelector)((config) => _cancelRental(params, config));
41
53
  }
42
54
  function getCancelRentalInstructionAsync(input, options) {
43
- return (0, network_1.createNetworkSelector)(async (network) => {
44
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions', network);
45
- return codamaModule.getCancelRentalInstructionAsync(input, options);
55
+ return (0, config_1.createConfigSelector)(async (config) => {
56
+ const instructionsModule = (0, config_1.getModule)('instructions');
57
+ return instructionsModule.getCancelRentalInstructionAsync(input, options);
46
58
  });
47
59
  }
48
60
  //# sourceMappingURL=cancel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":";;AAuEA,oCAIC;AAED,0EAKC;AA7ED,wCAA+G;AAoB/G;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,KAAK,UAAU,aAAa,CAC1B,MAA0B,EAC1B,OAAiB;IAEjB,MAAM,EACJ,QAAQ,EACR,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,8CAA8C;IAC9C,MAAM,KAAK,GAAG;QACZ,QAAQ;QACR,QAAQ;KACT,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,CAAC,CAAC;IAClE,MAAM,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAEhF,OAAO,+BAA+B,CACpC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAC1B,MAA0B;IAE1B,OAAO,IAAA,+BAAqB,EAAC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAgB,+BAA+B,CAAC,KAAU,EAAE,OAAa;IACvE,OAAO,IAAA,+BAAqB,EAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC7C,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC3E,OAAO,YAAY,CAAC,+BAA+B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"cancel.js","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":";;AAgFA,oCAIC;AAED,0EAKC;AA3FD,4CAA2G;AAC3G,kDAA+C;AAsB/C;;GAEG;AACH,KAAK,UAAU,aAAa,CAC1B,MAA0B,EAC1B,MAAsB;IAEtB,MAAM,EACJ,QAAQ,EACR,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,8CAA8C;IAC9C,MAAM,KAAK,GAAG;QACZ,QAAQ,EAAqB,gCAAgC;QAC7D,QAAQ,EAAE,IAAA,qBAAS,EAAC,QAAQ,CAAC,EAAE,gBAAgB;KAChD,CAAC;IAEF,gEAAgE;IAChE,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,EAAE,+BAA+B,EAAE,GAAG,kBAAkB,CAAC;IAC/D,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,CAAC;IAEjD,OAAO,+BAA+B,CACpC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,YAAY,CAC1B,MAA0B;IAE1B,OAAO,IAAA,6BAAoB,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAgB,+BAA+B,CAAC,KAAU,EAAE,OAAa;IACvE,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;QACrD,OAAO,kBAAkB,CAAC,+BAA+B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -2,49 +2,61 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.closeRental = closeRental;
4
4
  exports.getCloseRentalInstructionAsync = getCloseRentalInstructionAsync;
5
- const network_1 = require("../network");
5
+ const config_1 = require("../utils/config");
6
+ const constants_1 = require("../utils/constants");
6
7
  /**
7
- * Asynchronously creates an instruction to close a rental with minimal required parameters.
8
- * This is called by an owner to close a rental that was previously accepted by a borrower.
9
- * Derives rentalState, rentalThread, rentalTokenAccount and rentalAuthority automatically if not provided.
8
+ * Internal function to close a rental instruction with configuration options
9
+ */
10
+ async function _closeRental(params, config) {
11
+ const { borrower, ownerTokenAccount, contract, } = params;
12
+ // Let codama derive the optional accounts
13
+ const input = {
14
+ borrower: (0, constants_1.toAddress)(borrower), // Ensure string
15
+ ownerTokenAccount: (0, constants_1.toAddress)(ownerTokenAccount), // Ensure string
16
+ contract: (0, constants_1.toAddress)(contract), // Ensure string
17
+ };
18
+ // Get network-specific codama functions from centralized config
19
+ const instructionsModule = (0, config_1.getModule)('instructions');
20
+ const programsModule = (0, config_1.getModule)('programs');
21
+ const { getCloseRentalInstructionAsync } = instructionsModule;
22
+ const { SRSLY_PROGRAM_ADDRESS } = programsModule;
23
+ return getCloseRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
24
+ }
25
+ /**
26
+ * Creates an instruction to close a rental with fluent configuration.
10
27
  *
11
28
  * @example
12
29
  * ```typescript
13
- * // Create the instruction with minimal parameters
14
- * const ix = await closeRental({
15
- * borrower: borrowerAddress,
16
- * ownerTokenAccount: ownerTokenAccountAddress,
17
- * contract: contractAddress
30
+ * // Works with any library - just use strings for addresses!
31
+ * const instruction = await closeRental({
32
+ * borrower: "BorrowerAddr...", // String address
33
+ * ownerTokenAccount: "TokenAcct...", // String address
34
+ * contract: "ContractAddr..." // String address
18
35
  * });
19
36
  *
20
- * // Add to transaction and sign
21
- * const tx = new Transaction().add(ix);
22
- * await sendAndConfirmTransaction(connection, tx, [owner]);
37
+ * // Use mainnet configuration
38
+ * const instruction = await closeRental(params).set({ programs: 'mainnet' });
39
+ *
40
+ * // Override specific constants
41
+ * const instruction = await closeRental(params).set({
42
+ * programs: 'mainnet',
43
+ * sageProgramAddress: 'custom...'
44
+ * });
45
+ *
46
+ * // Use the instruction with your preferred Solana library
47
+ * // instruction is compatible with both @solana/kit and @solana/web3.js
23
48
  * ```
24
49
  *
25
50
  * @param params The simplified parameters for closing a rental
26
- * @returns A promise that resolves to the instruction to close a rental
51
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
27
52
  */
28
- async function _closeRental(params, network) {
29
- const { borrower, ownerTokenAccount, contract, } = params;
30
- // Let codama derive the optional accounts
31
- const input = {
32
- borrower,
33
- ownerTokenAccount,
34
- contract,
35
- };
36
- // Dynamically import network-specific codama functions
37
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions');
38
- const { getCloseRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
39
- return getCloseRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
40
- }
41
53
  function closeRental(params) {
42
- return (0, network_1.createNetworkSelector)((network) => _closeRental(params, network));
54
+ return (0, config_1.createConfigSelector)((config) => _closeRental(params, config));
43
55
  }
44
56
  function getCloseRentalInstructionAsync(input, options) {
45
- return (0, network_1.createNetworkSelector)(async (network) => {
46
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions', network);
47
- return codamaModule.getCloseRentalInstructionAsync(input, options);
57
+ return (0, config_1.createConfigSelector)(async (config) => {
58
+ const instructionsModule = (0, config_1.getModule)('instructions');
59
+ return instructionsModule.getCloseRentalInstructionAsync(input, options);
48
60
  });
49
61
  }
50
62
  //# sourceMappingURL=close.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/rental/close.ts"],"names":[],"mappings":";;AA8EA,kCAIC;AAED,wEAKC;AArFD,wCAA+G;AAyB/G;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,KAAK,UAAU,YAAY,CACzB,MAAyB,EACzB,OAAiB;IAEjB,MAAM,EACJ,QAAQ,EACR,iBAAiB,EACjB,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,0CAA0C;IAC1C,MAAM,KAAK,GAAG;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,CAAC,CAAC;IAClE,MAAM,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAE/E,OAAO,8BAA8B,CACnC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED,SAAgB,WAAW,CACzB,MAAyB;IAEzB,OAAO,IAAA,+BAAqB,EAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,SAAgB,8BAA8B,CAAC,KAAU,EAAE,OAAa;IACtE,OAAO,IAAA,+BAAqB,EAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC7C,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC3E,OAAO,YAAY,CAAC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"close.js","sourceRoot":"","sources":["../../../src/rental/close.ts"],"names":[],"mappings":";;AAuFA,kCAIC;AAED,wEAKC;AAlGD,4CAA2G;AAC3G,kDAA+C;AA0B/C;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,MAAyB,EACzB,MAAsB;IAEtB,MAAM,EACJ,QAAQ,EACR,iBAAiB,EACjB,QAAQ,GACT,GAAG,MAAM,CAAC;IAEX,0CAA0C;IAC1C,MAAM,KAAK,GAAG;QACZ,QAAQ,EAAE,IAAA,qBAAS,EAAC,QAAQ,CAAC,EAAgB,gBAAgB;QAC7D,iBAAiB,EAAE,IAAA,qBAAS,EAAC,iBAAiB,CAAC,EAAE,gBAAgB;QACjE,QAAQ,EAAE,IAAA,qBAAS,EAAC,QAAQ,CAAC,EAAe,gBAAgB;KAC7D,CAAC;IAEF,gEAAgE;IAChE,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,EAAE,8BAA8B,EAAE,GAAG,kBAAkB,CAAC;IAC9D,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,CAAC;IAEjD,OAAO,8BAA8B,CACnC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,WAAW,CACzB,MAAyB;IAEzB,OAAO,IAAA,6BAAoB,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAgB,8BAA8B,CAAC,KAAU,EAAE,OAAa;IACtE,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;QACrD,OAAO,kBAAkB,CAAC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -2,66 +2,73 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resetRental = resetRental;
4
4
  exports.getResetRentalInstructionAsync = getResetRentalInstructionAsync;
5
- const network_1 = require("../network");
5
+ const config_1 = require("../utils/config");
6
+ const constants_1 = require("../utils/constants");
6
7
  const utils_1 = require("../utils");
7
8
  /**
8
- * Asynchronously creates an instruction to reset a rental with minimal required parameters.
9
- * This is used to reset a fleet's rental state after a rental has ended.
10
- * Can derive starbase, starbasePlayer, and rentalAuthority automatically.
9
+ * Internal function to reset a rental instruction with configuration options
10
+ */
11
+ async function _resetRental(params, config) {
12
+ const { fleet, contract, rentalState, gameId, faction, ownerProfile, } = params;
13
+ // Get the actual game ID to use (param override, config override, or network default)
14
+ const actualGameId = gameId ? (0, constants_1.toAddress)(gameId) : await (0, constants_1.getSageGameId)(config);
15
+ // Derive the three accounts we need
16
+ const { starbase, starbasePlayer } = await (0, utils_1.deriveGameAccounts)((0, constants_1.toAddress)(ownerProfile), faction, actualGameId, 0, // starbaseSeqId
17
+ config);
18
+ // Get network-specific codama functions from centralized config
19
+ const instructionsModule = (0, config_1.getModule)('instructions');
20
+ const programsModule = (0, config_1.getModule)('programs');
21
+ const { getResetRentalInstructionAsync } = instructionsModule;
22
+ const { SRSLY_PROGRAM_ADDRESS } = programsModule;
23
+ // Let codama derive the rest (rentalAuthority)
24
+ const input = {
25
+ fleet: (0, constants_1.toAddress)(fleet), // Ensure string
26
+ contract: (0, constants_1.toAddress)(contract), // Ensure string
27
+ rentalState: (0, constants_1.toAddress)(rentalState), // Ensure string
28
+ gameId: actualGameId, // Already string
29
+ starbase, // Already string from deriveGameAccounts
30
+ starbasePlayer, // Already string from deriveGameAccounts
31
+ };
32
+ return getResetRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
33
+ }
34
+ /**
35
+ * Creates an instruction to reset a rental with fluent configuration.
11
36
  *
12
37
  * @example
13
38
  * ```typescript
14
- * // Create the instruction with minimum required parameters and faction
15
- * const ix = await resetRental({
16
- * fleet: fleetAddress,
17
- * contract: contractAddress,
18
- * rentalState: rentalStateAddress,
39
+ * // Works with any library - just use strings for addresses!
40
+ * const instruction = await resetRental({
41
+ * fleet: "FleetAddress123...", // String address
42
+ * contract: "ContractAddr...", // String address
43
+ * rentalState: "RentalStateAddr...", // String address
19
44
  * faction: 'mud',
20
- * ownerProfile: ownerProfileAddress
45
+ * ownerProfile: "OwnerProfileAddr..." // String address
21
46
  * });
22
47
  *
23
- * // Or with explicit starbase and starbasePlayer
24
- * const ix = await resetRental({
25
- * fleet: fleetAddress,
26
- * contract: contractAddress,
27
- * rentalState: rentalStateAddress,
28
- * starbase: starbaseAddress,
29
- * starbasePlayer: starbasePlayerAddress
48
+ * // Use mainnet configuration
49
+ * const instruction = await resetRental(params).set({ programs: 'mainnet' });
50
+ *
51
+ * // Override specific constants
52
+ * const instruction = await resetRental(params).set({
53
+ * programs: 'mainnet',
54
+ * gameId: 'custom-game-id...',
55
+ * sageProgramAddress: 'custom...'
30
56
  * });
31
57
  *
32
- * // Add to transaction and sign
33
- * const tx = new Transaction().add(ix);
34
- * await sendAndConfirmTransaction(connection, tx, [owner]);
58
+ * // Use the instruction with your preferred Solana library
59
+ * // instruction is compatible with both @solana/kit and @solana/web3.js
35
60
  * ```
36
61
  *
37
62
  * @param params The simplified parameters for resetting a rental
38
- * @returns A promise that resolves to the instruction to reset a rental
63
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
39
64
  */
40
- async function _resetRental(params, network) {
41
- const { fleet, contract, rentalState, gameId = utils_1.DEFAULT_GAME_ID, faction, ownerProfile, } = params;
42
- // Derive the three accounts we need
43
- const { starbase, starbasePlayer } = await (0, utils_1.deriveGameAccounts)(ownerProfile, faction, gameId);
44
- // Dynamically import network-specific codama functions
45
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions');
46
- const { getResetRentalInstructionAsync, SRSLY_PROGRAM_ADDRESS } = codamaModule;
47
- // Let codama derive the rest (rentalAuthority)
48
- const input = {
49
- fleet,
50
- contract,
51
- rentalState,
52
- gameId,
53
- starbase,
54
- starbasePlayer,
55
- };
56
- return getResetRentalInstructionAsync(input, { programAddress: SRSLY_PROGRAM_ADDRESS });
57
- }
58
65
  function resetRental(params) {
59
- return (0, network_1.createNetworkSelector)((network) => _resetRental(params, network));
66
+ return (0, config_1.createConfigSelector)((config) => _resetRental(params, config));
60
67
  }
61
68
  function getResetRentalInstructionAsync(input, options) {
62
- return (0, network_1.createNetworkSelector)(async (network) => {
63
- const codamaModule = await (0, network_1.getCachedNetworkModule)('instructions', network);
64
- return codamaModule.getResetRentalInstructionAsync(input, options);
69
+ return (0, config_1.createConfigSelector)(async (config) => {
70
+ const instructionsModule = (0, config_1.getModule)('instructions');
71
+ return instructionsModule.getResetRentalInstructionAsync(input, options);
65
72
  });
66
73
  }
67
74
  //# sourceMappingURL=reset.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/rental/reset.ts"],"names":[],"mappings":";;AAiIA,kCAIC;AAED,wEAKC;AAxID,wCAA+G;AAK/G,oCAGkB;AAyClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,KAAK,UAAU,YAAY,CACzB,MAAyB,EACzB,OAAiB;IAEjB,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,GAAG,uBAAkC,EAC3C,OAAO,EACP,YAAY,GACb,GAAG,MAAM,CAAC;IAEX,oCAAoC;IACpC,MAAM,EACJ,QAAQ,EACR,cAAc,EACf,GAAG,MAAM,IAAA,0BAAkB,EAC1B,YAAY,EACZ,OAAO,EACP,MAAM,CACP,CAAC;IAEF,uDAAuD;IACvD,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,CAAC,CAAC;IAClE,MAAM,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,GAAG,YAAY,CAAC;IAE/E,+CAA+C;IAC/C,MAAM,KAAK,GAAG;QACZ,KAAK;QACL,QAAQ;QACR,WAAW;QACX,MAAM;QACN,QAAQ;QACR,cAAc;KACf,CAAC;IAEF,OAAO,8BAA8B,CACnC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED,SAAgB,WAAW,CACzB,MAAyB;IAEzB,OAAO,IAAA,+BAAqB,EAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,SAAgB,8BAA8B,CAAC,KAAU,EAAE,OAAa;IACtE,OAAO,IAAA,+BAAqB,EAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QAC7C,MAAM,YAAY,GAAG,MAAM,IAAA,gCAAsB,EAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC3E,OAAO,YAAY,CAAC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/rental/reset.ts"],"names":[],"mappings":";;AAmIA,kCAIC;AAED,wEAKC;AA9ID,4CAA2G;AAC3G,kDAA8D;AAC9D,oCAA8C;AA6C9C;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,MAAyB,EACzB,MAAsB;IAEtB,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,EACN,OAAO,EACP,YAAY,GACb,GAAG,MAAM,CAAC;IAEX,sFAAsF;IACtF,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,IAAA,yBAAa,EAAC,MAAM,CAAC,CAAC;IAE9E,oCAAoC;IACpC,MAAM,EACJ,QAAQ,EACR,cAAc,EACf,GAAG,MAAM,IAAA,0BAAkB,EAC1B,IAAA,qBAAS,EAAC,YAAY,CAAC,EACvB,OAAO,EACP,YAAY,EACZ,CAAC,EAAE,gBAAgB;IACnB,MAAM,CACP,CAAC;IAEF,gEAAgE;IAChE,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,IAAA,kBAAS,EAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,EAAE,8BAA8B,EAAE,GAAG,kBAAkB,CAAC;IAC9D,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,CAAC;IAEjD,+CAA+C;IAC/C,MAAM,KAAK,GAAG;QACZ,KAAK,EAAE,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAW,gBAAgB;QAClD,QAAQ,EAAE,IAAA,qBAAS,EAAC,QAAQ,CAAC,EAAK,gBAAgB;QAClD,WAAW,EAAE,IAAA,qBAAS,EAAC,WAAW,CAAC,EAAE,gBAAgB;QACrD,MAAM,EAAE,YAAY,EAAa,iBAAiB;QAClD,QAAQ,EAAyB,yCAAyC;QAC1E,cAAc,EAAmB,yCAAyC;KAC3E,CAAC;IAEF,OAAO,8BAA8B,CACnC,KAAK,EACL,EAAE,cAAc,EAAE,qBAAqB,EAAE,CAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,SAAgB,WAAW,CACzB,MAAyB;IAEzB,OAAO,IAAA,6BAAoB,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAgB,8BAA8B,CAAC,KAAU,EAAE,OAAa;IACtE,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,kBAAkB,GAAG,IAAA,kBAAS,EAAC,cAAc,CAAC,CAAC;QACrD,OAAO,kBAAkB,CAAC,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /**
3
+ * This code was AUTO-GENERATED from the Rust PaymentFrequency implementation.
4
+ * Please DO NOT EDIT THIS FILE manually - it will be overwritten.
5
+ *
6
+ * Source: programs/srsly/src/utils.rs
7
+ * Generated by: generate.mjs
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.PAYMENT_FREQUENCY_CONSTANTS = exports.PAYMENT_FREQUENCY_MAP = exports.VALID_PAYMENT_FREQUENCIES = void 0;
11
+ exports.getPaymentFrequencyFromString = getPaymentFrequencyFromString;
12
+ exports.isValidPaymentFrequency = isValidPaymentFrequency;
13
+ const paymentFrequency_1 = require("../codama/types/paymentFrequency");
14
+ /**
15
+ * Array of all valid payment frequency strings
16
+ * Auto-generated from Rust PaymentFrequency enum
17
+ */
18
+ exports.VALID_PAYMENT_FREQUENCIES = [
19
+ 'hourly',
20
+ 'daily',
21
+ 'weekly',
22
+ 'monthly'
23
+ ];
24
+ /**
25
+ * Mapping from user-friendly strings to PaymentFrequency enum values
26
+ * Auto-generated from Rust PaymentFrequency enum
27
+ */
28
+ exports.PAYMENT_FREQUENCY_MAP = {
29
+ 'hourly': paymentFrequency_1.PaymentFrequency.Hourly,
30
+ 'daily': paymentFrequency_1.PaymentFrequency.Daily,
31
+ 'weekly': paymentFrequency_1.PaymentFrequency.Weekly,
32
+ 'monthly': paymentFrequency_1.PaymentFrequency.Monthly
33
+ };
34
+ /**
35
+ * Constants extracted from Rust constants.rs
36
+ * Auto-synced with Rust implementation
37
+ */
38
+ exports.PAYMENT_FREQUENCY_CONSTANTS = {
39
+ SECONDS_PER_DECASECOND: 10,
40
+ SECONDS_PER_MINUTE: 60,
41
+ SECONDS_PER_HOUR: 3600,
42
+ SECONDS_PER_DAY: 86400,
43
+ SECONDS_PER_WEEK: 604800,
44
+ SECONDS_PER_MONTH: 2678400
45
+ };
46
+ /**
47
+ * Get PaymentFrequency enum value from user-friendly string
48
+ */
49
+ function getPaymentFrequencyFromString(frequencyString) {
50
+ return exports.PAYMENT_FREQUENCY_MAP[frequencyString];
51
+ }
52
+ /**
53
+ * Check if a string is a valid payment frequency
54
+ */
55
+ function isValidPaymentFrequency(value) {
56
+ return exports.VALID_PAYMENT_FREQUENCIES.includes(value);
57
+ }
58
+ //# sourceMappingURL=paymentFrequency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paymentFrequency.js","sourceRoot":"","sources":["../../../src/types/paymentFrequency.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAgDH,sEAEC;AAKD,0DAEC;AAvDD,uEAAoE;AAQpE;;;GAGG;AACU,QAAA,yBAAyB,GAAsC;IAC1E,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,SAAS;CACD,CAAC;AAEX;;;GAGG;AACU,QAAA,qBAAqB,GAAqD;IACrF,QAAQ,EAAE,mCAAgB,CAAC,MAAM;IACjC,OAAO,EAAE,mCAAgB,CAAC,KAAK;IAC/B,QAAQ,EAAE,mCAAgB,CAAC,MAAM;IACjC,SAAS,EAAE,mCAAgB,CAAC,OAAO;CAC3B,CAAC;AAEX;;;GAGG;AACU,QAAA,2BAA2B,GAAG;IACzC,sBAAsB,EAAE,EAAE;IAC1B,kBAAkB,EAAE,EAAE;IACtB,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,KAAK;IACtB,gBAAgB,EAAE,MAAM;IACxB,iBAAiB,EAAE,OAAO;CAClB,CAAC;AAEX;;GAEG;AACH,SAAgB,6BAA6B,CAAC,eAAuC;IACnF,OAAO,6BAAqB,CAAC,eAAe,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,KAAa;IACnD,OAAO,iCAAyB,CAAC,QAAQ,CAAC,KAA+B,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ /**
3
+ * Network configuration for the SRSLY SDK
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.resolveProgramAddresses = resolveProgramAddresses;
40
+ exports.setConfig = setConfig;
41
+ exports.getConfig = getConfig;
42
+ exports.clearConfig = clearConfig;
43
+ exports.getEffectiveConfig = getEffectiveConfig;
44
+ exports.getModule = getModule;
45
+ exports.getCachedNetworkModule = getCachedNetworkModule;
46
+ exports.createConfigSelector = createConfigSelector;
47
+ // Single codama output - network agnostic
48
+ const instructions = __importStar(require("../codama/instructions"));
49
+ const programs = __importStar(require("../codama/programs"));
50
+ const PROGRAM_SETS = {
51
+ mainnet: {
52
+ SAGE_PROGRAM_ADDRESS: 'SAGE2HAwep459SNq61LHvjxPk4pLPEJLoMETef7f7EE',
53
+ PROFILE_FACTION_PROGRAM_ADDRESS: 'pFACSRuobDmvfMKq1bAzwj27t6d2GJhSCHb1VcfnRmq',
54
+ SAGE_GAME_ID: 'GAMEzqJehF8yAnKiTARUuhZMvLvkZVAsCVri5vSfemLr',
55
+ ATLAS_MINT: 'ATLASXmbPQxBUYbxPsV97usA3fPQYEqzQBUHgiFCUsXx',
56
+ RPC_URL: 'https://api.mainnet-beta.solana.com',
57
+ },
58
+ atlasnet: {
59
+ SAGE_PROGRAM_ADDRESS: 'SAgeTraQfBMdvGVDJYoEvjnbq5szW7RJPi6obDTDQUF',
60
+ PROFILE_FACTION_PROGRAM_ADDRESS: 'PprofUW1pURCnMW2si88GWPXEEK3Bvh9Tksy8WtnoYJ',
61
+ SAGE_GAME_ID: 'GAMEC7U7cqmFFaRow33j1LwuV8u4YhAS1mJ5Dqjnar2k',
62
+ ATLAS_MINT: 'ATLA5nAaVRfH6BNwD4SAyWp96EdQaAh6bBmGeTx956sx',
63
+ },
64
+ holosim: {
65
+ SAGE_PROGRAM_ADDRESS: 'SAgeTraQfBMdvGVDJYoEvjnbq5szW7RJPi6obDTDQUF',
66
+ PROFILE_FACTION_PROGRAM_ADDRESS: 'PprofUW1pURCnMW2si88GWPXEEK3Bvh9Tksy8WtnoYJ',
67
+ SAGE_GAME_ID: 'GAMEC7U7cqmFFaRow33j1LwuV8u4YhAS1mJ5Dqjnar2k',
68
+ ATLAS_MINT: 'ATLA5nAaVRfH6BNwD4SAyWp96EdQaAh6bBmGeTx956sx',
69
+ },
70
+ };
71
+ // Default program set when none is specified
72
+ const DEFAULT_PROGRAM_SET = 'atlasnet';
73
+ // Global configuration state
74
+ let globalConfig = {};
75
+ /**
76
+ * Resolve program addresses based on configuration
77
+ * @param config Effective configuration options
78
+ * @returns Resolved program addresses
79
+ */
80
+ function resolveProgramAddresses(config) {
81
+ // Determine which program set to use
82
+ const programSet = config.programs || DEFAULT_PROGRAM_SET;
83
+ // Get program addresses from program sets
84
+ const programConfig = PROGRAM_SETS[programSet];
85
+ if (!programConfig) {
86
+ throw new Error(`Unknown program set: ${programSet}. Available: ${Object.keys(PROGRAM_SETS).join(', ')}`);
87
+ }
88
+ return {
89
+ srslyProgramAddress: config.srslyProgramAddress || 'SRSLY1fq9TJqCk1gNSE7VZL2bztvTn9wm4VR8u8jMKT',
90
+ sageProgramAddress: programConfig.SAGE_PROGRAM_ADDRESS, // Fixed - cannot be overridden
91
+ profileFactionProgramAddress: config.profileFactionProgramAddress || programConfig.PROFILE_FACTION_PROGRAM_ADDRESS,
92
+ gameId: config.gameId || programConfig.SAGE_GAME_ID,
93
+ atlasMint: config.atlasMint || programConfig.ATLAS_MINT,
94
+ };
95
+ }
96
+ /**
97
+ * Set global configuration options that will be used as defaults for all SDK operations
98
+ * @param config Configuration options to set globally
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * // Use default atlasnet program addresses
103
+ * setConfig({ programs: 'atlasnet' });
104
+ *
105
+ * // Use holosim program addresses
106
+ * setConfig({ programs: 'holosim' });
107
+ *
108
+ * // Use holosim program addresses with custom game ID
109
+ * setConfig({
110
+ * programs: 'holosim',
111
+ * gameId: 'custom-game-id...'
112
+ * });
113
+ *
114
+ * // Can still override per instruction
115
+ * await createContract(params).set({ srslyProgramAddress: 'custom...' });
116
+ * ```
117
+ */
118
+ function setConfig(config) {
119
+ globalConfig = { ...config };
120
+ }
121
+ /**
122
+ * Get the current global configuration
123
+ * @returns Current global configuration options
124
+ */
125
+ function getConfig() {
126
+ return { ...globalConfig };
127
+ }
128
+ /**
129
+ * Clear global configuration (resets to atlasnet program set defaults)
130
+ */
131
+ function clearConfig() {
132
+ globalConfig = {};
133
+ }
134
+ /**
135
+ * Get the effective configuration by merging global config with provided overrides
136
+ * @param overrides Optional configuration overrides
137
+ * @returns Merged configuration with global defaults and any overrides
138
+ */
139
+ function getEffectiveConfig(overrides) {
140
+ return { ...globalConfig, ...overrides };
141
+ }
142
+ /**
143
+ * Get the single codama module (network agnostic)
144
+ * @param modulePath The module type ('instructions' or 'programs')
145
+ * @returns The codama module
146
+ */
147
+ function getModule(modulePath) {
148
+ return modulePath === 'instructions' ? instructions : programs;
149
+ }
150
+ /**
151
+ * @deprecated Use getModule instead. This function is kept for backward compatibility.
152
+ * Get codama modules (network agnostic)
153
+ */
154
+ async function getCachedNetworkModule(modulePath) {
155
+ if (modulePath !== 'instructions' && modulePath !== 'programs') {
156
+ throw new Error(`Unsupported module path: ${modulePath}. Use 'instructions' or 'programs'.`);
157
+ }
158
+ return getModule(modulePath);
159
+ }
160
+ /**
161
+ * Create a chainable config selector with existing configuration state.
162
+ * This enables config chaining by merging new options with existing ones.
163
+ *
164
+ * Used internally when .set() is called on an existing ConfigSelector.
165
+ *
166
+ * @param executeFn - The function to execute with merged configuration
167
+ * @param existingConfig - The current configuration state to merge with
168
+ * @returns A ConfigSelector that can chain additional .set() calls
169
+ *
170
+ * @example
171
+ * // This creates a chainable selector that merges { programs: 'atlasnet' }
172
+ * // with any additional config options passed to subsequent .set() calls
173
+ * createChainableConfigSelector(executeFn, { programs: 'atlasnet' })
174
+ */
175
+ function createChainableConfigSelector(executeFn, existingConfig) {
176
+ const selector = {
177
+ set: (additionalOptions) => createChainableConfigSelector(executeFn, { ...existingConfig, ...additionalOptions }),
178
+ build: () => executeFn(existingConfig),
179
+ // Implement PromiseLike to allow direct awaiting
180
+ then(onfulfilled, onrejected) {
181
+ return executeFn(existingConfig).then(onfulfilled, onrejected);
182
+ }
183
+ };
184
+ return selector;
185
+ }
186
+ /**
187
+ * Create the initial fluent config selector for a function.
188
+ * This is the main entry point for the fluent configuration API.
189
+ *
190
+ * The returned selector can be:
191
+ * - Awaited directly (uses global config + atlasnet fallback)
192
+ * - Configured with .set() to override network/constants
193
+ * - Chained with multiple .set() calls
194
+ *
195
+ * @param executeFn - The function to execute with optional configuration
196
+ * @returns A ConfigSelector that supports fluent configuration
197
+ *
198
+ * @example
199
+ * // Usage patterns:
200
+ * setConfig({ programs: 'mainnet' });
201
+ * await createConfigSelector(executeFn) // Direct await (uses global config)
202
+ * await createConfigSelector(executeFn).set({...}) // Override global config
203
+ * await createConfigSelector(executeFn).set({...}).set({...}) // Chained configs
204
+ */
205
+ function createConfigSelector(executeFn) {
206
+ const selector = {
207
+ set: (options) => createChainableConfigSelector(executeFn, getEffectiveConfig(options)),
208
+ build: () => executeFn(getEffectiveConfig()),
209
+ // Implement PromiseLike to allow direct awaiting
210
+ then(onfulfilled, onrejected) {
211
+ return executeFn(getEffectiveConfig()).then(onfulfilled, onrejected);
212
+ }
213
+ };
214
+ return selector;
215
+ }
216
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"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"}