@merkl/api 1.16.9 → 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.
Files changed (36) hide show
  1. package/dist/src/engine/implementations/ErcMultiToken/metadata.d.ts +1 -1
  2. package/dist/src/jobs/rewards-etl/index.js.map +1 -1
  3. package/dist/src/jobs/rewards-etl/load.d.ts +1 -1
  4. package/dist/src/jobs/rewards-etl/load.js.map +1 -1
  5. package/dist/src/jobs/tx-executor/diagnostics.d.ts +43 -0
  6. package/dist/src/jobs/tx-executor/diagnostics.js.map +1 -0
  7. package/dist/src/jobs/tx-executor/index.js.map +1 -1
  8. package/dist/src/jobs/tx-executor/process.js.map +1 -1
  9. package/dist/src/jobs/tx-executor/types.d.ts +1 -2
  10. package/dist/src/modules/v4/campaign/campaign.query-transformer.d.ts +40 -40
  11. package/dist/src/modules/v4/etlHealth/etlHealth.service.js.map +1 -1
  12. package/dist/src/modules/v4/opportunity/opportunity.query-transformer.d.ts +56 -56
  13. package/dist/src/modules/v4/transaction/transaction.service.d.ts +112 -112
  14. package/dist/src/utils/parseDistributionType.d.ts +256 -256
  15. package/dist/tsconfig.tsbuildinfo +1 -1
  16. package/package.json +1 -1
  17. package/dist/src/jobs/reward-breakdowns-etl/config.d.ts +0 -10
  18. package/dist/src/jobs/reward-breakdowns-etl/config.js.map +0 -1
  19. package/dist/src/jobs/reward-breakdowns-etl/index.d.ts +0 -1
  20. package/dist/src/jobs/reward-breakdowns-etl/index.js.map +0 -1
  21. package/dist/src/jobs/reward-breakdowns-etl/load-breakdowns.d.ts +0 -11
  22. package/dist/src/jobs/reward-breakdowns-etl/load-breakdowns.js.map +0 -1
  23. package/dist/src/jobs/reward-breakdowns-etl/load.d.ts +0 -12
  24. package/dist/src/jobs/reward-breakdowns-etl/load.js.map +0 -1
  25. package/dist/src/jobs/reward-breakdowns-etl/subcampaigns.d.ts +0 -30
  26. package/dist/src/jobs/reward-breakdowns-etl/subcampaigns.js.map +0 -1
  27. package/dist/src/jobs/reward-breakdowns-etl/transform.d.ts +0 -9
  28. package/dist/src/jobs/reward-breakdowns-etl/transform.js.map +0 -1
  29. package/dist/src/jobs/reward-breakdowns-etl/types.d.ts +0 -23
  30. package/dist/src/jobs/reward-breakdowns-etl/types.js.map +0 -1
  31. package/dist/src/jobs/rewards-etl/load-rewards.d.ts +0 -12
  32. package/dist/src/jobs/rewards-etl/load-rewards.js.map +0 -1
  33. package/dist/src/jobs/rewards-etl/load-users.d.ts +0 -9
  34. package/dist/src/jobs/rewards-etl/load-users.js.map +0 -1
  35. package/dist/src/jobs/utils/prisma-bulk.d.ts +0 -128
  36. package/dist/src/jobs/utils/prisma-bulk.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merkl/api",
3
- "version": "1.16.9",
3
+ "version": "1.17.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -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":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,oEAAoE;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAEvE,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAG5F;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,IAAiC,EACjC,IAAY,EACZ,KAAe,EACE,EAAE,CAAC;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC;QAC1D,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACnB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;YAC1C,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAAC;QACH,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;IAErD,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;IAClC,KAAK,CAAC,YAAY,IAAI,YAAY,CAAC;IAEnC,4CAA4C;IAC5C,IAAI,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAElD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7B,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;SACjB,CAAC,CAAC,CAAC;QAEJ,gCAAgC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,qBAAqB,GAAG,MAAM,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CACpF,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CACxE,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAEjD,MAAM,YAAY,GAGb,EAAE,CAAC;QAER,qDAAqD;QACrD,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,aAAa,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACrG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE/C,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;gBAClF,YAAY,CAAC,IAAI,CAAC;oBAChB,GAAG,EAAE;wBACH,QAAQ,EAAE,SAAS,CAAC,QAAQ;wBAC5B,UAAU,EAAE,SAAS,CAAC,UAAU;wBAChC,MAAM,EAAE,SAAS,CAAC,MAAM;qBACzB;oBACD,IAAI,EAAE;wBACJ,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;wBAC5C,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;wBAC3C,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,IAAI,GAAG,CAAC;qBAChG;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC/B,MAAM,0BAA0B,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YACrD,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;YACrD,KAAK,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,CAAC;QAC5C,CAAC;QAED,MAAM,cAAc,GAAG,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;QAC5D,KAAK,CAAC,cAAc,IAAI,cAAc,CAAC;IACzC,CAAC;IAED,OAAO,YAAY,CAAC;AAAA,CACrB,CAAC"}
@@ -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":"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"}