@aephia/atlas-kit 0.6.0-next.102 → 0.6.0-next.104
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/dist/combat/actions/index.d.ts +2 -2
- package/dist/combat/actions/index.d.ts.map +1 -1
- package/dist/combat/actions/index.js +3 -3
- package/dist/combat/actions/index.js.map +1 -1
- package/dist/combat/index.d.ts +4 -3
- package/dist/combat/index.d.ts.map +1 -1
- package/dist/combat/index.js +3 -2
- package/dist/combat/index.js.map +1 -1
- package/dist/internal/c4/combat.d.ts +1 -55
- package/dist/internal/c4/combat.d.ts.map +1 -1
- package/dist/internal/c4/combat.js +4 -120
- package/dist/internal/c4/combat.js.map +1 -1
- package/dist/internal/c4/loot.d.ts +58 -0
- package/dist/internal/c4/loot.d.ts.map +1 -0
- package/dist/internal/c4/loot.js +130 -0
- package/dist/internal/c4/loot.js.map +1 -0
- package/dist/internal/c4/rewards.d.ts +1 -34
- package/dist/internal/c4/rewards.d.ts.map +1 -1
- package/dist/internal/c4/rewards.js +2 -78
- package/dist/internal/c4/rewards.js.map +1 -1
- package/dist/planning/assembly.d.ts.map +1 -1
- package/dist/planning/assembly.js +2 -26
- package/dist/planning/assembly.js.map +1 -1
- package/dist/planning/index.d.ts +3 -3
- package/dist/planning/index.d.ts.map +1 -1
- package/dist/planning/index.js +25 -112
- package/dist/planning/index.js.map +1 -1
- package/dist/planning/plan-validation.d.ts +14 -0
- package/dist/planning/plan-validation.d.ts.map +1 -0
- package/dist/planning/plan-validation.js +124 -0
- package/dist/planning/plan-validation.js.map +1 -0
- package/dist/rewards/index.d.ts.map +1 -1
- package/dist/rewards/index.js +5 -4
- package/dist/rewards/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OUTLAW_FLAG_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, getOutlawFlagDecoder, } from '@staratlas/dev-sage';
|
|
2
2
|
import { getAddressEncoder, getBytesEncoder, getProgramDerivedAddress, getU8Encoder, } from '@solana/kit';
|
|
3
|
-
import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError,
|
|
3
|
+
import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError, } from '../../client/errors.js';
|
|
4
4
|
import { translateFaction } from './faction.js';
|
|
5
|
-
import { assertLootLayout, LOOT_FILTER_OFFSETS, LOOT_MINIMUM_DATA_LENGTH, } from './loot-layout.js';
|
|
6
5
|
const OUTLAW_FLAG_DATA_LENGTH = 60;
|
|
7
|
-
const LOOT_ACCOUNT_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
8
|
-
/* @__PURE__ */ Array.from(LOOT_DISCRIMINATOR));
|
|
9
6
|
const OUTLAW_FLAG_ACCOUNT_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
10
7
|
/* @__PURE__ */ Array.from(OUTLAW_FLAG_DISCRIMINATOR));
|
|
11
|
-
export { LOOT_FILTER_OFFSETS } from './loot-layout.js';
|
|
12
8
|
function hasDiscriminator(data, discriminator) {
|
|
13
9
|
return discriminator.every((byte, index) => data[index] === byte);
|
|
14
10
|
}
|
|
@@ -21,77 +17,12 @@ function validateOwnerAndDiscriminator(account, type, discriminator) {
|
|
|
21
17
|
throw new InvalidDiscriminatorError(type, account.address);
|
|
22
18
|
}
|
|
23
19
|
}
|
|
24
|
-
function validateLootAccount(account) {
|
|
25
|
-
validateOwnerAndDiscriminator(account, 'loot', LOOT_ACCOUNT_DISCRIMINATOR);
|
|
26
|
-
if (account.data.length < LOOT_MINIMUM_DATA_LENGTH) {
|
|
27
|
-
throw new AccountDecodeError('loot', account.address, new RangeError(`Expected at least ${LOOT_MINIMUM_DATA_LENGTH} Loot account bytes, received ${account.data.length}.`));
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
20
|
function validateOutlawFlagAccount(account) {
|
|
31
21
|
validateOwnerAndDiscriminator(account, 'outlawFlag', OUTLAW_FLAG_ACCOUNT_DISCRIMINATOR);
|
|
32
22
|
if (account.data.length !== OUTLAW_FLAG_DATA_LENGTH) {
|
|
33
23
|
throw new AccountDecodeError('outlawFlag', account.address, new RangeError(`Expected exactly ${OUTLAW_FLAG_DATA_LENGTH} OutlawFlag account bytes, received ${account.data.length}.`));
|
|
34
24
|
}
|
|
35
25
|
}
|
|
36
|
-
function decodeExactly(account, type, read) {
|
|
37
|
-
try {
|
|
38
|
-
const [decoded, offset] = read(account.data, 0);
|
|
39
|
-
if (offset !== account.data.length) {
|
|
40
|
-
throw new RangeError(`Decoded ${offset} of ${account.data.length} ${type} account bytes; trailing bytes are not accepted.`);
|
|
41
|
-
}
|
|
42
|
-
return decoded;
|
|
43
|
-
}
|
|
44
|
-
catch (cause) {
|
|
45
|
-
throw new AccountDecodeError(type, account.address, cause);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
function cargoPod(value) {
|
|
49
|
-
return {
|
|
50
|
-
amounts: [...value.amounts].map(([cargoId, amount]) => ({
|
|
51
|
-
amount,
|
|
52
|
-
cargoId,
|
|
53
|
-
})),
|
|
54
|
-
sequenceId: value.seqId,
|
|
55
|
-
storageCostRaw: value.storageCost,
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
function reward(value) {
|
|
59
|
-
if (value.rewardStatus === 0)
|
|
60
|
-
return { kind: 'none' };
|
|
61
|
-
return {
|
|
62
|
-
committedAtUnixSeconds: value.rewardCommittedAt,
|
|
63
|
-
configVersion: value.rewardConfigVersion,
|
|
64
|
-
...(value.rewardStatus === 1
|
|
65
|
-
? { kind: 'committed' }
|
|
66
|
-
: value.rewardStatus === 2
|
|
67
|
-
? { kind: 'resolved' }
|
|
68
|
-
: { kind: 'unknown', rawStatus: value.rewardStatus }),
|
|
69
|
-
legs: value.rewardLegs.slice(0, value.rewardLegCount).map((leg) => ({
|
|
70
|
-
medallionsRaw: leg.medallions,
|
|
71
|
-
recipient: leg.recipient,
|
|
72
|
-
salvageTargetValueRaw: leg.salvageTargetValue,
|
|
73
|
-
})),
|
|
74
|
-
slot: value.rewardCommitSlot,
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
function translateLoot(value) {
|
|
78
|
-
return {
|
|
79
|
-
coordinates: {
|
|
80
|
-
x: value.coordinates[0].toNumber(),
|
|
81
|
-
y: value.coordinates[1].toNumber(),
|
|
82
|
-
},
|
|
83
|
-
game: value.gameId,
|
|
84
|
-
items: value.items.unsizedList.map((item) => ({
|
|
85
|
-
destroyer: item.destroyer,
|
|
86
|
-
exclusivityUnlockAtUnixSeconds: item.exclusivityUnlockTime,
|
|
87
|
-
inventory: cargoPod(item.loot),
|
|
88
|
-
rewardReclaimAtUnixSeconds: item.rewardReclaimAt,
|
|
89
|
-
})),
|
|
90
|
-
profile: value.profile,
|
|
91
|
-
reward: reward(value),
|
|
92
|
-
version: value.version,
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
26
|
function translateOutlawFlag(value) {
|
|
96
27
|
if (value.outlaw !== 0 && value.outlaw !== 1) {
|
|
97
28
|
throw new RangeError(`Unsupported OutlawFlag status ${String(value.outlaw)}.`);
|
|
@@ -106,25 +37,12 @@ function translateOutlawFlag(value) {
|
|
|
106
37
|
version: value.version,
|
|
107
38
|
};
|
|
108
39
|
}
|
|
109
|
-
export const lootAccountDefinition =
|
|
110
|
-
/* @__PURE__ */ Object.freeze({
|
|
111
|
-
decode(account) {
|
|
112
|
-
validateLootAccount(account);
|
|
113
|
-
const decoded = decodeExactly(account, 'loot', (bytes, offset) => getLootDecoder().read(bytes, offset));
|
|
114
|
-
assertLootLayout(account, decoded);
|
|
115
|
-
return translateLoot(decoded);
|
|
116
|
-
},
|
|
117
|
-
discriminator: LOOT_ACCOUNT_DISCRIMINATOR,
|
|
118
|
-
minimumDataLength: LOOT_MINIMUM_DATA_LENGTH,
|
|
119
|
-
programAddress: SAGE_PROGRAM_ADDRESS,
|
|
120
|
-
type: 'loot',
|
|
121
|
-
validate: validateLootAccount,
|
|
122
|
-
});
|
|
123
40
|
export const outlawFlagAccountDefinition =
|
|
124
41
|
/* @__PURE__ */ Object.freeze({
|
|
125
42
|
decode(account) {
|
|
126
43
|
validateOutlawFlagAccount(account);
|
|
127
|
-
|
|
44
|
+
// The exact fixed length is validated, so the fixed-size codec consumes it all.
|
|
45
|
+
const decoded = getOutlawFlagDecoder().decode(account.data);
|
|
128
46
|
try {
|
|
129
47
|
return translateOutlawFlag(decoded);
|
|
130
48
|
}
|
|
@@ -153,38 +71,4 @@ export async function deriveOutlawFlagAddress(profile, againstFaction) {
|
|
|
153
71
|
});
|
|
154
72
|
return address;
|
|
155
73
|
}
|
|
156
|
-
/** Builds stable targeted filters for Loot by Game and creator Profile. */
|
|
157
|
-
export function buildLootDiscoveryFilters(game, profile) {
|
|
158
|
-
return Object.freeze([
|
|
159
|
-
{
|
|
160
|
-
bytes: new Uint8Array(LOOT_DISCRIMINATOR),
|
|
161
|
-
offset: LOOT_FILTER_OFFSETS.discriminator,
|
|
162
|
-
},
|
|
163
|
-
{
|
|
164
|
-
bytes: new Uint8Array(getAddressEncoder().encode(game)),
|
|
165
|
-
offset: LOOT_FILTER_OFFSETS.game,
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
bytes: new Uint8Array(getAddressEncoder().encode(profile)),
|
|
169
|
-
offset: LOOT_FILTER_OFFSETS.profile,
|
|
170
|
-
},
|
|
171
|
-
]);
|
|
172
|
-
}
|
|
173
|
-
/** Discovers Loot by stable Game/Profile fields and revalidates every decoded hint. */
|
|
174
|
-
export async function discoverLootAccounts(context, profile, options = {}) {
|
|
175
|
-
const game = context.game;
|
|
176
|
-
if (game === undefined)
|
|
177
|
-
throw new MissingGameContextError();
|
|
178
|
-
const loot = await context.data.discover(lootAccountDefinition, {
|
|
179
|
-
...options,
|
|
180
|
-
filters: buildLootDiscoveryFilters(game, profile),
|
|
181
|
-
strategy: 'targeted-program-accounts',
|
|
182
|
-
});
|
|
183
|
-
for (const candidate of loot) {
|
|
184
|
-
if (candidate.data.game !== game || candidate.data.profile !== profile) {
|
|
185
|
-
throw new AccountDecodeError('loot', candidate.address, new RangeError('Decoded Loot fields contradicted discovery filters.'), `A discovered Loot candidate did not match the requested Game and Profile after decoding. Verify the provider, configured cluster, and pinned Loot filter offsets before retrying.`);
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
return loot;
|
|
189
|
-
}
|
|
190
74
|
//# sourceMappingURL=combat.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combat.js","sourceRoot":"","sources":["../../../src/internal/c4/combat.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"combat.js","sourceRoot":"","sources":["../../../src/internal/c4/combat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { Address, DiscoveryRequest, ProgramAccountFilter, SageContext, SnapshotEnvelope } from '../../client/contracts.js';
|
|
2
|
+
import type { C4AccountAdapter } from './adapter.js';
|
|
3
|
+
export { LOOT_FILTER_OFFSETS } from './loot-layout.js';
|
|
4
|
+
export interface LootCargoAmountData {
|
|
5
|
+
readonly cargoId: number;
|
|
6
|
+
readonly amount: bigint;
|
|
7
|
+
}
|
|
8
|
+
export interface LootInventoryData {
|
|
9
|
+
readonly sequenceId: number;
|
|
10
|
+
readonly usedStorageUnitsRaw: bigint;
|
|
11
|
+
readonly amounts: readonly LootCargoAmountData[];
|
|
12
|
+
}
|
|
13
|
+
export interface LootItemData {
|
|
14
|
+
readonly destroyer: Address;
|
|
15
|
+
readonly exclusivityUnlockAtUnixSeconds: bigint;
|
|
16
|
+
readonly rewardReclaimAtUnixSeconds: bigint;
|
|
17
|
+
readonly inventory: LootInventoryData;
|
|
18
|
+
}
|
|
19
|
+
export interface LootRewardLegData {
|
|
20
|
+
readonly recipient: Address;
|
|
21
|
+
readonly medallionsRaw: bigint;
|
|
22
|
+
readonly salvageTargetValueRaw: bigint;
|
|
23
|
+
}
|
|
24
|
+
export type LootRewardData = {
|
|
25
|
+
readonly kind: 'none';
|
|
26
|
+
} | {
|
|
27
|
+
readonly kind: 'committed' | 'resolved';
|
|
28
|
+
readonly configVersion: number;
|
|
29
|
+
readonly slot: bigint;
|
|
30
|
+
readonly committedAtUnixSeconds: bigint;
|
|
31
|
+
readonly legs: readonly LootRewardLegData[];
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: 'unknown';
|
|
34
|
+
readonly rawStatus: number;
|
|
35
|
+
readonly configVersion: number;
|
|
36
|
+
readonly slot: bigint;
|
|
37
|
+
readonly committedAtUnixSeconds: bigint;
|
|
38
|
+
readonly legs: readonly LootRewardLegData[];
|
|
39
|
+
};
|
|
40
|
+
/** Fully translated Loot account data before cargo-definition resolution. */
|
|
41
|
+
export interface LootAccountData {
|
|
42
|
+
readonly version: number;
|
|
43
|
+
readonly game: Address;
|
|
44
|
+
readonly profile: Address;
|
|
45
|
+
readonly coordinates: {
|
|
46
|
+
readonly x: number;
|
|
47
|
+
readonly y: number;
|
|
48
|
+
};
|
|
49
|
+
readonly reward: LootRewardData;
|
|
50
|
+
readonly items: readonly LootItemData[];
|
|
51
|
+
}
|
|
52
|
+
/** The shared Loot account definition for every domain read. */
|
|
53
|
+
export declare const lootAccountDefinition: C4AccountAdapter<LootAccountData>;
|
|
54
|
+
/** Builds stable targeted filters for Loot by Game and creator Profile. */
|
|
55
|
+
export declare function buildLootDiscoveryFilters(game: Address, profile: Address): readonly ProgramAccountFilter[];
|
|
56
|
+
/** Discovers Loot by stable Game/Profile fields and revalidates every decoded hint. */
|
|
57
|
+
export declare function discoverLootAccounts(context: SageContext, profile: Address, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<LootAccountData>[]>;
|
|
58
|
+
//# sourceMappingURL=loot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loot.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/loot.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EAEpB,WAAW,EACX,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAarD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,8BAA8B,EAAE,MAAM,CAAC;IAChD,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IACE,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC7C,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC7C,CAAC;AAEN,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;CACzC;AA6FD,gEAAgE;AAChE,eAAO,MAAM,qBAAqB,EAAE,gBAAgB,CAAC,eAAe,CAahE,CAAC;AAEL,2EAA2E;AAC3E,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,OAAO,GACf,SAAS,oBAAoB,EAAE,CAejC;AAED,uFAAuF;AACvF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,UAAU,CAAM,GAC3D,OAAO,CAAC,SAAS,gBAAgB,CAAC,eAAe,CAAC,EAAE,CAAC,CAmBvD"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { LOOT_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, getLootDecoder, } from '@staratlas/dev-sage';
|
|
2
|
+
import { getAddressEncoder } from '@solana/kit';
|
|
3
|
+
import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError, MissingGameContextError, } from '../../client/errors.js';
|
|
4
|
+
import { assertLootLayout, LOOT_FILTER_OFFSETS, LOOT_MINIMUM_DATA_LENGTH, } from './loot-layout.js';
|
|
5
|
+
// One Loot definition for combat and rewards: the context cache keys on
|
|
6
|
+
// definition identity, so each Loot address is decoded and cached once (#881).
|
|
7
|
+
const LOOT_ACCOUNT_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
8
|
+
/* @__PURE__ */ Array.from(LOOT_DISCRIMINATOR));
|
|
9
|
+
export { LOOT_FILTER_OFFSETS } from './loot-layout.js';
|
|
10
|
+
function validateLootAccount(account) {
|
|
11
|
+
if (account.owner !== SAGE_PROGRAM_ADDRESS) {
|
|
12
|
+
throw new InvalidAccountOwnerError('loot', account.address, SAGE_PROGRAM_ADDRESS, account.owner);
|
|
13
|
+
}
|
|
14
|
+
if (account.data.length < LOOT_ACCOUNT_DISCRIMINATOR.length ||
|
|
15
|
+
LOOT_ACCOUNT_DISCRIMINATOR.some((byte, index) => account.data[index] !== byte)) {
|
|
16
|
+
throw new InvalidDiscriminatorError('loot', account.address);
|
|
17
|
+
}
|
|
18
|
+
if (account.data.length < LOOT_MINIMUM_DATA_LENGTH) {
|
|
19
|
+
throw new AccountDecodeError('loot', account.address, new RangeError(`Expected at least ${LOOT_MINIMUM_DATA_LENGTH} Loot account bytes, received ${account.data.length}.`));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function decodeLoot(account) {
|
|
23
|
+
try {
|
|
24
|
+
const [decoded, offset] = getLootDecoder().read(account.data, 0);
|
|
25
|
+
if (offset !== account.data.length) {
|
|
26
|
+
throw new RangeError(`Decoded ${offset} of ${account.data.length} loot account bytes; trailing bytes are not accepted.`);
|
|
27
|
+
}
|
|
28
|
+
return decoded;
|
|
29
|
+
}
|
|
30
|
+
catch (cause) {
|
|
31
|
+
throw new AccountDecodeError('loot', account.address, cause);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function cargoPod(value) {
|
|
35
|
+
return {
|
|
36
|
+
amounts: [...value.amounts].map(([cargoId, amount]) => ({
|
|
37
|
+
amount,
|
|
38
|
+
cargoId,
|
|
39
|
+
})),
|
|
40
|
+
sequenceId: value.seqId,
|
|
41
|
+
usedStorageUnitsRaw: value.storageCost,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
function reward(value) {
|
|
45
|
+
if (value.rewardStatus === 0)
|
|
46
|
+
return { kind: 'none' };
|
|
47
|
+
return {
|
|
48
|
+
committedAtUnixSeconds: value.rewardCommittedAt,
|
|
49
|
+
configVersion: value.rewardConfigVersion,
|
|
50
|
+
...(value.rewardStatus === 1
|
|
51
|
+
? { kind: 'committed' }
|
|
52
|
+
: value.rewardStatus === 2
|
|
53
|
+
? { kind: 'resolved' }
|
|
54
|
+
: { kind: 'unknown', rawStatus: value.rewardStatus }),
|
|
55
|
+
legs: value.rewardLegs.slice(0, value.rewardLegCount).map((leg) => ({
|
|
56
|
+
medallionsRaw: leg.medallions,
|
|
57
|
+
recipient: leg.recipient,
|
|
58
|
+
salvageTargetValueRaw: leg.salvageTargetValue,
|
|
59
|
+
})),
|
|
60
|
+
slot: value.rewardCommitSlot,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
function translateLoot(value) {
|
|
64
|
+
return {
|
|
65
|
+
coordinates: {
|
|
66
|
+
x: value.coordinates[0].toNumber(),
|
|
67
|
+
y: value.coordinates[1].toNumber(),
|
|
68
|
+
},
|
|
69
|
+
game: value.gameId,
|
|
70
|
+
items: value.items.unsizedList.map((item) => ({
|
|
71
|
+
destroyer: item.destroyer,
|
|
72
|
+
exclusivityUnlockAtUnixSeconds: item.exclusivityUnlockTime,
|
|
73
|
+
inventory: cargoPod(item.loot),
|
|
74
|
+
rewardReclaimAtUnixSeconds: item.rewardReclaimAt,
|
|
75
|
+
})),
|
|
76
|
+
profile: value.profile,
|
|
77
|
+
reward: reward(value),
|
|
78
|
+
version: value.version,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/** The shared Loot account definition for every domain read. */
|
|
82
|
+
export const lootAccountDefinition =
|
|
83
|
+
/* @__PURE__ */ Object.freeze({
|
|
84
|
+
decode(account) {
|
|
85
|
+
validateLootAccount(account);
|
|
86
|
+
const decoded = decodeLoot(account);
|
|
87
|
+
assertLootLayout(account, decoded);
|
|
88
|
+
return translateLoot(decoded);
|
|
89
|
+
},
|
|
90
|
+
discriminator: LOOT_ACCOUNT_DISCRIMINATOR,
|
|
91
|
+
minimumDataLength: LOOT_MINIMUM_DATA_LENGTH,
|
|
92
|
+
programAddress: SAGE_PROGRAM_ADDRESS,
|
|
93
|
+
type: 'loot',
|
|
94
|
+
validate: validateLootAccount,
|
|
95
|
+
});
|
|
96
|
+
/** Builds stable targeted filters for Loot by Game and creator Profile. */
|
|
97
|
+
export function buildLootDiscoveryFilters(game, profile) {
|
|
98
|
+
return Object.freeze([
|
|
99
|
+
{
|
|
100
|
+
bytes: new Uint8Array(LOOT_DISCRIMINATOR),
|
|
101
|
+
offset: LOOT_FILTER_OFFSETS.discriminator,
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
bytes: new Uint8Array(getAddressEncoder().encode(game)),
|
|
105
|
+
offset: LOOT_FILTER_OFFSETS.game,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
bytes: new Uint8Array(getAddressEncoder().encode(profile)),
|
|
109
|
+
offset: LOOT_FILTER_OFFSETS.profile,
|
|
110
|
+
},
|
|
111
|
+
]);
|
|
112
|
+
}
|
|
113
|
+
/** Discovers Loot by stable Game/Profile fields and revalidates every decoded hint. */
|
|
114
|
+
export async function discoverLootAccounts(context, profile, options = {}) {
|
|
115
|
+
const game = context.game;
|
|
116
|
+
if (game === undefined)
|
|
117
|
+
throw new MissingGameContextError();
|
|
118
|
+
const loot = await context.data.discover(lootAccountDefinition, {
|
|
119
|
+
...options,
|
|
120
|
+
filters: buildLootDiscoveryFilters(game, profile),
|
|
121
|
+
strategy: 'targeted-program-accounts',
|
|
122
|
+
});
|
|
123
|
+
for (const candidate of loot) {
|
|
124
|
+
if (candidate.data.game !== game || candidate.data.profile !== profile) {
|
|
125
|
+
throw new AccountDecodeError('loot', candidate.address, new RangeError('Decoded Loot fields contradicted discovery filters.'), `A discovered Loot candidate did not match the requested Game and Profile after decoding. Verify the provider, configured cluster, and pinned Loot filter offsets before retrying.`);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return loot;
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=loot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loot.js","sourceRoot":"","sources":["../../../src/internal/c4/loot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,GAGf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAUhD,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAE1B,wEAAwE;AACxE,+EAA+E;AAC/E,MAAM,0BAA0B,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM;AAC9D,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAC/C,CAAC;AAEF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAsDvD,SAAS,mBAAmB,CAAC,OAAmB;IAC9C,IAAI,OAAO,CAAC,KAAK,KAAK,oBAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,wBAAwB,CAChC,MAAM,EACN,OAAO,CAAC,OAAO,EACf,oBAAoB,EACpB,OAAO,CAAC,KAAK,CACd,CAAC;IACJ,CAAC;IACD,IACE,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,0BAA0B,CAAC,MAAM;QACvD,0BAA0B,CAAC,IAAI,CAC7B,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAC9C,EACD,CAAC;QACD,MAAM,IAAI,yBAAyB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,wBAAwB,EAAE,CAAC;QACnD,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CACZ,qBAAqB,wBAAwB,iCAAiC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CACrG,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,OAAmB;IACrC,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,UAAU,CAClB,WAAW,MAAM,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,uDAAuD,CACnG,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAe;IAC/B,OAAO;QACL,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM;YACN,OAAO;SACR,CAAC,CAAC;QACH,UAAU,EAAE,KAAK,CAAC,KAAK;QACvB,mBAAmB,EAAE,KAAK,CAAC,WAAW;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,KAAW;IACzB,IAAI,KAAK,CAAC,YAAY,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACtD,OAAO;QACL,sBAAsB,EAAE,KAAK,CAAC,iBAAiB;QAC/C,aAAa,EAAE,KAAK,CAAC,mBAAmB;QACxC,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC;YAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,WAAoB,EAAE;YAChC,CAAC,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC;gBACxB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE;gBAC/B,CAAC,CAAC,EAAE,IAAI,EAAE,SAAkB,EAAE,SAAS,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;QAClE,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAClE,aAAa,EAAE,GAAG,CAAC,UAAU;YAC7B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,qBAAqB,EAAE,GAAG,CAAC,kBAAkB;SAC9C,CAAC,CAAC;QACH,IAAI,EAAE,KAAK,CAAC,gBAAgB;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAW;IAChC,OAAO;QACL,WAAW,EAAE;YACX,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,QAAQ,EAAE;YACnC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,QAAQ,EAAE;SACpC;QACD,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,8BAA8B,EAAE,IAAI,CAAC,qBAAqB;YAC1D,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9B,0BAA0B,EAAE,IAAI,CAAC,eAAe;SACjD,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;QACrB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,MAAM,qBAAqB;AAChC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACpC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IACD,aAAa,EAAE,0BAA0B;IACzC,iBAAiB,EAAE,wBAAwB;IAC3C,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,mBAAmB;CAC9B,CAAC,CAAC;AAEL,2EAA2E;AAC3E,MAAM,UAAU,yBAAyB,CACvC,IAAa,EACb,OAAgB;IAEhB,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,kBAAkB,CAAC;YACzC,MAAM,EAAE,mBAAmB,CAAC,aAAa;SAC1C;QACD;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,EAAE,mBAAmB,CAAC,IAAI;SACjC;QACD;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,EAAE,mBAAmB,CAAC,OAAO;SACpC;KACF,CAAC,CAAC;AACL,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAoB,EACpB,OAAgB,EAChB,UAA0D,EAAE;IAE5D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,uBAAuB,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE;QAC9D,GAAG,OAAO;QACV,OAAO,EAAE,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC;QACjD,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACvE,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,SAAS,CAAC,OAAO,EACjB,IAAI,UAAU,CAAC,qDAAqD,CAAC,EACrE,mLAAmL,CACpL,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import type { Address
|
|
1
|
+
import type { Address } from '../../client/contracts.js';
|
|
2
2
|
import type { C4AccountAdapter } from './adapter.js';
|
|
3
3
|
import { deriveAtlasRewardConfigAddress } from './pda.js';
|
|
4
|
-
export { LOOT_FILTER_OFFSETS as REWARD_LOOT_FILTER_OFFSETS } from './loot-layout.js';
|
|
5
4
|
export interface AtlasRewardRegistryAccountData {
|
|
6
5
|
readonly version: number;
|
|
7
6
|
readonly bump: number;
|
|
@@ -67,41 +66,9 @@ export interface AtlasRewardTreasuryAccountData {
|
|
|
67
66
|
readonly quantityRaw: bigint;
|
|
68
67
|
}[];
|
|
69
68
|
}
|
|
70
|
-
export interface RewardLootAccountData {
|
|
71
|
-
readonly version: number;
|
|
72
|
-
readonly game: Address;
|
|
73
|
-
readonly profile: Address;
|
|
74
|
-
readonly reward: {
|
|
75
|
-
readonly kind: 'none';
|
|
76
|
-
} | {
|
|
77
|
-
readonly kind: 'committed' | 'resolved';
|
|
78
|
-
readonly configVersion: number;
|
|
79
|
-
readonly slot: bigint;
|
|
80
|
-
readonly committedAtUnixSeconds: bigint;
|
|
81
|
-
readonly legs: readonly {
|
|
82
|
-
readonly recipient: Address;
|
|
83
|
-
readonly medallionsRaw: bigint;
|
|
84
|
-
readonly salvageTargetValueAtlasRaw: bigint;
|
|
85
|
-
}[];
|
|
86
|
-
} | {
|
|
87
|
-
readonly kind: 'unknown';
|
|
88
|
-
readonly rawStatus: number;
|
|
89
|
-
readonly configVersion: number;
|
|
90
|
-
readonly slot: bigint;
|
|
91
|
-
readonly committedAtUnixSeconds: bigint;
|
|
92
|
-
readonly legs: readonly {
|
|
93
|
-
readonly recipient: Address;
|
|
94
|
-
readonly medallionsRaw: bigint;
|
|
95
|
-
readonly salvageTargetValueAtlasRaw: bigint;
|
|
96
|
-
}[];
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
69
|
export declare const atlasRewardRegistryAccountDefinition: C4AccountAdapter<AtlasRewardRegistryAccountData>;
|
|
100
70
|
export declare const atlasRewardConfigAccountDefinition: C4AccountAdapter<AtlasRewardConfigAccountData>;
|
|
101
71
|
export declare const atlasRewardTreasuryAccountDefinition: C4AccountAdapter<AtlasRewardTreasuryAccountData>;
|
|
102
|
-
export declare const rewardLootAccountDefinition: C4AccountAdapter<RewardLootAccountData>;
|
|
103
|
-
export declare function buildRewardLootDiscoveryFilters(game: Address, profile: Address): readonly ProgramAccountFilter[];
|
|
104
|
-
export declare function discoverRewardLootAccounts(context: SageContext, profile: Address, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<RewardLootAccountData>[]>;
|
|
105
72
|
export declare function deriveAtlasRewardRegistryAddress(game: Address): Promise<Address>;
|
|
106
73
|
export { deriveAtlasRewardConfigAddress };
|
|
107
74
|
export declare function deriveAtlasRewardTreasuryAddress(game: Address): Promise<Address>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewards.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/rewards.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rewards.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/rewards.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { ATLAS_REWARD_CONFIG_DISCRIMINATOR, ATLAS_REWARD_REGISTRY_DISCRIMINATOR, ATLAS_REWARD_TREASURY_DISCRIMINATOR,
|
|
1
|
+
import { ATLAS_REWARD_CONFIG_DISCRIMINATOR, ATLAS_REWARD_REGISTRY_DISCRIMINATOR, ATLAS_REWARD_TREASURY_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, getAtlasRewardConfigDecoder, getAtlasRewardRegistryDecoder, getAtlasRewardTreasuryDecoder, } from '@staratlas/dev-sage';
|
|
2
2
|
import { getAddressEncoder, getBytesEncoder, getProgramDerivedAddress, } from '@solana/kit';
|
|
3
|
-
import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError,
|
|
3
|
+
import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError, } from '../../client/errors.js';
|
|
4
4
|
import { deriveAtlasRewardConfigAddress } from './pda.js';
|
|
5
|
-
import { assertLootLayout, LOOT_FILTER_OFFSETS, LOOT_MINIMUM_DATA_LENGTH, } from './loot-layout.js';
|
|
6
5
|
const REGISTRY_DATA_LENGTH = 126;
|
|
7
6
|
const CONFIG_DATA_LENGTH = 1_610;
|
|
8
7
|
const TREASURY_MINIMUM_DATA_LENGTH = 46;
|
|
@@ -13,9 +12,6 @@ const CONFIG_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
|
13
12
|
/* @__PURE__ */ Array.from(ATLAS_REWARD_CONFIG_DISCRIMINATOR));
|
|
14
13
|
const TREASURY_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
15
14
|
/* @__PURE__ */ Array.from(ATLAS_REWARD_TREASURY_DISCRIMINATOR));
|
|
16
|
-
const REWARD_LOOT_DISCRIMINATOR = /* @__PURE__ */ Object.freeze(
|
|
17
|
-
/* @__PURE__ */ Array.from(LOOT_DISCRIMINATOR));
|
|
18
|
-
export { LOOT_FILTER_OFFSETS as REWARD_LOOT_FILTER_OFFSETS } from './loot-layout.js';
|
|
19
15
|
function hasDiscriminator(data, discriminator) {
|
|
20
16
|
return discriminator.every((byte, index) => data[index] === byte);
|
|
21
17
|
}
|
|
@@ -184,78 +180,6 @@ export const atlasRewardTreasuryAccountDefinition =
|
|
|
184
180
|
validate(account, 'atlasRewardTreasury', TREASURY_DISCRIMINATOR, TREASURY_MINIMUM_DATA_LENGTH, false);
|
|
185
181
|
},
|
|
186
182
|
});
|
|
187
|
-
function translateRewardLoot(account, value) {
|
|
188
|
-
assertLootLayout(account, value);
|
|
189
|
-
const reward = value.rewardStatus === 0
|
|
190
|
-
? { kind: 'none' }
|
|
191
|
-
: {
|
|
192
|
-
committedAtUnixSeconds: value.rewardCommittedAt,
|
|
193
|
-
configVersion: value.rewardConfigVersion,
|
|
194
|
-
...(value.rewardStatus === 1
|
|
195
|
-
? { kind: 'committed' }
|
|
196
|
-
: value.rewardStatus === 2
|
|
197
|
-
? { kind: 'resolved' }
|
|
198
|
-
: { kind: 'unknown', rawStatus: value.rewardStatus }),
|
|
199
|
-
legs: value.rewardLegs.slice(0, value.rewardLegCount).map((leg) => ({
|
|
200
|
-
medallionsRaw: leg.medallions,
|
|
201
|
-
recipient: leg.recipient,
|
|
202
|
-
salvageTargetValueAtlasRaw: leg.salvageTargetValue,
|
|
203
|
-
})),
|
|
204
|
-
slot: value.rewardCommitSlot,
|
|
205
|
-
};
|
|
206
|
-
return {
|
|
207
|
-
game: value.gameId,
|
|
208
|
-
profile: value.profile,
|
|
209
|
-
reward,
|
|
210
|
-
version: value.version,
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
export const rewardLootAccountDefinition =
|
|
214
|
-
/* @__PURE__ */ Object.freeze({
|
|
215
|
-
decode(account) {
|
|
216
|
-
validate(account, 'loot', REWARD_LOOT_DISCRIMINATOR, LOOT_MINIMUM_DATA_LENGTH, false);
|
|
217
|
-
return translateRewardLoot(account, decodeExactly(account, 'loot', (bytes, offset) => getLootDecoder().read(bytes, offset)));
|
|
218
|
-
},
|
|
219
|
-
discriminator: REWARD_LOOT_DISCRIMINATOR,
|
|
220
|
-
minimumDataLength: LOOT_MINIMUM_DATA_LENGTH,
|
|
221
|
-
programAddress: SAGE_PROGRAM_ADDRESS,
|
|
222
|
-
type: 'loot',
|
|
223
|
-
validate(account) {
|
|
224
|
-
validate(account, 'loot', REWARD_LOOT_DISCRIMINATOR, LOOT_MINIMUM_DATA_LENGTH, false);
|
|
225
|
-
},
|
|
226
|
-
});
|
|
227
|
-
export function buildRewardLootDiscoveryFilters(game, profile) {
|
|
228
|
-
return Object.freeze([
|
|
229
|
-
{
|
|
230
|
-
bytes: new Uint8Array(LOOT_DISCRIMINATOR),
|
|
231
|
-
offset: LOOT_FILTER_OFFSETS.discriminator,
|
|
232
|
-
},
|
|
233
|
-
{
|
|
234
|
-
bytes: new Uint8Array(getAddressEncoder().encode(game)),
|
|
235
|
-
offset: LOOT_FILTER_OFFSETS.game,
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
bytes: new Uint8Array(getAddressEncoder().encode(profile)),
|
|
239
|
-
offset: LOOT_FILTER_OFFSETS.profile,
|
|
240
|
-
},
|
|
241
|
-
]);
|
|
242
|
-
}
|
|
243
|
-
export async function discoverRewardLootAccounts(context, profile, options = {}) {
|
|
244
|
-
const game = context.game;
|
|
245
|
-
if (game === undefined)
|
|
246
|
-
throw new MissingGameContextError();
|
|
247
|
-
const candidates = await context.data.discover(rewardLootAccountDefinition, {
|
|
248
|
-
...options,
|
|
249
|
-
filters: buildRewardLootDiscoveryFilters(game, profile),
|
|
250
|
-
strategy: 'targeted-program-accounts',
|
|
251
|
-
});
|
|
252
|
-
for (const candidate of candidates) {
|
|
253
|
-
if (candidate.data.game !== game || candidate.data.profile !== profile) {
|
|
254
|
-
throw new AccountDecodeError('loot', candidate.address, new RangeError('Decoded Loot fields contradicted reward discovery filters.'), `Loot ${candidate.address} does not belong to the requested Game ${game} and Profile ${profile}. Refresh discovery and verify the configured Game and Profile before retrying.`);
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
return candidates;
|
|
258
|
-
}
|
|
259
183
|
export async function deriveAtlasRewardRegistryAddress(game) {
|
|
260
184
|
const [address] = await getProgramDerivedAddress({
|
|
261
185
|
programAddress: SAGE_PROGRAM_ADDRESS,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../../../src/internal/c4/rewards.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,mCAAmC,EACnC,mCAAmC,EACnC,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,6BAA6B,EAC7B,6BAA6B,EAC7B,cAAc,GAKf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAUrB,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACjC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AACxC,MAAM,yBAAyB,GAAG,WAAW,CAAC;AAE9C,MAAM,sBAAsB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM;AAC1D,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAChE,CAAC;AACF,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM;AACxD,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAC9D,CAAC;AACF,MAAM,sBAAsB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM;AAC1D,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAChE,CAAC;AACF,MAAM,yBAAyB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM;AAC7D,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAC/C,CAAC;AAEF,OAAO,EAAE,mBAAmB,IAAI,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAqGrF,SAAS,gBAAgB,CAAC,IAAgB,EAAE,aAAgC;IAC1E,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,QAAQ,CACf,OAAmB,EACnB,IAIU,EACV,aAAgC,EAChC,aAAqB,EACrB,KAAc;IAEd,IAAI,OAAO,CAAC,KAAK,KAAK,oBAAoB,EAAE,CAAC;QAC3C,MAAM,IAAI,wBAAwB,CAChC,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,oBAAoB,EACpB,OAAO,CAAC,KAAK,CACd,CAAC;IACJ,CAAC;IACD,IACE,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;QAC1C,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,EAC9C,CAAC;QACD,MAAM,IAAI,yBAAyB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,IACE,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC;QAChD,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,EAC/C,CAAC;QACD,MAAM,IAAI,kBAAkB,CAC1B,IAAI,EACJ,OAAO,CAAC,OAAO,EACf,IAAI,UAAU,CACZ,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,IAAI,aAAa,4BAA4B,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAC9G,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CACpB,OAAmB,EACnB,IAIU,EACV,IAAiE;IAEjE,IAAI,CAAC;QACH,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,IAAI,UAAU,CAClB,WAAW,MAAM,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,iBAAiB,CAC7D,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,KAA0B;IAE1B,MAAM,SAAS,GAAG,KAAK,CAAC,oBAAoB,KAAK,yBAAyB,CAAC;IAC3E,IAAI,SAAS,KAAK,CAAC,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,UAAU,CAClB,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IACD,OAAO;QACL,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,6BAA6B,EAAE,KAAK,CAAC,kBAAkB;QACvD,gCAAgC,EAAE,KAAK,CAAC,qBAAqB;QAC7D,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,yBAAyB,EAAE,KAAK,CAAC,sBAAsB;QACvD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,aAAa,EAAE,SAAS;YACtB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAClB,CAAC,CAAC;gBACE,aAAa,EAAE,KAAK,CAAC,oBAAoB;gBACzC,cAAc,EAAE,KAAK,CAAC,qBAAqB;gBAC3C,IAAI,EAAE,SAAS;aAChB;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,KAAwB;IAExB,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,UAAU,CAClB,8CAA8C,KAAK,CAAC,OAAO,GAAG,CAC/D,CAAC;IACJ,CAAC;IACD,IACE,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM;QACtD,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,EACrD,CAAC;QACD,MAAM,IAAI,UAAU,CAClB,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,eAAe,EAAE;YACf,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC,UAAU;YACpD,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,OAAO;YACtC,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,UAAU;SAC7C;QACD,gCAAgC,EAAE,KAAK,CAAC,6BAA6B;QACrE,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,4BAA4B,EAAE,KAAK,CAAC,yBAAyB;QAC7D,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,oBAAoB,EAAE,KAAK,CAAC,SAAS;QACrC,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC;QAC5B,kBAAkB,EAAE,KAAK,CAAC,YAAY;QACtC,mBAAmB,EAAE,KAAK,CAAC,gBAAgB;QAC3C,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,kBAAkB,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAChE,kBAAkB,EAAE,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC;QACjD,8BAA8B,EAAE,KAAK,CAAC,2BAA2B;QACjE,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,kBAAkB,EAAE,KAAK,CAAC,eAAe;QACzC,wBAAwB,EAAE,KAAK,CAAC,qBAAqB;QACrD,mCAAmC,EAAE,KAAK,CAAC,gCAAgC;QAC3E,cAAc,EAAE,KAAK,CAAC,cAAc;aACjC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC;aACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,sBAAsB,EAAE,KAAK,CAAC,cAAc;YAC5C,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;QACL,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,gCAAgC,EAAE,CAAC,GAAG,KAAK,CAAC,6BAA6B,CAAC;QAC1E,cAAc,EAAE,KAAK,CAAC,cAAc;aACjC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC;aAClC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,KAA0B;IAE1B,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oCAAoC;AAC/C,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,QAAQ,CACN,OAAO,EACP,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,IAAI,CACL,CAAC;QACF,MAAM,OAAO,GAAG,aAAa,CAC3B,OAAO,EACP,qBAAqB,EACrB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,6BAA6B,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CACvE,CAAC;QACF,IAAI,CAAC;YACH,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,kBAAkB,CAC1B,qBAAqB,EACrB,OAAO,CAAC,OAAO,EACf,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IACD,aAAa,EAAE,sBAAsB;IACrC,iBAAiB,EAAE,oBAAoB;IACvC,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,CAAC,OAAmB;QAC1B,QAAQ,CACN,OAAO,EACP,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,IAAI,CACL,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,kCAAkC;AAC7C,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,QAAQ,CACN,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,IAAI,CACL,CAAC;QACF,MAAM,OAAO,GAAG,aAAa,CAC3B,OAAO,EACP,mBAAmB,EACnB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,2BAA2B,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CACrE,CAAC;QACF,IAAI,CAAC;YACH,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,EACnB,OAAO,CAAC,OAAO,EACf,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IACD,aAAa,EAAE,oBAAoB;IACnC,iBAAiB,EAAE,kBAAkB;IACrC,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,mBAAmB;IACzB,QAAQ,CAAC,OAAmB;QAC1B,QAAQ,CACN,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,IAAI,CACL,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,oCAAoC;AAC/C,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,QAAQ,CACN,OAAO,EACP,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,CACN,CAAC;QACF,OAAO,iBAAiB,CACtB,aAAa,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAC9D,6BAA6B,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CACpD,CACF,CAAC;IACJ,CAAC;IACD,aAAa,EAAE,sBAAsB;IACrC,iBAAiB,EAAE,4BAA4B;IAC/C,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,CAAC,OAAmB;QAC1B,QAAQ,CACN,OAAO,EACP,qBAAqB,EACrB,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,CACN,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEL,SAAS,mBAAmB,CAC1B,OAAmB,EACnB,KAAW;IAEX,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjC,MAAM,MAAM,GACV,KAAK,CAAC,YAAY,KAAK,CAAC;QACtB,CAAC,CAAE,EAAE,IAAI,EAAE,MAAM,EAAY;QAC7B,CAAC,CAAC;YACE,sBAAsB,EAAE,KAAK,CAAC,iBAAiB;YAC/C,aAAa,EAAE,KAAK,CAAC,mBAAmB;YACxC,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC;gBAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,WAAoB,EAAE;gBAChC,CAAC,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC;oBACxB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE;oBAC/B,CAAC,CAAC,EAAE,IAAI,EAAE,SAAkB,EAAE,SAAS,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YAClE,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAClE,aAAa,EAAE,GAAG,CAAC,UAAU;gBAC7B,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,0BAA0B,EAAE,GAAG,CAAC,kBAAkB;aACnD,CAAC,CAAC;YACH,IAAI,EAAE,KAAK,CAAC,gBAAgB;SAC7B,CAAC;IACR,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM;QACN,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B;AACtC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,MAAM,CAAC,OAAmB;QACxB,QAAQ,CACN,OAAO,EACP,MAAM,EACN,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,CACN,CAAC;QACF,OAAO,mBAAmB,CACxB,OAAO,EACP,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAC/C,cAAc,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CACrC,CACF,CAAC;IACJ,CAAC;IACD,aAAa,EAAE,yBAAyB;IACxC,iBAAiB,EAAE,wBAAwB;IAC3C,cAAc,EAAE,oBAAoB;IACpC,IAAI,EAAE,MAAM;IACZ,QAAQ,CAAC,OAAmB;QAC1B,QAAQ,CACN,OAAO,EACP,MAAM,EACN,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,CACN,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEL,MAAM,UAAU,+BAA+B,CAC7C,IAAa,EACb,OAAgB;IAEhB,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,kBAAkB,CAAC;YACzC,MAAM,EAAE,mBAAmB,CAAC,aAAa;SAC1C;QACD;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,EAAE,mBAAmB,CAAC,IAAI;SACjC;QACD;YACE,KAAK,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,EAAE,mBAAmB,CAAC,OAAO;SACpC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAoB,EACpB,OAAgB,EAChB,UAA0D,EAAE;IAE5D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,uBAAuB,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,EAAE;QAC1E,GAAG,OAAO;QACV,OAAO,EAAE,+BAA+B,CAAC,IAAI,EAAE,OAAO,CAAC;QACvD,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;IACH,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACvE,MAAM,IAAI,kBAAkB,CAC1B,MAAM,EACN,SAAS,CAAC,OAAO,EACjB,IAAI,UAAU,CACZ,4DAA4D,CAC7D,EACD,QAAQ,SAAS,CAAC,OAAO,0CAA0C,IAAI,gBAAgB,OAAO,iFAAiF,CAChL,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,IAAa;IAEb,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC/C,cAAc,EAAE,oBAAoB;QACpC,KAAK,EAAE;YACL,eAAe,EAAE,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;YACzE,iBAAiB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;SACjC;KACF,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,OAAO,EAAE,8BAA8B,EAAE,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,IAAa;IAEb,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC/C,cAAc,EAAE,oBAAoB;QACpC,KAAK,EAAE;YACL,eAAe,EAAE,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;YACzE,iBAAiB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;SACjC;KACF,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"rewards.js","sourceRoot":"","sources":["../../../src/internal/c4/rewards.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assembly.d.ts","sourceRoot":"","sources":["../../src/planning/assembly.ts"],"names":[],"mappings":"AAAA,OAAO,EAgBL,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAExE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAgBvC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAgCD,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,YAAY,CAIlE;AAaD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,EACtB,eAAe,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAA4B,GAChE,uBAAuB,CAmFzB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAwBhE;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,CACV,uBAAuB,EACvB,kBAAkB,GAAG,0BAA0B,CAChD,GACA,IAAI,CAqBN;AASD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAKzD;AAED,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,uBAAuB,GACvC,OAAO,CAAC,WAAW,GAAG,gCAAgC,CAAC,CAIzD;AAED,gFAAgF;AAChF,wBAAsB,gCAAgC,CACpD,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,uBAAuB,GACvC,OAAO,CAAC;IACT,WAAW,EAAE,WAAW,GAAG,gCAAgC,CAAC;IAC5D,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAqCD"}
|