@oxyhq/services 14.0.1 → 15.0.0

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 (262) hide show
  1. package/lib/commonjs/index.js +0 -17
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/SignInAccountChooser.js +189 -0
  4. package/lib/commonjs/ui/components/SignInAccountChooser.js.map +1 -0
  5. package/lib/commonjs/ui/components/SignInModal.js +350 -131
  6. package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
  7. package/lib/commonjs/ui/context/OxyContext.js +340 -1547
  8. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  9. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +61 -64
  10. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
  11. package/lib/commonjs/ui/hooks/useAuth.js +14 -33
  12. package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
  13. package/lib/commonjs/ui/hooks/usePasswordSignIn.js +170 -0
  14. package/lib/commonjs/ui/hooks/usePasswordSignIn.js.map +1 -0
  15. package/lib/commonjs/ui/hooks/useProfileEditing.js +2 -5
  16. package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
  17. package/lib/commonjs/ui/hooks/useSessionManagement.js +2 -2
  18. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
  19. package/lib/commonjs/ui/navigation/routes.js +1 -0
  20. package/lib/commonjs/ui/navigation/routes.js.map +1 -1
  21. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +93 -68
  22. package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
  23. package/lib/commonjs/ui/screens/EditProfileScreen.js +187 -0
  24. package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -0
  25. package/lib/commonjs/ui/screens/ManageAccountScreen.js +3 -7
  26. package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
  27. package/lib/commonjs/ui/screens/OxyAuthScreen.js +231 -95
  28. package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
  29. package/lib/commonjs/ui/screens/ProfileScreen.js +15 -2
  30. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  31. package/lib/commonjs/ui/screens/linkFormat.js +38 -0
  32. package/lib/commonjs/ui/screens/linkFormat.js.map +1 -0
  33. package/lib/commonjs/ui/session/authStore.js +146 -0
  34. package/lib/commonjs/ui/session/authStore.js.map +1 -0
  35. package/lib/commonjs/ui/session/createSessionClient.js +25 -10
  36. package/lib/commonjs/ui/session/createSessionClient.js.map +1 -1
  37. package/lib/commonjs/ui/session/index.js +13 -7
  38. package/lib/commonjs/ui/session/index.js.map +1 -1
  39. package/lib/commonjs/ui/session/tokenTransport.js +19 -31
  40. package/lib/commonjs/ui/session/tokenTransport.js.map +1 -1
  41. package/lib/commonjs/ui/utils/isWebBrowser.js +13 -0
  42. package/lib/commonjs/ui/utils/isWebBrowser.js.map +1 -0
  43. package/lib/commonjs/utils/deviceFlowSignIn.js +13 -16
  44. package/lib/commonjs/utils/deviceFlowSignIn.js.map +1 -1
  45. package/lib/module/index.js +0 -5
  46. package/lib/module/index.js.map +1 -1
  47. package/lib/module/ui/components/SignInAccountChooser.js +183 -0
  48. package/lib/module/ui/components/SignInAccountChooser.js.map +1 -0
  49. package/lib/module/ui/components/SignInModal.js +352 -134
  50. package/lib/module/ui/components/SignInModal.js.map +1 -1
  51. package/lib/module/ui/context/OxyContext.js +342 -1551
  52. package/lib/module/ui/context/OxyContext.js.map +1 -1
  53. package/lib/module/ui/context/hooks/useAuthOperations.js +60 -63
  54. package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
  55. package/lib/module/ui/hooks/useAuth.js +14 -33
  56. package/lib/module/ui/hooks/useAuth.js.map +1 -1
  57. package/lib/module/ui/hooks/usePasswordSignIn.js +165 -0
  58. package/lib/module/ui/hooks/usePasswordSignIn.js.map +1 -0
  59. package/lib/module/ui/hooks/useProfileEditing.js +2 -5
  60. package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
  61. package/lib/module/ui/hooks/useSessionManagement.js +1 -1
  62. package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
  63. package/lib/module/ui/navigation/routes.js +1 -0
  64. package/lib/module/ui/navigation/routes.js.map +1 -1
  65. package/lib/module/ui/screens/EditProfileFieldScreen.js +91 -66
  66. package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
  67. package/lib/module/ui/screens/EditProfileScreen.js +182 -0
  68. package/lib/module/ui/screens/EditProfileScreen.js.map +1 -0
  69. package/lib/module/ui/screens/ManageAccountScreen.js +3 -7
  70. package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
  71. package/lib/module/ui/screens/OxyAuthScreen.js +233 -97
  72. package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
  73. package/lib/module/ui/screens/ProfileScreen.js +15 -2
  74. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  75. package/lib/module/ui/screens/linkFormat.js +31 -0
  76. package/lib/module/ui/screens/linkFormat.js.map +1 -0
  77. package/lib/module/ui/session/authStore.js +143 -0
  78. package/lib/module/ui/session/authStore.js.map +1 -0
  79. package/lib/module/ui/session/createSessionClient.js +25 -10
  80. package/lib/module/ui/session/createSessionClient.js.map +1 -1
  81. package/lib/module/ui/session/index.js +9 -9
  82. package/lib/module/ui/session/index.js.map +1 -1
  83. package/lib/module/ui/session/tokenTransport.js +20 -33
  84. package/lib/module/ui/session/tokenTransport.js.map +1 -1
  85. package/lib/module/ui/utils/isWebBrowser.js +11 -0
  86. package/lib/module/ui/utils/isWebBrowser.js.map +1 -0
  87. package/lib/module/utils/deviceFlowSignIn.js +14 -17
  88. package/lib/module/utils/deviceFlowSignIn.js.map +1 -1
  89. package/lib/typescript/commonjs/index.d.ts +0 -1
  90. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  91. package/lib/typescript/commonjs/ui/components/SignInAccountChooser.d.ts +29 -0
  92. package/lib/typescript/commonjs/ui/components/SignInAccountChooser.d.ts.map +1 -0
  93. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts +15 -10
  94. package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
  95. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +36 -42
  96. package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
  97. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +18 -23
  98. package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  99. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +0 -2
  100. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  101. package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
  102. package/lib/typescript/commonjs/ui/hooks/usePasswordSignIn.d.ts +31 -0
  103. package/lib/typescript/commonjs/ui/hooks/usePasswordSignIn.d.ts.map +1 -0
  104. package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts +0 -1
  105. package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts.map +1 -1
  106. package/lib/typescript/commonjs/ui/navigation/routes.d.ts +1 -1
  107. package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
  108. package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  109. package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts +14 -0
  110. package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts.map +1 -0
  111. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts +1 -1
  112. package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  113. package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts +13 -12
  114. package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
  116. package/lib/typescript/commonjs/ui/screens/linkFormat.d.ts +23 -0
  117. package/lib/typescript/commonjs/ui/screens/linkFormat.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/ui/session/authStore.d.ts +33 -0
  119. package/lib/typescript/commonjs/ui/session/authStore.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts +20 -9
  121. package/lib/typescript/commonjs/ui/session/createSessionClient.d.ts.map +1 -1
  122. package/lib/typescript/commonjs/ui/session/index.d.ts +9 -9
  123. package/lib/typescript/commonjs/ui/session/index.d.ts.map +1 -1
  124. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts +13 -19
  125. package/lib/typescript/commonjs/ui/session/tokenTransport.d.ts.map +1 -1
  126. package/lib/typescript/commonjs/ui/utils/isWebBrowser.d.ts +9 -0
  127. package/lib/typescript/commonjs/ui/utils/isWebBrowser.d.ts.map +1 -0
  128. package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts +15 -13
  129. package/lib/typescript/commonjs/utils/deviceFlowSignIn.d.ts.map +1 -1
  130. package/lib/typescript/module/index.d.ts +0 -1
  131. package/lib/typescript/module/index.d.ts.map +1 -1
  132. package/lib/typescript/module/ui/components/SignInAccountChooser.d.ts +29 -0
  133. package/lib/typescript/module/ui/components/SignInAccountChooser.d.ts.map +1 -0
  134. package/lib/typescript/module/ui/components/SignInModal.d.ts +15 -10
  135. package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
  136. package/lib/typescript/module/ui/context/OxyContext.d.ts +36 -42
  137. package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
  138. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +18 -23
  139. package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
  140. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +0 -2
  141. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  142. package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
  143. package/lib/typescript/module/ui/hooks/usePasswordSignIn.d.ts +31 -0
  144. package/lib/typescript/module/ui/hooks/usePasswordSignIn.d.ts.map +1 -0
  145. package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts +0 -1
  146. package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts.map +1 -1
  147. package/lib/typescript/module/ui/navigation/routes.d.ts +1 -1
  148. package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
  149. package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
  150. package/lib/typescript/module/ui/screens/EditProfileScreen.d.ts +14 -0
  151. package/lib/typescript/module/ui/screens/EditProfileScreen.d.ts.map +1 -0
  152. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +1 -1
  153. package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
  154. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts +13 -12
  155. package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +1 -1
  156. package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
  157. package/lib/typescript/module/ui/screens/linkFormat.d.ts +23 -0
  158. package/lib/typescript/module/ui/screens/linkFormat.d.ts.map +1 -0
  159. package/lib/typescript/module/ui/session/authStore.d.ts +33 -0
  160. package/lib/typescript/module/ui/session/authStore.d.ts.map +1 -0
  161. package/lib/typescript/module/ui/session/createSessionClient.d.ts +20 -9
  162. package/lib/typescript/module/ui/session/createSessionClient.d.ts.map +1 -1
  163. package/lib/typescript/module/ui/session/index.d.ts +9 -9
  164. package/lib/typescript/module/ui/session/index.d.ts.map +1 -1
  165. package/lib/typescript/module/ui/session/tokenTransport.d.ts +13 -19
  166. package/lib/typescript/module/ui/session/tokenTransport.d.ts.map +1 -1
  167. package/lib/typescript/module/ui/utils/isWebBrowser.d.ts +9 -0
  168. package/lib/typescript/module/ui/utils/isWebBrowser.d.ts.map +1 -0
  169. package/lib/typescript/module/utils/deviceFlowSignIn.d.ts +15 -13
  170. package/lib/typescript/module/utils/deviceFlowSignIn.d.ts.map +1 -1
  171. package/package.json +4 -4
  172. package/src/index.ts +0 -4
  173. package/src/ui/components/SignInAccountChooser.tsx +162 -0
  174. package/src/ui/components/SignInModal.tsx +309 -139
  175. package/src/ui/context/OxyContext.tsx +532 -1785
  176. package/src/ui/context/hooks/useAuthOperations.ts +65 -76
  177. package/src/ui/hooks/useAuth.ts +14 -35
  178. package/src/ui/hooks/usePasswordSignIn.ts +207 -0
  179. package/src/ui/hooks/useProfileEditing.ts +2 -8
  180. package/src/ui/hooks/useSessionManagement.ts +1 -1
  181. package/src/ui/navigation/routes.ts +2 -0
  182. package/src/ui/screens/EditProfileFieldScreen.tsx +102 -66
  183. package/src/ui/screens/EditProfileScreen.tsx +155 -0
  184. package/src/ui/screens/ManageAccountScreen.tsx +3 -7
  185. package/src/ui/screens/OxyAuthScreen.tsx +259 -112
  186. package/src/ui/screens/ProfileScreen.tsx +15 -2
  187. package/src/ui/screens/__tests__/linkFormat.test.ts +73 -0
  188. package/src/ui/screens/linkFormat.ts +37 -0
  189. package/src/ui/session/__tests__/createSessionClient.test.ts +49 -6
  190. package/src/ui/session/__tests__/tokenTransport.test.ts +37 -49
  191. package/src/ui/session/authStore.ts +164 -0
  192. package/src/ui/session/createSessionClient.ts +32 -11
  193. package/src/ui/session/index.ts +10 -9
  194. package/src/ui/session/tokenTransport.ts +26 -36
  195. package/src/ui/utils/isWebBrowser.ts +8 -0
  196. package/src/utils/__tests__/deviceFlowSignIn.test.ts +50 -131
  197. package/src/utils/deviceFlowSignIn.ts +19 -26
  198. package/lib/commonjs/ui/context/inSessionTokenRefresh.js +0 -243
  199. package/lib/commonjs/ui/context/inSessionTokenRefresh.js.map +0 -1
  200. package/lib/commonjs/ui/context/silentSessionRestore.js +0 -56
  201. package/lib/commonjs/ui/context/silentSessionRestore.js.map +0 -1
  202. package/lib/commonjs/ui/hooks/useWebSSO.js +0 -28
  203. package/lib/commonjs/ui/hooks/useWebSSO.js.map +0 -1
  204. package/lib/commonjs/ui/session/projectSessionState.js +0 -86
  205. package/lib/commonjs/ui/session/projectSessionState.js.map +0 -1
  206. package/lib/commonjs/ui/session/sessionClientHost.js +0 -30
  207. package/lib/commonjs/ui/session/sessionClientHost.js.map +0 -1
  208. package/lib/commonjs/ui/utils/activeAuthuser.js +0 -142
  209. package/lib/commonjs/ui/utils/activeAuthuser.js.map +0 -1
  210. package/lib/commonjs/utils/crossApex.js +0 -74
  211. package/lib/commonjs/utils/crossApex.js.map +0 -1
  212. package/lib/module/ui/context/inSessionTokenRefresh.js +0 -238
  213. package/lib/module/ui/context/inSessionTokenRefresh.js.map +0 -1
  214. package/lib/module/ui/context/silentSessionRestore.js +0 -53
  215. package/lib/module/ui/context/silentSessionRestore.js.map +0 -1
  216. package/lib/module/ui/hooks/useWebSSO.js +0 -24
  217. package/lib/module/ui/hooks/useWebSSO.js.map +0 -1
  218. package/lib/module/ui/session/projectSessionState.js +0 -79
  219. package/lib/module/ui/session/projectSessionState.js.map +0 -1
  220. package/lib/module/ui/session/sessionClientHost.js +0 -26
  221. package/lib/module/ui/session/sessionClientHost.js.map +0 -1
  222. package/lib/module/ui/utils/activeAuthuser.js +0 -134
  223. package/lib/module/ui/utils/activeAuthuser.js.map +0 -1
  224. package/lib/module/utils/crossApex.js +0 -69
  225. package/lib/module/utils/crossApex.js.map +0 -1
  226. package/lib/typescript/commonjs/ui/context/inSessionTokenRefresh.d.ts +0 -106
  227. package/lib/typescript/commonjs/ui/context/inSessionTokenRefresh.d.ts.map +0 -1
  228. package/lib/typescript/commonjs/ui/context/silentSessionRestore.d.ts +0 -36
  229. package/lib/typescript/commonjs/ui/context/silentSessionRestore.d.ts.map +0 -1
  230. package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts +0 -19
  231. package/lib/typescript/commonjs/ui/hooks/useWebSSO.d.ts.map +0 -1
  232. package/lib/typescript/commonjs/ui/session/projectSessionState.d.ts +0 -45
  233. package/lib/typescript/commonjs/ui/session/projectSessionState.d.ts.map +0 -1
  234. package/lib/typescript/commonjs/ui/session/sessionClientHost.d.ts +0 -14
  235. package/lib/typescript/commonjs/ui/session/sessionClientHost.d.ts.map +0 -1
  236. package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts +0 -67
  237. package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts.map +0 -1
  238. package/lib/typescript/commonjs/utils/crossApex.d.ts +0 -55
  239. package/lib/typescript/commonjs/utils/crossApex.d.ts.map +0 -1
  240. package/lib/typescript/module/ui/context/inSessionTokenRefresh.d.ts +0 -106
  241. package/lib/typescript/module/ui/context/inSessionTokenRefresh.d.ts.map +0 -1
  242. package/lib/typescript/module/ui/context/silentSessionRestore.d.ts +0 -36
  243. package/lib/typescript/module/ui/context/silentSessionRestore.d.ts.map +0 -1
  244. package/lib/typescript/module/ui/hooks/useWebSSO.d.ts +0 -19
  245. package/lib/typescript/module/ui/hooks/useWebSSO.d.ts.map +0 -1
  246. package/lib/typescript/module/ui/session/projectSessionState.d.ts +0 -45
  247. package/lib/typescript/module/ui/session/projectSessionState.d.ts.map +0 -1
  248. package/lib/typescript/module/ui/session/sessionClientHost.d.ts +0 -14
  249. package/lib/typescript/module/ui/session/sessionClientHost.d.ts.map +0 -1
  250. package/lib/typescript/module/ui/utils/activeAuthuser.d.ts +0 -67
  251. package/lib/typescript/module/ui/utils/activeAuthuser.d.ts.map +0 -1
  252. package/lib/typescript/module/utils/crossApex.d.ts +0 -55
  253. package/lib/typescript/module/utils/crossApex.d.ts.map +0 -1
  254. package/src/ui/context/inSessionTokenRefresh.ts +0 -264
  255. package/src/ui/context/silentSessionRestore.ts +0 -53
  256. package/src/ui/hooks/useWebSSO.ts +0 -23
  257. package/src/ui/session/__tests__/projectSessionState.test.ts +0 -114
  258. package/src/ui/session/__tests__/sessionClientHost.test.ts +0 -43
  259. package/src/ui/session/projectSessionState.ts +0 -85
  260. package/src/ui/session/sessionClientHost.ts +0 -27
  261. package/src/ui/utils/activeAuthuser.ts +0 -142
  262. package/src/utils/crossApex.ts +0 -75
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.usePasswordSignIn = usePasswordSignIn;
7
+ var _react = require("react");
8
+ var _OxyContext = require("../context/OxyContext.js");
9
+ var _errorHandlers = require("../utils/errorHandlers.js");
10
+ /**
11
+ * `usePasswordSignIn` — the first-party password sign-in state machine.
12
+ *
13
+ * Drives the in-app "Sign in with Oxy" password flow shared by the web
14
+ * `SignInModal` and the native `OxyAuthScreen`: identifier → password → optional
15
+ * two-factor. It is a thin UI state machine over the context methods
16
+ * `signInWithPassword` + `completeTwoFactorSignIn` (which own the network call,
17
+ * the persisted-refresh commit, and the device-set registration) — so both
18
+ * surfaces present an identical flow without re-implementing any transport.
19
+ *
20
+ * On a committed session `onSignedIn` fires (the modal/screen closes); the
21
+ * device-first cold boot / SessionClient projection then drive the app into the
22
+ * authenticated state.
23
+ */
24
+
25
+ function usePasswordSignIn(options = {}) {
26
+ const {
27
+ signInWithPassword,
28
+ completeTwoFactorSignIn
29
+ } = (0, _OxyContext.useOxy)();
30
+ const {
31
+ onSignedIn
32
+ } = options;
33
+ const [step, setStep] = (0, _react.useState)('identifier');
34
+ const [identifier, setIdentifier] = (0, _react.useState)('');
35
+ const [password, setPassword] = (0, _react.useState)('');
36
+ const [code, setCode] = (0, _react.useState)('');
37
+ const [useBackupCode, setUseBackupCode] = (0, _react.useState)(false);
38
+ const [error, setError] = (0, _react.useState)(null);
39
+ const [isSubmitting, setIsSubmitting] = (0, _react.useState)(false);
40
+ const [loginToken, setLoginToken] = (0, _react.useState)(null);
41
+
42
+ // Synchronous in-flight guard. `isSubmitting` state drives the UI, but a rapid
43
+ // double-tap fires both handlers in the SAME tick — before React re-renders —
44
+ // so a state read would still see `false` on the second call and double-fire
45
+ // the network request (rate-limit + race). This ref is set/checked
46
+ // synchronously, so the second call is a true no-op.
47
+ const submittingRef = (0, _react.useRef)(false);
48
+ const surfaceError = (0, _react.useCallback)((err, defaultMessage) => {
49
+ setError((0, _errorHandlers.handleAuthError)(err, {
50
+ defaultMessage,
51
+ code: 'PASSWORD_SIGN_IN_ERROR'
52
+ }));
53
+ }, []);
54
+ const submitIdentifier = (0, _react.useCallback)(() => {
55
+ if (!identifier.trim()) {
56
+ setError('Enter your username or email');
57
+ return;
58
+ }
59
+ setError(null);
60
+ setStep('password');
61
+ }, [identifier]);
62
+ const submitPassword = (0, _react.useCallback)(async () => {
63
+ // A second call while one is already in flight is a no-op (double-tap guard).
64
+ if (submittingRef.current) {
65
+ return;
66
+ }
67
+ if (!password) {
68
+ setError('Enter your password');
69
+ return;
70
+ }
71
+ setError(null);
72
+ submittingRef.current = true;
73
+ setIsSubmitting(true);
74
+ try {
75
+ const result = await signInWithPassword(identifier.trim(), password);
76
+ if (result.status === '2fa_required') {
77
+ setLoginToken(result.loginToken);
78
+ setCode('');
79
+ setUseBackupCode(false);
80
+ setStep('twoFactor');
81
+ return;
82
+ }
83
+ onSignedIn?.();
84
+ } catch (err) {
85
+ surfaceError(err, 'Sign in failed');
86
+ } finally {
87
+ submittingRef.current = false;
88
+ setIsSubmitting(false);
89
+ }
90
+ }, [identifier, password, signInWithPassword, onSignedIn, surfaceError]);
91
+ const submitTwoFactor = (0, _react.useCallback)(async () => {
92
+ // A second call while one is already in flight is a no-op (double-tap guard).
93
+ if (submittingRef.current) {
94
+ return;
95
+ }
96
+ if (!loginToken) {
97
+ setError('Your sign-in session expired. Start again.');
98
+ setStep('password');
99
+ return;
100
+ }
101
+ if (!code.trim()) {
102
+ setError(useBackupCode ? 'Enter a backup code' : 'Enter your 6-digit code');
103
+ return;
104
+ }
105
+ setError(null);
106
+ submittingRef.current = true;
107
+ setIsSubmitting(true);
108
+ try {
109
+ await completeTwoFactorSignIn({
110
+ loginToken,
111
+ ...(useBackupCode ? {
112
+ backupCode: code.trim()
113
+ } : {
114
+ token: code.trim()
115
+ })
116
+ });
117
+ onSignedIn?.();
118
+ } catch (err) {
119
+ surfaceError(err, 'Verification failed');
120
+ } finally {
121
+ submittingRef.current = false;
122
+ setIsSubmitting(false);
123
+ }
124
+ }, [loginToken, code, useBackupCode, completeTwoFactorSignIn, onSignedIn, surfaceError]);
125
+ const back = (0, _react.useCallback)(() => {
126
+ setError(null);
127
+ setStep(current => {
128
+ if (current === 'twoFactor') {
129
+ setLoginToken(null);
130
+ setCode('');
131
+ return 'password';
132
+ }
133
+ if (current === 'password') {
134
+ setPassword('');
135
+ return 'identifier';
136
+ }
137
+ return current;
138
+ });
139
+ }, []);
140
+ const reset = (0, _react.useCallback)(() => {
141
+ setStep('identifier');
142
+ setIdentifier('');
143
+ setPassword('');
144
+ setCode('');
145
+ setUseBackupCode(false);
146
+ setLoginToken(null);
147
+ setError(null);
148
+ submittingRef.current = false;
149
+ setIsSubmitting(false);
150
+ }, []);
151
+ return (0, _react.useMemo)(() => ({
152
+ step,
153
+ identifier,
154
+ setIdentifier,
155
+ password,
156
+ setPassword,
157
+ code,
158
+ setCode,
159
+ useBackupCode,
160
+ setUseBackupCode,
161
+ error,
162
+ isSubmitting,
163
+ submitIdentifier,
164
+ submitPassword,
165
+ submitTwoFactor,
166
+ back,
167
+ reset
168
+ }), [step, identifier, password, code, useBackupCode, error, isSubmitting, submitIdentifier, submitPassword, submitTwoFactor, back, reset]);
169
+ }
170
+ //# sourceMappingURL=usePasswordSignIn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_OxyContext","_errorHandlers","usePasswordSignIn","options","signInWithPassword","completeTwoFactorSignIn","useOxy","onSignedIn","step","setStep","useState","identifier","setIdentifier","password","setPassword","code","setCode","useBackupCode","setUseBackupCode","error","setError","isSubmitting","setIsSubmitting","loginToken","setLoginToken","submittingRef","useRef","surfaceError","useCallback","err","defaultMessage","handleAuthError","submitIdentifier","trim","submitPassword","current","result","status","submitTwoFactor","backupCode","token","back","reset","useMemo"],"sourceRoot":"../../../../src","sources":["ui/hooks/usePasswordSignIn.ts"],"mappings":"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","ignoreList":[]}
@@ -36,11 +36,8 @@ const useProfileEditing = () => {
36
36
  if (updates.bio !== undefined) {
37
37
  updateData.bio = updates.bio;
38
38
  }
39
- if (updates.location !== undefined || updates.locations !== undefined) {
40
- updateData.location = updates.locations && updates.locations.length > 0 ? updates.locations[0].name : updates.location || '';
41
- if (updates.locations) {
42
- updateData.locations = updates.locations;
43
- }
39
+ if (updates.locations !== undefined) {
40
+ updateData.locations = updates.locations;
44
41
  }
45
42
  if (updates.links !== undefined) {
46
43
  updateData.links = updates.links;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_useAccountMutations","_authStore","isProfileLocationArray","value","Array","isArray","every","item","isProfileLinkMetadataArray","useProfileEditing","updateProfileMutation","useUpdateProfile","saveProfile","useCallback","updates","updateData","username","undefined","email","bio","location","locations","length","name","links","linksMetadata","avatar","phone","address","birthday","firstName","lastName","currentUser","useAuthStore","getState","user","currentName","first","last","mutateAsync","error","updateField","field","map","link","url","isSaving","isPending","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useProfileEditing.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_useAccountMutations","_authStore","isProfileLocationArray","value","Array","isArray","every","item","isProfileLinkMetadataArray","useProfileEditing","updateProfileMutation","useUpdateProfile","saveProfile","useCallback","updates","updateData","username","undefined","email","bio","locations","links","linksMetadata","avatar","phone","address","birthday","firstName","lastName","currentUser","useAuthStore","getState","user","currentName","name","first","last","mutateAsync","error","updateField","field","map","link","url","isSaving","isPending","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useProfileEditing.ts"],"mappings":"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","ignoreList":[]}
@@ -10,7 +10,7 @@ var _sessionHelpers = require("../utils/sessionHelpers.js");
10
10
  var _storageHelpers = require("../utils/storageHelpers.js");
11
11
  var _errorHandlers = require("../utils/errorHandlers.js");
12
12
  var _queryClient = require("./queryClient.js");
13
- var _useWebSSO = require("./useWebSSO.js");
13
+ var _isWebBrowser = require("../utils/isWebBrowser.js");
14
14
  const DEFAULT_SAVE_ERROR_MESSAGE = 'Failed to save session data';
15
15
  const CLEAR_STORAGE_ERROR = 'Failed to clear storage';
16
16
 
@@ -176,7 +176,7 @@ const useSessionManagement = ({
176
176
  // is server-authoritative via `SessionClient` now. The native path
177
177
  // arrives here only after a bearer has been planted by
178
178
  // `claimSessionByToken` or secure shared-session restore.
179
- if ((0, _useWebSSO.isWebBrowser)() && !oxyServices.getAccessToken()) {
179
+ if ((0, _isWebBrowser.isWebBrowser)() && !oxyServices.getAccessToken()) {
180
180
  throw new Error('Session is invalid or expired');
181
181
  }
182
182
  const validation = await oxyServices.validateSession(sessionId, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_core","_sessionHelpers","_storageHelpers","_errorHandlers","_queryClient","_useWebSSO","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","applyLanguagePreference","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","useState","activeSessionId","setActiveSessionId","sessionsRef","useRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","useMemo","getStorageKeys","saveSessionIds","useCallback","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","isDev","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","mergeSessions","normalizeAndSortSessions","map","session","sessionId","preserveSessionIds","sessionsArraysEqual","saveActiveSessionId","handleAuthError","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","clearTokens","clear","clearQueryCache","activateSession","user","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","useEffect","forEach","clearTimeout","switchSession","isWebBrowser","getAccessToken","Error","validation","validateSession","useHeaderValidation","valid","deviceSessions","fetchSessionsWithFallback","fallbackUserId","id","invalidSession","isInvalidSessionError","filter","refreshSessions","activeUserId","now","Date","refreshPromise","isRefreshInFlight","Boolean","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_core","_sessionHelpers","_storageHelpers","_errorHandlers","_queryClient","_isWebBrowser","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","applyLanguagePreference","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","useState","activeSessionId","setActiveSessionId","sessionsRef","useRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","useMemo","getStorageKeys","saveSessionIds","useCallback","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","isDev","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","mergeSessions","normalizeAndSortSessions","map","session","sessionId","preserveSessionIds","sessionsArraysEqual","saveActiveSessionId","handleAuthError","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","clearTokens","clear","clearQueryCache","activateSession","user","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","useEffect","forEach","clearTimeout","switchSession","isWebBrowser","getAccessToken","Error","validation","validateSession","useHeaderValidation","valid","deviceSessions","fetchSessionsWithFallback","fallbackUserId","id","invalidSession","isInvalidSessionError","filter","refreshSessions","activeUserId","now","Date","refreshPromise","isRefreshInFlight","Boolean","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":"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","ignoreList":[]}
@@ -34,6 +34,7 @@ const screenLoaders = {
34
34
  UserLinks: () => require('../screens/UserLinksScreen').default,
35
35
  HistoryView: () => require('../screens/HistoryViewScreen').default,
36
36
  SavesCollections: () => require('../screens/SavesCollectionsScreen').default,
37
+ EditProfile: () => require('../screens/EditProfileScreen').default,
37
38
  EditProfileField: () => require('../screens/EditProfileFieldScreen').default,
38
39
  // Informational screens
39
40
  LearnMoreUsernames: () => require('../screens/LearnMoreUsernamesScreen').default,
@@ -1 +1 @@
1
- {"version":3,"names":["screenLoaders","OxyAuth","require","default","ManageAccount","AccountVerification","PaymentGateway","Profile","LanguageSelector","PrivacySettings","SearchSettings","FileManagement","HelpSupport","FAQ","Feedback","LegalDocuments","AppInfo","PremiumSubscription","WelcomeNewUser","UserLinks","HistoryView","SavesCollections","EditProfileField","LearnMoreUsernames","TrustCenter","TrustLeaderboard","TrustRewards","TrustRules","AboutTrust","TrustFAQ","FollowersList","FollowingList","AccountSwitcher","CreateAccount","AccountMembers","AccountSettings","AvatarCrop","Notifications","ConnectedApps","Preferences","screenCache","Map","getScreenComponent","routeName","has","get","loader","component","set","error","__DEV__","console","undefined","exports","isValidRoute","isFileManagementImageOnlyPicker","props","selectMode","disabled","disabledMimeTypes","Array","isArray","length","predicate","some","mt","blocksVideos","startsWith","blocksAudio","blocksDocs","DEFAULT_SHEET_CONFIG","scrollable","manualActivation","dynamicBackdrop","getSheetConfig","screenProps"],"sourceRoot":"../../../../src","sources":["ui/navigation/routes.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["screenLoaders","OxyAuth","require","default","ManageAccount","AccountVerification","PaymentGateway","Profile","LanguageSelector","PrivacySettings","SearchSettings","FileManagement","HelpSupport","FAQ","Feedback","LegalDocuments","AppInfo","PremiumSubscription","WelcomeNewUser","UserLinks","HistoryView","SavesCollections","EditProfile","EditProfileField","LearnMoreUsernames","TrustCenter","TrustLeaderboard","TrustRewards","TrustRules","AboutTrust","TrustFAQ","FollowersList","FollowingList","AccountSwitcher","CreateAccount","AccountMembers","AccountSettings","AvatarCrop","Notifications","ConnectedApps","Preferences","screenCache","Map","getScreenComponent","routeName","has","get","loader","component","set","error","__DEV__","console","undefined","exports","isValidRoute","isFileManagementImageOnlyPicker","props","selectMode","disabled","disabledMimeTypes","Array","isArray","length","predicate","some","mt","blocksVideos","startsWith","blocksAudio","blocksDocs","DEFAULT_SHEET_CONFIG","scrollable","manualActivation","dynamicBackdrop","getSheetConfig","screenProps"],"sourceRoot":"../../../../src","sources":["ui/navigation/routes.ts"],"mappings":"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","ignoreList":[]}
@@ -17,6 +17,7 @@ var _useI18n = require("../hooks/useI18n.js");
17
17
  var _OxyContext = require("../context/OxyContext.js");
18
18
  var _useProfileEditing = require("../hooks/useProfileEditing.js");
19
19
  var _bloom = require("@oxyhq/bloom");
20
+ var _linkFormat = require("./linkFormat.js");
20
21
  var _jsxRuntime = require("react/jsx-runtime");
21
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
23
  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); }
@@ -28,8 +29,82 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
28
29
  * Field configuration for each field type
29
30
  */
30
31
 
31
- const getLinkTitle = url => url.replace(/^https?:\/\//, '').replace(/\/$/, '');
32
- const getLinkDescription = url => `Link to ${url}`;
32
+ /**
33
+ * Pure seeding function: derives the initial `fieldValues` / `listItems` for a
34
+ * given field type from the active account snapshot. Called ONCE per state via
35
+ * lazy `useState` initializers — never from an effect — so a background
36
+ * `refreshSessions()` / `useCurrentUser()` swap of the `user` reference can't
37
+ * wipe in-progress typing. Each editor mounts with a fixed `fieldType`, so the
38
+ * seed is stable for the lifetime of the mount.
39
+ */
40
+ function buildInitialProfileState(user, fieldType) {
41
+ if (!user) {
42
+ return {
43
+ fieldValues: {},
44
+ listItems: []
45
+ };
46
+ }
47
+ const userData = user;
48
+ if (fieldType === 'locations') {
49
+ const locations = Array.isArray(userData.locations) ? userData.locations : [];
50
+ return {
51
+ fieldValues: {},
52
+ listItems: locations.map((loc, i) => ({
53
+ id: String(loc.id || `location-${i}`),
54
+ name: String(loc.name || ''),
55
+ ...loc
56
+ }))
57
+ };
58
+ }
59
+ if (fieldType === 'links') {
60
+ const linksMetadata = Array.isArray(userData.linksMetadata) ? userData.linksMetadata : [];
61
+ const links = Array.isArray(userData.links) ? userData.links : [];
62
+ // Prefer rich link metadata; fall back to the plain links array.
63
+ if (linksMetadata.length > 0) {
64
+ return {
65
+ fieldValues: {},
66
+ listItems: linksMetadata.map((link, i) => ({
67
+ ...link,
68
+ id: String(link.id || `link-${i}`),
69
+ url: String(link.url || ''),
70
+ title: String(link.title || (0, _linkFormat.getLinkTitle)(String(link.url || ''))),
71
+ description: String(link.description || (0, _linkFormat.getLinkDescription)(String(link.url || '')))
72
+ }))
73
+ };
74
+ }
75
+ return {
76
+ fieldValues: {},
77
+ listItems: (0, _linkFormat.linksToListItems)(links)
78
+ };
79
+ }
80
+
81
+ // Scalar fields: seed only the keys this field type edits.
82
+ const fieldValues = {};
83
+ switch (fieldType) {
84
+ case 'displayName':
85
+ fieldValues.firstName = String(userData.name?.first || '');
86
+ fieldValues.lastName = String(userData.lastName || userData.name?.last || '');
87
+ break;
88
+ case 'birthday':
89
+ fieldValues.birthday = String(userData.birthday || userData.dateOfBirth || '');
90
+ break;
91
+ case 'address':
92
+ fieldValues.address = String(userData.address || '');
93
+ break;
94
+ case 'username':
95
+ case 'email':
96
+ case 'bio':
97
+ case 'phone':
98
+ fieldValues[fieldType] = String(userData[fieldType] || '');
99
+ break;
100
+ default:
101
+ break;
102
+ }
103
+ return {
104
+ fieldValues,
105
+ listItems: []
106
+ };
107
+ }
33
108
 
34
109
  /**
35
110
  * EditProfileFieldScreen - A dedicated screen for editing profile fields
@@ -63,12 +138,14 @@ const EditProfileFieldScreen = ({
63
138
  const bloomTheme = (0, _theme.useTheme)();
64
139
  const normalizedTheme = (0, _core.normalizeTheme)(theme);
65
140
 
66
- // State for field values
67
- const [fieldValues, setFieldValues] = (0, _react.useState)({});
141
+ // State for field values — seeded ONCE from the active account snapshot at
142
+ // mount via lazy initializers. See buildInitialProfileState: no effect
143
+ // reseeds these, so a background user-ref swap never wipes typing.
144
+ const [fieldValues, setFieldValues] = (0, _react.useState)(() => buildInitialProfileState(user, fieldType).fieldValues);
68
145
  const [fieldErrors, setFieldErrors] = (0, _react.useState)({});
69
146
 
70
- // State for list fields (locations, links)
71
- const [listItems, setListItems] = (0, _react.useState)([]);
147
+ // State for list fields (locations, links) — same one-time mount seeding.
148
+ const [listItems, setListItems] = (0, _react.useState)(() => buildInitialProfileState(user, fieldType).listItems);
72
149
  const [newItemValue, setNewItemValue] = (0, _react.useState)('');
73
150
 
74
151
  // Get field configuration based on fieldType
@@ -81,11 +158,13 @@ const EditProfileFieldScreen = ({
81
158
  fields: [{
82
159
  key: 'firstName',
83
160
  label: t('editProfile.items.displayName.firstName') || 'First Name',
84
- placeholder: t('editProfile.items.displayName.firstNamePlaceholder') || 'Enter first name'
161
+ placeholder: t('editProfile.items.displayName.firstNamePlaceholder') || 'Enter first name',
162
+ validation: value => (0, _core.isValidDisplayName)(value) ? undefined : t('editProfile.items.displayName.invalidChars') || 'Use letters and spaces only'
85
163
  }, {
86
164
  key: 'lastName',
87
165
  label: t('editProfile.items.displayName.lastName') || 'Last Name',
88
- placeholder: t('editProfile.items.displayName.lastNamePlaceholder') || 'Enter last name (optional)'
166
+ placeholder: t('editProfile.items.displayName.lastNamePlaceholder') || 'Enter last name (optional)',
167
+ validation: value => (0, _core.isValidDisplayName)(value) ? undefined : t('editProfile.items.displayName.invalidChars') || 'Use letters and spaces only'
89
168
  }]
90
169
  };
91
170
  case 'username':
@@ -216,60 +295,6 @@ const EditProfileFieldScreen = ({
216
295
  }
217
296
  }, [fieldType, t]);
218
297
 
219
- // Initialize field values from the active account's data
220
- (0, _react.useEffect)(() => {
221
- if (!user) return;
222
- const userData = user;
223
- if (fieldConfig.isList) {
224
- if (fieldType === 'locations') {
225
- const locations = Array.isArray(userData.locations) ? userData.locations : [];
226
- setListItems(locations.map((loc, i) => ({
227
- id: String(loc.id || `location-${i}`),
228
- name: String(loc.name || ''),
229
- ...loc
230
- })));
231
- } else if (fieldType === 'links') {
232
- const linksMetadata = Array.isArray(userData.linksMetadata) ? userData.linksMetadata : [];
233
- const links = Array.isArray(userData.links) ? userData.links : [];
234
- // Use linksMetadata if available, otherwise convert links array
235
- if (linksMetadata.length > 0) {
236
- setListItems(linksMetadata.map((link, i) => ({
237
- ...link,
238
- id: String(link.id || `link-${i}`),
239
- url: String(link.url || ''),
240
- title: String(link.title || getLinkTitle(String(link.url || ''))),
241
- description: String(link.description || getLinkDescription(String(link.url || '')))
242
- })));
243
- } else {
244
- setListItems(links.map((item, i) => {
245
- return {
246
- id: `link-${i}`,
247
- url: item,
248
- title: getLinkTitle(item),
249
- description: getLinkDescription(item)
250
- };
251
- }));
252
- }
253
- }
254
- } else {
255
- const initialValues = {};
256
- fieldConfig.fields.forEach(field => {
257
- if (field.key === 'firstName') {
258
- initialValues[field.key] = String(userData.name?.first || '');
259
- } else if (field.key === 'lastName') {
260
- initialValues[field.key] = String(userData.lastName || userData.name?.last || '');
261
- } else if (field.key === 'birthday') {
262
- initialValues[field.key] = String(userData.birthday || userData.dateOfBirth || '');
263
- } else if (field.key === 'address') {
264
- initialValues[field.key] = String(userData.address || userData.location || '');
265
- } else {
266
- initialValues[field.key] = String(userData[field.key] || '');
267
- }
268
- });
269
- setFieldValues(initialValues);
270
- }
271
- }, [user, fieldConfig, fieldType]);
272
-
273
298
  // Field change handler
274
299
  const handleFieldChange = (0, _react.useCallback)((key, value) => {
275
300
  setFieldValues(prev => ({
@@ -288,7 +313,7 @@ const EditProfileFieldScreen = ({
288
313
  const validateFields = (0, _react.useCallback)(() => {
289
314
  const errors = {};
290
315
  let isValid = true;
291
- fieldConfig.fields.forEach(field => {
316
+ for (const field of fieldConfig.fields) {
292
317
  if (field.validation) {
293
318
  const error = field.validation(fieldValues[field.key] || '');
294
319
  if (error) {
@@ -296,7 +321,7 @@ const EditProfileFieldScreen = ({
296
321
  isValid = false;
297
322
  }
298
323
  }
299
- });
324
+ }
300
325
  setFieldErrors(errors);
301
326
  return isValid;
302
327
  }, [fieldConfig.fields, fieldValues]);
@@ -314,8 +339,8 @@ const EditProfileFieldScreen = ({
314
339
  const newItem = {
315
340
  id: `link-${Date.now()}`,
316
341
  url: newItemValue.trim(),
317
- title: getLinkTitle(newItemValue.trim()),
318
- description: getLinkDescription(newItemValue.trim())
342
+ title: (0, _linkFormat.getLinkTitle)(newItemValue.trim()),
343
+ description: (0, _linkFormat.getLinkDescription)(newItemValue.trim())
319
344
  };
320
345
  setListItems(prev => [...prev, newItem]);
321
346
  }
@@ -349,8 +374,8 @@ const EditProfileFieldScreen = ({
349
374
  linksMetadata: listItems.map(item => ({
350
375
  id: item.id,
351
376
  url: String(item.url || ''),
352
- title: String(item.title || getLinkTitle(String(item.url || ''))),
353
- description: String(item.description || getLinkDescription(String(item.url || ''))),
377
+ title: String(item.title || (0, _linkFormat.getLinkTitle)(String(item.url || ''))),
378
+ description: String(item.description || (0, _linkFormat.getLinkDescription)(String(item.url || ''))),
354
379
  ...(item.image !== undefined && {
355
380
  image: String(item.image)
356
381
  })