@eulerxyz/euler-v2-sdk 1.0.3 → 1.0.4

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 (54) hide show
  1. package/dist/src/entities/Account.d.ts +14 -0
  2. package/dist/src/entities/Account.d.ts.map +1 -1
  3. package/dist/src/entities/Account.js +5 -3
  4. package/dist/src/entities/Account.js.map +1 -1
  5. package/dist/src/entities/Wallet.d.ts +7 -0
  6. package/dist/src/entities/Wallet.d.ts.map +1 -1
  7. package/dist/src/entities/Wallet.js +10 -1
  8. package/dist/src/entities/Wallet.js.map +1 -1
  9. package/dist/src/sdk/buildSDK.d.ts.map +1 -1
  10. package/dist/src/sdk/buildSDK.js +1 -0
  11. package/dist/src/sdk/buildSDK.js.map +1 -1
  12. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.d.ts.map +1 -1
  13. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js +9 -0
  14. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountInfoConverter.js.map +1 -1
  15. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.d.ts +5 -0
  16. package/dist/src/services/accountService/adapters/accountOnchainAdapter/accountLensTypes.d.ts.map +1 -1
  17. package/dist/src/services/executionService/executionService.d.ts.map +1 -1
  18. package/dist/src/services/executionService/executionService.js +16 -2
  19. package/dist/src/services/executionService/executionService.js.map +1 -1
  20. package/dist/src/services/executionService/executionServiceTypes.d.ts +6 -0
  21. package/dist/src/services/executionService/executionServiceTypes.d.ts.map +1 -1
  22. package/dist/src/services/executionService/executionServiceTypes.js.map +1 -1
  23. package/dist/src/services/executionService/simulate.d.ts +27 -0
  24. package/dist/src/services/executionService/simulate.d.ts.map +1 -1
  25. package/dist/src/services/executionService/simulate.js +454 -36
  26. package/dist/src/services/executionService/simulate.js.map +1 -1
  27. package/dist/src/services/reulLockService/reulLockService.d.ts +2 -2
  28. package/dist/src/services/reulLockService/reulLockService.d.ts.map +1 -1
  29. package/dist/src/services/reulLockService/reulLockService.js +25 -7
  30. package/dist/src/services/reulLockService/reulLockService.js.map +1 -1
  31. package/dist/src/services/reulLockService/reulLockServiceTypes.d.ts +1 -1
  32. package/dist/src/services/reulLockService/reulLockServiceTypes.d.ts.map +1 -1
  33. package/dist/src/services/rewardsService/index.d.ts +1 -1
  34. package/dist/src/services/rewardsService/index.d.ts.map +1 -1
  35. package/dist/src/services/rewardsService/index.js.map +1 -1
  36. package/dist/src/services/rewardsService/rewardsService.d.ts +16 -1
  37. package/dist/src/services/rewardsService/rewardsService.d.ts.map +1 -1
  38. package/dist/src/services/rewardsService/rewardsService.js +163 -3
  39. package/dist/src/services/rewardsService/rewardsService.js.map +1 -1
  40. package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts +18 -0
  41. package/dist/src/services/rewardsService/rewardsServiceTypes.d.ts.map +1 -1
  42. package/dist/src/services/rewardsService/rewardsServiceTypes.js.map +1 -1
  43. package/dist/src/utils/stateOverrides/approvalOverrides.d.ts +1 -1
  44. package/dist/src/utils/stateOverrides/approvalOverrides.d.ts.map +1 -1
  45. package/dist/src/utils/stateOverrides/approvalOverrides.js +3 -9
  46. package/dist/src/utils/stateOverrides/approvalOverrides.js.map +1 -1
  47. package/dist/src/utils/stateOverrides/balanceOverrides.d.ts +8 -6
  48. package/dist/src/utils/stateOverrides/balanceOverrides.d.ts.map +1 -1
  49. package/dist/src/utils/stateOverrides/balanceOverrides.js +62 -55
  50. package/dist/src/utils/stateOverrides/balanceOverrides.js.map +1 -1
  51. package/dist/src/utils/stateOverrides/getStateOverrides.d.ts.map +1 -1
  52. package/dist/src/utils/stateOverrides/getStateOverrides.js +9 -8
  53. package/dist/src/utils/stateOverrides/getStateOverrides.js.map +1 -1
  54. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../../../src/services/executionService/simulate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../../../src/services/executionService/simulate.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { IDeploymentService } from "../deploymentService/index.js";
2
2
  import type { IProviderService } from "../providerService/index.js";
3
- import type { BuildUnlockREULPlanArgs, FetchREULLocksArgs, IREULLockService, REULLock } from "./reulLockServiceTypes.js";
4
3
  import type { TransactionPlan } from "../executionService/index.js";
4
+ import type { BuildUnlockREULPlanArgs, FetchREULLocksArgs, IREULLockService, REULLock } from "./reulLockServiceTypes.js";
5
5
  export declare const reulLockAbi: readonly [{
6
6
  readonly type: "function";
7
7
  readonly name: "getLockedAmounts";
@@ -68,7 +68,7 @@ export declare class REULLockService implements IREULLockService {
68
68
  */
69
69
  fetchLocks(args: FetchREULLocksArgs): Promise<REULLock[]>;
70
70
  /**
71
- * Build a direct rEUL unlock transaction plan.
71
+ * Build an rEUL unlock transaction plan.
72
72
  *
73
73
  * @param args.chainId - Chain where the unlock transaction will be sent.
74
74
  * @param args.account - Recipient/account argument passed to `withdrawToByLockTimestamp`.
@@ -1 +1 @@
1
- {"version":3,"file":"reulLockService.d.ts","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EACX,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCA,CAAC;AAIzB,qBAAa,eAAgB,YAAW,gBAAgB;IAEtD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,eAAe,EAAE,gBAAgB,EACjC,iBAAiB,EAAE,kBAAkB;IAGvD;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA2C/D;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAI,EAAE,uBAAuB,GAAG,eAAe;IAkB/D,OAAO,CAAC,kBAAkB;CAY1B"}
1
+ {"version":3,"file":"reulLockService.d.ts","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAEX,eAAe,EACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACX,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmCA,CAAC;AAIzB,qBAAa,eAAgB,YAAW,gBAAgB;IAEtD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,eAAe,EAAE,gBAAgB,EACjC,iBAAiB,EAAE,kBAAkB;IAGvD;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA2C/D;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAI,EAAE,uBAAuB,GAAG,eAAe;IAmC/D,OAAO,CAAC,kBAAkB;CAY1B"}
@@ -1,3 +1,4 @@
1
+ import { encodeFunctionData, getAddress } from "viem";
1
2
  export const reulLockAbi = [
2
3
  {
3
4
  type: "function",
@@ -83,7 +84,7 @@ export class REULLockService {
83
84
  }));
84
85
  }
85
86
  /**
86
- * Build a direct rEUL unlock transaction plan.
87
+ * Build an rEUL unlock transaction plan.
87
88
  *
88
89
  * @param args.chainId - Chain where the unlock transaction will be sent.
89
90
  * @param args.account - Recipient/account argument passed to `withdrawToByLockTimestamp`.
@@ -92,11 +93,14 @@ export class REULLockService {
92
93
  * @param args.allowRemainderLoss - Contract `allowRemainderLoss` argument; defaults to true.
93
94
  */
94
95
  buildUnlockPlan(args) {
95
- return [
96
- {
97
- type: "contractCall",
98
- chainId: args.chainId,
99
- to: this.resolveREULAddress(args.chainId, args.rEulAddress),
96
+ const rEulAddress = this.resolveREULAddress(args.chainId, args.rEulAddress);
97
+ const eulAddress = this.deploymentService.getDeployment(args.chainId)
98
+ .addresses.tokenAddrs?.EUL;
99
+ const item = {
100
+ targetContract: rEulAddress,
101
+ onBehalfOfAccount: args.account,
102
+ value: 0n,
103
+ data: encodeFunctionData({
100
104
  abi: reulLockAbi,
101
105
  functionName: "withdrawToByLockTimestamp",
102
106
  args: [
@@ -104,7 +108,21 @@ export class REULLockService {
104
108
  args.lockTimestamp,
105
109
  args.allowRemainderLoss ?? true,
106
110
  ],
107
- value: 0n,
111
+ }),
112
+ };
113
+ return [
114
+ {
115
+ type: "evcBatch",
116
+ items: [
117
+ {
118
+ type: "operation",
119
+ name: "Unlock rEUL",
120
+ items: [item],
121
+ ...(eulAddress
122
+ ? { walletBalanceTokens: [getAddress(eulAddress)] }
123
+ : {}),
124
+ },
125
+ ],
108
126
  },
109
127
  ];
110
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reulLockService.js","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reulLockService.js","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockService.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,7 @@ export interface BuildUnlockREULPlanArgs {
35
35
  export interface IREULLockService {
36
36
  /** Fetch all rEUL locks and their current withdraw amounts for an account. */
37
37
  fetchLocks(args: FetchREULLocksArgs): Promise<REULLock[]>;
38
- /** Build a direct contract-call transaction plan for one rEUL lock unlock. */
38
+ /** Build a transaction plan for one rEUL lock unlock. */
39
39
  buildUnlockPlan(args: BuildUnlockREULPlanArgs): TransactionPlan;
40
40
  }
41
41
  //# sourceMappingURL=reulLockServiceTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reulLockServiceTypes.d.ts","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockServiceTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,WAAW,QAAQ;IACxB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IAClC,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACvC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAChC,8EAA8E;IAC9E,UAAU,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,8EAA8E;IAC9E,eAAe,CAAC,IAAI,EAAE,uBAAuB,GAAG,eAAe,CAAC;CAChE"}
1
+ {"version":3,"file":"reulLockServiceTypes.d.ts","sourceRoot":"","sources":["../../../../src/services/reulLockService/reulLockServiceTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,WAAW,QAAQ;IACxB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IAClC,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACvC,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAChC,8EAA8E;IAC9E,UAAU,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,yDAAyD;IACzD,eAAe,CAAC,IAAI,EAAE,uBAAuB,GAAG,eAAe,CAAC;CAChE"}
@@ -3,7 +3,7 @@ export { RewardsDirectAdapter } from "./adapters/rewardsDirectAdapter/index.js";
3
3
  export { RewardsV3Adapter } from "./adapters/rewardsV3Adapter/index.js";
4
4
  export { VaultRewardInfo } from "./vaultRewardInfo.js";
5
5
  export type { VaultRewardInfoArgs } from "./vaultRewardInfo.js";
6
- export type { IRewardsAdapter, IRewardsService, RewardCampaign, RewardSource, RewardAction, RewardsServiceConfig, RewardsDirectAdapterConfig, RewardsV3AdapterConfig, BuildRewardClaimPlanArgs, BuildRewardClaimsPlanArgs, BuildRewardClaimAllPlanArgs, UserReward, UserRewardToken, FuulClaimCheck, FuulIncentive, FuulTotals, FuulTotalEntry, } from "./rewardsServiceTypes.js";
6
+ export type { IRewardsAdapter, IRewardsService, RewardCampaign, RewardSource, RewardAction, RewardsServiceConfig, RewardsDirectAdapterConfig, RewardsV3AdapterConfig, BuildRewardClaimPlanArgs, BuildRewardClaimsPlanArgs, BuildRewardClaimAllPlanArgs, FetchRewardStreamsArgs, BuildRewardStreamClaimPlanArgs, RewardStreamPosition, UserReward, UserRewardToken, FuulClaimCheck, FuulIncentive, FuulTotals, FuulTotalEntry, } from "./rewardsServiceTypes.js";
7
7
  export type { V3RewardsBreakdownEnvelope, V3RewardsBreakdownRow } from "./adapters/rewardsV3Adapter/index.js";
8
8
  export { defaultIsActiveForViewer, type IsActiveForViewerFn, type ViewerOptions, } from "./rewardCampaignEligibility.js";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/rewardsService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACX,eAAe,EACf,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,UAAU,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,cAAc,GACd,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC9G,OAAO,EACN,wBAAwB,EACxB,KAAK,mBAAmB,EACxB,KAAK,aAAa,GAClB,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/rewardsService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACX,eAAe,EACf,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,8BAA8B,EAC9B,oBAAoB,EACpB,UAAU,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACb,UAAU,EACV,cAAc,GACd,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC9G,OAAO,EACN,wBAAwB,EACxB,KAAK,mBAAmB,EACxB,KAAK,aAAa,GAClB,MAAM,gCAAgC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/rewardsService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAsBvD,OAAO,EACN,wBAAwB,GAGxB,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/rewardsService/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAyBvD,OAAO,EACN,wBAAwB,GAGxB,MAAM,gCAAgC,CAAC"}
@@ -1,23 +1,29 @@
1
1
  import { type Address } from "viem";
2
2
  import type { ERC4626Vault } from "../../entities/ERC4626Vault.js";
3
+ import type { AccountRewardStream } from "../../entities/Account.js";
3
4
  import type { TransactionPlan } from "../executionService/index.js";
4
5
  import type { ProviderService } from "../providerService/index.js";
5
- import type { BuildRewardClaimAllPlanArgs, BuildRewardClaimPlanArgs, BuildRewardClaimsPlanArgs, FuulClaimCheck, FuulTotals, IRewardsAdapter, IRewardsService, UserReward, VaultRewardInfo } from "./rewardsServiceTypes.js";
6
+ import type { DeploymentService } from "../deploymentService/index.js";
7
+ import type { VaultAccountInfo } from "../accountService/adapters/accountOnchainAdapter/accountLensTypes.js";
8
+ import type { BuildRewardClaimAllPlanArgs, BuildRewardClaimPlanArgs, BuildRewardClaimsPlanArgs, FetchRewardStreamsArgs, BuildRewardStreamClaimPlanArgs, FuulClaimCheck, FuulTotals, IRewardsAdapter, IRewardsService, UserReward, VaultRewardInfo } from "./rewardsServiceTypes.js";
6
9
  import { type IsActiveForViewerFn } from "./rewardCampaignEligibility.js";
7
10
  export declare class RewardsService implements IRewardsService {
8
11
  private adapter;
9
12
  private readonly addresses;
10
13
  private providerService?;
14
+ private deploymentService?;
11
15
  private isActiveForViewer;
12
16
  constructor(adapter: IRewardsAdapter, addresses: {
13
17
  merklDistributorAddress: Address;
14
18
  fuulManagerAddress: Address;
15
19
  fuulFactoryAddress: Address;
20
+ rewardStreamsAddress?: Address;
16
21
  }, options?: {
17
22
  isActiveForViewer?: IsActiveForViewerFn;
18
23
  });
19
24
  setAdapter(adapter: IRewardsAdapter): void;
20
25
  setProviderService(providerService: ProviderService): void;
26
+ setDeploymentService(deploymentService: DeploymentService): void;
21
27
  setIsActiveForViewer(fn: IsActiveForViewerFn): void;
22
28
  getIsActiveForViewer(): IsActiveForViewerFn;
23
29
  fetchVaultRewards(chainId: number, vaultAddress: Address): Promise<VaultRewardInfo | undefined>;
@@ -26,9 +32,18 @@ export declare class RewardsService implements IRewardsService {
26
32
  fetchUserRewards(chainId: number, address: Address): Promise<UserReward[]>;
27
33
  fetchFuulTotals(address: Address, chainId?: number): Promise<FuulTotals>;
28
34
  fetchFuulClaimChecks(address: Address, chainId?: number): Promise<FuulClaimCheck[]>;
35
+ queryVaultAccountInfo: (provider: ReturnType<ProviderService["getProvider"]>, accountLensAddress: Address, account: Address, vault: Address) => Promise<VaultAccountInfo>;
36
+ setQueryVaultAccountInfo(fn: typeof this.queryVaultAccountInfo): void;
37
+ fetchRewardStreams(args: FetchRewardStreamsArgs): Promise<AccountRewardStream[]>;
29
38
  buildClaimPlan(args: BuildRewardClaimPlanArgs): Promise<TransactionPlan>;
30
39
  buildClaimPlans(args: BuildRewardClaimsPlanArgs): Promise<TransactionPlan>;
31
40
  buildClaimAllPlan(args: BuildRewardClaimAllPlanArgs): Promise<TransactionPlan>;
41
+ buildRewardStreamClaimPlan(args: BuildRewardStreamClaimPlanArgs): TransactionPlan;
42
+ private getProvider;
43
+ private getDeployment;
44
+ private resolveRewardStreamsAddress;
45
+ private resolveAccountLensAddress;
46
+ private buildContractCallBatchPlan;
32
47
  private buildMerklContractCall;
33
48
  private getTrustedMerklDistributorAddress;
34
49
  private validateBrevisClaimTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"rewardsService.d.ts","sourceRoot":"","sources":["../../../../src/services/rewardsService/rewardsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAwB,MAAM,MAAM,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAEX,eAAe,EACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EACX,2BAA2B,EAC3B,wBAAwB,EACxB,yBAAyB,EACzB,cAAc,EACd,UAAU,EACV,eAAe,EACf,eAAe,EACf,UAAU,EACV,eAAe,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEN,KAAK,mBAAmB,EACxB,MAAM,gCAAgC,CAAC;AAyIxC,qBAAa,cAAe,YAAW,eAAe;IAKpD,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL3B,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,iBAAiB,CAAsB;gBAGtC,OAAO,EAAE,eAAe,EACf,SAAS,EAAE;QAC3B,uBAAuB,EAAE,OAAO,CAAC;QACjC,kBAAkB,EAAE,OAAO,CAAC;QAC5B,kBAAkB,EAAE,OAAO,CAAC;KAC5B,EACD,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;KAAE;IAMtD,UAAU,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAI1C,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAI1D,oBAAoB,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAInD,oBAAoB,IAAI,mBAAmB;IAIrC,iBAAiB,CACtB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,OAAO,GACnB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAMjC,iBAAiB,CACtB,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAQlC,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBtD,gBAAgB,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,GACd,OAAO,CAAC,UAAU,EAAE,CAAC;IAIlB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAIxE,oBAAoB,CACzB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,EAAE,CAAC;IAItB,cAAc,CACnB,IAAI,EAAE,wBAAwB,GAC5B,OAAO,CAAC,eAAe,CAAC;IAOrB,eAAe,CACpB,IAAI,EAAE,yBAAyB,GAC7B,OAAO,CAAC,eAAe,CAAC;IA4ErB,iBAAiB,CACtB,IAAI,EAAE,2BAA2B,GAC/B,OAAO,CAAC,eAAe,CAAC;IAK3B,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,iCAAiC;YAiB3B,yBAAyB;IAyBvC,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,uBAAuB;YA8BjB,qBAAqB;YAsDrB,uBAAuB;YAqEvB,gBAAgB;IAmB9B,0BAA0B,IAAI,OAAO;IAIrC,qBAAqB,IAAI,OAAO;IAIhC,qBAAqB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"rewardsService.d.ts","sourceRoot":"","sources":["../../../../src/services/rewardsService/rewardsService.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { getAddress } from "viem";
1
+ import { encodeFunctionData, getAddress, zeroAddress, } from "viem";
2
+ import { accountLensAbi } from "../accountService/adapters/accountOnchainAdapter/abis/accountLensAbi.js";
2
3
  import { defaultIsActiveForViewer, } from "./rewardCampaignEligibility.js";
3
4
  const MERKL_DISTRIBUTOR_ABI = [
4
5
  {
@@ -97,6 +98,20 @@ const FUUL_FACTORY_ABI = [
97
98
  stateMutability: "view",
98
99
  },
99
100
  ];
101
+ const REWARD_STREAMS_ABI = [
102
+ {
103
+ type: "function",
104
+ name: "claimReward",
105
+ inputs: [
106
+ { name: "rewarded", type: "address", internalType: "address" },
107
+ { name: "reward", type: "address", internalType: "address" },
108
+ { name: "to", type: "address", internalType: "address" },
109
+ { name: "ignoreRecentReward", type: "bool", internalType: "bool" },
110
+ ],
111
+ outputs: [{ name: "amount", type: "uint256", internalType: "uint256" }],
112
+ stateMutability: "nonpayable",
113
+ },
114
+ ];
100
115
  const MERKL_DEFAULT_DISTRIBUTOR = "0x3Ef3D8bA38EBe18DB133cEc108f4D14CE00Dd9Ae";
101
116
  const MERKL_DEFAULT_DISTRIBUTOR_CHAIN_IDS = new Set([
102
117
  1, 10, 30, 56, 100, 122, 130, 137, 143, 146, 151, 169, 196, 239, 250, 252,
@@ -116,10 +131,23 @@ const hasBrevisClaimData = (reward) => reward.provider !== "brevis" ||
116
131
  reward.epoch !== undefined &&
117
132
  reward.epoch !== "");
118
133
  const fuulRewardKey = (currency, currencyType) => `${getAddress(currency).toLowerCase()}:${currencyType ?? "*"}`;
134
+ const uniqueAddresses = (addresses) => {
135
+ const out = new Map();
136
+ for (const address of addresses) {
137
+ if (!address)
138
+ continue;
139
+ const checksum = getAddress(address);
140
+ if (checksum === zeroAddress)
141
+ continue;
142
+ out.set(checksum.toLowerCase(), checksum);
143
+ }
144
+ return [...out.values()];
145
+ };
119
146
  export class RewardsService {
120
147
  adapter;
121
148
  addresses;
122
149
  providerService;
150
+ deploymentService;
123
151
  isActiveForViewer;
124
152
  constructor(adapter, addresses, options) {
125
153
  this.adapter = adapter;
@@ -133,6 +161,9 @@ export class RewardsService {
133
161
  setProviderService(providerService) {
134
162
  this.providerService = providerService;
135
163
  }
164
+ setDeploymentService(deploymentService) {
165
+ this.deploymentService = deploymentService;
166
+ }
136
167
  setIsActiveForViewer(fn) {
137
168
  this.isActiveForViewer = fn;
138
169
  }
@@ -178,6 +209,36 @@ export class RewardsService {
178
209
  async fetchFuulClaimChecks(address, chainId) {
179
210
  return this.adapter.fetchFuulClaimChecks(address, chainId);
180
211
  }
212
+ queryVaultAccountInfo = async (provider, accountLensAddress, account, vault) => {
213
+ return provider.readContract({
214
+ address: accountLensAddress,
215
+ abi: accountLensAbi,
216
+ functionName: "getVaultAccountInfo",
217
+ args: [account, vault],
218
+ });
219
+ };
220
+ setQueryVaultAccountInfo(fn) {
221
+ this.queryVaultAccountInfo = fn;
222
+ }
223
+ async fetchRewardStreams(args) {
224
+ const provider = this.getProvider(args.chainId);
225
+ const accountLensAddress = this.resolveAccountLensAddress(args.chainId, args.accountLensAddress);
226
+ const uniquePositions = Array.from(new Map(args.positions.map((position) => {
227
+ const account = getAddress(position.account);
228
+ const vault = getAddress(position.vault);
229
+ return [`${account}:${vault}`, { account, vault }];
230
+ })).values());
231
+ const vaultAccountInfos = await Promise.all(uniquePositions.map((position) => this.queryVaultAccountInfo(provider, accountLensAddress, position.account, position.vault)));
232
+ return vaultAccountInfos.flatMap((vaultAccountInfo) => (vaultAccountInfo.enabledRewardsInfo ?? [])
233
+ .filter((rewardInfo) => rewardInfo.earnedReward > 0n)
234
+ .map((rewardInfo) => ({
235
+ account: getAddress(vaultAccountInfo.account),
236
+ vault: getAddress(vaultAccountInfo.vault),
237
+ reward: getAddress(rewardInfo.reward),
238
+ earnedReward: rewardInfo.earnedReward,
239
+ earnedRewardRecentIgnored: rewardInfo.earnedRewardRecentIgnored,
240
+ })));
241
+ }
181
242
  async buildClaimPlan(args) {
182
243
  return this.buildClaimPlans({
183
244
  rewards: [args.reward],
@@ -228,11 +289,107 @@ export class RewardsService {
228
289
  }
229
290
  plan.push(await this.buildFuulContractCall(fuulRewards[0].chainId, account, fuulRewards));
230
291
  }
231
- return plan;
292
+ return this.buildContractCallBatchPlan(plan, account, "Claim rewards");
232
293
  }
233
294
  async buildClaimAllPlan(args) {
234
295
  const rewards = await this.fetchUserRewards(args.chainId, args.account);
235
- return this.buildClaimPlans({ rewards, account: args.account });
296
+ return this.buildClaimPlans({
297
+ rewards,
298
+ account: args.account,
299
+ });
300
+ }
301
+ buildRewardStreamClaimPlan(args) {
302
+ const rewardStreamsAddress = this.resolveRewardStreamsAddress(args.chainId, args.rewardStreamsAddress);
303
+ const recipient = getAddress(args.recipient);
304
+ const items = args.rewardStreams
305
+ .filter((rewardStream) => rewardStream.earnedReward > 0n)
306
+ .map((rewardStream) => ({
307
+ targetContract: rewardStreamsAddress,
308
+ onBehalfOfAccount: getAddress(rewardStream.account),
309
+ value: 0n,
310
+ data: encodeFunctionData({
311
+ abi: REWARD_STREAMS_ABI,
312
+ functionName: "claimReward",
313
+ args: [
314
+ getAddress(rewardStream.vault),
315
+ getAddress(rewardStream.reward),
316
+ recipient,
317
+ rewardStream.earnedReward ===
318
+ rewardStream.earnedRewardRecentIgnored,
319
+ ],
320
+ }),
321
+ }));
322
+ if (items.length === 0)
323
+ return [];
324
+ const walletBalanceTokens = uniqueAddresses(args.rewardStreams
325
+ .filter((rewardStream) => rewardStream.earnedReward > 0n)
326
+ .map((rewardStream) => rewardStream.reward));
327
+ return [
328
+ {
329
+ type: "evcBatch",
330
+ items: [
331
+ {
332
+ type: "operation",
333
+ name: "Claim rewards",
334
+ items,
335
+ ...(walletBalanceTokens.length ? { walletBalanceTokens } : {}),
336
+ },
337
+ ],
338
+ },
339
+ ];
340
+ }
341
+ getProvider(chainId) {
342
+ if (!this.providerService) {
343
+ throw new Error("Provider service not configured");
344
+ }
345
+ return this.providerService.getProvider(chainId);
346
+ }
347
+ getDeployment(chainId) {
348
+ if (!this.deploymentService) {
349
+ throw new Error("Deployment service not configured");
350
+ }
351
+ return this.deploymentService.getDeployment(chainId);
352
+ }
353
+ resolveRewardStreamsAddress(chainId, override) {
354
+ return (override ??
355
+ this.addresses.rewardStreamsAddress ??
356
+ this.getDeployment(chainId).addresses.coreAddrs.balanceTracker);
357
+ }
358
+ resolveAccountLensAddress(chainId, override) {
359
+ return (override ?? this.getDeployment(chainId).addresses.lensAddrs.accountLens);
360
+ }
361
+ buildContractCallBatchPlan(plan, account, operationName) {
362
+ const items = plan.map((item) => {
363
+ if (item.type !== "contractCall") {
364
+ throw new Error("RewardsService can only convert contract-call reward claims to EVC batch items");
365
+ }
366
+ return {
367
+ targetContract: item.to,
368
+ onBehalfOfAccount: account,
369
+ value: item.value,
370
+ data: encodeFunctionData({
371
+ abi: item.abi,
372
+ functionName: item.functionName,
373
+ args: item.args,
374
+ }),
375
+ };
376
+ });
377
+ if (items.length === 0)
378
+ return [];
379
+ const walletBalanceTokens = uniqueAddresses(plan.flatMap((item) => item.type === "contractCall" ? (item.walletBalanceTokens ?? []) : []));
380
+ return [
381
+ {
382
+ type: "evcBatch",
383
+ items: [
384
+ {
385
+ type: "operation",
386
+ name: operationName,
387
+ items,
388
+ ...(walletBalanceTokens.length ? { walletBalanceTokens } : {}),
389
+ },
390
+ ],
391
+ },
392
+ ];
236
393
  }
237
394
  buildMerklContractCall(rewards, account, distributorAddress) {
238
395
  const firstReward = rewards[0];
@@ -252,6 +409,7 @@ export class RewardsService {
252
409
  rewards.map((reward) => reward.proof ?? []),
253
410
  ],
254
411
  value: 0n,
412
+ walletBalanceTokens: uniqueAddresses(rewards.map((reward) => reward.token.address)),
255
413
  };
256
414
  }
257
415
  getTrustedMerklDistributorAddress(chainId) {
@@ -332,6 +490,7 @@ export class RewardsService {
332
490
  reward.proof,
333
491
  ],
334
492
  value: 0n,
493
+ walletBalanceTokens: [getAddress(reward.token.address)],
335
494
  };
336
495
  }
337
496
  async buildFuulContractCall(chainId, account, rewards) {
@@ -370,6 +529,7 @@ export class RewardsService {
370
529
  })),
371
530
  ],
372
531
  value: totalFee,
532
+ walletBalanceTokens: uniqueAddresses(claimChecks.map((check) => check.currency)),
373
533
  };
374
534
  }
375
535
  async validateFuulClaimChecks(chainId, account, rewards, claimChecks) {