@aephia/atlas-kit 0.7.0-next.1 → 0.7.0-next.3

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 (601) hide show
  1. package/README.md +5 -0
  2. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  3. package/dist/cargo/actions/deposit.js +4 -4
  4. package/dist/cargo/actions/deposit.js.map +1 -1
  5. package/dist/cargo/actions/index.d.ts.map +1 -1
  6. package/dist/cargo/actions/index.js +20 -20
  7. package/dist/cargo/actions/index.js.map +1 -1
  8. package/dist/cargo/actions/transfer-bounds.d.ts +4 -3
  9. package/dist/cargo/actions/transfer-bounds.d.ts.map +1 -1
  10. package/dist/cargo/actions/transfer-bounds.js +11 -7
  11. package/dist/cargo/actions/transfer-bounds.js.map +1 -1
  12. package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
  13. package/dist/cargo/actions/wallet-context.js +4 -4
  14. package/dist/cargo/actions/wallet-context.js.map +1 -1
  15. package/dist/cargo/actions/withdrawal.js +2 -2
  16. package/dist/cargo/actions/withdrawal.js.map +1 -1
  17. package/dist/cargo/index.js +2 -2
  18. package/dist/cargo/index.js.map +1 -1
  19. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  20. package/dist/claim-stakes/actions/index.js +84 -84
  21. package/dist/claim-stakes/actions/index.js.map +1 -1
  22. package/dist/client/context.d.ts.map +1 -1
  23. package/dist/client/context.js +49 -20
  24. package/dist/client/context.js.map +1 -1
  25. package/dist/client/contracts.d.ts +42 -4
  26. package/dist/client/contracts.d.ts.map +1 -1
  27. package/dist/client/deployments.d.ts +11 -1
  28. package/dist/client/deployments.d.ts.map +1 -1
  29. package/dist/client/deployments.js +14 -0
  30. package/dist/client/deployments.js.map +1 -1
  31. package/dist/client/index.d.ts +18 -1
  32. package/dist/client/index.d.ts.map +1 -1
  33. package/dist/client/index.js +17 -0
  34. package/dist/client/index.js.map +1 -1
  35. package/dist/combat/actions/index.d.ts.map +1 -1
  36. package/dist/combat/actions/index.js +70 -66
  37. package/dist/combat/actions/index.js.map +1 -1
  38. package/dist/combat/index.d.ts.map +1 -1
  39. package/dist/combat/index.js +2 -2
  40. package/dist/combat/index.js.map +1 -1
  41. package/dist/crafting/actions/fee-rate.d.ts.map +1 -1
  42. package/dist/crafting/actions/fee-rate.js +1 -1
  43. package/dist/crafting/actions/fee-rate.js.map +1 -1
  44. package/dist/crafting/actions/index.d.ts.map +1 -1
  45. package/dist/crafting/actions/index.js +44 -45
  46. package/dist/crafting/actions/index.js.map +1 -1
  47. package/dist/crafting/index.d.ts.map +1 -1
  48. package/dist/crafting/index.js +4 -4
  49. package/dist/crafting/index.js.map +1 -1
  50. package/dist/factions/actions/index.d.ts.map +1 -1
  51. package/dist/factions/actions/index.js +7 -8
  52. package/dist/factions/actions/index.js.map +1 -1
  53. package/dist/factions/index.d.ts.map +1 -1
  54. package/dist/factions/index.js +12 -12
  55. package/dist/factions/index.js.map +1 -1
  56. package/dist/factions/profile-faction.js +2 -2
  57. package/dist/factions/profile-faction.js.map +1 -1
  58. package/dist/fleets/actions/add-ship.d.ts.map +1 -1
  59. package/dist/fleets/actions/add-ship.js +5 -5
  60. package/dist/fleets/actions/add-ship.js.map +1 -1
  61. package/dist/fleets/actions/create-fleet.d.ts.map +1 -1
  62. package/dist/fleets/actions/create-fleet.js +4 -4
  63. package/dist/fleets/actions/create-fleet.js.map +1 -1
  64. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -1
  65. package/dist/fleets/actions/crew-transfer.js +5 -2
  66. package/dist/fleets/actions/crew-transfer.js.map +1 -1
  67. package/dist/fleets/actions/deployment-storage.d.ts.map +1 -1
  68. package/dist/fleets/actions/deployment-storage.js +4 -4
  69. package/dist/fleets/actions/deployment-storage.js.map +1 -1
  70. package/dist/fleets/actions/disband.d.ts.map +1 -1
  71. package/dist/fleets/actions/disband.js +6 -6
  72. package/dist/fleets/actions/disband.js.map +1 -1
  73. package/dist/fleets/actions/dock-bounds.d.ts +3 -2
  74. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -1
  75. package/dist/fleets/actions/dock-bounds.js +8 -1
  76. package/dist/fleets/actions/dock-bounds.js.map +1 -1
  77. package/dist/fleets/actions/index.d.ts.map +1 -1
  78. package/dist/fleets/actions/index.js +85 -84
  79. package/dist/fleets/actions/index.js.map +1 -1
  80. package/dist/fleets/actions/respawn.js +1 -1
  81. package/dist/fleets/actions/respawn.js.map +1 -1
  82. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  83. package/dist/fleets/actions/ship-import.js +7 -8
  84. package/dist/fleets/actions/ship-import.js.map +1 -1
  85. package/dist/fleets/actions/sync.d.ts.map +1 -1
  86. package/dist/fleets/actions/sync.js +5 -4
  87. package/dist/fleets/actions/sync.js.map +1 -1
  88. package/dist/fleets/index.js +1 -1
  89. package/dist/fleets/index.js.map +1 -1
  90. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  91. package/dist/identity/actions/create-profile.js +11 -8
  92. package/dist/identity/actions/create-profile.js.map +1 -1
  93. package/dist/identity/actions/index.d.ts.map +1 -1
  94. package/dist/identity/actions/index.js +5 -5
  95. package/dist/identity/actions/index.js.map +1 -1
  96. package/dist/identity/actions/research-unlock.d.ts.map +1 -1
  97. package/dist/identity/actions/research-unlock.js +5 -5
  98. package/dist/identity/actions/research-unlock.js.map +1 -1
  99. package/dist/identity/index.d.ts +0 -14
  100. package/dist/identity/index.d.ts.map +1 -1
  101. package/dist/identity/index.js +5 -19
  102. package/dist/identity/index.js.map +1 -1
  103. package/dist/identity/permissions.d.ts +31 -23
  104. package/dist/identity/permissions.d.ts.map +1 -1
  105. package/dist/identity/permissions.js +27 -30
  106. package/dist/identity/permissions.js.map +1 -1
  107. package/dist/index.d.ts +1 -15
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +0 -14
  110. package/dist/index.js.map +1 -1
  111. package/dist/internal/c4/account-decoding.d.ts +9 -5
  112. package/dist/internal/c4/account-decoding.d.ts.map +1 -1
  113. package/dist/internal/c4/account-decoding.js +8 -7
  114. package/dist/internal/c4/account-decoding.js.map +1 -1
  115. package/dist/internal/c4/adapter.d.ts +2 -2
  116. package/dist/internal/c4/adapter.d.ts.map +1 -1
  117. package/dist/internal/c4/career-xp.d.ts.map +1 -1
  118. package/dist/internal/c4/career-xp.js +3 -3
  119. package/dist/internal/c4/career-xp.js.map +1 -1
  120. package/dist/internal/c4/character-registration.d.ts +2 -1
  121. package/dist/internal/c4/character-registration.d.ts.map +1 -1
  122. package/dist/internal/c4/character-registration.js +3 -3
  123. package/dist/internal/c4/character-registration.js.map +1 -1
  124. package/dist/internal/c4/character.d.ts +3 -3
  125. package/dist/internal/c4/character.d.ts.map +1 -1
  126. package/dist/internal/c4/character.js +6 -6
  127. package/dist/internal/c4/character.js.map +1 -1
  128. package/dist/internal/c4/claim-stake-storage.d.ts +2 -2
  129. package/dist/internal/c4/claim-stake-storage.d.ts.map +1 -1
  130. package/dist/internal/c4/claim-stake-storage.js +2 -2
  131. package/dist/internal/c4/claim-stake-storage.js.map +1 -1
  132. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  133. package/dist/internal/c4/claim-stake.js +2 -2
  134. package/dist/internal/c4/claim-stake.js.map +1 -1
  135. package/dist/internal/c4/combat-storage.d.ts +2 -2
  136. package/dist/internal/c4/combat-storage.d.ts.map +1 -1
  137. package/dist/internal/c4/combat-storage.js +4 -2
  138. package/dist/internal/c4/combat-storage.js.map +1 -1
  139. package/dist/internal/c4/combat.d.ts +2 -2
  140. package/dist/internal/c4/combat.d.ts.map +1 -1
  141. package/dist/internal/c4/combat.js +4 -4
  142. package/dist/internal/c4/combat.js.map +1 -1
  143. package/dist/internal/c4/crafting.d.ts +4 -4
  144. package/dist/internal/c4/crafting.d.ts.map +1 -1
  145. package/dist/internal/c4/crafting.js +10 -10
  146. package/dist/internal/c4/crafting.js.map +1 -1
  147. package/dist/internal/c4/currency-cache.d.ts +3 -3
  148. package/dist/internal/c4/currency-cache.d.ts.map +1 -1
  149. package/dist/internal/c4/currency-cache.js +6 -6
  150. package/dist/internal/c4/currency-cache.js.map +1 -1
  151. package/dist/internal/c4/faction-enrollment.d.ts +0 -3
  152. package/dist/internal/c4/faction-enrollment.d.ts.map +1 -1
  153. package/dist/internal/c4/faction-enrollment.js +1 -3
  154. package/dist/internal/c4/faction-enrollment.js.map +1 -1
  155. package/dist/internal/c4/faction-epoch-meter.d.ts +3 -3
  156. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -1
  157. package/dist/internal/c4/faction-epoch-meter.js +5 -5
  158. package/dist/internal/c4/faction-epoch-meter.js.map +1 -1
  159. package/dist/internal/c4/faction-treasury.d.ts +2 -1
  160. package/dist/internal/c4/faction-treasury.d.ts.map +1 -1
  161. package/dist/internal/c4/faction-treasury.js +4 -4
  162. package/dist/internal/c4/faction-treasury.js.map +1 -1
  163. package/dist/internal/c4/factions.d.ts +12 -12
  164. package/dist/internal/c4/factions.d.ts.map +1 -1
  165. package/dist/internal/c4/factions.js +31 -31
  166. package/dist/internal/c4/factions.js.map +1 -1
  167. package/dist/internal/c4/fleet-arrival.d.ts +2 -2
  168. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -1
  169. package/dist/internal/c4/fleet-arrival.js +3 -3
  170. package/dist/internal/c4/fleet-arrival.js.map +1 -1
  171. package/dist/internal/c4/fleet-creation.d.ts +3 -2
  172. package/dist/internal/c4/fleet-creation.d.ts.map +1 -1
  173. package/dist/internal/c4/fleet-creation.js +7 -8
  174. package/dist/internal/c4/fleet-creation.js.map +1 -1
  175. package/dist/internal/c4/fleet-crew-binding.d.ts +2 -2
  176. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  177. package/dist/internal/c4/fleet-crew-binding.js +4 -4
  178. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  179. package/dist/internal/c4/fleet-disband.d.ts +2 -2
  180. package/dist/internal/c4/fleet-disband.d.ts.map +1 -1
  181. package/dist/internal/c4/fleet-disband.js +7 -8
  182. package/dist/internal/c4/fleet-disband.js.map +1 -1
  183. package/dist/internal/c4/fleet-respawn.d.ts +2 -4
  184. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -1
  185. package/dist/internal/c4/fleet-respawn.js +6 -8
  186. package/dist/internal/c4/fleet-respawn.js.map +1 -1
  187. package/dist/internal/c4/fleet-ship-assembly.d.ts +2 -2
  188. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -1
  189. package/dist/internal/c4/fleet-ship-assembly.js +5 -6
  190. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -1
  191. package/dist/internal/c4/fleet-sync.d.ts +2 -1
  192. package/dist/internal/c4/fleet-sync.d.ts.map +1 -1
  193. package/dist/internal/c4/fleet-sync.js +3 -3
  194. package/dist/internal/c4/fleet-sync.js.map +1 -1
  195. package/dist/internal/c4/fleet.d.ts +4 -4
  196. package/dist/internal/c4/fleet.d.ts.map +1 -1
  197. package/dist/internal/c4/fleet.js +9 -9
  198. package/dist/internal/c4/fleet.js.map +1 -1
  199. package/dist/internal/c4/game.d.ts +12 -12
  200. package/dist/internal/c4/game.d.ts.map +1 -1
  201. package/dist/internal/c4/game.js +24 -24
  202. package/dist/internal/c4/game.js.map +1 -1
  203. package/dist/internal/c4/identity.d.ts +2 -2
  204. package/dist/internal/c4/identity.d.ts.map +1 -1
  205. package/dist/internal/c4/identity.js +6 -6
  206. package/dist/internal/c4/identity.js.map +1 -1
  207. package/dist/internal/c4/local-market-order.d.ts +2 -3
  208. package/dist/internal/c4/local-market-order.d.ts.map +1 -1
  209. package/dist/internal/c4/local-market-order.js +4 -9
  210. package/dist/internal/c4/local-market-order.js.map +1 -1
  211. package/dist/internal/c4/loot.d.ts.map +1 -1
  212. package/dist/internal/c4/loot.js +2 -2
  213. package/dist/internal/c4/loot.js.map +1 -1
  214. package/dist/internal/c4/loyalty.d.ts +4 -4
  215. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  216. package/dist/internal/c4/loyalty.js +10 -10
  217. package/dist/internal/c4/loyalty.js.map +1 -1
  218. package/dist/internal/c4/market.d.ts +3 -3
  219. package/dist/internal/c4/market.d.ts.map +1 -1
  220. package/dist/internal/c4/market.js +7 -7
  221. package/dist/internal/c4/market.js.map +1 -1
  222. package/dist/internal/c4/open-signal.d.ts +3 -4
  223. package/dist/internal/c4/open-signal.d.ts.map +1 -1
  224. package/dist/internal/c4/open-signal.js +7 -10
  225. package/dist/internal/c4/open-signal.js.map +1 -1
  226. package/dist/internal/c4/pda.d.ts +18 -18
  227. package/dist/internal/c4/pda.d.ts.map +1 -1
  228. package/dist/internal/c4/pda.js +35 -36
  229. package/dist/internal/c4/pda.js.map +1 -1
  230. package/dist/internal/c4/profile-creation.d.ts +3 -2
  231. package/dist/internal/c4/profile-creation.d.ts.map +1 -1
  232. package/dist/internal/c4/profile-creation.js +6 -7
  233. package/dist/internal/c4/profile-creation.js.map +1 -1
  234. package/dist/internal/c4/profile-faction.d.ts +2 -2
  235. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  236. package/dist/internal/c4/profile-faction.js +4 -4
  237. package/dist/internal/c4/profile-faction.js.map +1 -1
  238. package/dist/internal/c4/profile-permissions.d.ts +3 -4
  239. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  240. package/dist/internal/c4/profile-permissions.js +7 -9
  241. package/dist/internal/c4/profile-permissions.js.map +1 -1
  242. package/dist/internal/c4/rewards.d.ts +3 -3
  243. package/dist/internal/c4/rewards.d.ts.map +1 -1
  244. package/dist/internal/c4/rewards.js +8 -8
  245. package/dist/internal/c4/rewards.js.map +1 -1
  246. package/dist/internal/c4/runtime-bindings.d.ts +1 -2
  247. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -1
  248. package/dist/internal/c4/runtime-bindings.js +1 -2
  249. package/dist/internal/c4/runtime-bindings.js.map +1 -1
  250. package/dist/internal/c4/scan-lifecycle.d.ts +2 -2
  251. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -1
  252. package/dist/internal/c4/scan-lifecycle.js +4 -4
  253. package/dist/internal/c4/scan-lifecycle.js.map +1 -1
  254. package/dist/internal/c4/scanning.d.ts +2 -2
  255. package/dist/internal/c4/scanning.d.ts.map +1 -1
  256. package/dist/internal/c4/scanning.js +4 -4
  257. package/dist/internal/c4/scanning.js.map +1 -1
  258. package/dist/internal/c4/starbase.d.ts +2 -2
  259. package/dist/internal/c4/starbase.d.ts.map +1 -1
  260. package/dist/internal/c4/starbase.js +5 -5
  261. package/dist/internal/c4/starbase.js.map +1 -1
  262. package/dist/internal/c4/wallet-cargo-cache.d.ts +2 -2
  263. package/dist/internal/c4/wallet-cargo-cache.d.ts.map +1 -1
  264. package/dist/internal/c4/wallet-cargo-cache.js +3 -3
  265. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
  266. package/dist/internal/c4/world.d.ts +3 -3
  267. package/dist/internal/c4/world.d.ts.map +1 -1
  268. package/dist/internal/c4/world.js +9 -9
  269. package/dist/internal/c4/world.js.map +1 -1
  270. package/dist/internal/planning/arrival-guards.d.ts +2 -1
  271. package/dist/internal/planning/arrival-guards.d.ts.map +1 -1
  272. package/dist/internal/planning/arrival-guards.js +4 -5
  273. package/dist/internal/planning/arrival-guards.js.map +1 -1
  274. package/dist/internal/planning/authorization-adapter.d.ts +35 -34
  275. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  276. package/dist/internal/planning/authorization-adapter.js +105 -105
  277. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  278. package/dist/internal/planning/cargo-storage-actions.d.ts +2 -2
  279. package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -1
  280. package/dist/internal/planning/cargo-storage-actions.js +7 -5
  281. package/dist/internal/planning/cargo-storage-actions.js.map +1 -1
  282. package/dist/internal/planning/character-access.d.ts +3 -3
  283. package/dist/internal/planning/character-access.d.ts.map +1 -1
  284. package/dist/internal/planning/character-access.js +6 -5
  285. package/dist/internal/planning/character-access.js.map +1 -1
  286. package/dist/internal/planning/character-registration-guard.d.ts +2 -1
  287. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -1
  288. package/dist/internal/planning/character-registration-guard.js +3 -4
  289. package/dist/internal/planning/character-registration-guard.js.map +1 -1
  290. package/dist/internal/planning/character-registration.d.ts.map +1 -1
  291. package/dist/internal/planning/character-registration.js +2 -2
  292. package/dist/internal/planning/character-registration.js.map +1 -1
  293. package/dist/internal/planning/claim-stake-storage-actions.d.ts +2 -2
  294. package/dist/internal/planning/claim-stake-storage-actions.d.ts.map +1 -1
  295. package/dist/internal/planning/claim-stake-storage-actions.js +3 -3
  296. package/dist/internal/planning/claim-stake-storage-actions.js.map +1 -1
  297. package/dist/internal/planning/combat-storage-actions.d.ts +2 -2
  298. package/dist/internal/planning/combat-storage-actions.d.ts.map +1 -1
  299. package/dist/internal/planning/combat-storage-actions.js +3 -3
  300. package/dist/internal/planning/combat-storage-actions.js.map +1 -1
  301. package/dist/internal/planning/crafting-storage-actions.d.ts +2 -2
  302. package/dist/internal/planning/crafting-storage-actions.d.ts.map +1 -1
  303. package/dist/internal/planning/crafting-storage-actions.js +6 -6
  304. package/dist/internal/planning/crafting-storage-actions.js.map +1 -1
  305. package/dist/internal/planning/currency-cache-guard.d.ts +2 -1
  306. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -1
  307. package/dist/internal/planning/currency-cache-guard.js +2 -3
  308. package/dist/internal/planning/currency-cache-guard.js.map +1 -1
  309. package/dist/internal/planning/democracy-history.d.ts.map +1 -1
  310. package/dist/internal/planning/democracy-history.js +9 -9
  311. package/dist/internal/planning/democracy-history.js.map +1 -1
  312. package/dist/internal/planning/faction-enrollment.d.ts +2 -2
  313. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  314. package/dist/internal/planning/faction-enrollment.js +6 -6
  315. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  316. package/dist/internal/planning/faction-trade-state.d.ts +4 -4
  317. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -1
  318. package/dist/internal/planning/faction-trade-state.js +9 -9
  319. package/dist/internal/planning/faction-trade-state.js.map +1 -1
  320. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -1
  321. package/dist/internal/planning/fleet-arrival.js +8 -9
  322. package/dist/internal/planning/fleet-arrival.js.map +1 -1
  323. package/dist/internal/planning/fleet-attack-xp.d.ts +2 -2
  324. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -1
  325. package/dist/internal/planning/fleet-attack-xp.js +7 -7
  326. package/dist/internal/planning/fleet-attack-xp.js.map +1 -1
  327. package/dist/internal/planning/fleet-creation.d.ts +3 -3
  328. package/dist/internal/planning/fleet-creation.d.ts.map +1 -1
  329. package/dist/internal/planning/fleet-creation.js +9 -10
  330. package/dist/internal/planning/fleet-creation.js.map +1 -1
  331. package/dist/internal/planning/fleet-crew-guard.d.ts +4 -3
  332. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -1
  333. package/dist/internal/planning/fleet-crew-guard.js +7 -8
  334. package/dist/internal/planning/fleet-crew-guard.js.map +1 -1
  335. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -1
  336. package/dist/internal/planning/fleet-crew-transfer.js +16 -17
  337. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -1
  338. package/dist/internal/planning/fleet-disband-guard.d.ts +2 -1
  339. package/dist/internal/planning/fleet-disband-guard.d.ts.map +1 -1
  340. package/dist/internal/planning/fleet-disband-guard.js +4 -5
  341. package/dist/internal/planning/fleet-disband-guard.js.map +1 -1
  342. package/dist/internal/planning/fleet-disband.d.ts +3 -3
  343. package/dist/internal/planning/fleet-disband.d.ts.map +1 -1
  344. package/dist/internal/planning/fleet-disband.js +11 -12
  345. package/dist/internal/planning/fleet-disband.js.map +1 -1
  346. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +2 -1
  347. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -1
  348. package/dist/internal/planning/fleet-dock-funding-guard.js +2 -3
  349. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -1
  350. package/dist/internal/planning/fleet-dock-funding.d.ts +2 -2
  351. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -1
  352. package/dist/internal/planning/fleet-dock-funding.js +9 -9
  353. package/dist/internal/planning/fleet-dock-funding.js.map +1 -1
  354. package/dist/internal/planning/fleet-docking-guard.d.ts +2 -1
  355. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -1
  356. package/dist/internal/planning/fleet-docking-guard.js +4 -5
  357. package/dist/internal/planning/fleet-docking-guard.js.map +1 -1
  358. package/dist/internal/planning/fleet-docking.d.ts +2 -2
  359. package/dist/internal/planning/fleet-docking.d.ts.map +1 -1
  360. package/dist/internal/planning/fleet-docking.js +11 -12
  361. package/dist/internal/planning/fleet-docking.js.map +1 -1
  362. package/dist/internal/planning/fleet-rental.d.ts +2 -1
  363. package/dist/internal/planning/fleet-rental.d.ts.map +1 -1
  364. package/dist/internal/planning/fleet-rental.js +2 -3
  365. package/dist/internal/planning/fleet-rental.js.map +1 -1
  366. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -1
  367. package/dist/internal/planning/fleet-respawn.js +16 -18
  368. package/dist/internal/planning/fleet-respawn.js.map +1 -1
  369. package/dist/internal/planning/fleet-ship-assembly.d.ts +3 -3
  370. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -1
  371. package/dist/internal/planning/fleet-ship-assembly.js +12 -13
  372. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -1
  373. package/dist/internal/planning/governance-fees.d.ts.map +1 -1
  374. package/dist/internal/planning/governance-fees.js +12 -12
  375. package/dist/internal/planning/governance-fees.js.map +1 -1
  376. package/dist/internal/planning/local-market-order-funding.d.ts +2 -2
  377. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -1
  378. package/dist/internal/planning/local-market-order-funding.js +11 -11
  379. package/dist/internal/planning/local-market-order-funding.js.map +1 -1
  380. package/dist/internal/planning/local-market-order.d.ts +2 -1
  381. package/dist/internal/planning/local-market-order.d.ts.map +1 -1
  382. package/dist/internal/planning/local-market-order.js +4 -4
  383. package/dist/internal/planning/local-market-order.js.map +1 -1
  384. package/dist/internal/planning/market-storage-actions.d.ts +2 -2
  385. package/dist/internal/planning/market-storage-actions.d.ts.map +1 -1
  386. package/dist/internal/planning/market-storage-actions.js +3 -3
  387. package/dist/internal/planning/market-storage-actions.js.map +1 -1
  388. package/dist/internal/planning/mining-stop.d.ts +3 -3
  389. package/dist/internal/planning/mining-stop.d.ts.map +1 -1
  390. package/dist/internal/planning/mining-stop.js +5 -6
  391. package/dist/internal/planning/mining-stop.js.map +1 -1
  392. package/dist/internal/planning/mining-storage-actions.d.ts +2 -2
  393. package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -1
  394. package/dist/internal/planning/mining-storage-actions.js +2 -2
  395. package/dist/internal/planning/mining-storage-actions.js.map +1 -1
  396. package/dist/internal/planning/movement-storage-actions.d.ts +2 -2
  397. package/dist/internal/planning/movement-storage-actions.d.ts.map +1 -1
  398. package/dist/internal/planning/movement-storage-actions.js +2 -2
  399. package/dist/internal/planning/movement-storage-actions.js.map +1 -1
  400. package/dist/internal/planning/movement-xp-guard.d.ts +2 -1
  401. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -1
  402. package/dist/internal/planning/movement-xp-guard.js +3 -3
  403. package/dist/internal/planning/movement-xp-guard.js.map +1 -1
  404. package/dist/internal/planning/open-signal-guard.d.ts +2 -1
  405. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -1
  406. package/dist/internal/planning/open-signal-guard.js +4 -4
  407. package/dist/internal/planning/open-signal-guard.js.map +1 -1
  408. package/dist/internal/planning/open-signal.d.ts +3 -3
  409. package/dist/internal/planning/open-signal.d.ts.map +1 -1
  410. package/dist/internal/planning/open-signal.js +12 -13
  411. package/dist/internal/planning/open-signal.js.map +1 -1
  412. package/dist/internal/planning/own-starbase-facts.d.ts +2 -2
  413. package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -1
  414. package/dist/internal/planning/own-starbase-facts.js +7 -7
  415. package/dist/internal/planning/own-starbase-facts.js.map +1 -1
  416. package/dist/internal/planning/profile-storage-funding-guard.d.ts +3 -2
  417. package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -1
  418. package/dist/internal/planning/profile-storage-funding-guard.js +4 -5
  419. package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -1
  420. package/dist/internal/planning/profile-storage-funding.d.ts +3 -3
  421. package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -1
  422. package/dist/internal/planning/profile-storage-funding.js +5 -6
  423. package/dist/internal/planning/profile-storage-funding.js.map +1 -1
  424. package/dist/internal/planning/qualified-deployment.d.ts +11 -0
  425. package/dist/internal/planning/qualified-deployment.d.ts.map +1 -0
  426. package/dist/internal/planning/qualified-deployment.js +15 -0
  427. package/dist/internal/planning/qualified-deployment.js.map +1 -0
  428. package/dist/internal/planning/recipe-state.d.ts +3 -3
  429. package/dist/internal/planning/recipe-state.d.ts.map +1 -1
  430. package/dist/internal/planning/recipe-state.js +5 -5
  431. package/dist/internal/planning/recipe-state.js.map +1 -1
  432. package/dist/internal/planning/region-access.d.ts +5 -5
  433. package/dist/internal/planning/region-access.d.ts.map +1 -1
  434. package/dist/internal/planning/region-access.js +12 -12
  435. package/dist/internal/planning/region-access.js.map +1 -1
  436. package/dist/internal/planning/rent-catalog.d.ts +2 -2
  437. package/dist/internal/planning/rent-catalog.d.ts.map +1 -1
  438. package/dist/internal/planning/rent-catalog.js +8 -9
  439. package/dist/internal/planning/rent-catalog.js.map +1 -1
  440. package/dist/internal/planning/research-unlock.d.ts +4 -4
  441. package/dist/internal/planning/research-unlock.d.ts.map +1 -1
  442. package/dist/internal/planning/research-unlock.js +19 -21
  443. package/dist/internal/planning/research-unlock.js.map +1 -1
  444. package/dist/internal/planning/respawn-guards.d.ts +2 -1
  445. package/dist/internal/planning/respawn-guards.d.ts.map +1 -1
  446. package/dist/internal/planning/respawn-guards.js +2 -3
  447. package/dist/internal/planning/respawn-guards.js.map +1 -1
  448. package/dist/internal/planning/runtime-guards.d.ts +2 -2
  449. package/dist/internal/planning/runtime-guards.d.ts.map +1 -1
  450. package/dist/internal/planning/runtime-guards.js +10 -11
  451. package/dist/internal/planning/runtime-guards.js.map +1 -1
  452. package/dist/internal/planning/scan-completion-guard.d.ts +4 -3
  453. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -1
  454. package/dist/internal/planning/scan-completion-guard.js +7 -8
  455. package/dist/internal/planning/scan-completion-guard.js.map +1 -1
  456. package/dist/internal/planning/scan-completion.d.ts +1 -1
  457. package/dist/internal/planning/scan-completion.d.ts.map +1 -1
  458. package/dist/internal/planning/scan-completion.js +12 -14
  459. package/dist/internal/planning/scan-completion.js.map +1 -1
  460. package/dist/internal/planning/scan-detect-guard.d.ts +5 -4
  461. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -1
  462. package/dist/internal/planning/scan-detect-guard.js +7 -8
  463. package/dist/internal/planning/scan-detect-guard.js.map +1 -1
  464. package/dist/internal/planning/scan-detect.d.ts +2 -2
  465. package/dist/internal/planning/scan-detect.d.ts.map +1 -1
  466. package/dist/internal/planning/scan-detect.js +17 -18
  467. package/dist/internal/planning/scan-detect.js.map +1 -1
  468. package/dist/internal/planning/ship-import-funding.d.ts +3 -3
  469. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -1
  470. package/dist/internal/planning/ship-import-funding.js +7 -7
  471. package/dist/internal/planning/ship-import-funding.js.map +1 -1
  472. package/dist/internal/planning/starbase-player-owner.d.ts +2 -1
  473. package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -1
  474. package/dist/internal/planning/starbase-player-owner.js +3 -4
  475. package/dist/internal/planning/starbase-player-owner.js.map +1 -1
  476. package/dist/internal/planning/starbase-player-recovery-guard.d.ts +2 -1
  477. package/dist/internal/planning/starbase-player-recovery-guard.d.ts.map +1 -1
  478. package/dist/internal/planning/starbase-player-recovery-guard.js +4 -5
  479. package/dist/internal/planning/starbase-player-recovery-guard.js.map +1 -1
  480. package/dist/internal/planning/starbase-system-guard.d.ts +3 -2
  481. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -1
  482. package/dist/internal/planning/starbase-system-guard.js +8 -8
  483. package/dist/internal/planning/starbase-system-guard.js.map +1 -1
  484. package/dist/internal/planning/starbase-system.d.ts +2 -2
  485. package/dist/internal/planning/starbase-system.d.ts.map +1 -1
  486. package/dist/internal/planning/starbase-system.js +3 -3
  487. package/dist/internal/planning/starbase-system.js.map +1 -1
  488. package/dist/internal/planning/storage-action-readers.d.ts +2 -2
  489. package/dist/internal/planning/storage-action-readers.d.ts.map +1 -1
  490. package/dist/internal/planning/storage-action-readers.js +7 -5
  491. package/dist/internal/planning/storage-action-readers.js.map +1 -1
  492. package/dist/internal/planning/storage-actions.d.ts +4 -4
  493. package/dist/internal/planning/storage-actions.d.ts.map +1 -1
  494. package/dist/internal/planning/storage-actions.js +7 -7
  495. package/dist/internal/planning/storage-actions.js.map +1 -1
  496. package/dist/internal/planning/trade-faction-market.d.ts +2 -1
  497. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -1
  498. package/dist/internal/planning/trade-faction-market.js +6 -6
  499. package/dist/internal/planning/trade-faction-market.js.map +1 -1
  500. package/dist/internal/planning/wallet-starbase.d.ts +2 -2
  501. package/dist/internal/planning/wallet-starbase.d.ts.map +1 -1
  502. package/dist/internal/planning/wallet-starbase.js +7 -8
  503. package/dist/internal/planning/wallet-starbase.js.map +1 -1
  504. package/dist/internal/planning/xp-runtime.d.ts.map +1 -1
  505. package/dist/internal/planning/xp-runtime.js +13 -13
  506. package/dist/internal/planning/xp-runtime.js.map +1 -1
  507. package/dist/loyalty/actions/index.d.ts.map +1 -1
  508. package/dist/loyalty/actions/index.js +7 -7
  509. package/dist/loyalty/actions/index.js.map +1 -1
  510. package/dist/loyalty/index.d.ts.map +1 -1
  511. package/dist/loyalty/index.js +9 -9
  512. package/dist/loyalty/index.js.map +1 -1
  513. package/dist/markets/actions/index.d.ts +4 -2
  514. package/dist/markets/actions/index.d.ts.map +1 -1
  515. package/dist/markets/actions/index.js +28 -20
  516. package/dist/markets/actions/index.js.map +1 -1
  517. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -1
  518. package/dist/markets/actions/trade-faction-market.js +22 -23
  519. package/dist/markets/actions/trade-faction-market.js.map +1 -1
  520. package/dist/markets/index.d.ts +12 -5
  521. package/dist/markets/index.d.ts.map +1 -1
  522. package/dist/markets/index.js +17 -10
  523. package/dist/markets/index.js.map +1 -1
  524. package/dist/mining/actions/index.d.ts.map +1 -1
  525. package/dist/mining/actions/index.js +25 -24
  526. package/dist/mining/actions/index.js.map +1 -1
  527. package/dist/mining/index.d.ts.map +1 -1
  528. package/dist/mining/index.js +2 -2
  529. package/dist/mining/index.js.map +1 -1
  530. package/dist/planning/assembly.d.ts +2 -2
  531. package/dist/planning/assembly.d.ts.map +1 -1
  532. package/dist/planning/assembly.js +6 -3
  533. package/dist/planning/assembly.js.map +1 -1
  534. package/dist/planning/execution.d.ts.map +1 -1
  535. package/dist/planning/execution.js +34 -35
  536. package/dist/planning/execution.js.map +1 -1
  537. package/dist/planning/index.d.ts +15 -3
  538. package/dist/planning/index.d.ts.map +1 -1
  539. package/dist/planning/index.js +32 -11
  540. package/dist/planning/index.js.map +1 -1
  541. package/dist/planning/plan-construction.d.ts +5 -2
  542. package/dist/planning/plan-construction.d.ts.map +1 -1
  543. package/dist/planning/plan-construction.js +16 -4
  544. package/dist/planning/plan-construction.js.map +1 -1
  545. package/dist/planning/plan-validation.d.ts +4 -3
  546. package/dist/planning/plan-validation.d.ts.map +1 -1
  547. package/dist/planning/plan-validation.js +56 -56
  548. package/dist/planning/plan-validation.js.map +1 -1
  549. package/dist/planning/simulation.js +1 -1
  550. package/dist/planning/simulation.js.map +1 -1
  551. package/dist/registry/cargo.d.ts.map +1 -1
  552. package/dist/registry/cargo.js +2 -2
  553. package/dist/registry/cargo.js.map +1 -1
  554. package/dist/registry/claim-stakes.d.ts.map +1 -1
  555. package/dist/registry/claim-stakes.js +1 -1
  556. package/dist/registry/claim-stakes.js.map +1 -1
  557. package/dist/registry/docking.d.ts +2 -2
  558. package/dist/registry/docking.d.ts.map +1 -1
  559. package/dist/registry/docking.js +2 -2
  560. package/dist/registry/docking.js.map +1 -1
  561. package/dist/registry/index.js +1 -1
  562. package/dist/registry/index.js.map +1 -1
  563. package/dist/registry/onboarding.d.ts +2 -2
  564. package/dist/registry/onboarding.d.ts.map +1 -1
  565. package/dist/registry/onboarding.js +4 -4
  566. package/dist/registry/onboarding.js.map +1 -1
  567. package/dist/registry/scanning.js +1 -1
  568. package/dist/registry/scanning.js.map +1 -1
  569. package/dist/registry/ships.d.ts +3 -3
  570. package/dist/registry/ships.d.ts.map +1 -1
  571. package/dist/registry/ships.js +10 -7
  572. package/dist/registry/ships.js.map +1 -1
  573. package/dist/registry/xp-runtime.js +1 -1
  574. package/dist/registry/xp-runtime.js.map +1 -1
  575. package/dist/rewards/index.d.ts.map +1 -1
  576. package/dist/rewards/index.js +3 -3
  577. package/dist/rewards/index.js.map +1 -1
  578. package/dist/scanning/actions/index.d.ts.map +1 -1
  579. package/dist/scanning/actions/index.js +7 -7
  580. package/dist/scanning/actions/index.js.map +1 -1
  581. package/dist/scanning/index.d.ts.map +1 -1
  582. package/dist/scanning/index.js +4 -4
  583. package/dist/scanning/index.js.map +1 -1
  584. package/dist/scanning/signals.d.ts.map +1 -1
  585. package/dist/scanning/signals.js +1 -1
  586. package/dist/scanning/signals.js.map +1 -1
  587. package/dist/starbases/actions/index.d.ts.map +1 -1
  588. package/dist/starbases/actions/index.js +25 -26
  589. package/dist/starbases/actions/index.js.map +1 -1
  590. package/dist/starbases/index.d.ts.map +1 -1
  591. package/dist/starbases/index.js +1 -1
  592. package/dist/starbases/index.js.map +1 -1
  593. package/dist/world/index.d.ts +7 -4
  594. package/dist/world/index.d.ts.map +1 -1
  595. package/dist/world/index.js +11 -9
  596. package/dist/world/index.js.map +1 -1
  597. package/package.json +61 -31
  598. package/dist/internal/c4/mining-instructions.d.ts +0 -2
  599. package/dist/internal/c4/mining-instructions.d.ts.map +0 -1
  600. package/dist/internal/c4/mining-instructions.js +0 -3
  601. package/dist/internal/c4/mining-instructions.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import type { Address } from '@solana/kit';
2
- import type { RawAccount } from '../../client/contracts.js';
2
+ import type { RawAccount, SageProgramAddresses } from '../../client/contracts.js';
3
3
  import { type RegionTracker } from '../c4/runtime-bindings.js';
4
4
  type ExactCoordinate = {
5
5
  readonly x: bigint;
@@ -8,23 +8,23 @@ type ExactCoordinate = {
8
8
  /** The Regions containing a Star System's coordinate, in tracker order; an
9
9
  * empty list is deep space. The tracker must be the canonical version 0
10
10
  * account. */
11
- export declare function regionsContainingSystem(tracker: RawAccount, system: RawAccount | undefined, game: Address): Promise<RegionTracker['regions']['unsizedList']>;
11
+ export declare function regionsContainingSystem(programs: SageProgramAddresses, tracker: RawAccount, system: RawAccount | undefined, game: Address): Promise<RegionTracker['regions']['unsizedList']>;
12
12
  /** Digest of the access data of every Region containing a Star System's
13
13
  * coordinate: id, owner, safety status and risk zone, in tracker order. An
14
14
  * empty list is deep space. Other Regions and their systems may change.
15
15
  */
16
- export declare function hashRegionAccess(tracker: RawAccount, system: RawAccount | undefined, game: Address): Promise<string>;
16
+ export declare function hashRegionAccess(programs: SageProgramAddresses, tracker: RawAccount, system: RawAccount | undefined, game: Address): Promise<string>;
17
17
  /** A Fleet's exact action coordinate in `game`: its Idle location, or the end
18
18
  * of the warp or subwarp a movement start settles first; `undefined` for any
19
19
  * other state, another Game or a missing Fleet.
20
20
  */
21
- export declare function fleetActionCoordinate(fleet: RawAccount | undefined, game: Address): ExactCoordinate | undefined;
21
+ export declare function fleetActionCoordinate(programs: SageProgramAddresses, fleet: RawAccount | undefined, game: Address): ExactCoordinate | undefined;
22
22
  /** Digest of the Regions a straight path can touch: the Region count, then the
23
23
  * id, border, bounding box, owner, safety status and risk zone of every Region
24
24
  * whose bounding box overlaps the path's, in tracker order. The tracker must
25
25
  * be the canonical version 0 account; Regions away from the path, and every
26
26
  * Region's systems, may change.
27
27
  */
28
- export declare function hashRegionPath(tracker: RawAccount, game: Address, from: ExactCoordinate, to: ExactCoordinate): Promise<string>;
28
+ export declare function hashRegionPath(programs: SageProgramAddresses, tracker: RawAccount, game: Address, from: ExactCoordinate, to: ExactCoordinate): Promise<string>;
29
29
  export {};
30
30
  //# sourceMappingURL=region-access.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"region-access.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/region-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAQ5D,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAC;AAInC,KAAK,eAAe,GAAG;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAgClE;;cAEc;AACd,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC,CAalD;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,IAAI,EAAE,OAAO,GACZ,eAAe,GAAG,SAAS,CAa7B;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,eAAe,EACrB,EAAE,EAAE,eAAe,GAClB,OAAO,CAAC,MAAM,CAAC,CA+BjB"}
1
+ {"version":3,"file":"region-access.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/region-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAQnC,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,2BAA2B,CAAC;AAInC,KAAK,eAAe,GAAG;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAiClE;;cAEc;AACd,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC,CAclD;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,IAAI,EAAE,OAAO,GACZ,eAAe,GAAG,SAAS,CAa7B;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,eAAe,EACrB,EAAE,EAAE,eAAe,GAClB,OAAO,CAAC,MAAM,CAAC,CAgCjB"}
@@ -6,10 +6,10 @@ import { getFleetDecoder, getRegionTrackerDecoder, getStarSystemDecoder, } from
6
6
  import { starSystemAccountDefinition } from '../c4/world.js';
7
7
  import { hashAccountState } from './account-state.js';
8
8
  /** Decodes the canonical version 0 RegionTracker, or refuses with `message`. */
9
- async function decodeTracker(tracker, game, valid, message) {
9
+ async function decodeTracker(programs, tracker, game, valid, message) {
10
10
  const decoded = !tracker.executable &&
11
- tracker.address === (await deriveRegionTrackerAddress(game))
12
- ? regionTrackerAccountDefinition.decode(tracker)
11
+ tracker.address === (await deriveRegionTrackerAddress(programs, game))
12
+ ? regionTrackerAccountDefinition.decode(tracker, programs)
13
13
  : undefined;
14
14
  if (!valid || decoded?.game !== game || decoded.version !== 0)
15
15
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, {
@@ -23,9 +23,9 @@ function hashRegions(tracker, value) {
23
23
  /** The Regions containing a Star System's coordinate, in tracker order; an
24
24
  * empty list is deep space. The tracker must be the canonical version 0
25
25
  * account. */
26
- export async function regionsContainingSystem(tracker, system, game) {
27
- const data = await decodeTracker(tracker, game, system !== undefined, 'The Star System is missing, or the RegionTracker is not the canonical version 0 account for this Game. Refresh world region data and recreate the Plan.');
28
- starSystemAccountDefinition.validate(system);
26
+ export async function regionsContainingSystem(programs, tracker, system, game) {
27
+ const data = await decodeTracker(programs, tracker, game, system !== undefined, 'The Star System is missing, or the RegionTracker is not the canonical version 0 account for this Game. Refresh world region data and recreate the Plan.');
28
+ starSystemAccountDefinition.validate(system, programs);
29
29
  const [x, y] = getStarSystemDecoder().decode(system.data).coordinates;
30
30
  const coordinate = { x: x.raw, y: y.raw };
31
31
  return data.regions.unsizedList.filter((region) => regionContainsCoordinate(region, coordinate));
@@ -34,8 +34,8 @@ export async function regionsContainingSystem(tracker, system, game) {
34
34
  * coordinate: id, owner, safety status and risk zone, in tracker order. An
35
35
  * empty list is deep space. Other Regions and their systems may change.
36
36
  */
37
- export async function hashRegionAccess(tracker, system, game) {
38
- const regions = await regionsContainingSystem(tracker, system, game);
37
+ export async function hashRegionAccess(programs, tracker, system, game) {
38
+ const regions = await regionsContainingSystem(programs, tracker, system, game);
39
39
  return hashRegions(tracker, regions.map(({ id, owner, safetyStatus, riskZone }) => [
40
40
  id,
41
41
  owner,
@@ -47,10 +47,10 @@ export async function hashRegionAccess(tracker, system, game) {
47
47
  * of the warp or subwarp a movement start settles first; `undefined` for any
48
48
  * other state, another Game or a missing Fleet.
49
49
  */
50
- export function fleetActionCoordinate(fleet, game) {
50
+ export function fleetActionCoordinate(programs, fleet, game) {
51
51
  if (!fleet)
52
52
  return undefined;
53
- fleetAccountDefinition.validate(fleet);
53
+ fleetAccountDefinition.validate(fleet, programs);
54
54
  const { gameId, location, state } = getFleetDecoder().decode(fleet.data);
55
55
  const at = state.__kind === 'Idle'
56
56
  ? location
@@ -67,8 +67,8 @@ export function fleetActionCoordinate(fleet, game) {
67
67
  * be the canonical version 0 account; Regions away from the path, and every
68
68
  * Region's systems, may change.
69
69
  */
70
- export async function hashRegionPath(tracker, game, from, to) {
71
- const data = await decodeTracker(tracker, game, true, 'The RegionTracker is not the canonical version 0 account for this Game. Refresh world region data and recreate the coordinate movement Plan.');
70
+ export async function hashRegionPath(programs, tracker, game, from, to) {
71
+ const data = await decodeTracker(programs, tracker, game, true, 'The RegionTracker is not the canonical version 0 account for this Game. Refresh world region data and recreate the coordinate movement Plan.');
72
72
  const [minX, maxX] = from.x < to.x ? [from.x, to.x] : [to.x, from.x];
73
73
  const [minY, maxY] = from.y < to.y ? [from.y, to.y] : [to.y, from.y];
74
74
  const regions = data.regions.unsizedList
@@ -1 +1 @@
1
- {"version":3,"file":"region-access.js","sourceRoot":"","sources":["../../../src/internal/planning/region-access.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,oBAAoB,GAErB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAItD,gFAAgF;AAChF,KAAK,UAAU,aAAa,CAC1B,OAAmB,EACnB,IAAa,EACb,KAAc,EACd,OAAe;IAEf,MAAM,OAAO,GACX,CAAC,OAAO,CAAC,UAAU;QACnB,OAAO,CAAC,OAAO,KAAK,CAAC,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC,CAAC,8BAA8B,CAAC,MAAM,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,SAAS,CAAC;IAChB,IAAI,CAAC,KAAK,IAAI,OAAO,EAAE,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,CAAC;QAC3D,MAAM,IAAI,YAAY,CAAC,4BAA4B,EAAE,OAAO,EAAE;YAC5D,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,OAAO,uBAAuB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB,EAAE,KAAc;IACtD,OAAO,gBAAgB,CACrB,OAAO,CAAC,KAAK,EACb,IAAI,WAAW,EAAE,CAAC,MAAM,CACtB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAa,EAAE,EAAE,CAC5C,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAC/C,CACF,CACF,CAAC;AACJ,CAAC;AAED;;cAEc;AACd,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAmB,EACnB,MAA8B,EAC9B,IAAa;IAEb,MAAM,IAAI,GAAG,MAAM,aAAa,CAC9B,OAAO,EACP,IAAI,EACJ,MAAM,KAAK,SAAS,EACpB,yJAAyJ,CAC1J,CAAC;IACF,2BAA2B,CAAC,QAAQ,CAAC,MAAO,CAAC,CAAC;IAC9C,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,oBAAoB,EAAE,CAAC,MAAM,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC;IACvE,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,CAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAE,CAAC,GAAG,EAAE,CAAC;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAChD,wBAAwB,CAAC,MAAM,EAAE,UAAU,CAAC,CAC7C,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAmB,EACnB,MAA8B,EAC9B,IAAa;IAEb,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrE,OAAO,WAAW,CAChB,OAAO,EACP,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACrD,EAAE;QACF,KAAK;QACL,YAAY;QACZ,QAAQ;KACT,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAA6B,EAC7B,IAAa;IAEb,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,eAAe,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,EAAE,GACN,KAAK,CAAC,MAAM,KAAK,MAAM;QACrB,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,UAAU;YAC3B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;YACpB,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,aAAa;gBAC9B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;gBAC5B,CAAC,CAAC,SAAS,CAAC;IACpB,OAAO,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9E,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAmB,EACnB,IAAa,EACb,IAAqB,EACrB,EAAmB;IAEnB,MAAM,IAAI,GAAG,MAAM,aAAa,CAC9B,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,8IAA8I,CAC/I,CAAC;IACF,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW;SACrC,MAAM,CACL,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,CACvB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI;QACpB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI;QACpB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI;QACpB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CACvB;SACA,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnE,EAAE;QACF,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAClD;YACE,WAAW,CAAC,IAAI;YAChB,WAAW,CAAC,IAAI;YAChB,WAAW,CAAC,IAAI;YAChB,WAAW,CAAC,IAAI;SACjB,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;QACvB,KAAK;QACL,YAAY;QACZ,QAAQ;KACT,CAAC,CAAC;IACL,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"region-access.js","sourceRoot":"","sources":["../../../src/internal/planning/region-access.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type Address } from '@solana/kit';
2
- import type { SageContext } from '../../client/contracts.js';
2
+ import type { SageContext, SageProgramAddresses } from '../../client/contracts.js';
3
3
  import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
4
4
  /** Baseline-record hints; the program reads them only under an Active catalog. */
5
5
  export declare const DISABLED_RENT_HINTS: readonly number[];
@@ -33,5 +33,5 @@ export declare function requireDisabledLevelRent(ctx: SageContext, game: Address
33
33
  }>;
34
34
  /** Binds every rent account of a recognized instruction to an absence guard
35
35
  * and rejects rent pages, supplied optional rent accounts and nonzero hints. */
36
- export declare function validateRentInstructions(steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
36
+ export declare function validateRentInstructions(programs: SageProgramAddresses, steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
37
37
  //# sourceMappingURL=rent-catalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rent-catalog.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/rent-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAmB1E,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAA6B,CAAC;AAI/E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAuCD;0DAC0D;AAC1D,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAcD;AAED,gFAAgF;AAChF,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAUD;AAED;qEACqE;AACrE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAChE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAcD;AA+ED;gFACgF;AAChF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CAoCN"}
1
+ {"version":3,"file":"rent-catalog.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/rent-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAkB1E,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAA6B,CAAC;AAI/E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAuCD;0DAC0D;AAC1D,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAcD;AAED,gFAAgF;AAChF,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAaD;AAED;qEACqE;AACrE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAChE,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IACT,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC9C,CAAC,CAcD;AA+ED;gFACgF;AAChF,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CAoCN"}
@@ -3,7 +3,6 @@ import { SageSdkError } from '../../client/errors.js';
3
3
  import { readContextRawAccounts } from '../../client/reconciliation.js';
4
4
  import { ATTACK_STARBASE_DISCRIMINATOR, CANCEL_CLAIM_STAKE_BUILDING_DESIGN_DISCRIMINATOR, CLAIM_STAKES_RENT_TOP_UP_DISCRIMINATOR, DECONSTRUCT_CLAIM_STAKE_INSTANCE_DISCRIMINATOR, FINALIZE_BUILDING_CHANGES_DISCRIMINATOR, PLACE_CLAIM_STAKE_BUILDINGS_DISCRIMINATOR, PLACE_CLAIM_STAKE_INSTANCE_WITH_HUB_DISCRIMINATOR, START_CLAIM_STAKES_FLEET_TRANSFER_DISCRIMINATOR, } from '../c4/discriminators.js';
5
5
  import { deriveRentCatalogAddress, deriveRentLevelHeadAddress, deriveRentSettlementAuthorityAddress, } from '../c4/pda.js';
6
- import { SAGE_PROGRAM_ADDRESS } from '../c4/runtime-bindings.js';
7
6
  import { accountAbsentPrecondition } from './account-state.js';
8
7
  /** Baseline-record hints; the program reads them only under an Active catalog. */
9
8
  export const DISABLED_RENT_HINTS = Object.freeze([0, 0, 0]);
@@ -29,8 +28,8 @@ function catalogAccount(rentCatalog, game, action) {
29
28
  * catalog nor the stake's settlement authority exists. */
30
29
  export async function requireDisabledStakeRent(ctx, game, stake, action) {
31
30
  const [[rentCatalog], [rentAuthority]] = await Promise.all([
32
- deriveRentCatalogAddress(game),
33
- deriveRentSettlementAuthorityAddress(stake),
31
+ deriveRentCatalogAddress(ctx.programs, game),
32
+ deriveRentSettlementAuthorityAddress(ctx.programs, stake),
34
33
  ]);
35
34
  const guards = await requireAbsent(ctx, [
36
35
  catalogAccount(rentCatalog, game, action),
@@ -44,7 +43,7 @@ export async function requireDisabledStakeRent(ctx, game, stake, action) {
44
43
  }
45
44
  /** Requires that a new Claim Stake address has no rent settlement authority. */
46
45
  export async function requireNewStakeRent(ctx, stake) {
47
- const [rentAuthority] = await deriveRentSettlementAuthorityAddress(stake);
46
+ const [rentAuthority] = await deriveRentSettlementAuthorityAddress(ctx.programs, stake);
48
47
  const guards = await requireAbsent(ctx, [
49
48
  {
50
49
  address: rentAuthority,
@@ -58,8 +57,8 @@ export async function requireNewStakeRent(ctx, stake) {
58
57
  * Game's rent catalog nor the System's level history head exists. */
59
58
  export async function requireDisabledLevelRent(ctx, game, system, action) {
60
59
  const [[rentCatalog], [rentHead]] = await Promise.all([
61
- deriveRentCatalogAddress(game),
62
- deriveRentLevelHeadAddress(game, system.systemId),
60
+ deriveRentCatalogAddress(ctx.programs, game),
61
+ deriveRentLevelHeadAddress(ctx.programs, game, system.systemId),
63
62
  ]);
64
63
  const guards = await requireAbsent(ctx, [
65
64
  catalogAccount(rentCatalog, game, action),
@@ -136,9 +135,9 @@ function rentLayouts() {
136
135
  }
137
136
  /** Binds every rent account of a recognized instruction to an absence guard
138
137
  * and rejects rent pages, supplied optional rent accounts and nonzero hints. */
139
- export function validateRentInstructions(steps, guards) {
138
+ export function validateRentInstructions(programs, steps, guards) {
140
139
  for (const [index, { instruction }] of steps.entries()) {
141
- if (instruction.programAddress !== SAGE_PROGRAM_ADDRESS)
140
+ if (instruction.programAddress !== programs.sage)
142
141
  continue;
143
142
  const data = instruction.data;
144
143
  const layout = rentLayouts().find(([discriminator]) => discriminator.every((byte, offset) => data?.[offset] === byte));
@@ -155,7 +154,7 @@ export function validateRentInstructions(steps, guards) {
155
154
  (hints &&
156
155
  (data.length < 8 + RENT_HINTS_BYTES ||
157
156
  data.subarray(data.length - RENT_HINTS_BYTES).some(Boolean))) ||
158
- omitted.some((at) => metas[at].address !== SAGE_PROGRAM_ADDRESS ||
157
+ omitted.some((at) => metas[at].address !== programs.sage ||
159
158
  metas[at].role !== AccountRole.READONLY) ||
160
159
  (catalog >= 0 && !guarded(catalog, AccountRole.READONLY)) ||
161
160
  !guarded(writable, AccountRole.WRITABLE))
@@ -1 +1 @@
1
- {"version":3,"file":"rent-catalog.js","sourceRoot":"","sources":["../../../src/internal/planning/rent-catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rent-catalog.js","sourceRoot":"","sources":["../../../src/internal/planning/rent-catalog.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type Address } from '@solana/kit';
2
- import type { RawAccount } from '../../client/contracts.js';
2
+ import type { RawAccount, SageProgramAddresses } from '../../client/contracts.js';
3
3
  import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
4
4
  import type { GameResearchUnlockRule, GameXpCategory } from '../c4/game.js';
5
5
  /** Persisted research unlock guard: one exact next level of one node. */
@@ -50,7 +50,7 @@ export interface ResearchUnlockSpend {
50
50
  readonly profileReserve: bigint;
51
51
  }
52
52
  /** Derives the canonical Character, Starbase Player and Currency Cache. */
53
- export declare function resolveResearchUnlock(intent: {
53
+ export declare function resolveResearchUnlock(programs: SageProgramAddresses, intent: {
54
54
  readonly game: Address;
55
55
  readonly profile: Address;
56
56
  readonly system: Address;
@@ -58,12 +58,12 @@ export declare function resolveResearchUnlock(intent: {
58
58
  /** Validates one next-level unlock against fresh accounts and Game rules and
59
59
  * returns its exact costs. Planning and execution share every check; an
60
60
  * intent carrying observed sequences and a debit also requires them to hold. */
61
- export declare function validateResearchUnlock(intent: ResearchUnlockIntent, resolved: ResearchUnlockAccounts, accounts: ReadonlyMap<Address, RawAccount | undefined>, rules: {
61
+ export declare function validateResearchUnlock(programs: SageProgramAddresses, intent: ResearchUnlockIntent, resolved: ResearchUnlockAccounts, accounts: ReadonlyMap<Address, RawAccount | undefined>, rules: {
62
62
  readonly sequenceId: number;
63
63
  readonly xpSequenceId: number;
64
64
  readonly rules: readonly GameResearchUnlockRule[];
65
65
  }): Promise<ResearchUnlockSpend>;
66
66
  /** Binds every research unlock instruction to exactly one persisted guard:
67
67
  * direct key, accounts, roles, key index and node must all match. */
68
- export declare function validateResearchUnlockInstructions(steps: readonly PlanStep[], preconditions: readonly PlanPrecondition[]): void;
68
+ export declare function validateResearchUnlockInstructions(programs: SageProgramAddresses, steps: readonly PlanStep[], preconditions: readonly PlanPrecondition[]): void;
69
69
  //# sourceMappingURL=research-unlock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"research-unlock.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/research-unlock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"research-unlock.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/research-unlock.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,6 @@ import { characterAccountDefinition, findCharacterPda, } from '../c4/character.j
4
4
  import { deriveCurrencyCache, validateCurrencyCache, } from '../c4/currency-cache.js';
5
5
  import { UNLOCK_RESEARCH_NODE_DISCRIMINATOR } from '../c4/discriminators.js';
6
6
  import { profileAccountDefinition } from '../c4/identity.js';
7
- import { PROFILE_SCOPE, SAGE_SCOPE } from '../c4/profile-permissions.js';
8
- import { PLAYER_PROFILE_PROGRAM_ADDRESS, SAGE_PROGRAM_ADDRESS, } from '../c4/runtime-bindings.js';
9
7
  import { deriveStarbasePlayerAddress, starbasePlayerAccountDefinition, } from '../c4/starbase.js';
10
8
  import { deriveStarSystemAddress, starSystemAccountDefinition, } from '../c4/world.js';
11
9
  import { CLOCK_ADDRESS, readClock } from './faction-enrollment.js';
@@ -47,14 +45,14 @@ function fail(address, message) {
47
45
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
48
46
  }
49
47
  /** Derives the canonical Character, Starbase Player and Currency Cache. */
50
- export async function resolveResearchUnlock(intent) {
48
+ export async function resolveResearchUnlock(programs, intent) {
51
49
  const [character, [currencyCache]] = await Promise.all([
52
- findCharacterPda(intent.profile, intent.game),
53
- deriveCurrencyCache(intent.game),
50
+ findCharacterPda(programs, intent.profile, intent.game),
51
+ deriveCurrencyCache(programs, intent.game),
54
52
  ]);
55
53
  return {
56
54
  character,
57
- starbasePlayer: await deriveStarbasePlayerAddress(intent.system, character),
55
+ starbasePlayer: await deriveStarbasePlayerAddress(programs, intent.system, character),
58
56
  currencyCache,
59
57
  clock: CLOCK_ADDRESS,
60
58
  rent: RENT_ADDRESS,
@@ -63,7 +61,7 @@ export async function resolveResearchUnlock(intent) {
63
61
  /** Validates one next-level unlock against fresh accounts and Game rules and
64
62
  * returns its exact costs. Planning and execution share every check; an
65
63
  * intent carrying observed sequences and a debit also requires them to hold. */
66
- export async function validateResearchUnlock(intent, resolved, accounts, rules) {
64
+ export async function validateResearchUnlock(programs, intent, resolved, accounts, rules) {
67
65
  const node = `Research node ${intent.nodeId}`;
68
66
  if (isOffCurveAddress(intent.authority))
69
67
  fail(intent.profile, 'Research requires an on-curve direct Profile authority. Select a current direct key and replan.');
@@ -76,18 +74,18 @@ export async function validateResearchUnlock(intent, resolved, accounts, rules)
76
74
  const profileRaw = required(intent.profile, 'Profile');
77
75
  const characterRaw = required(resolved.character, 'Character');
78
76
  const playerRaw = required(resolved.starbasePlayer, 'Starbase Player');
79
- const profile = profileAccountDefinition.decode(profileRaw);
80
- const character = characterAccountDefinition.decode(characterRaw);
81
- const system = starSystemAccountDefinition.decode(required(intent.system, 'Star System'));
82
- const player = starbasePlayerAccountDefinition.decode(playerRaw);
83
- await validateCurrencyCache(required(resolved.currencyCache, 'Currency Cache'), intent.game, 'research unlock');
77
+ const profile = profileAccountDefinition.decode(profileRaw, programs);
78
+ const character = characterAccountDefinition.decode(characterRaw, programs);
79
+ const system = starSystemAccountDefinition.decode(required(intent.system, 'Star System'), programs);
80
+ const player = starbasePlayerAccountDefinition.decode(playerRaw, programs);
81
+ await validateCurrencyCache(programs, required(resolved.currencyCache, 'Currency Cache'), intent.game, 'research unlock');
84
82
  const now = readClock(required(resolved.clock, 'Clock sysvar'));
85
83
  const rent = readRent(required(resolved.rent, 'Rent sysvar'));
86
84
  if (character.game !== intent.game ||
87
85
  character.playerProfile !== intent.profile)
88
86
  fail(resolved.character, 'The Character belongs to a different Game or Profile. Refresh the canonical Character and replan the research unlock.');
89
87
  if (system.game !== intent.game ||
90
- (await deriveStarSystemAddress(system.game, system.systemId)) !==
88
+ (await deriveStarSystemAddress(programs, system.game, system.systemId)) !==
91
89
  intent.system ||
92
90
  !system.starbase)
93
91
  fail(intent.system, 'The selected System is not canonical for this Game or has no Starbase. Choose a Starbase System where the Character has a Starbase Player and replan.');
@@ -192,9 +190,9 @@ export async function validateResearchUnlock(intent, resolved, accounts, rules)
192
190
  fail(intent.profile, 'The selected direct Profile key is absent or belongs to another authority. Select the current key index for this authority and replan.');
193
191
  if (profileKeyExpired(key, now))
194
192
  fail(intent.profile, 'The selected Profile key has expired. Renew it or select a current direct key and replan the research unlock.');
195
- const auth = grantsPermission(key, PROFILE_SCOPE, 0n);
193
+ const auth = grantsPermission(key, programs.playerProfile, 0n);
196
194
  if (!auth &&
197
- !grantsPermission(key, SAGE_SCOPE, DO_RESEARCH) &&
195
+ !grantsPermission(key, programs.sage, DO_RESEARCH) &&
198
196
  !grantsPermission(key, intent.game, DO_RESEARCH))
199
197
  fail(intent.profile, 'The selected key cannot do research. Use a direct Profile AUTH key or a doResearch key scoped to SAGE or this Game, and replan.');
200
198
  const shortfall = (raw, length) => {
@@ -239,9 +237,9 @@ export async function validateResearchUnlock(intent, resolved, accounts, rules)
239
237
  profileReserve,
240
238
  };
241
239
  }
242
- function isUnlock(step) {
240
+ function isUnlock(programs, step) {
243
241
  const { instruction } = step;
244
- return (instruction.programAddress === SAGE_PROGRAM_ADDRESS &&
242
+ return (instruction.programAddress === programs.sage &&
245
243
  UNLOCK_RESEARCH_NODE_DISCRIMINATOR.every((byte, index) => instruction.data?.[index] === byte));
246
244
  }
247
245
  function u16(data, offset) {
@@ -249,9 +247,9 @@ function u16(data, offset) {
249
247
  }
250
248
  /** Binds every research unlock instruction to exactly one persisted guard:
251
249
  * direct key, accounts, roles, key index and node must all match. */
252
- export function validateResearchUnlockInstructions(steps, preconditions) {
250
+ export function validateResearchUnlockInstructions(programs, steps, preconditions) {
253
251
  const guards = preconditions.filter((guard) => guard.kind === 'research-unlock');
254
- const unlocks = steps.filter(isUnlock);
252
+ const unlocks = steps.filter((step) => isUnlock(programs, step));
255
253
  const characters = new Set(guards.map(({ address }) => address));
256
254
  if (unlocks.length !== guards.length || characters.size !== guards.length)
257
255
  throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'Every research unlock instruction requires exactly one matching research-unlock guard, with at most one unlock per Character. Recreate the Plan with planUnlockResearchNode.');
@@ -263,8 +261,8 @@ export function validateResearchUnlockInstructions(steps, preconditions) {
263
261
  const expected = [
264
262
  [guard.authority, AccountRole.READONLY_SIGNER],
265
263
  [guard.profile, AccountRole.WRITABLE],
266
- [SAGE_PROGRAM_ADDRESS, AccountRole.READONLY],
267
- [PLAYER_PROFILE_PROGRAM_ADDRESS, AccountRole.READONLY],
264
+ [programs.sage, AccountRole.READONLY],
265
+ [programs.playerProfile, AccountRole.READONLY],
268
266
  [guard.address, AccountRole.WRITABLE],
269
267
  [guard.game, AccountRole.READONLY],
270
268
  [guard.starbasePlayer, AccountRole.WRITABLE],
@@ -1 +1 @@
1
- {"version":3,"file":"research-unlock.js","sourceRoot":"","sources":["../../../src/internal/planning/research-unlock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"research-unlock.js","sourceRoot":"","sources":["../../../src/internal/planning/research-unlock.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
2
- export declare function validateRespawnInstructions(steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
2
+ import type { SageProgramAddresses } from '../../client/contracts.js';
3
+ export declare function validateRespawnInstructions(programs: SageProgramAddresses, steps: readonly PlanStep[], guards: readonly PlanPrecondition[]): void;
3
4
  //# sourceMappingURL=respawn-guards.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"respawn-guards.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAO1E,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CA8CN"}
1
+ {"version":3,"file":"respawn-guards.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAK1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,IAAI,CA8CN"}
@@ -1,10 +1,9 @@
1
1
  import { AccountRole } from '@solana/kit';
2
2
  import { InvalidActionInputError } from '../../client/errors.js';
3
- import { SAGE_PROGRAM_ADDRESS } from '../c4/runtime-bindings.js';
4
3
  import { IDLE_TO_RESPAWN_DISCRIMINATOR, RESPAWN_TO_DOCKED_DISCRIMINATOR, } from '../c4/discriminators.js';
5
- export function validateRespawnInstructions(steps, guards) {
4
+ export function validateRespawnInstructions(programs, steps, guards) {
6
5
  const selected = guards.filter((g) => g.kind === 'fleet-respawn');
7
- const recovery = steps.filter(({ instruction: i }) => i.programAddress === SAGE_PROGRAM_ADDRESS &&
6
+ const recovery = steps.filter(({ instruction: i }) => i.programAddress === programs.sage &&
8
7
  [IDLE_TO_RESPAWN_DISCRIMINATOR, RESPAWN_TO_DOCKED_DISCRIMINATOR].some((d) => d.every((v, n) => i.data?.[n] === v)));
9
8
  if (!selected.length && !recovery.length)
10
9
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"respawn-guards.js","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,6BAA6B,EAC7B,+BAA+B,GAChC,MAAM,yBAAyB,CAAC;AAEjC,MAAM,UAAU,2BAA2B,CACzC,KAA0B,EAC1B,MAAmC;IAEnC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAC3B,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,CACrB,CAAC,CAAC,cAAc,KAAK,oBAAoB;QACzC,CAAC,6BAA6B,EAAE,+BAA+B,CAAC,CAAC,IAAI,CACnE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAC5C,CACJ,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO;IACjD,MAAM,GAAG,GAAG,GAAU,EAAE;QACtB,MAAM,IAAI,uBAAuB,CAC/B,SAAS,EACT,SAAS,EACT,iEAAiE,EACjE,+HAA+H,CAChI,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QACtE,GAAG,EAAE,CAAC;IACR,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;IAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC;IACtC,MAAM,CAAC,GAAG,KAAK;QACb,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,+BAA+B,CAAC;IACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC5B,IACE,CAAC,CAAC,CAAC,IAAI;QACP,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE;QACpB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,GAAG,GAAG,KAAK,KAAK,CAAC,QAAQ;QAChD,QAAQ,EAAE,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,SAAS;QAEnC,GAAG,EAAE,CAAC;IACR,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI;QAC/B,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,eAAe,CAAC;QACjD,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC;QACxC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC;QACpD,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC;QACjD,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC;KAC/B;QACR,IAAI,QAAS,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,OAAO,IAAI,QAAS,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI;YAAE,GAAG,EAAE,CAAC;AAChF,CAAC"}
1
+ {"version":3,"file":"respawn-guards.js","sourceRoot":"","sources":["../../../src/internal/planning/respawn-guards.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type Address } from '@solana/kit';
2
- import type { SageContext } from '../../client/contracts.js';
2
+ import type { SageContext, SageProgramAddresses } from '../../client/contracts.js';
3
3
  import type { PlanPrecondition, PlanStep } from '../../planning/index.js';
4
4
  import { type HistoryIntent, type ResolvedDemocracyHistory } from './democracy-history.js';
5
5
  import { type XpRuntimeIntent, type XpRuntimeAccounts } from './xp-runtime.js';
@@ -36,6 +36,6 @@ export declare function normalizeRuntimeGuard(value: unknown, field: string, wir
36
36
  /** Resolve canonical accounts again; shared balances and XP counters are not compared. */
37
37
  export declare function revalidateRuntimeGuards(ctx: SageContext, guards: readonly RuntimeGuard[], freshGameVersions?: Map<Address, number>): Promise<void>;
38
38
  /** Old layouts and unguarded persisted instructions fail before assembly or signing. */
39
- export declare function validateRuntimeInstructions(steps: readonly PlanStep[], preconditions: readonly PlanPrecondition[]): void;
39
+ export declare function validateRuntimeInstructions(programs: SageProgramAddresses, steps: readonly PlanStep[], preconditions: readonly PlanPrecondition[]): void;
40
40
  export {};
41
41
  //# sourceMappingURL=runtime-guards.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-guards.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/runtime-guards.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,OAAO,EAGb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAgB7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAGL,KAAK,aAAa,EAElB,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,qBAAqB,EAErB,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAc9B,KAAK,WAAW,GAAG,OAAO,CACxB,UAAU,CAAC,OAAO,qBAAqB,CAAC,CACzC,CAAC,UAAU,CAAC,CAAC;AACd,KAAK,SAAS,GAAG;IACf,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AACF,uFAAuF;AACvF,MAAM,MAAM,YAAY,GAAG,SAAS,GAClC,CACI;IACE,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC,UAAU,CAAC,CAAC;CACzD,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC,CACJ,CAAC;AACJ,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GACzC,MAAM,GACN,CAAC,SAAS,OAAO,GACf,MAAM,GACN,CAAC,SAAS,MAAM,GACd;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAC9C,CAAC,CAAC;AACV,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;AACzD,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,KAAK,IAAI,YAAY,CAMxB;AAsLD,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,IAAI,UAAQ,GACX,YAAY,CAqDd;AAkBD,0FAA0F;AAC1F,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,iBAAiB,uBAA6B,GAC7C,OAAO,CAAC,IAAI,CAAC,CA2Cf;AAmbD,wFAAwF;AACxF,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,aAAa,EAAE,SAAS,gBAAgB,EAAE,GACzC,IAAI,CA6IN"}
1
+ {"version":3,"file":"runtime-guards.d.ts","sourceRoot":"","sources":["../../../src/internal/planning/runtime-guards.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,OAAO,EAGb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAenC,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAGL,KAAK,aAAa,EAElB,KAAK,wBAAwB,EAC9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,qBAAqB,EAErB,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAc9B,KAAK,WAAW,GAAG,OAAO,CACxB,UAAU,CAAC,OAAO,qBAAqB,CAAC,CACzC,CAAC,UAAU,CAAC,CAAC;AACd,KAAK,SAAS,GAAG;IACf,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;CAC3B,CAAC;AACF,uFAAuF;AACvF,MAAM,MAAM,YAAY,GAAG,SAAS,GAClC,CACI;IACE,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC,UAAU,CAAC,CAAC;CACzD,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC,CACJ,CAAC;AACJ,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GACzC,MAAM,GACN,CAAC,SAAS,OAAO,GACf,MAAM,GACN,CAAC,SAAS,MAAM,GACd;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAC9C,CAAC,CAAC;AACV,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;AACzD,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,KAAK,IAAI,YAAY,CAMxB;AAsLD,uFAAuF;AACvF,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,IAAI,UAAQ,GACX,YAAY,CAqDd;AAkBD,0FAA0F;AAC1F,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,iBAAiB,uBAA6B,GAC7C,OAAO,CAAC,IAAI,CAAC,CA2Cf;AAobD,wFAAwF;AACxF,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,oBAAoB,EAC9B,KAAK,EAAE,SAAS,QAAQ,EAAE,EAC1B,aAAa,EAAE,SAAS,gBAAgB,EAAE,GACzC,IAAI,CAkJN"}