@amityco/ts-sdk 7.29.1-c2a29dc.0 → 7.29.1-e932a95f.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 (57) hide show
  1. package/dist/@types/domains/event.d.ts +1 -1
  2. package/dist/@types/domains/event.d.ts.map +1 -1
  3. package/dist/@types/domains/group.d.ts +2 -2
  4. package/dist/@types/domains/group.d.ts.map +1 -1
  5. package/dist/@types/domains/user.d.ts +20 -0
  6. package/dist/@types/domains/user.d.ts.map +1 -1
  7. package/dist/channelRepository/events/onUserDeleted.d.ts.map +1 -1
  8. package/dist/communityRepository/communityMembership/events/onUserDeleted.d.ts.map +1 -1
  9. package/dist/communityRepository/utils/payload.d.ts.map +1 -1
  10. package/dist/group/utils/withUser.d.ts +3 -3
  11. package/dist/group/utils/withUser.d.ts.map +1 -1
  12. package/dist/index.cjs.js +230 -70
  13. package/dist/index.esm.js +231 -71
  14. package/dist/index.umd.js +2 -2
  15. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  16. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts.map +1 -1
  17. package/dist/postRepository/api/tests/integration/setup.d.ts +3 -3
  18. package/dist/postRepository/utils/payload.d.ts.map +1 -1
  19. package/dist/userRepository/api/flagUser.d.ts.map +1 -1
  20. package/dist/userRepository/api/isUserFlaggedByMe.d.ts +4 -0
  21. package/dist/userRepository/api/isUserFlaggedByMe.d.ts.map +1 -1
  22. package/dist/userRepository/api/queryBlockedUsers.d.ts.map +1 -1
  23. package/dist/userRepository/api/updateUser.d.ts.map +1 -1
  24. package/dist/userRepository/internalApi/getFlagsByMe.d.ts +21 -0
  25. package/dist/userRepository/internalApi/getFlagsByMe.d.ts.map +1 -0
  26. package/dist/userRepository/observers/getBlockedUsers/BlockedUserLiveCollectionController.d.ts +2 -2
  27. package/dist/userRepository/observers/getBlockedUsers/BlockedUserLiveCollectionController.d.ts.map +1 -1
  28. package/dist/userRepository/observers/getBlockingUsers/LiveCollectionController.d.ts +1 -1
  29. package/dist/userRepository/observers/getBlockingUsers/LiveCollectionController.d.ts.map +1 -1
  30. package/dist/userRepository/observers/getUsers/UserLiveCollectionController.d.ts +2 -2
  31. package/dist/userRepository/observers/getUsers/UserLiveCollectionController.d.ts.map +1 -1
  32. package/dist/userRepository/observers/searchUserByDisplayName/SearchUserLiveCollectionController.d.ts +2 -2
  33. package/dist/userRepository/observers/searchUserByDisplayName/SearchUserLiveCollectionController.d.ts.map +1 -1
  34. package/dist/userRepository/observers/searchUserByDisplayName.d.ts +1 -1
  35. package/dist/userRepository/observers/searchUserByDisplayName.d.ts.map +1 -1
  36. package/dist/userRepository/observers/searchUsers.d.ts +1 -1
  37. package/dist/userRepository/observers/searchUsers.d.ts.map +1 -1
  38. package/dist/userRepository/utils/submitUserReport.d.ts.map +1 -1
  39. package/dist/utils/bloomFilter.d.ts +9 -0
  40. package/dist/utils/bloomFilter.d.ts.map +1 -0
  41. package/dist/utils/linkedObject/tests/userLinkedObject.test.d.ts +2 -0
  42. package/dist/utils/linkedObject/tests/userLinkedObject.test.d.ts.map +1 -0
  43. package/dist/utils/linkedObject/userLinkedObject.d.ts.map +1 -1
  44. package/dist/utils/tests/bloomFilter.test.d.ts +2 -0
  45. package/dist/utils/tests/bloomFilter.test.d.ts.map +1 -0
  46. package/dist/utils/tests/client.d.ts +1 -1
  47. package/dist/utils/tests/client.d.ts.map +1 -1
  48. package/dist/utils/tests/dummy/channel.d.ts +27 -10
  49. package/dist/utils/tests/dummy/channel.d.ts.map +1 -1
  50. package/dist/utils/tests/dummy/comment.d.ts +1 -1
  51. package/dist/utils/tests/dummy/community.d.ts +2 -2
  52. package/dist/utils/tests/dummy/community.d.ts.map +1 -1
  53. package/dist/utils/tests/dummy/message.d.ts +1 -1
  54. package/dist/utils/tests/dummy/token.d.ts +1 -1
  55. package/dist/utils/tests/dummy/user.d.ts +10 -12
  56. package/dist/utils/tests/dummy/user.d.ts.map +1 -1
  57. package/package.json +1 -1
@@ -82,7 +82,7 @@ declare global {
82
82
  type InternalEventResponse = RawEventResponse;
83
83
  type EventResponseLinkObject = {
84
84
  event?: Amity.InternalEvent;
85
- user?: Amity.InternalUser;
85
+ user?: Amity.User;
86
86
  };
87
87
  type InternalEvent = RawEvent;
88
88
  type Event = Amity.InternalEvent & Amity.EventLinkObject;
@@ -1 +1 @@
1
- {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/event.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ declare global {
24
24
  communityMembership: GroupMembership;
25
25
  } : never) & Amity.Timestamps;
26
26
  type MemberWithUser<T extends Amity.GroupType> = Member<T> & {
27
- readonly user?: Amity.InternalUser;
27
+ readonly user?: Amity.User;
28
28
  };
29
29
  type RawMembership<T extends Amity.GroupType> = {
30
30
  isBanned: boolean;
@@ -33,7 +33,7 @@ declare global {
33
33
  lastActivity: Amity.timestamp;
34
34
  } & Amity.Member<T> & Amity.Accredited;
35
35
  type Membership<T extends Amity.GroupType> = Amity.RawMembership<T> & {
36
- readonly user?: Amity.InternalUser;
36
+ readonly user?: Amity.User;
37
37
  };
38
38
  }
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,aAAa;YAChB,OAAO,YAAY;YACnB,SAAS,cAAc;SACxB;QACD,KAAK,SAAS,GAAG,GAAG,aAAa,EAAE,CAAC;QACpC,KAAK,eAAe,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;QAE9D,KAAK,KAAK,GAAG;YACX,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;QAEF,KAAK,MAAM,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI;YACvC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACrC,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACrD,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,SAAS,SAAS,GACpB;YACE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACtC,UAAU,EAAE,eAAe,CAAC;YAC5B,aAAa,EAAE,MAAM,CAAC;YACtB,oBAAoB,EAAE,MAAM,CAAC;SAC9B,GACD,CAAC,SAAS,WAAW,GACrB;YACE,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC5C,mBAAmB,EAAE,eAAe,CAAC;SACtC,GACD,KAAK,CAAC,GACR,KAAK,CAAC,UAAU,CAAC;QAEnB,KAAK,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG;YAC3D,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;SACpC,CAAC;QAEF,KAAK,aAAa,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI;YAC9C,QAAQ,EAAE,OAAO,CAAC;YAClB,OAAO,EAAE,OAAO,CAAC;YACjB,WAAW,EAAE,MAAM,CAAC;YACpB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;SAC/B,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GACjB,KAAK,CAAC,UAAU,CAAC;QAEnB,KAAK,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;YACpE,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;SACpC,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,aAAa;YAChB,OAAO,YAAY;YACnB,SAAS,cAAc;SACxB;QACD,KAAK,SAAS,GAAG,GAAG,aAAa,EAAE,CAAC;QACpC,KAAK,eAAe,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;QAE9D,KAAK,KAAK,GAAG;YACX,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;QAEF,KAAK,MAAM,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI;YACvC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACrC,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACrD,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,SAAS,SAAS,GACpB;YACE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACtC,UAAU,EAAE,eAAe,CAAC;YAC5B,aAAa,EAAE,MAAM,CAAC;YACtB,oBAAoB,EAAE,MAAM,CAAC;SAC9B,GACD,CAAC,SAAS,WAAW,GACrB;YACE,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;YAC5C,mBAAmB,EAAE,eAAe,CAAC;SACtC,GACD,KAAK,CAAC,GACR,KAAK,CAAC,UAAU,CAAC;QAEnB,KAAK,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG;YAC3D,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC;SAC5B,CAAC;QAEF,KAAK,aAAa,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI;YAC9C,QAAQ,EAAE,OAAO,CAAC;YAClB,OAAO,EAAE,OAAO,CAAC;YACjB,WAAW,EAAE,MAAM,CAAC;YACpB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;SAC/B,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GACjB,KAAK,CAAC,UAAU,CAAC;QAEnB,KAAK,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;YACpE,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC;SAC5B,CAAC;KACH;CACF"}
@@ -131,6 +131,26 @@ declare global {
131
131
  } & Amity.Metadata & Amity.Taggable & Amity.Flaggable & Amity.Accredited & Amity.Timestamps & Amity.SoftDelete & Amity.Subscribable;
132
132
  type User = Amity.InternalUser & {
133
133
  avatar?: Amity.File<'image'> | null;
134
+ /**
135
+ * Whether the current user has probably flagged this user, computed locally from
136
+ * `hashFlag` (a Bloom filter of reporter ids) with no request. `false` is exact; `true`
137
+ * may be a false positive, and it says nothing about the report type. For the exact,
138
+ * per-type answer call `getUserFlagsByMe()`.
139
+ *
140
+ * It reflects this object as of its last update. A user object is a snapshot: an instance
141
+ * you already hold does not change after a flag or unflag. Observe the user with
142
+ * `UserRepository.getUser(userId, callback)` and read `isFlaggedByMe` from each
143
+ * notification to keep a badge current; a report filed on another device shows once the
144
+ * user is refreshed.
145
+ */
146
+ readonly isFlaggedByMe: boolean;
147
+ /**
148
+ * The current user's own reports on this user, from `GET /api/v4/users/:userId/isFlagByMe`.
149
+ * When `isFlaggedByMe` is `false` (exact, as of this user object's last update) it resolves
150
+ * `{ isFlagByMe: false, flags: [] }` without a request; otherwise it reads the server and
151
+ * returns the payload as is, including `isFlagByMe: false` after a Bloom false positive.
152
+ */
153
+ getUserFlagsByMe: () => Promise<Amity.UserFlagByMe>;
134
154
  };
135
155
  type QueryUsers = {
136
156
  filter?: 'all' | 'flagged';
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/user.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"onUserDeleted.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/events/onUserDeleted.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,aAAa,cACZ,MAAM,0BAEI,MAAM,qBAAqB,UAAU,MAAM,UAAU,CAAC,SAAS,CAAC,KAAK,IAAI,uBAyC9F,CAAC"}
1
+ {"version":3,"file":"onUserDeleted.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/events/onUserDeleted.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa,cACZ,MAAM,0BAEI,MAAM,qBAAqB,UAAU,MAAM,UAAU,CAAC,SAAS,CAAC,KAAK,IAAI,uBAyC9F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"onUserDeleted.d.ts","sourceRoot":"","sources":["../../../../src/communityRepository/communityMembership/events/onUserDeleted.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,gBACV,MAAM,4BAEI,MAAM,iBAAiB,UAAU,MAAM,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,uBAwChG,CAAC"}
1
+ {"version":3,"file":"onUserDeleted.d.ts","sourceRoot":"","sources":["../../../../src/communityRepository/communityMembership/events/onUserDeleted.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,gBACV,MAAM,4BAEI,MAAM,iBAAiB,UAAU,MAAM,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,uBAwChG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/communityRepository/utils/payload.ts"],"names":[],"mappings":"AAeA,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE;IAAE,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,CAAA;CAAE,6BAUpF;AAED,eAAO,MAAM,uBAAuB,eACtB,MAAM,gBAAgB,KACjC,MAAM,yBA6BR,CAAC;AAEF,eAAO,MAAM,kCAAkC,eACjC,MAAM,2BAA2B,KAC5C,MAAM,2BAiBR,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAChC,MAAM,0BAA0B,KAC3C,MAAM,mCAyBR,CAAC;AAEF,eAAO,MAAM,uBAAuB;;kBAElB,MAAM,SAAS,CAAC,aAAa,CAAC;;;;;CAgB/C,CAAC;AAEF,eAAO,MAAM,qCAAqC,0CAG/C,MAAM,8BAA8B,KAAG,MAAM,uCAM/C,CAAC"}
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../src/communityRepository/utils/payload.ts"],"names":[],"mappings":"AAgBA,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE;IAAE,WAAW,EAAE,KAAK,CAAC,YAAY,EAAE,CAAA;CAAE,6BAUpF;AAED,eAAO,MAAM,uBAAuB,eACtB,MAAM,gBAAgB,KACjC,MAAM,yBA6BR,CAAC;AAEF,eAAO,MAAM,kCAAkC,eACjC,MAAM,2BAA2B,KAC5C,MAAM,2BAiBR,CAAC;AAEF,eAAO,MAAM,iCAAiC,eAChC,MAAM,0BAA0B,KAC3C,MAAM,mCAyBR,CAAC;AAEF,eAAO,MAAM,uBAAuB;;kBAElB,MAAM,SAAS,CAAC,aAAa,CAAC;;;;;CAgB/C,CAAC;AAEF,eAAO,MAAM,qCAAqC,0CAG/C,MAAM,8BAA8B,KAAG,MAAM,uCAM/C,CAAC"}
@@ -25,7 +25,7 @@ export declare const convertRawMembershipToMembership: <T extends "channel" | "c
25
25
  * @returns The membership model object that is already mapped to user
26
26
  * @hidden
27
27
  */
28
- export declare const withUser: <M extends Record<any, any>, I extends keyof M = "userId", U extends string = "user">(member: M, userIdProp?: I, userProp?: U) => Record<U, Amity.InternalUser | undefined> & M;
28
+ export declare const withUser: <M extends Record<any, any>, I extends keyof M = "userId", U extends string = "user">(member: M, userIdProp?: I, userProp?: U) => Record<U, Amity.User | undefined> & M;
29
29
  /**
30
30
  * Mapping membership model with user object
31
31
  *
@@ -36,7 +36,7 @@ export declare const withUser: <M extends Record<any, any>, I extends keyof M =
36
36
  * mapped to users
37
37
  * @hidden
38
38
  */
39
- export declare const withUsers: <M extends Record<any, any>[], I extends keyof M[number] = "userId", U extends string = "user">(members: M, userIdProp?: I, userProp?: U) => (Record<U, Amity.InternalUser | undefined> & M[number])[];
39
+ export declare const withUsers: <M extends Record<any, any>[], I extends keyof M[number] = "userId", U extends string = "user">(members: M, userIdProp?: I, userProp?: U) => (Record<U, Amity.User | undefined> & M[number])[];
40
40
  /**
41
41
  * Transform members prop in any payload with attached users members
42
42
  *
@@ -47,5 +47,5 @@ export declare const withUsers: <M extends Record<any, any>[], I extends keyof M
47
47
  * @returns The transforming payload
48
48
  * @hidden
49
49
  */
50
- export declare const prepareMembershipPayload: <P extends Record<any, any>, M extends keyof P, I extends keyof P[M][number] = "userId", U extends string = "user">(payload: P, memberProp: M, userIdProp?: I, userProp?: U) => Omit<P, M> & Record<M, (Record<U, Amity.InternalUser | undefined> & P[M][number])[]>;
50
+ export declare const prepareMembershipPayload: <P extends Record<any, any>, M extends keyof P, I extends keyof P[M][number] = "userId", U extends string = "user">(payload: P, memberProp: M, userIdProp?: I, userProp?: U) => Omit<P, M> & Record<M, (Record<U, Amity.User | undefined> & P[M][number])[]>;
51
51
  //# sourceMappingURL=withUser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withUser.d.ts","sourceRoot":"","sources":["../../../src/group/utils/withUser.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gCAAgC,4FAmB5C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,iLAgCpB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,wMAUrB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB,sQAkBpC,CAAC"}
1
+ {"version":3,"file":"withUser.d.ts","sourceRoot":"","sources":["../../../src/group/utils/withUser.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gCAAgC,4FAoB5C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,yKAgCpB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,gMAUrB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB,8PAkBpC,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -1852,18 +1852,167 @@ async function modifyMqttConnection() {
1852
1852
  }
1853
1853
  }
1854
1854
 
1855
+ /**
1856
+ * ```js
1857
+ * import { getFlagsByMe } from '~/userRepository/internalApi/getFlagsByMe'
1858
+ * const { isFlagByMe, flags } = await getFlagsByMe('userId')
1859
+ * ```
1860
+ *
1861
+ * The v4 read behind `user.getUserFlagsByMe()` and the deprecated
1862
+ * `UserRepository.isUserFlaggedByMe`: `GET /api/v4/users/:userId/isFlagByMe`, returned as
1863
+ * received. Nothing is filtered, cached or persisted, and `hashFlag` is not consulted here.
1864
+ * This is the Web counterpart of iOS `ASCUserService.getFlagsByMe` and Android
1865
+ * `UserRepository.getFlagsByMe`, kept apart from the deprecated public function so the
1866
+ * user-object read does not change if that function ever does.
1867
+ *
1868
+ * @param userId The ID of the user whose reports by the caller are read
1869
+ * @returns the caller's {@link Amity.UserFlagByMe} on that user
1870
+ *
1871
+ * @category Private
1872
+ * @async
1873
+ */
1874
+ const getFlagsByMe = async (userId) => {
1875
+ const client = getActiveClient();
1876
+ client.log('user/getFlagsByMe', userId);
1877
+ const { data } = await client.http.get(`/api/v4/users/${encodeURIComponent(userId)}/isFlagByMe`);
1878
+ return data;
1879
+ };
1880
+
1881
+ /* eslint-disable no-bitwise */
1882
+ /**
1883
+ * Client-side test of the `hashFlag` Bloom filter the backend attaches to flaggable objects.
1884
+ *
1885
+ * The filter holds the ids of every user who flagged the object: `bits` is its size, `hashes`
1886
+ * the number of hash functions per id and `hash` the bit array, base64-encoded. This is a port
1887
+ * of the test iOS (`_BloomFilter`) and Android (`EkoBloomFilter`) already run: FNV-1a 32-bit
1888
+ * over the UTF-8 bytes of the id with seeds `0` and `1576284489`, combined by double hashing
1889
+ * (`(a + i·b) mod bits`). A Bloom filter has no false negatives, so `false` is exact; `true`
1890
+ * means "probably", because another id's hashes may have set the same bits. The filter knows
1891
+ * nothing about report types.
1892
+ */
1893
+ const FNV_OFFSET_BASIS = 0x811c9dc5;
1894
+ const FNV_PRIME = 16777619;
1895
+ const SECOND_SEED = 1576284489;
1896
+ /** FNV-1a with the same mixing step and signed-byte handling as the native SDKs. */
1897
+ const fnv1a = (bytes, seed) => {
1898
+ let a = (FNV_OFFSET_BASIS ^ seed) >>> 0;
1899
+ for (let i = 0; i < bytes.length; i += 1) {
1900
+ // Bytes are `char` on iOS and `byte` on Android: both signed, so 0x80..0xff sign-extend.
1901
+ const byte = bytes[i] > 127 ? bytes[i] - 256 : bytes[i];
1902
+ a = Math.imul((a ^ byte) >>> 0, FNV_PRIME) >>> 0;
1903
+ }
1904
+ a = (a + (a << 13)) >>> 0;
1905
+ a = (a ^ (a >>> 7)) >>> 0;
1906
+ a = (a + (a << 3)) >>> 0;
1907
+ a = (a ^ (a >>> 17)) >>> 0;
1908
+ a = (a + (a << 5)) >>> 0;
1909
+ return a;
1910
+ };
1911
+ /** Bit positions for `value`, reproducing the native SDKs' signed 32-bit arithmetic. */
1912
+ const locationsFor = (value, bits, hashes) => {
1913
+ const bytes = jsBase64.toUint8Array(jsBase64.encode(value)); // UTF-8 bytes of the id
1914
+ const a = fnv1a(bytes, 0) | 0;
1915
+ const b = fnv1a(bytes, SECOND_SEED) | 0;
1916
+ const locations = [];
1917
+ let x = a % bits;
1918
+ for (let i = 0; i < hashes; i += 1) {
1919
+ locations.push(x < 0 ? x + bits : x);
1920
+ x = ((x + b) | 0) % bits;
1921
+ }
1922
+ return locations;
1923
+ };
1924
+ /**
1925
+ * Whether `value` is probably in the filter. `false` is exact; `true` may be a false positive.
1926
+ * A missing filter (`null`, the server's value when nobody has flagged the object), a missing
1927
+ * value or a malformed filter all answer `false`.
1928
+ */
1929
+ const testBloomFilter = (hashFlag, value) => {
1930
+ if (!hashFlag || !value)
1931
+ return false;
1932
+ const { bits, hashes, hash } = hashFlag;
1933
+ if (!(bits > 0) || !(hashes > 0) || typeof hash !== 'string')
1934
+ return false;
1935
+ let buckets;
1936
+ try {
1937
+ buckets = jsBase64.toUint8Array(hash);
1938
+ }
1939
+ catch (_a) {
1940
+ return false;
1941
+ }
1942
+ const locations = locationsFor(value, bits, hashes);
1943
+ for (let i = 0; i < locations.length; i += 1) {
1944
+ const index = Math.floor(locations[i] / 8);
1945
+ const bit = 1 << locations[i] % 8;
1946
+ if (index >= buckets.length || (buckets[index] & bit) === 0)
1947
+ return false;
1948
+ }
1949
+ return true;
1950
+ };
1951
+
1952
+ /** The current user's id, or `undefined` when there is no active client (the getter never throws). */
1953
+ const currentUserId = () => {
1954
+ try {
1955
+ return getActiveClient().userId;
1956
+ }
1957
+ catch (_a) {
1958
+ return undefined;
1959
+ }
1960
+ };
1961
+ /**
1962
+ * One `getUserFlagsByMe` closure per userId, remembering the newest user object linked for
1963
+ * that id. Live objects and collections compare snapshots with `isEqual`, which compares
1964
+ * functions by reference: a fresh closure on every linked object would make two reads of the
1965
+ * same user unequal and re-dispatch snapshots that did not change.
1966
+ */
1967
+ const flagsByMeEntries = new Map();
1968
+ /**
1969
+ * A Bloom filter has no false negatives, so `isFlaggedByMe === false` is exact and the request
1970
+ * can be skipped (REQ-012). The newest user object linked for that id is tested, as of its last
1971
+ * update. Without a filter to test, or without a current user, the server is asked.
1972
+ */
1973
+ const knownNotFlaggedByMe = (userId) => {
1974
+ var _a;
1975
+ const me = currentUserId();
1976
+ const user = (_a = flagsByMeEntries.get(userId)) === null || _a === void 0 ? void 0 : _a.latest;
1977
+ if (!me || !user || user.hashFlag === undefined)
1978
+ return false;
1979
+ return !testBloomFilter(user.hashFlag, me);
1980
+ };
1981
+ const getUserFlagsByMeFor = (user) => {
1982
+ let entry = flagsByMeEntries.get(user.userId);
1983
+ if (!entry) {
1984
+ entry = {
1985
+ latest: user,
1986
+ getUserFlagsByMe: async () => {
1987
+ if (knownNotFlaggedByMe(user.userId))
1988
+ return { isFlagByMe: false, flags: [] };
1989
+ return getFlagsByMe(user.userId);
1990
+ },
1991
+ };
1992
+ flagsByMeEntries.set(user.userId, entry);
1993
+ }
1994
+ entry.latest = user;
1995
+ return entry.getUserFlagsByMe;
1996
+ };
1855
1997
  const userLinkedObject = (user) => {
1856
1998
  return Object.assign(Object.assign({}, user), { get avatar() {
1857
1999
  var _a;
1858
2000
  if (!user.avatarFileId)
1859
- return undefined;
1860
- const avatar = (_a = pullFromCache([
1861
- 'file',
1862
- 'get',
1863
- `${user.avatarFileId}`,
1864
- ])) === null || _a === void 0 ? void 0 : _a.data;
2001
+ return null;
2002
+ const avatar = (_a = pullFromCache(['file', 'get', user.avatarFileId])) === null || _a === void 0 ? void 0 : _a.data;
2003
+ if (!avatar)
2004
+ return null;
1865
2005
  return avatar;
1866
- } });
2006
+ },
2007
+ get isFlaggedByMe() {
2008
+ // Local Bloom-filter test on this object's own hashFlag: exact when false, "probably"
2009
+ // when true, type-blind, no request. getUserFlagsByMe() gives the exact, per-type answer.
2010
+ return testBloomFilter(user.hashFlag, currentUserId());
2011
+ },
2012
+ /* begin_public_function
2013
+ id: user.get_flags_by_me
2014
+ */
2015
+ getUserFlagsByMe: getUserFlagsByMeFor(user) });
1867
2016
  };
1868
2017
 
1869
2018
  /* begin_public_function
@@ -2924,7 +3073,8 @@ const convertRawMembershipToMembership = (member) => {
2924
3073
  if (!userCache) {
2925
3074
  return undefined;
2926
3075
  }
2927
- return userCache;
3076
+ // Every user the SDK hands out is a linked object (isFlaggedByMe, getUserFlagsByMe, avatar).
3077
+ return userLinkedObject(userCache);
2928
3078
  } });
2929
3079
  };
2930
3080
  /**
@@ -2958,7 +3108,7 @@ const withUser = (member, userIdProp = 'userId', userProp = 'user') => {
2958
3108
  if (!userCache) {
2959
3109
  return undefined;
2960
3110
  }
2961
- return userCache;
3111
+ return userLinkedObject(userCache);
2962
3112
  } }, member);
2963
3113
  };
2964
3114
  /**
@@ -3112,12 +3262,19 @@ const getSubChannelMessagePreview = (subChannelId) => {
3112
3262
  };
3113
3263
 
3114
3264
  const getSubChannelMessagePreviewWithUser = (subChannel) => {
3115
- var _a;
3116
3265
  const messagePreview = subChannel.messagePreviewId
3117
3266
  ? getSubChannelMessagePreview(subChannel.subChannelId)
3118
3267
  : null;
3119
3268
  const messagePreviewWithUser = messagePreview
3120
- ? Object.assign(Object.assign({}, messagePreview), { user: (_a = pullFromCache(['user', 'get', messagePreview === null || messagePreview === void 0 ? void 0 : messagePreview.creatorId])) === null || _a === void 0 ? void 0 : _a.data }) : null;
3269
+ ? Object.assign(Object.assign({}, messagePreview), { user: (() => {
3270
+ var _a;
3271
+ const internalUser = (_a = pullFromCache([
3272
+ 'user',
3273
+ 'get',
3274
+ messagePreview === null || messagePreview === void 0 ? void 0 : messagePreview.creatorId,
3275
+ ])) === null || _a === void 0 ? void 0 : _a.data;
3276
+ return internalUser ? userLinkedObject(internalUser) : undefined;
3277
+ })() }) : null;
3121
3278
  return Object.assign(Object.assign({}, subChannel), { messagePreview: messagePreviewWithUser });
3122
3279
  };
3123
3280
 
@@ -11980,7 +12137,7 @@ const prepareCommunityPayload = (rawPayload) => {
11980
12137
  // map users with community
11981
12138
  const mappedCommunityUsers = rawPayload.communityUsers.map(communityUser => {
11982
12139
  const user = internalUsers.find(user => user.userId === communityUser.userId);
11983
- return Object.assign(Object.assign({}, communityUser), { user });
12140
+ return Object.assign(Object.assign({}, communityUser), { user: user ? userLinkedObject(user) : undefined });
11984
12141
  });
11985
12142
  const communityWithMembershipStatus = updateMembershipStatus(communitiesWithPostSetting, mappedCommunityUsers);
11986
12143
  return Object.assign(Object.assign({}, rawPayload), { users: rawPayload.users.map(convertRawUserToInternalUser), communities: communityWithMembershipStatus, communityUsers: mappedCommunityUsers });
@@ -11997,7 +12154,7 @@ const prepareCommunityMembershipPayload = (rawPayload) => {
11997
12154
  // map users with community
11998
12155
  const mappedCommunityUsers = rawPayload.communityUsers.map(communityUser => {
11999
12156
  const user = rawPayload.users.find(user => user.userId === communityUser.userId);
12000
- return Object.assign(Object.assign({}, communityUser), { user });
12157
+ return Object.assign(Object.assign({}, communityUser), { user: user ? userLinkedObject(convertRawUserToInternalUser(user)) : undefined });
12001
12158
  });
12002
12159
  const communityWithMembershipStatus = updateMembershipStatus(communitiesWithPostSetting, mappedCommunityUsers);
12003
12160
  return Object.assign(Object.assign({}, rawPayload), { communities: communityWithMembershipStatus, communityUsers: mappedCommunityUsers });
@@ -15422,7 +15579,7 @@ const updateUser = async (userId, patch) => {
15422
15579
  ingestInCache(payload, { cachedAt });
15423
15580
  fireEvent('user.updated', data);
15424
15581
  return {
15425
- data: payload.users.find(user => user.userId === userId),
15582
+ data: userLinkedObject(payload.users.find(user => user.userId === userId)),
15426
15583
  cachedAt,
15427
15584
  };
15428
15585
  };
@@ -15474,7 +15631,7 @@ const flagUser = async (userId, options) => {
15474
15631
  ingestInCache(payload);
15475
15632
  }
15476
15633
  fireEvent('user.flagged', data);
15477
- return (_a = payload.users.find(user => user.userId === userId)) !== null && _a !== void 0 ? _a : payload.users[0];
15634
+ return userLinkedObject((_a = payload.users.find(user => user.userId === userId)) !== null && _a !== void 0 ? _a : payload.users[0]);
15478
15635
  };
15479
15636
  /* end_public_function */
15480
15637
 
@@ -15495,7 +15652,7 @@ const submitUserReport = async (apiName, userId, body) => {
15495
15652
  ingestInCache(payload);
15496
15653
  }
15497
15654
  fireEvent('user.flagged', data);
15498
- return (_a = payload.users.find(user => user.userId === userId)) !== null && _a !== void 0 ? _a : payload.users[0];
15655
+ return userLinkedObject((_a = payload.users.find(user => user.userId === userId)) !== null && _a !== void 0 ? _a : payload.users[0]);
15499
15656
  };
15500
15657
 
15501
15658
  /** Maximum `comment` length, in string length units, after trimming. */
@@ -15732,6 +15889,10 @@ const unflagUser = async (userId, options) => {
15732
15889
  * Breaking change: earlier versions returned a boolean from the v3 endpoint, which the
15733
15890
  * backend has deprecated. Read `isFlagByMe` on the result for the same answer.
15734
15891
  *
15892
+ * @deprecated On an {@link Amity.User} you already hold, read `user.isFlaggedByMe` for a
15893
+ * request-free badge and call `user.getUserFlagsByMe()` for the reports; it skips the request
15894
+ * when the Bloom test says the user is not flagged. This function remains the underlying request.
15895
+ *
15735
15896
  * @param userId The ID of the user to check
15736
15897
  * @returns the caller's {@link Amity.UserFlagByMe} on that user
15737
15898
  *
@@ -15741,8 +15902,7 @@ const unflagUser = async (userId, options) => {
15741
15902
  const isUserFlaggedByMe = async (userId) => {
15742
15903
  const client = getActiveClient();
15743
15904
  client.log('user/isUserFlaggedByMe', userId);
15744
- const { data } = await client.http.get(`/api/v4/users/${encodeURIComponent(userId)}/isFlagByMe`);
15745
- return data;
15905
+ return getFlagsByMe(userId);
15746
15906
  };
15747
15907
  /* end_public_function */
15748
15908
 
@@ -15992,16 +16152,14 @@ const getUser = (userId, callback) => {
15992
16152
  };
15993
16153
  /* end_public_function */
15994
16154
 
15995
- class UserPaginationController extends PaginationController {
15996
- async getRequest(queryParams, token) {
15997
- const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["limit"]);
15998
- const options = token ? { token } : { limit };
15999
- const { data: queryResponse } = await this.http.get(`/api/v3/users`, {
16000
- params: Object.assign(Object.assign({}, params), { options, isDeleted: false }),
16001
- });
16002
- return queryResponse;
16003
- }
16004
- }
16155
+ var EnumUserActions;
16156
+ (function (EnumUserActions) {
16157
+ EnumUserActions["OnUserDeleted"] = "onUserDeleted";
16158
+ EnumUserActions["OnUserUpdated"] = "onUserUpdated";
16159
+ EnumUserActions["OnUserFlagged"] = "onUserFlagged";
16160
+ EnumUserActions["OnUserUnflagged"] = "onUserUnflagged";
16161
+ EnumUserActions["OnUserFlagCleared"] = "onUserFlagCleared";
16162
+ })(EnumUserActions || (EnumUserActions = {}));
16005
16163
 
16006
16164
  class UserQueryStreamController extends QueryStreamController {
16007
16165
  constructor(query, cacheKey, notifyChange, preparePayload) {
@@ -16049,14 +16207,16 @@ class UserQueryStreamController extends QueryStreamController {
16049
16207
  }
16050
16208
  }
16051
16209
 
16052
- var EnumUserActions;
16053
- (function (EnumUserActions) {
16054
- EnumUserActions["OnUserDeleted"] = "onUserDeleted";
16055
- EnumUserActions["OnUserUpdated"] = "onUserUpdated";
16056
- EnumUserActions["OnUserFlagged"] = "onUserFlagged";
16057
- EnumUserActions["OnUserUnflagged"] = "onUserUnflagged";
16058
- EnumUserActions["OnUserFlagCleared"] = "onUserFlagCleared";
16059
- })(EnumUserActions || (EnumUserActions = {}));
16210
+ class UserPaginationController extends PaginationController {
16211
+ async getRequest(queryParams, token) {
16212
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["limit"]);
16213
+ const options = token ? { token } : { limit };
16214
+ const { data: queryResponse } = await this.http.get(`/api/v3/users`, {
16215
+ params: Object.assign(Object.assign({}, params), { options, isDeleted: false }),
16216
+ });
16217
+ return queryResponse;
16218
+ }
16219
+ }
16060
16220
 
16061
16221
  class UserLiveCollectionController extends LiveCollectionController {
16062
16222
  constructor(query, callback) {
@@ -16173,16 +16333,17 @@ const getUsers = (params, callback, config) => {
16173
16333
  };
16174
16334
  /* end_public_function */
16175
16335
 
16176
- class BlockedUserPaginationController extends PaginationController {
16177
- async getRequest(queryParams, token) {
16178
- const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["limit"]);
16179
- const options = token ? { token } : { limit };
16180
- const { data: queryResponse } = await this.http.get('/api/v4/me/user-blocks', {
16181
- params: Object.assign(Object.assign({}, params), { options, isDeleted: false }),
16182
- });
16183
- return queryResponse;
16336
+ const convertEventPayload = (eventHandler, sourceModelProp, destinationDomain) => (callback) => eventHandler(sourceModel => {
16337
+ var _a;
16338
+ if (!sourceModel) {
16339
+ return sourceModel;
16184
16340
  }
16185
- }
16341
+ const cacheKey = [destinationDomain, 'get', `${sourceModel[sourceModelProp]}`];
16342
+ const model = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
16343
+ if (!model)
16344
+ return;
16345
+ return callback(model);
16346
+ });
16186
16347
 
16187
16348
  var EnumBlockActions;
16188
16349
  (function (EnumBlockActions) {
@@ -16238,17 +16399,16 @@ class BlockedUserQueryStreamController extends QueryStreamController {
16238
16399
  }
16239
16400
  }
16240
16401
 
16241
- const convertEventPayload = (eventHandler, sourceModelProp, destinationDomain) => (callback) => eventHandler(sourceModel => {
16242
- var _a;
16243
- if (!sourceModel) {
16244
- return sourceModel;
16402
+ class BlockedUserPaginationController extends PaginationController {
16403
+ async getRequest(queryParams, token) {
16404
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["limit"]);
16405
+ const options = token ? { token } : { limit };
16406
+ const { data: queryResponse } = await this.http.get('/api/v4/me/user-blocks', {
16407
+ params: Object.assign(Object.assign({}, params), { options, isDeleted: false }),
16408
+ });
16409
+ return queryResponse;
16245
16410
  }
16246
- const cacheKey = [destinationDomain, 'get', `${sourceModel[sourceModelProp]}`];
16247
- const model = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
16248
- if (!model)
16249
- return;
16250
- return callback(model);
16251
- });
16411
+ }
16252
16412
 
16253
16413
  class BlockedUserLiveCollectionController extends LiveCollectionController {
16254
16414
  constructor(query, callback) {
@@ -16558,17 +16718,6 @@ const getBlockingUsers = (callback) => {
16558
16718
  };
16559
16719
  /* end_public_function */
16560
16720
 
16561
- class SearchUserPaginationController extends PaginationController {
16562
- async getRequest(queryParams, token) {
16563
- const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, displayName } = queryParams, params = __rest(queryParams, ["limit", "displayName"]);
16564
- const options = token ? { token } : { limit };
16565
- const { data: queryResponse } = await this.http.get(`/api/v3/users`, {
16566
- params: Object.assign(Object.assign({}, params), { keyword: displayName, options, isDeleted: false }),
16567
- });
16568
- return queryResponse;
16569
- }
16570
- }
16571
-
16572
16721
  class SearchUserQueryStreamController extends QueryStreamController {
16573
16722
  constructor(query, cacheKey, notifyChange, preparePayload) {
16574
16723
  super(query, cacheKey);
@@ -16615,6 +16764,17 @@ class SearchUserQueryStreamController extends QueryStreamController {
16615
16764
  }
16616
16765
  }
16617
16766
 
16767
+ class SearchUserPaginationController extends PaginationController {
16768
+ async getRequest(queryParams, token) {
16769
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, displayName } = queryParams, params = __rest(queryParams, ["limit", "displayName"]);
16770
+ const options = token ? { token } : { limit };
16771
+ const { data: queryResponse } = await this.http.get(`/api/v3/users`, {
16772
+ params: Object.assign(Object.assign({}, params), { keyword: displayName, options, isDeleted: false }),
16773
+ });
16774
+ return queryResponse;
16775
+ }
16776
+ }
16777
+
16618
16778
  class SearchUserLiveCollectionController extends LiveCollectionController {
16619
16779
  constructor(query, callback) {
16620
16780
  var _a;
@@ -17481,7 +17641,7 @@ const preparePostPayload = (payload) => {
17481
17641
  // map users with community
17482
17642
  const mappedCommunityUsers = postPayload.communityUsers.map(communityUser => {
17483
17643
  const user = postPayload.users.find(user => user.userId === communityUser.userId);
17484
- return Object.assign(Object.assign({}, communityUser), { user });
17644
+ return Object.assign(Object.assign({}, communityUser), { user: user ? userLinkedObject(convertRawUserToInternalUser(user)) : undefined });
17485
17645
  });
17486
17646
  const communityWithMembershipStatus = updateMembershipStatus(communitiesWithPostSetting, mappedCommunityUsers);
17487
17647
  let mappedNewStream = [];
@@ -23700,7 +23860,7 @@ const onUserDeleted$1 = (channelId) => (callback) => {
23700
23860
  'get',
23701
23861
  channelUserCacheKey,
23702
23862
  ])) === null || _a === void 0 ? void 0 : _a.data;
23703
- upsertInCache(['channelUsers', 'get', channelUserCacheKey], Object.assign(Object.assign({}, cacheData), { user }));
23863
+ upsertInCache(['channelUsers', 'get', channelUserCacheKey], Object.assign(Object.assign({}, cacheData), { user: userLinkedObject(user) }));
23704
23864
  const channel = (_b = pullFromCache([
23705
23865
  'channel',
23706
23866
  'get',
@@ -25173,10 +25333,10 @@ const onUserDeleted = (communityId) => (callback) => {
25173
25333
  'get',
25174
25334
  communityUserCacheKey,
25175
25335
  ])) === null || _a === void 0 ? void 0 : _a.data;
25176
- pushToCache(['communityUsers', 'get', communityUserCacheKey], Object.assign(Object.assign({}, cacheData), { user }));
25336
+ pushToCache(['communityUsers', 'get', communityUserCacheKey], Object.assign(Object.assign({}, cacheData), { user: userLinkedObject(user) }));
25177
25337
  const community = (_b = pullFromCache(['community', 'get', communityId])) === null || _b === void 0 ? void 0 : _b.data;
25178
25338
  callback(community, [
25179
- Object.assign(Object.assign({}, cacheData), { user }),
25339
+ Object.assign(Object.assign({}, cacheData), { user: userLinkedObject(user) }),
25180
25340
  ]);
25181
25341
  };
25182
25342
  return createEventSubscriber(client, 'user.deleted', 'user.deleted', filter);