@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,138 +1,108 @@
1
1
  import type React from 'react';
2
- import { View, Text, TouchableOpacity, Modal, ScrollView } from 'react-native';
2
+ import { View, Text } from 'react-native';
3
3
  import { Ionicons } from '@expo/vector-icons';
4
+ import * as Dialog from '@oxyhq/bloom/dialog';
5
+ import type { DialogControlProps } from '@oxyhq/bloom/dialog';
6
+ import * as Prompt from '@oxyhq/bloom/prompt';
4
7
  import { useTheme } from '@oxyhq/bloom/theme';
5
8
  import type { FileMetadata } from '@oxyhq/core';
6
9
  import { formatFileSize, getFileIcon } from '../../utils/fileManagement';
7
10
  import { fileManagementStyles } from './styles';
8
11
 
9
12
  interface FileDetailsModalProps {
10
- visible: boolean;
13
+ control: DialogControlProps;
11
14
  file: FileMetadata | null;
12
- onClose: () => void;
13
15
  onDownload: (fileId: string, filename: string) => void;
14
16
  onDelete: (fileId: string, filename: string) => void;
15
17
  isOwner: boolean;
16
- /** @deprecated No longer used. Colors are sourced from useTheme() internally. */
17
- themeStyles?: unknown;
18
+ onClose?: () => void;
18
19
  }
19
20
 
20
21
  export const FileDetailsModal: React.FC<FileDetailsModalProps> = ({
21
- visible,
22
+ control,
22
23
  file,
23
- onClose,
24
24
  onDownload,
25
25
  onDelete,
26
26
  isOwner,
27
+ onClose,
27
28
  }) => {
28
29
  const { colors } = useTheme();
29
30
 
30
31
  if (!file) return null;
31
32
 
32
33
  return (
33
- <Modal
34
- visible={visible}
35
- animationType="slide"
36
- presentationStyle="pageSheet"
37
- onRequestClose={onClose}
38
- >
39
- <View style={[fileManagementStyles.modalContainer, { backgroundColor: colors.background }]}>
40
- <View className="border-b border-border" style={fileManagementStyles.modalHeader}>
41
- <TouchableOpacity
42
- style={fileManagementStyles.modalCloseButton}
43
- onPress={onClose}
44
- >
45
- <Ionicons name="close" size={24} color={colors.text} />
46
- </TouchableOpacity>
47
- <Text className="text-foreground" style={fileManagementStyles.modalTitle}>File Details</Text>
48
- <View style={fileManagementStyles.modalPlaceholder} />
49
- </View>
34
+ <Dialog.Outer control={control} onClose={onClose}>
35
+ <Dialog.Handle />
36
+ <Dialog.ScrollableInner label="File Details">
37
+ <View className="bg-secondary border-border" style={fileManagementStyles.fileDetailCard}>
38
+ <View style={fileManagementStyles.fileDetailIcon}>
39
+ <Ionicons
40
+ name={getFileIcon(file.contentType) as React.ComponentProps<typeof Ionicons>['name']}
41
+ size={64}
42
+ color={colors.primary}
43
+ />
44
+ </View>
50
45
 
51
- <ScrollView style={fileManagementStyles.modalContent}>
52
- <View className="bg-secondary border-border" style={fileManagementStyles.fileDetailCard}>
53
- <View style={fileManagementStyles.fileDetailIcon}>
54
- <Ionicons
55
- name={getFileIcon(file.contentType) as React.ComponentProps<typeof Ionicons>['name']}
56
- size={64}
57
- color={colors.primary}
58
- />
59
- </View>
46
+ <Text className="text-foreground" style={fileManagementStyles.fileDetailName}>
47
+ {file.filename}
48
+ </Text>
60
49
 
61
- <Text className="text-foreground" style={fileManagementStyles.fileDetailName}>
62
- {file.filename}
63
- </Text>
50
+ <View style={fileManagementStyles.fileDetailInfo}>
51
+ <View style={fileManagementStyles.detailRow}>
52
+ <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
53
+ Size:
54
+ </Text>
55
+ <Text className="text-foreground" style={fileManagementStyles.detailValue}>
56
+ {formatFileSize(file.length)}
57
+ </Text>
58
+ </View>
64
59
 
65
- <View style={fileManagementStyles.fileDetailInfo}>
66
- <View style={fileManagementStyles.detailRow}>
67
- <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
68
- Size:
69
- </Text>
70
- <Text className="text-foreground" style={fileManagementStyles.detailValue}>
71
- {formatFileSize(file.length)}
72
- </Text>
73
- </View>
60
+ <View style={fileManagementStyles.detailRow}>
61
+ <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
62
+ Type:
63
+ </Text>
64
+ <Text className="text-foreground" style={fileManagementStyles.detailValue}>
65
+ {file.contentType}
66
+ </Text>
67
+ </View>
74
68
 
75
- <View style={fileManagementStyles.detailRow}>
76
- <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
77
- Type:
78
- </Text>
79
- <Text className="text-foreground" style={fileManagementStyles.detailValue}>
80
- {file.contentType}
81
- </Text>
82
- </View>
69
+ <View style={fileManagementStyles.detailRow}>
70
+ <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
71
+ Uploaded:
72
+ </Text>
73
+ <Text className="text-foreground" style={fileManagementStyles.detailValue}>
74
+ {new Date(file.uploadDate).toLocaleString()}
75
+ </Text>
76
+ </View>
83
77
 
78
+ {file.metadata?.description && (
84
79
  <View style={fileManagementStyles.detailRow}>
85
80
  <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
86
- Uploaded:
81
+ Description:
87
82
  </Text>
88
83
  <Text className="text-foreground" style={fileManagementStyles.detailValue}>
89
- {new Date(file.uploadDate).toLocaleString()}
84
+ {file.metadata.description}
90
85
  </Text>
91
86
  </View>
92
-
93
- {file.metadata?.description && (
94
- <View style={fileManagementStyles.detailRow}>
95
- <Text className="text-muted-foreground" style={fileManagementStyles.detailLabel}>
96
- Description:
97
- </Text>
98
- <Text className="text-foreground" style={fileManagementStyles.detailValue}>
99
- {file.metadata.description}
100
- </Text>
101
- </View>
102
- )}
103
- </View>
104
-
105
- <View style={fileManagementStyles.modalActions}>
106
- <TouchableOpacity
107
- className="bg-primary"
108
- style={fileManagementStyles.modalActionButton}
109
- onPress={() => {
110
- onDownload(file.id, file.filename);
111
- onClose();
112
- }}
113
- >
114
- <Ionicons name="download" size={20} color="#FFFFFF" />
115
- <Text style={fileManagementStyles.modalActionText}>Download</Text>
116
- </TouchableOpacity>
117
-
118
- {isOwner && (
119
- <TouchableOpacity
120
- className="bg-destructive"
121
- style={fileManagementStyles.modalActionButton}
122
- onPress={() => {
123
- onClose();
124
- onDelete(file.id, file.filename);
125
- }}
126
- >
127
- <Ionicons name="trash" size={20} color="#FFFFFF" />
128
- <Text style={fileManagementStyles.modalActionText}>Delete</Text>
129
- </TouchableOpacity>
130
- )}
131
- </View>
87
+ )}
132
88
  </View>
133
- </ScrollView>
134
- </View>
135
- </Modal>
89
+
90
+ <Prompt.Actions>
91
+ <Prompt.Action
92
+ onPress={() => onDownload(file.id, file.filename)}
93
+ cta="Download"
94
+ color="primary"
95
+ />
96
+ {isOwner && (
97
+ <Prompt.Action
98
+ onPress={() => onDelete(file.id, file.filename)}
99
+ cta="Delete"
100
+ color="negative"
101
+ />
102
+ )}
103
+ </Prompt.Actions>
104
+ </View>
105
+ </Dialog.ScrollableInner>
106
+ </Dialog.Outer>
136
107
  );
137
108
  };
138
-
@@ -9,7 +9,7 @@ import type { FileMetadata } from '@oxyhq/core';
9
9
  import { formatFileSize } from '../../utils/fileManagement';
10
10
  import { fileManagementStyles } from './styles';
11
11
  import { Colors } from '../../constants/theme';
12
- import { GroupedSection } from '../GroupedSection';
12
+ import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
13
13
 
14
14
  interface FileViewerProps {
15
15
  file: FileMetadata;
@@ -105,53 +105,53 @@ export const FileViewer: React.FC<FileViewerProps> = ({
105
105
  }, [imageDimensions, containerWidth]);
106
106
 
107
107
  const fileDetailItems = useMemo(() => {
108
- const items = [
108
+ const items: Array<{ id: string; iconName: string; iconColor: string; title: string; description: string }> = [
109
109
  {
110
110
  id: 'filename',
111
- icon: 'file-document',
111
+ iconName: 'file-document',
112
112
  iconColor: constantColors.iconSecurity,
113
113
  title: 'File Name',
114
- subtitle: file.filename,
114
+ description: file.filename,
115
115
  },
116
116
  {
117
117
  id: 'size',
118
- icon: 'server',
118
+ iconName: 'server',
119
119
  iconColor: constantColors.iconStorage,
120
120
  title: 'Size',
121
- subtitle: formatFileSize(file.length),
121
+ description: formatFileSize(file.length),
122
122
  },
123
123
  {
124
124
  id: 'type',
125
- icon: 'code-tags',
125
+ iconName: 'code-tags',
126
126
  iconColor: constantColors.iconData,
127
127
  title: 'Type',
128
- subtitle: file.contentType,
128
+ description: file.contentType,
129
129
  },
130
130
  {
131
131
  id: 'uploaded',
132
- icon: 'clock',
132
+ iconName: 'clock',
133
133
  iconColor: constantColors.iconPersonalInfo,
134
134
  title: 'Uploaded',
135
- subtitle: new Date(file.uploadDate).toLocaleString(),
135
+ description: new Date(file.uploadDate).toLocaleString(),
136
136
  },
137
137
  ];
138
138
 
139
139
  if (file.metadata?.description) {
140
140
  items.push({
141
141
  id: 'description',
142
- icon: 'text',
142
+ iconName: 'text',
143
143
  iconColor: constantColors.iconData,
144
144
  title: 'Description',
145
- subtitle: file.metadata.description,
145
+ description: file.metadata.description,
146
146
  });
147
147
  }
148
148
 
149
149
  items.push({
150
150
  id: 'fileId',
151
- icon: 'key',
151
+ iconName: 'key',
152
152
  iconColor: constantColors.iconSecurity,
153
153
  title: 'File ID',
154
- subtitle: file.id,
154
+ description: file.id,
155
155
  });
156
156
 
157
157
  return items;
@@ -366,7 +366,17 @@ export const FileViewer: React.FC<FileViewerProps> = ({
366
366
  {showFileDetailsInViewer && (
367
367
  <>
368
368
  <View style={fileManagementStyles.fileDetailsSectionContent}>
369
- <GroupedSection items={fileDetailItems} />
369
+ <SettingsListGroup>
370
+ {fileDetailItems.map((item) => (
371
+ <SettingsListItem
372
+ key={item.id}
373
+ icon={<MaterialCommunityIcons name={item.iconName} size={20} color={item.iconColor} />}
374
+ title={item.title}
375
+ description={item.description}
376
+ showChevron={false}
377
+ />
378
+ ))}
379
+ </SettingsListGroup>
370
380
  </View>
371
381
 
372
382
  {isOwner && (
@@ -1,7 +1,10 @@
1
1
  import type React from 'react';
2
- import { View, Text, TouchableOpacity, Modal, ScrollView } from 'react-native';
2
+ import { View, Text, TouchableOpacity, ScrollView } from 'react-native';
3
3
  import { Image as ExpoImage } from 'expo-image';
4
4
  import { Ionicons } from '@expo/vector-icons';
5
+ import * as Dialog from '@oxyhq/bloom/dialog';
6
+ import type { DialogControlProps } from '@oxyhq/bloom/dialog';
7
+ import * as Prompt from '@oxyhq/bloom/prompt';
5
8
  import { useTheme } from '@oxyhq/bloom/theme';
6
9
  import { formatFileSize, getFileIcon } from '../../utils/fileManagement';
7
10
  import { fileManagementStyles } from './styles';
@@ -15,14 +18,12 @@ interface PendingFile {
15
18
  }
16
19
 
17
20
  interface UploadPreviewProps {
18
- visible: boolean;
21
+ control?: DialogControlProps;
19
22
  pendingFiles: PendingFile[];
20
23
  onConfirm: () => void;
21
24
  onCancel: () => void;
22
25
  onRemoveFile: (index: number) => void;
23
- inline?: boolean; // New prop to support inline rendering without Modal
24
- /** @deprecated No longer used. Colors are sourced from useTheme() internally. */
25
- themeStyles?: unknown;
26
+ inline?: boolean;
26
27
  }
27
28
 
28
29
  const UploadPreviewContent: React.FC<{
@@ -30,11 +31,13 @@ const UploadPreviewContent: React.FC<{
30
31
  onConfirm: () => void;
31
32
  onCancel: () => void;
32
33
  onRemoveFile: (index: number) => void;
34
+ showActions?: boolean;
33
35
  }> = ({
34
36
  pendingFiles,
35
37
  onConfirm,
36
38
  onCancel,
37
39
  onRemoveFile,
40
+ showActions = true,
38
41
  }) => {
39
42
  const { colors, isDark } = useTheme();
40
43
  const totalSize = pendingFiles.reduce((sum, f) => sum + f.size, 0);
@@ -66,7 +69,7 @@ const UploadPreviewContent: React.FC<{
66
69
  contentFit="cover"
67
70
  />
68
71
  ) : (
69
- <View style={[fileManagementStyles.uploadPreviewIconContainer, { backgroundColor: isDark ? '#333333' : '#F0F0F0' }]}>
72
+ <View style={[fileManagementStyles.uploadPreviewIconContainer, { backgroundColor: colors.backgroundSecondary }]}>
70
73
  <Ionicons
71
74
  name={getFileIcon(pendingFile.type) as React.ComponentProps<typeof Ionicons>['name']}
72
75
  size={32}
@@ -102,44 +105,45 @@ const UploadPreviewContent: React.FC<{
102
105
  {formatFileSize(totalSize)}
103
106
  </Text>
104
107
  </View>
105
- <View style={fileManagementStyles.uploadPreviewActions}>
106
- <TouchableOpacity
107
- className="border-border"
108
- style={[
109
- fileManagementStyles.uploadPreviewCancelButton,
110
- { backgroundColor: 'transparent' }
111
- ]}
112
- onPress={onCancel}
113
- >
114
- <Text className="text-foreground" style={fileManagementStyles.uploadPreviewCancelText}>
115
- Cancel
116
- </Text>
117
- </TouchableOpacity>
118
- <TouchableOpacity
119
- className="bg-primary"
120
- style={fileManagementStyles.uploadPreviewConfirmButton}
121
- onPress={onConfirm}
122
- >
123
- <Ionicons name="cloud-upload" size={20} color="#FFFFFF" />
124
- <Text style={fileManagementStyles.uploadPreviewConfirmText}>Upload</Text>
125
- </TouchableOpacity>
126
- </View>
108
+ {showActions && (
109
+ <View style={fileManagementStyles.uploadPreviewActions}>
110
+ <TouchableOpacity
111
+ className="border-border"
112
+ style={[
113
+ fileManagementStyles.uploadPreviewCancelButton,
114
+ { backgroundColor: 'transparent' }
115
+ ]}
116
+ onPress={onCancel}
117
+ >
118
+ <Text className="text-foreground" style={fileManagementStyles.uploadPreviewCancelText}>
119
+ Cancel
120
+ </Text>
121
+ </TouchableOpacity>
122
+ <TouchableOpacity
123
+ className="bg-primary"
124
+ style={fileManagementStyles.uploadPreviewConfirmButton}
125
+ onPress={onConfirm}
126
+ >
127
+ <Ionicons name="cloud-upload" size={20} color="#FFFFFF" />
128
+ <Text style={fileManagementStyles.uploadPreviewConfirmText}>Upload</Text>
129
+ </TouchableOpacity>
130
+ </View>
131
+ )}
127
132
  </View>
128
133
  </View>
129
134
  );
130
135
  };
131
136
 
132
137
  export const UploadPreview: React.FC<UploadPreviewProps> = ({
133
- visible,
138
+ control,
134
139
  pendingFiles,
135
140
  onConfirm,
136
141
  onCancel,
137
142
  onRemoveFile,
138
143
  inline = false,
139
144
  }) => {
140
- // If inline mode, render content directly without Modal
145
+ // Inline mode: render content directly without Dialog
141
146
  if (inline) {
142
- if (!visible) return null;
143
147
  return (
144
148
  <UploadPreviewContent
145
149
  pendingFiles={pendingFiles}
@@ -150,21 +154,29 @@ export const UploadPreview: React.FC<UploadPreviewProps> = ({
150
154
  );
151
155
  }
152
156
 
153
- // Default: render with Modal (for backward compatibility)
157
+ // Dialog mode: requires control prop
158
+ if (!control) return null;
159
+
154
160
  return (
155
- <Modal
156
- visible={visible}
157
- animationType="slide"
158
- presentationStyle="pageSheet"
159
- onRequestClose={onCancel}
160
- >
161
- <UploadPreviewContent
162
- pendingFiles={pendingFiles}
163
- onConfirm={onConfirm}
164
- onCancel={onCancel}
165
- onRemoveFile={onRemoveFile}
166
- />
167
- </Modal>
161
+ <Dialog.Outer control={control} onClose={onCancel}>
162
+ <Dialog.Handle />
163
+ <Dialog.ScrollableInner label="Review Files">
164
+ <UploadPreviewContent
165
+ pendingFiles={pendingFiles}
166
+ onConfirm={onConfirm}
167
+ onCancel={onCancel}
168
+ onRemoveFile={onRemoveFile}
169
+ showActions={false}
170
+ />
171
+ <Prompt.Actions>
172
+ <Prompt.Action
173
+ onPress={onConfirm}
174
+ cta="Upload"
175
+ color="primary"
176
+ />
177
+ <Prompt.Cancel cta="Cancel" />
178
+ </Prompt.Actions>
179
+ </Dialog.ScrollableInner>
180
+ </Dialog.Outer>
168
181
  );
169
182
  };
170
-
@@ -1,6 +1,6 @@
1
1
  import type React from 'react';
2
- import { Platform, type StyleProp, type TextStyle } from 'react-native';
3
2
  import { Ionicons } from '@expo/vector-icons';
3
+ import { useTheme } from '@oxyhq/bloom/theme';
4
4
 
5
5
  export interface IconProps {
6
6
  name: string;
@@ -12,16 +12,17 @@ export interface IconProps {
12
12
  const OxyIcon: React.FC<IconProps> = ({
13
13
  name,
14
14
  size = 24,
15
- color = '#000',
15
+ color,
16
16
  style
17
17
  }) => {
18
- // Icon name is already properly typed as IoniconsGlyphs
18
+ const theme = useTheme();
19
+ const resolvedColor = color ?? theme.colors.icon;
19
20
 
20
21
  return (
21
22
  <Ionicons
22
23
  name={name as React.ComponentProps<typeof Ionicons>['name']}
23
24
  size={size}
24
- color={color}
25
+ color={resolvedColor}
25
26
  style={style}
26
27
  />
27
28
  );
@@ -1,14 +1,9 @@
1
1
  // Re-export all reusable UI components
2
2
  export { default as ProfileCard } from './ProfileCard';
3
- export { default as Section } from './Section';
4
- export { default as SectionTitle } from './SectionTitle';
5
- export { default as GroupedItem } from './GroupedItem';
6
- export { default as GroupedSection } from './GroupedSection';
7
3
  export { default as QuickActions } from './QuickActions';
8
4
  export { default as Header, getHeaderHeight } from './Header';
9
5
  export { default as LoadingState } from './LoadingState';
10
6
  export { default as EmptyState } from './EmptyState';
11
- export { default as SettingRow } from './SettingRow';
12
7
  export { SettingsIcon } from './SettingsIcon';
13
8
 
14
9
  // Re-export existing components
@@ -1,5 +1,6 @@
1
1
  import React, { useRef, forwardRef, useImperativeHandle } from 'react';
2
2
  import { View, TextInput, StyleSheet, Platform, type NativeSyntheticEvent, type TextInputKeyPressEventData } from 'react-native';
3
+ import { useTheme } from '@oxyhq/bloom/theme';
3
4
 
4
5
  interface PinInputColors {
5
6
  primary: string;
@@ -24,6 +25,7 @@ export interface PinInputHandle {
24
25
  }
25
26
 
26
27
  const PinInput = forwardRef<PinInputHandle, PinInputProps>(({ value, onChange, length = 6, disabled, autoFocus, colors }, ref) => {
28
+ const theme = useTheme();
27
29
  const inputs = useRef<Array<TextInput | null>>([]);
28
30
 
29
31
  useImperativeHandle(ref, () => ({
@@ -66,7 +68,7 @@ const PinInput = forwardRef<PinInputHandle, PinInputProps>(({ value, onChange, l
66
68
  ref={(ref) => { inputs.current[idx] = ref; }}
67
69
  style={[
68
70
  styles.pinInput,
69
- { borderColor: colors.primary, color: colors.text, backgroundColor: colors.inputBackground },
71
+ { borderColor: colors.primary, color: colors.text, backgroundColor: colors.inputBackground || theme.colors.backgroundSecondary },
70
72
  value[idx] ? { borderWidth: 2 } : { borderWidth: 1 },
71
73
  ]}
72
74
  value={value[idx] || ''}
@@ -100,7 +102,6 @@ const styles = StyleSheet.create({
100
102
  borderWidth: 1,
101
103
  fontSize: 28,
102
104
  fontWeight: '600',
103
- backgroundColor: '#F5F5F5',
104
105
  textAlign: 'center',
105
106
  marginHorizontal: 2,
106
107
  ...Platform.select({
@@ -118,4 +119,4 @@ const styles = StyleSheet.create({
118
119
  },
119
120
  });
120
121
 
121
- export default PinInput;
122
+ export default PinInput;