@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,144 +0,0 @@
1
- /**
2
- * Shared authentication React Query hooks
3
- *
4
- * Provides consistent authentication state management and operations
5
- * across web and mobile platforms with proper query invalidation.
6
- */
7
- import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query';
8
- import { queryKeys } from './QueryClient';
9
- /**
10
- * Get current user profile with authentication status
11
- */
12
- export function useProfile({ authService, enabled = true }) {
13
- return useQuery({
14
- queryKey: queryKeys.auth.profile(),
15
- queryFn: () => authService.getProfile(),
16
- enabled,
17
- retry: (failureCount, error) => {
18
- // Don't retry on authentication errors
19
- if (error && 'status' in error && error.status === 401) {
20
- return false;
21
- }
22
- return failureCount < 3;
23
- },
24
- staleTime: 2 * 60 * 1000, // 2 minutes
25
- });
26
- }
27
- /**
28
- * Check authentication status
29
- */
30
- export function useAuthStatus({ authService, enabled = true }) {
31
- return useQuery({
32
- queryKey: queryKeys.auth.status(),
33
- queryFn: () => authService.checkStatus(),
34
- enabled,
35
- retry: false, // Don't retry auth status checks
36
- staleTime: 1 * 60 * 1000, // 1 minute
37
- });
38
- }
39
- /**
40
- * Sign in mutation
41
- */
42
- export function useSignin(options) {
43
- const queryClient = useQueryClient();
44
- const { authService, ...mutationOptions } = options;
45
- return useMutation({
46
- mutationFn: (data) => authService.signin(data),
47
- onSuccess: (...args) => {
48
- // Invalidate auth-related queries
49
- queryClient.invalidateQueries({ queryKey: queryKeys.auth.profile() });
50
- queryClient.invalidateQueries({ queryKey: queryKeys.auth.status() });
51
- // Call user's onSuccess if provided
52
- mutationOptions.onSuccess?.(...args);
53
- },
54
- ...mutationOptions,
55
- });
56
- }
57
- /**
58
- * Sign out mutation
59
- */
60
- export function useSignout(options) {
61
- const queryClient = useQueryClient();
62
- const { authService, ...mutationOptions } = options;
63
- return useMutation({
64
- mutationFn: () => authService.signout(),
65
- onSuccess: (...args) => {
66
- // Clear all cached data on signout
67
- queryClient.clear();
68
- // Call user's onSuccess if provided
69
- mutationOptions.onSuccess?.(...args);
70
- },
71
- ...mutationOptions,
72
- });
73
- }
74
- /**
75
- * Sign up mutation
76
- */
77
- export function useSignup(options) {
78
- const { authService, ...mutationOptions } = options;
79
- return useMutation({
80
- mutationFn: (data) => authService.signup(data),
81
- onSuccess: (...args) => {
82
- // Optionally invalidate auth queries if signup auto-signs in
83
- // const queryClient = useQueryClient();
84
- // queryClient.invalidateQueries({ queryKey: queryKeys.auth.profile() });
85
- // Call user's onSuccess if provided
86
- mutationOptions.onSuccess?.(...args);
87
- },
88
- ...mutationOptions,
89
- });
90
- }
91
- /**
92
- * Email verification mutation
93
- */
94
- export function useVerifyEmail(options) {
95
- const queryClient = useQueryClient();
96
- const { authService, ...mutationOptions } = options;
97
- return useMutation({
98
- mutationFn: (data) => authService.verifyEmail(data),
99
- onSuccess: (...args) => {
100
- // Invalidate profile to get updated verification status
101
- queryClient.invalidateQueries({ queryKey: queryKeys.auth.profile() });
102
- // Call user's onSuccess if provided
103
- mutationOptions.onSuccess?.(...args);
104
- },
105
- ...mutationOptions,
106
- });
107
- }
108
- /**
109
- * Resend verification code mutation
110
- */
111
- export function useResendVerification(options) {
112
- const { authService, ...mutationOptions } = options;
113
- return useMutation({
114
- mutationFn: () => authService.resendVerificationCode(),
115
- ...mutationOptions,
116
- });
117
- }
118
- /**
119
- * Composite auth hook that provides complete authentication state
120
- */
121
- export function useAuth(options) {
122
- const profileQuery = useProfile(options);
123
- const statusQuery = useAuthStatus(options);
124
- return {
125
- // Data
126
- user: profileQuery.data,
127
- isAuthenticated: !!(statusQuery.data && profileQuery.data),
128
- // Loading states
129
- isLoading: profileQuery.isLoading || statusQuery.isLoading,
130
- isLoadingProfile: profileQuery.isLoading,
131
- isLoadingStatus: statusQuery.isLoading,
132
- // Error states
133
- error: profileQuery.error || statusQuery.error,
134
- profileError: profileQuery.error,
135
- statusError: statusQuery.error,
136
- // Refetch functions
137
- refetchProfile: profileQuery.refetch,
138
- refetchStatus: statusQuery.refetch,
139
- refetch: () => {
140
- profileQuery.refetch();
141
- statusQuery.refetch();
142
- },
143
- };
144
- }
@@ -1,79 +0,0 @@
1
- /**
2
- * Shared portfolio React Query hooks
3
- *
4
- * Provides consistent portfolio data management and operations
5
- * with optimized caching and invalidation patterns.
6
- */
7
- import { type UseMutationOptions } from '@tanstack/react-query';
8
- import type { PortfolioService, Portfolio, CreatePortfolioPayload, UpdatePortfolioPayload, PortfolioListFilters } from '../services/PortfolioService';
9
- export interface UsePortfolioServiceOptions {
10
- portfolioService: PortfolioService;
11
- }
12
- export interface PortfolioMutationOptions<TData, TVariables> extends Omit<UseMutationOptions<TData, Error, TVariables>, 'mutationFn'> {
13
- portfolioService: PortfolioService;
14
- }
15
- /**
16
- * Get all portfolios with filtering
17
- */
18
- export declare function usePortfolios({ portfolioService }: UsePortfolioServiceOptions, filters?: PortfolioListFilters, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<import("..").PaginatedResponse<Portfolio>, Error>;
19
- /**
20
- * Get specific portfolio by ID
21
- */
22
- export declare function usePortfolio({ portfolioService }: UsePortfolioServiceOptions, portfolioId: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<Portfolio, Error>;
23
- /**
24
- * Get portfolio holdings
25
- */
26
- export declare function usePortfolioHoldings({ portfolioService }: UsePortfolioServiceOptions, portfolioId: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<import("..").AssetHolding[], Error>;
27
- /**
28
- * Get portfolio allocations
29
- */
30
- export declare function usePortfolioAllocations({ portfolioService }: UsePortfolioServiceOptions, portfolioId: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<import("..").AssetAllocation[], Error>;
31
- /**
32
- * Get portfolio performance data
33
- */
34
- export declare function usePortfolioPerformance({ portfolioService }: UsePortfolioServiceOptions, portfolioId: string, timeRange?: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<import("..").PerformanceData, Error>;
35
- /**
36
- * Create portfolio mutation
37
- */
38
- export declare function useCreatePortfolio(options: PortfolioMutationOptions<Portfolio, CreatePortfolioPayload>): import("@tanstack/react-query").UseMutationResult<Portfolio, Error, CreatePortfolioPayload, unknown>;
39
- /**
40
- * Update portfolio mutation
41
- */
42
- export declare function useUpdatePortfolio(options: PortfolioMutationOptions<Portfolio, {
43
- id: string;
44
- data: UpdatePortfolioPayload;
45
- }>): import("@tanstack/react-query").UseMutationResult<Portfolio, Error, {
46
- id: string;
47
- data: UpdatePortfolioPayload;
48
- }, unknown>;
49
- /**
50
- * Delete portfolio mutation
51
- */
52
- export declare function useDeletePortfolio(options: PortfolioMutationOptions<void, string>): import("@tanstack/react-query").UseMutationResult<void, Error, string, unknown>;
53
- /**
54
- * Infinite query for portfolios (useful for large lists)
55
- */
56
- export declare function useInfinitePortfolios({ portfolioService }: UsePortfolioServiceOptions, filters?: PortfolioListFilters): import("@tanstack/react-query").UseInfiniteQueryResult<import("@tanstack/query-core").InfiniteData<import("..").PaginatedResponse<Portfolio>, unknown>, Error>;
57
- /**
58
- * Composite hook for complete portfolio management
59
- */
60
- export declare function usePortfolioManagement(serviceOptions: UsePortfolioServiceOptions, portfolioId?: string): {
61
- portfolios: Portfolio[];
62
- portfolio: Portfolio | undefined;
63
- holdings: import("..").AssetHolding[];
64
- allocations: import("..").AssetAllocation[];
65
- isLoadingPortfolios: boolean;
66
- isLoadingPortfolio: boolean;
67
- isLoadingHoldings: boolean;
68
- isLoadingAllocations: boolean;
69
- isLoading: boolean;
70
- portfoliosError: Error | null;
71
- portfolioError: Error | null;
72
- holdingsError: Error | null;
73
- allocationsError: Error | null;
74
- refetchPortfolios: (options?: import("@tanstack/query-core").RefetchOptions) => Promise<import("@tanstack/query-core").QueryObserverResult<import("..").PaginatedResponse<Portfolio>, Error>>;
75
- refetchPortfolio: (options?: import("@tanstack/query-core").RefetchOptions) => Promise<import("@tanstack/query-core").QueryObserverResult<Portfolio, Error>>;
76
- refetchHoldings: (options?: import("@tanstack/query-core").RefetchOptions) => Promise<import("@tanstack/query-core").QueryObserverResult<import("..").AssetHolding[], Error>>;
77
- refetchAllocations: (options?: import("@tanstack/query-core").RefetchOptions) => Promise<import("@tanstack/query-core").QueryObserverResult<import("..").AssetAllocation[], Error>>;
78
- };
79
- //# sourceMappingURL=usePortfolios.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePortfolios.d.ts","sourceRoot":"","sources":["../../src/query/usePortfolios.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAA2D,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACzH,OAAO,KAAK,EACV,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,8BAA8B,CAAC;AAGtC,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB,CAAC,KAAK,EAAE,UAAU,CAAE,SAC3D,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC;IAChE,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,OAAO,GAAE,oBAAyB,EAClC,OAAO,GAAE,OAAc,oGAQxB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAc,oEAQxB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAc,sFAQxB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,OAAc,yFAQxB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,MAAa,EACxB,OAAO,GAAE,OAAc,uFAQxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,SAAS,EAAE,sBAAsB,CAAC,wGAqBtG;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,SAAS,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,sBAAsB,CAAA;CAAE,CAAC;QAAvC,MAAM;UAAQ,sBAAsB;YAsBzH;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,mFAoBjF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,gBAAgB,EAAE,EAAE,0BAA0B,EAChD,OAAO,GAAE,oBAAyB,kKAgBnC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,cAAc,EAAE,0BAA0B,EAC1C,WAAW,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;EAiCrB"}
@@ -1,172 +0,0 @@
1
- /**
2
- * Shared portfolio React Query hooks
3
- *
4
- * Provides consistent portfolio data management and operations
5
- * with optimized caching and invalidation patterns.
6
- */
7
- import { useQuery, useMutation, useQueryClient, useInfiniteQuery } from '@tanstack/react-query';
8
- import { queryKeys, createQueryOptions } from './QueryClient';
9
- /**
10
- * Get all portfolios with filtering
11
- */
12
- export function usePortfolios({ portfolioService }, filters = {}, enabled = true) {
13
- return useQuery({
14
- queryKey: queryKeys.portfolios.all(),
15
- queryFn: () => portfolioService.getPortfolios(filters),
16
- enabled,
17
- ...createQueryOptions.user('web'), // Adjust based on platform
18
- });
19
- }
20
- /**
21
- * Get specific portfolio by ID
22
- */
23
- export function usePortfolio({ portfolioService }, portfolioId, enabled = true) {
24
- return useQuery({
25
- queryKey: queryKeys.portfolios.detail(portfolioId),
26
- queryFn: () => portfolioService.getPortfolio(portfolioId),
27
- enabled: enabled && !!portfolioId,
28
- ...createQueryOptions.user('web'),
29
- });
30
- }
31
- /**
32
- * Get portfolio holdings
33
- */
34
- export function usePortfolioHoldings({ portfolioService }, portfolioId, enabled = true) {
35
- return useQuery({
36
- queryKey: queryKeys.portfolios.holdings(portfolioId),
37
- queryFn: () => portfolioService.getHoldings(portfolioId),
38
- enabled: enabled && !!portfolioId,
39
- ...createQueryOptions.realtime('web'), // Holdings update frequently
40
- });
41
- }
42
- /**
43
- * Get portfolio allocations
44
- */
45
- export function usePortfolioAllocations({ portfolioService }, portfolioId, enabled = true) {
46
- return useQuery({
47
- queryKey: queryKeys.portfolios.allocations(portfolioId),
48
- queryFn: () => portfolioService.getAllocations(portfolioId),
49
- enabled: enabled && !!portfolioId,
50
- ...createQueryOptions.user('web'),
51
- });
52
- }
53
- /**
54
- * Get portfolio performance data
55
- */
56
- export function usePortfolioPerformance({ portfolioService }, portfolioId, timeRange = '1Y', enabled = true) {
57
- return useQuery({
58
- queryKey: ['portfolios', portfolioId, 'performance', timeRange],
59
- queryFn: () => portfolioService.getPerformance(portfolioId, timeRange),
60
- enabled: enabled && !!portfolioId,
61
- staleTime: 5 * 60 * 1000, // 5 minutes - performance data doesn't change frequently
62
- });
63
- }
64
- /**
65
- * Create portfolio mutation
66
- */
67
- export function useCreatePortfolio(options) {
68
- const queryClient = useQueryClient();
69
- const { portfolioService, ...mutationOptions } = options;
70
- return useMutation({
71
- mutationFn: (data) => portfolioService.createPortfolio(data),
72
- onSuccess: (newPortfolio, ...args) => {
73
- // Add new portfolio to the cache
74
- queryClient.setQueryData(queryKeys.portfolios.detail(newPortfolio.id), newPortfolio);
75
- // Invalidate portfolios list to include new portfolio
76
- queryClient.invalidateQueries({ queryKey: queryKeys.portfolios.all() });
77
- // Call user's onSuccess if provided
78
- mutationOptions.onSuccess?.(newPortfolio, ...args);
79
- },
80
- ...mutationOptions,
81
- });
82
- }
83
- /**
84
- * Update portfolio mutation
85
- */
86
- export function useUpdatePortfolio(options) {
87
- const queryClient = useQueryClient();
88
- const { portfolioService, ...mutationOptions } = options;
89
- return useMutation({
90
- mutationFn: ({ id, data }) => portfolioService.updatePortfolio(id, data),
91
- onSuccess: (updatedPortfolio, { id }, ...args) => {
92
- // Update portfolio in cache
93
- queryClient.setQueryData(queryKeys.portfolios.detail(id), updatedPortfolio);
94
- // Invalidate portfolios list to reflect changes
95
- queryClient.invalidateQueries({ queryKey: queryKeys.portfolios.all() });
96
- // Call user's onSuccess if provided
97
- mutationOptions.onSuccess?.(updatedPortfolio, { id, data: { name: updatedPortfolio.name } }, ...args);
98
- },
99
- ...mutationOptions,
100
- });
101
- }
102
- /**
103
- * Delete portfolio mutation
104
- */
105
- export function useDeletePortfolio(options) {
106
- const queryClient = useQueryClient();
107
- const { portfolioService, ...mutationOptions } = options;
108
- return useMutation({
109
- mutationFn: (id) => portfolioService.deletePortfolio(id),
110
- onSuccess: (_, portfolioId, ...args) => {
111
- // Remove portfolio from cache
112
- queryClient.removeQueries({ queryKey: queryKeys.portfolios.detail(portfolioId) });
113
- queryClient.removeQueries({ queryKey: queryKeys.portfolios.holdings(portfolioId) });
114
- queryClient.removeQueries({ queryKey: queryKeys.portfolios.allocations(portfolioId) });
115
- // Invalidate portfolios list to reflect deletion
116
- queryClient.invalidateQueries({ queryKey: queryKeys.portfolios.all() });
117
- // Call user's onSuccess if provided
118
- mutationOptions.onSuccess?.(_, portfolioId, ...args);
119
- },
120
- ...mutationOptions,
121
- });
122
- }
123
- /**
124
- * Infinite query for portfolios (useful for large lists)
125
- */
126
- export function useInfinitePortfolios({ portfolioService }, filters = {}) {
127
- return useInfiniteQuery({
128
- queryKey: ['portfolios', 'infinite', filters],
129
- queryFn: ({ pageParam = 1 }) => portfolioService.getPortfolios({ ...filters, page: pageParam }),
130
- initialPageParam: 1,
131
- getNextPageParam: (lastPage) => {
132
- if (lastPage.next) {
133
- const url = new URL(lastPage.next);
134
- return Number(url.searchParams.get('page'));
135
- }
136
- return undefined;
137
- },
138
- ...createQueryOptions.user('web'),
139
- });
140
- }
141
- /**
142
- * Composite hook for complete portfolio management
143
- */
144
- export function usePortfolioManagement(serviceOptions, portfolioId) {
145
- const portfoliosQuery = usePortfolios(serviceOptions);
146
- const portfolioQuery = usePortfolio(serviceOptions, portfolioId || '', !!portfolioId);
147
- const holdingsQuery = usePortfolioHoldings(serviceOptions, portfolioId || '', !!portfolioId);
148
- const allocationsQuery = usePortfolioAllocations(serviceOptions, portfolioId || '', !!portfolioId);
149
- return {
150
- // Data
151
- portfolios: portfoliosQuery.data?.results || [],
152
- portfolio: portfolioQuery.data,
153
- holdings: holdingsQuery.data || [],
154
- allocations: allocationsQuery.data || [],
155
- // Loading states
156
- isLoadingPortfolios: portfoliosQuery.isLoading,
157
- isLoadingPortfolio: portfolioQuery.isLoading,
158
- isLoadingHoldings: holdingsQuery.isLoading,
159
- isLoadingAllocations: allocationsQuery.isLoading,
160
- isLoading: portfoliosQuery.isLoading || portfolioQuery.isLoading,
161
- // Error states
162
- portfoliosError: portfoliosQuery.error,
163
- portfolioError: portfolioQuery.error,
164
- holdingsError: holdingsQuery.error,
165
- allocationsError: allocationsQuery.error,
166
- // Refetch functions
167
- refetchPortfolios: portfoliosQuery.refetch,
168
- refetchPortfolio: portfolioQuery.refetch,
169
- refetchHoldings: holdingsQuery.refetch,
170
- refetchAllocations: allocationsQuery.refetch,
171
- };
172
- }
@@ -1,75 +0,0 @@
1
- /**
2
- * Authentication service with React Query integration
3
- *
4
- * Provides authentication operations with proper query invalidation
5
- * and state management across platforms.
6
- */
7
- import type { BaseApiClient } from '../core/BaseApiClient';
8
- import { BaseService } from './BaseService';
9
- export interface SigninPayload {
10
- email: string;
11
- password: string;
12
- }
13
- export interface SignupPayload {
14
- email: string;
15
- password: string;
16
- first_name: string;
17
- last_name: string;
18
- }
19
- export interface EmailVerificationPayload {
20
- email: string;
21
- verification_code: string;
22
- }
23
- export interface TokenRefreshPayload {
24
- refresh: string;
25
- }
26
- export interface TokenRefreshResponse {
27
- access: string;
28
- refresh: string;
29
- }
30
- export interface UserProfile {
31
- id: string;
32
- email: string;
33
- first_name: string;
34
- last_name: string;
35
- is_verified: boolean;
36
- is_signup_completed: boolean;
37
- }
38
- export declare class AuthService extends BaseService {
39
- constructor(apiClient: BaseApiClient);
40
- /**
41
- * Sign in user
42
- */
43
- signin(data: SigninPayload): Promise<unknown>;
44
- /**
45
- * Sign out user
46
- */
47
- signout(): Promise<unknown>;
48
- /**
49
- * Sign up new user
50
- */
51
- signup(data: SignupPayload): Promise<unknown>;
52
- /**
53
- * Verify email address
54
- */
55
- verifyEmail(data: EmailVerificationPayload): Promise<unknown>;
56
- /**
57
- * Resend verification code
58
- */
59
- resendVerificationCode(): Promise<unknown>;
60
- /**
61
- * Refresh authentication tokens
62
- */
63
- refreshToken(data: TokenRefreshPayload): Promise<TokenRefreshResponse>;
64
- /**
65
- * Get current user profile
66
- */
67
- getProfile(): Promise<UserProfile>;
68
- /**
69
- * Check authentication status
70
- */
71
- checkStatus(): Promise<{
72
- authenticated: boolean;
73
- }>;
74
- }
75
- //# sourceMappingURL=AuthService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../src/services/AuthService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,qBAAa,WAAY,SAAQ,WAAW;gBAC9B,SAAS,EAAE,aAAa;IAIpC;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,aAAa;IAKhC;;OAEG;IACG,OAAO;IAKb;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,aAAa;IAKhC;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,wBAAwB;IAKhD;;OAEG;IACG,sBAAsB;IAK5B;;OAEG;IACG,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAQ5E;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAcxC;;OAEG;IACG,WAAW;;;CASlB"}
@@ -1,83 +0,0 @@
1
- /**
2
- * Authentication service with React Query integration
3
- *
4
- * Provides authentication operations with proper query invalidation
5
- * and state management across platforms.
6
- */
7
- import { BaseService } from './BaseService';
8
- export class AuthService extends BaseService {
9
- constructor(apiClient) {
10
- super(apiClient, '/api');
11
- }
12
- /**
13
- * Sign in user
14
- */
15
- async signin(data) {
16
- const response = await this.apiClient.post(this.buildEndpoint('signin/'), data);
17
- return this.extractData(response);
18
- }
19
- /**
20
- * Sign out user
21
- */
22
- async signout() {
23
- const response = await this.apiClient.post(this.buildEndpoint('signout/'));
24
- return this.extractData(response);
25
- }
26
- /**
27
- * Sign up new user
28
- */
29
- async signup(data) {
30
- const response = await this.apiClient.post(this.buildEndpoint('signup/'), data);
31
- return this.extractData(response);
32
- }
33
- /**
34
- * Verify email address
35
- */
36
- async verifyEmail(data) {
37
- const response = await this.apiClient.post(this.buildEndpoint('email-verification/'), data);
38
- return this.extractData(response);
39
- }
40
- /**
41
- * Resend verification code
42
- */
43
- async resendVerificationCode() {
44
- const response = await this.apiClient.post(this.buildEndpoint('resend-verification/'));
45
- return this.extractData(response);
46
- }
47
- /**
48
- * Refresh authentication tokens
49
- */
50
- async refreshToken(data) {
51
- const response = await this.apiClient.post(this.buildEndpoint('token/refresh/'), data);
52
- return this.extractData(response);
53
- }
54
- /**
55
- * Get current user profile
56
- */
57
- async getProfile() {
58
- // Get the first user profile (current user's profile)
59
- const response = await this.apiClient.get(this.buildEndpoint('user-profiles/'));
60
- const profiles = this.extractData(response);
61
- if (!profiles.results || profiles.results.length === 0) {
62
- throw new Error('No user profile found');
63
- }
64
- const profile = profiles.results[0];
65
- if (!profile) {
66
- throw new Error('No user profile found');
67
- }
68
- return profile;
69
- }
70
- /**
71
- * Check authentication status
72
- */
73
- async checkStatus() {
74
- // Use the profile endpoint to check auth status
75
- try {
76
- await this.getProfile();
77
- return { authenticated: true };
78
- }
79
- catch (error) {
80
- return { authenticated: false };
81
- }
82
- }
83
- }
@@ -1,48 +0,0 @@
1
- /**
2
- * Base service class for all API services
3
- *
4
- * Provides common functionality and patterns for API interaction
5
- * that can be shared across all domain services.
6
- */
7
- import type { BaseApiClient, ApiResponse } from '../core/BaseApiClient';
8
- export declare abstract class BaseService {
9
- protected apiClient: BaseApiClient;
10
- protected baseEndpoint: string;
11
- constructor(apiClient: BaseApiClient, baseEndpoint: string);
12
- /**
13
- * Build endpoint URL relative to service base
14
- */
15
- protected buildEndpoint(path?: string): string;
16
- /**
17
- * Extract data from API response
18
- */
19
- protected extractData<T>(response: ApiResponse<T>): T;
20
- /**
21
- * Handle paginated responses
22
- */
23
- protected handlePaginatedResponse<T>(response: ApiResponse<PaginatedResponse<T>>): PaginatedResponse<T>;
24
- /**
25
- * Build query parameters from filters
26
- */
27
- protected buildQueryParams(filters: Record<string, unknown>): Record<string, string>;
28
- }
29
- /**
30
- * Common paginated response interface
31
- */
32
- export interface PaginatedResponse<T> {
33
- count: number;
34
- next: string | null;
35
- previous: string | null;
36
- results: T[];
37
- }
38
- /**
39
- * Common list filters interface
40
- */
41
- export interface BaseListFilters {
42
- page?: number;
43
- page_size?: number;
44
- ordering?: string;
45
- search?: string;
46
- [key: string]: unknown;
47
- }
48
- //# sourceMappingURL=BaseService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseService.d.ts","sourceRoot":"","sources":["../../src/services/BaseService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAExE,8BAAsB,WAAW;IAC/B,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC;IACnC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;gBAEnB,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM;IAK1D;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,GAAE,MAAW,GAAG,MAAM;IAMlD;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAIrD;;OAEG;IACH,SAAS,CAAC,uBAAuB,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAIvG;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAiBrF;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,CAAC,EAAE,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -1,51 +0,0 @@
1
- /**
2
- * Base service class for all API services
3
- *
4
- * Provides common functionality and patterns for API interaction
5
- * that can be shared across all domain services.
6
- */
7
- export class BaseService {
8
- constructor(apiClient, baseEndpoint) {
9
- this.apiClient = apiClient;
10
- this.baseEndpoint = baseEndpoint;
11
- }
12
- /**
13
- * Build endpoint URL relative to service base
14
- */
15
- buildEndpoint(path = '') {
16
- const cleanBase = this.baseEndpoint.replace(/\/$/, '');
17
- const cleanPath = path.replace(/^\//, '');
18
- return cleanPath ? `${cleanBase}/${cleanPath}` : cleanBase;
19
- }
20
- /**
21
- * Extract data from API response
22
- */
23
- extractData(response) {
24
- return response.data;
25
- }
26
- /**
27
- * Handle paginated responses
28
- */
29
- handlePaginatedResponse(response) {
30
- return response.data;
31
- }
32
- /**
33
- * Build query parameters from filters
34
- */
35
- buildQueryParams(filters) {
36
- const params = {};
37
- Object.entries(filters).forEach(([key, value]) => {
38
- if (value !== undefined && value !== null && value !== '') {
39
- if (Array.isArray(value)) {
40
- if (value.length > 0) {
41
- params[key] = value.join(',');
42
- }
43
- }
44
- else {
45
- params[key] = String(value);
46
- }
47
- }
48
- });
49
- return params;
50
- }
51
- }