@playdrop/playdrop-cli 0.16.12 → 0.16.16

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.
@@ -1,4 +1,4 @@
1
- import type { ChatChannelAccessResponse, ChatChannelReadResponse, ChatChannelReadPolicy, ChatChannelsResponse, ChatMessageResponse, ChatMessagesResponse, CreateChatMessageRequest, EditChatMessageRequest } from "@playdrop/types";
1
+ import type { ChatAttachmentUploadSession, ChatChannelReadResponse, ChatChannelsResponse, ChatConversationResponse, ChatConversationsResponse, ChatMessageResponse, ChatMessagesResponse, ChatNotificationPreferences, ChatRealtimeEvent, CreateChatMessageRequest, EditChatMessageRequest } from "@playdrop/types";
2
2
  type ApiResponseLike<T> = {
3
3
  status: number;
4
4
  body: T;
@@ -13,20 +13,63 @@ type RequestExecutor = <T>(input: {
13
13
  type ErrorHandler = (response: ApiResponseLike<unknown>, defaultMessage: string) => never;
14
14
  type ParseResponseBody = <T>(response: Response) => Promise<T>;
15
15
  export type ChatPageOptions = {
16
- beforeId?: number;
16
+ beforeId?: string;
17
+ before?: string;
18
+ after?: string;
19
+ around?: string;
17
20
  limit?: number;
18
21
  };
19
22
  export type ChatFileInput = {
20
23
  file: Blob;
21
24
  fileName?: string;
22
25
  };
23
- export type ChatWriteOptions = CreateChatMessageRequest & {
24
- files?: ChatFileInput[];
25
- links?: string[];
26
+ export type ChatWriteOptions = CreateChatMessageRequest;
27
+ export type ChatEditOptions = EditChatMessageRequest;
28
+ export type ChatSystemWriteOptions = {
29
+ body?: string;
30
+ clientKey?: string;
31
+ eventType?: string;
32
+ eventData?: unknown;
26
33
  };
27
- export type ChatEditOptions = EditChatMessageRequest & {
28
- files?: ChatFileInput[];
29
- links?: string[];
34
+ export type ChatRealtimeConnectionState = "connecting" | "ready" | "reconnecting" | "closed";
35
+ export type ChatRealtimeSocket = {
36
+ readonly readyState: number;
37
+ send(data: string): void;
38
+ close(code?: number, reason?: string): void;
39
+ addEventListener(type: "open", listener: () => void): void;
40
+ addEventListener(type: "message", listener: (event: {
41
+ data: unknown;
42
+ }) => void): void;
43
+ addEventListener(type: "close", listener: (event: {
44
+ code: number;
45
+ reason: string;
46
+ }) => void): void;
47
+ addEventListener(type: "error", listener: () => void): void;
48
+ };
49
+ export type ChatRealtimeConnectionOptions = {
50
+ subscriptions?: Array<{
51
+ conversationId: string;
52
+ lastEventVersion?: string | null;
53
+ }>;
54
+ onEvent: (event: ChatRealtimeEvent) => void;
55
+ onInboxUpdated?: (conversationId: string) => void;
56
+ onTypingUpdated?: (event: {
57
+ conversationId: string;
58
+ userId: number;
59
+ active: boolean;
60
+ expiresAt: string;
61
+ }) => void;
62
+ onStateChange?: (state: ChatRealtimeConnectionState) => void;
63
+ onResyncRequired?: (conversationId: string) => void;
64
+ onError?: (code: string) => void;
65
+ webSocketFactory?: (url: string) => ChatRealtimeSocket;
66
+ };
67
+ export type ChatRealtimeConnection = {
68
+ close(): void;
69
+ subscribe(conversationId: string, lastEventVersion?: string | null): void;
70
+ unsubscribe(conversationId: string): void;
71
+ setTyping(conversationId: string, active: boolean): void;
72
+ getLastEventVersion(conversationId: string): string | null;
30
73
  };
31
74
  export declare function buildChatApiClientMethods(input: {
32
75
  request: RequestExecutor;
@@ -39,22 +82,78 @@ export declare function buildChatApiClientMethods(input: {
39
82
  resolveToken: () => Promise<string | null>;
40
83
  getClientHeaders: () => Record<string, string>;
41
84
  }): {
85
+ fetchChatConversations(options?: {
86
+ type?: string;
87
+ cursor?: string;
88
+ limit?: number;
89
+ }): Promise<ChatConversationsResponse>;
90
+ fetchChatConversation(conversationId: string): Promise<ChatConversationResponse>;
91
+ createDirectChatConversation(username: string): Promise<ChatConversationResponse>;
92
+ fetchConversationMessages(conversationId: string, options?: ChatPageOptions): Promise<ChatMessagesResponse>;
93
+ sendConversationMessage(conversationId: string, message: ChatWriteOptions): Promise<ChatMessageResponse>;
94
+ sendSystemChatMessage(channel: string, message: ChatSystemWriteOptions): Promise<ChatMessageResponse>;
95
+ replyChatMessage(messageId: string, message: ChatWriteOptions): Promise<ChatMessageResponse>;
96
+ replySystemChatMessage(messageId: string, message: ChatSystemWriteOptions): Promise<ChatMessageResponse>;
97
+ editChatMessage(messageId: string, message: ChatEditOptions): Promise<ChatMessageResponse>;
98
+ deleteChatMessage(messageId: string): Promise<ChatMessageResponse>;
99
+ fetchChatThread(messageId: string, options?: ChatPageOptions): Promise<ChatMessagesResponse>;
100
+ reactChatMessage(messageId: string, emoji: string): Promise<ChatMessageResponse>;
101
+ unreactChatMessage(messageId: string, emoji: string): Promise<ChatMessageResponse>;
102
+ markChatConversationRead(conversationId: string, lastReadMessageId: string | null): Promise<ChatChannelReadResponse>;
103
+ updateChatConversationState(conversationId: string, state: {
104
+ mutedUntil?: string | null;
105
+ archived?: boolean;
106
+ }): Promise<{
107
+ mutedUntil: string | null;
108
+ archivedAt: string | null;
109
+ }>;
110
+ reportChatMessage(messageId: string, body: {
111
+ reasonCode: string;
112
+ message?: string;
113
+ }): Promise<{
114
+ id: string;
115
+ }>;
116
+ fetchChatFriends(options?: {
117
+ cursor?: string;
118
+ limit?: number;
119
+ }): Promise<{
120
+ friends: unknown[];
121
+ hasMore: boolean;
122
+ nextCursor: string | null;
123
+ }>;
124
+ fetchChatNotificationPreferences(): Promise<ChatNotificationPreferences>;
125
+ updateChatNotificationPreferences(preferences: Partial<ChatNotificationPreferences>): Promise<ChatNotificationPreferences>;
126
+ createChatAttachmentUploadSession(conversationId: string, file: {
127
+ fileName: string;
128
+ contentType: string;
129
+ sizeBytes: number;
130
+ }): Promise<ChatAttachmentUploadSession>;
131
+ uploadChatAttachment(session: ChatAttachmentUploadSession, file: Blob): Promise<void>;
132
+ completeChatAttachmentUploadSession(sessionId: string): Promise<void>;
133
+ abortChatAttachmentUploadSession(sessionId: string): Promise<void>;
134
+ createCommunityChatChannel(input: {
135
+ slug: string;
136
+ displayName: string;
137
+ position: number;
138
+ }): Promise<unknown>;
139
+ updateCommunityChatChannel(conversationId: string, input: {
140
+ displayName?: string;
141
+ position?: number;
142
+ archived?: boolean;
143
+ }): Promise<unknown>;
144
+ fetchAdminDirectConversations(options?: {
145
+ query?: string;
146
+ cursor?: string;
147
+ limit?: number;
148
+ }): Promise<ChatConversationsResponse>;
149
+ fetchAdminDirectConversationMessages(conversationId: string, options?: ChatPageOptions): Promise<ChatMessagesResponse>;
150
+ moderateAdminDirectConversationMessage(conversationId: string, messageId: string): Promise<ChatMessageResponse>;
151
+ fetchChatAttachment(attachmentId: string): Promise<Blob>;
42
152
  fetchChatChannels(): Promise<ChatChannelsResponse>;
43
153
  fetchChatMessages(channel: string, options?: ChatPageOptions): Promise<ChatMessagesResponse>;
44
- markChatChannelRead(channel: string, lastReadMessageId: number | null): Promise<ChatChannelReadResponse>;
45
- fetchChatThread(messageId: number, options?: ChatPageOptions): Promise<ChatMessagesResponse>;
154
+ markChatChannelRead(channel: string, lastReadMessageId: string | null): Promise<ChatChannelReadResponse>;
46
155
  sendChatMessage(channel: string, message: ChatWriteOptions): Promise<ChatMessageResponse>;
47
- replyChatMessage(messageId: number, message: ChatWriteOptions): Promise<ChatMessageResponse>;
48
- editChatMessage(messageId: number, message: ChatEditOptions): Promise<ChatMessageResponse>;
49
- reactChatMessage(messageId: number, emoji: string): Promise<ChatMessageResponse>;
50
- unreactChatMessage(messageId: number, emoji: string): Promise<ChatMessageResponse>;
51
- grantChatAccess(channel: string, username: string, canWrite: boolean): Promise<ChatChannelAccessResponse>;
52
- revokeChatAccess(channel: string, username: string): Promise<void>;
53
- setChatVisibility(channel: string, readPolicy: ChatChannelReadPolicy): Promise<{
54
- slug: string;
55
- readPolicy: ChatChannelReadPolicy;
56
- }>;
57
- fetchChatAttachment(attachmentId: number): Promise<Blob>;
156
+ connectChatRealtime(options: ChatRealtimeConnectionOptions): ChatRealtimeConnection;
58
157
  };
59
158
  export {};
60
159
  //# sourceMappingURL=chat.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/domains/chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAGzB,KAAK,eAAe,CAAC,CAAC,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AACxE,KAAK,eAAe,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE;IAChC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,KAAK,YAAY,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,MAAM,KAAK,KAAK,CAAC;AAC1F,KAAK,iBAAiB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,wBAAwB,GAAG;IACxD,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG;IACrD,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAgCF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,OAAO,EAAE,eAAe,CAAC;IACzB,cAAc,EAAE,YAAY,CAAC;IAC7B,SAAS,EAAE,OAAO,KAAK,CAAC;IACxB,yBAAyB,EAAE,OAAO,CAAC;IACnC,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC3C,gBAAgB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;yBA4C8B,OAAO,CAAC,oBAAoB,CAAC;+BAMvB,MAAM,YAAW,eAAe,GAAQ,OAAO,CAAC,oBAAoB,CAAC;iCASnE,MAAM,qBAAqB,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,uBAAuB,CAAC;+BAU7E,MAAM,YAAW,eAAe,GAAQ,OAAO,CAAC,oBAAoB,CAAC;6BASvE,MAAM,WAAW,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC;gCAQ7D,MAAM,WAAW,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC;+BAQjE,MAAM,WAAW,eAAe,GAAG,OAAO,CAAC,mBAAmB,CAAC;gCAQ9D,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;kCASlD,MAAM,SAAS,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;6BASzD,MAAM,YAAY,MAAM,YAAY,OAAO,GAAG,OAAO,CAAC,yBAAyB,CAAC;8BAU/E,MAAM,YAAY,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;+BAS7D,MAAM,cACH,qBAAqB,GAChC,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,qBAAqB,CAAA;KAAE,CAAC;sCAUvB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;EAgBjE"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/domains/chat.ts"],"names":[],"mappings":"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"}