@amityco/ts-sdk 7.10.0 → 7.10.1-0ab8f3fc.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 (101) hide show
  1. package/.env +26 -26
  2. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts +11 -2
  3. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts.map +1 -1
  4. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.js.map +1 -1
  5. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts +4 -1
  6. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts.map +1 -1
  7. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js +1 -0
  8. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js.map +1 -1
  9. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.d.ts +3 -1
  10. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.d.ts.map +1 -1
  11. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.js +1 -0
  12. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.js.map +1 -1
  13. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts +4 -1
  14. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts.map +1 -1
  15. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.js.map +1 -1
  16. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts +16 -0
  17. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts.map +1 -1
  18. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.js +9 -0
  19. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.js.map +1 -1
  20. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.d.ts +1 -0
  21. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.d.ts.map +1 -1
  22. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.js +1 -0
  23. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.js.map +1 -1
  24. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.d.ts +17 -0
  25. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.d.ts.map +1 -0
  26. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.js +47 -0
  27. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.js.map +1 -0
  28. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  29. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.d.ts +30 -0
  30. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.d.ts.map +1 -0
  31. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.js +43 -0
  32. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.js.map +1 -0
  33. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createMixedMediaPost.d.ts +35 -0
  34. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createMixedMediaPost.d.ts.map +1 -0
  35. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createMixedMediaPost.js +49 -0
  36. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createMixedMediaPost.js.map +1 -0
  37. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts +2 -0
  38. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts.map +1 -1
  39. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js +2 -0
  40. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js.map +1 -1
  41. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.d.ts.map +1 -1
  42. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.js +3 -1
  43. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.js.map +1 -1
  44. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.d.ts.map +1 -1
  45. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.js +4 -2
  46. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.js.map +1 -1
  47. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
  48. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js +7 -1
  49. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js.map +1 -1
  50. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.d.ts +1 -0
  51. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.d.ts.map +1 -1
  52. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.js +6 -0
  53. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.js.map +1 -1
  54. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/tests/dummy/comment.d.ts +1 -1
  55. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
  56. package/dist/@types/domains/content.d.ts +11 -2
  57. package/dist/@types/domains/content.d.ts.map +1 -1
  58. package/dist/@types/domains/feed.d.ts +4 -1
  59. package/dist/@types/domains/feed.d.ts.map +1 -1
  60. package/dist/@types/domains/file.d.ts +3 -1
  61. package/dist/@types/domains/file.d.ts.map +1 -1
  62. package/dist/@types/domains/pinnedPost.d.ts +4 -1
  63. package/dist/@types/domains/pinnedPost.d.ts.map +1 -1
  64. package/dist/@types/domains/post.d.ts +16 -0
  65. package/dist/@types/domains/post.d.ts.map +1 -1
  66. package/dist/fileRepository/api/index.d.ts +1 -0
  67. package/dist/fileRepository/api/index.d.ts.map +1 -1
  68. package/dist/fileRepository/api/uploadAudio.d.ts +17 -0
  69. package/dist/fileRepository/api/uploadAudio.d.ts.map +1 -0
  70. package/dist/index.cjs.js +163 -6
  71. package/dist/index.esm.js +163 -7
  72. package/dist/index.umd.js +3 -3
  73. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  74. package/dist/postRepository/api/createAudioPost.d.ts +30 -0
  75. package/dist/postRepository/api/createAudioPost.d.ts.map +1 -0
  76. package/dist/postRepository/api/createMixedMediaPost.d.ts +35 -0
  77. package/dist/postRepository/api/createMixedMediaPost.d.ts.map +1 -0
  78. package/dist/postRepository/api/index.d.ts +2 -0
  79. package/dist/postRepository/api/index.d.ts.map +1 -1
  80. package/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.d.ts.map +1 -1
  81. package/dist/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.d.ts.map +1 -1
  82. package/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
  83. package/dist/utils/postTypePredicate.d.ts +1 -0
  84. package/dist/utils/postTypePredicate.d.ts.map +1 -1
  85. package/dist/utils/tests/dummy/comment.d.ts +1 -1
  86. package/package.json +1 -1
  87. package/src/@types/domains/content.ts +11 -0
  88. package/src/@types/domains/feed.ts +4 -1
  89. package/src/@types/domains/file.ts +5 -0
  90. package/src/@types/domains/pinnedPost.ts +4 -1
  91. package/src/@types/domains/post.ts +22 -0
  92. package/src/fileRepository/api/index.ts +1 -0
  93. package/src/fileRepository/api/uploadAudio.ts +61 -0
  94. package/src/postRepository/api/createAudioPost.ts +60 -0
  95. package/src/postRepository/api/createMixedMediaPost.ts +62 -0
  96. package/src/postRepository/api/index.ts +2 -0
  97. package/src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.ts +3 -0
  98. package/src/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.ts +4 -1
  99. package/src/utils/linkedObject/postLinkedObject.ts +7 -0
  100. package/src/utils/postTypePredicate.ts +9 -0
  101. package/tsconfig.tsbuildinfo +1 -1
@@ -3,7 +3,7 @@ export declare const getSubChannelMessagePreviewWithUser: (subChannel: Amity.Sub
3
3
  user: Amity.InternalUser | undefined;
4
4
  messagePreviewId: string;
5
5
  subChannelName: string;
6
- data?: string | Record<string, unknown> | Amity.ContentDataText | Amity.ContentDataFile | Amity.ContentDataImage | Amity.ContentDataVideo | Amity.ContentDataPoll | Amity.ContentDataStream | Amity.ContentDataClip | undefined;
6
+ data?: string | Record<string, unknown> | Amity.ContentDataText | Amity.ContentDataFile | Amity.ContentDataImage | Amity.ContentDataVideo | Amity.ContentDataAudio | Amity.ContentDataPoll | Amity.ContentDataStream | Amity.ContentDataClip | undefined;
7
7
  dataType?: any;
8
8
  channelId: string;
9
9
  subChannelId: string;
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ```js
3
+ * import { PostRepository } from '@amityco/ts-sdk'
4
+ * const created = await PostRepository.createAudioPost({
5
+ * targetType: 'user',
6
+ * targetId: 'foobar',
7
+ * data: { text: 'Audio Post', title: 'Audio Post Title' },
8
+ * attachments: [{ type: 'audio', fileId: 'fileId123'}]
9
+ * }))
10
+ * ```
11
+ *
12
+ * Creates an {@link Amity.Post}
13
+ *
14
+ * @param bundle The data necessary to create a new {@link Amity.Post}
15
+ * @returns The newly created {@link Amity.Post}
16
+ *
17
+ * @category Post API
18
+ * @async
19
+ */
20
+ export declare const createAudioPost: (bundle: Pick<Amity.Post, 'targetType' | 'targetId'> & Partial<Pick<Amity.Post, 'metadata' | 'mentionees' | 'tags' | 'hashtags'>> & {
21
+ data?: {
22
+ text?: string;
23
+ title?: string;
24
+ };
25
+ attachments: {
26
+ type: Extract<Amity.MixedMediaPostContentType, 'audio'>;
27
+ fileId: Amity.File['fileId'];
28
+ }[];
29
+ }) => Promise<Amity.Cached<Amity.Post>>;
30
+ //# sourceMappingURL=createAudioPost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAudioPost.d.ts","sourceRoot":"","sources":["../../../src/postRepository/api/createAudioPost.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,eAAe,WAClB,KAAK,MAAM,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC,GACjD,QAAQ,KAAK,MAAM,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC,GAAG;IAC3E,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,MAAM,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;KAC9B,EAAE,CAAC;CACL,KACF,QAAQ,MAAM,MAAM,CAAC,MAAM,IAAI,CAAC,CAkBlC,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * ```js
3
+ * import { PostRepository } from '@amityco/ts-sdk'
4
+ * const { data } = await PostRepository.createMixedMediaPost({
5
+ * targetType: 'community',
6
+ * targetId: 'community123',
7
+ * data: { text: 'Check out my mixed media post!', title: 'Mixed Media Post' },
8
+ * attachments: [
9
+ * { fileId: "file1", type: "image" },
10
+ * { fileId: "file2", type: "video" },
11
+ * { fileId: "file3", type: "audio" },
12
+ * { fileId: "file4", type: "file" }
13
+ * ],
14
+ * })
15
+ * ```
16
+ *
17
+ * Creates an {@link Amity.Post}
18
+ *
19
+ * @param bundle The data necessary to create a new {@link Amity.Post}
20
+ * @returns The newly created {@link Amity.Post}
21
+ *
22
+ * @category Post API
23
+ * @async
24
+ */
25
+ export declare const createMixedMediaPost: (bundle: Pick<Amity.Post, 'targetType' | 'targetId'> & Partial<Pick<Amity.Post, 'metadata' | 'mentionees' | 'tags' | 'hashtags'>> & {
26
+ data?: {
27
+ text?: string;
28
+ title?: string;
29
+ };
30
+ attachments: {
31
+ type: Amity.MixedMediaPostContentType;
32
+ fileId: Amity.File['fileId'];
33
+ }[];
34
+ }) => Promise<Amity.Cached<Amity.Post>>;
35
+ //# sourceMappingURL=createMixedMediaPost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createMixedMediaPost.d.ts","sourceRoot":"","sources":["../../../src/postRepository/api/createMixedMediaPost.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,oBAAoB,WACvB,KAAK,MAAM,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC,GACjD,QAAQ,KAAK,MAAM,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC,CAAC,GAAG;IAC3E,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;QAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;KAAE,EAAE,CAAC;CACxF,KACF,QAAQ,MAAM,MAAM,CAAC,MAAM,IAAI,CAAC,CAkBlC,CAAC"}
@@ -10,4 +10,6 @@ export * from './flagPost';
10
10
  export * from './unflagPost';
11
11
  export * from './isPostFlaggedByMe';
12
12
  export * from './createClipPost';
13
+ export * from './createAudioPost';
14
+ export * from './createMixedMediaPost';
13
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/postRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/postRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAE/B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAE9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalPinnedPostPaginationController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGlF,qBAAa,oCAAqC,SAAQ,oBAAoB,CAC5E,YAAY,EACZ,KAAK,CAAC,8BAA8B,CACrC;IACO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,8BAA8B,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;;;;;;;;;CAW9F"}
1
+ {"version":3,"file":"GlobalPinnedPostPaginationController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostPaginationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGlF,qBAAa,oCAAqC,SAAQ,oBAAoB,CAC5E,YAAY,EACZ,KAAK,CAAC,8BAA8B,CACrC;IACO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,8BAA8B,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;;;;;;;;;CAc9F"}
@@ -1 +1 @@
1
- {"version":3,"file":"PinnedPostPaginationController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGlF,qBAAa,8BAA+B,SAAQ,oBAAoB,CACtE,YAAY,EACZ,KAAK,CAAC,wBAAwB,CAC/B;IACO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,wBAAwB,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;;;;;;;;;CAexF"}
1
+ {"version":3,"file":"PinnedPostPaginationController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostPaginationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAGlF,qBAAa,8BAA+B,SAAQ,oBAAoB,CACtE,YAAY,EACZ,KAAK,CAAC,wBAAwB,CAC/B;IACO,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,wBAAwB,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;;;;;;;;;CAkBxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"postLinkedObject.d.ts","sourceRoot":"","sources":["../../../src/utils/linkedObject/postLinkedObject.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,gBAAgB,SAAU,MAAM,YAAY,KAAG,MAAM,IAwFjE,CAAC"}
1
+ {"version":3,"file":"postLinkedObject.d.ts","sourceRoot":"","sources":["../../../src/utils/linkedObject/postLinkedObject.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,gBAAgB,SAAU,MAAM,YAAY,KAAG,MAAM,IA8FjE,CAAC"}
@@ -4,4 +4,5 @@ export declare function isAmityVideoPost(post: Amity.InternalPost): post is Amit
4
4
  export declare function isAmityLivestreamPost(post: Amity.InternalPost): post is Amity.Post<'liveStream'>;
5
5
  export declare function isAmityPollPost(post: Amity.InternalPost): post is Amity.Post<'poll'>;
6
6
  export declare function isAmityClipPost(post: Amity.InternalPost): post is Amity.Post<'clip'>;
7
+ export declare function isAmityAudioPost(post: Amity.InternalPost): post is Amity.Post<'audio'>;
7
8
  //# sourceMappingURL=postTypePredicate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postTypePredicate.d.ts","sourceRoot":"","sources":["../../src/utils/postTypePredicate.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAOtF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAQtF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAOhG;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF"}
1
+ {"version":3,"file":"postTypePredicate.d.ts","sourceRoot":"","sources":["../../src/utils/postTypePredicate.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAOtF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAQtF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAOhG;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAOpF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAOtF"}
@@ -23,7 +23,7 @@ export declare const generateComment: (params?: Partial<Amity.InternalComment>)
23
23
  referenceType: Amity.CommentReferenceType;
24
24
  dataType?: any;
25
25
  dataTypes?: any[] | undefined;
26
- data?: string | Record<string, unknown> | Amity.ContentDataText | Amity.ContentDataFile | Amity.ContentDataImage | Amity.ContentDataVideo | Amity.ContentDataPoll | Amity.ContentDataStream | Amity.ContentDataClip | undefined;
26
+ data?: string | Record<string, unknown> | Amity.ContentDataText | Amity.ContentDataFile | Amity.ContentDataImage | Amity.ContentDataVideo | Amity.ContentDataAudio | Amity.ContentDataPoll | Amity.ContentDataStream | Amity.ContentDataClip | undefined;
27
27
  metadata?: Record<string, any> | undefined;
28
28
  flagCount: number;
29
29
  hashFlag: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amityco/ts-sdk",
3
- "version": "7.10.0",
3
+ "version": "7.10.1-0ab8f3fc.0",
4
4
  "license": "CC-BY-ND-4.0",
5
5
  "author": "amity.co <developers@amity.co> (https://amity.co)",
6
6
  "description": "Amity Social Cloud Typescript SDK",
@@ -33,6 +33,7 @@ declare global {
33
33
  | 'json'
34
34
  | 'liveStream'
35
35
  | 'clip'
36
+ | 'audio'
36
37
  | string;
37
38
 
38
39
  type ContentFeedType = ValueOf<typeof ContentFeedType>;
@@ -71,6 +72,14 @@ declare global {
71
72
  displayMode?: Amity.ClipDisplayMode;
72
73
  };
73
74
 
75
+ type ContentDataAudio = {
76
+ fileId: Amity.File<'audio'>['fileId'];
77
+ fileURL: URL;
78
+ accessType: Amity.FileAccessType;
79
+ altText?: string;
80
+ attributes: { [key: string]: any };
81
+ };
82
+
74
83
  type ContentDataPoll = {
75
84
  pollId: Amity.Poll['pollId'];
76
85
  };
@@ -87,6 +96,8 @@ declare global {
87
96
  ? ContentDataImage
88
97
  : T extends 'video'
89
98
  ? ContentDataVideo
99
+ : T extends 'audio'
100
+ ? ContentDataAudio
90
101
  : T extends 'poll'
91
102
  ? ContentDataPoll
92
103
  : T extends 'liveStream'
@@ -5,6 +5,7 @@ export const enum FeedDataTypeEnum {
5
5
  Video = 'video',
6
6
  Image = 'image',
7
7
  File = 'file',
8
+ Audio = 'audio',
8
9
  LiveStream = 'liveStream',
9
10
  Clip = 'clip',
10
11
  Poll = 'poll',
@@ -39,8 +40,9 @@ declare global {
39
40
  } & Amity.Timestamps;
40
41
 
41
42
  type QueryGlobalFeed = {
42
- dataTypes?: ('video' | 'image' | 'file' | 'liveStream' | 'clip')[];
43
+ dataTypes?: ('video' | 'image' | 'audio' | 'file' | 'poll' | 'liveStream' | 'clip')[];
43
44
  queryToken?: string;
45
+ includeMixedStructure?: boolean;
44
46
  };
45
47
 
46
48
  type CustomRankingGlobalFeedLiveCollection = Amity.LiveCollectionParams<
@@ -66,6 +68,7 @@ declare global {
66
68
  dataTypes?: Amity.FeedDataType[];
67
69
  matchingOnlyParentPost?: boolean;
68
70
  feedSources?: Amity.FeedSource[];
71
+ includeMixedStructure?: boolean;
69
72
  };
70
73
 
71
74
  type UserFeedLiveCollection = Amity.LiveCollectionParams<QueryUserFeed>;
@@ -3,6 +3,7 @@ export const FileType = Object.freeze({
3
3
  IMAGE: 'image',
4
4
  VIDEO: 'video',
5
5
  CLIP: 'clip',
6
+ AUDIO: 'audio',
6
7
  });
7
8
 
8
9
  export const VideoResolution = Object.freeze({
@@ -58,6 +59,8 @@ declare global {
58
59
 
59
60
  type ClipMetadata = Record<string, never>;
60
61
 
62
+ type AudioMetadata = Record<string, never>;
63
+
61
64
  type MetadataFor<T extends FileType> = T extends 'file'
62
65
  ? FileMetadata
63
66
  : T extends 'image'
@@ -66,6 +69,8 @@ declare global {
66
69
  ? VideoMetadata
67
70
  : T extends 'clip'
68
71
  ? ClipMetadata
72
+ : T extends 'audio'
73
+ ? AudioMetadata
69
74
  : never;
70
75
 
71
76
  type File<T extends FileType = any> = Amity.FilePayload<T>;
@@ -17,6 +17,7 @@ declare global {
17
17
  communityId: Amity.Community['communityId'];
18
18
  placement?: string | null;
19
19
  sortBy: 'lastPinned' | 'lastCreated';
20
+ includeMixedStructure?: boolean;
20
21
  }>;
21
22
 
22
23
  type PinnedPostLiveCollectionCache = Omit<
@@ -29,6 +30,8 @@ declare global {
29
30
  target: Amity.PinTarget | undefined;
30
31
  };
31
32
 
32
- type GlobalPinnedPostLiveCollection = Amity.LiveCollectionParams<{}>;
33
+ type GlobalPinnedPostLiveCollection = Amity.LiveCollectionParams<{
34
+ includeMixedStructure?: boolean;
35
+ }>;
33
36
  }
34
37
  }
@@ -6,6 +6,16 @@ export const PostContentType = Object.freeze({
6
6
  LIVESTREAM: 'liveStream',
7
7
  POLL: 'poll',
8
8
  CLIP: 'clip',
9
+ AUDIO: 'audio',
10
+ });
11
+
12
+ export const PostStructureType = Object.freeze({
13
+ TEXT: 'text',
14
+ IMAGE: 'image',
15
+ VIDEO: 'video',
16
+ FILE: 'file',
17
+ AUDIO: 'audio',
18
+ MIXED: 'mixed',
9
19
  });
10
20
 
11
21
  declare global {
@@ -15,6 +25,11 @@ declare global {
15
25
 
16
26
  type PostContentType = ValueOf<typeof PostContentType> | string;
17
27
 
28
+ type MixedMediaPostContentType = Exclude<
29
+ ValueOf<typeof PostContentType>,
30
+ 'text' | 'poll' | 'liveStream' | 'clip'
31
+ >;
32
+
18
33
  type PostActionType =
19
34
  | 'onFetch'
20
35
  | 'onCreate'
@@ -27,6 +42,8 @@ declare global {
27
42
  | 'onReactionAdded'
28
43
  | 'onReactionRemoved';
29
44
 
45
+ type PostStructureType = ValueOf<typeof PostStructureType>;
46
+
30
47
  type RawPost<T extends PostContentType = any> = {
31
48
  postId: string;
32
49
  postedUserId: Amity.RawUser['userId'];
@@ -67,6 +84,7 @@ declare global {
67
84
  reactions: Record<string, number>;
68
85
  myReactions?: string[];
69
86
  hashtags?: string[];
87
+ structureType: Amity.PostStructureType;
70
88
  } & Amity.Content<T> &
71
89
  Amity.Mentionable<'user'>;
72
90
 
@@ -88,6 +106,7 @@ declare global {
88
106
  getPollInfo: () => Amity.Poll | undefined;
89
107
  getLivestreamInfo: () => Amity.Stream | undefined;
90
108
  getClipInfo: () => Amity.File<'clip'> | undefined;
109
+ getAudioInfo: () => Amity.File<'audio'> | undefined;
91
110
  };
92
111
 
93
112
  type Post<T extends PostContentType = any> = Amity.InternalPost<T> & Amity.PostLinkObject;
@@ -106,6 +125,7 @@ declare global {
106
125
  matchingOnlyParentPost?: boolean;
107
126
  page?: string;
108
127
  limit?: number;
128
+ includeMixedStructure?: boolean;
109
129
  };
110
130
 
111
131
  type QueryPostsWithHashtags = {
@@ -115,6 +135,7 @@ declare global {
115
135
  matchingOnlyParentPost?: boolean;
116
136
  page?: string;
117
137
  limit?: number;
138
+ includeMixedStructure?: boolean;
118
139
  };
119
140
 
120
141
  // Omit sortBy explained in asc-3398
@@ -142,6 +163,7 @@ declare global {
142
163
  dataTypes?: string[];
143
164
  matchingOnlyParentPost?: boolean;
144
165
  limit?: number;
166
+ includeMixedStructure?: boolean;
145
167
  };
146
168
 
147
169
  type SemanticSearchPostLiveCollection = Amity.LiveCollectionParams<
@@ -6,3 +6,4 @@ export * from './uploadVideo';
6
6
  export * from './uploadImage';
7
7
  export * from './updateAltText';
8
8
  export * from './uploadClip';
9
+ export * from './uploadAudio';
@@ -0,0 +1,61 @@
1
+ import { getActiveClient } from '~/client/api/activeClient';
2
+ import { ingestInCache } from '~/cache/api/ingestInCache';
3
+ import GlobalFileAccessType from '~/client/utils/GlobalFileAccessType';
4
+
5
+ /* begin_public_function
6
+ id: file.upload.audio
7
+ */
8
+ /**
9
+ * ```js
10
+ * import { FileRepository } from '@amityco/ts-sdk'
11
+ * const uploaded = await FileRepository.uploadAudio(formData, onProgress)
12
+ * ```
13
+ *
14
+ * Creates an {@link Amity.File<'audio'>}
15
+ *
16
+ * @param formData The data necessary to create a new {@link Amity.File<'audio'>}
17
+ * @param onProgress The callback to track the upload progress
18
+ * @returns The newly created {@link Amity.File<'audio'>}
19
+ *
20
+ * @category File API
21
+ * @async
22
+ */
23
+ export const uploadAudio = async (
24
+ formData: FormData,
25
+ onProgress?: (percent: number) => void,
26
+ ): Promise<Amity.Cached<Amity.File<'audio'>[]>> => {
27
+ const client = getActiveClient();
28
+ client.log('file/uploadAudio', formData);
29
+
30
+ const file = formData.get('file') as File;
31
+
32
+ if (!file) throw new Error('The formData object must have a `file` key with audio file.');
33
+
34
+ const accessType = GlobalFileAccessType.getInstance().getFileAccessType();
35
+
36
+ formData.append('accessType', accessType);
37
+
38
+ formData.append('preferredFilename', file.name);
39
+
40
+ const headers = { 'content-type': 'multipart/form-data' };
41
+
42
+ const { data } = await client.upload.post<Amity.CreateFilePayload<'audio'>>(
43
+ '/api/v4/audios',
44
+ formData,
45
+ {
46
+ headers,
47
+ onUploadProgress({ loaded, total = 100 }) {
48
+ onProgress?.(Math.round((loaded * 100) / total));
49
+ },
50
+ },
51
+ );
52
+
53
+ const cachedAt = client.cache && Date.now();
54
+ if (client.cache) ingestInCache({ files: data }, { cachedAt });
55
+
56
+ return {
57
+ data,
58
+ cachedAt,
59
+ };
60
+ };
61
+ /* end_public_function */
@@ -0,0 +1,60 @@
1
+ import { fireEvent } from '~/core/events';
2
+ import { postLinkedObject } from '~/utils/linkedObject/postLinkedObject';
3
+ import { getActiveClient } from '~/client/api/activeClient';
4
+ import { ingestInCache } from '~/cache/api/ingestInCache';
5
+ import { preparePostPayload } from '../utils/payload';
6
+
7
+ /* begin_public_function
8
+ id: post.create.audio_post
9
+ */
10
+ /**
11
+ * ```js
12
+ * import { PostRepository } from '@amityco/ts-sdk'
13
+ * const created = await PostRepository.createAudioPost({
14
+ * targetType: 'user',
15
+ * targetId: 'foobar',
16
+ * data: { text: 'Audio Post', title: 'Audio Post Title' },
17
+ * attachments: [{ type: 'audio', fileId: 'fileId123'}]
18
+ * }))
19
+ * ```
20
+ *
21
+ * Creates an {@link Amity.Post}
22
+ *
23
+ * @param bundle The data necessary to create a new {@link Amity.Post}
24
+ * @returns The newly created {@link Amity.Post}
25
+ *
26
+ * @category Post API
27
+ * @async
28
+ */
29
+ export const createAudioPost = async (
30
+ bundle: Pick<Amity.Post, 'targetType' | 'targetId'> &
31
+ Partial<Pick<Amity.Post, 'metadata' | 'mentionees' | 'tags' | 'hashtags'>> & {
32
+ data?: {
33
+ text?: string;
34
+ title?: string;
35
+ };
36
+ attachments: {
37
+ type: Extract<Amity.MixedMediaPostContentType, 'audio'>;
38
+ fileId: Amity.File['fileId'];
39
+ }[];
40
+ },
41
+ ): Promise<Amity.Cached<Amity.Post>> => {
42
+ const client = getActiveClient();
43
+ client.log('post/createAudioPost', bundle);
44
+
45
+ const { data: payload } = await client.http.post<Amity.PostPayload>('/api/v4/posts', bundle);
46
+
47
+ fireEvent('post.created', payload);
48
+
49
+ const data = preparePostPayload(payload);
50
+
51
+ const cachedAt = client.cache && Date.now();
52
+
53
+ if (client.cache) ingestInCache(data, { cachedAt });
54
+
55
+ return {
56
+ data: postLinkedObject(data?.posts[0]),
57
+ cachedAt,
58
+ };
59
+ };
60
+ /* end_public_function */
@@ -0,0 +1,62 @@
1
+ import { fireEvent } from '~/core/events';
2
+ import { preparePostPayload } from '../utils/payload';
3
+ import { ingestInCache } from '~/cache/api/ingestInCache';
4
+ import { getActiveClient } from '~/client/api/activeClient';
5
+ import { postLinkedObject } from '~/utils/linkedObject/postLinkedObject';
6
+
7
+ /* begin_public_function
8
+ id: post.create.mixed_media_post
9
+ */
10
+ /**
11
+ * ```js
12
+ * import { PostRepository } from '@amityco/ts-sdk'
13
+ * const { data } = await PostRepository.createMixedMediaPost({
14
+ * targetType: 'community',
15
+ * targetId: 'community123',
16
+ * data: { text: 'Check out my mixed media post!', title: 'Mixed Media Post' },
17
+ * attachments: [
18
+ * { fileId: "file1", type: "image" },
19
+ * { fileId: "file2", type: "video" },
20
+ * { fileId: "file3", type: "audio" },
21
+ * { fileId: "file4", type: "file" }
22
+ * ],
23
+ * })
24
+ * ```
25
+ *
26
+ * Creates an {@link Amity.Post}
27
+ *
28
+ * @param bundle The data necessary to create a new {@link Amity.Post}
29
+ * @returns The newly created {@link Amity.Post}
30
+ *
31
+ * @category Post API
32
+ * @async
33
+ */
34
+ export const createMixedMediaPost = async (
35
+ bundle: Pick<Amity.Post, 'targetType' | 'targetId'> &
36
+ Partial<Pick<Amity.Post, 'metadata' | 'mentionees' | 'tags' | 'hashtags'>> & {
37
+ data?: {
38
+ text?: string;
39
+ title?: string;
40
+ };
41
+ attachments: { type: Amity.MixedMediaPostContentType; fileId: Amity.File['fileId'] }[];
42
+ },
43
+ ): Promise<Amity.Cached<Amity.Post>> => {
44
+ const client = getActiveClient();
45
+ client.log('post/createMixedMediaPost', bundle);
46
+
47
+ const { data: payload } = await client.http.post<Amity.PostPayload>('/api/v4/posts', bundle);
48
+
49
+ fireEvent('post.created', payload);
50
+
51
+ const data = preparePostPayload(payload);
52
+
53
+ const cachedAt = client.cache && Date.now();
54
+
55
+ if (client.cache) ingestInCache(data, { cachedAt });
56
+
57
+ return {
58
+ data: postLinkedObject(data?.posts?.[0]),
59
+ cachedAt,
60
+ };
61
+ };
62
+ /* end_public_function */
@@ -15,3 +15,5 @@ export * from './unflagPost';
15
15
  export * from './isPostFlaggedByMe';
16
16
 
17
17
  export * from './createClipPost';
18
+ export * from './createAudioPost';
19
+ export * from './createMixedMediaPost';
@@ -12,6 +12,9 @@ export class GlobalPinnedPostPaginationController extends PaginationController<
12
12
 
13
13
  const { data: queryResponse } = await this.http.get<Amity.PinnedPostPayload & Amity.Pagination>(
14
14
  path,
15
+ {
16
+ params: { ...params },
17
+ },
15
18
  );
16
19
 
17
20
  return queryResponse;
@@ -8,7 +8,7 @@ export class PinnedPostPaginationController extends PaginationController<
8
8
  async getRequest(queryParams: Amity.PinnedPostLiveCollection, token: string | undefined) {
9
9
  const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, ...params } = queryParams;
10
10
 
11
- const { communityId, placement } = params;
11
+ const { communityId, placement, ...rest } = params;
12
12
 
13
13
  const path = placement
14
14
  ? `/api/v1/pinned-posts/communities/${communityId}/${placement}`
@@ -16,6 +16,9 @@ export class PinnedPostPaginationController extends PaginationController<
16
16
 
17
17
  const { data: queryResponse } = await this.http.get<Amity.PinnedPostPayload & Amity.Pagination>(
18
18
  path,
19
+ {
20
+ params: { ...rest },
21
+ },
19
22
  );
20
23
 
21
24
  return queryResponse;
@@ -9,6 +9,7 @@ import {
9
9
  isAmityPollPost,
10
10
  isAmityVideoPost,
11
11
  isAmityClipPost,
12
+ isAmityAudioPost,
12
13
  } from '../postTypePredicate';
13
14
  import { shallowClone } from '../shallowClone';
14
15
  import { streamLinkedObject } from './streamLinkedObject';
@@ -101,5 +102,11 @@ export const postLinkedObject = (post: Amity.InternalPost): Amity.Post => {
101
102
  ? pullFromCache<Amity.File<'clip'>>(['file', 'get', post?.data?.fileId])?.data
102
103
  : undefined;
103
104
  },
105
+
106
+ getAudioInfo(): Amity.File<'audio'> | undefined {
107
+ return isAmityAudioPost(post)
108
+ ? pullFromCache<Amity.File<'audio'>>(['file', 'get', post?.data?.fileId])?.data
109
+ : undefined;
110
+ },
104
111
  });
105
112
  };
@@ -52,3 +52,12 @@ export function isAmityClipPost(post: Amity.InternalPost): post is Amity.Post<'c
52
52
  post.dataType === 'clip'
53
53
  );
54
54
  }
55
+
56
+ export function isAmityAudioPost(post: Amity.InternalPost): post is Amity.Post<'audio'> {
57
+ return !!(
58
+ post.data &&
59
+ typeof post.data !== 'string' &&
60
+ 'fileId' in post.data &&
61
+ post.dataType === 'audio'
62
+ );
63
+ }