@oxyhq/services 26.2.0 → 27.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 (59) hide show
  1. package/lib/commonjs/index.js +21 -1
  2. package/lib/commonjs/index.js.map +1 -1
  3. package/lib/commonjs/ui/components/authChooser/requestSurfaces.js +14 -6
  4. package/lib/commonjs/ui/components/authChooser/requestSurfaces.js.map +1 -1
  5. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +16 -3
  6. package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  7. package/lib/commonjs/ui/hooks/queries/userCache.js +164 -10
  8. package/lib/commonjs/ui/hooks/queries/userCache.js.map +1 -1
  9. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +6 -1
  10. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  11. package/lib/commonjs/ui/screens/CreateAccountScreen.js +73 -40
  12. package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
  13. package/lib/commonjs/ui/utils/avatarUtils.js +5 -0
  14. package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
  15. package/lib/module/index.js +4 -2
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/module/ui/components/authChooser/requestSurfaces.js +15 -7
  18. package/lib/module/ui/components/authChooser/requestSurfaces.js.map +1 -1
  19. package/lib/module/ui/hooks/mutations/useAccountMutations.js +16 -3
  20. package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
  21. package/lib/module/ui/hooks/queries/userCache.js +161 -10
  22. package/lib/module/ui/hooks/queries/userCache.js.map +1 -1
  23. package/lib/module/ui/screens/AccountSettingsScreen.js +6 -1
  24. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  25. package/lib/module/ui/screens/CreateAccountScreen.js +74 -41
  26. package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
  27. package/lib/module/ui/utils/avatarUtils.js +5 -0
  28. package/lib/module/ui/utils/avatarUtils.js.map +1 -1
  29. package/lib/typescript/commonjs/index.d.ts +2 -2
  30. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts +6 -1
  32. package/lib/typescript/commonjs/ui/components/authChooser/requestSurfaces.d.ts.map +1 -1
  33. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +1 -1
  34. package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  35. package/lib/typescript/commonjs/ui/hooks/queries/userCache.d.ts +79 -2
  36. package/lib/typescript/commonjs/ui/hooks/queries/userCache.d.ts.map +1 -1
  37. package/lib/typescript/commonjs/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  38. package/lib/typescript/commonjs/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  39. package/lib/typescript/commonjs/ui/utils/avatarUtils.d.ts.map +1 -1
  40. package/lib/typescript/module/index.d.ts +2 -2
  41. package/lib/typescript/module/index.d.ts.map +1 -1
  42. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts +6 -1
  43. package/lib/typescript/module/ui/components/authChooser/requestSurfaces.d.ts.map +1 -1
  44. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +1 -1
  45. package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  46. package/lib/typescript/module/ui/hooks/queries/userCache.d.ts +79 -2
  47. package/lib/typescript/module/ui/hooks/queries/userCache.d.ts.map +1 -1
  48. package/lib/typescript/module/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  49. package/lib/typescript/module/ui/screens/CreateAccountScreen.d.ts.map +1 -1
  50. package/lib/typescript/module/ui/utils/avatarUtils.d.ts.map +1 -1
  51. package/package.json +4 -4
  52. package/src/index.ts +15 -3
  53. package/src/ui/components/authChooser/requestSurfaces.tsx +12 -4
  54. package/src/ui/hooks/mutations/useAccountMutations.ts +20 -3
  55. package/src/ui/hooks/queries/__tests__/userCacheClear.test.ts +301 -0
  56. package/src/ui/hooks/queries/userCache.ts +211 -10
  57. package/src/ui/screens/AccountSettingsScreen.tsx +9 -1
  58. package/src/ui/screens/CreateAccountScreen.tsx +66 -36
  59. package/src/ui/utils/avatarUtils.ts +9 -0
@@ -38,6 +38,33 @@
38
38
  * never overwritten by a degraded/empty one (empty username, the
39
39
  * `'Unknown user'` ghost-author sentinel, `null` avatar).
40
40
  *
41
+ * EXPRESSING A DELIBERATE CLEAR ("remove my picture")
42
+ * ---------------------------------------------------
43
+ * The anti-degradation rule above is right for a sparse source and wrong for a
44
+ * user who just emptied the field — and the two are NOT distinguishable from the
45
+ * payload. Measured against oxy-api's canonical serializer (`formatUserResponse`
46
+ * in `packages/api/src/utils/userTransform.ts`, which passes every field through
47
+ * `typeof value === 'string' ? value : undefined`): an account whose avatar,
48
+ * bio and display name were all just CLEARED serializes to
49
+ * `{"id":…,"publicKey":…,"username":…,"name":{},"languages":[]}` — byte-identical
50
+ * to the same account read as a sparse projection. There is no `null` and no
51
+ * `''` on the wire to key on. The information that a field was deliberately
52
+ * emptied exists ONLY at the call site that performed the write.
53
+ *
54
+ * So the caller declares it: `upsertCachedUser(qc, user, viewerId, { cleared:
55
+ * ['avatar'] })`. For a declared field an incoming EMPTY value means the field
56
+ * IS empty and the stale value is dropped; a MEANINGFUL incoming value still
57
+ * wins as usual (so `{ cleared: ['name.displayName'] }` on a personal account,
58
+ * where clearing the explicit name makes the server return the COMPOSED one,
59
+ * keeps the composed name rather than blanking it).
60
+ *
61
+ * A blanket "this source is authoritative, treat every absent field as cleared"
62
+ * flag was considered and rejected: because the two payloads are byte-identical,
63
+ * such a flag is an unverifiable promise about provenance, and the failure mode
64
+ * of getting it wrong is blanking real identity data in every Oxy app. Naming
65
+ * the fields states something the caller actually observed — which fields the
66
+ * user emptied — and bounds the damage to exactly those.
67
+ *
41
68
  * It is a cache write only — zero network, one `setQueryData` per key.
42
69
  */
43
70
 
@@ -56,6 +83,75 @@ import { queryKeys } from "./queryKeys.js";
56
83
  /** The degraded display-name sentinel (ghost-author rule). */
57
84
  const DEGRADED_DISPLAY_NAME = "Unknown user";
58
85
 
86
+ /**
87
+ * The profile fields a user can genuinely EMPTY through a real Oxy write, and
88
+ * for which "empty" is a state every renderer already handles.
89
+ *
90
+ * Deliberately a closed list rather than "any field": a clear DELETES data from
91
+ * the cache, so the blast radius of a mistaken declaration is bounded here
92
+ * instead of resting on each call site. `username` is absent because an account
93
+ * always has one; `_count` and `relationship` are absent because they are
94
+ * server-derived, never user-emptied — and dropping a viewer `relationship` is
95
+ * the exact "Follows you vanishes" bug this module exists to prevent.
96
+ *
97
+ * Each entry is clearable through a shipped write path: `avatar`, `bio`,
98
+ * `description` and `name.displayName` via `UserProfileUpdate` (`''` clears) and
99
+ * `UpdateAccountInput` (`null` clears avatar/bio; `accountCategories: []`
100
+ * clears the ordered category list), and `color` via its nullable field.
101
+ */
102
+ export const CLEARABLE_USER_FIELDS = ["avatar", "bio", "description", "color", "accountCategories", "name.displayName"];
103
+
104
+ /** A field nameable in {@link UpsertCachedUserOptions.cleared}. */
105
+
106
+ /**
107
+ * Fields the caller deliberately emptied in a `PUT /users/me` patch. The wire
108
+ * response omits cleared scalars, so the cache needs this list to drop stale
109
+ * values immediately instead of waiting for a refetch that merges the same
110
+ * sparse payload.
111
+ */
112
+ export function clearedFieldsFromProfileUpdate(updates) {
113
+ const cleared = [];
114
+ if ("avatar" in updates && !isMeaningful(updates.avatar)) {
115
+ cleared.push("avatar");
116
+ }
117
+ if ("bio" in updates && !isMeaningful(updates.bio)) {
118
+ cleared.push("bio");
119
+ }
120
+ if ("description" in updates && !isMeaningful(updates.description)) {
121
+ cleared.push("description");
122
+ }
123
+ if ("color" in updates && updates.color === null) {
124
+ cleared.push("color");
125
+ }
126
+ if (updates.name !== undefined && "displayName" in updates.name && !isMeaningful(updates.name.displayName)) {
127
+ cleared.push("name.displayName");
128
+ }
129
+ return cleared;
130
+ }
131
+
132
+ /**
133
+ * Same contract as {@link clearedFieldsFromProfileUpdate} for managed-account
134
+ * `PATCH /accounts/:id` writes (`null` clears avatar/bio/category).
135
+ */
136
+ export function clearedFieldsFromAccountUpdate(input) {
137
+ const cleared = [];
138
+ if ("avatar" in input && !isMeaningful(input.avatar)) {
139
+ cleared.push("avatar");
140
+ }
141
+ if ("bio" in input && !isMeaningful(input.bio)) {
142
+ cleared.push("bio");
143
+ }
144
+ if ("accountCategories" in input && Array.isArray(input.accountCategories) && input.accountCategories.length === 0) {
145
+ cleared.push("accountCategories");
146
+ }
147
+ if (input.name !== undefined && "displayName" in input.name && !isMeaningful(input.name.displayName)) {
148
+ cleared.push("name.displayName");
149
+ }
150
+ return cleared;
151
+ }
152
+
153
+ /** Options for {@link upsertCachedUser}. */
154
+
59
155
  /** A cache entry always carries a resolved string `id`. */
60
156
 
61
157
  /**
@@ -120,9 +216,38 @@ function normalizeIncoming(user) {
120
216
  return cached.id ? cached : null;
121
217
  }
122
218
 
123
- /** Merge two `name` objects field-by-field, with anti-degradation on `displayName`. */
124
- function mergeName(existing, incoming) {
125
- if (incoming === undefined) return existing;
219
+ /**
220
+ * Copy a name WITHOUT its `displayName`. The key must end up ABSENT rather than
221
+ * present-and-`undefined`: consumers render `name.displayName` directly and fall
222
+ * back to the handle when it is missing, and a present-but-undefined key also
223
+ * changes what a later merge sees.
224
+ */
225
+ function omitDisplayName(name) {
226
+ const result = {};
227
+ for (const [key, value] of Object.entries(name)) {
228
+ if (key !== "displayName") result[key] = value;
229
+ }
230
+ return result;
231
+ }
232
+
233
+ /**
234
+ * Merge two `name` objects field-by-field, with anti-degradation on
235
+ * `displayName`.
236
+ *
237
+ * `clearDisplayName` is the declared-clear escape hatch: the incoming value
238
+ * still wins whenever it is meaningful (an account that clears its explicit
239
+ * display name gets the server-COMPOSED one back, which must not be discarded),
240
+ * and only a genuinely empty incoming value drops the stored one.
241
+ *
242
+ * Both incoming shapes reach the clear, and they are separate branches: the
243
+ * measured oxy-api response carries `name` as a PRESENT-but-empty object, while
244
+ * a caller passing a bare user object may carry no `name` key at all.
245
+ */
246
+ function mergeName(existing, incoming, clearDisplayName) {
247
+ if (incoming === undefined) {
248
+ if (!clearDisplayName || existing === undefined) return existing;
249
+ return omitDisplayName(existing);
250
+ }
126
251
  if (existing === undefined) return incoming;
127
252
  const merged = {
128
253
  ...existing
@@ -131,11 +256,13 @@ function mergeName(existing, incoming) {
131
256
  if (key === "displayName") continue;
132
257
  if (isMeaningful(value)) merged[key] = value;
133
258
  }
134
- // Never let an empty / `'Unknown user'` displayName overwrite a real one.
259
+ // Never let an empty / `'Unknown user'` displayName overwrite a real one
260
+ // unless the caller declared that the user cleared it.
135
261
  if (isMeaningfulDisplayName(incoming.displayName)) {
136
262
  merged.displayName = incoming.displayName;
263
+ return merged;
137
264
  }
138
- return merged;
265
+ return clearDisplayName ? omitDisplayName(merged) : merged;
139
266
  }
140
267
 
141
268
  /** Merge `_count` field-by-field so a partial count never replaces a fuller one. */
@@ -170,9 +297,15 @@ function mergeRelationship(existing, incoming) {
170
297
  * When `includeRelationship` is false (the viewer-independent by-id key), the
171
298
  * viewer-relative `relationship` field is never read, written, or preserved —
172
299
  * only the by-username key carries it (`useUserByUsername`).
300
+ *
301
+ * `cleared` names the fields the write deliberately emptied. It is applied
302
+ * AFTER the merge, because the merge loop can only ever COPY a meaningful value
303
+ * — an emptied field is absent from `incoming` (see the module docs: oxy-api
304
+ * omits it entirely) and would otherwise survive from `existing` untouched.
173
305
  */
174
306
  function mergeUsers(existing, incoming, options) {
175
307
  const includeRelationship = options?.includeRelationship ?? true;
308
+ const cleared = options?.cleared;
176
309
  const merged = {
177
310
  ...existing
178
311
  };
@@ -184,7 +317,7 @@ function mergeUsers(existing, incoming, options) {
184
317
  }
185
318
  if (isMeaningful(value)) merged[key] = value;
186
319
  }
187
- const name = mergeName(existing.name, incoming.name);
320
+ const name = mergeName(existing.name, incoming.name, cleared?.includes("name.displayName") ?? false);
188
321
  if (name !== undefined) merged.name = name;
189
322
  const count = mergeCount(existing._count, incoming._count);
190
323
  if (count !== undefined) merged._count = count;
@@ -194,13 +327,20 @@ function mergeUsers(existing, incoming, options) {
194
327
  } else {
195
328
  merged.relationship = undefined;
196
329
  }
330
+ if (cleared) {
331
+ for (const field of cleared) {
332
+ if (field === "name.displayName") continue; // handled by `mergeName`.
333
+ if (!isMeaningful(incoming[field])) delete merged[field];
334
+ }
335
+ }
197
336
  return merged;
198
337
  }
199
338
 
200
339
  /** Merge-upsert a normalized user into one cache key (see module docs for semantics). */
201
340
  function upsertOneKey(queryClient, key, incoming, options) {
202
341
  const mergeOpts = {
203
- includeRelationship: options.includeRelationship
342
+ includeRelationship: options.includeRelationship,
343
+ cleared: options.cleared
204
344
  };
205
345
  const existing = queryClient.getQueryData(key);
206
346
  if (existing === undefined) {
@@ -243,16 +383,22 @@ function resolveViewerId(viewerId) {
243
383
  * @param user A `User`-shaped object (may be sparse).
244
384
  * @param viewerId The active viewer id for the by-username key. Defaults to
245
385
  * the current auth-store user id.
386
+ * @param options `cleared` names the fields the write deliberately emptied
387
+ * — the ONLY way "remove my picture" can propagate, since a
388
+ * cleared field and an uncarried one are byte-identical on
389
+ * the wire (see the module docs).
246
390
  */
247
- export function upsertCachedUser(queryClient, user, viewerId) {
391
+ export function upsertCachedUser(queryClient, user, viewerId, options) {
248
392
  const incoming = normalizeIncoming(user);
249
393
  if (!incoming) return;
394
+ const cleared = options?.cleared;
250
395
 
251
396
  // By-id identity entry (read by `useUserById`). Not viewer-scoped — never store
252
397
  // the viewer-relative `relationship` here or one viewer's follow state leaks
253
398
  // into every other viewer's by-id cache entry.
254
399
  upsertOneKey(queryClient, queryKeys.users.detail(incoming.id), incoming, {
255
- includeRelationship: false
400
+ includeRelationship: false,
401
+ cleared
256
402
  });
257
403
  const username = incoming.username;
258
404
  if (typeof username === "string" && username.trim() !== "") {
@@ -262,7 +408,8 @@ export function upsertCachedUser(queryClient, user, viewerId) {
262
408
  // (`trim().toLowerCase()`) matches byte-for-byte.
263
409
  const key = queryKeys.users.byUsername(username, resolveViewerId(viewerId));
264
410
  upsertOneKey(queryClient, key, incoming, {
265
- includeRelationship: true
411
+ includeRelationship: true,
412
+ cleared
266
413
  });
267
414
  }
268
415
  }
@@ -271,6 +418,10 @@ export function upsertCachedUser(queryClient, user, viewerId) {
271
418
  * Batch merge-upsert many users at once (for a feed / list / search response).
272
419
  * Resolves the viewer id once and upserts each user cumulatively — a user that
273
420
  * appears twice merges both slices into the single cache entry.
421
+ *
422
+ * Takes NO `cleared`, deliberately: a batch is a multi-user projection, so it is
423
+ * exactly the sparse source the anti-degradation guard exists for, and one
424
+ * declaration could not be true of every user in the array anyway.
274
425
  */
275
426
  export function upsertCachedUsers(queryClient, users, viewerId) {
276
427
  if (!Array.isArray(users) || users.length === 0) return;
@@ -1 +1 @@
1
- {"version":3,"names":["useAuthStore","queryKeys","DEGRADED_DISPLAY_NAME","isMeaningful","value","undefined","trim","isMeaningfulDisplayName","isPlainObject","Array","isArray","normalizeName","name","trimmed","displayName","toCachedUser","user","fallbackId","rawName","rest","id","String","_id","normalized","normalizeIncoming","cached","mergeName","existing","incoming","merged","key","Object","entries","mergeCount","followers","following","mergeRelationship","isFollowing","followsYou","mergeUsers","options","includeRelationship","count","_count","relationship","upsertOneKey","queryClient","mergeOpts","getQueryData","seeded","setQueryData","updatedAt","dataUpdatedAt","getQueryState","resolveViewerId","viewerId","getState","upsertCachedUser","users","detail","username","byUsername","upsertCachedUsers","length","resolvedViewerId"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/userCache.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useAuthStore","queryKeys","DEGRADED_DISPLAY_NAME","CLEARABLE_USER_FIELDS","clearedFieldsFromProfileUpdate","updates","cleared","isMeaningful","avatar","push","bio","description","color","name","undefined","displayName","clearedFieldsFromAccountUpdate","input","Array","isArray","accountCategories","length","value","trim","isMeaningfulDisplayName","isPlainObject","normalizeName","trimmed","toCachedUser","user","fallbackId","rawName","rest","id","String","_id","normalized","normalizeIncoming","cached","omitDisplayName","result","key","Object","entries","mergeName","existing","incoming","clearDisplayName","merged","mergeCount","followers","following","mergeRelationship","isFollowing","followsYou","mergeUsers","options","includeRelationship","includes","count","_count","relationship","field","upsertOneKey","queryClient","mergeOpts","getQueryData","seeded","setQueryData","updatedAt","dataUpdatedAt","getQueryState","resolveViewerId","viewerId","getState","upsertCachedUser","users","detail","username","byUsername","upsertCachedUsers","resolvedViewerId"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/userCache.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,SAASA,YAAY,QAAQ,2BAAwB;AACrD,SAASC,SAAS,QAAQ,gBAAa;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAwBA;AACA,MAAMC,qBAAqB,GAAG,cAAc;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,qBAAqB,GAAG,CACpC,QAAQ,EACR,KAAK,EACL,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,kBAAkB,CACT;;AAEV;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,8BAA8BA,CAC7CC,OAA0B,EACH;EACvB,MAAMC,OAA6B,GAAG,EAAE;EACxC,IAAI,QAAQ,IAAID,OAAO,IAAI,CAACE,YAAY,CAACF,OAAO,CAACG,MAAM,CAAC,EAAE;IACzDF,OAAO,CAACG,IAAI,CAAC,QAAQ,CAAC;EACvB;EACA,IAAI,KAAK,IAAIJ,OAAO,IAAI,CAACE,YAAY,CAACF,OAAO,CAACK,GAAG,CAAC,EAAE;IACnDJ,OAAO,CAACG,IAAI,CAAC,KAAK,CAAC;EACpB;EACA,IAAI,aAAa,IAAIJ,OAAO,IAAI,CAACE,YAAY,CAACF,OAAO,CAACM,WAAW,CAAC,EAAE;IACnEL,OAAO,CAACG,IAAI,CAAC,aAAa,CAAC;EAC5B;EACA,IAAI,OAAO,IAAIJ,OAAO,IAAIA,OAAO,CAACO,KAAK,KAAK,IAAI,EAAE;IACjDN,OAAO,CAACG,IAAI,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","ignoreList":[]}
@@ -15,6 +15,7 @@ import { SettingsIcon } from "../components/SettingsIcon.js";
15
15
  import { useOxy } from "../context/OxyContext.js";
16
16
  import { useI18n } from "../hooks/useI18n.js";
17
17
  import { useSurfaceHeader } from "../hooks/useSurfaceHeader.js";
18
+ import { clearedFieldsFromAccountUpdate, upsertCachedUser } from "../hooks/queries/userCache.js";
18
19
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
19
20
  const DISPLAY_NAME_MAX = MAX_DISPLAY_NAME_LENGTH;
20
21
  const BIO_MAX = 160;
@@ -76,7 +77,11 @@ const AccountSettingsScreen = ({
76
77
  const updateMutation = useMutation({
77
78
  mutationKey: ['accounts', 'update', id],
78
79
  mutationFn: input => oxyServices.updateAccount(id, input),
79
- onSuccess: () => {
80
+ onSuccess: (updatedNode, input) => {
81
+ const cleared = clearedFieldsFromAccountUpdate(input);
82
+ upsertCachedUser(queryClient, updatedNode.account, user?.id, {
83
+ cleared: cleared.length > 0 ? cleared : undefined
84
+ });
80
85
  queryClient.invalidateQueries({
81
86
  queryKey: ['accounts', 'detail', id]
82
87
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useMemo","useState","View","ActivityIndicator","useQuery","useMutation","useQueryClient","toast","surfaces","useTheme","Text","Button","TextField","TextFieldInput","SettingsListGroup","SettingsListItem","DISPLAY_NAME_INVALID_MESSAGE","getNormalizedUserHandle","isValidDisplayName","MAX_DISPLAY_NAME_LENGTH","SettingsIcon","useOxy","useI18n","useSurfaceHeader","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DISPLAY_NAME_MAX","BIO_MAX","errorMessage","error","fallback","Error","message","AccountSettingsScreen","onClose","goBack","navigate","accountId","bloomTheme","colors","t","oxyServices","canUsePrivateApi","user","accounts","switchToAccount","queryClient","id","accountQuery","queryKey","queryFn","getAccount","enabled","length","node","data","permissions","callerMembership","isImplicitOwner","relationship","can","permission","includes","canUpdate","canViewMembers","canArchive","seeded","setSeeded","displayName","setDisplayName","displayNameError","setDisplayNameError","bio","setBio","account","name","updateMutation","mutationKey","mutationFn","input","updateAccount","onSuccess","invalidateQueries","success","onError","archiveMutation","archiveAccount","personal","find","catch","undefined","handleArchive","confirmed","confirm","title","confirmLabel","cancelLabel","destructive","mutate","handleDisplayNameChange","value","trimmed","trim","nameParts","split","filter","Boolean","first","last","slice","join","invalidPart","part","handleSave","accountHandle","username","subtitle","children","className","isLoading","color","primary","isInvalid","floatingLabel","label","onChangeText","maxLength","multiline","numberOfLines","textAlignVertical","variant","onPress","disabled","isPending","loading","accessibilityLabel","icon","info","description"],"sourceRoot":"../../../../src","sources":["ui/screens/AccountSettingsScreen.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useState","View","ActivityIndicator","useQuery","useMutation","useQueryClient","toast","surfaces","useTheme","Text","Button","TextField","TextFieldInput","SettingsListGroup","SettingsListItem","DISPLAY_NAME_INVALID_MESSAGE","getNormalizedUserHandle","isValidDisplayName","MAX_DISPLAY_NAME_LENGTH","SettingsIcon","useOxy","useI18n","useSurfaceHeader","clearedFieldsFromAccountUpdate","upsertCachedUser","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DISPLAY_NAME_MAX","BIO_MAX","errorMessage","error","fallback","Error","message","AccountSettingsScreen","onClose","goBack","navigate","accountId","bloomTheme","colors","t","oxyServices","canUsePrivateApi","user","accounts","switchToAccount","queryClient","id","accountQuery","queryKey","queryFn","getAccount","enabled","length","node","data","permissions","callerMembership","isImplicitOwner","relationship","can","permission","includes","canUpdate","canViewMembers","canArchive","seeded","setSeeded","displayName","setDisplayName","displayNameError","setDisplayNameError","bio","setBio","account","name","updateMutation","mutationKey","mutationFn","input","updateAccount","onSuccess","updatedNode","cleared","undefined","invalidateQueries","success","onError","archiveMutation","archiveAccount","personal","find","catch","handleArchive","confirmed","confirm","title","confirmLabel","cancelLabel","destructive","mutate","handleDisplayNameChange","value","trimmed","trim","nameParts","split","filter","Boolean","first","last","slice","join","invalidPart","part","handleSave","accountHandle","username","subtitle","children","className","isLoading","color","primary","isInvalid","floatingLabel","label","onChangeText","maxLength","multiline","numberOfLines","textAlignVertical","variant","onPress","disabled","isPending","loading","accessibilityLabel","icon","info","description"],"sourceRoot":"../../../../src","sources":["ui/screens/AccountSettingsScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  import { useState, useCallback, useRef, useEffect } from 'react';
4
4
  import { View, ActivityIndicator } from 'react-native';
5
5
  import Ionicons from '@expo/vector-icons/Ionicons';
6
- import { DISPLAY_NAME_INVALID_MESSAGE, isValidDisplayName, MAX_DISPLAY_NAME_LENGTH, ORGANIZATION_CATEGORIES } from '@oxyhq/core';
6
+ import { DISPLAY_NAME_INVALID_MESSAGE, isValidDisplayName, MAX_ACCOUNT_CATEGORIES, MAX_DISPLAY_NAME_LENGTH, SELECTABLE_ACCOUNT_CATEGORY_IDS } from '@oxyhq/core';
7
7
  import { useI18n } from "../hooks/useI18n.js";
8
8
  import { useSurfaceHeader } from "../hooks/useSurfaceHeader.js";
9
9
  import { useTheme } from '@oxyhq/bloom/theme';
@@ -69,19 +69,23 @@ const kindDescription = (t, kind) => {
69
69
  return t('accounts.kinds.project.description') || 'A separate account you control';
70
70
  }
71
71
  };
72
- const organizationCategoryLabel = (t, category) => {
73
- switch (category) {
74
- case 'agency':
75
- return t('accounts.organizationCategory.agency');
76
- case 'cooperative':
77
- return t('accounts.organizationCategory.cooperative');
78
- case 'landlord':
79
- return t('accounts.organizationCategory.landlord');
80
- default:
81
- return t('accounts.organizationCategory.other');
82
- }
83
- };
84
- const ORGANIZATION_CATEGORY_OPTIONS = [...ORGANIZATION_CATEGORIES];
72
+
73
+ /**
74
+ * The visible label for a category id.
75
+ *
76
+ * A lookup, deliberately not a `switch` with a `default`: a `default` would let
77
+ * an id with no translation render as some OTHER category's label, silently and
78
+ * only in the languages that are missing it. Falling back to the raw id is ugly
79
+ * and correct — it is visibly wrong, and it names the missing key.
80
+ */
81
+ const accountCategoryLabel = (t, category) => t(`accounts.accountCategory.${category}`) || category;
82
+
83
+ /**
84
+ * Only the SELECTABLE ids are offered. The full `ACCOUNT_CATEGORY_IDS` still
85
+ * contains withdrawn ones so that accounts already carrying them keep working —
86
+ * offering them here would be how an account newly acquires one.
87
+ */
88
+ const ACCOUNT_CATEGORY_OPTIONS = SELECTABLE_ACCOUNT_CATEGORY_IDS;
85
89
 
86
90
  /**
87
91
  * Create a new account in the unified account graph (an organization, project,
@@ -109,7 +113,12 @@ const CreateAccountScreen = ({
109
113
  });
110
114
  const parentId = typeof parentAccountId === 'string' ? parentAccountId : undefined;
111
115
  const [kind, setKind] = useState('project');
112
- const [organizationCategory, setOrganizationCategory] = useState('agency');
116
+ /**
117
+ * ORDER IS THE DATA: index 0 is the primary category. Selecting appends,
118
+ * de-selecting removes, and neither sorts — so the list the user assembles is
119
+ * the list that is sent, and the first one they picked stays the primary.
120
+ */
121
+ const [accountCategories, setAccountCategories] = useState([]);
113
122
  const [username, setUsername] = useState('');
114
123
  const [displayName, setDisplayName] = useState('');
115
124
  const [displayNameError, setDisplayNameError] = useState('');
@@ -175,25 +184,39 @@ const CreateAccountScreen = ({
175
184
  const invalidPart = [firstName, lastName].find(part => part && !isValidDisplayName(part));
176
185
  setDisplayNameError(invalidPart ? t('accounts.create.displayName.invalidChars') || DISPLAY_NAME_INVALID_MESSAGE : '');
177
186
  }, [t]);
187
+
188
+ /**
189
+ * Append on select, splice out on de-select. Never sorts — appending is what
190
+ * makes the FIRST category the user chose the primary one, and a sort would
191
+ * silently reassign that. De-selecting the primary promotes whatever the user
192
+ * picked next, which is the only interpretation that does not invent a choice
193
+ * on their behalf.
194
+ */
195
+ const toggleAccountCategory = useCallback(category => {
196
+ setAccountCategories(current => {
197
+ if (current.includes(category)) {
198
+ return current.filter(entry => entry !== category);
199
+ }
200
+ if (current.length >= MAX_ACCOUNT_CATEGORIES) return current;
201
+ return [...current, category];
202
+ });
203
+ }, []);
178
204
  const canCreate = usernameStatus === 'available' && displayName.trim().length > 0 && !displayNameError && !isCreating;
179
205
  const handleCreate = useCallback(async () => {
180
206
  if (!canCreate) return;
181
207
  setIsCreating(true);
182
208
  try {
183
- // Split display name into first/last
184
- const nameParts = displayName.trim().split(/\s+/);
185
- const firstName = nameParts[0] || '';
186
- const lastName = nameParts.length > 1 ? nameParts.slice(1).join(' ') : undefined;
187
209
  const input = {
188
210
  kind,
189
211
  username,
190
212
  name: {
191
- first: firstName,
192
- last: lastName
213
+ displayName: displayName.trim()
193
214
  },
194
215
  bio: bio.trim() || undefined,
195
- ...(kind === 'organization' ? {
196
- organizationCategory
216
+ // Sent in the user's own order, or omitted entirely when empty — the
217
+ // API distinguishes "no categories" from "not stated" only by absence.
218
+ ...(accountCategories.length > 0 ? {
219
+ accountCategories
197
220
  } : null),
198
221
  ...(parentId ? {
199
222
  parentAccountId: parentId
@@ -222,7 +245,7 @@ const CreateAccountScreen = ({
222
245
  } finally {
223
246
  setIsCreating(false);
224
247
  }
225
- }, [canCreate, kind, organizationCategory, username, displayName, bio, parentId, createAccount, switchToAccount, onClose, t]);
248
+ }, [canCreate, kind, accountCategories, username, displayName, bio, parentId, createAccount, switchToAccount, onClose, t]);
226
249
 
227
250
  // Status icon + color shown alongside the username field message
228
251
  const usernameIsInvalid = usernameStatus === 'taken' || usernameStatus === 'invalid';
@@ -252,23 +275,33 @@ const CreateAccountScreen = ({
252
275
  accessibilityLabel: kindLabel(t, option.value)
253
276
  }, option.value);
254
277
  })
255
- }), kind === 'organization' ? /*#__PURE__*/_jsx(SettingsListGroup, {
256
- title: t('accounts.create.organizationCategory.label'),
257
- children: ORGANIZATION_CATEGORY_OPTIONS.map(option => {
258
- const selected = option === organizationCategory;
259
- return /*#__PURE__*/_jsx(SettingsListItem, {
260
- title: organizationCategoryLabel(t, option),
261
- onPress: () => setOrganizationCategory(option),
262
- showChevron: false,
263
- rightElement: selected ? /*#__PURE__*/_jsx(Ionicons, {
264
- name: "checkmark-circle",
265
- size: 20,
266
- color: bloomTheme.colors.primary
267
- }) : undefined,
268
- accessibilityLabel: organizationCategoryLabel(t, option)
269
- }, option);
270
- })
271
- }) : null, /*#__PURE__*/_jsx(SettingsListGroup, {
278
+ }), /*#__PURE__*/_jsxs(View, {
279
+ className: "gap-space-4",
280
+ children: [/*#__PURE__*/_jsx(SettingsListGroup, {
281
+ title: t('accounts.create.accountCategory.label'),
282
+ children: ACCOUNT_CATEGORY_OPTIONS.map(option => {
283
+ const position = accountCategories.indexOf(option);
284
+ const selected = position >= 0;
285
+ const label = accountCategoryLabel(t, option);
286
+ return /*#__PURE__*/_jsx(SettingsListItem, {
287
+ title: label,
288
+ disabled: !selected && accountCategories.length >= MAX_ACCOUNT_CATEGORIES,
289
+ onPress: () => toggleAccountCategory(option),
290
+ showChevron: false,
291
+ rightElement: selected ? /*#__PURE__*/_jsx(Text, {
292
+ className: "text-caption-1 font-semibold text-primary",
293
+ children: position + 1
294
+ }) : undefined,
295
+ accessibilityLabel: label
296
+ }, option);
297
+ })
298
+ }), /*#__PURE__*/_jsx(Text, {
299
+ className: "text-caption font-caption text-text-tertiary px-space-4",
300
+ children: t('accounts.create.accountCategory.hint', {
301
+ max: MAX_ACCOUNT_CATEGORIES
302
+ })
303
+ })]
304
+ }), /*#__PURE__*/_jsx(SettingsListGroup, {
272
305
  title: t('accounts.create.detailsSection') || 'Details',
273
306
  children: /*#__PURE__*/_jsxs(View, {
274
307
  className: "p-space-16 gap-space-16",
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useCallback","useRef","useEffect","View","ActivityIndicator","Ionicons","DISPLAY_NAME_INVALID_MESSAGE","isValidDisplayName","MAX_DISPLAY_NAME_LENGTH","ORGANIZATION_CATEGORIES","useI18n","useSurfaceHeader","useTheme","Text","Button","TextField","TextFieldInput","SettingsListGroup","SettingsListItem","useOxy","toast","jsx","_jsx","jsxs","_jsxs","USERNAME_REGEX","DEBOUNCE_MS","USERNAME_MAX","DISPLAY_NAME_MAX","BIO_MAX","KIND_OPTIONS","value","icon","kindLabel","t","kind","kindDescription","organizationCategoryLabel","category","ORGANIZATION_CATEGORY_OPTIONS","CreateAccountScreen","onClose","goBack","parentAccountId","bloomTheme","oxyServices","createAccount","switchToAccount","title","subtitle","parentId","undefined","setKind","organizationCategory","setOrganizationCategory","username","setUsername","displayName","setDisplayName","displayNameError","setDisplayNameError","bio","setBio","usernameStatus","setUsernameStatus","usernameMessage","setUsernameMessage","isCreating","setIsCreating","debounceTimerRef","usernameCheckSeqRef","current","clearTimeout","checkUsername","length","test","seq","setTimeout","result","checkUsernameAvailability","available","message","handleUsernameChange","cleaned","toLowerCase","replace","handleDisplayNameChange","trimmed","trim","nameParts","split","firstName","lastName","slice","join","invalidPart","find","part","canCreate","handleCreate","input","name","first","last","account","success","accountId","catch","error","Error","usernameIsInvalid","statusColor","colors","negative","textSecondary","className","children","map","option","selected","size","color","primary","description","onPress","showChevron","rightElement","accessibilityLabel","isInvalid","floatingLabel","label","onChangeText","autoCapitalize","autoCorrect","autoComplete","maxLength","style","Boolean","multiline","numberOfLines","textAlignVertical","variant","disabled","loading"],"sourceRoot":"../../../../src","sources":["ui/screens/CreateAccountScreen.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useCallback","useRef","useEffect","View","ActivityIndicator","Ionicons","DISPLAY_NAME_INVALID_MESSAGE","isValidDisplayName","MAX_ACCOUNT_CATEGORIES","MAX_DISPLAY_NAME_LENGTH","SELECTABLE_ACCOUNT_CATEGORY_IDS","useI18n","useSurfaceHeader","useTheme","Text","Button","TextField","TextFieldInput","SettingsListGroup","SettingsListItem","useOxy","toast","jsx","_jsx","jsxs","_jsxs","USERNAME_REGEX","DEBOUNCE_MS","USERNAME_MAX","DISPLAY_NAME_MAX","BIO_MAX","KIND_OPTIONS","value","icon","kindLabel","t","kind","kindDescription","accountCategoryLabel","category","ACCOUNT_CATEGORY_OPTIONS","CreateAccountScreen","onClose","goBack","parentAccountId","bloomTheme","oxyServices","createAccount","switchToAccount","title","subtitle","parentId","undefined","setKind","accountCategories","setAccountCategories","username","setUsername","displayName","setDisplayName","displayNameError","setDisplayNameError","bio","setBio","usernameStatus","setUsernameStatus","usernameMessage","setUsernameMessage","isCreating","setIsCreating","debounceTimerRef","usernameCheckSeqRef","current","clearTimeout","checkUsername","length","test","seq","setTimeout","result","checkUsernameAvailability","available","message","handleUsernameChange","cleaned","toLowerCase","replace","handleDisplayNameChange","trimmed","trim","nameParts","split","firstName","lastName","slice","join","invalidPart","find","part","toggleAccountCategory","includes","filter","entry","canCreate","handleCreate","input","name","account","success","accountId","catch","error","Error","usernameIsInvalid","statusColor","colors","negative","textSecondary","className","children","map","option","selected","size","color","primary","description","onPress","showChevron","rightElement","accessibilityLabel","position","indexOf","label","disabled","max","isInvalid","floatingLabel","onChangeText","autoCapitalize","autoCorrect","autoComplete","maxLength","style","Boolean","multiline","numberOfLines","textAlignVertical","variant","loading"],"sourceRoot":"../../../../src","sources":["ui/screens/CreateAccountScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@ import { authenticatedApiCall } from '@oxyhq/core';
4
4
  import { useAccountStore } from "../stores/accountStore.js";
5
5
  import { useAuthStore } from "../stores/authStore.js";
6
6
  import { queryKeys, invalidateUserQueries, invalidateAccountQueries } from "../hooks/queries/queryKeys.js";
7
+ import { clearedFieldsFromProfileUpdate, upsertCachedUser } from "../hooks/queries/userCache.js";
7
8
 
8
9
  /**
9
10
  * Refreshes avatar in accountStore with cache-busted URL to force image reload.
@@ -45,6 +46,10 @@ export async function updateProfileWithAvatar(updates, oxyServices, activeSessio
45
46
 
46
47
  // Update authStore so frontend components see the changes immediately
47
48
  useAuthStore.getState().setUser(data);
49
+ const cleared = clearedFieldsFromProfileUpdate(updates);
50
+ upsertCachedUser(queryClient, data, data.id, {
51
+ cleared: cleared.length > 0 ? cleared : undefined
52
+ });
48
53
 
49
54
  // If avatar was updated, refresh accountStore with a cache-busted URL. An
50
55
  // EMPTY avatar is a removal: clear both fields so the switcher falls back to