diff --git a/src/gen/feeds/FeedsApi.ts b/src/gen/feeds/FeedsApi.ts index 3da1e6e..6597a24 100644 --- a/src/gen/feeds/FeedsApi.ts +++ b/src/gen/feeds/FeedsApi.ts @@ -19,6 +19,8 @@ import { AddReactionRequest, AddReactionResponse, CastPollVoteRequest, + CreateCollectionsRequest, + CreateCollectionsResponse, CreateFeedGroupRequest, CreateFeedGroupResponse, CreateFeedViewRequest, @@ -33,6 +35,7 @@ import { DeleteActivityResponse, DeleteBookmarkFolderResponse, DeleteBookmarkResponse, + DeleteCollectionsResponse, DeleteCommentReactionResponse, DeleteCommentResponse, DeleteFeedGroupResponse, @@ -89,6 +92,7 @@ import { QueryFollowsResponse, QueryMembershipLevelsRequest, QueryMembershipLevelsResponse, + ReadCollectionsResponse, RejectFeedMemberInviteRequest, RejectFeedMemberInviteResponse, RejectFollowRequest, @@ -107,6 +111,8 @@ import { UpdateBookmarkFolderResponse, UpdateBookmarkRequest, UpdateBookmarkResponse, + UpdateCollectionsRequest, + UpdateCollectionsResponse, UpdateCommentRequest, UpdateCommentResponse, UpdateFeedGroupRequest, @@ -125,6 +131,8 @@ import { UpdateMembershipLevelResponse, UpsertActivitiesRequest, UpsertActivitiesResponse, + UpsertCollectionsRequest, + UpsertCollectionsResponse, } from '../models'; import { decoders } from '../model-decoders/decoders'; @@ -147,6 +155,7 @@ export class FeedsApi { visibility: request?.visibility, visibility_tag: request?.visibility_tag, attachments: request?.attachments, + collection_refs: request?.collection_refs, filter_tags: request?.filter_tags, interest_tags: request?.interest_tags, mentioned_user_ids: request?.mentioned_user_ids, @@ -594,6 +603,7 @@ export class FeedsApi { user_id: request?.user_id, visibility: request?.visibility, attachments: request?.attachments, + collection_refs: request?.collection_refs, feeds: request?.feeds, filter_tags: request?.filter_tags, interest_tags: request?.interest_tags, @@ -722,6 +732,113 @@ export class FeedsApi { return { ...response.body, metadata: response.metadata }; } + async deleteCollections(request: { + collection_refs: string[]; + }): Promise> { + const queryParams = { + collection_refs: request?.collection_refs, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >('DELETE', '/api/v2/feeds/collections', undefined, queryParams); + + decoders.DeleteCollectionsResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + + async readCollections(request: { + collection_refs: string[]; + user_id?: string; + }): Promise> { + const queryParams = { + collection_refs: request?.collection_refs, + user_id: request?.user_id, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >('GET', '/api/v2/feeds/collections', undefined, queryParams); + + decoders.ReadCollectionsResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + + async updateCollections( + request: UpdateCollectionsRequest, + ): Promise> { + const body = { + collections: request?.collections, + user_id: request?.user_id, + user: request?.user, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >( + 'PATCH', + '/api/v2/feeds/collections', + undefined, + undefined, + body, + 'application/json', + ); + + decoders.UpdateCollectionsResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + + async createCollections( + request: CreateCollectionsRequest, + ): Promise> { + const body = { + collections: request?.collections, + user_id: request?.user_id, + user: request?.user, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >( + 'POST', + '/api/v2/feeds/collections', + undefined, + undefined, + body, + 'application/json', + ); + + decoders.CreateCollectionsResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + + async upsertCollections( + request: UpsertCollectionsRequest, + ): Promise> { + const body = { + collections: request?.collections, + }; + + const response = await this.apiClient.sendRequest< + StreamResponse + >( + 'PUT', + '/api/v2/feeds/collections', + undefined, + undefined, + body, + 'application/json', + ); + + decoders.UpsertCollectionsResponse?.(response.body); + + return { ...response.body, metadata: response.metadata }; + } + async getComments(request: { object_id: string; object_type: string; diff --git a/src/gen/model-decoders/decoders.ts b/src/gen/model-decoders/decoders.ts index 787e3db..78432ea 100644 --- a/src/gen/model-decoders/decoders.ts +++ b/src/gen/model-decoders/decoders.ts @@ -216,6 +216,8 @@ decoders.ActivityResponse = (input?: Record) => { own_reactions: { type: 'FeedsReactionResponse', isSingle: false }, + collections: { type: 'EnrichedCollectionResponse', isSingle: false }, + reaction_groups: { type: 'ReactionGroupResponse', isSingle: false }, user: { type: 'UserResponse', isSingle: true }, @@ -1512,6 +1514,15 @@ decoders.ClosedCaptionEvent = (input?: Record) => { return decode(typeMappings, input); }; +decoders.CollectionResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + created_at: { type: 'DatetimeType', isSingle: true }, + + updated_at: { type: 'DatetimeType', isSingle: true }, + }; + return decode(typeMappings, input); +}; + decoders.Command = (input?: Record) => { const typeMappings: TypeMapping = { created_at: { type: 'DatetimeType', isSingle: true }, @@ -1671,6 +1682,13 @@ decoders.CreateChannelTypeResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.CreateCollectionsResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + collections: { type: 'CollectionResponse', isSingle: false }, + }; + return decode(typeMappings, input); +}; + decoders.CreateCommandResponse = (input?: Record) => { const typeMappings: TypeMapping = { command: { type: 'Command', isSingle: true }, @@ -1857,6 +1875,15 @@ decoders.EgressRTMPResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.EnrichedCollectionResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + created_at: { type: 'DatetimeType', isSingle: true }, + + updated_at: { type: 'DatetimeType', isSingle: true }, + }; + return decode(typeMappings, input); +}; + decoders.EntityCreatorResponse = (input?: Record) => { const typeMappings: TypeMapping = { created_at: { type: 'DatetimeType', isSingle: true }, @@ -3672,6 +3699,13 @@ decoders.ReactivateUserResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.ReadCollectionsResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + collections: { type: 'CollectionResponse', isSingle: false }, + }; + return decode(typeMappings, input); +}; + decoders.ReadStateResponse = (input?: Record) => { const typeMappings: TypeMapping = { last_read: { type: 'DatetimeType', isSingle: true }, @@ -4278,6 +4312,13 @@ decoders.UpdateChannelTypeResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.UpdateCollectionsResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + collections: { type: 'CollectionResponse', isSingle: false }, + }; + return decode(typeMappings, input); +}; + decoders.UpdateCommandResponse = (input?: Record) => { const typeMappings: TypeMapping = { command: { type: 'Command', isSingle: true }, @@ -4394,6 +4435,13 @@ decoders.UpsertActivitiesResponse = (input?: Record) => { return decode(typeMappings, input); }; +decoders.UpsertCollectionsResponse = (input?: Record) => { + const typeMappings: TypeMapping = { + collections: { type: 'CollectionResponse', isSingle: false }, + }; + return decode(typeMappings, input); +}; + decoders.UpsertConfigResponse = (input?: Record) => { const typeMappings: TypeMapping = { config: { type: 'ConfigResponse', isSingle: true }, diff --git a/src/gen/models/index.ts b/src/gen/models/index.ts index 163ac8f..0eb8592 100644 --- a/src/gen/models/index.ts +++ b/src/gen/models/index.ts @@ -511,6 +511,8 @@ export interface ActivityRequest { attachments?: Attachment[]; + collection_refs?: string[]; + filter_tags?: string[]; interest_tags?: string[]; @@ -571,6 +573,8 @@ export interface ActivityResponse { own_reactions: FeedsReactionResponse[]; + collections: Record; + custom: Record; reaction_groups: Record; @@ -701,6 +705,8 @@ export interface AddActivityRequest { attachments?: Attachment[]; + collection_refs?: string[]; + filter_tags?: string[]; interest_tags?: string[]; @@ -3638,6 +3644,30 @@ export interface CollectUserFeedbackResponse { duration: string; } +export interface CollectionRequest { + name: string; + + custom: Record; + + id?: string; + + user_id?: string; +} + +export interface CollectionResponse { + created_at: Date; + + id: string; + + name: string; + + updated_at: Date; + + custom: Record; + + user_id?: string; +} + export interface Command { args: string; @@ -4088,6 +4118,20 @@ export interface CreateChannelTypeResponse { automod_thresholds?: Thresholds; } +export interface CreateCollectionsRequest { + collections: CollectionRequest[]; + + user_id?: string; + + user?: UserRequest; +} + +export interface CreateCollectionsResponse { + duration: string; + + collections: CollectionResponse[]; +} + export interface CreateCommandRequest { description: string; @@ -4547,6 +4591,10 @@ export interface DeleteChannelsResultResponse { error?: string; } +export interface DeleteCollectionsResponse { + duration: string; +} + export interface DeleteCommandResponse { duration: string; @@ -4901,6 +4949,22 @@ export interface EnrichedActivity { target?: Data; } +export interface EnrichedCollectionResponse { + created_at: Date; + + id: string; + + name: string; + + status: 'ok' | 'notfound'; + + updated_at: Date; + + custom: Record; + + user_id?: string; +} + export interface EnrichedReaction { activity_id: string; @@ -10337,6 +10401,12 @@ export interface ReactivateUsersResponse { task_id: string; } +export interface ReadCollectionsResponse { + duration: string; + + collections: CollectionResponse[]; +} + export interface ReadReceipts { enabled: boolean; } @@ -12216,6 +12286,8 @@ export interface UpdateActivityRequest { attachments?: Attachment[]; + collection_refs?: string[]; + feeds?: string[]; filter_tags?: string[]; @@ -12645,6 +12717,28 @@ export interface UpdateChannelTypeResponse { automod_thresholds?: Thresholds; } +export interface UpdateCollectionRequest { + id: string; + + name: string; + + custom: Record; +} + +export interface UpdateCollectionsRequest { + collections: UpdateCollectionRequest[]; + + user_id?: string; + + user?: UserRequest; +} + +export interface UpdateCollectionsResponse { + duration: string; + + collections: CollectionResponse[]; +} + export interface UpdateCommandRequest { description: string; @@ -13064,6 +13158,16 @@ export interface UpsertActivitiesResponse { activities: ActivityResponse[]; } +export interface UpsertCollectionsRequest { + collections: CollectionRequest[]; +} + +export interface UpsertCollectionsResponse { + duration: string; + + collections: CollectionResponse[]; +} + export interface UpsertConfigRequest { key: string;