@explorins/pers-sdk 1.6.28 → 1.6.30

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 (39) hide show
  1. package/dist/campaign/api/campaign-api.d.ts +2 -12
  2. package/dist/campaign/api/campaign-api.d.ts.map +1 -1
  3. package/dist/campaign.cjs +1 -1
  4. package/dist/campaign.js +1 -1
  5. package/dist/chunks/{campaign-service-Dd7gMjC9.js → campaign-service-BBB_HlK2.js} +3 -17
  6. package/dist/chunks/campaign-service-BBB_HlK2.js.map +1 -0
  7. package/dist/chunks/{campaign-service-CWK9I388.cjs → campaign-service-sLgVhBUK.cjs} +3 -17
  8. package/dist/chunks/campaign-service-sLgVhBUK.cjs.map +1 -0
  9. package/dist/chunks/{pers-sdk-xQqoP4zx.js → pers-sdk-Bt9D_tLS.js} +72 -3
  10. package/dist/chunks/{pers-sdk-xQqoP4zx.js.map → pers-sdk-Bt9D_tLS.js.map} +1 -1
  11. package/dist/chunks/{pers-sdk-BOphq5pm.cjs → pers-sdk-CQpjfRIm.cjs} +74 -5
  12. package/dist/chunks/{pers-sdk-BOphq5pm.cjs.map → pers-sdk-CQpjfRIm.cjs.map} +1 -1
  13. package/dist/chunks/transaction-service-C2sVByGQ.js +332 -0
  14. package/dist/chunks/transaction-service-C2sVByGQ.js.map +1 -0
  15. package/dist/chunks/transaction-service-oA5BRzWy.cjs +335 -0
  16. package/dist/chunks/transaction-service-oA5BRzWy.cjs.map +1 -0
  17. package/dist/core.cjs +3 -3
  18. package/dist/core.js +3 -3
  19. package/dist/index.cjs +5 -9
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.js +3 -3
  22. package/dist/managers/transaction-manager.d.ts +61 -5
  23. package/dist/managers/transaction-manager.d.ts.map +1 -1
  24. package/dist/package.json +2 -2
  25. package/dist/transaction/api/transaction-api.d.ts +10 -12
  26. package/dist/transaction/api/transaction-api.d.ts.map +1 -1
  27. package/dist/transaction/index.d.ts +0 -1
  28. package/dist/transaction/index.d.ts.map +1 -1
  29. package/dist/transaction/models/index.d.ts +0 -34
  30. package/dist/transaction/models/index.d.ts.map +1 -1
  31. package/dist/transaction/services/transaction-service.d.ts +19 -6
  32. package/dist/transaction/services/transaction-service.d.ts.map +1 -1
  33. package/dist/transaction.cjs +4 -346
  34. package/dist/transaction.cjs.map +1 -1
  35. package/dist/transaction.js +2 -341
  36. package/dist/transaction.js.map +1 -1
  37. package/package.json +2 -2
  38. package/dist/chunks/campaign-service-CWK9I388.cjs.map +0 -1
  39. package/dist/chunks/campaign-service-Dd7gMjC9.js.map +0 -1
@@ -0,0 +1,335 @@
1
+ 'use strict';
2
+
3
+ var persShared = require('@explorins/pers-shared');
4
+
5
+ /**
6
+ * Platform-Agnostic Transaction API Client (UPDATED FOR NEW RESTful ENDPOINTS)
7
+ *
8
+ * Handles transaction operations using the PERS backend.
9
+ * Uses @explorins/pers-shared DTOs for consistency with backend.
10
+ *
11
+ * MIGRATION NOTES:
12
+ * - All endpoints changed from /transaction to /transactions
13
+ * - Role-based paths removed (no more /auth, /admin, /business in URLs)
14
+ * - New RESTful resource-based structure
15
+ * - Added new client-side transaction flow methods
16
+ * - Enhanced admin query capabilities
17
+ */
18
+ class TransactionApi {
19
+ constructor(apiClient) {
20
+ this.apiClient = apiClient;
21
+ this.basePath = '/transactions';
22
+ }
23
+ /**
24
+ * Get transaction by ID (public endpoint)
25
+ *
26
+ * UPDATED: /transaction/{id} → /transactions/{id}
27
+ */
28
+ async getTransactionById(transactionId) {
29
+ return this.apiClient.get(`${this.basePath}/${transactionId}`);
30
+ }
31
+ /**
32
+ * Unique method to create a transaction
33
+ * @param request
34
+ * @returns
35
+ */
36
+ async createTransaction(request) {
37
+ return this.apiClient.post(`${this.basePath}`, request);
38
+ // return this.apiClient.post<TransactionDTO>(`${this.basePath}/system`, request);
39
+ }
40
+ // ==========================================
41
+ // AUTHENTICATED USER OPERATIONS
42
+ // ==========================================
43
+ /**
44
+ * AUTH: Get user transaction history with role-based filtering
45
+ *
46
+ * UPDATED: Uses consolidated /transactions/me endpoint with role parameter
47
+ * @param role - Optional role filter (SENDER, RECIPIENT). If undefined, returns all user transactions
48
+ * @param limit - Maximum number of transactions to return (default: 1000)
49
+ */
50
+ async getUserTransactionHistory(role, limit = 1000) {
51
+ const params = new URLSearchParams({
52
+ limit: limit.toString(),
53
+ timestamp: Date.now().toString()
54
+ });
55
+ // Add role parameter if specified
56
+ if (role === persShared.TransactionRole.SENDER) {
57
+ params.set('role', persShared.TransactionRole.SENDER);
58
+ }
59
+ else if (role === persShared.TransactionRole.RECIPIENT) {
60
+ params.set('role', persShared.TransactionRole.RECIPIENT);
61
+ }
62
+ // If no role specified, get all transactions for the user
63
+ const response = await this.apiClient.get(`${this.basePath}/me?${params.toString()}`);
64
+ return [...(response.data || [])];
65
+ }
66
+ /**
67
+ * AUTH: Prepare existing transaction for client-side signing
68
+ *
69
+ * NEW ENDPOINT: GET /transactions/{id}/prepare
70
+ */
71
+ async prepareExistingTransaction(transactionId) {
72
+ return this.apiClient.get(`${this.basePath}/${transactionId}/prepare`);
73
+ }
74
+ /**
75
+ * AUTH: Submit client-side signed transaction
76
+ *
77
+ * NEW ENDPOINT: POST /transactions/submit
78
+ */
79
+ async submitSignedTransaction(signedTxData) {
80
+ return this.apiClient.post(`${this.basePath}/submit`, signedTxData);
81
+ }
82
+ // ==========================================
83
+ // BUSINESS OPERATIONS
84
+ // ==========================================
85
+ /**
86
+ * BUSINESS: Create business transaction
87
+ *
88
+ * UPDATED: /transaction/business/transaction → /transactions/business
89
+ */
90
+ /* async createBusinessTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO> {
91
+ return this.apiClient.post<TransactionRequestResponseDTO>(`${this.basePath}`, request);
92
+ } */
93
+ // ==========================================
94
+ // ADMIN OPERATIONS
95
+ // ==========================================
96
+ /**
97
+ * ADMIN: Create admin transaction
98
+ *
99
+ * UPDATED: /transaction/admin/transaction → /transactions/admin
100
+ */
101
+ /* async createAdminTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO> {
102
+ // return this.apiClient.post<TransactionRequestResponseDTO>(`${this.basePath}`, request);
103
+ return this.apiClient.post<TransactionDTO>(`${this.basePath}/system`, request);
104
+ } */
105
+ /**
106
+ * AUTH: Prepare client signed transaction (Create new transaction for signing)
107
+ *
108
+ * UPDATED: /transaction/auth/prepare-signing → /transactions (POST)
109
+ */
110
+ async prepareClientSignedTransaction(request) {
111
+ return this.apiClient.post(`${this.basePath}`, request);
112
+ }
113
+ /**
114
+ * ADMIN: Get all tenant transactions
115
+ *
116
+ * UPDATED: /transaction/admin → /transactions
117
+ */
118
+ async getTenantTransactions(limit = 1000) {
119
+ const params = new URLSearchParams({
120
+ limit: limit.toString()
121
+ });
122
+ const result = await this.apiClient.get(`${this.basePath}?${params.toString()}`);
123
+ // Extract data array from paginated response
124
+ return [...(result.data || [])];
125
+ }
126
+ /**
127
+ * ADMIN: Get paginated transactions with filtering and sorting
128
+ *
129
+ * UPDATED: /transaction/admin → /transactions (same endpoint, better structure)
130
+ */
131
+ async getPaginatedTransactions(params) {
132
+ const queryString = this.buildQueryParams(params).toString();
133
+ return this.apiClient.get(`${this.basePath}?${queryString}`);
134
+ }
135
+ /**
136
+ * ADMIN: Export transactions to CSV
137
+ *
138
+ * UPDATED: /transaction/admin/export/csv → /transactions/export/csv
139
+ */
140
+ async exportTransactionsCSV() {
141
+ return this.apiClient.get(`${this.basePath}/export/csv`, 'blob');
142
+ }
143
+ // ==========================================
144
+ // NEW ADMIN QUERY METHODS
145
+ // ==========================================
146
+ /**
147
+ * ADMIN: Query transactions by sender
148
+ *
149
+ * NEW ENDPOINT: POST /transactions/query-sender
150
+ */
151
+ /**
152
+ * Query transactions by sender using unified endpoint
153
+ */
154
+ async queryTransactionsBySender(accountSelector) {
155
+ // Build query parameters safely
156
+ const queryParams = {};
157
+ if (accountSelector.accountId) {
158
+ queryParams['participantId'] = accountSelector.accountId;
159
+ }
160
+ queryParams['role'] = persShared.TransactionRole.SENDER.toString();
161
+ const params = new URLSearchParams(queryParams);
162
+ return this.apiClient.get(`${this.basePath}?${params.toString()}`).then(response => response); // Extract items from paginated response
163
+ }
164
+ /**
165
+ * Query transactions by recipient using unified endpoint
166
+ */
167
+ async queryTransactionsByRecipient(accountSelector) {
168
+ // Build query parameters safely
169
+ const queryParams = {};
170
+ if (accountSelector.accountId) {
171
+ queryParams['participantId'] = accountSelector.accountId;
172
+ }
173
+ queryParams['role'] = persShared.TransactionRole.RECIPIENT.toString();
174
+ const params = new URLSearchParams(queryParams);
175
+ return this.apiClient.get(`${this.basePath}?${params.toString()}`).then(response => response); // Extract items from paginated response
176
+ }
177
+ /**
178
+ * ADMIN: Get transaction analytics
179
+ *
180
+ * NEW ENDPOINT: POST /transactions/analytics
181
+ */
182
+ async getTransactionAnalytics(analyticsRequest) {
183
+ return this.apiClient.post(`${this.basePath}/analytics`, analyticsRequest);
184
+ }
185
+ /**
186
+ * Helper to convert DTO object to URLSearchParams
187
+ * Handles nested 'filters' object and arrays correctly.
188
+ */
189
+ buildQueryParams(params) {
190
+ const query = new URLSearchParams();
191
+ // 1. Handle Root Pagination Fields
192
+ if (params.page !== undefined)
193
+ query.append('page', params.page.toString());
194
+ if (params.limit !== undefined)
195
+ query.append('limit', params.limit.toString());
196
+ if (params.sortBy)
197
+ query.append('sortBy', params.sortBy);
198
+ if (params.sortOrder)
199
+ query.append('sortOrder', params.sortOrder);
200
+ // 2. Handle Nested Filters
201
+ if (params.filters) {
202
+ Object.entries(params.filters).forEach(([key, value]) => {
203
+ // Skip undefined/null values
204
+ if (value === undefined || value === null || value === '')
205
+ return;
206
+ if (Array.isArray(value)) {
207
+ // Handle Arrays: NestJS expects 'status=A&status=B'
208
+ value.forEach((item) => query.append(key, String(item)));
209
+ }
210
+ else {
211
+ // Handle Single Values: 'search=0x123'
212
+ // NOTE: Backend Controller expects flat query params for filters
213
+ // e.g. ?search=...&status=... NOT ?filters[search]=...
214
+ // This mapping flattens 'filters.search' -> 'search' to match @Query('search') in Controller
215
+ query.append(key, String(value));
216
+ }
217
+ });
218
+ }
219
+ return query;
220
+ }
221
+ }
222
+
223
+ /**
224
+ * Platform-Agnostic Transaction Service
225
+ *
226
+ * Contains transaction business logic and operations that work across platforms.
227
+ * No framework dependencies - pure TypeScript business logic.
228
+ *
229
+ * Focuses only on actual backend capabilities.
230
+ */
231
+ class TransactionService {
232
+ constructor(transactionApi) {
233
+ this.transactionApi = transactionApi;
234
+ }
235
+ /**
236
+ * Get transaction by ID
237
+ */
238
+ async getTransactionById(transactionId) {
239
+ return this.transactionApi.getTransactionById(transactionId);
240
+ }
241
+ // ==========================================
242
+ // AUTHENTICATED OPERATIONS
243
+ // ==========================================
244
+ /**
245
+ * AUTH: Create authenticated transaction
246
+ */
247
+ /* async createAuthTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO> {
248
+ return this.transactionApi.createAuthTransaction(request);
249
+ } */
250
+ async createTransaction(request) {
251
+ return this.transactionApi.createTransaction(request);
252
+ }
253
+ async submitSignedTransaction(signedTxData) {
254
+ return this.transactionApi.submitSignedTransaction(signedTxData);
255
+ }
256
+ /**
257
+ * AUTH: Get user transaction history by type
258
+ */
259
+ async getUserTransactionHistory(role, limit = 1000) {
260
+ return this.transactionApi.getUserTransactionHistory(role, limit);
261
+ }
262
+ /**
263
+ * AUTH: Prepare existing transaction for client-side signing
264
+ */
265
+ async prepareExistingTransaction(transactionId) {
266
+ return this.transactionApi.prepareExistingTransaction(transactionId);
267
+ }
268
+ /**
269
+ * AUTH: Prepare client signed transaction
270
+ */
271
+ async prepareClientSignedTransaction(request) {
272
+ return this.transactionApi.prepareClientSignedTransaction(request);
273
+ }
274
+ // ==========================================
275
+ // BUSINESS OPERATIONS
276
+ // ==========================================
277
+ /**
278
+ * BUSINESS: Create business transaction
279
+ */
280
+ /* async createBusinessTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO> {
281
+ return this.transactionApi.createBusinessTransaction(request);
282
+ } */
283
+ // ==========================================
284
+ // ADMIN OPERATIONS
285
+ // ==========================================
286
+ /**
287
+ * ADMIN: Create admin transaction
288
+ */
289
+ /* async createAdminTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO> {
290
+ return this.transactionApi.createAdminTransaction(request);
291
+ } */
292
+ /**
293
+ * ADMIN: Get all tenant transactions
294
+ */
295
+ async getTenantTransactions(limit = 1000) {
296
+ return this.transactionApi.getTenantTransactions(limit);
297
+ }
298
+ /**
299
+ * ADMIN: Get paginated transactions with filtering and sorting
300
+ */
301
+ async getPaginatedTransactions(params) {
302
+ return this.transactionApi.getPaginatedTransactions(params);
303
+ }
304
+ /**
305
+ * ADMIN: Export transactions to CSV
306
+ */
307
+ async exportTransactionsCSV() {
308
+ return this.transactionApi.exportTransactionsCSV();
309
+ }
310
+ // ==========================================
311
+ // QUERY & ANALYTICS OPERATIONS
312
+ // ==========================================
313
+ /**
314
+ * Query transactions by sender
315
+ */
316
+ async queryTransactionsBySender(accountSelector) {
317
+ return this.transactionApi.queryTransactionsBySender(accountSelector);
318
+ }
319
+ /**
320
+ * Query transactions by recipient
321
+ */
322
+ async queryTransactionsByRecipient(accountSelector) {
323
+ return this.transactionApi.queryTransactionsByRecipient(accountSelector);
324
+ }
325
+ /**
326
+ * ADMIN: Get transaction analytics
327
+ */
328
+ async getTransactionAnalytics(analyticsRequest) {
329
+ return this.transactionApi.getTransactionAnalytics(analyticsRequest);
330
+ }
331
+ }
332
+
333
+ exports.TransactionApi = TransactionApi;
334
+ exports.TransactionService = TransactionService;
335
+ //# sourceMappingURL=transaction-service-oA5BRzWy.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-service-oA5BRzWy.cjs","sources":["../../src/transaction/api/transaction-api.ts","../../src/transaction/services/transaction-service.ts"],"sourcesContent":[null,null],"names":["TransactionRole"],"mappings":"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"}
package/dist/core.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-BOphq5pm.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-CQpjfRIm.cjs');
4
4
  var index = require('./chunks/index-B6-bbNnd.cjs');
5
5
  require('@explorins/pers-shared');
6
6
  require('./chunks/web3-chain-service-BLFxB5TA.cjs');
@@ -9,9 +9,9 @@ require('./chunks/user-service-D1Rn4U8u.cjs');
9
9
  require('./user-status.cjs');
10
10
  require('./chunks/token-service-BWScn8Qa.cjs');
11
11
  require('./chunks/business-service-P9o4cwQL.cjs');
12
- require('./chunks/campaign-service-CWK9I388.cjs');
12
+ require('./chunks/campaign-service-sLgVhBUK.cjs');
13
13
  require('./chunks/redemption-service-7qbeQxEM.cjs');
14
- require('./transaction.cjs');
14
+ require('./chunks/transaction-service-oA5BRzWy.cjs');
15
15
  require('./chunks/payment-service-B4qx0qiE.cjs');
16
16
  require('./chunks/tenant-service-DME24vr1.cjs');
17
17
  require('./chunks/analytics-service-CitlimKJ.cjs');
package/dist/core.js CHANGED
@@ -1,4 +1,4 @@
1
- export { q as AnalyticsManager, p as ApiKeyManager, h as AuthApi, j as AuthManager, i as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, d as DEFAULT_PERS_CONFIG, D as DefaultAuthProvider, r as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, b as PersApiClient, P as PersSDK, n as PurchaseManager, R as RedemptionManager, o as TenantManager, T as TokenManager, l as TransactionManager, U as UserManager, k as UserStatusManager, W as Web3Manager, e as buildApiRoot, c as createPersSDK, f as detectEnvironment, g as environment, m as mergeWithDefaults, w as warnIfProblematicEnvironment } from './chunks/pers-sdk-xQqoP4zx.js';
1
+ export { q as AnalyticsManager, p as ApiKeyManager, h as AuthApi, j as AuthManager, i as AuthService, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, d as DEFAULT_PERS_CONFIG, D as DefaultAuthProvider, r as DonationManager, F as FileManager, L as LocalStorageTokenStorage, M as MemoryTokenStorage, b as PersApiClient, P as PersSDK, n as PurchaseManager, R as RedemptionManager, o as TenantManager, T as TokenManager, l as TransactionManager, U as UserManager, k as UserStatusManager, W as Web3Manager, e as buildApiRoot, c as createPersSDK, f as detectEnvironment, g as environment, m as mergeWithDefaults, w as warnIfProblematicEnvironment } from './chunks/pers-sdk-Bt9D_tLS.js';
2
2
  export { a as CacheService, C as CacheTTL, g as globalCacheService } from './chunks/index-DBLskLuH.js';
3
3
  import '@explorins/pers-shared';
4
4
  import './chunks/web3-chain-service-JRSwxr-s.js';
@@ -7,9 +7,9 @@ import './chunks/user-service-D6mTa_WZ.js';
7
7
  import './user-status.js';
8
8
  import './chunks/token-service-CpVwC5Eb.js';
9
9
  import './chunks/business-service-8Xd3d5oY.js';
10
- import './chunks/campaign-service-Dd7gMjC9.js';
10
+ import './chunks/campaign-service-BBB_HlK2.js';
11
11
  import './chunks/redemption-service-BT0J5Iy7.js';
12
- import './transaction.js';
12
+ import './chunks/transaction-service-C2sVByGQ.js';
13
13
  import './chunks/payment-service-DfCBFosx.js';
14
14
  import './chunks/tenant-service-DxtHAlaa.js';
15
15
  import './chunks/analytics-service-CxyrOwel.js';
package/dist/index.cjs CHANGED
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var persSdk = require('./chunks/pers-sdk-BOphq5pm.cjs');
3
+ var persSdk = require('./chunks/pers-sdk-CQpjfRIm.cjs');
4
4
  var index = require('./chunks/index-B6-bbNnd.cjs');
5
5
  var persShared = require('@explorins/pers-shared');
6
6
  var businessService = require('./chunks/business-service-P9o4cwQL.cjs');
7
- var transaction = require('./transaction.cjs');
7
+ var transactionService = require('./chunks/transaction-service-oA5BRzWy.cjs');
8
8
  var analyticsService = require('./chunks/analytics-service-CitlimKJ.cjs');
9
- var campaignService = require('./chunks/campaign-service-CWK9I388.cjs');
9
+ var campaignService = require('./chunks/campaign-service-sLgVhBUK.cjs');
10
10
  var donationService = require('./chunks/donation-service-D-xFrONi.cjs');
11
11
  var paymentService = require('./chunks/payment-service-B4qx0qiE.cjs');
12
12
  var redemptionService = require('./chunks/redemption-service-7qbeQxEM.cjs');
@@ -73,12 +73,8 @@ Object.defineProperty(exports, "ApiKeyType", {
73
73
  });
74
74
  exports.BusinessApi = businessService.BusinessApi;
75
75
  exports.BusinessService = businessService.BusinessService;
76
- Object.defineProperty(exports, "TransactionAccountType", {
77
- enumerable: true,
78
- get: function () { return transaction.TransactionAccountType; }
79
- });
80
- exports.TransactionApi = transaction.TransactionApi;
81
- exports.TransactionService = transaction.TransactionService;
76
+ exports.TransactionApi = transactionService.TransactionApi;
77
+ exports.TransactionService = transactionService.TransactionService;
82
78
  exports.AnalyticsApi = analyticsService.AnalyticsApi;
83
79
  exports.AnalyticsService = analyticsService.AnalyticsService;
84
80
  exports.CampaignApi = campaignService.CampaignApi;
@@ -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.js CHANGED
@@ -1,10 +1,10 @@
1
- export { q as AnalyticsManager, u as ApiKeyApi, p as ApiKeyManager, h as AuthApi, j as AuthManager, i as AuthService, A as AuthStatus, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, d as DEFAULT_PERS_CONFIG, D as DefaultAuthProvider, r as DonationManager, s as FileApi, F as FileManager, t as FileService, L as LocalStorageTokenStorage, M as MemoryTokenStorage, b as PersApiClient, P as PersSDK, n as PurchaseManager, R as RedemptionManager, o as TenantManager, T as TokenManager, l as TransactionManager, U as UserManager, k as UserStatusManager, W as Web3Manager, e as buildApiRoot, c as createPersSDK, f as detectEnvironment, g as environment, m as mergeWithDefaults, w as warnIfProblematicEnvironment } from './chunks/pers-sdk-xQqoP4zx.js';
1
+ export { q as AnalyticsManager, u as ApiKeyApi, p as ApiKeyManager, h as AuthApi, j as AuthManager, i as AuthService, A as AuthStatus, a as AuthTokenManager, B as BusinessManager, C as CampaignManager, d as DEFAULT_PERS_CONFIG, D as DefaultAuthProvider, r as DonationManager, s as FileApi, F as FileManager, t as FileService, L as LocalStorageTokenStorage, M as MemoryTokenStorage, b as PersApiClient, P as PersSDK, n as PurchaseManager, R as RedemptionManager, o as TenantManager, T as TokenManager, l as TransactionManager, U as UserManager, k as UserStatusManager, W as Web3Manager, e as buildApiRoot, c as createPersSDK, f as detectEnvironment, g as environment, m as mergeWithDefaults, w as warnIfProblematicEnvironment } from './chunks/pers-sdk-Bt9D_tLS.js';
2
2
  export { a as CacheService, C as CacheTTL, g as globalCacheService } from './chunks/index-DBLskLuH.js';
3
3
  export { AccountOwnerType, ApiKeyType } from '@explorins/pers-shared';
4
4
  export { B as BusinessApi, a as BusinessService } from './chunks/business-service-8Xd3d5oY.js';
5
- export { TransactionAccountType, TransactionApi, TransactionService } from './transaction.js';
5
+ export { T as TransactionApi, a as TransactionService } from './chunks/transaction-service-C2sVByGQ.js';
6
6
  export { A as AnalyticsApi, a as AnalyticsService } from './chunks/analytics-service-CxyrOwel.js';
7
- export { C as CampaignApi, a as CampaignService } from './chunks/campaign-service-Dd7gMjC9.js';
7
+ export { C as CampaignApi, a as CampaignService } from './chunks/campaign-service-BBB_HlK2.js';
8
8
  export { D as DonationApi, a as DonationService } from './chunks/donation-service-CyJS4DIZ.js';
9
9
  export { P as PaymentApi, a as PaymentService } from './chunks/payment-service-DfCBFosx.js';
10
10
  export { R as RedemptionApi, a as RedemptionService } from './chunks/redemption-service-BT0J5Iy7.js';
@@ -1,8 +1,7 @@
1
1
  import { PersApiClient } from '../core/pers-api-client';
2
2
  import { TransactionService } from '../transaction';
3
- import type { TransactionDTO, TransactionRequestDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
4
- import type { TransactionPaginationParams } from '../transaction/models';
5
- import { PaginatedResponseDTO, TransactionRole } from '@explorins/pers-shared';
3
+ import { PaginatedResponseDTO, TransactionAnalyticsRequestDTO, TransactionAnalyticsResponseDTO, TransactionPaginationRequestDTO, TransactionRequestResponseDTO, TransactionRole } from '@explorins/pers-shared';
4
+ import { AccountSelectorDTO, TransactionDTO, TransactionRequestDTO, TransactionSubmissionRequestDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
6
5
  /**
7
6
  * Transaction Manager - Clean, high-level interface for transaction operations
8
7
  *
@@ -191,7 +190,7 @@ export declare class TransactionManager {
191
190
  * console.log('Transfer initiated:', transfer.id);
192
191
  * ```
193
192
  */
194
- createTransaction(transactionData: TransactionRequestDTO): Promise<import("@explorins/pers-shared").TransactionRequestResponseDTO>;
193
+ createTransaction(transactionData: TransactionRequestDTO): Promise<TransactionRequestResponseDTO>;
195
194
  /**
196
195
  * Get user's transaction history
197
196
  *
@@ -399,7 +398,7 @@ export declare class TransactionManager {
399
398
  * });
400
399
  * ```
401
400
  */
402
- getPaginatedTransactions(params: TransactionPaginationParams): Promise<PaginatedResponseDTO<TransactionDTO>>;
401
+ getPaginatedTransactions(params: TransactionPaginationRequestDTO): Promise<PaginatedResponseDTO<TransactionDTO>>;
403
402
  /**
404
403
  * Admin: Export transactions as CSV
405
404
  *
@@ -454,6 +453,63 @@ export declare class TransactionManager {
454
453
  * ```
455
454
  */
456
455
  exportTransactionsCSV(): Promise<Blob>;
456
+ /**
457
+ * Prepare existing transaction for client-side signing
458
+ *
459
+ * Retrieves the necessary data to sign an existing transaction on the client side.
460
+ * This is typically used when a transaction has been created but requires user signature.
461
+ *
462
+ * @param transactionId - The ID of the transaction to prepare
463
+ * @returns Promise resolving to the transaction preparation data
464
+ */
465
+ prepareExistingTransaction(transactionId: string): Promise<TransactionRequestResponseDTO>;
466
+ /**
467
+ * Prepare a new transaction for client-side signing
468
+ *
469
+ * Creates a new transaction and immediately returns the data needed for client-side signing.
470
+ * This combines creation and preparation into a single flow for client-signed operations.
471
+ *
472
+ * @param request - The transaction request details
473
+ * @returns Promise resolving to the transaction preparation data
474
+ */
475
+ prepareClientSignedTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO>;
476
+ /**
477
+ * Submit a signed transaction
478
+ *
479
+ * Submits a transaction that has been signed on the client side to the backend for processing.
480
+ *
481
+ * @param signedTxData - The signed transaction data
482
+ * @returns Promise resolving to the submission result
483
+ */
484
+ submitSignedTransaction(signedTxData: TransactionSubmissionRequestDTO): Promise<TransactionRequestResponseDTO>;
485
+ /**
486
+ * Query transactions by sender
487
+ *
488
+ * Retrieves transactions where the specified account is the sender.
489
+ *
490
+ * @param accountSelector - Selector for the sender account
491
+ * @returns Promise resolving to paginated transactions
492
+ */
493
+ queryTransactionsBySender(accountSelector: AccountSelectorDTO): Promise<PaginatedResponseDTO<TransactionDTO>>;
494
+ /**
495
+ * Query transactions by recipient
496
+ *
497
+ * Retrieves transactions where the specified account is the recipient.
498
+ *
499
+ * @param accountSelector - Selector for the recipient account
500
+ * @returns Promise resolving to paginated transactions
501
+ */
502
+ queryTransactionsByRecipient(accountSelector: AccountSelectorDTO): Promise<PaginatedResponseDTO<TransactionDTO>>;
503
+ /**
504
+ * Get transaction analytics
505
+ *
506
+ * Retrieves analytics data for transactions based on the provided request criteria.
507
+ * Useful for generating reports and dashboards.
508
+ *
509
+ * @param analyticsRequest - The analytics query parameters
510
+ * @returns Promise resolving to the analytics data
511
+ */
512
+ getTransactionAnalytics(analyticsRequest: TransactionAnalyticsRequestDTO): Promise<TransactionAnalyticsResponseDTO>;
457
513
  /**
458
514
  * Get the full transaction service for advanced operations
459
515
  *
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-manager.d.ts","sourceRoot":"","sources":["../../src/managers/transaction-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAkB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACtB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,qBAAa,kBAAkB;IAGjB,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,kBAAkB,CAAqB;gBAE3B,SAAS,EAAE,aAAa;IAK5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgDG;IACG,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8EG;IACG,iBAAiB,CAAC,eAAe,EAAE,qBAAqB;IAI9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiFG;IACG,yBAAyB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAIxG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2DG;IACG,qBAAqB,CAAC,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAI5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8DG;IACG,wBAAwB,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAIlH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoDG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,qBAAqB,IAAI,kBAAkB;CAG5C"}
1
+ {"version":3,"file":"transaction-manager.d.ts","sourceRoot":"","sources":["../../src/managers/transaction-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAkB,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAChN,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,qBAAqB,EAAE,+BAA+B,EAAE,MAAM,iDAAiD,CAAC;AAE7J;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,qBAAa,kBAAkB;IAGjB,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,kBAAkB,CAAqB;gBAE3B,SAAS,EAAE,aAAa;IAK5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgDG;IACG,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8EG;IACG,iBAAiB,CAAC,eAAe,EAAE,qBAAqB;IAI9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiFG;IACG,yBAAyB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAIxG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2DG;IACG,qBAAqB,CAAC,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAI5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8DG;IACG,wBAAwB,CAAC,MAAM,EAAE,+BAA+B,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAItH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoDG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;;;;;OAQG;IACG,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI/F;;;;;;;;OAQG;IACG,8BAA8B,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI5G;;;;;;;OAOG;IACG,uBAAuB,CAAC,YAAY,EAAE,+BAA+B,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAIpH;;;;;;;OAOG;IACG,yBAAyB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAInH;;;;;;;OAOG;IACG,4BAA4B,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAItH;;;;;;;;OAQG;IACG,uBAAuB,CAAC,gBAAgB,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAIzH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,qBAAqB,IAAI,kBAAkB;CAG5C"}
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@explorins/pers-sdk",
3
- "version": "1.6.28",
3
+ "version": "1.6.30",
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",
@@ -125,7 +125,7 @@
125
125
  "@explorins/web3-ts": "^0.3.75"
126
126
  },
127
127
  "devDependencies": {
128
- "@explorins/pers-shared": "^2.1.44",
128
+ "@explorins/pers-shared": "^2.1.48",
129
129
  "@rollup/plugin-commonjs": "^29.0.0",
130
130
  "@rollup/plugin-json": "^6.1.0",
131
131
  "@rollup/plugin-node-resolve": "^16.0.3",
@@ -1,7 +1,6 @@
1
- import { PaginatedResponseDTO, TransactionAnalyticsRequestDTO, TransactionAnalyticsResponseDTO, TransactionRole } from '@explorins/pers-shared';
1
+ import { PaginatedResponseDTO, TransactionAnalyticsRequestDTO, TransactionAnalyticsResponseDTO, TransactionPaginationRequestDTO, TransactionRole } from '@explorins/pers-shared';
2
2
  import { PersApiClient } from '../../core/pers-api-client';
3
3
  import { TransactionDTO, TransactionRequestDTO, AccountSelectorDTO, TransactionRequestResponseDTO, TransactionSubmissionRequestDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
4
- import type { TransactionPaginationParams } from '../models';
5
4
  /**
6
5
  * Platform-Agnostic Transaction API Client (UPDATED FOR NEW RESTful ENDPOINTS)
7
6
  *
@@ -48,15 +47,9 @@ export declare class TransactionApi {
48
47
  /**
49
48
  * AUTH: Submit client-side signed transaction
50
49
  *
51
- * NEW ENDPOINT: POST /transactions/{id}/submit
50
+ * NEW ENDPOINT: POST /transactions/submit
52
51
  */
53
52
  submitSignedTransaction(signedTxData: TransactionSubmissionRequestDTO): Promise<TransactionRequestResponseDTO>;
54
- /**
55
- * AUTH: Burn user tokens
56
- *
57
- * UPDATED: Uses new user transaction endpoint with burn-specific parameters
58
- * Note: This might need backend confirmation on burn functionality implementation
59
- */
60
53
  /**
61
54
  * BUSINESS: Create business transaction
62
55
  *
@@ -68,9 +61,9 @@ export declare class TransactionApi {
68
61
  * UPDATED: /transaction/admin/transaction → /transactions/admin
69
62
  */
70
63
  /**
71
- * AUTH: Prepare client signed transaction
64
+ * AUTH: Prepare client signed transaction (Create new transaction for signing)
72
65
  *
73
- * UPDATED: /transaction/auth/prepare-signing → /transactions/prepare
66
+ * UPDATED: /transaction/auth/prepare-signing → /transactions (POST)
74
67
  */
75
68
  prepareClientSignedTransaction(request: TransactionRequestDTO): Promise<TransactionRequestResponseDTO>;
76
69
  /**
@@ -84,7 +77,7 @@ export declare class TransactionApi {
84
77
  *
85
78
  * UPDATED: /transaction/admin → /transactions (same endpoint, better structure)
86
79
  */
87
- getPaginatedTransactions(params: TransactionPaginationParams): Promise<PaginatedResponseDTO<TransactionDTO>>;
80
+ getPaginatedTransactions(params: TransactionPaginationRequestDTO): Promise<PaginatedResponseDTO<TransactionDTO>>;
88
81
  /**
89
82
  * ADMIN: Export transactions to CSV
90
83
  *
@@ -110,5 +103,10 @@ export declare class TransactionApi {
110
103
  * NEW ENDPOINT: POST /transactions/analytics
111
104
  */
112
105
  getTransactionAnalytics(analyticsRequest: TransactionAnalyticsRequestDTO): Promise<TransactionAnalyticsResponseDTO>;
106
+ /**
107
+ * Helper to convert DTO object to URLSearchParams
108
+ * Handles nested 'filters' object and arrays correctly.
109
+ */
110
+ private buildQueryParams;
113
111
  }
114
112
  //# sourceMappingURL=transaction-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-api.d.ts","sourceRoot":"","sources":["../../../src/transaction/api/transaction-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,eAAe,EAAI,MAAM,wBAAwB,CAAC;AAClJ,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,6BAA6B,EAC7B,+BAA+B,EAChC,MAAM,oDAAoD,CAAC;AAC5D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAE7D;;;;;;;;;;;;GAYG;AACH,qBAAa,cAAc;IACb,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAE5C;;;;OAIG;IACG,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAKxE;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAS/F;;;;;;OAMG;IACG,yBAAyB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAkBxG;;;;OAIG;IACG,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI/F;;;;OAIG;IACG,uBAAuB,CAAC,YAAY,EAAE,+BAA+B,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAIpH;;;;;OAKG;IAeH;;;;OAIG;IASH;;;;OAIG;IAMH;;;;OAIG;IACG,8BAA8B,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI5G;;;;OAIG;IACG,qBAAqB,CAAC,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU5E;;;;OAIG;IACG,wBAAwB,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAiDlH;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5C;;;;OAIG;IACH;;KAEC;IACK,yBAAyB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAgBnH;;OAEG;IACG,4BAA4B,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAgBtH;;;;OAIG;IACG,uBAAuB,CAAC,gBAAgB,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC;CAG1H"}
1
+ {"version":3,"file":"transaction-api.d.ts","sourceRoot":"","sources":["../../../src/transaction/api/transaction-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,eAAe,EAAI,MAAM,wBAAwB,CAAC;AACnL,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,6BAA6B,EAC7B,+BAA+B,EAChC,MAAM,oDAAoD,CAAC;AAE5D;;;;;;;;;;;;GAYG;AACH,qBAAa,cAAc;IACb,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAE5C;;;;OAIG;IACG,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAKxE;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAS/F;;;;;;OAMG;IACG,yBAAyB,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAkBxG;;;;OAIG;IACG,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI/F;;;;OAIG;IACG,uBAAuB,CAAC,YAAY,EAAE,+BAA+B,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAQpH;;;;OAIG;IASH;;;;OAIG;IAMH;;;;OAIG;IACG,8BAA8B,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAI5G;;;;OAIG;IACG,qBAAqB,CAAC,KAAK,GAAE,MAAa,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU5E;;;;OAIG;IACG,wBAAwB,CAAC,MAAM,EAAE,+BAA+B,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAKtH;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5C;;;;OAIG;IACH;;KAEC;IACK,yBAAyB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAgBnH;;OAEG;IACG,4BAA4B,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAgBtH;;;;OAIG;IACG,uBAAuB,CAAC,gBAAgB,EAAE,8BAA8B,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAIzH;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CA8BzB"}
@@ -7,5 +7,4 @@
7
7
  export { TransactionApi } from './api/transaction-api';
8
8
  export { TransactionService } from './services/transaction-service';
9
9
  export * from './models';
10
- export * from '../shared/interfaces/pers-shared-lib.interfaces';
11
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,cAAc,UAAU,CAAC;AACzB,cAAc,iDAAiD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,cAAc,UAAU,CAAC"}