@explorins/pers-sdk 1.1.2 → 1.2.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/analytics/api/analytics-api.d.ts +17 -0
- package/dist/analytics/api/analytics-api.d.ts.map +1 -0
- package/{src/analytics/index.ts → dist/analytics/index.d.ts} +28 -52
- package/dist/analytics/index.d.ts.map +1 -0
- package/dist/analytics/models/index.d.ts +61 -0
- package/dist/analytics/models/index.d.ts.map +1 -0
- package/dist/analytics/services/analytics-service.d.ts +19 -0
- package/dist/analytics/services/analytics-service.d.ts.map +1 -0
- package/dist/analytics.cjs +76 -0
- package/dist/analytics.cjs.map +1 -0
- package/dist/analytics.js +72 -0
- package/dist/analytics.js.map +1 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts +27 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts.map +1 -0
- package/dist/auth-admin/index.d.ts +26 -0
- package/dist/auth-admin/index.d.ts.map +1 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts +23 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts.map +1 -0
- package/dist/auth-admin.cjs +96 -0
- package/dist/auth-admin.cjs.map +1 -0
- package/dist/auth-admin.js +92 -0
- package/dist/auth-admin.js.map +1 -0
- package/dist/business/api/business-api.d.ts +133 -0
- package/dist/business/api/business-api.d.ts.map +1 -0
- package/dist/business/index.d.ts +34 -0
- package/dist/business/index.d.ts.map +1 -0
- package/dist/business/models/index.d.ts +8 -0
- package/dist/business/models/index.d.ts.map +1 -0
- package/dist/business/services/business-service.d.ts +51 -0
- package/dist/business/services/business-service.d.ts.map +1 -0
- package/dist/business.cjs +303 -0
- package/dist/business.cjs.map +1 -0
- package/dist/business.js +299 -0
- package/dist/business.js.map +1 -0
- package/dist/campaign/api/campaign-api.d.ts +213 -0
- package/dist/campaign/api/campaign-api.d.ts.map +1 -0
- package/dist/campaign/index.d.ts +44 -0
- package/dist/campaign/index.d.ts.map +1 -0
- package/dist/campaign/services/campaign-service.d.ts +88 -0
- package/dist/campaign/services/campaign-service.d.ts.map +1 -0
- package/dist/campaign.cjs +506 -0
- package/dist/campaign.cjs.map +1 -0
- package/dist/campaign.js +502 -0
- package/dist/campaign.js.map +1 -0
- package/dist/core/abstractions/http-client.d.ts +22 -0
- package/dist/core/abstractions/http-client.d.ts.map +1 -0
- package/dist/core/auth/auth-provider.interface.d.ts +12 -0
- package/dist/core/auth/auth-provider.interface.d.ts.map +1 -0
- package/dist/core/auth/create-auth-provider.d.ts +27 -0
- package/dist/core/auth/create-auth-provider.d.ts.map +1 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts +15 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts.map +1 -0
- package/dist/core/index.d.ts +13 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/pers-api-client.d.ts +54 -0
- package/dist/core/pers-api-client.d.ts.map +1 -0
- package/dist/core/pers-config.d.ts +38 -0
- package/dist/core/pers-config.d.ts.map +1 -0
- package/dist/core/utils/jwt.function.d.ts +2 -0
- package/dist/core/utils/jwt.function.d.ts.map +1 -0
- package/dist/core.cjs +506 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.js +497 -0
- package/dist/core.js.map +1 -0
- package/dist/donation/api/donation-api.d.ts +18 -0
- package/dist/donation/api/donation-api.d.ts.map +1 -0
- package/dist/donation/index.d.ts +25 -0
- package/dist/donation/index.d.ts.map +1 -0
- package/{src/donation/models/index.ts → dist/donation/models/index.d.ts} +8 -11
- package/dist/donation/models/index.d.ts.map +1 -0
- package/dist/donation/services/donation-service.d.ts +19 -0
- package/dist/donation/services/donation-service.d.ts.map +1 -0
- package/dist/donation.cjs +78 -0
- package/dist/donation.cjs.map +1 -0
- package/dist/donation.js +74 -0
- package/dist/donation.js.map +1 -0
- package/dist/index.cjs +4217 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4164 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +129 -0
- package/dist/payment/api/payment-api.d.ts +105 -0
- package/dist/payment/api/payment-api.d.ts.map +1 -0
- package/dist/payment/index.d.ts +36 -0
- package/dist/payment/index.d.ts.map +1 -0
- package/dist/payment/models/index.d.ts +12 -0
- package/dist/payment/models/index.d.ts.map +1 -0
- package/dist/payment/services/payment-service.d.ts +40 -0
- package/dist/payment/services/payment-service.d.ts.map +1 -0
- package/dist/payment.cjs +258 -0
- package/dist/payment.cjs.map +1 -0
- package/dist/payment.js +254 -0
- package/dist/payment.js.map +1 -0
- package/dist/pers-sdk.d.ts +29 -0
- package/dist/pers-sdk.d.ts.map +1 -0
- package/dist/redemption/api/redemption-api.d.ts +147 -0
- package/dist/redemption/api/redemption-api.d.ts.map +1 -0
- package/dist/redemption/index.d.ts +35 -0
- package/dist/redemption/index.d.ts.map +1 -0
- package/dist/redemption/models/index.d.ts +8 -0
- package/dist/redemption/models/index.d.ts.map +1 -0
- package/dist/redemption/services/redemption-service.d.ts +56 -0
- package/dist/redemption/services/redemption-service.d.ts.map +1 -0
- package/dist/redemption.cjs +333 -0
- package/dist/redemption.cjs.map +1 -0
- package/dist/redemption.js +329 -0
- package/dist/redemption.js.map +1 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +18 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -0
- package/dist/tenant/api/tenant-api.d.ts +56 -0
- package/dist/tenant/api/tenant-api.d.ts.map +1 -0
- package/dist/tenant/index.d.ts +34 -0
- package/dist/tenant/index.d.ts.map +1 -0
- package/dist/tenant/models/index.d.ts +11 -0
- package/dist/tenant/models/index.d.ts.map +1 -0
- package/dist/tenant/services/tenant-service.d.ts +46 -0
- package/dist/tenant/services/tenant-service.d.ts.map +1 -0
- package/dist/tenant.cjs +177 -0
- package/dist/tenant.cjs.map +1 -0
- package/dist/tenant.js +173 -0
- package/dist/tenant.js.map +1 -0
- package/dist/token/api/token-api.d.ts +64 -0
- package/dist/token/api/token-api.d.ts.map +1 -0
- package/dist/token/base/base-token-service.d.ts +87 -0
- package/dist/token/base/base-token-service.d.ts.map +1 -0
- package/dist/token/index.d.ts +13 -0
- package/dist/token/index.d.ts.map +1 -0
- package/dist/token/models/index.d.ts +18 -0
- package/dist/token/models/index.d.ts.map +1 -0
- package/dist/token/services/token-service.d.ts +68 -0
- package/dist/token/services/token-service.d.ts.map +1 -0
- package/dist/token/token-sdk.d.ts +140 -0
- package/dist/token/token-sdk.d.ts.map +1 -0
- package/dist/token.cjs +537 -0
- package/dist/token.cjs.map +1 -0
- package/dist/token.js +532 -0
- package/dist/token.js.map +1 -0
- package/dist/transaction/api/transaction-api.d.ts +133 -0
- package/dist/transaction/api/transaction-api.d.ts.map +1 -0
- package/dist/transaction/index.d.ts +38 -0
- package/dist/transaction/index.d.ts.map +1 -0
- package/dist/transaction/models/index.d.ts +42 -0
- package/dist/transaction/models/index.d.ts.map +1 -0
- package/dist/transaction/services/transaction-service.d.ts +56 -0
- package/dist/transaction/services/transaction-service.d.ts.map +1 -0
- package/dist/transaction.cjs +394 -0
- package/dist/transaction.cjs.map +1 -0
- package/dist/transaction.js +390 -0
- package/dist/transaction.js.map +1 -0
- package/dist/user/api/user-api.d.ts +56 -0
- package/dist/user/api/user-api.d.ts.map +1 -0
- package/dist/user/index.d.ts +36 -0
- package/dist/user/index.d.ts.map +1 -0
- package/{src/user/models/index.ts → dist/user/models/index.d.ts} +12 -10
- package/dist/user/models/index.d.ts.map +1 -0
- package/dist/user/services/user-service.d.ts +46 -0
- package/dist/user/services/user-service.d.ts.map +1 -0
- package/dist/user-status/api/user-status-api.d.ts +37 -0
- package/dist/user-status/api/user-status-api.d.ts.map +1 -0
- package/dist/user-status/index.d.ts +28 -0
- package/dist/user-status/index.d.ts.map +1 -0
- package/{src/user-status/models/index.ts → dist/user-status/models/index.d.ts} +8 -11
- package/dist/user-status/models/index.d.ts.map +1 -0
- package/dist/user-status/services/user-status-service.d.ts +26 -0
- package/dist/user-status/services/user-status-service.d.ts.map +1 -0
- package/dist/user-status.cjs +147 -0
- package/dist/user-status.cjs.map +1 -0
- package/dist/user-status.js +143 -0
- package/dist/user-status.js.map +1 -0
- package/dist/user.cjs +188 -0
- package/dist/user.cjs.map +1 -0
- package/dist/user.js +184 -0
- package/dist/user.js.map +1 -0
- package/dist/web3/api/web3-api.d.ts +27 -0
- package/dist/web3/api/web3-api.d.ts.map +1 -0
- package/dist/web3/index.d.ts +16 -0
- package/dist/web3/index.d.ts.map +1 -0
- package/dist/web3/models/index.d.ts +92 -0
- package/dist/web3/models/index.d.ts.map +1 -0
- package/dist/web3/services/web3-service.d.ts +21 -0
- package/dist/web3/services/web3-service.d.ts.map +1 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts +19 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts.map +1 -0
- package/dist/web3-chain/index.d.ts +17 -0
- package/dist/web3-chain/index.d.ts.map +1 -0
- package/{src/web3-chain/models/index.ts → dist/web3-chain/models/index.d.ts} +38 -45
- package/dist/web3-chain/models/index.d.ts.map +1 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts +8 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -0
- package/dist/web3-chain/services/provider.service.d.ts +15 -0
- package/dist/web3-chain/services/provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts +8 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts +17 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -0
- package/dist/web3-chain.cjs +316 -0
- package/dist/web3-chain.cjs.map +1 -0
- package/dist/web3-chain.js +310 -0
- package/dist/web3-chain.js.map +1 -0
- package/dist/web3.cjs +516 -0
- package/dist/web3.cjs.map +1 -0
- package/dist/web3.js +513 -0
- package/dist/web3.js.map +1 -0
- package/package.json +56 -72
- package/config/domains.js +0 -22
- package/explorins-pers-sdk-1.0.0-alpha.1.tgz +0 -0
- package/rollup.config.js +0 -74
- package/scripts/copy-declarations.js +0 -147
- package/src/analytics/api/analytics-api.ts +0 -24
- package/src/analytics/models/index.ts +0 -74
- package/src/analytics/services/analytics-service.ts +0 -28
- package/src/auth-admin/api/auth-admin-api.ts +0 -42
- package/src/auth-admin/index.ts +0 -47
- package/src/auth-admin/services/auth-admin-service.ts +0 -36
- package/src/business/api/business-api.ts +0 -234
- package/src/business/index.ts +0 -53
- package/src/business/models/index.ts +0 -13
- package/src/business/services/business-service.ts +0 -88
- package/src/campaign/api/campaign-api.ts +0 -376
- package/src/campaign/index.ts +0 -67
- package/src/campaign/services/campaign-service.ts +0 -164
- package/src/core/abstractions/http-client.ts +0 -24
- package/src/core/auth/auth-provider.interface.ts +0 -16
- package/src/core/auth/create-auth-provider.ts +0 -136
- package/src/core/auth/simple-auth-config.interface.ts +0 -15
- package/src/core/index.ts +0 -33
- package/src/core/pers-api-client.ts +0 -343
- package/src/core/pers-config.ts +0 -65
- package/src/core/utils/jwt.function.ts +0 -24
- package/src/donation/api/donation-api.ts +0 -24
- package/src/donation/index.ts +0 -47
- package/src/donation/services/donation-service.ts +0 -25
- package/src/index.ts +0 -55
- package/src/payment/api/payment-api.ts +0 -185
- package/src/payment/index.ts +0 -64
- package/src/payment/models/index.ts +0 -29
- package/src/payment/services/payment-service.ts +0 -70
- package/src/pers-sdk.ts +0 -45
- package/src/redemption/api/redemption-api.ts +0 -241
- package/src/redemption/index.ts +0 -60
- package/src/redemption/models/index.ts +0 -17
- package/src/redemption/services/redemption-service.ts +0 -103
- package/src/shared/interfaces/pers-shared-lib.interfaces.ts +0 -99
- package/src/tenant/api/tenant-api.ts +0 -92
- package/src/tenant/index.ts +0 -61
- package/src/tenant/models/index.ts +0 -20
- package/src/tenant/services/tenant-service.ts +0 -78
- package/src/token/api/token-api.ts +0 -129
- package/src/token/base/base-token-service.ts +0 -167
- package/src/token/index.ts +0 -38
- package/src/token/models/index.ts +0 -30
- package/src/token/services/token-service.ts +0 -125
- package/src/token/token-sdk.ts +0 -231
- package/src/transaction/api/transaction-api.ts +0 -296
- package/src/transaction/index.ts +0 -65
- package/src/transaction/models/index.ts +0 -60
- package/src/transaction/services/transaction-service.ts +0 -104
- package/src/user/api/user-api.ts +0 -98
- package/src/user/index.ts +0 -62
- package/src/user/services/user-service.ts +0 -75
- package/src/user-status/api/user-status-api.ts +0 -78
- package/src/user-status/index.ts +0 -55
- package/src/user-status/services/user-status-service.ts +0 -51
- package/src/web3/api/web3-api.ts +0 -68
- package/src/web3/index.ts +0 -38
- package/src/web3/models/index.ts +0 -150
- package/src/web3/services/web3-service.ts +0 -338
- package/src/web3-chain/api/web3-chain-api.ts +0 -42
- package/src/web3-chain/index.ts +0 -27
- package/src/web3-chain/services/getWeb3FCD.service.ts +0 -47
- package/src/web3-chain/services/provider.service.ts +0 -123
- package/src/web3-chain/services/public-http-provider.service.ts +0 -26
- package/src/web3-chain/services/web3-chain-service.ts +0 -131
- package/tsconfig.json +0 -28
|
@@ -0,0 +1,506 @@
|
|
|
1
|
+
'use strict';
|
|
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
|
+
* PUBLIC: Get all active campaigns
|
|
26
|
+
* NEW: /campaigns (intelligent access detection)
|
|
27
|
+
*/
|
|
28
|
+
async getActiveCampaigns() {
|
|
29
|
+
return this.apiClient.get('/campaigns');
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* ADMIN: Get campaigns with filtering options
|
|
33
|
+
* NEW: /campaigns with query parameters (admin access detected automatically)
|
|
34
|
+
*/
|
|
35
|
+
async getCampaigns(options) {
|
|
36
|
+
let url = '/campaigns';
|
|
37
|
+
const params = [];
|
|
38
|
+
if (options) {
|
|
39
|
+
if (options.active !== undefined)
|
|
40
|
+
params.push(`active=${options.active}`);
|
|
41
|
+
if (options.tag)
|
|
42
|
+
params.push(`tag=${encodeURIComponent(options.tag)}`);
|
|
43
|
+
if (options.limit)
|
|
44
|
+
params.push(`limit=${options.limit}`);
|
|
45
|
+
if (options.offset)
|
|
46
|
+
params.push(`offset=${options.offset}`);
|
|
47
|
+
if (options.sort)
|
|
48
|
+
params.push(`sort=${options.sort}`);
|
|
49
|
+
if (options.order)
|
|
50
|
+
params.push(`order=${options.order}`);
|
|
51
|
+
}
|
|
52
|
+
if (params.length > 0) {
|
|
53
|
+
url += `?${params.join('&')}`;
|
|
54
|
+
}
|
|
55
|
+
return this.apiClient.get(url);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* PUBLIC: Get campaign by ID
|
|
59
|
+
* NEW: /campaigns/{id}
|
|
60
|
+
*/
|
|
61
|
+
async getCampaignById(id) {
|
|
62
|
+
return this.apiClient.get(`/campaigns/${id}`);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* ADMIN: Create campaign
|
|
66
|
+
* NEW: POST /campaigns
|
|
67
|
+
*/
|
|
68
|
+
async createCampaign(campaign) {
|
|
69
|
+
return this.apiClient.post('/campaigns', campaign);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* ADMIN: Update campaign
|
|
73
|
+
* NEW: PUT /campaigns/{id}
|
|
74
|
+
*/
|
|
75
|
+
async updateCampaign(campaignId, campaign) {
|
|
76
|
+
return this.apiClient.put(`/campaigns/${campaignId}`, campaign);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* ADMIN: Toggle campaign active status
|
|
80
|
+
* NEW: PUT /campaigns/{id}/status
|
|
81
|
+
*/
|
|
82
|
+
async toggleCampaignActive(campaignId) {
|
|
83
|
+
return this.apiClient.put(`/campaigns/${campaignId}/status`, {});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* ADMIN: Toggle campaign testnet environment
|
|
87
|
+
* NEW: PUT /campaigns/{id}/environment
|
|
88
|
+
*/
|
|
89
|
+
async toggleCampaignTestnet(campaignId) {
|
|
90
|
+
return this.apiClient.put(`/campaigns/${campaignId}/environment`, {});
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* ADMIN: Delete campaign
|
|
94
|
+
* NEW: DELETE /campaigns/{id}
|
|
95
|
+
*/
|
|
96
|
+
async deleteCampaign(campaignId) {
|
|
97
|
+
return this.apiClient.delete(`/campaigns/${campaignId}`);
|
|
98
|
+
}
|
|
99
|
+
// ==========================================
|
|
100
|
+
// TAG MANAGEMENT (/campaign-tags)
|
|
101
|
+
// ==========================================
|
|
102
|
+
/**
|
|
103
|
+
* ADMIN: Get all unique campaign tags
|
|
104
|
+
* NEW: GET /campaign-tags
|
|
105
|
+
*/
|
|
106
|
+
async getAllUniqueTags() {
|
|
107
|
+
return this.apiClient.get('/campaign-tags');
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* ADMIN: Update campaign tags (replace all)
|
|
111
|
+
* NEW: PUT /campaign-tags/{id}
|
|
112
|
+
*/
|
|
113
|
+
async updateCampaignTags(campaignId, tags) {
|
|
114
|
+
return this.apiClient.put(`/campaign-tags/${campaignId}`, { tags });
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* ADMIN: Add tags to campaign
|
|
118
|
+
* NEW: POST /campaign-tags/{id}
|
|
119
|
+
*/
|
|
120
|
+
async addTagsToCampaign(campaignId, tags) {
|
|
121
|
+
return this.apiClient.post(`/campaign-tags/${campaignId}`, { tags });
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* ADMIN: Remove tag from campaign
|
|
125
|
+
* NEW: DELETE /campaign-tags/{id}/{tag}
|
|
126
|
+
*/
|
|
127
|
+
async removeTagFromCampaign(campaignId, tag) {
|
|
128
|
+
return this.apiClient.delete(`/campaign-tags/${campaignId}/${encodeURIComponent(tag)}`);
|
|
129
|
+
}
|
|
130
|
+
// ==========================================
|
|
131
|
+
// TOKEN MANAGEMENT (/campaign-tokens)
|
|
132
|
+
// ==========================================
|
|
133
|
+
/**
|
|
134
|
+
* ADMIN: Create campaign token unit
|
|
135
|
+
* NEW: POST /campaign-tokens/{id}
|
|
136
|
+
*/
|
|
137
|
+
async createCampaignTokenUnit(campaignId, campaignTokenUnit) {
|
|
138
|
+
return this.apiClient.post(`/campaign-tokens/${campaignId}`, campaignTokenUnit);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* ADMIN: Update campaign token unit
|
|
142
|
+
* NEW: PUT /campaign-tokens/{id}/{tokenUnitId}
|
|
143
|
+
*/
|
|
144
|
+
async updateCampaignTokenUnit(campaignId, tokenUnitId, campaignTokenUnit) {
|
|
145
|
+
return this.apiClient.put(`/campaign-tokens/${campaignId}/${tokenUnitId}`, campaignTokenUnit);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* ADMIN: Delete campaign token unit
|
|
149
|
+
* NEW: DELETE /campaign-tokens/{id}/{tokenUnitId}
|
|
150
|
+
*/
|
|
151
|
+
async deleteCampaignTokenUnit(campaignId, campaignTokenUnitId) {
|
|
152
|
+
return this.apiClient.delete(`/campaign-tokens/${campaignId}/${campaignTokenUnitId}`);
|
|
153
|
+
}
|
|
154
|
+
// ==========================================
|
|
155
|
+
// TRIGGER SYSTEM (/campaign-triggers)
|
|
156
|
+
// ==========================================
|
|
157
|
+
/**
|
|
158
|
+
* PUBLIC: Get campaign triggers catalog
|
|
159
|
+
* NEW: GET /campaign-triggers
|
|
160
|
+
*/
|
|
161
|
+
async getCampaignTriggers() {
|
|
162
|
+
return this.apiClient.get('/campaign-triggers');
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* ADMIN: Create campaign trigger
|
|
166
|
+
* NEW: POST /campaign-triggers
|
|
167
|
+
*/
|
|
168
|
+
async createCampaignTrigger(trigger) {
|
|
169
|
+
return this.apiClient.post('/campaign-triggers', trigger);
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* ADMIN: Update campaign trigger
|
|
173
|
+
* NEW: PUT /campaign-triggers/{id}
|
|
174
|
+
*/
|
|
175
|
+
async updateCampaignTrigger(triggerId, trigger) {
|
|
176
|
+
return this.apiClient.put(`/campaign-triggers/${triggerId}`, trigger);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* ADMIN: Delete campaign trigger
|
|
180
|
+
* NEW: DELETE /campaign-triggers/{id}
|
|
181
|
+
*/
|
|
182
|
+
async deleteCampaignTrigger(triggerId) {
|
|
183
|
+
return this.apiClient.delete(`/campaign-triggers/${triggerId}`);
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* ADMIN: Set campaign trigger
|
|
187
|
+
* NEW: PUT /campaign-triggers/campaigns/{id}/trigger/{triggerId}
|
|
188
|
+
*/
|
|
189
|
+
async setCampaignTrigger(campaignId, triggerId) {
|
|
190
|
+
return this.apiClient.put(`/campaign-triggers/campaigns/${campaignId}/trigger/${triggerId}`, {});
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* ADMIN: Create trigger condition
|
|
194
|
+
* NEW: POST /campaign-triggers/conditions
|
|
195
|
+
*/
|
|
196
|
+
async createTriggerCondition(condition) {
|
|
197
|
+
return this.apiClient.post('/campaign-triggers/conditions', condition);
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* ADMIN: Update trigger condition
|
|
201
|
+
* NEW: PUT /campaign-triggers/conditions/{id}
|
|
202
|
+
*/
|
|
203
|
+
async updateTriggerCondition(conditionId, condition) {
|
|
204
|
+
return this.apiClient.put(`/campaign-triggers/conditions/${conditionId}`, condition);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* ADMIN: Add/Remove condition to trigger
|
|
208
|
+
* NEW: PUT /campaign-triggers/{triggerId}/condition/{conditionId}
|
|
209
|
+
*/
|
|
210
|
+
async addOrRemoveConditionToTrigger(triggerId, conditionId) {
|
|
211
|
+
return this.apiClient.put(`/campaign-triggers/${triggerId}/condition/${conditionId}`, {});
|
|
212
|
+
}
|
|
213
|
+
// ==========================================
|
|
214
|
+
// BUSINESS ENGAGEMENTS (/campaign-engagements)
|
|
215
|
+
// ==========================================
|
|
216
|
+
/**
|
|
217
|
+
* ADMIN: Add business engagement to campaign
|
|
218
|
+
* NEW: POST /campaign-engagements/{id}
|
|
219
|
+
*/
|
|
220
|
+
async addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement) {
|
|
221
|
+
return this.apiClient.post(`/campaign-engagements/${campaignId}`, campaignBusinessEngagement);
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* ADMIN: Update campaign business engagement
|
|
225
|
+
* NEW: PUT /campaign-engagements/{id}/{businessEngagementId}
|
|
226
|
+
*/
|
|
227
|
+
async updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement) {
|
|
228
|
+
return this.apiClient.put(`/campaign-engagements/${campaignId}/${businessEngagementId}`, campaignBusinessEngagement);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* ADMIN: Delete campaign business engagement
|
|
232
|
+
* NEW: DELETE /campaign-engagements/{id}/{businessEngagementId}
|
|
233
|
+
*/
|
|
234
|
+
async deleteCampaignBusinessEngagement(campaignId, businessEngagementId) {
|
|
235
|
+
return this.apiClient.delete(`/campaign-engagements/${campaignId}/${businessEngagementId}`);
|
|
236
|
+
}
|
|
237
|
+
// ==========================================
|
|
238
|
+
// CLAIMS PROCESSING (/campaign-claims)
|
|
239
|
+
// ==========================================
|
|
240
|
+
/**
|
|
241
|
+
* USER: Claim campaign reward
|
|
242
|
+
* NEW: POST /campaign-claims/user
|
|
243
|
+
*/
|
|
244
|
+
async claimCampaign(request) {
|
|
245
|
+
return this.apiClient.post('/campaign-claims/user', request);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* USER: Get claims for logged user
|
|
249
|
+
* NEW: GET /campaign-claims/users/me
|
|
250
|
+
*/
|
|
251
|
+
async getClaimsForLoggedUser() {
|
|
252
|
+
return this.apiClient.get('/campaign-claims/users/me');
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* BUSINESS: Claim campaign reward for customer
|
|
256
|
+
* NEW: POST /campaign-claims/business
|
|
257
|
+
*/
|
|
258
|
+
async businessClaimCampaign(request) {
|
|
259
|
+
return this.apiClient.post('/campaign-claims/business', request);
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* SYSTEM: Process automated claim
|
|
263
|
+
* NEW: POST /campaign-claims/system
|
|
264
|
+
*/
|
|
265
|
+
async systemClaimCampaign(request) {
|
|
266
|
+
return this.apiClient.post('/campaign-claims/system', request);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* ADMIN: Manual claim processing
|
|
270
|
+
* NEW: POST /campaign-claims/admin
|
|
271
|
+
*/
|
|
272
|
+
async adminClaimCampaign(request) {
|
|
273
|
+
return this.apiClient.post('/campaign-claims/admin', request);
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* ADMIN: Get all campaign claims
|
|
277
|
+
* NEW: GET /campaign-claims/admin
|
|
278
|
+
*/
|
|
279
|
+
async getCampaignClaims() {
|
|
280
|
+
return this.apiClient.get('/campaign-claims/admin');
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* ADMIN: Get campaign claims by campaign ID
|
|
284
|
+
* NEW: GET /campaign-claims/admin/{campaignId}
|
|
285
|
+
*/
|
|
286
|
+
async getCampaignClaimsByCampaignId(campaignId) {
|
|
287
|
+
return this.apiClient.get(`/campaign-claims/admin/${campaignId}`);
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* ADMIN: Get campaign claims by user ID
|
|
291
|
+
* NEW: GET /campaign-claims/admin/users/{userId}
|
|
292
|
+
*/
|
|
293
|
+
async getCampaignClaimsByUserId(userId) {
|
|
294
|
+
return this.apiClient.get(`/campaign-claims/admin/users/${userId}`);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* ADMIN: Get campaign claims by business ID
|
|
298
|
+
* NEW: GET /campaign-claims/admin/businesses/{businessId}
|
|
299
|
+
*/
|
|
300
|
+
async getCampaignClaimsByBusinessId(businessId) {
|
|
301
|
+
return this.apiClient.get(`/campaign-claims/admin/businesses/${businessId}`);
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* USER: Get user's claims for specific campaign
|
|
305
|
+
* NEW: GET /campaign-claims/campaigns/{campaignId}/users/me
|
|
306
|
+
*/
|
|
307
|
+
async getUserClaimsForCampaign(campaignId) {
|
|
308
|
+
return this.apiClient.get(`/campaign-claims/campaigns/${campaignId}/users/me`);
|
|
309
|
+
}
|
|
310
|
+
// ==========================================
|
|
311
|
+
// BACKWARD COMPATIBILITY (DEPRECATED)
|
|
312
|
+
// ==========================================
|
|
313
|
+
/**
|
|
314
|
+
* @deprecated Use getCampaigns() instead
|
|
315
|
+
* LEGACY: Get campaigns with active filter
|
|
316
|
+
*/
|
|
317
|
+
async getCampaignsLegacy(active) {
|
|
318
|
+
console.warn('CampaignApi.getCampaignsLegacy() is deprecated. Use getCampaigns() instead.');
|
|
319
|
+
return this.getCampaigns(active !== undefined ? { active } : undefined);
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* Platform-Agnostic Campaign Service
|
|
325
|
+
*
|
|
326
|
+
* Contains campaign business logic and operations that work across platforms.
|
|
327
|
+
* No framework dependencies - pure TypeScript business logic.
|
|
328
|
+
*
|
|
329
|
+
* Focuses only on actual backend capabilities.
|
|
330
|
+
*/
|
|
331
|
+
class CampaignService {
|
|
332
|
+
constructor(campaignApi) {
|
|
333
|
+
this.campaignApi = campaignApi;
|
|
334
|
+
}
|
|
335
|
+
// ==========================================
|
|
336
|
+
// PUBLIC OPERATIONS
|
|
337
|
+
// ==========================================
|
|
338
|
+
/**
|
|
339
|
+
* PUBLIC: Get all active campaigns
|
|
340
|
+
*/
|
|
341
|
+
async getActiveCampaigns() {
|
|
342
|
+
return this.campaignApi.getActiveCampaigns();
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* PUBLIC: Get campaign by ID
|
|
346
|
+
*/
|
|
347
|
+
async getCampaignById(id) {
|
|
348
|
+
return this.campaignApi.getCampaignById(id);
|
|
349
|
+
}
|
|
350
|
+
// ==========================================
|
|
351
|
+
// AUTHENTICATED OPERATIONS
|
|
352
|
+
// ==========================================
|
|
353
|
+
/**
|
|
354
|
+
* AUTH: Claim campaign
|
|
355
|
+
*/
|
|
356
|
+
async claimCampaign(request) {
|
|
357
|
+
return this.campaignApi.claimCampaign(request);
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* AUTH: Get claims for logged user
|
|
361
|
+
*/
|
|
362
|
+
async getClaimsForLoggedUser() {
|
|
363
|
+
return this.campaignApi.getClaimsForLoggedUser();
|
|
364
|
+
}
|
|
365
|
+
// ==========================================
|
|
366
|
+
// ADMIN OPERATIONS
|
|
367
|
+
// ==========================================
|
|
368
|
+
/**
|
|
369
|
+
* ADMIN: Get campaigns with optional active filter
|
|
370
|
+
*/
|
|
371
|
+
async getCampaigns(active) {
|
|
372
|
+
return this.campaignApi.getCampaigns(active !== undefined ? { active } : undefined);
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* ADMIN: Get campaign triggers
|
|
376
|
+
*/
|
|
377
|
+
async getCampaignTriggers() {
|
|
378
|
+
return this.campaignApi.getCampaignTriggers();
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* ADMIN: Toggle campaign active status
|
|
382
|
+
*/
|
|
383
|
+
async toggleCampaignActive(campaignId) {
|
|
384
|
+
return this.campaignApi.toggleCampaignActive(campaignId);
|
|
385
|
+
}
|
|
386
|
+
/**
|
|
387
|
+
* ADMIN: Toggle campaign testnet environment
|
|
388
|
+
*/
|
|
389
|
+
async toggleCampaignTestnet(campaignId) {
|
|
390
|
+
return this.campaignApi.toggleCampaignTestnet(campaignId);
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* ADMIN: Create campaign
|
|
394
|
+
*/
|
|
395
|
+
async createCampaign(campaign) {
|
|
396
|
+
return this.campaignApi.createCampaign(campaign);
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* ADMIN: Set campaign trigger
|
|
400
|
+
*/
|
|
401
|
+
async setCampaignTrigger(campaignId, triggerId) {
|
|
402
|
+
return this.campaignApi.setCampaignTrigger(campaignId, triggerId);
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* ADMIN: Update campaign
|
|
406
|
+
*/
|
|
407
|
+
async updateCampaign(campaignId, campaign) {
|
|
408
|
+
return this.campaignApi.updateCampaign(campaignId, campaign);
|
|
409
|
+
}
|
|
410
|
+
/**
|
|
411
|
+
* ADMIN: Create campaign token unit
|
|
412
|
+
*/
|
|
413
|
+
async createCampaignTokenUnit(campaignId, campaignTokenUnit) {
|
|
414
|
+
return this.campaignApi.createCampaignTokenUnit(campaignId, campaignTokenUnit);
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* ADMIN: Delete campaign token unit
|
|
418
|
+
*/
|
|
419
|
+
async deleteCampaignTokenUnit(campaignId, campaignTokenUnitId) {
|
|
420
|
+
return this.campaignApi.deleteCampaignTokenUnit(campaignId, campaignTokenUnitId);
|
|
421
|
+
}
|
|
422
|
+
/**
|
|
423
|
+
* ADMIN: Add business engagement to campaign
|
|
424
|
+
*/
|
|
425
|
+
async addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement) {
|
|
426
|
+
return this.campaignApi.addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement);
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* ADMIN: Update campaign business engagement
|
|
430
|
+
*/
|
|
431
|
+
async updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement) {
|
|
432
|
+
return this.campaignApi.updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement);
|
|
433
|
+
}
|
|
434
|
+
async deleteCampaignBusinessEngagement(campaignId, businessEngagementId) {
|
|
435
|
+
return this.campaignApi.deleteCampaignBusinessEngagement(campaignId, businessEngagementId);
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* ADMIN: Get all campaign claims
|
|
439
|
+
*/
|
|
440
|
+
async getCampaignClaims() {
|
|
441
|
+
return this.campaignApi.getCampaignClaims();
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* ADMIN: Get campaign claims by user ID
|
|
445
|
+
*/
|
|
446
|
+
async getCampaignClaimsByUserId(userId) {
|
|
447
|
+
return this.campaignApi.getCampaignClaimsByUserId(userId);
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* ADMIN: Get campaign claims by business ID
|
|
451
|
+
*/
|
|
452
|
+
async getCampaignClaimsByBusinessId(businessId) {
|
|
453
|
+
return this.campaignApi.getCampaignClaimsByBusinessId(businessId);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
/**
|
|
458
|
+
* @explorins/pers-sdk-campaign
|
|
459
|
+
*
|
|
460
|
+
* Platform-agnostic Campaign Domain SDK for PERS ecosystem
|
|
461
|
+
* Handles campaign operations across different authorization levels
|
|
462
|
+
*/
|
|
463
|
+
// API Layer
|
|
464
|
+
/**
|
|
465
|
+
* Create a complete Campaign SDK instance
|
|
466
|
+
*
|
|
467
|
+
* @param apiClient - Configured PERS API client
|
|
468
|
+
* @returns Campaign SDK with flattened structure for better DX
|
|
469
|
+
*/
|
|
470
|
+
function createCampaignSDK(apiClient) {
|
|
471
|
+
const campaignApi = new CampaignApi(apiClient);
|
|
472
|
+
const campaignService = new CampaignService(campaignApi);
|
|
473
|
+
return {
|
|
474
|
+
// Direct access to service methods (primary interface)
|
|
475
|
+
// Public methods
|
|
476
|
+
getActiveCampaigns: () => campaignService.getActiveCampaigns(),
|
|
477
|
+
getCampaignById: (id) => campaignService.getCampaignById(id),
|
|
478
|
+
// Auth methods
|
|
479
|
+
claimCampaign: (request) => campaignService.claimCampaign(request),
|
|
480
|
+
getClaimsForLoggedUser: () => campaignService.getClaimsForLoggedUser(),
|
|
481
|
+
// Admin methods
|
|
482
|
+
getCampaigns: (active) => campaignService.getCampaigns(active),
|
|
483
|
+
getCampaignTriggers: () => campaignService.getCampaignTriggers(),
|
|
484
|
+
toggleCampaignActive: (campaignId) => campaignService.toggleCampaignActive(campaignId),
|
|
485
|
+
toggleCampaignTestnet: (campaignId) => campaignService.toggleCampaignTestnet(campaignId),
|
|
486
|
+
createCampaign: (campaign) => campaignService.createCampaign(campaign),
|
|
487
|
+
setCampaignTrigger: (campaignId, triggerId) => campaignService.setCampaignTrigger(campaignId, triggerId),
|
|
488
|
+
updateCampaign: (campaignId, campaign) => campaignService.updateCampaign(campaignId, campaign),
|
|
489
|
+
createCampaignTokenUnit: (campaignId, campaignTokenUnit) => campaignService.createCampaignTokenUnit(campaignId, campaignTokenUnit),
|
|
490
|
+
deleteCampaignTokenUnit: (campaignId, campaignTokenUnitId) => campaignService.deleteCampaignTokenUnit(campaignId, campaignTokenUnitId),
|
|
491
|
+
addBusinessEngagementToCampaign: (campaignId, campaignBusinessEngagement) => campaignService.addBusinessEngagementToCampaign(campaignId, campaignBusinessEngagement),
|
|
492
|
+
updateCampaignBusinessEngagement: (campaignId, businessEngagementId, campaignBusinessEngagement) => campaignService.updateCampaignBusinessEngagement(campaignId, businessEngagementId, campaignBusinessEngagement),
|
|
493
|
+
deleteCampaignBusinessEngagement: (campaignId, businessEngagementId) => campaignService.deleteCampaignBusinessEngagement(campaignId, businessEngagementId),
|
|
494
|
+
getCampaignClaims: () => campaignService.getCampaignClaims(),
|
|
495
|
+
getCampaignClaimsByUserId: (userId) => campaignService.getCampaignClaimsByUserId(userId),
|
|
496
|
+
getCampaignClaimsByBusinessId: (businessId) => campaignService.getCampaignClaimsByBusinessId(businessId),
|
|
497
|
+
// Advanced access for edge cases
|
|
498
|
+
api: campaignApi,
|
|
499
|
+
service: campaignService
|
|
500
|
+
};
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
exports.CampaignApi = CampaignApi;
|
|
504
|
+
exports.CampaignService = CampaignService;
|
|
505
|
+
exports.createCampaignSDK = createCampaignSDK;
|
|
506
|
+
//# sourceMappingURL=campaign.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign.cjs","sources":["../src/campaign/api/campaign-api.ts","../src/campaign/services/campaign-service.ts","../src/campaign/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
|