@oxyhq/services 5.4.0 → 5.4.2

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 (395) hide show
  1. package/package.json +3 -2
  2. package/src/__tests__/ui/screens/AccountSettingsScreen.test.tsx +8 -8
  3. package/src/core/index.ts +103 -0
  4. package/src/lib/sonner.ts +9 -4
  5. package/src/ui/components/OxyProvider.tsx +5 -5
  6. package/src/ui/context/OxyContext.tsx +61 -41
  7. package/src/ui/screens/AccountManagementDemo.tsx +1 -1
  8. package/src/ui/screens/AccountOverviewScreen.tsx +44 -26
  9. package/src/ui/screens/AccountSettingsScreen.tsx +25 -19
  10. package/src/ui/screens/AppInfoScreen.tsx +5 -5
  11. package/src/ui/screens/FileManagementScreen.tsx +246 -211
  12. package/src/ui/screens/SignInScreen.tsx +382 -326
  13. package/src/ui/screens/SignUpScreen.tsx +443 -273
  14. package/src/ui/screens/karma/KarmaFAQScreen.tsx +50 -29
  15. package/lib/commonjs/assets/OxyLogo.svg +0 -1
  16. package/lib/commonjs/assets/assets/OxyLogo.svg +0 -1
  17. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  18. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  19. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  20. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  21. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  22. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  23. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  24. package/lib/commonjs/assets/assets/icons/OxyServices.tsx +0 -67
  25. package/lib/commonjs/assets/assets/icons/logo_OxyServices.svg +0 -1
  26. package/lib/commonjs/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  27. package/lib/commonjs/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  28. package/lib/commonjs/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  29. package/lib/commonjs/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  30. package/lib/commonjs/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  31. package/lib/commonjs/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  32. package/lib/commonjs/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  33. package/lib/commonjs/assets/icons/OxyServices.js +0 -53
  34. package/lib/commonjs/assets/icons/OxyServices.js.map +0 -1
  35. package/lib/commonjs/assets/icons/logo_OxyServices.svg +0 -1
  36. package/lib/commonjs/constants/version.js +0 -28
  37. package/lib/commonjs/constants/version.js.map +0 -1
  38. package/lib/commonjs/core/index.js +0 -1543
  39. package/lib/commonjs/core/index.js.map +0 -1
  40. package/lib/commonjs/index.js +0 -160
  41. package/lib/commonjs/index.js.map +0 -1
  42. package/lib/commonjs/lib/react-native-polyfills.js +0 -181
  43. package/lib/commonjs/lib/react-native-polyfills.js.map +0 -1
  44. package/lib/commonjs/lib/sonner-safe.js +0 -41
  45. package/lib/commonjs/lib/sonner-safe.js.map +0 -1
  46. package/lib/commonjs/lib/sonner.js +0 -18
  47. package/lib/commonjs/lib/sonner.js.map +0 -1
  48. package/lib/commonjs/lib/sonner.web.js +0 -17
  49. package/lib/commonjs/lib/sonner.web.js.map +0 -1
  50. package/lib/commonjs/models/interfaces.js +0 -2
  51. package/lib/commonjs/models/interfaces.js.map +0 -1
  52. package/lib/commonjs/models/secureSession.js +0 -2
  53. package/lib/commonjs/models/secureSession.js.map +0 -1
  54. package/lib/commonjs/node/index.js +0 -54
  55. package/lib/commonjs/node/index.js.map +0 -1
  56. package/lib/commonjs/package.json +0 -1
  57. package/lib/commonjs/ui/components/Avatar.js +0 -98
  58. package/lib/commonjs/ui/components/Avatar.js.map +0 -1
  59. package/lib/commonjs/ui/components/FollowButton.js +0 -246
  60. package/lib/commonjs/ui/components/FollowButton.js.map +0 -1
  61. package/lib/commonjs/ui/components/FontLoader.js +0 -181
  62. package/lib/commonjs/ui/components/FontLoader.js.map +0 -1
  63. package/lib/commonjs/ui/components/GroupedItem.js +0 -109
  64. package/lib/commonjs/ui/components/GroupedItem.js.map +0 -1
  65. package/lib/commonjs/ui/components/GroupedSection.js +0 -33
  66. package/lib/commonjs/ui/components/GroupedSection.js.map +0 -1
  67. package/lib/commonjs/ui/components/OxyLogo.js +0 -56
  68. package/lib/commonjs/ui/components/OxyLogo.js.map +0 -1
  69. package/lib/commonjs/ui/components/OxyProvider.js +0 -517
  70. package/lib/commonjs/ui/components/OxyProvider.js.map +0 -1
  71. package/lib/commonjs/ui/components/OxySignInButton.js +0 -178
  72. package/lib/commonjs/ui/components/OxySignInButton.js.map +0 -1
  73. package/lib/commonjs/ui/components/ProfileCard.js +0 -124
  74. package/lib/commonjs/ui/components/ProfileCard.js.map +0 -1
  75. package/lib/commonjs/ui/components/QuickActions.js +0 -87
  76. package/lib/commonjs/ui/components/QuickActions.js.map +0 -1
  77. package/lib/commonjs/ui/components/Section.js +0 -36
  78. package/lib/commonjs/ui/components/Section.js.map +0 -1
  79. package/lib/commonjs/ui/components/SectionTitle.js +0 -35
  80. package/lib/commonjs/ui/components/SectionTitle.js.map +0 -1
  81. package/lib/commonjs/ui/components/bottomSheet/index.js +0 -37
  82. package/lib/commonjs/ui/components/bottomSheet/index.js.map +0 -1
  83. package/lib/commonjs/ui/components/icon/OxyIcon.js +0 -27
  84. package/lib/commonjs/ui/components/icon/OxyIcon.js.map +0 -1
  85. package/lib/commonjs/ui/components/icon/index.js +0 -14
  86. package/lib/commonjs/ui/components/icon/index.js.map +0 -1
  87. package/lib/commonjs/ui/components/index.js +0 -97
  88. package/lib/commonjs/ui/components/index.js.map +0 -1
  89. package/lib/commonjs/ui/context/OxyContext.js +0 -568
  90. package/lib/commonjs/ui/context/OxyContext.js.map +0 -1
  91. package/lib/commonjs/ui/index.js +0 -128
  92. package/lib/commonjs/ui/index.js.map +0 -1
  93. package/lib/commonjs/ui/navigation/OxyRouter.js +0 -264
  94. package/lib/commonjs/ui/navigation/OxyRouter.js.map +0 -1
  95. package/lib/commonjs/ui/navigation/types.js +0 -6
  96. package/lib/commonjs/ui/navigation/types.js.map +0 -1
  97. package/lib/commonjs/ui/screens/AccountCenterScreen.js +0 -313
  98. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +0 -1
  99. package/lib/commonjs/ui/screens/AccountManagementDemo.js +0 -299
  100. package/lib/commonjs/ui/screens/AccountManagementDemo.js.map +0 -1
  101. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +0 -837
  102. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +0 -1
  103. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +0 -836
  104. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +0 -1
  105. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +0 -788
  106. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +0 -1
  107. package/lib/commonjs/ui/screens/AppInfoScreen.js +0 -664
  108. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +0 -1
  109. package/lib/commonjs/ui/screens/BillingManagementScreen.js +0 -636
  110. package/lib/commonjs/ui/screens/BillingManagementScreen.js.map +0 -1
  111. package/lib/commonjs/ui/screens/FileManagementScreen.js +0 -2497
  112. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +0 -1
  113. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +0 -1620
  114. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +0 -1
  115. package/lib/commonjs/ui/screens/ProfileScreen.js +0 -450
  116. package/lib/commonjs/ui/screens/ProfileScreen.js.map +0 -1
  117. package/lib/commonjs/ui/screens/SessionManagementScreen.js +0 -449
  118. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +0 -1
  119. package/lib/commonjs/ui/screens/SignInScreen.js +0 -956
  120. package/lib/commonjs/ui/screens/SignInScreen.js.map +0 -1
  121. package/lib/commonjs/ui/screens/SignUpScreen.js +0 -762
  122. package/lib/commonjs/ui/screens/SignUpScreen.js.map +0 -1
  123. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +0 -88
  124. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +0 -1
  125. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +0 -364
  126. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +0 -1
  127. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +0 -202
  128. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +0 -1
  129. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +0 -148
  130. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +0 -1
  131. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +0 -127
  132. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +0 -1
  133. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +0 -105
  134. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +0 -1
  135. package/lib/commonjs/ui/styles/FONTS.md +0 -126
  136. package/lib/commonjs/ui/styles/fonts.js +0 -84
  137. package/lib/commonjs/ui/styles/fonts.js.map +0 -1
  138. package/lib/commonjs/ui/styles/index.js +0 -28
  139. package/lib/commonjs/ui/styles/index.js.map +0 -1
  140. package/lib/commonjs/ui/styles/theme.js +0 -121
  141. package/lib/commonjs/ui/styles/theme.js.map +0 -1
  142. package/lib/commonjs/utils/deviceManager.js +0 -173
  143. package/lib/commonjs/utils/deviceManager.js.map +0 -1
  144. package/lib/commonjs/utils/index.js +0 -13
  145. package/lib/commonjs/utils/index.js.map +0 -1
  146. package/lib/commonjs/utils/polyfills.js +0 -42
  147. package/lib/commonjs/utils/polyfills.js.map +0 -1
  148. package/lib/module/assets/OxyLogo.svg +0 -1
  149. package/lib/module/assets/assets/OxyLogo.svg +0 -1
  150. package/lib/module/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  151. package/lib/module/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  152. package/lib/module/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  153. package/lib/module/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  154. package/lib/module/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  155. package/lib/module/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  156. package/lib/module/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  157. package/lib/module/assets/assets/icons/OxyServices.tsx +0 -67
  158. package/lib/module/assets/assets/icons/logo_OxyServices.svg +0 -1
  159. package/lib/module/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  160. package/lib/module/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  161. package/lib/module/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  162. package/lib/module/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  163. package/lib/module/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  164. package/lib/module/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  165. package/lib/module/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  166. package/lib/module/assets/icons/OxyServices.js +0 -46
  167. package/lib/module/assets/icons/OxyServices.js.map +0 -1
  168. package/lib/module/assets/icons/logo_OxyServices.svg +0 -1
  169. package/lib/module/constants/version.js +0 -21
  170. package/lib/module/constants/version.js.map +0 -1
  171. package/lib/module/core/index.js +0 -1517
  172. package/lib/module/core/index.js.map +0 -1
  173. package/lib/module/index.js +0 -48
  174. package/lib/module/index.js.map +0 -1
  175. package/lib/module/lib/react-native-polyfills.js +0 -179
  176. package/lib/module/lib/react-native-polyfills.js.map +0 -1
  177. package/lib/module/lib/sonner-safe.js +0 -37
  178. package/lib/module/lib/sonner-safe.js.map +0 -1
  179. package/lib/module/lib/sonner.js +0 -8
  180. package/lib/module/lib/sonner.js.map +0 -1
  181. package/lib/module/lib/sonner.web.js +0 -4
  182. package/lib/module/lib/sonner.web.js.map +0 -1
  183. package/lib/module/models/interfaces.js +0 -2
  184. package/lib/module/models/interfaces.js.map +0 -1
  185. package/lib/module/models/secureSession.js +0 -2
  186. package/lib/module/models/secureSession.js.map +0 -1
  187. package/lib/module/node/index.js +0 -23
  188. package/lib/module/node/index.js.map +0 -1
  189. package/lib/module/package.json +0 -1
  190. package/lib/module/ui/components/Avatar.js +0 -93
  191. package/lib/module/ui/components/Avatar.js.map +0 -1
  192. package/lib/module/ui/components/FollowButton.js +0 -241
  193. package/lib/module/ui/components/FollowButton.js.map +0 -1
  194. package/lib/module/ui/components/FontLoader.js +0 -176
  195. package/lib/module/ui/components/FontLoader.js.map +0 -1
  196. package/lib/module/ui/components/GroupedItem.js +0 -104
  197. package/lib/module/ui/components/GroupedItem.js.map +0 -1
  198. package/lib/module/ui/components/GroupedSection.js +0 -28
  199. package/lib/module/ui/components/GroupedSection.js.map +0 -1
  200. package/lib/module/ui/components/OxyLogo.js +0 -49
  201. package/lib/module/ui/components/OxyLogo.js.map +0 -1
  202. package/lib/module/ui/components/OxyProvider.js +0 -511
  203. package/lib/module/ui/components/OxyProvider.js.map +0 -1
  204. package/lib/module/ui/components/OxySignInButton.js +0 -172
  205. package/lib/module/ui/components/OxySignInButton.js.map +0 -1
  206. package/lib/module/ui/components/ProfileCard.js +0 -119
  207. package/lib/module/ui/components/ProfileCard.js.map +0 -1
  208. package/lib/module/ui/components/QuickActions.js +0 -82
  209. package/lib/module/ui/components/QuickActions.js.map +0 -1
  210. package/lib/module/ui/components/Section.js +0 -31
  211. package/lib/module/ui/components/Section.js.map +0 -1
  212. package/lib/module/ui/components/SectionTitle.js +0 -30
  213. package/lib/module/ui/components/SectionTitle.js.map +0 -1
  214. package/lib/module/ui/components/bottomSheet/index.js +0 -5
  215. package/lib/module/ui/components/bottomSheet/index.js.map +0 -1
  216. package/lib/module/ui/components/icon/OxyIcon.js +0 -22
  217. package/lib/module/ui/components/icon/OxyIcon.js.map +0 -1
  218. package/lib/module/ui/components/icon/index.js +0 -4
  219. package/lib/module/ui/components/icon/index.js.map +0 -1
  220. package/lib/module/ui/components/index.js +0 -18
  221. package/lib/module/ui/components/index.js.map +0 -1
  222. package/lib/module/ui/context/OxyContext.js +0 -563
  223. package/lib/module/ui/context/OxyContext.js.map +0 -1
  224. package/lib/module/ui/index.js +0 -24
  225. package/lib/module/ui/index.js.map +0 -1
  226. package/lib/module/ui/navigation/OxyRouter.js +0 -257
  227. package/lib/module/ui/navigation/OxyRouter.js.map +0 -1
  228. package/lib/module/ui/navigation/types.js +0 -4
  229. package/lib/module/ui/navigation/types.js.map +0 -1
  230. package/lib/module/ui/screens/AccountCenterScreen.js +0 -308
  231. package/lib/module/ui/screens/AccountCenterScreen.js.map +0 -1
  232. package/lib/module/ui/screens/AccountManagementDemo.js +0 -296
  233. package/lib/module/ui/screens/AccountManagementDemo.js.map +0 -1
  234. package/lib/module/ui/screens/AccountOverviewScreen.js +0 -831
  235. package/lib/module/ui/screens/AccountOverviewScreen.js.map +0 -1
  236. package/lib/module/ui/screens/AccountSettingsScreen.js +0 -830
  237. package/lib/module/ui/screens/AccountSettingsScreen.js.map +0 -1
  238. package/lib/module/ui/screens/AccountSwitcherScreen.js +0 -782
  239. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +0 -1
  240. package/lib/module/ui/screens/AppInfoScreen.js +0 -658
  241. package/lib/module/ui/screens/AppInfoScreen.js.map +0 -1
  242. package/lib/module/ui/screens/BillingManagementScreen.js +0 -631
  243. package/lib/module/ui/screens/BillingManagementScreen.js.map +0 -1
  244. package/lib/module/ui/screens/FileManagementScreen.js +0 -2492
  245. package/lib/module/ui/screens/FileManagementScreen.js.map +0 -1
  246. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +0 -1615
  247. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +0 -1
  248. package/lib/module/ui/screens/ProfileScreen.js +0 -444
  249. package/lib/module/ui/screens/ProfileScreen.js.map +0 -1
  250. package/lib/module/ui/screens/SessionManagementScreen.js +0 -444
  251. package/lib/module/ui/screens/SessionManagementScreen.js.map +0 -1
  252. package/lib/module/ui/screens/SignInScreen.js +0 -950
  253. package/lib/module/ui/screens/SignInScreen.js.map +0 -1
  254. package/lib/module/ui/screens/SignUpScreen.js +0 -755
  255. package/lib/module/ui/screens/SignUpScreen.js.map +0 -1
  256. package/lib/module/ui/screens/karma/KarmaAboutScreen.js +0 -83
  257. package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +0 -1
  258. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +0 -358
  259. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +0 -1
  260. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +0 -197
  261. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +0 -1
  262. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +0 -142
  263. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +0 -1
  264. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +0 -122
  265. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +0 -1
  266. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +0 -100
  267. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +0 -1
  268. package/lib/module/ui/styles/FONTS.md +0 -126
  269. package/lib/module/ui/styles/fonts.js +0 -81
  270. package/lib/module/ui/styles/fonts.js.map +0 -1
  271. package/lib/module/ui/styles/index.js +0 -5
  272. package/lib/module/ui/styles/index.js.map +0 -1
  273. package/lib/module/ui/styles/theme.js +0 -114
  274. package/lib/module/ui/styles/theme.js.map +0 -1
  275. package/lib/module/utils/deviceManager.js +0 -167
  276. package/lib/module/utils/deviceManager.js.map +0 -1
  277. package/lib/module/utils/index.js +0 -4
  278. package/lib/module/utils/index.js.map +0 -1
  279. package/lib/module/utils/polyfills.js +0 -36
  280. package/lib/module/utils/polyfills.js.map +0 -1
  281. package/lib/typescript/assets/icons/OxyServices.d.ts +0 -29
  282. package/lib/typescript/assets/icons/OxyServices.d.ts.map +0 -1
  283. package/lib/typescript/constants/version.d.ts +0 -14
  284. package/lib/typescript/constants/version.d.ts.map +0 -1
  285. package/lib/typescript/core/index.d.ts +0 -563
  286. package/lib/typescript/core/index.d.ts.map +0 -1
  287. package/lib/typescript/index.d.ts +0 -20
  288. package/lib/typescript/index.d.ts.map +0 -1
  289. package/lib/typescript/lib/react-native-polyfills.d.ts +0 -8
  290. package/lib/typescript/lib/react-native-polyfills.d.ts.map +0 -1
  291. package/lib/typescript/lib/sonner-safe.d.ts +0 -11
  292. package/lib/typescript/lib/sonner-safe.d.ts.map +0 -1
  293. package/lib/typescript/lib/sonner.d.ts +0 -3
  294. package/lib/typescript/lib/sonner.d.ts.map +0 -1
  295. package/lib/typescript/lib/sonner.web.d.ts +0 -2
  296. package/lib/typescript/lib/sonner.web.d.ts.map +0 -1
  297. package/lib/typescript/models/interfaces.d.ts +0 -179
  298. package/lib/typescript/models/interfaces.d.ts.map +0 -1
  299. package/lib/typescript/models/secureSession.d.ts +0 -27
  300. package/lib/typescript/models/secureSession.d.ts.map +0 -1
  301. package/lib/typescript/node/index.d.ts +0 -11
  302. package/lib/typescript/node/index.d.ts.map +0 -1
  303. package/lib/typescript/ui/components/Avatar.d.ts +0 -62
  304. package/lib/typescript/ui/components/Avatar.d.ts.map +0 -1
  305. package/lib/typescript/ui/components/FollowButton.d.ts +0 -92
  306. package/lib/typescript/ui/components/FollowButton.d.ts.map +0 -1
  307. package/lib/typescript/ui/components/FontLoader.d.ts +0 -15
  308. package/lib/typescript/ui/components/FontLoader.d.ts.map +0 -1
  309. package/lib/typescript/ui/components/GroupedItem.d.ts +0 -17
  310. package/lib/typescript/ui/components/GroupedItem.d.ts.map +0 -1
  311. package/lib/typescript/ui/components/GroupedSection.d.ts +0 -19
  312. package/lib/typescript/ui/components/GroupedSection.d.ts.map +0 -1
  313. package/lib/typescript/ui/components/OxyLogo.d.ts +0 -29
  314. package/lib/typescript/ui/components/OxyLogo.d.ts.map +0 -1
  315. package/lib/typescript/ui/components/OxyProvider.d.ts +0 -12
  316. package/lib/typescript/ui/components/OxyProvider.d.ts.map +0 -1
  317. package/lib/typescript/ui/components/OxySignInButton.d.ts +0 -70
  318. package/lib/typescript/ui/components/OxySignInButton.d.ts.map +0 -1
  319. package/lib/typescript/ui/components/ProfileCard.d.ts +0 -20
  320. package/lib/typescript/ui/components/ProfileCard.d.ts.map +0 -1
  321. package/lib/typescript/ui/components/QuickActions.d.ts +0 -15
  322. package/lib/typescript/ui/components/QuickActions.d.ts.map +0 -1
  323. package/lib/typescript/ui/components/Section.d.ts +0 -11
  324. package/lib/typescript/ui/components/Section.d.ts.map +0 -1
  325. package/lib/typescript/ui/components/SectionTitle.d.ts +0 -9
  326. package/lib/typescript/ui/components/SectionTitle.d.ts.map +0 -1
  327. package/lib/typescript/ui/components/bottomSheet/index.d.ts +0 -4
  328. package/lib/typescript/ui/components/bottomSheet/index.d.ts.map +0 -1
  329. package/lib/typescript/ui/components/icon/OxyIcon.d.ts +0 -10
  330. package/lib/typescript/ui/components/icon/OxyIcon.d.ts.map +0 -1
  331. package/lib/typescript/ui/components/icon/index.d.ts +0 -3
  332. package/lib/typescript/ui/components/icon/index.d.ts.map +0 -1
  333. package/lib/typescript/ui/components/index.d.ts +0 -13
  334. package/lib/typescript/ui/components/index.d.ts.map +0 -1
  335. package/lib/typescript/ui/context/OxyContext.d.ts +0 -42
  336. package/lib/typescript/ui/context/OxyContext.d.ts.map +0 -1
  337. package/lib/typescript/ui/index.d.ts +0 -15
  338. package/lib/typescript/ui/index.d.ts.map +0 -1
  339. package/lib/typescript/ui/navigation/OxyRouter.d.ts +0 -5
  340. package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +0 -1
  341. package/lib/typescript/ui/navigation/types.d.ts +0 -116
  342. package/lib/typescript/ui/navigation/types.d.ts.map +0 -1
  343. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts +0 -5
  344. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +0 -1
  345. package/lib/typescript/ui/screens/AccountManagementDemo.d.ts +0 -8
  346. package/lib/typescript/ui/screens/AccountManagementDemo.d.ts.map +0 -1
  347. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts +0 -5
  348. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +0 -1
  349. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts +0 -5
  350. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +0 -1
  351. package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts +0 -5
  352. package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts.map +0 -1
  353. package/lib/typescript/ui/screens/AppInfoScreen.d.ts +0 -5
  354. package/lib/typescript/ui/screens/AppInfoScreen.d.ts.map +0 -1
  355. package/lib/typescript/ui/screens/BillingManagementScreen.d.ts +0 -5
  356. package/lib/typescript/ui/screens/BillingManagementScreen.d.ts.map +0 -1
  357. package/lib/typescript/ui/screens/FileManagementScreen.d.ts +0 -8
  358. package/lib/typescript/ui/screens/FileManagementScreen.d.ts.map +0 -1
  359. package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts +0 -5
  360. package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts.map +0 -1
  361. package/lib/typescript/ui/screens/ProfileScreen.d.ts +0 -9
  362. package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +0 -1
  363. package/lib/typescript/ui/screens/SessionManagementScreen.d.ts +0 -5
  364. package/lib/typescript/ui/screens/SessionManagementScreen.d.ts.map +0 -1
  365. package/lib/typescript/ui/screens/SignInScreen.d.ts +0 -5
  366. package/lib/typescript/ui/screens/SignInScreen.d.ts.map +0 -1
  367. package/lib/typescript/ui/screens/SignUpScreen.d.ts +0 -5
  368. package/lib/typescript/ui/screens/SignUpScreen.d.ts.map +0 -1
  369. package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts +0 -5
  370. package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts.map +0 -1
  371. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts +0 -5
  372. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +0 -1
  373. package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts +0 -5
  374. package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts.map +0 -1
  375. package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts +0 -5
  376. package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +0 -1
  377. package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts +0 -5
  378. package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts.map +0 -1
  379. package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts +0 -5
  380. package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts.map +0 -1
  381. package/lib/typescript/ui/styles/fonts.d.ts +0 -21
  382. package/lib/typescript/ui/styles/fonts.d.ts.map +0 -1
  383. package/lib/typescript/ui/styles/index.d.ts +0 -3
  384. package/lib/typescript/ui/styles/index.d.ts.map +0 -1
  385. package/lib/typescript/ui/styles/theme.d.ts +0 -68
  386. package/lib/typescript/ui/styles/theme.d.ts.map +0 -1
  387. package/lib/typescript/utils/deviceManager.d.ts +0 -66
  388. package/lib/typescript/utils/deviceManager.d.ts.map +0 -1
  389. package/lib/typescript/utils/index.d.ts +0 -3
  390. package/lib/typescript/utils/index.d.ts.map +0 -1
  391. package/lib/typescript/utils/polyfills.d.ts +0 -6
  392. package/lib/typescript/utils/polyfills.d.ts.map +0 -1
  393. package/src/lib/react-native-polyfills.ts +0 -219
  394. package/src/lib/sonner-safe.ts +0 -37
  395. package/src/lib/sonner.web.ts +0 -1
@@ -1,830 +0,0 @@
1
- "use strict";
2
-
3
- import React, { useState, useEffect, useRef } from 'react';
4
- import { View, Text, TouchableOpacity, StyleSheet, ActivityIndicator, ScrollView, Alert, TextInput, Animated } from 'react-native';
5
- import { useOxy } from '../context/OxyContext';
6
- import Avatar from '../components/Avatar';
7
- import OxyIcon from '../components/icon/OxyIcon';
8
- import { Ionicons } from '@expo/vector-icons';
9
- import { toast } from '../../lib/sonner';
10
- import { fontFamilies } from '../styles/fonts';
11
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
12
- const AccountSettingsScreen = ({
13
- onClose,
14
- theme,
15
- goBack,
16
- navigate
17
- }) => {
18
- const {
19
- user,
20
- oxyServices,
21
- isLoading: authLoading
22
- } = useOxy();
23
- const [isLoading, setIsLoading] = useState(false);
24
- const [isSaving, setIsSaving] = useState(false);
25
-
26
- // Animation refs
27
- const saveButtonScale = useRef(new Animated.Value(1)).current;
28
-
29
- // Form state
30
- const [displayName, setDisplayName] = useState('');
31
- const [username, setUsername] = useState('');
32
- const [email, setEmail] = useState('');
33
- const [bio, setBio] = useState('');
34
- const [location, setLocation] = useState('');
35
- const [website, setWebsite] = useState('');
36
- const [avatarUrl, setAvatarUrl] = useState('');
37
-
38
- // Editing states
39
- const [editingField, setEditingField] = useState(null);
40
-
41
- // Temporary input states for inline editing
42
- const [tempDisplayName, setTempDisplayName] = useState('');
43
- const [tempUsername, setTempUsername] = useState('');
44
- const [tempEmail, setTempEmail] = useState('');
45
- const [tempBio, setTempBio] = useState('');
46
- const [tempLocation, setTempLocation] = useState('');
47
- const [tempWebsite, setTempWebsite] = useState('');
48
- const isDarkTheme = theme === 'dark';
49
- const backgroundColor = isDarkTheme ? '#121212' : '#f2f2f2';
50
- const primaryColor = '#007AFF';
51
-
52
- // Animation functions
53
- const animateSaveButton = toValue => {
54
- Animated.spring(saveButtonScale, {
55
- toValue,
56
- useNativeDriver: true,
57
- tension: 150,
58
- friction: 8
59
- }).start();
60
- };
61
-
62
- // Load user data
63
- useEffect(() => {
64
- if (user) {
65
- const userDisplayName = typeof user.name === 'string' ? user.name : user.name?.full || user.name?.first || '';
66
- setDisplayName(userDisplayName);
67
- setUsername(user.username || '');
68
- setEmail(user.email || '');
69
- setBio(user.bio || '');
70
- setLocation(user.location || '');
71
- setWebsite(user.website || '');
72
- setAvatarUrl(user.avatar?.url || '');
73
- }
74
- }, [user]);
75
- const handleSave = async () => {
76
- if (!user) return;
77
- try {
78
- setIsSaving(true);
79
- animateSaveButton(0.95); // Scale down slightly for animation
80
-
81
- const updates = {
82
- username,
83
- email,
84
- bio,
85
- location,
86
- website
87
- };
88
-
89
- // Handle name field
90
- if (displayName) {
91
- updates.name = displayName;
92
- }
93
-
94
- // Handle avatar
95
- if (avatarUrl !== user.avatar?.url) {
96
- updates.avatar = {
97
- url: avatarUrl
98
- };
99
- }
100
- await oxyServices.updateUser(user.id, updates);
101
- toast.success('Profile updated successfully');
102
- animateSaveButton(1); // Scale back to normal
103
-
104
- if (onClose) {
105
- onClose();
106
- } else if (goBack) {
107
- goBack();
108
- }
109
- } catch (error) {
110
- toast.error(error.message || 'Failed to update profile');
111
- animateSaveButton(1); // Scale back to normal on error
112
- } finally {
113
- setIsSaving(false);
114
- }
115
- };
116
- const handleAvatarUpdate = () => {
117
- Alert.alert('Update Avatar', 'Choose how you want to update your profile picture', [{
118
- text: 'Cancel',
119
- style: 'cancel'
120
- }, {
121
- text: 'Use Mock URL',
122
- onPress: () => {
123
- const mockUrl = `https://ui-avatars.com/api/?name=${displayName || username}&background=random`;
124
- setAvatarUrl(mockUrl);
125
- }
126
- }, {
127
- text: 'Remove Avatar',
128
- onPress: () => setAvatarUrl(''),
129
- style: 'destructive'
130
- }]);
131
- };
132
- const startEditing = (type, currentValue) => {
133
- switch (type) {
134
- case 'displayName':
135
- setTempDisplayName(currentValue);
136
- break;
137
- case 'username':
138
- setTempUsername(currentValue);
139
- break;
140
- case 'email':
141
- setTempEmail(currentValue);
142
- break;
143
- case 'bio':
144
- setTempBio(currentValue);
145
- break;
146
- case 'location':
147
- setTempLocation(currentValue);
148
- break;
149
- case 'website':
150
- setTempWebsite(currentValue);
151
- break;
152
- }
153
- setEditingField(type);
154
- };
155
- const saveField = type => {
156
- animateSaveButton(0.95); // Scale down slightly for animation
157
-
158
- switch (type) {
159
- case 'displayName':
160
- setDisplayName(tempDisplayName);
161
- break;
162
- case 'username':
163
- setUsername(tempUsername);
164
- break;
165
- case 'email':
166
- setEmail(tempEmail);
167
- break;
168
- case 'bio':
169
- setBio(tempBio);
170
- break;
171
- case 'location':
172
- setLocation(tempLocation);
173
- break;
174
- case 'website':
175
- setWebsite(tempWebsite);
176
- break;
177
- }
178
-
179
- // Brief delay for animation, then reset and close editing
180
- setTimeout(() => {
181
- animateSaveButton(1);
182
- setEditingField(null);
183
- }, 150);
184
- };
185
- const cancelEditing = () => {
186
- setEditingField(null);
187
- };
188
- const getFieldLabel = type => {
189
- const labels = {
190
- displayName: 'Display Name',
191
- username: 'Username',
192
- email: 'Email',
193
- bio: 'Bio',
194
- location: 'Location',
195
- website: 'Website'
196
- };
197
- return labels[type] || 'Field';
198
- };
199
- const getFieldIcon = type => {
200
- const icons = {
201
- displayName: {
202
- name: 'person',
203
- color: '#007AFF'
204
- },
205
- username: {
206
- name: 'at',
207
- color: '#5856D6'
208
- },
209
- email: {
210
- name: 'mail',
211
- color: '#FF9500'
212
- },
213
- bio: {
214
- name: 'document-text',
215
- color: '#34C759'
216
- },
217
- location: {
218
- name: 'location',
219
- color: '#FF3B30'
220
- },
221
- website: {
222
- name: 'link',
223
- color: '#32D74B'
224
- }
225
- };
226
- return icons[type] || {
227
- name: 'person',
228
- color: '#007AFF'
229
- };
230
- };
231
- const renderEditingField = type => {
232
- const fieldConfig = {
233
- displayName: {
234
- label: 'Display Name',
235
- value: displayName,
236
- placeholder: 'Enter your display name',
237
- icon: 'person',
238
- color: '#007AFF',
239
- multiline: false,
240
- keyboardType: 'default'
241
- },
242
- username: {
243
- label: 'Username',
244
- value: username,
245
- placeholder: 'Choose a username',
246
- icon: 'at',
247
- color: '#5856D6',
248
- multiline: false,
249
- keyboardType: 'default'
250
- },
251
- email: {
252
- label: 'Email',
253
- value: email,
254
- placeholder: 'Enter your email address',
255
- icon: 'mail',
256
- color: '#FF9500',
257
- multiline: false,
258
- keyboardType: 'email-address'
259
- },
260
- bio: {
261
- label: 'Bio',
262
- value: bio,
263
- placeholder: 'Tell people about yourself...',
264
- icon: 'document-text',
265
- color: '#34C759',
266
- multiline: true,
267
- keyboardType: 'default'
268
- },
269
- location: {
270
- label: 'Location',
271
- value: location,
272
- placeholder: 'Enter your location',
273
- icon: 'location',
274
- color: '#FF3B30',
275
- multiline: false,
276
- keyboardType: 'default'
277
- },
278
- website: {
279
- label: 'Website',
280
- value: website,
281
- placeholder: 'Enter your website URL',
282
- icon: 'link',
283
- color: '#32D74B',
284
- multiline: false,
285
- keyboardType: 'url'
286
- }
287
- };
288
- const config = fieldConfig[type];
289
- if (!config) return null;
290
- const tempValue = (() => {
291
- switch (type) {
292
- case 'displayName':
293
- return tempDisplayName;
294
- case 'username':
295
- return tempUsername;
296
- case 'email':
297
- return tempEmail;
298
- case 'bio':
299
- return tempBio;
300
- case 'location':
301
- return tempLocation;
302
- case 'website':
303
- return tempWebsite;
304
- default:
305
- return '';
306
- }
307
- })();
308
- const setTempValue = text => {
309
- switch (type) {
310
- case 'displayName':
311
- setTempDisplayName(text);
312
- break;
313
- case 'username':
314
- setTempUsername(text);
315
- break;
316
- case 'email':
317
- setTempEmail(text);
318
- break;
319
- case 'bio':
320
- setTempBio(text);
321
- break;
322
- case 'location':
323
- setTempLocation(text);
324
- break;
325
- case 'website':
326
- setTempWebsite(text);
327
- break;
328
- }
329
- };
330
- return /*#__PURE__*/_jsx(View, {
331
- style: styles.editingFieldContainer,
332
- children: /*#__PURE__*/_jsx(View, {
333
- style: styles.editingFieldContent,
334
- children: /*#__PURE__*/_jsxs(View, {
335
- style: styles.newValueSection,
336
- children: [/*#__PURE__*/_jsx(Text, {
337
- style: styles.editingFieldLabel,
338
- children: `Enter ${config.label.toLowerCase()}:`
339
- }), /*#__PURE__*/_jsx(TextInput, {
340
- style: [config.multiline ? styles.editingFieldTextArea : styles.editingFieldInput, {
341
- backgroundColor: isDarkTheme ? '#333' : '#fff',
342
- color: isDarkTheme ? '#fff' : '#000',
343
- borderColor: primaryColor
344
- }],
345
- value: tempValue,
346
- onChangeText: setTempValue,
347
- placeholder: config.placeholder,
348
- placeholderTextColor: isDarkTheme ? '#aaa' : '#999',
349
- multiline: config.multiline,
350
- numberOfLines: config.multiline ? 6 : 1,
351
- keyboardType: config.keyboardType,
352
- autoFocus: true,
353
- selectionColor: primaryColor
354
- })]
355
- })
356
- })
357
- });
358
- };
359
- const renderField = (type, label, value, placeholder, icon, iconColor, multiline = false, keyboardType = 'default', isFirst = false, isLast = false) => {
360
- const itemStyles = [styles.settingItem, isFirst && styles.firstSettingItem, isLast && styles.lastSettingItem];
361
- return /*#__PURE__*/_jsxs(TouchableOpacity, {
362
- style: itemStyles,
363
- onPress: () => startEditing(type, value),
364
- children: [/*#__PURE__*/_jsxs(View, {
365
- style: styles.settingInfo,
366
- children: [/*#__PURE__*/_jsx(OxyIcon, {
367
- name: icon,
368
- size: 20,
369
- color: iconColor,
370
- style: styles.settingIcon
371
- }), /*#__PURE__*/_jsxs(View, {
372
- children: [/*#__PURE__*/_jsx(Text, {
373
- style: styles.settingLabel,
374
- children: label
375
- }), /*#__PURE__*/_jsx(Text, {
376
- style: styles.settingDescription,
377
- children: value || placeholder
378
- })]
379
- })]
380
- }), /*#__PURE__*/_jsx(OxyIcon, {
381
- name: "chevron-forward",
382
- size: 16,
383
- color: "#ccc"
384
- })]
385
- });
386
- };
387
- if (authLoading || !user) {
388
- return /*#__PURE__*/_jsx(View, {
389
- style: [styles.container, {
390
- backgroundColor,
391
- justifyContent: 'center'
392
- }],
393
- children: /*#__PURE__*/_jsx(ActivityIndicator, {
394
- size: "large",
395
- color: primaryColor
396
- })
397
- });
398
- }
399
- return /*#__PURE__*/_jsxs(View, {
400
- style: [styles.container, {
401
- backgroundColor
402
- }],
403
- children: [/*#__PURE__*/_jsx(View, {
404
- style: styles.header,
405
- children: editingField ? /*#__PURE__*/_jsxs(View, {
406
- style: styles.editingHeader,
407
- children: [/*#__PURE__*/_jsxs(View, {
408
- style: styles.editingHeaderTop,
409
- children: [/*#__PURE__*/_jsx(TouchableOpacity, {
410
- style: styles.cancelButton,
411
- onPress: cancelEditing,
412
- children: /*#__PURE__*/_jsx(Ionicons, {
413
- name: "close",
414
- size: 24,
415
- color: "#666"
416
- })
417
- }), /*#__PURE__*/_jsx(Animated.View, {
418
- style: {
419
- transform: [{
420
- scale: saveButtonScale
421
- }]
422
- },
423
- children: /*#__PURE__*/_jsx(TouchableOpacity, {
424
- style: [styles.saveHeaderButton, {
425
- opacity: isSaving ? 0.7 : 1,
426
- backgroundColor: editingField ? getFieldIcon(editingField).color : '#007AFF'
427
- }],
428
- onPress: () => saveField(editingField),
429
- disabled: isSaving,
430
- children: isSaving ? /*#__PURE__*/_jsx(ActivityIndicator, {
431
- size: "small",
432
- color: "#fff"
433
- }) : /*#__PURE__*/_jsx(Text, {
434
- style: styles.saveButtonText,
435
- children: "Save"
436
- })
437
- })
438
- })]
439
- }), /*#__PURE__*/_jsx(View, {
440
- style: styles.editingHeaderBottom,
441
- children: /*#__PURE__*/_jsxs(View, {
442
- style: styles.headerTitleWithIcon,
443
- children: [/*#__PURE__*/_jsx(OxyIcon, {
444
- name: getFieldIcon(editingField).name,
445
- size: 50,
446
- color: getFieldIcon(editingField).color,
447
- style: styles.headerIcon
448
- }), /*#__PURE__*/_jsx(Text, {
449
- style: styles.headerTitleLarge,
450
- children: getFieldLabel(editingField)
451
- })]
452
- })
453
- })]
454
- }) : /*#__PURE__*/_jsxs(View, {
455
- style: styles.normalHeader,
456
- children: [/*#__PURE__*/_jsx(TouchableOpacity, {
457
- style: styles.cancelButton,
458
- onPress: onClose || goBack,
459
- children: /*#__PURE__*/_jsx(Ionicons, {
460
- name: "close",
461
- size: 24,
462
- color: "#666"
463
- })
464
- }), /*#__PURE__*/_jsx(Text, {
465
- style: styles.headerTitle,
466
- children: "Account Settings"
467
- }), /*#__PURE__*/_jsx(Animated.View, {
468
- style: {
469
- transform: [{
470
- scale: saveButtonScale
471
- }]
472
- },
473
- children: /*#__PURE__*/_jsx(TouchableOpacity, {
474
- style: [styles.saveIconButton, {
475
- opacity: isSaving ? 0.7 : 1
476
- }],
477
- onPress: handleSave,
478
- disabled: isSaving,
479
- children: isSaving ? /*#__PURE__*/_jsx(ActivityIndicator, {
480
- size: "small",
481
- color: primaryColor
482
- }) : /*#__PURE__*/_jsx(Ionicons, {
483
- name: "checkmark",
484
- size: 24,
485
- color: primaryColor
486
- })
487
- })
488
- })]
489
- })
490
- }), /*#__PURE__*/_jsx(ScrollView, {
491
- style: editingField ? styles.contentEditing : styles.content,
492
- children: editingField ?
493
- /*#__PURE__*/
494
- // Show only the editing interface when editing
495
- _jsx(View, {
496
- style: styles.editingOnlyContainer,
497
- children: renderEditingField(editingField)
498
- }) :
499
- /*#__PURE__*/
500
- // Show all settings when not editing
501
- _jsxs(_Fragment, {
502
- children: [/*#__PURE__*/_jsxs(View, {
503
- style: styles.section,
504
- children: [/*#__PURE__*/_jsx(Text, {
505
- style: styles.sectionTitle,
506
- children: "Profile Picture"
507
- }), /*#__PURE__*/_jsxs(TouchableOpacity, {
508
- style: [styles.settingItem, styles.firstSettingItem, styles.lastSettingItem],
509
- onPress: handleAvatarUpdate,
510
- children: [/*#__PURE__*/_jsx(View, {
511
- style: styles.userIcon,
512
- children: /*#__PURE__*/_jsx(Avatar, {
513
- uri: avatarUrl,
514
- name: displayName || username,
515
- size: 50,
516
- theme: theme
517
- })
518
- }), /*#__PURE__*/_jsx(View, {
519
- style: styles.settingInfo,
520
- children: /*#__PURE__*/_jsxs(View, {
521
- children: [/*#__PURE__*/_jsx(Text, {
522
- style: styles.settingLabel,
523
- children: "Profile Photo"
524
- }), /*#__PURE__*/_jsx(Text, {
525
- style: styles.settingDescription,
526
- children: avatarUrl ? 'Tap to change your profile picture' : 'Tap to add a profile picture'
527
- })]
528
- })
529
- }), /*#__PURE__*/_jsx(OxyIcon, {
530
- name: "chevron-forward",
531
- size: 16,
532
- color: "#ccc"
533
- })]
534
- })]
535
- }), /*#__PURE__*/_jsxs(View, {
536
- style: styles.section,
537
- children: [/*#__PURE__*/_jsx(Text, {
538
- style: styles.sectionTitle,
539
- children: "Basic Information"
540
- }), renderField('displayName', 'Display Name', displayName, 'Add your display name', 'person', '#007AFF', false, 'default', true, false), renderField('username', 'Username', username, 'Choose a username', 'at', '#5856D6', false, 'default', false, false), renderField('email', 'Email', email, 'Add your email address', 'mail', '#FF9500', false, 'email-address', false, true)]
541
- }), /*#__PURE__*/_jsxs(View, {
542
- style: styles.section,
543
- children: [/*#__PURE__*/_jsx(Text, {
544
- style: styles.sectionTitle,
545
- children: "About You"
546
- }), renderField('bio', 'Bio', bio, 'Tell people about yourself', 'document-text', '#34C759', true, 'default', true, false), renderField('location', 'Location', location, 'Add your location', 'location', '#FF3B30', false, 'default', false, false), renderField('website', 'Website', website, 'Add your website', 'link', '#32D74B', false, 'url', false, true)]
547
- }), /*#__PURE__*/_jsxs(View, {
548
- style: styles.section,
549
- children: [/*#__PURE__*/_jsx(Text, {
550
- style: styles.sectionTitle,
551
- children: "Quick Actions"
552
- }), /*#__PURE__*/_jsxs(TouchableOpacity, {
553
- style: [styles.settingItem, styles.firstSettingItem],
554
- onPress: () => toast.info('Privacy settings coming soon!'),
555
- children: [/*#__PURE__*/_jsxs(View, {
556
- style: styles.settingInfo,
557
- children: [/*#__PURE__*/_jsx(OxyIcon, {
558
- name: "shield-checkmark",
559
- size: 20,
560
- color: "#8E8E93",
561
- style: styles.settingIcon
562
- }), /*#__PURE__*/_jsxs(View, {
563
- children: [/*#__PURE__*/_jsx(Text, {
564
- style: styles.settingLabel,
565
- children: "Privacy Settings"
566
- }), /*#__PURE__*/_jsx(Text, {
567
- style: styles.settingDescription,
568
- children: "Control who can see your profile"
569
- })]
570
- })]
571
- }), /*#__PURE__*/_jsx(OxyIcon, {
572
- name: "chevron-forward",
573
- size: 16,
574
- color: "#ccc"
575
- })]
576
- }), /*#__PURE__*/_jsxs(TouchableOpacity, {
577
- style: [styles.settingItem, styles.lastSettingItem],
578
- onPress: () => toast.info('Account verification coming soon!'),
579
- children: [/*#__PURE__*/_jsxs(View, {
580
- style: styles.settingInfo,
581
- children: [/*#__PURE__*/_jsx(OxyIcon, {
582
- name: "checkmark-circle",
583
- size: 20,
584
- color: "#30D158",
585
- style: styles.settingIcon
586
- }), /*#__PURE__*/_jsxs(View, {
587
- children: [/*#__PURE__*/_jsx(Text, {
588
- style: styles.settingLabel,
589
- children: "Verify Account"
590
- }), /*#__PURE__*/_jsx(Text, {
591
- style: styles.settingDescription,
592
- children: "Get a verified badge"
593
- })]
594
- })]
595
- }), /*#__PURE__*/_jsx(OxyIcon, {
596
- name: "chevron-forward",
597
- size: 16,
598
- color: "#ccc"
599
- })]
600
- })]
601
- })]
602
- })
603
- })]
604
- });
605
- };
606
- const styles = StyleSheet.create({
607
- container: {
608
- flex: 1,
609
- backgroundColor: '#f2f2f2'
610
- },
611
- header: {
612
- paddingHorizontal: 20,
613
- paddingVertical: 10,
614
- backgroundColor: '#fff',
615
- borderBottomWidth: 1,
616
- borderBottomColor: '#e0e0e0'
617
- },
618
- normalHeader: {
619
- flexDirection: 'row',
620
- justifyContent: 'space-between',
621
- alignItems: 'center'
622
- },
623
- editingHeader: {
624
- flexDirection: 'column'
625
- },
626
- editingHeaderTop: {
627
- flexDirection: 'row',
628
- justifyContent: 'space-between',
629
- alignItems: 'center',
630
- marginBottom: 16
631
- },
632
- editingHeaderBottom: {
633
- flexDirection: 'row',
634
- alignItems: 'center',
635
- justifyContent: 'flex-start'
636
- },
637
- headerTitle: {
638
- fontSize: 24,
639
- fontWeight: 'bold',
640
- color: '#000',
641
- fontFamily: fontFamilies.phuduBold
642
- },
643
- headerTitleWithIcon: {
644
- flexDirection: 'column',
645
- alignItems: 'flex-start',
646
- flex: 1,
647
- justifyContent: 'flex-start',
648
- maxWidth: '90%'
649
- },
650
- headerTitleLarge: {
651
- fontSize: 48,
652
- fontWeight: '800',
653
- color: '#000',
654
- fontFamily: fontFamilies.phuduExtraBold,
655
- textAlign: 'left'
656
- },
657
- headerIcon: {
658
- marginBottom: 2
659
- },
660
- cancelButton: {
661
- padding: 5
662
- },
663
- saveHeaderButton: {
664
- paddingHorizontal: 16,
665
- paddingVertical: 8,
666
- borderRadius: 20,
667
- minWidth: 60,
668
- alignItems: 'center',
669
- justifyContent: 'center'
670
- },
671
- saveIconButton: {
672
- padding: 5
673
- },
674
- saveButtonText: {
675
- color: '#fff',
676
- fontSize: 16,
677
- fontWeight: '600',
678
- fontFamily: fontFamilies.phuduSemiBold
679
- },
680
- content: {
681
- flex: 1,
682
- padding: 16
683
- },
684
- contentEditing: {
685
- flex: 1,
686
- padding: 0
687
- },
688
- section: {
689
- marginBottom: 24
690
- },
691
- sectionTitle: {
692
- fontSize: 16,
693
- fontWeight: '600',
694
- color: '#333',
695
- marginBottom: 12,
696
- fontFamily: fontFamilies.phuduSemiBold
697
- },
698
- settingItem: {
699
- backgroundColor: '#fff',
700
- padding: 16,
701
- flexDirection: 'row',
702
- alignItems: 'center',
703
- justifyContent: 'space-between',
704
- marginBottom: 2
705
- },
706
- firstSettingItem: {
707
- borderTopLeftRadius: 24,
708
- borderTopRightRadius: 24
709
- },
710
- lastSettingItem: {
711
- borderBottomLeftRadius: 24,
712
- borderBottomRightRadius: 24,
713
- marginBottom: 8
714
- },
715
- settingInfo: {
716
- flexDirection: 'row',
717
- alignItems: 'center',
718
- flex: 1
719
- },
720
- settingIcon: {
721
- marginRight: 12
722
- },
723
- settingLabel: {
724
- fontSize: 16,
725
- fontWeight: '500',
726
- color: '#333',
727
- marginBottom: 2
728
- },
729
- settingDescription: {
730
- fontSize: 14,
731
- color: '#666'
732
- },
733
- userIcon: {
734
- marginRight: 12
735
- },
736
- // Inline editing styles
737
- editingContainer: {
738
- flex: 1
739
- },
740
- editingActions: {
741
- flexDirection: 'row',
742
- alignItems: 'center'
743
- },
744
- editingButton: {
745
- padding: 8
746
- },
747
- editingButtonText: {
748
- fontSize: 16,
749
- fontWeight: '500'
750
- },
751
- inlineInput: {
752
- backgroundColor: '#f8f8f8',
753
- borderWidth: 1,
754
- borderColor: '#e0e0e0',
755
- borderRadius: 8,
756
- padding: 12,
757
- fontSize: 16,
758
- minHeight: 44
759
- },
760
- inlineTextArea: {
761
- backgroundColor: '#f8f8f8',
762
- borderWidth: 1,
763
- borderColor: '#e0e0e0',
764
- borderRadius: 8,
765
- padding: 12,
766
- fontSize: 16,
767
- minHeight: 100,
768
- textAlignVertical: 'top'
769
- },
770
- // Editing-only mode styles
771
- editingOnlyContainer: {
772
- flex: 1
773
- },
774
- editingFieldContainer: {
775
- backgroundColor: '#fff',
776
- padding: 16,
777
- flex: 1
778
- },
779
- editingFieldHeader: {
780
- marginBottom: 16
781
- },
782
- editingFieldTitleContainer: {
783
- flexDirection: 'row',
784
- alignItems: 'center'
785
- },
786
- editingFieldIcon: {
787
- marginRight: 12
788
- },
789
- editingFieldTitle: {
790
- fontSize: 20,
791
- fontWeight: '600',
792
- color: '#000'
793
- },
794
- editingFieldContent: {
795
- flex: 1
796
- },
797
- newValueSection: {
798
- flex: 1
799
- },
800
- editingFieldLabel: {
801
- fontSize: 16,
802
- fontWeight: '600',
803
- color: '#333',
804
- marginBottom: 12,
805
- fontFamily: fontFamilies.phuduSemiBold
806
- },
807
- editingFieldInput: {
808
- backgroundColor: '#fff',
809
- borderWidth: 2,
810
- borderColor: '#e0e0e0',
811
- borderRadius: 12,
812
- padding: 16,
813
- fontSize: 17,
814
- minHeight: 52,
815
- fontWeight: '400'
816
- },
817
- editingFieldTextArea: {
818
- backgroundColor: '#fff',
819
- borderWidth: 2,
820
- borderColor: '#e0e0e0',
821
- borderRadius: 12,
822
- padding: 16,
823
- fontSize: 17,
824
- minHeight: 120,
825
- textAlignVertical: 'top',
826
- fontWeight: '400'
827
- }
828
- });
829
- export default AccountSettingsScreen;
830
- //# sourceMappingURL=AccountSettingsScreen.js.map