@merkl/api 0.10.361 → 0.10.377

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 (91) hide show
  1. package/README.md +78 -14
  2. package/dist/database/api/.generated/edge.js +21 -6
  3. package/dist/database/api/.generated/index-browser.js +18 -3
  4. package/dist/database/api/.generated/index.d.ts +1746 -256
  5. package/dist/database/api/.generated/index.js +21 -6
  6. package/dist/database/api/.generated/package.json +1 -1
  7. package/dist/database/api/.generated/schema.prisma +12 -2
  8. package/dist/database/api/.generated/wasm.js +18 -3
  9. package/dist/src/eden/index.d.ts +1260 -127
  10. package/dist/src/entities/campaign.js +2 -1
  11. package/dist/src/entities/opportunity.js +169 -3
  12. package/dist/src/index.d.ts +432 -5
  13. package/dist/src/jobs/etl/pendings.js +2 -1
  14. package/dist/src/jobs/etl/reward-breakdowns.js +2 -1
  15. package/dist/src/jobs/etl/rewards.js +2 -1
  16. package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicData.js +45 -54
  17. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.d.ts +3 -1
  18. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.js +4 -0
  19. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/ERC4626Processor.d.ts +34 -0
  20. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/ERC4626Processor.js +36 -0
  21. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/processorMapping.js +3 -0
  22. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1.js +4 -1
  23. package/dist/src/libs/campaigns/campaignTypes/HyperdriveDynamicData.d.ts +5 -0
  24. package/dist/src/libs/campaigns/campaignTypes/HyperdriveDynamicData.js +76 -0
  25. package/dist/src/libs/campaigns/campaignsDynamicData.js +8 -0
  26. package/dist/src/modules/v4/campaign/campaign.controller.d.ts +2 -0
  27. package/dist/src/modules/v4/campaign/campaign.model.d.ts +1 -0
  28. package/dist/src/modules/v4/campaign/campaign.model.js +1 -0
  29. package/dist/src/modules/v4/campaign/campaign.repository.d.ts +63 -1
  30. package/dist/src/modules/v4/campaign/campaign.repository.js +15 -10
  31. package/dist/src/modules/v4/computedValue/computedValue.controller.d.ts +8 -5
  32. package/dist/src/modules/v4/computedValue/computedValue.controller.js +8 -6
  33. package/dist/src/modules/v4/computedValue/computedValue.model.js +12 -4
  34. package/dist/src/modules/v4/computedValue/computedValue.repository.d.ts +8 -5
  35. package/dist/src/modules/v4/computedValue/computedValue.repository.js +7 -3
  36. package/dist/src/modules/v4/computedValue/computedValue.service.d.ts +7 -4
  37. package/dist/src/modules/v4/computedValue/computedValue.service.js +10 -0
  38. package/dist/src/modules/v4/creator/creator.controller.d.ts +118 -0
  39. package/dist/src/modules/v4/creator/creator.controller.js +30 -0
  40. package/dist/src/modules/v4/creator/creator.model.d.ts +29 -0
  41. package/dist/src/modules/v4/creator/creator.model.js +18 -0
  42. package/dist/src/modules/v4/creator/creator.repository.d.ts +40 -0
  43. package/dist/src/modules/v4/creator/creator.repository.js +63 -0
  44. package/dist/src/modules/v4/creator/creator.service.d.ts +61 -0
  45. package/dist/src/modules/v4/creator/creator.service.js +44 -0
  46. package/dist/src/modules/v4/creator/index.d.ts +3 -0
  47. package/dist/src/modules/v4/creator/index.js +3 -0
  48. package/dist/src/modules/v4/dynamicData/dynamicData.controller.d.ts +3 -4
  49. package/dist/src/modules/v4/dynamicData/dynamicData.controller.js +1 -1
  50. package/dist/src/modules/v4/dynamicData/dynamicData.model.d.ts +1 -0
  51. package/dist/src/modules/v4/dynamicData/dynamicData.model.js +1 -0
  52. package/dist/src/modules/v4/dynamicData/dynamicData.service.d.ts +6 -3
  53. package/dist/src/modules/v4/dynamicData/dynamicData.service.js +50 -9
  54. package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +171 -1
  55. package/dist/src/modules/v4/opportunity/opportunity.controller.js +14 -0
  56. package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +0 -1
  57. package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +185 -0
  58. package/dist/src/modules/v4/opportunity/opportunity.repository.js +41 -0
  59. package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +151 -1
  60. package/dist/src/modules/v4/opportunity/opportunity.service.js +45 -2
  61. package/dist/src/modules/v4/opportunity/subservices/getHyperdriveMetadata.service.d.ts +1 -1
  62. package/dist/src/modules/v4/opportunity/subservices/getHyperdriveMetadata.service.js +2 -2
  63. package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +30 -0
  64. package/dist/src/modules/v4/programPayload/programPayload.controller.js +12 -1
  65. package/dist/src/modules/v4/programPayload/programPayload.model.d.ts +21 -1
  66. package/dist/src/modules/v4/programPayload/programPayload.model.js +12 -0
  67. package/dist/src/modules/v4/programPayload/programPayload.repository.d.ts +3 -2
  68. package/dist/src/modules/v4/programPayload/programPayload.repository.js +28 -2
  69. package/dist/src/modules/v4/programPayload/programPayload.service.d.ts +2 -1
  70. package/dist/src/modules/v4/programPayload/programPayload.service.js +42 -2
  71. package/dist/src/modules/v4/protocol/protocol.controller.d.ts +1 -0
  72. package/dist/src/modules/v4/protocol/protocol.model.d.ts +1 -0
  73. package/dist/src/modules/v4/protocol/protocol.model.js +1 -0
  74. package/dist/src/modules/v4/reward/reward.repository.d.ts +2 -1
  75. package/dist/src/modules/v4/reward/reward.repository.js +12 -1
  76. package/dist/src/modules/v4/reward/reward.service.js +5 -2
  77. package/dist/src/modules/v4/router.d.ts +432 -5
  78. package/dist/src/modules/v4/router.js +5 -1
  79. package/dist/src/modules/v4/user/user.controller.d.ts +28 -0
  80. package/dist/src/modules/v4/user/user.controller.js +5 -0
  81. package/dist/src/modules/v4/user/user.repository.d.ts +5 -0
  82. package/dist/src/modules/v4/user/user.service.d.ts +5 -0
  83. package/dist/src/utils/decodeCalls.js +7 -1
  84. package/dist/src/utils/encodeCalls.js +19 -1
  85. package/dist/src/utils/generateCardName.js +3 -0
  86. package/dist/tsconfig.package.tsbuildinfo +1 -1
  87. package/package.json +6 -2
  88. package/dist/src/jobs/breakdowns.d.ts +0 -1
  89. package/dist/src/jobs/breakdowns.js +0 -55
  90. package/dist/src/jobs/rewards.d.ts +0 -1
  91. package/dist/src/jobs/rewards.js +0 -74
package/README.md CHANGED
@@ -1,26 +1,90 @@
1
- # Elysia with Bun runtime
1
+ ---
2
+ description: Easily interact with the Merkl API using the dedicated NPM package
3
+ ---
2
4
 
3
- ## Usage
5
+ # 📦 Merkl API V4 NPM Package
6
+
7
+ Merkl API V4 comes with a dedicated NPM package to help you interact with it.
8
+
9
+ This quickstart guide will help you get started with interacting with the Eden Treaty app object using the Merkl API package.
10
+
11
+ ![](https://github.com/user-attachments/assets/775a2f92-8d7f-4f87-a72a-0a7b6e278edf)
12
+
13
+ ## Installation 🚀
14
+
15
+ To begin, install the `@merkl/api` package into your project:
4
16
 
5
17
  ```bash
6
- bun install @merkl/api
18
+ npm install @merkl/api
19
+ ```
20
+
21
+ ## Usage Example 🛠️
22
+
23
+ Here's a step-by-step guide to instantiating the Merkl API object and making API calls.
24
+
25
+ ### Import the Merkl API Package 📦
26
+
27
+ ```javascript
28
+ import { MerklApi } from '@merkl/api'
29
+ ```
30
+
31
+ ### Instantiate the Merkl API Object 🌐
32
+
33
+ Initialize the Merkl API object by providing the base URL. Developers can leverage autocomplete features in their IDEs since all methods are strongly typed, ensuring a seamless development experience:
34
+
35
+ ```javascript
36
+ const merkl = MerklApi('https://api.merkl.xyz').v4
7
37
  ```
8
38
 
9
- ```ts
10
- import { MerklApi } from "merkl-api";
39
+ ### Making API Calls 📡
11
40
 
12
- const api = MerklApi("https://api.merkl.xyz");
41
+ Below are examples of common API calls you can make. When making API calls, you can pass `query` parameters as an object under the `query` property and `path` parameters directly in the method arguments, as shown in the examples below:
13
42
 
14
- // /v4/opportunity
15
- const { data, error, response, status } = api.v4.opportunity.get({chainId: 1});
16
- // /v4/opportunity/:chainId/:type/:mainParameter
17
- const { data, error, response, status } = api.v4.opportunity({ chainId: 1 })({ type: "ERC20" })({ id: "..." }).get();
18
- ```
43
+ #### Get Opportunities 💼
44
+
45
+ Retrieve a list of opportunities filtered by a specific `chainId`:
46
+
47
+ ```javascript
48
+ const opportunities = await merkl.opportunities.index.get({
49
+ query: { chainId: '1' },
50
+ })
51
+
52
+ console.log(opportunities.data)
53
+ ```
54
+
55
+ #### Get Rewards for a Specific Address 🏆
56
+
57
+ Retrieve rewards for a specific user address. Note that all methods are strongly typed for better developer experience: this ensures reduced debugging time, as incorrect parameter usage is flagged early, and improved code completion in supported IDEs for faster development.
58
+
59
+ ```javascript
60
+ const rewards = await merkl
61
+ .users({
62
+ address: '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045',
63
+ })
64
+ .rewards.get({ query: { chainId: 1 } })
65
+
66
+ console.log(rewards.data)
67
+ ```
68
+
69
+ #### Get Campaigns Rewarding USDC
70
+
71
+ Retrieve campaigns filtered by token symbol, such as `USDC`:
72
+
73
+ ```javascript
74
+ const campaignsUSDC = await merkl.campaigns.index.get({
75
+ query: { tokenSymbol: 'USDC' },
76
+ })
77
+
78
+ console.log(campaignsUSDC.data)
79
+ ```
19
80
 
20
- ## Installation
81
+ ## Notes 📝
21
82
 
22
- ### Dependencies
83
+ - All API responses are wrapped within a `data` attribute. This consistency across all API calls ensures that developers can reliably access the actual response payload. Access this attribute to get the actual response payload.
84
+ - The Merkl API object methods are strongly typed, making it easier to catch errors during development.
23
85
 
24
- - [Bun](https://bun.sh/docs/installation)
86
+ For additional documentation and advanced usage, refer to the [Merkl API swagger](https://api.merkl.xyz/docs).
25
87
 
88
+ ---
26
89
 
90
+ You're now ready to interact with the Merkl API! 🎉