@explorins/pers-sdk 2.1.37 → 2.1.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/business/api/business-api.d.ts +4 -0
  2. package/dist/business/api/business-api.d.ts.map +1 -1
  3. package/dist/business/index.d.ts +1 -1
  4. package/dist/business/index.d.ts.map +1 -1
  5. package/dist/business.cjs +1 -1
  6. package/dist/business.js +1 -1
  7. package/dist/chunks/{base-token-service-BGuuZX4b.js → base-token-service-N1gwRD8N.js} +2 -2
  8. package/dist/chunks/{base-token-service-BGuuZX4b.js.map → base-token-service-N1gwRD8N.js.map} +1 -1
  9. package/dist/chunks/{base-token-service-DSye0WD2.cjs → base-token-service-W7TU23qU.cjs} +2 -2
  10. package/dist/chunks/{base-token-service-DSye0WD2.cjs.map → base-token-service-W7TU23qU.cjs.map} +1 -1
  11. package/dist/chunks/{business-membership-service-B9ItWZ2_.cjs → business-membership-service-Dkb780NX.cjs} +21 -1
  12. package/dist/chunks/business-membership-service-Dkb780NX.cjs.map +1 -0
  13. package/dist/chunks/{business-membership-service-CPcE-AW0.js → business-membership-service-NLoqoFpG.js} +21 -1
  14. package/dist/chunks/business-membership-service-NLoqoFpG.js.map +1 -0
  15. package/dist/chunks/{pers-sdk-Dds2lB27.js → pers-sdk-CNIfzWYX.js} +155 -75
  16. package/dist/chunks/pers-sdk-CNIfzWYX.js.map +1 -0
  17. package/dist/chunks/{pers-sdk-DemghJ3a.cjs → pers-sdk-Cwlrl8jb.cjs} +155 -75
  18. package/dist/chunks/pers-sdk-Cwlrl8jb.cjs.map +1 -0
  19. package/dist/chunks/{redemption-service-Dc_0Kzd0.cjs → redemption-service-KamEndzB.cjs} +7 -1
  20. package/dist/chunks/{redemption-service-Dc_0Kzd0.cjs.map → redemption-service-KamEndzB.cjs.map} +1 -1
  21. package/dist/chunks/{redemption-service-DWhZgrZT.js → redemption-service-w0GMdF0m.js} +7 -1
  22. package/dist/chunks/{redemption-service-DWhZgrZT.js.map → redemption-service-w0GMdF0m.js.map} +1 -1
  23. package/dist/chunks/{token-service-qRSYG9uT.js → token-service-BcuDj292.js} +79 -14
  24. package/dist/chunks/token-service-BcuDj292.js.map +1 -0
  25. package/dist/chunks/{token-service-BJqu5Xap.cjs → token-service-CnnrCOsg.cjs} +79 -14
  26. package/dist/chunks/token-service-CnnrCOsg.cjs.map +1 -0
  27. package/dist/core/auth/refresh-manager.d.ts +12 -2
  28. package/dist/core/auth/refresh-manager.d.ts.map +1 -1
  29. package/dist/core/auth/services/auth-service.d.ts +4 -1
  30. package/dist/core/auth/services/auth-service.d.ts.map +1 -1
  31. package/dist/core/pers-api-client.d.ts.map +1 -1
  32. package/dist/core.cjs +4 -4
  33. package/dist/core.js +4 -4
  34. package/dist/index.cjs +5 -5
  35. package/dist/index.js +5 -5
  36. package/dist/managers/redemption-manager.d.ts +13 -0
  37. package/dist/managers/redemption-manager.d.ts.map +1 -1
  38. package/dist/managers/token-manager.d.ts +63 -39
  39. package/dist/managers/token-manager.d.ts.map +1 -1
  40. package/dist/node.cjs +4 -4
  41. package/dist/node.js +4 -4
  42. package/dist/package.json +2 -2
  43. package/dist/redemption/services/redemption-service.d.ts +4 -0
  44. package/dist/redemption/services/redemption-service.d.ts.map +1 -1
  45. package/dist/redemption.cjs +1 -1
  46. package/dist/redemption.js +1 -1
  47. package/dist/token/api/token-api.d.ts +50 -12
  48. package/dist/token/api/token-api.d.ts.map +1 -1
  49. package/dist/token/index.d.ts +1 -1
  50. package/dist/token/index.d.ts.map +1 -1
  51. package/dist/token/services/token-service.d.ts +40 -9
  52. package/dist/token/services/token-service.d.ts.map +1 -1
  53. package/dist/token.cjs +2 -2
  54. package/dist/token.js +2 -2
  55. package/dist/trigger-source/api/trigger-source-api.d.ts +9 -10
  56. package/dist/trigger-source/api/trigger-source-api.d.ts.map +1 -1
  57. package/dist/trigger-source/index.d.ts +1 -0
  58. package/dist/trigger-source/index.d.ts.map +1 -1
  59. package/dist/trigger-source/models/index.d.ts +5 -13
  60. package/dist/trigger-source/models/index.d.ts.map +1 -1
  61. package/dist/trigger-source/services/trigger-source-service.d.ts +3 -11
  62. package/dist/trigger-source/services/trigger-source-service.d.ts.map +1 -1
  63. package/dist/trigger-source.cjs +20 -1
  64. package/dist/trigger-source.cjs.map +1 -1
  65. package/dist/trigger-source.js +20 -1
  66. package/dist/trigger-source.js.map +1 -1
  67. package/package.json +2 -2
  68. package/dist/chunks/business-membership-service-B9ItWZ2_.cjs.map +0 -1
  69. package/dist/chunks/business-membership-service-CPcE-AW0.js.map +0 -1
  70. package/dist/chunks/pers-sdk-Dds2lB27.js.map +0 -1
  71. package/dist/chunks/pers-sdk-DemghJ3a.cjs.map +0 -1
  72. package/dist/chunks/token-service-BJqu5Xap.cjs.map +0 -1
  73. package/dist/chunks/token-service-qRSYG9uT.js.map +0 -1
@@ -87,30 +87,30 @@ class TokenApi {
87
87
  return this.apiClient.get(url);
88
88
  }
89
89
  /**
90
- * Get all token metadata with filtering and pagination
90
+ * Get all token metadata with filtering, pagination, and include relations
91
91
  *
92
92
  * Useful for displaying rewards (ERC1155) or stamps (ERC721) in tables.
93
93
  * Non-admin users always get active metadata only.
94
94
  *
95
- * @param options - Filter and pagination options
95
+ * @param options - Filter, pagination, and include options
96
96
  * @returns Paginated response with token metadata
97
97
  *
98
- * @example Get all active rewards
98
+ * @example Get all active rewards with mint/burn counts
99
99
  * ```typescript
100
100
  * const rewards = await tokenApi.getTokenMetadata({
101
101
  * tokenType: 'ERC1155',
102
102
  * active: true,
103
- * limit: 10
103
+ * limit: 10,
104
+ * include: ['mintCount', 'burnCount', 'token']
104
105
  * });
105
106
  * ```
106
107
  *
107
- * @example Get stamps with search
108
+ * @example Get stamps with owner business included
108
109
  * ```typescript
109
110
  * const stamps = await tokenApi.getTokenMetadata({
110
111
  * tokenType: 'ERC721',
111
112
  * search: 'gold',
112
- * sortBy: 'name',
113
- * sortOrder: 'ASC'
113
+ * include: ['ownerBusiness', 'token']
114
114
  * });
115
115
  * ```
116
116
  */
@@ -135,6 +135,14 @@ class TokenApi {
135
135
  params.set('tags', tagsArray.join(','));
136
136
  }
137
137
  }
138
+ // Filter by owner business
139
+ if (options?.ownerBusinessId) {
140
+ params.set('ownerBusinessId', options.ownerBusinessId);
141
+ }
142
+ // Include relations (ownerBusiness, mintCount, burnCount, token)
143
+ if (options?.include && options.include.length > 0) {
144
+ params.set('include', options.include.join(','));
145
+ }
138
146
  const response = await this.apiClient.get(`${this.basePath}/metadata?${params.toString()}`);
139
147
  return paginationUtils.normalizeToPaginated(response);
140
148
  }
@@ -194,6 +202,30 @@ class TokenApi {
194
202
  async createTokenType(tokenType) {
195
203
  return this.apiClient.post(`${this.basePath}/types`, tokenType);
196
204
  }
205
+ /**
206
+ * ADMIN: Delete token metadata (soft delete)
207
+ *
208
+ * Soft deletes token metadata by setting deletedAt timestamp.
209
+ * Will fail with 409 Conflict if metadata is in use by active campaigns or redemptions.
210
+ *
211
+ * @param metadataId - ID of the token metadata to delete
212
+ * @throws {PersApiError} 409 Conflict if metadata is in use
213
+ *
214
+ * @example
215
+ * ```typescript
216
+ * try {
217
+ * await tokenApi.deleteTokenMetadata('metadata-123');
218
+ * console.log('Metadata deleted');
219
+ * } catch (error) {
220
+ * if (error.statusCode === 409) {
221
+ * console.log('Cannot delete: metadata is in use');
222
+ * }
223
+ * }
224
+ * ```
225
+ */
226
+ async deleteTokenMetadata(metadataId) {
227
+ return this.apiClient.delete(`${this.basePath}/metadata/${metadataId}`);
228
+ }
197
229
  }
198
230
 
199
231
  /**
@@ -248,35 +280,57 @@ class TokenService {
248
280
  return this.tokenApi.getTokenByContractAddress(contractAddress, contractTokenId);
249
281
  }
250
282
  /**
251
- * Get all token metadata with filtering and pagination
283
+ * Get all token metadata with filtering, pagination, and include relations
252
284
  *
253
285
  * Useful for displaying rewards (ERC1155) or stamps (ERC721) in tables.
254
286
  * Non-admin users always get active metadata only.
255
287
  *
256
- * @param options - Filter and pagination options
288
+ * @param options - Filter, pagination, and include options
257
289
  * @returns Paginated response with token metadata
290
+ *
291
+ * @example Get rewards with counts
292
+ * ```typescript
293
+ * const rewards = await tokenService.getTokenMetadata({
294
+ * tokenType: 'ERC1155',
295
+ * include: ['mintCount', 'burnCount', 'token']
296
+ * });
297
+ * ```
258
298
  */
259
299
  async getTokenMetadata(options) {
260
300
  return this.tokenApi.getTokenMetadata(options);
261
301
  }
262
302
  /**
263
- * Get rewards (ERC1155 token metadata) with filtering and pagination
303
+ * Get rewards (ERC1155 token metadata) with filtering, pagination, and include relations
264
304
  *
265
305
  * Convenience method for fetching reward metadata.
266
306
  *
267
- * @param options - Filter and pagination options (tokenType is set automatically)
307
+ * @param options - Filter, pagination, and include options (tokenType is set automatically)
268
308
  * @returns Paginated response with reward metadata
309
+ *
310
+ * @example Get rewards with mint/burn counts and token info
311
+ * ```typescript
312
+ * const rewards = await tokenService.getRewards({
313
+ * include: ['mintCount', 'burnCount', 'token', 'ownerBusiness']
314
+ * });
315
+ * ```
269
316
  */
270
317
  async getRewards(options) {
271
318
  return this.tokenApi.getTokenMetadata({ ...options, tokenType: persShared.NativeTokenTypes.ERC1155 });
272
319
  }
273
320
  /**
274
- * Get stamps (ERC721 token metadata) with filtering and pagination
321
+ * Get stamps (ERC721 token metadata) with filtering, pagination, and include relations
275
322
  *
276
323
  * Convenience method for fetching stamp metadata.
277
324
  *
278
- * @param options - Filter and pagination options (tokenType is set automatically)
325
+ * @param options - Filter, pagination, and include options (tokenType is set automatically)
279
326
  * @returns Paginated response with stamp metadata
327
+ *
328
+ * @example Get stamps with mint/burn counts and token info
329
+ * ```typescript
330
+ * const stamps = await tokenService.getStamps({
331
+ * include: ['mintCount', 'burnCount', 'token', 'ownerBusiness']
332
+ * });
333
+ * ```
280
334
  */
281
335
  async getStamps(options) {
282
336
  return this.tokenApi.getTokenMetadata({ ...options, tokenType: persShared.NativeTokenTypes.ERC721 });
@@ -333,8 +387,19 @@ class TokenService {
333
387
  async createTokenType(tokenType) {
334
388
  return this.tokenApi.createTokenType(tokenType);
335
389
  }
390
+ /**
391
+ * ADMIN: Delete token metadata (soft delete)
392
+ *
393
+ * Soft deletes token metadata. Will fail if metadata is in use.
394
+ *
395
+ * @param metadataId - ID of the token metadata to delete
396
+ * @throws {PersApiError} 409 Conflict if metadata is in use by campaigns/redemptions
397
+ */
398
+ async deleteTokenMetadata(metadataId) {
399
+ return this.tokenApi.deleteTokenMetadata(metadataId);
400
+ }
336
401
  }
337
402
 
338
403
  exports.TokenApi = TokenApi;
339
404
  exports.TokenService = TokenService;
340
- //# sourceMappingURL=token-service-BJqu5Xap.cjs.map
405
+ //# sourceMappingURL=token-service-CnnrCOsg.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-service-CnnrCOsg.cjs","sources":["../../src/token/api/token-api.ts","../../src/token/services/token-service.ts"],"sourcesContent":[null,null],"names":["buildPaginationParams","normalizeToPaginated","NativeTokenTypes"],"mappings":"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"}
@@ -7,6 +7,14 @@
7
7
  */
8
8
  import { AuthService } from './services/auth-service';
9
9
  import { PersAuthProvider } from './auth-provider.interface';
10
+ /**
11
+ * Error classification for refresh failures
12
+ */
13
+ export interface RefreshResult {
14
+ success: boolean;
15
+ retryable: boolean;
16
+ error?: Error;
17
+ }
10
18
  export declare class TokenRefreshManager {
11
19
  private authService;
12
20
  private authProvider;
@@ -17,6 +25,7 @@ export declare class TokenRefreshManager {
17
25
  private readonly validationCacheDurationMs;
18
26
  private readonly MAX_RETRY_ATTEMPTS;
19
27
  private readonly RETRY_DELAY_MS;
28
+ private activeRefreshPromise;
20
29
  constructor(authService: AuthService, authProvider: PersAuthProvider);
21
30
  /**
22
31
  * Ensures the access token is valid, refreshing if needed.
@@ -42,8 +51,9 @@ export declare class TokenRefreshManager {
42
51
  private isDefinitiveAuthFailure;
43
52
  private delay;
44
53
  /**
45
- * @deprecated Use ensureValidToken() instead
54
+ * Attempt token refresh: internal first, then provider token fallback.
55
+ * DEDUPLICATES concurrent calls - all callers share the same promise.
46
56
  */
47
- attemptInternalRefresh(): Promise<boolean>;
57
+ attemptInternalRefresh(): Promise<RefreshResult>;
48
58
  }
49
59
  //# sourceMappingURL=refresh-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"refresh-manager.d.ts","sourceRoot":"","sources":["../../../src/core/auth/refresh-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAY7D,qBAAa,mBAAmB;IAiB5B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,YAAY;IAhBtB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAQ;IAElD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAM;IAEjD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAO;IAGlD,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAS;IAGnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAK;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;gBAG7B,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,gBAAgB;IAGxC;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CvC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;;OAGG;YACW,uBAAuB;IA4BrC;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,KAAK;IAIb;;OAEG;IACG,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;CAIjD"}
1
+ {"version":3,"file":"refresh-manager.d.ts","sourceRoot":"","sources":["../../../src/core/auth/refresh-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,qBAAa,mBAAmB;IAoB5B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,YAAY;IAnBtB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAQ;IAElD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAM;IAEjD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAO;IAGlD,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAS;IAGnD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAK;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAGvC,OAAO,CAAC,oBAAoB,CAAuC;gBAGzD,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,gBAAgB;IAGxC;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CvC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;;OAGG;YACW,uBAAuB;IA4BrC;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,KAAK;IAIb;;;OAGG;IACG,sBAAsB,IAAI,OAAO,CAAC,aAAa,CAAC;CAoBvD"}
@@ -144,9 +144,12 @@ export declare class AuthService {
144
144
  * Extracts context (tenantId/businessId) from the current refresh token to ensure
145
145
  * the recovered session maintains the same context.
146
146
  *
147
+ * This is a PUBLIC method that can be called by TokenRefreshManager when internal
148
+ * refresh fails, to try external (provider token) recovery before giving up.
149
+ *
147
150
  * @returns true if session was successfully recovered
148
151
  */
149
- private attemptProviderTokenRecovery;
152
+ attemptProviderTokenRecovery(): Promise<boolean>;
150
153
  /**
151
154
  * Performs the actual auth failure cleanup
152
155
  */
@@ -1 +1 @@
1
- {"version":3,"file":"auth-service.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/services/auth-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAgC,MAAM,4BAA4B,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAKlF,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,OAAO,EACP,WAAW,EACX,QAAQ,EACT,MAAM,uDAAuD,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AASD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,+FAKkB,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;;GAGG;AACH,qBAAa,WAAW;IAMpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY,CAAC;IANvB,OAAO,CAAC,oBAAoB,CAAgD;IAC5E,OAAO,CAAC,wBAAwB,CAA8B;IAC9D,OAAO,CAAC,iBAAiB,CAA8B;gBAG7C,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,kCAAsB;IAI7C;;OAEG;IACH,OAAO,KAAK,gBAAgB,GAE3B;IAED;;OAEG;YACW,cAAc;IAmB5B;;;;;;;OAOG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUxG;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUpE;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUvG;;OAEG;IACG,oBAAoB,CAAC,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAU7F;;OAEG;IACG,kBAAkB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmBhF;;OAEG;YACW,cAAc;IAqB5B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAQlC;;;OAGG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IAIxD;;;;;;;;;;;;;;;;;;OAkBG;IACH,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IA2BhD;;;;;;;;;;;;OAYG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BxC;;OAEG;YACW,8BAA8B;IAe5C;;;;;;OAMG;YACW,4BAA4B;IAyD1C;;OAEG;YACW,kBAAkB;IAWhC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAUtC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIxC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC;IAIhD;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC;IAQ1C;;OAEG;YACW,WAAW;CAmC1B"}
1
+ {"version":3,"file":"auth-service.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/services/auth-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAgC,MAAM,4BAA4B,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAKlF,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,OAAO,EACP,WAAW,EACX,QAAQ,EACT,MAAM,uDAAuD,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AASD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,+FAKkB,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElE;AAED;;;GAGG;AACH,qBAAa,WAAW;IAMpB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,YAAY,CAAC;IANvB,OAAO,CAAC,oBAAoB,CAAgD;IAC5E,OAAO,CAAC,wBAAwB,CAA8B;IAC9D,OAAO,CAAC,iBAAiB,CAA8B;gBAG7C,OAAO,EAAE,OAAO,EAChB,YAAY,CAAC,kCAAsB;IAI7C;;OAEG;IACH,OAAO,KAAK,gBAAgB,GAE3B;IAED;;OAEG;YACW,cAAc;IAmB5B;;;;;;;OAOG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUxG;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUpE;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAUvG;;OAEG;IACG,oBAAoB,CAAC,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAU7F;;OAEG;IACG,kBAAkB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAmBhF;;OAEG;YACW,cAAc;IAqB5B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAQlC;;;OAGG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IAIxD;;;;;;;;;;;;;;;;;;OAkBG;IACH,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IA2BhD;;;;;;;;;;;;OAYG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BxC;;OAEG;YACW,8BAA8B;IAe5C;;;;;;;;;OASG;IACG,4BAA4B,IAAI,OAAO,CAAC,OAAO,CAAC;IAyDtD;;OAEG;YACW,kBAAkB;IAWhC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAUtC;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIxC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC;IAIhD;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC;IAQ1C;;OAEG;YACW,WAAW;CAmC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"pers-api-client.d.ts","sourceRoot":"","sources":["../../src/core/pers-api-client.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAkB,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAgB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAa3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI5C,qBAAa,aAAa;IAiBtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IAjBhB,OAAO,CAAC,qBAAqB,CAA8B;IAC3D,OAAO,CAAC,OAAO,CAAC,CAAmB;IAEnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuC;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD;;;;;OAKG;gBAEO,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,UAAU;YAoCd,UAAU;IAcxB;;;;;;;;;;;;;;;;;OAiBG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;YAQzB,iBAAiB;IAW/B;;OAEG;YACW,OAAO;IAkHrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgCtB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAIzC;;;;;;;;;;;;;OAaG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;IAInG;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3H;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;OAEG;IACG,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7C;;;;;;OAMG;YACW,UAAU;IAuDxB;;OAEG;IACH,cAAc,IAAI,WAAW;IAI7B;;OAEG;IACH,SAAS,IAAI,UAAU,CAAC,OAAO,iBAAiB,CAAC;IAIjD;;OAEG;IACH,iBAAiB,IAAI,UAAU;CAGhC"}
1
+ {"version":3,"file":"pers-api-client.d.ts","sourceRoot":"","sources":["../../src/core/pers-api-client.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAkB,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAgB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAa3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI5C,qBAAa,aAAa;IAiBtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IAjBhB,OAAO,CAAC,qBAAqB,CAA8B;IAC3D,OAAO,CAAC,OAAO,CAAC,CAAmB;IAEnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuC;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAsB;IAErD;;;;;OAKG;gBAEO,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,UAAU;YAoCd,UAAU;IAcxB;;;;;;;;;;;;;;;;;OAiBG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;YAQzB,iBAAiB;IAW/B;;OAEG;YACW,OAAO;IAoIrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgCtB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAIzC;;;;;;;;;;;;;OAaG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;IAInG;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3H;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;OAEG;IACG,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7C;;;;;;OAMG;YACW,UAAU;IAuDxB;;OAEG;IACH,cAAc,IAAI,WAAW;IAI7B;;OAEG;IACH,SAAS,IAAI,UAAU,CAAC,OAAO,iBAAiB,CAAC;IAIjD;;OAEG;IACH,iBAAiB,IAAI,UAAU;CAGhC"}
package/dist/core.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-DemghJ3a.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-Cwlrl8jb.cjs');
4
4
  var persShared = require('@explorins/pers-shared');
5
5
  var environment = require('./chunks/environment-C_hPDl8L.cjs');
6
6
  var index = require('./chunks/index-C4K-jkRO.cjs');
@@ -8,10 +8,10 @@ var tenantManager = require('./chunks/tenant-manager-DR5eSEJw.cjs');
8
8
  require('./user.cjs');
9
9
  require('./chunks/pagination-utils-B2jRHMSO.cjs');
10
10
  require('./user-status.cjs');
11
- require('./chunks/token-service-BJqu5Xap.cjs');
12
- require('./chunks/business-membership-service-B9ItWZ2_.cjs');
11
+ require('./chunks/token-service-CnnrCOsg.cjs');
12
+ require('./chunks/business-membership-service-Dkb780NX.cjs');
13
13
  require('./campaign.cjs');
14
- require('./chunks/redemption-service-Dc_0Kzd0.cjs');
14
+ require('./chunks/redemption-service-KamEndzB.cjs');
15
15
  require('./chunks/transaction-request.builder-D8pIzjYD.cjs');
16
16
  require('./chunks/payment-service-Bkw7ZXev.cjs');
17
17
  require('./chunks/analytics-service-CRs9cpkg.cjs');
package/dist/core.js CHANGED
@@ -1,4 +1,4 @@
1
- export { b as AUTH_STORAGE_KEYS, x as AnalyticsManager, w as ApiKeyManager, l as AuthApi, r as AuthManager, o as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, p as DPoPManager, D as DefaultAuthProvider, y as DonationManager, F as FATAL_AUTH_CODES, v as FileManager, I as IndexedDBTokenStorage, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, q as PersEventEmitter, P as PersSDK, u as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, k as StaticJwtAuthProvider, T as TokenManager, t as TransactionManager, z as TriggerSourceManager, U as UserManager, s as UserStatusManager, G as WalletEventsManager, W as WebDPoPCryptoProvider, E as WebhookManager, i as buildApiRoot, j as buildWalletEventsWsUrl, c as createPersSDK, n as isFatalAuthErrorInMessage, m as mergeWithDefaults } from './chunks/pers-sdk-Dds2lB27.js';
1
+ export { b as AUTH_STORAGE_KEYS, x as AnalyticsManager, w as ApiKeyManager, l as AuthApi, r as AuthManager, o as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, p as DPoPManager, D as DefaultAuthProvider, y as DonationManager, F as FATAL_AUTH_CODES, v as FileManager, I as IndexedDBTokenStorage, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, q as PersEventEmitter, P as PersSDK, u as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, k as StaticJwtAuthProvider, T as TokenManager, t as TransactionManager, z as TriggerSourceManager, U as UserManager, s as UserStatusManager, G as WalletEventsManager, W as WebDPoPCryptoProvider, E as WebhookManager, i as buildApiRoot, j as buildWalletEventsWsUrl, c as createPersSDK, n as isFatalAuthErrorInMessage, m as mergeWithDefaults } from './chunks/pers-sdk-CNIfzWYX.js';
2
2
  export { AccountOwnerType } from '@explorins/pers-shared';
3
3
  export { d as detectEnvironment, e as environment, w as warnIfProblematicEnvironment } from './chunks/environment-DEI_L882.js';
4
4
  export { c as ApiErrorDetector, A as AuthenticationError, a as CacheService, C as CacheTTL, E as ErrorUtils, L as LogoutRequired, N as NetworkError, b as PersApiError, P as ProviderTokenRefreshNeeded, S as SdkErrorCodes, T as TokenRefreshNeeded, g as globalCacheService } from './chunks/index--OssIds0.js';
@@ -6,10 +6,10 @@ export { T as TenantManager } from './chunks/tenant-manager-xmYKBFGu.js';
6
6
  import './user.js';
7
7
  import './chunks/pagination-utils-9vQ-Npkr.js';
8
8
  import './user-status.js';
9
- import './chunks/token-service-qRSYG9uT.js';
10
- import './chunks/business-membership-service-CPcE-AW0.js';
9
+ import './chunks/token-service-BcuDj292.js';
10
+ import './chunks/business-membership-service-NLoqoFpG.js';
11
11
  import './campaign.js';
12
- import './chunks/redemption-service-DWhZgrZT.js';
12
+ import './chunks/redemption-service-w0GMdF0m.js';
13
13
  import './chunks/transaction-request.builder-BZ6Uq6Qe.js';
14
14
  import './chunks/payment-service-IvM6rryM.js';
15
15
  import './chunks/analytics-service-CF7hSwhy.js';
package/dist/index.cjs CHANGED
@@ -1,21 +1,21 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-DemghJ3a.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-Cwlrl8jb.cjs');
4
4
  var persShared = require('@explorins/pers-shared');
5
5
  var environment = require('./chunks/environment-C_hPDl8L.cjs');
6
6
  var index = require('./chunks/index-C4K-jkRO.cjs');
7
7
  var tenantManager = require('./chunks/tenant-manager-DR5eSEJw.cjs');
8
8
  var paginationUtils = require('./chunks/pagination-utils-B2jRHMSO.cjs');
9
- var businessMembershipService = require('./chunks/business-membership-service-B9ItWZ2_.cjs');
9
+ var businessMembershipService = require('./chunks/business-membership-service-Dkb780NX.cjs');
10
10
  var transactionRequest_builder = require('./chunks/transaction-request.builder-D8pIzjYD.cjs');
11
11
  var analyticsService = require('./chunks/analytics-service-CRs9cpkg.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-Dc_0Kzd0.cjs');
15
+ var redemptionService = require('./chunks/redemption-service-KamEndzB.cjs');
16
16
  var tenantService = require('./chunks/tenant-service-8vZWmTLV.cjs');
17
- var baseTokenService = require('./chunks/base-token-service-DSye0WD2.cjs');
18
- var tokenService = require('./chunks/token-service-BJqu5Xap.cjs');
17
+ var baseTokenService = require('./chunks/base-token-service-W7TU23qU.cjs');
18
+ var tokenService = require('./chunks/token-service-CnnrCOsg.cjs');
19
19
  var user = require('./user.cjs');
20
20
  var userStatus = require('./user-status.cjs');
21
21
  var triggerSource = require('./trigger-source.cjs');
package/dist/index.js CHANGED
@@ -1,20 +1,20 @@
1
- export { b as AUTH_STORAGE_KEYS, x as AnalyticsManager, K as ApiKeyApi, w as ApiKeyManager, l as AuthApi, r as AuthManager, o as AuthService, A as AuthStatus, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, p as DPoPManager, D as DefaultAuthProvider, y as DonationManager, F as FATAL_AUTH_CODES, H as FileApi, v as FileManager, J as FileService, I as IndexedDBTokenStorage, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, q as PersEventEmitter, Q as PersEventsClient, P as PersSDK, u as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, k as StaticJwtAuthProvider, T as TokenManager, t as TransactionManager, z as TriggerSourceManager, U as UserManager, s as UserStatusManager, G as WalletEventsManager, W as WebDPoPCryptoProvider, N as WebhookApi, E as WebhookManager, O as WebhookService, i as buildApiRoot, j as buildWalletEventsWsUrl, V as createPersEventsClient, c as createPersSDK, n as isFatalAuthErrorInMessage, m as mergeWithDefaults } from './chunks/pers-sdk-Dds2lB27.js';
1
+ export { b as AUTH_STORAGE_KEYS, x as AnalyticsManager, K as ApiKeyApi, w as ApiKeyManager, l as AuthApi, r as AuthManager, o as AuthService, A as AuthStatus, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, h as DEFAULT_PERS_CONFIG, d as DPOP_STORAGE_KEYS, p as DPoPManager, D as DefaultAuthProvider, y as DonationManager, F as FATAL_AUTH_CODES, H as FileApi, v as FileManager, J as FileService, I as IndexedDBTokenStorage, L as LocalStorageTokenStorage, M as MemoryTokenStorage, g as PersApiClient, q as PersEventEmitter, Q as PersEventsClient, P as PersSDK, u as PurchaseManager, R as RedemptionManager, S as SDK_NAME, f as SDK_USER_AGENT, e as SDK_VERSION, k as StaticJwtAuthProvider, T as TokenManager, t as TransactionManager, z as TriggerSourceManager, U as UserManager, s as UserStatusManager, G as WalletEventsManager, W as WebDPoPCryptoProvider, N as WebhookApi, E as WebhookManager, O as WebhookService, i as buildApiRoot, j as buildWalletEventsWsUrl, V as createPersEventsClient, c as createPersSDK, n as isFatalAuthErrorInMessage, m as mergeWithDefaults } from './chunks/pers-sdk-CNIfzWYX.js';
2
2
  export * from '@explorins/pers-shared';
3
3
  export { AccountOwnerType, SortOrder, VALID_USER_RELATIONS, isConnectedMessage, isErrorMessage, isEventMessage, isServerMessage, isSubscribedMessage, isValidUserRelation } from '@explorins/pers-shared';
4
4
  export { d as detectEnvironment, e as environment, w as warnIfProblematicEnvironment } from './chunks/environment-DEI_L882.js';
5
5
  export { c as ApiErrorDetector, A as AuthenticationError, a as CacheService, C as CacheTTL, E as ErrorUtils, L as LogoutRequired, N as NetworkError, b as PersApiError, P as ProviderTokenRefreshNeeded, S as SdkErrorCodes, T as TokenRefreshNeeded, g as globalCacheService } from './chunks/index--OssIds0.js';
6
6
  export { T as TenantManager } from './chunks/tenant-manager-xmYKBFGu.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
- export { B as BusinessApi, a as BusinessMembershipApi, c as BusinessMembershipService, b as BusinessService } from './chunks/business-membership-service-CPcE-AW0.js';
8
+ export { B as BusinessApi, a as BusinessMembershipApi, c as BusinessMembershipService, b as BusinessService } from './chunks/business-membership-service-NLoqoFpG.js';
9
9
  export { C as ClientTransactionType, T as TransactionApi, a as TransactionService, c as buildBurnRequest, b as buildMintRequest, f as buildPOSBurnRequest, e as buildPOSTransferRequest, i as buildPendingTransactionData, g as buildSubmissionRequest, d as buildTransferRequest, h as extractDeadlineFromSigningData, k as getSigningUrl, n as needsExternalSigning, j as needsSubmission } from './chunks/transaction-request.builder-BZ6Uq6Qe.js';
10
10
  export { A as AnalyticsApi, a as AnalyticsService } from './chunks/analytics-service-CF7hSwhy.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-DWhZgrZT.js';
14
+ export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-w0GMdF0m.js';
15
15
  export { T as TenantApi, a as TenantService } from './chunks/tenant-service-DlhdZAs9.js';
16
- export { B as BaseTokenService, T as TokenSDK, g as getMetadataFromTokenUnitResponse } from './chunks/base-token-service-BGuuZX4b.js';
17
- export { T as TokenApi, a as TokenService } from './chunks/token-service-qRSYG9uT.js';
16
+ export { B as BaseTokenService, T as TokenSDK, g as getMetadataFromTokenUnitResponse } from './chunks/base-token-service-N1gwRD8N.js';
17
+ export { T as TokenApi, a as TokenService } from './chunks/token-service-BcuDj292.js';
18
18
  export { UserApi, UserService } from './user.js';
19
19
  export { UserStatusApi, UserStatusService, createUserStatusSDK } from './user-status.js';
20
20
  export { TriggerSourceApi, TriggerSourceService } from './trigger-source.js';
@@ -724,6 +724,19 @@ export declare class RedemptionManager {
724
724
  * ```
725
725
  */
726
726
  deleteRedemptionType(id: number): Promise<boolean>;
727
+ /**
728
+ * Delete a redemption (soft delete)
729
+ *
730
+ * @param id - Redemption ID to delete
731
+ * @returns Promise resolving to true if deleted successfully
732
+ *
733
+ * @example
734
+ * ```typescript
735
+ * const success = await sdk.redemptions.deleteRedemption('redemption-123');
736
+ * console.log('Deleted:', success);
737
+ * ```
738
+ */
739
+ deleteRedemption(id: string): Promise<boolean>;
727
740
  /**
728
741
  * Get the full redemption service for advanced operations
729
742
  *
@@ -1 +1 @@
1
- {"version":3,"file":"redemption-manager.d.ts","sourceRoot":"","sources":["../../src/managers/redemption-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redemption-manager.d.ts","sourceRoot":"","sources":["../../src/managers/redemption-manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { PaginatedResponseDTO } from '@explorins/pers-shared';
2
2
  import { PersApiClient } from '../core/pers-api-client';
3
- import { TokenService, TokenMetadataFilterOptions, RewardsFilterOptions, StampsFilterOptions } from '../token';
3
+ import { TokenService, TokenMetadataQueryOptions, RewardsFilterOptions, StampsFilterOptions } from '../token';
4
4
  import type { TokenDTO, TokenMetadataDTO } from '../token/models';
5
5
  import { PaginationOptions } from '../shared/utils/pagination-utils';
6
6
  /**
@@ -194,16 +194,17 @@ export declare class TokenManager {
194
194
  */
195
195
  getTokenByContract(contractAddress: string, contractTokenId?: string | null): Promise<TokenDTO>;
196
196
  /**
197
- * Get all token metadata with filtering and pagination
197
+ * Get all token metadata with filtering, pagination, and include relations
198
198
  *
199
- * Retrieves token metadata (rewards/stamps) with server-side filtering and pagination.
199
+ * Retrieves token metadata (rewards/stamps) with server-side filtering, pagination,
200
+ * and optional include relations for additional data.
200
201
  * Useful for displaying rewards (ERC1155) or stamps (ERC721) in admin tables.
201
202
  * Non-admin users always get active metadata only.
202
203
  *
203
- * @param options - Filter and pagination options
204
+ * @param options - Filter, pagination, and include options
204
205
  * @returns Promise resolving to paginated token metadata
205
206
  *
206
- * @example Get paginated rewards
207
+ * @example Get paginated rewards with counts
207
208
  * ```typescript
208
209
  * const rewards = await sdk.tokens.getTokenMetadata({
209
210
  * tokenType: 'ERC1155',
@@ -211,79 +212,78 @@ export declare class TokenManager {
211
212
  * page: 1,
212
213
  * limit: 10,
213
214
  * sortBy: 'name',
214
- * sortOrder: 'ASC'
215
+ * sortOrder: 'ASC',
216
+ * include: ['mintCount', 'burnCount', 'token']
215
217
  * });
216
218
  *
217
- * console.log(`Page 1 of ${rewards.pagination.pages}`);
218
- * rewards.data.forEach(r => console.log(r.name));
219
+ * rewards.data.forEach(r => {
220
+ * console.log(`${r.name}: ${r.mintCount} minted, ${r.burnCount} burned`);
221
+ * console.log(`Contract: ${r.included?.token?.contractAddress}`);
222
+ * });
219
223
  * ```
220
224
  *
221
- * @example Get stamps with search
225
+ * @example Get stamps with owner business
222
226
  * ```typescript
223
227
  * const stamps = await sdk.tokens.getTokenMetadata({
224
228
  * tokenType: 'ERC721',
225
229
  * search: 'gold',
226
- * limit: 25
230
+ * include: ['ownerBusiness', 'token']
231
+ * });
232
+ *
233
+ * stamps.data.forEach(s => {
234
+ * console.log(`${s.name} owned by ${s.included?.ownerBusiness?.displayName}`);
227
235
  * });
228
236
  * ```
229
237
  */
230
- getTokenMetadata(options?: TokenMetadataFilterOptions): Promise<PaginatedResponseDTO<TokenMetadataDTO>>;
238
+ getTokenMetadata(options?: TokenMetadataQueryOptions): Promise<PaginatedResponseDTO<TokenMetadataDTO>>;
231
239
  /**
232
- * Get rewards (ERC1155 token metadata) with filtering and pagination
240
+ * Get rewards (ERC1155 token metadata) with filtering, pagination, and include relations
233
241
  *
234
242
  * Convenience method for fetching reward metadata. Rewards are ERC1155 tokens
235
243
  * that represent collectible items, vouchers, or other redeemable rewards.
236
244
  *
237
- * @param options - Filter and pagination options (tokenType is set automatically)
245
+ * @param options - Filter, pagination, and include options (tokenType is set automatically)
238
246
  * @returns Promise resolving to paginated reward metadata
239
247
  *
240
- * @example Get active rewards
248
+ * @example Get active rewards with mint counts
241
249
  * ```typescript
242
250
  * const rewards = await sdk.tokens.getRewards({
243
251
  * active: true,
244
- * limit: 10
252
+ * limit: 10,
253
+ * include: ['mintCount', 'burnCount', 'token', 'ownerBusiness']
245
254
  * });
246
255
  *
247
- * console.log(`Found ${rewards.pagination.total} rewards`);
248
- * rewards.data.forEach(r => console.log(`${r.name}: ${r.description}`));
249
- * ```
250
- *
251
- * @example Search rewards
252
- * ```typescript
253
- * const discountRewards = await sdk.tokens.getRewards({
254
- * search: 'discount',
255
- * sortBy: 'name',
256
- * sortOrder: 'ASC'
256
+ * rewards.data.forEach(r => {
257
+ * console.log(`${r.name}: ${r.mintCount ?? 0} minted`);
258
+ * if (r.included?.token) {
259
+ * console.log(` Chain: ${r.included.token.chainId}, Contract: ${r.included.token.contractAddress}`);
260
+ * }
257
261
  * });
258
262
  * ```
259
263
  */
260
264
  getRewards(options?: RewardsFilterOptions): Promise<PaginatedResponseDTO<TokenMetadataDTO>>;
261
265
  /**
262
- * Get stamps (ERC721 token metadata) with filtering and pagination
266
+ * Get stamps (ERC721 token metadata) with filtering, pagination, and include relations
263
267
  *
264
268
  * Convenience method for fetching stamp metadata. Stamps are ERC721 tokens
265
269
  * that represent achievements, badges, or collectible status markers.
266
270
  *
267
- * @param options - Filter and pagination options (tokenType is set automatically)
271
+ * @param options - Filter, pagination, and include options (tokenType is set automatically)
268
272
  * @returns Promise resolving to paginated stamp metadata
269
273
  *
270
- * @example Get active stamps
274
+ * @example Get active stamps with all includes
271
275
  * ```typescript
272
276
  * const stamps = await sdk.tokens.getStamps({
273
277
  * active: true,
274
- * limit: 10
278
+ * limit: 10,
279
+ * include: ['mintCount', 'burnCount', 'token', 'ownerBusiness']
275
280
  * });
276
281
  *
277
- * console.log(`Found ${stamps.pagination.total} stamps`);
278
- * stamps.data.forEach(s => console.log(`${s.name}: ${s.description}`));
279
- * ```
280
- *
281
- * @example Filter stamps by tags
282
- * ```typescript
283
- * const goldStamps = await sdk.tokens.getStamps({
284
- * tags: ['gold', 'premium'],
285
- * sortBy: 'createdAt',
286
- * sortOrder: 'DESC'
282
+ * stamps.data.forEach(s => {
283
+ * console.log(`${s.name}: ${s.mintCount ?? 0} minted`);
284
+ * if (s.included?.ownerBusiness) {
285
+ * console.log(` Owner: ${s.included.ownerBusiness.displayName}`);
286
+ * }
287
287
  * });
288
288
  * ```
289
289
  */
@@ -373,6 +373,30 @@ export declare class TokenManager {
373
373
  * ```
374
374
  */
375
375
  toggleTokenActive(tokenId: string): Promise<TokenDTO>;
376
+ /**
377
+ * Admin: Delete token metadata (soft delete)
378
+ *
379
+ * Soft deletes token metadata by setting deletedAt timestamp.
380
+ * Requires administrator privileges. Will fail with 409 Conflict
381
+ * if metadata is currently in use by active campaigns or redemptions.
382
+ *
383
+ * @param metadataId - ID of the token metadata to delete
384
+ * @throws {PersApiError} When not authenticated as admin
385
+ * @throws {PersApiError} 409 Conflict if metadata is in use
386
+ *
387
+ * @example
388
+ * ```typescript
389
+ * try {
390
+ * await sdk.tokens.deleteTokenMetadata('metadata-123');
391
+ * console.log('Token metadata deleted');
392
+ * } catch (error) {
393
+ * if (error.statusCode === 409) {
394
+ * console.log('Cannot delete: metadata is used by campaigns/redemptions');
395
+ * }
396
+ * }
397
+ * ```
398
+ */
399
+ deleteTokenMetadata(metadataId: string): Promise<void>;
376
400
  /**
377
401
  * Get the full token SDK for advanced operations
378
402
  *
@@ -1 +1 @@
1
- {"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../src/managers/token-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAY,YAAY,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACzH,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,YAAY,CAAe;gBAEf,SAAS,EAAE,aAAa;IAK5C;;;;;;;;;;;;;;;;;;;OAmBG;IACG,SAAS,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAIrF;;;;;;;;;;;;;;;;OAgBG;IACG,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAI/C;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAI/C;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAI3F;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAI3F;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,gBAAgB,CAAC,OAAO,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAI7G;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAIjG;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,SAAS,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAI/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACG,WAAW,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIpD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,eAAe,IAAI,YAAY;CAIhC"}
1
+ {"version":3,"file":"token-manager.d.ts","sourceRoot":"","sources":["../../src/managers/token-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAY,YAAY,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACxH,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,YAAY,CAAe;gBAEf,SAAS,EAAE,aAAa;IAK5C;;;;;;;;;;;;;;;;;;;OAmBG;IACG,SAAS,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAIrF;;;;;;;;;;;;;;;;OAgBG;IACG,aAAa,CAAC,OAAO,CAAC,EAAE,iBAAiB;IAI/C;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAI/C;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAI3F;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAI3F;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACG,gBAAgB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAI5G;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAIjG;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,SAAS,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAI/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACG,WAAW,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIpD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,eAAe,IAAI,YAAY;CAIhC"}
package/dist/node.cjs CHANGED
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-DemghJ3a.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-Cwlrl8jb.cjs');
4
4
  var persShared = require('@explorins/pers-shared');
5
5
  var nodeHttpClient = require('./chunks/node-http-client-D_avaa5F.cjs');
6
6
  require('./chunks/index-C4K-jkRO.cjs');
7
7
  require('./user.cjs');
8
8
  require('./chunks/pagination-utils-B2jRHMSO.cjs');
9
9
  require('./user-status.cjs');
10
- require('./chunks/token-service-BJqu5Xap.cjs');
11
- require('./chunks/business-membership-service-B9ItWZ2_.cjs');
10
+ require('./chunks/token-service-CnnrCOsg.cjs');
11
+ require('./chunks/business-membership-service-Dkb780NX.cjs');
12
12
  require('./campaign.cjs');
13
- require('./chunks/redemption-service-Dc_0Kzd0.cjs');
13
+ require('./chunks/redemption-service-KamEndzB.cjs');
14
14
  require('./chunks/transaction-request.builder-D8pIzjYD.cjs');
15
15
  require('./chunks/payment-service-Bkw7ZXev.cjs');
16
16
  require('./chunks/tenant-manager-DR5eSEJw.cjs');