@kaa5945/slack-cli 2026.4.11
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.
- package/LICENSE +21 -0
- package/README.md +620 -0
- package/README.zh-TW.md +620 -0
- package/dist/commands/bookmark.d.ts +3 -0
- package/dist/commands/bookmark.d.ts.map +1 -0
- package/dist/commands/bookmark.js +62 -0
- package/dist/commands/bookmark.js.map +1 -0
- package/dist/commands/canvas.d.ts +3 -0
- package/dist/commands/canvas.d.ts.map +1 -0
- package/dist/commands/canvas.js +92 -0
- package/dist/commands/canvas.js.map +1 -0
- package/dist/commands/channel.d.ts +3 -0
- package/dist/commands/channel.d.ts.map +1 -0
- package/dist/commands/channel.js +53 -0
- package/dist/commands/channel.js.map +1 -0
- package/dist/commands/channels.d.ts +3 -0
- package/dist/commands/channels.d.ts.map +1 -0
- package/dist/commands/channels.js +41 -0
- package/dist/commands/channels.js.map +1 -0
- package/dist/commands/config-subcommands.d.ts +17 -0
- package/dist/commands/config-subcommands.d.ts.map +1 -0
- package/dist/commands/config-subcommands.js +170 -0
- package/dist/commands/config-subcommands.js.map +1 -0
- package/dist/commands/config.d.ts +3 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +40 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/delete.d.ts +3 -0
- package/dist/commands/delete.d.ts.map +1 -0
- package/dist/commands/delete.js +28 -0
- package/dist/commands/delete.js.map +1 -0
- package/dist/commands/edit.d.ts +3 -0
- package/dist/commands/edit.d.ts.map +1 -0
- package/dist/commands/edit.js +29 -0
- package/dist/commands/edit.js.map +1 -0
- package/dist/commands/history-display.d.ts +9 -0
- package/dist/commands/history-display.d.ts.map +1 -0
- package/dist/commands/history-display.js +17 -0
- package/dist/commands/history-display.js.map +1 -0
- package/dist/commands/history-validators.d.ts +5 -0
- package/dist/commands/history-validators.d.ts.map +1 -0
- package/dist/commands/history-validators.js +35 -0
- package/dist/commands/history-validators.js.map +1 -0
- package/dist/commands/history.d.ts +3 -0
- package/dist/commands/history.d.ts.map +1 -0
- package/dist/commands/history.js +141 -0
- package/dist/commands/history.js.map +1 -0
- package/dist/commands/invite.d.ts +3 -0
- package/dist/commands/invite.d.ts.map +1 -0
- package/dist/commands/invite.js +34 -0
- package/dist/commands/invite.js.map +1 -0
- package/dist/commands/join.d.ts +3 -0
- package/dist/commands/join.d.ts.map +1 -0
- package/dist/commands/join.js +25 -0
- package/dist/commands/join.js.map +1 -0
- package/dist/commands/leave.d.ts +3 -0
- package/dist/commands/leave.d.ts.map +1 -0
- package/dist/commands/leave.js +25 -0
- package/dist/commands/leave.js.map +1 -0
- package/dist/commands/members.d.ts +3 -0
- package/dist/commands/members.d.ts.map +1 -0
- package/dist/commands/members.js +53 -0
- package/dist/commands/members.js.map +1 -0
- package/dist/commands/pin.d.ts +3 -0
- package/dist/commands/pin.d.ts.map +1 -0
- package/dist/commands/pin.js +91 -0
- package/dist/commands/pin.js.map +1 -0
- package/dist/commands/reaction.d.ts +3 -0
- package/dist/commands/reaction.d.ts.map +1 -0
- package/dist/commands/reaction.js +45 -0
- package/dist/commands/reaction.js.map +1 -0
- package/dist/commands/reminder.d.ts +3 -0
- package/dist/commands/reminder.d.ts.map +1 -0
- package/dist/commands/reminder.js +78 -0
- package/dist/commands/reminder.js.map +1 -0
- package/dist/commands/scheduled.d.ts +3 -0
- package/dist/commands/scheduled.d.ts.map +1 -0
- package/dist/commands/scheduled.js +69 -0
- package/dist/commands/scheduled.js.map +1 -0
- package/dist/commands/search.d.ts +3 -0
- package/dist/commands/search.d.ts.map +1 -0
- package/dist/commands/search.js +51 -0
- package/dist/commands/search.js.map +1 -0
- package/dist/commands/send-ephemeral.d.ts +3 -0
- package/dist/commands/send-ephemeral.d.ts.map +1 -0
- package/dist/commands/send-ephemeral.js +36 -0
- package/dist/commands/send-ephemeral.js.map +1 -0
- package/dist/commands/send.d.ts +3 -0
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +125 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/unread.d.ts +3 -0
- package/dist/commands/unread.d.ts.map +1 -0
- package/dist/commands/unread.js +92 -0
- package/dist/commands/unread.js.map +1 -0
- package/dist/commands/upload.d.ts +3 -0
- package/dist/commands/upload.d.ts.map +1 -0
- package/dist/commands/upload.js +99 -0
- package/dist/commands/upload.js.map +1 -0
- package/dist/commands/users.d.ts +3 -0
- package/dist/commands/users.d.ts.map +1 -0
- package/dist/commands/users.js +138 -0
- package/dist/commands/users.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +76 -0
- package/dist/index.js.map +1 -0
- package/dist/types/commands.d.ts +216 -0
- package/dist/types/commands.d.ts.map +1 -0
- package/dist/types/commands.js +3 -0
- package/dist/types/commands.js.map +1 -0
- package/dist/types/config.d.ts +18 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +3 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/slack.d.ts +198 -0
- package/dist/types/slack.d.ts.map +1 -0
- package/dist/types/slack.js +3 -0
- package/dist/types/slack.js.map +1 -0
- package/dist/utils/attachment-downloader.d.ts +22 -0
- package/dist/utils/attachment-downloader.d.ts.map +1 -0
- package/dist/utils/attachment-downloader.js +138 -0
- package/dist/utils/attachment-downloader.js.map +1 -0
- package/dist/utils/channel-formatter.d.ts +13 -0
- package/dist/utils/channel-formatter.d.ts.map +1 -0
- package/dist/utils/channel-formatter.js +43 -0
- package/dist/utils/channel-formatter.js.map +1 -0
- package/dist/utils/channel-resolver.d.ts +27 -0
- package/dist/utils/channel-resolver.d.ts.map +1 -0
- package/dist/utils/channel-resolver.js +76 -0
- package/dist/utils/channel-resolver.js.map +1 -0
- package/dist/utils/client-factory.d.ts +6 -0
- package/dist/utils/client-factory.d.ts.map +1 -0
- package/dist/utils/client-factory.js +13 -0
- package/dist/utils/client-factory.js.map +1 -0
- package/dist/utils/command-support.d.ts +16 -0
- package/dist/utils/command-support.d.ts.map +1 -0
- package/dist/utils/command-support.js +29 -0
- package/dist/utils/command-support.js.map +1 -0
- package/dist/utils/command-wrapper.d.ts +6 -0
- package/dist/utils/command-wrapper.d.ts.map +1 -0
- package/dist/utils/command-wrapper.js +27 -0
- package/dist/utils/command-wrapper.js.map +1 -0
- package/dist/utils/config-helper.d.ts +8 -0
- package/dist/utils/config-helper.d.ts.map +1 -0
- package/dist/utils/config-helper.js +19 -0
- package/dist/utils/config-helper.js.map +1 -0
- package/dist/utils/constants.d.ts +64 -0
- package/dist/utils/constants.d.ts.map +1 -0
- package/dist/utils/constants.js +77 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/date-utils.d.ts +4 -0
- package/dist/utils/date-utils.d.ts.map +1 -0
- package/dist/utils/date-utils.js +24 -0
- package/dist/utils/date-utils.js.map +1 -0
- package/dist/utils/error-utils.d.ts +4 -0
- package/dist/utils/error-utils.d.ts.map +1 -0
- package/dist/utils/error-utils.js +46 -0
- package/dist/utils/error-utils.js.map +1 -0
- package/dist/utils/errors.d.ts +17 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +36 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/format-utils.d.ts +4 -0
- package/dist/utils/format-utils.d.ts.map +1 -0
- package/dist/utils/format-utils.js +24 -0
- package/dist/utils/format-utils.js.map +1 -0
- package/dist/utils/formatters/base-formatter.d.ts +23 -0
- package/dist/utils/formatters/base-formatter.d.ts.map +1 -0
- package/dist/utils/formatters/base-formatter.js +27 -0
- package/dist/utils/formatters/base-formatter.js.map +1 -0
- package/dist/utils/formatters/bookmark-formatters.d.ts +14 -0
- package/dist/utils/formatters/bookmark-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/bookmark-formatters.js +60 -0
- package/dist/utils/formatters/bookmark-formatters.js.map +1 -0
- package/dist/utils/formatters/channel-formatters.d.ts +7 -0
- package/dist/utils/formatters/channel-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/channel-formatters.js +65 -0
- package/dist/utils/formatters/channel-formatters.js.map +1 -0
- package/dist/utils/formatters/channel-info-formatters.d.ts +6 -0
- package/dist/utils/formatters/channel-info-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/channel-info-formatters.js +69 -0
- package/dist/utils/formatters/channel-info-formatters.js.map +1 -0
- package/dist/utils/formatters/channels-list-formatters.d.ts +6 -0
- package/dist/utils/formatters/channels-list-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/channels-list-formatters.js +49 -0
- package/dist/utils/formatters/channels-list-formatters.js.map +1 -0
- package/dist/utils/formatters/history-formatters.d.ts +10 -0
- package/dist/utils/formatters/history-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/history-formatters.js +87 -0
- package/dist/utils/formatters/history-formatters.js.map +1 -0
- package/dist/utils/formatters/members-formatters.d.ts +10 -0
- package/dist/utils/formatters/members-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/members-formatters.js +42 -0
- package/dist/utils/formatters/members-formatters.js.map +1 -0
- package/dist/utils/formatters/message-formatters.d.ts +12 -0
- package/dist/utils/formatters/message-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/message-formatters.js +95 -0
- package/dist/utils/formatters/message-formatters.js.map +1 -0
- package/dist/utils/formatters/reminder-formatters.d.ts +12 -0
- package/dist/utils/formatters/reminder-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/reminder-formatters.js +64 -0
- package/dist/utils/formatters/reminder-formatters.js.map +1 -0
- package/dist/utils/formatters/search-formatters.d.ts +10 -0
- package/dist/utils/formatters/search-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/search-formatters.js +87 -0
- package/dist/utils/formatters/search-formatters.js.map +1 -0
- package/dist/utils/mention-utils.d.ts +17 -0
- package/dist/utils/mention-utils.d.ts.map +1 -0
- package/dist/utils/mention-utils.js +45 -0
- package/dist/utils/mention-utils.js.map +1 -0
- package/dist/utils/option-parsers.d.ts +47 -0
- package/dist/utils/option-parsers.d.ts.map +1 -0
- package/dist/utils/option-parsers.js +75 -0
- package/dist/utils/option-parsers.js.map +1 -0
- package/dist/utils/profile-config.d.ts +19 -0
- package/dist/utils/profile-config.d.ts.map +1 -0
- package/dist/utils/profile-config.js +203 -0
- package/dist/utils/profile-config.js.map +1 -0
- package/dist/utils/schedule-utils.d.ts +3 -0
- package/dist/utils/schedule-utils.d.ts.map +1 -0
- package/dist/utils/schedule-utils.js +34 -0
- package/dist/utils/schedule-utils.js.map +1 -0
- package/dist/utils/slack-api-client.d.ts +3 -0
- package/dist/utils/slack-api-client.d.ts.map +1 -0
- package/dist/utils/slack-api-client.js +22 -0
- package/dist/utils/slack-api-client.js.map +1 -0
- package/dist/utils/slack-client-service.d.ts +66 -0
- package/dist/utils/slack-client-service.d.ts.map +1 -0
- package/dist/utils/slack-client-service.js +181 -0
- package/dist/utils/slack-client-service.js.map +1 -0
- package/dist/utils/slack-operations/base-client.d.ts +18 -0
- package/dist/utils/slack-operations/base-client.d.ts.map +1 -0
- package/dist/utils/slack-operations/base-client.js +52 -0
- package/dist/utils/slack-operations/base-client.js.map +1 -0
- package/dist/utils/slack-operations/canvas-operations.d.ts +10 -0
- package/dist/utils/slack-operations/canvas-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/canvas-operations.js +28 -0
- package/dist/utils/slack-operations/canvas-operations.js.map +1 -0
- package/dist/utils/slack-operations/channel-operations.d.ts +33 -0
- package/dist/utils/slack-operations/channel-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/channel-operations.js +276 -0
- package/dist/utils/slack-operations/channel-operations.js.map +1 -0
- package/dist/utils/slack-operations/file-operations.d.ts +19 -0
- package/dist/utils/slack-operations/file-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/file-operations.js +51 -0
- package/dist/utils/slack-operations/file-operations.js.map +1 -0
- package/dist/utils/slack-operations/index.d.ts +5 -0
- package/dist/utils/slack-operations/index.d.ts.map +1 -0
- package/dist/utils/slack-operations/index.js +12 -0
- package/dist/utils/slack-operations/index.js.map +1 -0
- package/dist/utils/slack-operations/message-history-operations.d.ts +17 -0
- package/dist/utils/slack-operations/message-history-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/message-history-operations.js +101 -0
- package/dist/utils/slack-operations/message-history-operations.js.map +1 -0
- package/dist/utils/slack-operations/message-operations.d.ts +24 -0
- package/dist/utils/slack-operations/message-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/message-operations.js +61 -0
- package/dist/utils/slack-operations/message-operations.js.map +1 -0
- package/dist/utils/slack-operations/message-permalink-operations.d.ts +10 -0
- package/dist/utils/slack-operations/message-permalink-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/message-permalink-operations.js +49 -0
- package/dist/utils/slack-operations/message-permalink-operations.js.map +1 -0
- package/dist/utils/slack-operations/message-user-resolver.d.ts +7 -0
- package/dist/utils/slack-operations/message-user-resolver.d.ts.map +1 -0
- package/dist/utils/slack-operations/message-user-resolver.js +27 -0
- package/dist/utils/slack-operations/message-user-resolver.js.map +1 -0
- package/dist/utils/slack-operations/message-write-operations.d.ts +17 -0
- package/dist/utils/slack-operations/message-write-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/message-write-operations.js +76 -0
- package/dist/utils/slack-operations/message-write-operations.js.map +1 -0
- package/dist/utils/slack-operations/pin-operations.d.ts +11 -0
- package/dist/utils/slack-operations/pin-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/pin-operations.js +34 -0
- package/dist/utils/slack-operations/pin-operations.js.map +1 -0
- package/dist/utils/slack-operations/reaction-operations.d.ts +10 -0
- package/dist/utils/slack-operations/reaction-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/reaction-operations.js +32 -0
- package/dist/utils/slack-operations/reaction-operations.js.map +1 -0
- package/dist/utils/slack-operations/reminder-operations.d.ts +10 -0
- package/dist/utils/slack-operations/reminder-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/reminder-operations.js +32 -0
- package/dist/utils/slack-operations/reminder-operations.js.map +1 -0
- package/dist/utils/slack-operations/search-operations.d.ts +11 -0
- package/dist/utils/slack-operations/search-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/search-operations.js +116 -0
- package/dist/utils/slack-operations/search-operations.js.map +1 -0
- package/dist/utils/slack-operations/star-operations.d.ts +9 -0
- package/dist/utils/slack-operations/star-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/star-operations.js +32 -0
- package/dist/utils/slack-operations/star-operations.js.map +1 -0
- package/dist/utils/slack-operations/user-operations.d.ts +12 -0
- package/dist/utils/slack-operations/user-operations.d.ts.map +1 -0
- package/dist/utils/slack-operations/user-operations.js +69 -0
- package/dist/utils/slack-operations/user-operations.js.map +1 -0
- package/dist/utils/slack-patterns.d.ts +20 -0
- package/dist/utils/slack-patterns.d.ts.map +1 -0
- package/dist/utils/slack-patterns.js +54 -0
- package/dist/utils/slack-patterns.js.map +1 -0
- package/dist/utils/terminal-sanitizer.d.ts +7 -0
- package/dist/utils/terminal-sanitizer.d.ts.map +1 -0
- package/dist/utils/terminal-sanitizer.js +51 -0
- package/dist/utils/terminal-sanitizer.js.map +1 -0
- package/dist/utils/token-crypto-service.d.ts +40 -0
- package/dist/utils/token-crypto-service.d.ts.map +1 -0
- package/dist/utils/token-crypto-service.js +273 -0
- package/dist/utils/token-crypto-service.js.map +1 -0
- package/dist/utils/token-utils.d.ts +7 -0
- package/dist/utils/token-utils.d.ts.map +1 -0
- package/dist/utils/token-utils.js +18 -0
- package/dist/utils/token-utils.js.map +1 -0
- package/dist/utils/update-notifier.d.ts +10 -0
- package/dist/utils/update-notifier.d.ts.map +1 -0
- package/dist/utils/update-notifier.js +147 -0
- package/dist/utils/update-notifier.js.map +1 -0
- package/dist/utils/validators.d.ts +147 -0
- package/dist/utils/validators.d.ts.map +1 -0
- package/dist/utils/validators.js +401 -0
- package/dist/utils/validators.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { ChatPostEphemeralResponse, ChatPostMessageResponse, ChatScheduleMessageResponse, ChatUpdateResponse } from '@slack/web-api';
|
|
2
|
+
import type { CanvasFile, CanvasSection, Channel, ChannelDetail, ChannelMembersOptions, ChannelMembersResult, ChannelUnreadResult, HistoryOptions, HistoryResult, ListChannelsOptions, PinnedItem, Reminder, ScheduledMessage, SearchMessagesOptions, SearchResult, SlackUser, StarListResult, UserPresence } from '../types/slack';
|
|
3
|
+
import type { UploadFileOptions } from './slack-operations/file-operations';
|
|
4
|
+
export declare class SlackApiClient {
|
|
5
|
+
private channelOps;
|
|
6
|
+
private messageOps;
|
|
7
|
+
private fileOps;
|
|
8
|
+
private reactionOps;
|
|
9
|
+
private pinOps;
|
|
10
|
+
private userOps;
|
|
11
|
+
private searchOps;
|
|
12
|
+
private reminderOps;
|
|
13
|
+
private starOps;
|
|
14
|
+
private canvasOps;
|
|
15
|
+
constructor(token: string);
|
|
16
|
+
sendMessage(channel: string, text: string, thread_ts?: string): Promise<ChatPostMessageResponse>;
|
|
17
|
+
sendEphemeralMessage(channel: string, user: string, text: string, thread_ts?: string): Promise<ChatPostEphemeralResponse>;
|
|
18
|
+
scheduleMessage(channel: string, text: string, post_at: number, thread_ts?: string): Promise<ChatScheduleMessageResponse>;
|
|
19
|
+
updateMessage(channel: string, ts: string, text: string): Promise<ChatUpdateResponse>;
|
|
20
|
+
deleteMessage(channel: string, ts: string): Promise<void>;
|
|
21
|
+
listScheduledMessages(channel?: string, limit?: number): Promise<ScheduledMessage[]>;
|
|
22
|
+
cancelScheduledMessage(channel: string, scheduledMessageId: string): Promise<void>;
|
|
23
|
+
listChannels(options: ListChannelsOptions): Promise<Channel[]>;
|
|
24
|
+
getChannelDetail(channelNameOrId: string): Promise<ChannelDetail>;
|
|
25
|
+
setTopic(channelNameOrId: string, topic: string): Promise<void>;
|
|
26
|
+
setPurpose(channelNameOrId: string, purpose: string): Promise<void>;
|
|
27
|
+
getHistory(channel: string, options: HistoryOptions): Promise<HistoryResult>;
|
|
28
|
+
getThreadHistory(channel: string, threadTs: string): Promise<HistoryResult>;
|
|
29
|
+
listUnreadChannels(): Promise<Channel[]>;
|
|
30
|
+
getChannelUnread(channelNameOrId: string): Promise<ChannelUnreadResult>;
|
|
31
|
+
markAsRead(channelId: string): Promise<void>;
|
|
32
|
+
getPermalink(channel: string, messageTs: string): Promise<string | null>;
|
|
33
|
+
getPermalinks(channel: string, messageTimestamps: string[]): Promise<Map<string, string>>;
|
|
34
|
+
uploadFile(options: UploadFileOptions): Promise<void>;
|
|
35
|
+
downloadFile(urlPrivateDownload: string, destPath: string): Promise<void>;
|
|
36
|
+
resolveChannelId(channelNameOrId: string): Promise<string>;
|
|
37
|
+
addReaction(channel: string, timestamp: string, emoji: string): Promise<void>;
|
|
38
|
+
removeReaction(channel: string, timestamp: string, emoji: string): Promise<void>;
|
|
39
|
+
addPin(channel: string, timestamp: string): Promise<void>;
|
|
40
|
+
removePin(channel: string, timestamp: string): Promise<void>;
|
|
41
|
+
listPins(channel: string): Promise<PinnedItem[]>;
|
|
42
|
+
listUsers(limit?: number): Promise<SlackUser[]>;
|
|
43
|
+
getUserInfo(userId: string): Promise<SlackUser>;
|
|
44
|
+
lookupUserByEmail(email: string): Promise<SlackUser>;
|
|
45
|
+
openDmChannel(userId: string): Promise<string>;
|
|
46
|
+
getUserPresence(userId: string): Promise<UserPresence>;
|
|
47
|
+
resolveUserIdByName(username: string): Promise<string>;
|
|
48
|
+
searchMessages(query: string, options?: SearchMessagesOptions): Promise<SearchResult>;
|
|
49
|
+
joinChannel(channelNameOrId: string): Promise<void>;
|
|
50
|
+
leaveChannel(channelNameOrId: string): Promise<void>;
|
|
51
|
+
inviteToChannel(channelNameOrId: string, userIds: string[], force?: boolean): Promise<void>;
|
|
52
|
+
getChannelMembers(channelNameOrId: string, options?: ChannelMembersOptions): Promise<ChannelMembersResult>;
|
|
53
|
+
addReminder(text: string, time: number): Promise<Reminder>;
|
|
54
|
+
listReminders(): Promise<Reminder[]>;
|
|
55
|
+
deleteReminder(reminderId: string): Promise<void>;
|
|
56
|
+
completeReminder(reminderId: string): Promise<void>;
|
|
57
|
+
addStar(channel: string, timestamp: string): Promise<void>;
|
|
58
|
+
listStars(count?: number): Promise<StarListResult>;
|
|
59
|
+
removeStar(channel: string, timestamp: string): Promise<void>;
|
|
60
|
+
readCanvas(canvasId: string): Promise<CanvasSection[]>;
|
|
61
|
+
listCanvases(channel: string): Promise<CanvasFile[]>;
|
|
62
|
+
}
|
|
63
|
+
export declare const slackApiClient: {
|
|
64
|
+
listChannels: (token: string, options: ListChannelsOptions) => Promise<Channel[]>;
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=slack-client-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slack-client-service.d.ts","sourceRoot":"","sources":["../../src/utils/slack-client-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.slackApiClient = exports.SlackApiClient = void 0;
|
|
4
|
+
const base_client_1 = require("./slack-operations/base-client");
|
|
5
|
+
const canvas_operations_1 = require("./slack-operations/canvas-operations");
|
|
6
|
+
const channel_operations_1 = require("./slack-operations/channel-operations");
|
|
7
|
+
const file_operations_1 = require("./slack-operations/file-operations");
|
|
8
|
+
const message_operations_1 = require("./slack-operations/message-operations");
|
|
9
|
+
const pin_operations_1 = require("./slack-operations/pin-operations");
|
|
10
|
+
const reaction_operations_1 = require("./slack-operations/reaction-operations");
|
|
11
|
+
const reminder_operations_1 = require("./slack-operations/reminder-operations");
|
|
12
|
+
const search_operations_1 = require("./slack-operations/search-operations");
|
|
13
|
+
const star_operations_1 = require("./slack-operations/star-operations");
|
|
14
|
+
const user_operations_1 = require("./slack-operations/user-operations");
|
|
15
|
+
class SlackApiClient {
|
|
16
|
+
constructor(token) {
|
|
17
|
+
const sharedContext = (0, base_client_1.createSlackClientContext)(token);
|
|
18
|
+
this.channelOps = new channel_operations_1.ChannelOperations(sharedContext);
|
|
19
|
+
this.messageOps = new message_operations_1.MessageOperations(sharedContext, this.channelOps);
|
|
20
|
+
this.fileOps = new file_operations_1.FileOperations(sharedContext, this.channelOps);
|
|
21
|
+
this.reactionOps = new reaction_operations_1.ReactionOperations(sharedContext, this.channelOps);
|
|
22
|
+
this.pinOps = new pin_operations_1.PinOperations(sharedContext, this.channelOps);
|
|
23
|
+
this.userOps = new user_operations_1.UserOperations(sharedContext);
|
|
24
|
+
this.searchOps = new search_operations_1.SearchOperations(sharedContext);
|
|
25
|
+
this.reminderOps = new reminder_operations_1.ReminderOperations(sharedContext);
|
|
26
|
+
this.starOps = new star_operations_1.StarOperations(sharedContext);
|
|
27
|
+
this.canvasOps = new canvas_operations_1.CanvasOperations(sharedContext, this.channelOps);
|
|
28
|
+
}
|
|
29
|
+
async sendMessage(channel, text, thread_ts) {
|
|
30
|
+
return this.messageOps.sendMessage(channel, text, thread_ts);
|
|
31
|
+
}
|
|
32
|
+
async sendEphemeralMessage(channel, user, text, thread_ts) {
|
|
33
|
+
return this.messageOps.sendEphemeralMessage(channel, user, text, thread_ts);
|
|
34
|
+
}
|
|
35
|
+
async scheduleMessage(channel, text, post_at, thread_ts) {
|
|
36
|
+
return this.messageOps.scheduleMessage(channel, text, post_at, thread_ts);
|
|
37
|
+
}
|
|
38
|
+
async updateMessage(channel, ts, text) {
|
|
39
|
+
return this.messageOps.updateMessage(channel, ts, text);
|
|
40
|
+
}
|
|
41
|
+
async deleteMessage(channel, ts) {
|
|
42
|
+
return this.messageOps.deleteMessage(channel, ts);
|
|
43
|
+
}
|
|
44
|
+
async listScheduledMessages(channel, limit = 50) {
|
|
45
|
+
return this.messageOps.listScheduledMessages(channel, limit);
|
|
46
|
+
}
|
|
47
|
+
async cancelScheduledMessage(channel, scheduledMessageId) {
|
|
48
|
+
return this.messageOps.cancelScheduledMessage(channel, scheduledMessageId);
|
|
49
|
+
}
|
|
50
|
+
async listChannels(options) {
|
|
51
|
+
return this.channelOps.listChannels(options);
|
|
52
|
+
}
|
|
53
|
+
async getChannelDetail(channelNameOrId) {
|
|
54
|
+
return this.channelOps.getChannelDetail(channelNameOrId);
|
|
55
|
+
}
|
|
56
|
+
async setTopic(channelNameOrId, topic) {
|
|
57
|
+
return this.channelOps.setTopic(channelNameOrId, topic);
|
|
58
|
+
}
|
|
59
|
+
async setPurpose(channelNameOrId, purpose) {
|
|
60
|
+
return this.channelOps.setPurpose(channelNameOrId, purpose);
|
|
61
|
+
}
|
|
62
|
+
async getHistory(channel, options) {
|
|
63
|
+
return this.messageOps.getHistory(channel, options);
|
|
64
|
+
}
|
|
65
|
+
async getThreadHistory(channel, threadTs) {
|
|
66
|
+
return this.messageOps.getThreadHistory(channel, threadTs);
|
|
67
|
+
}
|
|
68
|
+
async listUnreadChannels() {
|
|
69
|
+
try {
|
|
70
|
+
const channels = await this.searchOps.listUnreadChannels();
|
|
71
|
+
return await this.channelOps.enrichUnreadChannels(channels);
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
return this.channelOps.listUnreadChannels();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
async getChannelUnread(channelNameOrId) {
|
|
78
|
+
return this.messageOps.getChannelUnread(channelNameOrId);
|
|
79
|
+
}
|
|
80
|
+
async markAsRead(channelId) {
|
|
81
|
+
return this.messageOps.markAsRead(channelId);
|
|
82
|
+
}
|
|
83
|
+
async getPermalink(channel, messageTs) {
|
|
84
|
+
return this.messageOps.getPermalink(channel, messageTs);
|
|
85
|
+
}
|
|
86
|
+
async getPermalinks(channel, messageTimestamps) {
|
|
87
|
+
return this.messageOps.getPermalinks(channel, messageTimestamps);
|
|
88
|
+
}
|
|
89
|
+
async uploadFile(options) {
|
|
90
|
+
return this.fileOps.uploadFile(options);
|
|
91
|
+
}
|
|
92
|
+
async downloadFile(urlPrivateDownload, destPath) {
|
|
93
|
+
return this.fileOps.downloadFile(urlPrivateDownload, destPath);
|
|
94
|
+
}
|
|
95
|
+
async resolveChannelId(channelNameOrId) {
|
|
96
|
+
return this.channelOps.resolveChannelId(channelNameOrId);
|
|
97
|
+
}
|
|
98
|
+
async addReaction(channel, timestamp, emoji) {
|
|
99
|
+
return this.reactionOps.addReaction(channel, timestamp, emoji);
|
|
100
|
+
}
|
|
101
|
+
async removeReaction(channel, timestamp, emoji) {
|
|
102
|
+
return this.reactionOps.removeReaction(channel, timestamp, emoji);
|
|
103
|
+
}
|
|
104
|
+
async addPin(channel, timestamp) {
|
|
105
|
+
return this.pinOps.addPin(channel, timestamp);
|
|
106
|
+
}
|
|
107
|
+
async removePin(channel, timestamp) {
|
|
108
|
+
return this.pinOps.removePin(channel, timestamp);
|
|
109
|
+
}
|
|
110
|
+
async listPins(channel) {
|
|
111
|
+
return this.pinOps.listPins(channel);
|
|
112
|
+
}
|
|
113
|
+
async listUsers(limit) {
|
|
114
|
+
return this.userOps.listUsers(limit);
|
|
115
|
+
}
|
|
116
|
+
async getUserInfo(userId) {
|
|
117
|
+
return this.userOps.getUserInfo(userId);
|
|
118
|
+
}
|
|
119
|
+
async lookupUserByEmail(email) {
|
|
120
|
+
return this.userOps.lookupByEmail(email);
|
|
121
|
+
}
|
|
122
|
+
async openDmChannel(userId) {
|
|
123
|
+
return this.userOps.openDmChannel(userId);
|
|
124
|
+
}
|
|
125
|
+
async getUserPresence(userId) {
|
|
126
|
+
return this.userOps.getPresence(userId);
|
|
127
|
+
}
|
|
128
|
+
async resolveUserIdByName(username) {
|
|
129
|
+
return this.userOps.resolveUserIdByName(username);
|
|
130
|
+
}
|
|
131
|
+
async searchMessages(query, options) {
|
|
132
|
+
return this.searchOps.searchMessages(query, options);
|
|
133
|
+
}
|
|
134
|
+
async joinChannel(channelNameOrId) {
|
|
135
|
+
return this.channelOps.joinChannel(channelNameOrId);
|
|
136
|
+
}
|
|
137
|
+
async leaveChannel(channelNameOrId) {
|
|
138
|
+
return this.channelOps.leaveChannel(channelNameOrId);
|
|
139
|
+
}
|
|
140
|
+
async inviteToChannel(channelNameOrId, userIds, force) {
|
|
141
|
+
return this.channelOps.inviteToChannel(channelNameOrId, userIds, force);
|
|
142
|
+
}
|
|
143
|
+
async getChannelMembers(channelNameOrId, options) {
|
|
144
|
+
return this.channelOps.getChannelMembers(channelNameOrId, options);
|
|
145
|
+
}
|
|
146
|
+
async addReminder(text, time) {
|
|
147
|
+
return this.reminderOps.addReminder(text, time);
|
|
148
|
+
}
|
|
149
|
+
async listReminders() {
|
|
150
|
+
return this.reminderOps.listReminders();
|
|
151
|
+
}
|
|
152
|
+
async deleteReminder(reminderId) {
|
|
153
|
+
return this.reminderOps.deleteReminder(reminderId);
|
|
154
|
+
}
|
|
155
|
+
async completeReminder(reminderId) {
|
|
156
|
+
return this.reminderOps.completeReminder(reminderId);
|
|
157
|
+
}
|
|
158
|
+
async addStar(channel, timestamp) {
|
|
159
|
+
return this.starOps.addStar(channel, timestamp);
|
|
160
|
+
}
|
|
161
|
+
async listStars(count) {
|
|
162
|
+
return this.starOps.listStars(count);
|
|
163
|
+
}
|
|
164
|
+
async removeStar(channel, timestamp) {
|
|
165
|
+
return this.starOps.removeStar(channel, timestamp);
|
|
166
|
+
}
|
|
167
|
+
async readCanvas(canvasId) {
|
|
168
|
+
return this.canvasOps.readCanvas(canvasId);
|
|
169
|
+
}
|
|
170
|
+
async listCanvases(channel) {
|
|
171
|
+
return this.canvasOps.listCanvases(channel);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
exports.SlackApiClient = SlackApiClient;
|
|
175
|
+
exports.slackApiClient = {
|
|
176
|
+
listChannels: async (token, options) => {
|
|
177
|
+
const client = new SlackApiClient(token);
|
|
178
|
+
return client.listChannels(options);
|
|
179
|
+
},
|
|
180
|
+
};
|
|
181
|
+
//# sourceMappingURL=slack-client-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slack-client-service.js","sourceRoot":"","sources":["../../src/utils/slack-client-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { WebClient } from '@slack/web-api';
|
|
2
|
+
import pLimit from 'p-limit';
|
|
3
|
+
export interface SharedSlackClientContext {
|
|
4
|
+
client: WebClient;
|
|
5
|
+
rateLimiter: ReturnType<typeof pLimit>;
|
|
6
|
+
token?: string;
|
|
7
|
+
}
|
|
8
|
+
export type SlackClientDependency = string | WebClient | SharedSlackClientContext;
|
|
9
|
+
export declare function createSlackClientContext(token: string): SharedSlackClientContext;
|
|
10
|
+
export declare class BaseSlackClient {
|
|
11
|
+
protected client: WebClient;
|
|
12
|
+
protected rateLimiter: ReturnType<typeof pLimit>;
|
|
13
|
+
protected token?: string;
|
|
14
|
+
constructor(dependency: SlackClientDependency);
|
|
15
|
+
protected handleRateLimit(error: unknown): Promise<void>;
|
|
16
|
+
protected delay(ms: number): Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=base-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-client.d.ts","sourceRoot":"","sources":["../../../src/utils/slack-operations/base-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,MAAM,MAAM,SAAS,CAAC;AAG7B,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,GAAG,wBAAwB,CAAC;AAElF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,CAWhF;AAED,qBAAa,eAAe;IAC1B,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC;IAC5B,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;IACjD,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;gBAEb,UAAU,EAAE,qBAAqB;cAoB7B,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;cAO9C,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGjD"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.BaseSlackClient = void 0;
|
|
7
|
+
exports.createSlackClientContext = createSlackClientContext;
|
|
8
|
+
const web_api_1 = require("@slack/web-api");
|
|
9
|
+
const p_limit_1 = __importDefault(require("p-limit"));
|
|
10
|
+
const constants_1 = require("../constants");
|
|
11
|
+
function createSlackClientContext(token) {
|
|
12
|
+
return {
|
|
13
|
+
client: new web_api_1.WebClient(token, {
|
|
14
|
+
retryConfig: {
|
|
15
|
+
retries: 0, // Disable automatic retries to handle rate limits manually
|
|
16
|
+
},
|
|
17
|
+
logLevel: web_api_1.LogLevel.ERROR, // Reduce noise from WebClient logs
|
|
18
|
+
}),
|
|
19
|
+
rateLimiter: (0, p_limit_1.default)(constants_1.RATE_LIMIT.CONCURRENT_REQUESTS),
|
|
20
|
+
token,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
class BaseSlackClient {
|
|
24
|
+
constructor(dependency) {
|
|
25
|
+
if (typeof dependency === 'string') {
|
|
26
|
+
const context = createSlackClientContext(dependency);
|
|
27
|
+
this.client = context.client;
|
|
28
|
+
this.rateLimiter = context.rateLimiter;
|
|
29
|
+
this.token = context.token;
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if ('client' in dependency && 'rateLimiter' in dependency) {
|
|
33
|
+
this.client = dependency.client;
|
|
34
|
+
this.rateLimiter = dependency.rateLimiter;
|
|
35
|
+
this.token = dependency.token;
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
this.client = dependency;
|
|
39
|
+
this.rateLimiter = (0, p_limit_1.default)(constants_1.RATE_LIMIT.CONCURRENT_REQUESTS);
|
|
40
|
+
}
|
|
41
|
+
async handleRateLimit(error) {
|
|
42
|
+
if (error instanceof Error && error.message?.includes('rate limit')) {
|
|
43
|
+
// If we hit rate limit, wait longer
|
|
44
|
+
await new Promise((resolve) => setTimeout(resolve, 5000));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
async delay(ms) {
|
|
48
|
+
await new Promise((resolve) => setTimeout(resolve, ms));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.BaseSlackClient = BaseSlackClient;
|
|
52
|
+
//# sourceMappingURL=base-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-client.js","sourceRoot":"","sources":["../../../src/utils/slack-operations/base-client.ts"],"names":[],"mappings":";;;;;;AAYA,4DAWC;AAvBD,4CAAqD;AACrD,sDAA6B;AAC7B,4CAA0C;AAU1C,SAAgB,wBAAwB,CAAC,KAAa;IACpD,OAAO;QACL,MAAM,EAAE,IAAI,mBAAS,CAAC,KAAK,EAAE;YAC3B,WAAW,EAAE;gBACX,OAAO,EAAE,CAAC,EAAE,2DAA2D;aACxE;YACD,QAAQ,EAAE,kBAAQ,CAAC,KAAK,EAAE,mCAAmC;SAC9D,CAAC;QACF,WAAW,EAAE,IAAA,iBAAM,EAAC,sBAAU,CAAC,mBAAmB,CAAC;QACnD,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAa,eAAe;IAK1B,YAAY,UAAiC;QAC3C,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC7B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,IAAI,UAAU,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;YAC1D,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;YAC1C,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,IAAA,iBAAM,EAAC,sBAAU,CAAC,mBAAmB,CAAC,CAAC;IAC5D,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,KAAc;QAC5C,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACpE,oCAAoC;YACpC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAES,KAAK,CAAC,KAAK,CAAC,EAAU;QAC9B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC;CACF;AAnCD,0CAmCC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CanvasFile, CanvasSection } from '../../types/slack';
|
|
2
|
+
import { BaseSlackClient, SlackClientDependency } from './base-client';
|
|
3
|
+
import { ChannelOperations } from './channel-operations';
|
|
4
|
+
export declare class CanvasOperations extends BaseSlackClient {
|
|
5
|
+
private channelOps;
|
|
6
|
+
constructor(dependency: SlackClientDependency, channelOps?: ChannelOperations);
|
|
7
|
+
readCanvas(canvasId: string): Promise<CanvasSection[]>;
|
|
8
|
+
listCanvases(channel: string): Promise<CanvasFile[]>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=canvas-operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas-operations.d.ts","sourceRoot":"","sources":["../../../src/utils/slack-operations/canvas-operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,gBAAiB,SAAQ,eAAe;IACnD,OAAO,CAAC,UAAU,CAAoB;gBAE1B,UAAU,EAAE,qBAAqB,EAAE,UAAU,CAAC,EAAE,iBAAiB;IAKvE,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQtD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAQ3D"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CanvasOperations = void 0;
|
|
4
|
+
const base_client_1 = require("./base-client");
|
|
5
|
+
const channel_operations_1 = require("./channel-operations");
|
|
6
|
+
class CanvasOperations extends base_client_1.BaseSlackClient {
|
|
7
|
+
constructor(dependency, channelOps) {
|
|
8
|
+
super(dependency);
|
|
9
|
+
this.channelOps = channelOps ?? new channel_operations_1.ChannelOperations(dependency);
|
|
10
|
+
}
|
|
11
|
+
async readCanvas(canvasId) {
|
|
12
|
+
const response = await this.client.canvases.sections.lookup({
|
|
13
|
+
canvas_id: canvasId,
|
|
14
|
+
criteria: { section_types: ['any_header'] },
|
|
15
|
+
});
|
|
16
|
+
return (response.sections || []);
|
|
17
|
+
}
|
|
18
|
+
async listCanvases(channel) {
|
|
19
|
+
const channelId = await this.channelOps.resolveChannelId(channel);
|
|
20
|
+
const response = await this.client.files.list({
|
|
21
|
+
channel: channelId,
|
|
22
|
+
types: 'spaces',
|
|
23
|
+
});
|
|
24
|
+
return (response.files || []);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.CanvasOperations = CanvasOperations;
|
|
28
|
+
//# sourceMappingURL=canvas-operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas-operations.js","sourceRoot":"","sources":["../../../src/utils/slack-operations/canvas-operations.ts"],"names":[],"mappings":";;;AACA,+CAAuE;AACvE,6DAAyD;AAEzD,MAAa,gBAAiB,SAAQ,6BAAe;IAGnD,YAAY,UAAiC,EAAE,UAA8B;QAC3E,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,IAAI,sCAAiB,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC1D,SAAS,EAAE,QAAQ;YACnB,QAAQ,EAAE,EAAE,aAAa,EAAE,CAAC,YAAY,CAAC,EAAE;SAC5C,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAoB,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAe;QAChC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5C,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,QAAQ;SAChB,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAiB,CAAC;IAChD,CAAC;CACF;AAxBD,4CAwBC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Channel, ChannelDetail, ChannelMembersOptions, ChannelMembersResult, ListChannelsOptions } from '../../types/slack';
|
|
2
|
+
import { BaseSlackClient, SlackClientDependency } from './base-client';
|
|
3
|
+
interface ChannelWithUnreadInfo extends Channel {
|
|
4
|
+
unread_count: number;
|
|
5
|
+
unread_count_display: number;
|
|
6
|
+
last_read?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class ChannelOperations extends BaseSlackClient {
|
|
9
|
+
private channelLookupCache?;
|
|
10
|
+
constructor(tokenOrClient: SlackClientDependency);
|
|
11
|
+
listChannels(options: ListChannelsOptions): Promise<Channel[]>;
|
|
12
|
+
listUnreadChannels(): Promise<Channel[]>;
|
|
13
|
+
fetchUserChannels(): Promise<Channel[]>;
|
|
14
|
+
enrichUnreadChannels(channels: Channel[]): Promise<Channel[]>;
|
|
15
|
+
resolveChannelId(channelNameOrId: string): Promise<string>;
|
|
16
|
+
private getChannelLookupCache;
|
|
17
|
+
private fetchChannelLookupChannels;
|
|
18
|
+
private getFallbackChannelLookupTypes;
|
|
19
|
+
private getChannelUnreadInfo;
|
|
20
|
+
private fetchChannelInfo;
|
|
21
|
+
private resolveChannelDisplayName;
|
|
22
|
+
private buildUnreadChannel;
|
|
23
|
+
getChannelInfo(channelNameOrId: string): Promise<ChannelWithUnreadInfo>;
|
|
24
|
+
getChannelDetail(channelNameOrId: string): Promise<ChannelDetail>;
|
|
25
|
+
setTopic(channelNameOrId: string, topic: string): Promise<void>;
|
|
26
|
+
setPurpose(channelNameOrId: string, purpose: string): Promise<void>;
|
|
27
|
+
joinChannel(channelNameOrId: string): Promise<void>;
|
|
28
|
+
leaveChannel(channelNameOrId: string): Promise<void>;
|
|
29
|
+
inviteToChannel(channelNameOrId: string, userIds: string[], force?: boolean): Promise<void>;
|
|
30
|
+
getChannelMembers(channelNameOrId: string, options?: ChannelMembersOptions): Promise<ChannelMembersResult>;
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=channel-operations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-operations.d.ts","sourceRoot":"","sources":["../../../src/utils/slack-operations/channel-operations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEvE,UAAU,qBAAsB,SAAQ,OAAO;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,OAAO,CAAC,kBAAkB,CAAC,CAAqB;gBAEpC,aAAa,EAAE,qBAAqB;IAI1C,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAsB9D,kBAAkB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAmBxC,iBAAiB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAsBvC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAwB7D,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMhE,OAAO,CAAC,qBAAqB;YAWf,0BAA0B;IAuBxC,OAAO,CAAC,6BAA6B;YA0BvB,oBAAoB;YAoBpB,gBAAgB;YAmBhB,yBAAyB;YA6BzB,kBAAkB;IAwB1B,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAUvE,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAWjE,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/D,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASnE,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD,YAAY,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQpD,eAAe,CACnB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAAE,EACjB,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC;IAUV,iBAAiB,CACrB,eAAe,EAAE,MAAM,EACvB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,CAAC;CAcjC"}
|