@merkl/api 1.16.10 → 1.17.0
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/src/engine/implementations/ErcMultiToken/metadata.d.ts +1 -1
- package/dist/src/jobs/rewards-etl/index.js.map +1 -1
- package/dist/src/jobs/rewards-etl/load.d.ts +1 -1
- package/dist/src/jobs/rewards-etl/load.js.map +1 -1
- package/dist/src/jobs/tx-executor/diagnostics.d.ts +43 -0
- package/dist/src/jobs/tx-executor/diagnostics.js.map +1 -0
- package/dist/src/jobs/tx-executor/index.js.map +1 -1
- package/dist/src/jobs/tx-executor/process.js.map +1 -1
- package/dist/src/jobs/tx-executor/types.d.ts +1 -2
- package/dist/src/modules/v4/campaign/campaign.query-transformer.d.ts +26 -26
- package/dist/src/modules/v4/etlHealth/etlHealth.service.js.map +1 -1
- package/dist/src/modules/v4/opportunity/opportunity.query-transformer.d.ts +72 -72
- package/dist/src/modules/v4/transaction/transaction.service.d.ts +1977 -1977
- package/dist/src/utils/getAPR.d.ts +1006 -1006
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/src/jobs/reward-breakdowns-etl/config.d.ts +0 -10
- package/dist/src/jobs/reward-breakdowns-etl/config.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/index.d.ts +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/index.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/load-breakdowns.d.ts +0 -11
- package/dist/src/jobs/reward-breakdowns-etl/load-breakdowns.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/load.d.ts +0 -12
- package/dist/src/jobs/reward-breakdowns-etl/load.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/subcampaigns.d.ts +0 -30
- package/dist/src/jobs/reward-breakdowns-etl/subcampaigns.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/transform.d.ts +0 -9
- package/dist/src/jobs/reward-breakdowns-etl/transform.js.map +0 -1
- package/dist/src/jobs/reward-breakdowns-etl/types.d.ts +0 -23
- package/dist/src/jobs/reward-breakdowns-etl/types.js.map +0 -1
- package/dist/src/jobs/rewards-etl/load-rewards.d.ts +0 -12
- package/dist/src/jobs/rewards-etl/load-rewards.js.map +0 -1
- package/dist/src/jobs/rewards-etl/load-users.d.ts +0 -9
- package/dist/src/jobs/rewards-etl/load-users.js.map +0 -1
- package/dist/src/jobs/utils/prisma-bulk.d.ts +0 -128
- package/dist/src/jobs/utils/prisma-bulk.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuration constants for reward breakdowns ETL job
|
|
3
|
-
*/
|
|
4
|
-
export declare const REWARD_BREAKDOWNS_ETL_CONFIG: {
|
|
5
|
-
readonly PROGRESS_LOG_INTERVAL: 100000;
|
|
6
|
-
readonly INITIAL_CONCURRENCY: 5;
|
|
7
|
-
readonly MAX_CONCURRENCY: 30;
|
|
8
|
-
readonly CONCURRENCY_INCREMENT: 2;
|
|
9
|
-
readonly SKIP_SUBCAMPAIGN_REASONS: false;
|
|
10
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,qBAAqB,EAAE,OAAO;IAC9B,mBAAmB,EAAE,CAAC;IACtB,eAAe,EAAE,EAAE;IACnB,qBAAqB,EAAE,CAAC;IACxB,wBAAwB,EAAE,KAAK;CACvB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const main: () => Promise<never>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { JobStats } from "../utils/logging";
|
|
2
|
-
import type { TransformedBreakdown } from "./types";
|
|
3
|
-
/**
|
|
4
|
-
* Loads reward breakdowns into database with duplicate handling and update logic
|
|
5
|
-
* @param data Array of breakdowns to load
|
|
6
|
-
* @param root Merkle root
|
|
7
|
-
* @param stats Job statistics tracker
|
|
8
|
-
* @param logger Job logger
|
|
9
|
-
* @returns Number of created breakdowns
|
|
10
|
-
*/
|
|
11
|
-
export declare const loadBreakdowns: (data: TransformedBreakdown[], root: string, stats: JobStats) => Promise<number>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"load-breakdowns.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/load-breakdowns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type pino from "pino";
|
|
2
|
-
import type { JobStats } from "../utils/logging";
|
|
3
|
-
import type { TransformedBreakdown } from "./types";
|
|
4
|
-
/**
|
|
5
|
-
* Main load function that orchestrates subcampaign validation and breakdown loading
|
|
6
|
-
* @param rewardBreakdowns Batch of transformed breakdowns
|
|
7
|
-
* @param chainId Chain ID
|
|
8
|
-
* @param stats Job statistics tracker
|
|
9
|
-
* @param logger Job logger
|
|
10
|
-
* @returns Number of loaded breakdowns
|
|
11
|
-
*/
|
|
12
|
-
export declare const load: (rewardBreakdowns: TransformedBreakdown[], chainId: number, root: string, stats: JobStats, logger: pino.Logger<never, boolean>) => Promise<number>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/load.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG/F;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACvB,gBAAwC,EACxC,OAAe,EACf,IAAY,EACZ,KAAe,EACf,MAAmB,EACF,EAAE,CAAC;IACpB,oCAAoC;IACpC,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,MAAM,cAAc,GAAG,qBAAqB,CAC1C,gBAAgB,EAChB,OAAO,EACP,4BAA4B,CAAC,wBAAwB,CACtD,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACtF,KAAK,CAAC,OAAO,CAAC,qBAAqB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC;IAEpE,KAAK,CAAC,QAAQ,CAAC,mBAAmB,IAAI,YAAY,CAAC;IAEnD,kCAAkC;IAClC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,gBAAgB,CAC3B,gBAAgB,EAChB,QAAQ,EACR,OAAO,EACP,4BAA4B,CAAC,wBAAwB,EACrD,MAAM,CACP,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC;IAEhE,gCAAgC;IAChC,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAExC,gCAAgC;IAChC,KAAK,CAAC,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC;IACpC,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE;QACjC,QAAQ,EAAE,4BAA4B,CAAC,qBAAqB;QAC5D,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC,MAAM,CAAC;AAAA,CAChC,CAAC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type pino from "pino";
|
|
2
|
-
import type { TransformedBreakdown } from "./types";
|
|
3
|
-
/**
|
|
4
|
-
* Extracts subcampaign IDs from breakdown reasons
|
|
5
|
-
* @param breakdowns Array of transformed breakdowns
|
|
6
|
-
* @param chainId Chain ID for hashing
|
|
7
|
-
* @param skipSubCampaignReasons Whether to skip subcampaign processing
|
|
8
|
-
* @returns Array of unique subcampaign IDs
|
|
9
|
-
*/
|
|
10
|
-
export declare const extractSubCampaignIds: (breakdowns: TransformedBreakdown[], chainId: number, skipSubCampaignReasons: boolean) => string[];
|
|
11
|
-
/**
|
|
12
|
-
* Validates and filters subcampaign IDs to only include existing ones
|
|
13
|
-
* @param subCampaignIds Array of subcampaign IDs to validate
|
|
14
|
-
* @param logger Job logger
|
|
15
|
-
* @returns Object containing valid subcampaign IDs and count of missing ones
|
|
16
|
-
*/
|
|
17
|
-
export declare const validateSubCampaigns: (subCampaignIds: string[], logger: pino.Logger<never, boolean>) => Promise<{
|
|
18
|
-
validIds: string[];
|
|
19
|
-
missingCount: number;
|
|
20
|
-
}>;
|
|
21
|
-
/**
|
|
22
|
-
* Links breakdowns to subcampaigns where appropriate
|
|
23
|
-
* @param breakdowns Array of transformed breakdowns
|
|
24
|
-
* @param validSubCampaignIds Array of valid subcampaign IDs
|
|
25
|
-
* @param chainId Chain ID for hashing
|
|
26
|
-
* @param skipSubCampaignReasons Whether to skip subcampaign processing
|
|
27
|
-
* @param logger Job logger
|
|
28
|
-
* @returns Array of breakdowns with subcampaign links added
|
|
29
|
-
*/
|
|
30
|
-
export declare const linkSubCampaigns: (breakdowns: TransformedBreakdown[], validSubCampaignIds: string[], chainId: number, skipSubCampaignReasons: boolean, logger: pino.Logger<never, boolean>) => TransformedBreakdown[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subcampaigns.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/subcampaigns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { RawBreakdown, TransformedBreakdown } from "./types";
|
|
2
|
-
/**
|
|
3
|
-
* Transforms raw breakdown data into database-ready format
|
|
4
|
-
* @param breakdown Raw breakdown from batch file
|
|
5
|
-
* @param chainId Distribution chain ID
|
|
6
|
-
* @param root Merkle root
|
|
7
|
-
* @returns Transformed breakdown ready for insertion
|
|
8
|
-
*/
|
|
9
|
-
export declare const transformBreakdown: (breakdown: RawBreakdown, chainId: number, root: string) => TransformedBreakdown;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/transform.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,SAAuB,EAAE,OAAe,EAAE,IAAY,EAAwB,EAAE,CAAC;IAClH,MAAM,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC1E,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC,SAAS,GAAG,aAAa,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IACtF,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAE5E,OAAO;QACL,mBAAmB,EAAE,OAAO;QAC5B,IAAI;QACJ,QAAQ;QACR,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,UAAU;QACV,aAAa,EAAE,SAAS,CAAC,UAAU;QACnC,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,EAAE;QAC9B,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,YAAY,EAAE,SAAS,CAAC,KAAK;KAC9B,CAAC;AAAA,CACH,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { Prisma } from "@package/databases/api";
|
|
2
|
-
/**
|
|
3
|
-
* Raw breakdown data from batch files
|
|
4
|
-
*/
|
|
5
|
-
export type RawBreakdown = {
|
|
6
|
-
recipient: string;
|
|
7
|
-
token: string;
|
|
8
|
-
protocolId?: string;
|
|
9
|
-
reason: string;
|
|
10
|
-
campaignId: string;
|
|
11
|
-
amount: string;
|
|
12
|
-
claimed: string;
|
|
13
|
-
pending: string;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* Transformed breakdown with merkl campaign ID
|
|
17
|
-
*/
|
|
18
|
-
export type TransformedBreakdown = Prisma.RewardBreakdownCreateManyInput & {
|
|
19
|
-
rawCampaignId: string;
|
|
20
|
-
recipient: string;
|
|
21
|
-
tokenAddress: string;
|
|
22
|
-
rawSubCampaignId?: string;
|
|
23
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/reward-breakdowns-etl/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type pino from "pino";
|
|
2
|
-
import type { JobStats } from "../utils/logging";
|
|
3
|
-
import type { TransformedReward } from "./types";
|
|
4
|
-
/**
|
|
5
|
-
* Loads rewards into database with duplicate handling and update logic
|
|
6
|
-
* @param rewards Batch of transformed rewards
|
|
7
|
-
* @param root Merkle root
|
|
8
|
-
* @param stats Job statistics tracker
|
|
9
|
-
* @param logger Job logger
|
|
10
|
-
* @returns Number of created/updated rewards
|
|
11
|
-
*/
|
|
12
|
-
export declare const loadRewards: (rewards: TransformedReward[], root: string, stats: JobStats, _logger: pino.Logger<never, boolean>) => Promise<number>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"load-rewards.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/rewards-etl/load-rewards.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type pino from "pino";
|
|
2
|
-
import type { TransformedReward } from "./types";
|
|
3
|
-
/**
|
|
4
|
-
* Loads users from rewards batch into database
|
|
5
|
-
* Uses raw SQL for optimal bulk insert performance
|
|
6
|
-
* @param rewards Batch of transformed rewards
|
|
7
|
-
* @param logger Job logger
|
|
8
|
-
*/
|
|
9
|
-
export declare const loadUsers: (rewards: TransformedReward[], _logger: pino.Logger<never, boolean>) => Promise<void>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"load-users.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/rewards-etl/load-users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIjD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,OAA4B,EAAE,OAAoB,EAAiB,EAAE,CAAC;IACpG,MAAM,gBAAgB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAErE,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE1C,MAAM,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,EAAE,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACpD,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;AAAA,CACJ,CAAC"}
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Optimized bulk Prisma operations for ETL jobs
|
|
3
|
-
* These utilities replace inefficient batched queries with single bulk operations
|
|
4
|
-
*
|
|
5
|
-
* All functions now use partitioned tables (Reward, RewardBreakdown) with root-based queries
|
|
6
|
-
* for efficient partition pruning.
|
|
7
|
-
*/
|
|
8
|
-
import type { Logger } from "pino";
|
|
9
|
-
/**
|
|
10
|
-
* Composite key for RewardBreakdown unique constraint
|
|
11
|
-
*/
|
|
12
|
-
export interface RewardBreakdownKey {
|
|
13
|
-
rewardId: string;
|
|
14
|
-
campaignId: string;
|
|
15
|
-
reason: string;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Bulk finds RewardBreakdown records by composite keys
|
|
19
|
-
* Replaces: Multiple batched transactions with findUnique calls
|
|
20
|
-
* Optimization: N transactions with M queries → 1 query with partition pruning
|
|
21
|
-
*
|
|
22
|
-
* @param root Root (partition key) to query - enables partition pruning
|
|
23
|
-
* @param keys Array of composite keys to find
|
|
24
|
-
* @param additionalWhere Additional where conditions (e.g., pending: { not: "0" })
|
|
25
|
-
* @param hashFn Optional custom hash function for map keys
|
|
26
|
-
* @returns Map of hash(key) → record
|
|
27
|
-
*/
|
|
28
|
-
export declare const bulkFindRewardBreakdowns: (root: string, keys: RewardBreakdownKey[], additionalWhere?: Record<string, unknown> | undefined, hashFn?: ((key: RewardBreakdownKey) => string) | undefined) => Promise<Map<string, {
|
|
29
|
-
id: string;
|
|
30
|
-
protocolId: string | null;
|
|
31
|
-
root: string;
|
|
32
|
-
distributionChainId: number;
|
|
33
|
-
reason: string;
|
|
34
|
-
amount: string;
|
|
35
|
-
claimed: string;
|
|
36
|
-
pending: string;
|
|
37
|
-
rewardId: string;
|
|
38
|
-
campaignId: string;
|
|
39
|
-
subCampaignId: string | null;
|
|
40
|
-
}>>;
|
|
41
|
-
/**
|
|
42
|
-
* Bulk updates RewardBreakdown records
|
|
43
|
-
* Replaces: Transaction with multiple update calls
|
|
44
|
-
* Optimization: 1 transaction with N updates → 1-N parallel updateMany calls
|
|
45
|
-
*
|
|
46
|
-
* Note: PostgreSQL doesn't support bulk UPDATE with different values efficiently in Prisma.
|
|
47
|
-
* This uses parallel updateMany which is still faster than a transaction with individual updates.
|
|
48
|
-
* For even better performance, consider using bulkUpdateRewardBreakdownsRaw.
|
|
49
|
-
*
|
|
50
|
-
* @param root Root (partition key) - enables partition pruning
|
|
51
|
-
* @param updates Array of updates to perform
|
|
52
|
-
* @param logger Optional logger for debugging
|
|
53
|
-
*/
|
|
54
|
-
export declare const bulkUpdateRewardBreakdowns: (root: string, updates: {
|
|
55
|
-
key: RewardBreakdownKey;
|
|
56
|
-
data: {
|
|
57
|
-
pending?: string | undefined;
|
|
58
|
-
amount?: string | undefined;
|
|
59
|
-
claimed?: string | undefined;
|
|
60
|
-
};
|
|
61
|
-
}[], logger?: Logger | undefined) => Promise<void>;
|
|
62
|
-
/**
|
|
63
|
-
* Bulk updates RewardBreakdown records using raw SQL with unnest.
|
|
64
|
-
* Replaces N parallel updateMany calls with a single parameterized UPDATE.
|
|
65
|
-
* Uses partition pruning by including root in WHERE clause.
|
|
66
|
-
*
|
|
67
|
-
* @param root Root (partition key) - enables partition pruning
|
|
68
|
-
* @param updates Array of updates to perform
|
|
69
|
-
* @param logger Optional logger for debugging
|
|
70
|
-
*/
|
|
71
|
-
export declare const bulkUpdateRewardBreakdownsRaw: (root: string, updates: {
|
|
72
|
-
key: RewardBreakdownKey;
|
|
73
|
-
data: {
|
|
74
|
-
pending?: string | undefined;
|
|
75
|
-
amount?: string | undefined;
|
|
76
|
-
claimed?: string | undefined;
|
|
77
|
-
};
|
|
78
|
-
}[], logger?: Logger | undefined) => Promise<void>;
|
|
79
|
-
/**
|
|
80
|
-
* Bulk finds Reward records by IDs
|
|
81
|
-
* Replaces: Transaction with multiple findUnique calls
|
|
82
|
-
*
|
|
83
|
-
* @param client Prisma client
|
|
84
|
-
* @param ids Array of reward IDs
|
|
85
|
-
* @returns Map of id → record
|
|
86
|
-
*/
|
|
87
|
-
export declare const bulkFindRewards: (root: string, ids: string[]) => Promise<Map<string, {
|
|
88
|
-
id: string;
|
|
89
|
-
root: string;
|
|
90
|
-
distributionChainId: number;
|
|
91
|
-
rewardTokenId: string;
|
|
92
|
-
amount: string;
|
|
93
|
-
claimed: string;
|
|
94
|
-
pending: string;
|
|
95
|
-
proofs: string[];
|
|
96
|
-
recipient: string;
|
|
97
|
-
}>>;
|
|
98
|
-
/**
|
|
99
|
-
* Bulk updates Reward records
|
|
100
|
-
* Uses parallel updateMany calls with root for partition pruning
|
|
101
|
-
*
|
|
102
|
-
* @param root Root (partition key) - enables partition pruning
|
|
103
|
-
* @param updates Array of updates to perform
|
|
104
|
-
*/
|
|
105
|
-
export declare const bulkUpdateRewards: (root: string, updates: {
|
|
106
|
-
id: string;
|
|
107
|
-
data: {
|
|
108
|
-
pending?: string | undefined;
|
|
109
|
-
amount?: string | undefined;
|
|
110
|
-
claimed?: string | undefined;
|
|
111
|
-
proofs?: string[] | undefined;
|
|
112
|
-
};
|
|
113
|
-
}[]) => Promise<void>;
|
|
114
|
-
/**
|
|
115
|
-
* Bulk updates Reward records using raw SQL with unnest.
|
|
116
|
-
* Replaces N parallel updateMany calls with a single parameterized UPDATE.
|
|
117
|
-
*
|
|
118
|
-
* @param root Root (partition key) - enables partition pruning
|
|
119
|
-
* @param updates Array of { id, data } to update
|
|
120
|
-
*/
|
|
121
|
-
export declare const bulkUpdateRewardsRaw: (root: string, updates: {
|
|
122
|
-
id: string;
|
|
123
|
-
data: {
|
|
124
|
-
pending?: string | undefined;
|
|
125
|
-
amount?: string | undefined;
|
|
126
|
-
claimed?: string | undefined;
|
|
127
|
-
};
|
|
128
|
-
}[]) => Promise<void>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-bulk.js","sourceRoot":"","sources":["../../../../../../apps/api/src/jobs/utils/prisma-bulk.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAYjD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAC3C,IAAY,EACZ,IAA0B,EAC1B,eAAyC,EACzC,MAA4C,EACoD,EAAE,CAAC;IACnG,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAExC,yEAAyE;IACzE,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC;QACzD,KAAK,EAAE;YACL,IAAI,EAAE,sEAAsE;YAC5E,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnB,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAC,CAAC;YACH,GAAG,eAAe;SACnB;KACF,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoC,CAAC;IACxD,MAAM,WAAW,GAAG,CAAC,GAAuB,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;IACnG,MAAM,IAAI,GAAG,MAAM,IAAI,WAAW,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAChG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,GAAG,CAAC;AAAA,CACZ,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,IAAY,EACZ,OAOE,EACF,MAAe,EACA,EAAE,CAAC;IAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEjC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC;IAE/E,gEAAgE;IAChE,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACnB,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC;QACrC,KAAK,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ;YAC7B,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU;YACjC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM;SAC1B;QACD,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CACH,CACF,CAAC;AAAA,CACH,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,EAChD,IAAY,EACZ,OAGE,EACF,MAAe,EACA,EAAE,CAAC;IAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,gCAAgC,CAAC,CAAC;IAEvF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE/C,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,SAAS;mBACT,WAAW;mBACX,OAAO;mBACP,QAAQ;;uBAEJ,IAAI;;;;;KAKtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;QACxD,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,SAAS;mBACT,WAAW;mBACX,OAAO;mBACP,OAAO;;uBAEH,IAAI;;;;;KAKtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,SAAS;mBACT,WAAW;mBACX,OAAO;mBACP,QAAQ;;uBAEJ,IAAI;;;;;KAKtB,CAAC;IACJ,CAAC;AAAA,CACF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,IAAY,EACZ,GAAa,EAC0E,EAAE,CAAC;IAC1F,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IAEvC,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChD,KAAK,EAAE;YACL,IAAI;YACJ,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;SAChB;KACF,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,IAAI,GAAG,EAAoC,CAAC;IACxD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,GAAG,CAAC;AAAA,CACZ,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EACpC,IAAY,EACZ,OAQE,EACa,EAAE,CAAC;IAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEjC,gEAAgE;IAChE,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACnB,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC;QAC5B,KAAK,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd;QACD,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CACH,CACF,CAAC;AAAA,CACH,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACvC,IAAY,EACZ,OAGE,EACa,EAAE,CAAC;IAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,GAAG;mBACH,QAAQ;;uBAEJ,IAAI;;;KAGtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;QACxD,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,GAAG;mBACH,OAAO;;uBAEH,IAAI;;;KAGtB,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,CAAC,WAAW,CAAA;;;;;mBAKd,GAAG;mBACH,QAAQ;;uBAEJ,IAAI;;;KAGtB,CAAC;IACJ,CAAC;AAAA,CACF,CAAC"}
|