@explorins/pers-sdk 2.1.20 → 2.1.23
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/campaign/api/campaign-api.d.ts +20 -4
- package/dist/campaign/api/campaign-api.d.ts.map +1 -1
- package/dist/campaign/index.d.ts +1 -1
- package/dist/campaign/index.d.ts.map +1 -1
- package/dist/campaign/services/campaign-service.d.ts +31 -17
- package/dist/campaign/services/campaign-service.d.ts.map +1 -1
- package/dist/campaign.cjs +28 -11
- package/dist/campaign.cjs.map +1 -1
- package/dist/campaign.js +28 -11
- package/dist/campaign.js.map +1 -1
- package/dist/chunks/{base-token-service-C838kf06.js → base-token-service-BiSXWqOy.js} +3 -3
- package/dist/chunks/{base-token-service-C838kf06.js.map → base-token-service-BiSXWqOy.js.map} +1 -1
- package/dist/chunks/{base-token-service-Bu7ufXtf.cjs → base-token-service-CReAW_nz.cjs} +3 -3
- package/dist/chunks/{base-token-service-Bu7ufXtf.cjs.map → base-token-service-CReAW_nz.cjs.map} +1 -1
- package/dist/chunks/{index-DgTEdUgC.js → index-8y63MFOX.js} +28 -16
- package/dist/chunks/index-8y63MFOX.js.map +1 -0
- package/dist/chunks/{index-CGaKfZNU.cjs → index-CVuttuU8.cjs} +27 -14
- package/dist/chunks/{index-CGaKfZNU.cjs.map → index-CVuttuU8.cjs.map} +1 -1
- package/dist/chunks/{pers-sdk-DdIc44Hv.js → pers-sdk-DgSbePI0.js} +76 -42
- package/dist/chunks/pers-sdk-DgSbePI0.js.map +1 -0
- package/dist/chunks/{pers-sdk-Day8o-NE.cjs → pers-sdk-rmjhPvHo.cjs} +76 -42
- package/dist/chunks/pers-sdk-rmjhPvHo.cjs.map +1 -0
- package/dist/chunks/{redemption-service-are8cFKI.cjs → redemption-service-B6ZlAV6_.cjs} +61 -11
- package/dist/chunks/redemption-service-B6ZlAV6_.cjs.map +1 -0
- package/dist/chunks/{redemption-service-Cr_7MnC2.js → redemption-service-C0vys0OQ.js} +62 -12
- package/dist/chunks/redemption-service-C0vys0OQ.js.map +1 -0
- package/dist/chunks/{tenant-manager-B4FygDMF.cjs → tenant-manager-BIQONvmF.cjs} +2 -2
- package/dist/chunks/{tenant-manager-B4FygDMF.cjs.map → tenant-manager-BIQONvmF.cjs.map} +1 -1
- package/dist/chunks/{tenant-manager-DkWkZfCF.js → tenant-manager-C5txKrZA.js} +2 -2
- package/dist/chunks/{tenant-manager-DkWkZfCF.js.map → tenant-manager-C5txKrZA.js.map} +1 -1
- package/dist/chunks/token-service-BxEO5YVN.js.map +1 -1
- package/dist/chunks/token-service-C1xe11OX.cjs.map +1 -1
- package/dist/chunks/{web3-chain-service-DcLiy3m2.cjs → web3-chain-service-CSxlvjMg.cjs} +2 -2
- package/dist/chunks/{web3-chain-service-DcLiy3m2.cjs.map → web3-chain-service-CSxlvjMg.cjs.map} +1 -1
- package/dist/chunks/{web3-chain-service-nGntR60S.js → web3-chain-service-DRoykR1u.js} +2 -2
- package/dist/chunks/{web3-chain-service-nGntR60S.js.map → web3-chain-service-DRoykR1u.js.map} +1 -1
- package/dist/chunks/{web3-manager-msPdWhlR.cjs → web3-manager-C891F2cd.cjs} +4 -4
- package/dist/chunks/{web3-manager-msPdWhlR.cjs.map → web3-manager-C891F2cd.cjs.map} +1 -1
- package/dist/chunks/{web3-manager-DRkj7s5C.js → web3-manager-D3VYTPBZ.js} +4 -4
- package/dist/chunks/{web3-manager-DRkj7s5C.js.map → web3-manager-D3VYTPBZ.js.map} +1 -1
- package/dist/core/errors/index.d.ts +26 -13
- package/dist/core/errors/index.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 +6 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +5 -5
- package/dist/managers/campaign-manager.d.ts +42 -21
- package/dist/managers/campaign-manager.d.ts.map +1 -1
- package/dist/managers/redemption-manager.d.ts +33 -20
- package/dist/managers/redemption-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.map +1 -1
- package/dist/redemption/api/redemption-api.d.ts +34 -4
- package/dist/redemption/api/redemption-api.d.ts.map +1 -1
- package/dist/redemption/index.d.ts +1 -1
- package/dist/redemption/index.d.ts.map +1 -1
- package/dist/redemption/services/redemption-service.d.ts +31 -7
- 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/token/api/token-api.d.ts +3 -3
- package/dist/token/api/token-api.d.ts.map +1 -1
- package/dist/token/base/base-token-service.d.ts +2 -2
- package/dist/token/base/base-token-service.d.ts.map +1 -1
- package/dist/token/models/index.d.ts +1 -1
- package/dist/token/models/index.d.ts.map +1 -1
- package/dist/token/services/token-service.d.ts +3 -3
- package/dist/token/services/token-service.d.ts.map +1 -1
- package/dist/token/token-sdk.d.ts +5 -5
- package/dist/token/token-sdk.d.ts.map +1 -1
- package/dist/token.cjs +1 -1
- package/dist/token.js +1 -1
- package/dist/web3-chain.cjs +2 -2
- package/dist/web3-chain.js +2 -2
- package/dist/web3-manager.cjs +4 -4
- package/dist/web3-manager.js +4 -4
- package/dist/web3.cjs +4 -4
- package/dist/web3.js +4 -4
- package/package.json +2 -2
- package/dist/chunks/index-DgTEdUgC.js.map +0 -1
- package/dist/chunks/pers-sdk-Day8o-NE.cjs.map +0 -1
- package/dist/chunks/pers-sdk-DdIc44Hv.js.map +0 -1
- package/dist/chunks/redemption-service-Cr_7MnC2.js.map +0 -1
- package/dist/chunks/redemption-service-are8cFKI.cjs.map +0 -1
|
@@ -23,7 +23,7 @@ import type { CampaignDTO, CampaignCreateRequestDTO, CampaignClaimRequestDTO, Ca
|
|
|
23
23
|
*
|
|
24
24
|
* // Get specific campaign details
|
|
25
25
|
* const campaign = await sdk.campaigns.getCampaignById('summer-promo-2024');
|
|
26
|
-
* console.log('Campaign:', campaign.
|
|
26
|
+
* console.log('Campaign:', campaign.name);
|
|
27
27
|
*
|
|
28
28
|
* // User claims campaign reward
|
|
29
29
|
* const claim = await sdk.campaigns.claimCampaign({
|
|
@@ -39,7 +39,7 @@ import type { CampaignDTO, CampaignCreateRequestDTO, CampaignClaimRequestDTO, Ca
|
|
|
39
39
|
*
|
|
40
40
|
* console.log('My Campaign Claims:');
|
|
41
41
|
* userClaims.forEach(claim => {
|
|
42
|
-
* console.log(`- ${claim.campaign.
|
|
42
|
+
* console.log(`- ${claim.campaign.name}`);
|
|
43
43
|
* console.log(` Rewards: ${claim.rewards?.length || 0} tokens`);
|
|
44
44
|
* console.log(` Date: ${claim.claimedAt}`);
|
|
45
45
|
* });
|
|
@@ -55,7 +55,7 @@ import type { CampaignDTO, CampaignCreateRequestDTO, CampaignClaimRequestDTO, Ca
|
|
|
55
55
|
* ```typescript
|
|
56
56
|
* // Admin: Create seasonal campaign
|
|
57
57
|
* const newCampaign = await sdk.campaigns.createCampaign({
|
|
58
|
-
*
|
|
58
|
+
* name: 'Holiday Rewards',
|
|
59
59
|
* description: 'Special holiday loyalty bonuses',
|
|
60
60
|
* startDate: '2024-12-01',
|
|
61
61
|
* endDate: '2024-12-31',
|
|
@@ -92,7 +92,7 @@ export declare class CampaignManager {
|
|
|
92
92
|
* const campaign = await sdk.campaigns.getCampaignById('summer-promo-2024');
|
|
93
93
|
*
|
|
94
94
|
* console.log('Campaign Details:');
|
|
95
|
-
* console.log('
|
|
95
|
+
* console.log('Name:', campaign.name);
|
|
96
96
|
* console.log('Description:', campaign.description);
|
|
97
97
|
* console.log('Active:', campaign.isActive);
|
|
98
98
|
* console.log('Period:', `${campaign.startDate} to ${campaign.endDate}`);
|
|
@@ -195,7 +195,7 @@ export declare class CampaignManager {
|
|
|
195
195
|
* console.log(`Campaign History (${userClaims.length} claims):`);
|
|
196
196
|
*
|
|
197
197
|
* userClaims.forEach((claim, index) => {
|
|
198
|
-
* console.log(`\n${index + 1}. ${claim.campaign.
|
|
198
|
+
* console.log(`\n${index + 1}. ${claim.campaign.name}`);
|
|
199
199
|
* console.log(` Claimed: ${new Date(claim.claimedAt).toLocaleDateString()}`);
|
|
200
200
|
* console.log(` Business: ${claim.business?.displayName || 'N/A'}`);
|
|
201
201
|
*
|
|
@@ -224,7 +224,7 @@ export declare class CampaignManager {
|
|
|
224
224
|
* Returns campaigns with pagination metadata for efficient data loading.
|
|
225
225
|
* Intelligent access: Public gets active only, Business gets own campaigns, Admin gets all.
|
|
226
226
|
*
|
|
227
|
-
* @param options - Pagination and filter options (page, limit, sortBy, sortOrder, active, businessId, include)
|
|
227
|
+
* @param options - Pagination and filter options (page, limit, sortBy, sortOrder, active, tag, search, businessId, startDate, endDate, include)
|
|
228
228
|
* @returns Promise resolving to paginated campaigns with metadata
|
|
229
229
|
*
|
|
230
230
|
* @example
|
|
@@ -241,24 +241,45 @@ export declare class CampaignManager {
|
|
|
241
241
|
* limit: 20
|
|
242
242
|
* });
|
|
243
243
|
*
|
|
244
|
-
* //
|
|
245
|
-
* const
|
|
246
|
-
*
|
|
247
|
-
* sortBy: 'createdAt',
|
|
248
|
-
* sortOrder: 'DESC',
|
|
244
|
+
* // Search campaigns by name or description
|
|
245
|
+
* const searchResults = await sdk.campaigns.getCampaigns({
|
|
246
|
+
* search: 'summer rewards',
|
|
249
247
|
* page: 1,
|
|
250
|
-
* limit:
|
|
248
|
+
* limit: 20
|
|
249
|
+
* });
|
|
250
|
+
*
|
|
251
|
+
* // Filter by tag
|
|
252
|
+
* const taggedCampaigns = await sdk.campaigns.getCampaigns({
|
|
253
|
+
* tag: 'seasonal',
|
|
254
|
+
* active: true
|
|
255
|
+
* });
|
|
256
|
+
*
|
|
257
|
+
* // Filter by date range
|
|
258
|
+
* const dateFiltered = await sdk.campaigns.getCampaigns({
|
|
259
|
+
* startDate: new Date('2026-05-01'),
|
|
260
|
+
* endDate: new Date('2026-12-31'),
|
|
261
|
+
* active: true
|
|
262
|
+
* });
|
|
263
|
+
*
|
|
264
|
+
* // Get campaigns with claim count
|
|
265
|
+
* const withCounts = await sdk.campaigns.getCampaigns({
|
|
266
|
+
* include: ['claimCount']
|
|
251
267
|
* });
|
|
268
|
+
* withCounts.data.forEach(c => console.log(`${c.name}: ${c.claimCount} claims`));
|
|
252
269
|
*
|
|
253
|
-
* // Include related data (trigger sources and
|
|
270
|
+
* // Include related data (trigger sources, businesses, and claim count)
|
|
254
271
|
* const campaignsWithRelations = await sdk.campaigns.getCampaigns({
|
|
255
|
-
* include: ['triggerSources', 'businesses']
|
|
272
|
+
* include: ['triggerSources', 'businesses', 'claimCount']
|
|
256
273
|
* });
|
|
257
274
|
* ```
|
|
258
275
|
*/
|
|
259
276
|
getCampaigns(options?: PaginationOptions & {
|
|
260
277
|
active?: boolean;
|
|
278
|
+
tag?: string;
|
|
279
|
+
search?: string;
|
|
261
280
|
businessId?: string;
|
|
281
|
+
startDate?: Date | string;
|
|
282
|
+
endDate?: Date | string;
|
|
262
283
|
sortBy?: 'name' | 'createdAt' | 'startDate';
|
|
263
284
|
sortOrder?: SortOrder;
|
|
264
285
|
include?: CampaignIncludeRelation[];
|
|
@@ -278,7 +299,7 @@ export declare class CampaignManager {
|
|
|
278
299
|
* ```typescript
|
|
279
300
|
* // Admin operation - create seasonal campaign
|
|
280
301
|
* const campaign = await sdk.campaigns.createCampaign({
|
|
281
|
-
*
|
|
302
|
+
* name: 'Summer Travel Rewards',
|
|
282
303
|
* description: 'Earn bonus points for summer bookings',
|
|
283
304
|
* startDate: '2024-06-01T00:00:00Z',
|
|
284
305
|
* endDate: '2024-08-31T23:59:59Z',
|
|
@@ -287,7 +308,7 @@ export declare class CampaignManager {
|
|
|
287
308
|
* campaignType: 'SEASONAL'
|
|
288
309
|
* });
|
|
289
310
|
*
|
|
290
|
-
* console.log('Campaign created:', campaign.
|
|
311
|
+
* console.log('Campaign created:', campaign.name);
|
|
291
312
|
* console.log('Campaign ID:', campaign.id);
|
|
292
313
|
*
|
|
293
314
|
* // Set up campaign rewards
|
|
@@ -315,13 +336,13 @@ export declare class CampaignManager {
|
|
|
315
336
|
* ```typescript
|
|
316
337
|
* // Admin operation - extend campaign duration
|
|
317
338
|
* const updated = await sdk.campaigns.updateCampaign('summer-2024', {
|
|
318
|
-
*
|
|
339
|
+
* name: 'Extended Summer Travel Rewards',
|
|
319
340
|
* description: 'Earn bonus points for summer and early fall bookings',
|
|
320
341
|
* endDate: '2024-09-30T23:59:59Z', // Extended end date
|
|
321
342
|
* isActive: true
|
|
322
343
|
* });
|
|
323
344
|
*
|
|
324
|
-
* console.log('Campaign updated:', updated.
|
|
345
|
+
* console.log('Campaign updated:', updated.name);
|
|
325
346
|
* console.log('New end date:', updated.endDate);
|
|
326
347
|
* ```
|
|
327
348
|
*/
|
|
@@ -712,7 +733,7 @@ export declare class CampaignManager {
|
|
|
712
733
|
* console.log(`Total campaigns claimed: ${userClaims.length}`);
|
|
713
734
|
*
|
|
714
735
|
* userClaims.forEach((claim, index) => {
|
|
715
|
-
* console.log(`\n${index + 1}. ${claim.campaign.
|
|
736
|
+
* console.log(`\n${index + 1}. ${claim.campaign.name}`);
|
|
716
737
|
* console.log(` Date: ${claim.claimedAt}`);
|
|
717
738
|
* console.log(` Business: ${claim.business?.displayName || 'Direct'}`);
|
|
718
739
|
* console.log(` Rewards: ${claim.rewards?.length || 0} items`);
|
|
@@ -747,8 +768,8 @@ export declare class CampaignManager {
|
|
|
747
768
|
*
|
|
748
769
|
* // Analyze claims by campaign
|
|
749
770
|
* const claimsByCampaign = businessClaims.reduce((acc, claim) => {
|
|
750
|
-
* const
|
|
751
|
-
* acc[
|
|
771
|
+
* const campaignName = claim.campaign.name;
|
|
772
|
+
* acc[campaignName] = (acc[campaignName] || 0) + 1;
|
|
752
773
|
* return acc;
|
|
753
774
|
* }, {});
|
|
754
775
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"campaign-manager.d.ts","sourceRoot":"","sources":["../../src/managers/campaign-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,SAAS,EACT,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAe,eAAe,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EACV,WAAW,EACX,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,yBAAyB,EACzB,0CAA0C,EAC1C,kBAAkB,EAClB,+BAA+B,EAChC,MAAM,iDAAiD,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AACH,qBAAa,eAAe;IAIxB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM,CAAC;IAJjB,OAAO,CAAC,eAAe,CAAkB;gBAG/B,SAAS,EAAE,aAAa,EACxB,MAAM,CAAC,8BAAkB;IAMnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAIpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwDG;IACG,aAAa,CAAC,YAAY,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAarF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACG,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG;QAChD,OAAO,CAAC,EAAE,4BAA4B,EAAE,CAAC;KAC1C,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAKnD
|
|
1
|
+
{"version":3,"file":"campaign-manager.d.ts","sourceRoot":"","sources":["../../src/managers/campaign-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PaginatedResponseDTO, RedemptionRedeemIncludeRelation, ProcessRecordStatus, DynamicContext } from '@explorins/pers-shared';
|
|
2
2
|
import { PersApiClient } from '../core/pers-api-client';
|
|
3
3
|
import { PersEventEmitter } from '../core/events';
|
|
4
|
-
import { RedemptionService, RedemptionRedeemFilters } from '../redemption';
|
|
4
|
+
import { RedemptionService, RedemptionRedeemFilters, RedemptionFilterOptions } from '../redemption';
|
|
5
5
|
import { PaginationOptions } from '../shared/utils/pagination-utils';
|
|
6
6
|
import type { RedemptionDTO, RedemptionCreateRequestDTO, RedemptionTypeDTO, RedemptionRedeemDTO, RedemptionRedeemRequestResponseDTO, TokenUnitCreateRequestDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
|
|
7
7
|
/**
|
|
@@ -85,6 +85,7 @@ export declare class RedemptionManager {
|
|
|
85
85
|
*
|
|
86
86
|
* @param options - Optional filters and pagination:
|
|
87
87
|
* - `active`: Filter by active status (true/false). Admins only - regular users always see active offers
|
|
88
|
+
* - `search`: Free text search across name, description, tags (case-insensitive)
|
|
88
89
|
* - Pagination options: `page`, `limit`, `sortBy`, `sortOrder`
|
|
89
90
|
* @returns Promise resolving to paginated redemption offers
|
|
90
91
|
*
|
|
@@ -97,9 +98,9 @@ export declare class RedemptionManager {
|
|
|
97
98
|
* console.log(`Showing ${offers.length} of ${pagination.total} offers`);
|
|
98
99
|
*
|
|
99
100
|
* offers.forEach(offer => {
|
|
100
|
-
* console.log(`\n${offer.
|
|
101
|
+
* console.log(`\n${offer.name}`);
|
|
101
102
|
* console.log(`${offer.description}`);
|
|
102
|
-
* console.log(`Type: ${offer.
|
|
103
|
+
* console.log(`Type: ${offer.type?.name || 'General'}`);
|
|
103
104
|
*
|
|
104
105
|
* if (offer.tokenUnits?.length) {
|
|
105
106
|
* console.log('Cost:');
|
|
@@ -122,6 +123,23 @@ export declare class RedemptionManager {
|
|
|
122
123
|
* console.log(`\n${affordableOffers.length} offers within your budget`);
|
|
123
124
|
* ```
|
|
124
125
|
*
|
|
126
|
+
* @example Search Redemptions
|
|
127
|
+
* ```typescript
|
|
128
|
+
* // Search by text (matches name, description, tags)
|
|
129
|
+
* const { data: coffeeOffers } = await sdk.redemptions.getRedemptions({
|
|
130
|
+
* search: 'coffee'
|
|
131
|
+
* });
|
|
132
|
+
*
|
|
133
|
+
* console.log(`Found ${coffeeOffers.length} coffee-related offers`);
|
|
134
|
+
*
|
|
135
|
+
* // Search with sorting
|
|
136
|
+
* const { data: sortedResults } = await sdk.redemptions.getRedemptions({
|
|
137
|
+
* search: 'discount',
|
|
138
|
+
* sortBy: 'name',
|
|
139
|
+
* sortOrder: 'ASC'
|
|
140
|
+
* });
|
|
141
|
+
* ```
|
|
142
|
+
*
|
|
125
143
|
* @example Admin - Manage All Redemptions
|
|
126
144
|
* ```typescript
|
|
127
145
|
* // Admins can see all redemptions and filter by status
|
|
@@ -134,14 +152,11 @@ export declare class RedemptionManager {
|
|
|
134
152
|
* console.log(`Active offers: ${activeOnly.length}`);
|
|
135
153
|
* console.log(`Inactive offers: ${inactiveOnly.length}`);
|
|
136
154
|
*
|
|
137
|
-
* //
|
|
138
|
-
* const
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
* }, {});
|
|
143
|
-
*
|
|
144
|
-
* console.log('\nBy type:', offersByType);
|
|
155
|
+
* // Search inactive redemptions
|
|
156
|
+
* const { data: inactiveVouchers } = await sdk.redemptions.getRedemptions({
|
|
157
|
+
* active: false,
|
|
158
|
+
* search: 'voucher'
|
|
159
|
+
* });
|
|
145
160
|
* ```
|
|
146
161
|
*
|
|
147
162
|
* @example Pagination
|
|
@@ -164,9 +179,7 @@ export declare class RedemptionManager {
|
|
|
164
179
|
* }
|
|
165
180
|
* ```
|
|
166
181
|
*/
|
|
167
|
-
getRedemptions(options?:
|
|
168
|
-
active?: boolean;
|
|
169
|
-
} & PaginationOptions): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
182
|
+
getRedemptions(options?: RedemptionFilterOptions): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
170
183
|
/**
|
|
171
184
|
* Get available redemption types
|
|
172
185
|
*
|
|
@@ -327,9 +340,9 @@ export declare class RedemptionManager {
|
|
|
327
340
|
* console.log(`Redemption History (${userRedemptions.length} of ${pagination.total} items):`);
|
|
328
341
|
*
|
|
329
342
|
* userRedemptions.forEach((redemption, index) => {
|
|
330
|
-
* console.log(`\n${index + 1}. ${redemption.redemption.
|
|
343
|
+
* console.log(`\n${index + 1}. ${redemption.redemption.name}`);
|
|
331
344
|
* console.log(` Date: ${new Date(redemption.redeemedAt).toLocaleDateString()}`);
|
|
332
|
-
* console.log(` Type: ${redemption.redemption.
|
|
345
|
+
* console.log(` Type: ${redemption.redemption.type?.name || 'General'}`);
|
|
333
346
|
*
|
|
334
347
|
* if (redemption.voucherCode) {
|
|
335
348
|
* console.log(` Voucher: ${redemption.voucherCode}`);
|
|
@@ -447,7 +460,7 @@ export declare class RedemptionManager {
|
|
|
447
460
|
* ```typescript
|
|
448
461
|
* // Admin operation - create discount redemption
|
|
449
462
|
* const newRedemption = await sdk.redemptions.createRedemption({
|
|
450
|
-
*
|
|
463
|
+
* name: '20% Off Weekend Stay',
|
|
451
464
|
* description: 'Get 20% off your next weekend booking at partner hotels',
|
|
452
465
|
* redemptionTypeId: 'discount-type-id',
|
|
453
466
|
* isActive: true,
|
|
@@ -456,7 +469,7 @@ export declare class RedemptionManager {
|
|
|
456
469
|
* validUntil: '2024-08-31T23:59:59Z'
|
|
457
470
|
* });
|
|
458
471
|
*
|
|
459
|
-
* console.log('New redemption created:', newRedemption.
|
|
472
|
+
* console.log('New redemption created:', newRedemption.name);
|
|
460
473
|
* console.log('Redemption ID:', newRedemption.id);
|
|
461
474
|
*
|
|
462
475
|
* // Set redemption cost
|
|
@@ -486,13 +499,13 @@ export declare class RedemptionManager {
|
|
|
486
499
|
* ```typescript
|
|
487
500
|
* // Admin operation - update redemption details
|
|
488
501
|
* const updated = await sdk.redemptions.updateRedemption('weekend-discount', {
|
|
489
|
-
*
|
|
502
|
+
* name: '25% Off Weekend Stay - Extended!',
|
|
490
503
|
* description: 'Enhanced discount - now 25% off weekend bookings',
|
|
491
504
|
* availableQuantity: 150, // Increased availability
|
|
492
505
|
* validUntil: '2024-09-30T23:59:59Z' // Extended validity
|
|
493
506
|
* });
|
|
494
507
|
*
|
|
495
|
-
* console.log('Redemption updated:', updated.
|
|
508
|
+
* console.log('Redemption updated:', updated.name);
|
|
496
509
|
* console.log('New quantity available:', updated.availableQuantity);
|
|
497
510
|
* ```
|
|
498
511
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redemption-manager.d.ts","sourceRoot":"","sources":["../../src/managers/redemption-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"redemption-manager.d.ts","sourceRoot":"","sources":["../../src/managers/redemption-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/node.cjs
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var persSdk = require('./chunks/pers-sdk-
|
|
3
|
+
var persSdk = require('./chunks/pers-sdk-rmjhPvHo.cjs');
|
|
4
4
|
var persShared = require('@explorins/pers-shared');
|
|
5
5
|
var nodeHttpClient = require('./chunks/node-http-client-D_avaa5F.cjs');
|
|
6
|
-
require('./chunks/index-
|
|
6
|
+
require('./chunks/index-CVuttuU8.cjs');
|
|
7
7
|
require('./user.cjs');
|
|
8
8
|
require('./chunks/pagination-utils-B2jRHMSO.cjs');
|
|
9
9
|
require('./user-status.cjs');
|
|
10
10
|
require('./chunks/token-service-C1xe11OX.cjs');
|
|
11
11
|
require('./chunks/business-membership-service-BfHzIQlc.cjs');
|
|
12
12
|
require('./campaign.cjs');
|
|
13
|
-
require('./chunks/redemption-service-
|
|
13
|
+
require('./chunks/redemption-service-B6ZlAV6_.cjs');
|
|
14
14
|
require('./chunks/transaction-request.builder-D8pIzjYD.cjs');
|
|
15
15
|
require('./chunks/payment-service-Bkw7ZXev.cjs');
|
|
16
|
-
require('./chunks/tenant-manager-
|
|
16
|
+
require('./chunks/tenant-manager-BIQONvmF.cjs');
|
|
17
17
|
require('./chunks/tenant-service-Ch-V3mj-.cjs');
|
|
18
18
|
require('./chunks/analytics-service-CF9AsMQH.cjs');
|
|
19
19
|
require('./donation.cjs');
|
package/dist/node.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { k as StaticJwtAuthProvider, P as PersSDK } from './chunks/pers-sdk-
|
|
1
|
+
import { k as StaticJwtAuthProvider, P as PersSDK } from './chunks/pers-sdk-DgSbePI0.js';
|
|
2
2
|
import { AccountOwnerType } from '@explorins/pers-shared';
|
|
3
3
|
export { AccountOwnerType } from '@explorins/pers-shared';
|
|
4
4
|
import { N as NodeHttpClientAdapter } from './chunks/node-http-client-DloDLfm9.js';
|
|
5
|
-
import './chunks/index-
|
|
5
|
+
import './chunks/index-8y63MFOX.js';
|
|
6
6
|
import './user.js';
|
|
7
7
|
import './chunks/pagination-utils-9vQ-Npkr.js';
|
|
8
8
|
import './user-status.js';
|
|
9
9
|
import './chunks/token-service-BxEO5YVN.js';
|
|
10
10
|
import './chunks/business-membership-service-CFa-TI39.js';
|
|
11
11
|
import './campaign.js';
|
|
12
|
-
import './chunks/redemption-service-
|
|
12
|
+
import './chunks/redemption-service-C0vys0OQ.js';
|
|
13
13
|
import './chunks/transaction-request.builder-BZ6Uq6Qe.js';
|
|
14
14
|
import './chunks/payment-service-IvM6rryM.js';
|
|
15
|
-
import './chunks/tenant-manager-
|
|
15
|
+
import './chunks/tenant-manager-C5txKrZA.js';
|
|
16
16
|
import './chunks/tenant-service-BnTAZCxS.js';
|
|
17
17
|
import './chunks/analytics-service-vm7B7LhS.js';
|
|
18
18
|
import './donation.js';
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@explorins/pers-sdk",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.23",
|
|
4
4
|
"description": "Platform-agnostic SDK for PERS (Phygital Experience Rewards System) - Core business logic and API integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"publish-with-docs": "npm run clean && npm run build && npm run docs && npm version patch && npm publish"
|
|
133
133
|
},
|
|
134
134
|
"dependencies": {
|
|
135
|
-
"@explorins/pers-shared": "^2.1.
|
|
135
|
+
"@explorins/pers-shared": "^2.1.125",
|
|
136
136
|
"@explorins/web3-ts": "^0.3.77",
|
|
137
137
|
"@explorins/web3-types": "^1.2.0",
|
|
138
138
|
"ethers": "^6.15.0"
|
package/dist/pers-sdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pers-sdk.d.ts","sourceRoot":"","sources":["../src/pers-sdk.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8JG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAoB,OAAO,EAAY,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EACL,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACpB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,WAAW,CAAC,CAAoB;IACxC,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,WAAW,CAAC,CAAkB;IACtC,OAAO,CAAC,UAAU,CAAC,CAAkB;IACrC,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,UAAU,CAAC,CAAkB;IACrC,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,UAAU,CAAC,CAAmB;IACtC,OAAO,CAAC,UAAU,CAAC,CAAkB;IACrC,OAAO,CAAC,eAAe,CAAC,CAAuB;IAC/C,OAAO,CAAC,SAAS,CAAC,CAAiB;IACnC,OAAO,CAAC,aAAa,CAAC,CAAsB;IAC5C,OAAO,CAAC,kBAAkB,CAAC,CAAqB;IAGhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;gBACS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU;IAWtD;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAwBpC;;;;;;;;;;;;;;;;OAgBG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC1C;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"pers-sdk.d.ts","sourceRoot":"","sources":["../src/pers-sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TokenUnitCreateRequestDTO, RedemptionTypeCreateRequestDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
|
|
2
2
|
import { PersApiClient } from '../../core/pers-api-client';
|
|
3
3
|
import { RedemptionDTO, RedemptionCreateRequestDTO, RedemptionRedeemRequestDTO, RedemptionTypeDTO, RedemptionRedeemDTO, RedemptionRedeemRequestResponseDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
|
|
4
|
-
import { PaginatedResponseDTO, RedemptionRedeemIncludeRelation, ProcessRecordStatus } from '@explorins/pers-shared';
|
|
4
|
+
import { PaginatedResponseDTO, RedemptionRedeemIncludeRelation, RedemptionIncludeRelation, ProcessRecordStatus, SortOrder } from '@explorins/pers-shared';
|
|
5
5
|
import { PaginationOptions } from '../../shared';
|
|
6
6
|
/**
|
|
7
7
|
* Platform-Agnostic Redemption API Client (UPDATED - RESTful Design)
|
|
@@ -27,13 +27,33 @@ export declare class RedemptionApi {
|
|
|
27
27
|
* - Public users: Get active redemptions only
|
|
28
28
|
* - Admin users: Get all redemptions with optional filtering
|
|
29
29
|
*
|
|
30
|
-
* @param options - Filter and pagination options (active, adminAccess, page, limit, sortBy, sortOrder)
|
|
30
|
+
* @param options - Filter and pagination options (active, search, adminAccess, startDate, endDate, include, page, limit, sortBy, sortOrder)
|
|
31
31
|
* @returns Paginated response with redemptions
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* // Get redemptions with redeem count included
|
|
36
|
+
* const redemptions = await api.getRedemptions({ include: ['redeemCount'] });
|
|
37
|
+
*
|
|
38
|
+
* // Filter by date range
|
|
39
|
+
* const dateFiltered = await api.getRedemptions({
|
|
40
|
+
* startDate: new Date('2026-05-01'),
|
|
41
|
+
* endDate: new Date('2026-06-30')
|
|
42
|
+
* });
|
|
43
|
+
* ```
|
|
32
44
|
*/
|
|
33
45
|
getRedemptions(options?: {
|
|
34
46
|
active?: boolean;
|
|
47
|
+
search?: string;
|
|
35
48
|
adminAccess?: boolean;
|
|
36
|
-
|
|
49
|
+
startDate?: Date | string;
|
|
50
|
+
endDate?: Date | string;
|
|
51
|
+
include?: RedemptionIncludeRelation[];
|
|
52
|
+
page?: number;
|
|
53
|
+
limit?: number;
|
|
54
|
+
sortBy?: 'name' | 'createdAt';
|
|
55
|
+
sortOrder?: SortOrder;
|
|
56
|
+
}): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
37
57
|
/**
|
|
38
58
|
* PUBLIC: Get redemption types
|
|
39
59
|
*
|
|
@@ -46,8 +66,18 @@ export declare class RedemptionApi {
|
|
|
46
66
|
* PUBLIC: Get redemption by ID
|
|
47
67
|
*
|
|
48
68
|
* Updated: /redemption/:id → /redemptions/:id
|
|
69
|
+
*
|
|
70
|
+
* @param id - Redemption UUID
|
|
71
|
+
* @param include - Relations to include: 'redeemCount'
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```typescript
|
|
75
|
+
* // Get redemption with redeem count
|
|
76
|
+
* const redemption = await api.getRedemptionById('123', ['redeemCount']);
|
|
77
|
+
* console.log(redemption.redeemCount);
|
|
78
|
+
* ```
|
|
49
79
|
*/
|
|
50
|
-
getRedemptionById(id: string): Promise<RedemptionDTO>;
|
|
80
|
+
getRedemptionById(id: string, include?: RedemptionIncludeRelation[]): Promise<RedemptionDTO>;
|
|
51
81
|
/**
|
|
52
82
|
* PUBLIC: Get available supply for redemption
|
|
53
83
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redemption-api.d.ts","sourceRoot":"","sources":["../../../src/redemption/api/redemption-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AAC/H,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,aAAa,EACb,0BAA0B,EAC1B,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,EACnB,kCAAkC,EACnC,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"redemption-api.d.ts","sourceRoot":"","sources":["../../../src/redemption/api/redemption-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* Handles redemption operations across different authorization levels
|
|
6
6
|
*/
|
|
7
7
|
export { RedemptionApi } from './api/redemption-api';
|
|
8
|
-
export { RedemptionService } from './services/redemption-service';
|
|
8
|
+
export { RedemptionService, type RedemptionFilterOptions } from './services/redemption-service';
|
|
9
9
|
export type { RedemptionRedeemFilters, RedemptionRedeemQueryOptions } from './models';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/redemption/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/redemption/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,EAAE,iBAAiB,EAAE,KAAK,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGhG,YAAY,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,7 +1,25 @@
|
|
|
1
|
-
import { PaginatedResponseDTO, RedemptionRedeemIncludeRelation, ProcessRecordStatus } from '@explorins/pers-shared';
|
|
1
|
+
import { PaginatedResponseDTO, RedemptionRedeemIncludeRelation, RedemptionIncludeRelation, ProcessRecordStatus, SortOrder } from '@explorins/pers-shared';
|
|
2
2
|
import { RedemptionApi } from '../api/redemption-api';
|
|
3
3
|
import { TokenUnitCreateRequestDTO, RedemptionDTO, RedemptionCreateRequestDTO, RedemptionTypeDTO, RedemptionRedeemDTO, RedemptionRedeemRequestDTO, RedemptionRedeemRequestResponseDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
|
|
4
4
|
import { PaginationOptions } from '../../shared/utils/pagination-utils';
|
|
5
|
+
/**
|
|
6
|
+
* Redemption filter options for getRedemptions
|
|
7
|
+
*/
|
|
8
|
+
export interface RedemptionFilterOptions {
|
|
9
|
+
active?: boolean;
|
|
10
|
+
search?: string;
|
|
11
|
+
adminAccess?: boolean;
|
|
12
|
+
/** Filter redemptions starting on or after this date */
|
|
13
|
+
startDate?: Date | string;
|
|
14
|
+
/** Filter redemptions ending on or before this date */
|
|
15
|
+
endDate?: Date | string;
|
|
16
|
+
/** Include relations: 'redeemCount' */
|
|
17
|
+
include?: RedemptionIncludeRelation[];
|
|
18
|
+
page?: number;
|
|
19
|
+
limit?: number;
|
|
20
|
+
sortBy?: 'name' | 'createdAt';
|
|
21
|
+
sortOrder?: SortOrder;
|
|
22
|
+
}
|
|
5
23
|
/**
|
|
6
24
|
* Platform-Agnostic Redemption Service
|
|
7
25
|
*
|
|
@@ -16,12 +34,17 @@ export declare class RedemptionService {
|
|
|
16
34
|
/**
|
|
17
35
|
* UNIFIED: Get redemptions with intelligent access control and pagination
|
|
18
36
|
* @param options.active - Filter by active status
|
|
37
|
+
* @param options.search - Free text search across name, description, tags (case-insensitive)
|
|
19
38
|
* @param options.adminAccess - Force admin access
|
|
39
|
+
* @param options.startDate - Filter redemptions starting on or after this date
|
|
40
|
+
* @param options.endDate - Filter redemptions ending on or before this date
|
|
41
|
+
* @param options.include - Include relations: 'redeemCount'
|
|
42
|
+
* @param options.page - Page number (1-indexed)
|
|
43
|
+
* @param options.limit - Results per page
|
|
44
|
+
* @param options.sortBy - Field to sort by ('name' | 'createdAt')
|
|
45
|
+
* @param options.sortOrder - Sort direction ('ASC' | 'DESC')
|
|
20
46
|
*/
|
|
21
|
-
getRedemptions(options?:
|
|
22
|
-
active?: boolean;
|
|
23
|
-
adminAccess?: boolean;
|
|
24
|
-
}): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
47
|
+
getRedemptions(options?: RedemptionFilterOptions): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
25
48
|
/**
|
|
26
49
|
* Convenience: Get active redemptions (public)
|
|
27
50
|
*/
|
|
@@ -59,9 +82,10 @@ export declare class RedemptionService {
|
|
|
59
82
|
status?: ProcessRecordStatus;
|
|
60
83
|
}, options?: PaginationOptions, include?: RedemptionRedeemIncludeRelation[]): Promise<PaginatedResponseDTO<RedemptionRedeemDTO>>;
|
|
61
84
|
/**
|
|
62
|
-
* Convenience: Get redemptions as admin
|
|
85
|
+
* Convenience: Get redemptions as admin with filtering and search
|
|
86
|
+
* @param options - Filter options (active, search, pagination)
|
|
63
87
|
*/
|
|
64
|
-
getRedemptionsAsAdmin(
|
|
88
|
+
getRedemptionsAsAdmin(options?: RedemptionFilterOptions): Promise<PaginatedResponseDTO<RedemptionDTO>>;
|
|
65
89
|
/**
|
|
66
90
|
* ADMIN: Create redemption
|
|
67
91
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redemption-service.d.ts","sourceRoot":"","sources":["../../../src/redemption/services/redemption-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"redemption-service.d.ts","sourceRoot":"","sources":["../../../src/redemption/services/redemption-service.ts"],"names":[],"mappings":"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"}
|
package/dist/redemption.cjs
CHANGED
package/dist/redemption.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-
|
|
1
|
+
export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-C0vys0OQ.js';
|
|
2
2
|
import '@explorins/pers-shared';
|
|
3
3
|
import './chunks/pagination-utils-9vQ-Npkr.js';
|
|
4
4
|
//# sourceMappingURL=redemption.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PersApiClient } from '../../core/pers-api-client';
|
|
2
|
-
import { TokenDTO, TokenTypeDTO, TokenCreateRequestDTO,
|
|
2
|
+
import { TokenDTO, TokenTypeDTO, TokenCreateRequestDTO, TokenMetadataCreateRequestDTO, TokenUpdateRequestDTO, TokenMetadataDTO } from '../models';
|
|
3
3
|
import { PaginatedResponseDTO } from '@explorins/pers-shared';
|
|
4
4
|
import { PaginationOptions } from '../../shared';
|
|
5
5
|
export declare class TokenApi {
|
|
@@ -68,12 +68,12 @@ export declare class TokenApi {
|
|
|
68
68
|
/**
|
|
69
69
|
* ADMIN: Create token metadata
|
|
70
70
|
*/
|
|
71
|
-
createTokenMetadata(tokenId: string, tokenData:
|
|
71
|
+
createTokenMetadata(tokenId: string, tokenData: TokenMetadataCreateRequestDTO): Promise<TokenDTO>;
|
|
72
72
|
/**
|
|
73
73
|
* ADMIN: Update token metadata (ERC721 only)
|
|
74
74
|
* Note: Existing minted NFTs retain their original metadata - this only affects future mints
|
|
75
75
|
*/
|
|
76
|
-
updateTokenMetadata(metadataId: string, tokenData:
|
|
76
|
+
updateTokenMetadata(metadataId: string, tokenData: TokenMetadataCreateRequestDTO): Promise<TokenMetadataDTO>;
|
|
77
77
|
/**
|
|
78
78
|
* ADMIN: Toggle token metadata status (separate from token status)
|
|
79
79
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-api.d.ts","sourceRoot":"","sources":["../../../src/token/api/token-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"token-api.d.ts","sourceRoot":"","sources":["../../../src/token/api/token-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAA6D,MAAM,cAAc,CAAC;AAG5G,qBAAa,QAAQ;IACP,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAa;IAM7B;;;;;;;OAOG;IACG,eAAe,CAAC,eAAe,GAAE,OAAe,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAS7H;;;;;OAKG;IACG,mBAAmB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAMnG;;OAEG;IACG,0BAA0B,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIrD;;;;;;;OAOG;IACG,qBAAqB,CAAC,eAAe,GAAE,OAAe,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IASnI;;;;;;;OAOG;IACG,qBAAqB,CAAC,eAAe,GAAE,OAAe,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IASnI;;OAEG;IACG,yBAAyB,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAY3G;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAItE;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIvF;;;OAGG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3D;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOtG;;OAEG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIvG;;;OAGG;IACG,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlH;;OAEG;IACG,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI9E;;OAEG;IACG,eAAe,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;CAGtE"}
|