@explorins/pers-sdk 2.1.3 → 2.1.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.
- package/dist/analytics/api/analytics-api.d.ts +175 -1
- package/dist/analytics/api/analytics-api.d.ts.map +1 -1
- package/dist/analytics/models/index.d.ts +2 -5
- package/dist/analytics/models/index.d.ts.map +1 -1
- package/dist/analytics/services/analytics-service.d.ts +32 -1
- package/dist/analytics/services/analytics-service.d.ts.map +1 -1
- package/dist/analytics.cjs +9 -44
- package/dist/analytics.cjs.map +1 -1
- package/dist/analytics.js +2 -45
- package/dist/analytics.js.map +1 -1
- package/dist/campaign/api/campaign-api.d.ts +59 -4
- package/dist/campaign/api/campaign-api.d.ts.map +1 -1
- package/dist/campaign/services/campaign-service.d.ts +49 -7
- package/dist/campaign/services/campaign-service.d.ts.map +1 -1
- package/dist/campaign.cjs +150 -14
- package/dist/campaign.cjs.map +1 -1
- package/dist/campaign.js +150 -14
- package/dist/campaign.js.map +1 -1
- package/dist/chunks/analytics-service-B9IfG6ox.js +271 -0
- package/dist/chunks/analytics-service-B9IfG6ox.js.map +1 -0
- package/dist/chunks/analytics-service-DwkeBB08.cjs +274 -0
- package/dist/chunks/analytics-service-DwkeBB08.cjs.map +1 -0
- package/dist/chunks/{pers-sdk-fWg-J3_h.js → pers-sdk-CAM0iQyK.js} +982 -189
- package/dist/chunks/pers-sdk-CAM0iQyK.js.map +1 -0
- package/dist/chunks/{pers-sdk-BQw3QUWR.cjs → pers-sdk-Di_R6AiT.cjs} +986 -190
- package/dist/chunks/pers-sdk-Di_R6AiT.cjs.map +1 -0
- package/dist/chunks/{redemption-service-D-hBqh42.js → redemption-service-CQtTLdic.js} +32 -10
- package/dist/chunks/redemption-service-CQtTLdic.js.map +1 -0
- package/dist/chunks/{redemption-service-rMB6T2W5.cjs → redemption-service-DsH7sRdv.cjs} +32 -10
- package/dist/chunks/redemption-service-DsH7sRdv.cjs.map +1 -0
- package/dist/chunks/{transaction-request.builder-C1vVVFto.js → transaction-request.builder-C8ahJYwi.js} +122 -70
- package/dist/chunks/transaction-request.builder-C8ahJYwi.js.map +1 -0
- package/dist/chunks/{transaction-request.builder-BpgtuMMq.cjs → transaction-request.builder-CkYd5bl6.cjs} +122 -70
- package/dist/chunks/transaction-request.builder-CkYd5bl6.cjs.map +1 -0
- package/dist/core/pers-api-client.d.ts.map +1 -1
- package/dist/core.cjs +5 -4
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +4 -4
- package/dist/index.cjs +13 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/managers/analytics-manager.d.ts +165 -2
- package/dist/managers/analytics-manager.d.ts.map +1 -1
- package/dist/managers/campaign-manager.d.ts +180 -30
- package/dist/managers/campaign-manager.d.ts.map +1 -1
- package/dist/managers/index.d.ts +1 -0
- package/dist/managers/index.d.ts.map +1 -1
- package/dist/managers/redemption-manager.d.ts +52 -2
- package/dist/managers/redemption-manager.d.ts.map +1 -1
- package/dist/managers/transaction-manager.d.ts +66 -131
- package/dist/managers/transaction-manager.d.ts.map +1 -1
- package/dist/managers/trigger-source-manager.d.ts +194 -0
- package/dist/managers/trigger-source-manager.d.ts.map +1 -0
- package/dist/managers/user-manager.d.ts +38 -7
- package/dist/managers/user-manager.d.ts.map +1 -1
- package/dist/node.cjs +4 -4
- package/dist/node.js +4 -4
- package/dist/package.json +2 -2
- package/dist/pers-sdk.d.ts +33 -2
- package/dist/pers-sdk.d.ts.map +1 -1
- package/dist/redemption/api/redemption-api.d.ts +8 -4
- package/dist/redemption/api/redemption-api.d.ts.map +1 -1
- package/dist/redemption/services/redemption-service.d.ts +7 -3
- package/dist/redemption/services/redemption-service.d.ts.map +1 -1
- package/dist/redemption.cjs +1 -1
- package/dist/redemption.js +1 -1
- package/dist/transaction/api/transaction-api.d.ts +37 -42
- package/dist/transaction/api/transaction-api.d.ts.map +1 -1
- package/dist/transaction/models/index.d.ts +21 -0
- package/dist/transaction/models/index.d.ts.map +1 -1
- package/dist/transaction/services/transaction-service.d.ts +10 -15
- package/dist/transaction/services/transaction-service.d.ts.map +1 -1
- package/dist/transaction.cjs +1 -1
- package/dist/transaction.js +1 -1
- package/dist/trigger-source/api/trigger-source-api.d.ts +86 -0
- package/dist/trigger-source/api/trigger-source-api.d.ts.map +1 -0
- package/dist/trigger-source/index.d.ts +9 -0
- package/dist/trigger-source/index.d.ts.map +1 -0
- package/dist/trigger-source/services/trigger-source-service.d.ts +42 -0
- package/dist/trigger-source/services/trigger-source-service.d.ts.map +1 -0
- package/dist/user/api/user-api.d.ts +26 -1
- package/dist/user/api/user-api.d.ts.map +1 -1
- package/dist/user/services/user-service.d.ts +3 -1
- package/dist/user/services/user-service.d.ts.map +1 -1
- package/dist/user.cjs +34 -4
- package/dist/user.cjs.map +1 -1
- package/dist/user.js +34 -4
- package/dist/user.js.map +1 -1
- package/package.json +2 -2
- package/dist/chunks/pers-sdk-BQw3QUWR.cjs.map +0 -1
- package/dist/chunks/pers-sdk-fWg-J3_h.js.map +0 -1
- package/dist/chunks/redemption-service-D-hBqh42.js.map +0 -1
- package/dist/chunks/redemption-service-rMB6T2W5.cjs.map +0 -1
- package/dist/chunks/transaction-request.builder-BpgtuMMq.cjs.map +0 -1
- package/dist/chunks/transaction-request.builder-C1vVVFto.js.map +0 -1
package/dist/core.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var persSdk = require('./chunks/pers-sdk-
|
|
3
|
+
var persSdk = require('./chunks/pers-sdk-Di_R6AiT.cjs');
|
|
4
4
|
var persShared = require('@explorins/pers-shared');
|
|
5
5
|
var environment = require('./chunks/environment-C73snhIJ.cjs');
|
|
6
6
|
var index = require('./chunks/index-B6-bbNnd.cjs');
|
|
@@ -11,11 +11,11 @@ require('./user-status.cjs');
|
|
|
11
11
|
require('./chunks/token-service-BlbXrxnS.cjs');
|
|
12
12
|
require('./chunks/business-membership-service-8KC_qRj7.cjs');
|
|
13
13
|
require('./campaign.cjs');
|
|
14
|
-
require('./chunks/redemption-service-
|
|
15
|
-
require('./chunks/transaction-request.builder-
|
|
14
|
+
require('./chunks/redemption-service-DsH7sRdv.cjs');
|
|
15
|
+
require('./chunks/transaction-request.builder-CkYd5bl6.cjs');
|
|
16
16
|
require('./chunks/payment-service-Bkw7ZXev.cjs');
|
|
17
17
|
require('./chunks/tenant-service-fj-pkXTw.cjs');
|
|
18
|
-
require('./analytics.cjs');
|
|
18
|
+
require('./chunks/analytics-service-DwkeBB08.cjs');
|
|
19
19
|
require('./donation.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
@@ -49,6 +49,7 @@ exports.StaticJwtAuthProvider = persSdk.StaticJwtAuthProvider;
|
|
|
49
49
|
exports.TenantManager = persSdk.TenantManager;
|
|
50
50
|
exports.TokenManager = persSdk.TokenManager;
|
|
51
51
|
exports.TransactionManager = persSdk.TransactionManager;
|
|
52
|
+
exports.TriggerSourceManager = persSdk.TriggerSourceManager;
|
|
52
53
|
exports.UserManager = persSdk.UserManager;
|
|
53
54
|
exports.UserStatusManager = persSdk.UserStatusManager;
|
|
54
55
|
exports.WebDPoPCryptoProvider = persSdk.WebDPoPCryptoProvider;
|
package/dist/core.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/core.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager, u as ApiKeyManager, k as AuthApi, p as AuthManager, l as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, n as DPoPManager, D as DefaultAuthProvider, w as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, o as PersEventEmitter, P as PersSDK, s as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, j as StaticJwtAuthProvider, t as TenantManager, T as TokenManager, r as TransactionManager, U as UserManager, q as UserStatusManager, W as WebDPoPCryptoProvider, i as buildApiRoot, c as createPersSDK, m as mergeWithDefaults } from './chunks/pers-sdk-
|
|
1
|
+
export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager, u as ApiKeyManager, k as AuthApi, p as AuthManager, l as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, n as DPoPManager, D as DefaultAuthProvider, w as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, o as PersEventEmitter, P as PersSDK, s as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, j as StaticJwtAuthProvider, t as TenantManager, T as TokenManager, r as TransactionManager, x as TriggerSourceManager, U as UserManager, q as UserStatusManager, W as WebDPoPCryptoProvider, i as buildApiRoot, c as createPersSDK, m as mergeWithDefaults } from './chunks/pers-sdk-CAM0iQyK.js';
|
|
2
2
|
export { AccountOwnerType } from '@explorins/pers-shared';
|
|
3
3
|
export { I as IndexedDBTokenStorage, d as detectEnvironment, e as environment, w as warnIfProblematicEnvironment } from './chunks/environment-CKVwRAEL.js';
|
|
4
4
|
export { a as CacheService, C as CacheTTL, g as globalCacheService } from './chunks/index-DBLskLuH.js';
|
|
@@ -9,10 +9,10 @@ import './user-status.js';
|
|
|
9
9
|
import './chunks/token-service-Bfj6C0yz.js';
|
|
10
10
|
import './chunks/business-membership-service-D6vaVQTR.js';
|
|
11
11
|
import './campaign.js';
|
|
12
|
-
import './chunks/redemption-service-
|
|
13
|
-
import './chunks/transaction-request.builder-
|
|
12
|
+
import './chunks/redemption-service-CQtTLdic.js';
|
|
13
|
+
import './chunks/transaction-request.builder-C8ahJYwi.js';
|
|
14
14
|
import './chunks/payment-service-IvM6rryM.js';
|
|
15
15
|
import './chunks/tenant-service-CsRA3O2V.js';
|
|
16
|
-
import './analytics.js';
|
|
16
|
+
import './chunks/analytics-service-B9IfG6ox.js';
|
|
17
17
|
import './donation.js';
|
|
18
18
|
//# sourceMappingURL=core.js.map
|
package/dist/index.cjs
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var persSdk = require('./chunks/pers-sdk-
|
|
3
|
+
var persSdk = require('./chunks/pers-sdk-Di_R6AiT.cjs');
|
|
4
4
|
var persShared = require('@explorins/pers-shared');
|
|
5
5
|
var environment = require('./chunks/environment-C73snhIJ.cjs');
|
|
6
6
|
var index = require('./chunks/index-B6-bbNnd.cjs');
|
|
7
7
|
var index$1 = require('./chunks/index-B-g2JPVK.cjs');
|
|
8
8
|
var paginationUtils = require('./chunks/pagination-utils-B2jRHMSO.cjs');
|
|
9
9
|
var businessMembershipService = require('./chunks/business-membership-service-8KC_qRj7.cjs');
|
|
10
|
-
var transactionRequest_builder = require('./chunks/transaction-request.builder-
|
|
11
|
-
var
|
|
10
|
+
var transactionRequest_builder = require('./chunks/transaction-request.builder-CkYd5bl6.cjs');
|
|
11
|
+
var analyticsService = require('./chunks/analytics-service-DwkeBB08.cjs');
|
|
12
12
|
var campaign = require('./campaign.cjs');
|
|
13
13
|
var donation = require('./donation.cjs');
|
|
14
14
|
var paymentService = require('./chunks/payment-service-Bkw7ZXev.cjs');
|
|
15
|
-
var redemptionService = require('./chunks/redemption-service-
|
|
15
|
+
var redemptionService = require('./chunks/redemption-service-DsH7sRdv.cjs');
|
|
16
16
|
var tenantService = require('./chunks/tenant-service-fj-pkXTw.cjs');
|
|
17
17
|
var baseTokenService = require('./chunks/base-token-service-Pvja-ykj.cjs');
|
|
18
18
|
var tokenService = require('./chunks/token-service-BlbXrxnS.cjs');
|
|
@@ -59,6 +59,9 @@ exports.StaticJwtAuthProvider = persSdk.StaticJwtAuthProvider;
|
|
|
59
59
|
exports.TenantManager = persSdk.TenantManager;
|
|
60
60
|
exports.TokenManager = persSdk.TokenManager;
|
|
61
61
|
exports.TransactionManager = persSdk.TransactionManager;
|
|
62
|
+
exports.TriggerSourceApi = persSdk.TriggerSourceApi;
|
|
63
|
+
exports.TriggerSourceManager = persSdk.TriggerSourceManager;
|
|
64
|
+
exports.TriggerSourceService = persSdk.TriggerSourceService;
|
|
62
65
|
exports.UserManager = persSdk.UserManager;
|
|
63
66
|
exports.UserStatusManager = persSdk.UserStatusManager;
|
|
64
67
|
exports.WebDPoPCryptoProvider = persSdk.WebDPoPCryptoProvider;
|
|
@@ -69,6 +72,10 @@ Object.defineProperty(exports, "AccountOwnerType", {
|
|
|
69
72
|
enumerable: true,
|
|
70
73
|
get: function () { return persShared.AccountOwnerType; }
|
|
71
74
|
});
|
|
75
|
+
Object.defineProperty(exports, "SortOrder", {
|
|
76
|
+
enumerable: true,
|
|
77
|
+
get: function () { return persShared.SortOrder; }
|
|
78
|
+
});
|
|
72
79
|
exports.IndexedDBTokenStorage = environment.IndexedDBTokenStorage;
|
|
73
80
|
exports.detectEnvironment = environment.detectEnvironment;
|
|
74
81
|
exports.environment = environment.environment;
|
|
@@ -105,8 +112,8 @@ exports.buildPendingTransactionData = transactionRequest_builder.buildPendingTra
|
|
|
105
112
|
exports.buildSubmissionRequest = transactionRequest_builder.buildSubmissionRequest;
|
|
106
113
|
exports.buildTransferRequest = transactionRequest_builder.buildTransferRequest;
|
|
107
114
|
exports.extractDeadlineFromSigningData = transactionRequest_builder.extractDeadlineFromSigningData;
|
|
108
|
-
exports.AnalyticsApi =
|
|
109
|
-
exports.AnalyticsService =
|
|
115
|
+
exports.AnalyticsApi = analyticsService.AnalyticsApi;
|
|
116
|
+
exports.AnalyticsService = analyticsService.AnalyticsService;
|
|
110
117
|
exports.CampaignApi = campaign.CampaignApi;
|
|
111
118
|
exports.CampaignService = campaign.CampaignService;
|
|
112
119
|
exports.DonationApi = donation.DonationApi;
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export * from './token';
|
|
|
20
20
|
export * from './user';
|
|
21
21
|
export * from './user-status';
|
|
22
22
|
export * from './api-key';
|
|
23
|
+
export * from './trigger-source';
|
|
23
24
|
export { PersSDK, createPersSDK } from './pers-sdk';
|
|
24
25
|
export * from './platform-adapters';
|
|
25
26
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,QAAQ,CAAA;AAGtB,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,YAAY,CAAC;AAG3B,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,cAAc,QAAQ,CAAC;AAGvB,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,QAAQ,CAAC;AAGvB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,QAAQ,CAAA;AAGtB,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,YAAY,CAAC;AAG3B,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,cAAc,QAAQ,CAAC;AAGvB,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,QAAQ,CAAC;AAGvB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,kBAAkB,CAAC;AASjC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGpD,cAAc,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager,
|
|
1
|
+
export { b as AUTH_STORAGE_KEYS, v as AnalyticsManager, E as ApiKeyApi, u as ApiKeyManager, k as AuthApi, p as AuthManager, l as AuthService, A as AuthStatus, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, n as DPoPManager, D as DefaultAuthProvider, w as DonationManager, y as FileApi, F as FileManager, z as FileService, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, o as PersEventEmitter, P as PersSDK, s as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, j as StaticJwtAuthProvider, t as TenantManager, T as TokenManager, r as TransactionManager, G as TriggerSourceApi, x as TriggerSourceManager, H as TriggerSourceService, U as UserManager, q as UserStatusManager, W as WebDPoPCryptoProvider, i as buildApiRoot, c as createPersSDK, m as mergeWithDefaults } from './chunks/pers-sdk-CAM0iQyK.js';
|
|
2
2
|
export * from '@explorins/pers-shared';
|
|
3
|
-
export { AccountOwnerType } from '@explorins/pers-shared';
|
|
3
|
+
export { AccountOwnerType, SortOrder } from '@explorins/pers-shared';
|
|
4
4
|
export { I as IndexedDBTokenStorage, d as detectEnvironment, e as environment, w as warnIfProblematicEnvironment } from './chunks/environment-CKVwRAEL.js';
|
|
5
5
|
export { a as CacheService, C as CacheTTL, g as globalCacheService } from './chunks/index-DBLskLuH.js';
|
|
6
6
|
export { b as ApiErrorDetector, A as AuthenticationError, E as ErrorUtils, L as LogoutRequired, N as NetworkError, a as PersApiError, P as ProviderTokenRefreshNeeded, T as TokenRefreshNeeded } from './chunks/index-CKm_V5XE.js';
|
|
7
7
|
export { b as buildPaginationParams, e as extractData, a as extractPagination, f as fetchAllPages, i as isPaginatedResponse, n as normalizeToPaginated } from './chunks/pagination-utils-9vQ-Npkr.js';
|
|
8
8
|
export { B as BusinessApi, a as BusinessMembershipApi, c as BusinessMembershipService, b as BusinessService } from './chunks/business-membership-service-D6vaVQTR.js';
|
|
9
|
-
export { C as ClientTransactionType, T as TransactionApi, a as TransactionService, d as buildBurnRequest, c as buildMintRequest, h as buildPOSBurnRequest, g as buildPOSTransferRequest, b as buildPendingTransactionData, i as buildSubmissionRequest, f as buildTransferRequest, e as extractDeadlineFromSigningData } from './chunks/transaction-request.builder-
|
|
10
|
-
export { AnalyticsApi, AnalyticsService } from './analytics.js';
|
|
9
|
+
export { C as ClientTransactionType, T as TransactionApi, a as TransactionService, d as buildBurnRequest, c as buildMintRequest, h as buildPOSBurnRequest, g as buildPOSTransferRequest, b as buildPendingTransactionData, i as buildSubmissionRequest, f as buildTransferRequest, e as extractDeadlineFromSigningData } from './chunks/transaction-request.builder-C8ahJYwi.js';
|
|
10
|
+
export { A as AnalyticsApi, a as AnalyticsService } from './chunks/analytics-service-B9IfG6ox.js';
|
|
11
11
|
export { CampaignApi, CampaignService } from './campaign.js';
|
|
12
12
|
export { DonationApi, DonationService } from './donation.js';
|
|
13
13
|
export { P as PaymentApi, a as PaymentService } from './chunks/payment-service-IvM6rryM.js';
|
|
14
|
-
export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-
|
|
14
|
+
export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-CQtTLdic.js';
|
|
15
15
|
export { T as TenantApi, a as TenantService } from './chunks/tenant-service-CsRA3O2V.js';
|
|
16
16
|
export { B as BaseTokenService, T as TokenSDK, g as getMetadataFromTokenUnitResponse } from './chunks/base-token-service-U3YzHxfd.js';
|
|
17
17
|
export { T as TokenApi, a as TokenService } from './chunks/token-service-Bfj6C0yz.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PersApiClient } from '../core/pers-api-client';
|
|
2
2
|
import { AnalyticsService } from '../analytics';
|
|
3
|
-
import type { TransactionAnalyticsRequestDTO } from '../analytics/models';
|
|
3
|
+
import type { TransactionAnalyticsRequestDTO, CampaignClaimAnalyticsRequestDTO, UserAnalyticsRequestDTO, UserRankingAnalyticsRequestDTO, BusinessRankingAnalyticsRequestDTO, RetentionAnalyticsRequestDTO } from '../analytics/models';
|
|
4
4
|
/**
|
|
5
5
|
* Analytics Manager - Clean, high-level interface for analytics operations
|
|
6
6
|
*
|
|
@@ -243,7 +243,170 @@ export declare class AnalyticsManager {
|
|
|
243
243
|
* updateDashboard();
|
|
244
244
|
* ```
|
|
245
245
|
*/
|
|
246
|
-
getTransactionAnalytics(request: TransactionAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/
|
|
246
|
+
getTransactionAnalytics(request: TransactionAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/transaction-analytics.request.dto").TransactionAnalyticsResponseDTO>;
|
|
247
|
+
/**
|
|
248
|
+
* Get campaign claim analytics with aggregation
|
|
249
|
+
*
|
|
250
|
+
* Retrieves aggregated analytics for campaign claims with flexible grouping,
|
|
251
|
+
* filtering, and metric selection. Provides insights into campaign performance,
|
|
252
|
+
* claim patterns, and user engagement across the loyalty ecosystem.
|
|
253
|
+
*
|
|
254
|
+
* @param request - Analytics request with filters, groupBy, and metrics
|
|
255
|
+
* @returns Promise resolving to campaign claim analytics data
|
|
256
|
+
*
|
|
257
|
+
* @example Claims per campaign
|
|
258
|
+
* ```typescript
|
|
259
|
+
* const analytics = await sdk.analytics.getCampaignClaimAnalytics({
|
|
260
|
+
* filters: { status: 'COMPLETED' },
|
|
261
|
+
* groupBy: ['campaignId'],
|
|
262
|
+
* metrics: ['count'],
|
|
263
|
+
* sortBy: 'count',
|
|
264
|
+
* sortOrder: 'DESC',
|
|
265
|
+
* limit: 10
|
|
266
|
+
* });
|
|
267
|
+
*
|
|
268
|
+
* console.log('Top campaigns:', analytics.results);
|
|
269
|
+
* ```
|
|
270
|
+
*/
|
|
271
|
+
getCampaignClaimAnalytics(request: CampaignClaimAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/campaign-claim-analytics-request.dto").CampaignClaimAnalyticsResponseDTO>;
|
|
272
|
+
/**
|
|
273
|
+
* Get user analytics with engagement metrics
|
|
274
|
+
*
|
|
275
|
+
* Retrieves aggregated user statistics including engagement rate, active users,
|
|
276
|
+
* transaction metrics, and per-active-user averages. Provides comprehensive
|
|
277
|
+
* insights into user behavior, engagement patterns, and platform adoption metrics.
|
|
278
|
+
*
|
|
279
|
+
* NEW: Added per-active-user metrics (averageTransactionsPerActiveUser, etc.) which
|
|
280
|
+
* show concentrated engagement among active users - more useful than diluted all-user averages.
|
|
281
|
+
*
|
|
282
|
+
* Request structure matches TransactionAnalytics and CampaignClaimAnalytics:
|
|
283
|
+
* - Use filters object for business-specific scoping
|
|
284
|
+
* - startDate/endDate at root level for date range filtering
|
|
285
|
+
*
|
|
286
|
+
* @param request - Analytics request with optional filters and date range
|
|
287
|
+
* @returns Promise resolving to user analytics data with per-user and per-active-user metrics
|
|
288
|
+
*
|
|
289
|
+
* @example Basic user analytics (compare per-user vs per-active-user)
|
|
290
|
+
* ```typescript
|
|
291
|
+
* const analytics = await sdk.analytics.getUserAnalytics({});
|
|
292
|
+
* console.log(`Total users: ${analytics.totalUsers}`);
|
|
293
|
+
* console.log(`Active users: ${analytics.activeUsers} (${analytics.engagementRate.toFixed(1)}%)`);
|
|
294
|
+
*
|
|
295
|
+
* // Per-user averages (includes inactive users - lower numbers)
|
|
296
|
+
* console.log(`\\nPer-User Averages (all users):`);
|
|
297
|
+
* console.log(` Transactions: ${analytics.averageTransactionsPerUser.toFixed(2)}`);
|
|
298
|
+
* console.log(` Claims: ${analytics.averageClaimsPerUser.toFixed(2)}`);
|
|
299
|
+
* console.log(` Redemptions: ${analytics.averageRedemptionsPerUser.toFixed(2)}`);
|
|
300
|
+
*
|
|
301
|
+
* // Per-active-user averages (only engaged users - higher, more meaningful numbers)
|
|
302
|
+
* console.log(`\\nPer-Active-User Averages (engaged users only):`);
|
|
303
|
+
* console.log(` Transactions: ${analytics.averageTransactionsPerActiveUser.toFixed(2)}`);
|
|
304
|
+
* console.log(` Claims: ${analytics.averageClaimsPerActiveUser.toFixed(2)}`);
|
|
305
|
+
* console.log(` Redemptions: ${analytics.averageRedemptionsPerActiveUser.toFixed(2)}`);
|
|
306
|
+
* ```
|
|
307
|
+
*
|
|
308
|
+
* @example Monthly user analytics with date range
|
|
309
|
+
* ```typescript
|
|
310
|
+
* const analytics = await sdk.analytics.getUserAnalytics({
|
|
311
|
+
* startDate: new Date('2026-02-01'),
|
|
312
|
+
* endDate: new Date('2026-02-28')
|
|
313
|
+
* });
|
|
314
|
+
*
|
|
315
|
+
* console.log('February 2026 User Metrics:');
|
|
316
|
+
* console.log(`Total users: ${analytics.totalUsers}`);
|
|
317
|
+
* console.log(`Active users: ${analytics.activeUsers}`);
|
|
318
|
+
* console.log(`New users: ${analytics.newUsers}`);
|
|
319
|
+
* console.log(`Engagement rate: ${analytics.engagementRate.toFixed(2)}%`);
|
|
320
|
+
* console.log(`Total transaction volume: $${analytics.totalTransactionVolume.toLocaleString()}`);
|
|
321
|
+
* console.log(`Avg transaction amount: $${analytics.averageTransactionAmount.toFixed(2)}`);
|
|
322
|
+
* console.log(`\\nFilters applied: ${analytics.metadata.dateRange?.startDate} to ${analytics.metadata.dateRange?.endDate}`);
|
|
323
|
+
* ```
|
|
324
|
+
*
|
|
325
|
+
* @example Business-specific user analytics with filters
|
|
326
|
+
* ```typescript
|
|
327
|
+
* const analytics = await sdk.analytics.getUserAnalytics({
|
|
328
|
+
* filters: { businessId: 'business-123' },
|
|
329
|
+
* startDate: new Date('2026-01-01'),
|
|
330
|
+
* endDate: new Date('2026-12-31')
|
|
331
|
+
* });
|
|
332
|
+
*
|
|
333
|
+
* console.log(`Business customer metrics for 2026:`);
|
|
334
|
+
* console.log(`Active customers: ${analytics.activeUsers} / ${analytics.totalUsers}`);
|
|
335
|
+
* console.log(`Customer engagement: ${analytics.engagementRate.toFixed(1)}%`);
|
|
336
|
+
* console.log(`Avg spend per customer: $${analytics.averageTransactionAmount.toFixed(2)}`);
|
|
337
|
+
* console.log(`Avg spend per active customer: $${(analytics.totalTransactionVolume / analytics.activeUsers).toFixed(2)}`);
|
|
338
|
+
* console.log(`Avg claims per active customer: ${analytics.averageClaimsPerActiveUser.toFixed(2)}`);
|
|
339
|
+
* ```
|
|
340
|
+
*/
|
|
341
|
+
getUserAnalytics(request?: UserAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/user-analytics.dto").UserAnalyticsResponseDTO>;
|
|
342
|
+
/**
|
|
343
|
+
* Get user transaction ranking with enriched user data
|
|
344
|
+
*
|
|
345
|
+
* Retrieves ranked list of users with full user details (email, externalUserId)
|
|
346
|
+
* and transaction metrics. Data enrichment happens via efficient SQL JOINs + UNION
|
|
347
|
+
* (handles legacy transactions). Ideal for leaderboards, engagement analysis, and
|
|
348
|
+
* identifying power users for targeted campaigns.
|
|
349
|
+
*
|
|
350
|
+
* Use Cases:
|
|
351
|
+
* - Admin leaderboards showing top users by activity
|
|
352
|
+
* - User engagement analysis with full user context
|
|
353
|
+
* - Identifying power users for campaigns
|
|
354
|
+
* - Customer segmentation by transaction behavior
|
|
355
|
+
*
|
|
356
|
+
* @param request - Ranking request with filters, sorting, and limit
|
|
357
|
+
* @returns Promise resolving to ranked user list with transaction metrics
|
|
358
|
+
*
|
|
359
|
+
* @example Top 50 users by transaction count
|
|
360
|
+
* ```typescript
|
|
361
|
+
* const ranking = await sdk.analytics.getUserRanking({
|
|
362
|
+
* sortBy: 'totalTransactions',
|
|
363
|
+
* sortOrder: 'DESC',
|
|
364
|
+
* limit: 50
|
|
365
|
+
* });
|
|
366
|
+
*
|
|
367
|
+
* console.log(`Top ${ranking.totalUsers} users:`);
|
|
368
|
+
* ranking.results.forEach((user, index) => {
|
|
369
|
+
* console.log(`#${index + 1}: ${user.email || user.externalUserId}`);
|
|
370
|
+
* console.log(` Transactions: ${user.totalTransactions}`);
|
|
371
|
+
* console.log(` Token spent: ${user.tokenSpent}`);
|
|
372
|
+
* });
|
|
373
|
+
* ```
|
|
374
|
+
*
|
|
375
|
+
* @example Top users by STAMP spending
|
|
376
|
+
* ```typescript
|
|
377
|
+
* const ranking = await sdk.analytics.getUserRanking({
|
|
378
|
+
* filters: { tokenType: 'STAMP' },
|
|
379
|
+
* sortBy: 'tokenSpent',
|
|
380
|
+
* sortOrder: 'DESC',
|
|
381
|
+
* limit: 20
|
|
382
|
+
* });
|
|
383
|
+
*
|
|
384
|
+
* console.log('Top 20 STAMP spenders:');
|
|
385
|
+
* ranking.results.forEach((user, index) => {
|
|
386
|
+
* const identifier = user.email || user.externalUserId || user.userId;
|
|
387
|
+
* console.log(`${index + 1}. ${identifier} - ${user.tokenSpent} STAMP`);
|
|
388
|
+
* });
|
|
389
|
+
* ```
|
|
390
|
+
*/
|
|
391
|
+
getUserRanking(request?: UserRankingAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/user-ranking-analytics.dto").UserRankingAnalyticsResponseDTO>;
|
|
392
|
+
/**
|
|
393
|
+
* Get business transaction ranking with enriched business data
|
|
394
|
+
*
|
|
395
|
+
* Returns ranked list of businesses with full business details and transaction metrics.
|
|
396
|
+
*
|
|
397
|
+
* @param request - Ranking request with filters, sorting, and limit
|
|
398
|
+
* @returns Promise resolving to ranked business list
|
|
399
|
+
*/
|
|
400
|
+
getBusinessRanking(request?: BusinessRankingAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/business-ranking-analytics.dto").BusinessRankingAnalyticsResponseDTO>;
|
|
401
|
+
/**
|
|
402
|
+
* Get monthly user retention analytics
|
|
403
|
+
*
|
|
404
|
+
* Returns monthly retention data with user metrics and retention rates.
|
|
405
|
+
*
|
|
406
|
+
* @param request - Retention request with monthsBack and filters
|
|
407
|
+
* @returns Promise resolving to monthly retention data
|
|
408
|
+
*/
|
|
409
|
+
getRetentionAnalytics(request?: RetentionAnalyticsRequestDTO): Promise<import("node_modules/@explorins/pers-shared/dist/cjs/shared-lib/dto/analytics/retention-analytics.dto").RetentionAnalyticsResponseDTO>;
|
|
247
410
|
/**
|
|
248
411
|
* Get the full analytics service for advanced operations
|
|
249
412
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics-manager.d.ts","sourceRoot":"","sources":["../../src/managers/analytics-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAgB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"analytics-manager.d.ts","sourceRoot":"","sources":["../../src/managers/analytics-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAgB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EACV,8BAA8B,EAC9B,gCAAgC,EAChC,uBAAuB,EACvB,8BAA8B,EAC9B,kCAAkC,EAClC,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AACH,qBAAa,gBAAgB;IAGf,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,gBAAgB,CAAmB;gBAEvB,SAAS,EAAE,aAAa;IAK5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmLG;IACG,uBAAuB,CAAC,OAAO,EAAE,8BAA8B;IAIrE;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,yBAAyB,CAAC,OAAO,EAAE,gCAAgC;IAIzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoEG;IACG,gBAAgB,CAAC,OAAO,GAAE,uBAA4B;IAI5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgDG;IACG,cAAc,CAAC,OAAO,GAAE,8BAAmC;IAIjE;;;;;;;OAOG;IACG,kBAAkB,CAAC,OAAO,GAAE,kCAAuC;IAIzE;;;;;;;OAOG;IACG,qBAAqB,CAAC,OAAO,GAAE,4BAAiC;IAItE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0DG;IACH,mBAAmB,IAAI,gBAAgB;CAGxC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { PaginatedResponseDTO, SortOrder } from '@explorins/pers-shared';
|
|
1
|
+
import { PaginatedResponseDTO, SortOrder, CampaignClaimIncludeRelation, CampaignIncludeRelation } from '@explorins/pers-shared';
|
|
2
2
|
import { PersApiClient } from '../core/pers-api-client';
|
|
3
3
|
import { PersEventEmitter } from '../core/events';
|
|
4
4
|
import { CampaignService } from '../campaign';
|
|
5
5
|
import { PaginationOptions } from '../shared/utils/pagination-utils';
|
|
6
|
-
import type { CampaignDTO, CampaignCreateRequestDTO, CampaignClaimRequestDTO, CampaignClaimDTO, TokenUnitCreateRequestDTO, CampaignBusinessEngagementCreateRequestDTO, CampaignTriggerDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
|
|
6
|
+
import type { CampaignDTO, CampaignCreateRequestDTO, CampaignClaimRequestDTO, CampaignClaimDTO, TokenUnitCreateRequestDTO, CampaignBusinessEngagementCreateRequestDTO, CampaignTriggerDTO, CampaignTriggerCreateRequestDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
|
|
7
7
|
/**
|
|
8
8
|
* Campaign Manager - Clean, high-level interface for campaign operations
|
|
9
9
|
*
|
|
@@ -82,6 +82,7 @@ export declare class CampaignManager {
|
|
|
82
82
|
* business partnerships, eligibility criteria, and claiming requirements.
|
|
83
83
|
*
|
|
84
84
|
* @param campaignId - Unique campaign identifier
|
|
85
|
+
* @param include - Relations to include: 'triggerSources', 'businesses'
|
|
85
86
|
* @returns Promise resolving to campaign data with complete details
|
|
86
87
|
* @throws {PersApiError} When campaign with specified ID is not found
|
|
87
88
|
*
|
|
@@ -110,8 +111,16 @@ export declare class CampaignManager {
|
|
|
110
111
|
* console.log('Campaign not found:', error.message);
|
|
111
112
|
* }
|
|
112
113
|
* ```
|
|
114
|
+
*
|
|
115
|
+
* @example With Include Relations
|
|
116
|
+
* ```typescript
|
|
117
|
+
* // Get campaign with trigger sources and businesses included
|
|
118
|
+
* const campaign = await sdk.campaigns.getCampaignById('campaign-123', ['triggerSources', 'businesses']);
|
|
119
|
+
* console.log('Trigger sources:', campaign.included?.triggerSources);
|
|
120
|
+
* console.log('Businesses:', campaign.included?.businesses);
|
|
121
|
+
* ```
|
|
113
122
|
*/
|
|
114
|
-
getCampaignById(campaignId: string): Promise<CampaignDTO>;
|
|
123
|
+
getCampaignById(campaignId: string, include?: CampaignIncludeRelation[]): Promise<CampaignDTO>;
|
|
115
124
|
/**
|
|
116
125
|
* Claim a campaign reward
|
|
117
126
|
*
|
|
@@ -244,6 +253,11 @@ export declare class CampaignManager {
|
|
|
244
253
|
* page: 1,
|
|
245
254
|
* limit: 25
|
|
246
255
|
* });
|
|
256
|
+
*
|
|
257
|
+
* // Include related data (trigger sources and businesses)
|
|
258
|
+
* const campaignsWithRelations = await sdk.campaigns.getCampaigns({
|
|
259
|
+
* include: ['triggerSources', 'businesses']
|
|
260
|
+
* });
|
|
247
261
|
* ```
|
|
248
262
|
*/
|
|
249
263
|
getCampaigns(options?: {
|
|
@@ -253,6 +267,7 @@ export declare class CampaignManager {
|
|
|
253
267
|
limit?: number;
|
|
254
268
|
sortBy?: 'name' | 'createdAt' | 'startDate';
|
|
255
269
|
sortOrder?: SortOrder;
|
|
270
|
+
include?: CampaignIncludeRelation[];
|
|
256
271
|
}): Promise<PaginatedResponseDTO<CampaignDTO>>;
|
|
257
272
|
/**
|
|
258
273
|
* Admin: Create new campaign
|
|
@@ -359,52 +374,131 @@ export declare class CampaignManager {
|
|
|
359
374
|
*/
|
|
360
375
|
toggleCampaignTestnet(campaignId: string): Promise<CampaignDTO>;
|
|
361
376
|
/**
|
|
362
|
-
* Admin: Get campaign triggers
|
|
377
|
+
* Admin: Get all campaign triggers (paginated)
|
|
363
378
|
*
|
|
364
|
-
* Retrieves all
|
|
365
|
-
*
|
|
366
|
-
* Requires administrator privileges.
|
|
379
|
+
* Retrieves all campaign trigger rules that define rate limits, geo-validation,
|
|
380
|
+
* conditions, and trigger types for campaign activation.
|
|
367
381
|
*
|
|
368
|
-
* @
|
|
382
|
+
* @param options - Pagination options
|
|
383
|
+
* @returns Promise resolving to paginated list of campaign triggers
|
|
369
384
|
*
|
|
370
385
|
* @example
|
|
371
386
|
* ```typescript
|
|
372
|
-
*
|
|
373
|
-
*
|
|
374
|
-
*
|
|
375
|
-
*
|
|
376
|
-
* triggers.forEach(trigger => {
|
|
377
|
-
* console.log(`- ${trigger.name}: ${trigger.description}`);
|
|
378
|
-
* console.log(` Type: ${trigger.type}`);
|
|
379
|
-
* console.log(` Parameters: ${JSON.stringify(trigger.parameters)}`);
|
|
387
|
+
* const triggers = await sdk.campaigns.getCampaignTriggers({ page: 1, limit: 20 });
|
|
388
|
+
* console.log(`Found ${triggers.total} triggers`);
|
|
389
|
+
* triggers.data.forEach(trigger => {
|
|
390
|
+
* console.log(`- ${trigger.name}: max ${trigger.maxPerDayPerUser}/day`);
|
|
380
391
|
* });
|
|
381
392
|
* ```
|
|
382
393
|
*/
|
|
383
394
|
getCampaignTriggers(options?: PaginationOptions): Promise<PaginatedResponseDTO<CampaignTriggerDTO>>;
|
|
384
395
|
/**
|
|
385
|
-
* Admin:
|
|
396
|
+
* Admin: Get campaign trigger by ID
|
|
397
|
+
*
|
|
398
|
+
* @param triggerId - The campaign trigger ID
|
|
399
|
+
* @returns Promise resolving to the campaign trigger
|
|
400
|
+
*
|
|
401
|
+
* @example
|
|
402
|
+
* ```typescript
|
|
403
|
+
* const trigger = await sdk.campaigns.getCampaignTriggerById('trigger-123');
|
|
404
|
+
* console.log('Max per day:', trigger.maxPerDayPerUser);
|
|
405
|
+
* ```
|
|
406
|
+
*/
|
|
407
|
+
getCampaignTriggerById(triggerId: string): Promise<CampaignTriggerDTO>;
|
|
408
|
+
/**
|
|
409
|
+
* Admin: Create a new campaign trigger
|
|
410
|
+
*
|
|
411
|
+
* Creates a trigger rule that defines rate limits, geo-validation, and conditions
|
|
412
|
+
* for campaign activation. Triggers are created independently and then assigned
|
|
413
|
+
* to campaigns via `setCampaignTrigger()`.
|
|
414
|
+
*
|
|
415
|
+
* @param data - Trigger configuration
|
|
416
|
+
* @returns Promise resolving to created trigger
|
|
386
417
|
*
|
|
387
|
-
*
|
|
388
|
-
*
|
|
418
|
+
* @example
|
|
419
|
+
* ```typescript
|
|
420
|
+
* const trigger = await sdk.campaigns.createCampaignTrigger({
|
|
421
|
+
* name: 'Daily Check-in',
|
|
422
|
+
* maxPerDayPerUser: 1,
|
|
423
|
+
* maxPerUser: 100,
|
|
424
|
+
* minCooldownSeconds: 3600,
|
|
425
|
+
* maxGeoDistanceInMeters: 50,
|
|
426
|
+
* triggerType: 'CLAIM_BY_USER'
|
|
427
|
+
* });
|
|
428
|
+
*
|
|
429
|
+
* // Then assign to campaign
|
|
430
|
+
* await sdk.campaigns.setCampaignTrigger(campaignId, trigger.id);
|
|
431
|
+
* ```
|
|
432
|
+
*/
|
|
433
|
+
createCampaignTrigger(data: CampaignTriggerCreateRequestDTO): Promise<CampaignTriggerDTO>;
|
|
434
|
+
/**
|
|
435
|
+
* Admin: Update an existing campaign trigger
|
|
436
|
+
*
|
|
437
|
+
* @param triggerId - The campaign trigger ID
|
|
438
|
+
* @param data - Updated trigger configuration (partial)
|
|
439
|
+
* @returns Promise resolving to updated trigger
|
|
440
|
+
*
|
|
441
|
+
* @example
|
|
442
|
+
* ```typescript
|
|
443
|
+
* const updated = await sdk.campaigns.updateCampaignTrigger('trigger-123', {
|
|
444
|
+
* maxPerDayPerUser: 5,
|
|
445
|
+
* minCooldownSeconds: 1800
|
|
446
|
+
* });
|
|
447
|
+
* ```
|
|
448
|
+
*/
|
|
449
|
+
updateCampaignTrigger(triggerId: string, data: Partial<CampaignTriggerCreateRequestDTO>): Promise<CampaignTriggerDTO>;
|
|
450
|
+
/**
|
|
451
|
+
* Admin: Delete a campaign trigger
|
|
452
|
+
*
|
|
453
|
+
* @param triggerId - The campaign trigger ID
|
|
454
|
+
* @returns Promise resolving to success status
|
|
455
|
+
*
|
|
456
|
+
* @example
|
|
457
|
+
* ```typescript
|
|
458
|
+
* await sdk.campaigns.deleteCampaignTrigger('trigger-123');
|
|
459
|
+
* ```
|
|
460
|
+
*/
|
|
461
|
+
deleteCampaignTrigger(triggerId: string): Promise<boolean>;
|
|
462
|
+
/**
|
|
463
|
+
* Admin: Assign a trigger to a campaign
|
|
464
|
+
*
|
|
465
|
+
* Associates a trigger rule with a campaign. A campaign can have only one trigger
|
|
466
|
+
* at a time. Assigning a new trigger replaces any existing trigger.
|
|
389
467
|
*
|
|
390
468
|
* @param campaignId - ID of the campaign
|
|
391
469
|
* @param triggerId - ID of the trigger to associate
|
|
392
|
-
* @returns Promise resolving to updated campaign
|
|
393
|
-
* @throws {PersApiError} When not authenticated as admin or entities not found
|
|
470
|
+
* @returns Promise resolving to updated campaign
|
|
394
471
|
*
|
|
395
472
|
* @example
|
|
396
473
|
* ```typescript
|
|
397
|
-
* // Admin operation - set up automatic campaign trigger
|
|
398
474
|
* const updated = await sdk.campaigns.setCampaignTrigger(
|
|
399
|
-
* '
|
|
400
|
-
* '
|
|
475
|
+
* 'campaign-123',
|
|
476
|
+
* 'trigger-456'
|
|
401
477
|
* );
|
|
402
|
-
*
|
|
403
|
-
* console.log('Trigger set for campaign:', updated.title);
|
|
404
|
-
* console.log('Trigger will activate on user registration');
|
|
478
|
+
* console.log('Trigger assigned:', updated.trigger?.name);
|
|
405
479
|
* ```
|
|
406
480
|
*/
|
|
407
481
|
setCampaignTrigger(campaignId: string, triggerId: string): Promise<CampaignDTO>;
|
|
482
|
+
/**
|
|
483
|
+
* Admin: Remove a trigger from a campaign
|
|
484
|
+
*
|
|
485
|
+
* Removes the trigger rule from a campaign. The trigger itself is not deleted
|
|
486
|
+
* and can be reassigned to other campaigns.
|
|
487
|
+
*
|
|
488
|
+
* @param campaignId - ID of the campaign
|
|
489
|
+
* @param triggerId - ID of the trigger to remove
|
|
490
|
+
* @returns Promise resolving to updated campaign
|
|
491
|
+
*
|
|
492
|
+
* @example
|
|
493
|
+
* ```typescript
|
|
494
|
+
* const updated = await sdk.campaigns.removeCampaignTrigger(
|
|
495
|
+
* 'campaign-123',
|
|
496
|
+
* 'trigger-456'
|
|
497
|
+
* );
|
|
498
|
+
* console.log('Trigger removed:', updated.trigger === null);
|
|
499
|
+
* ```
|
|
500
|
+
*/
|
|
501
|
+
removeCampaignTrigger(campaignId: string, triggerId: string): Promise<CampaignDTO>;
|
|
408
502
|
/**
|
|
409
503
|
* Admin: Create campaign token unit
|
|
410
504
|
*
|
|
@@ -611,7 +705,7 @@ export declare class CampaignManager {
|
|
|
611
705
|
limit?: number;
|
|
612
706
|
sortBy?: string;
|
|
613
707
|
sortOrder?: any;
|
|
614
|
-
}): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
708
|
+
}, include?: CampaignClaimIncludeRelation[]): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
615
709
|
/**
|
|
616
710
|
* Admin: Get campaign claims by user ID
|
|
617
711
|
*
|
|
@@ -645,7 +739,7 @@ export declare class CampaignManager {
|
|
|
645
739
|
* console.log(`\nTotal rewards earned: ${totalRewards}`);
|
|
646
740
|
* ```
|
|
647
741
|
*/
|
|
648
|
-
getCampaignClaimsByUserId(userId: string, options?: PaginationOptions): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
742
|
+
getCampaignClaimsByUserId(userId: string, options?: PaginationOptions, include?: CampaignClaimIncludeRelation[]): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
649
743
|
/**
|
|
650
744
|
* Admin: Get campaign claims by business ID
|
|
651
745
|
*
|
|
@@ -684,7 +778,63 @@ export declare class CampaignManager {
|
|
|
684
778
|
* console.log(`\nTotal rewards distributed: ${totalRewardsDistributed}`);
|
|
685
779
|
* ```
|
|
686
780
|
*/
|
|
687
|
-
getCampaignClaimsByBusinessId(businessId: string, options?: PaginationOptions): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
781
|
+
getCampaignClaimsByBusinessId(businessId: string, options?: PaginationOptions, include?: CampaignClaimIncludeRelation[]): Promise<PaginatedResponseDTO<CampaignClaimDTO>>;
|
|
782
|
+
/**
|
|
783
|
+
* Admin: Assign a trigger source to a campaign
|
|
784
|
+
*
|
|
785
|
+
* Associates a trigger source with a campaign, enabling the trigger source
|
|
786
|
+
* to activate campaign rewards when triggered. A campaign can have multiple
|
|
787
|
+
* trigger sources. Requires administrator privileges.
|
|
788
|
+
*
|
|
789
|
+
* Note: To create/update/delete trigger sources, use `sdk.triggerSources`.
|
|
790
|
+
*
|
|
791
|
+
* @param campaignId - Campaign UUID
|
|
792
|
+
* @param triggerSourceId - Trigger source UUID
|
|
793
|
+
* @returns Promise resolving to updated campaign with trigger source assigned
|
|
794
|
+
* @throws {PersApiError} When not authenticated as admin or entities not found
|
|
795
|
+
*
|
|
796
|
+
* @example
|
|
797
|
+
* ```typescript
|
|
798
|
+
* // Create trigger source first
|
|
799
|
+
* const source = await sdk.triggerSources.create({
|
|
800
|
+
* type: 'QR_CODE',
|
|
801
|
+
* name: 'Store Entrance QR'
|
|
802
|
+
* });
|
|
803
|
+
*
|
|
804
|
+
* // Then assign to campaign
|
|
805
|
+
* const updated = await sdk.campaigns.assignTriggerSource(
|
|
806
|
+
* 'campaign-123',
|
|
807
|
+
* source.id
|
|
808
|
+
* );
|
|
809
|
+
*
|
|
810
|
+
* console.log('Trigger source assigned:', updated.triggerSourceIds.length);
|
|
811
|
+
* ```
|
|
812
|
+
*/
|
|
813
|
+
assignTriggerSource(campaignId: string, triggerSourceId: string): Promise<CampaignDTO>;
|
|
814
|
+
/**
|
|
815
|
+
* Admin: Remove a trigger source from a campaign
|
|
816
|
+
*
|
|
817
|
+
* Removes the association between a trigger source and a campaign. The trigger
|
|
818
|
+
* source itself is not deleted and can be reassigned to other campaigns.
|
|
819
|
+
* Requires administrator privileges.
|
|
820
|
+
*
|
|
821
|
+
* @param campaignId - Campaign UUID
|
|
822
|
+
* @param triggerSourceId - Trigger source UUID
|
|
823
|
+
* @returns Promise resolving to updated campaign with trigger source removed
|
|
824
|
+
* @throws {PersApiError} When not authenticated as admin or entities not found
|
|
825
|
+
*
|
|
826
|
+
* @example
|
|
827
|
+
* ```typescript
|
|
828
|
+
* // Remove a trigger source from a campaign
|
|
829
|
+
* const updated = await sdk.campaigns.removeTriggerSource(
|
|
830
|
+
* 'campaign-123',
|
|
831
|
+
* 'source-456'
|
|
832
|
+
* );
|
|
833
|
+
*
|
|
834
|
+
* console.log('Remaining trigger source IDs:', updated.triggerSourceIds.length);
|
|
835
|
+
* ```
|
|
836
|
+
*/
|
|
837
|
+
removeTriggerSource(campaignId: string, triggerSourceId: string): Promise<CampaignDTO>;
|
|
688
838
|
/**
|
|
689
839
|
* Get the full campaign service for advanced operations
|
|
690
840
|
*
|