@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.esm.js CHANGED
@@ -137,10 +137,33 @@ var JoinResultStatusEnum;
137
137
  JoinResultStatusEnum["Pending"] = "pending";
138
138
  })(JoinResultStatusEnum || (JoinResultStatusEnum = {}));
139
139
 
140
+ var FeedDataTypeEnum;
141
+ (function (FeedDataTypeEnum) {
142
+ FeedDataTypeEnum["Text"] = "text";
143
+ FeedDataTypeEnum["Video"] = "video";
144
+ FeedDataTypeEnum["Image"] = "image";
145
+ FeedDataTypeEnum["File"] = "file";
146
+ FeedDataTypeEnum["LiveStream"] = "liveStream";
147
+ FeedDataTypeEnum["Clip"] = "clip";
148
+ FeedDataTypeEnum["Poll"] = "poll";
149
+ })(FeedDataTypeEnum || (FeedDataTypeEnum = {}));
150
+ var FeedSortByEnum;
151
+ (function (FeedSortByEnum) {
152
+ FeedSortByEnum["LastCreated"] = "lastCreated";
153
+ FeedSortByEnum["FirstCreated"] = "firstCreated";
154
+ FeedSortByEnum["LastUpdated"] = "lastUpdated";
155
+ FeedSortByEnum["FirstUpdated"] = "firstUpdated";
156
+ })(FeedSortByEnum || (FeedSortByEnum = {}));
157
+ var FeedSourceEnum;
158
+ (function (FeedSourceEnum) {
159
+ FeedSourceEnum["Community"] = "community";
160
+ FeedSourceEnum["User"] = "user";
161
+ })(FeedSourceEnum || (FeedSourceEnum = {}));
162
+
140
163
  function getVersion() {
141
164
  try {
142
- // the string ''v7.8.0-esm'' should be replaced by actual value by @rollup/plugin-replace
143
- return 'v7.8.0-esm';
165
+ // the string ''v7.8.1-esm'' should be replaced by actual value by @rollup/plugin-replace
166
+ return 'v7.8.1-esm';
144
167
  }
145
168
  catch (error) {
146
169
  return '__dev__';
@@ -25873,6 +25896,26 @@ const fetchLinkPreview = async (url) => {
25873
25896
  return data;
25874
25897
  };
25875
25898
 
25899
+ /**
25900
+ * ```js
25901
+ * import Client from '@amityco/ts-sdk'
25902
+ * const shareableLinkConfiguration = await Client.getShareableLinkConfiguration()
25903
+ * const postLinkPattern = shareableLinkConfiguration.post
25904
+ * ```
25905
+ *
25906
+ * Fetches a {@link Amity.ShareableLinkConfiguration} object
25907
+ *
25908
+ * @returns A Promise of {@link Amity.ShareableLinkConfiguration} object
25909
+ *
25910
+ * @category Client API
25911
+ * @async
25912
+ */
25913
+ const getShareableLinkConfiguration = async () => {
25914
+ const client = getActiveClient();
25915
+ const { data } = await client.http.get(`/api/v3/network-settings/shareable-deep-links`);
25916
+ return data;
25917
+ };
25918
+
25876
25919
  /**
25877
25920
  * ```js
25878
25921
  * import { onChannelMarkerFetched } from '@amityco/ts-sdk'
@@ -26242,6 +26285,8 @@ var index$o = /*#__PURE__*/Object.freeze({
26242
26285
  enableUnreadCount: enableUnreadCount,
26243
26286
  setUploadedFileAccessType: setUploadedFileAccessType,
26244
26287
  fetchLinkPreview: fetchLinkPreview,
26288
+ getSocialSettings: getSocialSettings,
26289
+ getShareableLinkConfiguration: getShareableLinkConfiguration,
26245
26290
  onConnectionError: onConnectionError,
26246
26291
  onClientDisconnected: onClientDisconnected,
26247
26292
  onClientBanned: onClientBanned,
@@ -37895,10 +37940,10 @@ class CommunityLiveCollectionController extends LiveCollectionController {
37895
37940
  const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
37896
37941
  if (!collection)
37897
37942
  return;
37898
- const data = this.applyFilter((_b = collection.data
37943
+ const data = (_b = collection.data
37899
37944
  .map(id => pullFromCache(['community', 'get', id]))
37900
37945
  .filter(isNonNullable)
37901
- .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []);
37946
+ .map(({ data }) => communityLinkedObject(data))) !== null && _b !== void 0 ? _b : [];
37902
37947
  if (!this.shouldNotify(data) && origin === 'event')
37903
37948
  return;
37904
37949
  this.callback({
@@ -40641,11 +40686,228 @@ const getGlobalFeed = (params, callback, config) => {
40641
40686
  };
40642
40687
  /* end_public_function */
40643
40688
 
40689
+ class UserFeedPaginationController extends PaginationController {
40690
+ async getRequest(queryParams, token) {
40691
+ const { userId, feedSources, dataTypes, includeDeleted, matchingOnlyParentPost, limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["userId", "feedSources", "dataTypes", "includeDeleted", "matchingOnlyParentPost", "limit"]);
40692
+ const options = token ? { token } : { limit };
40693
+ const { data: queryResponse } = await this.http.get(`/api/v4/user-feeds/${userId}`, {
40694
+ 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) }),
40695
+ });
40696
+ return queryResponse;
40697
+ }
40698
+ }
40699
+
40700
+ class UserFeedQueryStreamController extends QueryStreamController {
40701
+ constructor(query, cacheKey, notifyChange, preparePayload) {
40702
+ super(query, cacheKey);
40703
+ this.notifyChange = notifyChange;
40704
+ this.preparePayload = preparePayload;
40705
+ }
40706
+ async saveToMainDB(response) {
40707
+ const processedPayload = await this.preparePayload(response);
40708
+ const client = getActiveClient();
40709
+ const cachedAt = client.cache && Date.now();
40710
+ if (client.cache) {
40711
+ ingestInCache(processedPayload, { cachedAt });
40712
+ }
40713
+ }
40714
+ appendToQueryStream(response, direction, refresh = false) {
40715
+ var _a, _b;
40716
+ if (refresh) {
40717
+ pushToCache(this.cacheKey, {
40718
+ data: response.posts.map(getResolver('post')),
40719
+ });
40720
+ }
40721
+ else {
40722
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40723
+ const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
40724
+ pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
40725
+ }
40726
+ }
40727
+ reactor(action) {
40728
+ return (post) => {
40729
+ var _a, _b;
40730
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40731
+ if (!collection)
40732
+ return;
40733
+ // if the collection is parent post collection and
40734
+ // post is not included in the collection or post is child post
40735
+ if ((!this.query.dataTypes || this.query.dataTypes.length === 0) &&
40736
+ !collection.data.includes(post.parentPostId ? post.parentPostId : post.postId))
40737
+ return;
40738
+ if (action === EnumPostActions.OnPostDeleted) {
40739
+ collection.data = collection.data.filter(postId => postId !== post.postId);
40740
+ }
40741
+ if (post.parentPostId && post.isDeleted) {
40742
+ const parentPost = (_b = pullFromCache([
40743
+ 'post',
40744
+ 'get',
40745
+ post.parentPostId,
40746
+ ])) === null || _b === void 0 ? void 0 : _b.data;
40747
+ if (!parentPost)
40748
+ return;
40749
+ parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
40750
+ pushToCache(['post', 'get', parentPost.postId], parentPost);
40751
+ }
40752
+ if (action === EnumPostActions.OnPostDeclined) {
40753
+ collection.data = collection.data.filter(postId => postId !== post.postId);
40754
+ }
40755
+ if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
40756
+ if (this.query.dataTypes &&
40757
+ this.query.dataTypes.length > 0 &&
40758
+ !this.query.dataTypes.includes(post.dataType)) {
40759
+ return;
40760
+ }
40761
+ collection.data = [...new Set([post.postId, ...collection.data])];
40762
+ }
40763
+ pushToCache(this.cacheKey, collection);
40764
+ this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
40765
+ };
40766
+ }
40767
+ subscribeRTE(createSubscriber) {
40768
+ return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
40769
+ }
40770
+ }
40771
+
40772
+ class UserFeedLiveCollectionController extends LiveCollectionController {
40773
+ constructor(query, callback) {
40774
+ const queryStreamId = hash(query);
40775
+ const cacheKey = ['userFeed', 'collection', queryStreamId];
40776
+ const paginationController = new UserFeedPaginationController(query);
40777
+ super(paginationController, queryStreamId, cacheKey, callback);
40778
+ this.query = query;
40779
+ this.queryStreamController = new UserFeedQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
40780
+ this.callback = callback.bind(this);
40781
+ this.loadPage({ initial: true });
40782
+ }
40783
+ setup() {
40784
+ var _a;
40785
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40786
+ if (!collection) {
40787
+ pushToCache(this.cacheKey, {
40788
+ data: [],
40789
+ params: {},
40790
+ });
40791
+ }
40792
+ }
40793
+ async persistModel(queryPayload) {
40794
+ await this.queryStreamController.saveToMainDB(queryPayload);
40795
+ }
40796
+ persistQueryStream({ response, direction, refresh, }) {
40797
+ this.queryStreamController.appendToQueryStream(response, direction, refresh);
40798
+ }
40799
+ startSubscription() {
40800
+ return this.queryStreamController.subscribeRTE([
40801
+ { fn: onPostCreated, action: EnumPostActions.OnPostCreated },
40802
+ { fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
40803
+ { fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
40804
+ { fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
40805
+ { fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
40806
+ { fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
40807
+ { fn: onPostApproved, action: EnumPostActions.OnPostApproved },
40808
+ { fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
40809
+ { fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
40810
+ { fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
40811
+ { fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
40812
+ { fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
40813
+ { fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
40814
+ {
40815
+ fn: convertEventPayload((callback) => {
40816
+ return onCommentCreated(async (comment) => {
40817
+ var _a;
40818
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40819
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
40820
+ return;
40821
+ await getPost$1(comment.referenceId);
40822
+ callback(comment);
40823
+ });
40824
+ }, 'referenceId', 'post'),
40825
+ action: EnumPostActions.OnPostUpdated,
40826
+ },
40827
+ {
40828
+ fn: convertEventPayload((callback) => {
40829
+ return onCommentDeleted(async (comment) => {
40830
+ var _a;
40831
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40832
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
40833
+ return;
40834
+ await getPost$1(comment.referenceId);
40835
+ callback(comment);
40836
+ });
40837
+ }, 'referenceId', 'post'),
40838
+ action: EnumPostActions.OnPostUpdated,
40839
+ },
40840
+ ]);
40841
+ }
40842
+ notifyChange({ origin, loading, error }) {
40843
+ var _a, _b;
40844
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
40845
+ if (!collection)
40846
+ return;
40847
+ const data = ((_b = collection.data
40848
+ .map(id => pullFromCache(['post', 'get', id]))
40849
+ .filter(isNonNullable)
40850
+ .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
40851
+ if (!this.shouldNotify(data) && origin === 'event')
40852
+ return;
40853
+ this.callback({
40854
+ onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
40855
+ data,
40856
+ hasNextPage: !!this.paginationController.getNextToken(),
40857
+ loading,
40858
+ error,
40859
+ });
40860
+ }
40861
+ }
40862
+
40863
+ /* begin_public_function
40864
+ id: feed.query.user_feed
40865
+ */
40866
+ /**
40867
+ * ```js
40868
+ * import { FeedRepository } from '@amityco/ts-sdk'
40869
+ *
40870
+ * let posts = []
40871
+ * const unsubscribe = FeedRepository.getUserFeed({
40872
+ * userId: string,
40873
+ * feedSources: ['user', 'community'],
40874
+ * }, response => response => processResponse(response))
40875
+ * ```
40876
+ *
40877
+ * Observe all mutations on a list of {@link Amity.Post} for a given user and feedSources
40878
+ *
40879
+ * @param params.userId the ID of the user
40880
+ * @param params.feedSources the sources of the feed
40881
+ * @param callback the function to call when new data are available
40882
+ * @param config
40883
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
40884
+ *
40885
+ * @category Posts Live Collection
40886
+ */
40887
+ const getUserFeed = (params, callback, config) => {
40888
+ const { log, cache } = getActiveClient();
40889
+ if (!cache) {
40890
+ console.log(ENABLE_CACHE_MESSAGE);
40891
+ }
40892
+ const timestamp = Date.now();
40893
+ log(`getUserFeed(tmpid: ${timestamp}) > listen`);
40894
+ const userFeedLiveCollection = new UserFeedLiveCollectionController(params, callback);
40895
+ const disposers = userFeedLiveCollection.startSubscription();
40896
+ const cacheKey = userFeedLiveCollection.getCacheKey();
40897
+ disposers.push(() => dropFromCache(cacheKey));
40898
+ return () => {
40899
+ log(`getUserFeed(tmpid: ${timestamp}) > dispose`);
40900
+ disposers.forEach(fn => fn());
40901
+ };
40902
+ };
40903
+ /* end_public_function */
40904
+
40644
40905
  var index$9 = /*#__PURE__*/Object.freeze({
40645
40906
  __proto__: null,
40646
40907
  queryGlobalFeed: queryGlobalFeed,
40647
40908
  getCustomRankingGlobalFeed: getCustomRankingGlobalFeed,
40648
- getGlobalFeed: getGlobalFeed
40909
+ getGlobalFeed: getGlobalFeed,
40910
+ getUserFeed: getUserFeed
40649
40911
  });
40650
40912
 
40651
40913
  /* begin_public_function
@@ -42868,8 +43130,8 @@ var index$7 = /*#__PURE__*/Object.freeze({
42868
43130
  * const created = await createPoll({
42869
43131
  * question: 'question',
42870
43132
  * answers: [
42871
- * { dataType: 'text', data: 'answer1' },
42872
- * { dataType: 'text', data: 'answer2' },
43133
+ * { dataType: 'text', data: 'answer1', fileId: 'fileId1' },
43134
+ * { dataType: 'text', data: 'answer2', fileId: 'fileId2' },
42873
43135
  * ],
42874
43136
  * closedIn: 1649136484
42875
43137
  * }))
@@ -43142,7 +43404,7 @@ var index$6 = /*#__PURE__*/Object.freeze({
43142
43404
  getPoll: getPoll
43143
43405
  });
43144
43406
 
43145
- 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-----";
43407
+ 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-----";
43146
43408
  /*
43147
43409
  * The crypto algorithm used for importing key and signing string
43148
43410
  */
@@ -45457,4 +45719,4 @@ var index = /*#__PURE__*/Object.freeze({
45457
45719
  getReactions: getReactions
45458
45720
  });
45459
45721
 
45460
- export { API_REGIONS, index$3 as AdRepository, index$b as CategoryRepository, index$f as ChannelRepository, index$o as Client, index$a as CommentRepository, CommunityPostSettingMaps, CommunityPostSettings, index$c as CommunityRepository, ContentFeedType, ContentFlagReasonEnum, DefaultCommunityPostSetting, index$9 as FeedRepository, FileAccessTypeEnum, index$l as FileRepository, FileType, index$1 as InvitationRepository, InvitationSortByEnum, InvitationStatusEnum, InvitationTypeEnum, JoinRequestStatusEnum, JoinResultStatusEnum, index as LiveReactionRepository, index$5 as LiveStreamPlayer, MembershipAcceptanceTypeEnum, MessageContentType, index$j as MessageRepository, index$6 as PollRepository, PostContentType, index$8 as PostRepository, index$k as ReactionRepository, index$4 as StoryRepository, index$7 as StreamRepository, index$i as SubChannelRepository, SubscriptionLevels, index$m as UserRepository, VERSION, VideoResolution, VideoSize, VideoTranscodingStatus, backupCache, createQuery, createReport, createUserToken, deleteReport, disableCache, dropFromCache, enableCache, filterByChannelMembership, filterByCommunityMembership, filterByFeedType, filterByPostDataTypes, filterByPropEquality, filterByPropInclusion, filterByPropIntersection, filterBySearchTerm, filterByStringComparePartially, getChannelTopic, getCommentTopic, getCommunityStoriesTopic, getCommunityTopic, getLiveReactionTopic, getLiveStreamTopic, getMarkedMessageTopic, getMarkerUserFeedTopic, getMessageTopic, getMyFollowersTopic, getMyFollowingsTopic, getNetworkTopic, getPostTopic, getRole, getSmartFeedChannelTopic, getSmartFeedMessageTopic, getSmartFeedSubChannelTopic, getStoryTopic, getSubChannelTopic, getUserTopic, isAfterBefore, isAfterBeforeRaw, isCachable, isFetcher, isFresh, isLocal, isMutator, isOffline, isPaged, isReportedByMe, isSkip, mergeInCache, index$2 as notificationTray, onChannelMarkerFetched, onFeedMarkerFetched, onFeedMarkerUpdated, onMessageMarked, onMessageMarkerFetched, onSubChannelMarkerFetched, onSubChannelMarkerUpdated, onUserMarkerFetched, onUserMarkerFetchedLegacy, pullFromCache, pushToCache, queryCache, queryOptions, queryRoles, restoreCache, runQuery, sortByChannelSegment, sortByDisplayName, sortByFirstCreated, sortByFirstUpdated, sortByLastActivity, sortByLastCreated, sortByLastUpdated, sortByLocalSortingDate, sortByName, sortBySegmentNumber, subscribeTopic, toPage, toPageRaw, toToken, upsertInCache, wipeCache };
45722
+ export { API_REGIONS, index$3 as AdRepository, index$b as CategoryRepository, index$f as ChannelRepository, index$o as Client, index$a as CommentRepository, CommunityPostSettingMaps, CommunityPostSettings, index$c as CommunityRepository, ContentFeedType, ContentFlagReasonEnum, DefaultCommunityPostSetting, FeedDataTypeEnum, index$9 as FeedRepository, FeedSortByEnum, FeedSourceEnum, FileAccessTypeEnum, index$l as FileRepository, FileType, index$1 as InvitationRepository, InvitationSortByEnum, InvitationStatusEnum, InvitationTypeEnum, JoinRequestStatusEnum, JoinResultStatusEnum, index as LiveReactionRepository, index$5 as LiveStreamPlayer, MembershipAcceptanceTypeEnum, MessageContentType, index$j as MessageRepository, index$6 as PollRepository, PostContentType, index$8 as PostRepository, index$k as ReactionRepository, index$4 as StoryRepository, index$7 as StreamRepository, index$i as SubChannelRepository, SubscriptionLevels, index$m as UserRepository, VERSION, VideoResolution, VideoSize, VideoTranscodingStatus, backupCache, createQuery, createReport, createUserToken, deleteReport, disableCache, dropFromCache, enableCache, filterByChannelMembership, filterByCommunityMembership, filterByFeedType, filterByPostDataTypes, filterByPropEquality, filterByPropInclusion, filterByPropIntersection, filterBySearchTerm, filterByStringComparePartially, getChannelTopic, getCommentTopic, getCommunityStoriesTopic, getCommunityTopic, getLiveReactionTopic, getLiveStreamTopic, getMarkedMessageTopic, getMarkerUserFeedTopic, getMessageTopic, getMyFollowersTopic, getMyFollowingsTopic, getNetworkTopic, getPostTopic, getRole, getSmartFeedChannelTopic, getSmartFeedMessageTopic, getSmartFeedSubChannelTopic, getStoryTopic, getSubChannelTopic, getUserTopic, isAfterBefore, isAfterBeforeRaw, isCachable, isFetcher, isFresh, isLocal, isMutator, isOffline, isPaged, isReportedByMe, isSkip, mergeInCache, index$2 as notificationTray, onChannelMarkerFetched, onFeedMarkerFetched, onFeedMarkerUpdated, onMessageMarked, onMessageMarkerFetched, onSubChannelMarkerFetched, onSubChannelMarkerUpdated, onUserMarkerFetched, onUserMarkerFetchedLegacy, pullFromCache, pushToCache, queryCache, queryOptions, queryRoles, restoreCache, runQuery, sortByChannelSegment, sortByDisplayName, sortByFirstCreated, sortByFirstUpdated, sortByLastActivity, sortByLastCreated, sortByLastUpdated, sortByLocalSortingDate, sortByName, sortBySegmentNumber, subscribeTopic, toPage, toPageRaw, toToken, upsertInCache, wipeCache };