@explorins/pers-sdk 1.1.0-beta.0 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) 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/dist/analytics/index.d.ts +28 -0
  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/{src/business/models/index.ts → dist/business/models/index.d.ts} +8 -13
  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/dist/donation/models/index.d.ts +8 -0
  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/dist/user/models/index.d.ts +12 -0
  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/dist/user-status/models/index.d.ts +8 -0
  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/dist/web3-chain/models/index.d.ts +38 -0
  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 +105 -17
  222. package/explorins-pers-sdk-1.0.0-alpha.1.tgz +0 -0
  223. package/rollup.config.js +0 -84
  224. package/src/business/api/business-api.ts +0 -72
  225. package/src/business/business/tsconfig.json +0 -18
  226. package/src/business/index.ts +0 -52
  227. package/src/business/services/business-service.ts +0 -88
  228. package/src/core/abstractions/core-interfaces.ts +0 -56
  229. package/src/core/abstractions/http-client.ts +0 -23
  230. package/src/core/auth/auth-provider.interface.ts +0 -16
  231. package/src/core/auth/create-auth-provider.ts +0 -136
  232. package/src/core/auth/simple-auth-config.interface.ts +0 -15
  233. package/src/core/core.ts +0 -30
  234. package/src/core/pers-api-client.ts +0 -151
  235. package/src/core/pers-config.ts +0 -38
  236. package/src/core.ts +0 -30
  237. package/src/index.ts +0 -16
  238. package/src/pers-sdk.ts +0 -45
  239. package/tsconfig.json +0 -28
@@ -0,0 +1,133 @@
1
+ import { PersApiClient } from '../../core/pers-api-client';
2
+ import { BusinessDTO, BusinessTypeDTO, BusinessUpdateRequestDTO, BusinessCreateRequestDTO, BusinessApiKeyDTO, BusinessTokenBalancesDTO, BusinessTypeCreateRequestDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
3
+ /**
4
+ * Platform-Agnostic Business API Client
5
+ *
6
+ * Updated to match the new RESTful /businesses endpoints.
7
+ * Uses @explorins/pers-shared DTOs for full type safety and consistency with backend.
8
+ */
9
+ export declare class BusinessApi {
10
+ private apiClient;
11
+ constructor(apiClient: PersApiClient);
12
+ private readonly basePath;
13
+ /**
14
+ * Get all business types (project key required)
15
+ *
16
+ * Endpoint: GET /businesses/types
17
+ * Auth: @ApiSecurity('projectKey')
18
+ */
19
+ getAllBusinessTypes(): Promise<BusinessTypeDTO[]>;
20
+ /**
21
+ * ADMIN: Create business type
22
+ *
23
+ * Endpoint: POST /businesses/types
24
+ * Auth: @TenantAdmin()
25
+ */
26
+ createBusinessType(dto: BusinessTypeCreateRequestDTO): Promise<BusinessTypeDTO>;
27
+ /**
28
+ * ADMIN: Update business type
29
+ *
30
+ * Endpoint: PUT /businesses/types
31
+ * Auth: @TenantAdmin()
32
+ */
33
+ updateBusinessType(dto: BusinessTypeDTO): Promise<BusinessTypeDTO>;
34
+ /**
35
+ * ADMIN: Delete business type
36
+ *
37
+ * Endpoint: DELETE /businesses/types/{id}
38
+ * Auth: @TenantAdmin()
39
+ */
40
+ deleteBusinessType(id: number): Promise<boolean>;
41
+ /**
42
+ * Get current business info (business authentication required)
43
+ *
44
+ * Endpoint: GET /businesses/me
45
+ * Auth: @Business()
46
+ */
47
+ getCurrentBusiness(): Promise<BusinessTokenBalancesDTO>;
48
+ /**
49
+ * Get all active businesses (project key required)
50
+ *
51
+ * Endpoint: GET /businesses
52
+ * Auth: @ApiSecurity('projectKey')
53
+ * Note: Regular users automatically get active businesses only
54
+ */
55
+ getActiveBusinesses(): Promise<BusinessDTO[]>;
56
+ /**
57
+ * Get all businesses with filtering (admin users can access inactive)
58
+ *
59
+ * Endpoint: GET /businesses?active={boolean}&sanitize={mode}
60
+ * Auth: @ApiSecurity('projectKey') (enhanced with role-based filtering)
61
+ */
62
+ getAllBusinesses(options?: {
63
+ active?: boolean;
64
+ sanitize?: 'soft' | 'hard';
65
+ }): Promise<BusinessDTO[]>;
66
+ /**
67
+ * ADMIN: Get all businesses (admin endpoint with full access)
68
+ *
69
+ * Endpoint: GET /businesses/admin
70
+ * Auth: @TenantAdmin()
71
+ */
72
+ getAllBusinessesAdmin(options?: {
73
+ active?: boolean;
74
+ sanitize?: 'soft' | 'hard';
75
+ }): Promise<BusinessDTO[]>;
76
+ /**
77
+ * Get business by ID
78
+ *
79
+ * Endpoint: GET /businesses/{id}
80
+ * Auth: @ApiSecurity('projectKey')
81
+ */
82
+ getBusinessById(businessId: string): Promise<BusinessDTO>;
83
+ /**
84
+ * Get business by account address
85
+ *
86
+ * Endpoint: GET /businesses/account/{accountAddress}
87
+ * Auth: @ApiSecurity('projectKey')
88
+ */
89
+ getBusinessByAccount(accountAddress: string): Promise<BusinessDTO>;
90
+ /**
91
+ * ADMIN: Create business
92
+ *
93
+ * Endpoint: POST /businesses
94
+ * Auth: @TenantAdmin()
95
+ * Returns: BusinessApiKeyDTO | BusinessTokenBalancesDTO
96
+ */
97
+ createBusiness(dto: BusinessCreateRequestDTO): Promise<BusinessApiKeyDTO | BusinessTokenBalancesDTO>;
98
+ /**
99
+ * ADMIN: Create business by display name (convenience method)
100
+ *
101
+ * This is a convenience wrapper that creates the proper DTO structure
102
+ */
103
+ createBusinessByDisplayName(displayName: string): Promise<BusinessApiKeyDTO | BusinessTokenBalancesDTO>;
104
+ /**
105
+ * ADMIN: Create businesses from URL
106
+ *
107
+ * Endpoint: POST /businesses/bulk/url
108
+ * Auth: @TenantAdmin()
109
+ */
110
+ createBusinessesFromUrl(url: string): Promise<BusinessDTO[]>;
111
+ /**
112
+ * ADMIN: Update business
113
+ *
114
+ * Endpoint: PUT /businesses/{id}
115
+ * Auth: @TenantAdmin()
116
+ */
117
+ updateBusiness(id: string, businessData: BusinessUpdateRequestDTO): Promise<BusinessDTO>;
118
+ /**
119
+ * ADMIN: Toggle business active status
120
+ *
121
+ * Endpoint: PUT /businesses/{id}/activate
122
+ * Auth: @TenantAdmin()
123
+ */
124
+ toggleBusinessActive(id: string, isActive: boolean): Promise<BusinessDTO>;
125
+ /**
126
+ * ADMIN: Generate new business API key
127
+ *
128
+ * Endpoint: PUT /businesses/{id}/api-key
129
+ * Auth: @TenantAdmin()
130
+ */
131
+ generateNewBusinessApiKey(id: string): Promise<string>;
132
+ }
133
+ //# sourceMappingURL=business-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business-api.d.ts","sourceRoot":"","sources":["../../../src/business/api/business-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,WAAW,EACX,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EAExB,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,oDAAoD,CAAC;AAE5D;;;;;GAKG;AACH,qBAAa,WAAW;IACV,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,aAAa;IAE5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAM1C;;;;;OAKG;IACG,mBAAmB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAIvD;;;;;OAKG;IACG,kBAAkB,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,eAAe,CAAC;IAIrF;;;;;OAKG;IACG,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAIxE;;;;;OAKG;IACG,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQtD;;;;;OAKG;IACG,kBAAkB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAI7D;;;;;;OAMG;IACG,mBAAmB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAInD;;;;;OAKG;IACG,gBAAgB,CAAC,OAAO,CAAC,EAAE;QAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB1B;;;;;OAKG;IACG,qBAAqB,CAAC,OAAO,CAAC,EAAE;QACpC,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAiB1B;;;;;OAKG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI/D;;;;;OAKG;IACG,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQxE;;;;;;OAMG;IACG,cAAc,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,iBAAiB,GAAG,wBAAwB,CAAC;IAI1G;;;;OAIG;IACG,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,wBAAwB,CAAC;IAS7G;;;;;OAKG;IACG,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAIlE;;;;;OAKG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,wBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC;IAI9F;;;;;OAKG;IACG,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;IAK/E;;;;;OAKG;IACG,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG7D"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @explorins/pers-sdk-business
3
+ *
4
+ * Platform-agnostic Business Domain SDK for PERS ecosystem
5
+ * Focuses on non-admin business operations
6
+ */
7
+ export { BusinessApi } from './api/business-api';
8
+ export { BusinessService } from './services/business-service';
9
+ export * from '../shared/interfaces/pers-shared-lib.interfaces';
10
+ import { BusinessUpdateRequestDTO } from '../shared/interfaces/pers-shared-lib.interfaces';
11
+ import { PersApiClient } from '../core/pers-api-client';
12
+ import { BusinessApi } from './api/business-api';
13
+ import { BusinessService } from './services/business-service';
14
+ /**
15
+ * Create a complete Business SDK instance
16
+ *
17
+ * @param apiClient - Configured PERS API client
18
+ * @returns Business SDK with flattened structure for better DX
19
+ */
20
+ export declare function createBusinessSDK(apiClient: PersApiClient): {
21
+ getActiveBusinesses: () => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO[]>;
22
+ getAllBusinessTypes: () => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business-type.dto").BusinessTypeDTO[]>;
23
+ getBusinessById: (businessId: string) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO>;
24
+ getBusinessByAccount: (accountAddress: string) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO>;
25
+ getBusinessesByType: (typeId: string) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO[]>;
26
+ getAllBusinesses: () => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO[]>;
27
+ createBusinessByDisplayName: (displayName: string) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO>;
28
+ updateBusiness: (id: string, businessData: BusinessUpdateRequestDTO) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO>;
29
+ toggleBusinessActive: (id: string, isActive: boolean) => Promise<import("@explorins/pers-shared/dist/cjs/dto/business/business.dto").BusinessDTO>;
30
+ api: BusinessApi;
31
+ service: BusinessService;
32
+ };
33
+ export type BusinessSDK = ReturnType<typeof createBusinessSDK>;
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,cAAc,iDAAiD,CAAC;AAEhE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAE3F,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,aAAa;;;kCAQxB,MAAM;2CACG,MAAM;kCACf,MAAM;;+CAIO,MAAM;yBAC5B,MAAM,gBAAgB,wBAAwB;+BACxC,MAAM,YAAY,OAAO;;;EAMvD;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,13 +1,8 @@
1
- /**
2
- * Business Domain Models
3
- *
4
- * Re-exports from @explorins/pers-shared for consistency with backend
5
- * and to provide a single import source for business-related types.
6
- */
7
-
8
- // Core business entities
9
- export type {
10
- BusinessDTO,
11
- BusinessTypeDTO,
12
- BusinessUpdateRequestDTO
13
- } from '@explorins/pers-shared';
1
+ /**
2
+ * Business Domain Models
3
+ *
4
+ * Re-exports from @explorins/pers-shared for consistency with backend
5
+ * and to provide a single import source for business-related types.
6
+ */
7
+ export type { BusinessDTO, BusinessTypeDTO, BusinessUpdateRequestDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/business/models/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,WAAW,EACX,eAAe,EACf,wBAAwB,EACzB,MAAM,oDAAoD,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { BusinessApi } from '../api/business-api';
2
+ import { BusinessDTO, BusinessTypeDTO, BusinessUpdateRequestDTO } from '../../shared/interfaces/pers-shared-lib.interfaces';
3
+ /**
4
+ * Platform-Agnostic Business Service
5
+ *
6
+ * Contains business logic and operations that work across platforms.
7
+ * No framework dependencies - pure TypeScript business logic.
8
+ *
9
+ * Focuses only on actual backend capabilities.
10
+ */
11
+ export declare class BusinessService {
12
+ private businessApi;
13
+ constructor(businessApi: BusinessApi);
14
+ /**
15
+ * Get all active businesses
16
+ */
17
+ getActiveBusinesses(): Promise<BusinessDTO[]>;
18
+ /**
19
+ * Get all business types
20
+ */
21
+ getAllBusinessTypes(): Promise<BusinessTypeDTO[]>;
22
+ /**
23
+ * Get business by ID
24
+ */
25
+ getBusinessById(businessId: string): Promise<BusinessDTO>;
26
+ /**
27
+ * Get business by account address
28
+ */
29
+ getBusinessByAccount(accountAddress: string): Promise<BusinessDTO>;
30
+ /**
31
+ * Get businesses by type (client-side filtering)
32
+ */
33
+ getBusinessesByType(typeId: string): Promise<BusinessDTO[]>;
34
+ /**
35
+ * ADMIN: Get all businesses (active and inactive)
36
+ */
37
+ getAllBusinesses(): Promise<BusinessDTO[]>;
38
+ /**
39
+ * ADMIN: Create business by display name
40
+ */
41
+ createBusinessByDisplayName(displayName: string): Promise<BusinessDTO>;
42
+ /**
43
+ * ADMIN: Update business
44
+ */
45
+ updateBusiness(id: string, businessData: BusinessUpdateRequestDTO): Promise<BusinessDTO>;
46
+ /**
47
+ * ADMIN: Toggle business active status
48
+ */
49
+ toggleBusinessActive(id: string, isActive: boolean): Promise<BusinessDTO>;
50
+ }
51
+ //# sourceMappingURL=business-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business-service.d.ts","sourceRoot":"","sources":["../../../src/business/services/business-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACL,WAAW,EACX,eAAe,EACf,wBAAwB,EACzB,MAAM,oDAAoD,CAAC;AAE5D;;;;;;;GAOG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAE5C;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAInD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAIvD;;OAEG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI/D;;OAEG;IACG,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIxE;;OAEG;IACG,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAWjE;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIhD;;OAEG;IACG,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI5E;;OAEG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,wBAAwB,GAAG,OAAO,CAAC,WAAW,CAAC;IAI9F;;OAEG;IACG,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC;CAGhF"}
@@ -0,0 +1,303 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Platform-Agnostic Business API Client
5
+ *
6
+ * Updated to match the new RESTful /businesses endpoints.
7
+ * Uses @explorins/pers-shared DTOs for full type safety and consistency with backend.
8
+ */
9
+ class BusinessApi {
10
+ constructor(apiClient) {
11
+ this.apiClient = apiClient;
12
+ this.basePath = '/businesses';
13
+ }
14
+ // ==========================================
15
+ // 🌐 BUSINESS TYPES MANAGEMENT
16
+ // ==========================================
17
+ /**
18
+ * Get all business types (project key required)
19
+ *
20
+ * Endpoint: GET /businesses/types
21
+ * Auth: @ApiSecurity('projectKey')
22
+ */
23
+ async getAllBusinessTypes() {
24
+ return this.apiClient.get(`${this.basePath}/types`);
25
+ }
26
+ /**
27
+ * ADMIN: Create business type
28
+ *
29
+ * Endpoint: POST /businesses/types
30
+ * Auth: @TenantAdmin()
31
+ */
32
+ async createBusinessType(dto) {
33
+ return this.apiClient.post(`${this.basePath}/types`, dto);
34
+ }
35
+ /**
36
+ * ADMIN: Update business type
37
+ *
38
+ * Endpoint: PUT /businesses/types
39
+ * Auth: @TenantAdmin()
40
+ */
41
+ async updateBusinessType(dto) {
42
+ return this.apiClient.put(`${this.basePath}/types`, dto);
43
+ }
44
+ /**
45
+ * ADMIN: Delete business type
46
+ *
47
+ * Endpoint: DELETE /businesses/types/{id}
48
+ * Auth: @TenantAdmin()
49
+ */
50
+ async deleteBusinessType(id) {
51
+ return this.apiClient.delete(`${this.basePath}/types/${id}`);
52
+ }
53
+ // ==========================================
54
+ // 🏢 BUSINESS MANAGEMENT
55
+ // ==========================================
56
+ /**
57
+ * Get current business info (business authentication required)
58
+ *
59
+ * Endpoint: GET /businesses/me
60
+ * Auth: @Business()
61
+ */
62
+ async getCurrentBusiness() {
63
+ return this.apiClient.get(`${this.basePath}/me`);
64
+ }
65
+ /**
66
+ * Get all active businesses (project key required)
67
+ *
68
+ * Endpoint: GET /businesses
69
+ * Auth: @ApiSecurity('projectKey')
70
+ * Note: Regular users automatically get active businesses only
71
+ */
72
+ async getActiveBusinesses() {
73
+ return this.apiClient.get(`${this.basePath}`);
74
+ }
75
+ /**
76
+ * Get all businesses with filtering (admin users can access inactive)
77
+ *
78
+ * Endpoint: GET /businesses?active={boolean}&sanitize={mode}
79
+ * Auth: @ApiSecurity('projectKey') (enhanced with role-based filtering)
80
+ */
81
+ async getAllBusinesses(options) {
82
+ const params = new URLSearchParams();
83
+ if (options?.active !== undefined) {
84
+ params.append('active', String(options.active));
85
+ }
86
+ if (options?.sanitize) {
87
+ params.append('sanitize', options.sanitize);
88
+ }
89
+ const queryString = params.toString();
90
+ const url = queryString ? `${this.basePath}?${queryString}` : this.basePath;
91
+ return this.apiClient.get(url);
92
+ }
93
+ /**
94
+ * ADMIN: Get all businesses (admin endpoint with full access)
95
+ *
96
+ * Endpoint: GET /businesses/admin
97
+ * Auth: @TenantAdmin()
98
+ */
99
+ async getAllBusinessesAdmin(options) {
100
+ const params = new URLSearchParams();
101
+ if (options?.active !== undefined) {
102
+ params.append('active', String(options.active));
103
+ }
104
+ if (options?.sanitize) {
105
+ params.append('sanitize', options.sanitize);
106
+ }
107
+ const queryString = params.toString();
108
+ const url = queryString ? `${this.basePath}?${queryString}` : this.basePath;
109
+ return this.apiClient.get(url);
110
+ }
111
+ /**
112
+ * Get business by ID
113
+ *
114
+ * Endpoint: GET /businesses/{id}
115
+ * Auth: @ApiSecurity('projectKey')
116
+ */
117
+ async getBusinessById(businessId) {
118
+ return this.apiClient.get(`${this.basePath}/${businessId}`);
119
+ }
120
+ /**
121
+ * Get business by account address
122
+ *
123
+ * Endpoint: GET /businesses/account/{accountAddress}
124
+ * Auth: @ApiSecurity('projectKey')
125
+ */
126
+ async getBusinessByAccount(accountAddress) {
127
+ return this.apiClient.get(`${this.basePath}/account/${accountAddress}`);
128
+ }
129
+ // ==========================================
130
+ // 🔧 ADMIN OPERATIONS
131
+ // ==========================================
132
+ /**
133
+ * ADMIN: Create business
134
+ *
135
+ * Endpoint: POST /businesses
136
+ * Auth: @TenantAdmin()
137
+ * Returns: BusinessApiKeyDTO | BusinessTokenBalancesDTO
138
+ */
139
+ async createBusiness(dto) {
140
+ return this.apiClient.post(`${this.basePath}`, dto);
141
+ }
142
+ /**
143
+ * ADMIN: Create business by display name (convenience method)
144
+ *
145
+ * This is a convenience wrapper that creates the proper DTO structure
146
+ */
147
+ async createBusinessByDisplayName(displayName) {
148
+ const dto = {
149
+ displayName,
150
+ // Add other required fields based on BusinessCreateRequestDTO structure
151
+ // You may need to check the DTO definition for required fields
152
+ };
153
+ return this.createBusiness(dto);
154
+ }
155
+ /**
156
+ * ADMIN: Create businesses from URL
157
+ *
158
+ * Endpoint: POST /businesses/bulk/url
159
+ * Auth: @TenantAdmin()
160
+ */
161
+ async createBusinessesFromUrl(url) {
162
+ return this.apiClient.post(`${this.basePath}/bulk/url`, { url });
163
+ }
164
+ /**
165
+ * ADMIN: Update business
166
+ *
167
+ * Endpoint: PUT /businesses/{id}
168
+ * Auth: @TenantAdmin()
169
+ */
170
+ async updateBusiness(id, businessData) {
171
+ return this.apiClient.put(`${this.basePath}/${id}`, businessData);
172
+ }
173
+ /**
174
+ * ADMIN: Toggle business active status
175
+ *
176
+ * Endpoint: PUT /businesses/{id}/activate
177
+ * Auth: @TenantAdmin()
178
+ */
179
+ async toggleBusinessActive(id, isActive) {
180
+ const dto = { isActive };
181
+ return this.apiClient.put(`${this.basePath}/${id}/status`, dto);
182
+ }
183
+ /**
184
+ * ADMIN: Generate new business API key
185
+ *
186
+ * Endpoint: PUT /businesses/{id}/api-key
187
+ * Auth: @TenantAdmin()
188
+ */
189
+ async generateNewBusinessApiKey(id) {
190
+ return this.apiClient.put(`${this.basePath}/${id}/api-key`, {});
191
+ }
192
+ }
193
+
194
+ /**
195
+ * Platform-Agnostic Business Service
196
+ *
197
+ * Contains business logic and operations that work across platforms.
198
+ * No framework dependencies - pure TypeScript business logic.
199
+ *
200
+ * Focuses only on actual backend capabilities.
201
+ */
202
+ class BusinessService {
203
+ constructor(businessApi) {
204
+ this.businessApi = businessApi;
205
+ }
206
+ /**
207
+ * Get all active businesses
208
+ */
209
+ async getActiveBusinesses() {
210
+ return this.businessApi.getActiveBusinesses();
211
+ }
212
+ /**
213
+ * Get all business types
214
+ */
215
+ async getAllBusinessTypes() {
216
+ return this.businessApi.getAllBusinessTypes();
217
+ }
218
+ /**
219
+ * Get business by ID
220
+ */
221
+ async getBusinessById(businessId) {
222
+ return this.businessApi.getBusinessById(businessId);
223
+ }
224
+ /**
225
+ * Get business by account address
226
+ */
227
+ async getBusinessByAccount(accountAddress) {
228
+ return this.businessApi.getBusinessByAccount(accountAddress);
229
+ }
230
+ /**
231
+ * Get businesses by type (client-side filtering)
232
+ */
233
+ async getBusinessesByType(typeId) {
234
+ const businesses = await this.getActiveBusinesses();
235
+ return businesses.filter(business => business.businessType && business.businessType.id === parseInt(typeId));
236
+ }
237
+ // ==========================================
238
+ // ADMIN OPERATIONS
239
+ // ==========================================
240
+ /**
241
+ * ADMIN: Get all businesses (active and inactive)
242
+ */
243
+ async getAllBusinesses() {
244
+ return this.businessApi.getAllBusinesses();
245
+ }
246
+ /**
247
+ * ADMIN: Create business by display name
248
+ */
249
+ async createBusinessByDisplayName(displayName) {
250
+ return this.businessApi.createBusinessByDisplayName(displayName);
251
+ }
252
+ /**
253
+ * ADMIN: Update business
254
+ */
255
+ async updateBusiness(id, businessData) {
256
+ return this.businessApi.updateBusiness(id, businessData);
257
+ }
258
+ /**
259
+ * ADMIN: Toggle business active status
260
+ */
261
+ async toggleBusinessActive(id, isActive) {
262
+ return this.businessApi.toggleBusinessActive(id, isActive);
263
+ }
264
+ }
265
+
266
+ /**
267
+ * @explorins/pers-sdk-business
268
+ *
269
+ * Platform-agnostic Business Domain SDK for PERS ecosystem
270
+ * Focuses on non-admin business operations
271
+ */
272
+ // API Layer
273
+ /**
274
+ * Create a complete Business SDK instance
275
+ *
276
+ * @param apiClient - Configured PERS API client
277
+ * @returns Business SDK with flattened structure for better DX
278
+ */
279
+ function createBusinessSDK(apiClient) {
280
+ const businessApi = new BusinessApi(apiClient);
281
+ const businessService = new BusinessService(businessApi);
282
+ return {
283
+ // Direct access to service methods (primary interface)
284
+ getActiveBusinesses: () => businessService.getActiveBusinesses(),
285
+ getAllBusinessTypes: () => businessService.getAllBusinessTypes(),
286
+ getBusinessById: (businessId) => businessService.getBusinessById(businessId),
287
+ getBusinessByAccount: (accountAddress) => businessService.getBusinessByAccount(accountAddress),
288
+ getBusinessesByType: (typeId) => businessService.getBusinessesByType(typeId),
289
+ // Admin methods
290
+ getAllBusinesses: () => businessService.getAllBusinesses(),
291
+ createBusinessByDisplayName: (displayName) => businessService.createBusinessByDisplayName(displayName),
292
+ updateBusiness: (id, businessData) => businessService.updateBusiness(id, businessData),
293
+ toggleBusinessActive: (id, isActive) => businessService.toggleBusinessActive(id, isActive),
294
+ // Advanced access for edge cases
295
+ api: businessApi,
296
+ service: businessService
297
+ };
298
+ }
299
+
300
+ exports.BusinessApi = BusinessApi;
301
+ exports.BusinessService = BusinessService;
302
+ exports.createBusinessSDK = createBusinessSDK;
303
+ //# sourceMappingURL=business.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business.cjs","sources":["../../src/business/api/business-api.ts","../../src/business/services/business-service.ts","../../src/business/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @explorins/pers-sdk-business
3
+ *
4
+ * Platform-agnostic Business Domain SDK for PERS ecosystem
5
+ * Focuses on non-admin business operations
6
+ */
7
+ export { BusinessApi } from './business/api/business-api';
8
+ export { BusinessService } from './business/services/business-service';
9
+ export * from './shared/interfaces/pers-shared-lib.interfaces';
10
+ import { BusinessUpdateRequestDTO } from './shared/interfaces/pers-shared-lib.interfaces';
11
+ import { PersApiClient } from './core/pers-api-client';
12
+ import { BusinessApi } from './business/api/business-api';
13
+ import { BusinessService } from './business/services/business-service';
14
+ /**
15
+ * Create a complete Business SDK instance
16
+ *
17
+ * @param apiClient - Configured PERS API client
18
+ * @returns Business SDK with flattened structure for better DX
19
+ */
20
+ export declare function createBusinessSDK(apiClient: PersApiClient): {
21
+ getActiveBusinesses: () => Promise<BusinessDTO[]>;
22
+ getAllBusinessTypes: () => Promise<BusinessTypeDTO[]>;
23
+ getBusinessById: (businessId: string) => Promise<BusinessDTO>;
24
+ getBusinessByAccount: (accountAddress: string) => Promise<BusinessDTO>;
25
+ getBusinessesByType: (typeId: string) => Promise<BusinessDTO[]>;
26
+ getAllBusinesses: () => Promise<BusinessDTO[]>;
27
+ createBusinessByDisplayName: (displayName: string) => Promise<BusinessDTO>;
28
+ updateBusiness: (id: string, businessData: BusinessUpdateRequestDTO) => Promise<BusinessDTO>;
29
+ toggleBusinessActive: (id: string, isActive: boolean) => Promise<BusinessDTO>;
30
+ api: BusinessApi;
31
+ service: BusinessService;
32
+ };
33
+ export type BusinessSDK = ReturnType<typeof createBusinessSDK>;
34
+ //# sourceMappingURL=index.d.ts.map