@aephia/atlas-kit 0.6.0-next.1 → 0.6.0-next.100
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 +7 -3
- package/dist/cargo/actions/deposit.d.ts +44 -0
- package/dist/cargo/actions/deposit.d.ts.map +1 -0
- package/dist/cargo/actions/deposit.js +212 -0
- package/dist/cargo/actions/deposit.js.map +1 -0
- package/dist/cargo/actions/index.d.ts +2 -0
- package/dist/cargo/actions/index.d.ts.map +1 -1
- package/dist/cargo/actions/index.js +12 -15
- package/dist/cargo/actions/index.js.map +1 -1
- package/dist/cargo/actions/wallet-context.d.ts +14 -0
- package/dist/cargo/actions/wallet-context.d.ts.map +1 -0
- package/dist/cargo/actions/wallet-context.js +12 -0
- package/dist/cargo/actions/wallet-context.js.map +1 -0
- package/dist/cargo/actions/wallet-token.d.ts +8 -0
- package/dist/cargo/actions/wallet-token.d.ts.map +1 -0
- package/dist/cargo/actions/wallet-token.js +50 -0
- package/dist/cargo/actions/wallet-token.js.map +1 -0
- package/dist/cargo/actions/withdrawal.d.ts +46 -0
- package/dist/cargo/actions/withdrawal.d.ts.map +1 -0
- package/dist/cargo/actions/withdrawal.js +266 -0
- package/dist/cargo/actions/withdrawal.js.map +1 -0
- package/dist/claim-stakes/actions/index.d.ts +13 -0
- package/dist/claim-stakes/actions/index.d.ts.map +1 -1
- package/dist/claim-stakes/actions/index.js +137 -111
- 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 +23 -2
- 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.map +1 -1
- package/dist/combat/actions/index.js +104 -67
- package/dist/combat/actions/index.js.map +1 -1
- package/dist/crafting/actions/index.d.ts +11 -0
- package/dist/crafting/actions/index.d.ts.map +1 -1
- package/dist/crafting/actions/index.js +101 -108
- 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 +44 -15
- package/dist/crafting/index.js.map +1 -1
- package/dist/factions/actions/index.d.ts +36 -0
- package/dist/factions/actions/index.d.ts.map +1 -0
- package/dist/factions/actions/index.js +137 -0
- package/dist/factions/actions/index.js.map +1 -0
- package/dist/factions/index.d.ts +1 -0
- package/dist/factions/index.d.ts.map +1 -1
- package/dist/factions/index.js +14 -7
- package/dist/factions/index.js.map +1 -1
- package/dist/factions/profile-faction.d.ts +58 -0
- package/dist/factions/profile-faction.d.ts.map +1 -0
- package/dist/factions/profile-faction.js +63 -0
- package/dist/factions/profile-faction.js.map +1 -0
- 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 +149 -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 +138 -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 +114 -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 +38 -16
- package/dist/fleets/actions/index.d.ts.map +1 -1
- package/dist/fleets/actions/index.js +246 -153
- 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 +122 -0
- package/dist/fleets/actions/respawn.js.map +1 -0
- package/dist/fleets/actions/ship-import.d.ts +48 -0
- package/dist/fleets/actions/ship-import.d.ts.map +1 -0
- package/dist/fleets/actions/ship-import.js +332 -0
- package/dist/fleets/actions/ship-import.js.map +1 -0
- 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 +52 -2
- 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 +56 -0
- package/dist/identity/actions/create-profile.d.ts.map +1 -0
- package/dist/identity/actions/create-profile.js +139 -0
- package/dist/identity/actions/create-profile.js.map +1 -0
- package/dist/identity/actions/index.d.ts +38 -0
- package/dist/identity/actions/index.d.ts.map +1 -0
- package/dist/identity/actions/index.js +130 -0
- package/dist/identity/actions/index.js.map +1 -0
- package/dist/identity/index.d.ts +16 -0
- package/dist/identity/index.d.ts.map +1 -1
- package/dist/identity/index.js +16 -0
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/permissions.d.ts +124 -0
- package/dist/identity/permissions.d.ts.map +1 -0
- package/dist/identity/permissions.js +171 -0
- package/dist/identity/permissions.js.map +1 -0
- 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/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/character-registration.d.ts +11 -0
- package/dist/internal/c4/character-registration.d.ts.map +1 -0
- package/dist/internal/c4/character-registration.js +23 -0
- package/dist/internal/c4/character-registration.js.map +1 -0
- 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.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 +25 -38
- package/dist/internal/c4/claim-stake.js.map +1 -1
- package/dist/internal/c4/combat.d.ts +0 -27
- package/dist/internal/c4/combat.d.ts.map +1 -1
- package/dist/internal/c4/combat.js +0 -33
- 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 +53 -44
- 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 +30 -0
- package/dist/internal/c4/currency-cache.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-adapter.d.ts +12 -0
- package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
- package/dist/internal/c4/faction-adapter.js +52 -0
- package/dist/internal/c4/faction-adapter.js.map +1 -0
- package/dist/internal/c4/faction-enrollment.d.ts +6 -0
- package/dist/internal/c4/faction-enrollment.d.ts.map +1 -0
- package/dist/internal/c4/faction-enrollment.js +8 -0
- package/dist/internal/c4/faction-enrollment.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 +31 -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 +48 -0
- package/dist/internal/c4/faction-treasury.js.map +1 -0
- package/dist/internal/c4/factions.d.ts +9 -57
- package/dist/internal/c4/factions.d.ts.map +1 -1
- package/dist/internal/c4/factions.js +21 -139
- 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 +180 -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 +15 -0
- 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 +45 -19
- package/dist/internal/c4/fleet.d.ts.map +1 -1
- package/dist/internal/c4/fleet.js +26 -7
- 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 +53 -0
- package/dist/internal/c4/game.d.ts.map +1 -1
- package/dist/internal/c4/game.js +130 -5
- package/dist/internal/c4/game.js.map +1 -1
- package/dist/internal/c4/identity.d.ts +6 -9
- package/dist/internal/c4/identity.d.ts.map +1 -1
- package/dist/internal/c4/identity.js +3 -24
- package/dist/internal/c4/identity.js.map +1 -1
- package/dist/internal/c4/local-market-order.d.ts +31 -0
- package/dist/internal/c4/local-market-order.d.ts.map +1 -0
- package/dist/internal/c4/local-market-order.js +47 -0
- package/dist/internal/c4/local-market-order.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 +0 -33
- 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 +13 -51
- 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/profile-creation.d.ts +17 -0
- package/dist/internal/c4/profile-creation.d.ts.map +1 -0
- package/dist/internal/c4/profile-creation.js +36 -0
- package/dist/internal/c4/profile-creation.js.map +1 -0
- package/dist/internal/c4/profile-faction.d.ts.map +1 -1
- package/dist/internal/c4/profile-faction.js +2 -0
- package/dist/internal/c4/profile-faction.js.map +1 -1
- package/dist/internal/c4/profile-permissions.d.ts +14 -0
- package/dist/internal/c4/profile-permissions.d.ts.map +1 -0
- package/dist/internal/c4/profile-permissions.js +81 -0
- package/dist/internal/c4/profile-permissions.js.map +1 -0
- 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 +0 -27
- package/dist/internal/c4/rewards.d.ts.map +1 -1
- package/dist/internal/c4/rewards.js +0 -33
- 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 +258 -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 +2 -33
- 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 +25 -21
- 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 +3 -41
- package/dist/internal/c4/starbase.js.map +1 -1
- package/dist/internal/c4/wallet-cargo-cache.d.ts +3 -0
- package/dist/internal/c4/wallet-cargo-cache.d.ts.map +1 -0
- package/dist/internal/c4/wallet-cargo-cache.js +24 -0
- package/dist/internal/c4/wallet-cargo-cache.js.map +1 -0
- 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 +58 -25
- 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 +4 -0
- package/dist/internal/planning/account-state.d.ts.map +1 -0
- package/dist/internal/planning/account-state.js +11 -0
- package/dist/internal/planning/account-state.js.map +1 -0
- 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 +20 -0
- package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
- package/dist/internal/planning/arrival-guards.js +187 -0
- package/dist/internal/planning/arrival-guards.js.map +1 -0
- package/dist/internal/planning/authorization-adapter.d.ts +65 -35
- package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
- package/dist/internal/planning/authorization-adapter.js +217 -70
- 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 +58 -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 +86 -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 +32 -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 +198 -0
- package/dist/internal/planning/democracy-history.js.map +1 -0
- package/dist/internal/planning/faction-enrollment.d.ts +10 -0
- package/dist/internal/planning/faction-enrollment.d.ts.map +1 -0
- package/dist/internal/planning/faction-enrollment.js +46 -0
- package/dist/internal/planning/faction-enrollment.js.map +1 -0
- 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 +105 -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 +110 -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 +108 -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 +47 -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 +131 -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 +225 -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 +42 -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 +85 -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 +166 -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 +137 -0
- package/dist/internal/planning/fleet-ship-assembly.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 +239 -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 +126 -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 +166 -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 +41 -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 +103 -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 +31 -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/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 +41 -0
- package/dist/internal/planning/respawn-guards.js.map +1 -0
- package/dist/internal/planning/runtime-guards.d.ts +43 -0
- package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
- package/dist/internal/planning/runtime-guards.js +638 -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 +94 -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 +196 -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 +244 -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 +52 -0
- package/dist/internal/planning/ship-import-funding.js.map +1 -0
- package/dist/internal/planning/ship-token.d.ts +9 -0
- package/dist/internal/planning/ship-token.d.ts.map +1 -0
- package/dist/internal/planning/ship-token.js +46 -0
- package/dist/internal/planning/ship-token.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 +93 -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 +15 -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/xp-runtime.d.ts +36 -0
- package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
- package/dist/internal/planning/xp-runtime.js +126 -0
- package/dist/internal/planning/xp-runtime.js.map +1 -0
- 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.map +1 -1
- package/dist/loyalty/actions/index.js +7 -20
- package/dist/loyalty/actions/index.js.map +1 -1
- package/dist/loyalty/index.d.ts.map +1 -1
- package/dist/loyalty/index.js +2 -6
- package/dist/loyalty/index.js.map +1 -1
- package/dist/markets/actions/index.d.ts +61 -3
- package/dist/markets/actions/index.d.ts.map +1 -1
- package/dist/markets/actions/index.js +142 -36
- 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 +282 -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 +57 -10
- 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 +332 -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 +7 -2
- 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 +5 -0
- package/dist/planning/assembly.d.ts.map +1 -1
- package/dist/planning/assembly.js +30 -2
- package/dist/planning/assembly.js.map +1 -1
- package/dist/planning/execution.d.ts +18 -3
- package/dist/planning/execution.d.ts.map +1 -1
- package/dist/planning/execution.js +580 -38
- package/dist/planning/execution.js.map +1 -1
- package/dist/planning/index.d.ts +243 -64
- package/dist/planning/index.d.ts.map +1 -1
- package/dist/planning/index.js +1012 -57
- package/dist/planning/index.js.map +1 -1
- 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 -30
- 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/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 +11 -1
- package/dist/registry/cargo.d.ts.map +1 -1
- package/dist/registry/cargo.js +42 -1
- 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.map +1 -1
- package/dist/registry/onboarding.d.ts +14 -0
- package/dist/registry/onboarding.d.ts.map +1 -0
- package/dist/registry/onboarding.js +37 -0
- package/dist/registry/onboarding.js.map +1 -0
- 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 +30 -0
- package/dist/registry/ships.d.ts.map +1 -0
- package/dist/registry/ships.js +62 -0
- package/dist/registry/ships.js.map +1 -0
- 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/scanning/actions/index.d.ts +116 -0
- package/dist/scanning/actions/index.d.ts.map +1 -0
- package/dist/scanning/actions/index.js +185 -0
- package/dist/scanning/actions/index.js.map +1 -0
- package/dist/scanning/index.d.ts +4 -1
- package/dist/scanning/index.d.ts.map +1 -1
- package/dist/scanning/index.js +12 -8
- 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/world/index.d.ts +110 -5
- package/dist/world/index.d.ts.map +1 -1
- package/dist/world/index.js +109 -4
- 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 +18 -2
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { readCharacterInitialization } from '../../registry/onboarding.js';
|
|
2
|
+
import { calculateRegistrationFunding, isEmptySystemAccount, } from '../../internal/planning/character-registration.js';
|
|
3
|
+
import { isAddress, isOffCurveAddress } from '@solana/kit';
|
|
4
|
+
import { hashAccountState } from '../../internal/planning/account-state.js';
|
|
5
|
+
import { InvalidActionInputError, SageSdkError } from '../../client/errors.js';
|
|
6
|
+
import { readContextRawAccounts } from '../../client/reconciliation.js';
|
|
7
|
+
import { createRegisterCharacterInstruction } from '../../internal/c4/character-registration.js';
|
|
8
|
+
import { characterAccountDefinition, profileAccountDefinition, findCharacterPda, } from '../../internal/c4/identity.js';
|
|
9
|
+
import { requireGameAddress } from '../../internal/game-context.js';
|
|
10
|
+
import { RENT_ADDRESS, readRent } from '../../internal/planning/rent.js';
|
|
11
|
+
import { resolveCharacterRegistrationXpRuntime } from '../../internal/planning/xp-runtime.js';
|
|
12
|
+
import { createPlan } from '../../planning/index.js';
|
|
13
|
+
function validateOptions(input) {
|
|
14
|
+
if (input === null || typeof input !== 'object' || Array.isArray(input))
|
|
15
|
+
throw new InvalidActionInputError('options', input, 'an object containing only funder', 'Pass { funder } with the address that will pay for Character account storage.');
|
|
16
|
+
const record = input;
|
|
17
|
+
if (Object.keys(record).length !== 1 ||
|
|
18
|
+
!Object.hasOwn(record, 'funder') ||
|
|
19
|
+
typeof record.funder !== 'string' ||
|
|
20
|
+
!isAddress(record.funder) ||
|
|
21
|
+
isOffCurveAddress(record.funder))
|
|
22
|
+
throw new InvalidActionInputError('options.funder', record.funder, 'one directly signing z.ink/Solana address and no other option fields', 'Set funder to an external signer address, not a signer object or program-derived address.');
|
|
23
|
+
return { funder: record.funder };
|
|
24
|
+
}
|
|
25
|
+
function fail(message, address) {
|
|
26
|
+
throw new SageSdkError('ACTION_PRECONDITION_FAILED', message, { address });
|
|
27
|
+
}
|
|
28
|
+
/** Plans creation of an existing Profile's canonical Character in the configured Game.
|
|
29
|
+
* Only the explicit storage funder signs. The Profile's authority and faction
|
|
30
|
+
* enrollment are not prerequisites for this instruction. Planning never creates
|
|
31
|
+
* an account, signs, submits, or retains a signer. Existing Characters are rejected;
|
|
32
|
+
* reuse them through `getCharacterForProfile` or `maybeGetCharacterForProfile`.
|
|
33
|
+
* New Plans bind the current Game-2 Character and Career XP creation intent.
|
|
34
|
+
* The canonical accounts, absence, storage pricing, and funder balance are
|
|
35
|
+
* revalidated before signing. Final creation remains chain-authoritative. Simulate
|
|
36
|
+
* before signing and read the Character after confirmed execution to verify its
|
|
37
|
+
* exact Profile/Game identity. Submission alone does not prove creation.
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* import {planRegisterCharacter} from '@aephia/atlas-kit/identity/actions';
|
|
41
|
+
* import type {SageContext,Address} from '@aephia/atlas-kit/client';
|
|
42
|
+
* declare const ctx:SageContext;
|
|
43
|
+
* declare const profileAddress:Address;
|
|
44
|
+
* declare const funder:Address;
|
|
45
|
+
* const plan=await planRegisterCharacter(ctx,profileAddress,{funder});
|
|
46
|
+
* console.log(plan.summary,plan.requiredSigners);
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export async function planRegisterCharacter(ctx, profileAddress, input) {
|
|
50
|
+
const { funder } = validateOptions(input);
|
|
51
|
+
if (typeof profileAddress !== 'string' || !isAddress(profileAddress))
|
|
52
|
+
throw new InvalidActionInputError('profileAddress', profileAddress, 'an existing Profile account address', 'Pass the Profile address, not a wallet address or loaded signer.');
|
|
53
|
+
const game = requireGameAddress(ctx);
|
|
54
|
+
const character = await findCharacterPda(profileAddress, game);
|
|
55
|
+
const raw = await readContextRawAccounts(ctx, [
|
|
56
|
+
profileAddress,
|
|
57
|
+
character,
|
|
58
|
+
RENT_ADDRESS,
|
|
59
|
+
funder,
|
|
60
|
+
]);
|
|
61
|
+
const [profileAccount, characterAccount, rentAccount, funderAccount] = raw;
|
|
62
|
+
if (!profileAccount)
|
|
63
|
+
fail(`Profile ${profileAddress} does not exist. Create or select an existing Profile before registering its Character.`, profileAddress);
|
|
64
|
+
if (profileAccount.executable)
|
|
65
|
+
fail(`Profile ${profileAddress} is executable instead of Profile state. Select a valid Player Profile account and retry.`, profileAddress);
|
|
66
|
+
profileAccountDefinition.decode(profileAccount);
|
|
67
|
+
if (characterAccount && !isEmptySystemAccount(characterAccount)) {
|
|
68
|
+
if (characterAccount.executable)
|
|
69
|
+
fail(`Canonical Character ${character} is executable instead of Character state. Verify the configured Game and account data before retrying.`, character);
|
|
70
|
+
const existing = characterAccountDefinition.decode(characterAccount);
|
|
71
|
+
if (existing.playerProfile !== profileAddress || existing.game !== game)
|
|
72
|
+
fail(`Canonical Character ${character} contains a different Profile or Game relationship. Verify the deployment and refresh the account; do not treat it as a missing Character.`, character);
|
|
73
|
+
fail(`Character ${character} is already registered for Profile ${profileAddress} in Game ${game}. Read and reuse it with getCharacterForProfile or maybeGetCharacterForProfile; registration is not idempotent.`, character);
|
|
74
|
+
}
|
|
75
|
+
const initialization = await readCharacterInitialization(ctx);
|
|
76
|
+
const xp = await resolveCharacterRegistrationXpRuntime(ctx, {
|
|
77
|
+
game,
|
|
78
|
+
character,
|
|
79
|
+
});
|
|
80
|
+
if (!rentAccount)
|
|
81
|
+
fail(`Rent sysvar ${RENT_ADDRESS} is missing. Refresh the configured deployment before calculating Character storage funding.`, RENT_ADDRESS);
|
|
82
|
+
if (!funderAccount ||
|
|
83
|
+
funderAccount.executable ||
|
|
84
|
+
funderAccount.owner !== '11111111111111111111111111111111' ||
|
|
85
|
+
funderAccount.data.length !== 0)
|
|
86
|
+
fail(`Character storage funder ${funder} must be an existing non-executable System wallet. Select and fund that signer separately, then prepare registration again.`, funder);
|
|
87
|
+
const minimum = readRent(rentAccount);
|
|
88
|
+
const storage = calculateRegistrationFunding(minimum, initialization.characterSize, characterAccount?.lamports ?? 0n, xp.budgetLamports);
|
|
89
|
+
const funding = storage.requiredLamports;
|
|
90
|
+
if (funderAccount.lamports < funding)
|
|
91
|
+
fail(`Character storage funder ${funder} needs ${funding - funderAccount.lamports} more native lamports. Fund it separately and recreate registration.`, funder);
|
|
92
|
+
const summary = `Register canonical Character ${character} and Career XP budget ${xp.xpBudget} for existing Profile ${profileAddress} in Game ${game}. Funder ${funder} is the sole instruction signer and provides the observed ${funding} lamports of account storage funding; transaction fees are separate. Character v0 allocates ${initialization.characterSize} bytes, Career XP budget v1 allocates 280 bytes with reconciliation marker 1. Net storage debit is ${storage.netDebit} lamports, including a ${storage.refund} lamport Character refund after budget funding; excess budget funding is retained. Valid empty System pre-funded targets are supported. XP budget configuration ${xp.xpBudgetConfig} remains Game-owned and is not created. No Profile-authority or faction signature is required. Funding is revalidated before signing; fees, intervening changes and final creation remain chain-authoritative. Simulate before signing, then use getCharacterForProfile after confirmed execution to verify the Profile/Game identity.`;
|
|
93
|
+
return createPlan({
|
|
94
|
+
kind: 'identity.register-character',
|
|
95
|
+
summary,
|
|
96
|
+
preconditions: [
|
|
97
|
+
{
|
|
98
|
+
kind: 'character-registration',
|
|
99
|
+
address: character,
|
|
100
|
+
game,
|
|
101
|
+
profile: profileAddress,
|
|
102
|
+
profileDataHash: await hashAccountState(profileAccount.owner, profileAccount.data),
|
|
103
|
+
funder,
|
|
104
|
+
xpBudget: xp.xpBudget,
|
|
105
|
+
xpBudgetConfig: xp.xpBudgetConfig,
|
|
106
|
+
maximumFunderDebit: funding,
|
|
107
|
+
...initialization,
|
|
108
|
+
characterLamports: characterAccount?.lamports ?? 0n,
|
|
109
|
+
budgetLamports: xp.budgetLamports,
|
|
110
|
+
describes: `Create canonical Character ${character} and Career XP budget ${xp.xpBudget} with at most ${funding} lamports of storage funding from System wallet ${funder}; require current Game 2, valid Profile and XP configuration, and both targets to remain absent or valid empty System accounts. Initial allocation, refunds and final funder rent status are rechecked before signing.`,
|
|
111
|
+
},
|
|
112
|
+
],
|
|
113
|
+
steps: [
|
|
114
|
+
{
|
|
115
|
+
describes: summary,
|
|
116
|
+
signers: [funder],
|
|
117
|
+
instruction: createRegisterCharacterInstruction({
|
|
118
|
+
profile: profileAddress,
|
|
119
|
+
funder,
|
|
120
|
+
character,
|
|
121
|
+
game,
|
|
122
|
+
xpBudget: xp.xpBudget,
|
|
123
|
+
xpBudgetConfig: xp.xpBudgetConfig,
|
|
124
|
+
}),
|
|
125
|
+
},
|
|
126
|
+
],
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
export { planCreateProfile, } from './create-profile.js';
|
|
130
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"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"}
|
package/dist/identity/index.d.ts
CHANGED
|
@@ -222,4 +222,20 @@ export declare function getProfilesForWallet(ctx: SageContext, wallet: Address,
|
|
|
222
222
|
* ```
|
|
223
223
|
*/
|
|
224
224
|
export declare function getCharactersForWallet(ctx: SageContext, wallet: Address, options: WalletProfileDiscoveryOptions): Promise<readonly CharacterSnapshot[]>;
|
|
225
|
+
/** Pinned Player Profile scope, where bit zero means Profile AUTH.
|
|
226
|
+
* @example
|
|
227
|
+
* ```ts
|
|
228
|
+
* const mask = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['authenticate']);
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
export { PROFILE_PERMISSION_SCOPE } from './permissions.js';
|
|
232
|
+
/** Pinned SAGE scope for recognized gameplay permission bits, not Profile AUTH.
|
|
233
|
+
* @example
|
|
234
|
+
* ```ts
|
|
235
|
+
* const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
export { SAGE_PERMISSION_SCOPE } from './permissions.js';
|
|
239
|
+
export { composeProfilePermissions, unionProfilePermissionMasks, containsProfilePermissions, inspectProfilePermissions, inspectProfileKeys, type ProfilePermissionInspection, type ProfileKeyRequirement, type ProfileKeyDiagnostic, type ProfileKeyInspection, } from './permissions.js';
|
|
240
|
+
export { deriveCharacterResearchState, type CharacterResearchState, } from './research-state.js';
|
|
225
241
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
package/dist/identity/index.js
CHANGED
|
@@ -338,4 +338,20 @@ export async function getCharactersForWallet(ctx, wallet, options) {
|
|
|
338
338
|
});
|
|
339
339
|
return Object.freeze(metadata);
|
|
340
340
|
}
|
|
341
|
+
/** Pinned Player Profile scope, where bit zero means Profile AUTH.
|
|
342
|
+
* @example
|
|
343
|
+
* ```ts
|
|
344
|
+
* const mask = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['authenticate']);
|
|
345
|
+
* ```
|
|
346
|
+
*/
|
|
347
|
+
export { PROFILE_PERMISSION_SCOPE } from './permissions.js';
|
|
348
|
+
/** Pinned SAGE scope for recognized gameplay permission bits, not Profile AUTH.
|
|
349
|
+
* @example
|
|
350
|
+
* ```ts
|
|
351
|
+
* const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
|
|
352
|
+
* ```
|
|
353
|
+
*/
|
|
354
|
+
export { SAGE_PERMISSION_SCOPE } from './permissions.js';
|
|
355
|
+
export { composeProfilePermissions, unionProfilePermissionMasks, containsProfilePermissions, inspectProfilePermissions, inspectProfileKeys, } from './permissions.js';
|
|
356
|
+
export { deriveCharacterResearchState, } from './research-state.js';
|
|
341
357
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,SAAS,GAMV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,iBAAiB,EACjB,+BAA+B,GAChC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EACL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AA0J9B,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAA2B,CAAC;AACjE,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAA6B,CAAC;AACrE,MAAM,qBAAqB,GAAG,IAAI,OAAO,EAGtC,CAAC;AACJ,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAG3C,CAAC;AAEJ,SAAS,YAAY,CACnB,QAAmC,EACnC,QAA8B;IAE9B,OAAO;QACL,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ;KACA,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CACxB,QAA8C;IAE9C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAC5B,cAAc,CACZ,uBAAuB,CAAC;QACtB,GAAG,QAAQ,CAAC,IAAI;QAChB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,SAAkB;KACzB,CAAC,EACF,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACjC,CACF,CAAC;IACF,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAgD;IAEhD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAC5B,cAAc,CACZ,uBAAuB,CAAC;QACtB,GAAG,IAAI;QACP,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,WAAoB;QAC1B,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC;KAC7C,CAAC,EACF,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,CAClC,CACF,CAAC;IACF,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAC5B,SAA4B,EAC5B,aAA4B;IAE5B,IAAI,WAAW,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;QAC5B,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAC5B,cAAc,CACZ,uBAAuB,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC;QACpD,IAAI,EAAE,sBAA+B;QACrC,aAAa,EAAE,SAAS,CAAC,aAAa;QACtC,EAAE,EAAE,SAAS,CAAC,EAAE;QAChB,aAAa;KACd,CAAC,EACF,QAAQ,CAAC,SAAS,CAAE,CACrB,CACF,CAAC;IACF,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,6BAA6B,CACpC,QAAgD,EAChD,cAAuB,EACvB,IAAa;IAEb,IACE,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,cAAc;QAC9C,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAC3B,CAAC;QACD,MAAM,IAAI,kBAAkB,CAC1B,WAAW,EACX,QAAQ,CAAC,OAAO,EAChB,IAAI,UAAU,CACZ,mDAAmD,QAAQ,CAAC,IAAI,CAAC,aAAa,aAAa,QAAQ,CAAC,IAAI,CAAC,IAAI,8DAA8D,cAAc,aAAa,IAAI,GAAG,CAC9M,EACD,oBAAoB,QAAQ,CAAC,OAAO,8BAA8B,QAAQ,CAAC,IAAI,CAAC,aAAa,aAAa,QAAQ,CAAC,IAAI,CAAC,IAAI,sCAAsC,cAAc,aAAa,IAAI,gHAAgH,CAClT,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,QAAgD,EAChD,cAAuB,EACvB,IAAa;IAEb,6BAA6B,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC9D,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAsC;IAEtC,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;YAClC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QACvC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QACnE,OAAO,EAAE,IAAI;QACb,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,OAAwB,EACxB,MAAe;IAEf,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC;QAAE,OAAO;IAC/D,MAAM,IAAI,kBAAkB,CAC1B,SAAS,EACT,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CACZ,sDAAsD,MAAM,mBAAmB,CAChF,EACD,yBAAyB,OAAO,CAAC,OAAO,4BAA4B,MAAM,qKAAqK,CAChP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,SAA6B;IACpD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,GAAgB,EAChB,OAAgB,EAChB,OAAqB;IAErB,OAAO,iBAAiB,CACtB,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,OAAO,EAAE,OAAO,CAAC,CAChE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,GAAgB,EAChB,cAAuB,EACvB,OAAqB;IAErB,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE;QACpD,kBAAkB,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK;KACvC,CAAC,CAAC;IACH,OAAO,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAgB;IAEhB,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACzB,MAAM,QAAQ,GAAG,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAE5C,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;YACtB,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;YAC7B,IAAI,EAAE,iBAA0B;YAChC,KAAK,EAAE,QAAQ,CAAC,WAAW;YAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,EAAE,CAAC;IACL,0BAA0B,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC7C,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;QACtB,0BAA0B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAgB,EAChB,OAAgB,EAChB,OAAqB;IAErB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CACxC,wBAAwB,EACxB,CAAC,OAAO,CAAC,EACT,OAAO,CACR,CAAC;IACF,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAgB,EAChB,cAAuB,EACvB,OAAqB;IAErB,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACtE,OAAO,4BAA4B,CACjC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAC1E,cAAc,EACd,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,GAAgB,EAChB,cAAuB,EACvB,OAAqB;IAErB,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CACxC,0BAA0B,EAC1B,CAAC,gBAAgB,CAAC,EAClB,OAAO,CACR,CAAC;IACF,OAAO,QAAQ,KAAK,SAAS;QAC3B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,4BAA4B,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,GAAgB,EAChB,MAAe,EACf,OAAsC;IAEtC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,YAAY,CACpB,0BAA0B,EAC1B,6HAA6H,EAC7H;YACE,WAAW,EAAE,SAAS;YACtB,QAAQ,EACN,OAAO,CAAC,QAAQ,KAAK,UAAU;gBAC7B,CAAC,CAAC,yBAAyB;gBAC3B,CAAC,CAAC,iBAAiB;SACxB,CACF,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC/C,IAAI,UAA8B,CAAC;IACnC,IAAI,MAAM,CAAC;IACX,IAAI,UAAU,CAAC;IAEf,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QACpC,MAAM,UAAU,GAAG,MAAM,+BAA+B,CAAC,GAAG,EAAE,MAAM,EAAE;YACpE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;YACvC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;SACpE,CAAC,CAAC;QACH,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC;QAClC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YACjC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACxD,CAAC;YACD,MAAM,IAAI,YAAY,CACpB,0BAA0B,EAC1B,yIAAyI,EACzI,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CACxD,CAAC;QACJ,CAAC;QACD,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACnD,UAAU,GAAG,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YACrB,IAAI,EAAE,aAAsB;YAC5B,IAAI,EAAE,yBAAyB;SAChC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CACvC,wBAAwB,EACxB,MAAM,EACN,WAAW,CACZ,CAAC;IAEF,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAgC,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,YAAY,IAAI,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC;YACH,iCAAiC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IACE,OAAO,CAAC,QAAQ,KAAK,UAAU;gBAC/B,KAAK,YAAY,kBAAkB,EACnC,CAAC;gBACD,MAAM,IAAI,aAAa,CACrB,wEAAwE,OAAO,CAAC,OAAO,oCAAoC,MAAM,oFAAoF,EACrN;oBACE,WAAW,EAAE,SAAS;oBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,KAAK;oBACL,QAAQ,EAAE,MAAM;oBAChB,QAAQ,EAAE,yBAAyB;iBACpC,CACF,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,YAAY;YACV,YAAY,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,GAAG,YAAY;gBACxD,CAAC,CAAC,QAAQ,CAAC,IAAI;gBACf,CAAC,CAAC,YAAY,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAClB,cAAc,CAAC,QAAQ,EAAE;QACvB,UAAU;QACV,IAAI,EAAE,YAAY,IAAI,EAAE;QACxB,MAAM;QACN,QAAQ,EACN,OAAO,CAAC,QAAQ,KAAK,UAAU;YAC7B,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,iBAAiB;QACvB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC;YAC5B,cAAc,EAAE,UAAU,CAAC,MAAM;YACjC,cAAc,EAAE,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;YACjD,YAAY;YACZ,cAAc,EAAE,QAAQ,CAAC,MAAM;SAChC,CAAC;KACH,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAgB,EAChB,MAAe,EACf,OAAsC;IAEtC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,CACjB,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACvB,2BAA2B,CACzB,GAAG,EACH,OAAO,CAAC,OAAO,EACf,iBAAiB,CAAC,OAAO,CAAC,CAC3B,CACF,CACF,CACF,CAAC,MAAM,CACN,CAAC,SAAS,EAAkC,EAAE,CAAC,SAAS,KAAK,SAAS,CACvE,CAAC;IACF,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAE,CAAC;IAC5C,IAAI,YAAgC,CAAC;IACrC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAE,CAAC,IAAI,CAAC;QACvC,YAAY;YACV,YAAY,KAAK,SAAS,IAAI,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;IAC5E,CAAC;IACD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE;QAC1C,UAAU,EAAE,eAAe,CAAC,UAAU;QACtC,IAAI,EAAE,YAAY,IAAI,EAAE;QACxB,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,QAAQ,EAAE,eAAe,CAAC,QAAQ;KACnC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { type Address } from '@solana/kit';
|
|
2
|
+
import { type ProfilePermission } from '../internal/c4/profile-permissions.js';
|
|
3
|
+
import type { ProfileSnapshot } from './index.js';
|
|
4
|
+
/** Pinned supported Player Profile program scope, where bit zero means AUTH.
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* const mask = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['authenticate']);
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
export declare const PROFILE_PERMISSION_SCOPE: Address;
|
|
11
|
+
/** Pinned supported SAGE program scope, where bit zero means manageGame.
|
|
12
|
+
* Recognized names describe bits, not complete action authorization policies.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare const SAGE_PERMISSION_SCOPE: Address;
|
|
19
|
+
/** Compose only verified names under an explicit scope. Empty input returns zero.
|
|
20
|
+
* Profile and SAGE names require their exact supported program scope;
|
|
21
|
+
* drainSolVault is recognized across scopes. Names identify verified bits, not
|
|
22
|
+
* complete action authorization policies. No default authority mask is added.
|
|
23
|
+
* @example
|
|
24
|
+
* ```ts
|
|
25
|
+
* const raw = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['addKeys', 'removeKeys']);
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare function composeProfilePermissions(scope: Address, names: readonly ProfilePermission[]): bigint;
|
|
29
|
+
/** Union exact raw masks, preserving unknown bits. Empty input returns zero.
|
|
30
|
+
* This is a pure bit operation. Callers must track the scope each mask belongs to;
|
|
31
|
+
* combining masks does not establish permission meanings or authorization.
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* const raw = unionProfilePermissionMasks([4n, 0n]);
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare function unionProfilePermissionMasks(masks: readonly bigint[]): bigint;
|
|
38
|
+
/** Numeric bit containment only, including unknown bits; this is not authorization.
|
|
39
|
+
* Callers must track the scope each mask belongs to; this pure bit operation
|
|
40
|
+
* neither checks scope compatibility nor interprets permission meanings.
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* const contains = containsProfilePermissions(6n, 4n);
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export declare function containsProfilePermissions(availableRaw: bigint, requiredRaw: bigint): boolean;
|
|
47
|
+
/** Immutable scoped permission meanings with all raw bits retained.
|
|
48
|
+
* @example
|
|
49
|
+
* ```ts
|
|
50
|
+
* const inspection: ProfilePermissionInspection = inspectProfilePermissions(PROFILE_PERMISSION_SCOPE, 1n);
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export interface ProfilePermissionInspection {
|
|
54
|
+
readonly scope: Address;
|
|
55
|
+
readonly permissionsRaw: bigint;
|
|
56
|
+
readonly permissions: readonly ProfilePermission[];
|
|
57
|
+
readonly unrecognizedBitsRaw: bigint;
|
|
58
|
+
toJSON(): unknown;
|
|
59
|
+
}
|
|
60
|
+
/** Inspect known meanings without discarding unrecognized raw bits.
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* const inspection = inspectProfilePermissions(PROFILE_PERMISSION_SCOPE, 1n);
|
|
64
|
+
* console.log(inspection.permissions, inspection.unrecognizedBitsRaw);
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function inspectProfilePermissions(scope: Address, permissionsRaw: bigint): ProfilePermissionInspection;
|
|
68
|
+
/** Explicit direct-key requirement evaluated only at the caller's supplied time.
|
|
69
|
+
* @example
|
|
70
|
+
* ```ts
|
|
71
|
+
* declare const signer: Address;
|
|
72
|
+
* const requirement: ProfileKeyRequirement = {signer, scope: PROFILE_PERMISSION_SCOPE, permissionsRaw: 4n, at: 100n};
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export interface ProfileKeyRequirement {
|
|
76
|
+
readonly signer: Address;
|
|
77
|
+
readonly scope: Address;
|
|
78
|
+
readonly permissionsRaw: bigint;
|
|
79
|
+
readonly at: bigint;
|
|
80
|
+
}
|
|
81
|
+
/** Reasons an inspected entry does not prove a direct scoped snapshot match.
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* const diagnostic: ProfileKeyDiagnostic = 'scope-mismatch';
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export type ProfileKeyDiagnostic = 'address-mismatch' | 'scope-mismatch' | 'expired' | 'missing-permissions' | 'unrecognized-permissions';
|
|
88
|
+
/** Immutable diagnostics for one original Profile key, never a selected authority.
|
|
89
|
+
* A match is advisory, not chain authorization; unknown requirements are indeterminate.
|
|
90
|
+
* @example
|
|
91
|
+
* ```ts
|
|
92
|
+
* declare const candidate: ProfileKeyInspection;
|
|
93
|
+
* console.log(candidate.keyIndex, candidate.status, candidate.diagnostics);
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
export interface ProfileKeyInspection {
|
|
97
|
+
readonly keyIndex: number;
|
|
98
|
+
readonly address: Address;
|
|
99
|
+
readonly scope: Address;
|
|
100
|
+
readonly permissionsRaw: bigint;
|
|
101
|
+
readonly isProfileAuthority: boolean;
|
|
102
|
+
readonly expiresAtRaw: bigint;
|
|
103
|
+
readonly expiresAt?: bigint;
|
|
104
|
+
readonly expired: boolean;
|
|
105
|
+
readonly diagnostics: readonly ProfileKeyDiagnostic[];
|
|
106
|
+
readonly status: 'match' | 'mismatch' | 'indeterminate';
|
|
107
|
+
toJSON(): unknown;
|
|
108
|
+
}
|
|
109
|
+
/** Inspect every key against an exact scope, mask, direct signer and explicit time.
|
|
110
|
+
* No AUTH override, role/certificate delegation, threshold policy, RPC, wall clock,
|
|
111
|
+
* refresh or signer is used. All original indices remain visible; select an index
|
|
112
|
+
* explicitly for an existing planner and retain its freshness and simulation checks.
|
|
113
|
+
* Canonical expiresAtRaw controls expiry; negative values are permanent. A key
|
|
114
|
+
* remains unexpired at its exact expiry second and expires only when at is later.
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* declare const profile: ProfileSnapshot;
|
|
118
|
+
* declare const requirement: ProfileKeyRequirement;
|
|
119
|
+
* const candidates = inspectProfileKeys(profile, requirement);
|
|
120
|
+
* console.log(candidates.map(key => [key.keyIndex, key.status]));
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
123
|
+
export declare function inspectProfileKeys(profile: ProfileSnapshot, requirement: ProfileKeyRequirement): readonly ProfileKeyInspection[];
|
|
124
|
+
//# sourceMappingURL=permissions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAGzE,OAAO,EAKL,KAAK,iBAAiB,EACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,OAAuB,CAAC;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAoB,CAAC;AA8BzD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAClC,MAAM,CAoBR;AACD;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAO5E;AACD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAIT;AACD;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACnD,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,MAAM,GACrB,2BAA2B,CAa7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AACD;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB,gBAAgB,GAChB,SAAS,GACT,qBAAqB,GACrB,0BAA0B,CAAC;AAC/B;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,UAAU,GAAG,eAAe,CAAC;IACxD,MAAM,IAAI,OAAO,CAAC;CACnB;AACD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,qBAAqB,GACjC,SAAS,oBAAoB,EAAE,CA+EjC"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { isAddress, isOffCurveAddress } from '@solana/kit';
|
|
2
|
+
import { InvalidActionInputError } from '../client/errors.js';
|
|
3
|
+
import { attachJsonSerialization } from '../internal/json.js';
|
|
4
|
+
import { PROFILE_SCOPE, SAGE_SCOPE, permissionBitsForScope, translatePermissions, } from '../internal/c4/profile-permissions.js';
|
|
5
|
+
/** Pinned supported Player Profile program scope, where bit zero means AUTH.
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* const mask = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['authenticate']);
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export const PROFILE_PERMISSION_SCOPE = PROFILE_SCOPE;
|
|
12
|
+
/** Pinned supported SAGE program scope, where bit zero means manageGame.
|
|
13
|
+
* Recognized names describe bits, not complete action authorization policies.
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* const mask = composeProfilePermissions(SAGE_PERMISSION_SCOPE, ['moveFleet']);
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export const SAGE_PERMISSION_SCOPE = SAGE_SCOPE;
|
|
20
|
+
function invalid(field, value, remedy) {
|
|
21
|
+
throw new InvalidActionInputError(field, value, 'explicit valid scoped Profile permission input', remedy);
|
|
22
|
+
}
|
|
23
|
+
function validateScope(scope) {
|
|
24
|
+
if (typeof scope !== 'string' || !isAddress(scope))
|
|
25
|
+
invalid('scope', scope, 'Supply the explicit z.ink/Solana program address whose permissions you are inspecting.');
|
|
26
|
+
}
|
|
27
|
+
function validateMask(mask) {
|
|
28
|
+
if (typeof mask !== 'bigint' || mask < 0n || mask > 0xffffffffffffffffn)
|
|
29
|
+
invalid('permissionsRaw', mask, 'Supply a bigint mask from 0n through 18446744073709551615n.');
|
|
30
|
+
}
|
|
31
|
+
function knownMask(scope) {
|
|
32
|
+
return permissionBitsForScope(scope).reduce((raw, [flag]) => raw | flag, 0n);
|
|
33
|
+
}
|
|
34
|
+
/** Compose only verified names under an explicit scope. Empty input returns zero.
|
|
35
|
+
* Profile and SAGE names require their exact supported program scope;
|
|
36
|
+
* drainSolVault is recognized across scopes. Names identify verified bits, not
|
|
37
|
+
* complete action authorization policies. No default authority mask is added.
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* const raw = composeProfilePermissions(PROFILE_PERMISSION_SCOPE, ['addKeys', 'removeKeys']);
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export function composeProfilePermissions(scope, names) {
|
|
44
|
+
validateScope(scope);
|
|
45
|
+
if (!Array.isArray(names))
|
|
46
|
+
invalid('names', names, 'Supply an array of verified Profile permission names.');
|
|
47
|
+
return names.reduce((raw, name) => {
|
|
48
|
+
const entry = permissionBitsForScope(scope).find(([, permission]) => permission === name);
|
|
49
|
+
if (!entry)
|
|
50
|
+
invalid('permission', name, 'Select a verified permission name for this exact scope: Profile names require PROFILE_PERMISSION_SCOPE and SAGE names require SAGE_PERMISSION_SCOPE.');
|
|
51
|
+
return raw | entry[0];
|
|
52
|
+
}, 0n);
|
|
53
|
+
}
|
|
54
|
+
/** Union exact raw masks, preserving unknown bits. Empty input returns zero.
|
|
55
|
+
* This is a pure bit operation. Callers must track the scope each mask belongs to;
|
|
56
|
+
* combining masks does not establish permission meanings or authorization.
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts
|
|
59
|
+
* const raw = unionProfilePermissionMasks([4n, 0n]);
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export function unionProfilePermissionMasks(masks) {
|
|
63
|
+
if (!Array.isArray(masks))
|
|
64
|
+
invalid('masks', masks, 'Supply an array of unsigned 64-bit bigint masks.');
|
|
65
|
+
return masks.reduce((raw, mask) => {
|
|
66
|
+
validateMask(mask);
|
|
67
|
+
return raw | mask;
|
|
68
|
+
}, 0n);
|
|
69
|
+
}
|
|
70
|
+
/** Numeric bit containment only, including unknown bits; this is not authorization.
|
|
71
|
+
* Callers must track the scope each mask belongs to; this pure bit operation
|
|
72
|
+
* neither checks scope compatibility nor interprets permission meanings.
|
|
73
|
+
* @example
|
|
74
|
+
* ```ts
|
|
75
|
+
* const contains = containsProfilePermissions(6n, 4n);
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
export function containsProfilePermissions(availableRaw, requiredRaw) {
|
|
79
|
+
validateMask(availableRaw);
|
|
80
|
+
validateMask(requiredRaw);
|
|
81
|
+
return (availableRaw & requiredRaw) === requiredRaw;
|
|
82
|
+
}
|
|
83
|
+
/** Inspect known meanings without discarding unrecognized raw bits.
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* const inspection = inspectProfilePermissions(PROFILE_PERMISSION_SCOPE, 1n);
|
|
87
|
+
* console.log(inspection.permissions, inspection.unrecognizedBitsRaw);
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export function inspectProfilePermissions(scope, permissionsRaw) {
|
|
91
|
+
validateScope(scope);
|
|
92
|
+
validateMask(permissionsRaw);
|
|
93
|
+
return Object.freeze(attachJsonSerialization({
|
|
94
|
+
scope,
|
|
95
|
+
permissionsRaw,
|
|
96
|
+
permissions: Object.freeze([
|
|
97
|
+
...translatePermissions(permissionsRaw, scope),
|
|
98
|
+
]),
|
|
99
|
+
unrecognizedBitsRaw: permissionsRaw & ~knownMask(scope),
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
/** Inspect every key against an exact scope, mask, direct signer and explicit time.
|
|
103
|
+
* No AUTH override, role/certificate delegation, threshold policy, RPC, wall clock,
|
|
104
|
+
* refresh or signer is used. All original indices remain visible; select an index
|
|
105
|
+
* explicitly for an existing planner and retain its freshness and simulation checks.
|
|
106
|
+
* Canonical expiresAtRaw controls expiry; negative values are permanent. A key
|
|
107
|
+
* remains unexpired at its exact expiry second and expires only when at is later.
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts
|
|
110
|
+
* declare const profile: ProfileSnapshot;
|
|
111
|
+
* declare const requirement: ProfileKeyRequirement;
|
|
112
|
+
* const candidates = inspectProfileKeys(profile, requirement);
|
|
113
|
+
* console.log(candidates.map(key => [key.keyIndex, key.status]));
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
export function inspectProfileKeys(profile, requirement) {
|
|
117
|
+
if (profile === null ||
|
|
118
|
+
typeof profile !== 'object' ||
|
|
119
|
+
Array.isArray(profile) ||
|
|
120
|
+
profile.kind !== 'profile' ||
|
|
121
|
+
!Array.isArray(profile.keys))
|
|
122
|
+
invalid('profile', profile, 'Load a ProfileSnapshot with getProfile and pass that loaded Profile, not a Character or raw account.');
|
|
123
|
+
if (requirement === null ||
|
|
124
|
+
typeof requirement !== 'object' ||
|
|
125
|
+
Array.isArray(requirement) ||
|
|
126
|
+
Object.keys(requirement).some((key) => !['signer', 'scope', 'permissionsRaw', 'at'].includes(key)))
|
|
127
|
+
invalid('requirement', requirement, 'Pass only signer, scope, permissionsRaw and at; delegated authorization and AUTH overrides are unsupported.');
|
|
128
|
+
const { signer, scope, permissionsRaw, at } = requirement;
|
|
129
|
+
validateScope(scope);
|
|
130
|
+
validateMask(permissionsRaw);
|
|
131
|
+
if (typeof signer !== 'string' ||
|
|
132
|
+
!isAddress(signer) ||
|
|
133
|
+
isOffCurveAddress(signer))
|
|
134
|
+
invalid('signer', signer, 'Supply the address of a directly signing external z.ink/Solana account.');
|
|
135
|
+
if (typeof at !== 'bigint' || at < 0n || at > 0x7fffffffffffffffn)
|
|
136
|
+
invalid('at', at, 'Supply explicit nonnegative bigint Unix seconds within the signed 64-bit range.');
|
|
137
|
+
const unknownRequired = (permissionsRaw & ~knownMask(scope)) !== 0n;
|
|
138
|
+
return Object.freeze(profile.keys.map((key, keyIndex) => {
|
|
139
|
+
const diagnostics = [];
|
|
140
|
+
const expired = key.expiresAtRaw >= 0n && key.expiresAtRaw < at;
|
|
141
|
+
if (key.address !== signer)
|
|
142
|
+
diagnostics.push('address-mismatch');
|
|
143
|
+
if (key.scope !== scope)
|
|
144
|
+
diagnostics.push('scope-mismatch');
|
|
145
|
+
if (expired)
|
|
146
|
+
diagnostics.push('expired');
|
|
147
|
+
if ((key.permissionsRaw & permissionsRaw) !== permissionsRaw)
|
|
148
|
+
diagnostics.push('missing-permissions');
|
|
149
|
+
const mismatch = diagnostics.length > 0;
|
|
150
|
+
if (unknownRequired)
|
|
151
|
+
diagnostics.push('unrecognized-permissions');
|
|
152
|
+
const status = mismatch
|
|
153
|
+
? 'mismatch'
|
|
154
|
+
: unknownRequired
|
|
155
|
+
? 'indeterminate'
|
|
156
|
+
: 'match';
|
|
157
|
+
return Object.freeze(attachJsonSerialization({
|
|
158
|
+
keyIndex,
|
|
159
|
+
address: key.address,
|
|
160
|
+
scope: key.scope,
|
|
161
|
+
permissionsRaw: key.permissionsRaw,
|
|
162
|
+
isProfileAuthority: key.scope === PROFILE_SCOPE && (key.permissionsRaw & 1n) !== 0n,
|
|
163
|
+
expiresAtRaw: key.expiresAtRaw,
|
|
164
|
+
...(key.expiresAtRaw < 0n ? {} : { expiresAt: key.expiresAtRaw }),
|
|
165
|
+
expired,
|
|
166
|
+
diagnostics: Object.freeze(diagnostics),
|
|
167
|
+
status,
|
|
168
|
+
}));
|
|
169
|
+
}));
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=permissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/identity/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,aAAa,EACb,UAAU,EACV,sBAAsB,EACtB,oBAAoB,GAErB,MAAM,uCAAuC,CAAC;AAG/C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAY,aAAa,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAY,UAAU,CAAC;AAEzD,SAAS,OAAO,CAAC,KAAa,EAAE,KAAc,EAAE,MAAc;IAC5D,MAAM,IAAI,uBAAuB,CAC/B,KAAK,EACL,KAAK,EACL,gDAAgD,EAChD,MAAM,CACP,CAAC;AACJ,CAAC;AACD,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAChD,OAAO,CACL,OAAO,EACP,KAAK,EACL,wFAAwF,CACzF,CAAC;AACN,CAAC;AACD,SAAS,YAAY,CAAC,IAAa;IACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,GAAG,EAAE,IAAI,IAAI,GAAG,mBAAmB;QACrE,OAAO,CACL,gBAAgB,EAChB,IAAI,EACJ,6DAA6D,CAC9D,CAAC;AACN,CAAC;AACD,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,sBAAsB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,KAAmC;IAEnC,aAAa,CAAC,KAAK,CAAC,CAAC;IACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,OAAO,CACL,OAAO,EACP,KAAK,EACL,uDAAuD,CACxD,CAAC;IACJ,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAChC,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,UAAU,KAAK,IAAI,CACxC,CAAC;QACF,IAAI,CAAC,KAAK;YACR,OAAO,CACL,YAAY,EACZ,IAAI,EACJ,sJAAsJ,CACvJ,CAAC;QACJ,OAAO,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AACD;;;;;;;GAOG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAwB;IAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,kDAAkD,CAAC,CAAC;IAC9E,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAChC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,GAAG,GAAG,IAAI,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AACD;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,YAAoB,EACpB,WAAmB;IAEnB,YAAY,CAAC,YAAY,CAAC,CAAC;IAC3B,YAAY,CAAC,WAAW,CAAC,CAAC;IAC1B,OAAO,CAAC,YAAY,GAAG,WAAW,CAAC,KAAK,WAAW,CAAC;AACtD,CAAC;AAcD;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,cAAsB;IAEtB,aAAa,CAAC,KAAK,CAAC,CAAC;IACrB,YAAY,CAAC,cAAc,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;QACtB,KAAK;QACL,cAAc;QACd,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC;YACzB,GAAG,oBAAoB,CAAC,cAAc,EAAE,KAAK,CAAC;SAC/C,CAAC;QACF,mBAAmB,EAAE,cAAc,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC;KACxD,CAAC,CACH,CAAC;AACJ,CAAC;AAgDD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAwB,EACxB,WAAkC;IAElC,IACE,OAAO,KAAK,IAAI;QAChB,OAAO,OAAO,KAAK,QAAQ;QAC3B,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACtB,OAAO,CAAC,IAAI,KAAK,SAAS;QAC1B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;QAE5B,OAAO,CACL,SAAS,EACT,OAAO,EACP,sGAAsG,CACvG,CAAC;IACJ,IACE,WAAW,KAAK,IAAI;QACpB,OAAO,WAAW,KAAK,QAAQ;QAC/B,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAC3B,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CACpE;QAED,OAAO,CACL,aAAa,EACb,WAAW,EACX,6GAA6G,CAC9G,CAAC;IACJ,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,WAAW,CAAC;IAC1D,aAAa,CAAC,KAAK,CAAC,CAAC;IACrB,YAAY,CAAC,cAAc,CAAC,CAAC;IAC7B,IACE,OAAO,MAAM,KAAK,QAAQ;QAC1B,CAAC,SAAS,CAAC,MAAM,CAAC;QAClB,iBAAiB,CAAC,MAAM,CAAC;QAEzB,OAAO,CACL,QAAQ,EACR,MAAM,EACN,yEAAyE,CAC1E,CAAC;IACJ,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,mBAAmB;QAC/D,OAAO,CACL,IAAI,EACJ,EAAE,EACF,iFAAiF,CAClF,CAAC;IACJ,MAAM,eAAe,GAAG,CAAC,cAAc,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;IACpE,OAAO,MAAM,CAAC,MAAM,CAClB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;QACjC,MAAM,WAAW,GAA2B,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,IAAI,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC;QAChE,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM;YAAE,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjE,IAAI,GAAG,CAAC,KAAK,KAAK,KAAK;YAAE,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC5D,IAAI,OAAO;YAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,cAAc,CAAC,KAAK,cAAc;YAC1D,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;QACxC,IAAI,eAAe;YAAE,WAAW,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAClE,MAAM,MAAM,GAAmC,QAAQ;YACrD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,eAAe;gBACf,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,OAAO,CAAC;QACd,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;YACtB,QAAQ;YACR,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,kBAAkB,EAChB,GAAG,CAAC,KAAK,KAAK,aAAa,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,CAAC,KAAK,EAAE;YACjE,YAAY,EAAE,GAAG,CAAC,YAAY;YAC9B,GAAG,CAAC,GAAG,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;YACjE,OAAO;YACP,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YACvC,MAAM;SACP,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { CharacterSnapshot } from './index.js';
|
|
2
|
+
declare const careers: readonly ["pilot", "dataRunner", "mining", "building", "crafting", "combat"];
|
|
3
|
+
/** Display balances derived from one Character, not research purchase eligibility.
|
|
4
|
+
* Sequences describe the input; no current Game definitions are consulted.
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* declare const state: CharacterResearchState;
|
|
8
|
+
* console.log(state.careers.mining.researchPointsAvailable, state.renown.available);
|
|
9
|
+
* ```
|
|
10
|
+
*/
|
|
11
|
+
export interface CharacterResearchState {
|
|
12
|
+
readonly characterAddress: CharacterSnapshot['address'];
|
|
13
|
+
readonly xpSequenceId: number;
|
|
14
|
+
readonly researchSequenceId: number;
|
|
15
|
+
readonly pendingNodeUpdates: number;
|
|
16
|
+
readonly careers: Readonly<Record<(typeof careers)[number], {
|
|
17
|
+
readonly earnedXp: bigint;
|
|
18
|
+
readonly level: number;
|
|
19
|
+
readonly researchPointsSpent: bigint;
|
|
20
|
+
readonly researchPointsAvailable: bigint;
|
|
21
|
+
}>>;
|
|
22
|
+
readonly renown: {
|
|
23
|
+
readonly earned: bigint;
|
|
24
|
+
readonly spent: bigint;
|
|
25
|
+
readonly available: bigint;
|
|
26
|
+
readonly level: number;
|
|
27
|
+
readonly careerLevelCarry: number;
|
|
28
|
+
};
|
|
29
|
+
/** Acquired nodes only. Stored levels are reported as-is, including 0;
|
|
30
|
+
* only a missing entry defaults to 1. This preserves observed state rather
|
|
31
|
+
* than applying the official client's minimum-1 sync-step estimate. */
|
|
32
|
+
readonly nodes: readonly {
|
|
33
|
+
readonly nodeId: number;
|
|
34
|
+
readonly level: number;
|
|
35
|
+
}[];
|
|
36
|
+
toJSON(): unknown;
|
|
37
|
+
}
|
|
38
|
+
/** Projects stored XP, career research points, Renown and acquired nodes without
|
|
39
|
+
* I/O, mutation, or a separate cache. Career points use level minus spent;
|
|
40
|
+
* Renown uses earned minus spent. Daily XP is not a career and is excluded.
|
|
41
|
+
* Balances clamp at zero; bigint values serialize as decimal strings.
|
|
42
|
+
*
|
|
43
|
+
* Input must be an SDK-loaded Character. The result reflects that read's state,
|
|
44
|
+
* not necessarily current Game rules: compare researchSequenceId with the
|
|
45
|
+
* catalog sequence and require pendingNodeUpdates === 0 before treating perks
|
|
46
|
+
* as synchronized. Use getCharacterProgressionForProfile for the optional
|
|
47
|
+
* sequence-matched XP-definition join. This helper does not authorize research.
|
|
48
|
+
* @example
|
|
49
|
+
* ```ts
|
|
50
|
+
* declare const ctx: SageContext;
|
|
51
|
+
* declare const profileAddress: Address;
|
|
52
|
+
* const character = await getCharacterForProfile(ctx, profileAddress);
|
|
53
|
+
* const state = deriveCharacterResearchState(character);
|
|
54
|
+
* console.log(state.careers.pilot.earnedXp, state.careers.pilot.level);
|
|
55
|
+
* console.log(state.renown.available, state.nodes);
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare function deriveCharacterResearchState(character: Pick<CharacterSnapshot, 'address' | 'xp' | 'modifiers'>): CharacterResearchState;
|
|
59
|
+
export {};
|
|
60
|
+
//# sourceMappingURL=research-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"research-state.d.ts","sourceRoot":"","sources":["../../src/identity/research-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAIpD,QAAA,MAAM,OAAO,8EAOH,CAAC;AAEX;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACxD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CACxB,MAAM,CACJ,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,EACxB;QACE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;QACrC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;KAC1C,CACF,CACF,CAAC;IACF,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;KACnC,CAAC;IACF;;2EAEuE;IACvE,QAAQ,CAAC,KAAK,EAAE,SAAS;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;IACJ,MAAM,IAAI,OAAO,CAAC;CACnB;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC,GACjE,sBAAsB,CAuCxB"}
|