@oxyhq/services 5.1.29 → 5.1.31

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 (73) hide show
  1. package/README.md +71 -24
  2. package/UI_COMPONENTS.md +48 -0
  3. package/lib/commonjs/core/index.js +17 -4
  4. package/lib/commonjs/core/index.js.map +1 -1
  5. package/lib/commonjs/index.js +0 -3
  6. package/lib/commonjs/index.js.map +1 -1
  7. package/lib/commonjs/node/index.js +52 -0
  8. package/lib/commonjs/node/index.js.map +1 -0
  9. package/lib/commonjs/ui/index.js +9 -1
  10. package/lib/commonjs/ui/index.js.map +1 -1
  11. package/lib/commonjs/ui/navigation/OxyRouter.js +5 -0
  12. package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -1
  13. package/lib/commonjs/ui/screens/AccountCenterScreen.js +6 -3
  14. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  15. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +638 -0
  16. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -0
  17. package/lib/module/core/index.js +17 -4
  18. package/lib/module/core/index.js.map +1 -1
  19. package/lib/module/index.js +0 -3
  20. package/lib/module/index.js.map +1 -1
  21. package/lib/module/node/index.js +20 -0
  22. package/lib/module/node/index.js.map +1 -0
  23. package/lib/module/ui/index.js +1 -0
  24. package/lib/module/ui/index.js.map +1 -1
  25. package/lib/module/ui/navigation/OxyRouter.js +5 -0
  26. package/lib/module/ui/navigation/OxyRouter.js.map +1 -1
  27. package/lib/module/ui/screens/AccountCenterScreen.js +6 -3
  28. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  29. package/lib/module/ui/screens/AccountSettingsScreen.js +632 -0
  30. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -0
  31. package/lib/typescript/__tests__/ui/screens/AccountSettingsScreen.test.d.ts +2 -0
  32. package/lib/typescript/__tests__/ui/screens/AccountSettingsScreen.test.d.ts.map +1 -0
  33. package/lib/typescript/core/index.d.ts.map +1 -1
  34. package/lib/typescript/index.d.ts +0 -3
  35. package/lib/typescript/index.d.ts.map +1 -1
  36. package/lib/typescript/node/index.d.ts +10 -0
  37. package/lib/typescript/node/index.d.ts.map +1 -0
  38. package/lib/typescript/ui/index.d.ts +1 -0
  39. package/lib/typescript/ui/index.d.ts.map +1 -1
  40. package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +1 -1
  41. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  42. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts +8 -0
  43. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -0
  44. package/package.json +5 -22
  45. package/src/__tests__/ui/screens/AccountSettingsScreen.test.tsx +112 -0
  46. package/src/core/index.ts +16 -4
  47. package/src/index.ts +0 -3
  48. package/src/node/index.ts +17 -0
  49. package/src/ui/index.ts +1 -0
  50. package/src/ui/navigation/OxyRouter.tsx +5 -0
  51. package/src/ui/screens/AccountCenterScreen.tsx +3 -2
  52. package/src/ui/screens/AccountSettingsScreen.tsx +616 -0
  53. package/lib/commonjs/backend.js +0 -44
  54. package/lib/commonjs/backend.js.map +0 -1
  55. package/lib/commonjs/core-only.js +0 -44
  56. package/lib/commonjs/core-only.js.map +0 -1
  57. package/lib/commonjs/test-backend.js +0 -21
  58. package/lib/commonjs/test-backend.js.map +0 -1
  59. package/lib/module/backend.js +0 -17
  60. package/lib/module/backend.js.map +0 -1
  61. package/lib/module/core-only.js +0 -17
  62. package/lib/module/core-only.js.map +0 -1
  63. package/lib/module/test-backend.js +0 -18
  64. package/lib/module/test-backend.js.map +0 -1
  65. package/lib/typescript/backend.d.ts +0 -9
  66. package/lib/typescript/backend.d.ts.map +0 -1
  67. package/lib/typescript/core-only.d.ts +0 -9
  68. package/lib/typescript/core-only.d.ts.map +0 -1
  69. package/lib/typescript/test-backend.d.ts +0 -8
  70. package/lib/typescript/test-backend.d.ts.map +0 -1
  71. package/src/backend.ts +0 -14
  72. package/src/core-only.ts +0 -14
  73. package/src/test-backend.ts +0 -17
@@ -0,0 +1,632 @@
1
+ "use strict";
2
+
3
+ import React, { useEffect, useState } from 'react';
4
+ import { View, Text, TextInput, TouchableOpacity, StyleSheet, ActivityIndicator, ScrollView, Alert, Switch } from 'react-native';
5
+ import { useOxy } from '../context/OxyContext';
6
+ import Avatar from '../components/Avatar';
7
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
+ const AccountSettingsScreen = ({
9
+ goBack,
10
+ theme,
11
+ activeTab = 'profile'
12
+ }) => {
13
+ const {
14
+ user,
15
+ oxyServices,
16
+ isLoading: authLoading
17
+ } = useOxy();
18
+ const [currentTab, setCurrentTab] = useState(activeTab);
19
+ const [isLoading, setIsLoading] = useState(false);
20
+ const [errorMessage, setErrorMessage] = useState('');
21
+ const [successMessage, setSuccessMessage] = useState('');
22
+
23
+ // Profile form state
24
+ const [username, setUsername] = useState('');
25
+ const [email, setEmail] = useState('');
26
+ const [bio, setBio] = useState('');
27
+ const [avatarUrl, setAvatarUrl] = useState('');
28
+
29
+ // Password form state
30
+ const [currentPassword, setCurrentPassword] = useState('');
31
+ const [newPassword, setNewPassword] = useState('');
32
+ const [confirmPassword, setConfirmPassword] = useState('');
33
+
34
+ // Notification preferences
35
+ const [emailNotifications, setEmailNotifications] = useState(true);
36
+ const [pushNotifications, setPushNotifications] = useState(true);
37
+
38
+ // Theme and styling
39
+ const isDarkTheme = theme === 'dark';
40
+ const textColor = isDarkTheme ? '#FFFFFF' : '#000000';
41
+ const backgroundColor = isDarkTheme ? '#121212' : '#FFFFFF';
42
+ const secondaryBackgroundColor = isDarkTheme ? '#222222' : '#F5F5F5';
43
+ const inputBackgroundColor = isDarkTheme ? '#333333' : '#F5F5F5';
44
+ const borderColor = isDarkTheme ? '#444444' : '#E0E0E0';
45
+ const primaryColor = '#0066CC';
46
+ const placeholderColor = isDarkTheme ? '#AAAAAA' : '#999999';
47
+
48
+ // Load user data
49
+ useEffect(() => {
50
+ if (user) {
51
+ setUsername(user.username || '');
52
+ setEmail(user.email || '');
53
+ setBio(user.bio || '');
54
+ setAvatarUrl(user.avatar?.url || '');
55
+ }
56
+ }, [user]);
57
+ const validateEmail = email => {
58
+ const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
59
+ return emailRegex.test(email);
60
+ };
61
+ const handleSaveProfile = async () => {
62
+ // Validate inputs
63
+ if (!username) {
64
+ setErrorMessage('Username is required');
65
+ return;
66
+ }
67
+ if (email && !validateEmail(email)) {
68
+ setErrorMessage('Please enter a valid email address');
69
+ return;
70
+ }
71
+ try {
72
+ setIsLoading(true);
73
+ setErrorMessage('');
74
+ setSuccessMessage('');
75
+
76
+ // Prepare updates object
77
+ const updates = {
78
+ username,
79
+ bio
80
+ };
81
+ if (email) {
82
+ updates.email = email;
83
+ }
84
+
85
+ // Only include avatar if it's been changed
86
+ if (avatarUrl !== user?.avatar?.url) {
87
+ updates.avatar = {
88
+ url: avatarUrl
89
+ };
90
+ }
91
+
92
+ // Call API to update user
93
+ await oxyServices.updateUser(user.id, updates);
94
+ setSuccessMessage('Profile updated successfully');
95
+ } catch (error) {
96
+ setErrorMessage(error.message || 'Failed to update profile');
97
+ } finally {
98
+ setIsLoading(false);
99
+ }
100
+ };
101
+ const handleChangePassword = async () => {
102
+ // Validate inputs
103
+ if (!currentPassword || !newPassword || !confirmPassword) {
104
+ setErrorMessage('Please fill in all password fields');
105
+ return;
106
+ }
107
+ if (newPassword !== confirmPassword) {
108
+ setErrorMessage('New passwords do not match');
109
+ return;
110
+ }
111
+ if (newPassword.length < 8) {
112
+ setErrorMessage('Password must be at least 8 characters long');
113
+ return;
114
+ }
115
+ try {
116
+ setIsLoading(true);
117
+ setErrorMessage('');
118
+ setSuccessMessage('');
119
+
120
+ // Call API to update password
121
+ await oxyServices.updateUser(user.id, {
122
+ currentPassword,
123
+ password: newPassword
124
+ });
125
+
126
+ // Clear form fields after successful update
127
+ setCurrentPassword('');
128
+ setNewPassword('');
129
+ setConfirmPassword('');
130
+ setSuccessMessage('Password updated successfully');
131
+ } catch (error) {
132
+ setErrorMessage(error.message || 'Failed to update password');
133
+ } finally {
134
+ setIsLoading(false);
135
+ }
136
+ };
137
+ const handleSaveNotifications = async () => {
138
+ try {
139
+ setIsLoading(true);
140
+ setErrorMessage('');
141
+ setSuccessMessage('');
142
+
143
+ // Call API to update notification preferences
144
+ await oxyServices.updateUser(user.id, {
145
+ notificationPreferences: {
146
+ email: emailNotifications,
147
+ push: pushNotifications
148
+ }
149
+ });
150
+ setSuccessMessage('Notification preferences updated successfully');
151
+ } catch (error) {
152
+ setErrorMessage(error.message || 'Failed to update notification preferences');
153
+ } finally {
154
+ setIsLoading(false);
155
+ }
156
+ };
157
+ const handleAvatarUpdate = () => {
158
+ // In a real app, this would open an image picker
159
+ // For now, we'll use a mock URL to demonstrate the concept
160
+ Alert.alert('Update Avatar', 'This would open an image picker in a real app. For now, we\'ll use a mock URL.', [{
161
+ text: 'Cancel',
162
+ style: 'cancel'
163
+ }, {
164
+ text: 'Use Mock URL',
165
+ onPress: () => {
166
+ const mockUrl = `https://ui-avatars.com/api/?name=${username}&background=random`;
167
+ setAvatarUrl(mockUrl);
168
+ }
169
+ }]);
170
+ };
171
+ if (authLoading || !user) {
172
+ return /*#__PURE__*/_jsx(View, {
173
+ style: [styles.container, {
174
+ backgroundColor,
175
+ justifyContent: 'center'
176
+ }],
177
+ children: /*#__PURE__*/_jsx(ActivityIndicator, {
178
+ size: "large",
179
+ color: primaryColor
180
+ })
181
+ });
182
+ }
183
+ const renderProfileTab = () => /*#__PURE__*/_jsxs(View, {
184
+ style: styles.tabContent,
185
+ children: [/*#__PURE__*/_jsxs(View, {
186
+ style: styles.avatarSection,
187
+ children: [/*#__PURE__*/_jsx(Avatar, {
188
+ uri: avatarUrl,
189
+ name: username,
190
+ size: 100,
191
+ theme: theme
192
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
193
+ style: [styles.changeAvatarButton, {
194
+ backgroundColor: primaryColor
195
+ }],
196
+ onPress: handleAvatarUpdate,
197
+ children: /*#__PURE__*/_jsx(Text, {
198
+ style: styles.changeAvatarText,
199
+ children: "Change Avatar"
200
+ })
201
+ })]
202
+ }), /*#__PURE__*/_jsxs(View, {
203
+ style: styles.inputContainer,
204
+ children: [/*#__PURE__*/_jsx(Text, {
205
+ style: [styles.label, {
206
+ color: textColor
207
+ }],
208
+ children: "Username"
209
+ }), /*#__PURE__*/_jsx(TextInput, {
210
+ style: [styles.input, {
211
+ backgroundColor: inputBackgroundColor,
212
+ borderColor,
213
+ color: textColor
214
+ }],
215
+ placeholder: "Enter your username",
216
+ placeholderTextColor: placeholderColor,
217
+ value: username,
218
+ onChangeText: setUsername,
219
+ testID: "username-input"
220
+ })]
221
+ }), /*#__PURE__*/_jsxs(View, {
222
+ style: styles.inputContainer,
223
+ children: [/*#__PURE__*/_jsx(Text, {
224
+ style: [styles.label, {
225
+ color: textColor
226
+ }],
227
+ children: "Email"
228
+ }), /*#__PURE__*/_jsx(TextInput, {
229
+ style: [styles.input, {
230
+ backgroundColor: inputBackgroundColor,
231
+ borderColor,
232
+ color: textColor
233
+ }],
234
+ placeholder: "Enter your email",
235
+ placeholderTextColor: placeholderColor,
236
+ value: email,
237
+ onChangeText: setEmail,
238
+ keyboardType: "email-address",
239
+ testID: "email-input"
240
+ })]
241
+ }), /*#__PURE__*/_jsxs(View, {
242
+ style: styles.inputContainer,
243
+ children: [/*#__PURE__*/_jsx(Text, {
244
+ style: [styles.label, {
245
+ color: textColor
246
+ }],
247
+ children: "Bio"
248
+ }), /*#__PURE__*/_jsx(TextInput, {
249
+ style: [styles.textArea, {
250
+ backgroundColor: inputBackgroundColor,
251
+ borderColor,
252
+ color: textColor
253
+ }],
254
+ placeholder: "Tell us about yourself",
255
+ placeholderTextColor: placeholderColor,
256
+ value: bio,
257
+ onChangeText: setBio,
258
+ multiline: true,
259
+ numberOfLines: 4,
260
+ testID: "bio-input"
261
+ })]
262
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
263
+ style: [styles.saveButton, {
264
+ backgroundColor: primaryColor,
265
+ opacity: isLoading ? 0.7 : 1
266
+ }],
267
+ onPress: handleSaveProfile,
268
+ disabled: isLoading,
269
+ testID: "save-profile-button",
270
+ children: isLoading ? /*#__PURE__*/_jsx(ActivityIndicator, {
271
+ color: "#FFFFFF",
272
+ size: "small"
273
+ }) : /*#__PURE__*/_jsx(Text, {
274
+ style: styles.saveButtonText,
275
+ children: "Save Profile"
276
+ })
277
+ })]
278
+ });
279
+ const renderPasswordTab = () => /*#__PURE__*/_jsxs(View, {
280
+ style: styles.tabContent,
281
+ children: [/*#__PURE__*/_jsxs(View, {
282
+ style: styles.inputContainer,
283
+ children: [/*#__PURE__*/_jsx(Text, {
284
+ style: [styles.label, {
285
+ color: textColor
286
+ }],
287
+ children: "Current Password"
288
+ }), /*#__PURE__*/_jsx(TextInput, {
289
+ style: [styles.input, {
290
+ backgroundColor: inputBackgroundColor,
291
+ borderColor,
292
+ color: textColor
293
+ }],
294
+ placeholder: "Enter your current password",
295
+ placeholderTextColor: placeholderColor,
296
+ value: currentPassword,
297
+ onChangeText: setCurrentPassword,
298
+ secureTextEntry: true,
299
+ testID: "current-password-input"
300
+ })]
301
+ }), /*#__PURE__*/_jsxs(View, {
302
+ style: styles.inputContainer,
303
+ children: [/*#__PURE__*/_jsx(Text, {
304
+ style: [styles.label, {
305
+ color: textColor
306
+ }],
307
+ children: "New Password"
308
+ }), /*#__PURE__*/_jsx(TextInput, {
309
+ style: [styles.input, {
310
+ backgroundColor: inputBackgroundColor,
311
+ borderColor,
312
+ color: textColor
313
+ }],
314
+ placeholder: "Enter your new password",
315
+ placeholderTextColor: placeholderColor,
316
+ value: newPassword,
317
+ onChangeText: setNewPassword,
318
+ secureTextEntry: true,
319
+ testID: "new-password-input"
320
+ }), /*#__PURE__*/_jsx(Text, {
321
+ style: [styles.passwordHint, {
322
+ color: isDarkTheme ? '#AAAAAA' : '#666666'
323
+ }],
324
+ children: "Password must be at least 8 characters long"
325
+ })]
326
+ }), /*#__PURE__*/_jsxs(View, {
327
+ style: styles.inputContainer,
328
+ children: [/*#__PURE__*/_jsx(Text, {
329
+ style: [styles.label, {
330
+ color: textColor
331
+ }],
332
+ children: "Confirm New Password"
333
+ }), /*#__PURE__*/_jsx(TextInput, {
334
+ style: [styles.input, {
335
+ backgroundColor: inputBackgroundColor,
336
+ borderColor,
337
+ color: textColor
338
+ }],
339
+ placeholder: "Confirm your new password",
340
+ placeholderTextColor: placeholderColor,
341
+ value: confirmPassword,
342
+ onChangeText: setConfirmPassword,
343
+ secureTextEntry: true,
344
+ testID: "confirm-password-input"
345
+ })]
346
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
347
+ style: [styles.saveButton, {
348
+ backgroundColor: primaryColor,
349
+ opacity: isLoading ? 0.7 : 1
350
+ }],
351
+ onPress: handleChangePassword,
352
+ disabled: isLoading,
353
+ testID: "change-password-button",
354
+ children: isLoading ? /*#__PURE__*/_jsx(ActivityIndicator, {
355
+ color: "#FFFFFF",
356
+ size: "small"
357
+ }) : /*#__PURE__*/_jsx(Text, {
358
+ style: styles.saveButtonText,
359
+ children: "Change Password"
360
+ })
361
+ })]
362
+ });
363
+ const renderNotificationsTab = () => /*#__PURE__*/_jsxs(View, {
364
+ style: styles.tabContent,
365
+ children: [/*#__PURE__*/_jsxs(View, {
366
+ style: styles.settingRow,
367
+ children: [/*#__PURE__*/_jsx(Text, {
368
+ style: [styles.settingLabel, {
369
+ color: textColor
370
+ }],
371
+ children: "Email Notifications"
372
+ }), /*#__PURE__*/_jsx(Switch, {
373
+ value: emailNotifications,
374
+ onValueChange: setEmailNotifications,
375
+ trackColor: {
376
+ false: '#767577',
377
+ true: primaryColor
378
+ },
379
+ thumbColor: "#f4f3f4",
380
+ testID: "email-notifications-switch"
381
+ })]
382
+ }), /*#__PURE__*/_jsxs(View, {
383
+ style: styles.settingRow,
384
+ children: [/*#__PURE__*/_jsx(Text, {
385
+ style: [styles.settingLabel, {
386
+ color: textColor
387
+ }],
388
+ children: "Push Notifications"
389
+ }), /*#__PURE__*/_jsx(Switch, {
390
+ value: pushNotifications,
391
+ onValueChange: setPushNotifications,
392
+ trackColor: {
393
+ false: '#767577',
394
+ true: primaryColor
395
+ },
396
+ thumbColor: "#f4f3f4",
397
+ testID: "push-notifications-switch"
398
+ })]
399
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
400
+ style: [styles.saveButton, {
401
+ backgroundColor: primaryColor,
402
+ opacity: isLoading ? 0.7 : 1
403
+ }],
404
+ onPress: handleSaveNotifications,
405
+ disabled: isLoading,
406
+ testID: "save-notifications-button",
407
+ children: isLoading ? /*#__PURE__*/_jsx(ActivityIndicator, {
408
+ color: "#FFFFFF",
409
+ size: "small"
410
+ }) : /*#__PURE__*/_jsx(Text, {
411
+ style: styles.saveButtonText,
412
+ children: "Save Preferences"
413
+ })
414
+ })]
415
+ });
416
+ return /*#__PURE__*/_jsx(View, {
417
+ style: [styles.container, {
418
+ backgroundColor
419
+ }],
420
+ children: /*#__PURE__*/_jsxs(ScrollView, {
421
+ style: styles.scrollView,
422
+ contentContainerStyle: styles.scrollContainer,
423
+ children: [/*#__PURE__*/_jsxs(View, {
424
+ style: styles.header,
425
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
426
+ style: styles.backButton,
427
+ onPress: goBack,
428
+ children: /*#__PURE__*/_jsx(Text, {
429
+ style: [styles.backButtonText, {
430
+ color: primaryColor
431
+ }],
432
+ children: "Back"
433
+ })
434
+ }), /*#__PURE__*/_jsx(Text, {
435
+ style: [styles.title, {
436
+ color: textColor
437
+ }],
438
+ children: "Account Settings"
439
+ }), /*#__PURE__*/_jsx(View, {
440
+ style: styles.backButtonPlaceholder
441
+ })]
442
+ }), /*#__PURE__*/_jsxs(View, {
443
+ style: [styles.tabsContainer, {
444
+ borderColor
445
+ }],
446
+ children: [/*#__PURE__*/_jsx(TouchableOpacity, {
447
+ style: [styles.tabButton, currentTab === 'profile' && [styles.activeTabButton, {
448
+ borderColor: primaryColor
449
+ }]],
450
+ onPress: () => setCurrentTab('profile'),
451
+ children: /*#__PURE__*/_jsx(Text, {
452
+ style: [styles.tabButtonText, {
453
+ color: currentTab === 'profile' ? primaryColor : textColor
454
+ }],
455
+ children: "Profile"
456
+ })
457
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
458
+ style: [styles.tabButton, currentTab === 'password' && [styles.activeTabButton, {
459
+ borderColor: primaryColor
460
+ }]],
461
+ onPress: () => setCurrentTab('password'),
462
+ children: /*#__PURE__*/_jsx(Text, {
463
+ style: [styles.tabButtonText, {
464
+ color: currentTab === 'password' ? primaryColor : textColor
465
+ }],
466
+ children: "Password"
467
+ })
468
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
469
+ style: [styles.tabButton, currentTab === 'notifications' && [styles.activeTabButton, {
470
+ borderColor: primaryColor
471
+ }]],
472
+ onPress: () => setCurrentTab('notifications'),
473
+ children: /*#__PURE__*/_jsx(Text, {
474
+ style: [styles.tabButtonText, {
475
+ color: currentTab === 'notifications' ? primaryColor : textColor
476
+ }],
477
+ children: "Notifications"
478
+ })
479
+ })]
480
+ }), errorMessage ? /*#__PURE__*/_jsx(View, {
481
+ style: styles.errorContainer,
482
+ children: /*#__PURE__*/_jsx(Text, {
483
+ style: styles.errorText,
484
+ children: errorMessage
485
+ })
486
+ }) : null, successMessage ? /*#__PURE__*/_jsx(View, {
487
+ style: styles.successContainer,
488
+ children: /*#__PURE__*/_jsx(Text, {
489
+ style: styles.successText,
490
+ children: successMessage
491
+ })
492
+ }) : null, currentTab === 'profile' && renderProfileTab(), currentTab === 'password' && renderPasswordTab(), currentTab === 'notifications' && renderNotificationsTab()]
493
+ })
494
+ });
495
+ };
496
+ const styles = StyleSheet.create({
497
+ container: {
498
+ flex: 1
499
+ },
500
+ scrollView: {
501
+ flex: 1
502
+ },
503
+ scrollContainer: {
504
+ padding: 20
505
+ },
506
+ header: {
507
+ flexDirection: 'row',
508
+ justifyContent: 'space-between',
509
+ alignItems: 'center',
510
+ marginBottom: 24
511
+ },
512
+ title: {
513
+ fontSize: 24,
514
+ fontWeight: 'bold'
515
+ },
516
+ backButton: {
517
+ padding: 10
518
+ },
519
+ backButtonText: {
520
+ fontSize: 16,
521
+ fontWeight: '600'
522
+ },
523
+ backButtonPlaceholder: {
524
+ width: 40
525
+ },
526
+ tabsContainer: {
527
+ flexDirection: 'row',
528
+ marginBottom: 24,
529
+ borderBottomWidth: 1
530
+ },
531
+ tabButton: {
532
+ flex: 1,
533
+ alignItems: 'center',
534
+ paddingVertical: 12
535
+ },
536
+ activeTabButton: {
537
+ borderBottomWidth: 2
538
+ },
539
+ tabButtonText: {
540
+ fontSize: 16,
541
+ fontWeight: '500'
542
+ },
543
+ tabContent: {
544
+ marginBottom: 24
545
+ },
546
+ avatarSection: {
547
+ alignItems: 'center',
548
+ marginBottom: 24
549
+ },
550
+ changeAvatarButton: {
551
+ marginTop: 12,
552
+ paddingVertical: 8,
553
+ paddingHorizontal: 16,
554
+ borderRadius: 20
555
+ },
556
+ changeAvatarText: {
557
+ color: '#FFFFFF',
558
+ fontWeight: '600'
559
+ },
560
+ inputContainer: {
561
+ marginBottom: 16
562
+ },
563
+ label: {
564
+ fontSize: 16,
565
+ marginBottom: 8
566
+ },
567
+ input: {
568
+ height: 50,
569
+ borderRadius: 8,
570
+ borderWidth: 1,
571
+ paddingHorizontal: 12,
572
+ fontSize: 16
573
+ },
574
+ textArea: {
575
+ minHeight: 100,
576
+ borderRadius: 8,
577
+ borderWidth: 1,
578
+ paddingHorizontal: 12,
579
+ paddingTop: 12,
580
+ fontSize: 16,
581
+ textAlignVertical: 'top'
582
+ },
583
+ passwordHint: {
584
+ fontSize: 14,
585
+ marginTop: 4
586
+ },
587
+ saveButton: {
588
+ height: 50,
589
+ borderRadius: 25,
590
+ alignItems: 'center',
591
+ justifyContent: 'center',
592
+ marginTop: 16
593
+ },
594
+ saveButtonText: {
595
+ color: '#FFFFFF',
596
+ fontSize: 16,
597
+ fontWeight: '600'
598
+ },
599
+ settingRow: {
600
+ flexDirection: 'row',
601
+ justifyContent: 'space-between',
602
+ alignItems: 'center',
603
+ paddingVertical: 16,
604
+ borderBottomWidth: 1,
605
+ borderBottomColor: '#E0E0E0'
606
+ },
607
+ settingLabel: {
608
+ fontSize: 16
609
+ },
610
+ errorContainer: {
611
+ backgroundColor: '#FFEBEE',
612
+ padding: 16,
613
+ borderRadius: 8,
614
+ marginBottom: 16
615
+ },
616
+ errorText: {
617
+ color: '#D32F2F',
618
+ fontSize: 14
619
+ },
620
+ successContainer: {
621
+ backgroundColor: '#E8F5E9',
622
+ padding: 16,
623
+ borderRadius: 8,
624
+ marginBottom: 16
625
+ },
626
+ successText: {
627
+ color: '#2E7D32',
628
+ fontSize: 14
629
+ }
630
+ });
631
+ export default AccountSettingsScreen;
632
+ //# sourceMappingURL=AccountSettingsScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useEffect","useState","View","Text","TextInput","TouchableOpacity","StyleSheet","ActivityIndicator","ScrollView","Alert","Switch","useOxy","Avatar","jsx","_jsx","jsxs","_jsxs","AccountSettingsScreen","goBack","theme","activeTab","user","oxyServices","isLoading","authLoading","currentTab","setCurrentTab","setIsLoading","errorMessage","setErrorMessage","successMessage","setSuccessMessage","username","setUsername","email","setEmail","bio","setBio","avatarUrl","setAvatarUrl","currentPassword","setCurrentPassword","newPassword","setNewPassword","confirmPassword","setConfirmPassword","emailNotifications","setEmailNotifications","pushNotifications","setPushNotifications","isDarkTheme","textColor","backgroundColor","secondaryBackgroundColor","inputBackgroundColor","borderColor","primaryColor","placeholderColor","avatar","url","validateEmail","emailRegex","test","handleSaveProfile","updates","updateUser","id","error","message","handleChangePassword","length","password","handleSaveNotifications","notificationPreferences","push","handleAvatarUpdate","alert","text","style","onPress","mockUrl","styles","container","justifyContent","children","size","color","renderProfileTab","tabContent","avatarSection","uri","name","changeAvatarButton","changeAvatarText","inputContainer","label","input","placeholder","placeholderTextColor","value","onChangeText","testID","keyboardType","textArea","multiline","numberOfLines","saveButton","opacity","disabled","saveButtonText","renderPasswordTab","secureTextEntry","passwordHint","renderNotificationsTab","settingRow","settingLabel","onValueChange","trackColor","false","true","thumbColor","scrollView","contentContainerStyle","scrollContainer","header","backButton","backButtonText","title","backButtonPlaceholder","tabsContainer","tabButton","activeTabButton","tabButtonText","errorContainer","errorText","successContainer","successText","create","flex","padding","flexDirection","alignItems","marginBottom","fontSize","fontWeight","width","borderBottomWidth","paddingVertical","marginTop","paddingHorizontal","borderRadius","height","borderWidth","minHeight","paddingTop","textAlignVertical","borderBottomColor"],"sourceRoot":"../../../../src","sources":["ui/screens/AccountSettingsScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AccountSettingsScreen.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountSettingsScreen.test.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/ui/screens/AccountSettingsScreen.test.tsx"],"names":[],"mappings":""}