@stream-io/feeds-client 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/@react-bindings/hooks/feed-state-hooks/index.ts +4 -0
  2. package/CHANGELOG.md +8 -0
  3. package/dist/@react-bindings/hooks/feed-state-hooks/index.d.ts +4 -0
  4. package/dist/@react-bindings/hooks/feed-state-hooks/useAggregatedActivities.d.ts +11 -0
  5. package/dist/@react-bindings/hooks/feed-state-hooks/useIsAggregatedActivityRead.d.ts +6 -0
  6. package/dist/@react-bindings/hooks/feed-state-hooks/useIsAggregatedActivitySeen.d.ts +6 -0
  7. package/dist/@react-bindings/hooks/feed-state-hooks/useNotificationStatus.d.ts +13 -0
  8. package/dist/@react-bindings/wrappers/StreamFeed.d.ts +1 -1
  9. package/dist/index-react-bindings.browser.cjs +154 -29
  10. package/dist/index-react-bindings.browser.cjs.map +1 -1
  11. package/dist/index-react-bindings.browser.js +151 -30
  12. package/dist/index-react-bindings.browser.js.map +1 -1
  13. package/dist/index-react-bindings.node.cjs +154 -29
  14. package/dist/index-react-bindings.node.cjs.map +1 -1
  15. package/dist/index-react-bindings.node.js +151 -30
  16. package/dist/index-react-bindings.node.js.map +1 -1
  17. package/dist/index.browser.cjs +88 -12
  18. package/dist/index.browser.cjs.map +1 -1
  19. package/dist/index.browser.js +88 -12
  20. package/dist/index.browser.js.map +1 -1
  21. package/dist/index.node.cjs +88 -12
  22. package/dist/index.node.cjs.map +1 -1
  23. package/dist/index.node.js +88 -12
  24. package/dist/index.node.js.map +1 -1
  25. package/dist/src/feed/event-handlers/activity/handle-activity-marked.d.ts +11 -0
  26. package/dist/src/feed/event-handlers/activity/index.d.ts +1 -0
  27. package/dist/src/feed/event-handlers/notification-feed/handle-notification-feed-updated.d.ts +8 -1
  28. package/dist/src/feed/feed.d.ts +2 -2
  29. package/dist/src/test-utils/response-generators.d.ts +21 -1
  30. package/dist/tsconfig.tsbuildinfo +1 -1
  31. package/package.json +1 -1
  32. package/src/feed/event-handlers/activity/activity-marked-utils.test.ts +208 -0
  33. package/src/feed/event-handlers/activity/handle-activity-marked.ts +68 -0
  34. package/src/feed/event-handlers/activity/handle-activity-reaction-added.test.ts +15 -15
  35. package/src/feed/event-handlers/activity/handle-activity-reaction-deleted.test.ts +14 -14
  36. package/src/feed/event-handlers/activity/handle-activity-unpinned.test.ts +4 -3
  37. package/src/feed/event-handlers/activity/handle-activity-updated.test.ts +4 -4
  38. package/src/feed/event-handlers/activity/index.ts +2 -1
  39. package/src/feed/event-handlers/bookmark/handle-bookmark-added.test.ts +14 -14
  40. package/src/feed/event-handlers/bookmark/handle-bookmark-deleted.test.ts +14 -14
  41. package/src/feed/event-handlers/bookmark/handle-bookmark-updated.test.ts +16 -16
  42. package/src/feed/event-handlers/comment/handle-comment-added.test.ts +147 -0
  43. package/src/feed/event-handlers/comment/handle-comment-deleted.test.ts +133 -0
  44. package/src/feed/event-handlers/comment/handle-comment-deleted.ts +24 -10
  45. package/src/feed/event-handlers/comment/handle-comment-reaction.test.ts +315 -0
  46. package/src/feed/event-handlers/comment/handle-comment-updated.test.ts +131 -0
  47. package/src/feed/event-handlers/follow/handle-follow-created.test.ts +7 -7
  48. package/src/feed/event-handlers/follow/handle-follow-deleted.test.ts +2 -2
  49. package/src/feed/event-handlers/follow/handle-follow-updated.test.ts +1 -1
  50. package/src/feed/event-handlers/notification-feed/handle-notification-feed-updated.test.ts +120 -0
  51. package/src/feed/event-handlers/notification-feed/handle-notification-feed-updated.ts +47 -3
  52. package/src/feed/feed.ts +4 -2
  53. package/src/gen/model-decoders/decoders.ts +1 -1
  54. package/src/test-utils/response-generators.ts +123 -0
@@ -0,0 +1,11 @@
1
+ import { ActivityMarkEvent, NotificationStatusResponse } from '../../../gen/models';
2
+ import { EventPayload, UpdateStateResult } from '../../../types-internal';
3
+ import { Feed } from '../../feed';
4
+ export declare const updateNotificationStatusFromActivityMarked: (event: ActivityMarkEvent, currentNotificationStatus: NotificationStatusResponse | undefined, aggregatedActivities?: Array<{
5
+ group: string;
6
+ }>) => UpdateStateResult<{
7
+ data?: {
8
+ notification_status: NotificationStatusResponse;
9
+ };
10
+ }>;
11
+ export declare function handleActivityMarked(this: Feed, event: EventPayload<'feeds.activity.marked'>): void;
@@ -4,3 +4,4 @@ export * from './handle-activity-removed-from-feed';
4
4
  export * from './handle-activity-updated';
5
5
  export * from './handle-activity-reaction-added';
6
6
  export * from './handle-activity-reaction-deleted';
7
+ export * from './handle-activity-marked';
@@ -1,3 +1,10 @@
1
1
  import type { Feed } from '../../../feed';
2
- import type { EventPayload } from '../../../types-internal';
2
+ import { AggregatedActivityResponse, NotificationFeedUpdatedEvent, NotificationStatusResponse } from '../../../gen/models';
3
+ import type { EventPayload, UpdateStateResult } from '../../../types-internal';
4
+ export declare const updateNotificationFeedFromEvent: (event: NotificationFeedUpdatedEvent) => UpdateStateResult<{
5
+ data?: {
6
+ notification_status?: NotificationStatusResponse;
7
+ aggregated_activities?: AggregatedActivityResponse[];
8
+ };
9
+ }>;
3
10
  export declare function handleNotificationFeedUpdated(this: Feed, event: EventPayload<'feeds.notification_feed.updated'>): void;
@@ -1,4 +1,4 @@
1
- import { ActivityRequest, FeedResponse, GetOrCreateFeedRequest, GetOrCreateFeedResponse, QueryFollowsRequest, WSEvent, ActivityResponse, CommentResponse, QueryFeedMembersRequest, SortParamRequest, FollowRequest } from '../gen/models';
1
+ import { ActivityRequest, FeedResponse, GetOrCreateFeedRequest, GetOrCreateFeedResponse, QueryFollowsRequest, WSEvent, ActivityResponse, CommentResponse, QueryFeedMembersRequest, SortParamRequest, FollowRequest, QueryCommentsRequest } from '../gen/models';
2
2
  import { StreamResponse } from '../gen-imports';
3
3
  import { StateStore } from '../common/StateStore';
4
4
  import { EventDispatcher } from '../common/EventDispatcher';
@@ -16,7 +16,7 @@ export type FeedState = Omit<Partial<GetOrCreateFeedResponse & FeedResponse>, 'f
16
16
  is_loading_activities: boolean;
17
17
  comments_by_entity_id: Record<ActivityIdOrCommentId, {
18
18
  pagination?: PagerResponseWithLoadingStates & {
19
- sort?: string;
19
+ sort?: QueryCommentsRequest['sort'] | (string & {});
20
20
  };
21
21
  /**
22
22
  * Id of the "store" where the actual parent is stored in the comments array.
@@ -1,4 +1,4 @@
1
- import { ActivityPinResponse, ActivityResponse, BookmarkFolderResponse, BookmarkResponse, FeedResponse, FeedsReactionResponse, FollowResponse, OwnUser, OwnUserResponse, UserResponse } from '../gen/models';
1
+ import { ActivityPinResponse, ActivityResponse, BookmarkFolderResponse, BookmarkResponse, CommentResponse, FeedResponse, FeedsReactionResponse, FollowResponse, OwnUser, OwnUserResponse, UserResponse } from '../gen/models';
2
2
  import { EventPayload } from '../types-internal';
3
3
  export declare const getHumanId: () => string;
4
4
  export declare const generateUserResponse: (overrides?: Partial<UserResponse>) => UserResponse;
@@ -14,6 +14,9 @@ export declare const generateActivityResponse: (overrides?: Omit<Partial<Activit
14
14
  export declare const generateFeedReactionResponse: (overrides?: Omit<Partial<FeedsReactionResponse>, "user"> & {
15
15
  user?: Partial<UserResponse>;
16
16
  }) => FeedsReactionResponse;
17
+ export declare const generateCommentResponse: (overrides?: Omit<Partial<CommentResponse>, "user"> & {
18
+ user?: Parameters<typeof generateUserResponse>[0];
19
+ }) => CommentResponse;
17
20
  export declare const generateActivityPinResponse: (overrides?: Omit<Partial<ActivityPinResponse>, "activity" | "user"> & {
18
21
  activity?: Partial<ActivityResponse>;
19
22
  user?: Partial<UserResponse>;
@@ -48,6 +51,23 @@ export declare function generateBookmarkUpdatedEvent(overrides?: Omit<Partial<Ev
48
51
  bookmark?: Parameters<typeof generateBookmarkResponse>[0];
49
52
  user?: Parameters<typeof generateUserResponse>[0];
50
53
  }): EventPayload<'feeds.bookmark.updated'>;
54
+ export declare function generateCommentAddedEvent(overrides?: Omit<Partial<EventPayload<'feeds.comment.added'>>, 'comment' | 'type'> & {
55
+ comment?: Parameters<typeof generateCommentResponse>[0];
56
+ }): EventPayload<'feeds.comment.added'>;
57
+ export declare function generateCommentDeletedEvent(overrides?: Omit<Partial<EventPayload<'feeds.comment.deleted'>>, 'comment' | 'type'> & {
58
+ comment?: Parameters<typeof generateCommentResponse>[0];
59
+ }): EventPayload<'feeds.comment.deleted'>;
60
+ export declare function generateCommentUpdatedEvent(overrides?: Omit<Partial<EventPayload<'feeds.comment.updated'>>, 'comment' | 'type'> & {
61
+ comment?: Parameters<typeof generateCommentResponse>[0];
62
+ }): EventPayload<'feeds.comment.updated'>;
63
+ export declare function generateCommentReactionAddedEvent(overrides?: Omit<Partial<EventPayload<'feeds.comment.reaction.added'>>, 'comment' | 'reaction' | 'type'> & {
64
+ comment?: Parameters<typeof generateCommentResponse>[0];
65
+ reaction?: Parameters<typeof generateFeedReactionResponse>[0];
66
+ }): EventPayload<'feeds.comment.reaction.added'>;
67
+ export declare function generateCommentReactionDeletedEvent(overrides?: Omit<Partial<EventPayload<'feeds.comment.reaction.deleted'>>, 'comment' | 'reaction' | 'type'> & {
68
+ comment?: Parameters<typeof generateCommentResponse>[0];
69
+ reaction?: Parameters<typeof generateFeedReactionResponse>[0];
70
+ }): EventPayload<'feeds.comment.reaction.deleted'>;
51
71
  export declare function generateActivityPinnedEvent(overrides?: Omit<Partial<EventPayload<'feeds.activity.pinned'>>, 'pinned_activity' | 'user'> & {
52
72
  pinned_activity?: Parameters<typeof generateActivityPinResponse>[0];
53
73
  user?: Parameters<typeof generateUserResponse>[0];