@aephia/atlas-kit 0.6.0-next.12 → 0.6.0-next.121
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.
- package/README.md +3 -1
- package/dist/cargo/actions/deposit.d.ts +2 -2
- package/dist/cargo/actions/deposit.d.ts.map +1 -1
- package/dist/cargo/actions/deposit.js +28 -117
- package/dist/cargo/actions/deposit.js.map +1 -1
- package/dist/cargo/actions/index.d.ts +1 -1
- package/dist/cargo/actions/index.d.ts.map +1 -1
- package/dist/cargo/actions/index.js +28 -84
- package/dist/cargo/actions/index.js.map +1 -1
- package/dist/cargo/actions/wallet-context.d.ts +52 -3
- package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
- package/dist/cargo/actions/wallet-context.js +118 -7
- package/dist/cargo/actions/wallet-context.js.map +1 -1
- package/dist/cargo/actions/wallet-token.d.ts +1 -6
- package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
- package/dist/cargo/actions/wallet-token.js +0 -53
- package/dist/cargo/actions/wallet-token.js.map +1 -1
- package/dist/cargo/actions/withdrawal.d.ts +1 -1
- package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
- package/dist/cargo/actions/withdrawal.js +39 -164
- package/dist/cargo/actions/withdrawal.js.map +1 -1
- package/dist/cargo/index.d.ts.map +1 -1
- package/dist/cargo/index.js +2 -10
- package/dist/cargo/index.js.map +1 -1
- package/dist/claim-stakes/actions/index.d.ts +14 -1
- package/dist/claim-stakes/actions/index.d.ts.map +1 -1
- package/dist/claim-stakes/actions/index.js +399 -592
- package/dist/claim-stakes/actions/index.js.map +1 -1
- package/dist/claim-stakes/index.d.ts +14 -0
- package/dist/claim-stakes/index.d.ts.map +1 -1
- package/dist/claim-stakes/index.js +25 -12
- package/dist/claim-stakes/index.js.map +1 -1
- package/dist/client/context.d.ts.map +1 -1
- package/dist/client/context.js +1 -1
- package/dist/client/context.js.map +1 -1
- package/dist/client/contracts.d.ts +16 -6
- package/dist/client/contracts.d.ts.map +1 -1
- package/dist/client/errors.d.ts +6 -2
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +31 -1
- package/dist/client/errors.js.map +1 -1
- package/dist/client/index.d.ts +35 -0
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +35 -0
- package/dist/client/index.js.map +1 -1
- package/dist/client/rpc-subscription-provider.d.ts +35 -0
- package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
- package/dist/client/rpc-subscription-provider.js +190 -0
- package/dist/client/rpc-subscription-provider.js.map +1 -0
- package/dist/combat/actions/index.d.ts +4 -4
- package/dist/combat/actions/index.d.ts.map +1 -1
- package/dist/combat/actions/index.js +207 -261
- package/dist/combat/actions/index.js.map +1 -1
- package/dist/combat/index.d.ts +13 -3
- package/dist/combat/index.d.ts.map +1 -1
- package/dist/combat/index.js +9 -16
- package/dist/combat/index.js.map +1 -1
- package/dist/crafting/actions/index.d.ts +12 -1
- package/dist/crafting/actions/index.d.ts.map +1 -1
- package/dist/crafting/actions/index.js +181 -303
- package/dist/crafting/actions/index.js.map +1 -1
- package/dist/crafting/index.d.ts +33 -3
- package/dist/crafting/index.d.ts.map +1 -1
- package/dist/crafting/index.js +49 -28
- package/dist/crafting/index.js.map +1 -1
- package/dist/factions/actions/index.d.ts +2 -1
- package/dist/factions/actions/index.d.ts.map +1 -1
- package/dist/factions/actions/index.js +6 -4
- package/dist/factions/actions/index.js.map +1 -1
- package/dist/factions/index.d.ts +1 -1
- package/dist/factions/index.d.ts.map +1 -1
- package/dist/factions/index.js +16 -18
- package/dist/factions/index.js.map +1 -1
- package/dist/factions/profile-faction.d.ts +20 -8
- package/dist/factions/profile-faction.d.ts.map +1 -1
- package/dist/factions/profile-faction.js +20 -8
- package/dist/factions/profile-faction.js.map +1 -1
- package/dist/fleets/actions/add-ship.d.ts +35 -0
- package/dist/fleets/actions/add-ship.d.ts.map +1 -0
- package/dist/fleets/actions/add-ship.js +120 -0
- package/dist/fleets/actions/add-ship.js.map +1 -0
- package/dist/fleets/actions/create-fleet.d.ts +36 -0
- package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
- package/dist/fleets/actions/create-fleet.js +108 -0
- package/dist/fleets/actions/create-fleet.js.map +1 -0
- package/dist/fleets/actions/crew-transfer.d.ts +41 -0
- package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
- package/dist/fleets/actions/crew-transfer.js +94 -0
- package/dist/fleets/actions/crew-transfer.js.map +1 -0
- package/dist/fleets/actions/dock-bounds.d.ts +38 -0
- package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
- package/dist/fleets/actions/dock-bounds.js +46 -0
- package/dist/fleets/actions/dock-bounds.js.map +1 -0
- package/dist/fleets/actions/index.d.ts +64 -24
- package/dist/fleets/actions/index.d.ts.map +1 -1
- package/dist/fleets/actions/index.js +385 -334
- package/dist/fleets/actions/index.js.map +1 -1
- package/dist/fleets/actions/respawn.d.ts +38 -0
- package/dist/fleets/actions/respawn.d.ts.map +1 -0
- package/dist/fleets/actions/respawn.js +93 -0
- package/dist/fleets/actions/respawn.js.map +1 -0
- package/dist/fleets/actions/ship-import.d.ts +1 -1
- package/dist/fleets/actions/ship-import.d.ts.map +1 -1
- package/dist/fleets/actions/ship-import.js +67 -91
- package/dist/fleets/actions/ship-import.js.map +1 -1
- package/dist/fleets/cooldown.d.ts +44 -0
- package/dist/fleets/cooldown.d.ts.map +1 -0
- package/dist/fleets/cooldown.js +43 -0
- package/dist/fleets/cooldown.js.map +1 -0
- package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
- package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
- package/dist/fleets/coordinate-warp-estimate.js +46 -0
- package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
- package/dist/fleets/index.d.ts +35 -0
- package/dist/fleets/index.d.ts.map +1 -1
- package/dist/fleets/index.js +54 -12
- package/dist/fleets/index.js.map +1 -1
- package/dist/fleets/movement-arithmetic.d.ts +21 -0
- package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
- package/dist/fleets/movement-arithmetic.js +41 -0
- package/dist/fleets/movement-arithmetic.js.map +1 -0
- package/dist/fleets/subwarp-estimate.d.ts +70 -0
- package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
- package/dist/fleets/subwarp-estimate.js +38 -0
- package/dist/fleets/subwarp-estimate.js.map +1 -0
- package/dist/fleets/travel-profile.d.ts +102 -0
- package/dist/fleets/travel-profile.d.ts.map +1 -0
- package/dist/fleets/travel-profile.js +120 -0
- package/dist/fleets/travel-profile.js.map +1 -0
- package/dist/fleets/warp-lane-estimate.d.ts +59 -0
- package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
- package/dist/fleets/warp-lane-estimate.js +36 -0
- package/dist/fleets/warp-lane-estimate.js.map +1 -0
- package/dist/fleets/warp-lane-policy.d.ts +68 -0
- package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
- package/dist/fleets/warp-lane-policy.js +91 -0
- package/dist/fleets/warp-lane-policy.js.map +1 -0
- package/dist/fleets/warp-lane-toll.d.ts +55 -0
- package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
- package/dist/fleets/warp-lane-toll.js +79 -0
- package/dist/fleets/warp-lane-toll.js.map +1 -0
- package/dist/identity/actions/create-profile.d.ts +1 -1
- package/dist/identity/actions/create-profile.d.ts.map +1 -1
- package/dist/identity/actions/create-profile.js +2 -2
- package/dist/identity/actions/create-profile.js.map +1 -1
- package/dist/identity/actions/index.d.ts +4 -4
- package/dist/identity/actions/index.d.ts.map +1 -1
- package/dist/identity/actions/index.js +51 -29
- package/dist/identity/actions/index.js.map +1 -1
- package/dist/identity/index.d.ts +5 -2
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +6 -12
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/research-state.d.ts +60 -0
- package/dist/identity/research-state.d.ts.map +1 -0
- package/dist/identity/research-state.js +68 -0
- package/dist/identity/research-state.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/c4/account-decoding.d.ts +49 -0
- package/dist/internal/c4/account-decoding.d.ts.map +1 -0
- package/dist/internal/c4/account-decoding.js +74 -0
- package/dist/internal/c4/account-decoding.js.map +1 -0
- package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
- package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
- package/dist/internal/c4/cargo-bytes-config.js +19 -0
- package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
- package/dist/internal/c4/cargo-pod.d.ts +15 -0
- package/dist/internal/c4/cargo-pod.d.ts.map +1 -0
- package/dist/internal/c4/cargo-pod.js +13 -0
- package/dist/internal/c4/cargo-pod.js.map +1 -0
- package/dist/internal/c4/character-modifier.d.ts +1 -1
- package/dist/internal/c4/character-modifier.d.ts.map +1 -1
- package/dist/internal/c4/character-registration.d.ts +2 -0
- package/dist/internal/c4/character-registration.d.ts.map +1 -1
- package/dist/internal/c4/character-registration.js +2 -0
- package/dist/internal/c4/character-registration.js.map +1 -1
- package/dist/internal/c4/character.d.ts +157 -0
- package/dist/internal/c4/character.d.ts.map +1 -0
- package/dist/internal/c4/character.js +64 -0
- package/dist/internal/c4/character.js.map +1 -0
- package/dist/internal/c4/claim-stake-building-definitions.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake-building-definitions.js +2 -1
- package/dist/internal/c4/claim-stake-building-definitions.js.map +1 -1
- package/dist/internal/c4/claim-stake-configuration.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake-configuration.js +5 -36
- package/dist/internal/c4/claim-stake-configuration.js.map +1 -1
- package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
- package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake-definitions.js +2 -1
- package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
- package/dist/internal/c4/claim-stake.d.ts +4 -27
- package/dist/internal/c4/claim-stake.d.ts.map +1 -1
- package/dist/internal/c4/claim-stake.js +38 -83
- package/dist/internal/c4/claim-stake.js.map +1 -1
- package/dist/internal/c4/combat.d.ts +1 -82
- package/dist/internal/c4/combat.d.ts.map +1 -1
- package/dist/internal/c4/combat.js +16 -213
- package/dist/internal/c4/combat.js.map +1 -1
- package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
- package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
- package/dist/internal/c4/crafting-process-codec.js +34 -0
- package/dist/internal/c4/crafting-process-codec.js.map +1 -0
- package/dist/internal/c4/crafting.d.ts +25 -33
- package/dist/internal/c4/crafting.d.ts.map +1 -1
- package/dist/internal/c4/crafting.js +76 -127
- package/dist/internal/c4/crafting.js.map +1 -1
- package/dist/internal/c4/currency-cache.d.ts +6 -0
- package/dist/internal/c4/currency-cache.d.ts.map +1 -0
- package/dist/internal/c4/currency-cache.js +27 -0
- package/dist/internal/c4/currency-cache.js.map +1 -0
- package/dist/internal/c4/discriminators.d.ts +81 -0
- package/dist/internal/c4/discriminators.d.ts.map +1 -0
- package/dist/internal/c4/discriminators.js +166 -0
- package/dist/internal/c4/discriminators.js.map +1 -0
- package/dist/internal/c4/docking-funding.d.ts +4 -0
- package/dist/internal/c4/docking-funding.d.ts.map +1 -0
- package/dist/internal/c4/docking-funding.js +11 -0
- package/dist/internal/c4/docking-funding.js.map +1 -0
- package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
- package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
- package/dist/internal/c4/faction-epoch-meter.js +26 -0
- package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
- package/dist/internal/c4/faction-treasury.d.ts +23 -0
- package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
- package/dist/internal/c4/faction-treasury.js +41 -0
- package/dist/internal/c4/faction-treasury.js.map +1 -0
- package/dist/internal/c4/faction.d.ts +21 -0
- package/dist/internal/c4/faction.d.ts.map +1 -0
- package/dist/internal/c4/faction.js +23 -0
- package/dist/internal/c4/faction.js.map +1 -0
- package/dist/internal/c4/factions.d.ts +13 -57
- package/dist/internal/c4/factions.d.ts.map +1 -1
- package/dist/internal/c4/factions.js +79 -222
- package/dist/internal/c4/factions.js.map +1 -1
- package/dist/internal/c4/fleet-arrival.d.ts +28 -0
- package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
- package/dist/internal/c4/fleet-arrival.js +42 -0
- package/dist/internal/c4/fleet-arrival.js.map +1 -0
- package/dist/internal/c4/fleet-creation.d.ts +7 -0
- package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
- package/dist/internal/c4/fleet-creation.js +171 -0
- package/dist/internal/c4/fleet-creation.js.map +1 -0
- package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
- package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
- package/dist/internal/c4/fleet-crew-binding.js +31 -44
- package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
- package/dist/internal/c4/fleet-respawn.d.ts +17 -0
- package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
- package/dist/internal/c4/fleet-respawn.js +62 -0
- package/dist/internal/c4/fleet-respawn.js.map +1 -0
- package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
- package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
- package/dist/internal/c4/fleet-ship-assembly.js +44 -0
- package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
- package/dist/internal/c4/fleet.d.ts +48 -19
- package/dist/internal/c4/fleet.d.ts.map +1 -1
- package/dist/internal/c4/fleet.js +50 -87
- package/dist/internal/c4/fleet.js.map +1 -1
- package/dist/internal/c4/game-definition-layout.d.ts +2 -0
- package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
- package/dist/internal/c4/game-definition-layout.js +4 -0
- package/dist/internal/c4/game-definition-layout.js.map +1 -1
- package/dist/internal/c4/game.d.ts +76 -30
- package/dist/internal/c4/game.d.ts.map +1 -1
- package/dist/internal/c4/game.js +173 -124
- package/dist/internal/c4/game.js.map +1 -1
- package/dist/internal/c4/identity.d.ts +3 -152
- package/dist/internal/c4/identity.d.ts.map +1 -1
- package/dist/internal/c4/identity.js +19 -126
- package/dist/internal/c4/identity.js.map +1 -1
- package/dist/internal/c4/local-market-order.d.ts +29 -0
- package/dist/internal/c4/local-market-order.d.ts.map +1 -0
- package/dist/internal/c4/local-market-order.js +46 -0
- package/dist/internal/c4/local-market-order.js.map +1 -0
- package/dist/internal/c4/loot-layout.js +1 -1
- package/dist/internal/c4/loot-layout.js.map +1 -1
- package/dist/internal/c4/loot.d.ts +87 -0
- package/dist/internal/c4/loot.d.ts.map +1 -0
- package/dist/internal/c4/loot.js +108 -0
- package/dist/internal/c4/loot.js.map +1 -0
- package/dist/internal/c4/loyalty.d.ts +0 -27
- package/dist/internal/c4/loyalty.d.ts.map +1 -1
- package/dist/internal/c4/loyalty.js +32 -160
- package/dist/internal/c4/loyalty.js.map +1 -1
- package/dist/internal/c4/market.d.ts +2 -38
- package/dist/internal/c4/market.d.ts.map +1 -1
- package/dist/internal/c4/market.js +26 -120
- package/dist/internal/c4/market.js.map +1 -1
- package/dist/internal/c4/mining-instructions.d.ts +2 -0
- package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
- package/dist/internal/c4/mining-instructions.js +3 -0
- package/dist/internal/c4/mining-instructions.js.map +1 -0
- package/dist/internal/c4/open-signal.d.ts +8 -0
- package/dist/internal/c4/open-signal.d.ts.map +1 -0
- package/dist/internal/c4/open-signal.js +37 -0
- package/dist/internal/c4/open-signal.js.map +1 -0
- package/dist/internal/c4/pda.d.ts +31 -0
- package/dist/internal/c4/pda.d.ts.map +1 -1
- package/dist/internal/c4/pda.js +60 -17
- package/dist/internal/c4/pda.js.map +1 -1
- package/dist/internal/c4/profile-faction.d.ts +2 -1
- package/dist/internal/c4/profile-faction.d.ts.map +1 -1
- package/dist/internal/c4/profile-faction.js +36 -72
- package/dist/internal/c4/profile-faction.js.map +1 -1
- package/dist/internal/c4/profile-permissions.d.ts +1 -1
- package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
- package/dist/internal/c4/profile-permissions.js +2 -1
- package/dist/internal/c4/profile-permissions.js.map +1 -1
- package/dist/internal/c4/region-geometry.d.ts +8 -0
- package/dist/internal/c4/region-geometry.d.ts.map +1 -0
- package/dist/internal/c4/region-geometry.js +43 -0
- package/dist/internal/c4/region-geometry.js.map +1 -0
- package/dist/internal/c4/rewards.d.ts +1 -61
- package/dist/internal/c4/rewards.d.ts.map +1 -1
- package/dist/internal/c4/rewards.js +23 -203
- package/dist/internal/c4/rewards.js.map +1 -1
- package/dist/internal/c4/runtime-bindings.d.ts +4 -0
- package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
- package/dist/internal/c4/runtime-bindings.js +4 -0
- package/dist/internal/c4/runtime-bindings.js.map +1 -0
- package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
- package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
- package/dist/internal/c4/scan-detection-codecs.js +3 -0
- package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
- package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
- package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
- package/dist/internal/c4/scan-lifecycle.js +235 -0
- package/dist/internal/c4/scan-lifecycle.js.map +1 -0
- package/dist/internal/c4/scanning.d.ts +1 -28
- package/dist/internal/c4/scanning.d.ts.map +1 -1
- package/dist/internal/c4/scanning.js +32 -103
- package/dist/internal/c4/scanning.js.map +1 -1
- package/dist/internal/c4/ship-import.d.ts +4 -0
- package/dist/internal/c4/ship-import.d.ts.map +1 -0
- package/dist/internal/c4/ship-import.js +13 -0
- package/dist/internal/c4/ship-import.js.map +1 -0
- package/dist/internal/c4/ship-stats.d.ts.map +1 -1
- package/dist/internal/c4/ship-stats.js +45 -43
- package/dist/internal/c4/ship-stats.js.map +1 -1
- package/dist/internal/c4/starbase.d.ts +0 -32
- package/dist/internal/c4/starbase.d.ts.map +1 -1
- package/dist/internal/c4/starbase.js +26 -136
- package/dist/internal/c4/starbase.js.map +1 -1
- package/dist/internal/c4/wallet-cargo-cache.js +2 -1
- package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
- package/dist/internal/c4/world.d.ts +36 -7
- package/dist/internal/c4/world.d.ts.map +1 -1
- package/dist/internal/c4/world.js +87 -129
- package/dist/internal/c4/world.js.map +1 -1
- package/dist/internal/cargo.d.ts +2 -0
- package/dist/internal/cargo.d.ts.map +1 -1
- package/dist/internal/cargo.js +8 -0
- package/dist/internal/cargo.js.map +1 -1
- package/dist/internal/fleet.d.ts +1 -0
- package/dist/internal/fleet.d.ts.map +1 -1
- package/dist/internal/fleet.js +3 -1
- package/dist/internal/fleet.js.map +1 -1
- package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
- package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
- package/dist/internal/loyalty-atlas-bank-state.js +10 -0
- package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
- package/dist/internal/planning/account-state.d.ts +6 -0
- package/dist/internal/planning/account-state.d.ts.map +1 -1
- package/dist/internal/planning/account-state.js +13 -0
- package/dist/internal/planning/account-state.js.map +1 -1
- package/dist/internal/planning/action-runtime.d.ts +38 -0
- package/dist/internal/planning/action-runtime.d.ts.map +1 -0
- package/dist/internal/planning/action-runtime.js +63 -0
- package/dist/internal/planning/action-runtime.js.map +1 -0
- package/dist/internal/planning/arrival-guards.d.ts +19 -0
- package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
- package/dist/internal/planning/arrival-guards.js +172 -0
- package/dist/internal/planning/arrival-guards.js.map +1 -0
- package/dist/internal/planning/authorization-adapter.d.ts +45 -37
- package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
- package/dist/internal/planning/authorization-adapter.js +169 -81
- package/dist/internal/planning/authorization-adapter.js.map +1 -1
- package/dist/internal/planning/character-registration-guard.d.ts +4 -0
- package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
- package/dist/internal/planning/character-registration-guard.js +59 -0
- package/dist/internal/planning/character-registration-guard.js.map +1 -0
- package/dist/internal/planning/character-registration.d.ts +23 -0
- package/dist/internal/planning/character-registration.d.ts.map +1 -0
- package/dist/internal/planning/character-registration.js +87 -0
- package/dist/internal/planning/character-registration.js.map +1 -0
- package/dist/internal/planning/currency-cache-guard.d.ts +4 -0
- package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
- package/dist/internal/planning/currency-cache-guard.js +33 -0
- package/dist/internal/planning/currency-cache-guard.js.map +1 -0
- package/dist/internal/planning/democracy-history.d.ts +50 -0
- package/dist/internal/planning/democracy-history.d.ts.map +1 -0
- package/dist/internal/planning/democracy-history.js +189 -0
- package/dist/internal/planning/democracy-history.js.map +1 -0
- package/dist/internal/planning/direct-options.d.ts +17 -0
- package/dist/internal/planning/direct-options.d.ts.map +1 -0
- package/dist/internal/planning/direct-options.js +43 -0
- package/dist/internal/planning/direct-options.js.map +1 -0
- package/dist/internal/planning/faction-enrollment.d.ts +0 -4
- package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
- package/dist/internal/planning/faction-enrollment.js +1 -31
- package/dist/internal/planning/faction-enrollment.js.map +1 -1
- package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
- package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
- package/dist/internal/planning/faction-trade-guards.js +15 -0
- package/dist/internal/planning/faction-trade-guards.js.map +1 -0
- package/dist/internal/planning/faction-trade-state.d.ts +16 -0
- package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
- package/dist/internal/planning/faction-trade-state.js +43 -0
- package/dist/internal/planning/faction-trade-state.js.map +1 -0
- package/dist/internal/planning/fleet-arrival.d.ts +40 -0
- package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
- package/dist/internal/planning/fleet-arrival.js +107 -0
- package/dist/internal/planning/fleet-arrival.js.map +1 -0
- package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
- package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
- package/dist/internal/planning/fleet-attack-xp.js +104 -0
- package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
- package/dist/internal/planning/fleet-creation.d.ts +30 -0
- package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
- package/dist/internal/planning/fleet-creation.js +89 -0
- package/dist/internal/planning/fleet-creation.js.map +1 -0
- package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
- package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-crew-guard.js +48 -0
- package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
- package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
- package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
- package/dist/internal/planning/fleet-crew-transfer.js +123 -0
- package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
- package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
- package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-dock-funding-guard.js +209 -0
- package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
- package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
- package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
- package/dist/internal/planning/fleet-dock-funding.js +154 -0
- package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
- package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
- package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
- package/dist/internal/planning/fleet-docking-guard.js +43 -0
- package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
- package/dist/internal/planning/fleet-docking.d.ts +10 -0
- package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
- package/dist/internal/planning/fleet-docking.js +71 -0
- package/dist/internal/planning/fleet-docking.js.map +1 -0
- package/dist/internal/planning/fleet-respawn.d.ts +28 -0
- package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
- package/dist/internal/planning/fleet-respawn.js +164 -0
- package/dist/internal/planning/fleet-respawn.js.map +1 -0
- package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
- package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
- package/dist/internal/planning/fleet-ship-assembly.js +118 -0
- package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
- package/dist/internal/planning/fleet-state.d.ts +25 -0
- package/dist/internal/planning/fleet-state.d.ts.map +1 -0
- package/dist/internal/planning/fleet-state.js +28 -0
- package/dist/internal/planning/fleet-state.js.map +1 -0
- package/dist/internal/planning/governance-fees.d.ts +64 -0
- package/dist/internal/planning/governance-fees.d.ts.map +1 -0
- package/dist/internal/planning/governance-fees.js +231 -0
- package/dist/internal/planning/governance-fees.js.map +1 -0
- package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
- package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
- package/dist/internal/planning/local-market-order-funding.js +128 -0
- package/dist/internal/planning/local-market-order-funding.js.map +1 -0
- package/dist/internal/planning/local-market-order.d.ts +40 -0
- package/dist/internal/planning/local-market-order.d.ts.map +1 -0
- package/dist/internal/planning/local-market-order.js +139 -0
- package/dist/internal/planning/local-market-order.js.map +1 -0
- package/dist/internal/planning/mining-stop.d.ts +14 -0
- package/dist/internal/planning/mining-stop.d.ts.map +1 -0
- package/dist/internal/planning/mining-stop.js +42 -0
- package/dist/internal/planning/mining-stop.js.map +1 -0
- package/dist/internal/planning/movement-character.d.ts +7 -0
- package/dist/internal/planning/movement-character.d.ts.map +1 -0
- package/dist/internal/planning/movement-character.js +41 -0
- package/dist/internal/planning/movement-character.js.map +1 -0
- package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
- package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
- package/dist/internal/planning/movement-xp-guard.js +104 -0
- package/dist/internal/planning/movement-xp-guard.js.map +1 -0
- package/dist/internal/planning/open-signal-guard.d.ts +3 -0
- package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
- package/dist/internal/planning/open-signal-guard.js +32 -0
- package/dist/internal/planning/open-signal-guard.js.map +1 -0
- package/dist/internal/planning/open-signal.d.ts +31 -0
- package/dist/internal/planning/open-signal.d.ts.map +1 -0
- package/dist/internal/planning/open-signal.js +85 -0
- package/dist/internal/planning/open-signal.js.map +1 -0
- package/dist/internal/planning/original-token.d.ts +40 -0
- package/dist/internal/planning/original-token.d.ts.map +1 -0
- package/dist/internal/planning/original-token.js +112 -0
- package/dist/internal/planning/original-token.js.map +1 -0
- package/dist/internal/planning/own-starbase-facts.d.ts +33 -0
- package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -0
- package/dist/internal/planning/own-starbase-facts.js +49 -0
- package/dist/internal/planning/own-starbase-facts.js.map +1 -0
- package/dist/internal/planning/plan-fields.d.ts +60 -0
- package/dist/internal/planning/plan-fields.d.ts.map +1 -0
- package/dist/internal/planning/plan-fields.js +159 -0
- package/dist/internal/planning/plan-fields.js.map +1 -0
- package/dist/internal/planning/plan-guards.d.ts +4 -0
- package/dist/internal/planning/plan-guards.d.ts.map +1 -0
- package/dist/internal/planning/plan-guards.js +168 -0
- package/dist/internal/planning/plan-guards.js.map +1 -0
- package/dist/internal/planning/profile-key.d.ts +13 -0
- package/dist/internal/planning/profile-key.d.ts.map +1 -0
- package/dist/internal/planning/profile-key.js +20 -0
- package/dist/internal/planning/profile-key.js.map +1 -0
- package/dist/internal/planning/recipe-state.d.ts +6 -0
- package/dist/internal/planning/recipe-state.d.ts.map +1 -0
- package/dist/internal/planning/recipe-state.js +20 -0
- package/dist/internal/planning/recipe-state.js.map +1 -0
- package/dist/internal/planning/rent.d.ts +19 -0
- package/dist/internal/planning/rent.d.ts.map +1 -0
- package/dist/internal/planning/rent.js +35 -0
- package/dist/internal/planning/rent.js.map +1 -0
- package/dist/internal/planning/respawn-guards.d.ts +3 -0
- package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
- package/dist/internal/planning/respawn-guards.js +42 -0
- package/dist/internal/planning/respawn-guards.js.map +1 -0
- package/dist/internal/planning/runtime-guards.d.ts +41 -0
- package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
- package/dist/internal/planning/runtime-guards.js +640 -0
- package/dist/internal/planning/runtime-guards.js.map +1 -0
- package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
- package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
- package/dist/internal/planning/scan-completion-guard.js +95 -0
- package/dist/internal/planning/scan-completion-guard.js.map +1 -0
- package/dist/internal/planning/scan-completion.d.ts +20 -0
- package/dist/internal/planning/scan-completion.d.ts.map +1 -0
- package/dist/internal/planning/scan-completion.js +197 -0
- package/dist/internal/planning/scan-completion.js.map +1 -0
- package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
- package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
- package/dist/internal/planning/scan-detect-guard.js +77 -0
- package/dist/internal/planning/scan-detect-guard.js.map +1 -0
- package/dist/internal/planning/scan-detect.d.ts +24 -0
- package/dist/internal/planning/scan-detect.d.ts.map +1 -0
- package/dist/internal/planning/scan-detect.js +245 -0
- package/dist/internal/planning/scan-detect.js.map +1 -0
- package/dist/internal/planning/scan-input.d.ts +9 -0
- package/dist/internal/planning/scan-input.d.ts.map +1 -0
- package/dist/internal/planning/scan-input.js +58 -0
- package/dist/internal/planning/scan-input.js.map +1 -0
- package/dist/internal/planning/ship-import-funding.d.ts +22 -0
- package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
- package/dist/internal/planning/ship-import-funding.js +53 -0
- package/dist/internal/planning/ship-import-funding.js.map +1 -0
- package/dist/internal/planning/ship-token.d.ts +1 -6
- package/dist/internal/planning/ship-token.d.ts.map +1 -1
- package/dist/internal/planning/ship-token.js +2 -41
- package/dist/internal/planning/ship-token.js.map +1 -1
- package/dist/internal/planning/starbase-player-owner.d.ts +21 -0
- package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -0
- package/dist/internal/planning/starbase-player-owner.js +17 -0
- package/dist/internal/planning/starbase-player-owner.js.map +1 -0
- package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
- package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
- package/dist/internal/planning/starbase-system-guard.js +94 -0
- package/dist/internal/planning/starbase-system-guard.js.map +1 -0
- package/dist/internal/planning/starbase-system.d.ts +15 -0
- package/dist/internal/planning/starbase-system.d.ts.map +1 -0
- package/dist/internal/planning/starbase-system.js +25 -0
- package/dist/internal/planning/starbase-system.js.map +1 -0
- package/dist/internal/planning/token-mint.d.ts +4 -0
- package/dist/internal/planning/token-mint.d.ts.map +1 -0
- package/dist/internal/planning/token-mint.js +16 -0
- package/dist/internal/planning/token-mint.js.map +1 -0
- package/dist/internal/planning/trade-faction-market.d.ts +20 -0
- package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
- package/dist/internal/planning/trade-faction-market.js +56 -0
- package/dist/internal/planning/trade-faction-market.js.map +1 -0
- package/dist/internal/planning/wallet-starbase.d.ts +34 -0
- package/dist/internal/planning/wallet-starbase.d.ts.map +1 -0
- package/dist/internal/planning/wallet-starbase.js +39 -0
- package/dist/internal/planning/wallet-starbase.js.map +1 -0
- package/dist/internal/planning/xp-runtime.d.ts +36 -0
- package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
- package/dist/internal/planning/xp-runtime.js +117 -0
- package/dist/internal/planning/xp-runtime.js.map +1 -0
- package/dist/internal/read-meta.d.ts +12 -0
- package/dist/internal/read-meta.d.ts.map +1 -1
- package/dist/internal/read-meta.js +10 -0
- package/dist/internal/read-meta.js.map +1 -1
- package/dist/internal/system-program.d.ts +4 -0
- package/dist/internal/system-program.d.ts.map +1 -0
- package/dist/internal/system-program.js +3 -0
- package/dist/internal/system-program.js.map +1 -0
- package/dist/loyalty/actions/index.d.ts +1 -1
- package/dist/loyalty/actions/index.d.ts.map +1 -1
- package/dist/loyalty/actions/index.js +15 -45
- package/dist/loyalty/actions/index.js.map +1 -1
- package/dist/loyalty/index.d.ts.map +1 -1
- package/dist/loyalty/index.js +6 -18
- package/dist/loyalty/index.js.map +1 -1
- package/dist/markets/actions/index.d.ts +62 -4
- package/dist/markets/actions/index.d.ts.map +1 -1
- package/dist/markets/actions/index.js +230 -178
- package/dist/markets/actions/index.js.map +1 -1
- package/dist/markets/actions/trade-faction-market.d.ts +43 -0
- package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
- package/dist/markets/actions/trade-faction-market.js +277 -0
- package/dist/markets/actions/trade-faction-market.js.map +1 -0
- package/dist/markets/index.d.ts +38 -7
- package/dist/markets/index.d.ts.map +1 -1
- package/dist/markets/index.js +59 -20
- package/dist/markets/index.js.map +1 -1
- package/dist/mining/actions/index.d.ts +87 -0
- package/dist/mining/actions/index.d.ts.map +1 -0
- package/dist/mining/actions/index.js +319 -0
- package/dist/mining/actions/index.js.map +1 -0
- package/dist/mining/estimate.d.ts +114 -0
- package/dist/mining/estimate.d.ts.map +1 -0
- package/dist/mining/estimate.js +127 -0
- package/dist/mining/estimate.js.map +1 -0
- package/dist/mining/index.d.ts +9 -2
- package/dist/mining/index.d.ts.map +1 -1
- package/dist/mining/index.js +10 -13
- package/dist/mining/index.js.map +1 -1
- package/dist/mining/profile.d.ts +82 -0
- package/dist/mining/profile.d.ts.map +1 -0
- package/dist/mining/profile.js +109 -0
- package/dist/mining/profile.js.map +1 -0
- package/dist/planning/assembly.d.ts +6 -1
- package/dist/planning/assembly.d.ts.map +1 -1
- package/dist/planning/assembly.js +12 -8
- package/dist/planning/assembly.js.map +1 -1
- package/dist/planning/execution.d.ts +19 -3
- package/dist/planning/execution.d.ts.map +1 -1
- package/dist/planning/execution.js +504 -72
- package/dist/planning/execution.js.map +1 -1
- package/dist/planning/index.d.ts +196 -149
- package/dist/planning/index.d.ts.map +1 -1
- package/dist/planning/index.js +31 -355
- package/dist/planning/index.js.map +1 -1
- package/dist/planning/plan-construction.d.ts +25 -0
- package/dist/planning/plan-construction.d.ts.map +1 -0
- package/dist/planning/plan-construction.js +143 -0
- package/dist/planning/plan-construction.js.map +1 -0
- package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
- package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
- package/dist/planning/plan-sequence-checkpoint.js +16 -7
- package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
- package/dist/planning/plan-sequence-execution.d.ts +5 -0
- package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
- package/dist/planning/plan-sequence-execution.js +74 -40
- package/dist/planning/plan-sequence-execution.js.map +1 -1
- package/dist/planning/plan-sequence.d.ts +2 -1
- package/dist/planning/plan-sequence.d.ts.map +1 -1
- package/dist/planning/plan-sequence.js +8 -1
- package/dist/planning/plan-sequence.js.map +1 -1
- package/dist/planning/plan-validation.d.ts +17 -0
- package/dist/planning/plan-validation.d.ts.map +1 -0
- package/dist/planning/plan-validation.js +127 -0
- package/dist/planning/plan-validation.js.map +1 -0
- package/dist/planning/simulation.d.ts +25 -1
- package/dist/planning/simulation.d.ts.map +1 -1
- package/dist/planning/simulation.js +111 -11
- package/dist/planning/simulation.js.map +1 -1
- package/dist/registry/cargo.d.ts +7 -12
- package/dist/registry/cargo.d.ts.map +1 -1
- package/dist/registry/cargo.js +20 -20
- package/dist/registry/cargo.js.map +1 -1
- package/dist/registry/docking.d.ts +10 -0
- package/dist/registry/docking.d.ts.map +1 -0
- package/dist/registry/docking.js +12 -0
- package/dist/registry/docking.js.map +1 -0
- package/dist/registry/index.d.ts +4 -0
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/index.js +190 -224
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/onboarding.d.ts +10 -2
- package/dist/registry/onboarding.d.ts.map +1 -1
- package/dist/registry/onboarding.js +20 -7
- package/dist/registry/onboarding.js.map +1 -1
- package/dist/registry/scanning.d.ts +7 -0
- package/dist/registry/scanning.d.ts.map +1 -0
- package/dist/registry/scanning.js +13 -0
- package/dist/registry/scanning.js.map +1 -0
- package/dist/registry/ship-stats-snapshot.js +19 -19
- package/dist/registry/ship-stats-snapshot.js.map +1 -1
- package/dist/registry/ships.d.ts +22 -2
- package/dist/registry/ships.d.ts.map +1 -1
- package/dist/registry/ships.js +31 -4
- package/dist/registry/ships.js.map +1 -1
- package/dist/registry/xp-runtime.d.ts +4 -0
- package/dist/registry/xp-runtime.d.ts.map +1 -0
- package/dist/registry/xp-runtime.js +14 -0
- package/dist/registry/xp-runtime.js.map +1 -0
- package/dist/rewards/index.d.ts +11 -5
- package/dist/rewards/index.d.ts.map +1 -1
- package/dist/rewards/index.js +10 -21
- package/dist/rewards/index.js.map +1 -1
- package/dist/scanning/actions/index.d.ts +116 -0
- package/dist/scanning/actions/index.d.ts.map +1 -0
- package/dist/scanning/actions/index.js +191 -0
- package/dist/scanning/actions/index.js.map +1 -0
- package/dist/scanning/index.d.ts +5 -2
- package/dist/scanning/index.d.ts.map +1 -1
- package/dist/scanning/index.js +17 -21
- package/dist/scanning/index.js.map +1 -1
- package/dist/scanning/lifecycle.d.ts +77 -0
- package/dist/scanning/lifecycle.d.ts.map +1 -0
- package/dist/scanning/lifecycle.js +93 -0
- package/dist/scanning/lifecycle.js.map +1 -0
- package/dist/scanning/odds.d.ts +111 -0
- package/dist/scanning/odds.d.ts.map +1 -0
- package/dist/scanning/odds.js +294 -0
- package/dist/scanning/odds.js.map +1 -0
- package/dist/scanning/signals.d.ts +121 -0
- package/dist/scanning/signals.d.ts.map +1 -0
- package/dist/scanning/signals.js +171 -0
- package/dist/scanning/signals.js.map +1 -0
- package/dist/starbases/actions/index.d.ts +1 -1
- package/dist/starbases/actions/index.d.ts.map +1 -1
- package/dist/starbases/actions/index.js +16 -58
- package/dist/starbases/actions/index.js.map +1 -1
- package/dist/starbases/index.d.ts.map +1 -1
- package/dist/starbases/index.js +3 -11
- package/dist/starbases/index.js.map +1 -1
- package/dist/world/index.d.ts +110 -5
- package/dist/world/index.d.ts.map +1 -1
- package/dist/world/index.js +112 -15
- package/dist/world/index.js.map +1 -1
- package/dist/world/planet-claim-stake-plots.d.ts +130 -0
- package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
- package/dist/world/planet-claim-stake-plots.js +110 -0
- package/dist/world/planet-claim-stake-plots.js.map +1 -0
- package/dist/world/starbase-status.d.ts +176 -0
- package/dist/world/starbase-status.d.ts.map +1 -0
- package/dist/world/starbase-status.js +153 -0
- package/dist/world/starbase-status.js.map +1 -0
- package/package.json +10 -2
package/dist/registry/index.d.ts
CHANGED
|
@@ -48,6 +48,10 @@ export interface CargoDefinitionSummary {
|
|
|
48
48
|
readonly id: number;
|
|
49
49
|
readonly mint: Address;
|
|
50
50
|
readonly name: string;
|
|
51
|
+
/** Encoded storage cost with 8 fractional bits: 256 means one whole storage unit.
|
|
52
|
+
* For a nonnegative bigint quantity, use `(quantity * BigInt(storageCost) + 255n) / 256n`.
|
|
53
|
+
* Round each transfer row up before summing; Fleet capacities and pod usage are whole units.
|
|
54
|
+
*/
|
|
51
55
|
readonly storageCost: number;
|
|
52
56
|
}
|
|
53
57
|
/** Serializable cold-start snapshot for one Game definitions section.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAChC,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC/G,OAAO,KAAK,EAEV,4BAA4B,EAC7B,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"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"}
|
package/dist/registry/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { isAddress } from '@solana/kit';
|
|
|
7
7
|
import { AccountNotFoundError, MissingGameContextError, InvalidDefinitionSectionError, ProviderError, RegistryOutOfSyncError, } from '../client/errors.js';
|
|
8
8
|
import { assertContextActive, waitForRegistry } from '../client/lifecycle.js';
|
|
9
9
|
import { deepFreeze, validateImmutableTree, } from '../internal/immutable-tree.js';
|
|
10
|
-
import {
|
|
10
|
+
import { decodeRegistryGame, gameBuildingsRegistrySection, gameCargoRegistrySection, gameClaimStakesRegistrySection, gameCraftingHabsRegistrySection, gameHabBuildingsRegistrySection, gameResearchRegistrySection, gameShipsRegistrySection, gameXpRegistrySection, } from '../internal/c4/game.js';
|
|
11
11
|
const SEQUENCE_MISMATCH_RETRY_DELAY_MS = 1_000;
|
|
12
12
|
// D029/D055 tolerate newer ship definitions for older callers; the resolved
|
|
13
13
|
// definitionSequenceId exposes that skew. Every other section remains strict.
|
|
@@ -41,12 +41,6 @@ function freezeShips(definitions, sequenceId) {
|
|
|
41
41
|
return Object.freeze(attachJsonSerialization({ ...value }));
|
|
42
42
|
}));
|
|
43
43
|
}
|
|
44
|
-
function isPersistedDefinitionSection(section) {
|
|
45
|
-
return (section === 'claimStakes' ||
|
|
46
|
-
section === 'buildings' ||
|
|
47
|
-
section === 'craftingHabs' ||
|
|
48
|
-
section === 'habBuildings');
|
|
49
|
-
}
|
|
50
44
|
function freezeCatalog(data) {
|
|
51
45
|
const catalog = Object.freeze(data.definitions.map((definition) => Object.freeze(attachJsonSerialization({ ...deepFreeze(definition) }))));
|
|
52
46
|
return {
|
|
@@ -55,45 +49,22 @@ function freezeCatalog(data) {
|
|
|
55
49
|
sequenceId: data.sequenceId,
|
|
56
50
|
};
|
|
57
51
|
}
|
|
58
|
-
function
|
|
59
|
-
|
|
60
|
-
return freezeCatalog(game);
|
|
61
|
-
}
|
|
62
|
-
if (section === 'xp') {
|
|
63
|
-
const definitions = freezeDefinitions([
|
|
64
|
-
game,
|
|
65
|
-
]);
|
|
66
|
-
return {
|
|
67
|
-
definitions: new Map([[0, definitions[0]]]),
|
|
68
|
-
sequenceId: definitions[0].sequenceId,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
if (section === 'research') {
|
|
72
|
-
const research = game;
|
|
73
|
-
const definitions = freezeDefinitions(research.nodes);
|
|
74
|
-
return {
|
|
75
|
-
definitions: new Map(definitions.map((definition) => [definition.id, definition])),
|
|
76
|
-
sequenceId: research.sequenceId,
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
if (section === 'ships') {
|
|
80
|
-
const ships = game;
|
|
81
|
-
const definitions = freezeShips(ships.definitions, ships.sequenceId);
|
|
82
|
-
const loaded = {
|
|
83
|
-
configurations: definitions,
|
|
84
|
-
definitions: new Map(definitions.map((definition) => [definition.id, definition])),
|
|
85
|
-
sequenceId: ships.sequenceId,
|
|
86
|
-
};
|
|
87
|
-
return loaded;
|
|
88
|
-
}
|
|
89
|
-
const values = game;
|
|
90
|
-
const definitions = freezeDefinitions(values.definitions);
|
|
52
|
+
function idSection(values, sequenceId) {
|
|
53
|
+
const definitions = freezeDefinitions(values);
|
|
91
54
|
return {
|
|
92
55
|
definitions: new Map(definitions.map((definition) => [definition.id, definition])),
|
|
93
|
-
sequenceId
|
|
56
|
+
sequenceId,
|
|
94
57
|
};
|
|
95
58
|
}
|
|
96
|
-
|
|
59
|
+
function shipSection(rows, sequenceId) {
|
|
60
|
+
const definitions = freezeShips(rows, sequenceId);
|
|
61
|
+
return {
|
|
62
|
+
configurations: definitions,
|
|
63
|
+
definitions: new Map(definitions.map((definition) => [definition.id, definition])),
|
|
64
|
+
sequenceId,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
const SHIP_SIZE_CLASSES = /* @__PURE__ */ new Set([
|
|
97
68
|
'xx-small',
|
|
98
69
|
'x-small',
|
|
99
70
|
'small',
|
|
@@ -136,58 +107,33 @@ function isCargoDefinition(value) {
|
|
|
136
107
|
typeof value.name === 'string' &&
|
|
137
108
|
isNonnegativeInteger(value.storageCost));
|
|
138
109
|
}
|
|
139
|
-
function
|
|
110
|
+
function isSnapshotEnvelope(snapshot, game, section, schemaVersion) {
|
|
140
111
|
try {
|
|
141
112
|
validateImmutableTree(snapshot);
|
|
142
113
|
}
|
|
143
114
|
catch {
|
|
144
115
|
return false;
|
|
145
116
|
}
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
snapshot.schemaVersion
|
|
149
|
-
snapshot.game
|
|
150
|
-
snapshot.section
|
|
151
|
-
|
|
152
|
-
(
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
definitions: [...loaded.definitions.values()].map(({ id, mint, name, sizeClass, stats }) => ({
|
|
167
|
-
id,
|
|
168
|
-
mint,
|
|
169
|
-
name,
|
|
170
|
-
sizeClass,
|
|
171
|
-
stats: toJsonSafeValue(stats),
|
|
172
|
-
})),
|
|
173
|
-
game,
|
|
174
|
-
schemaVersion: 2,
|
|
175
|
-
section,
|
|
176
|
-
sequenceId: loaded.sequenceId,
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
return {
|
|
180
|
-
definitions: [
|
|
181
|
-
...loaded.definitions.values(),
|
|
182
|
-
],
|
|
183
|
-
game,
|
|
184
|
-
schemaVersion: 1,
|
|
185
|
-
section: 'cargo',
|
|
186
|
-
sequenceId: loaded.sequenceId,
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
function sectionFromSnapshot(snapshot) {
|
|
190
|
-
if (snapshot.section === 'ships') {
|
|
117
|
+
return (isRecord(snapshot) &&
|
|
118
|
+
hasOwnKeyCount(snapshot, 5) &&
|
|
119
|
+
snapshot.schemaVersion === schemaVersion &&
|
|
120
|
+
snapshot.game === game &&
|
|
121
|
+
snapshot.section === section &&
|
|
122
|
+
isNonnegativeInteger(snapshot.sequenceId) &&
|
|
123
|
+
Array.isArray(snapshot.definitions));
|
|
124
|
+
}
|
|
125
|
+
const SHIPS = {
|
|
126
|
+
section: 'ships',
|
|
127
|
+
fromGame(account, game) {
|
|
128
|
+
const ships = gameShipsRegistrySection(account, game);
|
|
129
|
+
return shipSection(ships.definitions, ships.sequenceId);
|
|
130
|
+
},
|
|
131
|
+
restore(snapshot, game) {
|
|
132
|
+
if (!isSnapshotEnvelope(snapshot, game, 'ships', 2) ||
|
|
133
|
+
snapshot.sequenceId > 4294967295 ||
|
|
134
|
+
!snapshot.definitions.every(isShipDefinition) ||
|
|
135
|
+
!hasUniqueDefinitionIds(snapshot.definitions))
|
|
136
|
+
return undefined;
|
|
191
137
|
const rows = [];
|
|
192
138
|
for (const definition of snapshot.definitions) {
|
|
193
139
|
const stats = hydrateShipStats(definition.stats);
|
|
@@ -195,68 +141,104 @@ function sectionFromSnapshot(snapshot) {
|
|
|
195
141
|
return undefined;
|
|
196
142
|
rows.push({ ...definition, stats });
|
|
197
143
|
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
144
|
+
return shipSection(rows, snapshot.sequenceId);
|
|
145
|
+
},
|
|
146
|
+
toSnapshot: (game, loaded) => ({
|
|
147
|
+
definitions: [...loaded.definitions.values()].map(({ id, mint, name, sizeClass, stats }) => ({
|
|
148
|
+
id,
|
|
149
|
+
mint,
|
|
150
|
+
name,
|
|
151
|
+
sizeClass,
|
|
152
|
+
stats: toJsonSafeValue(stats),
|
|
153
|
+
})),
|
|
154
|
+
game,
|
|
155
|
+
schemaVersion: 2,
|
|
156
|
+
section: 'ships',
|
|
157
|
+
sequenceId: loaded.sequenceId,
|
|
158
|
+
}),
|
|
159
|
+
};
|
|
160
|
+
const CARGO = {
|
|
161
|
+
section: 'cargo',
|
|
162
|
+
fromGame(account, game) {
|
|
163
|
+
const cargo = gameCargoRegistrySection(account, game);
|
|
164
|
+
return idSection(cargo.definitions, cargo.sequenceId);
|
|
165
|
+
},
|
|
166
|
+
restore: (snapshot, game) => isSnapshotEnvelope(snapshot, game, 'cargo', 1) &&
|
|
167
|
+
snapshot.definitions.every(isCargoDefinition) &&
|
|
168
|
+
hasUniqueDefinitionIds(snapshot.definitions)
|
|
169
|
+
? idSection(snapshot.definitions, snapshot.sequenceId)
|
|
170
|
+
: undefined,
|
|
171
|
+
toSnapshot: (game, loaded) => ({
|
|
172
|
+
definitions: [
|
|
173
|
+
...loaded.definitions.values(),
|
|
174
|
+
],
|
|
175
|
+
game,
|
|
176
|
+
schemaVersion: 1,
|
|
177
|
+
section: 'cargo',
|
|
178
|
+
sequenceId: loaded.sequenceId,
|
|
179
|
+
}),
|
|
180
|
+
};
|
|
181
|
+
function persistedDriver(section, translate) {
|
|
206
182
|
return {
|
|
207
|
-
|
|
208
|
-
|
|
183
|
+
section,
|
|
184
|
+
fromGame: (account, game) => freezeCatalog(translate(account, game)),
|
|
185
|
+
restore(snapshot, game) {
|
|
186
|
+
const hydrated = hydrateDefinitionSectionSnapshot(snapshot, game, section);
|
|
187
|
+
return hydrated === undefined
|
|
188
|
+
? undefined
|
|
189
|
+
: freezeCatalog(hydrated);
|
|
190
|
+
},
|
|
191
|
+
// Loaded Game projections have already passed the pinned section validator.
|
|
192
|
+
toSnapshot: (game, loaded) => encodeDefinitionSectionSnapshot(game, section, {
|
|
193
|
+
definitions: [
|
|
194
|
+
...loaded.definitions.values(),
|
|
195
|
+
],
|
|
196
|
+
sequenceId: loaded.sequenceId,
|
|
197
|
+
}),
|
|
209
198
|
};
|
|
210
199
|
}
|
|
211
|
-
|
|
200
|
+
const BUILDINGS = /* @__PURE__ */ persistedDriver('buildings', (account, game) => gameBuildingsRegistrySection(account, game));
|
|
201
|
+
const CLAIM_STAKES = /* @__PURE__ */ persistedDriver('claimStakes', (account, game) => gameClaimStakesRegistrySection(account, game));
|
|
202
|
+
const CRAFTING_HABS = /* @__PURE__ */ persistedDriver('craftingHabs', (account, game) => gameCraftingHabsRegistrySection(account, game));
|
|
203
|
+
const HAB_BUILDINGS = /* @__PURE__ */ persistedDriver('habBuildings', (account, game) => gameHabBuildingsRegistrySection(account, game));
|
|
204
|
+
const XP = {
|
|
205
|
+
section: 'xp',
|
|
206
|
+
fromGame(account, game) {
|
|
207
|
+
const [xp] = freezeDefinitions([gameXpRegistrySection(account, game)]);
|
|
208
|
+
return { definitions: new Map([[0, xp]]), sequenceId: xp.sequenceId };
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
const RESEARCH = {
|
|
212
|
+
section: 'research',
|
|
213
|
+
fromGame(account, game) {
|
|
214
|
+
const research = gameResearchRegistrySection(account, game);
|
|
215
|
+
return idSection(research.nodes, research.sequenceId);
|
|
216
|
+
},
|
|
217
|
+
};
|
|
218
|
+
async function loadStoredSection(context, game, driver) {
|
|
212
219
|
assertContextActive(context);
|
|
213
|
-
if (section === 'xp' || section === 'research')
|
|
214
|
-
return undefined;
|
|
215
220
|
const store = context.registrySnapshotStore;
|
|
216
|
-
if (store === undefined)
|
|
221
|
+
if (driver.restore === undefined || store === undefined)
|
|
217
222
|
return undefined;
|
|
218
223
|
let snapshot;
|
|
219
224
|
try {
|
|
220
|
-
snapshot = await store.load(game, section);
|
|
225
|
+
snapshot = await store.load(game, driver.section);
|
|
221
226
|
}
|
|
222
227
|
catch {
|
|
223
|
-
throw new ProviderError(`The application registry snapshot store could not load the ${section} definitions. Repair or disable the snapshot store, then retry.`, { accountType: 'game', address: game });
|
|
228
|
+
throw new ProviderError(`The application registry snapshot store could not load the ${driver.section} definitions. Repair or disable the snapshot store, then retry.`, { accountType: 'game', address: game });
|
|
224
229
|
}
|
|
225
|
-
|
|
226
|
-
const hydrated = hydrateDefinitionSectionSnapshot(snapshot, game, section);
|
|
227
|
-
return hydrated === undefined
|
|
228
|
-
? undefined
|
|
229
|
-
: freezeCatalog(hydrated);
|
|
230
|
-
}
|
|
231
|
-
if (!isCompatibleSnapshot(snapshot, game, section))
|
|
232
|
-
return undefined;
|
|
233
|
-
return sectionFromSnapshot(snapshot);
|
|
230
|
+
return driver.restore(snapshot, game);
|
|
234
231
|
}
|
|
235
|
-
async function saveSection(context, game,
|
|
232
|
+
async function saveSection(context, game, driver, loaded) {
|
|
236
233
|
assertContextActive(context);
|
|
237
|
-
if (section === 'xp' || section === 'research')
|
|
238
|
-
return;
|
|
239
234
|
const store = context.registrySnapshotStore;
|
|
240
|
-
if (store === undefined)
|
|
235
|
+
if (driver.toSnapshot === undefined || store === undefined)
|
|
241
236
|
return;
|
|
242
237
|
try {
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
sequenceId: loaded.sequenceId,
|
|
248
|
-
});
|
|
249
|
-
// Loaded Game projections have already passed the pinned section validator.
|
|
250
|
-
/* v8 ignore next -- the encoder also guards its typed boundary; incompatible inputs are covered in its dedicated tests. */
|
|
251
|
-
if (snapshot !== undefined)
|
|
252
|
-
await store.save(snapshot);
|
|
253
|
-
}
|
|
254
|
-
else if (section === 'ships') {
|
|
255
|
-
await store.save(snapshotFor(game, section, loaded));
|
|
256
|
-
}
|
|
257
|
-
else {
|
|
258
|
-
await store.save(snapshotFor(game, section, loaded));
|
|
259
|
-
}
|
|
238
|
+
const snapshot = driver.toSnapshot(game, loaded);
|
|
239
|
+
/* v8 ignore next -- the encoder also guards its typed boundary; incompatible inputs are covered in its dedicated tests. */
|
|
240
|
+
if (snapshot !== undefined)
|
|
241
|
+
await store.save(snapshot);
|
|
260
242
|
}
|
|
261
243
|
catch {
|
|
262
244
|
// Snapshot persistence is a cold-start optimization. A successful Game
|
|
@@ -273,61 +255,28 @@ function invalidateSection(state, section) {
|
|
|
273
255
|
state.revisions[section] = state.revisions[section] + 1;
|
|
274
256
|
state.refresh.add(section);
|
|
275
257
|
}
|
|
276
|
-
async function populateFromGame(context, game,
|
|
277
|
-
const revisions = captureSectionRevisions(state.revisions,
|
|
258
|
+
async function populateFromGame(context, game, drivers, state) {
|
|
259
|
+
const revisions = captureSectionRevisions(state.revisions, drivers.map(({ section }) => section));
|
|
278
260
|
const account = await waitForRegistry(context, context.data.readRaw(game));
|
|
279
261
|
assertContextActive(context);
|
|
280
262
|
if (account === undefined)
|
|
281
263
|
throw new AccountNotFoundError('game', game);
|
|
282
|
-
const decoded =
|
|
283
|
-
const populated =
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
if (populatedSection === 'ships') {
|
|
294
|
-
const ships = sectionFromGame(decoded.ships, 'ships');
|
|
295
|
-
return ships;
|
|
296
|
-
}
|
|
297
|
-
if (populatedSection === 'cargo') {
|
|
298
|
-
const cargo = sectionFromGame(decoded.cargo, 'cargo');
|
|
299
|
-
return cargo;
|
|
300
|
-
}
|
|
301
|
-
if (populatedSection === 'craftingHabs') {
|
|
302
|
-
const craftingHabs = sectionFromGame(decoded.craftingHabs, 'craftingHabs');
|
|
303
|
-
return craftingHabs;
|
|
304
|
-
}
|
|
305
|
-
if (populatedSection === 'habBuildings') {
|
|
306
|
-
const habBuildings = sectionFromGame(decoded.habBuildings, 'habBuildings');
|
|
307
|
-
return habBuildings;
|
|
308
|
-
}
|
|
309
|
-
if (populatedSection === 'xp') {
|
|
310
|
-
const xp = sectionFromGame(decoded.xp, 'xp');
|
|
311
|
-
return xp;
|
|
312
|
-
}
|
|
313
|
-
const research = sectionFromGame(decoded.research, 'research');
|
|
314
|
-
return research;
|
|
315
|
-
})();
|
|
316
|
-
return {
|
|
317
|
-
loaded: {
|
|
318
|
-
...loaded,
|
|
319
|
-
observation: Object.freeze({
|
|
320
|
-
slot: account.slot,
|
|
321
|
-
commitment: account.commitment,
|
|
322
|
-
}),
|
|
323
|
-
},
|
|
324
|
-
section: populatedSection,
|
|
325
|
-
};
|
|
326
|
-
});
|
|
264
|
+
const decoded = decodeRegistryGame(account);
|
|
265
|
+
const populated = drivers.map((driver) => ({
|
|
266
|
+
driver,
|
|
267
|
+
loaded: {
|
|
268
|
+
...driver.fromGame(account, decoded),
|
|
269
|
+
observation: Object.freeze({
|
|
270
|
+
slot: account.slot,
|
|
271
|
+
commitment: account.commitment,
|
|
272
|
+
}),
|
|
273
|
+
},
|
|
274
|
+
}));
|
|
327
275
|
assertContextActive(context);
|
|
328
276
|
const saves = [];
|
|
329
277
|
publishIfCurrent(state.revisions, revisions, () => {
|
|
330
|
-
for (const {
|
|
278
|
+
for (const { driver, loaded } of populated) {
|
|
279
|
+
const populatedSection = driver.section;
|
|
331
280
|
publishSection(state, populatedSection, loaded);
|
|
332
281
|
const confirmingSequenceId = state.confirmingSequenceIds[populatedSection];
|
|
333
282
|
if (confirmingSequenceId !== undefined) {
|
|
@@ -348,44 +297,44 @@ async function populateFromGame(context, game, sectionsToPopulate, state) {
|
|
|
348
297
|
}
|
|
349
298
|
state.refresh.delete(populatedSection);
|
|
350
299
|
}
|
|
351
|
-
for (const {
|
|
352
|
-
saves.push(saveSection(context, game,
|
|
300
|
+
for (const { driver, loaded } of populated)
|
|
301
|
+
saves.push(saveSection(context, game, driver, loaded));
|
|
353
302
|
});
|
|
354
303
|
await waitForRegistry(context, Promise.all(saves));
|
|
355
304
|
}
|
|
356
|
-
async function populateSections(context, game,
|
|
357
|
-
const revisions = captureSectionRevisions(state.revisions,
|
|
358
|
-
const stored = await waitForRegistry(context, Promise.all(
|
|
305
|
+
async function populateSections(context, game, drivers, state, fetchedTargets) {
|
|
306
|
+
const revisions = captureSectionRevisions(state.revisions, drivers.map(({ section }) => section));
|
|
307
|
+
const stored = await waitForRegistry(context, Promise.all(drivers.map(async (driver) => state.refresh.has(driver.section)
|
|
359
308
|
? undefined
|
|
360
|
-
: loadStoredSection(context, game,
|
|
309
|
+
: loadStoredSection(context, game, driver))));
|
|
361
310
|
assertContextActive(context);
|
|
362
|
-
for (const [index, section] of
|
|
311
|
+
for (const [index, { section }] of drivers.entries()) {
|
|
363
312
|
const candidate = stored[index];
|
|
364
313
|
if (candidate !== undefined)
|
|
365
314
|
publishIfCurrent(state.revisions, [revisions[index]], () => publishSection(state, section, candidate));
|
|
366
315
|
}
|
|
367
|
-
const
|
|
368
|
-
if (
|
|
369
|
-
await populateFromGame(context, game, fetchedTargets.filter(
|
|
316
|
+
const isMissing = ({ section }) => state.sections[section] === undefined || state.refresh.has(section);
|
|
317
|
+
if (drivers.some(isMissing))
|
|
318
|
+
await populateFromGame(context, game, fetchedTargets.filter(isMissing), state);
|
|
370
319
|
}
|
|
371
|
-
|
|
320
|
+
/** Loads the missing `drivers`. A lookup naming a `pair` loads the whole pair
|
|
321
|
+
* from one Game read when every member is cold or every member awaits refresh. */
|
|
322
|
+
async function ensureSections(context, drivers, pair) {
|
|
372
323
|
const state = stateFor(context);
|
|
373
324
|
for (;;) {
|
|
374
325
|
assertContextActive(context);
|
|
375
326
|
const game = context.game;
|
|
376
327
|
if (game === undefined)
|
|
377
328
|
throw new MissingGameContextError();
|
|
378
|
-
const missing =
|
|
329
|
+
const missing = drivers.filter(({ section }) => state.sections[section] === undefined || state.refresh.has(section));
|
|
379
330
|
if (missing.length === 0)
|
|
380
331
|
return;
|
|
381
332
|
let group = state.gameLoading;
|
|
382
333
|
if (group === undefined) {
|
|
383
|
-
const targets =
|
|
384
|
-
(
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
state.sections.cargo === undefined))
|
|
388
|
-
? ['ships', 'cargo']
|
|
334
|
+
const targets = pair !== undefined &&
|
|
335
|
+
(pair.every(({ section }) => state.refresh.has(section)) ||
|
|
336
|
+
pair.every(({ section }) => state.sections[section] === undefined))
|
|
337
|
+
? pair
|
|
389
338
|
: missing;
|
|
390
339
|
const promise = Promise.resolve()
|
|
391
340
|
.then(() => populateSections(context, game, missing, state, targets))
|
|
@@ -394,7 +343,7 @@ async function ensureSections(context, sections, lazyPair = false) {
|
|
|
394
343
|
if (state.gameLoading?.[0] === promise)
|
|
395
344
|
delete state.gameLoading;
|
|
396
345
|
});
|
|
397
|
-
group = [promise, targets];
|
|
346
|
+
group = [promise, targets.map(({ section }) => section)];
|
|
398
347
|
state.gameLoading = group;
|
|
399
348
|
}
|
|
400
349
|
try {
|
|
@@ -402,15 +351,31 @@ async function ensureSections(context, sections, lazyPair = false) {
|
|
|
402
351
|
}
|
|
403
352
|
catch (error) {
|
|
404
353
|
// Only unrelated work can fail independently of this request.
|
|
405
|
-
if (missing.some((section) => group[1].includes(section)))
|
|
354
|
+
if (missing.some(({ section }) => group[1].includes(section)))
|
|
406
355
|
throw error;
|
|
407
356
|
}
|
|
408
357
|
}
|
|
409
358
|
}
|
|
410
|
-
async function ensureSection(context,
|
|
411
|
-
await ensureSections(context, [
|
|
412
|
-
return stateFor(context).sections[section];
|
|
413
|
-
}
|
|
359
|
+
async function ensureSection(context, driver, pair) {
|
|
360
|
+
await ensureSections(context, [driver], pair);
|
|
361
|
+
return stateFor(context).sections[driver.section];
|
|
362
|
+
}
|
|
363
|
+
// Only preload selects sections by name at run time, so only entries that
|
|
364
|
+
// export it carry every driver.
|
|
365
|
+
const SECTION_DRIVERS = {
|
|
366
|
+
ships: SHIPS,
|
|
367
|
+
cargo: CARGO,
|
|
368
|
+
buildings: BUILDINGS,
|
|
369
|
+
claimStakes: CLAIM_STAKES,
|
|
370
|
+
craftingHabs: CRAFTING_HABS,
|
|
371
|
+
habBuildings: HAB_BUILDINGS,
|
|
372
|
+
xp: XP,
|
|
373
|
+
research: RESEARCH,
|
|
374
|
+
};
|
|
375
|
+
// A context that resolves ships usually resolves cargo too, and D055.4 rules
|
|
376
|
+
// out keeping the Game account to serve the second later, so a cold lookup of
|
|
377
|
+
// either loads both from one Game read.
|
|
378
|
+
const SHIPS_AND_CARGO = [SHIPS, CARGO];
|
|
414
379
|
/** Warm selected definition catalogs, retaining each section's own observation.
|
|
415
380
|
* Already usable sections are reused; this is not a freshness refresh.
|
|
416
381
|
* @example
|
|
@@ -448,7 +413,7 @@ export async function preloadDefinitions(context, sections, options = {}) {
|
|
|
448
413
|
targets.push(supported);
|
|
449
414
|
}
|
|
450
415
|
if (targets.length > 0)
|
|
451
|
-
await waitForRegistry(context, ensureSections(context, targets), options.signal);
|
|
416
|
+
await waitForRegistry(context, ensureSections(context, targets.map((section) => SECTION_DRIVERS[section])), options.signal);
|
|
452
417
|
assertContextActive(context);
|
|
453
418
|
const state = stateFor(context);
|
|
454
419
|
const metadata = {
|
|
@@ -467,8 +432,9 @@ export async function preloadDefinitions(context, sections, options = {}) {
|
|
|
467
432
|
deepFreeze(metadata);
|
|
468
433
|
return Object.freeze(attachReadMeta(targets, metadata));
|
|
469
434
|
}
|
|
470
|
-
async function resolveDefinition(context,
|
|
471
|
-
const
|
|
435
|
+
async function resolveDefinition(context, driver, id, options, pair) {
|
|
436
|
+
const { section } = driver;
|
|
437
|
+
const loaded = await ensureSection(context, driver, pair);
|
|
472
438
|
const expected = options.expectedSequenceId;
|
|
473
439
|
const definition = loaded.definitions.get(id);
|
|
474
440
|
const state = stateFor(context);
|
|
@@ -508,7 +474,7 @@ async function resolveDefinition(context, section, id, options) {
|
|
|
508
474
|
* ```
|
|
509
475
|
*/
|
|
510
476
|
export function resolveShip(context, shipId, options = {}) {
|
|
511
|
-
return resolveDefinition(context,
|
|
477
|
+
return resolveDefinition(context, SHIPS, shipId, options, SHIPS_AND_CARGO);
|
|
512
478
|
}
|
|
513
479
|
/** Lists every ship configuration in the context's loaded Game definitions section.
|
|
514
480
|
*
|
|
@@ -532,7 +498,7 @@ export function resolveShip(context, shipId, options = {}) {
|
|
|
532
498
|
* ```
|
|
533
499
|
*/
|
|
534
500
|
export async function listShipConfigurations(context) {
|
|
535
|
-
const loaded = (await ensureSection(context,
|
|
501
|
+
const loaded = (await ensureSection(context, SHIPS, SHIPS_AND_CARGO));
|
|
536
502
|
return loaded.configurations;
|
|
537
503
|
}
|
|
538
504
|
/** Lists current ship configurations associated with a mint in this context's Game.
|
|
@@ -559,7 +525,7 @@ export async function listShipConfigurations(context) {
|
|
|
559
525
|
* ```
|
|
560
526
|
*/
|
|
561
527
|
export async function listShipConfigurationsByMint(context, mint) {
|
|
562
|
-
const loaded = (await ensureSection(context,
|
|
528
|
+
const loaded = (await ensureSection(context, SHIPS, SHIPS_AND_CARGO));
|
|
563
529
|
if (loaded.mintIndex === undefined) {
|
|
564
530
|
const groups = new Map();
|
|
565
531
|
for (const ship of loaded.configurations) {
|
|
@@ -586,7 +552,7 @@ export async function listShipConfigurationsByMint(context, mint) {
|
|
|
586
552
|
* ```
|
|
587
553
|
*/
|
|
588
554
|
export function resolveCargo(context, cargoId, options = {}) {
|
|
589
|
-
return resolveDefinition(context,
|
|
555
|
+
return resolveDefinition(context, CARGO, cargoId, options, SHIPS_AND_CARGO);
|
|
590
556
|
}
|
|
591
557
|
/** Resolves one Crafting Hab definition with sequence-aware invalidation.
|
|
592
558
|
* @example
|
|
@@ -596,7 +562,7 @@ export function resolveCargo(context, cargoId, options = {}) {
|
|
|
596
562
|
* ```
|
|
597
563
|
*/
|
|
598
564
|
export function resolveCraftingHabDefinition(context, definitionId, options = {}) {
|
|
599
|
-
return resolveDefinition(context,
|
|
565
|
+
return resolveDefinition(context, CRAFTING_HABS, definitionId, options);
|
|
600
566
|
}
|
|
601
567
|
/** Resolves one Crafting Hab building definition with sequence-aware invalidation.
|
|
602
568
|
* @example
|
|
@@ -606,15 +572,15 @@ export function resolveCraftingHabDefinition(context, definitionId, options = {}
|
|
|
606
572
|
* ```
|
|
607
573
|
*/
|
|
608
574
|
export function resolveHabBuildingDefinition(context, buildingId, options = {}) {
|
|
609
|
-
return resolveDefinition(context,
|
|
575
|
+
return resolveDefinition(context, HAB_BUILDINGS, buildingId, options);
|
|
610
576
|
}
|
|
611
577
|
/** Resolves the Game XP rules matching one Character XP sequence. */
|
|
612
578
|
export function resolveXpDefinitions(context, options = {}) {
|
|
613
|
-
return resolveDefinition(context,
|
|
579
|
+
return resolveDefinition(context, XP, 0, options);
|
|
614
580
|
}
|
|
615
581
|
/** Lists the independent immutable Game research catalog. */
|
|
616
582
|
export async function listResearchDefinitions(context) {
|
|
617
|
-
const loaded = (await ensureSection(context,
|
|
583
|
+
const loaded = (await ensureSection(context, RESEARCH));
|
|
618
584
|
return deepFreeze({
|
|
619
585
|
definitions: [...loaded.definitions.values()],
|
|
620
586
|
sequenceId: loaded.sequenceId,
|
|
@@ -623,28 +589,28 @@ export async function listResearchDefinitions(context) {
|
|
|
623
589
|
export { RegistryOutOfSyncError } from '../client/errors.js';
|
|
624
590
|
/** Internal Claim Stake lookup using the shared section lifecycle. */
|
|
625
591
|
export function resolveClaimStakeDefinition(context, id) {
|
|
626
|
-
return resolveDefinition(context,
|
|
592
|
+
return resolveDefinition(context, CLAIM_STAKES, id, {});
|
|
627
593
|
}
|
|
628
594
|
/** Internal canonical Claim Stake catalog. */
|
|
629
595
|
export async function listClaimStakeDefinitions(context) {
|
|
630
|
-
return (await ensureSection(context,
|
|
596
|
+
return (await ensureSection(context, CLAIM_STAKES)).catalog;
|
|
631
597
|
}
|
|
632
598
|
/** Internal canonical Crafting Hab container catalog. */
|
|
633
599
|
export async function listCraftingHabDefinitions(context) {
|
|
634
|
-
return (await ensureSection(context,
|
|
600
|
+
return (await ensureSection(context, CRAFTING_HABS)).catalog;
|
|
635
601
|
}
|
|
636
602
|
/** Internal Building definition lookup using the shared section lifecycle. */
|
|
637
603
|
export function resolveClaimStakeBuildingDefinition(context, id) {
|
|
638
|
-
return resolveDefinition(context,
|
|
604
|
+
return resolveDefinition(context, BUILDINGS, id, {});
|
|
639
605
|
}
|
|
640
606
|
/** Internal canonical Claim Stake building catalog. */
|
|
641
607
|
export async function listClaimStakeBuildingDefinitions(context) {
|
|
642
|
-
return (await ensureSection(context,
|
|
608
|
+
return (await ensureSection(context, BUILDINGS))
|
|
643
609
|
.catalog;
|
|
644
610
|
}
|
|
645
611
|
/** Internal canonical Hab building catalog. */
|
|
646
612
|
export async function listHabBuildingDefinitions(context) {
|
|
647
|
-
return (await ensureSection(context,
|
|
613
|
+
return (await ensureSection(context, HAB_BUILDINGS)).catalog;
|
|
648
614
|
}
|
|
649
615
|
/** Lists all cargo definitions from the context's retained Game section.
|
|
650
616
|
*
|
|
@@ -662,7 +628,7 @@ export async function listHabBuildingDefinitions(context) {
|
|
|
662
628
|
* ```
|
|
663
629
|
*/
|
|
664
630
|
export async function listCargoDefinitions(context) {
|
|
665
|
-
const loaded = (await ensureSection(context,
|
|
631
|
+
const loaded = (await ensureSection(context, CARGO, SHIPS_AND_CARGO));
|
|
666
632
|
return (loaded.catalog ??= Object.freeze([...loaded.definitions.values()]));
|
|
667
633
|
}
|
|
668
634
|
//# sourceMappingURL=index.js.map
|