@amityco/ts-sdk 7.7.1-9bf1d358.0 → 7.7.1-a0291137.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 (69) hide show
  1. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts +2 -1
  2. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts.map +1 -1
  3. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.js.map +1 -1
  4. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/getPostsByHashtag.d.ts +15 -0
  5. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/getPostsByHashtag.d.ts.map +1 -0
  6. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/getPostsByHashtag.js +61 -0
  7. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/getPostsByHashtag.js.map +1 -0
  8. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts +1 -0
  9. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts.map +1 -1
  10. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js +1 -0
  11. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js.map +1 -1
  12. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/queryPosts.js +2 -2
  13. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/queryPosts.js.map +1 -1
  14. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostPaginationController.d.ts.map +1 -1
  15. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostPaginationController.js +3 -3
  16. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostPaginationController.js.map +1 -1
  17. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts +14 -0
  18. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts.map +1 -0
  19. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.js +126 -0
  20. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.js.map +1 -0
  21. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts +5 -0
  22. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts.map +1 -0
  23. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.js +26 -0
  24. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.js.map +1 -0
  25. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts +15 -0
  26. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts.map +1 -0
  27. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.js +65 -0
  28. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.js.map +1 -0
  29. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.d.ts +1 -0
  30. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.d.ts.map +1 -1
  31. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.js +1 -0
  32. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.js.map +1 -1
  33. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.d.ts +22 -0
  34. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.d.ts.map +1 -0
  35. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.js +45 -0
  36. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.js.map +1 -0
  37. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
  38. package/dist/@types/domains/post.d.ts +2 -1
  39. package/dist/@types/domains/post.d.ts.map +1 -1
  40. package/dist/index.cjs.js +291 -4
  41. package/dist/index.esm.js +291 -4
  42. package/dist/index.umd.js +4 -4
  43. package/dist/postRepository/api/getPostsByHashtag.d.ts +15 -0
  44. package/dist/postRepository/api/getPostsByHashtag.d.ts.map +1 -0
  45. package/dist/postRepository/api/index.d.ts +1 -0
  46. package/dist/postRepository/api/index.d.ts.map +1 -1
  47. package/dist/postRepository/observers/getPosts/PostPaginationController.d.ts.map +1 -1
  48. package/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts +14 -0
  49. package/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts.map +1 -0
  50. package/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts +5 -0
  51. package/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts.map +1 -0
  52. package/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts +15 -0
  53. package/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts.map +1 -0
  54. package/dist/postRepository/observers/index.d.ts +1 -0
  55. package/dist/postRepository/observers/index.d.ts.map +1 -1
  56. package/dist/postRepository/observers/searchPostsByHashtag.d.ts +22 -0
  57. package/dist/postRepository/observers/searchPostsByHashtag.d.ts.map +1 -0
  58. package/package.json +1 -1
  59. package/src/@types/domains/post.ts +6 -1
  60. package/src/postRepository/api/getPostsByHashtag.ts +78 -0
  61. package/src/postRepository/api/index.ts +2 -0
  62. package/src/postRepository/api/queryPosts.ts +2 -2
  63. package/src/postRepository/observers/getPosts/PostPaginationController.ts +0 -4
  64. package/src/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.ts +180 -0
  65. package/src/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.ts +45 -0
  66. package/src/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.ts +99 -0
  67. package/src/postRepository/observers/index.ts +1 -0
  68. package/src/postRepository/observers/searchPostsByHashtag.ts +56 -0
  69. package/tsconfig.tsbuildinfo +1 -1
@@ -79,7 +79,8 @@ declare global {
79
79
  limit?: number;
80
80
  hashtags?: string[];
81
81
  };
82
- type PostLiveCollection = Amity.LiveCollectionParams<Omit<QueryPosts, 'sortBy' | 'page'> & {
82
+ type QueryPostsWithHashtags = Pick<Amity.QueryPosts, 'dataTypes' | 'matchingOnlyParentPost' | 'sortBy' | 'page' | 'limit' | 'hashtags'>;
83
+ type PostLiveCollection = Amity.LiveCollectionParams<Omit<QueryPosts, 'sortBy' | 'page' | 'hashtags'> & {
83
84
  sortBy?: 'lastCreated' | 'firstCreated';
84
85
  }>;
85
86
  type PostLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalPost['postId'], Pick<QueryPosts, 'page'>>;
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/post.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/post.ts"],"names":[],"mappings":"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"}
package/dist/index.cjs.js CHANGED
@@ -23672,6 +23672,60 @@ const createClipPost = async (bundle) => {
23672
23672
  };
23673
23673
  /* end_public_function */
23674
23674
 
23675
+ /**
23676
+ * ```js
23677
+ * import { PostRepository } from '@amityco/ts-sdk';
23678
+ * const { data: posts, prevPage, nextPage } = await PostRepository.searchPostsByHashtag({ hashtags: ['amity'], limit: 10 });
23679
+ * ```
23680
+ *
23681
+ * Queries a paginable list of {@link Amity.Post} objects
23682
+ *
23683
+ * @param query The query parameters
23684
+ * @returns posts
23685
+ * @category Post API
23686
+ * @async
23687
+ */
23688
+ const getPostsByHashtag = async (query) => {
23689
+ const client = getActiveClient();
23690
+ client.log('post/queryByHashtag', query);
23691
+ const { page, limit = 10 } = query, params = __rest(query, ["page", "limit"]);
23692
+ const { dataTypes, matchingOnlyParentPost, hashtags } = params;
23693
+ const options = (() => {
23694
+ if (page)
23695
+ return { token: page };
23696
+ if (limit)
23697
+ return { limit };
23698
+ return undefined;
23699
+ })();
23700
+ // API-FIX: parameters should be querystring. (1)
23701
+ // API-FIX: backend should answer Amity.Response (2)
23702
+ // const { data } = await client.http.get<Amity.Response<Amity.PagedResponse<Amity.PostPayload>>>(
23703
+ const { data } = await client.http.get(`/api/v1/search/posts`, {
23704
+ params: Object.assign(Object.assign({}, params), { hashtags,
23705
+ /*
23706
+ * when creating post like image, file, video BE will create 2 posts
23707
+ * 1. parent post to store text with dataType=text
23708
+ * 2. child post to store dataTypes post data
23709
+ *
23710
+ * By default, BE queries only parent post
23711
+ */
23712
+ matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length), options }),
23713
+ });
23714
+ // API-FIX: backend should answer Amity.Response (2)
23715
+ // const { paging, posts } = unwrapPayload(data)
23716
+ // unpacking
23717
+ const { paging } = data, payload = __rest(data, ["paging"]);
23718
+ const preparedPayload = prepareMembershipPayload(payload, 'communityUsers');
23719
+ const { posts } = payload;
23720
+ const cachedAt = client.cache && Date.now();
23721
+ if (client.cache) {
23722
+ ingestInCache(preparedPayload, { cachedAt });
23723
+ const cacheKey = ['post', 'query', Object.assign(Object.assign({}, params), { options })];
23724
+ pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });
23725
+ }
23726
+ return { data: posts.map(LinkedObject.post), cachedAt, paging };
23727
+ };
23728
+
23675
23729
  /* begin_public_function
23676
23730
  id: comment.get_by_ids
23677
23731
  */
@@ -24754,14 +24808,14 @@ const getPost$1 = (postId, callback) => {
24754
24808
 
24755
24809
  class PostPaginationController extends PaginationController {
24756
24810
  async getRequest(queryParams, token) {
24757
- const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, includeDeleted, matchingOnlyParentPost, targetType, hashtags } = queryParams, params = __rest(queryParams, ["limit", "includeDeleted", "matchingOnlyParentPost", "targetType", "hashtags"]);
24811
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, includeDeleted, matchingOnlyParentPost } = queryParams, params = __rest(queryParams, ["limit", "includeDeleted", "matchingOnlyParentPost"]);
24758
24812
  const { dataTypes } = params;
24759
24813
  const baseOptions = {
24760
24814
  type: params.sortBy || queryParams.limit ? 'pagination' : undefined,
24761
24815
  };
24762
24816
  const options = token ? Object.assign(Object.assign({}, baseOptions), { token }) : Object.assign(Object.assign({}, baseOptions), { limit });
24763
24817
  const { data: queryResponse } = await this.http.get(`/api/v5/posts`, {
24764
- params: Object.assign(Object.assign(Object.assign(Object.assign({}, params), { isDeleted: inferIsDeleted(includeDeleted),
24818
+ params: Object.assign(Object.assign({}, params), { isDeleted: inferIsDeleted(includeDeleted),
24765
24819
  /*
24766
24820
  * when creating post like image, file, video BE will create 2 posts
24767
24821
  * 1. parent post to store text with dataType=text
@@ -24769,7 +24823,7 @@ class PostPaginationController extends PaginationController {
24769
24823
  *
24770
24824
  * By default, BE queries only parent post
24771
24825
  */
24772
- matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length), targetType }), (targetType === 'all' && hashtags && { hashtags })), { options }),
24826
+ matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length), options }),
24773
24827
  });
24774
24828
  return queryResponse;
24775
24829
  }
@@ -25559,6 +25613,237 @@ const semanticSearchPosts = (params, callback, config) => {
25559
25613
  };
25560
25614
  };
25561
25615
 
25616
+ class SearchPostPaginationController extends PaginationController {
25617
+ async getRequest(queryParams, token) {
25618
+ const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, matchingOnlyParentPost, hashtags } = queryParams, params = __rest(queryParams, ["limit", "matchingOnlyParentPost", "hashtags"]);
25619
+ const { dataTypes } = params;
25620
+ const baseOptions = {
25621
+ type: params.sortBy || queryParams.limit ? 'pagination' : undefined,
25622
+ };
25623
+ const options = token ? Object.assign(Object.assign({}, baseOptions), { token }) : Object.assign(Object.assign({}, baseOptions), { limit });
25624
+ const { data: queryResponse } = await this.http.get(`/api/v1/search/posts`, {
25625
+ params: Object.assign(Object.assign({}, params), { hashtags,
25626
+ /*
25627
+ * when creating post like image, file, video BE will create 2 posts
25628
+ * 1. parent post to store text with dataType=text
25629
+ * 2. child post to store dataTypes post data
25630
+ *
25631
+ * By default, BE queries only parent post
25632
+ */
25633
+ matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length), options }),
25634
+ });
25635
+ return queryResponse;
25636
+ }
25637
+ }
25638
+
25639
+ class SearchPostQueryStreamController extends QueryStreamController {
25640
+ constructor(query, cacheKey, notifyChange, preparePayload) {
25641
+ super(query, cacheKey);
25642
+ this.notifyChange = notifyChange;
25643
+ this.preparePayload = preparePayload;
25644
+ }
25645
+ async saveToMainDB(response) {
25646
+ const processedPayload = await this.preparePayload(response);
25647
+ const client = getActiveClient();
25648
+ const cachedAt = client.cache && Date.now();
25649
+ if (client.cache) {
25650
+ ingestInCache(processedPayload, { cachedAt });
25651
+ }
25652
+ }
25653
+ appendToQueryStream(response, direction, refresh = false) {
25654
+ var _a, _b;
25655
+ if (refresh) {
25656
+ pushToCache(this.cacheKey, {
25657
+ data: response.posts.map(getResolver('post')),
25658
+ });
25659
+ }
25660
+ else {
25661
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25662
+ const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
25663
+ pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
25664
+ }
25665
+ }
25666
+ reactor(action) {
25667
+ return (post) => {
25668
+ var _a, _b;
25669
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25670
+ if (!collection)
25671
+ return;
25672
+ if (post.parentPostId && post.isDeleted) {
25673
+ const parentPost = (_b = pullFromCache([
25674
+ 'post',
25675
+ 'get',
25676
+ post.parentPostId,
25677
+ ])) === null || _b === void 0 ? void 0 : _b.data;
25678
+ if (!parentPost)
25679
+ return;
25680
+ parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
25681
+ pushToCache(['post', 'get', parentPost.postId], parentPost);
25682
+ }
25683
+ if (action === EnumPostActions.OnPostDeclined) {
25684
+ collection.data = collection.data.filter(postId => postId !== post.postId);
25685
+ }
25686
+ if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
25687
+ collection.data = [...new Set([post.postId, ...collection.data])];
25688
+ }
25689
+ pushToCache(this.cacheKey, collection);
25690
+ this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
25691
+ };
25692
+ }
25693
+ subscribeRTE(createSubscriber) {
25694
+ return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
25695
+ }
25696
+ }
25697
+
25698
+ class SearchPostLiveCollectionController extends LiveCollectionController {
25699
+ constructor(query, callback) {
25700
+ const queryStreamId = hash__default["default"](query);
25701
+ const cacheKey = ['posts', 'collection', queryStreamId];
25702
+ const paginationController = new SearchPostPaginationController(query);
25703
+ super(paginationController, queryStreamId, cacheKey, callback);
25704
+ this.query = query;
25705
+ this.queryStreamController = new SearchPostQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
25706
+ this.callback = callback.bind(this);
25707
+ this.loadPage({ initial: true });
25708
+ }
25709
+ setup() {
25710
+ var _a;
25711
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25712
+ if (!collection) {
25713
+ pushToCache(this.cacheKey, {
25714
+ data: [],
25715
+ params: {},
25716
+ });
25717
+ }
25718
+ }
25719
+ async persistModel(queryPayload) {
25720
+ await this.queryStreamController.saveToMainDB(queryPayload);
25721
+ }
25722
+ persistQueryStream({ response, direction, refresh, }) {
25723
+ this.queryStreamController.appendToQueryStream(response, direction, refresh);
25724
+ }
25725
+ startSubscription() {
25726
+ return this.queryStreamController.subscribeRTE([
25727
+ { fn: onPostCreated, action: EnumPostActions.OnPostCreated },
25728
+ { fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
25729
+ { fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
25730
+ { fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
25731
+ { fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
25732
+ { fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
25733
+ { fn: onPostApproved, action: EnumPostActions.OnPostApproved },
25734
+ { fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
25735
+ { fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
25736
+ { fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
25737
+ { fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
25738
+ { fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
25739
+ { fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
25740
+ {
25741
+ fn: convertEventPayload((callback) => {
25742
+ return onCommentCreated(async (comment) => {
25743
+ var _a;
25744
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25745
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
25746
+ return;
25747
+ await getPost(comment.referenceId);
25748
+ callback(comment);
25749
+ });
25750
+ }, 'referenceId', 'post'),
25751
+ action: EnumPostActions.OnPostUpdated,
25752
+ },
25753
+ {
25754
+ fn: convertEventPayload((callback) => {
25755
+ return onCommentDeleted(async (comment) => {
25756
+ var _a;
25757
+ const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25758
+ if (!currentCollection || currentCollection.data.includes(comment.referenceId))
25759
+ return;
25760
+ await getPost(comment.referenceId);
25761
+ callback(comment);
25762
+ });
25763
+ }, 'referenceId', 'post'),
25764
+ action: EnumPostActions.OnPostUpdated,
25765
+ },
25766
+ ]);
25767
+ }
25768
+ notifyChange({ origin, loading, error }) {
25769
+ var _a, _b;
25770
+ const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
25771
+ if (!collection)
25772
+ return;
25773
+ const data = this.applyFilter((_b = collection.data
25774
+ .map(id => pullFromCache(['post', 'get', id]))
25775
+ .filter(isNonNullable)
25776
+ .map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
25777
+ if (!this.shouldNotify(data) && origin === 'event')
25778
+ return;
25779
+ this.callback({
25780
+ onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
25781
+ data,
25782
+ hasNextPage: !!this.paginationController.getNextToken(),
25783
+ loading,
25784
+ error,
25785
+ });
25786
+ }
25787
+ applyFilter(data) {
25788
+ var _a;
25789
+ let posts = data;
25790
+ if ((_a = this.query.dataTypes) === null || _a === void 0 ? void 0 : _a.length) {
25791
+ posts = filterByPostDataTypes(posts, this.query.dataTypes);
25792
+ }
25793
+ switch (this.query.sortBy) {
25794
+ case 'firstCreated':
25795
+ posts = posts.sort(sortByFirstCreated);
25796
+ break;
25797
+ case 'lastCreated':
25798
+ default:
25799
+ posts = posts.sort(sortByLastCreated);
25800
+ break;
25801
+ }
25802
+ return posts;
25803
+ }
25804
+ }
25805
+
25806
+ /* begin_public_function
25807
+ id: post.query
25808
+ */
25809
+ /**
25810
+ * ```js
25811
+ * import { PostRepository } from '@amityco/ts-sdk'
25812
+ *
25813
+ * let posts = []
25814
+ * const unsub = PostRepository.searchPostsByHashtag({
25815
+ * hashtags: ['amity'],
25816
+ * limit: 10,
25817
+ * }, response => merge(posts, response.data))
25818
+ * ```
25819
+ *
25820
+ * Observe all mutations on a list of {@link Amity.Post} for a given target object
25821
+ *
25822
+ * @param params.hashtags the hashtags to search for
25823
+ * @param callback the function to call when new data are available
25824
+ * @param config
25825
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
25826
+ *
25827
+ * @category Posts Live Collection
25828
+ */
25829
+ const searchPostsByHashtag = (params, callback, config) => {
25830
+ const { log, cache } = getActiveClient();
25831
+ if (!cache) {
25832
+ console.log(ENABLE_CACHE_MESSAGE);
25833
+ }
25834
+ const timestamp = Date.now();
25835
+ log(`searchPostsByHashtag(tmpid: ${timestamp}) > listen`);
25836
+ const postsLiveCollection = new SearchPostLiveCollectionController(params, callback);
25837
+ const disposers = postsLiveCollection.startSubscription();
25838
+ const cacheKey = postsLiveCollection.getCacheKey();
25839
+ disposers.push(() => dropFromCache(cacheKey));
25840
+ return () => {
25841
+ log(`searchPostsByHashtag(tmpid: ${timestamp}) > dispose`);
25842
+ disposers.forEach(fn => fn());
25843
+ };
25844
+ };
25845
+ /* end_public_function */
25846
+
25562
25847
  var index$8 = /*#__PURE__*/Object.freeze({
25563
25848
  __proto__: null,
25564
25849
  getPostByIds: getPostByIds,
@@ -25573,6 +25858,7 @@ var index$8 = /*#__PURE__*/Object.freeze({
25573
25858
  unflagPost: unflagPost,
25574
25859
  isPostFlaggedByMe: isPostFlaggedByMe,
25575
25860
  createClipPost: createClipPost,
25861
+ getPostsByHashtag: getPostsByHashtag,
25576
25862
  onPostCreated: onPostCreated,
25577
25863
  onPostUpdated: onPostUpdated,
25578
25864
  onPostDeleted: onPostDeleted,
@@ -25586,7 +25872,8 @@ var index$8 = /*#__PURE__*/Object.freeze({
25586
25872
  getPosts: getPosts,
25587
25873
  getPinnedPosts: getPinnedPosts,
25588
25874
  getGlobalPinnedPosts: getGlobalPinnedPosts,
25589
- semanticSearchPosts: semanticSearchPosts
25875
+ semanticSearchPosts: semanticSearchPosts,
25876
+ searchPostsByHashtag: searchPostsByHashtag
25590
25877
  });
25591
25878
 
25592
25879
  /* begin_public_function