@aephia/atlas-kit 0.6.0-next.14 → 0.6.0-next.140

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 (817) hide show
  1. package/README.md +3 -1
  2. package/dist/cargo/actions/deposit.d.ts +5 -2
  3. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  4. package/dist/cargo/actions/deposit.js +60 -129
  5. package/dist/cargo/actions/deposit.js.map +1 -1
  6. package/dist/cargo/actions/index.d.ts +12 -6
  7. package/dist/cargo/actions/index.d.ts.map +1 -1
  8. package/dist/cargo/actions/index.js +97 -94
  9. package/dist/cargo/actions/index.js.map +1 -1
  10. package/dist/cargo/actions/wallet-context.d.ts +52 -3
  11. package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
  12. package/dist/cargo/actions/wallet-context.js +118 -7
  13. package/dist/cargo/actions/wallet-context.js.map +1 -1
  14. package/dist/cargo/actions/wallet-token.d.ts +1 -6
  15. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  16. package/dist/cargo/actions/wallet-token.js +0 -45
  17. package/dist/cargo/actions/wallet-token.js.map +1 -1
  18. package/dist/cargo/actions/withdrawal.d.ts +1 -1
  19. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  20. package/dist/cargo/actions/withdrawal.js +39 -168
  21. package/dist/cargo/actions/withdrawal.js.map +1 -1
  22. package/dist/cargo/index.d.ts.map +1 -1
  23. package/dist/cargo/index.js +2 -10
  24. package/dist/cargo/index.js.map +1 -1
  25. package/dist/claim-stakes/actions/index.d.ts +69 -14
  26. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  27. package/dist/claim-stakes/actions/index.js +613 -697
  28. package/dist/claim-stakes/actions/index.js.map +1 -1
  29. package/dist/claim-stakes/index.d.ts +21 -6
  30. package/dist/claim-stakes/index.d.ts.map +1 -1
  31. package/dist/claim-stakes/index.js +33 -19
  32. package/dist/claim-stakes/index.js.map +1 -1
  33. package/dist/client/context.d.ts.map +1 -1
  34. package/dist/client/context.js +1 -1
  35. package/dist/client/context.js.map +1 -1
  36. package/dist/client/contracts.d.ts +16 -6
  37. package/dist/client/contracts.d.ts.map +1 -1
  38. package/dist/client/errors.d.ts +2 -2
  39. package/dist/client/errors.d.ts.map +1 -1
  40. package/dist/client/errors.js.map +1 -1
  41. package/dist/client/index.d.ts +35 -0
  42. package/dist/client/index.d.ts.map +1 -1
  43. package/dist/client/index.js +35 -0
  44. package/dist/client/index.js.map +1 -1
  45. package/dist/client/rpc-subscription-provider.d.ts +35 -0
  46. package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
  47. package/dist/client/rpc-subscription-provider.js +190 -0
  48. package/dist/client/rpc-subscription-provider.js.map +1 -0
  49. package/dist/combat/actions/index.d.ts +24 -12
  50. package/dist/combat/actions/index.d.ts.map +1 -1
  51. package/dist/combat/actions/index.js +286 -280
  52. package/dist/combat/actions/index.js.map +1 -1
  53. package/dist/combat/index.d.ts +25 -8
  54. package/dist/combat/index.d.ts.map +1 -1
  55. package/dist/combat/index.js +21 -18
  56. package/dist/combat/index.js.map +1 -1
  57. package/dist/crafting/actions/index.d.ts +28 -18
  58. package/dist/crafting/actions/index.d.ts.map +1 -1
  59. package/dist/crafting/actions/index.js +297 -352
  60. package/dist/crafting/actions/index.js.map +1 -1
  61. package/dist/crafting/index.d.ts +33 -3
  62. package/dist/crafting/index.d.ts.map +1 -1
  63. package/dist/crafting/index.js +49 -28
  64. package/dist/crafting/index.js.map +1 -1
  65. package/dist/factions/actions/index.d.ts +2 -1
  66. package/dist/factions/actions/index.d.ts.map +1 -1
  67. package/dist/factions/actions/index.js +6 -4
  68. package/dist/factions/actions/index.js.map +1 -1
  69. package/dist/factions/index.d.ts +6 -1
  70. package/dist/factions/index.d.ts.map +1 -1
  71. package/dist/factions/index.js +16 -18
  72. package/dist/factions/index.js.map +1 -1
  73. package/dist/factions/profile-faction.d.ts +20 -8
  74. package/dist/factions/profile-faction.d.ts.map +1 -1
  75. package/dist/factions/profile-faction.js +20 -8
  76. package/dist/factions/profile-faction.js.map +1 -1
  77. package/dist/fleets/actions/add-ship.d.ts +46 -0
  78. package/dist/fleets/actions/add-ship.d.ts.map +1 -0
  79. package/dist/fleets/actions/add-ship.js +131 -0
  80. package/dist/fleets/actions/add-ship.js.map +1 -0
  81. package/dist/fleets/actions/create-fleet.d.ts +36 -0
  82. package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
  83. package/dist/fleets/actions/create-fleet.js +108 -0
  84. package/dist/fleets/actions/create-fleet.js.map +1 -0
  85. package/dist/fleets/actions/crew-transfer.d.ts +42 -0
  86. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
  87. package/dist/fleets/actions/crew-transfer.js +95 -0
  88. package/dist/fleets/actions/crew-transfer.js.map +1 -0
  89. package/dist/fleets/actions/dock-bounds.d.ts +38 -0
  90. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
  91. package/dist/fleets/actions/dock-bounds.js +46 -0
  92. package/dist/fleets/actions/dock-bounds.js.map +1 -0
  93. package/dist/fleets/actions/index.d.ts +81 -25
  94. package/dist/fleets/actions/index.d.ts.map +1 -1
  95. package/dist/fleets/actions/index.js +483 -353
  96. package/dist/fleets/actions/index.js.map +1 -1
  97. package/dist/fleets/actions/respawn.d.ts +38 -0
  98. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  99. package/dist/fleets/actions/respawn.js +93 -0
  100. package/dist/fleets/actions/respawn.js.map +1 -0
  101. package/dist/fleets/actions/ship-import.d.ts +1 -1
  102. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  103. package/dist/fleets/actions/ship-import.js +61 -90
  104. package/dist/fleets/actions/ship-import.js.map +1 -1
  105. package/dist/fleets/cooldown.d.ts +47 -0
  106. package/dist/fleets/cooldown.d.ts.map +1 -0
  107. package/dist/fleets/cooldown.js +48 -0
  108. package/dist/fleets/cooldown.js.map +1 -0
  109. package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
  110. package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
  111. package/dist/fleets/coordinate-warp-estimate.js +46 -0
  112. package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
  113. package/dist/fleets/index.d.ts +35 -0
  114. package/dist/fleets/index.d.ts.map +1 -1
  115. package/dist/fleets/index.js +54 -12
  116. package/dist/fleets/index.js.map +1 -1
  117. package/dist/fleets/movement-arithmetic.d.ts +21 -0
  118. package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
  119. package/dist/fleets/movement-arithmetic.js +45 -0
  120. package/dist/fleets/movement-arithmetic.js.map +1 -0
  121. package/dist/fleets/subwarp-estimate.d.ts +72 -0
  122. package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
  123. package/dist/fleets/subwarp-estimate.js +40 -0
  124. package/dist/fleets/subwarp-estimate.js.map +1 -0
  125. package/dist/fleets/travel-profile.d.ts +102 -0
  126. package/dist/fleets/travel-profile.d.ts.map +1 -0
  127. package/dist/fleets/travel-profile.js +120 -0
  128. package/dist/fleets/travel-profile.js.map +1 -0
  129. package/dist/fleets/warp-lane-estimate.d.ts +59 -0
  130. package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
  131. package/dist/fleets/warp-lane-estimate.js +36 -0
  132. package/dist/fleets/warp-lane-estimate.js.map +1 -0
  133. package/dist/fleets/warp-lane-policy.d.ts +74 -0
  134. package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
  135. package/dist/fleets/warp-lane-policy.js +103 -0
  136. package/dist/fleets/warp-lane-policy.js.map +1 -0
  137. package/dist/fleets/warp-lane-toll.d.ts +55 -0
  138. package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
  139. package/dist/fleets/warp-lane-toll.js +79 -0
  140. package/dist/fleets/warp-lane-toll.js.map +1 -0
  141. package/dist/identity/actions/create-profile.d.ts +1 -1
  142. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  143. package/dist/identity/actions/create-profile.js +2 -2
  144. package/dist/identity/actions/create-profile.js.map +1 -1
  145. package/dist/identity/actions/index.d.ts +5 -4
  146. package/dist/identity/actions/index.d.ts.map +1 -1
  147. package/dist/identity/actions/index.js +52 -29
  148. package/dist/identity/actions/index.js.map +1 -1
  149. package/dist/identity/actions/research-unlock.d.ts +61 -0
  150. package/dist/identity/actions/research-unlock.d.ts.map +1 -0
  151. package/dist/identity/actions/research-unlock.js +166 -0
  152. package/dist/identity/actions/research-unlock.js.map +1 -0
  153. package/dist/identity/index.d.ts +5 -2
  154. package/dist/identity/index.d.ts.map +1 -1
  155. package/dist/identity/index.js +6 -12
  156. package/dist/identity/index.js.map +1 -1
  157. package/dist/identity/research-state.d.ts +60 -0
  158. package/dist/identity/research-state.d.ts.map +1 -0
  159. package/dist/identity/research-state.js +68 -0
  160. package/dist/identity/research-state.js.map +1 -0
  161. package/dist/index.d.ts +26 -1
  162. package/dist/index.d.ts.map +1 -1
  163. package/dist/index.js +24 -7
  164. package/dist/index.js.map +1 -1
  165. package/dist/internal/c4/account-decoding.d.ts +49 -0
  166. package/dist/internal/c4/account-decoding.d.ts.map +1 -0
  167. package/dist/internal/c4/account-decoding.js +74 -0
  168. package/dist/internal/c4/account-decoding.js.map +1 -0
  169. package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
  170. package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
  171. package/dist/internal/c4/cargo-bytes-config.js +19 -0
  172. package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
  173. package/dist/internal/c4/cargo-instructions.d.ts +24 -0
  174. package/dist/internal/c4/cargo-instructions.d.ts.map +1 -0
  175. package/dist/internal/c4/cargo-instructions.js +30 -0
  176. package/dist/internal/c4/cargo-instructions.js.map +1 -0
  177. package/dist/internal/c4/cargo-pod.d.ts +15 -0
  178. package/dist/internal/c4/cargo-pod.d.ts.map +1 -0
  179. package/dist/internal/c4/cargo-pod.js +13 -0
  180. package/dist/internal/c4/cargo-pod.js.map +1 -0
  181. package/dist/internal/c4/character-modifier.d.ts +1 -1
  182. package/dist/internal/c4/character-modifier.d.ts.map +1 -1
  183. package/dist/internal/c4/character-registration.d.ts +2 -0
  184. package/dist/internal/c4/character-registration.d.ts.map +1 -1
  185. package/dist/internal/c4/character-registration.js +2 -0
  186. package/dist/internal/c4/character-registration.js.map +1 -1
  187. package/dist/internal/c4/character.d.ts +157 -0
  188. package/dist/internal/c4/character.d.ts.map +1 -0
  189. package/dist/internal/c4/character.js +64 -0
  190. package/dist/internal/c4/character.js.map +1 -0
  191. package/dist/internal/c4/claim-stake-building-definitions.d.ts.map +1 -1
  192. package/dist/internal/c4/claim-stake-building-definitions.js +2 -1
  193. package/dist/internal/c4/claim-stake-building-definitions.js.map +1 -1
  194. package/dist/internal/c4/claim-stake-configuration.d.ts.map +1 -1
  195. package/dist/internal/c4/claim-stake-configuration.js +5 -36
  196. package/dist/internal/c4/claim-stake-configuration.js.map +1 -1
  197. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
  198. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  199. package/dist/internal/c4/claim-stake-definitions.js +2 -1
  200. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  201. package/dist/internal/c4/claim-stake-plots.d.ts +17 -0
  202. package/dist/internal/c4/claim-stake-plots.d.ts.map +1 -0
  203. package/dist/internal/c4/claim-stake-plots.js +29 -0
  204. package/dist/internal/c4/claim-stake-plots.js.map +1 -0
  205. package/dist/internal/c4/claim-stake.d.ts +13 -33
  206. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  207. package/dist/internal/c4/claim-stake.js +49 -94
  208. package/dist/internal/c4/claim-stake.js.map +1 -1
  209. package/dist/internal/c4/combat.d.ts +1 -82
  210. package/dist/internal/c4/combat.d.ts.map +1 -1
  211. package/dist/internal/c4/combat.js +16 -213
  212. package/dist/internal/c4/combat.js.map +1 -1
  213. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  214. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  215. package/dist/internal/c4/crafting-process-codec.js +34 -0
  216. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  217. package/dist/internal/c4/crafting-storage.d.ts +20 -0
  218. package/dist/internal/c4/crafting-storage.d.ts.map +1 -0
  219. package/dist/internal/c4/crafting-storage.js +54 -0
  220. package/dist/internal/c4/crafting-storage.js.map +1 -0
  221. package/dist/internal/c4/crafting.d.ts +30 -33
  222. package/dist/internal/c4/crafting.d.ts.map +1 -1
  223. package/dist/internal/c4/crafting.js +76 -127
  224. package/dist/internal/c4/crafting.js.map +1 -1
  225. package/dist/internal/c4/currency-cache.d.ts +6 -0
  226. package/dist/internal/c4/currency-cache.d.ts.map +1 -0
  227. package/dist/internal/c4/currency-cache.js +27 -0
  228. package/dist/internal/c4/currency-cache.js.map +1 -0
  229. package/dist/internal/c4/discriminators.d.ts +89 -0
  230. package/dist/internal/c4/discriminators.d.ts.map +1 -0
  231. package/dist/internal/c4/discriminators.js +182 -0
  232. package/dist/internal/c4/discriminators.js.map +1 -0
  233. package/dist/internal/c4/docking-funding.d.ts +4 -0
  234. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  235. package/dist/internal/c4/docking-funding.js +11 -0
  236. package/dist/internal/c4/docking-funding.js.map +1 -0
  237. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  238. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  239. package/dist/internal/c4/faction-epoch-meter.js +26 -0
  240. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  241. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  242. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  243. package/dist/internal/c4/faction-treasury.js +41 -0
  244. package/dist/internal/c4/faction-treasury.js.map +1 -0
  245. package/dist/internal/c4/faction.d.ts +21 -0
  246. package/dist/internal/c4/faction.d.ts.map +1 -0
  247. package/dist/internal/c4/faction.js +23 -0
  248. package/dist/internal/c4/faction.js.map +1 -0
  249. package/dist/internal/c4/factions.d.ts +15 -57
  250. package/dist/internal/c4/factions.d.ts.map +1 -1
  251. package/dist/internal/c4/factions.js +80 -223
  252. package/dist/internal/c4/factions.js.map +1 -1
  253. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  254. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  255. package/dist/internal/c4/fleet-arrival.js +42 -0
  256. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  257. package/dist/internal/c4/fleet-creation.d.ts +7 -0
  258. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  259. package/dist/internal/c4/fleet-creation.js +171 -0
  260. package/dist/internal/c4/fleet-creation.js.map +1 -0
  261. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  262. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  263. package/dist/internal/c4/fleet-crew-binding.js +31 -44
  264. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  265. package/dist/internal/c4/fleet-respawn.d.ts +17 -0
  266. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  267. package/dist/internal/c4/fleet-respawn.js +62 -0
  268. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  269. package/dist/internal/c4/fleet-ship-assembly.d.ts +27 -0
  270. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  271. package/dist/internal/c4/fleet-ship-assembly.js +94 -0
  272. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  273. package/dist/internal/c4/fleet-storage.d.ts +42 -0
  274. package/dist/internal/c4/fleet-storage.d.ts.map +1 -0
  275. package/dist/internal/c4/fleet-storage.js +108 -0
  276. package/dist/internal/c4/fleet-storage.js.map +1 -0
  277. package/dist/internal/c4/fleet.d.ts +59 -22
  278. package/dist/internal/c4/fleet.d.ts.map +1 -1
  279. package/dist/internal/c4/fleet.js +50 -87
  280. package/dist/internal/c4/fleet.js.map +1 -1
  281. package/dist/internal/c4/game-definition-layout.d.ts +2 -0
  282. package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
  283. package/dist/internal/c4/game-definition-layout.js +4 -0
  284. package/dist/internal/c4/game-definition-layout.js.map +1 -1
  285. package/dist/internal/c4/game.d.ts +117 -32
  286. package/dist/internal/c4/game.d.ts.map +1 -1
  287. package/dist/internal/c4/game.js +227 -130
  288. package/dist/internal/c4/game.js.map +1 -1
  289. package/dist/internal/c4/identity.d.ts +3 -152
  290. package/dist/internal/c4/identity.d.ts.map +1 -1
  291. package/dist/internal/c4/identity.js +19 -126
  292. package/dist/internal/c4/identity.js.map +1 -1
  293. package/dist/internal/c4/local-market-order.d.ts +29 -0
  294. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  295. package/dist/internal/c4/local-market-order.js +46 -0
  296. package/dist/internal/c4/local-market-order.js.map +1 -0
  297. package/dist/internal/c4/loot-layout.js +1 -1
  298. package/dist/internal/c4/loot-layout.js.map +1 -1
  299. package/dist/internal/c4/loot.d.ts +89 -0
  300. package/dist/internal/c4/loot.d.ts.map +1 -0
  301. package/dist/internal/c4/loot.js +109 -0
  302. package/dist/internal/c4/loot.js.map +1 -0
  303. package/dist/internal/c4/loyalty.d.ts +2 -28
  304. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  305. package/dist/internal/c4/loyalty.js +36 -161
  306. package/dist/internal/c4/loyalty.js.map +1 -1
  307. package/dist/internal/c4/market-storage.d.ts +25 -0
  308. package/dist/internal/c4/market-storage.d.ts.map +1 -0
  309. package/dist/internal/c4/market-storage.js +53 -0
  310. package/dist/internal/c4/market-storage.js.map +1 -0
  311. package/dist/internal/c4/market.d.ts +2 -38
  312. package/dist/internal/c4/market.d.ts.map +1 -1
  313. package/dist/internal/c4/market.js +26 -120
  314. package/dist/internal/c4/market.js.map +1 -1
  315. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  316. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  317. package/dist/internal/c4/mining-instructions.js +3 -0
  318. package/dist/internal/c4/mining-instructions.js.map +1 -0
  319. package/dist/internal/c4/open-signal.d.ts +8 -0
  320. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  321. package/dist/internal/c4/open-signal.js +37 -0
  322. package/dist/internal/c4/open-signal.js.map +1 -0
  323. package/dist/internal/c4/pda.d.ts +43 -0
  324. package/dist/internal/c4/pda.d.ts.map +1 -1
  325. package/dist/internal/c4/pda.js +83 -17
  326. package/dist/internal/c4/pda.js.map +1 -1
  327. package/dist/internal/c4/profile-faction.d.ts +2 -1
  328. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  329. package/dist/internal/c4/profile-faction.js +36 -72
  330. package/dist/internal/c4/profile-faction.js.map +1 -1
  331. package/dist/internal/c4/profile-permissions.d.ts +1 -1
  332. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  333. package/dist/internal/c4/profile-permissions.js +4 -1
  334. package/dist/internal/c4/profile-permissions.js.map +1 -1
  335. package/dist/internal/c4/region-geometry.d.ts +8 -0
  336. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  337. package/dist/internal/c4/region-geometry.js +43 -0
  338. package/dist/internal/c4/region-geometry.js.map +1 -0
  339. package/dist/internal/c4/rewards.d.ts +1 -61
  340. package/dist/internal/c4/rewards.d.ts.map +1 -1
  341. package/dist/internal/c4/rewards.js +23 -203
  342. package/dist/internal/c4/rewards.js.map +1 -1
  343. package/dist/internal/c4/runtime-bindings.d.ts +4 -0
  344. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  345. package/dist/internal/c4/runtime-bindings.js +4 -0
  346. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  347. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  348. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  349. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  350. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  351. package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
  352. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  353. package/dist/internal/c4/scan-lifecycle.js +235 -0
  354. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  355. package/dist/internal/c4/scanning.d.ts +4 -41
  356. package/dist/internal/c4/scanning.d.ts.map +1 -1
  357. package/dist/internal/c4/scanning.js +27 -108
  358. package/dist/internal/c4/scanning.js.map +1 -1
  359. package/dist/internal/c4/ship-import.d.ts +4 -0
  360. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  361. package/dist/internal/c4/ship-import.js +13 -0
  362. package/dist/internal/c4/ship-import.js.map +1 -0
  363. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  364. package/dist/internal/c4/ship-stats.js +46 -44
  365. package/dist/internal/c4/ship-stats.js.map +1 -1
  366. package/dist/internal/c4/starbase.d.ts +0 -32
  367. package/dist/internal/c4/starbase.d.ts.map +1 -1
  368. package/dist/internal/c4/starbase.js +26 -136
  369. package/dist/internal/c4/starbase.js.map +1 -1
  370. package/dist/internal/c4/stimulant.d.ts +24 -0
  371. package/dist/internal/c4/stimulant.d.ts.map +1 -0
  372. package/dist/internal/c4/stimulant.js +32 -0
  373. package/dist/internal/c4/stimulant.js.map +1 -0
  374. package/dist/internal/c4/wallet-cargo-cache.js +2 -1
  375. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
  376. package/dist/internal/c4/world.d.ts +37 -7
  377. package/dist/internal/c4/world.d.ts.map +1 -1
  378. package/dist/internal/c4/world.js +87 -129
  379. package/dist/internal/c4/world.js.map +1 -1
  380. package/dist/internal/cargo.d.ts +2 -0
  381. package/dist/internal/cargo.d.ts.map +1 -1
  382. package/dist/internal/cargo.js +8 -0
  383. package/dist/internal/cargo.js.map +1 -1
  384. package/dist/internal/fleet-route.d.ts +12 -0
  385. package/dist/internal/fleet-route.d.ts.map +1 -0
  386. package/dist/internal/fleet-route.js +11 -0
  387. package/dist/internal/fleet-route.js.map +1 -0
  388. package/dist/internal/fleet.d.ts +1 -0
  389. package/dist/internal/fleet.d.ts.map +1 -1
  390. package/dist/internal/fleet.js +3 -1
  391. package/dist/internal/fleet.js.map +1 -1
  392. package/dist/internal/loyalty-atlas-bank-state.d.ts +17 -0
  393. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  394. package/dist/internal/loyalty-atlas-bank-state.js +11 -0
  395. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  396. package/dist/internal/planning/account-state.d.ts +6 -0
  397. package/dist/internal/planning/account-state.d.ts.map +1 -1
  398. package/dist/internal/planning/account-state.js +13 -0
  399. package/dist/internal/planning/account-state.js.map +1 -1
  400. package/dist/internal/planning/action-runtime.d.ts +38 -0
  401. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  402. package/dist/internal/planning/action-runtime.js +63 -0
  403. package/dist/internal/planning/action-runtime.js.map +1 -0
  404. package/dist/internal/planning/arrival-guards.d.ts +19 -0
  405. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  406. package/dist/internal/planning/arrival-guards.js +172 -0
  407. package/dist/internal/planning/arrival-guards.js.map +1 -0
  408. package/dist/internal/planning/authorization-adapter.d.ts +55 -37
  409. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  410. package/dist/internal/planning/authorization-adapter.js +231 -81
  411. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  412. package/dist/internal/planning/cargo-storage-actions.d.ts +8 -0
  413. package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -0
  414. package/dist/internal/planning/cargo-storage-actions.js +97 -0
  415. package/dist/internal/planning/cargo-storage-actions.js.map +1 -0
  416. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  417. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  418. package/dist/internal/planning/character-registration-guard.js +59 -0
  419. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  420. package/dist/internal/planning/character-registration.d.ts +23 -0
  421. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  422. package/dist/internal/planning/character-registration.js +87 -0
  423. package/dist/internal/planning/character-registration.js.map +1 -0
  424. package/dist/internal/planning/crafting-storage-actions.d.ts +7 -0
  425. package/dist/internal/planning/crafting-storage-actions.d.ts.map +1 -0
  426. package/dist/internal/planning/crafting-storage-actions.js +64 -0
  427. package/dist/internal/planning/crafting-storage-actions.js.map +1 -0
  428. package/dist/internal/planning/currency-cache-guard.d.ts +4 -0
  429. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
  430. package/dist/internal/planning/currency-cache-guard.js +34 -0
  431. package/dist/internal/planning/currency-cache-guard.js.map +1 -0
  432. package/dist/internal/planning/democracy-history.d.ts +50 -0
  433. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  434. package/dist/internal/planning/democracy-history.js +189 -0
  435. package/dist/internal/planning/democracy-history.js.map +1 -0
  436. package/dist/internal/planning/direct-options.d.ts +17 -0
  437. package/dist/internal/planning/direct-options.d.ts.map +1 -0
  438. package/dist/internal/planning/direct-options.js +43 -0
  439. package/dist/internal/planning/direct-options.js.map +1 -0
  440. package/dist/internal/planning/faction-enrollment.d.ts +0 -4
  441. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  442. package/dist/internal/planning/faction-enrollment.js +1 -31
  443. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  444. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  445. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  446. package/dist/internal/planning/faction-trade-guards.js +15 -0
  447. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  448. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  449. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  450. package/dist/internal/planning/faction-trade-state.js +43 -0
  451. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  452. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  453. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  454. package/dist/internal/planning/fleet-arrival.js +107 -0
  455. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  456. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  457. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  458. package/dist/internal/planning/fleet-attack-xp.js +104 -0
  459. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  460. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  461. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  462. package/dist/internal/planning/fleet-creation.js +89 -0
  463. package/dist/internal/planning/fleet-creation.js.map +1 -0
  464. package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
  465. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  466. package/dist/internal/planning/fleet-crew-guard.js +48 -0
  467. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  468. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  469. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  470. package/dist/internal/planning/fleet-crew-transfer.js +129 -0
  471. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  472. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  473. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  474. package/dist/internal/planning/fleet-dock-funding-guard.js +209 -0
  475. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  476. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  477. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  478. package/dist/internal/planning/fleet-dock-funding.js +164 -0
  479. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  480. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  481. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  482. package/dist/internal/planning/fleet-docking-guard.js +44 -0
  483. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  484. package/dist/internal/planning/fleet-docking.d.ts +25 -0
  485. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  486. package/dist/internal/planning/fleet-docking.js +106 -0
  487. package/dist/internal/planning/fleet-docking.js.map +1 -0
  488. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  489. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  490. package/dist/internal/planning/fleet-respawn.js +164 -0
  491. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  492. package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
  493. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  494. package/dist/internal/planning/fleet-ship-assembly.js +158 -0
  495. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  496. package/dist/internal/planning/fleet-state.d.ts +25 -0
  497. package/dist/internal/planning/fleet-state.d.ts.map +1 -0
  498. package/dist/internal/planning/fleet-state.js +28 -0
  499. package/dist/internal/planning/fleet-state.js.map +1 -0
  500. package/dist/internal/planning/governance-fees.d.ts +64 -0
  501. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  502. package/dist/internal/planning/governance-fees.js +231 -0
  503. package/dist/internal/planning/governance-fees.js.map +1 -0
  504. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  505. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  506. package/dist/internal/planning/local-market-order-funding.js +128 -0
  507. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  508. package/dist/internal/planning/local-market-order.d.ts +40 -0
  509. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  510. package/dist/internal/planning/local-market-order.js +139 -0
  511. package/dist/internal/planning/local-market-order.js.map +1 -0
  512. package/dist/internal/planning/market-storage-actions.d.ts +7 -0
  513. package/dist/internal/planning/market-storage-actions.d.ts.map +1 -0
  514. package/dist/internal/planning/market-storage-actions.js +71 -0
  515. package/dist/internal/planning/market-storage-actions.js.map +1 -0
  516. package/dist/internal/planning/mining-stop.d.ts +14 -0
  517. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  518. package/dist/internal/planning/mining-stop.js +42 -0
  519. package/dist/internal/planning/mining-stop.js.map +1 -0
  520. package/dist/internal/planning/mining-storage-actions.d.ts +11 -0
  521. package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -0
  522. package/dist/internal/planning/mining-storage-actions.js +57 -0
  523. package/dist/internal/planning/mining-storage-actions.js.map +1 -0
  524. package/dist/internal/planning/movement-character.d.ts +7 -0
  525. package/dist/internal/planning/movement-character.d.ts.map +1 -0
  526. package/dist/internal/planning/movement-character.js +41 -0
  527. package/dist/internal/planning/movement-character.js.map +1 -0
  528. package/dist/internal/planning/movement-storage-actions.d.ts +7 -0
  529. package/dist/internal/planning/movement-storage-actions.d.ts.map +1 -0
  530. package/dist/internal/planning/movement-storage-actions.js +38 -0
  531. package/dist/internal/planning/movement-storage-actions.js.map +1 -0
  532. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  533. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  534. package/dist/internal/planning/movement-xp-guard.js +104 -0
  535. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  536. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  537. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  538. package/dist/internal/planning/open-signal-guard.js +32 -0
  539. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  540. package/dist/internal/planning/open-signal.d.ts +31 -0
  541. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  542. package/dist/internal/planning/open-signal.js +94 -0
  543. package/dist/internal/planning/open-signal.js.map +1 -0
  544. package/dist/internal/planning/original-token.d.ts +40 -0
  545. package/dist/internal/planning/original-token.d.ts.map +1 -0
  546. package/dist/internal/planning/original-token.js +112 -0
  547. package/dist/internal/planning/original-token.js.map +1 -0
  548. package/dist/internal/planning/own-starbase-facts.d.ts +37 -0
  549. package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -0
  550. package/dist/internal/planning/own-starbase-facts.js +52 -0
  551. package/dist/internal/planning/own-starbase-facts.js.map +1 -0
  552. package/dist/internal/planning/plan-fields.d.ts +60 -0
  553. package/dist/internal/planning/plan-fields.d.ts.map +1 -0
  554. package/dist/internal/planning/plan-fields.js +159 -0
  555. package/dist/internal/planning/plan-fields.js.map +1 -0
  556. package/dist/internal/planning/plan-guards.d.ts +4 -0
  557. package/dist/internal/planning/plan-guards.d.ts.map +1 -0
  558. package/dist/internal/planning/plan-guards.js +177 -0
  559. package/dist/internal/planning/plan-guards.js.map +1 -0
  560. package/dist/internal/planning/profile-key.d.ts +13 -0
  561. package/dist/internal/planning/profile-key.d.ts.map +1 -0
  562. package/dist/internal/planning/profile-key.js +20 -0
  563. package/dist/internal/planning/profile-key.js.map +1 -0
  564. package/dist/internal/planning/profile-storage-funding-guard.d.ts +28 -0
  565. package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -0
  566. package/dist/internal/planning/profile-storage-funding-guard.js +73 -0
  567. package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -0
  568. package/dist/internal/planning/profile-storage-funding.d.ts +46 -0
  569. package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -0
  570. package/dist/internal/planning/profile-storage-funding.js +58 -0
  571. package/dist/internal/planning/profile-storage-funding.js.map +1 -0
  572. package/dist/internal/planning/recipe-state.d.ts +9 -0
  573. package/dist/internal/planning/recipe-state.d.ts.map +1 -0
  574. package/dist/internal/planning/recipe-state.js +23 -0
  575. package/dist/internal/planning/recipe-state.js.map +1 -0
  576. package/dist/internal/planning/rent-catalog.d.ts +37 -0
  577. package/dist/internal/planning/rent-catalog.d.ts.map +1 -0
  578. package/dist/internal/planning/rent-catalog.js +165 -0
  579. package/dist/internal/planning/rent-catalog.js.map +1 -0
  580. package/dist/internal/planning/rent.d.ts +19 -0
  581. package/dist/internal/planning/rent.d.ts.map +1 -0
  582. package/dist/internal/planning/rent.js +35 -0
  583. package/dist/internal/planning/rent.js.map +1 -0
  584. package/dist/internal/planning/research-unlock.d.ts +69 -0
  585. package/dist/internal/planning/research-unlock.d.ts.map +1 -0
  586. package/dist/internal/planning/research-unlock.js +287 -0
  587. package/dist/internal/planning/research-unlock.js.map +1 -0
  588. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  589. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  590. package/dist/internal/planning/respawn-guards.js +42 -0
  591. package/dist/internal/planning/respawn-guards.js.map +1 -0
  592. package/dist/internal/planning/runtime-guards.d.ts +41 -0
  593. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  594. package/dist/internal/planning/runtime-guards.js +658 -0
  595. package/dist/internal/planning/runtime-guards.js.map +1 -0
  596. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  597. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  598. package/dist/internal/planning/scan-completion-guard.js +95 -0
  599. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  600. package/dist/internal/planning/scan-completion.d.ts +20 -0
  601. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  602. package/dist/internal/planning/scan-completion.js +198 -0
  603. package/dist/internal/planning/scan-completion.js.map +1 -0
  604. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  605. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  606. package/dist/internal/planning/scan-detect-guard.js +77 -0
  607. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  608. package/dist/internal/planning/scan-detect.d.ts +24 -0
  609. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  610. package/dist/internal/planning/scan-detect.js +246 -0
  611. package/dist/internal/planning/scan-detect.js.map +1 -0
  612. package/dist/internal/planning/scan-idle-scope.d.ts +5 -0
  613. package/dist/internal/planning/scan-idle-scope.d.ts.map +1 -0
  614. package/dist/internal/planning/scan-idle-scope.js +5 -0
  615. package/dist/internal/planning/scan-idle-scope.js.map +1 -0
  616. package/dist/internal/planning/scan-input.d.ts +9 -0
  617. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  618. package/dist/internal/planning/scan-input.js +58 -0
  619. package/dist/internal/planning/scan-input.js.map +1 -0
  620. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  621. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  622. package/dist/internal/planning/ship-import-funding.js +53 -0
  623. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  624. package/dist/internal/planning/ship-token.d.ts +1 -6
  625. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  626. package/dist/internal/planning/ship-token.js +0 -37
  627. package/dist/internal/planning/ship-token.js.map +1 -1
  628. package/dist/internal/planning/starbase-player-owner.d.ts +21 -0
  629. package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -0
  630. package/dist/internal/planning/starbase-player-owner.js +17 -0
  631. package/dist/internal/planning/starbase-player-owner.js.map +1 -0
  632. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  633. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  634. package/dist/internal/planning/starbase-system-guard.js +94 -0
  635. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  636. package/dist/internal/planning/starbase-system.d.ts +15 -0
  637. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  638. package/dist/internal/planning/starbase-system.js +25 -0
  639. package/dist/internal/planning/starbase-system.js.map +1 -0
  640. package/dist/internal/planning/storage-action-readers.d.ts +10 -0
  641. package/dist/internal/planning/storage-action-readers.d.ts.map +1 -0
  642. package/dist/internal/planning/storage-action-readers.js +36 -0
  643. package/dist/internal/planning/storage-action-readers.js.map +1 -0
  644. package/dist/internal/planning/storage-actions.d.ts +85 -0
  645. package/dist/internal/planning/storage-actions.d.ts.map +1 -0
  646. package/dist/internal/planning/storage-actions.js +183 -0
  647. package/dist/internal/planning/storage-actions.js.map +1 -0
  648. package/dist/internal/planning/token-mint.d.ts.map +1 -1
  649. package/dist/internal/planning/token-mint.js +2 -1
  650. package/dist/internal/planning/token-mint.js.map +1 -1
  651. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  652. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  653. package/dist/internal/planning/trade-faction-market.js +56 -0
  654. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  655. package/dist/internal/planning/wallet-starbase.d.ts +34 -0
  656. package/dist/internal/planning/wallet-starbase.d.ts.map +1 -0
  657. package/dist/internal/planning/wallet-starbase.js +39 -0
  658. package/dist/internal/planning/wallet-starbase.js.map +1 -0
  659. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  660. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  661. package/dist/internal/planning/xp-runtime.js +122 -0
  662. package/dist/internal/planning/xp-runtime.js.map +1 -0
  663. package/dist/internal/read-meta.d.ts +12 -0
  664. package/dist/internal/read-meta.d.ts.map +1 -1
  665. package/dist/internal/read-meta.js +10 -0
  666. package/dist/internal/read-meta.js.map +1 -1
  667. package/dist/internal/system-program.d.ts +4 -0
  668. package/dist/internal/system-program.d.ts.map +1 -0
  669. package/dist/internal/system-program.js +3 -0
  670. package/dist/internal/system-program.js.map +1 -0
  671. package/dist/loyalty/actions/index.d.ts +1 -1
  672. package/dist/loyalty/actions/index.d.ts.map +1 -1
  673. package/dist/loyalty/actions/index.js +16 -46
  674. package/dist/loyalty/actions/index.js.map +1 -1
  675. package/dist/loyalty/index.d.ts +4 -0
  676. package/dist/loyalty/index.d.ts.map +1 -1
  677. package/dist/loyalty/index.js +21 -33
  678. package/dist/loyalty/index.js.map +1 -1
  679. package/dist/markets/actions/index.d.ts +62 -4
  680. package/dist/markets/actions/index.d.ts.map +1 -1
  681. package/dist/markets/actions/index.js +261 -187
  682. package/dist/markets/actions/index.js.map +1 -1
  683. package/dist/markets/actions/trade-faction-market.d.ts +45 -0
  684. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  685. package/dist/markets/actions/trade-faction-market.js +311 -0
  686. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  687. package/dist/markets/index.d.ts +38 -7
  688. package/dist/markets/index.d.ts.map +1 -1
  689. package/dist/markets/index.js +59 -20
  690. package/dist/markets/index.js.map +1 -1
  691. package/dist/mining/actions/index.d.ts +87 -0
  692. package/dist/mining/actions/index.d.ts.map +1 -0
  693. package/dist/mining/actions/index.js +369 -0
  694. package/dist/mining/actions/index.js.map +1 -0
  695. package/dist/mining/estimate.d.ts +114 -0
  696. package/dist/mining/estimate.d.ts.map +1 -0
  697. package/dist/mining/estimate.js +127 -0
  698. package/dist/mining/estimate.js.map +1 -0
  699. package/dist/mining/index.d.ts +9 -2
  700. package/dist/mining/index.d.ts.map +1 -1
  701. package/dist/mining/index.js +10 -13
  702. package/dist/mining/index.js.map +1 -1
  703. package/dist/mining/profile.d.ts +82 -0
  704. package/dist/mining/profile.d.ts.map +1 -0
  705. package/dist/mining/profile.js +109 -0
  706. package/dist/mining/profile.js.map +1 -0
  707. package/dist/planning/assembly.d.ts +6 -1
  708. package/dist/planning/assembly.d.ts.map +1 -1
  709. package/dist/planning/assembly.js +12 -8
  710. package/dist/planning/assembly.js.map +1 -1
  711. package/dist/planning/execution.d.ts +19 -3
  712. package/dist/planning/execution.d.ts.map +1 -1
  713. package/dist/planning/execution.js +603 -72
  714. package/dist/planning/execution.js.map +1 -1
  715. package/dist/planning/index.d.ts +226 -165
  716. package/dist/planning/index.d.ts.map +1 -1
  717. package/dist/planning/index.js +31 -388
  718. package/dist/planning/index.js.map +1 -1
  719. package/dist/planning/plan-construction.d.ts +25 -0
  720. package/dist/planning/plan-construction.d.ts.map +1 -0
  721. package/dist/planning/plan-construction.js +143 -0
  722. package/dist/planning/plan-construction.js.map +1 -0
  723. package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
  724. package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
  725. package/dist/planning/plan-sequence-checkpoint.js +16 -7
  726. package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
  727. package/dist/planning/plan-sequence-execution.d.ts +5 -0
  728. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  729. package/dist/planning/plan-sequence-execution.js +74 -40
  730. package/dist/planning/plan-sequence-execution.js.map +1 -1
  731. package/dist/planning/plan-sequence.d.ts +2 -1
  732. package/dist/planning/plan-sequence.d.ts.map +1 -1
  733. package/dist/planning/plan-sequence.js +8 -1
  734. package/dist/planning/plan-sequence.js.map +1 -1
  735. package/dist/planning/plan-validation.d.ts +17 -0
  736. package/dist/planning/plan-validation.d.ts.map +1 -0
  737. package/dist/planning/plan-validation.js +139 -0
  738. package/dist/planning/plan-validation.js.map +1 -0
  739. package/dist/planning/simulation.d.ts +25 -1
  740. package/dist/planning/simulation.d.ts.map +1 -1
  741. package/dist/planning/simulation.js +111 -11
  742. package/dist/planning/simulation.js.map +1 -1
  743. package/dist/registry/cargo.d.ts +7 -12
  744. package/dist/registry/cargo.d.ts.map +1 -1
  745. package/dist/registry/cargo.js +19 -20
  746. package/dist/registry/cargo.js.map +1 -1
  747. package/dist/registry/docking.d.ts +10 -0
  748. package/dist/registry/docking.d.ts.map +1 -0
  749. package/dist/registry/docking.js +12 -0
  750. package/dist/registry/docking.js.map +1 -0
  751. package/dist/registry/index.d.ts +4 -0
  752. package/dist/registry/index.d.ts.map +1 -1
  753. package/dist/registry/index.js +190 -224
  754. package/dist/registry/index.js.map +1 -1
  755. package/dist/registry/onboarding.d.ts +10 -2
  756. package/dist/registry/onboarding.d.ts.map +1 -1
  757. package/dist/registry/onboarding.js +22 -7
  758. package/dist/registry/onboarding.js.map +1 -1
  759. package/dist/registry/scanning.d.ts +7 -0
  760. package/dist/registry/scanning.d.ts.map +1 -0
  761. package/dist/registry/scanning.js +13 -0
  762. package/dist/registry/scanning.js.map +1 -0
  763. package/dist/registry/ship-stats-snapshot.d.ts.map +1 -1
  764. package/dist/registry/ship-stats-snapshot.js +38 -24
  765. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  766. package/dist/registry/ships.d.ts +22 -2
  767. package/dist/registry/ships.d.ts.map +1 -1
  768. package/dist/registry/ships.js +31 -4
  769. package/dist/registry/ships.js.map +1 -1
  770. package/dist/registry/xp-runtime.d.ts +4 -0
  771. package/dist/registry/xp-runtime.d.ts.map +1 -0
  772. package/dist/registry/xp-runtime.js +14 -0
  773. package/dist/registry/xp-runtime.js.map +1 -0
  774. package/dist/rewards/index.d.ts +11 -5
  775. package/dist/rewards/index.d.ts.map +1 -1
  776. package/dist/rewards/index.js +10 -21
  777. package/dist/rewards/index.js.map +1 -1
  778. package/dist/scanning/actions/index.d.ts +116 -0
  779. package/dist/scanning/actions/index.d.ts.map +1 -0
  780. package/dist/scanning/actions/index.js +191 -0
  781. package/dist/scanning/actions/index.js.map +1 -0
  782. package/dist/scanning/index.d.ts +10 -12
  783. package/dist/scanning/index.d.ts.map +1 -1
  784. package/dist/scanning/index.js +19 -23
  785. package/dist/scanning/index.js.map +1 -1
  786. package/dist/scanning/lifecycle.d.ts +77 -0
  787. package/dist/scanning/lifecycle.d.ts.map +1 -0
  788. package/dist/scanning/lifecycle.js +93 -0
  789. package/dist/scanning/lifecycle.js.map +1 -0
  790. package/dist/scanning/odds.d.ts +115 -0
  791. package/dist/scanning/odds.d.ts.map +1 -0
  792. package/dist/scanning/odds.js +294 -0
  793. package/dist/scanning/odds.js.map +1 -0
  794. package/dist/scanning/signals.d.ts +121 -0
  795. package/dist/scanning/signals.d.ts.map +1 -0
  796. package/dist/scanning/signals.js +171 -0
  797. package/dist/scanning/signals.js.map +1 -0
  798. package/dist/starbases/actions/index.d.ts +6 -4
  799. package/dist/starbases/actions/index.d.ts.map +1 -1
  800. package/dist/starbases/actions/index.js +34 -67
  801. package/dist/starbases/actions/index.js.map +1 -1
  802. package/dist/starbases/index.d.ts.map +1 -1
  803. package/dist/starbases/index.js +3 -11
  804. package/dist/starbases/index.js.map +1 -1
  805. package/dist/world/index.d.ts +108 -5
  806. package/dist/world/index.d.ts.map +1 -1
  807. package/dist/world/index.js +110 -15
  808. package/dist/world/index.js.map +1 -1
  809. package/dist/world/planet-claim-stake-plots.d.ts +139 -0
  810. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  811. package/dist/world/planet-claim-stake-plots.js +117 -0
  812. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  813. package/dist/world/starbase-status.d.ts +176 -0
  814. package/dist/world/starbase-status.d.ts.map +1 -0
  815. package/dist/world/starbase-status.js +153 -0
  816. package/dist/world/starbase-status.js.map +1 -0
  817. package/package.json +10 -2
@@ -0,0 +1,94 @@
1
+ import { AccountRole } from '@solana/kit';
2
+ import { SageSdkError } from '../../client/errors.js';
3
+ import { getDepositCargoToGameInstructionDataDecoder, getWithdrawCargoFromGameInstructionDataDecoder, getAddShipEscrowInstructionDataDecoder, getCancelCraftingProcessInstructionDataDecoder, SAGE_PROGRAM_ADDRESS, } from '../c4/runtime-bindings.js';
4
+ import { ADD_SHIP_ESCROW_DISCRIMINATOR, CANCEL_CRAFTING_PROCESS_DISCRIMINATOR, DEPOSIT_CARGO_TO_GAME_DISCRIMINATOR, WITHDRAW_CARGO_FROM_GAME_DISCRIMINATOR, } from '../c4/discriminators.js';
5
+ // Pure instruction metadata keeps the Plan factory independent of generated data decoders.
6
+ function routeFor(instruction) {
7
+ if (instruction.programAddress !== SAGE_PROGRAM_ADDRESS)
8
+ return undefined;
9
+ const routes = [
10
+ {
11
+ discriminator: CANCEL_CRAFTING_PROCESS_DISCRIMINATOR,
12
+ decoder: 0,
13
+ count: 11,
14
+ game: 5,
15
+ system: 6,
16
+ css: false,
17
+ planner: 'planCancelCraftingProcess',
18
+ },
19
+ {
20
+ discriminator: DEPOSIT_CARGO_TO_GAME_DISCRIMINATOR,
21
+ decoder: 1,
22
+ count: 13,
23
+ game: 8,
24
+ system: 4,
25
+ css: true,
26
+ planner: 'planDepositCargoToGame',
27
+ },
28
+ {
29
+ discriminator: WITHDRAW_CARGO_FROM_GAME_DISCRIMINATOR,
30
+ decoder: 2,
31
+ count: 11,
32
+ game: 6,
33
+ system: 4,
34
+ css: false,
35
+ planner: 'planWithdrawCargoFromGame',
36
+ },
37
+ {
38
+ discriminator: ADD_SHIP_ESCROW_DISCRIMINATOR,
39
+ decoder: 3,
40
+ count: 14,
41
+ game: 11,
42
+ system: 7,
43
+ css: true,
44
+ planner: 'planDepositShipsToGame',
45
+ },
46
+ ];
47
+ return routes.find(({ discriminator }) => discriminator.every((byte, index) => instruction.data?.[index] === byte));
48
+ }
49
+ function fail(planner) {
50
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', `This Starbase action has an unsupported instruction layout or lacks its matching finite Starbase System safeguard. Recreate it with ${planner}; an exact account hash does not replace this safeguard.`);
51
+ }
52
+ /** Binds required guards to actual instruction accounts without pulling byte decoders into every action entry. */
53
+ export function validateStarbaseSystemGuards(steps, preconditions) {
54
+ for (const { instruction } of steps) {
55
+ const route = routeFor(instruction);
56
+ if (!route)
57
+ continue;
58
+ const accounts = instruction.accounts;
59
+ if (accounts?.length !== route.count ||
60
+ accounts[route.game].role !== AccountRole.READONLY ||
61
+ accounts[route.system].role !== AccountRole.READONLY ||
62
+ !preconditions.some((guard) => guard.kind === 'starbase-system' &&
63
+ guard.address === accounts[route.system].address &&
64
+ guard.game === accounts[route.game].address &&
65
+ (!route.css || guard.requireCss === true)))
66
+ fail(route.planner);
67
+ }
68
+ }
69
+ /** Hydration and assembly additionally verify exact bytes with the pinned generated decoders. */
70
+ export function validateStarbaseSystemInstructions(steps, preconditions) {
71
+ validateStarbaseSystemGuards(steps, preconditions);
72
+ const decoders = [
73
+ getCancelCraftingProcessInstructionDataDecoder,
74
+ getDepositCargoToGameInstructionDataDecoder,
75
+ getWithdrawCargoFromGameInstructionDataDecoder,
76
+ getAddShipEscrowInstructionDataDecoder,
77
+ ];
78
+ for (const { instruction } of steps) {
79
+ const route = routeFor(instruction);
80
+ if (!route)
81
+ continue;
82
+ let exactData = false;
83
+ try {
84
+ const [, size] = decoders[route.decoder]().read(instruction.data, 0);
85
+ exactData = size === instruction.data.length;
86
+ }
87
+ catch {
88
+ // Truncated instruction arguments are not a supported route.
89
+ }
90
+ if (!exactData)
91
+ fail(route.planner);
92
+ }
93
+ }
94
+ //# sourceMappingURL=starbase-system-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starbase-system-guard.js","sourceRoot":"","sources":["../../../src/internal/planning/starbase-system-guard.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Address } from '@solana/kit';
2
+ import type { RawAccount } from '../../client/contracts.js';
3
+ type StarbaseSystemIntent = {
4
+ readonly address: Address;
5
+ readonly game: Address;
6
+ readonly starbaseSequenceId: bigint;
7
+ readonly requireCss?: boolean;
8
+ };
9
+ /** Checks finite System/Starbase identity and the action's station policy.
10
+ * `staleStarbaseGuidance` lets a planner add action-specific advice for a
11
+ * replaced Starbase; execution and other actions use the neutral default.
12
+ */
13
+ export declare function validateStarbaseSystem(account: RawAccount, intent: StarbaseSystemIntent, staleStarbaseGuidance?: string): Promise<void>;
14
+ export {};
15
+ //# sourceMappingURL=starbase-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starbase-system.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/starbase-system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAO5D,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAUF;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,oBAAoB,EAC5B,qBAAqB,SAA0E,GAC9F,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
@@ -0,0 +1,25 @@
1
+ import { SageSdkError } from '../../client/errors.js';
2
+ import { deriveStarSystemAddress, starSystemAccountDefinition, } from '../c4/world.js';
3
+ function fail(address, reason) {
4
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', `${reason} Refresh the Star System and recreate the action Plan for its current Starbase.`, { address });
5
+ }
6
+ /** Checks finite System/Starbase identity and the action's station policy.
7
+ * `staleStarbaseGuidance` lets a planner add action-specific advice for a
8
+ * replaced Starbase; execution and other actions use the neutral default.
9
+ */
10
+ export async function validateStarbaseSystem(account, intent, staleStarbaseGuidance = 'The Starbase was destroyed or replaced after this action was planned.') {
11
+ if (account.address !== intent.address || account.executable)
12
+ fail(intent.address, 'The Star System has an unexpected address or is executable instead of account state.');
13
+ const system = starSystemAccountDefinition.decode(account);
14
+ if (system.game !== intent.game ||
15
+ (await deriveStarSystemAddress(intent.game, system.systemId)) !==
16
+ intent.address)
17
+ fail(intent.address, `Star System ${intent.address} does not match the configured Game or canonical system-id PDA.`);
18
+ if (system.sequenceId !== intent.starbaseSequenceId)
19
+ fail(intent.address, `The Starbase sequence is stale at ${intent.starbaseSequenceId}, while Star System ${intent.address} is at sequence ${system.sequenceId}. ${staleStarbaseGuidance}`);
20
+ if (system.starbase === undefined)
21
+ fail(intent.address, `Star System ${intent.address} does not have an active Starbase.`);
22
+ if (intent.requireCss && system.starbase.maxLevel.kind !== 'css')
23
+ fail(intent.address, 'This wallet deposit requires a Central Space Station.');
24
+ }
25
+ //# sourceMappingURL=starbase-system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"starbase-system.js","sourceRoot":"","sources":["../../../src/internal/planning/starbase-system.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EACL,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AASxB,SAAS,IAAI,CAAC,OAAgB,EAAE,MAAc;IAC5C,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,GAAG,MAAM,iFAAiF,EAC1F,EAAE,OAAO,EAAE,CACZ,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAmB,EACnB,MAA4B,EAC5B,qBAAqB,GAAG,uEAAuE;IAE/F,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU;QAC1D,IAAI,CACF,MAAM,CAAC,OAAO,EACd,sFAAsF,CACvF,CAAC;IACJ,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,IACE,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAC3B,CAAC,MAAM,uBAAuB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3D,MAAM,CAAC,OAAO;QAEhB,IAAI,CACF,MAAM,CAAC,OAAO,EACd,eAAe,MAAM,CAAC,OAAO,iEAAiE,CAC/F,CAAC;IACJ,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,kBAAkB;QACjD,IAAI,CACF,MAAM,CAAC,OAAO,EACd,qCAAqC,MAAM,CAAC,kBAAkB,uBAAuB,MAAM,CAAC,OAAO,mBAAmB,MAAM,CAAC,UAAU,KAAK,qBAAqB,EAAE,CACpK,CAAC;IACJ,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAC/B,IAAI,CACF,MAAM,CAAC,OAAO,EACd,eAAe,MAAM,CAAC,OAAO,oCAAoC,CAClE,CAAC;IACJ,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK;QAC9D,IAAI,CACF,MAAM,CAAC,OAAO,EACd,uDAAuD,CACxD,CAAC;AACN,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Address, Instruction } from '@solana/kit';
2
+ import type { RawAccount } from '../../client/contracts.js';
3
+ import { type StorageInstruction } from './profile-storage-funding-guard.js';
4
+ import type { StorageAction } from './storage-actions.js';
5
+ /** Fresh accounts an instruction's storage reads, besides the Profile, Rent
6
+ * sysvar and Game. */
7
+ export declare function storageActionAccounts(kind: StorageInstruction, instruction: Instruction): readonly Address[];
8
+ /** Reads any Profile-funded instruction's storage effect, for execution. */
9
+ export declare function readStorageAction(instruction: Instruction, accounts: ReadonlyMap<Address, RawAccount | undefined>, cargoIdForMint: (mint: Address) => number | undefined): StorageAction;
10
+ //# sourceMappingURL=storage-action-readers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-action-readers.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/storage-action-readers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAM5D,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAkC1D;sBACsB;AACtB,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,kBAAkB,EACxB,WAAW,EAAE,WAAW,GACvB,SAAS,OAAO,EAAE,CAIpB;AAED,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC,EACtD,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,GACpD,aAAa,CAMf"}
@@ -0,0 +1,36 @@
1
+ import { readCargoStorageAction } from './cargo-storage-actions.js';
2
+ import { readCraftingStorageAction } from './crafting-storage-actions.js';
3
+ import { readMarketStorageAction } from './market-storage-actions.js';
4
+ import { readMiningStorageAction } from './mining-storage-actions.js';
5
+ import { readMovementStorageAction } from './movement-storage-actions.js';
6
+ import { storageInstruction, } from './profile-storage-funding-guard.js';
7
+ /** Each kind's reader and the instruction accounts it reads fresh, besides the
8
+ * Profile, Rent sysvar and Game. */
9
+ const READERS = {
10
+ deposit: { accounts: [5, 10], read: readCargoStorageAction },
11
+ 'starbase-transfer': { accounts: [4, 8], read: readCargoStorageAction },
12
+ 'within-fleet-transfer': { accounts: [4], read: readCargoStorageAction },
13
+ 'start-mining': { accounts: [4], read: readMiningStorageAction },
14
+ 'stop-mining': { accounts: [5], read: readMiningStorageAction },
15
+ 'stop-subwarp': { accounts: [5], read: readMovementStorageAction },
16
+ 'start-subwarp': { accounts: [5], read: readMovementStorageAction },
17
+ 'warp-to-coordinate': { accounts: [5], read: readMovementStorageAction },
18
+ 'warp-lane': { accounts: [5], read: readMovementStorageAction },
19
+ 'cancel-market-orders': { accounts: [8, 7], read: readMarketStorageAction },
20
+ 'faction-trade': {
21
+ accounts: [8, 9, 10, 7],
22
+ read: readMarketStorageAction,
23
+ },
24
+ 'start-crafting': { accounts: [8, 7], read: readCraftingStorageAction },
25
+ 'cancel-crafting': { accounts: [7, 8], read: readCraftingStorageAction },
26
+ };
27
+ /** Fresh accounts an instruction's storage reads, besides the Profile, Rent
28
+ * sysvar and Game. */
29
+ export function storageActionAccounts(kind, instruction) {
30
+ return READERS[kind].accounts.map((index) => instruction.accounts[index].address);
31
+ }
32
+ /** Reads any Profile-funded instruction's storage effect, for execution. */
33
+ export function readStorageAction(instruction, accounts, cargoIdForMint) {
34
+ return READERS[storageInstruction(instruction).kind].read(instruction, accounts, cargoIdForMint);
35
+ }
36
+ //# sourceMappingURL=storage-action-readers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-action-readers.js","sourceRoot":"","sources":["../../../src/internal/planning/storage-action-readers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EACL,kBAAkB,GAEnB,MAAM,oCAAoC,CAAC;AAS5C;oCACoC;AACpC,MAAM,OAAO,GAKT;IACF,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAC5D,mBAAmB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE;IACvE,uBAAuB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE;IACxE,cAAc,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE;IAChE,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE;IAC/D,cAAc,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IAClE,eAAe,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IACnE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IACxE,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IAC/D,sBAAsB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE;IAC3E,eAAe,EAAE;QACf,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,uBAAuB;KAC9B;IACD,gBAAgB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IACvE,iBAAiB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE;CACzE,CAAC;AAEF;sBACsB;AACtB,MAAM,UAAU,qBAAqB,CACnC,IAAwB,EACxB,WAAwB;IAExB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAC/B,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,QAAS,CAAC,KAAK,CAAE,CAAC,OAAO,CACjD,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAC/B,WAAwB,EACxB,QAAsD,EACtD,cAAqD;IAErD,OAAO,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CACxD,WAAW,EACX,QAAQ,EACR,cAAc,CACf,CAAC;AACJ,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { type Address, type Instruction } from '@solana/kit';
2
+ import type { RawAccount } from '../../client/contracts.js';
3
+ import type { PlanStep } from '../../planning/index.js';
4
+ import { type ProfileStorageFundingGuard, type StorageInstruction } from './profile-storage-funding-guard.js';
5
+ import { type ProfileStorageFunding } from './profile-storage-funding.js';
6
+ export type CargoLines = ReadonlyMap<number, bigint>;
7
+ /** The encoded size of a Fleet's state in the fresh account and after the
8
+ * action. A Plan tracks each Fleet's state across its actions, so a change is
9
+ * measured from the state the earlier actions left, not the fresh one. */
10
+ export interface StateChange {
11
+ readonly fresh: number;
12
+ readonly after: number;
13
+ }
14
+ /** One account an action resizes or creates: a fixed byte change (such as the
15
+ * orders a Local Market drops, or the whole size of a new account), a Fleet
16
+ * state change, and, when it changes a cargo pod, the lines the fresh pod
17
+ * holds and those the action adds to and consumes from. */
18
+ export type StorageAccount = {
19
+ readonly address: Address;
20
+ /** The action creates the account, so it starts empty and unfunded. */
21
+ readonly created?: true;
22
+ readonly growthBytes?: number;
23
+ readonly state?: StateChange;
24
+ } & ({
25
+ readonly held?: undefined;
26
+ } | {
27
+ readonly held: CargoLines;
28
+ readonly added: CargoLines;
29
+ readonly removed?: CargoLines;
30
+ });
31
+ /** How the program settles the resized accounts: each normalized on its own,
32
+ * or one net shortfall across them, where one account's surplus funds another. */
33
+ export type StorageSettlement = 'each' | 'net';
34
+ /** What one instruction does to Profile-funded storage, read from its bytes. */
35
+ export interface StorageAction {
36
+ readonly profile: Address;
37
+ readonly authority: Address;
38
+ readonly keyIndex: number;
39
+ readonly settlement: StorageSettlement;
40
+ readonly accounts: readonly [StorageAccount, ...StorageAccount[]];
41
+ }
42
+ /** One evaluated action's Profile debit. */
43
+ export interface StorageEvaluation {
44
+ readonly profileDebit: bigint;
45
+ }
46
+ export declare const NONE: CargoLines;
47
+ export declare function totals(entries: readonly (readonly [number, bigint | undefined])[]): CargoLines;
48
+ export declare function present(accounts: ReadonlyMap<Address, RawAccount | undefined>, address: Address): RawAccount;
49
+ /** Evaluates actions in order, as the program runs them: each resized account
50
+ * changes by its state change plus a line per cargo id a pod gains and minus a
51
+ * line its consumption empties, and after each action every resized account
52
+ * holds exactly the rent minimum of its new size. Later actions therefore see
53
+ * the state, storage and surplus earlier ones left. */
54
+ export declare function evaluateStorage(actions: readonly StorageAction[], accounts: ReadonlyMap<Address, RawAccount | undefined>): readonly StorageEvaluation[];
55
+ /** The Profile-funded steps of a Plan, in order. */
56
+ export declare function storageSteps(steps: readonly PlanStep[]): readonly (PlanStep & {
57
+ readonly kind: StorageInstruction;
58
+ })[];
59
+ /** One guard's rechecked funding, or the failure to report for it. */
60
+ export type StorageResult = {
61
+ readonly funding: ProfileStorageFunding;
62
+ } | {
63
+ readonly error: unknown;
64
+ };
65
+ /** Rechecks every Profile-funded action's storage before signing. Each
66
+ * action's effect is rederived from its instruction bytes and the fresh
67
+ * accounts, never taken from its guard, and the actions are evaluated in order
68
+ * so each meets the state, storage and surplus the earlier ones left. Each
69
+ * debit must stay within its guard's ceiling and pass the key and balance
70
+ * checks. A Fleet whose state an earlier, unevaluated action writes is refused,
71
+ * since its state change could not be measured. */
72
+ export declare function validateStorageFunding(steps: readonly PlanStep[], guards: readonly ProfileStorageFundingGuard[], accounts: ReadonlyMap<Address, RawAccount | undefined>, readAction: (instruction: Instruction) => StorageAction): ReadonlyMap<ProfileStorageFundingGuard, StorageResult>;
73
+ /** Plans one action's storage funding from the same derivation execution
74
+ * repeats: its guard and the Plan summary sentence. */
75
+ export declare function planStorageFunding(input: {
76
+ readonly action: StorageAction;
77
+ readonly accounts: ReadonlyMap<Address, RawAccount | undefined>;
78
+ readonly label: string;
79
+ /** Actions the Plan is meant to run first, such as a subwarp settlement. */
80
+ readonly preceding?: readonly StorageAction[];
81
+ }): {
82
+ readonly guard: ProfileStorageFundingGuard;
83
+ readonly disclosure: string;
84
+ };
85
+ //# sourceMappingURL=storage-actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-actions.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/storage-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAGL,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,8BAA8B,CAAC;AAGtC,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAErD;;0EAE0E;AAC1E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;2DAG2D;AAC3D,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;CAC9B,GAAG,CACA;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,GAC7B;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;CAC/B,CACJ,CAAC;AAEF;kFACkF;AAClF,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,KAAK,CAAC;AAE/C,gFAAgF;AAChF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,cAAc,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;CACnE;AAED,4CAA4C;AAC5C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,eAAO,MAAM,IAAI,EAAE,UAAsB,CAAC;AAM1C,wBAAgB,MAAM,CACpB,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EAAE,GAC1D,UAAU,CAMZ;AAED,wBAAgB,OAAO,CACrB,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC,EACtD,OAAO,EAAE,OAAO,GACf,UAAU,CAQZ;AAED;;;;uDAIuD;AACvD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,aAAa,EAAE,EACjC,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC,GACrD,SAAS,iBAAiB,EAAE,CAkE9B;AAED,oDAAoD;AACpD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,QAAQ,EAAE,GACzB,SAAS,CAAC,QAAQ,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,CAAC,EAAE,CAK/D;AAED,sEAAsE;AACtE,MAAM,MAAM,aAAa,GACvB;IAAE,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAE5E;;;;;;mDAMmD;AACnD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,0BAA0B,EAAE,EAC7C,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC,EACtD,UAAU,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,aAAa,GACtD,WAAW,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAsExD;AAED;uDACuD;AACvD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IACxC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;IAChE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;CAC/C;;;EAmBA"}
@@ -0,0 +1,183 @@
1
+ import { isWritableRole } from '@solana/kit';
2
+ import { SageSdkError } from '../../client/errors.js';
3
+ import { CARGO_LINE_BYTES, storageInstruction, } from './profile-storage-funding-guard.js';
4
+ import { checkProfileStorageFunding, profileStorageFundingGuard, } from './profile-storage-funding.js';
5
+ import { RENT_ADDRESS, readRent } from './rent.js';
6
+ export const NONE = new Map();
7
+ function fail(address, message) {
8
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
9
+ }
10
+ export function totals(entries) {
11
+ const sums = new Map();
12
+ for (const [cargoId, amount] of entries)
13
+ if (amount !== undefined && amount > 0n)
14
+ sums.set(cargoId, (sums.get(cargoId) ?? 0n) + amount);
15
+ return sums;
16
+ }
17
+ export function present(accounts, address) {
18
+ const raw = accounts.get(address);
19
+ if (!raw || raw.executable)
20
+ fail(address, `Account ${address} is missing or executable, so the action's storage funding cannot be checked. Refresh it and replan the action.`);
21
+ return raw;
22
+ }
23
+ /** Evaluates actions in order, as the program runs them: each resized account
24
+ * changes by its state change plus a line per cargo id a pod gains and minus a
25
+ * line its consumption empties, and after each action every resized account
26
+ * holds exactly the rent minimum of its new size. Later actions therefore see
27
+ * the state, storage and surplus earlier ones left. */
28
+ export function evaluateStorage(actions, accounts) {
29
+ const rent = readRent(present(accounts, RENT_ADDRESS));
30
+ const state = new Map();
31
+ return actions.map((action) => {
32
+ let deficit = 0n;
33
+ let excess = 0n;
34
+ for (const account of action.accounts) {
35
+ let current = state.get(account.address);
36
+ if (!current) {
37
+ const raw = account.created
38
+ ? undefined
39
+ : present(accounts, account.address);
40
+ current = {
41
+ lamports: raw?.lamports ?? 0n,
42
+ length: raw?.data.length ?? 0,
43
+ };
44
+ state.set(account.address, current);
45
+ }
46
+ if (account.state) {
47
+ current.length +=
48
+ account.state.after - (current.state ?? account.state.fresh);
49
+ current.state = account.state.after;
50
+ }
51
+ let lines = 0;
52
+ if (account.held !== undefined) {
53
+ current.lines ??= new Map(account.held);
54
+ const { added } = account;
55
+ const removed = account.removed ?? NONE;
56
+ for (const cargoId of new Set([...added.keys(), ...removed.keys()])) {
57
+ const held = current.lines.get(cargoId);
58
+ const after = (held ?? 0n) +
59
+ (added.get(cargoId) ?? 0n) -
60
+ (removed.get(cargoId) ?? 0n);
61
+ if (held === undefined && after > 0n)
62
+ lines += 1;
63
+ else if (held !== undefined && after <= 0n)
64
+ lines -= 1;
65
+ // Only consumption can empty a line; an added line stays positive.
66
+ if (after > 0n)
67
+ current.lines.set(cargoId, after);
68
+ else
69
+ current.lines.delete(cargoId);
70
+ }
71
+ }
72
+ current.length += (account.growthBytes ?? 0) + lines * CARGO_LINE_BYTES;
73
+ // The program leaves a zero-lamport account unchanged, unless the action
74
+ // creates it and funds its rent.
75
+ if (current.lamports === 0n && !account.created)
76
+ continue;
77
+ const minimum = rent(current.length);
78
+ if (current.lamports < minimum)
79
+ deficit += minimum - current.lamports;
80
+ else
81
+ excess += current.lamports - minimum;
82
+ current.lamports = minimum;
83
+ }
84
+ const profileDebit = action.settlement === 'each'
85
+ ? deficit
86
+ : deficit > excess
87
+ ? deficit - excess
88
+ : 0n;
89
+ return { profileDebit };
90
+ });
91
+ }
92
+ /** The Profile-funded steps of a Plan, in order. */
93
+ export function storageSteps(steps) {
94
+ return steps.flatMap((step) => {
95
+ const known = storageInstruction(step.instruction);
96
+ return known ? [{ ...step, kind: known.kind }] : [];
97
+ });
98
+ }
99
+ /** Rechecks every Profile-funded action's storage before signing. Each
100
+ * action's effect is rederived from its instruction bytes and the fresh
101
+ * accounts, never taken from its guard, and the actions are evaluated in order
102
+ * so each meets the state, storage and surplus the earlier ones left. Each
103
+ * debit must stay within its guard's ceiling and pass the key and balance
104
+ * checks. A Fleet whose state an earlier, unevaluated action writes is refused,
105
+ * since its state change could not be measured. */
106
+ export function validateStorageFunding(steps, guards, accounts, readAction) {
107
+ const results = new Map();
108
+ const remaining = [...guards];
109
+ const unevaluated = new Set();
110
+ const bound = [];
111
+ for (const { instruction } of steps) {
112
+ const known = storageInstruction(instruction);
113
+ if (!known) {
114
+ for (const meta of instruction.accounts ?? [])
115
+ if (isWritableRole(meta.role))
116
+ unevaluated.add(meta.address);
117
+ continue;
118
+ }
119
+ const action = readAction(instruction);
120
+ for (const account of action.accounts)
121
+ if (account.state && unevaluated.has(account.address))
122
+ fail(account.address, `An earlier action in this Plan changes Fleet ${account.address} before an action whose storage depends on the Fleet's state, so that storage cannot be bounded. Execute the earlier action as its own Plan, refresh the Fleet and replan.`);
123
+ if (!known.guarded) {
124
+ bound.push({ guard: undefined, action });
125
+ continue;
126
+ }
127
+ // Plan validation already bound each guarded instruction to exactly one
128
+ // guard.
129
+ const index = remaining.findIndex((guard) => guard.profile === action.profile &&
130
+ guard.authority === action.authority &&
131
+ guard.address === action.accounts[0].address);
132
+ const [guard] = remaining.splice(index, 1);
133
+ bound.push({ guard: guard, action });
134
+ }
135
+ const ordered = evaluateStorage(bound.map(({ action }) => action), accounts);
136
+ bound.forEach(({ guard, action }, index) => {
137
+ const { profileDebit } = ordered[index];
138
+ if (!guard) {
139
+ // A subwarp stop only shrinks a rent-exact Fleet. Anything else
140
+ // would be a draw no guard bounds.
141
+ if (profileDebit > 0n)
142
+ fail(action.accounts[0].address, `Stopping Fleet ${action.accounts[0].address}'s subwarp now needs ${profileDebit} Profile lamports for storage, which this Plan does not bound. Settle the subwarp as its own Plan, refresh the Fleet and replan.`);
143
+ return;
144
+ }
145
+ try {
146
+ results.set(guard, {
147
+ funding: checkProfileStorageFunding({
148
+ profileRaw: present(accounts, guard.profile),
149
+ rentRaw: present(accounts, RENT_ADDRESS),
150
+ authority: action.authority,
151
+ keyIndex: action.keyIndex,
152
+ profileDebit,
153
+ action: 'action',
154
+ maximumProfileDebit: guard.maximumProfileDebit,
155
+ }),
156
+ });
157
+ }
158
+ catch (error) {
159
+ results.set(guard, { error });
160
+ }
161
+ });
162
+ return results;
163
+ }
164
+ /** Plans one action's storage funding from the same derivation execution
165
+ * repeats: its guard and the Plan summary sentence. */
166
+ export function planStorageFunding(input) {
167
+ const { action } = input;
168
+ const evaluated = evaluateStorage([...(input.preceding ?? []), action], input.accounts).at(-1);
169
+ return profileStorageFundingGuard({
170
+ address: action.accounts[0].address,
171
+ profile: action.profile,
172
+ authority: action.authority,
173
+ funding: checkProfileStorageFunding({
174
+ profileRaw: present(input.accounts, action.profile),
175
+ rentRaw: present(input.accounts, RENT_ADDRESS),
176
+ authority: action.authority,
177
+ keyIndex: action.keyIndex,
178
+ profileDebit: evaluated.profileDebit,
179
+ action: input.label,
180
+ }),
181
+ });
182
+ }
183
+ //# sourceMappingURL=storage-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-actions.js","sourceRoot":"","sources":["../../../src/internal/planning/storage-actions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"token-mint.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/token-mint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CA2B7D"}
1
+ {"version":3,"file":"token-mint.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/token-mint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CA2B7D"}
@@ -1,8 +1,9 @@
1
1
  import { SageSdkError } from '../../client/errors.js';
2
+ import { ORIGINAL_TOKEN_PROGRAM } from './original-token.js';
2
3
  /** Validate the finite original Token Mint facts used by wallet transfers. */
3
4
  export function validateTokenMint(account) {
4
5
  if (account.executable ||
5
- account.owner !== 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA' ||
6
+ account.owner !== ORIGINAL_TOKEN_PROGRAM ||
6
7
  account.data.length !== 82)
7
8
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', `Mint ${account.address} must be a non-executable original Token Mint with exactly 82 bytes. Refresh the mint or select a supported original Token mint; Token-2022 is unsupported.`, { address: account.address });
8
9
  const view = new DataView(account.data.buffer, account.data.byteOffset, account.data.byteLength);
@@ -1 +1 @@
1
- {"version":3,"file":"token-mint.js","sourceRoot":"","sources":["../../../src/internal/planning/token-mint.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,OAAmB;IACnD,IACE,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,KAAK,KAAK,6CAA6C;QAC/D,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE;QAE1B,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,QAAQ,OAAO,CAAC,OAAO,6JAA6J,EACpL,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;IACJ,MAAM,IAAI,GAAG,IAAI,QAAQ,CACvB,OAAO,CAAC,IAAI,CAAC,MAAM,EACnB,OAAO,CAAC,IAAI,CAAC,UAAU,EACvB,OAAO,CAAC,IAAI,CAAC,UAAU,CACxB,CAAC;IACF,IACE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC;QAC3B,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC;QAEvB,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,QAAQ,OAAO,CAAC,OAAO,qGAAqG,EAC5H,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;IACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"token-mint.js","sourceRoot":"","sources":["../../../src/internal/planning/token-mint.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,8EAA8E;AAC9E,MAAM,UAAU,iBAAiB,CAAC,OAAmB;IACnD,IACE,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,KAAK,KAAK,sBAAsB;QACxC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE;QAE1B,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,QAAQ,OAAO,CAAC,OAAO,6JAA6J,EACpL,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;IACJ,MAAM,IAAI,GAAG,IAAI,QAAQ,CACvB,OAAO,CAAC,IAAI,CAAC,MAAM,EACnB,OAAO,CAAC,IAAI,CAAC,UAAU,EACvB,OAAO,CAAC,IAAI,CAAC,UAAU,CACxB,CAAC;IACF,IACE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC;QAC3B,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC;QAEvB,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,QAAQ,OAAO,CAAC,OAAO,qGAAqG,EAC5H,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;IACJ,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { type Address } from '@solana/kit';
2
+ import { type PlanAuthorization, type AddressOnlyInstruction } from './authorization-adapter.js';
3
+ /** Address-only adapter for one directional Faction Market trade. */
4
+ export declare function adaptTradeFactionMarketInstruction(input: {
5
+ readonly authorization: PlanAuthorization;
6
+ readonly character: Address;
7
+ readonly game: Address;
8
+ readonly system: Address;
9
+ readonly starbasePlayer: Address;
10
+ readonly fleet: Address;
11
+ readonly factionMarket: Address;
12
+ readonly treasury: Address;
13
+ readonly factionStanding?: Address;
14
+ readonly factionConfig?: Address;
15
+ readonly factionEpochMeter?: Address;
16
+ readonly offerIndex: number;
17
+ readonly quantity: bigint;
18
+ readonly playerBuys: boolean;
19
+ }): AddressOnlyInstruction;
20
+ //# sourceMappingURL=trade-faction-market.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trade-faction-market.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/trade-faction-market.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EAGb,MAAM,aAAa,CAAC;AAMrB,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC5B,MAAM,4BAA4B,CAAC;AA8CpC,qEAAqE;AACrE,wBAAgB,kCAAkC,CAAC,KAAK,EAAE;IACxD,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B,GAAG,sBAAsB,CAyBzB"}
@@ -0,0 +1,56 @@
1
+ import { AccountRole, } from '@solana/kit';
2
+ import { PLAYER_PROFILE_PROGRAM_ADDRESS, SAGE_PROGRAM_ADDRESS, getTradeFactionMarketInstructionDataEncoder, } from '../c4/runtime-bindings.js';
3
+ import { validatePlanAuthorization, } from './authorization-adapter.js';
4
+ const readonlyAccount = (address) => ({
5
+ address,
6
+ role: AccountRole.READONLY,
7
+ });
8
+ const writableAccount = (address) => ({
9
+ address,
10
+ role: AccountRole.WRITABLE,
11
+ });
12
+ const optionalReadonlyAccount = (address, program) => readonlyAccount(address ?? program);
13
+ const optionalWritableAccount = (address, program) => address === undefined ? readonlyAccount(program) : writableAccount(address);
14
+ function authorizationAccounts(input, program) {
15
+ validatePlanAuthorization(input.authorization);
16
+ return [
17
+ {
18
+ address: input.authorization.authority,
19
+ role: AccountRole.READONLY_SIGNER,
20
+ },
21
+ writableAccount(input.authorization.profile),
22
+ readonlyAccount(input.authorization.certificate ?? program),
23
+ readonlyAccount(PLAYER_PROFILE_PROGRAM_ADDRESS),
24
+ ];
25
+ }
26
+ function createAddressOnlyInstruction(programAddress, accounts, data) {
27
+ return Object.freeze({
28
+ programAddress,
29
+ accounts: Object.freeze(accounts.map((account) => Object.freeze(account))),
30
+ data,
31
+ });
32
+ }
33
+ /** Address-only adapter for one directional Faction Market trade. */
34
+ export function adaptTradeFactionMarketInstruction(input) {
35
+ const programAddress = SAGE_PROGRAM_ADDRESS;
36
+ return createAddressOnlyInstruction(programAddress, [
37
+ ...authorizationAccounts(input, programAddress),
38
+ writableAccount(input.character),
39
+ readonlyAccount(input.game),
40
+ readonlyAccount(input.system),
41
+ writableAccount(input.starbasePlayer),
42
+ writableAccount(input.fleet),
43
+ writableAccount(input.factionMarket),
44
+ writableAccount(input.treasury),
45
+ readonlyAccount('11111111111111111111111111111111'),
46
+ optionalWritableAccount(input.factionStanding, programAddress),
47
+ optionalReadonlyAccount(input.factionConfig, programAddress),
48
+ optionalWritableAccount(input.factionEpochMeter, programAddress),
49
+ ], getTradeFactionMarketInstructionDataEncoder().encode({
50
+ keyIndex: input.authorization.keyIndex,
51
+ offerIndex: input.offerIndex,
52
+ quantity: input.quantity,
53
+ playerBuys: input.playerBuys,
54
+ }));
55
+ }
56
+ //# sourceMappingURL=trade-faction-market.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trade-faction-market.js","sourceRoot":"","sources":["../../../src/internal/planning/trade-faction-market.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,GAIZ,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,2CAA2C,GAC5C,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,yBAAyB,GAG1B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAe,EAAE,CAAC,CAAC;IAC1D,OAAO;IACP,IAAI,EAAE,WAAW,CAAC,QAAQ;CAC3B,CAAC,CAAC;AACH,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAe,EAAE,CAAC,CAAC;IAC1D,OAAO;IACP,IAAI,EAAE,WAAW,CAAC,QAAQ;CAC3B,CAAC,CAAC;AACH,MAAM,uBAAuB,GAAG,CAC9B,OAA4B,EAC5B,OAAgB,EAChB,EAAE,CAAC,eAAe,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC;AACzC,MAAM,uBAAuB,GAAG,CAC9B,OAA4B,EAC5B,OAAgB,EAChB,EAAE,CACF,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AAC9E,SAAS,qBAAqB,CAC5B,KAA2C,EAC3C,OAAgB;IAEhB,yBAAyB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC/C,OAAO;QACL;YACE,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,SAAS;YACtC,IAAI,EAAE,WAAW,CAAC,eAAe;SAClC;QACD,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC;QAC5C,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,IAAI,OAAO,CAAC;QAC3D,eAAe,CAAC,8BAA8B,CAAC;KAChD,CAAC;AACJ,CAAC;AACD,SAAS,4BAA4B,CACnC,cAAuB,EACvB,QAAgC,EAChC,IAAwB;IAExB,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,cAAc;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,kCAAkC,CAAC,KAelD;IACC,MAAM,cAAc,GAAG,oBAAoB,CAAC;IAC5C,OAAO,4BAA4B,CACjC,cAAc,EACd;QACE,GAAG,qBAAqB,CAAC,KAAK,EAAE,cAAc,CAAC;QAC/C,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;QAC3B,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC;QAC7B,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC;QACrC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;QAC5B,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC/B,eAAe,CAAC,kCAA6C,CAAC;QAC9D,uBAAuB,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC;QAC9D,uBAAuB,CAAC,KAAK,CAAC,aAAa,EAAE,cAAc,CAAC;QAC5D,uBAAuB,CAAC,KAAK,CAAC,iBAAiB,EAAE,cAAc,CAAC;KACjE,EACD,2CAA2C,EAAE,CAAC,MAAM,CAAC;QACnD,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ;QACtC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC,CACH,CAAC;AACJ,CAAC"}