@explorins/pers-sdk 2.0.7 → 2.0.11
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/README.md +113 -59
- package/dist/analytics/index.d.ts +0 -2
- package/dist/analytics/index.d.ts.map +1 -1
- package/dist/analytics/models/index.d.ts +1 -10
- package/dist/analytics/models/index.d.ts.map +1 -1
- package/dist/analytics.cjs +44 -29
- package/dist/analytics.cjs.map +1 -1
- package/dist/analytics.js +45 -2
- package/dist/analytics.js.map +1 -1
- package/dist/business/index.d.ts +0 -1
- package/dist/business/index.d.ts.map +1 -1
- package/dist/business.cjs +7 -774
- package/dist/business.cjs.map +1 -1
- package/dist/business.js +3 -751
- package/dist/business.js.map +1 -1
- package/dist/campaign/index.d.ts +0 -1
- package/dist/campaign/index.d.ts.map +1 -1
- package/dist/campaign.cjs +429 -29
- package/dist/campaign.cjs.map +1 -1
- package/dist/campaign.js +431 -3
- package/dist/campaign.js.map +1 -1
- package/dist/chunks/business-membership-service-8KC_qRj7.cjs +756 -0
- package/dist/chunks/business-membership-service-8KC_qRj7.cjs.map +1 -0
- package/dist/chunks/business-membership-service-D6vaVQTR.js +751 -0
- package/dist/chunks/business-membership-service-D6vaVQTR.js.map +1 -0
- package/dist/chunks/{web3-chain-service-BeBjALg2.cjs → index-B-g2JPVK.cjs} +1 -220
- package/dist/chunks/index-B-g2JPVK.cjs.map +1 -0
- package/dist/chunks/{web3-chain-service-DKHCnHQX.js → index-CKm_V5XE.js} +2 -219
- package/dist/chunks/index-CKm_V5XE.js.map +1 -0
- package/dist/chunks/payment-service-Bkw7ZXev.cjs +214 -0
- package/dist/chunks/payment-service-Bkw7ZXev.cjs.map +1 -0
- package/dist/chunks/payment-service-IvM6rryM.js +211 -0
- package/dist/chunks/payment-service-IvM6rryM.js.map +1 -0
- package/dist/chunks/{pers-sdk-JIExM712.js → pers-sdk-DYnIZvcx.js} +12 -291
- package/dist/chunks/pers-sdk-DYnIZvcx.js.map +1 -0
- package/dist/chunks/{pers-sdk-h-uoLpBx.cjs → pers-sdk-Dr9W8stD.cjs} +38 -318
- package/dist/chunks/pers-sdk-Dr9W8stD.cjs.map +1 -0
- package/dist/chunks/redemption-service-D-hBqh42.js +339 -0
- package/dist/chunks/redemption-service-D-hBqh42.js.map +1 -0
- package/dist/chunks/redemption-service-rMB6T2W5.cjs +342 -0
- package/dist/chunks/redemption-service-rMB6T2W5.cjs.map +1 -0
- package/dist/chunks/tenant-service-CsRA3O2V.js +163 -0
- package/dist/chunks/tenant-service-CsRA3O2V.js.map +1 -0
- package/dist/chunks/tenant-service-fj-pkXTw.cjs +166 -0
- package/dist/chunks/tenant-service-fj-pkXTw.cjs.map +1 -0
- package/dist/chunks/{transaction-request.builder-DrqTWcyC.cjs → transaction-request.builder-BwWmfHXm.cjs} +6 -6
- package/dist/chunks/{transaction-request.builder-DrqTWcyC.cjs.map → transaction-request.builder-BwWmfHXm.cjs.map} +1 -1
- package/dist/chunks/{transaction-request.builder-DltmruUC.js → transaction-request.builder-C1FPWmYN.js} +6 -6
- package/dist/chunks/{transaction-request.builder-DltmruUC.js.map → transaction-request.builder-C1FPWmYN.js.map} +1 -1
- package/dist/chunks/web3-chain-service-D68-0WaW.cjs +224 -0
- package/dist/chunks/web3-chain-service-D68-0WaW.cjs.map +1 -0
- package/dist/chunks/web3-chain-service-DuvxmKSj.js +221 -0
- package/dist/chunks/web3-chain-service-DuvxmKSj.js.map +1 -0
- package/dist/chunks/{explorer.utils-Cx3wrqAj.cjs → web3-manager-C_cFaMCm.cjs} +411 -144
- package/dist/chunks/web3-manager-C_cFaMCm.cjs.map +1 -0
- package/dist/chunks/{explorer.utils-BkS3k8hX.js → web3-manager-OExwBWB7.js} +412 -146
- package/dist/chunks/web3-manager-OExwBWB7.js.map +1 -0
- package/dist/core.cjs +18 -21
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +10 -12
- package/dist/core.js.map +1 -1
- package/dist/donation/index.d.ts +0 -1
- package/dist/donation/index.d.ts.map +1 -1
- package/dist/donation.cjs +48 -29
- package/dist/donation.cjs.map +1 -1
- package/dist/donation.js +50 -3
- package/dist/donation.js.map +1 -1
- package/dist/index.cjs +43 -69
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -15
- package/dist/index.js.map +1 -1
- package/dist/managers/analytics-manager.d.ts +1 -1
- package/dist/managers/index.d.ts +0 -1
- package/dist/managers/index.d.ts.map +1 -1
- package/dist/managers/web3-manager.d.ts +1 -1
- package/dist/managers/web3-manager.d.ts.map +1 -1
- package/dist/node.cjs +10 -13
- package/dist/node.cjs.map +1 -1
- package/dist/node.js +10 -13
- package/dist/node.js.map +1 -1
- package/dist/package.json +4 -10
- package/dist/payment/index.d.ts +0 -1
- package/dist/payment/index.d.ts.map +1 -1
- package/dist/payment.cjs +5 -232
- package/dist/payment.cjs.map +1 -1
- package/dist/payment.js +3 -210
- package/dist/payment.js.map +1 -1
- package/dist/pers-sdk.d.ts +1 -13
- package/dist/pers-sdk.d.ts.map +1 -1
- package/dist/redemption/index.d.ts +0 -1
- package/dist/redemption/index.d.ts.map +1 -1
- package/dist/redemption/services/redemption-service.d.ts +1 -2
- package/dist/redemption/services/redemption-service.d.ts.map +1 -1
- package/dist/redemption.cjs +5 -360
- package/dist/redemption.cjs.map +1 -1
- package/dist/redemption.js +3 -338
- package/dist/redemption.js.map +1 -1
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +15 -21
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -1
- package/dist/tenant/index.d.ts +0 -1
- package/dist/tenant/index.d.ts.map +1 -1
- package/dist/tenant.cjs +5 -184
- package/dist/tenant.cjs.map +1 -1
- package/dist/tenant.js +3 -162
- package/dist/tenant.js.map +1 -1
- package/dist/token/index.d.ts +0 -1
- package/dist/token/index.d.ts.map +1 -1
- package/dist/token.cjs +1 -25
- package/dist/token.cjs.map +1 -1
- package/dist/token.js +1 -1
- package/dist/transaction/models/transaction-request.builder.d.ts +4 -4
- package/dist/transaction/models/transaction-request.builder.d.ts.map +1 -1
- package/dist/transaction.cjs +1 -1
- package/dist/transaction.js +1 -1
- package/dist/user/index.d.ts +0 -1
- package/dist/user/index.d.ts.map +1 -1
- package/dist/user-status/index.d.ts +0 -1
- package/dist/user-status/index.d.ts.map +1 -1
- package/dist/user-status.cjs +0 -25
- package/dist/user-status.cjs.map +1 -1
- package/dist/user-status.js +0 -1
- package/dist/user-status.js.map +1 -1
- package/dist/user.cjs +209 -29
- package/dist/user.cjs.map +1 -1
- package/dist/user.js +211 -3
- package/dist/user.js.map +1 -1
- package/dist/web3/index.d.ts +1 -0
- package/dist/web3/index.d.ts.map +1 -1
- package/dist/web3-chain/index.d.ts +0 -1
- package/dist/web3-chain/index.d.ts.map +1 -1
- package/dist/web3-chain.cjs +14 -29
- package/dist/web3-chain.cjs.map +1 -1
- package/dist/web3-chain.js +16 -3
- package/dist/web3-chain.js.map +1 -1
- package/dist/web3-manager.cjs +13 -0
- package/dist/web3-manager.cjs.map +1 -0
- package/dist/web3-manager.js +7 -0
- package/dist/web3-manager.js.map +1 -0
- package/dist/web3.cjs +10 -6
- package/dist/web3.cjs.map +1 -1
- package/dist/web3.js +4 -1
- package/dist/web3.js.map +1 -1
- package/package.json +4 -10
- package/dist/chunks/analytics-service-CitlimKJ.cjs +0 -49
- package/dist/chunks/analytics-service-CitlimKJ.cjs.map +0 -1
- package/dist/chunks/analytics-service-CxyrOwel.js +0 -46
- package/dist/chunks/analytics-service-CxyrOwel.js.map +0 -1
- package/dist/chunks/campaign-service-CdEz0jpP.cjs +0 -435
- package/dist/chunks/campaign-service-CdEz0jpP.cjs.map +0 -1
- package/dist/chunks/campaign-service-DrTAqFZM.js +0 -432
- package/dist/chunks/campaign-service-DrTAqFZM.js.map +0 -1
- package/dist/chunks/donation-service--6cnTvWq.cjs +0 -54
- package/dist/chunks/donation-service--6cnTvWq.cjs.map +0 -1
- package/dist/chunks/donation-service-xiXZ2Eto.js +0 -51
- package/dist/chunks/donation-service-xiXZ2Eto.js.map +0 -1
- package/dist/chunks/explorer.utils-BkS3k8hX.js.map +0 -1
- package/dist/chunks/explorer.utils-Cx3wrqAj.cjs.map +0 -1
- package/dist/chunks/index-BtDNXaFq.js +0 -13
- package/dist/chunks/index-BtDNXaFq.js.map +0 -1
- package/dist/chunks/index-CMk3Aqkk.cjs +0 -15
- package/dist/chunks/index-CMk3Aqkk.cjs.map +0 -1
- package/dist/chunks/pers-sdk-JIExM712.js.map +0 -1
- package/dist/chunks/pers-sdk-h-uoLpBx.cjs.map +0 -1
- package/dist/chunks/user-service-BGP3SZpk.js +0 -212
- package/dist/chunks/user-service-BGP3SZpk.js.map +0 -1
- package/dist/chunks/user-service-gITOx4qj.cjs +0 -215
- package/dist/chunks/user-service-gITOx4qj.cjs.map +0 -1
- package/dist/chunks/web3-chain-service-BeBjALg2.cjs.map +0 -1
- package/dist/chunks/web3-chain-service-DKHCnHQX.js.map +0 -1
package/dist/campaign.js
CHANGED
|
@@ -1,4 +1,432 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { b as buildPaginationParams, n as normalizeToPaginated } from './chunks/pagination-utils-9vQ-Npkr.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Platform-Agnostic Campaign API Client (NEW - RESTful Design)
|
|
5
|
+
*
|
|
6
|
+
* Updated to use the new microservice-ready campaign controllers:
|
|
7
|
+
* - CampaignsController: Core campaign operations
|
|
8
|
+
* - CampaignTagsController: Tag management
|
|
9
|
+
* - CampaignTokensController: Token unit operations
|
|
10
|
+
* - CampaignTriggersController: Trigger system
|
|
11
|
+
* - CampaignEngagementsController: Business relationships
|
|
12
|
+
* - CampaignClaimsController: Claims processing
|
|
13
|
+
*
|
|
14
|
+
* Uses @explorins/pers-shared DTOs for consistency with backend.
|
|
15
|
+
* All endpoints updated to new RESTful patterns without role revelation.
|
|
16
|
+
*/
|
|
17
|
+
class CampaignApi {
|
|
18
|
+
constructor(apiClient) {
|
|
19
|
+
this.apiClient = apiClient;
|
|
20
|
+
}
|
|
21
|
+
// ==========================================
|
|
22
|
+
// CORE CAMPAIGN OPERATIONS (/campaigns)
|
|
23
|
+
// ==========================================
|
|
24
|
+
/**
|
|
25
|
+
* Get campaigns with pagination support
|
|
26
|
+
* Returns paginated response with metadata (total, page, limit, hasMore)
|
|
27
|
+
* Intelligent access: Public gets active only, Business gets own campaigns, Admin gets all
|
|
28
|
+
*/
|
|
29
|
+
async getCampaigns(options) {
|
|
30
|
+
const params = [];
|
|
31
|
+
// Always include pagination params to ensure paginated response
|
|
32
|
+
params.push(`page=${options?.page || 1}`);
|
|
33
|
+
params.push(`limit=${options?.limit || 50}`);
|
|
34
|
+
if (options?.active !== undefined)
|
|
35
|
+
params.push(`active=${options.active}`);
|
|
36
|
+
if (options?.tag)
|
|
37
|
+
params.push(`tag=${encodeURIComponent(options.tag)}`);
|
|
38
|
+
if (options?.businessId)
|
|
39
|
+
params.push(`businessId=${encodeURIComponent(options.businessId)}`);
|
|
40
|
+
if (options?.sortBy)
|
|
41
|
+
params.push(`sortBy=${options.sortBy}`);
|
|
42
|
+
if (options?.sortOrder)
|
|
43
|
+
params.push(`sortOrder=${options.sortOrder}`);
|
|
44
|
+
return this.apiClient.get(`/campaigns?${params.join('&')}`);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* PUBLIC: Get campaign by ID
|
|
48
|
+
* NEW: /campaigns/{id}
|
|
49
|
+
*/
|
|
50
|
+
async getCampaignById(id) {
|
|
51
|
+
return this.apiClient.get(`/campaigns/${id}`);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* ADMIN: Create campaign
|
|
55
|
+
* NEW: POST /campaigns
|
|
56
|
+
*/
|
|
57
|
+
async createCampaign(campaign) {
|
|
58
|
+
return this.apiClient.post('/campaigns', campaign);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* ADMIN: Update campaign
|
|
62
|
+
* NEW: PUT /campaigns/{id}
|
|
63
|
+
*/
|
|
64
|
+
async updateCampaign(campaignId, campaign) {
|
|
65
|
+
return this.apiClient.put(`/campaigns/${campaignId}`, campaign);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* ADMIN: Toggle campaign active status
|
|
69
|
+
* NEW: PUT /campaigns/{id}/status
|
|
70
|
+
*/
|
|
71
|
+
async toggleCampaignActive(campaignId) {
|
|
72
|
+
return this.apiClient.put(`/campaigns/${campaignId}/status`, {});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* ADMIN: Toggle campaign testnet environment
|
|
76
|
+
* NEW: PUT /campaigns/{id}/environment
|
|
77
|
+
*/
|
|
78
|
+
async toggleCampaignTestnet(campaignId) {
|
|
79
|
+
return this.apiClient.put(`/campaigns/${campaignId}/environment`, {});
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* ADMIN: Delete campaign
|
|
83
|
+
* NEW: DELETE /campaigns/{id}
|
|
84
|
+
*/
|
|
85
|
+
async deleteCampaign(campaignId) {
|
|
86
|
+
return this.apiClient.delete(`/campaigns/${campaignId}`);
|
|
87
|
+
}
|
|
88
|
+
// ==========================================
|
|
89
|
+
// TAG MANAGEMENT (/campaign-tags)
|
|
90
|
+
// ==========================================
|
|
91
|
+
/**
|
|
92
|
+
* ADMIN: Get all unique campaign tags
|
|
93
|
+
* NEW: GET /campaign-tags
|
|
94
|
+
*/
|
|
95
|
+
async getAllUniqueTags() {
|
|
96
|
+
return this.apiClient.get('/campaigns/tags');
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* ADMIN: Update campaign tags (replace all)
|
|
100
|
+
* NEW: PUT /campaign-tags/{id}
|
|
101
|
+
*/
|
|
102
|
+
async updateCampaignTags(campaignId, tags) {
|
|
103
|
+
return this.apiClient.put(`/campaigns/${campaignId}/tags`, { tags });
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* ADMIN: Add tags to campaign
|
|
107
|
+
* NEW: POST /campaign-tags/{id}
|
|
108
|
+
*/
|
|
109
|
+
async addTagsToCampaign(campaignId, tags) {
|
|
110
|
+
return this.apiClient.post(`/campaigns/${campaignId}/tags`, { tags });
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* ADMIN: Remove tag from campaign
|
|
114
|
+
* NEW: DELETE /campaign-tags/{id}/{tag}
|
|
115
|
+
*/
|
|
116
|
+
async removeTagFromCampaign(campaignId, tag) {
|
|
117
|
+
return this.apiClient.delete(`/campaigns/${campaignId}/tags/${encodeURIComponent(tag)}`);
|
|
118
|
+
}
|
|
119
|
+
// ==========================================
|
|
120
|
+
// TOKEN MANAGEMENT (/campaign-tokens)
|
|
121
|
+
// ==========================================
|
|
122
|
+
/**
|
|
123
|
+
* ADMIN: Create campaign token unit
|
|
124
|
+
* NEW: POST /campaign-tokens/{id}
|
|
125
|
+
*/
|
|
126
|
+
async createCampaignTokenUnit(campaignId, campaignTokenUnit) {
|
|
127
|
+
return this.apiClient.post(`/campaigns/${campaignId}/tokens`, campaignTokenUnit);
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* ADMIN: Update campaign token unit
|
|
131
|
+
* NEW: PUT /campaign-tokens/{id}/{tokenUnitId}
|
|
132
|
+
*/
|
|
133
|
+
async updateCampaignTokenUnit(campaignId, tokenUnitId, campaignTokenUnit) {
|
|
134
|
+
return this.apiClient.put(`/campaigns/${campaignId}/tokens/${tokenUnitId}`, campaignTokenUnit);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* ADMIN: Delete campaign token unit
|
|
138
|
+
* NEW: DELETE /campaign-tokens/{id}/{tokenUnitId}
|
|
139
|
+
*/
|
|
140
|
+
async deleteCampaignTokenUnit(campaignId, campaignTokenUnitId) {
|
|
141
|
+
return this.apiClient.delete(`/campaigns/${campaignId}/tokens/${campaignTokenUnitId}`);
|
|
142
|
+
}
|
|
143
|
+
// ==========================================
|
|
144
|
+
// TRIGGER SYSTEM (/campaign-triggers)
|
|
145
|
+
// ==========================================
|
|
146
|
+
/**
|
|
147
|
+
* PUBLIC: Get campaign triggers catalog with pagination
|
|
148
|
+
* NEW: GET /campaign-triggers
|
|
149
|
+
*
|
|
150
|
+
* @param options - Pagination and sorting options
|
|
151
|
+
* @returns Paginated list of campaign triggers
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```typescript
|
|
155
|
+
* // Get first page
|
|
156
|
+
* const page1 = await campaignApi.getCampaignTriggers();
|
|
157
|
+
*
|
|
158
|
+
* // Get specific page
|
|
159
|
+
* const page2 = await campaignApi.getCampaignTriggers({ page: 2, limit: 25 });
|
|
160
|
+
*
|
|
161
|
+
* // Access data
|
|
162
|
+
* page1.data.forEach(trigger => console.log(trigger.name));
|
|
163
|
+
* ```
|
|
164
|
+
*/
|
|
165
|
+
async getCampaignTriggers(options) {
|
|
166
|
+
const params = buildPaginationParams(options);
|
|
167
|
+
const response = await this.apiClient.get(`/campaign-triggers?${params.toString()}`);
|
|
168
|
+
return normalizeToPaginated(response);
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* ADMIN: Create campaign trigger
|
|
172
|
+
* NEW: POST /campaign-triggers
|
|
173
|
+
*/
|
|
174
|
+
async createCampaignTrigger(trigger) {
|
|
175
|
+
return this.apiClient.post(`/campaign-triggers`, trigger);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* ADMIN: Update campaign trigger
|
|
179
|
+
* NEW: PUT /campaign-triggers/{id}
|
|
180
|
+
*/
|
|
181
|
+
async updateCampaignTrigger(triggerId, trigger) {
|
|
182
|
+
return this.apiClient.put(`/campaign-triggers/${triggerId}`, trigger);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* ADMIN: Delete campaign trigger
|
|
186
|
+
* NEW: DELETE /campaign-triggers/{id}
|
|
187
|
+
*/
|
|
188
|
+
async deleteCampaignTrigger(triggerId) {
|
|
189
|
+
return this.apiClient.delete(`/campaign-triggers/${triggerId}`);
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* ADMIN: Assign trigger to campaign
|
|
193
|
+
* NEW: PUT /campaign-triggers/{triggerId}/assign/{campaignId}
|
|
194
|
+
*/
|
|
195
|
+
async setCampaignTrigger(campaignId, triggerId) {
|
|
196
|
+
return this.apiClient.put(`/campaign-triggers/${triggerId}/assign/${campaignId}`, {});
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* ADMIN: Add/Remove condition to trigger
|
|
200
|
+
* NEW: PUT /campaign-triggers/{triggerId}/conditions/{conditionId}
|
|
201
|
+
*/
|
|
202
|
+
async addOrRemoveConditionToTrigger(triggerId, condition) {
|
|
203
|
+
return this.apiClient.put(`/campaign-triggers/${triggerId}/conditions`, condition);
|
|
204
|
+
}
|
|
205
|
+
// ==========================================
|
|
206
|
+
// BUSINESS ENGAGEMENTS (/campaign-engagements)
|
|
207
|
+
// ==========================================
|
|
208
|
+
/**
|
|
209
|
+
* ADMIN: Add business engagement to campaign
|
|
210
|
+
* NEW: POST /campaign-engagements/{id}
|
|
211
|
+
*/
|
|
212
|
+
async addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement) {
|
|
213
|
+
return this.apiClient.post(`/campaigns/${campaignId}/engagements`, campaignBusinessEngagement);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* ADMIN: Update campaign business engagement
|
|
217
|
+
* NEW: PUT /campaign-engagements/{id}/{businessEngagementId}
|
|
218
|
+
*/
|
|
219
|
+
async updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement) {
|
|
220
|
+
return this.apiClient.put(`/campaigns/${campaignId}/engagements/${businessEngagementId}`, campaignBusinessEngagement);
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* ADMIN: Delete campaign business engagement
|
|
224
|
+
* NEW: DELETE /campaign-engagements/{id}/{businessEngagementId}
|
|
225
|
+
*/
|
|
226
|
+
async deleteCampaignBusinessEngagement(campaignId, businessEngagementId) {
|
|
227
|
+
return this.apiClient.delete(`/campaigns/${campaignId}/engagements/${businessEngagementId}`);
|
|
228
|
+
}
|
|
229
|
+
// ==========================================
|
|
230
|
+
// CLAIMS PROCESSING (/campaign-claims)
|
|
231
|
+
// ==========================================
|
|
232
|
+
/**
|
|
233
|
+
* USER: Claim campaign reward
|
|
234
|
+
*/
|
|
235
|
+
async claimCampaign(request) {
|
|
236
|
+
return this.apiClient.post('/campaigns/claims', request);
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Unified claims retrieval method with pagination
|
|
240
|
+
* Routes to appropriate endpoint based on filters:
|
|
241
|
+
* - No filters: Admin gets all claims
|
|
242
|
+
* - With userId/campaignId/businessId: Admin gets filtered claims
|
|
243
|
+
*
|
|
244
|
+
* @param filters - Filter and pagination options
|
|
245
|
+
* @returns Paginated list of campaign claims
|
|
246
|
+
*
|
|
247
|
+
* @example
|
|
248
|
+
* ```typescript
|
|
249
|
+
* // Admin: Get all claims
|
|
250
|
+
* const allClaims = await campaignApi.getClaims();
|
|
251
|
+
*
|
|
252
|
+
* // Admin: Get claims for specific user
|
|
253
|
+
* const userClaims = await campaignApi.getClaims({ userId: 'user-123' });
|
|
254
|
+
*
|
|
255
|
+
* // Admin: Get claims for specific campaign (paginated)
|
|
256
|
+
* const page1 = await campaignApi.getClaims({
|
|
257
|
+
* campaignId: 'campaign-123',
|
|
258
|
+
* page: 1,
|
|
259
|
+
* limit: 50
|
|
260
|
+
* });
|
|
261
|
+
*
|
|
262
|
+
* // Admin: Get claims with multiple filters
|
|
263
|
+
* const filtered = await campaignApi.getClaims({
|
|
264
|
+
* businessId: 'business-456',
|
|
265
|
+
* page: 2
|
|
266
|
+
* });
|
|
267
|
+
* ```
|
|
268
|
+
*/
|
|
269
|
+
async getClaims(filters) {
|
|
270
|
+
const params = buildPaginationParams(filters);
|
|
271
|
+
// Add filter parameters
|
|
272
|
+
if (filters?.campaignId)
|
|
273
|
+
params.set('campaignId', filters.campaignId);
|
|
274
|
+
if (filters?.userId)
|
|
275
|
+
params.set('userId', filters.userId);
|
|
276
|
+
if (filters?.businessId)
|
|
277
|
+
params.set('businessId', filters.businessId);
|
|
278
|
+
const endpoint = `/campaigns/claims?${params.toString()}`;
|
|
279
|
+
const response = await this.apiClient.get(endpoint);
|
|
280
|
+
return normalizeToPaginated(response);
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* USER: Get logged-in user's own campaign claims
|
|
284
|
+
* Uses /me endpoint for authenticated user context
|
|
285
|
+
*
|
|
286
|
+
* @param options - Pagination options
|
|
287
|
+
* @returns Paginated list of user's claims
|
|
288
|
+
*/
|
|
289
|
+
async getClaimsLoggedUser(options) {
|
|
290
|
+
const params = buildPaginationParams(options);
|
|
291
|
+
const response = await this.apiClient.get(`/campaigns/claims/me?${params.toString()}`);
|
|
292
|
+
return normalizeToPaginated(response);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* Platform-Agnostic Campaign Service
|
|
298
|
+
*
|
|
299
|
+
* Contains campaign business logic and operations that work across platforms.
|
|
300
|
+
* No framework dependencies - pure TypeScript business logic.
|
|
301
|
+
*
|
|
302
|
+
* Focuses only on actual backend capabilities.
|
|
303
|
+
*/
|
|
304
|
+
class CampaignService {
|
|
305
|
+
constructor(campaignApi) {
|
|
306
|
+
this.campaignApi = campaignApi;
|
|
307
|
+
}
|
|
308
|
+
// ==========================================
|
|
309
|
+
// PUBLIC OPERATIONS
|
|
310
|
+
// ==========================================
|
|
311
|
+
/**
|
|
312
|
+
* PUBLIC: Get campaign by ID
|
|
313
|
+
*/
|
|
314
|
+
async getCampaignById(id) {
|
|
315
|
+
return this.campaignApi.getCampaignById(id);
|
|
316
|
+
}
|
|
317
|
+
// ==========================================
|
|
318
|
+
// AUTHENTICATED OPERATIONS
|
|
319
|
+
// ==========================================
|
|
320
|
+
/**
|
|
321
|
+
* AUTH: Claim campaign
|
|
322
|
+
*/
|
|
323
|
+
async claimCampaign(request) {
|
|
324
|
+
return this.campaignApi.claimCampaign(request);
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* AUTH: Get claims for logged user with pagination
|
|
328
|
+
*/
|
|
329
|
+
async getClaimsForLoggedUser(options) {
|
|
330
|
+
return this.campaignApi.getClaimsLoggedUser(options);
|
|
331
|
+
}
|
|
332
|
+
// ==========================================
|
|
333
|
+
// CAMPAIGN OPERATIONS (Paginated)
|
|
334
|
+
// ==========================================
|
|
335
|
+
/**
|
|
336
|
+
* Get campaigns with pagination support
|
|
337
|
+
* Intelligent access: Public gets active only, Business gets own campaigns, Admin gets all
|
|
338
|
+
* @param options.active - Filter by active status
|
|
339
|
+
* @param options.businessId - Filter by business engagement
|
|
340
|
+
* @param options.page - Page number (1-based, default: 1)
|
|
341
|
+
* @param options.limit - Items per page (default: 50)
|
|
342
|
+
* @param options.sortBy - Sort field
|
|
343
|
+
* @param options.sortOrder - Sort direction
|
|
344
|
+
*/
|
|
345
|
+
async getCampaigns(options) {
|
|
346
|
+
return this.campaignApi.getCampaigns(options);
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* ADMIN: Get campaign triggers with pagination
|
|
350
|
+
*/
|
|
351
|
+
async getCampaignTriggers(options) {
|
|
352
|
+
return this.campaignApi.getCampaignTriggers(options);
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* ADMIN: Toggle campaign active status
|
|
356
|
+
*/
|
|
357
|
+
async toggleCampaignActive(campaignId) {
|
|
358
|
+
return this.campaignApi.toggleCampaignActive(campaignId);
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* ADMIN: Toggle campaign testnet environment
|
|
362
|
+
*/
|
|
363
|
+
async toggleCampaignTestnet(campaignId) {
|
|
364
|
+
return this.campaignApi.toggleCampaignTestnet(campaignId);
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* ADMIN: Create campaign
|
|
368
|
+
*/
|
|
369
|
+
async createCampaign(campaign) {
|
|
370
|
+
return this.campaignApi.createCampaign(campaign);
|
|
371
|
+
}
|
|
372
|
+
/**
|
|
373
|
+
* ADMIN: Set campaign trigger
|
|
374
|
+
*/
|
|
375
|
+
async setCampaignTrigger(campaignId, triggerId) {
|
|
376
|
+
return this.campaignApi.setCampaignTrigger(campaignId, triggerId);
|
|
377
|
+
}
|
|
378
|
+
/**
|
|
379
|
+
* ADMIN: Update campaign
|
|
380
|
+
*/
|
|
381
|
+
async updateCampaign(campaignId, campaign) {
|
|
382
|
+
return this.campaignApi.updateCampaign(campaignId, campaign);
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* ADMIN: Create campaign token unit
|
|
386
|
+
*/
|
|
387
|
+
async createCampaignTokenUnit(campaignId, campaignTokenUnit) {
|
|
388
|
+
return this.campaignApi.createCampaignTokenUnit(campaignId, campaignTokenUnit);
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* ADMIN: Delete campaign token unit
|
|
392
|
+
*/
|
|
393
|
+
async deleteCampaignTokenUnit(campaignId, campaignTokenUnitId) {
|
|
394
|
+
return this.campaignApi.deleteCampaignTokenUnit(campaignId, campaignTokenUnitId);
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* ADMIN: Add business engagement to campaign
|
|
398
|
+
*/
|
|
399
|
+
async addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement) {
|
|
400
|
+
return this.campaignApi.addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement);
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* ADMIN: Update campaign business engagement
|
|
404
|
+
*/
|
|
405
|
+
async updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement) {
|
|
406
|
+
return this.campaignApi.updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement);
|
|
407
|
+
}
|
|
408
|
+
async deleteCampaignBusinessEngagement(campaignId, businessEngagementId) {
|
|
409
|
+
return this.campaignApi.deleteCampaignBusinessEngagement(campaignId, businessEngagementId);
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* ADMIN: Get campaign claims with optional filters and pagination
|
|
413
|
+
*/
|
|
414
|
+
async getCampaignClaims(filters) {
|
|
415
|
+
return this.campaignApi.getClaims(filters);
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* ADMIN: Get campaign claims by user ID with pagination
|
|
419
|
+
*/
|
|
420
|
+
async getCampaignClaimsByUserId(userId, options) {
|
|
421
|
+
return this.campaignApi.getClaims({ userId, ...options });
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* ADMIN: Get campaign claims by business ID with pagination
|
|
425
|
+
*/
|
|
426
|
+
async getCampaignClaimsByBusinessId(businessId, options) {
|
|
427
|
+
return this.campaignApi.getClaims({ businessId, ...options });
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
export { CampaignApi, CampaignService };
|
|
4
432
|
//# sourceMappingURL=campaign.js.map
|
package/dist/campaign.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"campaign.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
|
1
|
+
{"version":3,"file":"campaign.js","sources":["../src/campaign/api/campaign-api.ts","../src/campaign/services/campaign-service.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
|