@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
@@ -1,207 +1,6 @@
1
1
  'use strict';
2
2
 
3
- class TokenApi {
4
- constructor(apiClient) {
5
- this.apiClient = apiClient;
6
- this.basePath = '/tokens';
7
- }
8
- // ==========================================
9
- // PUBLIC OPERATIONS
10
- // ==========================================
11
- /**
12
- * PUBLIC: Get all remote tokens
13
- * ENHANCED: Added admin filtering capability
14
- */
15
- async getRemoteTokens(includeInactive = false) {
16
- const url = includeInactive ? `${this.basePath}?active=false` : `${this.basePath}`;
17
- return this.apiClient.get(url);
18
- }
19
- /**
20
- * PUBLIC: Get all remote token types
21
- */
22
- async getRemoteTokenTypes() {
23
- return this.apiClient.get(`${this.basePath}/types`);
24
- }
25
- /**
26
- * PUBLIC: Get active point token (was credit token)
27
- */
28
- async getRemoteActiveCreditToken() {
29
- return this.apiClient.get(`${this.basePath}/points`);
30
- }
31
- /**
32
- * PUBLIC: Get reward tokens
33
- * ENHANCED: Added admin filtering capability
34
- */
35
- async getRemoteRewardTokens(includeInactive = false) {
36
- const url = includeInactive ? `${this.basePath}/rewards?active=false` : `${this.basePath}/rewards`;
37
- return this.apiClient.get(url);
38
- }
39
- /**
40
- * PUBLIC: Get stamp tokens (was status tokens)
41
- * ENHANCED: Added admin filtering capability
42
- */
43
- async getRemoteStatusTokens(includeInactive = false) {
44
- const url = includeInactive ? `${this.basePath}/stamps?active=false` : `${this.basePath}/stamps`;
45
- return this.apiClient.get(url);
46
- }
47
- /**
48
- * PUBLIC: Get token by contract address
49
- */
50
- async getTokenByContractAddress(contractAddress, contractTokenId) {
51
- let url = `${this.basePath}/address/${contractAddress}`;
52
- if (contractTokenId) {
53
- url += `?contractTokenId=${contractTokenId}`;
54
- }
55
- return this.apiClient.get(url);
56
- }
57
- // ==========================================
58
- // ADMIN OPERATIONS
59
- // ==========================================
60
- /**
61
- * ADMIN: Create new token
62
- */
63
- async createToken(tokenData) {
64
- return this.apiClient.post(`${this.basePath}`, tokenData);
65
- }
66
- /**
67
- * ADMIN: Update token
68
- */
69
- async updateToken(tokenId, tokenData) {
70
- return this.apiClient.put(`${this.basePath}/${tokenId}`, tokenData);
71
- }
72
- /**
73
- * ADMIN: Toggle token active status
74
- * FIXED: Now calls correct endpoint
75
- */
76
- async toggleTokenActive(tokenId) {
77
- return this.apiClient.put(`${this.basePath}/${tokenId}/status`, {});
78
- }
79
- /**
80
- * ADMIN: Set mainnet contract address
81
- */
82
- async setMainnetContract(tokenId, contractAddress, chainId) {
83
- return this.apiClient.put(`${this.basePath}/${tokenId}/mainnet`, {
84
- contractAddress,
85
- chainId
86
- });
87
- }
88
- /**
89
- * ADMIN: Create token metadata
90
- */
91
- async createTokenMetadata(tokenId, tokenData) {
92
- return this.apiClient.post(`${this.basePath}/${tokenId}/metadata`, tokenData);
93
- }
94
- /**
95
- * ADMIN: Toggle token metadata status (separate from token status)
96
- */
97
- async toggleTokenMetadataStatus(metadataId) {
98
- return this.apiClient.put(`${this.basePath}/metadata/${metadataId}/status`, {});
99
- }
100
- /**
101
- * ADMIN: Create token type
102
- */
103
- async createTokenType(tokenType) {
104
- return this.apiClient.post(`${this.basePath}/types`, tokenType);
105
- }
106
- }
107
-
108
- /**
109
- * Platform-Agnostic Token Service
110
- *
111
- * Contains token business logic and operations that work across platforms.
112
- * No framework dependencies - pure TypeScript business logic.
113
- * Matches framework TokenApiService capabilities exactly.
114
- */
115
- class TokenService {
116
- constructor(tokenApi) {
117
- this.tokenApi = tokenApi;
118
- }
119
- // ==========================================
120
- // PUBLIC OPERATIONS
121
- // ==========================================
122
- /**
123
- * PUBLIC: Get all remote tokens
124
- */
125
- async getRemoteTokens() {
126
- return this.tokenApi.getRemoteTokens();
127
- }
128
- /**
129
- * PUBLIC: Get all remote token types
130
- */
131
- async getRemoteTokenTypes() {
132
- return this.tokenApi.getRemoteTokenTypes();
133
- }
134
- /**
135
- * PUBLIC: Get active credit token
136
- */
137
- async getRemoteActiveCreditToken() {
138
- return this.tokenApi.getRemoteActiveCreditToken();
139
- }
140
- /**
141
- * PUBLIC: Get reward tokens
142
- */
143
- async getRemoteRewardTokens() {
144
- return this.tokenApi.getRemoteRewardTokens();
145
- }
146
- /**
147
- * PUBLIC: Get status tokens
148
- */
149
- async getRemoteStatusTokens() {
150
- return this.tokenApi.getRemoteStatusTokens();
151
- }
152
- /**
153
- * PUBLIC: Get token by contract address
154
- * ✅ FIXED: Matches framework parameter types exactly
155
- */
156
- async getTokenByContractAddress(contractAddress, contractTokenId) {
157
- return this.tokenApi.getTokenByContractAddress(contractAddress, contractTokenId);
158
- }
159
- // ==========================================
160
- // ADMIN OPERATIONS
161
- // ==========================================
162
- /**
163
- * ADMIN: Create token metadata
164
- */
165
- async createTokenMetadata(tokenId, tokenData) {
166
- return this.tokenApi.createTokenMetadata(tokenId, tokenData);
167
- }
168
- /**
169
- * ADMIN: Toggle token active status
170
- */
171
- async toggleTokenActive(tokenId) {
172
- return this.tokenApi.toggleTokenActive(tokenId);
173
- }
174
- /**
175
- * ADMIN: Create new token
176
- */
177
- async createToken(tokenData) {
178
- return this.tokenApi.createToken(tokenData);
179
- }
180
- /**
181
- * ADMIN: Update token
182
- */
183
- async updateToken(tokenId, tokenData) {
184
- return this.tokenApi.updateToken(tokenId, tokenData);
185
- }
186
- /**
187
- * ADMIN: Set mainnet contract address
188
- */
189
- async setMainnetContract(tokenId, contractAddress, chainId) {
190
- return this.tokenApi.setMainnetContract(tokenId, contractAddress, chainId);
191
- }
192
- /**
193
- * ADMIN: Toggle token metadata status
194
- */
195
- async toggleTokenMetadataStatus(metadataId) {
196
- return this.tokenApi.toggleTokenMetadataStatus(metadataId);
197
- }
198
- /**
199
- * ADMIN: Create token type
200
- */
201
- async createTokenType(tokenType) {
202
- return this.tokenApi.createTokenType(tokenType);
203
- }
204
- }
3
+ var tokenService = require('./token-service-BWScn8Qa.cjs');
205
4
 
206
5
  /**
207
6
  * Token SDK - Class-based Promise SDK for Token Operations
@@ -216,8 +15,8 @@ class TokenService {
216
15
  */
217
16
  class TokenSDK {
218
17
  constructor(apiClient) {
219
- this.tokenApi = new TokenApi(apiClient);
220
- this.tokenService = new TokenService(this.tokenApi);
18
+ this.tokenApi = new tokenService.TokenApi(apiClient);
19
+ this.tokenService = new tokenService.TokenService(this.tokenApi);
221
20
  }
222
21
  // ==========================================
223
22
  // CONVENIENCE METHODS - Direct Promise API
@@ -395,7 +194,141 @@ class TokenSDK {
395
194
  }
396
195
  }
397
196
 
398
- exports.TokenApi = TokenApi;
197
+ /**
198
+ * Abstract Base Token Service - Explicit Initialization Pattern
199
+ *
200
+ * Platform-agnostic token operations with Promise-based API.
201
+ * Framework services extend this and control initialization lifecycle.
202
+ *
203
+ * Benefits:
204
+ * - Explicit initialization control
205
+ * - Better error boundaries
206
+ * - Clear lifecycle management
207
+ * - Testable initialization state
208
+ * - Zero framework dependencies
209
+ */
210
+ class BaseTokenService {
211
+ constructor() {
212
+ this._isInitialized = false;
213
+ }
214
+ // ==========================================
215
+ // INITIALIZATION LIFECYCLE
216
+ // ==========================================
217
+ /**
218
+ * LIFECYCLE: Initialize token service with API client
219
+ * Must be called before using any token operations
220
+ */
221
+ initializeTokenService(apiClient) {
222
+ if (!apiClient) {
223
+ throw new Error('Cannot initialize TokenService: apiClient is null or undefined');
224
+ }
225
+ if (!this._isInitialized) {
226
+ this._tokenApi = new tokenService.TokenApi(apiClient);
227
+ this._tokenBusinessService = new tokenService.TokenService(this._tokenApi);
228
+ this._isInitialized = true;
229
+ }
230
+ }
231
+ /**
232
+ * LIFECYCLE: Check if token service is initialized
233
+ */
234
+ get isTokenServiceInitialized() {
235
+ return this._isInitialized;
236
+ }
237
+ /**
238
+ * INTERNAL: Get token business service (throws if not initialized)
239
+ */
240
+ get tokenBusinessService() {
241
+ if (!this._tokenBusinessService) {
242
+ throw new Error('TokenService not initialized. Call initializeTokenService(apiClient) first.');
243
+ }
244
+ return this._tokenBusinessService;
245
+ }
246
+ // ==========================================
247
+ // PUBLIC OPERATIONS
248
+ // ==========================================
249
+ /**
250
+ * PUBLIC: Get all remote tokens
251
+ */
252
+ getRemoteTokens() {
253
+ return this.tokenBusinessService.getRemoteTokens();
254
+ }
255
+ /**
256
+ * PUBLIC: Get all remote token types
257
+ */
258
+ getRemoteTokenTypes() {
259
+ return this.tokenBusinessService.getRemoteTokenTypes();
260
+ }
261
+ /**
262
+ * PUBLIC: Get active credit token
263
+ */
264
+ getRemoteActiveCreditToken() {
265
+ return this.tokenBusinessService.getRemoteActiveCreditToken();
266
+ }
267
+ /**
268
+ * PUBLIC: Get reward tokens
269
+ */
270
+ getRemoteRewardTokens() {
271
+ return this.tokenBusinessService.getRemoteRewardTokens();
272
+ }
273
+ /**
274
+ * PUBLIC: Get status tokens
275
+ */
276
+ getRemoteStatusTokens() {
277
+ return this.tokenBusinessService.getRemoteStatusTokens();
278
+ }
279
+ /**
280
+ * PUBLIC: Get token by contract address
281
+ */
282
+ getTokenByContractAddress(contractAddress, contractTokenId) {
283
+ return this.tokenBusinessService.getTokenByContractAddress(contractAddress, contractTokenId);
284
+ }
285
+ // ==========================================
286
+ // ADMIN OPERATIONS
287
+ // ==========================================
288
+ /**
289
+ * ADMIN: Create token metadata
290
+ */
291
+ createTokenMetadata(tokenId, tokenData) {
292
+ return this.tokenBusinessService.createTokenMetadata(tokenId, tokenData);
293
+ }
294
+ /**
295
+ * ADMIN: Toggle token active status
296
+ */
297
+ toggleTokenActive(tokenId) {
298
+ return this.tokenBusinessService.toggleTokenActive(tokenId);
299
+ }
300
+ /**
301
+ * ADMIN: Create new token
302
+ */
303
+ createToken(tokenData) {
304
+ return this.tokenBusinessService.createToken(tokenData);
305
+ }
306
+ /**
307
+ * ADMIN: Update token
308
+ */
309
+ updateToken(tokenId, tokenData) {
310
+ return this.tokenBusinessService.updateToken(tokenId, tokenData);
311
+ }
312
+ /**
313
+ * ADMIN: Set mainnet contract address
314
+ */
315
+ setMainnetContract(tokenId, contractAddress, chainId) {
316
+ return this.tokenBusinessService.setMainnetContract(tokenId, contractAddress, chainId);
317
+ }
318
+ /**
319
+ * ADMIN: Toggle token metadata status
320
+ */
321
+ toggleTokenMetadataStatus(metadataId) {
322
+ return this.tokenBusinessService.toggleTokenMetadataStatus(metadataId);
323
+ }
324
+ /**
325
+ * ADMIN: Create token type
326
+ */
327
+ createTokenType(tokenType) {
328
+ return this.tokenBusinessService.createTokenType(tokenType);
329
+ }
330
+ }
331
+
332
+ exports.BaseTokenService = BaseTokenService;
399
333
  exports.TokenSDK = TokenSDK;
400
- exports.TokenService = TokenService;
401
- //# sourceMappingURL=token-sdk-CiAbOb6c.cjs.map
334
+ //# sourceMappingURL=base-token-service-CYuqPPs0.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-token-service-CYuqPPs0.cjs","sources":["../../src/token/token-sdk.ts","../../src/token/base/base-token-service.ts"],"sourcesContent":[null,null],"names":["TokenApi","TokenService","TokenBusinessService"],"mappings":"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"}
@@ -0,0 +1,241 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Platform-Agnostic Business API Client
5
+ *
6
+ * Updated to match the actual RESTful endpoints:
7
+ * - /businesses for business operations
8
+ * - /business-types for business type operations (separate controller)
9
+ */
10
+ class BusinessApi {
11
+ constructor(apiClient) {
12
+ this.apiClient = apiClient;
13
+ this.basePath = '/businesses';
14
+ this.businessTypesPath = '/businesses/types';
15
+ }
16
+ // ==========================================
17
+ // 🌐 BUSINESS TYPES MANAGEMENT
18
+ // ==========================================
19
+ /**
20
+ * Get all business types (project key required)
21
+ *
22
+ * Endpoint: GET /business-types
23
+ * Auth: @ApiSecurity('projectKey')
24
+ */
25
+ async getBusinessTypes() {
26
+ return this.apiClient.get(this.businessTypesPath);
27
+ }
28
+ /**
29
+ * ADMIN: Create business type
30
+ *
31
+ * Endpoint: POST /business-types
32
+ * Auth: @TenantAdmin()
33
+ */
34
+ async createBusinessType(dto) {
35
+ return this.apiClient.post(this.businessTypesPath, dto);
36
+ }
37
+ /**
38
+ * ADMIN: Update business type
39
+ *
40
+ * Endpoint: PUT /business-types
41
+ * Auth: @TenantAdmin()
42
+ */
43
+ async updateBusinessType(dto) {
44
+ return this.apiClient.put(this.businessTypesPath, dto);
45
+ }
46
+ /**
47
+ * ADMIN: Delete business type
48
+ *
49
+ * Endpoint: DELETE /business-types/{id}
50
+ * Auth: @TenantAdmin()
51
+ */
52
+ async deleteBusinessType(id) {
53
+ return this.apiClient.delete(`${this.businessTypesPath}/${id}`);
54
+ }
55
+ // ==========================================
56
+ // 🏢 BUSINESS MANAGEMENT
57
+ // ==========================================
58
+ /**
59
+ * Get current business info (business authentication required)
60
+ *
61
+ * Endpoint: GET /businesses/me
62
+ * Auth: @Business()
63
+ */
64
+ async getCurrentBusiness() {
65
+ return this.apiClient.get(`${this.basePath}/me`);
66
+ }
67
+ /**
68
+ * Get all businesses with role-based filtering
69
+ *
70
+ * Endpoint: GET /businesses?active={boolean}&sanitize={mode}
71
+ * Auth: @ApiSecurity('projectKey') (enhanced with role-based filtering)
72
+ * Note:
73
+ * - Project API Key users: Active businesses only (automatically filtered)
74
+ * - Admin JWT users: Full access with all query parameters
75
+ */
76
+ async getBusinesses(options) {
77
+ const params = new URLSearchParams();
78
+ if (options?.active !== undefined) {
79
+ params.append('active', String(options.active));
80
+ }
81
+ if (options?.sanitize) {
82
+ params.append('sanitize', options.sanitize);
83
+ }
84
+ const queryString = params.toString();
85
+ const url = queryString ? `${this.basePath}?${queryString}` : this.basePath;
86
+ return this.apiClient.get(url);
87
+ }
88
+ /**
89
+ * Get all active businesses (convenience method)
90
+ *
91
+ * Endpoint: GET /businesses
92
+ * Auth: @ApiSecurity('projectKey')
93
+ */
94
+ async getActiveBusinesses() {
95
+ return this.apiClient.get(this.basePath);
96
+ }
97
+ /**
98
+ * Get business by ID
99
+ *
100
+ * Endpoint: GET /businesses/{id}
101
+ * Auth: @ApiSecurity('projectKey')
102
+ */
103
+ async getBusinessById(businessId) {
104
+ return this.apiClient.get(`${this.basePath}/${businessId}`);
105
+ }
106
+ /**
107
+ * Get business by account address
108
+ *
109
+ * Endpoint: GET /businesses/account/{accountAddress}
110
+ * Auth: @ApiSecurity('projectKey')
111
+ */
112
+ async getBusinessByAccount(accountAddress) {
113
+ return this.apiClient.get(`${this.basePath}/account/${accountAddress}`);
114
+ }
115
+ // ==========================================
116
+ // 🔧 ADMIN OPERATIONS
117
+ // ==========================================
118
+ /**
119
+ * ADMIN: Create business
120
+ *
121
+ * Endpoint: POST /businesses
122
+ * Auth: @TenantAdmin()
123
+ * Returns: BusinessApiKeyDTO | BusinessTokenBalancesDTO
124
+ */
125
+ async createBusiness(dto) {
126
+ return this.apiClient.post(this.basePath, dto);
127
+ }
128
+ /**
129
+ * ADMIN: Create business by display name (convenience method)
130
+ */
131
+ async createBusinessByDisplayName(displayName) {
132
+ const dto = {
133
+ displayName,
134
+ // Add other required fields based on BusinessCreateRequestDTO structure
135
+ };
136
+ return this.createBusiness(dto);
137
+ }
138
+ /**
139
+ * ADMIN: Create businesses from URL
140
+ *
141
+ * Endpoint: POST /businesses/bulk/url
142
+ * Auth: @TenantAdmin()
143
+ */
144
+ async createBusinessesFromUrl(url) {
145
+ return this.apiClient.post(`${this.basePath}/bulk/url`, { url });
146
+ }
147
+ /**
148
+ * ADMIN: Update business
149
+ *
150
+ * Endpoint: PUT /businesses/{id}
151
+ * Auth: @TenantAdmin()
152
+ */
153
+ async updateBusiness(id, businessData) {
154
+ return this.apiClient.put(`${this.basePath}/${id}`, businessData);
155
+ }
156
+ /**
157
+ * ADMIN: Toggle business active status
158
+ *
159
+ * Endpoint: PUT /businesses/{id}/status
160
+ * Auth: @TenantAdmin()
161
+ */
162
+ async toggleBusinessActive(id, dto) {
163
+ return this.apiClient.put(`${this.basePath}/${id}/status`, dto);
164
+ }
165
+ }
166
+
167
+ /**
168
+ * Platform-Agnostic Business Service
169
+ *
170
+ * Contains business logic and operations that work across platforms.
171
+ * No framework dependencies - pure TypeScript business logic.
172
+ *
173
+ * Focuses only on actual backend capabilities.
174
+ */
175
+ class BusinessService {
176
+ constructor(businessApi) {
177
+ this.businessApi = businessApi;
178
+ }
179
+ /**
180
+ * Get all active businesses
181
+ */
182
+ async getActiveBusinesses() {
183
+ return this.businessApi.getActiveBusinesses();
184
+ }
185
+ /**
186
+ * Get all business types
187
+ */
188
+ async getBusinessTypes() {
189
+ return this.businessApi.getBusinessTypes();
190
+ }
191
+ /**
192
+ * Get business by ID
193
+ */
194
+ async getBusinessById(businessId) {
195
+ return this.businessApi.getBusinessById(businessId);
196
+ }
197
+ /**
198
+ * Get business by account address
199
+ */
200
+ async getBusinessByAccount(accountAddress) {
201
+ return this.businessApi.getBusinessByAccount(accountAddress);
202
+ }
203
+ /**
204
+ * Get businesses by type (client-side filtering)
205
+ */
206
+ async getBusinessesByType(typeId) {
207
+ const businesses = await this.getActiveBusinesses();
208
+ return businesses.filter(business => business.businessType && business.businessType.id === parseInt(typeId));
209
+ }
210
+ // ==========================================
211
+ // ADMIN OPERATIONS
212
+ // ==========================================
213
+ /**
214
+ * ADMIN: Get all businesses (active and inactive)
215
+ */
216
+ async getBusinesses() {
217
+ return this.businessApi.getBusinesses();
218
+ }
219
+ /**
220
+ * ADMIN: Create business by display name
221
+ */
222
+ async createBusinessByDisplayName(displayName) {
223
+ return this.businessApi.createBusinessByDisplayName(displayName);
224
+ }
225
+ /**
226
+ * ADMIN: Update business
227
+ */
228
+ async updateBusiness(id, businessData) {
229
+ return this.businessApi.updateBusiness(id, businessData);
230
+ }
231
+ /**
232
+ * ADMIN: Toggle business active status
233
+ */
234
+ async toggleBusinessActive(id, dto) {
235
+ return this.businessApi.toggleBusinessActive(id, dto);
236
+ }
237
+ }
238
+
239
+ exports.BusinessApi = BusinessApi;
240
+ exports.BusinessService = BusinessService;
241
+ //# sourceMappingURL=business-service-Cq3-oksM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business-service-Cq3-oksM.cjs","sources":["../../src/business/api/business-api.ts","../../src/business/services/business-service.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}