@explorins/pers-sdk 1.1.0-beta.0 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics/api/analytics-api.d.ts +17 -0
- package/dist/analytics/api/analytics-api.d.ts.map +1 -0
- package/dist/analytics/index.d.ts +28 -0
- package/dist/analytics/index.d.ts.map +1 -0
- package/dist/analytics/models/index.d.ts +61 -0
- package/dist/analytics/models/index.d.ts.map +1 -0
- package/dist/analytics/services/analytics-service.d.ts +19 -0
- package/dist/analytics/services/analytics-service.d.ts.map +1 -0
- package/dist/analytics.cjs +76 -0
- package/dist/analytics.cjs.map +1 -0
- package/dist/analytics.d.ts +28 -0
- package/dist/analytics.js +72 -0
- package/dist/analytics.js.map +1 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts +27 -0
- package/dist/auth-admin/api/auth-admin-api.d.ts.map +1 -0
- package/dist/auth-admin/index.d.ts +26 -0
- package/dist/auth-admin/index.d.ts.map +1 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts +23 -0
- package/dist/auth-admin/services/auth-admin-service.d.ts.map +1 -0
- package/dist/auth-admin.cjs +96 -0
- package/dist/auth-admin.cjs.map +1 -0
- package/dist/auth-admin.d.ts +26 -0
- package/dist/auth-admin.js +92 -0
- package/dist/auth-admin.js.map +1 -0
- package/dist/business/api/business-api.d.ts +133 -0
- package/dist/business/api/business-api.d.ts.map +1 -0
- package/dist/business/index.d.ts +34 -0
- package/dist/business/index.d.ts.map +1 -0
- package/{src/business/models/index.ts → dist/business/models/index.d.ts} +8 -13
- package/dist/business/models/index.d.ts.map +1 -0
- package/dist/business/services/business-service.d.ts +51 -0
- package/dist/business/services/business-service.d.ts.map +1 -0
- package/dist/business.cjs +303 -0
- package/dist/business.cjs.map +1 -0
- package/dist/business.d.ts +34 -0
- package/dist/business.js +299 -0
- package/dist/business.js.map +1 -0
- package/dist/campaign/api/campaign-api.d.ts +213 -0
- package/dist/campaign/api/campaign-api.d.ts.map +1 -0
- package/dist/campaign/index.d.ts +44 -0
- package/dist/campaign/index.d.ts.map +1 -0
- package/dist/campaign/services/campaign-service.d.ts +88 -0
- package/dist/campaign/services/campaign-service.d.ts.map +1 -0
- package/dist/campaign.cjs +506 -0
- package/dist/campaign.cjs.map +1 -0
- package/dist/campaign.d.ts +44 -0
- package/dist/campaign.js +502 -0
- package/dist/campaign.js.map +1 -0
- package/dist/core/abstractions/http-client.d.ts +22 -0
- package/dist/core/abstractions/http-client.d.ts.map +1 -0
- package/dist/core/auth/auth-provider.interface.d.ts +12 -0
- package/dist/core/auth/auth-provider.interface.d.ts.map +1 -0
- package/dist/core/auth/create-auth-provider.d.ts +27 -0
- package/dist/core/auth/create-auth-provider.d.ts.map +1 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts +15 -0
- package/dist/core/auth/simple-auth-config.interface.d.ts.map +1 -0
- package/dist/core/index.d.ts +13 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/pers-api-client.d.ts +54 -0
- package/dist/core/pers-api-client.d.ts.map +1 -0
- package/dist/core/pers-config.d.ts +38 -0
- package/dist/core/pers-config.d.ts.map +1 -0
- package/dist/core/utils/jwt.function.d.ts +2 -0
- package/dist/core/utils/jwt.function.d.ts.map +1 -0
- package/dist/core.cjs +506 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.d.ts +13 -0
- package/dist/core.js +497 -0
- package/dist/core.js.map +1 -0
- package/dist/donation/api/donation-api.d.ts +18 -0
- package/dist/donation/api/donation-api.d.ts.map +1 -0
- package/dist/donation/index.d.ts +25 -0
- package/dist/donation/index.d.ts.map +1 -0
- package/dist/donation/models/index.d.ts +8 -0
- package/dist/donation/models/index.d.ts.map +1 -0
- package/dist/donation/services/donation-service.d.ts +19 -0
- package/dist/donation/services/donation-service.d.ts.map +1 -0
- package/dist/donation.cjs +78 -0
- package/dist/donation.cjs.map +1 -0
- package/dist/donation.d.ts +25 -0
- package/dist/donation.js +74 -0
- package/dist/donation.js.map +1 -0
- package/dist/index.cjs +4217 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4164 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +148 -0
- package/dist/payment/api/payment-api.d.ts +105 -0
- package/dist/payment/api/payment-api.d.ts.map +1 -0
- package/dist/payment/index.d.ts +36 -0
- package/dist/payment/index.d.ts.map +1 -0
- package/dist/payment/models/index.d.ts +12 -0
- package/dist/payment/models/index.d.ts.map +1 -0
- package/dist/payment/services/payment-service.d.ts +40 -0
- package/dist/payment/services/payment-service.d.ts.map +1 -0
- package/dist/payment.cjs +258 -0
- package/dist/payment.cjs.map +1 -0
- package/dist/payment.d.ts +36 -0
- package/dist/payment.js +254 -0
- package/dist/payment.js.map +1 -0
- package/dist/pers-sdk.d.ts +29 -0
- package/dist/pers-sdk.d.ts.map +1 -0
- package/dist/redemption/api/redemption-api.d.ts +147 -0
- package/dist/redemption/api/redemption-api.d.ts.map +1 -0
- package/dist/redemption/index.d.ts +35 -0
- package/dist/redemption/index.d.ts.map +1 -0
- package/dist/redemption/models/index.d.ts +8 -0
- package/dist/redemption/models/index.d.ts.map +1 -0
- package/dist/redemption/services/redemption-service.d.ts +56 -0
- package/dist/redemption/services/redemption-service.d.ts.map +1 -0
- package/dist/redemption.cjs +333 -0
- package/dist/redemption.cjs.map +1 -0
- package/dist/redemption.d.ts +35 -0
- package/dist/redemption.js +329 -0
- package/dist/redemption.js.map +1 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +18 -0
- package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -0
- package/dist/tenant/api/tenant-api.d.ts +56 -0
- package/dist/tenant/api/tenant-api.d.ts.map +1 -0
- package/dist/tenant/index.d.ts +34 -0
- package/dist/tenant/index.d.ts.map +1 -0
- package/dist/tenant/models/index.d.ts +11 -0
- package/dist/tenant/models/index.d.ts.map +1 -0
- package/dist/tenant/services/tenant-service.d.ts +46 -0
- package/dist/tenant/services/tenant-service.d.ts.map +1 -0
- package/dist/tenant.cjs +177 -0
- package/dist/tenant.cjs.map +1 -0
- package/dist/tenant.d.ts +34 -0
- package/dist/tenant.js +173 -0
- package/dist/tenant.js.map +1 -0
- package/dist/token/api/token-api.d.ts +64 -0
- package/dist/token/api/token-api.d.ts.map +1 -0
- package/dist/token/base/base-token-service.d.ts +87 -0
- package/dist/token/base/base-token-service.d.ts.map +1 -0
- package/dist/token/index.d.ts +13 -0
- package/dist/token/index.d.ts.map +1 -0
- package/dist/token/models/index.d.ts +18 -0
- package/dist/token/models/index.d.ts.map +1 -0
- package/dist/token/services/token-service.d.ts +68 -0
- package/dist/token/services/token-service.d.ts.map +1 -0
- package/dist/token/token-sdk.d.ts +140 -0
- package/dist/token/token-sdk.d.ts.map +1 -0
- package/dist/token.cjs +537 -0
- package/dist/token.cjs.map +1 -0
- package/dist/token.d.ts +13 -0
- package/dist/token.js +532 -0
- package/dist/token.js.map +1 -0
- package/dist/transaction/api/transaction-api.d.ts +133 -0
- package/dist/transaction/api/transaction-api.d.ts.map +1 -0
- package/dist/transaction/index.d.ts +38 -0
- package/dist/transaction/index.d.ts.map +1 -0
- package/dist/transaction/models/index.d.ts +42 -0
- package/dist/transaction/models/index.d.ts.map +1 -0
- package/dist/transaction/services/transaction-service.d.ts +56 -0
- package/dist/transaction/services/transaction-service.d.ts.map +1 -0
- package/dist/transaction.cjs +394 -0
- package/dist/transaction.cjs.map +1 -0
- package/dist/transaction.d.ts +38 -0
- package/dist/transaction.js +390 -0
- package/dist/transaction.js.map +1 -0
- package/dist/user/api/user-api.d.ts +56 -0
- package/dist/user/api/user-api.d.ts.map +1 -0
- package/dist/user/index.d.ts +36 -0
- package/dist/user/index.d.ts.map +1 -0
- package/dist/user/models/index.d.ts +12 -0
- package/dist/user/models/index.d.ts.map +1 -0
- package/dist/user/services/user-service.d.ts +46 -0
- package/dist/user/services/user-service.d.ts.map +1 -0
- package/dist/user-status/api/user-status-api.d.ts +37 -0
- package/dist/user-status/api/user-status-api.d.ts.map +1 -0
- package/dist/user-status/index.d.ts +28 -0
- package/dist/user-status/index.d.ts.map +1 -0
- package/dist/user-status/models/index.d.ts +8 -0
- package/dist/user-status/models/index.d.ts.map +1 -0
- package/dist/user-status/services/user-status-service.d.ts +26 -0
- package/dist/user-status/services/user-status-service.d.ts.map +1 -0
- package/dist/user-status.cjs +147 -0
- package/dist/user-status.cjs.map +1 -0
- package/dist/user-status.d.ts +28 -0
- package/dist/user-status.js +143 -0
- package/dist/user-status.js.map +1 -0
- package/dist/user.cjs +188 -0
- package/dist/user.cjs.map +1 -0
- package/dist/user.d.ts +36 -0
- package/dist/user.js +184 -0
- package/dist/user.js.map +1 -0
- package/dist/web3/api/web3-api.d.ts +27 -0
- package/dist/web3/api/web3-api.d.ts.map +1 -0
- package/dist/web3/index.d.ts +16 -0
- package/dist/web3/index.d.ts.map +1 -0
- package/dist/web3/models/index.d.ts +92 -0
- package/dist/web3/models/index.d.ts.map +1 -0
- package/dist/web3/services/web3-service.d.ts +21 -0
- package/dist/web3/services/web3-service.d.ts.map +1 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts +19 -0
- package/dist/web3-chain/api/web3-chain-api.d.ts.map +1 -0
- package/dist/web3-chain/index.d.ts +17 -0
- package/dist/web3-chain/index.d.ts.map +1 -0
- package/dist/web3-chain/models/index.d.ts +38 -0
- package/dist/web3-chain/models/index.d.ts.map +1 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts +8 -0
- package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -0
- package/dist/web3-chain/services/provider.service.d.ts +15 -0
- package/dist/web3-chain/services/provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts +8 -0
- package/dist/web3-chain/services/public-http-provider.service.d.ts.map +1 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts +17 -0
- package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -0
- package/dist/web3-chain.cjs +316 -0
- package/dist/web3-chain.cjs.map +1 -0
- package/dist/web3-chain.d.ts +17 -0
- package/dist/web3-chain.js +310 -0
- package/dist/web3-chain.js.map +1 -0
- package/dist/web3.cjs +516 -0
- package/dist/web3.cjs.map +1 -0
- package/dist/web3.d.ts +16 -0
- package/dist/web3.js +513 -0
- package/dist/web3.js.map +1 -0
- package/package.json +105 -17
- package/explorins-pers-sdk-1.0.0-alpha.1.tgz +0 -0
- package/rollup.config.js +0 -84
- package/src/business/api/business-api.ts +0 -72
- package/src/business/business/tsconfig.json +0 -18
- package/src/business/index.ts +0 -52
- package/src/business/services/business-service.ts +0 -88
- package/src/core/abstractions/core-interfaces.ts +0 -56
- package/src/core/abstractions/http-client.ts +0 -23
- package/src/core/auth/auth-provider.interface.ts +0 -16
- package/src/core/auth/create-auth-provider.ts +0 -136
- package/src/core/auth/simple-auth-config.interface.ts +0 -15
- package/src/core/core.ts +0 -30
- package/src/core/pers-api-client.ts +0 -151
- package/src/core/pers-config.ts +0 -38
- package/src/core.ts +0 -30
- package/src/index.ts +0 -16
- package/src/pers-sdk.ts +0 -45
- package/tsconfig.json +0 -28
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Platform-Agnostic Transaction API Client (UPDATED FOR NEW RESTful ENDPOINTS)
|
|
5
|
+
*
|
|
6
|
+
* Handles transaction operations using the PERS backend.
|
|
7
|
+
* Uses @explorins/pers-shared DTOs for consistency with backend.
|
|
8
|
+
*
|
|
9
|
+
* MIGRATION NOTES:
|
|
10
|
+
* - All endpoints changed from /transaction to /transactions
|
|
11
|
+
* - Role-based paths removed (no more /auth, /admin, /business in URLs)
|
|
12
|
+
* - New RESTful resource-based structure
|
|
13
|
+
* - Added new client-side transaction flow methods
|
|
14
|
+
* - Enhanced admin query capabilities
|
|
15
|
+
*/
|
|
16
|
+
class TransactionApi {
|
|
17
|
+
constructor(apiClient) {
|
|
18
|
+
this.apiClient = apiClient;
|
|
19
|
+
this.basePath = '/transactions';
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get transaction by ID (public endpoint)
|
|
23
|
+
*
|
|
24
|
+
* UPDATED: /transaction/{id} → /transactions/{id}
|
|
25
|
+
*/
|
|
26
|
+
async getTransactionById(transactionId) {
|
|
27
|
+
return this.apiClient.get(`${this.basePath}/${transactionId}`);
|
|
28
|
+
}
|
|
29
|
+
// ==========================================
|
|
30
|
+
// AUTHENTICATED USER OPERATIONS
|
|
31
|
+
// ==========================================
|
|
32
|
+
/**
|
|
33
|
+
* AUTH: Create authenticated user transaction
|
|
34
|
+
*
|
|
35
|
+
* UPDATED: /transaction/auth/transaction → /transactions/user
|
|
36
|
+
*/
|
|
37
|
+
async createAuthTransaction(request) {
|
|
38
|
+
return this.apiClient.post(`${this.basePath}/user`, request);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* AUTH: Get user's sent transactions
|
|
42
|
+
*
|
|
43
|
+
* UPDATED: /transaction/auth/sender → /transactions/me/sent
|
|
44
|
+
*/
|
|
45
|
+
async getUserSentTransactions() {
|
|
46
|
+
const params = new URLSearchParams({
|
|
47
|
+
timestamp: Date.now().toString()
|
|
48
|
+
});
|
|
49
|
+
return this.apiClient.get(`${this.basePath}/me/sent?${params.toString()}`);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* AUTH: Get user's received transactions
|
|
53
|
+
*
|
|
54
|
+
* UPDATED: /transaction/auth/recipient → /transactions/me/received
|
|
55
|
+
*/
|
|
56
|
+
async getUserReceivedTransactions() {
|
|
57
|
+
const params = new URLSearchParams({
|
|
58
|
+
timestamp: Date.now().toString()
|
|
59
|
+
});
|
|
60
|
+
return this.apiClient.get(`${this.basePath}/me/received?${params.toString()}`);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* AUTH: Get user transaction history by type (backwards compatibility)
|
|
64
|
+
*
|
|
65
|
+
* UPDATED: Maps to appropriate /transactions/me/* endpoints
|
|
66
|
+
*/
|
|
67
|
+
async getUserTransactionHistory(type) {
|
|
68
|
+
const params = new URLSearchParams({
|
|
69
|
+
timestamp: Date.now().toString()
|
|
70
|
+
});
|
|
71
|
+
// Map legacy type parameter to new endpoints
|
|
72
|
+
switch (type.toLowerCase()) {
|
|
73
|
+
case 'sender':
|
|
74
|
+
case 'sent':
|
|
75
|
+
return this.apiClient.get(`${this.basePath}/me/sent?${params.toString()}`);
|
|
76
|
+
case 'recipient':
|
|
77
|
+
case 'received':
|
|
78
|
+
return this.apiClient.get(`${this.basePath}/me/received?${params.toString()}`);
|
|
79
|
+
default:
|
|
80
|
+
// Default to sent transactions for backwards compatibility
|
|
81
|
+
return this.apiClient.get(`${this.basePath}/me/sent?${params.toString()}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* AUTH: Prepare client signed transaction
|
|
86
|
+
*
|
|
87
|
+
* UPDATED: /transaction/auth/prepare-signing → /transactions/prepare
|
|
88
|
+
*/
|
|
89
|
+
async prepareClientSignedTransaction(request) {
|
|
90
|
+
return this.apiClient.post(`${this.basePath}/prepare`, request);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* AUTH: Prepare existing transaction for client-side signing
|
|
94
|
+
*
|
|
95
|
+
* NEW ENDPOINT: GET /transactions/{id}/prepare
|
|
96
|
+
*/
|
|
97
|
+
async prepareExistingTransaction(transactionId) {
|
|
98
|
+
return this.apiClient.get(`${this.basePath}/${transactionId}/prepare`);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* AUTH: Submit client-side signed transaction
|
|
102
|
+
*
|
|
103
|
+
* NEW ENDPOINT: POST /transactions/{id}/submit
|
|
104
|
+
*/
|
|
105
|
+
async submitSignedTransaction(transactionId, signedData) {
|
|
106
|
+
return this.apiClient.post(`${this.basePath}/${transactionId}/submit`, signedData);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* AUTH: Burn user tokens
|
|
110
|
+
*
|
|
111
|
+
* UPDATED: Uses new user transaction endpoint with burn-specific parameters
|
|
112
|
+
* Note: This might need backend confirmation on burn functionality implementation
|
|
113
|
+
*/
|
|
114
|
+
async burnUserTokens(request) {
|
|
115
|
+
// Map burn request to TransactionRequestDTO format for new endpoint
|
|
116
|
+
const transactionRequest = {
|
|
117
|
+
...request,
|
|
118
|
+
// Add any specific burn transaction parameters here
|
|
119
|
+
};
|
|
120
|
+
return this.apiClient.post(`${this.basePath}/user`, transactionRequest);
|
|
121
|
+
}
|
|
122
|
+
// ==========================================
|
|
123
|
+
// BUSINESS OPERATIONS
|
|
124
|
+
// ==========================================
|
|
125
|
+
/**
|
|
126
|
+
* BUSINESS: Create business transaction
|
|
127
|
+
*
|
|
128
|
+
* UPDATED: /transaction/business/transaction → /transactions/business
|
|
129
|
+
*/
|
|
130
|
+
async createBusinessTransaction(request) {
|
|
131
|
+
return this.apiClient.post(`${this.basePath}/business`, request);
|
|
132
|
+
}
|
|
133
|
+
// ==========================================
|
|
134
|
+
// ADMIN OPERATIONS
|
|
135
|
+
// ==========================================
|
|
136
|
+
/**
|
|
137
|
+
* ADMIN: Create admin transaction
|
|
138
|
+
*
|
|
139
|
+
* UPDATED: /transaction/admin/transaction → /transactions/admin
|
|
140
|
+
*/
|
|
141
|
+
async createAdminTransaction(request) {
|
|
142
|
+
return this.apiClient.post(`${this.basePath}/system`, request);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* ADMIN: Get all tenant transactions
|
|
146
|
+
*
|
|
147
|
+
* UPDATED: /transaction/admin → /transactions
|
|
148
|
+
*/
|
|
149
|
+
async getTenantTransactions() {
|
|
150
|
+
const result = await this.apiClient.get(`${this.basePath}`);
|
|
151
|
+
// If the new endpoint returns paginated response, extract the data array
|
|
152
|
+
if ('data' in result) {
|
|
153
|
+
return result.data;
|
|
154
|
+
}
|
|
155
|
+
// Fallback for direct array response
|
|
156
|
+
return result;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* ADMIN: Get paginated transactions with filtering and sorting
|
|
160
|
+
*
|
|
161
|
+
* UPDATED: /transaction/admin → /transactions (same endpoint, better structure)
|
|
162
|
+
*/
|
|
163
|
+
async getPaginatedTransactions(params) {
|
|
164
|
+
// Build query parameters
|
|
165
|
+
const queryParams = {
|
|
166
|
+
page: params.page.toString(),
|
|
167
|
+
limit: params.limit.toString()
|
|
168
|
+
};
|
|
169
|
+
// Add sorting parameters if provided
|
|
170
|
+
if (params.sortBy) {
|
|
171
|
+
queryParams['sortBy'] = params.sortBy;
|
|
172
|
+
}
|
|
173
|
+
if (params.sortOrder) {
|
|
174
|
+
queryParams['sortOrder'] = params.sortOrder;
|
|
175
|
+
}
|
|
176
|
+
// Add user-specific filtering if provided
|
|
177
|
+
if (params.participantId) {
|
|
178
|
+
queryParams['participantId'] = params.participantId;
|
|
179
|
+
}
|
|
180
|
+
// Add status filtering if provided
|
|
181
|
+
if (params.status) {
|
|
182
|
+
queryParams['status'] = params.status;
|
|
183
|
+
}
|
|
184
|
+
// Add additional filters if provided
|
|
185
|
+
if (params.filters) {
|
|
186
|
+
if (params.filters.startDate) {
|
|
187
|
+
queryParams['startDate'] = params.filters.startDate;
|
|
188
|
+
}
|
|
189
|
+
if (params.filters.endDate) {
|
|
190
|
+
queryParams['endDate'] = params.filters.endDate;
|
|
191
|
+
}
|
|
192
|
+
if (params.filters.type && params.filters.type.length > 0) {
|
|
193
|
+
queryParams['type'] = params.filters.type.join(',');
|
|
194
|
+
}
|
|
195
|
+
if (params.filters.tokenType && params.filters.tokenType.length > 0) {
|
|
196
|
+
queryParams['tokenType'] = params.filters.tokenType.join(',');
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
// Build query string
|
|
200
|
+
const queryString = Object.entries(queryParams)
|
|
201
|
+
.map(([key, value]) => `${key}=${encodeURIComponent(value)}`)
|
|
202
|
+
.join('&');
|
|
203
|
+
return this.apiClient.get(`${this.basePath}?${queryString}`);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* ADMIN: Export transactions to CSV
|
|
207
|
+
*
|
|
208
|
+
* UPDATED: /transaction/admin/export/csv → /transactions/export/csv
|
|
209
|
+
*/
|
|
210
|
+
async exportTransactionsCSV() {
|
|
211
|
+
return this.apiClient.get(`${this.basePath}/export/csv`, 'blob');
|
|
212
|
+
}
|
|
213
|
+
// ==========================================
|
|
214
|
+
// NEW ADMIN QUERY METHODS
|
|
215
|
+
// ==========================================
|
|
216
|
+
/**
|
|
217
|
+
* ADMIN: Query transactions by sender
|
|
218
|
+
*
|
|
219
|
+
* NEW ENDPOINT: POST /transactions/query-sender
|
|
220
|
+
*/
|
|
221
|
+
async queryTransactionsBySender(accountSelector) {
|
|
222
|
+
return this.apiClient.post(`${this.basePath}/query-sender`, accountSelector);
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* ADMIN: Query transactions by recipient
|
|
226
|
+
*
|
|
227
|
+
* NEW ENDPOINT: POST /transactions/query-recipient
|
|
228
|
+
*/
|
|
229
|
+
async queryTransactionsByRecipient(accountSelector) {
|
|
230
|
+
return this.apiClient.post(`${this.basePath}/query-recipient`, accountSelector);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* ADMIN: Get transaction analytics
|
|
234
|
+
*
|
|
235
|
+
* NEW ENDPOINT: POST /transactions/analytics
|
|
236
|
+
*/
|
|
237
|
+
async getTransactionAnalytics(analyticsRequest) {
|
|
238
|
+
return this.apiClient.post(`${this.basePath}/analytics`, analyticsRequest);
|
|
239
|
+
}
|
|
240
|
+
// ==========================================
|
|
241
|
+
// CONVENIENCE METHODS (BACKWARDS COMPATIBILITY)
|
|
242
|
+
// ==========================================
|
|
243
|
+
/**
|
|
244
|
+
* Convenience method: Get user sent transactions (alias)
|
|
245
|
+
*/
|
|
246
|
+
async getUserSenderTransactions() {
|
|
247
|
+
return this.getUserSentTransactions();
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Convenience method: Get user received transactions (alias)
|
|
251
|
+
*/
|
|
252
|
+
async getUserRecipientTransactions() {
|
|
253
|
+
return this.getUserReceivedTransactions();
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Platform-Agnostic Transaction Service
|
|
259
|
+
*
|
|
260
|
+
* Contains transaction business logic and operations that work across platforms.
|
|
261
|
+
* No framework dependencies - pure TypeScript business logic.
|
|
262
|
+
*
|
|
263
|
+
* Focuses only on actual backend capabilities.
|
|
264
|
+
*/
|
|
265
|
+
class TransactionService {
|
|
266
|
+
constructor(transactionApi) {
|
|
267
|
+
this.transactionApi = transactionApi;
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Get transaction by ID
|
|
271
|
+
*/
|
|
272
|
+
async getTransactionById(transactionId) {
|
|
273
|
+
return this.transactionApi.getTransactionById(transactionId);
|
|
274
|
+
}
|
|
275
|
+
// ==========================================
|
|
276
|
+
// AUTHENTICATED OPERATIONS
|
|
277
|
+
// ==========================================
|
|
278
|
+
/**
|
|
279
|
+
* AUTH: Create authenticated transaction
|
|
280
|
+
*/
|
|
281
|
+
async createAuthTransaction(request) {
|
|
282
|
+
return this.transactionApi.createAuthTransaction(request);
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* AUTH: Get user transaction history by type
|
|
286
|
+
*/
|
|
287
|
+
async getUserTransactionHistory(type) {
|
|
288
|
+
return this.transactionApi.getUserTransactionHistory(type);
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* AUTH: Prepare client signed transaction
|
|
292
|
+
*/
|
|
293
|
+
async prepareClientSignedTransaction(request) {
|
|
294
|
+
return this.transactionApi.prepareClientSignedTransaction(request);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* AUTH: Burn user tokens
|
|
298
|
+
*/
|
|
299
|
+
async burnUserTokens(request) {
|
|
300
|
+
return this.transactionApi.burnUserTokens(request);
|
|
301
|
+
}
|
|
302
|
+
// ==========================================
|
|
303
|
+
// BUSINESS OPERATIONS
|
|
304
|
+
// ==========================================
|
|
305
|
+
/**
|
|
306
|
+
* BUSINESS: Create business transaction
|
|
307
|
+
*/
|
|
308
|
+
async createBusinessTransaction(request) {
|
|
309
|
+
return this.transactionApi.createBusinessTransaction(request);
|
|
310
|
+
}
|
|
311
|
+
// ==========================================
|
|
312
|
+
// ADMIN OPERATIONS
|
|
313
|
+
// ==========================================
|
|
314
|
+
/**
|
|
315
|
+
* ADMIN: Create admin transaction
|
|
316
|
+
*/
|
|
317
|
+
async createAdminTransaction(request) {
|
|
318
|
+
return this.transactionApi.createAdminTransaction(request);
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* ADMIN: Get all tenant transactions
|
|
322
|
+
*/
|
|
323
|
+
async getTenantTransactions() {
|
|
324
|
+
return this.transactionApi.getTenantTransactions();
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* ADMIN: Get paginated transactions with filtering and sorting
|
|
328
|
+
*/
|
|
329
|
+
async getPaginatedTransactions(params) {
|
|
330
|
+
return this.transactionApi.getPaginatedTransactions(params);
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* ADMIN: Export transactions to CSV
|
|
334
|
+
*/
|
|
335
|
+
async exportTransactionsCSV() {
|
|
336
|
+
return this.transactionApi.exportTransactionsCSV();
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Transaction Domain Models
|
|
342
|
+
*
|
|
343
|
+
* Re-exports from @explorins/pers-shared for consistency with backend
|
|
344
|
+
* and to provide a single import source for transaction-related types.
|
|
345
|
+
*/
|
|
346
|
+
// Transaction account types (domain-specific enum)
|
|
347
|
+
exports.TransactionAccountType = void 0;
|
|
348
|
+
(function (TransactionAccountType) {
|
|
349
|
+
// Add specific transaction account types as needed
|
|
350
|
+
// This should match the enum used in the infrastructure layer
|
|
351
|
+
})(exports.TransactionAccountType || (exports.TransactionAccountType = {}));
|
|
352
|
+
|
|
353
|
+
/**
|
|
354
|
+
* @explorins/pers-sdk-transaction
|
|
355
|
+
*
|
|
356
|
+
* Platform-agnostic Transaction Domain SDK for PERS ecosystem
|
|
357
|
+
* Handles transaction operations across different authorization levels
|
|
358
|
+
*/
|
|
359
|
+
// API Layer
|
|
360
|
+
/**
|
|
361
|
+
* Create a complete Transaction SDK instance
|
|
362
|
+
*
|
|
363
|
+
* @param apiClient - Configured PERS API client
|
|
364
|
+
* @returns Transaction SDK with flattened structure for better DX
|
|
365
|
+
*/
|
|
366
|
+
function createTransactionSDK(apiClient) {
|
|
367
|
+
const transactionApi = new TransactionApi(apiClient);
|
|
368
|
+
const transactionService = new TransactionService(transactionApi);
|
|
369
|
+
return {
|
|
370
|
+
// Direct access to service methods (primary interface)
|
|
371
|
+
// Public methods
|
|
372
|
+
getTransactionById: (transactionId) => transactionService.getTransactionById(transactionId),
|
|
373
|
+
// Auth methods
|
|
374
|
+
createAuthTransaction: (request) => transactionService.createAuthTransaction(request),
|
|
375
|
+
getUserTransactionHistory: (type) => transactionService.getUserTransactionHistory(type),
|
|
376
|
+
prepareClientSignedTransaction: (request) => transactionService.prepareClientSignedTransaction(request),
|
|
377
|
+
burnUserTokens: (request) => transactionService.burnUserTokens(request),
|
|
378
|
+
// Business methods
|
|
379
|
+
createBusinessTransaction: (request) => transactionService.createBusinessTransaction(request),
|
|
380
|
+
// Admin methods
|
|
381
|
+
createAdminTransaction: (request) => transactionService.createAdminTransaction(request),
|
|
382
|
+
getTenantTransactions: () => transactionService.getTenantTransactions(),
|
|
383
|
+
getPaginatedTransactions: (params) => transactionService.getPaginatedTransactions(params),
|
|
384
|
+
exportTransactionsCSV: () => transactionService.exportTransactionsCSV(),
|
|
385
|
+
// Advanced access for edge cases
|
|
386
|
+
api: transactionApi,
|
|
387
|
+
service: transactionService
|
|
388
|
+
};
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
exports.TransactionApi = TransactionApi;
|
|
392
|
+
exports.TransactionService = TransactionService;
|
|
393
|
+
exports.createTransactionSDK = createTransactionSDK;
|
|
394
|
+
//# sourceMappingURL=transaction.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.cjs","sources":["../../src/transaction/api/transaction-api.ts","../../src/transaction/services/transaction-service.ts","../../src/transaction/models/index.ts","../../src/transaction/index.ts"],"sourcesContent":[null,null,null,null],"names":["TransactionAccountType"],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @explorins/pers-sdk-transaction
|
|
3
|
+
*
|
|
4
|
+
* Platform-agnostic Transaction Domain SDK for PERS ecosystem
|
|
5
|
+
* Handles transaction operations across different authorization levels
|
|
6
|
+
*/
|
|
7
|
+
export { TransactionApi } from './transaction/api/transaction-api';
|
|
8
|
+
export { TransactionService } from './transaction/services/transaction-service';
|
|
9
|
+
export * from './transaction/models';
|
|
10
|
+
export * from './shared/interfaces/pers-shared-lib.interfaces';
|
|
11
|
+
export * from './transaction/models';
|
|
12
|
+
import { ClientTransactionRequestDTO, TransactionRequestDTO } from './shared/interfaces/pers-shared-lib.interfaces';
|
|
13
|
+
import { PersApiClient } from './core/pers-api-client';
|
|
14
|
+
import { TransactionApi } from './transaction/api/transaction-api';
|
|
15
|
+
import { TransactionService } from './transaction/services/transaction-service';
|
|
16
|
+
import { TransactionPaginationParams, UserBurnTokenRequestDTO } from './transaction/models';
|
|
17
|
+
/**
|
|
18
|
+
* Create a complete Transaction SDK instance
|
|
19
|
+
*
|
|
20
|
+
* @param apiClient - Configured PERS API client
|
|
21
|
+
* @returns Transaction SDK with flattened structure for better DX
|
|
22
|
+
*/
|
|
23
|
+
export declare function createTransactionSDK(apiClient: PersApiClient): {
|
|
24
|
+
getTransactionById: (transactionId: string) => Promise<TransactionDTO>;
|
|
25
|
+
createAuthTransaction: (request: TransactionRequestDTO) => Promise<TransactionDTO>;
|
|
26
|
+
getUserTransactionHistory: (type: string) => Promise<TransactionDTO[]>;
|
|
27
|
+
prepareClientSignedTransaction: (request: ClientTransactionRequestDTO) => Promise<ClientTransactionRequestResponseDto>;
|
|
28
|
+
burnUserTokens: (request: UserBurnTokenRequestDTO) => Promise<TransactionDTO>;
|
|
29
|
+
createBusinessTransaction: (request: TransactionRequestDTO) => Promise<TransactionDTO>;
|
|
30
|
+
createAdminTransaction: (request: TransactionRequestDTO) => Promise<TransactionDTO>;
|
|
31
|
+
getTenantTransactions: () => Promise<TransactionDTO[]>;
|
|
32
|
+
getPaginatedTransactions: (params: TransactionPaginationParams) => Promise<import("./models").TransactionPaginationResponse>;
|
|
33
|
+
exportTransactionsCSV: () => Promise<Blob>;
|
|
34
|
+
api: TransactionApi;
|
|
35
|
+
service: TransactionService;
|
|
36
|
+
};
|
|
37
|
+
export type TransactionSDK = ReturnType<typeof createTransactionSDK>;
|
|
38
|
+
//# sourceMappingURL=index.d.ts.map
|