@cranberry-money/shared-services 1.13.0 → 3.0.1

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 (453) hide show
  1. package/CHANGELOG.md +240 -0
  2. package/README.md +464 -190
  3. package/dist/api/functional-client.d.ts +66 -0
  4. package/dist/api/functional-client.d.ts.map +1 -0
  5. package/dist/api/functional-client.js +165 -0
  6. package/dist/auth/functional/auth-operations.d.ts +116 -0
  7. package/dist/auth/functional/auth-operations.d.ts.map +1 -0
  8. package/dist/auth/functional/auth-operations.js +246 -0
  9. package/dist/auth/functional/auth-state.d.ts +38 -0
  10. package/dist/auth/functional/auth-state.d.ts.map +1 -0
  11. package/dist/auth/functional/auth-state.js +87 -0
  12. package/dist/auth/functional/token-storage.d.ts +44 -0
  13. package/dist/auth/functional/token-storage.d.ts.map +1 -0
  14. package/dist/auth/functional/token-storage.js +178 -0
  15. package/dist/auth/react/AuthProvider.d.ts +92 -0
  16. package/dist/auth/react/AuthProvider.d.ts.map +1 -0
  17. package/dist/auth/react/AuthProvider.js +207 -0
  18. package/dist/index.d.ts +25 -35
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +114 -42
  21. package/dist/integration/blueberry-integration.d.ts +21 -0
  22. package/dist/integration/blueberry-integration.d.ts.map +1 -0
  23. package/dist/integration/blueberry-integration.js +109 -0
  24. package/dist/integration/index.d.ts +8 -0
  25. package/dist/integration/index.d.ts.map +1 -0
  26. package/dist/integration/index.js +18 -0
  27. package/dist/services/accounts.d.ts +220 -0
  28. package/dist/services/accounts.d.ts.map +1 -0
  29. package/dist/services/accounts.js +175 -0
  30. package/dist/services/banks.d.ts +123 -0
  31. package/dist/services/banks.d.ts.map +1 -0
  32. package/dist/services/banks.js +151 -0
  33. package/dist/services/cash-accounts.d.ts +112 -0
  34. package/dist/services/cash-accounts.d.ts.map +1 -0
  35. package/dist/services/cash-accounts.js +222 -0
  36. package/dist/services/documents.d.ts +143 -0
  37. package/dist/services/documents.d.ts.map +1 -0
  38. package/dist/services/documents.js +253 -0
  39. package/dist/services/factories/account-factory.d.ts +16 -0
  40. package/dist/services/factories/account-factory.d.ts.map +1 -0
  41. package/dist/services/factories/account-factory.js +79 -0
  42. package/dist/services/factories/auth-factory.d.ts +23 -0
  43. package/dist/services/factories/auth-factory.d.ts.map +1 -0
  44. package/dist/services/factories/auth-factory.js +75 -0
  45. package/dist/services/factories/bank-factory.d.ts +16 -0
  46. package/dist/services/factories/bank-factory.d.ts.map +1 -0
  47. package/dist/services/factories/bank-factory.js +72 -0
  48. package/dist/services/factories/cash-account-factory.d.ts +16 -0
  49. package/dist/services/factories/cash-account-factory.d.ts.map +1 -0
  50. package/dist/services/factories/cash-account-factory.js +74 -0
  51. package/dist/services/factories/document-factory.d.ts +16 -0
  52. package/dist/services/factories/document-factory.d.ts.map +1 -0
  53. package/dist/services/factories/document-factory.js +85 -0
  54. package/dist/services/factories/index.d.ts +21 -0
  55. package/dist/services/factories/index.d.ts.map +1 -0
  56. package/dist/services/factories/index.js +40 -0
  57. package/dist/services/factories/instrument-factory.d.ts +16 -0
  58. package/dist/services/factories/instrument-factory.d.ts.map +1 -0
  59. package/dist/services/factories/instrument-factory.js +68 -0
  60. package/dist/services/factories/master-factory.d.ts +74 -0
  61. package/dist/services/factories/master-factory.d.ts.map +1 -0
  62. package/dist/services/factories/master-factory.js +183 -0
  63. package/dist/services/factories/portfolio-factory.d.ts +16 -0
  64. package/dist/services/factories/portfolio-factory.d.ts.map +1 -0
  65. package/dist/services/factories/portfolio-factory.js +74 -0
  66. package/dist/services/factories/portfolio-template-factory.d.ts +16 -0
  67. package/dist/services/factories/portfolio-template-factory.d.ts.map +1 -0
  68. package/dist/services/factories/portfolio-template-factory.js +76 -0
  69. package/dist/services/factories/reference-data-factory.d.ts +16 -0
  70. package/dist/services/factories/reference-data-factory.d.ts.map +1 -0
  71. package/dist/services/factories/reference-data-factory.js +86 -0
  72. package/dist/services/factories/tax-residency-factory.d.ts +16 -0
  73. package/dist/services/factories/tax-residency-factory.d.ts.map +1 -0
  74. package/dist/services/factories/tax-residency-factory.js +73 -0
  75. package/dist/services/factories/trade-factory.d.ts +16 -0
  76. package/dist/services/factories/trade-factory.d.ts.map +1 -0
  77. package/dist/services/factories/trade-factory.js +79 -0
  78. package/dist/services/factories/types.d.ts +250 -0
  79. package/dist/services/factories/types.d.ts.map +1 -0
  80. package/dist/services/factories/types.js +32 -0
  81. package/dist/services/factories/withdrawal-factory.d.ts +16 -0
  82. package/dist/services/factories/withdrawal-factory.d.ts.map +1 -0
  83. package/dist/services/factories/withdrawal-factory.js +78 -0
  84. package/dist/services/instruments.d.ts +138 -0
  85. package/dist/services/instruments.d.ts.map +1 -0
  86. package/dist/services/instruments.js +178 -0
  87. package/dist/services/portfolio-templates.d.ts +142 -0
  88. package/dist/services/portfolio-templates.d.ts.map +1 -0
  89. package/dist/services/portfolio-templates.js +201 -0
  90. package/dist/services/portfolios.d.ts +157 -0
  91. package/dist/services/portfolios.d.ts.map +1 -0
  92. package/dist/services/portfolios.js +144 -0
  93. package/dist/services/reference-data.d.ts +185 -0
  94. package/dist/services/reference-data.d.ts.map +1 -0
  95. package/dist/services/reference-data.js +245 -0
  96. package/dist/services/tax-residencies.d.ts +83 -0
  97. package/dist/services/tax-residencies.d.ts.map +1 -0
  98. package/dist/services/tax-residencies.js +179 -0
  99. package/dist/services/trades.d.ts +190 -0
  100. package/dist/services/trades.d.ts.map +1 -0
  101. package/dist/services/trades.js +207 -0
  102. package/dist/services/withdrawals.d.ts +236 -0
  103. package/dist/services/withdrawals.d.ts.map +1 -0
  104. package/dist/services/withdrawals.js +345 -0
  105. package/package.json +39 -16
  106. package/dist/adapters/MobileApiClient.d.ts +0 -68
  107. package/dist/adapters/MobileApiClient.d.ts.map +0 -1
  108. package/dist/adapters/MobileApiClient.js +0 -240
  109. package/dist/adapters/MobileTokenStorage.d.ts +0 -43
  110. package/dist/adapters/MobileTokenStorage.d.ts.map +0 -1
  111. package/dist/adapters/MobileTokenStorage.js +0 -128
  112. package/dist/adapters/WebApiClient.d.ts +0 -28
  113. package/dist/adapters/WebApiClient.d.ts.map +0 -1
  114. package/dist/adapters/WebApiClient.js +0 -119
  115. package/dist/adapters/WebTokenStorage.d.ts +0 -38
  116. package/dist/adapters/WebTokenStorage.d.ts.map +0 -1
  117. package/dist/adapters/WebTokenStorage.js +0 -86
  118. package/dist/api/apiClient.d.ts +0 -31
  119. package/dist/api/apiClient.d.ts.map +0 -1
  120. package/dist/api/apiClient.js +0 -49
  121. package/dist/api/types.d.ts +0 -51
  122. package/dist/api/types.d.ts.map +0 -1
  123. package/dist/api/types.js +0 -4
  124. package/dist/auth/AuthManager.d.ts +0 -81
  125. package/dist/auth/AuthManager.d.ts.map +0 -1
  126. package/dist/auth/AuthManager.js +0 -223
  127. package/dist/auth/createAuthManager.d.ts +0 -63
  128. package/dist/auth/createAuthManager.d.ts.map +0 -1
  129. package/dist/auth/createAuthManager.js +0 -103
  130. package/dist/auth/useAuthManager.d.ts +0 -66
  131. package/dist/auth/useAuthManager.d.ts.map +0 -1
  132. package/dist/auth/useAuthManager.js +0 -133
  133. package/dist/config/serviceConfig.d.ts +0 -37
  134. package/dist/config/serviceConfig.d.ts.map +0 -1
  135. package/dist/config/serviceConfig.js +0 -70
  136. package/dist/core/BaseApiClient.d.ts +0 -82
  137. package/dist/core/BaseApiClient.d.ts.map +0 -1
  138. package/dist/core/BaseApiClient.js +0 -89
  139. package/dist/core/TokenStorage.d.ts +0 -45
  140. package/dist/core/TokenStorage.d.ts.map +0 -1
  141. package/dist/core/TokenStorage.js +0 -23
  142. package/dist/query/QueryClient.d.ts +0 -82
  143. package/dist/query/QueryClient.d.ts.map +0 -1
  144. package/dist/query/QueryClient.js +0 -136
  145. package/dist/query/useAuth.d.ts +0 -64
  146. package/dist/query/useAuth.d.ts.map +0 -1
  147. package/dist/query/useAuth.js +0 -144
  148. package/dist/query/usePortfolios.d.ts +0 -79
  149. package/dist/query/usePortfolios.d.ts.map +0 -1
  150. package/dist/query/usePortfolios.js +0 -172
  151. package/dist/services/AuthService.d.ts +0 -75
  152. package/dist/services/AuthService.d.ts.map +0 -1
  153. package/dist/services/AuthService.js +0 -83
  154. package/dist/services/BaseService.d.ts +0 -48
  155. package/dist/services/BaseService.d.ts.map +0 -1
  156. package/dist/services/BaseService.js +0 -51
  157. package/dist/services/PortfolioService.d.ts +0 -100
  158. package/dist/services/PortfolioService.d.ts.map +0 -1
  159. package/dist/services/PortfolioService.js +0 -68
  160. package/dist/services/accounts/constants.d.ts +0 -24
  161. package/dist/services/accounts/constants.d.ts.map +0 -1
  162. package/dist/services/accounts/constants.js +0 -30
  163. package/dist/services/accounts/index.d.ts +0 -7
  164. package/dist/services/accounts/index.d.ts.map +0 -1
  165. package/dist/services/accounts/index.js +0 -6
  166. package/dist/services/accounts/service.d.ts +0 -11
  167. package/dist/services/accounts/service.d.ts.map +0 -1
  168. package/dist/services/accounts/service.js +0 -19
  169. package/dist/services/accounts/types.d.ts +0 -15
  170. package/dist/services/accounts/types.d.ts.map +0 -1
  171. package/dist/services/accounts/types.js +0 -4
  172. package/dist/services/auth/constants.d.ts +0 -30
  173. package/dist/services/auth/constants.d.ts.map +0 -1
  174. package/dist/services/auth/constants.js +0 -37
  175. package/dist/services/auth/index.d.ts +0 -8
  176. package/dist/services/auth/index.d.ts.map +0 -1
  177. package/dist/services/auth/index.js +0 -7
  178. package/dist/services/auth/service.d.ts +0 -8
  179. package/dist/services/auth/service.d.ts.map +0 -1
  180. package/dist/services/auth/service.js +0 -23
  181. package/dist/services/auth/types.d.ts +0 -38
  182. package/dist/services/auth/types.d.ts.map +0 -1
  183. package/dist/services/auth/types.js +0 -1
  184. package/dist/services/auth/utils.d.ts +0 -46
  185. package/dist/services/auth/utils.d.ts.map +0 -1
  186. package/dist/services/auth/utils.js +0 -113
  187. package/dist/services/banks/constants.d.ts +0 -47
  188. package/dist/services/banks/constants.d.ts.map +0 -1
  189. package/dist/services/banks/constants.js +0 -98
  190. package/dist/services/banks/index.d.ts +0 -8
  191. package/dist/services/banks/index.d.ts.map +0 -1
  192. package/dist/services/banks/index.js +0 -7
  193. package/dist/services/banks/service.d.ts +0 -9
  194. package/dist/services/banks/service.d.ts.map +0 -1
  195. package/dist/services/banks/service.js +0 -38
  196. package/dist/services/banks/types.d.ts +0 -36
  197. package/dist/services/banks/types.d.ts.map +0 -1
  198. package/dist/services/banks/types.js +0 -4
  199. package/dist/services/cash_accounts/constants.d.ts +0 -7
  200. package/dist/services/cash_accounts/constants.d.ts.map +0 -1
  201. package/dist/services/cash_accounts/constants.js +0 -7
  202. package/dist/services/cash_accounts/index.d.ts +0 -5
  203. package/dist/services/cash_accounts/index.d.ts.map +0 -1
  204. package/dist/services/cash_accounts/index.js +0 -6
  205. package/dist/services/cash_accounts/service.d.ts +0 -8
  206. package/dist/services/cash_accounts/service.d.ts.map +0 -1
  207. package/dist/services/cash_accounts/service.js +0 -32
  208. package/dist/services/cash_accounts/transactions/constants.d.ts +0 -18
  209. package/dist/services/cash_accounts/transactions/constants.d.ts.map +0 -1
  210. package/dist/services/cash_accounts/transactions/constants.js +0 -25
  211. package/dist/services/cash_accounts/transactions/index.d.ts +0 -5
  212. package/dist/services/cash_accounts/transactions/index.d.ts.map +0 -1
  213. package/dist/services/cash_accounts/transactions/index.js +0 -6
  214. package/dist/services/cash_accounts/transactions/service.d.ts +0 -13
  215. package/dist/services/cash_accounts/transactions/service.d.ts.map +0 -1
  216. package/dist/services/cash_accounts/transactions/service.js +0 -75
  217. package/dist/services/cash_accounts/transactions/types.d.ts +0 -38
  218. package/dist/services/cash_accounts/transactions/types.d.ts.map +0 -1
  219. package/dist/services/cash_accounts/transactions/types.js +0 -11
  220. package/dist/services/cash_accounts/types.d.ts +0 -24
  221. package/dist/services/cash_accounts/types.d.ts.map +0 -1
  222. package/dist/services/cash_accounts/types.js +0 -4
  223. package/dist/services/countries/constants.d.ts +0 -9
  224. package/dist/services/countries/constants.d.ts.map +0 -1
  225. package/dist/services/countries/constants.js +0 -10
  226. package/dist/services/countries/index.d.ts +0 -5
  227. package/dist/services/countries/index.d.ts.map +0 -1
  228. package/dist/services/countries/index.js +0 -6
  229. package/dist/services/countries/service.d.ts +0 -18
  230. package/dist/services/countries/service.d.ts.map +0 -1
  231. package/dist/services/countries/service.js +0 -32
  232. package/dist/services/countries/types.d.ts +0 -24
  233. package/dist/services/countries/types.d.ts.map +0 -1
  234. package/dist/services/countries/types.js +0 -1
  235. package/dist/services/countries/utils.d.ts +0 -38
  236. package/dist/services/countries/utils.d.ts.map +0 -1
  237. package/dist/services/countries/utils.js +0 -62
  238. package/dist/services/documents/constants.d.ts +0 -55
  239. package/dist/services/documents/constants.d.ts.map +0 -1
  240. package/dist/services/documents/constants.js +0 -50
  241. package/dist/services/documents/index.d.ts +0 -6
  242. package/dist/services/documents/index.d.ts.map +0 -1
  243. package/dist/services/documents/index.js +0 -6
  244. package/dist/services/documents/service.d.ts +0 -50
  245. package/dist/services/documents/service.d.ts.map +0 -1
  246. package/dist/services/documents/service.js +0 -116
  247. package/dist/services/documents/types.d.ts +0 -47
  248. package/dist/services/documents/types.d.ts.map +0 -1
  249. package/dist/services/documents/types.js +0 -1
  250. package/dist/services/documents/utils.d.ts +0 -26
  251. package/dist/services/documents/utils.d.ts.map +0 -1
  252. package/dist/services/documents/utils.js +0 -37
  253. package/dist/services/industries/constants.d.ts +0 -8
  254. package/dist/services/industries/constants.d.ts.map +0 -1
  255. package/dist/services/industries/constants.js +0 -9
  256. package/dist/services/industries/index.d.ts +0 -6
  257. package/dist/services/industries/index.d.ts.map +0 -1
  258. package/dist/services/industries/index.js +0 -6
  259. package/dist/services/industries/service.d.ts +0 -18
  260. package/dist/services/industries/service.d.ts.map +0 -1
  261. package/dist/services/industries/service.js +0 -43
  262. package/dist/services/industries/types.d.ts +0 -21
  263. package/dist/services/industries/types.d.ts.map +0 -1
  264. package/dist/services/industries/types.js +0 -1
  265. package/dist/services/industries/utils.d.ts +0 -47
  266. package/dist/services/industries/utils.d.ts.map +0 -1
  267. package/dist/services/industries/utils.js +0 -86
  268. package/dist/services/instruments/constants.d.ts +0 -38
  269. package/dist/services/instruments/constants.d.ts.map +0 -1
  270. package/dist/services/instruments/constants.js +0 -36
  271. package/dist/services/instruments/index.d.ts +0 -5
  272. package/dist/services/instruments/index.d.ts.map +0 -1
  273. package/dist/services/instruments/index.js +0 -6
  274. package/dist/services/instruments/service.d.ts +0 -54
  275. package/dist/services/instruments/service.d.ts.map +0 -1
  276. package/dist/services/instruments/service.js +0 -106
  277. package/dist/services/instruments/types.d.ts +0 -83
  278. package/dist/services/instruments/types.d.ts.map +0 -1
  279. package/dist/services/instruments/types.js +0 -1
  280. package/dist/services/instruments/utils.d.ts +0 -50
  281. package/dist/services/instruments/utils.d.ts.map +0 -1
  282. package/dist/services/instruments/utils.js +0 -111
  283. package/dist/services/portfolio_templates/constants.d.ts +0 -8
  284. package/dist/services/portfolio_templates/constants.d.ts.map +0 -1
  285. package/dist/services/portfolio_templates/constants.js +0 -8
  286. package/dist/services/portfolio_templates/index.d.ts +0 -5
  287. package/dist/services/portfolio_templates/index.d.ts.map +0 -1
  288. package/dist/services/portfolio_templates/index.js +0 -5
  289. package/dist/services/portfolio_templates/service.d.ts +0 -6
  290. package/dist/services/portfolio_templates/service.d.ts.map +0 -1
  291. package/dist/services/portfolio_templates/service.js +0 -14
  292. package/dist/services/portfolio_templates/types.d.ts +0 -49
  293. package/dist/services/portfolio_templates/types.d.ts.map +0 -1
  294. package/dist/services/portfolio_templates/types.js +0 -1
  295. package/dist/services/portfolio_templates/utils.d.ts +0 -8
  296. package/dist/services/portfolio_templates/utils.d.ts.map +0 -1
  297. package/dist/services/portfolio_templates/utils.js +0 -13
  298. package/dist/services/portfolios/allocations/index.d.ts +0 -7
  299. package/dist/services/portfolios/allocations/index.d.ts.map +0 -1
  300. package/dist/services/portfolios/allocations/index.js +0 -6
  301. package/dist/services/portfolios/allocations/service.d.ts +0 -6
  302. package/dist/services/portfolios/allocations/service.d.ts.map +0 -1
  303. package/dist/services/portfolios/allocations/service.js +0 -19
  304. package/dist/services/portfolios/allocations/types.d.ts +0 -17
  305. package/dist/services/portfolios/allocations/types.d.ts.map +0 -1
  306. package/dist/services/portfolios/allocations/types.js +0 -4
  307. package/dist/services/portfolios/allocations/utils.d.ts +0 -3
  308. package/dist/services/portfolios/allocations/utils.d.ts.map +0 -1
  309. package/dist/services/portfolios/allocations/utils.js +0 -7
  310. package/dist/services/portfolios/constants.d.ts +0 -45
  311. package/dist/services/portfolios/constants.d.ts.map +0 -1
  312. package/dist/services/portfolios/constants.js +0 -57
  313. package/dist/services/portfolios/holdings/index.d.ts +0 -7
  314. package/dist/services/portfolios/holdings/index.d.ts.map +0 -1
  315. package/dist/services/portfolios/holdings/index.js +0 -6
  316. package/dist/services/portfolios/holdings/service.d.ts +0 -10
  317. package/dist/services/portfolios/holdings/service.d.ts.map +0 -1
  318. package/dist/services/portfolios/holdings/service.js +0 -53
  319. package/dist/services/portfolios/holdings/types.d.ts +0 -42
  320. package/dist/services/portfolios/holdings/types.d.ts.map +0 -1
  321. package/dist/services/portfolios/holdings/types.js +0 -4
  322. package/dist/services/portfolios/holdings/utils.d.ts +0 -8
  323. package/dist/services/portfolios/holdings/utils.d.ts.map +0 -1
  324. package/dist/services/portfolios/holdings/utils.js +0 -82
  325. package/dist/services/portfolios/index.d.ts +0 -10
  326. package/dist/services/portfolios/index.d.ts.map +0 -1
  327. package/dist/services/portfolios/index.js +0 -10
  328. package/dist/services/portfolios/service.d.ts +0 -7
  329. package/dist/services/portfolios/service.d.ts.map +0 -1
  330. package/dist/services/portfolios/service.js +0 -19
  331. package/dist/services/portfolios/types.d.ts +0 -29
  332. package/dist/services/portfolios/types.d.ts.map +0 -1
  333. package/dist/services/portfolios/types.js +0 -1
  334. package/dist/services/portfolios/utils.d.ts +0 -5
  335. package/dist/services/portfolios/utils.d.ts.map +0 -1
  336. package/dist/services/portfolios/utils.js +0 -26
  337. package/dist/services/sectors/constants.d.ts +0 -7
  338. package/dist/services/sectors/constants.d.ts.map +0 -1
  339. package/dist/services/sectors/constants.js +0 -7
  340. package/dist/services/sectors/index.d.ts +0 -6
  341. package/dist/services/sectors/index.d.ts.map +0 -1
  342. package/dist/services/sectors/index.js +0 -6
  343. package/dist/services/sectors/service.d.ts +0 -14
  344. package/dist/services/sectors/service.d.ts.map +0 -1
  345. package/dist/services/sectors/service.js +0 -32
  346. package/dist/services/sectors/types.d.ts +0 -19
  347. package/dist/services/sectors/types.d.ts.map +0 -1
  348. package/dist/services/sectors/types.js +0 -1
  349. package/dist/services/sectors/utils.d.ts +0 -31
  350. package/dist/services/sectors/utils.d.ts.map +0 -1
  351. package/dist/services/sectors/utils.js +0 -54
  352. package/dist/services/stock_exchanges/constants.d.ts +0 -7
  353. package/dist/services/stock_exchanges/constants.d.ts.map +0 -1
  354. package/dist/services/stock_exchanges/constants.js +0 -7
  355. package/dist/services/stock_exchanges/index.d.ts +0 -6
  356. package/dist/services/stock_exchanges/index.d.ts.map +0 -1
  357. package/dist/services/stock_exchanges/index.js +0 -6
  358. package/dist/services/stock_exchanges/service.d.ts +0 -4
  359. package/dist/services/stock_exchanges/service.d.ts.map +0 -1
  360. package/dist/services/stock_exchanges/service.js +0 -26
  361. package/dist/services/stock_exchanges/types.d.ts +0 -28
  362. package/dist/services/stock_exchanges/types.d.ts.map +0 -1
  363. package/dist/services/stock_exchanges/types.js +0 -1
  364. package/dist/services/stock_exchanges/utils.d.ts +0 -8
  365. package/dist/services/stock_exchanges/utils.d.ts.map +0 -1
  366. package/dist/services/stock_exchanges/utils.js +0 -37
  367. package/dist/services/tax_residencies/constants.d.ts +0 -7
  368. package/dist/services/tax_residencies/constants.d.ts.map +0 -1
  369. package/dist/services/tax_residencies/constants.js +0 -7
  370. package/dist/services/tax_residencies/index.d.ts +0 -10
  371. package/dist/services/tax_residencies/index.d.ts.map +0 -1
  372. package/dist/services/tax_residencies/index.js +0 -11
  373. package/dist/services/tax_residencies/service.d.ts +0 -6
  374. package/dist/services/tax_residencies/service.d.ts.map +0 -1
  375. package/dist/services/tax_residencies/service.js +0 -20
  376. package/dist/services/tax_residencies/types.d.ts +0 -26
  377. package/dist/services/tax_residencies/types.d.ts.map +0 -1
  378. package/dist/services/tax_residencies/types.js +0 -4
  379. package/dist/services/tax_residencies/utils.d.ts +0 -9
  380. package/dist/services/tax_residencies/utils.d.ts.map +0 -1
  381. package/dist/services/tax_residencies/utils.js +0 -19
  382. package/dist/services/trades/constants.d.ts +0 -47
  383. package/dist/services/trades/constants.d.ts.map +0 -1
  384. package/dist/services/trades/constants.js +0 -61
  385. package/dist/services/trades/index.d.ts +0 -4
  386. package/dist/services/trades/index.d.ts.map +0 -1
  387. package/dist/services/trades/index.js +0 -12
  388. package/dist/services/trades/service.d.ts +0 -19
  389. package/dist/services/trades/service.d.ts.map +0 -1
  390. package/dist/services/trades/service.js +0 -177
  391. package/dist/services/trades/types.d.ts +0 -114
  392. package/dist/services/trades/types.d.ts.map +0 -1
  393. package/dist/services/trades/types.js +0 -1
  394. package/dist/services/users/constants.d.ts +0 -7
  395. package/dist/services/users/constants.d.ts.map +0 -1
  396. package/dist/services/users/constants.js +0 -8
  397. package/dist/services/users/index.d.ts +0 -9
  398. package/dist/services/users/index.d.ts.map +0 -1
  399. package/dist/services/users/index.js +0 -9
  400. package/dist/services/users/investment_preferences/constants.d.ts +0 -7
  401. package/dist/services/users/investment_preferences/constants.d.ts.map +0 -1
  402. package/dist/services/users/investment_preferences/constants.js +0 -7
  403. package/dist/services/users/investment_preferences/index.d.ts +0 -7
  404. package/dist/services/users/investment_preferences/index.d.ts.map +0 -1
  405. package/dist/services/users/investment_preferences/index.js +0 -6
  406. package/dist/services/users/investment_preferences/service.d.ts +0 -5
  407. package/dist/services/users/investment_preferences/service.d.ts.map +0 -1
  408. package/dist/services/users/investment_preferences/service.js +0 -12
  409. package/dist/services/users/investment_preferences/types.d.ts +0 -23
  410. package/dist/services/users/investment_preferences/types.d.ts.map +0 -1
  411. package/dist/services/users/investment_preferences/types.js +0 -1
  412. package/dist/services/users/service.d.ts +0 -6
  413. package/dist/services/users/service.d.ts.map +0 -1
  414. package/dist/services/users/service.js +0 -15
  415. package/dist/services/users/types.d.ts +0 -32
  416. package/dist/services/users/types.d.ts.map +0 -1
  417. package/dist/services/users/types.js +0 -1
  418. package/dist/services/users/utils.d.ts +0 -2
  419. package/dist/services/users/utils.d.ts.map +0 -1
  420. package/dist/services/users/utils.js +0 -6
  421. package/dist/services/withdrawals/constants.d.ts +0 -67
  422. package/dist/services/withdrawals/constants.d.ts.map +0 -1
  423. package/dist/services/withdrawals/constants.js +0 -91
  424. package/dist/services/withdrawals/index.d.ts +0 -6
  425. package/dist/services/withdrawals/index.d.ts.map +0 -1
  426. package/dist/services/withdrawals/index.js +0 -7
  427. package/dist/services/withdrawals/service.d.ts +0 -4
  428. package/dist/services/withdrawals/service.d.ts.map +0 -1
  429. package/dist/services/withdrawals/service.js +0 -5
  430. package/dist/services/withdrawals/types.d.ts +0 -81
  431. package/dist/services/withdrawals/types.d.ts.map +0 -1
  432. package/dist/services/withdrawals/types.js +0 -1
  433. package/dist/services/withdrawals/utils.d.ts +0 -20
  434. package/dist/services/withdrawals/utils.d.ts.map +0 -1
  435. package/dist/services/withdrawals/utils.js +0 -110
  436. package/dist/services/withdrawals/withdrawal_liquidations/index.d.ts +0 -3
  437. package/dist/services/withdrawals/withdrawal_liquidations/index.d.ts.map +0 -1
  438. package/dist/services/withdrawals/withdrawal_liquidations/index.js +0 -2
  439. package/dist/services/withdrawals/withdrawal_liquidations/service.d.ts +0 -8
  440. package/dist/services/withdrawals/withdrawal_liquidations/service.d.ts.map +0 -1
  441. package/dist/services/withdrawals/withdrawal_liquidations/service.js +0 -68
  442. package/dist/services/withdrawals/withdrawal_liquidations/types.d.ts +0 -2
  443. package/dist/services/withdrawals/withdrawal_liquidations/types.d.ts.map +0 -1
  444. package/dist/services/withdrawals/withdrawal_liquidations/types.js +0 -1
  445. package/dist/services/withdrawals/withdrawal_requests/index.d.ts +0 -3
  446. package/dist/services/withdrawals/withdrawal_requests/index.d.ts.map +0 -1
  447. package/dist/services/withdrawals/withdrawal_requests/index.js +0 -2
  448. package/dist/services/withdrawals/withdrawal_requests/service.d.ts +0 -7
  449. package/dist/services/withdrawals/withdrawal_requests/service.d.ts.map +0 -1
  450. package/dist/services/withdrawals/withdrawal_requests/service.js +0 -55
  451. package/dist/services/withdrawals/withdrawal_requests/types.d.ts +0 -2
  452. package/dist/services/withdrawals/withdrawal_requests/types.d.ts.map +0 -1
  453. package/dist/services/withdrawals/withdrawal_requests/types.js +0 -1
@@ -1,223 +0,0 @@
1
- /**
2
- * Cross-platform Authentication Manager
3
- *
4
- * Centralizes authentication logic and state management across web and mobile platforms.
5
- * Handles token storage, automatic refresh, and authentication state persistence.
6
- */
7
- import { AuthService } from '../services/AuthService';
8
- export class AuthManager {
9
- constructor(config) {
10
- this.currentState = {
11
- isAuthenticated: false,
12
- isLoading: false,
13
- user: null,
14
- error: null,
15
- };
16
- this.apiClient = config.apiClient;
17
- this.tokenStorage = config.tokenStorage;
18
- this.authService = new AuthService(config.apiClient);
19
- this.onAuthStateChange = config.onAuthStateChange;
20
- this.autoRefreshEnabled = config.autoRefreshEnabled ?? true;
21
- // Set token storage on API client
22
- this.apiClient.setTokenStorage(this.tokenStorage);
23
- }
24
- /**
25
- * Get current authentication state
26
- */
27
- getState() {
28
- return { ...this.currentState };
29
- }
30
- /**
31
- * Initialize authentication manager
32
- * Checks for existing tokens and validates authentication state
33
- */
34
- async initialize() {
35
- this.updateState({ isLoading: true, error: null });
36
- try {
37
- const hasTokens = await this.tokenStorage.hasTokens();
38
- if (!hasTokens) {
39
- this.updateState({
40
- isAuthenticated: false,
41
- isLoading: false,
42
- user: null
43
- });
44
- return this.currentState;
45
- }
46
- // Validate tokens by fetching user profile
47
- const user = await this.authService.getProfile();
48
- this.updateState({
49
- isAuthenticated: true,
50
- isLoading: false,
51
- user,
52
- error: null,
53
- });
54
- // Start auto-refresh if enabled
55
- if (this.autoRefreshEnabled) {
56
- this.startAutoRefresh();
57
- }
58
- }
59
- catch (error) {
60
- // Tokens are invalid, clear them
61
- await this.tokenStorage.clearTokens();
62
- this.updateState({
63
- isAuthenticated: false,
64
- isLoading: false,
65
- user: null,
66
- error: error instanceof Error ? error.message : 'Authentication failed',
67
- });
68
- }
69
- return this.currentState;
70
- }
71
- /**
72
- * Sign in user with credentials
73
- */
74
- async signin(credentials) {
75
- this.updateState({ isLoading: true, error: null });
76
- try {
77
- const response = await this.authService.signin(credentials);
78
- // Store tokens if provided in response (mobile)
79
- if (response && typeof response === 'object' && 'access' in response && 'refresh' in response) {
80
- await this.tokenStorage.storeTokens(response);
81
- }
82
- // Fetch user profile
83
- const user = await this.authService.getProfile();
84
- this.updateState({
85
- isAuthenticated: true,
86
- isLoading: false,
87
- user,
88
- error: null,
89
- });
90
- // Start auto-refresh if enabled
91
- if (this.autoRefreshEnabled) {
92
- this.startAutoRefresh();
93
- }
94
- }
95
- catch (error) {
96
- this.updateState({
97
- isAuthenticated: false,
98
- isLoading: false,
99
- user: null,
100
- error: error instanceof Error ? error.message : 'Sign in failed',
101
- });
102
- }
103
- return this.currentState;
104
- }
105
- /**
106
- * Sign out user
107
- */
108
- async signout() {
109
- this.updateState({ isLoading: true, error: null });
110
- try {
111
- // Call sign out endpoint
112
- await this.authService.signout();
113
- }
114
- catch (error) {
115
- // Log error but continue with local cleanup
116
- console.warn('Sign out API call failed:', error);
117
- }
118
- // Always clear local state regardless of API call result
119
- await this.tokenStorage.clearTokens();
120
- this.stopAutoRefresh();
121
- this.updateState({
122
- isAuthenticated: false,
123
- isLoading: false,
124
- user: null,
125
- error: null,
126
- });
127
- return this.currentState;
128
- }
129
- /**
130
- * Sign up new user
131
- */
132
- async signup(userData) {
133
- this.updateState({ isLoading: true, error: null });
134
- try {
135
- await this.authService.signup(userData);
136
- this.updateState({ isLoading: false, error: null });
137
- return { success: true };
138
- }
139
- catch (error) {
140
- this.updateState({
141
- isLoading: false,
142
- error: error instanceof Error ? error.message : 'Sign up failed',
143
- });
144
- return {
145
- success: false,
146
- error: error instanceof Error ? error.message : 'Sign up failed'
147
- };
148
- }
149
- }
150
- /**
151
- * Refresh authentication tokens
152
- */
153
- async refreshTokens() {
154
- try {
155
- const tokens = await this.tokenStorage.retrieveTokens();
156
- if (!tokens?.refresh) {
157
- return false;
158
- }
159
- const newTokens = await this.authService.refreshToken({ refresh: tokens.refresh });
160
- await this.tokenStorage.storeTokens(newTokens);
161
- return true;
162
- }
163
- catch (error) {
164
- console.error('Token refresh failed:', error);
165
- // Clear invalid tokens
166
- await this.tokenStorage.clearTokens();
167
- this.updateState({
168
- isAuthenticated: false,
169
- user: null,
170
- error: 'Session expired',
171
- });
172
- return false;
173
- }
174
- }
175
- /**
176
- * Update user profile in state
177
- */
178
- async refreshProfile() {
179
- if (!this.currentState.isAuthenticated)
180
- return;
181
- try {
182
- const user = await this.authService.getProfile();
183
- this.updateState({ user });
184
- }
185
- catch (error) {
186
- console.error('Profile refresh failed:', error);
187
- }
188
- }
189
- /**
190
- * Start automatic token refresh
191
- */
192
- startAutoRefresh() {
193
- this.stopAutoRefresh();
194
- // Check every 5 minutes
195
- this.refreshTimer = setInterval(async () => {
196
- if (this.currentState.isAuthenticated) {
197
- await this.refreshTokens();
198
- }
199
- }, 5 * 60 * 1000);
200
- }
201
- /**
202
- * Stop automatic token refresh
203
- */
204
- stopAutoRefresh() {
205
- if (this.refreshTimer) {
206
- clearInterval(this.refreshTimer);
207
- this.refreshTimer = undefined;
208
- }
209
- }
210
- /**
211
- * Update authentication state and notify listeners
212
- */
213
- updateState(updates) {
214
- this.currentState = { ...this.currentState, ...updates };
215
- this.onAuthStateChange?.(this.currentState);
216
- }
217
- /**
218
- * Clean up resources
219
- */
220
- dispose() {
221
- this.stopAutoRefresh();
222
- }
223
- }
@@ -1,63 +0,0 @@
1
- /**
2
- * Factory functions to create platform-specific AuthManager instances
3
- *
4
- * Provides convenient setup for web and mobile authentication with
5
- * appropriate API clients and token storage implementations.
6
- */
7
- import { AuthManager, type AuthManagerConfig } from './AuthManager';
8
- import { type SecureStoreInterface } from '../adapters/MobileTokenStorage';
9
- export interface WebAuthManagerConfig {
10
- apiBaseUrl: string;
11
- onAuthStateChange?: AuthManagerConfig['onAuthStateChange'];
12
- autoRefreshEnabled?: boolean;
13
- apiTimeout?: number;
14
- }
15
- export interface MobileAuthManagerConfig {
16
- apiBaseUrl: string;
17
- secureStore: SecureStoreInterface;
18
- onAuthStateChange?: AuthManagerConfig['onAuthStateChange'];
19
- autoRefreshEnabled?: boolean;
20
- retryAttempts?: number;
21
- offlineQueueEnabled?: boolean;
22
- apiTimeout?: number;
23
- }
24
- /**
25
- * Create AuthManager for web applications
26
- * Uses cookie-based authentication with fetch API
27
- */
28
- export declare function createWebAuthManager(config: WebAuthManagerConfig): AuthManager;
29
- /**
30
- * Create AuthManager for mobile applications
31
- * Uses secure storage with token-based authentication
32
- */
33
- export declare function createMobileAuthManager(config: MobileAuthManagerConfig): AuthManager;
34
- /**
35
- * Create Expo-specific AuthManager
36
- * Convenience function for Expo applications using SecureStore
37
- */
38
- export declare function createExpoAuthManager(config: Omit<MobileAuthManagerConfig, 'secureStore'> & {
39
- expoSecureStore: SecureStoreInterface;
40
- }): AuthManager;
41
- /**
42
- * AuthManager factory for different platforms
43
- */
44
- export declare const authManagerFactory: {
45
- readonly web: typeof createWebAuthManager;
46
- readonly mobile: typeof createMobileAuthManager;
47
- readonly expo: typeof createExpoAuthManager;
48
- };
49
- /**
50
- * Platform detection utility
51
- */
52
- export declare function detectPlatform(): 'web' | 'mobile';
53
- /**
54
- * Auto-create AuthManager based on platform
55
- */
56
- export declare function createAuthManagerForPlatform(config: {
57
- apiBaseUrl: string;
58
- onAuthStateChange?: AuthManagerConfig['onAuthStateChange'];
59
- secureStore?: SecureStoreInterface;
60
- retryAttempts?: number;
61
- offlineQueueEnabled?: boolean;
62
- }): AuthManager;
63
- //# sourceMappingURL=createAuthManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createAuthManager.d.ts","sourceRoot":"","sources":["../../src/auth/createAuthManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE/F,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,oBAAoB,CAAC;IAClC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW,CAe9E;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,uBAAuB,GAAG,WAAW,CAgBpF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,IAAI,CAAC,uBAAuB,EAAE,aAAa,CAAC,GAAG;IACrD,eAAe,EAAE,oBAAoB,CAAC;CACvC,GACA,WAAW,CAKb;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX;;GAEG;AACH,wBAAgB,cAAc,IAAI,KAAK,GAAG,QAAQ,CAajD;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IAE3D,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,WAAW,CAqBd"}
@@ -1,103 +0,0 @@
1
- /**
2
- * Factory functions to create platform-specific AuthManager instances
3
- *
4
- * Provides convenient setup for web and mobile authentication with
5
- * appropriate API clients and token storage implementations.
6
- */
7
- import { AuthManager } from './AuthManager';
8
- import { WebApiClient } from '../adapters/WebApiClient';
9
- import { WebTokenStorage } from '../adapters/WebTokenStorage';
10
- import { MobileApiClient } from '../adapters/MobileApiClient';
11
- import { MobileTokenStorage } from '../adapters/MobileTokenStorage';
12
- /**
13
- * Create AuthManager for web applications
14
- * Uses cookie-based authentication with fetch API
15
- */
16
- export function createWebAuthManager(config) {
17
- const apiClient = new WebApiClient({
18
- baseURL: config.apiBaseUrl,
19
- withCredentials: true, // Enable cookies
20
- timeout: config.apiTimeout || 30000,
21
- });
22
- const tokenStorage = new WebTokenStorage();
23
- return new AuthManager({
24
- apiClient,
25
- tokenStorage,
26
- onAuthStateChange: config.onAuthStateChange,
27
- autoRefreshEnabled: config.autoRefreshEnabled ?? true,
28
- });
29
- }
30
- /**
31
- * Create AuthManager for mobile applications
32
- * Uses secure storage with token-based authentication
33
- */
34
- export function createMobileAuthManager(config) {
35
- const apiClient = new MobileApiClient({
36
- baseURL: config.apiBaseUrl,
37
- timeout: config.apiTimeout || 30000,
38
- retryAttempts: config.retryAttempts || 3,
39
- offlineQueueEnabled: config.offlineQueueEnabled ?? true,
40
- });
41
- const tokenStorage = new MobileTokenStorage(config.secureStore);
42
- return new AuthManager({
43
- apiClient,
44
- tokenStorage,
45
- onAuthStateChange: config.onAuthStateChange,
46
- autoRefreshEnabled: config.autoRefreshEnabled ?? true,
47
- });
48
- }
49
- /**
50
- * Create Expo-specific AuthManager
51
- * Convenience function for Expo applications using SecureStore
52
- */
53
- export function createExpoAuthManager(config) {
54
- return createMobileAuthManager({
55
- ...config,
56
- secureStore: config.expoSecureStore,
57
- });
58
- }
59
- /**
60
- * AuthManager factory for different platforms
61
- */
62
- export const authManagerFactory = {
63
- web: createWebAuthManager,
64
- mobile: createMobileAuthManager,
65
- expo: createExpoAuthManager,
66
- };
67
- /**
68
- * Platform detection utility
69
- */
70
- export function detectPlatform() {
71
- // Simple platform detection
72
- if (typeof window !== 'undefined' && window.document) {
73
- return 'web';
74
- }
75
- // Check for React Native environment
76
- if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {
77
- return 'mobile';
78
- }
79
- // Default to web for SSR environments
80
- return 'web';
81
- }
82
- /**
83
- * Auto-create AuthManager based on platform
84
- */
85
- export function createAuthManagerForPlatform(config) {
86
- const platform = detectPlatform();
87
- if (platform === 'mobile') {
88
- if (!config.secureStore) {
89
- throw new Error('SecureStore is required for mobile platform');
90
- }
91
- return createMobileAuthManager({
92
- apiBaseUrl: config.apiBaseUrl,
93
- secureStore: config.secureStore,
94
- onAuthStateChange: config.onAuthStateChange,
95
- retryAttempts: config.retryAttempts,
96
- offlineQueueEnabled: config.offlineQueueEnabled,
97
- });
98
- }
99
- return createWebAuthManager({
100
- apiBaseUrl: config.apiBaseUrl,
101
- onAuthStateChange: config.onAuthStateChange,
102
- });
103
- }
@@ -1,66 +0,0 @@
1
- /**
2
- * React hook for AuthManager integration
3
- *
4
- * Provides a React-friendly interface to the AuthManager with
5
- * automatic state synchronization and React Query integration.
6
- */
7
- import React from 'react';
8
- import type { AuthManager, AuthState } from './AuthManager';
9
- import type { SigninPayload, SignupPayload } from '../services/AuthService';
10
- export interface UseAuthManagerOptions {
11
- authManager: AuthManager;
12
- enableQueryInvalidation?: boolean;
13
- }
14
- export declare function useAuthManager({ authManager, enableQueryInvalidation }: UseAuthManagerOptions): {
15
- getState: () => AuthState;
16
- clearError: () => void;
17
- signin: (credentials: SigninPayload) => Promise<AuthState>;
18
- signout: () => Promise<AuthState>;
19
- signup: (userData: SignupPayload) => Promise<{
20
- success: boolean;
21
- error?: string;
22
- }>;
23
- refreshTokens: () => Promise<boolean>;
24
- refreshProfile: () => Promise<void>;
25
- isSignedIn: boolean;
26
- isSignedOut: boolean;
27
- hasUser: boolean;
28
- hasError: boolean;
29
- isAuthenticated: boolean;
30
- isLoading: boolean;
31
- user: import("..").UserProfile | null;
32
- error: string | null;
33
- };
34
- /**
35
- * Higher-order component for AuthManager integration
36
- */
37
- export declare function withAuthManager<P extends object>(Component: React.ComponentType<P & {
38
- authManager: ReturnType<typeof useAuthManager>;
39
- }>, authManager: AuthManager): (props: P) => import("react/jsx-runtime").JSX.Element;
40
- export declare function AuthManagerProvider({ children, authManager }: {
41
- children: React.ReactNode;
42
- authManager: AuthManager;
43
- }): import("react/jsx-runtime").JSX.Element;
44
- export declare function useAuthManagerContext(options?: {
45
- enableQueryInvalidation?: boolean;
46
- }): {
47
- getState: () => AuthState;
48
- clearError: () => void;
49
- signin: (credentials: SigninPayload) => Promise<AuthState>;
50
- signout: () => Promise<AuthState>;
51
- signup: (userData: SignupPayload) => Promise<{
52
- success: boolean;
53
- error?: string;
54
- }>;
55
- refreshTokens: () => Promise<boolean>;
56
- refreshProfile: () => Promise<void>;
57
- isSignedIn: boolean;
58
- isSignedOut: boolean;
59
- hasUser: boolean;
60
- hasError: boolean;
61
- isAuthenticated: boolean;
62
- isLoading: boolean;
63
- user: import("..").UserProfile | null;
64
- error: string | null;
65
- };
66
- //# sourceMappingURL=useAuthManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAuthManager.d.ts","sourceRoot":"","sources":["../../src/auth/useAuthManager.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAA+E,MAAM,OAAO,CAAC;AAEpG,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG5E,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,WAAW,CAAC;IACzB,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,uBAA8B,EAAE,EAAE,qBAAqB;;;0BA4DrE,aAAa;;uBAYhB,aAAa;;;;;;;;;;;;;;EAsCzC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,EAC9C,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG;IAAE,WAAW,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA;CAAE,CAAC,EACtF,WAAW,EAAE,WAAW,IAEW,OAAO,CAAC,6CAK5C;AAOD,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,WAAW,EACZ,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,EAAE,WAAW,CAAC;CAC1B,2CAMA;AAED,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAE;;;0BArFrD,aAAa;;uBAYhB,aAAa;;;;;;;;;;;;;;EAoFzC"}
@@ -1,133 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * React hook for AuthManager integration
4
- *
5
- * Provides a React-friendly interface to the AuthManager with
6
- * automatic state synchronization and React Query integration.
7
- */
8
- import { useEffect, useState, useCallback, useMemo, createContext, useContext } from 'react';
9
- import { useQueryClient } from '@tanstack/react-query';
10
- import { queryKeys } from '../query/QueryClient';
11
- export function useAuthManager({ authManager, enableQueryInvalidation = true }) {
12
- const queryClient = useQueryClient();
13
- const [authState, setAuthState] = useState(() => authManager.getState());
14
- // Initialize auth manager on mount
15
- useEffect(() => {
16
- let mounted = true;
17
- const initialize = async () => {
18
- try {
19
- await authManager.initialize();
20
- if (mounted) {
21
- setAuthState(authManager.getState());
22
- }
23
- }
24
- catch (error) {
25
- console.error('AuthManager initialization failed:', error);
26
- }
27
- };
28
- initialize();
29
- return () => {
30
- mounted = false;
31
- };
32
- }, [authManager]);
33
- // Subscribe to auth state changes
34
- useEffect(() => {
35
- const unsubscribe = (newState) => {
36
- setAuthState(newState);
37
- // Invalidate auth-related queries when authentication state changes
38
- if (enableQueryInvalidation) {
39
- if (newState.isAuthenticated && !authState.isAuthenticated) {
40
- // User signed in - invalidate all queries to refresh data
41
- queryClient.invalidateQueries();
42
- }
43
- else if (!newState.isAuthenticated && authState.isAuthenticated) {
44
- // User signed out - clear all queries
45
- queryClient.clear();
46
- }
47
- else if (newState.user && newState.user !== authState.user) {
48
- // User profile changed - invalidate auth queries
49
- queryClient.invalidateQueries({ queryKey: queryKeys.auth.profile() });
50
- }
51
- }
52
- };
53
- // Set up state change listener
54
- const originalOnChange = authManager['onAuthStateChange'];
55
- authManager['onAuthStateChange'] = (state) => {
56
- unsubscribe(state);
57
- originalOnChange?.(state);
58
- };
59
- return () => {
60
- authManager['onAuthStateChange'] = originalOnChange;
61
- };
62
- }, [authManager, authState, queryClient, enableQueryInvalidation]);
63
- // Memoized action functions
64
- const actions = useMemo(() => ({
65
- signin: async (credentials) => {
66
- const result = await authManager.signin(credentials);
67
- setAuthState(result);
68
- return result;
69
- },
70
- signout: async () => {
71
- const result = await authManager.signout();
72
- setAuthState(result);
73
- return result;
74
- },
75
- signup: async (userData) => {
76
- return authManager.signup(userData);
77
- },
78
- refreshTokens: async () => {
79
- return authManager.refreshTokens();
80
- },
81
- refreshProfile: async () => {
82
- await authManager.refreshProfile();
83
- setAuthState(authManager.getState());
84
- },
85
- }), [authManager]);
86
- // Convenience getters
87
- const derived = useMemo(() => ({
88
- isSignedIn: authState.isAuthenticated,
89
- isSignedOut: !authState.isAuthenticated && !authState.isLoading,
90
- hasUser: !!authState.user,
91
- hasError: !!authState.error,
92
- }), [authState]);
93
- return {
94
- // State
95
- ...authState,
96
- ...derived,
97
- // Actions
98
- ...actions,
99
- // Utilities
100
- getState: useCallback(() => authManager.getState(), [authManager]),
101
- clearError: useCallback(() => {
102
- if (authState.error) {
103
- setAuthState((prev) => ({ ...prev, error: null }));
104
- }
105
- }, [authState.error]),
106
- };
107
- }
108
- /**
109
- * Higher-order component for AuthManager integration
110
- */
111
- export function withAuthManager(Component, authManager) {
112
- return function AuthManagerWrapper(props) {
113
- const authManagerHook = useAuthManager({ authManager });
114
- return _jsx(Component, { ...props, authManager: authManagerHook });
115
- };
116
- }
117
- /**
118
- * Context provider for AuthManager (optional pattern)
119
- */
120
- const AuthManagerContext = createContext(null);
121
- export function AuthManagerProvider({ children, authManager }) {
122
- return (_jsx(AuthManagerContext.Provider, { value: authManager, children: children }));
123
- }
124
- export function useAuthManagerContext(options) {
125
- const authManager = useContext(AuthManagerContext);
126
- if (!authManager) {
127
- throw new Error('useAuthManagerContext must be used within an AuthManagerProvider');
128
- }
129
- return useAuthManager({
130
- authManager,
131
- enableQueryInvalidation: options?.enableQueryInvalidation
132
- });
133
- }
@@ -1,37 +0,0 @@
1
- /**
2
- * Service Discovery Pattern for API configuration
3
- * Provides explicit, fail-fast configuration for all shared services
4
- */
5
- import { createWebApiClient, createMobileApiClient } from '../api/apiClient';
6
- import type { AuthManager } from '../auth/AuthManager';
7
- import type { SecureStoreInterface } from '../adapters/MobileTokenStorage';
8
- export interface ServiceConfig {
9
- apiBaseUrl: string;
10
- environment?: 'development' | 'staging' | 'production';
11
- timeout?: number;
12
- }
13
- export interface ConfiguredServices {
14
- authManager: AuthManager;
15
- apiClient: ReturnType<typeof createWebApiClient>;
16
- }
17
- export interface MobileServiceConfig extends ServiceConfig {
18
- secureStore: SecureStoreInterface;
19
- }
20
- export interface ConfiguredMobileServices {
21
- authManager: AuthManager;
22
- apiClient: ReturnType<typeof createMobileApiClient>;
23
- }
24
- /**
25
- * Creates and configures all services for web applications (blueberry, strawberry)
26
- * Ensures all services use the same API configuration
27
- */
28
- export declare const createConfiguredWebServices: (config: ServiceConfig) => ConfiguredServices;
29
- /**
30
- * Creates and configures all services for mobile applications (blackberry)
31
- */
32
- export declare const createConfiguredMobileServices: (config: MobileServiceConfig) => ConfiguredMobileServices;
33
- /**
34
- * Validates service configuration
35
- */
36
- export declare const validateServiceConfig: (config: ServiceConfig) => void;
37
- //# sourceMappingURL=serviceConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serviceConfig.d.ts","sourceRoot":"","sources":["../../src/config/serviceConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAyB,MAAM,kBAAkB,CAAC;AAEpG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,WAAW,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CACrD;AAED;;;GAGG;AACH,eAAO,MAAM,2BAA2B,GAAI,QAAQ,aAAa,KAAG,kBAsBnE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,GAAI,QAAQ,mBAAmB,KAAG,wBAuB5E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,aAAa,KAAG,IAiB7D,CAAC"}