@oxyhq/services 6.9.44 → 6.9.46

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 (342) hide show
  1. package/lib/commonjs/ui/components/OxyPayButton.js +4 -2
  2. package/lib/commonjs/ui/components/OxyPayButton.js.map +1 -1
  3. package/lib/commonjs/ui/components/OxyProvider.js +6 -5
  4. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  5. package/lib/commonjs/ui/components/OxySignInButton.js +83 -82
  6. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
  7. package/lib/commonjs/ui/components/SignInModal.js +271 -102
  8. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  9. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js +76 -121
  10. package/lib/commonjs/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  11. package/lib/commonjs/ui/components/fileManagement/FileViewer.js +24 -15
  12. package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
  13. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +32 -18
  14. package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
  15. package/lib/commonjs/ui/components/icon/OxyIcon.js +5 -4
  16. package/lib/commonjs/ui/components/icon/OxyIcon.js.map +1 -1
  17. package/lib/commonjs/ui/components/index.js +0 -35
  18. package/lib/commonjs/ui/components/index.js.map +1 -1
  19. package/lib/commonjs/ui/components/internal/PinInput.js +3 -2
  20. package/lib/commonjs/ui/components/internal/PinInput.js.map +1 -1
  21. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +83 -219
  22. package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
  23. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +26 -13
  24. package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  25. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js +50 -28
  26. package/lib/commonjs/ui/components/payment/PaymentMethodStep.js.map +1 -1
  27. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +83 -48
  28. package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -1
  29. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js +11 -10
  30. package/lib/commonjs/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  31. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +38 -23
  32. package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -1
  33. package/lib/commonjs/ui/constants/theme.js +2 -2
  34. package/lib/commonjs/ui/constants/theme.js.map +1 -1
  35. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +4 -3
  36. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  37. package/lib/commonjs/ui/screens/AccountCenterScreen.js +13 -13
  38. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  39. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +117 -142
  40. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +112 -78
  42. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  43. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +213 -144
  44. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  45. package/lib/commonjs/ui/screens/AccountVerificationScreen.js +26 -14
  46. package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
  47. package/lib/commonjs/ui/screens/FeedbackScreen.js +57 -51
  48. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/FileManagementScreen.js +108 -86
  50. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/HistoryViewScreen.js +109 -130
  52. package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +15 -8
  54. package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +60 -54
  56. package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +12 -9
  58. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  59. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +66 -93
  60. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  61. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +159 -190
  62. package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
  63. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +20 -22
  64. package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
  65. package/lib/commonjs/ui/screens/SearchSettingsScreen.js +16 -17
  66. package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
  67. package/lib/commonjs/ui/screens/SessionManagementScreen.js +127 -70
  68. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -1
  69. package/lib/commonjs/ui/screens/UserLinksScreen.js +13 -29
  70. package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
  71. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +110 -52
  72. package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  73. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +3 -5
  74. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  75. package/lib/commonjs/ui/utils/fileManagement.js +0 -21
  76. package/lib/commonjs/ui/utils/fileManagement.js.map +1 -1
  77. package/lib/module/ui/components/OxyPayButton.js +4 -2
  78. package/lib/module/ui/components/OxyPayButton.js.map +1 -1
  79. package/lib/module/ui/components/OxyProvider.js +6 -5
  80. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  81. package/lib/module/ui/components/OxySignInButton.js +84 -83
  82. package/lib/module/ui/components/OxySignInButton.js.map +1 -1
  83. package/lib/module/ui/components/SignInModal.js +271 -100
  84. package/lib/module/ui/components/SignInModal.js.map +1 -1
  85. package/lib/module/ui/components/fileManagement/FileDetailsModal.js +76 -122
  86. package/lib/module/ui/components/fileManagement/FileDetailsModal.js.map +1 -1
  87. package/lib/module/ui/components/fileManagement/FileViewer.js +24 -15
  88. package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
  89. package/lib/module/ui/components/fileManagement/UploadPreview.js +32 -19
  90. package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
  91. package/lib/module/ui/components/icon/OxyIcon.js +5 -4
  92. package/lib/module/ui/components/icon/OxyIcon.js.map +1 -1
  93. package/lib/module/ui/components/index.js +0 -5
  94. package/lib/module/ui/components/index.js.map +1 -1
  95. package/lib/module/ui/components/internal/PinInput.js +3 -2
  96. package/lib/module/ui/components/internal/PinInput.js.map +1 -1
  97. package/lib/module/ui/components/modals/DeleteAccountModal.js +83 -220
  98. package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
  99. package/lib/module/ui/components/payment/PaymentDetailsStep.js +26 -13
  100. package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -1
  101. package/lib/module/ui/components/payment/PaymentMethodStep.js +49 -26
  102. package/lib/module/ui/components/payment/PaymentMethodStep.js.map +1 -1
  103. package/lib/module/ui/components/payment/PaymentReviewStep.js +84 -48
  104. package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -1
  105. package/lib/module/ui/components/payment/PaymentSuccessStep.js +11 -9
  106. package/lib/module/ui/components/payment/PaymentSuccessStep.js.map +1 -1
  107. package/lib/module/ui/components/payment/PaymentSummaryStep.js +38 -22
  108. package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -1
  109. package/lib/module/ui/constants/theme.js +2 -2
  110. package/lib/module/ui/constants/theme.js.map +1 -1
  111. package/lib/module/ui/context/hooks/useAuthOperations.js +4 -3
  112. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  113. package/lib/module/ui/screens/AccountCenterScreen.js +12 -13
  114. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  115. package/lib/module/ui/screens/AccountOverviewScreen.js +117 -142
  116. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  117. package/lib/module/ui/screens/AccountSettingsScreen.js +112 -78
  118. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  119. package/lib/module/ui/screens/AccountSwitcherScreen.js +213 -145
  120. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  121. package/lib/module/ui/screens/AccountVerificationScreen.js +28 -16
  122. package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
  123. package/lib/module/ui/screens/FeedbackScreen.js +48 -42
  124. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  125. package/lib/module/ui/screens/FileManagementScreen.js +110 -88
  126. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
  127. package/lib/module/ui/screens/HistoryViewScreen.js +110 -131
  128. package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
  129. package/lib/module/ui/screens/LanguageSelectorScreen.js +16 -9
  130. package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
  131. package/lib/module/ui/screens/LegalDocumentsScreen.js +61 -55
  132. package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
  133. package/lib/module/ui/screens/PaymentGatewayScreen.js +12 -9
  134. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  135. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +66 -94
  136. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
  137. package/lib/module/ui/screens/PrivacySettingsScreen.js +161 -192
  138. package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
  139. package/lib/module/ui/screens/SavesCollectionsScreen.js +21 -23
  140. package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
  141. package/lib/module/ui/screens/SearchSettingsScreen.js +17 -18
  142. package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
  143. package/lib/module/ui/screens/SessionManagementScreen.js +128 -72
  144. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
  145. package/lib/module/ui/screens/UserLinksScreen.js +15 -31
  146. package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
  147. package/lib/module/ui/screens/WelcomeNewUserScreen.js +110 -52
  148. package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
  149. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +4 -6
  150. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -1
  151. package/lib/module/ui/utils/fileManagement.js +0 -20
  152. package/lib/module/ui/utils/fileManagement.js.map +1 -1
  153. package/lib/typescript/commonjs/ui/components/OxyPayButton.d.ts.map +1 -1
  154. package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
  155. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts +0 -1
  156. package/lib/typescript/commonjs/ui/components/OxySignInButton.d.ts.map +1 -1
  157. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
  158. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts +3 -4
  159. package/lib/typescript/commonjs/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  160. package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  161. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts +2 -3
  162. package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  163. package/lib/typescript/commonjs/ui/components/icon/OxyIcon.d.ts.map +1 -1
  164. package/lib/typescript/commonjs/ui/components/index.d.ts +0 -5
  165. package/lib/typescript/commonjs/ui/components/index.d.ts.map +1 -1
  166. package/lib/typescript/commonjs/ui/components/internal/PinInput.d.ts.map +1 -1
  167. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts +2 -2
  168. package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -1
  170. package/lib/typescript/commonjs/ui/components/payment/PaymentMethodStep.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/ui/components/payment/PaymentReviewStep.d.ts.map +1 -1
  172. package/lib/typescript/commonjs/ui/components/payment/PaymentSuccessStep.d.ts.map +1 -1
  173. package/lib/typescript/commonjs/ui/components/payment/PaymentSummaryStep.d.ts.map +1 -1
  174. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  175. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts +1 -1
  176. package/lib/typescript/commonjs/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  178. package/lib/typescript/commonjs/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  180. package/lib/typescript/commonjs/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  181. package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  182. package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/ui/screens/FileManagementScreen.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  185. package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  186. package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  189. package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  190. package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
  193. package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -1
  195. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +0 -4
  196. package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
  197. package/lib/typescript/module/ui/components/OxyPayButton.d.ts.map +1 -1
  198. package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
  199. package/lib/typescript/module/ui/components/OxySignInButton.d.ts +0 -1
  200. package/lib/typescript/module/ui/components/OxySignInButton.d.ts.map +1 -1
  201. package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
  202. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts +3 -4
  203. package/lib/typescript/module/ui/components/fileManagement/FileDetailsModal.d.ts.map +1 -1
  204. package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
  205. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts +2 -3
  206. package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
  207. package/lib/typescript/module/ui/components/icon/OxyIcon.d.ts.map +1 -1
  208. package/lib/typescript/module/ui/components/index.d.ts +0 -5
  209. package/lib/typescript/module/ui/components/index.d.ts.map +1 -1
  210. package/lib/typescript/module/ui/components/internal/PinInput.d.ts.map +1 -1
  211. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts +2 -2
  212. package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
  213. package/lib/typescript/module/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -1
  214. package/lib/typescript/module/ui/components/payment/PaymentMethodStep.d.ts.map +1 -1
  215. package/lib/typescript/module/ui/components/payment/PaymentReviewStep.d.ts.map +1 -1
  216. package/lib/typescript/module/ui/components/payment/PaymentSuccessStep.d.ts.map +1 -1
  217. package/lib/typescript/module/ui/components/payment/PaymentSummaryStep.d.ts.map +1 -1
  218. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  219. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts +1 -1
  220. package/lib/typescript/module/ui/navigation/bottomSheetManager.d.ts.map +1 -1
  221. package/lib/typescript/module/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  222. package/lib/typescript/module/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  223. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  224. package/lib/typescript/module/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  225. package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
  226. package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
  227. package/lib/typescript/module/ui/screens/FileManagementScreen.d.ts.map +1 -1
  228. package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
  229. package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
  230. package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
  231. package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  232. package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
  233. package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
  234. package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
  235. package/lib/typescript/module/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  236. package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
  237. package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
  238. package/lib/typescript/module/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -1
  239. package/lib/typescript/module/ui/utils/fileManagement.d.ts +0 -4
  240. package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
  241. package/package.json +3 -3
  242. package/src/ui/components/OxyPayButton.tsx +5 -3
  243. package/src/ui/components/OxyProvider.tsx +6 -5
  244. package/src/ui/components/OxySignInButton.tsx +82 -81
  245. package/src/ui/components/SignInModal.tsx +186 -42
  246. package/src/ui/components/fileManagement/FileDetailsModal.tsx +69 -99
  247. package/src/ui/components/fileManagement/FileViewer.tsx +25 -15
  248. package/src/ui/components/fileManagement/UploadPreview.tsx +58 -46
  249. package/src/ui/components/icon/OxyIcon.tsx +5 -4
  250. package/src/ui/components/index.ts +0 -5
  251. package/src/ui/components/internal/PinInput.tsx +4 -3
  252. package/src/ui/components/modals/DeleteAccountModal.tsx +79 -221
  253. package/src/ui/components/payment/PaymentDetailsStep.tsx +16 -19
  254. package/src/ui/components/payment/PaymentMethodStep.tsx +33 -35
  255. package/src/ui/components/payment/PaymentReviewStep.tsx +63 -67
  256. package/src/ui/components/payment/PaymentSuccessStep.tsx +4 -12
  257. package/src/ui/components/payment/PaymentSummaryStep.tsx +26 -33
  258. package/src/ui/constants/theme.ts +2 -2
  259. package/src/ui/context/hooks/useAuthOperations.ts +4 -3
  260. package/src/ui/screens/AccountCenterScreen.tsx +36 -139
  261. package/src/ui/screens/AccountOverviewScreen.tsx +107 -163
  262. package/src/ui/screens/AccountSettingsScreen.tsx +142 -156
  263. package/src/ui/screens/AccountSwitcherScreen.tsx +226 -199
  264. package/src/ui/screens/AccountVerificationScreen.tsx +34 -25
  265. package/src/ui/screens/FeedbackScreen.tsx +50 -38
  266. package/src/ui/screens/FileManagementScreen.tsx +88 -88
  267. package/src/ui/screens/HistoryViewScreen.tsx +79 -207
  268. package/src/ui/screens/LanguageSelectorScreen.tsx +19 -7
  269. package/src/ui/screens/LegalDocumentsScreen.tsx +46 -63
  270. package/src/ui/screens/PaymentGatewayScreen.tsx +11 -12
  271. package/src/ui/screens/PremiumSubscriptionScreen.tsx +73 -93
  272. package/src/ui/screens/PrivacySettingsScreen.tsx +81 -193
  273. package/src/ui/screens/SavesCollectionsScreen.tsx +23 -23
  274. package/src/ui/screens/SearchSettingsScreen.tsx +11 -19
  275. package/src/ui/screens/SessionManagementScreen.tsx +130 -76
  276. package/src/ui/screens/UserLinksScreen.tsx +15 -32
  277. package/src/ui/screens/WelcomeNewUserScreen.tsx +46 -20
  278. package/src/ui/screens/karma/KarmaFAQScreen.tsx +4 -6
  279. package/src/ui/utils/fileManagement.ts +0 -30
  280. package/lib/commonjs/ui/components/GroupedItem.js +0 -138
  281. package/lib/commonjs/ui/components/GroupedItem.js.map +0 -1
  282. package/lib/commonjs/ui/components/GroupedSection.js +0 -41
  283. package/lib/commonjs/ui/components/GroupedSection.js.map +0 -1
  284. package/lib/commonjs/ui/components/Section.js +0 -39
  285. package/lib/commonjs/ui/components/Section.js.map +0 -1
  286. package/lib/commonjs/ui/components/SectionTitle.js +0 -29
  287. package/lib/commonjs/ui/components/SectionTitle.js.map +0 -1
  288. package/lib/commonjs/ui/components/SettingRow.js +0 -90
  289. package/lib/commonjs/ui/components/SettingRow.js.map +0 -1
  290. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js +0 -206
  291. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js.map +0 -1
  292. package/lib/commonjs/ui/utils/confirmAction.js +0 -28
  293. package/lib/commonjs/ui/utils/confirmAction.js.map +0 -1
  294. package/lib/module/ui/components/GroupedItem.js +0 -135
  295. package/lib/module/ui/components/GroupedItem.js.map +0 -1
  296. package/lib/module/ui/components/GroupedSection.js +0 -37
  297. package/lib/module/ui/components/GroupedSection.js.map +0 -1
  298. package/lib/module/ui/components/Section.js +0 -34
  299. package/lib/module/ui/components/Section.js.map +0 -1
  300. package/lib/module/ui/components/SectionTitle.js +0 -25
  301. package/lib/module/ui/components/SectionTitle.js.map +0 -1
  302. package/lib/module/ui/components/SettingRow.js +0 -85
  303. package/lib/module/ui/components/SettingRow.js.map +0 -1
  304. package/lib/module/ui/components/internal/GroupedPillButtons.js +0 -202
  305. package/lib/module/ui/components/internal/GroupedPillButtons.js.map +0 -1
  306. package/lib/module/ui/utils/confirmAction.js +0 -25
  307. package/lib/module/ui/utils/confirmAction.js.map +0 -1
  308. package/lib/typescript/commonjs/ui/components/GroupedItem.d.ts +0 -24
  309. package/lib/typescript/commonjs/ui/components/GroupedItem.d.ts.map +0 -1
  310. package/lib/typescript/commonjs/ui/components/GroupedSection.d.ts +0 -30
  311. package/lib/typescript/commonjs/ui/components/GroupedSection.d.ts.map +0 -1
  312. package/lib/typescript/commonjs/ui/components/Section.d.ts +0 -12
  313. package/lib/typescript/commonjs/ui/components/Section.d.ts.map +0 -1
  314. package/lib/typescript/commonjs/ui/components/SectionTitle.d.ts +0 -10
  315. package/lib/typescript/commonjs/ui/components/SectionTitle.d.ts.map +0 -1
  316. package/lib/typescript/commonjs/ui/components/SettingRow.d.ts +0 -20
  317. package/lib/typescript/commonjs/ui/components/SettingRow.d.ts.map +0 -1
  318. package/lib/typescript/commonjs/ui/components/internal/GroupedPillButtons.d.ts +0 -24
  319. package/lib/typescript/commonjs/ui/components/internal/GroupedPillButtons.d.ts.map +0 -1
  320. package/lib/typescript/commonjs/ui/utils/confirmAction.d.ts +0 -7
  321. package/lib/typescript/commonjs/ui/utils/confirmAction.d.ts.map +0 -1
  322. package/lib/typescript/module/ui/components/GroupedItem.d.ts +0 -24
  323. package/lib/typescript/module/ui/components/GroupedItem.d.ts.map +0 -1
  324. package/lib/typescript/module/ui/components/GroupedSection.d.ts +0 -30
  325. package/lib/typescript/module/ui/components/GroupedSection.d.ts.map +0 -1
  326. package/lib/typescript/module/ui/components/Section.d.ts +0 -12
  327. package/lib/typescript/module/ui/components/Section.d.ts.map +0 -1
  328. package/lib/typescript/module/ui/components/SectionTitle.d.ts +0 -10
  329. package/lib/typescript/module/ui/components/SectionTitle.d.ts.map +0 -1
  330. package/lib/typescript/module/ui/components/SettingRow.d.ts +0 -20
  331. package/lib/typescript/module/ui/components/SettingRow.d.ts.map +0 -1
  332. package/lib/typescript/module/ui/components/internal/GroupedPillButtons.d.ts +0 -24
  333. package/lib/typescript/module/ui/components/internal/GroupedPillButtons.d.ts.map +0 -1
  334. package/lib/typescript/module/ui/utils/confirmAction.d.ts +0 -7
  335. package/lib/typescript/module/ui/utils/confirmAction.d.ts.map +0 -1
  336. package/src/ui/components/GroupedItem.tsx +0 -161
  337. package/src/ui/components/GroupedSection.tsx +0 -60
  338. package/src/ui/components/Section.tsx +0 -42
  339. package/src/ui/components/SectionTitle.tsx +0 -27
  340. package/src/ui/components/SettingRow.tsx +0 -98
  341. package/src/ui/components/internal/GroupedPillButtons.tsx +0 -250
  342. package/src/ui/utils/confirmAction.ts +0 -23
@@ -1,5 +1,5 @@
1
1
  import type React from 'react';
2
- import { useState, useEffect } from 'react';
2
+ import { useState, useEffect, useCallback, useMemo } from 'react';
3
3
  import {
4
4
  View,
5
5
  Text,
@@ -7,7 +7,6 @@ import {
7
7
  StyleSheet,
8
8
  ScrollView,
9
9
  ActivityIndicator,
10
- Alert,
11
10
  Platform,
12
11
  Animated,
13
12
  Dimensions,
@@ -15,7 +14,8 @@ import {
15
14
  import type { BaseScreenProps } from '../types/navigation';
16
15
  import { fontFamilies } from '../styles/fonts';
17
16
  import { toast } from '../../lib/sonner';
18
- import { confirmAction } from '../utils/confirmAction';
17
+ import * as Prompt from '@oxyhq/bloom/prompt';
18
+ import { usePromptControl } from '@oxyhq/bloom/prompt';
19
19
  import { Ionicons } from '@expo/vector-icons';
20
20
  import Avatar from '../components/Avatar';
21
21
  import { useI18n } from '../hooks/useI18n';
@@ -80,9 +80,15 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
80
80
  const [billingInterval, setBillingInterval] = useState<'month' | 'year'>('month');
81
81
  const [activeTab, setActiveTab] = useState<'plans' | 'features'>('plans');
82
82
  const [currentAppPackage, setCurrentAppPackage] = useState<string>('mention'); // Default to mention for demo
83
+ const [pendingUnsubscribeFeatureId, setPendingUnsubscribeFeatureId] = useState<string | null>(null);
83
84
 
84
85
  const { t } = useI18n();
85
86
  const bloomTheme = useTheme();
87
+
88
+ // Prompt controls
89
+ const cancelSubscriptionPrompt = usePromptControl();
90
+ const unsubscribeFeaturePrompt = usePromptControl();
91
+
86
92
  // Extract commonly used colors for readability
87
93
  const textColor = bloomTheme.colors.text;
88
94
  const backgroundColor = bloomTheme.colors.background;
@@ -315,35 +321,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
315
321
  }, [currentAppPackage, user?.isPremium]);
316
322
 
317
323
  const detectCurrentApp = () => {
318
- // In a real implementation, this would detect the actual app package name
319
- // For now, we'll use a mock detection based on available methods
320
-
321
- // Real app detection methods you could use:
322
- // 1. Check bundle identifier in React Native:
323
- // import DeviceInfo from 'react-native-device-info';
324
- // const bundleId = DeviceInfo.getBundleId();
325
- // Example: com.oxy.mention -> 'mention'
326
-
327
- // 2. Environment variables or build configuration
328
- // const appPackage = __DEV__ ? process.env.APP_PACKAGE : 'mention';
329
-
330
- // 3. Check specific app capabilities or modules
331
- // if (typeof MentionModule !== 'undefined') return 'mention';
332
- // if (typeof OxyWorkspaceModule !== 'undefined') return 'oxy-workspace';
333
-
334
- // 4. Use build-time configuration with Metro or similar
335
- // const appPackage = require('../config/app.json').packageName;
336
-
337
- // For demo purposes, we'll simulate different apps
338
- // You would replace this with actual app detection logic
339
-
340
- // IMPORTANT: This ensures subscription restrictions work properly:
341
- // - Mention+ plan can only be subscribed to when app package == 'mention'
342
- // - Other app-specific plans follow the same pattern
343
- // - Ecosystem plans work across all apps
344
-
345
- const detectedApp = 'mention'; // This would be dynamic in real implementation
346
-
324
+ const detectedApp = 'mention';
347
325
  setCurrentAppPackage(detectedApp);
348
326
  };
349
327
 
@@ -351,13 +329,11 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
351
329
  try {
352
330
  setLoading(true);
353
331
 
354
- // Filter plans available for current app
355
332
  const availablePlans = mockPlans.filter(plan =>
356
333
  plan.applicableApps.includes(currentAppPackage)
357
334
  );
358
335
  setPlans(availablePlans);
359
336
 
360
- // Mock current subscription
361
337
  let currentSubscription: UserSubscription | null = null;
362
338
  if (user?.isPremium) {
363
339
  currentSubscription = {
@@ -371,7 +347,6 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
371
347
  setSubscription(currentSubscription);
372
348
  }
373
349
 
374
- // Filter features available for current app and update based on current subscription
375
350
  const availableFeatures = mockIndividualFeatures.filter(feature =>
376
351
  feature.applicableApps.includes(currentAppPackage)
377
352
  );
@@ -383,7 +358,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
383
358
  return {
384
359
  ...feature,
385
360
  isIncludedInCurrentPlan,
386
- isSubscribed: !!isIncludedInCurrentPlan // Mock some individual subscriptions
361
+ isSubscribed: !!isIncludedInCurrentPlan
387
362
  };
388
363
  });
389
364
 
@@ -405,27 +380,21 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
405
380
 
406
381
  const handleSubscribe = async (planId: string) => {
407
382
  try {
408
- // Check if plan is available for current app
409
383
  const selectedPlan = mockPlans.find(plan => plan.id === planId);
410
384
  if (!selectedPlan?.applicableApps.includes(currentAppPackage)) {
411
385
  toast.error(t('premium.toasts.planUnavailable', { app: currentAppPackage }) || `This plan is not available for the current app (${currentAppPackage})`);
412
386
  return;
413
387
  }
414
388
 
415
- // Special restriction for Mention+ plan - only available in mention app
416
389
  if (planId === 'mention-plus' && currentAppPackage !== 'mention') {
417
390
  toast.error(t('premium.toasts.mentionOnly') || 'Mention+ is only available in the Mention app');
418
391
  return;
419
392
  }
420
393
 
421
394
  setProcessingPayment(true);
422
-
423
- // Mock payment processing
424
395
  await new Promise(resolve => setTimeout(resolve, 2000));
425
-
426
396
  toast.success(t('premium.toasts.activated') || 'Subscription activated successfully!');
427
397
 
428
- // Mock subscription update
429
398
  setSubscription({
430
399
  id: `sub_${Date.now()}`,
431
400
  planId,
@@ -435,7 +404,6 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
435
404
  cancelAtPeriodEnd: false
436
405
  });
437
406
 
438
- // Reload data to update feature states
439
407
  loadSubscriptionData();
440
408
 
441
409
  } catch (error) {
@@ -448,23 +416,21 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
448
416
  }
449
417
  };
450
418
 
451
- const handleCancelSubscription = () => {
452
- confirmAction(
453
- t('premium.confirms.cancelSub') || 'Are you sure you want to cancel your subscription? You will lose access to premium features at the end of your current billing period.',
454
- async () => {
455
- try {
456
- // Mock cancellation
457
- setSubscription(prev => prev ? {
458
- ...prev,
459
- cancelAtPeriodEnd: true
460
- } : null);
461
- toast.success(t('premium.toasts.willCancel') || 'Subscription will be canceled at the end of the billing period');
462
- } catch (error) {
463
- toast.error(t('premium.toasts.cancelFailed') || 'Failed to cancel subscription');
464
- }
465
- }
466
- );
467
- };
419
+ const confirmCancelSubscription = useCallback(() => {
420
+ cancelSubscriptionPrompt.open();
421
+ }, [cancelSubscriptionPrompt]);
422
+
423
+ const handleCancelSubscription = useCallback(async () => {
424
+ try {
425
+ setSubscription(prev => prev ? {
426
+ ...prev,
427
+ cancelAtPeriodEnd: true
428
+ } : null);
429
+ toast.success(t('premium.toasts.willCancel') || 'Subscription will be canceled at the end of the billing period');
430
+ } catch (error) {
431
+ toast.error(t('premium.toasts.cancelFailed') || 'Failed to cancel subscription');
432
+ }
433
+ }, [t]);
468
434
 
469
435
  const handleReactivateSubscription = async () => {
470
436
  try {
@@ -479,7 +445,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
479
445
  };
480
446
 
481
447
  const formatPrice = (price: number, currency: string, interval: string) => {
482
- const yearlyPrice = interval === 'year' ? price : price * 12 * 0.8; // 20% discount for yearly
448
+ const yearlyPrice = interval === 'year' ? price : price * 12 * 0.8;
483
449
  const displayPrice = billingInterval === 'year' ? yearlyPrice : price;
484
450
 
485
451
  return {
@@ -496,16 +462,13 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
496
462
 
497
463
  const handleFeatureSubscribe = async (featureId: string) => {
498
464
  try {
499
- // Check if feature is available for current app
500
465
  const selectedFeature = mockIndividualFeatures.find(feature => feature.id === featureId);
501
466
  if (!selectedFeature?.applicableApps.includes(currentAppPackage)) {
502
467
  toast.error(`This feature is not available for the current app (${currentAppPackage})`);
503
468
  return;
504
469
  }
505
470
 
506
- // Special restrictions for app-specific features
507
471
  if (selectedFeature.appScope === 'specific') {
508
- // For features that are only available in specific apps, enforce strict matching
509
472
  const hasExactMatch = selectedFeature.applicableApps.length === 1 &&
510
473
  selectedFeature.applicableApps[0] === currentAppPackage;
511
474
  if (!hasExactMatch && selectedFeature.applicableApps.length === 1) {
@@ -516,8 +479,6 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
516
479
  }
517
480
 
518
481
  setProcessingPayment(true);
519
-
520
- // Mock feature subscription
521
482
  await new Promise(resolve => setTimeout(resolve, 1500));
522
483
 
523
484
  setIndividualFeatures(prev =>
@@ -541,26 +502,34 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
541
502
  }
542
503
  };
543
504
 
544
- const handleFeatureUnsubscribe = async (featureId: string) => {
545
- const feature = individualFeatures.find(f => f.id === featureId);
546
- confirmAction(
547
- (t('premium.confirms.unsubscribeFeature', { name: feature?.name ?? '' }) ?? `Are you sure you want to unsubscribe from ${feature?.name}?`),
548
- async () => {
549
- try {
550
- setIndividualFeatures(prev =>
551
- prev.map(f =>
552
- f.id === featureId
553
- ? { ...f, isSubscribed: false }
554
- : f
555
- )
556
- );
557
- toast.success((t('premium.toasts.featureUnsubscribed', { name: feature?.name ?? '' }) ?? `Unsubscribed from ${feature?.name}`));
558
- } catch (error) {
559
- toast.error(t('premium.toasts.featureUnsubscribeFailed') || 'Failed to unsubscribe from feature');
560
- }
561
- }
562
- );
563
- };
505
+ const confirmFeatureUnsubscribe = useCallback((featureId: string) => {
506
+ setPendingUnsubscribeFeatureId(featureId);
507
+ unsubscribeFeaturePrompt.open();
508
+ }, [unsubscribeFeaturePrompt]);
509
+
510
+ const handleFeatureUnsubscribe = useCallback(async () => {
511
+ if (!pendingUnsubscribeFeatureId) return;
512
+ const feature = individualFeatures.find(f => f.id === pendingUnsubscribeFeatureId);
513
+ try {
514
+ setIndividualFeatures(prev =>
515
+ prev.map(f =>
516
+ f.id === pendingUnsubscribeFeatureId
517
+ ? { ...f, isSubscribed: false }
518
+ : f
519
+ )
520
+ );
521
+ toast.success((t('premium.toasts.featureUnsubscribed', { name: feature?.name ?? '' }) ?? `Unsubscribed from ${feature?.name}`));
522
+ } catch (error) {
523
+ toast.error(t('premium.toasts.featureUnsubscribeFailed') || 'Failed to unsubscribe from feature');
524
+ } finally {
525
+ setPendingUnsubscribeFeatureId(null);
526
+ }
527
+ }, [pendingUnsubscribeFeatureId, individualFeatures, t]);
528
+
529
+ const pendingUnsubscribeFeature = useMemo(
530
+ () => individualFeatures.find(f => f.id === pendingUnsubscribeFeatureId),
531
+ [individualFeatures, pendingUnsubscribeFeatureId]
532
+ );
564
533
 
565
534
  const renderHeader = () => {
566
535
  const getAppDisplayName = (packageName: string) => {
@@ -649,7 +618,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
649
618
  ) : (
650
619
  <TouchableOpacity
651
620
  style={[styles.actionButton, { backgroundColor: dangerColor }]}
652
- onPress={handleCancelSubscription}
621
+ onPress={confirmCancelSubscription}
653
622
  >
654
623
  <Text style={styles.actionButtonText}>{t('premium.actions.cancelSubBtn') || 'Cancel Subscription'}</Text>
655
624
  </TouchableOpacity>
@@ -965,7 +934,7 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
965
934
  </View>
966
935
  <TouchableOpacity
967
936
  style={[styles.unsubscribeButton, { borderColor: dangerColor }]}
968
- onPress={() => handleFeatureUnsubscribe(feature.id)}
937
+ onPress={() => confirmFeatureUnsubscribe(feature.id)}
969
938
  >
970
939
  <Text style={[styles.unsubscribeText, { color: dangerColor }]}>{t('premium.actions.unsubscribe') || 'Unsubscribe'}</Text>
971
940
  </TouchableOpacity>
@@ -1144,6 +1113,22 @@ const PremiumSubscriptionScreen: React.FC<BaseScreenProps> = ({
1144
1113
 
1145
1114
  <View style={styles.bottomSpacing} />
1146
1115
  </ScrollView>
1116
+ <Prompt.Basic
1117
+ control={cancelSubscriptionPrompt}
1118
+ title={t('premium.confirms.cancelSubTitle') || 'Cancel Subscription'}
1119
+ description={t('premium.confirms.cancelSub') || 'Are you sure you want to cancel your subscription? You will lose access to premium features at the end of your current billing period.'}
1120
+ onConfirm={handleCancelSubscription}
1121
+ confirmButtonCta={t('premium.actions.cancelSubBtn') || 'Cancel Subscription'}
1122
+ confirmButtonColor='negative'
1123
+ />
1124
+ <Prompt.Basic
1125
+ control={unsubscribeFeaturePrompt}
1126
+ title={t('premium.confirms.unsubscribeFeatureTitle') || 'Unsubscribe from Feature'}
1127
+ description={pendingUnsubscribeFeature ? (t('premium.confirms.unsubscribeFeature', { name: pendingUnsubscribeFeature.name }) ?? `Are you sure you want to unsubscribe from ${pendingUnsubscribeFeature.name}?`) : ''}
1128
+ onConfirm={handleFeatureUnsubscribe}
1129
+ confirmButtonCta={t('premium.actions.unsubscribe') || 'Unsubscribe'}
1130
+ confirmButtonColor='negative'
1131
+ />
1147
1132
  </View>
1148
1133
  );
1149
1134
  };
@@ -1396,7 +1381,6 @@ const styles = StyleSheet.create({
1396
1381
  bottomSpacing: {
1397
1382
  height: 40,
1398
1383
  },
1399
- // Tab Navigation Styles
1400
1384
  tabContainer: {
1401
1385
  flexDirection: 'row',
1402
1386
  borderBottomWidth: 1,
@@ -1412,7 +1396,6 @@ const styles = StyleSheet.create({
1412
1396
  fontSize: 16,
1413
1397
  fontWeight: '600',
1414
1398
  },
1415
- // Individual Feature Styles
1416
1399
  featureCard: {
1417
1400
  borderRadius: 12,
1418
1401
  borderWidth: 1,
@@ -1506,7 +1489,6 @@ const styles = StyleSheet.create({
1506
1489
  fontWeight: '600',
1507
1490
  marginBottom: 12,
1508
1491
  },
1509
- // New styles for enhanced feature cards
1510
1492
  featureNameRow: {
1511
1493
  flexDirection: 'row',
1512
1494
  alignItems: 'center',
@@ -1554,7 +1536,6 @@ const styles = StyleSheet.create({
1554
1536
  fontWeight: '500',
1555
1537
  textAlign: 'center',
1556
1538
  },
1557
- // App-specific plan styles
1558
1539
  appSpecificBadge: {
1559
1540
  position: 'absolute',
1560
1541
  top: 16,
@@ -1584,7 +1565,6 @@ const styles = StyleSheet.create({
1584
1565
  fontSize: 16,
1585
1566
  fontWeight: '600',
1586
1567
  },
1587
- // App switcher styles (for development/testing)
1588
1568
  appSwitcher: {
1589
1569
  padding: 16,
1590
1570
  borderBottomWidth: 1,