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