@oxyhq/services 5.16.44 → 5.17.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 (512) hide show
  1. package/README.md +29 -10
  2. package/lib/commonjs/core/OxyServices.js +1 -1
  3. package/lib/commonjs/core/index.js +20 -15
  4. package/lib/commonjs/core/index.js.map +1 -1
  5. package/lib/commonjs/core/mixins/OxyServices.auth.js +36 -53
  6. package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -1
  7. package/lib/commonjs/core/mixins/OxyServices.user.js +10 -17
  8. package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -1
  9. package/lib/commonjs/core/services/TokenService.js +27 -13
  10. package/lib/commonjs/core/services/TokenService.js.map +1 -1
  11. package/lib/commonjs/crypto/index.js +0 -16
  12. package/lib/commonjs/crypto/index.js.map +1 -1
  13. package/lib/commonjs/crypto/keyManager.js +21 -22
  14. package/lib/commonjs/crypto/keyManager.js.map +1 -1
  15. package/lib/commonjs/crypto/polyfill.js +1 -10
  16. package/lib/commonjs/crypto/polyfill.js.map +1 -1
  17. package/lib/commonjs/crypto/signatureService.js +18 -32
  18. package/lib/commonjs/crypto/signatureService.js.map +1 -1
  19. package/lib/commonjs/index.js +13 -134
  20. package/lib/commonjs/index.js.map +1 -1
  21. package/lib/commonjs/models/interfaces.js +0 -7
  22. package/lib/commonjs/models/interfaces.js.map +1 -1
  23. package/lib/commonjs/node/index.js +1 -10
  24. package/lib/commonjs/node/index.js.map +1 -1
  25. package/lib/commonjs/ui/components/BottomSheetRouter.js +1 -9
  26. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
  27. package/lib/commonjs/ui/components/OxyProvider.js +9 -20
  28. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  29. package/lib/commonjs/ui/context/OxyContext.js +779 -450
  30. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  31. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +551 -0
  32. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -0
  33. package/lib/commonjs/ui/context/hooks/useDeviceManagement.js +73 -0
  34. package/lib/commonjs/ui/context/hooks/useDeviceManagement.js.map +1 -0
  35. package/lib/commonjs/ui/context/hooks/useStorage.js +79 -0
  36. package/lib/commonjs/ui/context/hooks/useStorage.js.map +1 -0
  37. package/lib/commonjs/ui/hooks/index.js +0 -20
  38. package/lib/commonjs/ui/hooks/index.js.map +1 -1
  39. package/lib/commonjs/ui/hooks/mutations/index.js +0 -12
  40. package/lib/commonjs/ui/hooks/mutations/index.js.map +1 -1
  41. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +23 -74
  42. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  43. package/lib/commonjs/ui/hooks/queries/index.js +0 -12
  44. package/lib/commonjs/ui/hooks/queries/index.js.map +1 -1
  45. package/lib/commonjs/ui/hooks/queries/queryKeys.js +1 -3
  46. package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
  47. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +28 -64
  48. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  49. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +6 -4
  50. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  51. package/lib/commonjs/ui/hooks/useDeviceManagement.js +73 -0
  52. package/lib/commonjs/ui/hooks/useDeviceManagement.js.map +1 -0
  53. package/lib/commonjs/ui/hooks/useProfileEditing.js +5 -3
  54. package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
  55. package/lib/commonjs/ui/hooks/useSessionManagement.js +284 -0
  56. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -0
  57. package/lib/commonjs/ui/index.js +2 -10
  58. package/lib/commonjs/ui/index.js.map +1 -1
  59. package/lib/commonjs/ui/navigation/routes.js +1 -5
  60. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  61. package/lib/commonjs/ui/screens/AccountCenterScreen.js +4 -9
  62. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +19 -37
  64. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +5 -5
  66. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/OxyAuthScreen.js +15 -2
  68. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +97 -76
  70. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/ProfileScreen.js +6 -6
  72. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  73. package/lib/commonjs/ui/stores/authStore.js +6 -54
  74. package/lib/commonjs/ui/stores/authStore.js.map +1 -1
  75. package/lib/commonjs/ui/styles/spacing.js +2 -54
  76. package/lib/commonjs/ui/styles/spacing.js.map +1 -1
  77. package/lib/commonjs/ui/utils/avatarUtils.js +12 -9
  78. package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
  79. package/lib/commonjs/ui/utils/sessionHelpers.js +1 -7
  80. package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
  81. package/lib/commonjs/utils/deviceManager.js +177 -0
  82. package/lib/commonjs/utils/deviceManager.js.map +1 -0
  83. package/lib/commonjs/utils/errorUtils.js +0 -13
  84. package/lib/commonjs/utils/errorUtils.js.map +1 -1
  85. package/lib/commonjs/utils/index.js +7 -0
  86. package/lib/commonjs/utils/index.js.map +1 -1
  87. package/lib/commonjs/utils/sessionUtils.js +1 -8
  88. package/lib/commonjs/utils/sessionUtils.js.map +1 -1
  89. package/lib/commonjs/utils/validationUtils.js +1 -15
  90. package/lib/commonjs/utils/validationUtils.js.map +1 -1
  91. package/lib/module/core/OxyServices.js +1 -1
  92. package/lib/module/core/index.js +4 -6
  93. package/lib/module/core/index.js.map +1 -1
  94. package/lib/module/core/mixins/OxyServices.auth.js +36 -53
  95. package/lib/module/core/mixins/OxyServices.auth.js.map +1 -1
  96. package/lib/module/core/mixins/OxyServices.user.js +10 -17
  97. package/lib/module/core/mixins/OxyServices.user.js.map +1 -1
  98. package/lib/module/core/services/TokenService.js +27 -13
  99. package/lib/module/core/services/TokenService.js.map +1 -1
  100. package/lib/module/crypto/index.js +0 -3
  101. package/lib/module/crypto/index.js.map +1 -1
  102. package/lib/module/crypto/keyManager.js +21 -22
  103. package/lib/module/crypto/keyManager.js.map +1 -1
  104. package/lib/module/crypto/polyfill.js +1 -2
  105. package/lib/module/crypto/polyfill.js.map +1 -1
  106. package/lib/module/crypto/signatureService.js +18 -32
  107. package/lib/module/crypto/signatureService.js.map +1 -1
  108. package/lib/module/index.js +7 -19
  109. package/lib/module/index.js.map +1 -1
  110. package/lib/module/models/interfaces.js +0 -7
  111. package/lib/module/models/interfaces.js.map +1 -1
  112. package/lib/module/node/index.js +0 -3
  113. package/lib/module/node/index.js.map +1 -1
  114. package/lib/module/ui/components/BottomSheetRouter.js +2 -6
  115. package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
  116. package/lib/module/ui/components/OxyProvider.js +9 -20
  117. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  118. package/lib/module/ui/context/OxyContext.js +779 -450
  119. package/lib/module/ui/context/OxyContext.js.map +1 -1
  120. package/lib/module/ui/context/hooks/useAuthOperations.js +545 -0
  121. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -0
  122. package/lib/module/ui/context/hooks/useDeviceManagement.js +68 -0
  123. package/lib/module/ui/context/hooks/useDeviceManagement.js.map +1 -0
  124. package/lib/module/ui/context/hooks/useStorage.js +74 -0
  125. package/lib/module/ui/context/hooks/useStorage.js.map +1 -0
  126. package/lib/module/ui/hooks/index.js +0 -1
  127. package/lib/module/ui/hooks/index.js.map +1 -1
  128. package/lib/module/ui/hooks/mutations/index.js +1 -1
  129. package/lib/module/ui/hooks/mutations/index.js.map +1 -1
  130. package/lib/module/ui/hooks/mutations/useAccountMutations.js +21 -71
  131. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  132. package/lib/module/ui/hooks/queries/index.js +1 -1
  133. package/lib/module/ui/hooks/queries/index.js.map +1 -1
  134. package/lib/module/ui/hooks/queries/queryKeys.js +1 -3
  135. package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
  136. package/lib/module/ui/hooks/queries/useAccountQueries.js +27 -61
  137. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  138. package/lib/module/ui/hooks/queries/useServicesQueries.js +6 -4
  139. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  140. package/lib/module/ui/hooks/useDeviceManagement.js +68 -0
  141. package/lib/module/ui/hooks/useDeviceManagement.js.map +1 -0
  142. package/lib/module/ui/hooks/useProfileEditing.js +5 -3
  143. package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
  144. package/lib/module/ui/hooks/useSessionManagement.js +279 -0
  145. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -0
  146. package/lib/module/ui/index.js +1 -2
  147. package/lib/module/ui/index.js.map +1 -1
  148. package/lib/module/ui/navigation/routes.js +1 -5
  149. package/lib/module/ui/navigation/routes.js.map +1 -1
  150. package/lib/module/ui/screens/AccountCenterScreen.js +4 -9
  151. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  152. package/lib/module/ui/screens/AccountSettingsScreen.js +19 -37
  153. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  154. package/lib/module/ui/screens/AccountSwitcherScreen.js +5 -5
  155. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  156. package/lib/module/ui/screens/OxyAuthScreen.js +15 -2
  157. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  158. package/lib/module/ui/screens/PrivacySettingsScreen.js +98 -77
  159. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  160. package/lib/module/ui/screens/ProfileScreen.js +6 -6
  161. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  162. package/lib/module/ui/stores/authStore.js +6 -54
  163. package/lib/module/ui/stores/authStore.js.map +1 -1
  164. package/lib/module/ui/styles/spacing.js +2 -6
  165. package/lib/module/ui/styles/spacing.js.map +1 -1
  166. package/lib/module/ui/utils/avatarUtils.js +12 -9
  167. package/lib/module/ui/utils/avatarUtils.js.map +1 -1
  168. package/lib/module/ui/utils/sessionHelpers.js +1 -7
  169. package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
  170. package/lib/module/utils/deviceManager.js +171 -0
  171. package/lib/module/utils/deviceManager.js.map +1 -0
  172. package/lib/module/utils/errorUtils.js +0 -7
  173. package/lib/module/utils/errorUtils.js.map +1 -1
  174. package/lib/module/utils/index.js +1 -2
  175. package/lib/module/utils/index.js.map +1 -1
  176. package/lib/module/utils/sessionUtils.js +1 -8
  177. package/lib/module/utils/sessionUtils.js.map +1 -1
  178. package/lib/module/utils/validationUtils.js +0 -13
  179. package/lib/module/utils/validationUtils.js.map +1 -1
  180. package/lib/typescript/core/OxyServices.d.ts +1 -1
  181. package/lib/typescript/core/index.d.ts +3 -3
  182. package/lib/typescript/core/index.d.ts.map +1 -1
  183. package/lib/typescript/core/mixins/OxyServices.auth.d.ts +21 -44
  184. package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -1
  185. package/lib/typescript/core/mixins/OxyServices.user.d.ts +1 -0
  186. package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -1
  187. package/lib/typescript/core/mixins/index.d.ts +8 -15
  188. package/lib/typescript/core/mixins/index.d.ts.map +1 -1
  189. package/lib/typescript/core/services/TokenService.d.ts.map +1 -1
  190. package/lib/typescript/crypto/index.d.ts +0 -1
  191. package/lib/typescript/crypto/index.d.ts.map +1 -1
  192. package/lib/typescript/crypto/keyManager.d.ts +2 -15
  193. package/lib/typescript/crypto/keyManager.d.ts.map +1 -1
  194. package/lib/typescript/crypto/polyfill.d.ts +1 -2
  195. package/lib/typescript/crypto/polyfill.d.ts.map +1 -1
  196. package/lib/typescript/crypto/signatureService.d.ts +0 -13
  197. package/lib/typescript/crypto/signatureService.d.ts.map +1 -1
  198. package/lib/typescript/index.d.ts +7 -12
  199. package/lib/typescript/index.d.ts.map +1 -1
  200. package/lib/typescript/models/interfaces.d.ts +36 -5
  201. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  202. package/lib/typescript/models/session.d.ts +18 -3
  203. package/lib/typescript/models/session.d.ts.map +1 -1
  204. package/lib/typescript/node/index.d.ts +0 -1
  205. package/lib/typescript/node/index.d.ts.map +1 -1
  206. package/lib/typescript/ui/components/BottomSheetRouter.d.ts +0 -5
  207. package/lib/typescript/ui/components/BottomSheetRouter.d.ts.map +1 -1
  208. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
  209. package/lib/typescript/ui/components/TextField/Addons/Outline.d.ts +2 -2
  210. package/lib/typescript/ui/components/TextField/helpers.d.ts +2 -2
  211. package/lib/typescript/ui/components/TextField/types.d.ts +0 -1
  212. package/lib/typescript/ui/components/TextField/types.d.ts.map +1 -1
  213. package/lib/typescript/ui/context/OxyContext.d.ts +28 -5
  214. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  215. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts +59 -0
  216. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts.map +1 -0
  217. package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts +27 -0
  218. package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts.map +1 -0
  219. package/lib/typescript/ui/context/hooks/useStorage.d.ts +22 -0
  220. package/lib/typescript/ui/context/hooks/useStorage.d.ts.map +1 -0
  221. package/lib/typescript/ui/hooks/index.d.ts +0 -1
  222. package/lib/typescript/ui/hooks/index.d.ts.map +1 -1
  223. package/lib/typescript/ui/hooks/mutations/index.d.ts +1 -1
  224. package/lib/typescript/ui/hooks/mutations/index.d.ts.map +1 -1
  225. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts +8 -19
  226. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  227. package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts +1 -1
  228. package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  229. package/lib/typescript/ui/hooks/queries/index.d.ts +1 -1
  230. package/lib/typescript/ui/hooks/queries/index.d.ts.map +1 -1
  231. package/lib/typescript/ui/hooks/queries/queryKeys.d.ts +0 -2
  232. package/lib/typescript/ui/hooks/queries/queryKeys.d.ts.map +1 -1
  233. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts +5 -17
  234. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  235. package/lib/typescript/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  236. package/lib/typescript/ui/hooks/useDeviceManagement.d.ts +27 -0
  237. package/lib/typescript/ui/hooks/useDeviceManagement.d.ts.map +1 -0
  238. package/lib/typescript/ui/hooks/useProfileEditing.d.ts.map +1 -1
  239. package/lib/typescript/ui/hooks/useSessionManagement.d.ts +41 -0
  240. package/lib/typescript/ui/hooks/useSessionManagement.d.ts.map +1 -0
  241. package/lib/typescript/ui/index.d.ts +0 -1
  242. package/lib/typescript/ui/index.d.ts.map +1 -1
  243. package/lib/typescript/ui/navigation/routes.d.ts +1 -1
  244. package/lib/typescript/ui/navigation/routes.d.ts.map +1 -1
  245. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  246. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  247. package/lib/typescript/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  248. package/lib/typescript/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  249. package/lib/typescript/ui/stores/authStore.d.ts +1 -8
  250. package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
  251. package/lib/typescript/ui/styles/spacing.d.ts +0 -5
  252. package/lib/typescript/ui/styles/spacing.d.ts.map +1 -1
  253. package/lib/typescript/ui/utils/avatarUtils.d.ts +4 -1
  254. package/lib/typescript/ui/utils/avatarUtils.d.ts.map +1 -1
  255. package/lib/typescript/ui/utils/sessionHelpers.d.ts +0 -1
  256. package/lib/typescript/ui/utils/sessionHelpers.d.ts.map +1 -1
  257. package/lib/typescript/utils/deviceManager.d.ts +66 -0
  258. package/lib/typescript/utils/deviceManager.d.ts.map +1 -0
  259. package/lib/typescript/utils/errorUtils.d.ts +0 -6
  260. package/lib/typescript/utils/errorUtils.d.ts.map +1 -1
  261. package/lib/typescript/utils/index.d.ts +2 -0
  262. package/lib/typescript/utils/index.d.ts.map +1 -1
  263. package/lib/typescript/utils/sessionUtils.d.ts.map +1 -1
  264. package/lib/typescript/utils/validationUtils.d.ts +0 -8
  265. package/lib/typescript/utils/validationUtils.d.ts.map +1 -1
  266. package/package.json +1 -6
  267. package/src/core/OxyServices.ts +1 -1
  268. package/src/core/index.ts +5 -8
  269. package/src/core/mixins/OxyServices.auth.ts +44 -87
  270. package/src/core/mixins/OxyServices.user.ts +10 -18
  271. package/src/core/services/TokenService.ts +27 -16
  272. package/src/crypto/index.ts +1 -3
  273. package/src/crypto/keyManager.ts +21 -30
  274. package/src/crypto/polyfill.ts +1 -2
  275. package/src/crypto/signatureService.ts +19 -43
  276. package/src/index.ts +6 -41
  277. package/src/models/interfaces.ts +39 -12
  278. package/src/models/session.ts +19 -7
  279. package/src/node/index.ts +0 -3
  280. package/src/ui/components/BottomSheetRouter.tsx +1 -6
  281. package/src/ui/components/OxyProvider.tsx +10 -17
  282. package/src/ui/components/TextField/Addons/Outline.tsx +2 -2
  283. package/src/ui/components/TextField/helpers.tsx +2 -2
  284. package/src/ui/components/TextField/types.tsx +1 -1
  285. package/src/ui/context/OxyContext.tsx +831 -463
  286. package/src/ui/context/hooks/useAuthOperations.ts +620 -0
  287. package/src/ui/context/hooks/useDeviceManagement.ts +108 -0
  288. package/src/ui/context/hooks/useStorage.ts +104 -0
  289. package/src/ui/hooks/index.ts +1 -2
  290. package/src/ui/hooks/mutations/index.ts +0 -2
  291. package/src/ui/hooks/mutations/useAccountMutations.ts +20 -66
  292. package/src/ui/hooks/queries/index.ts +0 -2
  293. package/src/ui/hooks/queries/queryKeys.ts +0 -2
  294. package/src/ui/hooks/queries/useAccountQueries.ts +19 -53
  295. package/src/ui/hooks/queries/useServicesQueries.ts +5 -5
  296. package/src/ui/hooks/useDeviceManagement.ts +108 -0
  297. package/src/ui/hooks/useProfileEditing.ts +3 -3
  298. package/src/ui/hooks/useSessionManagement.ts +405 -0
  299. package/src/ui/index.ts +1 -2
  300. package/src/ui/navigation/routes.ts +2 -6
  301. package/src/ui/screens/AccountCenterScreen.tsx +4 -9
  302. package/src/ui/screens/AccountSettingsScreen.tsx +31 -49
  303. package/src/ui/screens/AccountSwitcherScreen.tsx +5 -5
  304. package/src/ui/screens/OxyAuthScreen.tsx +19 -4
  305. package/src/ui/screens/PrivacySettingsScreen.tsx +101 -67
  306. package/src/ui/screens/ProfileScreen.tsx +10 -10
  307. package/src/ui/stores/authStore.ts +8 -48
  308. package/src/ui/styles/spacing.ts +2 -15
  309. package/src/ui/utils/avatarUtils.ts +21 -19
  310. package/src/ui/utils/sessionHelpers.ts +0 -7
  311. package/src/utils/__tests__/validationUtils.test.ts +1 -16
  312. package/src/utils/deviceManager.ts +198 -0
  313. package/src/utils/errorUtils.ts +1 -8
  314. package/src/utils/index.ts +2 -1
  315. package/src/utils/sessionUtils.ts +0 -8
  316. package/src/utils/validationUtils.ts +0 -12
  317. package/lib/commonjs/adapters/expo/crypto.js +0 -56
  318. package/lib/commonjs/adapters/expo/crypto.js.map +0 -1
  319. package/lib/commonjs/adapters/expo/fetch.js +0 -30
  320. package/lib/commonjs/adapters/expo/fetch.js.map +0 -1
  321. package/lib/commonjs/adapters/expo/index.js +0 -48
  322. package/lib/commonjs/adapters/expo/index.js.map +0 -1
  323. package/lib/commonjs/adapters/expo/storage.js +0 -201
  324. package/lib/commonjs/adapters/expo/storage.js.map +0 -1
  325. package/lib/commonjs/adapters/index.js +0 -48
  326. package/lib/commonjs/adapters/index.js.map +0 -1
  327. package/lib/commonjs/adapters/node/crypto.js +0 -40
  328. package/lib/commonjs/adapters/node/crypto.js.map +0 -1
  329. package/lib/commonjs/adapters/node/fetch.js +0 -62
  330. package/lib/commonjs/adapters/node/fetch.js.map +0 -1
  331. package/lib/commonjs/adapters/node/index.js +0 -34
  332. package/lib/commonjs/adapters/node/index.js.map +0 -1
  333. package/lib/commonjs/adapters/node/storage.js +0 -163
  334. package/lib/commonjs/adapters/node/storage.js.map +0 -1
  335. package/lib/commonjs/core/identity-session/DeviceManager.js +0 -237
  336. package/lib/commonjs/core/identity-session/DeviceManager.js.map +0 -1
  337. package/lib/commonjs/core/identity-session/INTEGRATION_GUIDE.md +0 -287
  338. package/lib/commonjs/core/identity-session/IdentityManager.js +0 -400
  339. package/lib/commonjs/core/identity-session/IdentityManager.js.map +0 -1
  340. package/lib/commonjs/core/identity-session/IdentitySessionCore.js +0 -394
  341. package/lib/commonjs/core/identity-session/IdentitySessionCore.js.map +0 -1
  342. package/lib/commonjs/core/identity-session/RefreshManager.js +0 -137
  343. package/lib/commonjs/core/identity-session/RefreshManager.js.map +0 -1
  344. package/lib/commonjs/core/identity-session/SessionManager.js +0 -427
  345. package/lib/commonjs/core/identity-session/SessionManager.js.map +0 -1
  346. package/lib/commonjs/core/identity-session/createIdentitySessionCore.js +0 -24
  347. package/lib/commonjs/core/identity-session/createIdentitySessionCore.js.map +0 -1
  348. package/lib/commonjs/core/identity-session/errors.js +0 -176
  349. package/lib/commonjs/core/identity-session/errors.js.map +0 -1
  350. package/lib/commonjs/core/identity-session/index.js +0 -80
  351. package/lib/commonjs/core/identity-session/index.js.map +0 -1
  352. package/lib/commonjs/core/identity-session/types.js +0 -2
  353. package/lib/commonjs/core/identity-session/types.js.map +0 -1
  354. package/lib/commonjs/crypto/README.md +0 -142
  355. package/lib/commonjs/crypto/core.js +0 -147
  356. package/lib/commonjs/crypto/core.js.map +0 -1
  357. package/lib/commonjs/node/signatureService.js +0 -107
  358. package/lib/commonjs/node/signatureService.js.map +0 -1
  359. package/lib/commonjs/ui/hooks/auth/index.js +0 -37
  360. package/lib/commonjs/ui/hooks/auth/index.js.map +0 -1
  361. package/lib/commonjs/ui/hooks/auth/useUsernameValidation.js +0 -171
  362. package/lib/commonjs/ui/hooks/auth/useUsernameValidation.js.map +0 -1
  363. package/lib/commonjs/ui/hooks/useAvatarPicker.js +0 -52
  364. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +0 -1
  365. package/lib/commonjs/ui/hooks/useIdentityTransfer.js +0 -125
  366. package/lib/commonjs/ui/hooks/useIdentityTransfer.js.map +0 -1
  367. package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js +0 -81
  368. package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js.map +0 -1
  369. package/lib/commonjs/ui/hooks/useTransferQueries.js +0 -85
  370. package/lib/commonjs/ui/hooks/useTransferQueries.js.map +0 -1
  371. package/lib/commonjs/ui/stores/transferStore.js +0 -157
  372. package/lib/commonjs/ui/stores/transferStore.js.map +0 -1
  373. package/lib/module/adapters/expo/crypto.js +0 -51
  374. package/lib/module/adapters/expo/crypto.js.map +0 -1
  375. package/lib/module/adapters/expo/fetch.js +0 -26
  376. package/lib/module/adapters/expo/fetch.js.map +0 -1
  377. package/lib/module/adapters/expo/index.js +0 -45
  378. package/lib/module/adapters/expo/index.js.map +0 -1
  379. package/lib/module/adapters/expo/storage.js +0 -198
  380. package/lib/module/adapters/expo/storage.js.map +0 -1
  381. package/lib/module/adapters/index.js +0 -45
  382. package/lib/module/adapters/index.js.map +0 -1
  383. package/lib/module/adapters/node/crypto.js +0 -36
  384. package/lib/module/adapters/node/crypto.js.map +0 -1
  385. package/lib/module/adapters/node/fetch.js +0 -57
  386. package/lib/module/adapters/node/fetch.js.map +0 -1
  387. package/lib/module/adapters/node/index.js +0 -31
  388. package/lib/module/adapters/node/index.js.map +0 -1
  389. package/lib/module/adapters/node/storage.js +0 -159
  390. package/lib/module/adapters/node/storage.js.map +0 -1
  391. package/lib/module/core/identity-session/DeviceManager.js +0 -232
  392. package/lib/module/core/identity-session/DeviceManager.js.map +0 -1
  393. package/lib/module/core/identity-session/INTEGRATION_GUIDE.md +0 -287
  394. package/lib/module/core/identity-session/IdentityManager.js +0 -395
  395. package/lib/module/core/identity-session/IdentityManager.js.map +0 -1
  396. package/lib/module/core/identity-session/IdentitySessionCore.js +0 -390
  397. package/lib/module/core/identity-session/IdentitySessionCore.js.map +0 -1
  398. package/lib/module/core/identity-session/RefreshManager.js +0 -132
  399. package/lib/module/core/identity-session/RefreshManager.js.map +0 -1
  400. package/lib/module/core/identity-session/SessionManager.js +0 -422
  401. package/lib/module/core/identity-session/SessionManager.js.map +0 -1
  402. package/lib/module/core/identity-session/createIdentitySessionCore.js +0 -21
  403. package/lib/module/core/identity-session/createIdentitySessionCore.js.map +0 -1
  404. package/lib/module/core/identity-session/errors.js +0 -170
  405. package/lib/module/core/identity-session/errors.js.map +0 -1
  406. package/lib/module/core/identity-session/index.js +0 -17
  407. package/lib/module/core/identity-session/index.js.map +0 -1
  408. package/lib/module/core/identity-session/types.js +0 -2
  409. package/lib/module/core/identity-session/types.js.map +0 -1
  410. package/lib/module/crypto/README.md +0 -142
  411. package/lib/module/crypto/core.js +0 -133
  412. package/lib/module/crypto/core.js.map +0 -1
  413. package/lib/module/node/signatureService.js +0 -101
  414. package/lib/module/node/signatureService.js.map +0 -1
  415. package/lib/module/ui/hooks/auth/index.js +0 -7
  416. package/lib/module/ui/hooks/auth/index.js.map +0 -1
  417. package/lib/module/ui/hooks/auth/useUsernameValidation.js +0 -167
  418. package/lib/module/ui/hooks/auth/useUsernameValidation.js.map +0 -1
  419. package/lib/module/ui/hooks/useAvatarPicker.js +0 -48
  420. package/lib/module/ui/hooks/useAvatarPicker.js.map +0 -1
  421. package/lib/module/ui/hooks/useIdentityTransfer.js +0 -121
  422. package/lib/module/ui/hooks/useIdentityTransfer.js.map +0 -1
  423. package/lib/module/ui/hooks/useTransferCodesPersistence.js +0 -77
  424. package/lib/module/ui/hooks/useTransferCodesPersistence.js.map +0 -1
  425. package/lib/module/ui/hooks/useTransferQueries.js +0 -80
  426. package/lib/module/ui/hooks/useTransferQueries.js.map +0 -1
  427. package/lib/module/ui/stores/transferStore.js +0 -152
  428. package/lib/module/ui/stores/transferStore.js.map +0 -1
  429. package/lib/typescript/adapters/expo/crypto.d.ts +0 -17
  430. package/lib/typescript/adapters/expo/crypto.d.ts.map +0 -1
  431. package/lib/typescript/adapters/expo/fetch.d.ts +0 -16
  432. package/lib/typescript/adapters/expo/fetch.d.ts.map +0 -1
  433. package/lib/typescript/adapters/expo/index.d.ts +0 -23
  434. package/lib/typescript/adapters/expo/index.d.ts.map +0 -1
  435. package/lib/typescript/adapters/expo/storage.d.ts +0 -23
  436. package/lib/typescript/adapters/expo/storage.d.ts.map +0 -1
  437. package/lib/typescript/adapters/index.d.ts +0 -17
  438. package/lib/typescript/adapters/index.d.ts.map +0 -1
  439. package/lib/typescript/adapters/node/crypto.d.ts +0 -17
  440. package/lib/typescript/adapters/node/crypto.d.ts.map +0 -1
  441. package/lib/typescript/adapters/node/fetch.d.ts +0 -16
  442. package/lib/typescript/adapters/node/fetch.d.ts.map +0 -1
  443. package/lib/typescript/adapters/node/index.d.ts +0 -23
  444. package/lib/typescript/adapters/node/index.d.ts.map +0 -1
  445. package/lib/typescript/adapters/node/storage.d.ts +0 -23
  446. package/lib/typescript/adapters/node/storage.d.ts.map +0 -1
  447. package/lib/typescript/core/identity-session/DeviceManager.d.ts +0 -64
  448. package/lib/typescript/core/identity-session/DeviceManager.d.ts.map +0 -1
  449. package/lib/typescript/core/identity-session/IdentityManager.d.ts +0 -88
  450. package/lib/typescript/core/identity-session/IdentityManager.d.ts.map +0 -1
  451. package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts +0 -141
  452. package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts.map +0 -1
  453. package/lib/typescript/core/identity-session/RefreshManager.d.ts +0 -36
  454. package/lib/typescript/core/identity-session/RefreshManager.d.ts.map +0 -1
  455. package/lib/typescript/core/identity-session/SessionManager.d.ts +0 -104
  456. package/lib/typescript/core/identity-session/SessionManager.d.ts.map +0 -1
  457. package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts +0 -11
  458. package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts.map +0 -1
  459. package/lib/typescript/core/identity-session/errors.d.ts +0 -63
  460. package/lib/typescript/core/identity-session/errors.d.ts.map +0 -1
  461. package/lib/typescript/core/identity-session/index.d.ts +0 -14
  462. package/lib/typescript/core/identity-session/index.d.ts.map +0 -1
  463. package/lib/typescript/core/identity-session/types.d.ts +0 -196
  464. package/lib/typescript/core/identity-session/types.d.ts.map +0 -1
  465. package/lib/typescript/crypto/core.d.ts +0 -56
  466. package/lib/typescript/crypto/core.d.ts.map +0 -1
  467. package/lib/typescript/node/signatureService.d.ts +0 -55
  468. package/lib/typescript/node/signatureService.d.ts.map +0 -1
  469. package/lib/typescript/ui/hooks/auth/index.d.ts +0 -6
  470. package/lib/typescript/ui/hooks/auth/index.d.ts.map +0 -1
  471. package/lib/typescript/ui/hooks/auth/useUsernameValidation.d.ts +0 -32
  472. package/lib/typescript/ui/hooks/auth/useUsernameValidation.d.ts.map +0 -1
  473. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts +0 -18
  474. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts.map +0 -1
  475. package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts +0 -24
  476. package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts.map +0 -1
  477. package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts +0 -6
  478. package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts.map +0 -1
  479. package/lib/typescript/ui/hooks/useTransferQueries.d.ts +0 -26
  480. package/lib/typescript/ui/hooks/useTransferQueries.d.ts.map +0 -1
  481. package/lib/typescript/ui/stores/transferStore.d.ts +0 -36
  482. package/lib/typescript/ui/stores/transferStore.d.ts.map +0 -1
  483. package/src/adapters/expo/crypto.ts +0 -55
  484. package/src/adapters/expo/fetch.ts +0 -28
  485. package/src/adapters/expo/index.ts +0 -51
  486. package/src/adapters/expo/storage.ts +0 -228
  487. package/src/adapters/index.ts +0 -48
  488. package/src/adapters/node/crypto.ts +0 -39
  489. package/src/adapters/node/fetch.ts +0 -59
  490. package/src/adapters/node/index.ts +0 -37
  491. package/src/adapters/node/storage.ts +0 -170
  492. package/src/core/identity-session/DeviceManager.ts +0 -273
  493. package/src/core/identity-session/INTEGRATION_GUIDE.md +0 -287
  494. package/src/core/identity-session/IdentityManager.ts +0 -474
  495. package/src/core/identity-session/IdentitySessionCore.ts +0 -464
  496. package/src/core/identity-session/RefreshManager.ts +0 -189
  497. package/src/core/identity-session/SessionManager.ts +0 -500
  498. package/src/core/identity-session/createIdentitySessionCore.ts +0 -19
  499. package/src/core/identity-session/errors.ts +0 -197
  500. package/src/core/identity-session/index.ts +0 -15
  501. package/src/core/identity-session/types.ts +0 -188
  502. package/src/crypto/README.md +0 -142
  503. package/src/crypto/__tests__/core.test.ts +0 -203
  504. package/src/crypto/core.ts +0 -142
  505. package/src/node/signatureService.ts +0 -126
  506. package/src/ui/hooks/auth/index.ts +0 -9
  507. package/src/ui/hooks/auth/useUsernameValidation.ts +0 -177
  508. package/src/ui/hooks/useAvatarPicker.ts +0 -62
  509. package/src/ui/hooks/useIdentityTransfer.ts +0 -135
  510. package/src/ui/hooks/useTransferCodesPersistence.ts +0 -80
  511. package/src/ui/hooks/useTransferQueries.ts +0 -102
  512. package/src/ui/stores/transferStore.ts +0 -201
@@ -1,427 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.SessionManager = void 0;
7
- var _jwtDecode = require("jwt-decode");
8
- var _errors = require("./errors");
9
- /**
10
- * Session Manager
11
- *
12
- * Manages user sessions (Native + Web)
13
- * Handles session creation, storage, refresh, and invalidation.
14
- */
15
-
16
- const SESSION_STORAGE_KEY = 'oxy_sessions';
17
- const ACTIVE_SESSION_ID_KEY = 'oxy_active_session_id';
18
- const TOKEN_STORAGE_KEY = 'oxy_tokens';
19
- /**
20
- * Session Manager Class
21
- */
22
- class SessionManager {
23
- baseURL = null;
24
- cachedSessions = null;
25
- cachedActiveSessionId = null;
26
- tokenStore = {
27
- accessToken: null,
28
- refreshToken: null
29
- };
30
- constructor(adapter, deviceManager, refreshManager, baseURL) {
31
- this.adapter = adapter;
32
- this.deviceManager = deviceManager;
33
- this.refreshManager = refreshManager;
34
- this.baseURL = baseURL || null;
35
- if (baseURL) {
36
- this.refreshManager.setBaseURL(baseURL);
37
- }
38
- }
39
-
40
- /**
41
- * Set base URL for API requests
42
- */
43
- setBaseURL(baseURL) {
44
- this.baseURL = baseURL;
45
- this.refreshManager.setBaseURL(baseURL);
46
- }
47
-
48
- /**
49
- * Invalidate cached sessions
50
- */
51
- invalidateCache() {
52
- this.cachedSessions = null;
53
- this.cachedActiveSessionId = null;
54
- }
55
-
56
- /**
57
- * Load tokens from storage
58
- */
59
- async loadTokens() {
60
- try {
61
- const stored = await this.adapter.storage.get(TOKEN_STORAGE_KEY);
62
- if (stored) {
63
- this.tokenStore = JSON.parse(stored);
64
- }
65
- } catch (error) {
66
- console.warn('[SessionManager] Failed to load tokens:', error);
67
- }
68
- }
69
-
70
- /**
71
- * Save tokens to storage
72
- */
73
- async saveTokens() {
74
- try {
75
- await this.adapter.storage.set(TOKEN_STORAGE_KEY, JSON.stringify(this.tokenStore));
76
- } catch (error) {
77
- console.warn('[SessionManager] Failed to save tokens:', error);
78
- }
79
- }
80
-
81
- /**
82
- * Get access token
83
- */
84
- getAccessToken() {
85
- return this.tokenStore.accessToken;
86
- }
87
-
88
- /**
89
- * Get refresh token
90
- */
91
- getRefreshToken() {
92
- return this.tokenStore.refreshToken;
93
- }
94
-
95
- /**
96
- * Set tokens
97
- */
98
- async setTokens(accessToken, refreshToken) {
99
- this.tokenStore.accessToken = accessToken;
100
- if (refreshToken) {
101
- this.tokenStore.refreshToken = refreshToken;
102
- }
103
- await this.saveTokens();
104
- }
105
-
106
- /**
107
- * Clear tokens
108
- */
109
- async clearTokens() {
110
- this.tokenStore.accessToken = null;
111
- this.tokenStore.refreshToken = null;
112
- await this.saveTokens();
113
- }
114
-
115
- /**
116
- * Load sessions from storage
117
- */
118
- async loadSessions() {
119
- if (this.cachedSessions) {
120
- return this.cachedSessions;
121
- }
122
- try {
123
- const stored = await this.adapter.storage.get(SESSION_STORAGE_KEY);
124
- if (stored) {
125
- this.cachedSessions = JSON.parse(stored);
126
- return this.cachedSessions || [];
127
- }
128
- } catch (error) {
129
- console.warn('[SessionManager] Failed to load sessions:', error);
130
- }
131
- this.cachedSessions = [];
132
- return [];
133
- }
134
-
135
- /**
136
- * Save sessions to storage
137
- */
138
- async saveSessions(sessions) {
139
- try {
140
- await this.adapter.storage.set(SESSION_STORAGE_KEY, JSON.stringify(sessions));
141
- this.cachedSessions = sessions;
142
- } catch (error) {
143
- console.warn('[SessionManager] Failed to save sessions:', error);
144
- }
145
- }
146
-
147
- /**
148
- * Get active session ID
149
- */
150
- async getActiveSessionId() {
151
- if (this.cachedActiveSessionId !== null) {
152
- return this.cachedActiveSessionId;
153
- }
154
- try {
155
- const stored = await this.adapter.storage.get(ACTIVE_SESSION_ID_KEY);
156
- this.cachedActiveSessionId = stored;
157
- return stored;
158
- } catch (error) {
159
- console.warn('[SessionManager] Failed to load active session ID:', error);
160
- return null;
161
- }
162
- }
163
-
164
- /**
165
- * Set active session ID
166
- */
167
- async setActiveSessionId(sessionId) {
168
- try {
169
- if (sessionId) {
170
- await this.adapter.storage.set(ACTIVE_SESSION_ID_KEY, sessionId);
171
- } else {
172
- await this.adapter.storage.remove(ACTIVE_SESSION_ID_KEY);
173
- }
174
- this.cachedActiveSessionId = sessionId;
175
- } catch (error) {
176
- console.warn('[SessionManager] Failed to save active session ID:', error);
177
- }
178
- }
179
-
180
- /**
181
- * Get all sessions
182
- */
183
- async getAllSessions() {
184
- return await this.loadSessions();
185
- }
186
-
187
- /**
188
- * Get current session
189
- */
190
- async getSession() {
191
- await this.loadTokens();
192
- const accessToken = this.getAccessToken();
193
- if (!accessToken) {
194
- return null;
195
- }
196
- try {
197
- const decoded = (0, _jwtDecode.jwtDecode)(accessToken);
198
- const sessionId = decoded.sessionId;
199
- const userId = decoded.userId;
200
- if (!sessionId || !userId) {
201
- return null;
202
- }
203
- const sessions = await this.loadSessions();
204
- const session = sessions.find(s => s.sessionId === sessionId);
205
- if (session) {
206
- return session;
207
- }
208
-
209
- // Create session from token if not found in storage
210
- const device = await this.deviceManager.getCurrentDevice();
211
- if (!device) {
212
- return null;
213
- }
214
- const deviceInfo = await this.deviceManager.getDeviceInfo();
215
- return {
216
- sessionId,
217
- userId,
218
- deviceId: device.deviceId,
219
- expiresAt: decoded.exp ? new Date(decoded.exp * 1000).toISOString() : new Date(Date.now() + 3600000).toISOString(),
220
- lastActive: new Date().toISOString(),
221
- deviceInfo,
222
- isCurrent: true,
223
- accessToken
224
- };
225
- } catch (error) {
226
- console.warn('[SessionManager] Failed to decode token:', error);
227
- return null;
228
- }
229
- }
230
-
231
- /**
232
- * Create a new session (sign in)
233
- */
234
- async createSession(publicKey, signature, timestamp, deviceName) {
235
- if (!this.baseURL) {
236
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_CREATION_FAILED, 'Base URL not set for session creation');
237
- }
238
- const device = await this.deviceManager.getCurrentDevice();
239
- if (!device) {
240
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.DEVICE_NOT_FOUND, 'Device not found');
241
- }
242
-
243
- // Update device name if provided
244
- if (deviceName) {
245
- await this.deviceManager.updateDeviceName(deviceName);
246
- }
247
- const deviceInfo = await this.deviceManager.getDeviceInfo();
248
- try {
249
- const response = await this.adapter.fetch.fetch(`${this.baseURL}/api/auth/login`, {
250
- method: 'POST',
251
- headers: {
252
- 'Content-Type': 'application/json',
253
- 'Accept': 'application/json'
254
- },
255
- body: JSON.stringify({
256
- publicKey,
257
- signature,
258
- timestamp,
259
- deviceId: device.deviceId,
260
- deviceInfo
261
- })
262
- });
263
- if (!response.ok) {
264
- const errorData = await response.json().catch(() => ({}));
265
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_CREATION_FAILED, errorData.message || `Login failed: ${response.status}`, response.status);
266
- }
267
- const data = await response.json();
268
- const {
269
- accessToken,
270
- refreshToken,
271
- user,
272
- sessionId,
273
- deviceId,
274
- expiresAt
275
- } = data;
276
- if (!accessToken || !sessionId) {
277
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_CREATION_FAILED, 'Invalid response from login endpoint');
278
- }
279
-
280
- // Set tokens
281
- await this.setTokens(accessToken, refreshToken);
282
-
283
- // Create session object
284
- const session = {
285
- sessionId,
286
- userId: user.id || user._id,
287
- // MongoDB ObjectId
288
- deviceId: deviceId || device.deviceId,
289
- expiresAt: expiresAt || new Date(Date.now() + 3600000).toISOString(),
290
- lastActive: new Date().toISOString(),
291
- deviceInfo,
292
- isCurrent: true,
293
- accessToken,
294
- refreshToken
295
- };
296
-
297
- // Save session
298
- const sessions = await this.loadSessions();
299
- const existingIndex = sessions.findIndex(s => s.sessionId === sessionId);
300
- if (existingIndex >= 0) {
301
- sessions[existingIndex] = session;
302
- } else {
303
- sessions.push(session);
304
- }
305
-
306
- // Mark all other sessions as not current
307
- sessions.forEach(s => {
308
- if (s.sessionId !== sessionId) {
309
- s.isCurrent = false;
310
- }
311
- });
312
- await this.saveSessions(sessions);
313
- await this.setActiveSessionId(sessionId);
314
- return session;
315
- } catch (error) {
316
- if (error instanceof Error && error.name === 'IdentitySessionError') {
317
- throw error;
318
- }
319
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_CREATION_FAILED, `Failed to create session: ${error instanceof Error ? error.message : String(error)}`);
320
- }
321
- }
322
-
323
- /**
324
- * Refresh current session
325
- */
326
- async refreshSession() {
327
- const session = await this.getSession();
328
- if (!session) {
329
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_NOT_FOUND, 'No active session to refresh');
330
- }
331
-
332
- // Refresh token first
333
- await this.refreshManager.refreshTokenIfNeeded(() => this.getAccessToken(), (accessToken, refreshToken) => this.setTokens(accessToken, refreshToken), () => this.clearTokens());
334
-
335
- // Get updated session
336
- const refreshedSession = await this.getSession();
337
- if (!refreshedSession) {
338
- throw (0, _errors.createIdentitySessionError)(_errors.IdentitySessionErrorCodes.SESSION_REFRESH_FAILED, 'Session not found after refresh');
339
- }
340
-
341
- // Update session in storage
342
- const sessions = await this.loadSessions();
343
- const index = sessions.findIndex(s => s.sessionId === refreshedSession.sessionId);
344
- if (index >= 0) {
345
- sessions[index] = refreshedSession;
346
- await this.saveSessions(sessions);
347
- }
348
- return refreshedSession;
349
- }
350
-
351
- /**
352
- * Invalidate a session
353
- */
354
- async invalidateSession(sessionId) {
355
- const targetSessionId = sessionId || (await this.getActiveSessionId());
356
- if (!targetSessionId) {
357
- return;
358
- }
359
- if (!this.baseURL) {
360
- // Just clear local storage if no base URL
361
- await this.clearLocalSession(targetSessionId);
362
- return;
363
- }
364
- try {
365
- await this.adapter.fetch.fetch(`${this.baseURL}/api/session/${targetSessionId}/logout`, {
366
- method: 'POST',
367
- headers: {
368
- 'Accept': 'application/json'
369
- }
370
- });
371
- } catch (error) {
372
- // Continue with local cleanup even if API call fails
373
- console.warn('[SessionManager] Failed to invalidate session on server:', error);
374
- }
375
- await this.clearLocalSession(targetSessionId);
376
- }
377
-
378
- /**
379
- * Clear local session data
380
- */
381
- async clearLocalSession(sessionId) {
382
- const sessions = await this.loadSessions();
383
- const filtered = sessions.filter(s => s.sessionId !== sessionId);
384
- await this.saveSessions(filtered);
385
-
386
- // If this was the active session, clear it
387
- const activeSessionId = await this.getActiveSessionId();
388
- if (activeSessionId === sessionId) {
389
- await this.setActiveSessionId(null);
390
- await this.clearTokens();
391
- }
392
- }
393
-
394
- /**
395
- * Invalidate all sessions
396
- */
397
- async invalidateAllSessions() {
398
- const sessions = await this.loadSessions();
399
- if (this.baseURL) {
400
- // Try to invalidate all sessions on server
401
- await Promise.allSettled(sessions.map(session => this.adapter.fetch.fetch(`${this.baseURL}/api/session/${session.sessionId}/logout`, {
402
- method: 'POST',
403
- headers: {
404
- 'Accept': 'application/json'
405
- }
406
- }).catch(() => {
407
- // Ignore individual failures
408
- })));
409
- }
410
-
411
- // Clear all local session data
412
- await this.saveSessions([]);
413
- await this.setActiveSessionId(null);
414
- await this.clearTokens();
415
- this.invalidateCache();
416
- }
417
-
418
- /**
419
- * Initialize - load tokens and sessions from storage
420
- */
421
- async initialize() {
422
- await this.loadTokens();
423
- await this.loadSessions();
424
- }
425
- }
426
- exports.SessionManager = SessionManager;
427
- //# sourceMappingURL=SessionManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_jwtDecode","require","_errors","SESSION_STORAGE_KEY","ACTIVE_SESSION_ID_KEY","TOKEN_STORAGE_KEY","SessionManager","baseURL","cachedSessions","cachedActiveSessionId","tokenStore","accessToken","refreshToken","constructor","adapter","deviceManager","refreshManager","setBaseURL","invalidateCache","loadTokens","stored","storage","get","JSON","parse","error","console","warn","saveTokens","set","stringify","getAccessToken","getRefreshToken","setTokens","clearTokens","loadSessions","saveSessions","sessions","getActiveSessionId","setActiveSessionId","sessionId","remove","getAllSessions","getSession","decoded","jwtDecode","userId","session","find","s","device","getCurrentDevice","deviceInfo","getDeviceInfo","deviceId","expiresAt","exp","Date","toISOString","now","lastActive","isCurrent","createSession","publicKey","signature","timestamp","deviceName","createIdentitySessionError","IdentitySessionErrorCodes","SESSION_CREATION_FAILED","DEVICE_NOT_FOUND","updateDeviceName","response","fetch","method","headers","body","ok","errorData","json","catch","message","status","data","user","id","_id","existingIndex","findIndex","push","forEach","Error","name","String","refreshSession","SESSION_NOT_FOUND","refreshTokenIfNeeded","refreshedSession","SESSION_REFRESH_FAILED","index","invalidateSession","targetSessionId","clearLocalSession","filtered","filter","activeSessionId","invalidateAllSessions","Promise","allSettled","map","initialize","exports"],"sourceRoot":"../../../../src","sources":["core/identity-session/SessionManager.ts"],"mappings":";;;;;;AAOA,IAAAA,UAAA,GAAAC,OAAA;AAKA,IAAAC,OAAA,GAAAD,OAAA;AAZA;AACA;AACA;AACA;AACA;AACA;;AAYA,MAAME,mBAAmB,GAAG,cAAc;AAC1C,MAAMC,qBAAqB,GAAG,uBAAuB;AACrD,MAAMC,iBAAiB,GAAG,YAAY;AAgBtC;AACA;AACA;AACO,MAAMC,cAAc,CAAC;EAIlBC,OAAO,GAAkB,IAAI;EAC7BC,cAAc,GAAqB,IAAI;EACvCC,qBAAqB,GAAkB,IAAI;EAC3CC,UAAU,GAAe;IAC/BC,WAAW,EAAE,IAAI;IACjBC,YAAY,EAAE;EAChB,CAAC;EAEDC,WAAWA,CACTC,OAAwB,EACxBC,aAA4B,EAC5BC,cAA8B,EAC9BT,OAAgB,EAChB;IACA,IAAI,CAACO,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACC,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACT,OAAO,GAAGA,OAAO,IAAI,IAAI;IAE9B,IAAIA,OAAO,EAAE;MACX,IAAI,CAACS,cAAc,CAACC,UAAU,CAACV,OAAO,CAAC;IACzC;EACF;;EAEA;AACF;AACA;EACEU,UAAUA,CAACV,OAAe,EAAQ;IAChC,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACS,cAAc,CAACC,UAAU,CAACV,OAAO,CAAC;EACzC;;EAEA;AACF;AACA;EACEW,eAAeA,CAAA,EAAS;IACtB,IAAI,CAACV,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACC,qBAAqB,GAAG,IAAI;EACnC;;EAEA;AACF;AACA;EACE,MAAcU,UAAUA,CAAA,EAAkB;IACxC,IAAI;MACF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACN,OAAO,CAACO,OAAO,CAACC,GAAG,CAACjB,iBAAiB,CAAC;MAChE,IAAIe,MAAM,EAAE;QACV,IAAI,CAACV,UAAU,GAAGa,IAAI,CAACC,KAAK,CAACJ,MAAM,CAAC;MACtC;IACF,CAAC,CAAC,OAAOK,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,yCAAyC,EAAEF,KAAK,CAAC;IAChE;EACF;;EAEA;AACF;AACA;EACE,MAAcG,UAAUA,CAAA,EAAkB;IACxC,IAAI;MACF,MAAM,IAAI,CAACd,OAAO,CAACO,OAAO,CAACQ,GAAG,CAACxB,iBAAiB,EAAEkB,IAAI,CAACO,SAAS,CAAC,IAAI,CAACpB,UAAU,CAAC,CAAC;IACpF,CAAC,CAAC,OAAOe,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,yCAAyC,EAAEF,KAAK,CAAC;IAChE;EACF;;EAEA;AACF;AACA;EACEM,cAAcA,CAAA,EAAkB;IAC9B,OAAO,IAAI,CAACrB,UAAU,CAACC,WAAW;EACpC;;EAEA;AACF;AACA;EACEqB,eAAeA,CAAA,EAAkB;IAC/B,OAAO,IAAI,CAACtB,UAAU,CAACE,YAAY;EACrC;;EAEA;AACF;AACA;EACE,MAAMqB,SAASA,CAACtB,WAAmB,EAAEC,YAAqB,EAAiB;IACzE,IAAI,CAACF,UAAU,CAACC,WAAW,GAAGA,WAAW;IACzC,IAAIC,YAAY,EAAE;MAChB,IAAI,CAACF,UAAU,CAACE,YAAY,GAAGA,YAAY;IAC7C;IACA,MAAM,IAAI,CAACgB,UAAU,CAAC,CAAC;EACzB;;EAEA;AACF;AACA;EACE,MAAMM,WAAWA,CAAA,EAAkB;IACjC,IAAI,CAACxB,UAAU,CAACC,WAAW,GAAG,IAAI;IAClC,IAAI,CAACD,UAAU,CAACE,YAAY,GAAG,IAAI;IACnC,MAAM,IAAI,CAACgB,UAAU,CAAC,CAAC;EACzB;;EAEA;AACF;AACA;EACE,MAAMO,YAAYA,CAAA,EAAuB;IACvC,IAAI,IAAI,CAAC3B,cAAc,EAAE;MACvB,OAAO,IAAI,CAACA,cAAc;IAC5B;IAEA,IAAI;MACF,MAAMY,MAAM,GAAG,MAAM,IAAI,CAACN,OAAO,CAACO,OAAO,CAACC,GAAG,CAACnB,mBAAmB,CAAC;MAClE,IAAIiB,MAAM,EAAE;QACV,IAAI,CAACZ,cAAc,GAAGe,IAAI,CAACC,KAAK,CAACJ,MAAM,CAAC;QACxC,OAAO,IAAI,CAACZ,cAAc,IAAI,EAAE;MAClC;IACF,CAAC,CAAC,OAAOiB,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,2CAA2C,EAAEF,KAAK,CAAC;IAClE;IAEA,IAAI,CAACjB,cAAc,GAAG,EAAE;IACxB,OAAO,EAAE;EACX;;EAEA;AACF;AACA;EACE,MAAc4B,YAAYA,CAACC,QAAmB,EAAiB;IAC7D,IAAI;MACF,MAAM,IAAI,CAACvB,OAAO,CAACO,OAAO,CAACQ,GAAG,CAAC1B,mBAAmB,EAAEoB,IAAI,CAACO,SAAS,CAACO,QAAQ,CAAC,CAAC;MAC7E,IAAI,CAAC7B,cAAc,GAAG6B,QAAQ;IAChC,CAAC,CAAC,OAAOZ,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,2CAA2C,EAAEF,KAAK,CAAC;IAClE;EACF;;EAEA;AACF;AACA;EACE,MAAMa,kBAAkBA,CAAA,EAA2B;IACjD,IAAI,IAAI,CAAC7B,qBAAqB,KAAK,IAAI,EAAE;MACvC,OAAO,IAAI,CAACA,qBAAqB;IACnC;IAEA,IAAI;MACF,MAAMW,MAAM,GAAG,MAAM,IAAI,CAACN,OAAO,CAACO,OAAO,CAACC,GAAG,CAAClB,qBAAqB,CAAC;MACpE,IAAI,CAACK,qBAAqB,GAAGW,MAAM;MACnC,OAAOA,MAAM;IACf,CAAC,CAAC,OAAOK,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,oDAAoD,EAAEF,KAAK,CAAC;MACzE,OAAO,IAAI;IACb;EACF;;EAEA;AACF;AACA;EACE,MAAMc,kBAAkBA,CAACC,SAAwB,EAAiB;IAChE,IAAI;MACF,IAAIA,SAAS,EAAE;QACb,MAAM,IAAI,CAAC1B,OAAO,CAACO,OAAO,CAACQ,GAAG,CAACzB,qBAAqB,EAAEoC,SAAS,CAAC;MAClE,CAAC,MAAM;QACL,MAAM,IAAI,CAAC1B,OAAO,CAACO,OAAO,CAACoB,MAAM,CAACrC,qBAAqB,CAAC;MAC1D;MACA,IAAI,CAACK,qBAAqB,GAAG+B,SAAS;IACxC,CAAC,CAAC,OAAOf,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,oDAAoD,EAAEF,KAAK,CAAC;IAC3E;EACF;;EAEA;AACF;AACA;EACE,MAAMiB,cAAcA,CAAA,EAAuB;IACzC,OAAO,MAAM,IAAI,CAACP,YAAY,CAAC,CAAC;EAClC;;EAEA;AACF;AACA;EACE,MAAMQ,UAAUA,CAAA,EAA4B;IAC1C,MAAM,IAAI,CAACxB,UAAU,CAAC,CAAC;IACvB,MAAMR,WAAW,GAAG,IAAI,CAACoB,cAAc,CAAC,CAAC;IACzC,IAAI,CAACpB,WAAW,EAAE;MAChB,OAAO,IAAI;IACb;IAEA,IAAI;MACF,MAAMiC,OAAO,GAAG,IAAAC,oBAAS,EAAqBlC,WAAW,CAAC;MAC1D,MAAM6B,SAAS,GAAGI,OAAO,CAACJ,SAAS;MACnC,MAAMM,MAAM,GAAGF,OAAO,CAACE,MAAM;MAE7B,IAAI,CAACN,SAAS,IAAI,CAACM,MAAM,EAAE;QACzB,OAAO,IAAI;MACb;MAEA,MAAMT,QAAQ,GAAG,MAAM,IAAI,CAACF,YAAY,CAAC,CAAC;MAC1C,MAAMY,OAAO,GAAGV,QAAQ,CAACW,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACT,SAAS,KAAKA,SAAS,CAAC;MAE7D,IAAIO,OAAO,EAAE;QACX,OAAOA,OAAO;MAChB;;MAEA;MACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACnC,aAAa,CAACoC,gBAAgB,CAAC,CAAC;MAC1D,IAAI,CAACD,MAAM,EAAE;QACX,OAAO,IAAI;MACb;MAEA,MAAME,UAAU,GAAG,MAAM,IAAI,CAACrC,aAAa,CAACsC,aAAa,CAAC,CAAC;MAE3D,OAAO;QACLb,SAAS;QACTM,MAAM;QACNQ,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;QACzBC,SAAS,EAAEX,OAAO,CAACY,GAAG,GAAG,IAAIC,IAAI,CAACb,OAAO,CAACY,GAAG,GAAG,IAAI,CAAC,CAACE,WAAW,CAAC,CAAC,GAAG,IAAID,IAAI,CAACA,IAAI,CAACE,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAACD,WAAW,CAAC,CAAC;QAClHE,UAAU,EAAE,IAAIH,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QACpCN,UAAU;QACVS,SAAS,EAAE,IAAI;QACflD;MACF,CAAC;IACH,CAAC,CAAC,OAAOc,KAAK,EAAE;MACdC,OAAO,CAACC,IAAI,CAAC,0CAA0C,EAAEF,KAAK,CAAC;MAC/D,OAAO,IAAI;IACb;EACF;;EAEA;AACF;AACA;EACE,MAAMqC,aAAaA,CACjBC,SAAiB,EACjBC,SAAiB,EACjBC,SAAiB,EACjBC,UAAmB,EACD;IAClB,IAAI,CAAC,IAAI,CAAC3D,OAAO,EAAE;MACjB,MAAM,IAAA4D,kCAA0B,EAC9BC,iCAAyB,CAACC,uBAAuB,EACjD,uCACF,CAAC;IACH;IAEA,MAAMnB,MAAM,GAAG,MAAM,IAAI,CAACnC,aAAa,CAACoC,gBAAgB,CAAC,CAAC;IAC1D,IAAI,CAACD,MAAM,EAAE;MACX,MAAM,IAAAiB,kCAA0B,EAC9BC,iCAAyB,CAACE,gBAAgB,EAC1C,kBACF,CAAC;IACH;;IAEA;IACA,IAAIJ,UAAU,EAAE;MACd,MAAM,IAAI,CAACnD,aAAa,CAACwD,gBAAgB,CAACL,UAAU,CAAC;IACvD;IAEA,MAAMd,UAAU,GAAG,MAAM,IAAI,CAACrC,aAAa,CAACsC,aAAa,CAAC,CAAC;IAE3D,IAAI;MACF,MAAMmB,QAAQ,GAAG,MAAM,IAAI,CAAC1D,OAAO,CAAC2D,KAAK,CAACA,KAAK,CAAC,GAAG,IAAI,CAAClE,OAAO,iBAAiB,EAAE;QAChFmE,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE,kBAAkB;UAClC,QAAQ,EAAE;QACZ,CAAC;QACDC,IAAI,EAAErD,IAAI,CAACO,SAAS,CAAC;UACnBiC,SAAS;UACTC,SAAS;UACTC,SAAS;UACTX,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;UACzBF;QACF,CAAC;MACH,CAAC,CAAC;MAEF,IAAI,CAACoB,QAAQ,CAACK,EAAE,EAAE;QAChB,MAAMC,SAAS,GAAG,MAAMN,QAAQ,CAACO,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,IAAAb,kCAA0B,EAC9BC,iCAAyB,CAACC,uBAAuB,EACjDS,SAAS,CAACG,OAAO,IAAI,iBAAiBT,QAAQ,CAACU,MAAM,EAAE,EACvDV,QAAQ,CAACU,MACX,CAAC;MACH;MAEA,MAAMC,IAAI,GAAG,MAAMX,QAAQ,CAACO,IAAI,CAAC,CAAC;MAClC,MAAM;QAAEpE,WAAW;QAAEC,YAAY;QAAEwE,IAAI;QAAE5C,SAAS;QAAEc,QAAQ;QAAEC;MAAU,CAAC,GAAG4B,IAAI;MAEhF,IAAI,CAACxE,WAAW,IAAI,CAAC6B,SAAS,EAAE;QAC9B,MAAM,IAAA2B,kCAA0B,EAC9BC,iCAAyB,CAACC,uBAAuB,EACjD,sCACF,CAAC;MACH;;MAEA;MACA,MAAM,IAAI,CAACpC,SAAS,CAACtB,WAAW,EAAEC,YAAY,CAAC;;MAE/C;MACA,MAAMmC,OAAgB,GAAG;QACvBP,SAAS;QACTM,MAAM,EAAEsC,IAAI,CAACC,EAAE,IAAID,IAAI,CAACE,GAAG;QAAE;QAC7BhC,QAAQ,EAAEA,QAAQ,IAAIJ,MAAM,CAACI,QAAQ;QACrCC,SAAS,EAAEA,SAAS,IAAI,IAAIE,IAAI,CAACA,IAAI,CAACE,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAACD,WAAW,CAAC,CAAC;QACpEE,UAAU,EAAE,IAAIH,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;QACpCN,UAAU;QACVS,SAAS,EAAE,IAAI;QACflD,WAAW;QACXC;MACF,CAAC;;MAED;MACA,MAAMyB,QAAQ,GAAG,MAAM,IAAI,CAACF,YAAY,CAAC,CAAC;MAC1C,MAAMoD,aAAa,GAAGlD,QAAQ,CAACmD,SAAS,CAACvC,CAAC,IAAIA,CAAC,CAACT,SAAS,KAAKA,SAAS,CAAC;MACxE,IAAI+C,aAAa,IAAI,CAAC,EAAE;QACtBlD,QAAQ,CAACkD,aAAa,CAAC,GAAGxC,OAAO;MACnC,CAAC,MAAM;QACLV,QAAQ,CAACoD,IAAI,CAAC1C,OAAO,CAAC;MACxB;;MAEA;MACAV,QAAQ,CAACqD,OAAO,CAACzC,CAAC,IAAI;QACpB,IAAIA,CAAC,CAACT,SAAS,KAAKA,SAAS,EAAE;UAC7BS,CAAC,CAACY,SAAS,GAAG,KAAK;QACrB;MACF,CAAC,CAAC;MAEF,MAAM,IAAI,CAACzB,YAAY,CAACC,QAAQ,CAAC;MACjC,MAAM,IAAI,CAACE,kBAAkB,CAACC,SAAS,CAAC;MAExC,OAAOO,OAAO;IAChB,CAAC,CAAC,OAAOtB,KAAK,EAAE;MACd,IAAIA,KAAK,YAAYkE,KAAK,IAAIlE,KAAK,CAACmE,IAAI,KAAK,sBAAsB,EAAE;QACnE,MAAMnE,KAAK;MACb;MACA,MAAM,IAAA0C,kCAA0B,EAC9BC,iCAAyB,CAACC,uBAAuB,EACjD,6BAA6B5C,KAAK,YAAYkE,KAAK,GAAGlE,KAAK,CAACwD,OAAO,GAAGY,MAAM,CAACpE,KAAK,CAAC,EACrF,CAAC;IACH;EACF;;EAEA;AACF;AACA;EACE,MAAMqE,cAAcA,CAAA,EAAqB;IACvC,MAAM/C,OAAO,GAAG,MAAM,IAAI,CAACJ,UAAU,CAAC,CAAC;IACvC,IAAI,CAACI,OAAO,EAAE;MACZ,MAAM,IAAAoB,kCAA0B,EAC9BC,iCAAyB,CAAC2B,iBAAiB,EAC3C,8BACF,CAAC;IACH;;IAEA;IACA,MAAM,IAAI,CAAC/E,cAAc,CAACgF,oBAAoB,CAC5C,MAAM,IAAI,CAACjE,cAAc,CAAC,CAAC,EAC3B,CAACpB,WAAW,EAAEC,YAAY,KAAK,IAAI,CAACqB,SAAS,CAACtB,WAAW,EAAEC,YAAY,CAAC,EACxE,MAAM,IAAI,CAACsB,WAAW,CAAC,CACzB,CAAC;;IAED;IACA,MAAM+D,gBAAgB,GAAG,MAAM,IAAI,CAACtD,UAAU,CAAC,CAAC;IAChD,IAAI,CAACsD,gBAAgB,EAAE;MACrB,MAAM,IAAA9B,kCAA0B,EAC9BC,iCAAyB,CAAC8B,sBAAsB,EAChD,iCACF,CAAC;IACH;;IAEA;IACA,MAAM7D,QAAQ,GAAG,MAAM,IAAI,CAACF,YAAY,CAAC,CAAC;IAC1C,MAAMgE,KAAK,GAAG9D,QAAQ,CAACmD,SAAS,CAACvC,CAAC,IAAIA,CAAC,CAACT,SAAS,KAAKyD,gBAAgB,CAACzD,SAAS,CAAC;IACjF,IAAI2D,KAAK,IAAI,CAAC,EAAE;MACd9D,QAAQ,CAAC8D,KAAK,CAAC,GAAGF,gBAAgB;MAClC,MAAM,IAAI,CAAC7D,YAAY,CAACC,QAAQ,CAAC;IACnC;IAEA,OAAO4D,gBAAgB;EACzB;;EAEA;AACF;AACA;EACE,MAAMG,iBAAiBA,CAAC5D,SAAkB,EAAiB;IACzD,MAAM6D,eAAe,GAAG7D,SAAS,KAAI,MAAM,IAAI,CAACF,kBAAkB,CAAC,CAAC;IACpE,IAAI,CAAC+D,eAAe,EAAE;MACpB;IACF;IAEA,IAAI,CAAC,IAAI,CAAC9F,OAAO,EAAE;MACjB;MACA,MAAM,IAAI,CAAC+F,iBAAiB,CAACD,eAAe,CAAC;MAC7C;IACF;IAEA,IAAI;MACF,MAAM,IAAI,CAACvF,OAAO,CAAC2D,KAAK,CAACA,KAAK,CAAC,GAAG,IAAI,CAAClE,OAAO,gBAAgB8F,eAAe,SAAS,EAAE;QACtF3B,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,QAAQ,EAAE;QACZ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOlD,KAAK,EAAE;MACd;MACAC,OAAO,CAACC,IAAI,CAAC,0DAA0D,EAAEF,KAAK,CAAC;IACjF;IAEA,MAAM,IAAI,CAAC6E,iBAAiB,CAACD,eAAe,CAAC;EAC/C;;EAEA;AACF;AACA;EACE,MAAcC,iBAAiBA,CAAC9D,SAAiB,EAAiB;IAChE,MAAMH,QAAQ,GAAG,MAAM,IAAI,CAACF,YAAY,CAAC,CAAC;IAC1C,MAAMoE,QAAQ,GAAGlE,QAAQ,CAACmE,MAAM,CAACvD,CAAC,IAAIA,CAAC,CAACT,SAAS,KAAKA,SAAS,CAAC;IAChE,MAAM,IAAI,CAACJ,YAAY,CAACmE,QAAQ,CAAC;;IAEjC;IACA,MAAME,eAAe,GAAG,MAAM,IAAI,CAACnE,kBAAkB,CAAC,CAAC;IACvD,IAAImE,eAAe,KAAKjE,SAAS,EAAE;MACjC,MAAM,IAAI,CAACD,kBAAkB,CAAC,IAAI,CAAC;MACnC,MAAM,IAAI,CAACL,WAAW,CAAC,CAAC;IAC1B;EACF;;EAEA;AACF;AACA;EACE,MAAMwE,qBAAqBA,CAAA,EAAkB;IAC3C,MAAMrE,QAAQ,GAAG,MAAM,IAAI,CAACF,YAAY,CAAC,CAAC;IAE1C,IAAI,IAAI,CAAC5B,OAAO,EAAE;MAChB;MACA,MAAMoG,OAAO,CAACC,UAAU,CACtBvE,QAAQ,CAACwE,GAAG,CAAC9D,OAAO,IAClB,IAAI,CAACjC,OAAO,CAAC2D,KAAK,CAACA,KAAK,CAAC,GAAG,IAAI,CAAClE,OAAO,gBAAgBwC,OAAO,CAACP,SAAS,SAAS,EAAE;QAClFkC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UAAE,QAAQ,EAAE;QAAmB;MAC1C,CAAC,CAAC,CAACK,KAAK,CAAC,MAAM;QACb;MAAA,CACD,CACH,CACF,CAAC;IACH;;IAEA;IACA,MAAM,IAAI,CAAC5C,YAAY,CAAC,EAAE,CAAC;IAC3B,MAAM,IAAI,CAACG,kBAAkB,CAAC,IAAI,CAAC;IACnC,MAAM,IAAI,CAACL,WAAW,CAAC,CAAC;IACxB,IAAI,CAAChB,eAAe,CAAC,CAAC;EACxB;;EAEA;AACF;AACA;EACE,MAAM4F,UAAUA,CAAA,EAAkB;IAChC,MAAM,IAAI,CAAC3F,UAAU,CAAC,CAAC;IACvB,MAAM,IAAI,CAACgB,YAAY,CAAC,CAAC;EAC3B;AACF;AAAC4E,OAAA,CAAAzG,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createIdentitySessionCore = createIdentitySessionCore;
7
- var _adapters = require("../../adapters");
8
- var _IdentitySessionCore = require("./IdentitySessionCore");
9
- /**
10
- * Create Identity Session Core
11
- *
12
- * Factory function to create and initialize IdentitySessionCore
13
- */
14
-
15
- /**
16
- * Create and initialize IdentitySessionCore
17
- */
18
- async function createIdentitySessionCore(baseURL) {
19
- const adapter = await (0, _adapters.createPlatformAdapter)();
20
- const core = new _IdentitySessionCore.IdentitySessionCore(adapter, baseURL);
21
- await core.initialize();
22
- return core;
23
- }
24
- //# sourceMappingURL=createIdentitySessionCore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_adapters","require","_IdentitySessionCore","createIdentitySessionCore","baseURL","adapter","createPlatformAdapter","core","IdentitySessionCore","initialize"],"sourceRoot":"../../../../src","sources":["core/identity-session/createIdentitySessionCore.ts"],"mappings":";;;;;;AAMA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AAPA;AACA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACO,eAAeE,yBAAyBA,CAACC,OAAgB,EAAgC;EAC9F,MAAMC,OAAO,GAAG,MAAM,IAAAC,+BAAqB,EAAC,CAAC;EAC7C,MAAMC,IAAI,GAAG,IAAIC,wCAAmB,CAACH,OAAO,EAAED,OAAO,CAAC;EACtD,MAAMG,IAAI,CAACE,UAAU,CAAC,CAAC;EACvB,OAAOF,IAAI;AACb","ignoreList":[]}
@@ -1,176 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.IdentitySessionErrorCodes = exports.IdentitySessionError = void 0;
7
- exports.createIdentitySessionError = createIdentitySessionError;
8
- /**
9
- * Identity and Session Error Codes
10
- *
11
- * Aligned with backend error codes for consistency across the ecosystem
12
- */
13
-
14
- const IdentitySessionErrorCodes = exports.IdentitySessionErrorCodes = {
15
- // Authentication errors
16
- UNAUTHORIZED: 'UNAUTHORIZED',
17
- FORBIDDEN: 'FORBIDDEN',
18
- INVALID_TOKEN: 'INVALID_TOKEN',
19
- MISSING_TOKEN: 'MISSING_TOKEN',
20
- TOKEN_EXPIRED: 'TOKEN_EXPIRED',
21
- TOKEN_NOT_YET_VALID: 'TOKEN_NOT_YET_VALID',
22
- INVALID_SIGNATURE: 'INVALID_SIGNATURE',
23
- MALFORMED_TOKEN: 'MALFORMED_TOKEN',
24
- INVALID_SESSION: 'INVALID_SESSION',
25
- // Identity errors
26
- IDENTITY_NOT_FOUND: 'IDENTITY_NOT_FOUND',
27
- IDENTITY_ALREADY_EXISTS: 'IDENTITY_ALREADY_EXISTS',
28
- IDENTITY_NOT_AVAILABLE_ON_WEB: 'IDENTITY_NOT_AVAILABLE_ON_WEB',
29
- IDENTITY_NOT_SYNCED: 'IDENTITY_NOT_SYNCED',
30
- INVALID_PUBLIC_KEY: 'INVALID_PUBLIC_KEY',
31
- INVALID_PRIVATE_KEY: 'INVALID_PRIVATE_KEY',
32
- IDENTITY_CREATION_FAILED: 'IDENTITY_CREATION_FAILED',
33
- IDENTITY_IMPORT_FAILED: 'IDENTITY_IMPORT_FAILED',
34
- IDENTITY_DELETE_FAILED: 'IDENTITY_DELETE_FAILED',
35
- BACKUP_DECRYPTION_FAILED: 'BACKUP_DECRYPTION_FAILED',
36
- // Session errors
37
- SESSION_NOT_FOUND: 'SESSION_NOT_FOUND',
38
- SESSION_EXPIRED: 'SESSION_EXPIRED',
39
- SESSION_INVALID: 'SESSION_INVALID',
40
- SESSION_CREATION_FAILED: 'SESSION_CREATION_FAILED',
41
- SESSION_REFRESH_FAILED: 'SESSION_REFRESH_FAILED',
42
- // Device errors
43
- DEVICE_NOT_FOUND: 'DEVICE_NOT_FOUND',
44
- DEVICE_CREATION_FAILED: 'DEVICE_CREATION_FAILED',
45
- // Validation errors
46
- VALIDATION_ERROR: 'VALIDATION_ERROR',
47
- BAD_REQUEST: 'BAD_REQUEST',
48
- MISSING_PARAMETER: 'MISSING_PARAMETER',
49
- INVALID_FORMAT: 'INVALID_FORMAT',
50
- // Resource errors
51
- NOT_FOUND: 'NOT_FOUND',
52
- ALREADY_EXISTS: 'ALREADY_EXISTS',
53
- CONFLICT: 'CONFLICT',
54
- // Server errors
55
- INTERNAL_ERROR: 'INTERNAL_ERROR',
56
- SERVICE_UNAVAILABLE: 'SERVICE_UNAVAILABLE',
57
- TIMEOUT: 'TIMEOUT',
58
- // Network errors
59
- NETWORK_ERROR: 'NETWORK_ERROR',
60
- CONNECTION_FAILED: 'CONNECTION_FAILED',
61
- // Storage errors
62
- STORAGE_ERROR: 'STORAGE_ERROR',
63
- STORAGE_NOT_AVAILABLE: 'STORAGE_NOT_AVAILABLE',
64
- SECURE_STORAGE_NOT_AVAILABLE: 'SECURE_STORAGE_NOT_AVAILABLE',
65
- // Unknown
66
- UNKNOWN_ERROR: 'UNKNOWN_ERROR'
67
- };
68
- /**
69
- * IdentitySessionError - Custom error class for identity and session operations
70
- */
71
- class IdentitySessionError extends Error {
72
- constructor(message, code = IdentitySessionErrorCodes.UNKNOWN_ERROR, statusCode = 500) {
73
- super(message);
74
- this.name = 'IdentitySessionError';
75
- this.code = code;
76
- this.statusCode = statusCode;
77
- Object.setPrototypeOf(this, IdentitySessionError.prototype);
78
- }
79
- }
80
-
81
- /**
82
- * Create error from code
83
- */
84
- exports.IdentitySessionError = IdentitySessionError;
85
- function createIdentitySessionError(code, message, statusCode) {
86
- const defaultMessages = {
87
- [IdentitySessionErrorCodes.UNAUTHORIZED]: 'Unauthorized',
88
- [IdentitySessionErrorCodes.FORBIDDEN]: 'Forbidden',
89
- [IdentitySessionErrorCodes.INVALID_TOKEN]: 'Invalid token',
90
- [IdentitySessionErrorCodes.MISSING_TOKEN]: 'Missing token',
91
- [IdentitySessionErrorCodes.TOKEN_EXPIRED]: 'Token has expired',
92
- [IdentitySessionErrorCodes.TOKEN_NOT_YET_VALID]: 'Token not yet valid',
93
- [IdentitySessionErrorCodes.INVALID_SIGNATURE]: 'Token signature is invalid',
94
- [IdentitySessionErrorCodes.MALFORMED_TOKEN]: 'Token format is invalid',
95
- [IdentitySessionErrorCodes.INVALID_SESSION]: 'Invalid session',
96
- [IdentitySessionErrorCodes.IDENTITY_NOT_FOUND]: 'Identity not found',
97
- [IdentitySessionErrorCodes.IDENTITY_ALREADY_EXISTS]: 'Identity already exists',
98
- [IdentitySessionErrorCodes.IDENTITY_NOT_AVAILABLE_ON_WEB]: 'Identity operations are only available on native platforms',
99
- [IdentitySessionErrorCodes.IDENTITY_NOT_SYNCED]: 'Identity not synced with server',
100
- [IdentitySessionErrorCodes.INVALID_PUBLIC_KEY]: 'Invalid public key',
101
- [IdentitySessionErrorCodes.INVALID_PRIVATE_KEY]: 'Invalid private key',
102
- [IdentitySessionErrorCodes.IDENTITY_CREATION_FAILED]: 'Failed to create identity',
103
- [IdentitySessionErrorCodes.IDENTITY_IMPORT_FAILED]: 'Failed to import identity',
104
- [IdentitySessionErrorCodes.IDENTITY_DELETE_FAILED]: 'Failed to delete identity',
105
- [IdentitySessionErrorCodes.BACKUP_DECRYPTION_FAILED]: 'Failed to decrypt backup',
106
- [IdentitySessionErrorCodes.SESSION_NOT_FOUND]: 'Session not found',
107
- [IdentitySessionErrorCodes.SESSION_EXPIRED]: 'Session expired',
108
- [IdentitySessionErrorCodes.SESSION_INVALID]: 'Session invalid',
109
- [IdentitySessionErrorCodes.SESSION_CREATION_FAILED]: 'Failed to create session',
110
- [IdentitySessionErrorCodes.SESSION_REFRESH_FAILED]: 'Failed to refresh session',
111
- [IdentitySessionErrorCodes.DEVICE_NOT_FOUND]: 'Device not found',
112
- [IdentitySessionErrorCodes.DEVICE_CREATION_FAILED]: 'Failed to create device',
113
- [IdentitySessionErrorCodes.VALIDATION_ERROR]: 'Validation error',
114
- [IdentitySessionErrorCodes.BAD_REQUEST]: 'Bad request',
115
- [IdentitySessionErrorCodes.MISSING_PARAMETER]: 'Missing required parameter',
116
- [IdentitySessionErrorCodes.INVALID_FORMAT]: 'Invalid format',
117
- [IdentitySessionErrorCodes.NOT_FOUND]: 'Resource not found',
118
- [IdentitySessionErrorCodes.ALREADY_EXISTS]: 'Resource already exists',
119
- [IdentitySessionErrorCodes.CONFLICT]: 'Conflict',
120
- [IdentitySessionErrorCodes.INTERNAL_ERROR]: 'Internal server error',
121
- [IdentitySessionErrorCodes.SERVICE_UNAVAILABLE]: 'Service unavailable',
122
- [IdentitySessionErrorCodes.TIMEOUT]: 'Request timeout',
123
- [IdentitySessionErrorCodes.NETWORK_ERROR]: 'Network error',
124
- [IdentitySessionErrorCodes.CONNECTION_FAILED]: 'Connection failed',
125
- [IdentitySessionErrorCodes.STORAGE_ERROR]: 'Storage error',
126
- [IdentitySessionErrorCodes.STORAGE_NOT_AVAILABLE]: 'Storage not available',
127
- [IdentitySessionErrorCodes.SECURE_STORAGE_NOT_AVAILABLE]: 'Secure storage not available',
128
- [IdentitySessionErrorCodes.UNKNOWN_ERROR]: 'Unknown error'
129
- };
130
- const defaultStatusCodes = {
131
- [IdentitySessionErrorCodes.UNAUTHORIZED]: 401,
132
- [IdentitySessionErrorCodes.FORBIDDEN]: 403,
133
- [IdentitySessionErrorCodes.INVALID_TOKEN]: 401,
134
- [IdentitySessionErrorCodes.MISSING_TOKEN]: 401,
135
- [IdentitySessionErrorCodes.TOKEN_EXPIRED]: 401,
136
- [IdentitySessionErrorCodes.TOKEN_NOT_YET_VALID]: 401,
137
- [IdentitySessionErrorCodes.INVALID_SIGNATURE]: 401,
138
- [IdentitySessionErrorCodes.MALFORMED_TOKEN]: 401,
139
- [IdentitySessionErrorCodes.INVALID_SESSION]: 401,
140
- [IdentitySessionErrorCodes.IDENTITY_NOT_FOUND]: 404,
141
- [IdentitySessionErrorCodes.IDENTITY_ALREADY_EXISTS]: 409,
142
- [IdentitySessionErrorCodes.IDENTITY_NOT_AVAILABLE_ON_WEB]: 400,
143
- [IdentitySessionErrorCodes.IDENTITY_NOT_SYNCED]: 400,
144
- [IdentitySessionErrorCodes.INVALID_PUBLIC_KEY]: 400,
145
- [IdentitySessionErrorCodes.INVALID_PRIVATE_KEY]: 400,
146
- [IdentitySessionErrorCodes.IDENTITY_CREATION_FAILED]: 500,
147
- [IdentitySessionErrorCodes.IDENTITY_IMPORT_FAILED]: 500,
148
- [IdentitySessionErrorCodes.IDENTITY_DELETE_FAILED]: 500,
149
- [IdentitySessionErrorCodes.BACKUP_DECRYPTION_FAILED]: 400,
150
- [IdentitySessionErrorCodes.SESSION_NOT_FOUND]: 404,
151
- [IdentitySessionErrorCodes.SESSION_EXPIRED]: 401,
152
- [IdentitySessionErrorCodes.SESSION_INVALID]: 401,
153
- [IdentitySessionErrorCodes.SESSION_CREATION_FAILED]: 500,
154
- [IdentitySessionErrorCodes.SESSION_REFRESH_FAILED]: 500,
155
- [IdentitySessionErrorCodes.DEVICE_NOT_FOUND]: 404,
156
- [IdentitySessionErrorCodes.DEVICE_CREATION_FAILED]: 500,
157
- [IdentitySessionErrorCodes.VALIDATION_ERROR]: 400,
158
- [IdentitySessionErrorCodes.BAD_REQUEST]: 400,
159
- [IdentitySessionErrorCodes.MISSING_PARAMETER]: 400,
160
- [IdentitySessionErrorCodes.INVALID_FORMAT]: 400,
161
- [IdentitySessionErrorCodes.NOT_FOUND]: 404,
162
- [IdentitySessionErrorCodes.ALREADY_EXISTS]: 409,
163
- [IdentitySessionErrorCodes.CONFLICT]: 409,
164
- [IdentitySessionErrorCodes.INTERNAL_ERROR]: 500,
165
- [IdentitySessionErrorCodes.SERVICE_UNAVAILABLE]: 503,
166
- [IdentitySessionErrorCodes.TIMEOUT]: 408,
167
- [IdentitySessionErrorCodes.NETWORK_ERROR]: 503,
168
- [IdentitySessionErrorCodes.CONNECTION_FAILED]: 503,
169
- [IdentitySessionErrorCodes.STORAGE_ERROR]: 500,
170
- [IdentitySessionErrorCodes.STORAGE_NOT_AVAILABLE]: 503,
171
- [IdentitySessionErrorCodes.SECURE_STORAGE_NOT_AVAILABLE]: 503,
172
- [IdentitySessionErrorCodes.UNKNOWN_ERROR]: 500
173
- };
174
- return new IdentitySessionError(message || defaultMessages[code], code, statusCode || defaultStatusCodes[code]);
175
- }
176
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["IdentitySessionErrorCodes","exports","UNAUTHORIZED","FORBIDDEN","INVALID_TOKEN","MISSING_TOKEN","TOKEN_EXPIRED","TOKEN_NOT_YET_VALID","INVALID_SIGNATURE","MALFORMED_TOKEN","INVALID_SESSION","IDENTITY_NOT_FOUND","IDENTITY_ALREADY_EXISTS","IDENTITY_NOT_AVAILABLE_ON_WEB","IDENTITY_NOT_SYNCED","INVALID_PUBLIC_KEY","INVALID_PRIVATE_KEY","IDENTITY_CREATION_FAILED","IDENTITY_IMPORT_FAILED","IDENTITY_DELETE_FAILED","BACKUP_DECRYPTION_FAILED","SESSION_NOT_FOUND","SESSION_EXPIRED","SESSION_INVALID","SESSION_CREATION_FAILED","SESSION_REFRESH_FAILED","DEVICE_NOT_FOUND","DEVICE_CREATION_FAILED","VALIDATION_ERROR","BAD_REQUEST","MISSING_PARAMETER","INVALID_FORMAT","NOT_FOUND","ALREADY_EXISTS","CONFLICT","INTERNAL_ERROR","SERVICE_UNAVAILABLE","TIMEOUT","NETWORK_ERROR","CONNECTION_FAILED","STORAGE_ERROR","STORAGE_NOT_AVAILABLE","SECURE_STORAGE_NOT_AVAILABLE","UNKNOWN_ERROR","IdentitySessionError","Error","constructor","message","code","statusCode","name","Object","setPrototypeOf","prototype","createIdentitySessionError","defaultMessages","defaultStatusCodes"],"sourceRoot":"../../../../src","sources":["core/identity-session/errors.ts"],"mappings":"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","ignoreList":[]}