@explorins/pers-sdk 1.1.2 → 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.
Files changed (291) hide show
  1. package/dist/analytics/api/analytics-api.d.ts +17 -0
  2. package/dist/analytics/api/analytics-api.d.ts.map +1 -0
  3. package/{src/analytics/index.ts → dist/analytics/index.d.ts} +28 -52
  4. package/dist/analytics/index.d.ts.map +1 -0
  5. package/dist/analytics/models/index.d.ts +61 -0
  6. package/dist/analytics/models/index.d.ts.map +1 -0
  7. package/dist/analytics/services/analytics-service.d.ts +19 -0
  8. package/dist/analytics/services/analytics-service.d.ts.map +1 -0
  9. package/dist/analytics.cjs +76 -0
  10. package/dist/analytics.cjs.map +1 -0
  11. package/dist/analytics.d.ts +28 -0
  12. package/dist/analytics.js +72 -0
  13. package/dist/analytics.js.map +1 -0
  14. package/dist/auth-admin/api/auth-admin-api.d.ts +27 -0
  15. package/dist/auth-admin/api/auth-admin-api.d.ts.map +1 -0
  16. package/dist/auth-admin/index.d.ts +26 -0
  17. package/dist/auth-admin/index.d.ts.map +1 -0
  18. package/dist/auth-admin/services/auth-admin-service.d.ts +23 -0
  19. package/dist/auth-admin/services/auth-admin-service.d.ts.map +1 -0
  20. package/dist/auth-admin.cjs +96 -0
  21. package/dist/auth-admin.cjs.map +1 -0
  22. package/dist/auth-admin.d.ts +26 -0
  23. package/dist/auth-admin.js +92 -0
  24. package/dist/auth-admin.js.map +1 -0
  25. package/dist/business/api/business-api.d.ts +133 -0
  26. package/dist/business/api/business-api.d.ts.map +1 -0
  27. package/dist/business/index.d.ts +34 -0
  28. package/dist/business/index.d.ts.map +1 -0
  29. package/dist/business/models/index.d.ts +8 -0
  30. package/dist/business/models/index.d.ts.map +1 -0
  31. package/dist/business/services/business-service.d.ts +51 -0
  32. package/dist/business/services/business-service.d.ts.map +1 -0
  33. package/dist/business.cjs +303 -0
  34. package/dist/business.cjs.map +1 -0
  35. package/dist/business.d.ts +34 -0
  36. package/dist/business.js +299 -0
  37. package/dist/business.js.map +1 -0
  38. package/dist/campaign/api/campaign-api.d.ts +213 -0
  39. package/dist/campaign/api/campaign-api.d.ts.map +1 -0
  40. package/dist/campaign/index.d.ts +44 -0
  41. package/dist/campaign/index.d.ts.map +1 -0
  42. package/dist/campaign/services/campaign-service.d.ts +88 -0
  43. package/dist/campaign/services/campaign-service.d.ts.map +1 -0
  44. package/dist/campaign.cjs +506 -0
  45. package/dist/campaign.cjs.map +1 -0
  46. package/dist/campaign.d.ts +44 -0
  47. package/dist/campaign.js +502 -0
  48. package/dist/campaign.js.map +1 -0
  49. package/dist/core/abstractions/http-client.d.ts +22 -0
  50. package/dist/core/abstractions/http-client.d.ts.map +1 -0
  51. package/dist/core/auth/auth-provider.interface.d.ts +12 -0
  52. package/dist/core/auth/auth-provider.interface.d.ts.map +1 -0
  53. package/dist/core/auth/create-auth-provider.d.ts +27 -0
  54. package/dist/core/auth/create-auth-provider.d.ts.map +1 -0
  55. package/dist/core/auth/simple-auth-config.interface.d.ts +15 -0
  56. package/dist/core/auth/simple-auth-config.interface.d.ts.map +1 -0
  57. package/dist/core/index.d.ts +13 -0
  58. package/dist/core/index.d.ts.map +1 -0
  59. package/dist/core/pers-api-client.d.ts +54 -0
  60. package/dist/core/pers-api-client.d.ts.map +1 -0
  61. package/dist/core/pers-config.d.ts +38 -0
  62. package/dist/core/pers-config.d.ts.map +1 -0
  63. package/dist/core/utils/jwt.function.d.ts +2 -0
  64. package/dist/core/utils/jwt.function.d.ts.map +1 -0
  65. package/dist/core.cjs +506 -0
  66. package/dist/core.cjs.map +1 -0
  67. package/dist/core.d.ts +13 -0
  68. package/dist/core.js +497 -0
  69. package/dist/core.js.map +1 -0
  70. package/dist/donation/api/donation-api.d.ts +18 -0
  71. package/dist/donation/api/donation-api.d.ts.map +1 -0
  72. package/dist/donation/index.d.ts +25 -0
  73. package/dist/donation/index.d.ts.map +1 -0
  74. package/{src/donation/models/index.ts → dist/donation/models/index.d.ts} +8 -11
  75. package/dist/donation/models/index.d.ts.map +1 -0
  76. package/dist/donation/services/donation-service.d.ts +19 -0
  77. package/dist/donation/services/donation-service.d.ts.map +1 -0
  78. package/dist/donation.cjs +78 -0
  79. package/dist/donation.cjs.map +1 -0
  80. package/dist/donation.d.ts +25 -0
  81. package/dist/donation.js +74 -0
  82. package/dist/donation.js.map +1 -0
  83. package/dist/index.cjs +4217 -0
  84. package/dist/index.cjs.map +1 -0
  85. package/dist/index.d.ts +21 -0
  86. package/dist/index.d.ts.map +1 -0
  87. package/dist/index.js +4164 -0
  88. package/dist/index.js.map +1 -0
  89. package/dist/package.json +148 -0
  90. package/dist/payment/api/payment-api.d.ts +105 -0
  91. package/dist/payment/api/payment-api.d.ts.map +1 -0
  92. package/dist/payment/index.d.ts +36 -0
  93. package/dist/payment/index.d.ts.map +1 -0
  94. package/dist/payment/models/index.d.ts +12 -0
  95. package/dist/payment/models/index.d.ts.map +1 -0
  96. package/dist/payment/services/payment-service.d.ts +40 -0
  97. package/dist/payment/services/payment-service.d.ts.map +1 -0
  98. package/dist/payment.cjs +258 -0
  99. package/dist/payment.cjs.map +1 -0
  100. package/dist/payment.d.ts +36 -0
  101. package/dist/payment.js +254 -0
  102. package/dist/payment.js.map +1 -0
  103. package/dist/pers-sdk.d.ts +29 -0
  104. package/dist/pers-sdk.d.ts.map +1 -0
  105. package/dist/redemption/api/redemption-api.d.ts +147 -0
  106. package/dist/redemption/api/redemption-api.d.ts.map +1 -0
  107. package/dist/redemption/index.d.ts +35 -0
  108. package/dist/redemption/index.d.ts.map +1 -0
  109. package/dist/redemption/models/index.d.ts +8 -0
  110. package/dist/redemption/models/index.d.ts.map +1 -0
  111. package/dist/redemption/services/redemption-service.d.ts +56 -0
  112. package/dist/redemption/services/redemption-service.d.ts.map +1 -0
  113. package/dist/redemption.cjs +333 -0
  114. package/dist/redemption.cjs.map +1 -0
  115. package/dist/redemption.d.ts +35 -0
  116. package/dist/redemption.js +329 -0
  117. package/dist/redemption.js.map +1 -0
  118. package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts +18 -0
  119. package/dist/shared/interfaces/pers-shared-lib.interfaces.d.ts.map +1 -0
  120. package/dist/tenant/api/tenant-api.d.ts +56 -0
  121. package/dist/tenant/api/tenant-api.d.ts.map +1 -0
  122. package/dist/tenant/index.d.ts +34 -0
  123. package/dist/tenant/index.d.ts.map +1 -0
  124. package/dist/tenant/models/index.d.ts +11 -0
  125. package/dist/tenant/models/index.d.ts.map +1 -0
  126. package/dist/tenant/services/tenant-service.d.ts +46 -0
  127. package/dist/tenant/services/tenant-service.d.ts.map +1 -0
  128. package/dist/tenant.cjs +177 -0
  129. package/dist/tenant.cjs.map +1 -0
  130. package/dist/tenant.d.ts +34 -0
  131. package/dist/tenant.js +173 -0
  132. package/dist/tenant.js.map +1 -0
  133. package/dist/token/api/token-api.d.ts +64 -0
  134. package/dist/token/api/token-api.d.ts.map +1 -0
  135. package/dist/token/base/base-token-service.d.ts +87 -0
  136. package/dist/token/base/base-token-service.d.ts.map +1 -0
  137. package/dist/token/index.d.ts +13 -0
  138. package/dist/token/index.d.ts.map +1 -0
  139. package/dist/token/models/index.d.ts +18 -0
  140. package/dist/token/models/index.d.ts.map +1 -0
  141. package/dist/token/services/token-service.d.ts +68 -0
  142. package/dist/token/services/token-service.d.ts.map +1 -0
  143. package/dist/token/token-sdk.d.ts +140 -0
  144. package/dist/token/token-sdk.d.ts.map +1 -0
  145. package/dist/token.cjs +537 -0
  146. package/dist/token.cjs.map +1 -0
  147. package/dist/token.d.ts +13 -0
  148. package/dist/token.js +532 -0
  149. package/dist/token.js.map +1 -0
  150. package/dist/transaction/api/transaction-api.d.ts +133 -0
  151. package/dist/transaction/api/transaction-api.d.ts.map +1 -0
  152. package/dist/transaction/index.d.ts +38 -0
  153. package/dist/transaction/index.d.ts.map +1 -0
  154. package/dist/transaction/models/index.d.ts +42 -0
  155. package/dist/transaction/models/index.d.ts.map +1 -0
  156. package/dist/transaction/services/transaction-service.d.ts +56 -0
  157. package/dist/transaction/services/transaction-service.d.ts.map +1 -0
  158. package/dist/transaction.cjs +394 -0
  159. package/dist/transaction.cjs.map +1 -0
  160. package/dist/transaction.d.ts +38 -0
  161. package/dist/transaction.js +390 -0
  162. package/dist/transaction.js.map +1 -0
  163. package/dist/user/api/user-api.d.ts +56 -0
  164. package/dist/user/api/user-api.d.ts.map +1 -0
  165. package/dist/user/index.d.ts +36 -0
  166. package/dist/user/index.d.ts.map +1 -0
  167. package/{src/user/models/index.ts → dist/user/models/index.d.ts} +12 -10
  168. package/dist/user/models/index.d.ts.map +1 -0
  169. package/dist/user/services/user-service.d.ts +46 -0
  170. package/dist/user/services/user-service.d.ts.map +1 -0
  171. package/dist/user-status/api/user-status-api.d.ts +37 -0
  172. package/dist/user-status/api/user-status-api.d.ts.map +1 -0
  173. package/dist/user-status/index.d.ts +28 -0
  174. package/dist/user-status/index.d.ts.map +1 -0
  175. package/{src/user-status/models/index.ts → dist/user-status/models/index.d.ts} +8 -11
  176. package/dist/user-status/models/index.d.ts.map +1 -0
  177. package/dist/user-status/services/user-status-service.d.ts +26 -0
  178. package/dist/user-status/services/user-status-service.d.ts.map +1 -0
  179. package/dist/user-status.cjs +147 -0
  180. package/dist/user-status.cjs.map +1 -0
  181. package/dist/user-status.d.ts +28 -0
  182. package/dist/user-status.js +143 -0
  183. package/dist/user-status.js.map +1 -0
  184. package/dist/user.cjs +188 -0
  185. package/dist/user.cjs.map +1 -0
  186. package/dist/user.d.ts +36 -0
  187. package/dist/user.js +184 -0
  188. package/dist/user.js.map +1 -0
  189. package/dist/web3/api/web3-api.d.ts +27 -0
  190. package/dist/web3/api/web3-api.d.ts.map +1 -0
  191. package/dist/web3/index.d.ts +16 -0
  192. package/dist/web3/index.d.ts.map +1 -0
  193. package/dist/web3/models/index.d.ts +92 -0
  194. package/dist/web3/models/index.d.ts.map +1 -0
  195. package/dist/web3/services/web3-service.d.ts +21 -0
  196. package/dist/web3/services/web3-service.d.ts.map +1 -0
  197. package/dist/web3-chain/api/web3-chain-api.d.ts +19 -0
  198. package/dist/web3-chain/api/web3-chain-api.d.ts.map +1 -0
  199. package/dist/web3-chain/index.d.ts +17 -0
  200. package/dist/web3-chain/index.d.ts.map +1 -0
  201. package/{src/web3-chain/models/index.ts → dist/web3-chain/models/index.d.ts} +38 -45
  202. package/dist/web3-chain/models/index.d.ts.map +1 -0
  203. package/dist/web3-chain/services/getWeb3FCD.service.d.ts +8 -0
  204. package/dist/web3-chain/services/getWeb3FCD.service.d.ts.map +1 -0
  205. package/dist/web3-chain/services/provider.service.d.ts +15 -0
  206. package/dist/web3-chain/services/provider.service.d.ts.map +1 -0
  207. package/dist/web3-chain/services/public-http-provider.service.d.ts +8 -0
  208. package/dist/web3-chain/services/public-http-provider.service.d.ts.map +1 -0
  209. package/dist/web3-chain/services/web3-chain-service.d.ts +17 -0
  210. package/dist/web3-chain/services/web3-chain-service.d.ts.map +1 -0
  211. package/dist/web3-chain.cjs +316 -0
  212. package/dist/web3-chain.cjs.map +1 -0
  213. package/dist/web3-chain.d.ts +17 -0
  214. package/dist/web3-chain.js +310 -0
  215. package/dist/web3-chain.js.map +1 -0
  216. package/dist/web3.cjs +516 -0
  217. package/dist/web3.cjs.map +1 -0
  218. package/dist/web3.d.ts +16 -0
  219. package/dist/web3.js +513 -0
  220. package/dist/web3.js.map +1 -0
  221. package/package.json +70 -67
  222. package/config/domains.js +0 -22
  223. package/explorins-pers-sdk-1.0.0-alpha.1.tgz +0 -0
  224. package/rollup.config.js +0 -74
  225. package/scripts/copy-declarations.js +0 -147
  226. package/src/analytics/api/analytics-api.ts +0 -24
  227. package/src/analytics/models/index.ts +0 -74
  228. package/src/analytics/services/analytics-service.ts +0 -28
  229. package/src/auth-admin/api/auth-admin-api.ts +0 -42
  230. package/src/auth-admin/index.ts +0 -47
  231. package/src/auth-admin/services/auth-admin-service.ts +0 -36
  232. package/src/business/api/business-api.ts +0 -234
  233. package/src/business/index.ts +0 -53
  234. package/src/business/models/index.ts +0 -13
  235. package/src/business/services/business-service.ts +0 -88
  236. package/src/campaign/api/campaign-api.ts +0 -376
  237. package/src/campaign/index.ts +0 -67
  238. package/src/campaign/services/campaign-service.ts +0 -164
  239. package/src/core/abstractions/http-client.ts +0 -24
  240. package/src/core/auth/auth-provider.interface.ts +0 -16
  241. package/src/core/auth/create-auth-provider.ts +0 -136
  242. package/src/core/auth/simple-auth-config.interface.ts +0 -15
  243. package/src/core/index.ts +0 -33
  244. package/src/core/pers-api-client.ts +0 -343
  245. package/src/core/pers-config.ts +0 -65
  246. package/src/core/utils/jwt.function.ts +0 -24
  247. package/src/donation/api/donation-api.ts +0 -24
  248. package/src/donation/index.ts +0 -47
  249. package/src/donation/services/donation-service.ts +0 -25
  250. package/src/index.ts +0 -55
  251. package/src/payment/api/payment-api.ts +0 -185
  252. package/src/payment/index.ts +0 -64
  253. package/src/payment/models/index.ts +0 -29
  254. package/src/payment/services/payment-service.ts +0 -70
  255. package/src/pers-sdk.ts +0 -45
  256. package/src/redemption/api/redemption-api.ts +0 -241
  257. package/src/redemption/index.ts +0 -60
  258. package/src/redemption/models/index.ts +0 -17
  259. package/src/redemption/services/redemption-service.ts +0 -103
  260. package/src/shared/interfaces/pers-shared-lib.interfaces.ts +0 -99
  261. package/src/tenant/api/tenant-api.ts +0 -92
  262. package/src/tenant/index.ts +0 -61
  263. package/src/tenant/models/index.ts +0 -20
  264. package/src/tenant/services/tenant-service.ts +0 -78
  265. package/src/token/api/token-api.ts +0 -129
  266. package/src/token/base/base-token-service.ts +0 -167
  267. package/src/token/index.ts +0 -38
  268. package/src/token/models/index.ts +0 -30
  269. package/src/token/services/token-service.ts +0 -125
  270. package/src/token/token-sdk.ts +0 -231
  271. package/src/transaction/api/transaction-api.ts +0 -296
  272. package/src/transaction/index.ts +0 -65
  273. package/src/transaction/models/index.ts +0 -60
  274. package/src/transaction/services/transaction-service.ts +0 -104
  275. package/src/user/api/user-api.ts +0 -98
  276. package/src/user/index.ts +0 -62
  277. package/src/user/services/user-service.ts +0 -75
  278. package/src/user-status/api/user-status-api.ts +0 -78
  279. package/src/user-status/index.ts +0 -55
  280. package/src/user-status/services/user-status-service.ts +0 -51
  281. package/src/web3/api/web3-api.ts +0 -68
  282. package/src/web3/index.ts +0 -38
  283. package/src/web3/models/index.ts +0 -150
  284. package/src/web3/services/web3-service.ts +0 -338
  285. package/src/web3-chain/api/web3-chain-api.ts +0 -42
  286. package/src/web3-chain/index.ts +0 -27
  287. package/src/web3-chain/services/getWeb3FCD.service.ts +0 -47
  288. package/src/web3-chain/services/provider.service.ts +0 -123
  289. package/src/web3-chain/services/public-http-provider.service.ts +0 -26
  290. package/src/web3-chain/services/web3-chain-service.ts +0 -131
  291. package/tsconfig.json +0 -28
@@ -0,0 +1,54 @@
1
+ /**
2
+ * PERS API Client - Core platform-agnostic client for PERS backend
3
+ */
4
+ import { HttpClient } from './abstractions/http-client';
5
+ import { PersConfig, mergeWithDefaults } from './pers-config';
6
+ export declare class PersApiClient {
7
+ private httpClient;
8
+ private config;
9
+ private readonly apiRoot;
10
+ private readonly mergedConfig;
11
+ constructor(httpClient: HttpClient, config: PersConfig);
12
+ /**
13
+ * Get request headers including auth token and project key
14
+ */
15
+ private getHeaders;
16
+ /**
17
+ * Make a request with proper headers, auth, and error handling
18
+ */
19
+ private request;
20
+ /**
21
+ * Generic GET request
22
+ */
23
+ get<T>(endpoint: string, responseType?: 'json' | 'blob' | 'text' | 'arraybuffer'): Promise<T>;
24
+ /**
25
+ * Generic POST request
26
+ */
27
+ post<T>(endpoint: string, body?: unknown): Promise<T>;
28
+ /**
29
+ * Generic PUT request
30
+ */
31
+ put<T>(endpoint: string, body?: unknown): Promise<T>;
32
+ /**
33
+ * Generic DELETE request
34
+ */
35
+ delete<T>(endpoint: string): Promise<T>;
36
+ /**
37
+ * Get current configuration (returns merged config)
38
+ */
39
+ getConfig(): ReturnType<typeof mergeWithDefaults>;
40
+ /**
41
+ * Get original user configuration
42
+ */
43
+ getOriginalConfig(): PersConfig;
44
+ }
45
+ export declare class PersApiError extends Error {
46
+ endpoint: string;
47
+ method: string;
48
+ statusCode?: number | undefined;
49
+ constructor(message: string, endpoint: string, method: string, statusCode?: number | undefined);
50
+ }
51
+ /**
52
+ * PERS API Client - Core platform-agnostic client for PERS backend
53
+ */
54
+ //# sourceMappingURL=pers-api-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pers-api-client.d.ts","sourceRoot":"","sources":["../../src/core/pers-api-client.ts"],"names":[],"mappings":"AACA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAkB,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,UAAU,EAAgB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE5E,qBAAa,aAAa;IAKtB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuC;gBAG1D,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,UAAU;IAS5B;;OAEG;YACW,UAAU;IA2BxB;;OAEG;YACW,OAAO;IAuErB;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;IAInG;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3D;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;OAEG;IACG,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI7C;;OAEG;IACH,SAAS,IAAI,UAAU,CAAC,OAAO,iBAAiB,CAAC;IAIjD;;OAEG;IACH,iBAAiB,IAAI,UAAU;CAGhC;AAED,qBAAa,YAAa,SAAQ,KAAK;IAG5B,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,MAAM;IACd,UAAU,CAAC,EAAE,MAAM;gBAH1B,OAAO,EAAE,MAAM,EACR,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,MAAM,YAAA;CAK7B;AACD;;GAEG"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * PERS SDK Configuration interfaces
3
+ */
4
+ import { PersAuthProvider } from './auth/auth-provider.interface';
5
+ export type PersEnvironment = 'development' | 'staging' | 'production';
6
+ export type PersApiVersion = 'v1' | 'v1.8' | 'v1.9' | 'v2';
7
+ export interface PersConfig {
8
+ environment?: PersEnvironment;
9
+ apiProjectKey?: string;
10
+ apiVersion?: PersApiVersion;
11
+ timeout?: number;
12
+ retries?: number;
13
+ authProvider?: PersAuthProvider;
14
+ readonly apiRoot?: string;
15
+ }
16
+ export interface PersAuthConfig {
17
+ type: 'firebase' | 'jwt' | 'none';
18
+ tokenProvider?: () => Promise<string | null>;
19
+ }
20
+ /**
21
+ * Default configuration values
22
+ */
23
+ export declare const DEFAULT_PERS_CONFIG: {
24
+ readonly environment: PersEnvironment;
25
+ readonly apiVersion: PersApiVersion;
26
+ readonly timeout: 30000;
27
+ readonly retries: 3;
28
+ };
29
+ /**
30
+ * Internal function to construct API root from environment
31
+ * Now defaults to production and v2
32
+ */
33
+ export declare function buildApiRoot(environment?: PersEnvironment, version?: PersApiVersion): string;
34
+ /**
35
+ * Merge user config with defaults
36
+ */
37
+ export declare function mergeWithDefaults(config: PersConfig): PersConfig & Required<Pick<PersConfig, 'environment' | 'apiVersion' | 'timeout' | 'retries'>>;
38
+ //# sourceMappingURL=pers-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pers-config.d.ts","sourceRoot":"","sources":["../../src/core/pers-config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;AACvE,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAEhC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC9C;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB;0BACD,eAAe;yBACxB,cAAc;;;CAG1B,CAAC;AAEX;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,WAAW,GAAE,eAA8B,EAC3C,OAAO,GAAE,cAAqB,GAC7B,MAAM,CAQR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,GAAG,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,CASnJ"}
@@ -0,0 +1,2 @@
1
+ export declare const isTokenExpired: (token: string, margin?: number) => boolean;
2
+ //# sourceMappingURL=jwt.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwt.function.d.ts","sourceRoot":"","sources":["../../../src/core/utils/jwt.function.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,EAAE,SAAQ,MAAW,KAAG,OAoBnE,CAAC"}
package/dist/core.cjs ADDED
@@ -0,0 +1,506 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * PERS SDK Configuration interfaces
5
+ */
6
+ /**
7
+ * Default configuration values
8
+ */
9
+ const DEFAULT_PERS_CONFIG = {
10
+ environment: 'production',
11
+ apiVersion: 'v2',
12
+ timeout: 30000,
13
+ retries: 3
14
+ };
15
+ /**
16
+ * Internal function to construct API root from environment
17
+ * Now defaults to production and v2
18
+ */
19
+ function buildApiRoot(environment = 'production', version = 'v2') {
20
+ const baseUrls = {
21
+ development: 'https://explorins-loyalty.ngrok.io',
22
+ staging: `https://dev.api.pers.ninja/${version}`,
23
+ production: `https://api.pers.ninja/${version}`
24
+ };
25
+ return `${baseUrls[environment]}`;
26
+ }
27
+ /**
28
+ * Merge user config with defaults
29
+ */
30
+ function mergeWithDefaults(config) {
31
+ return {
32
+ ...DEFAULT_PERS_CONFIG,
33
+ ...config,
34
+ environment: config.environment ?? DEFAULT_PERS_CONFIG.environment,
35
+ apiVersion: config.apiVersion ?? DEFAULT_PERS_CONFIG.apiVersion,
36
+ timeout: config.timeout ?? DEFAULT_PERS_CONFIG.timeout,
37
+ retries: config.retries ?? DEFAULT_PERS_CONFIG.retries
38
+ };
39
+ }
40
+
41
+ // packages/pers-sdk/src/core/pers-api-client.ts
42
+ /**
43
+ * PERS API Client - Core platform-agnostic client for PERS backend
44
+ */
45
+ class PersApiClient {
46
+ constructor(httpClient, config) {
47
+ this.httpClient = httpClient;
48
+ this.config = config;
49
+ // Merge user config with defaults (production + v2)
50
+ this.mergedConfig = mergeWithDefaults(config);
51
+ // Build API root from merged environment and version
52
+ this.apiRoot = buildApiRoot(this.mergedConfig.environment, this.mergedConfig.apiVersion);
53
+ }
54
+ /**
55
+ * Get request headers including auth token and project key
56
+ */
57
+ async getHeaders() {
58
+ const headers = {
59
+ 'Content-Type': 'application/json',
60
+ };
61
+ // Add authentication token
62
+ if (this.mergedConfig.authProvider) {
63
+ const token = await this.mergedConfig.authProvider.getToken();
64
+ if (token) {
65
+ headers['Authorization'] = `Bearer ${token}`;
66
+ }
67
+ }
68
+ // Add project key
69
+ if (this.mergedConfig.authProvider) {
70
+ const projectKey = await this.mergedConfig.authProvider.getProjectKey();
71
+ if (projectKey) {
72
+ headers['x-project-key'] = projectKey;
73
+ }
74
+ }
75
+ else if (this.mergedConfig.apiProjectKey) {
76
+ // Fallback to config project key if no auth provider
77
+ headers['x-project-key'] = this.mergedConfig.apiProjectKey;
78
+ }
79
+ return headers;
80
+ }
81
+ /**
82
+ * Make a request with proper headers, auth, and error handling
83
+ */
84
+ async request(method, endpoint, body, options) {
85
+ const { retryCount = 0, responseType = 'json' } = options || {};
86
+ const url = `${this.apiRoot}${endpoint}`;
87
+ // ✅ DEBUGGING: Add extensive logging for CSV endpoint
88
+ const isCSVEndpoint = endpoint.includes('/export/csv');
89
+ const requestOptions = {
90
+ headers: await this.getHeaders(),
91
+ timeout: this.mergedConfig.timeout,
92
+ responseType
93
+ };
94
+ try {
95
+ let result;
96
+ switch (method) {
97
+ case 'GET':
98
+ result = await this.httpClient.get(url, requestOptions);
99
+ break;
100
+ case 'POST':
101
+ result = await this.httpClient.post(url, body, requestOptions);
102
+ break;
103
+ case 'PUT':
104
+ result = await this.httpClient.put(url, body, requestOptions);
105
+ break;
106
+ case 'DELETE':
107
+ result = await this.httpClient.delete(url, requestOptions);
108
+ break;
109
+ default:
110
+ throw new Error(`Unsupported HTTP method: ${method}`);
111
+ }
112
+ return result;
113
+ }
114
+ catch (error) {
115
+ if (isCSVEndpoint) {
116
+ console.error('❌ [PERS API CLIENT] CSV Request failed:', error);
117
+ }
118
+ // Handle 401 errors with automatic token refresh
119
+ const apiError = error;
120
+ if (apiError.status === 401 && retryCount === 0 && this.mergedConfig.authProvider?.onTokenExpired) {
121
+ try {
122
+ await this.mergedConfig.authProvider.onTokenExpired();
123
+ // Retry once with refreshed token
124
+ return this.request(method, endpoint, body, { ...options, retryCount: 1 });
125
+ }
126
+ catch (refreshError) {
127
+ throw new PersApiError(`Authentication refresh failed: ${refreshError}`, endpoint, method, 401);
128
+ }
129
+ }
130
+ throw new PersApiError(`PERS API request failed: ${apiError.message || error}`, endpoint, method, apiError.status);
131
+ }
132
+ }
133
+ /**
134
+ * Generic GET request
135
+ */
136
+ async get(endpoint, responseType) {
137
+ return this.request('GET', endpoint, undefined, { responseType });
138
+ }
139
+ /**
140
+ * Generic POST request
141
+ */
142
+ async post(endpoint, body) {
143
+ return this.request('POST', endpoint, body);
144
+ }
145
+ /**
146
+ * Generic PUT request
147
+ */
148
+ async put(endpoint, body) {
149
+ return this.request('PUT', endpoint, body);
150
+ }
151
+ /**
152
+ * Generic DELETE request
153
+ */
154
+ async delete(endpoint) {
155
+ return this.request('DELETE', endpoint);
156
+ }
157
+ /**
158
+ * Get current configuration (returns merged config)
159
+ */
160
+ getConfig() {
161
+ return this.mergedConfig;
162
+ }
163
+ /**
164
+ * Get original user configuration
165
+ */
166
+ getOriginalConfig() {
167
+ return this.config;
168
+ }
169
+ }
170
+ class PersApiError extends Error {
171
+ constructor(message, endpoint, method, statusCode) {
172
+ super(message);
173
+ this.endpoint = endpoint;
174
+ this.method = method;
175
+ this.statusCode = statusCode;
176
+ this.name = 'PersApiError';
177
+ }
178
+ }
179
+ /**
180
+ * PERS API Client - Core platform-agnostic client for PERS backend
181
+ */
182
+ /*import { HttpClient, RequestOptions } from './abstractions/http-client';
183
+ import { PersConfig, buildApiRoot, mergeWithDefaults } from './pers-config';
184
+
185
+ export class PersApiClient {
186
+ private readonly apiRoot: string;
187
+ private readonly mergedConfig: ReturnType<typeof mergeWithDefaults>;
188
+
189
+ constructor(
190
+ private httpClient: HttpClient,
191
+ private config: PersConfig
192
+ ) {
193
+ // Merge user config with defaults (production + v2)
194
+ this.mergedConfig = mergeWithDefaults(config);
195
+
196
+ // Build API root from merged environment and version
197
+ this.apiRoot = buildApiRoot(this.mergedConfig.environment, this.mergedConfig.apiVersion);
198
+ }
199
+
200
+ /**
201
+ * Get request headers including auth token and project key
202
+ */
203
+ /*private async getHeaders(): Promise<Record<string, string>> {
204
+ const headers: Record<string, string> = {
205
+ 'Content-Type': 'application/json',
206
+ };
207
+
208
+ // Add authentication token
209
+ if (this.mergedConfig.authProvider) {
210
+ const token = await this.mergedConfig.authProvider.getToken();
211
+ if (token) {
212
+ headers['Authorization'] = `Bearer ${token}`;
213
+ }
214
+ }
215
+
216
+ // Add project key
217
+ if (this.mergedConfig.authProvider) {
218
+ const projectKey = await this.mergedConfig.authProvider.getProjectKey();
219
+ if (projectKey) {
220
+ headers['x-project-key'] = projectKey;
221
+ }
222
+ } else if(this.mergedConfig.apiProjectKey) {
223
+ // Fallback to config project key if no auth provider
224
+ headers['x-project-key'] = this.mergedConfig.apiProjectKey;
225
+ }
226
+
227
+ return headers;
228
+ }
229
+
230
+ /**
231
+ * Make a request with proper headers, auth, and error handling
232
+ */
233
+ /*private async request<T>(
234
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE',
235
+ endpoint: string,
236
+ body?: any,
237
+ options?: { retryCount?: number }
238
+ ): Promise<T> {
239
+ const { retryCount = 0 } = options || {};
240
+ const url = `${this.apiRoot}${endpoint}`;
241
+
242
+ const requestOptions: RequestOptions = {
243
+ headers: await this.getHeaders(),
244
+ timeout: this.mergedConfig.timeout,
245
+ };
246
+
247
+ try {
248
+ switch (method) {
249
+ case 'GET':
250
+ return await this.httpClient.get<T>(url, requestOptions);
251
+ case 'POST':
252
+ return await this.httpClient.post<T>(url, body, requestOptions);
253
+ case 'PUT':
254
+ return await this.httpClient.put<T>(url, body, requestOptions);
255
+ case 'DELETE':
256
+ return await this.httpClient.delete<T>(url, requestOptions);
257
+ default:
258
+ throw new Error(`Unsupported HTTP method: ${method}`);
259
+ }
260
+ } catch (error: any) {
261
+ // Handle 401 errors with automatic token refresh
262
+ if (error.status === 401 && retryCount === 0 && this.mergedConfig.authProvider?.onTokenExpired) {
263
+ try {
264
+ await this.mergedConfig.authProvider.onTokenExpired();
265
+ // Retry once with refreshed token
266
+ return this.request<T>(method, endpoint, body, { ...options, retryCount: 1 });
267
+ } catch (refreshError) {
268
+ throw new PersApiError(
269
+ `Authentication refresh failed: ${refreshError}`,
270
+ endpoint,
271
+ method,
272
+ 401
273
+ );
274
+ }
275
+ }
276
+
277
+ throw new PersApiError(
278
+ `PERS API request failed: ${error.message || error}`,
279
+ endpoint,
280
+ method,
281
+ error.status
282
+ );
283
+ }
284
+ }
285
+
286
+ /**
287
+ * Generic GET request
288
+ */
289
+ /*async get<T>(endpoint: string): Promise<T> {
290
+ return this.request<T>('GET', endpoint);
291
+ }
292
+
293
+ /**
294
+ * Generic POST request
295
+ */
296
+ /*async post<T>(endpoint: string, body?: any): Promise<T> {
297
+ return this.request<T>('POST', endpoint, body);
298
+ }
299
+
300
+ /**
301
+ * Generic PUT request
302
+ */
303
+ /*async put<T>(endpoint: string, body?: any): Promise<T> {
304
+ return this.request<T>('PUT', endpoint, body);
305
+ }
306
+
307
+ /**
308
+ * Generic DELETE request
309
+ */
310
+ /*async delete<T>(endpoint: string): Promise<T> {
311
+ return this.request<T>('DELETE', endpoint);
312
+ }
313
+
314
+ /**
315
+ * Get current configuration (returns merged config)
316
+ */
317
+ /*getConfig(): ReturnType<typeof mergeWithDefaults> {
318
+ return this.mergedConfig;
319
+ }
320
+
321
+ /**
322
+ * Get original user configuration
323
+ */
324
+ /*getOriginalConfig(): PersConfig {
325
+ return this.config;
326
+ }
327
+ }
328
+
329
+ export class PersApiError extends Error {
330
+ constructor(
331
+ message: string,
332
+ public endpoint: string,
333
+ public method: string,
334
+ public statusCode?: number
335
+ ) {
336
+ super(message);
337
+ this.name = 'PersApiError';
338
+ }
339
+ }*/
340
+
341
+ /**
342
+ * Creates a platform-agnostic AuthProvider from simple configuration
343
+ *
344
+ * This factory function is completely platform-agnostic and can be used
345
+ * across Angular, React, Vue, Node.js, or any other JavaScript environment.
346
+ *
347
+ * Features:
348
+ * - Token caching with refresh support
349
+ * - Automatic token refresh on expiration
350
+ * - Configurable token providers
351
+ * - Platform-independent (no localStorage assumptions)
352
+ *
353
+ * @param config - Simple auth configuration
354
+ * @returns AuthProvider implementation
355
+ */
356
+ function createAuthProvider(config) {
357
+ // Store current token for refresh scenarios and caching
358
+ let currentToken = config.token || null;
359
+ let isRefreshing = false; // Prevent concurrent refresh attempts
360
+ let refreshPromise = null;
361
+ return {
362
+ authType: config.authType || 'user',
363
+ async getToken() {
364
+ // If currently refreshing, wait for it to complete
365
+ if (isRefreshing && refreshPromise) {
366
+ await refreshPromise;
367
+ return currentToken;
368
+ }
369
+ // Use cached current token (updated after refresh)
370
+ if (currentToken) {
371
+ return currentToken;
372
+ }
373
+ // Custom token provider function (always fresh)
374
+ if (config.tokenProvider) {
375
+ const token = await config.tokenProvider();
376
+ currentToken = token; // Cache for future calls
377
+ return token;
378
+ }
379
+ // No token available
380
+ return null;
381
+ },
382
+ async getProjectKey() {
383
+ return config.projectKey || null;
384
+ },
385
+ async onTokenExpired() {
386
+ // Prevent concurrent refresh attempts
387
+ if (isRefreshing) {
388
+ if (refreshPromise) {
389
+ await refreshPromise;
390
+ }
391
+ return;
392
+ }
393
+ // No refresh logic provided
394
+ if (!config.onTokenExpired) {
395
+ console.warn('Token expired but no refresh logic provided');
396
+ currentToken = null; // Clear expired token
397
+ return;
398
+ }
399
+ // Start refresh process
400
+ isRefreshing = true;
401
+ refreshPromise = (async () => {
402
+ try {
403
+ // Execute refresh logic (should update token source)
404
+ await config.onTokenExpired();
405
+ // After refresh, get the new token
406
+ if (config.tokenProvider) {
407
+ const newToken = await config.tokenProvider();
408
+ if (newToken && newToken !== currentToken) {
409
+ currentToken = newToken;
410
+ // Notify about successful token refresh
411
+ if (config.onTokenRefreshed) {
412
+ config.onTokenRefreshed(newToken);
413
+ }
414
+ }
415
+ else {
416
+ console.warn('Token refresh completed but no new token received');
417
+ currentToken = null;
418
+ }
419
+ }
420
+ else {
421
+ // For static token configs, clear the token since we can't refresh
422
+ console.warn('Token expired for static token config - clearing token');
423
+ currentToken = null;
424
+ }
425
+ }
426
+ catch (error) {
427
+ console.error('Token refresh failed:', error);
428
+ currentToken = null; // Clear token on refresh failure
429
+ throw error; // Re-throw to let SDK handle the error
430
+ }
431
+ finally {
432
+ isRefreshing = false;
433
+ refreshPromise = null;
434
+ }
435
+ })();
436
+ await refreshPromise;
437
+ }
438
+ };
439
+ }
440
+ /**
441
+ * Platform-specific localStorage token provider for browsers
442
+ * This is a convenience function for browser environments
443
+ */
444
+ /* export function createBrowserTokenProvider(tokenKey: string = 'userJwt'): () => Promise<string | null> {
445
+ return async () => {
446
+ if (typeof localStorage !== 'undefined') {
447
+ return localStorage.getItem(tokenKey);
448
+ }
449
+ return null;
450
+ };
451
+ } */
452
+ /**
453
+ * Platform-specific environment variable token provider for Node.js
454
+ * This is a convenience function for Node.js environments
455
+ */
456
+ /* export function createNodeTokenProvider(envVar: string = 'JWT_TOKEN'): () => Promise<string | null> {
457
+ return async () => {
458
+ if (typeof process !== 'undefined' && process.env) {
459
+ return process.env[envVar] || null;
460
+ }
461
+ return null;
462
+ };
463
+ } */
464
+
465
+ /**
466
+ * PERS SDK - Minimal platform-agnostic client with built-in authentication
467
+ * Authentication is now handled at the SDK core level for better scalability
468
+ */
469
+ /**
470
+ * Minimal PERS SDK - API client with authentication built-in
471
+ * Platform adapters provide auth providers and HTTP clients
472
+ */
473
+ class PersSDK {
474
+ constructor(httpClient, config) {
475
+ this.apiClient = new PersApiClient(httpClient, config);
476
+ }
477
+ /**
478
+ * Get the API client for direct PERS API calls
479
+ * This is the main interface - keep it simple!
480
+ */
481
+ api() {
482
+ return this.apiClient;
483
+ }
484
+ /**
485
+ * Quick config check
486
+ */
487
+ isProduction() {
488
+ return this.apiClient.getConfig().environment === 'production';
489
+ }
490
+ }
491
+ /**
492
+ * Simple factory function
493
+ */
494
+ function createPersSDK(httpClient, config) {
495
+ return new PersSDK(httpClient, config);
496
+ }
497
+
498
+ exports.DEFAULT_PERS_CONFIG = DEFAULT_PERS_CONFIG;
499
+ exports.PersApiClient = PersApiClient;
500
+ exports.PersApiError = PersApiError;
501
+ exports.PersSDK = PersSDK;
502
+ exports.buildApiRoot = buildApiRoot;
503
+ exports.createAuthProvider = createAuthProvider;
504
+ exports.createPersSDK = createPersSDK;
505
+ exports.mergeWithDefaults = mergeWithDefaults;
506
+ //# sourceMappingURL=core.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.cjs","sources":["../../src/core/pers-config.ts","../../src/core/pers-api-client.ts","../../src/core/auth/create-auth-provider.ts","../../src/pers-sdk.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
package/dist/core.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @explorins/pers-sdk/core - Core SDK Entry Point
3
+ *
4
+ * Platform-agnostic PERS API client and core functionality
5
+ */
6
+ export * from './core/pers-api-client';
7
+ export * from './core/pers-config';
8
+ export type { PersEnvironment, PersApiVersion } from './core/pers-config';
9
+ export { PersAuthProvider, SimpleAuthConfig, createAuthProvider, } from './core/auth/auth-provider.interface';
10
+ export type { PersRequestOptions as AuthRequestOptions } from './core/auth/auth-provider.interface';
11
+ export * from './core/abstractions/http-client';
12
+ export { PersSDK, createPersSDK } from './core/pers-sdk';
13
+ //# sourceMappingURL=index.d.ts.map