@oxyhq/services 5.17.17 → 5.18.0

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 (618) hide show
  1. package/README.md +32 -38
  2. package/lib/commonjs/core/CrossDomainAuth.js +277 -0
  3. package/lib/commonjs/core/CrossDomainAuth.js.map +1 -0
  4. package/lib/commonjs/core/HttpService.js +82 -15
  5. package/lib/commonjs/core/HttpService.js.map +1 -1
  6. package/lib/commonjs/core/OxyServices.base.js +11 -3
  7. package/lib/commonjs/core/OxyServices.base.js.map +1 -1
  8. package/lib/commonjs/core/OxyServices.js +4 -1
  9. package/lib/commonjs/core/OxyServices.js.map +1 -1
  10. package/lib/commonjs/core/index.js +30 -0
  11. package/lib/commonjs/core/index.js.map +1 -1
  12. package/lib/commonjs/core/mixins/OxyServices.assets.js +16 -3
  13. package/lib/commonjs/core/mixins/OxyServices.assets.js.map +1 -1
  14. package/lib/commonjs/core/mixins/OxyServices.auth.js +73 -32
  15. package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -1
  16. package/lib/commonjs/core/mixins/OxyServices.features.js +372 -0
  17. package/lib/commonjs/core/mixins/OxyServices.features.js.map +1 -0
  18. package/lib/commonjs/core/mixins/OxyServices.fedcm.js +289 -0
  19. package/lib/commonjs/core/mixins/OxyServices.fedcm.js.map +1 -0
  20. package/lib/commonjs/core/mixins/OxyServices.popup.js +352 -0
  21. package/lib/commonjs/core/mixins/OxyServices.popup.js.map +1 -0
  22. package/lib/commonjs/core/mixins/OxyServices.redirect.js +378 -0
  23. package/lib/commonjs/core/mixins/OxyServices.redirect.js.map +1 -0
  24. package/lib/commonjs/core/mixins/OxyServices.user.js +35 -24
  25. package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -1
  26. package/lib/commonjs/core/mixins/index.js +28 -15
  27. package/lib/commonjs/core/mixins/index.js.map +1 -1
  28. package/lib/commonjs/crypto/index.js +30 -0
  29. package/lib/commonjs/crypto/index.js.map +1 -1
  30. package/lib/commonjs/crypto/keyManager.js +902 -0
  31. package/lib/commonjs/crypto/keyManager.js.map +1 -0
  32. package/lib/commonjs/crypto/polyfill.js +14 -5
  33. package/lib/commonjs/crypto/polyfill.js.map +1 -1
  34. package/lib/commonjs/crypto/recoveryPhrase.js +152 -0
  35. package/lib/commonjs/crypto/recoveryPhrase.js.map +1 -0
  36. package/lib/commonjs/crypto/signatureService.js +289 -0
  37. package/lib/commonjs/crypto/signatureService.js.map +1 -0
  38. package/lib/commonjs/i18n/locales/en-US.json +1 -1
  39. package/lib/commonjs/index.js +40 -26
  40. package/lib/commonjs/index.js.map +1 -1
  41. package/lib/commonjs/models/interfaces.js +0 -15
  42. package/lib/commonjs/models/interfaces.js.map +1 -1
  43. package/lib/commonjs/ui/components/BottomSheetRouter.js +9 -1
  44. package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
  45. package/lib/commonjs/ui/components/GroupedItem.js +11 -1
  46. package/lib/commonjs/ui/components/GroupedItem.js.map +1 -1
  47. package/lib/commonjs/ui/components/Icon.js.map +1 -1
  48. package/lib/commonjs/ui/components/IconButton/utils.js.map +1 -1
  49. package/lib/commonjs/ui/components/OxyProvider.js +41 -11
  50. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  51. package/lib/commonjs/ui/components/SettingRow.js +17 -4
  52. package/lib/commonjs/ui/components/SettingRow.js.map +1 -1
  53. package/lib/commonjs/ui/components/TextField/Adornment/utils.js.map +1 -1
  54. package/lib/commonjs/ui/components/TextField/helpers.js.map +1 -1
  55. package/lib/commonjs/ui/components/TouchableRipple/utils.js.map +1 -1
  56. package/lib/commonjs/ui/components/Typography/AnimatedText.js.map +1 -1
  57. package/lib/commonjs/ui/components/feedback/FormInput.js +72 -0
  58. package/lib/commonjs/ui/components/feedback/FormInput.js.map +1 -0
  59. package/lib/commonjs/ui/components/feedback/ProgressIndicator.js +33 -0
  60. package/lib/commonjs/ui/components/feedback/ProgressIndicator.js.map +1 -0
  61. package/lib/commonjs/ui/components/feedback/constants.js +59 -0
  62. package/lib/commonjs/ui/components/feedback/constants.js.map +1 -0
  63. package/lib/commonjs/ui/components/feedback/feedbackStyles.js +262 -0
  64. package/lib/commonjs/ui/components/feedback/feedbackStyles.js.map +1 -0
  65. package/lib/commonjs/ui/components/feedback/index.js +54 -0
  66. package/lib/commonjs/ui/components/feedback/index.js.map +1 -0
  67. package/lib/commonjs/ui/components/feedback/types.js +6 -0
  68. package/lib/commonjs/ui/components/feedback/types.js.map +1 -0
  69. package/lib/commonjs/ui/components/feedback/useFeedbackForm.js +52 -0
  70. package/lib/commonjs/ui/components/feedback/useFeedbackForm.js.map +1 -0
  71. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +282 -0
  72. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -0
  73. package/lib/commonjs/ui/components/modals/index.js +14 -0
  74. package/lib/commonjs/ui/components/modals/index.js.map +1 -0
  75. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +309 -0
  76. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -0
  77. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js +79 -0
  78. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js.map +1 -0
  79. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +108 -0
  80. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -0
  81. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js +79 -0
  82. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js.map +1 -0
  83. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +176 -0
  84. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -0
  85. package/lib/commonjs/ui/components/payment/constants.js +53 -0
  86. package/lib/commonjs/ui/components/payment/constants.js.map +1 -0
  87. package/lib/commonjs/ui/components/payment/index.js +80 -0
  88. package/lib/commonjs/ui/components/payment/index.js.map +1 -0
  89. package/lib/commonjs/ui/components/payment/paymentStyles.js +409 -0
  90. package/lib/commonjs/ui/components/payment/paymentStyles.js.map +1 -0
  91. package/lib/commonjs/ui/components/payment/types.js +6 -0
  92. package/lib/commonjs/ui/components/payment/types.js.map +1 -0
  93. package/lib/commonjs/ui/context/OxyContext.js +110 -199
  94. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  95. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +150 -19
  96. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  97. package/lib/commonjs/ui/context/hooks/useSessionManagement.js +279 -0
  98. package/lib/commonjs/ui/context/hooks/useSessionManagement.js.map +1 -0
  99. package/lib/commonjs/ui/hooks/index.js +26 -0
  100. package/lib/commonjs/ui/hooks/index.js.map +1 -1
  101. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +79 -72
  102. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  103. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +38 -51
  104. package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
  105. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js +3 -3
  106. package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  107. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +18 -12
  108. package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
  109. package/lib/commonjs/ui/hooks/useAsyncAction.js +95 -0
  110. package/lib/commonjs/ui/hooks/useAsyncAction.js.map +1 -0
  111. package/lib/commonjs/ui/hooks/useProfileEditing.js +3 -5
  112. package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
  113. package/lib/commonjs/ui/hooks/useSessionManagement.js +4 -8
  114. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
  115. package/lib/commonjs/ui/hooks/useSessionSocket.js +162 -315
  116. package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
  117. package/lib/commonjs/ui/hooks/useSettingToggle.js +126 -0
  118. package/lib/commonjs/ui/hooks/useSettingToggle.js.map +1 -0
  119. package/lib/commonjs/ui/hooks/useStorage.js +24 -58
  120. package/lib/commonjs/ui/hooks/useStorage.js.map +1 -1
  121. package/lib/commonjs/ui/index.js +50 -21
  122. package/lib/commonjs/ui/index.js.map +1 -1
  123. package/lib/commonjs/ui/navigation/routes.js +6 -1
  124. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  125. package/lib/commonjs/ui/screens/AccountCenterScreen.js +6 -4
  126. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  127. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +33 -30
  128. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  129. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +29 -24
  130. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  131. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +3 -3
  132. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  133. package/lib/commonjs/ui/screens/FAQScreen.js +315 -0
  134. package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -0
  135. package/lib/commonjs/ui/screens/FeedbackScreen.js +73 -590
  136. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  137. package/lib/commonjs/ui/screens/HelpSupportScreen.js +8 -7
  138. package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
  139. package/lib/commonjs/ui/screens/OxyAuthScreen.js +134 -66
  140. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  141. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +67 -1395
  142. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  143. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +6 -13
  144. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  145. package/lib/commonjs/ui/screens/ProfileScreen.js +13 -5
  146. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  147. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +16 -10
  148. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  149. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +23 -11
  150. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  151. package/lib/commonjs/ui/stores/accountStore.js +2 -4
  152. package/lib/commonjs/ui/stores/accountStore.js.map +1 -1
  153. package/lib/commonjs/ui/stores/authStore.js +45 -32
  154. package/lib/commonjs/ui/stores/authStore.js.map +1 -1
  155. package/lib/commonjs/ui/styles/spacing.js +54 -2
  156. package/lib/commonjs/ui/styles/spacing.js.map +1 -1
  157. package/lib/commonjs/ui/utils/avatarUtils.js +37 -41
  158. package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
  159. package/lib/commonjs/ui/utils/storageHelpers.js.map +1 -1
  160. package/lib/commonjs/utils/errorUtils.js +13 -0
  161. package/lib/commonjs/utils/errorUtils.js.map +1 -1
  162. package/lib/commonjs/utils/validationUtils.js +15 -1
  163. package/lib/commonjs/utils/validationUtils.js.map +1 -1
  164. package/lib/module/core/CrossDomainAuth.js +271 -0
  165. package/lib/module/core/CrossDomainAuth.js.map +1 -0
  166. package/lib/module/core/HttpService.js +82 -15
  167. package/lib/module/core/HttpService.js.map +1 -1
  168. package/lib/module/core/OxyServices.base.js +11 -4
  169. package/lib/module/core/OxyServices.base.js.map +1 -1
  170. package/lib/module/core/OxyServices.js +4 -1
  171. package/lib/module/core/OxyServices.js.map +1 -1
  172. package/lib/module/core/index.js +6 -1
  173. package/lib/module/core/index.js.map +1 -1
  174. package/lib/module/core/mixins/OxyServices.assets.js +16 -3
  175. package/lib/module/core/mixins/OxyServices.assets.js.map +1 -1
  176. package/lib/module/core/mixins/OxyServices.auth.js +73 -32
  177. package/lib/module/core/mixins/OxyServices.auth.js.map +1 -1
  178. package/lib/module/core/mixins/OxyServices.features.js +369 -0
  179. package/lib/module/core/mixins/OxyServices.features.js.map +1 -0
  180. package/lib/module/core/mixins/OxyServices.fedcm.js +286 -0
  181. package/lib/module/core/mixins/OxyServices.fedcm.js.map +1 -0
  182. package/lib/module/core/mixins/OxyServices.popup.js +349 -0
  183. package/lib/module/core/mixins/OxyServices.popup.js.map +1 -0
  184. package/lib/module/core/mixins/OxyServices.redirect.js +375 -0
  185. package/lib/module/core/mixins/OxyServices.redirect.js.map +1 -0
  186. package/lib/module/core/mixins/OxyServices.user.js +35 -24
  187. package/lib/module/core/mixins/OxyServices.user.js.map +1 -1
  188. package/lib/module/core/mixins/index.js +16 -3
  189. package/lib/module/core/mixins/index.js.map +1 -1
  190. package/lib/module/crypto/index.js +8 -4
  191. package/lib/module/crypto/index.js.map +1 -1
  192. package/lib/module/crypto/keyManager.js +899 -0
  193. package/lib/module/crypto/keyManager.js.map +1 -0
  194. package/lib/module/crypto/polyfill.js +6 -5
  195. package/lib/module/crypto/polyfill.js.map +1 -1
  196. package/lib/module/crypto/recoveryPhrase.js +147 -0
  197. package/lib/module/crypto/recoveryPhrase.js.map +1 -0
  198. package/lib/module/crypto/signatureService.js +286 -0
  199. package/lib/module/crypto/signatureService.js.map +1 -0
  200. package/lib/module/i18n/locales/en-US.json +1 -1
  201. package/lib/module/index.js +6 -9
  202. package/lib/module/index.js.map +1 -1
  203. package/lib/module/models/interfaces.js +0 -15
  204. package/lib/module/models/interfaces.js.map +1 -1
  205. package/lib/module/ui/components/BottomSheetRouter.js +6 -2
  206. package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
  207. package/lib/module/ui/components/GroupedItem.js +11 -1
  208. package/lib/module/ui/components/GroupedItem.js.map +1 -1
  209. package/lib/module/ui/components/Icon.js.map +1 -1
  210. package/lib/module/ui/components/IconButton/utils.js.map +1 -1
  211. package/lib/module/ui/components/OxyProvider.js +41 -11
  212. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  213. package/lib/module/ui/components/SettingRow.js +17 -4
  214. package/lib/module/ui/components/SettingRow.js.map +1 -1
  215. package/lib/module/ui/components/TextField/Adornment/utils.js.map +1 -1
  216. package/lib/module/ui/components/TextField/helpers.js.map +1 -1
  217. package/lib/module/ui/components/TouchableRipple/utils.js.map +1 -1
  218. package/lib/module/ui/components/Typography/AnimatedText.js.map +1 -1
  219. package/lib/module/ui/components/feedback/FormInput.js +67 -0
  220. package/lib/module/ui/components/feedback/FormInput.js.map +1 -0
  221. package/lib/module/ui/components/feedback/ProgressIndicator.js +28 -0
  222. package/lib/module/ui/components/feedback/ProgressIndicator.js.map +1 -0
  223. package/lib/module/ui/components/feedback/constants.js +55 -0
  224. package/lib/module/ui/components/feedback/constants.js.map +1 -0
  225. package/lib/module/ui/components/feedback/feedbackStyles.js +257 -0
  226. package/lib/module/ui/components/feedback/feedbackStyles.js.map +1 -0
  227. package/lib/module/ui/components/feedback/index.js +8 -0
  228. package/lib/module/ui/components/feedback/index.js.map +1 -0
  229. package/lib/module/ui/components/feedback/types.js +4 -0
  230. package/lib/module/ui/components/feedback/types.js.map +1 -0
  231. package/lib/module/ui/components/feedback/useFeedbackForm.js +47 -0
  232. package/lib/module/ui/components/feedback/useFeedbackForm.js.map +1 -0
  233. package/lib/module/ui/components/modals/DeleteAccountModal.js +276 -0
  234. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -0
  235. package/lib/module/ui/components/modals/index.js +4 -0
  236. package/lib/module/ui/components/modals/index.js.map +1 -0
  237. package/lib/module/ui/components/payment/PaymentDetailsStep.js +303 -0
  238. package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -0
  239. package/lib/module/ui/components/payment/PaymentMethodStep.js +73 -0
  240. package/lib/module/ui/components/payment/PaymentMethodStep.js.map +1 -0
  241. package/lib/module/ui/components/payment/PaymentReviewStep.js +102 -0
  242. package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -0
  243. package/lib/module/ui/components/payment/PaymentSuccessStep.js +73 -0
  244. package/lib/module/ui/components/payment/PaymentSuccessStep.js.map +1 -0
  245. package/lib/module/ui/components/payment/PaymentSummaryStep.js +170 -0
  246. package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -0
  247. package/lib/module/ui/components/payment/constants.js +47 -0
  248. package/lib/module/ui/components/payment/constants.js.map +1 -0
  249. package/lib/module/ui/components/payment/index.js +10 -0
  250. package/lib/module/ui/components/payment/index.js.map +1 -0
  251. package/lib/module/ui/components/payment/paymentStyles.js +404 -0
  252. package/lib/module/ui/components/payment/paymentStyles.js.map +1 -0
  253. package/lib/module/ui/components/payment/types.js +4 -0
  254. package/lib/module/ui/components/payment/types.js.map +1 -0
  255. package/lib/module/ui/context/OxyContext.js +112 -191
  256. package/lib/module/ui/context/OxyContext.js.map +1 -1
  257. package/lib/module/ui/context/hooks/useAuthOperations.js +150 -19
  258. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  259. package/lib/module/ui/context/hooks/useSessionManagement.js +274 -0
  260. package/lib/module/ui/context/hooks/useSessionManagement.js.map +1 -0
  261. package/lib/module/ui/hooks/index.js +2 -0
  262. package/lib/module/ui/hooks/index.js.map +1 -1
  263. package/lib/module/ui/hooks/mutations/useAccountMutations.js +80 -72
  264. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  265. package/lib/module/ui/hooks/queries/useAccountQueries.js +31 -44
  266. package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
  267. package/lib/module/ui/hooks/queries/useSecurityQueries.js +1 -1
  268. package/lib/module/ui/hooks/queries/useSecurityQueries.js.map +1 -1
  269. package/lib/module/ui/hooks/queries/useServicesQueries.js +13 -7
  270. package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
  271. package/lib/module/ui/hooks/useAsyncAction.js +89 -0
  272. package/lib/module/ui/hooks/useAsyncAction.js.map +1 -0
  273. package/lib/module/ui/hooks/useProfileEditing.js +3 -5
  274. package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
  275. package/lib/module/ui/hooks/useSessionManagement.js +4 -8
  276. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
  277. package/lib/module/ui/hooks/useSessionSocket.js +162 -315
  278. package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
  279. package/lib/module/ui/hooks/useSettingToggle.js +120 -0
  280. package/lib/module/ui/hooks/useSettingToggle.js.map +1 -0
  281. package/lib/module/ui/hooks/useStorage.js +25 -59
  282. package/lib/module/ui/hooks/useStorage.js.map +1 -1
  283. package/lib/module/ui/index.js +15 -10
  284. package/lib/module/ui/index.js.map +1 -1
  285. package/lib/module/ui/navigation/routes.js +6 -1
  286. package/lib/module/ui/navigation/routes.js.map +1 -1
  287. package/lib/module/ui/screens/AccountCenterScreen.js +6 -4
  288. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  289. package/lib/module/ui/screens/AccountOverviewScreen.js +33 -30
  290. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  291. package/lib/module/ui/screens/AccountSettingsScreen.js +29 -24
  292. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  293. package/lib/module/ui/screens/AccountSwitcherScreen.js +3 -3
  294. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  295. package/lib/module/ui/screens/FAQScreen.js +310 -0
  296. package/lib/module/ui/screens/FAQScreen.js.map +1 -0
  297. package/lib/module/ui/screens/FeedbackScreen.js +64 -581
  298. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  299. package/lib/module/ui/screens/HelpSupportScreen.js +8 -7
  300. package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
  301. package/lib/module/ui/screens/OxyAuthScreen.js +135 -68
  302. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  303. package/lib/module/ui/screens/PaymentGatewayScreen.js +67 -1397
  304. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  305. package/lib/module/ui/screens/PrivacySettingsScreen.js +6 -13
  306. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  307. package/lib/module/ui/screens/ProfileScreen.js +13 -5
  308. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  309. package/lib/module/ui/screens/SavesCollectionsScreen.js +16 -10
  310. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  311. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +23 -11
  312. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
  313. package/lib/module/ui/stores/accountStore.js +2 -4
  314. package/lib/module/ui/stores/accountStore.js.map +1 -1
  315. package/lib/module/ui/stores/authStore.js +45 -32
  316. package/lib/module/ui/stores/authStore.js.map +1 -1
  317. package/lib/module/ui/styles/spacing.js +6 -2
  318. package/lib/module/ui/styles/spacing.js.map +1 -1
  319. package/lib/module/ui/utils/avatarUtils.js +37 -40
  320. package/lib/module/ui/utils/avatarUtils.js.map +1 -1
  321. package/lib/module/ui/utils/storageHelpers.js.map +1 -1
  322. package/lib/module/utils/errorUtils.js +7 -0
  323. package/lib/module/utils/errorUtils.js.map +1 -1
  324. package/lib/module/utils/validationUtils.js +13 -0
  325. package/lib/module/utils/validationUtils.js.map +1 -1
  326. package/lib/typescript/core/CrossDomainAuth.d.ts +161 -0
  327. package/lib/typescript/core/CrossDomainAuth.d.ts.map +1 -0
  328. package/lib/typescript/core/HttpService.d.ts +1 -1
  329. package/lib/typescript/core/HttpService.d.ts.map +1 -1
  330. package/lib/typescript/core/OxyServices.base.d.ts +0 -6
  331. package/lib/typescript/core/OxyServices.base.d.ts.map +1 -1
  332. package/lib/typescript/core/OxyServices.d.ts +5 -36
  333. package/lib/typescript/core/OxyServices.d.ts.map +1 -1
  334. package/lib/typescript/core/index.d.ts +4 -0
  335. package/lib/typescript/core/index.d.ts.map +1 -1
  336. package/lib/typescript/core/mixins/OxyServices.analytics.d.ts.map +1 -1
  337. package/lib/typescript/core/mixins/OxyServices.assets.d.ts.map +1 -1
  338. package/lib/typescript/core/mixins/OxyServices.auth.d.ts +40 -20
  339. package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -1
  340. package/lib/typescript/core/mixins/OxyServices.developer.d.ts.map +1 -1
  341. package/lib/typescript/core/mixins/OxyServices.devices.d.ts.map +1 -1
  342. package/lib/typescript/core/mixins/OxyServices.features.d.ts +229 -0
  343. package/lib/typescript/core/mixins/OxyServices.features.d.ts.map +1 -0
  344. package/lib/typescript/core/mixins/OxyServices.fedcm.d.ts +195 -0
  345. package/lib/typescript/core/mixins/OxyServices.fedcm.d.ts.map +1 -0
  346. package/lib/typescript/core/mixins/OxyServices.karma.d.ts.map +1 -1
  347. package/lib/typescript/core/mixins/OxyServices.language.d.ts.map +1 -1
  348. package/lib/typescript/core/mixins/OxyServices.location.d.ts.map +1 -1
  349. package/lib/typescript/core/mixins/OxyServices.payment.d.ts.map +1 -1
  350. package/lib/typescript/core/mixins/OxyServices.popup.d.ts +206 -0
  351. package/lib/typescript/core/mixins/OxyServices.popup.d.ts.map +1 -0
  352. package/lib/typescript/core/mixins/OxyServices.privacy.d.ts.map +1 -1
  353. package/lib/typescript/core/mixins/OxyServices.redirect.d.ts +246 -0
  354. package/lib/typescript/core/mixins/OxyServices.redirect.d.ts.map +1 -0
  355. package/lib/typescript/core/mixins/OxyServices.security.d.ts.map +1 -1
  356. package/lib/typescript/core/mixins/OxyServices.user.d.ts +6 -4
  357. package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -1
  358. package/lib/typescript/core/mixins/OxyServices.utility.d.ts.map +1 -1
  359. package/lib/typescript/core/mixins/index.d.ts +291 -9
  360. package/lib/typescript/core/mixins/index.d.ts.map +1 -1
  361. package/lib/typescript/crypto/index.d.ts +6 -3
  362. package/lib/typescript/crypto/index.d.ts.map +1 -1
  363. package/lib/typescript/crypto/keyManager.d.ts +190 -0
  364. package/lib/typescript/crypto/keyManager.d.ts.map +1 -0
  365. package/lib/typescript/crypto/polyfill.d.ts +4 -3
  366. package/lib/typescript/crypto/polyfill.d.ts.map +1 -1
  367. package/lib/typescript/crypto/recoveryPhrase.d.ts +59 -0
  368. package/lib/typescript/crypto/recoveryPhrase.d.ts.map +1 -0
  369. package/lib/typescript/crypto/signatureService.d.ts +87 -0
  370. package/lib/typescript/crypto/signatureService.d.ts.map +1 -0
  371. package/lib/typescript/index.d.ts +5 -6
  372. package/lib/typescript/index.d.ts.map +1 -1
  373. package/lib/typescript/models/interfaces.d.ts +2 -14
  374. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  375. package/lib/typescript/models/session.d.ts +0 -9
  376. package/lib/typescript/models/session.d.ts.map +1 -1
  377. package/lib/typescript/types/bip39.d.ts +32 -0
  378. package/lib/typescript/ui/components/BottomSheetRouter.d.ts +5 -0
  379. package/lib/typescript/ui/components/BottomSheetRouter.d.ts.map +1 -1
  380. package/lib/typescript/ui/components/GroupedItem.d.ts +5 -1
  381. package/lib/typescript/ui/components/GroupedItem.d.ts.map +1 -1
  382. package/lib/typescript/ui/components/IconButton/utils.d.ts +1 -1
  383. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
  384. package/lib/typescript/ui/components/SettingRow.d.ts +6 -0
  385. package/lib/typescript/ui/components/SettingRow.d.ts.map +1 -1
  386. package/lib/typescript/ui/components/TextField/Addons/Outline.d.ts +2 -2
  387. package/lib/typescript/ui/components/TextField/Adornment/utils.d.ts +1 -1
  388. package/lib/typescript/ui/components/TextField/Adornment/utils.d.ts.map +1 -1
  389. package/lib/typescript/ui/components/TextField/helpers.d.ts +8 -8
  390. package/lib/typescript/ui/components/TextField/types.d.ts +1 -0
  391. package/lib/typescript/ui/components/TextField/types.d.ts.map +1 -1
  392. package/lib/typescript/ui/components/feedback/FormInput.d.ts +20 -0
  393. package/lib/typescript/ui/components/feedback/FormInput.d.ts.map +1 -0
  394. package/lib/typescript/ui/components/feedback/ProgressIndicator.d.ts +11 -0
  395. package/lib/typescript/ui/components/feedback/ProgressIndicator.d.ts.map +1 -0
  396. package/lib/typescript/ui/components/feedback/constants.d.ts +5 -0
  397. package/lib/typescript/ui/components/feedback/constants.d.ts.map +1 -0
  398. package/lib/typescript/ui/components/feedback/feedbackStyles.d.ts +280 -0
  399. package/lib/typescript/ui/components/feedback/feedbackStyles.d.ts.map +1 -0
  400. package/lib/typescript/ui/components/feedback/index.d.ts +7 -0
  401. package/lib/typescript/ui/components/feedback/index.d.ts.map +1 -0
  402. package/lib/typescript/ui/components/feedback/types.d.ts +46 -0
  403. package/lib/typescript/ui/components/feedback/types.d.ts.map +1 -0
  404. package/lib/typescript/ui/components/feedback/useFeedbackForm.d.ts +9 -0
  405. package/lib/typescript/ui/components/feedback/useFeedbackForm.d.ts.map +1 -0
  406. package/lib/typescript/ui/components/modals/DeleteAccountModal.d.ts +19 -0
  407. package/lib/typescript/ui/components/modals/DeleteAccountModal.d.ts.map +1 -0
  408. package/lib/typescript/ui/components/modals/index.d.ts +2 -0
  409. package/lib/typescript/ui/components/modals/index.d.ts.map +1 -0
  410. package/lib/typescript/ui/components/payment/PaymentDetailsStep.d.ts +21 -0
  411. package/lib/typescript/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -0
  412. package/lib/typescript/ui/components/payment/PaymentMethodStep.d.ts +14 -0
  413. package/lib/typescript/ui/components/payment/PaymentMethodStep.d.ts.map +1 -0
  414. package/lib/typescript/ui/components/payment/PaymentReviewStep.d.ts +16 -0
  415. package/lib/typescript/ui/components/payment/PaymentReviewStep.d.ts.map +1 -0
  416. package/lib/typescript/ui/components/payment/PaymentSuccessStep.d.ts +10 -0
  417. package/lib/typescript/ui/components/payment/PaymentSuccessStep.d.ts.map +1 -0
  418. package/lib/typescript/ui/components/payment/PaymentSummaryStep.d.ts +15 -0
  419. package/lib/typescript/ui/components/payment/PaymentSummaryStep.d.ts.map +1 -0
  420. package/lib/typescript/ui/components/payment/constants.d.ts +7 -0
  421. package/lib/typescript/ui/components/payment/constants.d.ts.map +1 -0
  422. package/lib/typescript/ui/components/payment/index.d.ts +9 -0
  423. package/lib/typescript/ui/components/payment/index.d.ts.map +1 -0
  424. package/lib/typescript/ui/components/payment/paymentStyles.d.ts +396 -0
  425. package/lib/typescript/ui/components/payment/paymentStyles.d.ts.map +1 -0
  426. package/lib/typescript/ui/components/payment/types.d.ts +40 -0
  427. package/lib/typescript/ui/components/payment/types.d.ts.map +1 -0
  428. package/lib/typescript/ui/components/types.d.ts +4 -0
  429. package/lib/typescript/ui/components/types.d.ts.map +1 -1
  430. package/lib/typescript/ui/context/OxyContext.d.ts +57 -3
  431. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  432. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts +10 -3
  433. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  434. package/lib/typescript/ui/context/hooks/useSessionManagement.d.ts +41 -0
  435. package/lib/typescript/ui/context/hooks/useSessionManagement.d.ts.map +1 -0
  436. package/lib/typescript/ui/hooks/index.d.ts +2 -0
  437. package/lib/typescript/ui/hooks/index.d.ts.map +1 -1
  438. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  439. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  440. package/lib/typescript/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
  441. package/lib/typescript/ui/hooks/useAsyncAction.d.ts +51 -0
  442. package/lib/typescript/ui/hooks/useAsyncAction.d.ts.map +1 -0
  443. package/lib/typescript/ui/hooks/useProfileEditing.d.ts.map +1 -1
  444. package/lib/typescript/ui/hooks/useSessionManagement.d.ts.map +1 -1
  445. package/lib/typescript/ui/hooks/useSessionSocket.d.ts +1 -2
  446. package/lib/typescript/ui/hooks/useSessionSocket.d.ts.map +1 -1
  447. package/lib/typescript/ui/hooks/useSettingToggle.d.ts +55 -0
  448. package/lib/typescript/ui/hooks/useSettingToggle.d.ts.map +1 -0
  449. package/lib/typescript/ui/hooks/useStorage.d.ts +3 -9
  450. package/lib/typescript/ui/hooks/useStorage.d.ts.map +1 -1
  451. package/lib/typescript/ui/index.d.ts +6 -2
  452. package/lib/typescript/ui/index.d.ts.map +1 -1
  453. package/lib/typescript/ui/navigation/routes.d.ts +1 -1
  454. package/lib/typescript/ui/navigation/routes.d.ts.map +1 -1
  455. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  456. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  457. package/lib/typescript/ui/screens/FAQScreen.d.ts +5 -0
  458. package/lib/typescript/ui/screens/FAQScreen.d.ts.map +1 -0
  459. package/lib/typescript/ui/screens/FeedbackScreen.d.ts.map +1 -1
  460. package/lib/typescript/ui/screens/HelpSupportScreen.d.ts.map +1 -1
  461. package/lib/typescript/ui/screens/OxyAuthScreen.d.ts +1 -1
  462. package/lib/typescript/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  463. package/lib/typescript/ui/screens/PaymentGatewayScreen.d.ts +3 -15
  464. package/lib/typescript/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  465. package/lib/typescript/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  466. package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +1 -1
  467. package/lib/typescript/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
  468. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -1
  469. package/lib/typescript/ui/stores/accountStore.d.ts.map +1 -1
  470. package/lib/typescript/ui/stores/authStore.d.ts +8 -7
  471. package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
  472. package/lib/typescript/ui/styles/spacing.d.ts +5 -0
  473. package/lib/typescript/ui/styles/spacing.d.ts.map +1 -1
  474. package/lib/typescript/ui/types/navigation.d.ts +2 -1
  475. package/lib/typescript/ui/types/navigation.d.ts.map +1 -1
  476. package/lib/typescript/ui/utils/avatarUtils.d.ts +2 -13
  477. package/lib/typescript/ui/utils/avatarUtils.d.ts.map +1 -1
  478. package/lib/typescript/ui/utils/storageHelpers.d.ts +0 -3
  479. package/lib/typescript/ui/utils/storageHelpers.d.ts.map +1 -1
  480. package/lib/typescript/utils/errorUtils.d.ts +6 -0
  481. package/lib/typescript/utils/errorUtils.d.ts.map +1 -1
  482. package/lib/typescript/utils/validationUtils.d.ts +8 -0
  483. package/lib/typescript/utils/validationUtils.d.ts.map +1 -1
  484. package/package.json +8 -7
  485. package/src/core/CrossDomainAuth.ts +307 -0
  486. package/src/core/HttpService.ts +99 -16
  487. package/src/core/OxyServices.base.ts +20 -3
  488. package/src/core/OxyServices.ts +7 -3
  489. package/src/core/index.ts +9 -1
  490. package/src/core/mixins/OxyServices.assets.ts +14 -3
  491. package/src/core/mixins/OxyServices.auth.ts +105 -36
  492. package/src/core/mixins/OxyServices.features.ts +428 -0
  493. package/src/core/mixins/OxyServices.fedcm.ts +315 -0
  494. package/src/core/mixins/OxyServices.popup.ts +402 -0
  495. package/src/core/mixins/OxyServices.redirect.ts +397 -0
  496. package/src/core/mixins/OxyServices.user.ts +39 -24
  497. package/src/core/mixins/index.ts +33 -14
  498. package/src/crypto/index.ts +16 -5
  499. package/src/crypto/keyManager.ts +966 -0
  500. package/src/crypto/polyfill.ts +6 -5
  501. package/src/crypto/recoveryPhrase.ts +166 -0
  502. package/src/crypto/signatureService.ts +323 -0
  503. package/src/i18n/locales/en-US.json +1 -1
  504. package/src/index.ts +19 -15
  505. package/src/models/interfaces.ts +4 -16
  506. package/src/models/session.ts +2 -11
  507. package/src/types/bip39.d.ts +32 -0
  508. package/src/ui/components/BottomSheetRouter.tsx +6 -1
  509. package/src/ui/components/GroupedItem.tsx +19 -1
  510. package/src/ui/components/Icon.tsx +1 -1
  511. package/src/ui/components/IconButton/utils.ts +1 -1
  512. package/src/ui/components/OxyProvider.tsx +44 -12
  513. package/src/ui/components/SettingRow.tsx +26 -4
  514. package/src/ui/components/TextField/Addons/Outline.tsx +2 -2
  515. package/src/ui/components/TextField/Adornment/utils.ts +2 -2
  516. package/src/ui/components/TextField/helpers.tsx +10 -10
  517. package/src/ui/components/TextField/types.tsx +1 -1
  518. package/src/ui/components/TouchableRipple/utils.ts +2 -2
  519. package/src/ui/components/Typography/AnimatedText.tsx +2 -2
  520. package/src/ui/components/feedback/FormInput.tsx +84 -0
  521. package/src/ui/components/feedback/ProgressIndicator.tsx +35 -0
  522. package/src/ui/components/feedback/constants.ts +22 -0
  523. package/src/ui/components/feedback/feedbackStyles.ts +247 -0
  524. package/src/ui/components/feedback/index.ts +6 -0
  525. package/src/ui/components/feedback/types.ts +52 -0
  526. package/src/ui/components/feedback/useFeedbackForm.ts +44 -0
  527. package/src/ui/components/modals/DeleteAccountModal.tsx +294 -0
  528. package/src/ui/components/modals/index.ts +1 -0
  529. package/src/ui/components/payment/PaymentDetailsStep.tsx +222 -0
  530. package/src/ui/components/payment/PaymentMethodStep.tsx +89 -0
  531. package/src/ui/components/payment/PaymentReviewStep.tsx +126 -0
  532. package/src/ui/components/payment/PaymentSuccessStep.tsx +71 -0
  533. package/src/ui/components/payment/PaymentSummaryStep.tsx +159 -0
  534. package/src/ui/components/payment/constants.ts +39 -0
  535. package/src/ui/components/payment/index.ts +9 -0
  536. package/src/ui/components/payment/paymentStyles.ts +397 -0
  537. package/src/ui/components/payment/types.ts +45 -0
  538. package/src/ui/components/types.tsx +6 -0
  539. package/src/ui/context/OxyContext.tsx +173 -195
  540. package/src/ui/context/hooks/useAuthOperations.ts +177 -36
  541. package/src/ui/context/hooks/useSessionManagement.ts +399 -0
  542. package/src/ui/hooks/index.ts +3 -1
  543. package/src/ui/hooks/mutations/useAccountMutations.ts +83 -76
  544. package/src/ui/hooks/queries/useAccountQueries.ts +29 -35
  545. package/src/ui/hooks/queries/useSecurityQueries.ts +1 -1
  546. package/src/ui/hooks/queries/useServicesQueries.ts +14 -6
  547. package/src/ui/hooks/useAsyncAction.ts +129 -0
  548. package/src/ui/hooks/useProfileEditing.ts +3 -3
  549. package/src/ui/hooks/useSessionManagement.ts +5 -10
  550. package/src/ui/hooks/useSessionSocket.ts +46 -175
  551. package/src/ui/hooks/useSettingToggle.ts +147 -0
  552. package/src/ui/hooks/useStorage.ts +24 -76
  553. package/src/ui/index.ts +22 -13
  554. package/src/ui/navigation/routes.ts +8 -2
  555. package/src/ui/screens/AccountCenterScreen.tsx +4 -4
  556. package/src/ui/screens/AccountOverviewScreen.tsx +36 -38
  557. package/src/ui/screens/AccountSettingsScreen.tsx +34 -37
  558. package/src/ui/screens/AccountSwitcherScreen.tsx +4 -4
  559. package/src/ui/screens/FAQScreen.tsx +332 -0
  560. package/src/ui/screens/FeedbackScreen.tsx +91 -626
  561. package/src/ui/screens/HelpSupportScreen.tsx +7 -5
  562. package/src/ui/screens/OxyAuthScreen.tsx +138 -64
  563. package/src/ui/screens/PaymentGatewayScreen.tsx +96 -1275
  564. package/src/ui/screens/PrivacySettingsScreen.tsx +6 -12
  565. package/src/ui/screens/ProfileScreen.tsx +11 -6
  566. package/src/ui/screens/SavesCollectionsScreen.tsx +19 -10
  567. package/src/ui/screens/karma/KarmaCenterScreen.tsx +10 -10
  568. package/src/ui/stores/accountStore.ts +1 -11
  569. package/src/ui/stores/authStore.ts +43 -44
  570. package/src/ui/styles/spacing.ts +15 -2
  571. package/src/ui/types/navigation.ts +2 -2
  572. package/src/ui/utils/avatarUtils.ts +39 -46
  573. package/src/ui/utils/storageHelpers.ts +0 -4
  574. package/src/utils/__tests__/validationUtils.test.ts +16 -1
  575. package/src/utils/errorUtils.ts +8 -1
  576. package/src/utils/validationUtils.ts +12 -0
  577. package/lib/commonjs/core/services/SessionService.js +0 -163
  578. package/lib/commonjs/core/services/SessionService.js.map +0 -1
  579. package/lib/commonjs/core/services/TokenService.js +0 -220
  580. package/lib/commonjs/core/services/TokenService.js.map +0 -1
  581. package/lib/commonjs/crypto/types.js +0 -2
  582. package/lib/commonjs/crypto/types.js.map +0 -1
  583. package/lib/commonjs/ui/context/OxyContextBase.js +0 -21
  584. package/lib/commonjs/ui/context/OxyContextBase.js.map +0 -1
  585. package/lib/commonjs/ui/context/hooks/useStorage.js +0 -79
  586. package/lib/commonjs/ui/context/hooks/useStorage.js.map +0 -1
  587. package/lib/commonjs/ui/hooks/useAvatarPicker.js +0 -56
  588. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +0 -1
  589. package/lib/module/core/services/SessionService.js +0 -159
  590. package/lib/module/core/services/SessionService.js.map +0 -1
  591. package/lib/module/core/services/TokenService.js +0 -217
  592. package/lib/module/core/services/TokenService.js.map +0 -1
  593. package/lib/module/crypto/types.js +0 -2
  594. package/lib/module/crypto/types.js.map +0 -1
  595. package/lib/module/ui/context/OxyContextBase.js +0 -16
  596. package/lib/module/ui/context/OxyContextBase.js.map +0 -1
  597. package/lib/module/ui/context/hooks/useStorage.js +0 -74
  598. package/lib/module/ui/context/hooks/useStorage.js.map +0 -1
  599. package/lib/module/ui/hooks/useAvatarPicker.js +0 -50
  600. package/lib/module/ui/hooks/useAvatarPicker.js.map +0 -1
  601. package/lib/typescript/core/services/SessionService.d.ts +0 -78
  602. package/lib/typescript/core/services/SessionService.d.ts.map +0 -1
  603. package/lib/typescript/core/services/TokenService.d.ts +0 -72
  604. package/lib/typescript/core/services/TokenService.d.ts.map +0 -1
  605. package/lib/typescript/crypto/types.d.ts +0 -22
  606. package/lib/typescript/crypto/types.d.ts.map +0 -1
  607. package/lib/typescript/ui/context/OxyContextBase.d.ts +0 -63
  608. package/lib/typescript/ui/context/OxyContextBase.d.ts.map +0 -1
  609. package/lib/typescript/ui/context/hooks/useStorage.d.ts +0 -22
  610. package/lib/typescript/ui/context/hooks/useStorage.d.ts.map +0 -1
  611. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts +0 -19
  612. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts.map +0 -1
  613. package/src/core/services/SessionService.ts +0 -173
  614. package/src/core/services/TokenService.ts +0 -237
  615. package/src/crypto/types.ts +0 -23
  616. package/src/ui/context/OxyContextBase.tsx +0 -78
  617. package/src/ui/context/hooks/useStorage.ts +0 -104
  618. package/src/ui/hooks/useAvatarPicker.ts +0 -61
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ec","EC","Platform","SecureStore","ExpoCrypto","STORAGE_KEYS","PRIVATE_KEY","PUBLIC_KEY","BACKUP_PRIVATE_KEY","BACKUP_PUBLIC_KEY","BACKUP_TIMESTAMP","SHARED_PRIVATE_KEY","SHARED_PUBLIC_KEY","SHARED_SESSION_TOKEN","SHARED_SESSION_ID","IOS_KEYCHAIN_GROUP","ANDROID_ACCOUNT_TYPE","initSecureStore","error","errorMessage","Error","message","String","isReactNative","navigator","product","isNodeJS","process","versions","node","isWebPlatform","OS","window","initExpoCrypto","uint8ArrayToHex","bytes","Array","from","map","b","toString","padStart","join","getSecureRandomBytes","length","Crypto","getRandomBytes","getCrypto","Function","crypto","Uint8Array","randomBytes","KeyManager","cachedPublicKey","cachedHasIdentity","cachedSharedPublicKey","cachedHasSharedIdentity","invalidateCache","invalidateSharedCache","generateKeyPairSync","keyPair","genKeyPair","privateKey","getPrivate","publicKey","getPublic","generateKeyPair","privateKeyHex","keyFromPrivate","createSharedIdentity","store","setItemAsync","keychainAccessible","WHEN_UNLOCKED_THIS_DEVICE_ONLY","keychainAccessGroup","__DEV__","console","log","getSharedPublicKey","getItemAsync","warn","getSharedPrivateKey","hasSharedIdentity","hasShared","importSharedIdentity","storeSharedSession","sessionId","accessToken","WHEN_UNLOCKED","getSharedSession","clearSharedSession","deleteItemAsync","migrateToSharedIdentity","getPrivateKey","createIdentity","importKeyPair","getPublicKey","hasIdentity","deleteIdentity","skipBackup","force","userConfirmed","backupSuccess","backupIdentity","backupError","Date","now","verifyIdentityIntegrity","isValidPrivateKey","isValidPublicKey","derivedPublicKey","derivePublicKey","getKeyPairObject","restoreIdentityFromBackup","backupPrivateKey","backupPublicKey","restored","keyFromPublic","shortenPublicKey","slice"],"sourceRoot":"../../../src","sources":["crypto/keyManager.ts"],"mappings":"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","ignoreList":[]}
@@ -7,12 +7,12 @@
7
7
  * before any crypto operations are performed.
8
8
  *
9
9
  * Polyfills included:
10
- * - Buffer: Required by crypto libraries
11
- * - crypto.getRandomValues: Required for secure random number generation
10
+ * - Buffer: Required by bip39 and other crypto libraries
11
+ * - crypto.getRandomValues: Required by bip39 for secure random number generation
12
12
  */
13
13
 
14
14
  // Import Buffer polyfill for React Native compatibility
15
- // Some crypto libraries depend on Buffer which isn't available in React Native
15
+ // Libraries like bip39 depend on Buffer which isn't available in React Native
16
16
  import { Buffer } from 'buffer';
17
17
 
18
18
  // Get the global object in a cross-platform way
@@ -31,7 +31,7 @@ if (!globalObject.Buffer) {
31
31
  }
32
32
 
33
33
  // Polyfill crypto.getRandomValues for React Native
34
- // This is required by crypto libraries for secure random number generation
34
+ // This is required by bip39 and other crypto libraries
35
35
 
36
36
  // Cache for expo-crypto module
37
37
  let expoCryptoModule = null;
@@ -73,5 +73,6 @@ if (typeof globalObject.crypto === 'undefined') {
73
73
  globalObject.crypto.getRandomValues = cryptoPolyfill.getRandomValues;
74
74
  }
75
75
 
76
- // No longer re-exporting `Buffer` from this module; import from 'buffer' where needed.
76
+ // Re-export Buffer for convenience
77
+ export { Buffer };
77
78
  //# sourceMappingURL=polyfill.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","getGlobalObject","globalThis","global","window","self","globalObject","expoCryptoModule","getRandomBytesSync","byteCount","require","Error","cryptoModule","getRandomBytes","cryptoPolyfill","getRandomValues","array","bytes","byteLength","uint8View","Uint8Array","buffer","byteOffset","set","crypto"],"sourceRoot":"../../../src","sources":["crypto/polyfill.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAASA,MAAM,QAAQ,QAAQ;;AAE/B;AACA,MAAMC,eAAe,GAAGA,CAAA,KAAyB;EAC/C,IAAI,OAAOC,UAAU,KAAK,WAAW,EAAE,OAAOA,UAAU;EACxD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,IAAI,KAAK,WAAW,EAAE,OAAOA,IAAI;EAC5C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAMC,YAAY,GAAGL,eAAe,CAAC,CAAC;;AAEtC;AACA,IAAI,CAACK,YAAY,CAACN,MAAM,EAAE;EACvBM,YAAY,CAA0CN,MAAM,GAAGA,MAAM;AACxE;;AAEA;AACA;;AAKA;AACA,IAAIO,gBAAqD,GAAG,IAAI;;AAEhE;AACA;AACA;AACA;AACA,SAASC,kBAAkBA,CAACC,SAAiB,EAAc;EACzD,IAAI,CAACF,gBAAgB,EAAE;IACrB;IACA,IAAI;MACF;MACAA,gBAAgB,GAAGG,OAAO,CAAC,aAAa,CAAC;IAC3C,CAAC,CAAC,MAAM;MACN,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;IAChF;EACF;EACA;EACA,MAAMC,YAAY,GAAGL,gBAAgB;EACrC,IAAI,CAACK,YAAY,EAAE;IACjB,MAAM,IAAID,KAAK,CAAC,mCAAmC,CAAC;EACtD;EACA,OAAOC,YAAY,CAACC,cAAc,CAACJ,SAAS,CAAC;AAC/C;AAEA,MAAMK,cAA0B,GAAG;EACjCC,eAAeA,CAA4BC,KAAQ,EAAK;IACtD,MAAMC,KAAK,GAAGT,kBAAkB,CAACQ,KAAK,CAACE,UAAU,CAAC;IAClD,MAAMC,SAAS,GAAG,IAAIC,UAAU,CAACJ,KAAK,CAACK,MAAM,EAAEL,KAAK,CAACM,UAAU,EAAEN,KAAK,CAACE,UAAU,CAAC;IAClFC,SAAS,CAACI,GAAG,CAACN,KAAK,CAAC;IACpB,OAAOD,KAAK;EACd;AACF,CAAC;;AAED;AACA,IAAI,OAAOV,YAAY,CAACkB,MAAM,KAAK,WAAW,EAAE;EAC7ClB,YAAY,CAAuCkB,MAAM,GAAGV,cAAc;AAC7E,CAAC,MAAM,IAAI,OAAOR,YAAY,CAACkB,MAAM,CAACT,eAAe,KAAK,UAAU,EAAE;EACnET,YAAY,CAACkB,MAAM,CAAgBT,eAAe,GAAGD,cAAc,CAACC,eAAe;AACtF;;AAEA","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","getGlobalObject","globalThis","global","window","self","globalObject","expoCryptoModule","getRandomBytesSync","byteCount","require","Error","cryptoModule","getRandomBytes","cryptoPolyfill","getRandomValues","array","bytes","byteLength","uint8View","Uint8Array","buffer","byteOffset","set","crypto"],"sourceRoot":"../../../src","sources":["crypto/polyfill.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAASA,MAAM,QAAQ,QAAQ;;AAE/B;AACA,MAAMC,eAAe,GAAGA,CAAA,KAAyB;EAC/C,IAAI,OAAOC,UAAU,KAAK,WAAW,EAAE,OAAOA,UAAU;EACxD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,MAAM,KAAK,WAAW,EAAE,OAAOA,MAAM;EAChD,IAAI,OAAOC,IAAI,KAAK,WAAW,EAAE,OAAOA,IAAI;EAC5C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAMC,YAAY,GAAGL,eAAe,CAAC,CAAC;;AAEtC;AACA,IAAI,CAACK,YAAY,CAACN,MAAM,EAAE;EACvBM,YAAY,CAA0CN,MAAM,GAAGA,MAAM;AACxE;;AAEA;AACA;;AAKA;AACA,IAAIO,gBAAqD,GAAG,IAAI;;AAEhE;AACA;AACA;AACA;AACA,SAASC,kBAAkBA,CAACC,SAAiB,EAAc;EACzD,IAAI,CAACF,gBAAgB,EAAE;IACrB;IACA,IAAI;MACF;MACAA,gBAAgB,GAAGG,OAAO,CAAC,aAAa,CAAC;IAC3C,CAAC,CAAC,MAAM;MACN,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;IAChF;EACF;EACA;EACA,MAAMC,YAAY,GAAGL,gBAAgB;EACrC,IAAI,CAACK,YAAY,EAAE;IACjB,MAAM,IAAID,KAAK,CAAC,mCAAmC,CAAC;EACtD;EACA,OAAOC,YAAY,CAACC,cAAc,CAACJ,SAAS,CAAC;AAC/C;AAEA,MAAMK,cAA0B,GAAG;EACjCC,eAAeA,CAA4BC,KAAQ,EAAK;IACtD,MAAMC,KAAK,GAAGT,kBAAkB,CAACQ,KAAK,CAACE,UAAU,CAAC;IAClD,MAAMC,SAAS,GAAG,IAAIC,UAAU,CAACJ,KAAK,CAACK,MAAM,EAAEL,KAAK,CAACM,UAAU,EAAEN,KAAK,CAACE,UAAU,CAAC;IAClFC,SAAS,CAACI,GAAG,CAACN,KAAK,CAAC;IACpB,OAAOD,KAAK;EACd;AACF,CAAC;;AAED;AACA,IAAI,OAAOV,YAAY,CAACkB,MAAM,KAAK,WAAW,EAAE;EAC7ClB,YAAY,CAAuCkB,MAAM,GAAGV,cAAc;AAC7E,CAAC,MAAM,IAAI,OAAOR,YAAY,CAACkB,MAAM,CAACT,eAAe,KAAK,UAAU,EAAE;EACnET,YAAY,CAACkB,MAAM,CAAgBT,eAAe,GAAGD,cAAc,CAACC,eAAe;AACtF;;AAEA;AACA,SAASf,MAAM","ignoreList":[]}
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Recovery Phrase Service - BIP39 Mnemonic Generation
5
+ *
6
+ * Handles generation and restoration of recovery phrases (mnemonic seeds)
7
+ * for backing up and restoring user identities.
8
+ *
9
+ * Note: This module requires the polyfill to be loaded first (done via crypto/index.ts)
10
+ */
11
+
12
+ import * as bip39 from 'bip39';
13
+ import { KeyManager } from './keyManager';
14
+
15
+ /**
16
+ * Convert Uint8Array or array-like to hexadecimal string
17
+ * Works in both Node.js and React Native without depending on Buffer
18
+ */
19
+ function toHex(data) {
20
+ // Convert to array of numbers if needed
21
+ const bytes = data instanceof Uint8Array ? data : new Uint8Array(data);
22
+ return Array.from(bytes).map(b => b.toString(16).padStart(2, '0')).join('');
23
+ }
24
+ export class RecoveryPhraseService {
25
+ /**
26
+ * Generate a new identity with a recovery phrase
27
+ * Returns the mnemonic phrase (should only be shown once to the user)
28
+ */
29
+ static async generateIdentityWithRecovery() {
30
+ // Generate 128-bit entropy for 12-word mnemonic
31
+ const mnemonic = bip39.generateMnemonic(128);
32
+
33
+ // Derive private key from mnemonic
34
+ // Using the seed directly as the private key (simplified approach)
35
+ const seed = await bip39.mnemonicToSeed(mnemonic);
36
+
37
+ // Use first 32 bytes of seed as private key
38
+ const seedSlice = seed.subarray ? seed.subarray(0, 32) : seed.slice(0, 32);
39
+ const privateKeyHex = toHex(seedSlice);
40
+
41
+ // Import the derived key pair
42
+ const publicKey = await KeyManager.importKeyPair(privateKeyHex);
43
+ return {
44
+ phrase: mnemonic,
45
+ words: mnemonic.split(' '),
46
+ publicKey
47
+ };
48
+ }
49
+
50
+ /**
51
+ * Generate a 24-word recovery phrase for higher security
52
+ */
53
+ static async generateIdentityWithRecovery24() {
54
+ // Generate 256-bit entropy for 24-word mnemonic
55
+ const mnemonic = bip39.generateMnemonic(256);
56
+ const seed = await bip39.mnemonicToSeed(mnemonic);
57
+ const seedSlice = seed.subarray ? seed.subarray(0, 32) : seed.slice(0, 32);
58
+ const privateKeyHex = toHex(seedSlice);
59
+ const publicKey = await KeyManager.importKeyPair(privateKeyHex);
60
+ return {
61
+ phrase: mnemonic,
62
+ words: mnemonic.split(' '),
63
+ publicKey
64
+ };
65
+ }
66
+
67
+ /**
68
+ * Restore an identity from a recovery phrase
69
+ */
70
+ static async restoreFromPhrase(phrase) {
71
+ // Normalize and validate the phrase
72
+ const normalizedPhrase = phrase.trim().toLowerCase();
73
+ if (!bip39.validateMnemonic(normalizedPhrase)) {
74
+ throw new Error('Invalid recovery phrase. Please check the words and try again.');
75
+ }
76
+
77
+ // Derive the same private key from the mnemonic
78
+ const seed = await bip39.mnemonicToSeed(normalizedPhrase);
79
+ const seedSlice = seed.subarray ? seed.subarray(0, 32) : seed.slice(0, 32);
80
+ const privateKeyHex = toHex(seedSlice);
81
+
82
+ // Import and store the key pair
83
+ const publicKey = await KeyManager.importKeyPair(privateKeyHex);
84
+ return publicKey;
85
+ }
86
+
87
+ /**
88
+ * Validate a recovery phrase without importing it
89
+ */
90
+ static validatePhrase(phrase) {
91
+ const normalizedPhrase = phrase.trim().toLowerCase();
92
+ return bip39.validateMnemonic(normalizedPhrase);
93
+ }
94
+
95
+ /**
96
+ * Get the word list for autocomplete/validation
97
+ */
98
+ static getWordList() {
99
+ return bip39.wordlists.english;
100
+ }
101
+
102
+ /**
103
+ * Check if a word is valid in the BIP39 word list
104
+ */
105
+ static isValidWord(word) {
106
+ return bip39.wordlists.english.includes(word.toLowerCase());
107
+ }
108
+
109
+ /**
110
+ * Get suggestions for a partial word
111
+ */
112
+ static getSuggestions(partial, limit = 5) {
113
+ const lowerPartial = partial.toLowerCase();
114
+ return bip39.wordlists.english.filter(word => word.startsWith(lowerPartial)).slice(0, limit);
115
+ }
116
+
117
+ /**
118
+ * Derive the public key from a phrase without storing
119
+ * Useful for verification before importing
120
+ */
121
+ static async derivePublicKeyFromPhrase(phrase) {
122
+ const normalizedPhrase = phrase.trim().toLowerCase();
123
+ if (!bip39.validateMnemonic(normalizedPhrase)) {
124
+ throw new Error('Invalid recovery phrase');
125
+ }
126
+ const seed = await bip39.mnemonicToSeed(normalizedPhrase);
127
+ const seedSlice = seed.subarray ? seed.subarray(0, 32) : seed.slice(0, 32);
128
+ const privateKeyHex = toHex(seedSlice);
129
+ return KeyManager.derivePublicKey(privateKeyHex);
130
+ }
131
+
132
+ /**
133
+ * Convert a phrase to its word array
134
+ */
135
+ static phraseToWords(phrase) {
136
+ return phrase.trim().toLowerCase().split(/\s+/);
137
+ }
138
+
139
+ /**
140
+ * Convert a word array to a phrase string
141
+ */
142
+ static wordsToPhrase(words) {
143
+ return words.map(w => w.toLowerCase().trim()).join(' ');
144
+ }
145
+ }
146
+ export default RecoveryPhraseService;
147
+ //# sourceMappingURL=recoveryPhrase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bip39","KeyManager","toHex","data","bytes","Uint8Array","Array","from","map","b","toString","padStart","join","RecoveryPhraseService","generateIdentityWithRecovery","mnemonic","generateMnemonic","seed","mnemonicToSeed","seedSlice","subarray","slice","privateKeyHex","publicKey","importKeyPair","phrase","words","split","generateIdentityWithRecovery24","restoreFromPhrase","normalizedPhrase","trim","toLowerCase","validateMnemonic","Error","validatePhrase","getWordList","wordlists","english","isValidWord","word","includes","getSuggestions","partial","limit","lowerPartial","filter","startsWith","derivePublicKeyFromPhrase","derivePublicKey","phraseToWords","wordsToPhrase","w"],"sourceRoot":"../../../src","sources":["crypto/recoveryPhrase.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Signature Service - ECDSA Digital Signatures
5
+ *
6
+ * Handles signing and verification of messages using ECDSA secp256k1.
7
+ * Used for authenticating requests and proving identity ownership.
8
+ */
9
+
10
+ import { ec as EC } from 'elliptic';
11
+ import { KeyManager } from './keyManager';
12
+
13
+ // Lazy import for expo-crypto
14
+ let ExpoCrypto = null;
15
+ const ec = new EC('secp256k1');
16
+
17
+ /**
18
+ * Check if we're in a React Native environment
19
+ */
20
+ function isReactNative() {
21
+ return typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
22
+ }
23
+
24
+ /**
25
+ * Check if we're in a Node.js environment
26
+ */
27
+ function isNodeJS() {
28
+ return typeof process !== 'undefined' && process.versions != null && process.versions.node != null;
29
+ }
30
+
31
+ /**
32
+ * Initialize expo-crypto module
33
+ */
34
+ async function initExpoCrypto() {
35
+ if (!ExpoCrypto) {
36
+ ExpoCrypto = await import('expo-crypto');
37
+ }
38
+ return ExpoCrypto;
39
+ }
40
+
41
+ /**
42
+ * Compute SHA-256 hash of a string
43
+ */
44
+ async function sha256(message) {
45
+ // In React Native, always use expo-crypto
46
+ if (isReactNative() || !isNodeJS()) {
47
+ const Crypto = await initExpoCrypto();
48
+ return Crypto.digestStringAsync(Crypto.CryptoDigestAlgorithm.SHA256, message);
49
+ }
50
+
51
+ // In Node.js, use Node's crypto module
52
+ // Use Function constructor to prevent Metro bundler from statically analyzing this require
53
+ // This ensures the require is only evaluated in Node.js runtime, not during Metro bundling
54
+ try {
55
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
56
+ const getCrypto = new Function('return require("crypto")');
57
+ const crypto = getCrypto();
58
+ return crypto.createHash('sha256').update(message).digest('hex');
59
+ } catch (error) {
60
+ // Fallback to expo-crypto if Node crypto fails
61
+ const Crypto = await initExpoCrypto();
62
+ return Crypto.digestStringAsync(Crypto.CryptoDigestAlgorithm.SHA256, message);
63
+ }
64
+ }
65
+ export class SignatureService {
66
+ /**
67
+ * Generate a random challenge string (for offline use)
68
+ * Uses expo-crypto in React Native, crypto.randomBytes in Node.js
69
+ */
70
+ static async generateChallenge() {
71
+ if (isReactNative() || !isNodeJS()) {
72
+ // Use expo-crypto for React Native (expo-random is deprecated)
73
+ const Crypto = await initExpoCrypto();
74
+ const randomBytes = await Crypto.getRandomBytesAsync(32);
75
+ return Array.from(randomBytes).map(b => b.toString(16).padStart(2, '0')).join('');
76
+ }
77
+
78
+ // Node.js fallback
79
+ try {
80
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
81
+ const getCrypto = new Function('return require("crypto")');
82
+ const crypto = getCrypto();
83
+ return crypto.randomBytes(32).toString('hex');
84
+ } catch (error) {
85
+ // Fallback to expo-crypto if Node crypto fails
86
+ const Crypto = await initExpoCrypto();
87
+ const randomBytes = await Crypto.getRandomBytesAsync(32);
88
+ return Array.from(randomBytes).map(b => b.toString(16).padStart(2, '0')).join('');
89
+ }
90
+ }
91
+
92
+ /**
93
+ * Hash a message using SHA-256
94
+ */
95
+ static async hashMessage(message) {
96
+ return sha256(message);
97
+ }
98
+
99
+ /**
100
+ * Sign a message using the stored private key
101
+ * Returns the signature in DER format (hex encoded)
102
+ */
103
+ static async sign(message) {
104
+ const keyPair = await KeyManager.getKeyPairObject();
105
+ if (!keyPair) {
106
+ throw new Error('No identity found. Please create or import an identity first.');
107
+ }
108
+ const messageHash = await sha256(message);
109
+ const signature = keyPair.sign(messageHash);
110
+ return signature.toDER('hex');
111
+ }
112
+
113
+ /**
114
+ * Sign a message with an explicit private key (without storing)
115
+ * Useful for one-time operations or testing
116
+ */
117
+ static async signWithKey(message, privateKey) {
118
+ const keyPair = ec.keyFromPrivate(privateKey);
119
+ const messageHash = await sha256(message);
120
+ const signature = keyPair.sign(messageHash);
121
+ return signature.toDER('hex');
122
+ }
123
+
124
+ /**
125
+ * Verify a signature against a message and public key
126
+ */
127
+ static async verify(message, signature, publicKey) {
128
+ try {
129
+ const key = ec.keyFromPublic(publicKey, 'hex');
130
+ const messageHash = await sha256(message);
131
+ return key.verify(messageHash, signature);
132
+ } catch {
133
+ return false;
134
+ }
135
+ }
136
+
137
+ /**
138
+ * Synchronous verification (for Node.js backend)
139
+ * Uses crypto module directly for hashing
140
+ * Note: This method should only be used in Node.js environments
141
+ */
142
+ static verifySync(message, signature, publicKey) {
143
+ try {
144
+ if (!isNodeJS()) {
145
+ // In React Native, use async verify instead
146
+ throw new Error('verifySync should only be used in Node.js. Use verify() in React Native.');
147
+ }
148
+ // Use Function constructor to prevent Metro bundler from statically analyzing this require
149
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
150
+ const getCrypto = new Function('return require("crypto")');
151
+ const crypto = getCrypto();
152
+ const key = ec.keyFromPublic(publicKey, 'hex');
153
+ const messageHash = crypto.createHash('sha256').update(message).digest('hex');
154
+ return key.verify(messageHash, signature);
155
+ } catch {
156
+ return false;
157
+ }
158
+ }
159
+
160
+ /**
161
+ * Create a signed message object with metadata
162
+ */
163
+ static async createSignedMessage(message) {
164
+ const publicKey = await KeyManager.getPublicKey();
165
+ if (!publicKey) {
166
+ throw new Error('No identity found. Please create or import an identity first.');
167
+ }
168
+ const timestamp = Date.now();
169
+ const messageWithTimestamp = `${message}:${timestamp}`;
170
+ const signature = await SignatureService.sign(messageWithTimestamp);
171
+ return {
172
+ message,
173
+ signature,
174
+ publicKey,
175
+ timestamp
176
+ };
177
+ }
178
+
179
+ /**
180
+ * Verify a signed message object
181
+ * Checks both signature validity and timestamp freshness
182
+ */
183
+ static async verifySignedMessage(signedMessage, maxAgeMs = 5 * 60 * 1000 // 5 minutes default
184
+ ) {
185
+ const {
186
+ message,
187
+ signature,
188
+ publicKey,
189
+ timestamp
190
+ } = signedMessage;
191
+
192
+ // Check timestamp freshness
193
+ const now = Date.now();
194
+ if (now - timestamp > maxAgeMs) {
195
+ return false;
196
+ }
197
+
198
+ // Verify signature
199
+ const messageWithTimestamp = `${message}:${timestamp}`;
200
+ return SignatureService.verify(messageWithTimestamp, signature, publicKey);
201
+ }
202
+
203
+ /**
204
+ * Create a signed authentication challenge response
205
+ * Used for challenge-response authentication
206
+ */
207
+ static async signChallenge(challenge) {
208
+ const publicKey = await KeyManager.getPublicKey();
209
+ if (!publicKey) {
210
+ throw new Error('No identity found. Please create or import an identity first.');
211
+ }
212
+ const timestamp = Date.now();
213
+ const message = `auth:${publicKey}:${challenge}:${timestamp}`;
214
+ const signature = await SignatureService.sign(message);
215
+ return {
216
+ challenge: signature,
217
+ publicKey,
218
+ timestamp
219
+ };
220
+ }
221
+
222
+ /**
223
+ * Verify a challenge response
224
+ */
225
+ static async verifyChallengeResponse(originalChallenge, response, maxAgeMs = 5 * 60 * 1000) {
226
+ const {
227
+ challenge: signature,
228
+ publicKey,
229
+ timestamp
230
+ } = response;
231
+
232
+ // Check timestamp freshness
233
+ const now = Date.now();
234
+ if (now - timestamp > maxAgeMs) {
235
+ return false;
236
+ }
237
+ const message = `auth:${publicKey}:${originalChallenge}:${timestamp}`;
238
+ return SignatureService.verify(message, signature, publicKey);
239
+ }
240
+
241
+ /**
242
+ * Create a registration signature
243
+ * Used when registering a new identity with the server
244
+ * Format matches server expectation: oxy:register:{publicKey}:{timestamp}
245
+ */
246
+ static async createRegistrationSignature() {
247
+ const publicKey = await KeyManager.getPublicKey();
248
+ if (!publicKey) {
249
+ throw new Error('No identity found. Please create or import an identity first.');
250
+ }
251
+ const timestamp = Date.now();
252
+ const message = `oxy:register:${publicKey}:${timestamp}`;
253
+ const signature = await SignatureService.sign(message);
254
+ return {
255
+ signature,
256
+ publicKey,
257
+ timestamp
258
+ };
259
+ }
260
+
261
+ /**
262
+ * Sign arbitrary data for API requests
263
+ * Creates a canonical string representation and signs it
264
+ */
265
+ static async signRequestData(data) {
266
+ const publicKey = await KeyManager.getPublicKey();
267
+ if (!publicKey) {
268
+ throw new Error('No identity found. Please create or import an identity first.');
269
+ }
270
+ const timestamp = Date.now();
271
+
272
+ // Create canonical string representation
273
+ const sortedKeys = Object.keys(data).sort();
274
+ const canonicalParts = sortedKeys.map(key => `${key}:${JSON.stringify(data[key])}`);
275
+ const canonicalString = canonicalParts.join('|');
276
+ const message = `request:${publicKey}:${timestamp}:${canonicalString}`;
277
+ const signature = await SignatureService.sign(message);
278
+ return {
279
+ signature,
280
+ publicKey,
281
+ timestamp
282
+ };
283
+ }
284
+ }
285
+ export default SignatureService;
286
+ //# sourceMappingURL=signatureService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ec","EC","KeyManager","ExpoCrypto","isReactNative","navigator","product","isNodeJS","process","versions","node","initExpoCrypto","sha256","message","Crypto","digestStringAsync","CryptoDigestAlgorithm","SHA256","getCrypto","Function","crypto","createHash","update","digest","error","SignatureService","generateChallenge","randomBytes","getRandomBytesAsync","Array","from","map","b","toString","padStart","join","hashMessage","sign","keyPair","getKeyPairObject","Error","messageHash","signature","toDER","signWithKey","privateKey","keyFromPrivate","verify","publicKey","key","keyFromPublic","verifySync","createSignedMessage","getPublicKey","timestamp","Date","now","messageWithTimestamp","verifySignedMessage","signedMessage","maxAgeMs","signChallenge","challenge","verifyChallengeResponse","originalChallenge","response","createRegistrationSignature","signRequestData","data","sortedKeys","Object","keys","sort","canonicalParts","JSON","stringify","canonicalString"],"sourceRoot":"../../../src","sources":["crypto/signatureService.ts"],"mappings":"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","ignoreList":[]}
@@ -237,7 +237,7 @@
237
237
  "enterCode": "Enter the 6‑digit code from your authenticator app.",
238
238
  "newPassword": "Set New Password",
239
239
  "resetSuccess": "Your password has been reset! You can now sign in.",
240
- "noEmail": "We no longer send recovery emails. Please use your backup file to restore your identity. Contact support if you need assistance.",
240
+ "noEmail": "We no longer send recovery emails. Please use your recovery phrase to restore your identity. Contact support if you need assistance.",
241
241
  "password": {
242
242
  "minLength": "Password must be at least 8 characters long",
243
243
  "mismatch": "Passwords do not match",
@@ -6,21 +6,21 @@
6
6
  * This exports everything but uses environment detection to avoid crashes.
7
7
  * - Frontend: Full UI + Core functionality
8
8
  * - Backend: Core functionality only (UI components are no-ops)
9
- *
10
- * NOTE: Identity management (KeyManager, SignatureService) belongs ONLY in the Accounts app.
11
- * Services SDK handles tokens/sessions, NOT identity.
12
9
  */
13
10
 
14
11
  // IMPORTANT: Import crypto module first to ensure polyfills are loaded
15
12
  // before any other code that might use Buffer or other polyfilled APIs
16
13
  import './crypto/polyfill';
17
14
 
15
+ // Crypto/Identity exports (must be before core to ensure polyfills are available)
16
+ export { KeyManager, SignatureService, RecoveryPhraseService } from './crypto';
17
+
18
18
  // Core exports
19
19
  export { OxyServices, OxyAuthenticationError, OxyAuthenticationTimeoutError } from './core';
20
20
  export { OXY_CLOUD_URL, oxyClient } from './core';
21
21
 
22
- // Type exports from crypto (types only - no identity implementation)
23
-
22
+ // Cross-domain authentication (Web SSO via FedCM/popup/redirect)
23
+ export { CrossDomainAuth, createCrossDomainAuth } from './core';
24
24
  // React context
25
25
  export { useOxy } from './ui/context/OxyContext';
26
26
 
@@ -67,12 +67,9 @@ export { OxyLogo, FollowButton } from './ui';
67
67
 
68
68
  // New consolidated utilities
69
69
  export * from './utils/apiUtils';
70
- export { ErrorCodes, createApiError, handleHttpError, validateRequiredFields } from './utils/errorUtils';
70
+ export { ErrorCodes, createApiError, handleHttpError, validateRequiredFields, retryWithBackoff } from './utils/errorUtils';
71
71
  export * from './utils/validationUtils';
72
72
  export { logger, LogLevel, LogContext, logAuth, logApi, logSession, logUser, logDevice, logPayment, logPerformance } from './utils/loggerUtils';
73
73
  export * from './utils/asyncUtils';
74
74
  export * from './utils/hookUtils';
75
-
76
- // Avatar and account utilities
77
- export { refreshAvatarInStore, refreshAccountInStore, updateAvatarVisibility, updateProfileWithAvatar } from './ui/utils/avatarUtils';
78
75
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["OxyServices","OxyAuthenticationError","OxyAuthenticationTimeoutError","OXY_CLOUD_URL","oxyClient","useOxy","default","OxyProvider","DeviceManager","SUPPORTED_LANGUAGES","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","SECURITY_EVENT_SEVERITY_MAP","useAuthStore","useAssetStore","useAssets","useAssetsStore","useAsset","useUploadProgress","useAssetLoading","useAssetErrors","useAssetsByApp","useAssetsByEntity","useAssetUsageCount","useIsAssetLinked","useSessionSocket","setOxyAssetInstance","useFileDownloadUrl","setOxyFileUrlInstance","useUserProfile","useUserProfiles","useCurrentUser","useUserById","useUserByUsername","useUsersBySessions","usePrivacySettings","useSessions","useSession","useDeviceSessions","useUserDevices","useSecurityInfo","useSecurityActivity","useRecentSecurityActivity","useUpdateProfile","useUploadAvatar","useUpdateAccountSettings","useUpdatePrivacySettings","useUploadFile","useSwitchSession","useLogoutSession","useLogoutAll","useUpdateDeviceName","useRemoveDevice","OxySignInButton","OxyLogo","FollowButton","ErrorCodes","createApiError","handleHttpError","validateRequiredFields","logger","LogLevel","LogContext","logAuth","logApi","logSession","logUser","logDevice","logPayment","logPerformance","refreshAvatarInStore","refreshAccountInStore","updateAvatarVisibility","updateProfileWithAvatar"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO,mBAAmB;;AAE1B;AACA,SAASA,WAAW,EAAEC,sBAAsB,EAAEC,6BAA6B,QAAQ,QAAQ;AAC3F,SAASC,aAAa,EAAEC,SAAS,QAAQ,QAAQ;;AAEjD;;AAGA;AACA,SAASC,MAAM,QAAQ,yBAAyB;;AAEhD;AACA,SAASC,OAAO,IAAIC,WAAW,QAAQ,6BAA6B;;AAEpE;AACA,SAASC,aAAa,QAAQ,uBAAuB;AAGrD;AACA,SACEC,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,EACfC,qBAAqB,EACrBC,qBAAqB,QAChB,uBAAuB;;AAG9B;;AA6DA;AACA,SAASC,2BAA2B,QAAQ,qBAAqB;AAQjE;AACA,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SACEC,aAAa,EACbC,SAAS,IAAIC,cAAc,EAC3BC,QAAQ,EACRC,iBAAiB,EACjBC,eAAe,EACfC,cAAc,EACdC,cAAc,EACdC,iBAAiB,EACjBC,kBAAkB,EAClBC,gBAAgB,QACX,wBAAwB;;AAE/B;AACA,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASV,SAAS,EAAEW,mBAAmB,QAAQ,sBAAsB;AACrE,SAASC,kBAAkB,EAAEC,qBAAqB,QAAQ,+BAA+B;;AAEzF;AACA;AACE;AACAC,cAAc,EACdC,eAAe,EACfC,cAAc,EACdC,WAAW,EACXC,iBAAiB,EACjBC,kBAAkB,EAClBC,kBAAkB;AAClB;AACAC,WAAW,EACXC,UAAU,EACVC,iBAAiB,EACjBC,cAAc,EACdC,eAAe;AACf;AACAC,mBAAmB,EACnBC,yBAAyB,QACpB,oBAAoB;;AAE3B;AACA;AACE;AACAC,gBAAgB,EAChBC,eAAe,EACfC,wBAAwB,EACxBC,wBAAwB,EACxBC,aAAa;AACb;AACAC,gBAAgB,EAChBC,gBAAgB,EAChBC,YAAY,EACZC,mBAAmB,EACnBC,eAAe,QACV,sBAAsB;;AAE7B;AACA,SAASC,eAAe,QAAQ,iCAAiC;AACjE,SAASC,OAAO,EAAEC,YAAY,QAAQ,MAAM;;AAE5C;AACA,cAAc,kBAAkB;AAChC,SACEC,UAAU,EACVC,cAAc,EACdC,eAAe,EACfC,sBAAsB,QACjB,oBAAoB;AAC3B,cAAc,yBAAyB;AACvC,SACEC,MAAM,EACNC,QAAQ,EACRC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,SAAS,EACTC,UAAU,EACVC,cAAc,QACT,qBAAqB;AAC5B,cAAc,oBAAoB;AAClC,cAAc,mBAAmB;;AAEjC;AACA,SACEC,oBAAoB,EACpBC,qBAAqB,EACrBC,sBAAsB,EACtBC,uBAAuB,QAClB,wBAAwB","ignoreList":[]}
1
+ {"version":3,"names":["KeyManager","SignatureService","RecoveryPhraseService","OxyServices","OxyAuthenticationError","OxyAuthenticationTimeoutError","OXY_CLOUD_URL","oxyClient","CrossDomainAuth","createCrossDomainAuth","useOxy","default","OxyProvider","DeviceManager","SUPPORTED_LANGUAGES","getLanguageMetadata","getLanguageName","getNativeLanguageName","normalizeLanguageCode","SECURITY_EVENT_SEVERITY_MAP","useAuthStore","useAssetStore","useAssets","useAssetsStore","useAsset","useUploadProgress","useAssetLoading","useAssetErrors","useAssetsByApp","useAssetsByEntity","useAssetUsageCount","useIsAssetLinked","useSessionSocket","setOxyAssetInstance","useFileDownloadUrl","setOxyFileUrlInstance","useUserProfile","useUserProfiles","useCurrentUser","useUserById","useUserByUsername","useUsersBySessions","usePrivacySettings","useSessions","useSession","useDeviceSessions","useUserDevices","useSecurityInfo","useSecurityActivity","useRecentSecurityActivity","useUpdateProfile","useUploadAvatar","useUpdateAccountSettings","useUpdatePrivacySettings","useUploadFile","useSwitchSession","useLogoutSession","useLogoutAll","useUpdateDeviceName","useRemoveDevice","OxySignInButton","OxyLogo","FollowButton","ErrorCodes","createApiError","handleHttpError","validateRequiredFields","retryWithBackoff","logger","LogLevel","LogContext","logAuth","logApi","logSession","logUser","logDevice","logPayment","logPerformance"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,OAAO,mBAAmB;;AAE1B;AACA,SACEA,UAAU,EACVC,gBAAgB,EAChBC,qBAAqB,QAChB,UAAU;;AAEjB;AACA,SAASC,WAAW,EAAEC,sBAAsB,EAAEC,6BAA6B,QAAQ,QAAQ;AAC3F,SAASC,aAAa,EAAEC,SAAS,QAAQ,QAAQ;;AAEjD;AACA,SAASC,eAAe,EAAEC,qBAAqB,QAAQ,QAAQ;AAS/D;AACA,SAASC,MAAM,QAAQ,yBAAyB;;AAEhD;AACA,SAASC,OAAO,IAAIC,WAAW,QAAQ,6BAA6B;;AAEpE;AACA,SAASC,aAAa,QAAQ,uBAAuB;AAGrD;AACA,SACEC,mBAAmB,EACnBC,mBAAmB,EACnBC,eAAe,EACfC,qBAAqB,EACrBC,qBAAqB,QAChB,uBAAuB;;AAG9B;;AA6DA;AACA,SAASC,2BAA2B,QAAQ,qBAAqB;AAQjE;AACA,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SACEC,aAAa,EACbC,SAAS,IAAIC,cAAc,EAC3BC,QAAQ,EACRC,iBAAiB,EACjBC,eAAe,EACfC,cAAc,EACdC,cAAc,EACdC,iBAAiB,EACjBC,kBAAkB,EAClBC,gBAAgB,QACX,wBAAwB;;AAE/B;AACA,SAASC,gBAAgB,QAAQ,6BAA6B;AAC9D,SAASV,SAAS,EAAEW,mBAAmB,QAAQ,sBAAsB;AACrE,SAASC,kBAAkB,EAAEC,qBAAqB,QAAQ,+BAA+B;;AAEzF;AACA;AACE;AACAC,cAAc,EACdC,eAAe,EACfC,cAAc,EACdC,WAAW,EACXC,iBAAiB,EACjBC,kBAAkB,EAClBC,kBAAkB;AAClB;AACAC,WAAW,EACXC,UAAU,EACVC,iBAAiB,EACjBC,cAAc,EACdC,eAAe;AACf;AACAC,mBAAmB,EACnBC,yBAAyB,QACpB,oBAAoB;;AAE3B;AACA;AACE;AACAC,gBAAgB,EAChBC,eAAe,EACfC,wBAAwB,EACxBC,wBAAwB,EACxBC,aAAa;AACb;AACAC,gBAAgB,EAChBC,gBAAgB,EAChBC,YAAY,EACZC,mBAAmB,EACnBC,eAAe,QACV,sBAAsB;;AAE7B;AACA,SAASC,eAAe,QAAQ,iCAAiC;AACjE,SAASC,OAAO,EAAEC,YAAY,QAAQ,MAAM;;AAE5C;AACA,cAAc,kBAAkB;AAChC,SACEC,UAAU,EACVC,cAAc,EACdC,eAAe,EACfC,sBAAsB,EACtBC,gBAAgB,QACX,oBAAoB;AAC3B,cAAc,yBAAyB;AACvC,SACEC,MAAM,EACNC,QAAQ,EACRC,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,UAAU,EACVC,OAAO,EACPC,SAAS,EACTC,UAAU,EACVC,cAAc,QACT,qBAAqB;AAC5B,cAAc,oBAAoB;AAClC,cAAc,mBAAmB","ignoreList":[]}
@@ -1,20 +1,5 @@
1
1
  "use strict";
2
2
 
3
- /**
4
- * User Model
5
- *
6
- * IMPORTANT:
7
- * - id: MongoDB ObjectId (24 hex characters) - PRIMARY IDENTIFIER for all internal operations
8
- * - publicKey: Cryptographic public key (130 hex characters) - LOOKUP KEY for authentication and identity operations
9
- *
10
- * Never use publicKey as an ID. Always use id (ObjectId) for:
11
- * - Database queries
12
- * - Session userId
13
- * - Token userId
14
- * - Socket room names
15
- * - API route parameters (unless explicitly doing publicKey lookup)
16
- */
17
-
18
3
  /**
19
4
  * File management interfaces
20
5
  */
@@ -1 +1 @@
1
- {"version":3,"names":["SECURITY_EVENT_SEVERITY_MAP"],"sourceRoot":"../../../src","sources":["models/interfaces.ts"],"mappings":";;AAuBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAmMA;AACA;AACA;;AAmDA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAuGA;AACA;AACA;;AAqBA;AACA;AACA;;AAcA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA,OAAO,MAAMA,2BAA6E,GAAG;EAC3F,SAAS,EAAE,KAAK;EAChB,UAAU,EAAE,KAAK;EACjB,iBAAiB,EAAE,KAAK;EACxB,eAAe,EAAE,QAAQ;EACzB,cAAc,EAAE,QAAQ;EACxB,gBAAgB,EAAE,QAAQ;EAC1B,2BAA2B,EAAE,QAAQ;EACrC,kBAAkB,EAAE,MAAM;EAC1B,sBAAsB,EAAE,MAAM;EAC9B,gBAAgB,EAAE,MAAM;EACxB,qBAAqB,EAAE;AACzB,CAAC;;AAED;AACA;AACA;;AAeA;AACA;AACA;;AAkBA","ignoreList":[]}
1
+ {"version":3,"names":["SECURITY_EVENT_SEVERITY_MAP"],"sourceRoot":"../../../src","sources":["models/interfaces.ts"],"mappings":";;AA2NA;AACA;AACA;;AAmDA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAuGA;AACA;AACA;;AAqBA;AACA;AACA;;AAcA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA,OAAO,MAAMA,2BAA6E,GAAG;EAC3F,SAAS,EAAE,KAAK;EAChB,UAAU,EAAE,KAAK;EACjB,iBAAiB,EAAE,KAAK;EACxB,eAAe,EAAE,QAAQ;EACzB,cAAc,EAAE,QAAQ;EACxB,gBAAgB,EAAE,QAAQ;EAC1B,2BAA2B,EAAE,QAAQ;EACrC,kBAAkB,EAAE,MAAM;EAC1B,sBAAsB,EAAE,MAAM;EAC9B,gBAAgB,EAAE,MAAM;EACxB,qBAAqB,EAAE;AACzB,CAAC;;AAED;AACA;AACA;;AAeA;AACA;AACA;;AAkBA","ignoreList":[]}