@explorins/pers-sdk 1.6.4 → 1.6.9

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 (212) hide show
  1. package/README.md +86 -342
  2. package/dist/analytics/index.d.ts +0 -16
  3. package/dist/analytics/index.d.ts.map +1 -1
  4. package/dist/analytics.cjs +5 -73
  5. package/dist/analytics.cjs.map +1 -1
  6. package/dist/analytics.js +1 -72
  7. package/dist/analytics.js.map +1 -1
  8. package/dist/business/index.d.ts +0 -24
  9. package/dist/business/index.d.ts.map +1 -1
  10. package/dist/business.cjs +5 -273
  11. package/dist/business.cjs.map +1 -1
  12. package/dist/business.js +1 -272
  13. package/dist/business.js.map +1 -1
  14. package/dist/campaign/api/campaign-api.d.ts +3 -3
  15. package/dist/campaign/api/campaign-api.d.ts.map +1 -1
  16. package/dist/campaign/index.d.ts +0 -34
  17. package/dist/campaign/index.d.ts.map +1 -1
  18. package/dist/campaign.cjs +5 -447
  19. package/dist/campaign.cjs.map +1 -1
  20. package/dist/campaign.js +1 -446
  21. package/dist/campaign.js.map +1 -1
  22. package/dist/chunks/analytics-service-CitlimKJ.cjs +49 -0
  23. package/dist/chunks/analytics-service-CitlimKJ.cjs.map +1 -0
  24. package/dist/chunks/analytics-service-CxyrOwel.js +46 -0
  25. package/dist/chunks/analytics-service-CxyrOwel.js.map +1 -0
  26. package/dist/chunks/{token-sdk-BW4kkJb3.js → base-token-service-BSXDwrcq.js} +138 -204
  27. package/dist/chunks/base-token-service-BSXDwrcq.js.map +1 -0
  28. package/dist/chunks/{token-sdk-CiAbOb6c.cjs → base-token-service-CYuqPPs0.cjs} +140 -207
  29. package/dist/chunks/base-token-service-CYuqPPs0.cjs.map +1 -0
  30. package/dist/chunks/business-service-Cq3-oksM.cjs +241 -0
  31. package/dist/chunks/business-service-Cq3-oksM.cjs.map +1 -0
  32. package/dist/chunks/business-service-DrC-TNGa.js +238 -0
  33. package/dist/chunks/business-service-DrC-TNGa.js.map +1 -0
  34. package/dist/chunks/campaign-service-CWK9I388.cjs +403 -0
  35. package/dist/chunks/campaign-service-CWK9I388.cjs.map +1 -0
  36. package/dist/chunks/campaign-service-Dd7gMjC9.js +400 -0
  37. package/dist/chunks/campaign-service-Dd7gMjC9.js.map +1 -0
  38. package/dist/chunks/donation-service-CyJS4DIZ.js +47 -0
  39. package/dist/chunks/donation-service-CyJS4DIZ.js.map +1 -0
  40. package/dist/chunks/donation-service-D-xFrONi.cjs +50 -0
  41. package/dist/chunks/donation-service-D-xFrONi.cjs.map +1 -0
  42. package/dist/chunks/{index-CJ9Jfa4A.js → explorer.utils-Ckll15ja.js} +108 -172
  43. package/dist/chunks/explorer.utils-Ckll15ja.js.map +1 -0
  44. package/dist/chunks/{index-CzEluQmf.cjs → explorer.utils-GpskbLl1.cjs} +106 -174
  45. package/dist/chunks/explorer.utils-GpskbLl1.cjs.map +1 -0
  46. package/dist/chunks/index-BtDNXaFq.js +13 -0
  47. package/dist/chunks/index-BtDNXaFq.js.map +1 -0
  48. package/dist/chunks/index-CMk3Aqkk.cjs +15 -0
  49. package/dist/chunks/index-CMk3Aqkk.cjs.map +1 -0
  50. package/dist/chunks/payment-service-B4qx0qiE.cjs +220 -0
  51. package/dist/chunks/payment-service-B4qx0qiE.cjs.map +1 -0
  52. package/dist/chunks/payment-service-DfCBFosx.js +217 -0
  53. package/dist/chunks/payment-service-DfCBFosx.js.map +1 -0
  54. package/dist/chunks/pers-sdk-Bd6BZHgt.js +5672 -0
  55. package/dist/chunks/pers-sdk-Bd6BZHgt.js.map +1 -0
  56. package/dist/chunks/pers-sdk-CmyPEhy7.cjs +5705 -0
  57. package/dist/chunks/pers-sdk-CmyPEhy7.cjs.map +1 -0
  58. package/dist/chunks/redemption-service-7qbeQxEM.cjs +330 -0
  59. package/dist/chunks/redemption-service-7qbeQxEM.cjs.map +1 -0
  60. package/dist/chunks/redemption-service-BT0J5Iy7.js +327 -0
  61. package/dist/chunks/redemption-service-BT0J5Iy7.js.map +1 -0
  62. package/dist/chunks/tenant-service-Ba7xrWED.cjs +171 -0
  63. package/dist/chunks/tenant-service-Ba7xrWED.cjs.map +1 -0
  64. package/dist/chunks/tenant-service-DELk412y.js +168 -0
  65. package/dist/chunks/tenant-service-DELk412y.js.map +1 -0
  66. package/dist/chunks/token-service-BWScn8Qa.cjs +208 -0
  67. package/dist/chunks/token-service-BWScn8Qa.cjs.map +1 -0
  68. package/dist/chunks/token-service-CpVwC5Eb.js +205 -0
  69. package/dist/chunks/token-service-CpVwC5Eb.js.map +1 -0
  70. package/dist/chunks/user-service-D1Rn4U8u.cjs +153 -0
  71. package/dist/chunks/user-service-D1Rn4U8u.cjs.map +1 -0
  72. package/dist/chunks/user-service-D6mTa_WZ.js +150 -0
  73. package/dist/chunks/user-service-D6mTa_WZ.js.map +1 -0
  74. package/dist/chunks/{index-BfOoX87y.cjs → web3-chain-service-D75TcHkh.cjs} +28 -53
  75. package/dist/chunks/web3-chain-service-D75TcHkh.cjs.map +1 -0
  76. package/dist/chunks/{index-CM21r58m.js → web3-chain-service-Dp5Z8p9I.js} +28 -51
  77. package/dist/chunks/web3-chain-service-Dp5Z8p9I.js.map +1 -0
  78. package/dist/core/auth/api/auth-api.d.ts +11 -14
  79. package/dist/core/auth/api/auth-api.d.ts.map +1 -1
  80. package/dist/core/auth/auth-provider.interface.d.ts +36 -68
  81. package/dist/core/auth/auth-provider.interface.d.ts.map +1 -1
  82. package/dist/core/auth/default-auth-provider.d.ts +13 -59
  83. package/dist/core/auth/default-auth-provider.d.ts.map +1 -1
  84. package/dist/core/auth/index.d.ts +8 -14
  85. package/dist/core/auth/index.d.ts.map +1 -1
  86. package/dist/core/auth/refresh-manager.d.ts +15 -0
  87. package/dist/core/auth/refresh-manager.d.ts.map +1 -0
  88. package/dist/core/auth/services/auth-service.d.ts +15 -21
  89. package/dist/core/auth/services/auth-service.d.ts.map +1 -1
  90. package/dist/core/auth/token-storage.d.ts +26 -48
  91. package/dist/core/auth/token-storage.d.ts.map +1 -1
  92. package/dist/core/environment.d.ts +2 -4
  93. package/dist/core/environment.d.ts.map +1 -1
  94. package/dist/core/errors/index.d.ts +1 -5
  95. package/dist/core/errors/index.d.ts.map +1 -1
  96. package/dist/core/index.d.ts +4 -3
  97. package/dist/core/index.d.ts.map +1 -1
  98. package/dist/core/pers-api-client.d.ts +14 -156
  99. package/dist/core/pers-api-client.d.ts.map +1 -1
  100. package/dist/core/pers-config.d.ts +13 -12
  101. package/dist/core/pers-config.d.ts.map +1 -1
  102. package/dist/core/utils/jwt.function.d.ts +9 -0
  103. package/dist/core/utils/jwt.function.d.ts.map +1 -1
  104. package/dist/core.cjs +22 -18
  105. package/dist/core.cjs.map +1 -1
  106. package/dist/core.js +13 -14
  107. package/dist/core.js.map +1 -1
  108. package/dist/donation/index.d.ts +0 -15
  109. package/dist/donation/index.d.ts.map +1 -1
  110. package/dist/donation.cjs +5 -75
  111. package/dist/donation.cjs.map +1 -1
  112. package/dist/donation.js +1 -74
  113. package/dist/donation.js.map +1 -1
  114. package/dist/index.cjs +50 -56
  115. package/dist/index.cjs.map +1 -1
  116. package/dist/index.js +15 -15
  117. package/dist/managers/analytics-manager.d.ts +290 -10
  118. package/dist/managers/analytics-manager.d.ts.map +1 -1
  119. package/dist/managers/auth-manager.d.ts +123 -23
  120. package/dist/managers/auth-manager.d.ts.map +1 -1
  121. package/dist/managers/business-manager.d.ts +273 -18
  122. package/dist/managers/business-manager.d.ts.map +1 -1
  123. package/dist/managers/campaign-manager.d.ts +585 -46
  124. package/dist/managers/campaign-manager.d.ts.map +1 -1
  125. package/dist/managers/donation-manager.d.ts +5 -5
  126. package/dist/managers/donation-manager.d.ts.map +1 -1
  127. package/dist/managers/file-manager.d.ts +430 -13
  128. package/dist/managers/file-manager.d.ts.map +1 -1
  129. package/dist/managers/purchase-manager.d.ts +340 -15
  130. package/dist/managers/purchase-manager.d.ts.map +1 -1
  131. package/dist/managers/redemption-manager.d.ts +450 -27
  132. package/dist/managers/redemption-manager.d.ts.map +1 -1
  133. package/dist/managers/tenant-manager.d.ts +5 -5
  134. package/dist/managers/tenant-manager.d.ts.map +1 -1
  135. package/dist/managers/token-manager.d.ts +245 -21
  136. package/dist/managers/token-manager.d.ts.map +1 -1
  137. package/dist/managers/transaction-manager.d.ts +447 -18
  138. package/dist/managers/transaction-manager.d.ts.map +1 -1
  139. package/dist/managers/user-manager.d.ts +216 -14
  140. package/dist/managers/user-manager.d.ts.map +1 -1
  141. package/dist/managers/web3-manager.d.ts +4 -4
  142. package/dist/managers/web3-manager.d.ts.map +1 -1
  143. package/dist/package.json +10 -4
  144. package/dist/payment/index.d.ts +0 -21
  145. package/dist/payment/index.d.ts.map +1 -1
  146. package/dist/payment.cjs +5 -255
  147. package/dist/payment.cjs.map +1 -1
  148. package/dist/payment.js +1 -254
  149. package/dist/payment.js.map +1 -1
  150. package/dist/pers-sdk.d.ts +141 -34
  151. package/dist/pers-sdk.d.ts.map +1 -1
  152. package/dist/redemption/index.d.ts +0 -25
  153. package/dist/redemption/index.d.ts.map +1 -1
  154. package/dist/redemption.cjs +5 -365
  155. package/dist/redemption.cjs.map +1 -1
  156. package/dist/redemption.js +1 -364
  157. package/dist/redemption.js.map +1 -1
  158. package/dist/tenant/index.d.ts +0 -22
  159. package/dist/tenant/index.d.ts.map +1 -1
  160. package/dist/tenant.cjs +5 -203
  161. package/dist/tenant.cjs.map +1 -1
  162. package/dist/tenant.js +1 -202
  163. package/dist/tenant.js.map +1 -1
  164. package/dist/token.cjs +6 -6
  165. package/dist/token.js +2 -2
  166. package/dist/transaction/index.d.ts +0 -22
  167. package/dist/transaction/index.d.ts.map +1 -1
  168. package/dist/transaction.cjs +0 -40
  169. package/dist/transaction.cjs.map +1 -1
  170. package/dist/transaction.js +1 -40
  171. package/dist/transaction.js.map +1 -1
  172. package/dist/user/index.d.ts +0 -25
  173. package/dist/user/index.d.ts.map +1 -1
  174. package/dist/user.cjs +5 -185
  175. package/dist/user.cjs.map +1 -1
  176. package/dist/user.js +1 -184
  177. package/dist/user.js.map +1 -1
  178. package/dist/web3/index.d.ts +0 -11
  179. package/dist/web3/index.d.ts.map +1 -1
  180. package/dist/web3-chain/index.d.ts +0 -9
  181. package/dist/web3-chain/index.d.ts.map +1 -1
  182. package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -1
  183. package/dist/web3-chain.cjs +5 -6
  184. package/dist/web3-chain.cjs.map +1 -1
  185. package/dist/web3-chain.js +2 -2
  186. package/dist/web3.cjs +6 -10
  187. package/dist/web3.cjs.map +1 -1
  188. package/dist/web3.js +1 -4
  189. package/dist/web3.js.map +1 -1
  190. package/package.json +10 -4
  191. package/dist/chunks/base-token-service-D0KANDgM.js +0 -139
  192. package/dist/chunks/base-token-service-D0KANDgM.js.map +0 -1
  193. package/dist/chunks/base-token-service-zNfPjHRx.cjs +0 -141
  194. package/dist/chunks/base-token-service-zNfPjHRx.cjs.map +0 -1
  195. package/dist/chunks/index-BfOoX87y.cjs.map +0 -1
  196. package/dist/chunks/index-CJ9Jfa4A.js.map +0 -1
  197. package/dist/chunks/index-CM21r58m.js.map +0 -1
  198. package/dist/chunks/index-CzEluQmf.cjs.map +0 -1
  199. package/dist/chunks/pers-sdk-DbPwFKrf.cjs +0 -3378
  200. package/dist/chunks/pers-sdk-DbPwFKrf.cjs.map +0 -1
  201. package/dist/chunks/pers-sdk-Z6MKeFBX.js +0 -3353
  202. package/dist/chunks/pers-sdk-Z6MKeFBX.js.map +0 -1
  203. package/dist/chunks/token-sdk-BW4kkJb3.js.map +0 -1
  204. package/dist/chunks/token-sdk-CiAbOb6c.cjs.map +0 -1
  205. package/dist/core/auth/auth-constants.d.ts +0 -33
  206. package/dist/core/auth/auth-constants.d.ts.map +0 -1
  207. package/dist/core/auth/auth-errors.d.ts +0 -8
  208. package/dist/core/auth/auth-errors.d.ts.map +0 -1
  209. package/dist/core/auth/create-auth-provider.d.ts +0 -27
  210. package/dist/core/auth/create-auth-provider.d.ts.map +0 -1
  211. package/dist/core/auth/token-refresh.d.ts +0 -91
  212. package/dist/core/auth/token-refresh.d.ts.map +0 -1
@@ -0,0 +1,150 @@
1
+ /**
2
+ * Platform-Agnostic User API Client
3
+ *
4
+ * Handles user operations using the PERS backend RESTful API.
5
+ * Updated to use new /users endpoints with enhanced security and consistency.
6
+ * Maintains framework UserApiService method compatibility.
7
+ */
8
+ class UserApi {
9
+ constructor(apiClient) {
10
+ this.apiClient = apiClient;
11
+ this.basePath = '/users';
12
+ }
13
+ // ==========================================
14
+ // PUBLIC OPERATIONS
15
+ // ==========================================
16
+ /**
17
+ * PUBLIC: Get all users public profiles with optional filtering
18
+ * ✅ UPDATED: Uses new RESTful /users/public endpoint
19
+ */
20
+ async getAllUsersPublicProfiles(filter = null) {
21
+ let url = `${this.basePath}/public`;
22
+ if (filter) {
23
+ // ✅ MAINTAINED: Same parameter pattern for compatibility
24
+ const params = new URLSearchParams();
25
+ params.set('filterKey', filter.key);
26
+ params.set('filterValue', filter.value);
27
+ url += `?${params.toString()}`;
28
+ }
29
+ return this.apiClient.get(url);
30
+ }
31
+ // ==========================================
32
+ // AUTHENTICATED OPERATIONS
33
+ // ==========================================
34
+ /**
35
+ * AUTH: Get current authenticated user
36
+ * ✅ UPDATED: Uses new RESTful /users/me endpoint
37
+ */
38
+ async getRemoteUser() {
39
+ return this.apiClient.get(`${this.basePath}/me`);
40
+ }
41
+ /**
42
+ * AUTH: Update current authenticated user
43
+ * ✅ UPDATED: Uses new RESTful /users/me endpoint
44
+ */
45
+ async updateRemoteUser(updateRequest) {
46
+ return this.apiClient.put(`${this.basePath}/me`, updateRequest);
47
+ }
48
+ // ==========================================
49
+ // ADMIN OPERATIONS
50
+ // ==========================================
51
+ /**
52
+ * ADMIN: Get all remote users with query parameters
53
+ * ✅ UPDATED: Uses new RESTful /users endpoint with role-based access
54
+ * Note: Admin users get full data, non-admin users get public profiles only
55
+ */
56
+ async getAllRemoteUsers() {
57
+ // ✅ MAINTAINED: Same merge=soft parameter for compatibility
58
+ const url = `${this.basePath}?merge=soft`;
59
+ return this.apiClient.get(url);
60
+ }
61
+ /**
62
+ * ADMIN: Update user as admin
63
+ * ✅ UPDATED: Uses new RESTful /users/{id} endpoint
64
+ */
65
+ async updateUserAsAdmin(id, userData) {
66
+ return this.apiClient.put(`${this.basePath}/${id}`, userData);
67
+ }
68
+ /**
69
+ * ADMIN: Toggle user active status
70
+ * ✅ UPDATED: Uses new consistent /users/{id}/status endpoint
71
+ * Enhanced: Follows RESTful status management pattern across all domains
72
+ */
73
+ async toggleUserActiveStatusByUser(user) {
74
+ return this.apiClient.put(`${this.basePath}/${user.id}/status`, {});
75
+ }
76
+ /**
77
+ * ADMIN: Get user by unique identifier
78
+ * ✅ UPDATED: Uses new RESTful /users/{id} endpoint
79
+ */
80
+ async getUserByUniqueIdentifier(id) {
81
+ return this.apiClient.get(`${this.basePath}/${id}`);
82
+ }
83
+ }
84
+
85
+ /**
86
+ * Platform-Agnostic User Service
87
+ *
88
+ * Contains user business logic and operations that work across platforms.
89
+ * No framework dependencies - pure TypeScript business logic.
90
+ * Matches framework UserApiService capabilities exactly.
91
+ */
92
+ class UserService {
93
+ constructor(userApi) {
94
+ this.userApi = userApi;
95
+ }
96
+ // ==========================================
97
+ // PUBLIC OPERATIONS
98
+ // ==========================================
99
+ /**
100
+ * PUBLIC: Get all users public profiles with optional filtering
101
+ * ✅ FIXED: Uses framework-compatible inline filter type
102
+ */
103
+ async getAllUsersPublicProfiles(filter = null) {
104
+ return this.userApi.getAllUsersPublicProfiles(filter);
105
+ }
106
+ // ==========================================
107
+ // AUTHENTICATED OPERATIONS
108
+ // ==========================================
109
+ /**
110
+ * AUTH: Get current authenticated user
111
+ */
112
+ async getRemoteUser() {
113
+ return this.userApi.getRemoteUser();
114
+ }
115
+ /**
116
+ * AUTH: Update current authenticated user
117
+ */
118
+ async updateRemoteUser(updateRequest) {
119
+ return this.userApi.updateRemoteUser(updateRequest);
120
+ }
121
+ // ==========================================
122
+ // ADMIN OPERATIONS
123
+ // ==========================================
124
+ /**
125
+ * ADMIN: Get all remote users
126
+ * ✅ FIXED: Matches API method signature (no parameters needed)
127
+ */
128
+ async getAllRemoteUsers() {
129
+ return this.userApi.getAllRemoteUsers();
130
+ }
131
+ /**
132
+ * ADMIN: Update user as admin
133
+ */
134
+ async updateUserAsAdmin(id, userData) {
135
+ return this.userApi.updateUserAsAdmin(id, userData);
136
+ }
137
+ async getUserByUniqueIdentifier(id) {
138
+ return this.userApi.getUserByUniqueIdentifier(id);
139
+ }
140
+ /**
141
+ * ADMIN: Toggle user active status by user object
142
+ * ✅ FIXED: Matches API method signature exactly
143
+ */
144
+ async toggleUserActiveStatusByUser(user) {
145
+ return this.userApi.toggleUserActiveStatusByUser(user);
146
+ }
147
+ }
148
+
149
+ export { UserApi as U, UserService as a };
150
+ //# sourceMappingURL=user-service-D6mTa_WZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-service-D6mTa_WZ.js","sources":["../../src/user/api/user-api.ts","../../src/user/services/user-service.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
@@ -1,8 +1,32 @@
1
1
  'use strict';
2
2
 
3
- var jwtDecode = require('jwt-decode');
4
3
  var ethers = require('@explorins/web3-ts/ethers');
5
- require('@explorins/pers-shared');
4
+
5
+ /**
6
+ * JWT token expiration utilities
7
+ * Native implementation without external dependencies for optimal performance
8
+ */
9
+ /**
10
+ * Check if JWT token is expired or expiring within margin
11
+ * @param token JWT token (with or without Bearer prefix)
12
+ * @param margin Safety margin in seconds before expiry (default: 60)
13
+ */
14
+ const isTokenExpired = (token, margin = 60) => {
15
+ const cleanToken = token.replace(/^Bearer\s+/i, '');
16
+ if (!cleanToken || cleanToken.split('.').length !== 3) {
17
+ return true;
18
+ }
19
+ try {
20
+ const payload = JSON.parse(atob(cleanToken.split('.')[1]));
21
+ if (!payload.exp)
22
+ return false;
23
+ const currentTime = Math.floor(Date.now() / 1000);
24
+ return payload.exp < (currentTime + margin);
25
+ }
26
+ catch {
27
+ return true;
28
+ }
29
+ };
6
30
 
7
31
  /**
8
32
  * Platform-Agnostic Web3 Chain API Client
@@ -41,30 +65,6 @@ class Web3ChainApi {
41
65
  }
42
66
  }
43
67
 
44
- const isTokenExpired = (token, margin = 60) => {
45
- // Remove Bearer prefix if present
46
- const cleanToken = token.split(' ')[1] || token;
47
- // Validate JWT format
48
- if (!cleanToken || cleanToken.split('.').length !== 3) {
49
- return true; // Consider invalid tokens as expired
50
- }
51
- try {
52
- // Decode JWT token
53
- const decoded = jwtDecode.jwtDecode(cleanToken);
54
- const currentTime = Math.floor(Date.now() / 1000);
55
- // Check expiration with margin (default 60 seconds)
56
- return decoded.exp < (currentTime + margin);
57
- }
58
- catch (error) {
59
- return true; // Consider unparseable tokens as expired
60
- }
61
- };
62
-
63
- var jwt_function = /*#__PURE__*/Object.freeze({
64
- __proto__: null,
65
- isTokenExpired: isTokenExpired
66
- });
67
-
68
68
  // ✅ REVERT: Función síncrona como el código comentado que funciona
69
69
  const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher) => {
70
70
  let ethersProvider;
@@ -306,32 +306,7 @@ class Web3ChainService {
306
306
  }
307
307
  }
308
308
 
309
- /**
310
- * Web3 Chain Domain Models
311
- *
312
- * Minimal interface definitions matching framework usage exactly.
313
- * Local ChainData interface to avoid external dependency issues.
314
- */
315
- const ChainTypes = {
316
- PUBLIC: 'PUBLIC',
317
- PRIVATE: 'PRIVATE'
318
- };
319
-
320
- function createWeb3ChainSDK(apiClient) {
321
- const web3ChainApi = new Web3ChainApi(apiClient);
322
- const web3ChainService = new Web3ChainService(web3ChainApi);
323
- return {
324
- getEthersProviderByChainId: (chainId) => web3ChainService.getEthersProviderByChainId(chainId),
325
- getChainDataById: (chainId) => web3ChainService.getChainDataWithCache(chainId),
326
- // getWeb3ByChainId: (chainId: number) => web3ChainService.getWeb3ByChainId(chainId),
327
- api: web3ChainApi,
328
- service: web3ChainService
329
- };
330
- }
331
-
332
- exports.ChainTypes = ChainTypes;
333
309
  exports.Web3ChainApi = Web3ChainApi;
334
310
  exports.Web3ChainService = Web3ChainService;
335
- exports.createWeb3ChainSDK = createWeb3ChainSDK;
336
- exports.jwt_function = jwt_function;
337
- //# sourceMappingURL=index-BfOoX87y.cjs.map
311
+ exports.isTokenExpired = isTokenExpired;
312
+ //# sourceMappingURL=web3-chain-service-D75TcHkh.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web3-chain-service-D75TcHkh.cjs","sources":["../../src/core/utils/jwt.function.ts","../../src/web3-chain/api/web3-chain-api.ts","../../src/web3-chain/services/getWeb3FCD.service.ts","../../src/web3-chain/services/ethers-provider.service.ts","../../src/web3-chain/services/web3-chain-service.ts"],"sourcesContent":[null,null,null,null,null],"names":["FetchRequest","JsonRpcProvider"],"mappings":"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"}
@@ -1,6 +1,30 @@
1
- import { jwtDecode } from 'jwt-decode';
2
1
  import { FetchRequest, JsonRpcProvider } from '@explorins/web3-ts/ethers';
3
- import '@explorins/pers-shared';
2
+
3
+ /**
4
+ * JWT token expiration utilities
5
+ * Native implementation without external dependencies for optimal performance
6
+ */
7
+ /**
8
+ * Check if JWT token is expired or expiring within margin
9
+ * @param token JWT token (with or without Bearer prefix)
10
+ * @param margin Safety margin in seconds before expiry (default: 60)
11
+ */
12
+ const isTokenExpired = (token, margin = 60) => {
13
+ const cleanToken = token.replace(/^Bearer\s+/i, '');
14
+ if (!cleanToken || cleanToken.split('.').length !== 3) {
15
+ return true;
16
+ }
17
+ try {
18
+ const payload = JSON.parse(atob(cleanToken.split('.')[1]));
19
+ if (!payload.exp)
20
+ return false;
21
+ const currentTime = Math.floor(Date.now() / 1000);
22
+ return payload.exp < (currentTime + margin);
23
+ }
24
+ catch {
25
+ return true;
26
+ }
27
+ };
4
28
 
5
29
  /**
6
30
  * Platform-Agnostic Web3 Chain API Client
@@ -39,30 +63,6 @@ class Web3ChainApi {
39
63
  }
40
64
  }
41
65
 
42
- const isTokenExpired = (token, margin = 60) => {
43
- // Remove Bearer prefix if present
44
- const cleanToken = token.split(' ')[1] || token;
45
- // Validate JWT format
46
- if (!cleanToken || cleanToken.split('.').length !== 3) {
47
- return true; // Consider invalid tokens as expired
48
- }
49
- try {
50
- // Decode JWT token
51
- const decoded = jwtDecode(cleanToken);
52
- const currentTime = Math.floor(Date.now() / 1000);
53
- // Check expiration with margin (default 60 seconds)
54
- return decoded.exp < (currentTime + margin);
55
- }
56
- catch (error) {
57
- return true; // Consider unparseable tokens as expired
58
- }
59
- };
60
-
61
- var jwt_function = /*#__PURE__*/Object.freeze({
62
- __proto__: null,
63
- isTokenExpired: isTokenExpired
64
- });
65
-
66
66
  // ✅ REVERT: Función síncrona como el código comentado que funciona
67
67
  const getWeb3ProviderFromChainData = (chainData, timeout = 15000, customUserAgentName = '', tokenRefresher) => {
68
68
  let ethersProvider;
@@ -304,28 +304,5 @@ class Web3ChainService {
304
304
  }
305
305
  }
306
306
 
307
- /**
308
- * Web3 Chain Domain Models
309
- *
310
- * Minimal interface definitions matching framework usage exactly.
311
- * Local ChainData interface to avoid external dependency issues.
312
- */
313
- const ChainTypes = {
314
- PUBLIC: 'PUBLIC',
315
- PRIVATE: 'PRIVATE'
316
- };
317
-
318
- function createWeb3ChainSDK(apiClient) {
319
- const web3ChainApi = new Web3ChainApi(apiClient);
320
- const web3ChainService = new Web3ChainService(web3ChainApi);
321
- return {
322
- getEthersProviderByChainId: (chainId) => web3ChainService.getEthersProviderByChainId(chainId),
323
- getChainDataById: (chainId) => web3ChainService.getChainDataWithCache(chainId),
324
- // getWeb3ByChainId: (chainId: number) => web3ChainService.getWeb3ByChainId(chainId),
325
- api: web3ChainApi,
326
- service: web3ChainService
327
- };
328
- }
329
-
330
- export { ChainTypes as C, Web3ChainApi as W, Web3ChainService as a, createWeb3ChainSDK as c, jwt_function as j };
331
- //# sourceMappingURL=index-CM21r58m.js.map
307
+ export { Web3ChainApi as W, Web3ChainService as a, isTokenExpired as i };
308
+ //# sourceMappingURL=web3-chain-service-Dp5Z8p9I.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web3-chain-service-Dp5Z8p9I.js","sources":["../../src/core/utils/jwt.function.ts","../../src/web3-chain/api/web3-chain-api.ts","../../src/web3-chain/services/getWeb3FCD.service.ts","../../src/web3-chain/services/ethers-provider.service.ts","../../src/web3-chain/services/web3-chain-service.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":";;AAAA;;;AAGG;AAEH;;;;AAIG;AACI,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,MAAA,GAAiB,EAAE,KAAa;IAC5E,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;AAEnD,IAAA,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;AACrD,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAI;AACF,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG;AAAE,YAAA,OAAO,KAAK;AAE9B,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACjD,OAAO,OAAO,CAAC,GAAG,IAAI,WAAW,GAAG,MAAM,CAAC;IAC7C;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,IAAI;IACb;AACF;;ACvBA;;;;;AAKG;MACU,YAAY,CAAA;AACvB,IAAA,WAAA,CAAoB,SAAwB,EAAA;QAAxB,IAAA,CAAA,SAAS,GAAT,SAAS;QAErB,IAAA,CAAA,QAAQ,GAAG,SAAS;IAFmB;;;;AAQ/C;;;AAGG;IACH,MAAM,YAAY,CAAC,OAAe,EAAA;AAClC,QAAA,IAAI;AAEF,YAAA,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,OAAO,CAAC;AACvE,YAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAY,CAAA,EAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAA,CAAE,CAAC;YAEnF,IAAI,CAAC,QAAQ,EAAE;AACb,gBAAA,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,CAAA,CAAE,CAAC;YACnE;AAEA,YAAA,OAAO,QAAQ;QACjB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE;gBACxD,OAAO;AACP,gBAAA,KAAK,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK;AAC7D,aAAA,CAAC;AACF,YAAA,MAAM,KAAK;QACb;IACF;AACC;;ACtCD;AACO,MAAM,4BAA4B,GAAG,CAC1C,SAAoB,EACpB,OAAO,GAAG,KAAK,EACf,mBAAmB,GAAG,EAAE,EACxB,cAAsC,KACpC;AAEF,IAAA,IAAI,cAA+B;AAEnC,IAAA,IAAI,SAAS,CAAC,UAAU,EAAE;;QAExB,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;AACvD,QAAA,YAAY,CAAC,OAAO,GAAG,OAAO;;QAG9B,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS;cACvD,SAAS,CAAC;AACZ,cAAE,CAAA,OAAA,EAAU,SAAS,CAAC,UAAU,EAAE;AAEpC,QAAA,YAAY,CAAC,SAAS,CAAC,eAAe,EAAE,SAAS,CAAC;AAClD,QAAA,YAAY,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC;AAC1D,QAAA,YAAY,CAAC,SAAS,CAAC,QAAQ,EAAE,kBAAkB,CAAC;QAEpD,IAAI,mBAAmB,EAAE;AACvB,YAAA,YAAY,CAAC,SAAS,CAAC,YAAY,EAAE,mBAAmB,CAAC;QAC3D;AAEA,QAAA,cAAc,GAAG,IAAI,eAAe,CAAC,YAAY,EAAE,SAAS,EAAE;AAC5D,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,OAAO,EAAE,KAAK;YACd,aAAa,EAAE,CAAC;AACjB,SAAA,CAAC;IACJ;SAAO;;QAEL,cAAc,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE;AAChE,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,OAAO,EAAE,KAAK;AACf,SAAA,CAAC;IACJ;AAEA,IAAA,OAAO,CAAC,GAAG,CAAC,CAAA,4CAAA,CAA8C,CAAC;IAE3D,OAAO;AACL,QAAA,YAAY,EAAE,IAAI;AAClB,QAAA,cAAc,EAAE,cAAc;AAC9B,QAAA,eAAe,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU;KACxC;AACH,CAAC;AAED;AACO,MAAM,wBAAwB,GAAG,OACtC,SAAoB,EACpB,OAAO,GAAG,KAAK,EACf,mBAAmB,GAAG,EAAE,EACxB,cAAsC,EACtC,WAAW,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAC/D;IACF,IAAI,SAAS,GAAiB,IAAI;AAElC,IAAA,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE;AACnE,QAAA,IAAI;AACF,YAAA,OAAO,CAAC,GAAG,CAAC,CAAA,0BAAA,EAA6B,OAAO,IAAI,WAAW,CAAC,WAAW,CAAA,WAAA,EAAc,SAAS,CAAC,OAAO,IAAI,SAAS,CAAA,CAAE,CAAC;;AAG1H,YAAA,MAAM,QAAQ,GAAG,4BAA4B,CAAC,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,cAAc,CAAC;AAEtG,YAAA,MAAM,uBAAuB,CAAC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEnG,YAAA,OAAO,CAAC,GAAG,CAAC,sDAAsD,OAAO,CAAA,CAAE,CAAC;AAC5E,YAAA,OAAO,QAAQ;QAEjB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,SAAS,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAA,0BAAA,EAA6B,OAAO,CAAA,QAAA,CAAU,EAAE,SAAS,CAAC,OAAO,CAAC;;YAG/E,IAAI,WAAW,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,EAAE;AAClD,gBAAA,OAAO,CAAC,KAAK,CAAC,CAAA,6CAAA,CAA+C,CAAC;gBAC9D;YACF;AAEA,YAAA,IAAI,OAAO,KAAK,WAAW,CAAC,WAAW;gBAAE;YAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAChD,WAAW,CAAC,QAAQ,CACrB;AAED,YAAA,OAAO,CAAC,GAAG,CAAC,gCAAgC,KAAK,CAAA,KAAA,CAAO,CAAC;AACzD,YAAA,MAAM,KAAK,CAAC,KAAK,CAAC;QACpB;IACF;AAEA,IAAA,MAAM,IAAI,KAAK,CAAC,CAAA,qCAAA,EAAwC,WAAW,CAAC,WAAW,CAAA,uBAAA,EAA0B,SAAS,EAAE,OAAO,CAAA,CAAE,CAAC;AAChI,CAAC;AAED,eAAe,uBAAuB,CAAC,QAAyB,EAAE,SAA+B,EAAA;AAC/F,IAAA,IAAI;AACF,QAAA,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAA,oBAAA,CAAsB,CAAC;;QAGvE,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,KAAI;AACtD,YAAA,UAAU,CAAC,MAAM,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,EAAG,SAAS,CAAA,yBAAA,CAA2B,CAAC,CAAC,EAAE,IAAI,CAAC;AACpF,QAAA,CAAC,CAAC;;QAGF,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;AAEvD,QAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,CAAA,eAAA,EAAkB,SAAS,CAAA,wCAAA,EAA2C,MAAM,CAAA,CAAE,CAAC;IAE7F;IAAE,OAAO,KAAK,EAAE;;AAEd,QAAA,IAAI;AACF,YAAA,OAAO,CAAC,GAAG,CAAC,kDAAkD,SAAS,CAAA,SAAA,CAAW,CAAC;YAEnF,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,KAAI;AACtD,gBAAA,UAAU,CAAC,MAAM,MAAM,CAAC,IAAI,KAAK,CAAC,CAAA,EAAG,SAAS,CAAA,kCAAA,CAAoC,CAAC,CAAC,EAAE,IAAI,CAAC;AAC7F,YAAA,CAAC,CAAC;YAEF,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;AACvD,YAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAEnE,OAAO,CAAC,GAAG,CAAC,CAAA,eAAA,EAAkB,SAAS,CAAA,4DAAA,EAA+D,MAAM,CAAA,CAAE,CAAC;QACjH;QAAE,OAAO,aAAa,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,CAAA,EAAG,SAAS,6BAA6B,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA,CAAE,CAAC;QACpH;IACF;AACF;AAEA;AACA,SAAS,WAAW,CAAC,KAAY,EAAA;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;AAC3C,IAAA,QACE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;AAChC,QAAA,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvB,QAAA,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;AACjC,QAAA,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;AAE9B;AAEA;AACA,SAAS,KAAK,CAAC,EAAU,EAAA;AACvB,IAAA,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACxD;;MC/Ia,qBAAqB,CAAA;AAK9B,IAAA,WAAA,GAAA;QAJQ,IAAA,CAAA,SAAS,GAA2B,IAAI;QACxC,IAAA,CAAA,eAAe,GAAkB,IAAI;QACrC,IAAA,CAAA,gBAAgB,GAAoC,IAAI;AAG5D,QAAA,OAAO,CAAC,GAAG,CAAC,gFAAgF,CAAC;IACjG;AAIO,IAAA,MAAM,iBAAiB,CAAC,OAAe,EAAE,SAAoB,EAAE,SAAoB,EAAA;;QAEtF,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,EAAE;YACpD,OAAO,IAAI,CAAC,SAAS;QACzB;;AAGA,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACvB,YAAA,OAAO,MAAM,IAAI,CAAC,gBAAgB;QACtC;AAEA,QAAA,IAAI,CAAC,OAAO;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;AAClD,QAAA,IAAI,CAAC,SAAS;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC;;AAGtD,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;AAE9E,QAAA,IAAI;YACA,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,MAAM,aAAa;AAC7E,YAAA,IAAI,CAAC,SAAS,GAAG,cAAc;AAC/B,YAAA,IAAI,CAAC,eAAe,GAAG,OAAO;AAC9B,YAAA,OAAO,cAAc;QACzB;gBAAU;;AAEN,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;QAChC;IACJ;AAEQ,IAAA,MAAM,oBAAoB,CAAC,OAAe,EAAE,SAAoB,EAAE,SAAoB,EAAA;AAK1F,QAAA,OAAO,CAAC,GAAG,CAAC,mDAAmD,OAAO,CAAA,CAAE,CAAC;AACzE,QAAA,MAAM,QAAQ,GAAG,MAAM,wBAAwB,CAAC,SAAS,CAAC;AAC1D,QAAA,OAAO,QAIN;IACL;AACH;;MClDY,gBAAgB,CAAA;AAS3B,IAAA,WAAA,CACU,YAA0B,EAAA;QAA1B,IAAA,CAAA,YAAY,GAAZ,YAAY;AARd,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,GAAG,EAA+B;;AAE1D,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,GAAG,EAAe;;AAGtC,QAAA,IAAA,CAAA,qBAAqB,GAA0B,IAAI,qBAAqB,EAAE;IAI/E;IAEH,MAAM,0BAA0B,CAAC,OAAe,EAAA;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;;AAG9C,QAAA,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;;YAE1D,OAAO,MAAM,CAAC,QAAQ;QACxB;AAEA,QAAA,IAAI;;AAEF,YAAA,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;AAE1E,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE;gBAC9B,QAAQ;gBACR,SAAS;AACT,gBAAA,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB;AACD,aAAA,CAAC;AAEF,YAAA,OAAO,QAAQ;QACjB;QAAE,OAAO,KAAK,EAAE;;AAEd,YAAA,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;;AAE3B,gBAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;;AAGlC,gBAAA,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;AAE1E,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE;oBAC9B,QAAQ;oBACR,SAAS;AACT,oBAAA,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB;AACD,iBAAA,CAAC;AAEF,gBAAA,OAAO,QAAQ;YACjB;AAEA,YAAA,MAAM,KAAK;QACb;IACF;IAEQ,MAAM,sBAAsB,CAAC,OAAe,EAAA;QAClD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAEtD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAA,CAAE,CAAC;QACjE;AAEA,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CACjE,OAAO,EACP,SAAS,CAAC,SAAS,IAAI,QAAQ,EAC/B,SAAS,CACV;AAED,QAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE;IAChC;IAEO,MAAM,qBAAqB,CAAC,OAAe,EAAA;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;;AAGlD,QAAA,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;;YAEpE,OAAO,MAAM,CAAC,SAAS;QACzB;;QAGA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAA,CAAE,CAAC;QACjE;AAEA,QAAA,OAAO,SAAS;IAClB;AAEQ,IAAA,mBAAmB,CAAC,UAAmB,EAAA;;QAE7C,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,KAAK,CAAC;QACf;;AAGA,QAAA,OAAO,cAAc,CAAC,UAAU,CAAC;IACnC;;AAGQ,IAAA,WAAW,CAAC,KAAc,EAAA;QAChC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;AAClG,QAAA,QACE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;AAChC,YAAA,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvB,YAAA,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;AACjC,YAAA,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IAErC;IAEQ,MAAM,gBAAgB,CAAC,OAAe,EAAA;AAC5C,QAAA,IAAI;YACF,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC;QACtD;QAAE,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,gEAAgE,EAAE,OAAO,EAAE,KAAK,CAAC;AAC/F,YAAA,OAAO,IAAI;QACb;IACF;AA4ED;;;;"}
@@ -1,30 +1,27 @@
1
- import { PersApiClient } from '../../pers-api-client';
2
- import { SessionAuthResponseDTO, SessionAuthContextResponseDTO } from '../../../shared/interfaces/pers-shared-lib.interfaces';
3
1
  /**
4
- * Platform-Agnostic Auth Admin API Client
5
- *
6
- * Handles authentication and authorization admin operations using the PERS backend.
7
- * Uses @explorins/pers-shared DTOs for consistency with backend.
8
- *
9
- * Note: Special header handling (bypass-auth-interceptor) may need to be implemented
10
- * at the PersApiClient level or through a specialized auth client.
2
+ * Platform-Agnostic Auth API Client
3
+ * Handles authentication operations using the PERS backend
11
4
  */
5
+ import { PersApiClient } from '../../pers-api-client';
6
+ import { SessionAuthResponseDTO, SessionAuthContextResponseDTO } from '../../../shared/interfaces/pers-shared-lib.interfaces';
12
7
  export declare class AuthApi {
13
8
  private apiClient;
14
- constructor(apiClient: PersApiClient);
15
9
  private readonly basePath;
10
+ constructor(apiClient: PersApiClient);
16
11
  /**
17
- * ADMIN: Login tenant admin with JWT
18
- * Note: JWT handling and auth bypass headers may need special implementation
12
+ * Login tenant admin with JWT
19
13
  */
20
14
  loginTenantAdmin(jwt: string): Promise<SessionAuthContextResponseDTO>;
21
15
  /**
22
- * Login user with JWT - bypasses auth headers
16
+ * Login user with JWT
23
17
  */
24
18
  loginUser(jwt: string): Promise<SessionAuthContextResponseDTO>;
19
+ /**
20
+ * Login user with raw data (no external authentication)
21
+ */
25
22
  loginUnAuthenticated(rawLoginData: Record<string, any>): Promise<SessionAuthContextResponseDTO>;
26
23
  /**
27
- * Refresh access token - bypasses auth headers to prevent circular dependency
24
+ * Refresh access token
28
25
  */
29
26
  refreshAccessToken(refreshToken: string): Promise<SessionAuthResponseDTO>;
30
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auth-api.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/api/auth-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EACL,sBAAsB,EACmB,6BAA6B,EACvE,MAAM,uDAAuD,CAAC;AAE/D;;;;;;;;GAQG;AACH,qBAAa,OAAO;IACN,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAMpC;;;OAGG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAQ7E;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAQ9D,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IASrG;;OAEG;IACG,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAK9E"}
1
+ {"version":3,"file":"auth-api.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/api/auth-api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EACL,sBAAsB,EAGtB,6BAA6B,EAC9B,MAAM,uDAAuD,CAAC;AAE/D,qBAAa,OAAO;IAGN,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;gBAEhB,SAAS,EAAE,aAAa;IAE5C;;OAEG;IACG,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAQ3E;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAQpE;;OAEG;IACG,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IASrG;;OAEG;IACG,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAGhF"}
@@ -1,82 +1,50 @@
1
- import { AuthType, TokenStorageType } from './auth-constants';
2
1
  /**
3
2
  * PERS Authentication Provider Interface
4
- *
5
- * Defines the contract for authentication providers that manage
6
- * token lifecycle, storage, and refresh operations.
7
- *
8
- * Implementations should handle:
9
- * - Token storage and retrieval
10
- * - Automatic token refresh before expiry
11
- * - Provider token integration (Firebase, Auth0, etc.)
12
- * - Cross-platform compatibility
13
- *
14
- * @example
15
- * ```typescript
16
- * const authProvider = createAuthProvider({
17
- * authType: 'user',
18
- * tokenProvider: () => getFirebaseToken(),
19
- * projectKey: 'your-project-key',
20
- * onTokenExpired: async () => {
21
- * // Custom refresh logic
22
- * }
23
- * });
24
- * ```
3
+ * Clean, scalable contract for authentication providers
4
+ */
5
+ export type AuthType = 'user' | 'admin';
6
+ /**
7
+ * Core authentication provider interface
25
8
  */
26
9
  export interface PersAuthProvider {
27
- /** Retrieves current access token */
10
+ /** Authentication type */
11
+ readonly authType: AuthType;
12
+ /** Get current access token */
28
13
  getToken(): Promise<string | null>;
29
- /** Retrieves project key for API requests */
14
+ /** Get project key for API requests */
30
15
  getProjectKey(): Promise<string | null>;
31
- /** Authentication type: 'user' | 'admin' */
32
- authType: AuthType;
33
- /**
34
- * Called when token expires - should refresh tokens
35
- * Implementation handles the complete refresh flow
36
- */
37
- onTokenExpired?: () => Promise<void>;
38
- setAccessToken?(token: string): Promise<void>;
39
- setRefreshToken?(token: string): Promise<void>;
40
- getRefreshToken?(): Promise<string | null>;
41
- setTokens?(accessToken: string, refreshToken?: string, providerToken?: string, authType?: 'user' | 'admin'): Promise<void>;
42
- clearTokens?(): Promise<void>;
43
- hasValidToken?(): boolean;
44
- hasRefreshToken?(): boolean;
45
- getProviderToken?(): string | null;
46
- /**
47
- * Ensures valid token before requests - handles background/immediate refresh
48
- * @param marginSeconds Seconds before expiry to trigger refresh
49
- * @param backgroundThreshold Threshold for background vs immediate refresh
50
- */
51
- ensureValidToken?(marginSeconds?: number, backgroundThreshold?: number): Promise<void>;
52
- /** Checks if access token is expired or expiring soon */
53
- isTokenExpired?(marginSeconds?: number): Promise<boolean>;
54
- /** Checks if refresh token is expired */
55
- isRefreshTokenExpired?(marginSeconds?: number): Promise<boolean>;
56
- /** Checks if both access and refresh tokens are expired */
57
- areAllTokensExpired?(marginSeconds?: number): Promise<boolean>;
16
+ /** Handle token expiration - refresh or logout */
17
+ onTokenExpired?(): Promise<void>;
18
+ /** Check if error indicates token expiration */
19
+ isTokenExpiredError?(error: unknown): boolean;
58
20
  }
59
- export interface PersRequestOptions {
60
- headers?: Record<string, string>;
21
+ /**
22
+ * Extended interface for providers that support token storage
23
+ */
24
+ export interface TokenStorageProvider extends PersAuthProvider {
25
+ setAccessToken(token: string): Promise<void>;
26
+ setRefreshToken(token: string): Promise<void>;
27
+ getRefreshToken(): Promise<string | null>;
28
+ clearTokens(): Promise<void>;
61
29
  }
62
- export * from './create-auth-provider';
63
- export interface AuthTokens {
64
- accessToken: string;
65
- refreshToken?: string;
66
- expiresAt?: number;
30
+ /**
31
+ * Extended interface for providers that support additional token types and auth configuration
32
+ */
33
+ export interface ExtendedTokenStorageProvider extends TokenStorageProvider {
34
+ setProviderToken?(token: string): Promise<void>;
35
+ setAuthType?(authType: AuthType): Promise<void>;
36
+ getProviderToken?(): Promise<string | null>;
67
37
  }
68
- export interface SimpleAuthConfig {
38
+ /**
39
+ * Auth configuration for creating providers
40
+ */
41
+ export interface AuthConfig {
69
42
  authType?: AuthType;
70
- token?: string;
71
- tokenProvider?: () => Promise<string | null>;
72
43
  projectKey?: string;
44
+ tokenProvider?: () => Promise<string | null>;
73
45
  onTokenExpired?: () => Promise<void>;
74
- onTokenRefreshed?: (newToken: string) => void;
75
- tokenStorage?: TokenStorageType;
76
- customTokenStorage?: {
77
- setItem: (key: string, value: string) => Promise<void>;
78
- getItem: (key: string) => Promise<string | null>;
79
- removeItem: (key: string) => Promise<void>;
80
- };
46
+ onTokenRefreshed?: (token: string) => void;
47
+ /** Custom token storage (overrides auto-detection) */
48
+ storage?: import('./token-storage').TokenStorage;
81
49
  }
82
50
  //# sourceMappingURL=auth-provider.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-provider.interface.d.ts","sourceRoot":"","sources":["../../../src/core/auth/auth-provider.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-provider.interface.d.ts","sourceRoot":"","sources":["../../../src/core/auth/auth-provider.interface.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,+BAA+B;IAC/B,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEnC,uCAAuC;IACvC,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAExC,kDAAkD;IAClD,cAAc,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC,gDAAgD;IAChD,mBAAmB,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;IACxE,gBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,WAAW,CAAC,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,gBAAgB,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC7C,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,iBAAiB,EAAE,YAAY,CAAC;CAClD"}