@amityco/ts-sdk 7.8.1-fbfc876d.0 → 7.8.1

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 (115) hide show
  1. package/.env +26 -26
  2. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts +4 -0
  3. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts.map +1 -1
  4. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.js.map +1 -1
  5. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/community.d.ts +2 -1
  6. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/community.d.ts.map +1 -1
  7. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/community.js.map +1 -1
  8. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts +32 -0
  9. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts.map +1 -1
  10. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js +22 -1
  11. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js.map +1 -1
  12. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts +1 -4
  13. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts.map +1 -1
  14. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.js.map +1 -1
  15. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.d.ts +2 -1
  16. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.d.ts.map +1 -1
  17. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.js.map +1 -1
  18. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts +1 -0
  19. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts.map +1 -1
  20. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js +1 -0
  21. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js.map +1 -1
  22. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.d.ts +16 -0
  23. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.d.ts.map +1 -0
  24. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.js +21 -0
  25. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.js.map +1 -0
  26. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts +2 -0
  27. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts.map +1 -1
  28. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js +2 -0
  29. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js.map +1 -1
  30. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.d.ts.map +1 -1
  31. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.js +3 -2
  32. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.js.map +1 -1
  33. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.d.ts +1 -1
  34. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.d.ts.map +1 -1
  35. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.js +1 -1
  36. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.js.map +1 -1
  37. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts +13 -0
  38. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -0
  39. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js +108 -0
  40. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js.map +1 -0
  41. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts +5 -0
  42. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts.map +1 -0
  43. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.js +15 -0
  44. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.js.map +1 -0
  45. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts +15 -0
  46. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts.map +1 -0
  47. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.js +78 -0
  48. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.js.map +1 -0
  49. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.d.ts +23 -0
  50. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.d.ts.map +1 -0
  51. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.js +46 -0
  52. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.js.map +1 -0
  53. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts +1 -0
  54. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts.map +1 -1
  55. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js +1 -0
  56. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js.map +1 -1
  57. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/liveReactionRepository/api/createReaction.d.ts.map +1 -1
  58. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/liveReactionRepository/api/createReaction.js.map +1 -1
  59. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.d.ts +2 -2
  60. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.js +2 -2
  61. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.js.map +1 -1
  62. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
  63. package/dist/@types/domains/client.d.ts +4 -0
  64. package/dist/@types/domains/client.d.ts.map +1 -1
  65. package/dist/@types/domains/community.d.ts +2 -1
  66. package/dist/@types/domains/community.d.ts.map +1 -1
  67. package/dist/@types/domains/feed.d.ts +32 -0
  68. package/dist/@types/domains/feed.d.ts.map +1 -1
  69. package/dist/@types/domains/pinnedPost.d.ts +1 -4
  70. package/dist/@types/domains/pinnedPost.d.ts.map +1 -1
  71. package/dist/@types/domains/poll.d.ts +2 -1
  72. package/dist/@types/domains/poll.d.ts.map +1 -1
  73. package/dist/@types/index.d.ts +1 -0
  74. package/dist/@types/index.d.ts.map +1 -1
  75. package/dist/client/api/getShareableLinkConfiguration.d.ts +16 -0
  76. package/dist/client/api/getShareableLinkConfiguration.d.ts.map +1 -0
  77. package/dist/client/api/index.d.ts +2 -0
  78. package/dist/client/api/index.d.ts.map +1 -1
  79. package/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.d.ts.map +1 -1
  80. package/dist/feedRepository/index.d.ts +1 -1
  81. package/dist/feedRepository/index.d.ts.map +1 -1
  82. package/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts +13 -0
  83. package/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -0
  84. package/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts +5 -0
  85. package/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts.map +1 -0
  86. package/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts +15 -0
  87. package/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts.map +1 -0
  88. package/dist/feedRepository/observers/getUserFeed.d.ts +23 -0
  89. package/dist/feedRepository/observers/getUserFeed.d.ts.map +1 -0
  90. package/dist/feedRepository/observers/index.d.ts +1 -0
  91. package/dist/feedRepository/observers/index.d.ts.map +1 -1
  92. package/dist/index.cjs.js +270 -8
  93. package/dist/index.esm.js +271 -9
  94. package/dist/index.umd.js +4 -4
  95. package/dist/liveReactionRepository/api/createReaction.d.ts.map +1 -1
  96. package/dist/pollRepository/api/createPoll.d.ts +2 -2
  97. package/package.json +1 -1
  98. package/src/@types/domains/client.ts +5 -0
  99. package/src/@types/domains/community.ts +1 -0
  100. package/src/@types/domains/feed.ts +44 -0
  101. package/src/@types/domains/pinnedPost.ts +1 -4
  102. package/src/@types/domains/poll.ts +2 -1
  103. package/src/@types/index.ts +1 -0
  104. package/src/client/api/getShareableLinkConfiguration.ts +26 -0
  105. package/src/client/api/index.ts +4 -0
  106. package/src/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.ts +3 -3
  107. package/src/feedRepository/index.ts +1 -1
  108. package/src/feedRepository/observers/getUserFeed/LiveCollectionController.ts +162 -0
  109. package/src/feedRepository/observers/getUserFeed/PaginationController.ts +37 -0
  110. package/src/feedRepository/observers/getUserFeed/QueryStreamController.ts +119 -0
  111. package/src/feedRepository/observers/getUserFeed.ts +56 -0
  112. package/src/feedRepository/observers/index.ts +1 -0
  113. package/src/liveReactionRepository/api/createReaction.ts +0 -1
  114. package/src/pollRepository/api/createPoll.ts +2 -2
  115. package/tsconfig.tsbuildinfo +1 -1
package/dist/index.cjs.js CHANGED
@@ -153,10 +153,33 @@ exports.JoinResultStatusEnum = void 0;
153
153
  JoinResultStatusEnum["Pending"] = "pending";
154
154
  })(exports.JoinResultStatusEnum || (exports.JoinResultStatusEnum = {}));
155
155
 
156
+ exports.FeedDataTypeEnum = void 0;
157
+ (function (FeedDataTypeEnum) {
158
+ FeedDataTypeEnum["Text"] = "text";
159
+ FeedDataTypeEnum["Video"] = "video";
160
+ FeedDataTypeEnum["Image"] = "image";
161
+ FeedDataTypeEnum["File"] = "file";
162
+ FeedDataTypeEnum["LiveStream"] = "liveStream";
163
+ FeedDataTypeEnum["Clip"] = "clip";
164
+ FeedDataTypeEnum["Poll"] = "poll";
165
+ })(exports.FeedDataTypeEnum || (exports.FeedDataTypeEnum = {}));
166
+ exports.FeedSortByEnum = void 0;
167
+ (function (FeedSortByEnum) {
168
+ FeedSortByEnum["LastCreated"] = "lastCreated";
169
+ FeedSortByEnum["FirstCreated"] = "firstCreated";
170
+ FeedSortByEnum["LastUpdated"] = "lastUpdated";
171
+ FeedSortByEnum["FirstUpdated"] = "firstUpdated";
172
+ })(exports.FeedSortByEnum || (exports.FeedSortByEnum = {}));
173
+ exports.FeedSourceEnum = void 0;
174
+ (function (FeedSourceEnum) {
175
+ FeedSourceEnum["Community"] = "community";
176
+ FeedSourceEnum["User"] = "user";
177
+ })(exports.FeedSourceEnum || (exports.FeedSourceEnum = {}));
178
+
156
179
  function getVersion() {
157
180
  try {
158
- // the string ''v7.8.0-cjs'' should be replaced by actual value by @rollup/plugin-replace
159
- return 'v7.8.0-cjs';
181
+ // the string ''v7.8.1-cjs'' should be replaced by actual value by @rollup/plugin-replace
182
+ return 'v7.8.1-cjs';
160
183
  }
161
184
  catch (error) {
162
185
  return '__dev__';
@@ -9782,6 +9805,26 @@ const fetchLinkPreview = async (url) => {
9782
9805
  return data;
9783
9806
  };
9784
9807
 
9808
+ /**
9809
+ * ```js
9810
+ * import Client from '@amityco/ts-sdk'
9811
+ * const shareableLinkConfiguration = await Client.getShareableLinkConfiguration()
9812
+ * const postLinkPattern = shareableLinkConfiguration.post
9813
+ * ```
9814
+ *
9815
+ * Fetches a {@link Amity.ShareableLinkConfiguration} object
9816
+ *
9817
+ * @returns A Promise of {@link Amity.ShareableLinkConfiguration} object
9818
+ *
9819
+ * @category Client API
9820
+ * @async
9821
+ */
9822
+ const getShareableLinkConfiguration = async () => {
9823
+ const client = getActiveClient();
9824
+ const { data } = await client.http.get(`/api/v3/network-settings/shareable-deep-links`);
9825
+ return data;
9826
+ };
9827
+
9785
9828
  /**
9786
9829
  * ```js
9787
9830
  * import { onChannelMarkerFetched } from '@amityco/ts-sdk'
@@ -10151,6 +10194,8 @@ var index$o = /*#__PURE__*/Object.freeze({
10151
10194
  enableUnreadCount: enableUnreadCount,
10152
10195
  setUploadedFileAccessType: setUploadedFileAccessType,
10153
10196
  fetchLinkPreview: fetchLinkPreview,
10197
+ getSocialSettings: getSocialSettings,
10198
+ getShareableLinkConfiguration: getShareableLinkConfiguration,
10154
10199
  onConnectionError: onConnectionError,
10155
10200
  onClientDisconnected: onClientDisconnected,
10156
10201
  onClientBanned: onClientBanned,
@@ -21804,10 +21849,10 @@ class CommunityLiveCollectionController extends LiveCollectionController {
21804
21849
  const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
21805
21850
  if (!collection)
21806
21851
  return;
21807
- const data = this.applyFilter((_b = collection.data
21852
+ const data = (_b = collection.data
21808
21853
  .map(id => pullFromCache(['community', 'get', id]))
21809
21854
  .filter(isNonNullable)
21810
- .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []);
21855
+ .map(({ data }) => communityLinkedObject(data))) !== null && _b !== void 0 ? _b : [];
21811
21856
  if (!this.shouldNotify(data) && origin === 'event')
21812
21857
  return;
21813
21858
  this.callback({
@@ -24550,11 +24595,228 @@ const getGlobalFeed = (params, callback, config) => {
24550
24595
  };
24551
24596
  /* end_public_function */
24552
24597
 
24598
+ class UserFeedPaginationController extends PaginationController {
24599
+ async getRequest(queryParams, token) {
24600
+ const { userId, feedSources, dataTypes, includeDeleted, matchingOnlyParentPost, limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["userId", "feedSources", "dataTypes", "includeDeleted", "matchingOnlyParentPost", "limit"]);
24601
+ const options = token ? { token } : { limit };
24602
+ const { data: queryResponse } = await this.http.get(`/api/v4/user-feeds/${userId}`, {
24603
+ params: Object.assign(Object.assign({}, params), { options, dataTypes: (dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length) ? dataTypes : undefined, includePostedFeed: feedSources, isDeleted: inferIsDeleted(includeDeleted), matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length) }),
24604
+ });
24605
+ return queryResponse;
24606
+ }
24607
+ }
24608
+
24609
+ class UserFeedQueryStreamController extends QueryStreamController {
24610
+ constructor(query, cacheKey, notifyChange, preparePayload) {
24611
+ super(query, cacheKey);
24612
+ this.notifyChange = notifyChange;
24613
+ this.preparePayload = preparePayload;
24614
+ }
24615
+ async saveToMainDB(response) {
24616
+ const processedPayload = await this.preparePayload(response);
24617
+ const client = getActiveClient();
24618
+ const cachedAt = client.cache && Date.now();
24619
+ if (client.cache) {
24620
+ ingestInCache(processedPayload, { cachedAt });
24621
+ }
24622
+ }
24623
+ appendToQueryStream(response, direction, refresh = false) {
24624
+ var _a, _b;
24625
+ if (refresh) {
24626
+ pushToCache(this.cacheKey, {
24627
+ data: response.posts.map(getResolver('post')),
24628
+ });
24629
+ }
24630
+ else {
24631
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24632
+ const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
24633
+ pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
24634
+ }
24635
+ }
24636
+ reactor(action) {
24637
+ return (post) => {
24638
+ var _a, _b;
24639
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24640
+ if (!collection)
24641
+ return;
24642
+ // if the collection is parent post collection and
24643
+ // post is not included in the collection or post is child post
24644
+ if ((!this.query.dataTypes || this.query.dataTypes.length === 0) &&
24645
+ !collection.data.includes(post.parentPostId ? post.parentPostId : post.postId))
24646
+ return;
24647
+ if (action === EnumPostActions.OnPostDeleted) {
24648
+ collection.data = collection.data.filter(postId => postId !== post.postId);
24649
+ }
24650
+ if (post.parentPostId && post.isDeleted) {
24651
+ const parentPost = (_b = pullFromCache([
24652
+ 'post',
24653
+ 'get',
24654
+ post.parentPostId,
24655
+ ])) === null || _b === void 0 ? void 0 : _b.data;
24656
+ if (!parentPost)
24657
+ return;
24658
+ parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
24659
+ pushToCache(['post', 'get', parentPost.postId], parentPost);
24660
+ }
24661
+ if (action === EnumPostActions.OnPostDeclined) {
24662
+ collection.data = collection.data.filter(postId => postId !== post.postId);
24663
+ }
24664
+ if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
24665
+ if (this.query.dataTypes &&
24666
+ this.query.dataTypes.length > 0 &&
24667
+ !this.query.dataTypes.includes(post.dataType)) {
24668
+ return;
24669
+ }
24670
+ collection.data = [...new Set([post.postId, ...collection.data])];
24671
+ }
24672
+ pushToCache(this.cacheKey, collection);
24673
+ this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
24674
+ };
24675
+ }
24676
+ subscribeRTE(createSubscriber) {
24677
+ return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
24678
+ }
24679
+ }
24680
+
24681
+ class UserFeedLiveCollectionController extends LiveCollectionController {
24682
+ constructor(query, callback) {
24683
+ const queryStreamId = hash__default["default"](query);
24684
+ const cacheKey = ['userFeed', 'collection', queryStreamId];
24685
+ const paginationController = new UserFeedPaginationController(query);
24686
+ super(paginationController, queryStreamId, cacheKey, callback);
24687
+ this.query = query;
24688
+ this.queryStreamController = new UserFeedQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
24689
+ this.callback = callback.bind(this);
24690
+ this.loadPage({ initial: true });
24691
+ }
24692
+ setup() {
24693
+ var _a;
24694
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24695
+ if (!collection) {
24696
+ pushToCache(this.cacheKey, {
24697
+ data: [],
24698
+ params: {},
24699
+ });
24700
+ }
24701
+ }
24702
+ async persistModel(queryPayload) {
24703
+ await this.queryStreamController.saveToMainDB(queryPayload);
24704
+ }
24705
+ persistQueryStream({ response, direction, refresh, }) {
24706
+ this.queryStreamController.appendToQueryStream(response, direction, refresh);
24707
+ }
24708
+ startSubscription() {
24709
+ return this.queryStreamController.subscribeRTE([
24710
+ { fn: onPostCreated, action: EnumPostActions.OnPostCreated },
24711
+ { fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
24712
+ { fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
24713
+ { fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
24714
+ { fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
24715
+ { fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
24716
+ { fn: onPostApproved, action: EnumPostActions.OnPostApproved },
24717
+ { fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
24718
+ { fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
24719
+ { fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
24720
+ { fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
24721
+ { fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
24722
+ { fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
24723
+ {
24724
+ fn: convertEventPayload((callback) => {
24725
+ return onCommentCreated(async (comment) => {
24726
+ var _a;
24727
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24728
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
24729
+ return;
24730
+ await getPost$1(comment.referenceId);
24731
+ callback(comment);
24732
+ });
24733
+ }, 'referenceId', 'post'),
24734
+ action: EnumPostActions.OnPostUpdated,
24735
+ },
24736
+ {
24737
+ fn: convertEventPayload((callback) => {
24738
+ return onCommentDeleted(async (comment) => {
24739
+ var _a;
24740
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24741
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
24742
+ return;
24743
+ await getPost$1(comment.referenceId);
24744
+ callback(comment);
24745
+ });
24746
+ }, 'referenceId', 'post'),
24747
+ action: EnumPostActions.OnPostUpdated,
24748
+ },
24749
+ ]);
24750
+ }
24751
+ notifyChange({ origin, loading, error }) {
24752
+ var _a, _b;
24753
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
24754
+ if (!collection)
24755
+ return;
24756
+ const data = ((_b = collection.data
24757
+ .map(id => pullFromCache(['post', 'get', id]))
24758
+ .filter(isNonNullable)
24759
+ .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
24760
+ if (!this.shouldNotify(data) && origin === 'event')
24761
+ return;
24762
+ this.callback({
24763
+ onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
24764
+ data,
24765
+ hasNextPage: !!this.paginationController.getNextToken(),
24766
+ loading,
24767
+ error,
24768
+ });
24769
+ }
24770
+ }
24771
+
24772
+ /* begin_public_function
24773
+ id: feed.query.user_feed
24774
+ */
24775
+ /**
24776
+ * ```js
24777
+ * import { FeedRepository } from '@amityco/ts-sdk'
24778
+ *
24779
+ * let posts = []
24780
+ * const unsubscribe = FeedRepository.getUserFeed({
24781
+ * userId: string,
24782
+ * feedSources: ['user', 'community'],
24783
+ * }, response => response => processResponse(response))
24784
+ * ```
24785
+ *
24786
+ * Observe all mutations on a list of {@link Amity.Post} for a given user and feedSources
24787
+ *
24788
+ * @param params.userId the ID of the user
24789
+ * @param params.feedSources the sources of the feed
24790
+ * @param callback the function to call when new data are available
24791
+ * @param config
24792
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
24793
+ *
24794
+ * @category Posts Live Collection
24795
+ */
24796
+ const getUserFeed = (params, callback, config) => {
24797
+ const { log, cache } = getActiveClient();
24798
+ if (!cache) {
24799
+ console.log(ENABLE_CACHE_MESSAGE);
24800
+ }
24801
+ const timestamp = Date.now();
24802
+ log(`getUserFeed(tmpid: ${timestamp}) > listen`);
24803
+ const userFeedLiveCollection = new UserFeedLiveCollectionController(params, callback);
24804
+ const disposers = userFeedLiveCollection.startSubscription();
24805
+ const cacheKey = userFeedLiveCollection.getCacheKey();
24806
+ disposers.push(() => dropFromCache(cacheKey));
24807
+ return () => {
24808
+ log(`getUserFeed(tmpid: ${timestamp}) > dispose`);
24809
+ disposers.forEach(fn => fn());
24810
+ };
24811
+ };
24812
+ /* end_public_function */
24813
+
24553
24814
  var index$9 = /*#__PURE__*/Object.freeze({
24554
24815
  __proto__: null,
24555
24816
  queryGlobalFeed: queryGlobalFeed,
24556
24817
  getCustomRankingGlobalFeed: getCustomRankingGlobalFeed,
24557
- getGlobalFeed: getGlobalFeed
24818
+ getGlobalFeed: getGlobalFeed,
24819
+ getUserFeed: getUserFeed
24558
24820
  });
24559
24821
 
24560
24822
  /* begin_public_function
@@ -26777,8 +27039,8 @@ var index$7 = /*#__PURE__*/Object.freeze({
26777
27039
  * const created = await createPoll({
26778
27040
  * question: 'question',
26779
27041
  * answers: [
26780
- * { dataType: 'text', data: 'answer1' },
26781
- * { dataType: 'text', data: 'answer2' },
27042
+ * { dataType: 'text', data: 'answer1', fileId: 'fileId1' },
27043
+ * { dataType: 'text', data: 'answer2', fileId: 'fileId2' },
26782
27044
  * ],
26783
27045
  * closedIn: 1649136484
26784
27046
  * }))
@@ -27051,7 +27313,7 @@ var index$6 = /*#__PURE__*/Object.freeze({
27051
27313
  getPoll: getPoll
27052
27314
  });
27053
27315
 
27054
- const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDAARz+hmBgi8pJ\nQb8LeY41gtHhk+ACMwRfhsn7GqpqRQNG2qU0755mzZuVDUqjQMGSo8THJB7O+OJs\nflbZRkFXlFoFOVNw1UpNOgwEQZ6wB9oRwzepTJAfF1sVhm/o/ixvXh1zDFNDy6yZ\npXyiiJHUVxqyjllZhxnwdvjoVtDs6hW6awG09bB9nh/TTejlUKXoAgzqVwu/1QMu\nUVViET495elEe19aUarEy+oL2iKeXCEvqda/pWNBdbieFyJvvZ08HN8dPuT88wq2\njZLEAth1vrwQ2IAa4ktaLcBQdLJgIkrbDvAiVZ8lQAjS/bq5vXQikTGvoPlC5bbn\nvuOM/3eLAgMBAAECggEAVZ+peHAghq2QVj71nX5lxsNCKaCyYwixSJBpfouTt7Rz\nE6PpzMOXFi1W1o+I22jDakuSM2SOQKqI/u0QefB0r0O/KVk5NrZHXk0mkrdYtxOp\nUgaGyf8UvmjB+8VqHrNKyZdk9qtmbnNj01kTTcAtmE4H39zPR7eR/8Rul94vaZbs\nwCnKJS3mLT3JxyGug6lxanveKkjG+CKC1nJQYWaxCJxaFSzbwXQPvDhB+TvrIbee\npd5v4EAyEJohpr+T9oDGGJkb/KARBZCtwLyB976PKJwwBA8MRVL1i5QwawuMiMq5\nUtnOnbGKtCeFzaLbNU0Qi8bqyims84EQxC6DOu1fkQKBgQDdvsoBsEhsOXV7hlIJ\naEd0eSJZVkdqimxH8uGoMM2FeNaOrcB6yBXqTSP0R3OIyf8eaY6yjRvP30ZNXcll\n/gD3O1Mu6YmWQdt1W2WA6pKOsUuPXasf0pdOF7IiFZKlSabz5YHXFqwVuqm8loaj\nsXel3YWqPVdHiankE7tz+3ssnQKBgQDdqi4TNdD1MdEpihx19jr0QjUiXW3939FK\nqp30HESPEGDGQzXdmJgif9HhZb+cJSuWaHEbjgBrYahvgCF+y6LbEpOD+D/dmT+s\nDEAQaR84sah6dokwPjV8fjBSrcVFjCS+doxv0d3p/9OUEeyUhFrY03nxtIEYkLIE\n/Zvn37b4RwKBgQCLENVFe9XfsaVhQ5r9dV2iyTlmh7qgMZG5CbTFs12hQGhm8McO\n+Z7s41YSJCFr/yq1WwP4LJDtrBw99vyQr1zRsG35tNLp3gGRNzGQSQyC2uQFVHw2\np+7mNewsfhUK/gbrXNsyFnDz6635rPlhfbII3sWuP2wWXFqkxE9CbMwR7QKBgQC6\nawDMzxmo2/iYArrkyevSuEuPVxvFwpF1RgAI6C0QVCnPE38dmdN4UB7mfHekje4W\nVEercMURidPp0cxZolCYBQtilUjAyL0vqC3In1/Ogjq6oy3FEMxSop1pKxMY5j+Q\nnoqFD+6deLUrddeNH7J3X4LSr4dSbX4JjG+tlgt+yQKBgQCuwTL4hA6KqeInQ0Ta\n9VQX5Qr8hFlqJz1gpymi/k63tW/Ob8yedbg3WWNWyShwRMFYyY9S81ITFWM95uL6\nvF3x9rmRjwElJw9PMwVu6dmf/CO0Z1wzXSp2VVD12gbrUD/0/d7MUoJ9LgC8X8f/\nn0txLHYGHbx+nf95+JUg6lV3hg==\n-----END PRIVATE KEY-----";
27316
+ const privateKey = "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHo80SecH7FuF2\nhFYnb+l26/VN8UMLXAQFLnxciNTEwkGVFMpdezlH8rU2HtUJL4RETogbAOLVY0XM\njs6sPn8G1nALmh9qeDpUtVqFOVtBHxEZ910TLOtQiunjqJKO5nWdqZ71EC3OFluR\niGQkO84BiIFbv37ub7xl3S8XarbtKoLcyVpkDHi+1wx1pgCAn6gtBUgckPL5NR8j\nLseabl3HAXQfhTCKo4tmOFM2Dxwl1IUMmIJrJg/aIU/U0tj/1Eoo7mG0JcNWX19l\nW3EecCbi0ncCJOrkUdwlBrcjaMayaX/ubEwyUeTGiLdyc4L3GRLHjyK8xgVNXRMH\nbZWJ2a5NAgMBAAECggEASxuE+35zTFO/XydKgmvIGcWL9FbgMlXb7Vcf0nBoG945\nbiz0NVc2paraIhJXc608xbYF3qLmtAE1MVBI0ORyRdBHNxY024l/6H6SH60Ed+uI\nM4ysp5ourY6Vj+DLwpdRiI9YDjqYAQDIUmhNxJP7XPhOMoZI6st+xZQBM34ic/bv\nAMSJm9OZphSp3+qXVkFZztr2mxD2EZSJJLYxi8BCdgM2qhazalbcJ6zDKHCZWVWm\n8RRxDGldyMb/237JxETzP40tAlzOZDmBAbUgEnurDJ93RVDIE3rbZUshwgeQd18a\nem096mWgvB1AIKYgsTAR3pw+V19YWAjq/glP6fz8wQKBgQD/oQq+ukKF0PRgBeM5\ngeTjSwsdGppQLmf5ndujvoiz/TpdjDEPu6R8kigQr1rG2t4K/yfdZoI8RdmJD1al\n3Q7N9hofooSy4rj6E3txzWZCHJjHad2cnCp/O26HiReGAl7wTcfTmNdiFHhZQzm5\nJBkvWAiwuvQMNfEbnXxw6/vIDwKBgQDH7fX8gsc77JLvAWgp1MaQN/sbqVb6JeT1\nFQfR8E/WFCSmzQBtNzd5KgYuCeelwr/8DyYytvN2BzCYZXp73gI1jF3YlW5jVn74\nOY6TwQ095digwo6Z0yuxopdIOApKgAkL9PRKgNrqAf3NAyMua6lOGifzjDojC3KU\nfylQmxMn4wKBgHp2B9O/H0dEBw5JQ8W0+JX6yWQz7mEjGiR2/1W+XXb8hQ1zr709\nw1r6Gb+EghRpnZ3fBpYGGbYOMFx8wKHM+N6qW3F0ReX8v2juFGE8aRSa5oYBrWzt\nU16Idjbv8hj84cZ1PJmdyvDtpYn9rpWHOZl4rxEbPvbqkIsOMyNVqdT5AoGAOSge\nmwIIU2le2FVeohbibXiToWTYKMuMmURZ5/r72AgKMmWJKbAPe+Q3wBG01/7FRBpQ\noU8Ma0HC8s6QJbliiEyIx9JwrJWd1vkdecBHONrtA4ibm/5zD2WcOllLF+FitLhi\n3qnX6+6F0IaFGFBPJrTzlv0P4dTz/OAdv52V7GECgYEA2TttOKBAqWllgOaZOkql\nLVMJVmgR7s6tLi1+cEP8ZcapV9aRbRzTAKXm4f8AEhtlG9F9kCOvHYCYGi6JaiWJ\nZkHjeex3T+eE6Di6y5Bm/Ift5jtVhJ4jCVwHOKTMej79NPUFTJfv8hCo29haBDv6\nRXFrv+T21KCcw8k3sJeJWWQ=\n-----END PRIVATE KEY-----";
27055
27317
  /*
27056
27318
  * The crypto algorithm used for importing key and signing string
27057
27319
  */