@amityco/ts-sdk 7.32.1-6d2e2c1e.0 → 7.32.1-a3ee23ab.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 (47) hide show
  1. package/dist/@types/domains/comment.d.ts +2 -2
  2. package/dist/@types/domains/comment.d.ts.map +1 -1
  3. package/dist/@types/domains/content.d.ts +23 -3
  4. package/dist/@types/domains/content.d.ts.map +1 -1
  5. package/dist/@types/domains/feed.d.ts +4 -1
  6. package/dist/@types/domains/feed.d.ts.map +1 -1
  7. package/dist/@types/domains/post.d.ts +11 -0
  8. package/dist/@types/domains/post.d.ts.map +1 -1
  9. package/dist/cache/api/queryCache.d.ts.map +1 -1
  10. package/dist/commentRepository/api/createComment.d.ts +1 -1
  11. package/dist/commentRepository/api/createComment.d.ts.map +1 -1
  12. package/dist/commentRepository/api/tests/createComment.gif.test.d.ts +2 -0
  13. package/dist/commentRepository/api/tests/createComment.gif.test.d.ts.map +1 -0
  14. package/dist/commentRepository/api/tests/deleteComment.gif.test.d.ts +2 -0
  15. package/dist/commentRepository/api/tests/deleteComment.gif.test.d.ts.map +1 -0
  16. package/dist/commentRepository/api/tests/updateComment.gif.test.d.ts +2 -0
  17. package/dist/commentRepository/api/tests/updateComment.gif.test.d.ts.map +1 -0
  18. package/dist/commentRepository/api/updateComment.d.ts +9 -2
  19. package/dist/commentRepository/api/updateComment.d.ts.map +1 -1
  20. package/dist/commentRepository/observers/tests/getComments.gif.test.d.ts +2 -0
  21. package/dist/commentRepository/observers/tests/getComments.gif.test.d.ts.map +1 -0
  22. package/dist/commentRepository/utils/dataTypes.d.ts +2 -0
  23. package/dist/commentRepository/utils/dataTypes.d.ts.map +1 -0
  24. package/dist/index.cjs.js +87 -55
  25. package/dist/index.esm.js +87 -55
  26. package/dist/index.umd.js +2 -2
  27. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  28. package/dist/postRepository/api/createMixedMediaPost.d.ts +6 -6
  29. package/dist/postRepository/api/createMixedMediaPost.d.ts.map +1 -1
  30. package/dist/postRepository/api/createPost.d.ts +1 -4
  31. package/dist/postRepository/api/createPost.d.ts.map +1 -1
  32. package/dist/postRepository/api/editPost.d.ts +4 -5
  33. package/dist/postRepository/api/editPost.d.ts.map +1 -1
  34. package/dist/postRepository/api/tests/gifPost.test.d.ts +2 -0
  35. package/dist/postRepository/api/tests/gifPost.test.d.ts.map +1 -0
  36. package/dist/postRepository/observers/getPosts.d.ts +4 -0
  37. package/dist/postRepository/observers/getPosts.d.ts.map +1 -1
  38. package/dist/postRepository/utils/attachments.d.ts +8 -0
  39. package/dist/postRepository/utils/attachments.d.ts.map +1 -0
  40. package/dist/utils/gifAttachment.d.ts +5 -0
  41. package/dist/utils/gifAttachment.d.ts.map +1 -0
  42. package/dist/utils/postTypePredicate.d.ts +1 -0
  43. package/dist/utils/postTypePredicate.d.ts.map +1 -1
  44. package/dist/utils/tests/dummy/comment.d.ts +1 -1
  45. package/package.json +1 -1
  46. package/dist/cache/api/tests/queryCache.test.d.ts +0 -2
  47. package/dist/cache/api/tests/queryCache.test.d.ts.map +0 -1
@@ -11,7 +11,7 @@ declare global {
11
11
  * Absent on the wire means `approved` — see `prepareCommentPayload`.
12
12
  */
13
13
  type CommentApprovalStatus = `${CommentApprovalStatusEnum}`;
14
- type CommentContentType = 'text';
14
+ type CommentContentType = 'text' | 'gif';
15
15
  type CommentReferenceType = 'content' | 'post' | 'story';
16
16
  type CommentActionType = 'onFetch' | 'onCreate' | 'onUpdate' | 'onDelete' | 'onFlagged' | 'onUnflagged' | 'onReactionAdded' | 'onReactionRemoved';
17
17
  type RawComment<T extends CommentContentType = any> = {
@@ -57,7 +57,7 @@ declare global {
57
57
  limit?: number;
58
58
  page?: Amity.Token;
59
59
  dataTypes?: {
60
- values: ('image' | 'text')[];
60
+ values: ('image' | 'text' | 'gif')[];
61
61
  matchType: 'any' | 'exact';
62
62
  };
63
63
  excludeBlockUserComments?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"comment.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/comment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comment.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/comment.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ declare global {
36
36
  reason: ContentFlagReasonEnum;
37
37
  detail?: string;
38
38
  };
39
- type ContentType = 'text' | 'image' | 'file' | 'video' | 'poll' | 'json' | 'liveStream' | 'clip' | 'audio' | string;
39
+ type ContentType = 'text' | 'image' | 'file' | 'video' | 'poll' | 'json' | 'liveStream' | 'clip' | 'audio' | 'gif' | string;
40
40
  type ContentFeedType = ValueOf<typeof ContentFeedType>;
41
41
  type ContentDataText = {
42
42
  title?: string | null;
@@ -49,11 +49,25 @@ declare global {
49
49
  fileId: Amity.File<'image'>['fileId'];
50
50
  caption?: string;
51
51
  };
52
+ /**
53
+ * A GIF picked by the app from its own provider. It is a link, not a file: nothing is
54
+ * uploaded and there is no `fileId`. Leave out a size that has no value; `null` is refused,
55
+ * and so is any other key (alt text and provider fields included).
56
+ */
57
+ type GifAttachment = {
58
+ type: 'gif';
59
+ /** https, path ends in `.gif`, at most 2,000 characters. Checked by the server. */
60
+ url: string;
61
+ /** 1 to 4096 */
62
+ width?: number;
63
+ /** 1 to 4096 */
64
+ height?: number;
65
+ };
52
66
  type Attachment = {
53
67
  type: 'image' | 'link';
54
68
  url?: string;
55
69
  fileId?: Amity.File<'image'>['fileId'];
56
- };
70
+ } | GifAttachment;
57
71
  type ContentDataVideo = {
58
72
  /**
59
73
  * Null until the server has finished transcoding the video: the field is
@@ -86,6 +100,12 @@ declare global {
86
100
  type ContentDataStream = {
87
101
  streamId: Amity.Stream['streamId'];
88
102
  };
103
+ /** A GIF child post: the link the app sent, and its size when the app sent one. */
104
+ type ContentDataGif = {
105
+ url: string;
106
+ width?: number;
107
+ height?: number;
108
+ };
89
109
  type ContentDataRoom = {
90
110
  roomId: Amity.Room['_id'];
91
111
  };
@@ -94,7 +114,7 @@ declare global {
94
114
  title?: string;
95
115
  text?: string;
96
116
  };
97
- type ContentData<T extends ContentType> = T extends 'text' ? ContentDataText : T extends 'file' ? ContentDataFile : T extends 'image' ? ContentDataImage : T extends 'video' ? ContentDataVideo : T extends 'audio' ? ContentDataAudio : T extends 'poll' ? ContentDataPoll : T extends 'liveStream' ? ContentDataStream : T extends 'clip' ? ContentDataClip : T extends 'room' ? ContentDataRoom : T extends 'event' ? ContentDataEvent : T extends 'json' ? Record<string, unknown> : T extends string ? string | Record<string, unknown> : never;
117
+ type ContentData<T extends ContentType> = T extends 'text' ? ContentDataText : T extends 'file' ? ContentDataFile : T extends 'image' ? ContentDataImage : T extends 'video' ? ContentDataVideo : T extends 'audio' ? ContentDataAudio : T extends 'poll' ? ContentDataPoll : T extends 'liveStream' ? ContentDataStream : T extends 'clip' ? ContentDataClip : T extends 'room' ? ContentDataRoom : T extends 'event' ? ContentDataEvent : T extends 'gif' ? ContentDataGif : T extends 'json' ? Record<string, unknown> : T extends string ? string | Record<string, unknown> : never;
98
118
  type Content<T extends ContentType> = {
99
119
  dataType?: T;
100
120
  dataTypes?: T[];
@@ -1 +1 @@
1
- {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/content.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;EAM1B,CAAC;AAEH,oBAAY,qBAAqB;IAC/B,mBAAmB,iCAAiC;IACpD,iBAAiB,uBAAuB;IACxC,oBAAoB,2BAA2B;IAC/C,iBAAiB,yBAAyB;IAC1C,4BAA4B,oCAAoC;IAChE,sBAAsB,2CAA2C;IACjE,qBAAqB,6BAA6B;IAClD,WAAW,kBAAkB;IAC7B,gBAAgB,wCAAwC;IACxD,MAAM,WAAW;CAClB;AAED;;;GAGG;AACH,OAAO,EAAE,qBAAqB,IAAI,0BAA0B,EAAE,CAAC;AAE/D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,iBAAiB,GAClB,OAAO,CAAC,GAAG,qBAAqB,EAAE,EAAE,GAAG,qBAAqB,CAAC,MAAM,EAAE,CAAC,GACtE,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAElB;;;;;;WAMG;QACH,KAAK,kBAAkB,GAAG;YACxB,MAAM,EAAE,qBAAqB,CAAC;YAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QAEF,KAAK,WAAW,GACZ,MAAM,GACN,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,MAAM,GACN,YAAY,GACZ,MAAM,GACN,OAAO,GACP,MAAM,CAAC;QAEX,KAAK,eAAe,GAAG,OAAO,CAAC,OAAO,eAAe,CAAC,CAAC;QAEvD,KAAK,eAAe,GAAG;YACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QAEF,KAAK,eAAe,GAAG;YACrB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;YACtC,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QAEF,KAAK,UAAU,GAAG;YAChB,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC;YACvB,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;SACxC,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB;;;;eAIG;YACH,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACtD,WAAW,EAAE;iBACV,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;aACvD,CAAC;SACH,CAAC;QAEF,KAAK,eAAe,GAAG;YACrB,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;YACrC,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,WAAW,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC;SACrC,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;YACtC,OAAO,EAAE,GAAG,CAAC;YACb,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC;YACjC,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,UAAU,EAAE;gBAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;aAAE,CAAC;SACpC,CAAC;QAEF,KAAK,eAAe,GAAG;YACrB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC9B,CAAC;QAEF,KAAK,iBAAiB,GAAG;YACvB,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;SACpC,CAAC;QAEF,KAAK,eAAe,GAAG;YACrB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnC,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,IAAI,CAAC,EAAE,MAAM,CAAC;SACf,CAAC;QAEF,KAAK,WAAW,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,MAAM,GACtD,eAAe,GACf,CAAC,SAAS,MAAM,GAChB,eAAe,GACf,CAAC,SAAS,OAAO,GACjB,gBAAgB,GAChB,CAAC,SAAS,OAAO,GACjB,gBAAgB,GAChB,CAAC,SAAS,OAAO,GACjB,gBAAgB,GAChB,CAAC,SAAS,MAAM,GAChB,eAAe,GACf,CAAC,SAAS,YAAY,GACtB,iBAAiB,GACjB,CAAC,SAAS,MAAM,GAChB,eAAe,GACf,CAAC,SAAS,MAAM,GAChB,eAAe,GACf,CAAC,SAAS,OAAO,GACjB,gBAAgB,GAChB,CAAC,SAAS,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,SAAS,MAAM,GAChB,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,KAAK,CAAC;QAEV,KAAK,OAAO,CAAC,CAAC,SAAS,WAAW,IAAI;YAEpC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;SACvB,CAAC;QAEF,KAAK,kBAAkB,GAAG;YACxB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC;QAEF,KAAK,mBAAmB,GAAG;YACzB,WAAW,EAAE,OAAO,CAAC;YACrB,OAAO,EAAE,OAAO,CAAC;YACjB,kBAAkB,EAAE,MAAM,CAAC;YAC3B,eAAe,EAAE;gBACf,aAAa,EAAE,KAAK,CAAC,eAAe,CAAC;gBACrC,aAAa,EAAE,KAAK,CAAC,eAAe,CAAC;aACtC,CAAC;SACH,CAAC;QAEF,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,MAAM,GAAG,OAAO,IAAI,CAAC,SAAS,MAAM,GAC5E,kBAAkB,GAClB,CAAC,SAAS,OAAO,GACjB,mBAAmB,GACnB,KAAK,CAAC;KACX;CACF"}
1
+ {"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/content.ts"],"names":[],"mappings":"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"}
@@ -54,7 +54,10 @@ declare global {
54
54
  queryToken?: string;
55
55
  includeMixedStructure?: boolean;
56
56
  };
57
- type CustomRankingGlobalFeedLiveCollection = Amity.LiveCollectionParams<Omit<QueryGlobalFeed, 'resolveParent' | 'queryToken'>>;
57
+ type CustomRankingGlobalFeedLiveCollection = Amity.LiveCollectionParams<Omit<QueryGlobalFeed, 'resolveParent' | 'queryToken' | 'dataTypes'> & {
58
+ /** This feed is on v5, which also takes `gif`; the v4 global feed does not. */
59
+ dataTypes?: (NonNullable<QueryGlobalFeed['dataTypes']>[number] | 'gif')[];
60
+ }>;
58
61
  type CustomRankingGlobalFeedLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalPost['postId'], QueryGlobalFeed>;
59
62
  type GlobalFeedLiveCollection = Amity.LiveCollectionParams<Omit<QueryGlobalFeed, 'queryToken'>>;
60
63
  type GlobalFeedLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalPost['postId'], QueryGlobalFeed>;
@@ -1 +1 @@
1
- {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/feed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC;AAEV,0BAAkB,gBAAgB;IAChC,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAED,0BAAkB,cAAc;IAC9B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;CAC9B;AAED,0BAAkB,cAAc;IAC9B,SAAS,cAAc;IACvB,IAAI,SAAS;CACd;AAED,0BAAkB,YAAY;IAC5B,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,YAAY,GAAG,gBAAgB,CAAC;QAErC,KAAK,UAAU,GAAG,cAAc,CAAC;QAEjC,KAAK,UAAU,GAAG,cAAc,CAAC;QAEjC,KAAK,IAAI,GAAG;YACV,MAAM,EAAE,MAAM,CAAC;YACf,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC;YACpC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,CAAC;YACxD,QAAQ,EAAE,MAAM,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC;SACnB,GAAG,KAAK,CAAC,UAAU,CAAC;QAErB,KAAK,YAAY,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC;YACf,oBAAoB,EAAE,MAAM,CAAC;YAC7B,iBAAiB,EAAE,MAAM,CAAC;YAC1B,kBAAkB,EAAE,MAAM,CAAC;YAC3B,mBAAmB,EAAE,MAAM,CAAC;YAC5B,kBAAkB,EAAE,MAAM,CAAC;YAC3B,iBAAiB,EAAE,MAAM,CAAC;YAC1B,cAAc,EAAE,MAAM,CAAC;YACvB,cAAc,EAAE,MAAM,CAAC;YACvB,aAAa,EAAE,MAAM,CAAC;SACvB,CAAC;QAEF,KAAK,eAAe,GAAG;YACrB,SAAS,CAAC,EAAE,CACR,OAAO,GACP,OAAO,GACP,OAAO,GACP,MAAM,GACN,MAAM,GACN,YAAY,GACZ,MAAM,GACN,MAAM,CACT,EAAE,CAAC;YACJ,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,qBAAqB,CAAC,EAAE,OAAO,CAAC;SACjC,CAAC;QAEF,KAAK,qCAAqC,GAAG,KAAK,CAAC,oBAAoB,CACrE,IAAI,CAAC,eAAe,EAAE,eAAe,GAAG,YAAY,CAAC,CACtD,CAAC;QAEF,KAAK,0CAA0C,GAAG,KAAK,CAAC,mBAAmB,CACzE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,eAAe,CAChB,CAAC;QAEF,KAAK,wBAAwB,GAAG,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;QAEhG,KAAK,6BAA6B,GAAG,KAAK,CAAC,mBAAmB,CAC5D,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,eAAe,CAChB,CAAC;QAEF,KAAK,wBAAwB,GAAG,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAElF,KAAK,6BAA6B,GAAG,KAAK,CAAC,mBAAmB,CAC5D,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CACtB,CAAC;QAEF,KAAK,aAAa,GAAG;YACnB,MAAM,EAAE,MAAM,CAAC;YACf,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB,MAAM,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;YAC1B,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YACjC,sBAAsB,CAAC,EAAE,OAAO,CAAC;YACjC,WAAW,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;YACjC,qBAAqB,CAAC,EAAE,OAAO,CAAC;YAChC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;SAC3B,CAAC;QAEF,KAAK,sBAAsB,GAAG,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAExE,KAAK,2BAA2B,GAAG,KAAK,CAAC,mBAAmB,CAC1D,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,aAAa,CACd,CAAC;QAEF,KAAK,QAAQ,GAAG,GAAG,YAAY,EAAE,CAAC;QAElC,KAAK,kBAAkB,GAAG;YACxB,WAAW,EAAE,MAAM,CAAC;YACpB,MAAM,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC;YAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;YAC1B,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAC;YAChC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;SAC3B,CAAC;QAEF,KAAK,2BAA2B,GAAG,KAAK,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QAElF,KAAK,gCAAgC,GAAG,KAAK,CAAC,mBAAmB,CAC/D,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,kBAAkB,CACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/feed.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare const PostContentType: Readonly<{
9
9
  AUDIO: "audio";
10
10
  ROOM: "room";
11
11
  EVENT: "event";
12
+ GIF: "gif";
12
13
  }>;
13
14
  export declare const PostStructureType: Readonly<{
14
15
  TEXT: "text";
@@ -18,12 +19,22 @@ export declare const PostStructureType: Readonly<{
18
19
  AUDIO: "audio";
19
20
  MIXED: "mixed";
20
21
  EVENT: "event";
22
+ /** A post that holds only GIFs. GIFs beside other media make the post `mixed`. */
23
+ GIF: "gif";
21
24
  }>;
22
25
  declare global {
23
26
  namespace Amity {
24
27
  type PostTargetType = Amity.Feed['targetType'] | 'content' | 'all';
25
28
  type PostContentType = ValueOf<typeof PostContentType> | string;
26
29
  type MixedMediaPostContentType = Exclude<ValueOf<typeof PostContentType>, 'text' | 'poll' | 'liveStream' | 'clip'>;
30
+ /**
31
+ * One attachment a post create or edit sends: an uploaded file by its id, or a GIF by its
32
+ * link. A GIF takes no product tags; the server refuses them.
33
+ */
34
+ type PostAttachment<T extends string = MixedMediaPostContentType> = {
35
+ type: Exclude<T, 'gif'>;
36
+ fileId: Amity.File['fileId'];
37
+ } | Amity.GifAttachment;
27
38
  type PostActionType = 'onFetch' | 'onCreate' | 'onUpdate' | 'onDelete' | 'onApproved' | 'onDeclined' | 'onFlagged' | 'onUnflagged' | 'onReactionAdded' | 'onReactionRemoved';
28
39
  type PostStructureType = ValueOf<typeof PostStructureType>;
29
40
  type RawPost<T extends PostContentType = any> = {
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/post.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;EAW1B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;EAQ5B,CAAC;AAEH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QAEd,KAAK,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;QAEnE,KAAK,eAAe,GAAG,OAAO,CAAC,OAAO,eAAe,CAAC,GAAG,MAAM,CAAC;QAEhE,KAAK,yBAAyB,GAAG,OAAO,CACtC,OAAO,CAAC,OAAO,eAAe,CAAC,EAC/B,MAAM,GAAG,MAAM,GAAG,YAAY,GAAG,MAAM,CACxC,CAAC;QAEF,KAAK,cAAc,GACf,SAAS,GACT,UAAU,GACV,UAAU,GACV,UAAU,GACV,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,aAAa,GACb,iBAAiB,GACjB,mBAAmB,CAAC;QAExB,KAAK,iBAAiB,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC;QAE3D,KAAK,OAAO,CAAC,CAAC,SAAS,eAAe,GAAG,GAAG,IAAI;YAC9C,MAAM,EAAE,MAAM,CAAC;YACf,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAClC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtC,UAAU,EAAE,cAAc,CAAC;YAC3B,QAAQ,EAAE,MAAM,CAAC;YACjB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,aAAa,EAAE,MAAM,CAAC;YACtB,kBAAkB,EAAE,KAAK,CAAC;YAC1B,iBAAiB,EAAE,KAAK,CAAC;YACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;YAE1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAE/B,SAAS,EAAE,MAAM,CAAC;YAClB,QAAQ,EAAE;gBACR,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE,MAAM,CAAC;gBACf,IAAI,EAAE,MAAM,CAAC;aACd,GAAG,IAAI,CAAC;YAET,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;YAEhB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;YAC3B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;YAE5B,SAAS,CAAC,EAAE,OAAO,CAAC;YAEpB,IAAI,EAAE,MAAM,CAAC;YAEb,UAAU,EAAE,MAAM,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC;YAEd,cAAc,EAAE,MAAM,CAAC;YACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;YACvB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;YACpB,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC;YACvC,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACrB,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC;YACpC,eAAe,CAAC,EAAE,MAAM,CAAC;SAC1B,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAClB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE5B,KAAK,YAAY,CAAC,CAAC,SAAS,eAAe,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG;YAChE,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;YACrC;;;;;;;;eAQG;YACH,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAC;QAEF,KAAK,cAAc,GAAG;YACpB,aAAa,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAC5B,cAAc,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;YACzC,OAAO,EAAE,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YAChC,SAAS,EAAE;gBACT,YAAY,EAAE,MAAM,IAAI,CAAC;gBACzB,wBAAwB,EAAE,CAAC,kBAAkB,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;aACjE,CAAC;YACF,WAAW,EAAE,CAAC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YAC9D,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;YAClC,YAAY,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;YACpD,YAAY,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;YACpD,qBAAqB,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;YAC7D,WAAW,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;YAClD,WAAW,EAAE,MAAM,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YAC1C,iBAAiB,EAAE,MAAM,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAClD,WAAW,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;YAClD,YAAY,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;YACpD,WAAW,EAAE,MAAM,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YAC1C,YAAY,EAAE,MAAM,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;YAC5C;;;;eAIG;YACH,oBAAoB,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;SAC5D,CAAC;QAEF,KAAK,IAAI,CAAC,CAAC,SAAS,eAAe,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,GACrF,KAAK,CAAC,cAAc,CAAC;QAEvB,KAAK,eAAe,GAAG,MAAM,GAAG,KAAK,CAAC;QAEtC,KAAK,UAAU,GAAG;YAChB,QAAQ,EAAE,MAAM,CAAC;YACjB,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAC7C,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;YACxC,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC;YACrD,cAAc,CAAC,EAAE,OAAO,CAAC;YACzB,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;YACrC,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;YACjC,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;YAChC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;YAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;SACjC,CAAC;QAEF,KAAK,sBAAsB,GAAG;YAC5B,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,CAAC;YACrD,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAC7C,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnB,sBAAsB,CAAC,EAAE,OAAO,CAAC;YACjC,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;SACjC,CAAC;QAGF,KAAK,kBAAkB,GAAG,KAAK,CAAC,oBAAoB,CAClD,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC,GAAG;YACpC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;SACzC,CACF,CAAC;QAEF,KAAK,mCAAmC,GAAG,KAAK,CAAC,oBAAoB,CACnE,IAAI,CAAC,sBAAsB,EAAE,MAAM,CAAC,GAAG;YACrC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;SACzC,CACF,CAAC;QAEF,KAAK,uBAAuB,GAAG,KAAK,CAAC,mBAAmB,CACtD,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CACzB,CAAC;QAEF,KAAK,wBAAwB,GAAG;YAC9B,KAAK,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,UAAU,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAC9C,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;YACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC;YACjC,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;SACjC,CAAC;QAEF,KAAK,gCAAgC,GAAG,KAAK,CAAC,oBAAoB,CAChE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CACvC,CAAC;QAEF,KAAK,qCAAqC,GAAG,KAAK,CAAC,mBAAmB,CACpE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,eAAe;QAC7C,wBAAwB,CACzB,CAAC;QAEF,KAAK,kBAAkB,GAAG;YACxB,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;QAEF,KAAK,0BAA0B,GAAG,KAAK,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QAEjF,KAAK,+BAA+B,GAAG,KAAK,CAAC,mBAAmB,CAC9D,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAClC,CAAC;QAEF,KAAK,2BAA2B,GAAG;YACjC,YAAY,EAAE,MAAM,EAAE,CAAC;SACxB,CAAC;QAEF,KAAK,mCAAmC,GACtC,KAAK,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,CAAC;QAE1D,KAAK,wCAAwC,GAAG,KAAK,CAAC,mBAAmB,CACvE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAC5B,2BAA2B,CAC5B,CAAC;QAEF,KAAK,IAAI,GAAG;YACV,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,GAAG,EAAE,MAAM,CAAC;YACZ,aAAa,EAAE,OAAO,CAAC;YACvB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/post.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queryCache.d.ts","sourceRoot":"","sources":["../../../src/cache/api/queryCache.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,+EAatB,CAAC"}
1
+ {"version":3,"file":"queryCache.d.ts","sourceRoot":"","sources":["../../../src/cache/api/queryCache.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,+EActB,CAAC"}
@@ -1,4 +1,4 @@
1
- declare type CreateCommentBundle = Pick<Amity.Comment<Amity.CommentContentType>, 'data' | 'referenceType' | 'referenceId' | 'parentId' | 'metadata' | 'mentionees' | 'attachments' | 'links'>;
1
+ declare type CreateCommentBundle = Pick<Amity.Comment<'text'>, 'data' | 'referenceType' | 'referenceId' | 'parentId' | 'metadata' | 'mentionees' | 'attachments' | 'links'>;
2
2
  /**
3
3
  * ```js
4
4
  * import { CommentRepository } from '@amityco/ts-sdk'
@@ -1 +1 @@
1
- {"version":3,"file":"createComment.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/api/createComment.ts"],"names":[],"mappings":"AAwBA,aAAK,mBAAmB,GAAG,IAAI,CAC7B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,EACrC,MAAM,GACN,eAAe,GACf,aAAa,GACb,UAAU,GACV,UAAU,GACV,YAAY,GACZ,aAAa,GACb,OAAO,CACV,CAAC;AAoEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,aAAa,WAChB,mBAAmB,6BAE1B,QAAQ,MAAM,MAAM,CAAC,aAAa,CAAC,CA8GrC,CAAC"}
1
+ {"version":3,"file":"createComment.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/api/createComment.ts"],"names":[],"mappings":"AA2BA,aAAK,mBAAmB,GAAG,IAAI,CAC7B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EACnB,MAAM,GACN,eAAe,GACf,aAAa,GACb,UAAU,GACV,UAAU,GACV,YAAY,GACZ,aAAa,GACb,OAAO,CACV,CAAC;AAqEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,aAAa,WAChB,mBAAmB,6BAE1B,QAAQ,MAAM,MAAM,CAAC,aAAa,CAAC,CAmHrC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createComment.gif.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createComment.gif.test.d.ts","sourceRoot":"","sources":["../../../../src/commentRepository/api/tests/createComment.gif.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=deleteComment.gif.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteComment.gif.test.d.ts","sourceRoot":"","sources":["../../../../src/commentRepository/api/tests/deleteComment.gif.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=updateComment.gif.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateComment.gif.test.d.ts","sourceRoot":"","sources":["../../../../src/commentRepository/api/tests/updateComment.gif.test.ts"],"names":[],"mappings":""}
@@ -4,9 +4,16 @@
4
4
  * const updated = await CommentRepository.updateComment(commentId, {
5
5
  * data: { text: 'hello world' }
6
6
  * })
7
+ *
8
+ * // Replace the GIF, or remove it and keep the text
9
+ * await CommentRepository.updateComment(commentId, {
10
+ * attachments: [{ type: 'gif', url: 'https://media.giphy.com/media/l0MYt5jPR6QX5pnqM/giphy.gif' }],
11
+ * })
12
+ * await CommentRepository.updateComment(commentId, { attachments: [] })
7
13
  * ```
8
14
  *
9
- * Updates an {@link Amity.Comment}
15
+ * Updates an {@link Amity.Comment}. `attachments` replaces the current ones, `[]` removes them,
16
+ * and leaving `attachments` out keeps them as they are.
10
17
  *
11
18
  * @param commentId The ID of the {@link Amity.Comment} to edit
12
19
  * @param patch The patch data to apply
@@ -15,5 +22,5 @@
15
22
  * @category Comment API
16
23
  * @async
17
24
  */
18
- export declare const updateComment: (commentId: Amity.Comment['commentId'], patch: Patch<Amity.Comment, 'data' | 'metadata' | 'mentionees' | 'links'>) => Promise<Amity.Cached<Amity.Comment>>;
25
+ export declare const updateComment: (commentId: Amity.Comment['commentId'], patch: Patch<Amity.Comment, 'data' | 'metadata' | 'mentionees' | 'links' | 'attachments'>) => Promise<Amity.Cached<Amity.Comment>>;
19
26
  //# sourceMappingURL=updateComment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateComment.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/api/updateComment.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,cACb,aAAa,CAAC,WAAW,CAAC,SAC9B,MAAM,aAAa,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,CAAC,KACxE,QAAQ,MAAM,MAAM,CAAC,aAAa,CAAC,CA+BrC,CAAC"}
1
+ {"version":3,"file":"updateComment.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/api/updateComment.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,aAAa,cACb,aAAa,CAAC,WAAW,CAAC,SAC9B,MAAM,aAAa,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,aAAa,CAAC,KACxF,QAAQ,MAAM,MAAM,CAAC,aAAa,CAAC,CAoCrC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=getComments.gif.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getComments.gif.test.d.ts","sourceRoot":"","sources":["../../../../src/commentRepository/observers/tests/getComments.gif.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare const commentDataTypesOf: (text: string | undefined, attachments: Amity.Attachment[] | undefined) => Amity.CommentContentType[];
2
+ //# sourceMappingURL=dataTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataTypes.d.ts","sourceRoot":"","sources":["../../../src/commentRepository/utils/dataTypes.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,kBAAkB,SACvB,MAAM,GAAG,SAAS,eACX,MAAM,UAAU,EAAE,GAAG,SAAS,KAC1C,MAAM,kBAAkB,EAI1B,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -193,6 +193,7 @@ const PostContentType = Object.freeze({
193
193
  AUDIO: 'audio',
194
194
  ROOM: 'room',
195
195
  EVENT: 'event',
196
+ GIF: 'gif',
196
197
  });
197
198
  const PostStructureType = Object.freeze({
198
199
  TEXT: 'text',
@@ -202,6 +203,8 @@ const PostStructureType = Object.freeze({
202
203
  AUDIO: 'audio',
203
204
  MIXED: 'mixed',
204
205
  EVENT: 'event',
206
+ /** A post that holds only GIFs. GIFs beside other media make the post `mixed`. */
207
+ GIF: 'gif',
205
208
  });
206
209
 
207
210
  exports.InvitationTypeEnum = void 0;
@@ -1184,17 +1187,6 @@ const wipeCache = async (storageKey = 'amitySdk') => {
1184
1187
  return true;
1185
1188
  };
1186
1189
 
1187
- const isPrimitiveKey = (key) => Array.isArray(key) &&
1188
- key.length > 0 &&
1189
- key.every(segment => typeof segment === 'string' || typeof segment === 'number');
1190
- const createMatcher = (key) => {
1191
- if (isPrimitiveKey(key)) {
1192
- const encoded = encodeKey(key);
1193
- const prefix = `${encoded.slice(0, -1)},`;
1194
- return encodedKey => encodedKey === encoded || encodedKey.startsWith(prefix);
1195
- }
1196
- return encodedKey => partialMatch(key, decodeKey(encodedKey));
1197
- };
1198
1190
  /**
1199
1191
  * ```js
1200
1192
  * import { queryCache } from '@amityco/ts-sdk'
@@ -1215,9 +1207,11 @@ const queryCache = (key) => {
1215
1207
  if (!cache)
1216
1208
  return;
1217
1209
  log('cache/api/queryCache', { key });
1218
- const matches = createMatcher(key);
1219
1210
  return Object.keys(cache.data)
1220
- .filter(matches)
1211
+ .filter(stringKey => {
1212
+ const decodedKey = decodeKey(stringKey);
1213
+ return partialMatch(key, decodedKey);
1214
+ })
1221
1215
  .map(stringKey => cache.data[stringKey]);
1222
1216
  };
1223
1217
 
@@ -27752,8 +27746,40 @@ getCommentByIds.locally = (commentIds) => {
27752
27746
  };
27753
27747
  };
27754
27748
 
27749
+ const GIF_OPTIONAL_KEYS = ['width', 'height'];
27750
+ /*
27751
+ * The server refuses a GIF attachment that carries `null` or any key it does not know, so the
27752
+ * request keeps `type`, `url` and only the optional fields that have a value. The SDK does not
27753
+ * check the values themselves: the server answers 400 for a bad one.
27754
+ */
27755
+ const toGifAttachmentPayload = (gif) => {
27756
+ const payload = { type: 'gif', url: gif.url };
27757
+ GIF_OPTIONAL_KEYS.forEach(key => {
27758
+ const value = gif[key];
27759
+ if (value !== undefined && value !== null)
27760
+ Object.assign(payload, { [key]: value });
27761
+ });
27762
+ return payload;
27763
+ };
27764
+ /* Builds each GIF from its known keys; every other attachment is sent as the caller gave it. */
27765
+ const toAttachmentsPayload = (attachments) => attachments.map(attachment => attachment.type === 'gif'
27766
+ ? toGifAttachmentPayload(attachment)
27767
+ : attachment);
27768
+
27769
+ /*
27770
+ * The data types the server lists for a comment, known before it answers: one per attachment
27771
+ * type, plus `text` when there is text. Sorted, as the server sorts them.
27772
+ */
27773
+ const commentDataTypesOf = (text, attachments) => {
27774
+ const types = new Set((attachments !== null && attachments !== void 0 ? attachments : []).map(attachment => attachment.type));
27775
+ if (text)
27776
+ types.add('text');
27777
+ return [...types].sort();
27778
+ };
27779
+
27755
27780
  const getLocalCommentId = () => uuid();
27756
27781
  const createCommentOptimistic = (bundle) => {
27782
+ var _a;
27757
27783
  const client = getActiveClient();
27758
27784
  if (!client.cache)
27759
27785
  return;
@@ -27788,6 +27814,7 @@ const createCommentOptimistic = (bundle) => {
27788
27814
  targetId: '',
27789
27815
  targetType: 'community',
27790
27816
  dataType: 'text',
27817
+ dataTypes: commentDataTypesOf((_a = bundle.data) === null || _a === void 0 ? void 0 : _a.text, bundle.attachments),
27791
27818
  syncState: "syncing" /* Amity.SyncState.Syncing */,
27792
27819
  // In a gated community the optimistic object stays out of public collections until the
27793
27820
  // response settles the status; the author's own view still updates through the local event
@@ -27834,12 +27861,15 @@ const createCommentOptimistic = (bundle) => {
27834
27861
  const createComment = async (bundle, isOptimistic = true) => {
27835
27862
  const client = getActiveClient();
27836
27863
  client.log('comment/createComment', Object.assign(Object.assign({}, bundle), { isOptimistic }));
27864
+ // A GIF is sent with its known keys only; the server refuses `null` and unknown keys.
27865
+ const request = bundle.attachments
27866
+ ? Object.assign(Object.assign({}, bundle), { attachments: toAttachmentsPayload(bundle.attachments) }) : bundle;
27837
27867
  // Without a local comment the server assigns the id; with one, the same id travels through the
27838
27868
  // optimistic object, the response and every realtime event so each step recognises it.
27839
- const optimisticData = isOptimistic ? createCommentOptimistic(bundle) : undefined;
27869
+ const optimisticData = isOptimistic ? createCommentOptimistic(request) : undefined;
27840
27870
  const commentId = optimisticData === null || optimisticData === void 0 ? void 0 : optimisticData.commentId;
27841
27871
  try {
27842
- const { data: payload } = await client.http.post('/api/v3/comments', Object.assign(Object.assign({}, bundle), { commentId }));
27872
+ const { data: payload } = await client.http.post('/api/v3/comments', Object.assign(Object.assign({}, request), { commentId }));
27843
27873
  // BE always returns an array of comments If it got record 0 from BE it might have a problem on creation logic
27844
27874
  if (payload.comments.length === 0)
27845
27875
  throw new Error('Comment not created');
@@ -27932,9 +27962,16 @@ const createComment = async (bundle, isOptimistic = true) => {
27932
27962
  * const updated = await CommentRepository.updateComment(commentId, {
27933
27963
  * data: { text: 'hello world' }
27934
27964
  * })
27965
+ *
27966
+ * // Replace the GIF, or remove it and keep the text
27967
+ * await CommentRepository.updateComment(commentId, {
27968
+ * attachments: [{ type: 'gif', url: 'https://media.giphy.com/media/l0MYt5jPR6QX5pnqM/giphy.gif' }],
27969
+ * })
27970
+ * await CommentRepository.updateComment(commentId, { attachments: [] })
27935
27971
  * ```
27936
27972
  *
27937
- * Updates an {@link Amity.Comment}
27973
+ * Updates an {@link Amity.Comment}. `attachments` replaces the current ones, `[]` removes them,
27974
+ * and leaving `attachments` out keeps them as they are.
27938
27975
  *
27939
27976
  * @param commentId The ID of the {@link Amity.Comment} to edit
27940
27977
  * @param patch The patch data to apply
@@ -27948,7 +27985,10 @@ const updateComment = async (commentId, patch) => {
27948
27985
  const client = getActiveClient();
27949
27986
  client.log('user/updateComment', patch);
27950
27987
  const previous = (_a = pullFromCache(['comment', 'get', commentId])) === null || _a === void 0 ? void 0 : _a.data;
27951
- const { data: payload } = await client.http.put(`/api/v3/comments/${encodeURIComponent(commentId)}`, patch);
27988
+ // A GIF is sent with its known keys only; the server refuses `null` and unknown keys.
27989
+ const body = patch.attachments
27990
+ ? Object.assign(Object.assign({}, patch), { attachments: toAttachmentsPayload(patch.attachments) }) : patch;
27991
+ const { data: payload } = await client.http.put(`/api/v3/comments/${encodeURIComponent(commentId)}`, body);
27952
27992
  const data = prepareCommentPayload(payload);
27953
27993
  const updated = data.comments.find(comment => comment.commentId === commentId);
27954
27994
  const cachedAt = client.cache && Date.now();
@@ -28079,13 +28119,13 @@ const deleteComment = async (commentId, permanent = false) => {
28079
28119
  permanent,
28080
28120
  },
28081
28121
  });
28082
- // to support hard deletion
28083
- const deleted = Object.assign(Object.assign({}, comment.data), { isDeleted: true });
28122
+ // to support hard deletion; the server empties a deleted comment's attachments
28123
+ const deleted = Object.assign(Object.assign({}, comment.data), { isDeleted: true, attachments: [] });
28084
28124
  if (permanent) {
28085
28125
  scheduleTask(() => pushToTombstone('comment', commentId));
28086
28126
  }
28087
28127
  else {
28088
- upsertInCache(['comment', 'get', commentId], { isDeleted: true });
28128
+ upsertInCache(['comment', 'get', commentId], { isDeleted: true, attachments: [] });
28089
28129
  }
28090
28130
  if (comment.data.referenceType === 'story') {
28091
28131
  const story = await getStoryByStoryId$1(comment.data.referenceId);
@@ -30415,6 +30455,19 @@ getPostByIds.locally = (postIds) => {
30415
30455
  };
30416
30456
  };
30417
30457
 
30458
+ /*
30459
+ * The `attachments` a post create or edit sends. A GIF goes with its known keys only and never
30460
+ * with product tags (both a 400). A file takes its product tags from the map, as before.
30461
+ */
30462
+ const preparePostAttachments = (attachments, attachmentProductTags) => attachments === null || attachments === void 0 ? void 0 : attachments.map(attachment => {
30463
+ if (attachment.type === 'gif') {
30464
+ return toGifAttachmentPayload(attachment);
30465
+ }
30466
+ if (!attachmentProductTags || !attachment.fileId)
30467
+ return attachment;
30468
+ return Object.assign(Object.assign({}, attachment), { productTags: attachmentProductTags.get(attachment.fileId) });
30469
+ });
30470
+
30418
30471
  /* begin_public_function
30419
30472
  id: post.create.text_post, post.create.image_post, post.create.file_post, post.create.video_post, post.create.poll_post, post.create.livestream_post, post.create.custom_post
30420
30473
  */
@@ -30444,17 +30497,7 @@ const createPost = async (bundle) => {
30444
30497
  delete bundle.dataType;
30445
30498
  }
30446
30499
  const { attachments, attachmentProductTags } = bundle, rest = __rest(bundle, ["attachments", "attachmentProductTags"]);
30447
- const processedAttachments = attachments && attachments.length > 0 && bundle.attachmentProductTags
30448
- ? attachments.map(attachment => {
30449
- var _a;
30450
- /* c8 ignore next */
30451
- const productTags = (_a = bundle.attachmentProductTags) === null || _a === void 0 ? void 0 : _a.get(attachment.fileId);
30452
- if (productTags)
30453
- return Object.assign(Object.assign({}, attachment), { productTags });
30454
- /* c8 ignore next */
30455
- return attachment;
30456
- })
30457
- : attachments;
30500
+ const processedAttachments = preparePostAttachments(attachments, attachmentProductTags);
30458
30501
  const { data: payload } = await client.http.post('/api/v4/posts', Object.assign(Object.assign({}, rest), { attachments: processedAttachments }));
30459
30502
  fireEvent('post.created', payload);
30460
30503
  const data = preparePostPayload(payload);
@@ -30480,7 +30523,9 @@ const createPost = async (bundle) => {
30480
30523
  * })
30481
30524
  * ```
30482
30525
  *
30483
- * Updates an {@link Amity.Post}
30526
+ * Updates an {@link Amity.Post}. `attachments` is the full list to keep: a GIF is matched by its
30527
+ * `url`, so send each kept GIF back with its link and size as read from `childrenPosts`; an
30528
+ * attachment left out is deleted, `[]` removes them all, and leaving `attachments` out keeps them.
30484
30529
  *
30485
30530
  * @param postId The ID of the {@link Amity.Post} to edit
30486
30531
  * @param patch The patch data to apply
@@ -30493,17 +30538,7 @@ const editPost = async (postId, patch) => {
30493
30538
  const client = getActiveClient();
30494
30539
  client.log('user/editPost', patch);
30495
30540
  const { attachments } = patch;
30496
- const processedAttachments = attachments && attachments.length > 0 && patch.attachmentProductTags
30497
- ? attachments.map(attachment => {
30498
- var _a;
30499
- /* c8 ignore next */
30500
- const productTags = (_a = patch.attachmentProductTags) === null || _a === void 0 ? void 0 : _a.get(attachment.fileId);
30501
- if (productTags)
30502
- return Object.assign(Object.assign({}, attachment), { productTags });
30503
- /* c8 ignore next */
30504
- return attachment;
30505
- })
30506
- : attachments;
30541
+ const processedAttachments = preparePostAttachments(attachments, patch.attachmentProductTags);
30507
30542
  const { data: payload } = await client.http.put(`/api/v4/posts/${encodeURIComponent(postId)}`, Object.assign(Object.assign({}, patch), { attachments: processedAttachments }));
30508
30543
  const data = prepareMembershipPayload(payload, 'communityUsers');
30509
30544
  const cachedAt = client.cache && Date.now();
@@ -30987,11 +31022,14 @@ const createAudioPost = async (bundle) => {
30987
31022
  * { fileId: "file1", type: "image" },
30988
31023
  * { fileId: "file2", type: "video" },
30989
31024
  * { fileId: "file3", type: "audio" },
30990
- * { fileId: "file4", type: "file" }
31025
+ * { fileId: "file4", type: "file" },
31026
+ * { type: "gif", url: "https://media.giphy.com/media/l0MYt5jPR6QX5pnqM/giphy.gif", width: 480, height: 270 }
30991
31027
  * ],
30992
31028
  * })
30993
31029
  * ```
30994
31030
  *
31031
+ * A post holds 1 to 10 attachments. A GIF is a link, not a file, and takes no product tags.
31032
+ *
30995
31033
  * Creates an {@link Amity.Post}
30996
31034
  *
30997
31035
  * @param bundle The data necessary to create a new {@link Amity.Post}
@@ -31005,17 +31043,7 @@ const createMixedMediaPost = async (bundle) => {
31005
31043
  const client = getActiveClient();
31006
31044
  client.log('post/createMixedMediaPost', bundle);
31007
31045
  const { attachments, attachmentProductTags } = bundle, rest = __rest(bundle, ["attachments", "attachmentProductTags"]);
31008
- const processedAttachments = attachments && attachments.length > 0 && bundle.attachmentProductTags
31009
- ? attachments.map(attachment => {
31010
- var _a;
31011
- /* c8 ignore next */
31012
- const productTags = (_a = bundle.attachmentProductTags) === null || _a === void 0 ? void 0 : _a.get(attachment.fileId);
31013
- if (productTags)
31014
- return Object.assign(Object.assign({}, attachment), { productTags });
31015
- /* c8 ignore next */
31016
- return attachment;
31017
- })
31018
- : /* c8 ignore next */ attachments;
31046
+ const processedAttachments = preparePostAttachments(attachments, attachmentProductTags);
31019
31047
  const { data: payload } = await client.http.post('/api/v4/posts', Object.assign(Object.assign({}, rest), { attachments: processedAttachments }));
31020
31048
  fireEvent('post.created', payload);
31021
31049
  const data = preparePostPayload(payload);
@@ -31532,6 +31560,10 @@ class PostLiveCollectionController extends LiveCollectionController {
31532
31560
  *
31533
31561
  * Observe all mutations on a list of {@link Amity.Post} for a given target object
31534
31562
  *
31563
+ * GIF posts come back on every API version. This query is on v5, so `dataTypes: ['gif']` filters
31564
+ * them; a post with GIFs beside other media is `mixed` and is hidden unless
31565
+ * `includeMixedStructure` is `true`.
31566
+ *
31535
31567
  * @param params.targetType the type of the target
31536
31568
  * @param params.targetId the ID of the target
31537
31569
  * @param callback the function to call when new data are available