@urugus/slack-cli 0.1.5 → 0.1.7
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/.claude/settings.local.json +2 -1
- package/CHANGELOG.md +39 -0
- package/dist/commands/unread.d.ts.map +1 -1
- package/dist/commands/unread.js +6 -49
- package/dist/commands/unread.js.map +1 -1
- package/dist/utils/channel-resolver.d.ts +26 -0
- package/dist/utils/channel-resolver.d.ts.map +1 -0
- package/dist/utils/channel-resolver.js +74 -0
- package/dist/utils/channel-resolver.js.map +1 -0
- package/dist/utils/constants.d.ts +17 -0
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/constants.js +21 -1
- package/dist/utils/constants.js.map +1 -1
- package/dist/utils/formatters/channel-formatters.d.ts +16 -0
- package/dist/utils/formatters/channel-formatters.d.ts.map +1 -0
- package/dist/utils/formatters/channel-formatters.js +73 -0
- package/dist/utils/formatters/channel-formatters.js.map +1 -0
- package/dist/utils/formatters/output-formatter.d.ts +7 -0
- package/dist/utils/formatters/output-formatter.d.ts.map +1 -0
- package/dist/utils/formatters/output-formatter.js +7 -0
- package/dist/utils/formatters/output-formatter.js.map +1 -0
- package/dist/utils/profile-config.d.ts.map +1 -1
- package/dist/utils/profile-config.js +5 -3
- package/dist/utils/profile-config.js.map +1 -1
- package/dist/utils/slack-api-client.d.ts +2 -0
- package/dist/utils/slack-api-client.d.ts.map +1 -1
- package/dist/utils/slack-api-client.js +67 -96
- package/dist/utils/slack-api-client.js.map +1 -1
- package/package.json +5 -4
- package/src/commands/unread.ts +11 -52
- package/src/utils/channel-resolver.ts +86 -0
- package/src/utils/constants.ts +23 -0
- package/src/utils/formatters/channel-formatters.ts +69 -0
- package/src/utils/formatters/output-formatter.ts +7 -0
- package/src/utils/profile-config.ts +7 -5
- package/src/utils/slack-api-client.ts +81 -105
- package/tests/commands/unread.test.ts +31 -0
- package/tests/utils/channel-resolver.test.ts +157 -0
- package/tests/utils/slack-api-client.test.ts +12 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [0.1.7] - 2025-06-22
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
- Resolved rate limiting issues with `slack unread` command
|
|
9
|
+
- Disabled WebClient automatic retries to handle rate limits manually
|
|
10
|
+
- Changed to use users.conversations API for more efficient unread retrieval
|
|
11
|
+
- Added fallback mechanism for better compatibility
|
|
12
|
+
|
|
13
|
+
## [0.1.6] - 2025-06-22
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
- Channel resolver abstraction for better code reusability
|
|
17
|
+
- Output formatter abstraction for flexible display formats
|
|
18
|
+
- Rate limiting configuration with exponential backoff
|
|
19
|
+
- Better error messages with channel suggestions
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
- Improved rate limiting handling to prevent infinite retry loops
|
|
23
|
+
- Extracted magic numbers into configuration constants
|
|
24
|
+
- Refactored SlackApiClient to reduce complexity
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
- Fixed infinite loop when hitting Slack API rate limits
|
|
28
|
+
- Replaced all `any` types with proper type definitions
|
|
29
|
+
- Fixed CommonJS compatibility issues with p-limit
|
|
30
|
+
|
|
31
|
+
## [0.1.5] - Previous releases
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
- Initial implementation of Slack CLI
|
|
35
|
+
- Support for sending messages
|
|
36
|
+
- Channel listing functionality
|
|
37
|
+
- Message history retrieval
|
|
38
|
+
- Unread message tracking
|
|
39
|
+
- Multi-profile support
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unread.d.ts","sourceRoot":"","sources":["../../src/commands/unread.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"unread.d.ts","sourceRoot":"","sources":["../../src/commands/unread.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmDpC,wBAAgB,kBAAkB,IAAI,OAAO,CAyB5C"}
|
package/dist/commands/unread.js
CHANGED
|
@@ -10,6 +10,8 @@ const client_factory_1 = require("../utils/client-factory");
|
|
|
10
10
|
const chalk_1 = __importDefault(require("chalk"));
|
|
11
11
|
const date_utils_1 = require("../utils/date-utils");
|
|
12
12
|
const channel_formatter_1 = require("../utils/channel-formatter");
|
|
13
|
+
const channel_formatters_1 = require("../utils/formatters/channel-formatters");
|
|
14
|
+
const constants_1 = require("../utils/constants");
|
|
13
15
|
async function handleSpecificChannelUnread(client, options) {
|
|
14
16
|
const result = await client.getChannelUnread(options.channel);
|
|
15
17
|
const channelName = (0, channel_formatter_1.formatChannelName)(result.channel.name);
|
|
@@ -32,55 +34,10 @@ async function handleAllChannelsUnread(client, options) {
|
|
|
32
34
|
return;
|
|
33
35
|
}
|
|
34
36
|
// Apply limit
|
|
35
|
-
const limit = parseInt(options.limit ||
|
|
37
|
+
const limit = parseInt(options.limit || constants_1.DEFAULTS.UNREAD_DISPLAY_LIMIT.toString(), 10);
|
|
36
38
|
const displayChannels = channels.slice(0, limit);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
else if (options.format === 'json') {
|
|
41
|
-
displayAsJson(displayChannels);
|
|
42
|
-
}
|
|
43
|
-
else if (options.format === 'simple') {
|
|
44
|
-
displayAsSimple(displayChannels);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
displayAsTable(displayChannels);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
function displayCountOnly(channels) {
|
|
51
|
-
let totalUnread = 0;
|
|
52
|
-
channels.forEach((channel) => {
|
|
53
|
-
const count = channel.unread_count || 0;
|
|
54
|
-
totalUnread += count;
|
|
55
|
-
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
56
|
-
console.log(`${channelName}: ${count}`);
|
|
57
|
-
});
|
|
58
|
-
console.log(chalk_1.default.bold(`Total: ${totalUnread} unread messages`));
|
|
59
|
-
}
|
|
60
|
-
function displayAsJson(channels) {
|
|
61
|
-
const output = channels.map((channel) => ({
|
|
62
|
-
channel: (0, channel_formatter_1.formatChannelName)(channel.name),
|
|
63
|
-
channelId: channel.id,
|
|
64
|
-
unreadCount: channel.unread_count || 0,
|
|
65
|
-
}));
|
|
66
|
-
console.log(JSON.stringify(output, null, 2));
|
|
67
|
-
}
|
|
68
|
-
function displayAsSimple(channels) {
|
|
69
|
-
channels.forEach((channel) => {
|
|
70
|
-
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
71
|
-
console.log(`${channelName} (${channel.unread_count || 0})`);
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
function displayAsTable(channels) {
|
|
75
|
-
console.log(chalk_1.default.bold('Channel Unread Last Message'));
|
|
76
|
-
console.log('─'.repeat(50));
|
|
77
|
-
channels.forEach((channel) => {
|
|
78
|
-
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
79
|
-
const paddedName = channelName.padEnd(16);
|
|
80
|
-
const count = (channel.unread_count || 0).toString().padEnd(6);
|
|
81
|
-
const lastRead = channel.last_read ? (0, date_utils_1.formatSlackTimestamp)(channel.last_read) : 'Unknown';
|
|
82
|
-
console.log(`${paddedName} ${count} ${lastRead}`);
|
|
83
|
-
});
|
|
39
|
+
const formatter = (0, channel_formatters_1.createChannelFormatter)(options.format || 'table', options.countOnly || false);
|
|
40
|
+
formatter.format(displayChannels);
|
|
84
41
|
}
|
|
85
42
|
function setupUnreadCommand() {
|
|
86
43
|
const unreadCommand = new commander_1.Command('unread')
|
|
@@ -88,7 +45,7 @@ function setupUnreadCommand() {
|
|
|
88
45
|
.option('-c, --channel <channel>', 'Show unread for a specific channel')
|
|
89
46
|
.option('--format <format>', 'Output format: table, simple, json', 'table')
|
|
90
47
|
.option('--count-only', 'Show only unread counts', false)
|
|
91
|
-
.option('--limit <number>', 'Maximum number of channels to display',
|
|
48
|
+
.option('--limit <number>', 'Maximum number of channels to display', constants_1.DEFAULTS.UNREAD_DISPLAY_LIMIT.toString())
|
|
92
49
|
.option('--profile <profile>', 'Use specific workspace profile')
|
|
93
50
|
.action((0, command_wrapper_1.wrapCommand)(async (options) => {
|
|
94
51
|
const client = await (0, client_factory_1.createSlackClient)(options.profile);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unread.js","sourceRoot":"","sources":["../../src/commands/unread.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"unread.js","sourceRoot":"","sources":["../../src/commands/unread.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Channel } from './slack-api-client';
|
|
2
|
+
export type GetChannelsFunction = () => Promise<Channel[]>;
|
|
3
|
+
export declare class ChannelResolver {
|
|
4
|
+
/**
|
|
5
|
+
* Check if the given string is a channel ID
|
|
6
|
+
*/
|
|
7
|
+
isChannelId(channelNameOrId: string): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Find a channel by name from the given list
|
|
10
|
+
*/
|
|
11
|
+
findChannel(channelName: string, channels: Channel[]): Channel | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* Get similar channel names for suggestions
|
|
14
|
+
*/
|
|
15
|
+
getSimilarChannels(channelName: string, channels: Channel[], limit?: number): string[];
|
|
16
|
+
/**
|
|
17
|
+
* Create an error with channel suggestions
|
|
18
|
+
*/
|
|
19
|
+
resolveChannelError(channelName: string, channels: Channel[]): Error;
|
|
20
|
+
/**
|
|
21
|
+
* Resolve a channel name or ID to a channel ID
|
|
22
|
+
*/
|
|
23
|
+
resolveChannelId(channelNameOrId: string, getChannels: GetChannelsFunction): Promise<string>;
|
|
24
|
+
}
|
|
25
|
+
export declare const channelResolver: ChannelResolver;
|
|
26
|
+
//# sourceMappingURL=channel-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/channel-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AAE3D,qBAAa,eAAe;IAC1B;;OAEG;IACH,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO;IAQ7C;;OAEG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,GAAG,SAAS;IAc1E;;OAEG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,SAAI,GAAG,MAAM,EAAE;IAOjF;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK;IAcpE;;OAEG;IACG,gBAAgB,CACpB,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,mBAAmB,GAC/B,OAAO,CAAC,MAAM,CAAC;CAgBnB;AAGD,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.channelResolver = exports.ChannelResolver = void 0;
|
|
4
|
+
class ChannelResolver {
|
|
5
|
+
/**
|
|
6
|
+
* Check if the given string is a channel ID
|
|
7
|
+
*/
|
|
8
|
+
isChannelId(channelNameOrId) {
|
|
9
|
+
return (channelNameOrId.startsWith('C') ||
|
|
10
|
+
channelNameOrId.startsWith('D') ||
|
|
11
|
+
channelNameOrId.startsWith('G'));
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Find a channel by name from the given list
|
|
15
|
+
*/
|
|
16
|
+
findChannel(channelName, channels) {
|
|
17
|
+
return channels.find((c) => {
|
|
18
|
+
// Direct name match
|
|
19
|
+
if (c.name === channelName)
|
|
20
|
+
return true;
|
|
21
|
+
// Match without # prefix
|
|
22
|
+
if (c.name === channelName.replace('#', ''))
|
|
23
|
+
return true;
|
|
24
|
+
// Case-insensitive match
|
|
25
|
+
if (c.name?.toLowerCase() === channelName.toLowerCase())
|
|
26
|
+
return true;
|
|
27
|
+
// Match with normalized name
|
|
28
|
+
if (c.name_normalized === channelName)
|
|
29
|
+
return true;
|
|
30
|
+
return false;
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get similar channel names for suggestions
|
|
35
|
+
*/
|
|
36
|
+
getSimilarChannels(channelName, channels, limit = 5) {
|
|
37
|
+
return channels
|
|
38
|
+
.filter((c) => c.name?.toLowerCase().includes(channelName.toLowerCase()))
|
|
39
|
+
.slice(0, limit)
|
|
40
|
+
.map((c) => c.name);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Create an error with channel suggestions
|
|
44
|
+
*/
|
|
45
|
+
resolveChannelError(channelName, channels) {
|
|
46
|
+
const similarChannels = this.getSimilarChannels(channelName, channels);
|
|
47
|
+
if (similarChannels.length > 0) {
|
|
48
|
+
return new Error(`Channel '${channelName}' not found. Did you mean one of these? ${similarChannels.join(', ')}`);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
return new Error(`Channel '${channelName}' not found. Make sure you are a member of this channel.`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Resolve a channel name or ID to a channel ID
|
|
56
|
+
*/
|
|
57
|
+
async resolveChannelId(channelNameOrId, getChannels) {
|
|
58
|
+
// If it's already an ID, return it
|
|
59
|
+
if (this.isChannelId(channelNameOrId)) {
|
|
60
|
+
return channelNameOrId;
|
|
61
|
+
}
|
|
62
|
+
// Otherwise, fetch channels and resolve the name
|
|
63
|
+
const channels = await getChannels();
|
|
64
|
+
const channel = this.findChannel(channelNameOrId, channels);
|
|
65
|
+
if (!channel) {
|
|
66
|
+
throw this.resolveChannelError(channelNameOrId, channels);
|
|
67
|
+
}
|
|
68
|
+
return channel.id;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
exports.ChannelResolver = ChannelResolver;
|
|
72
|
+
// Export a singleton instance
|
|
73
|
+
exports.channelResolver = new ChannelResolver();
|
|
74
|
+
//# sourceMappingURL=channel-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-resolver.js","sourceRoot":"","sources":["../../src/utils/channel-resolver.ts"],"names":[],"mappings":";;;AAIA,MAAa,eAAe;IAC1B;;OAEG;IACH,WAAW,CAAC,eAAuB;QACjC,OAAO,CACL,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;YAC/B,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;YAC/B,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,CAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,WAAmB,EAAE,QAAmB;QAClD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,oBAAoB;YACpB,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YACxC,yBAAyB;YACzB,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;YACzD,yBAAyB;YACzB,IAAI,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE;gBAAE,OAAO,IAAI,CAAC;YACrE,6BAA6B;YAC7B,IAAI,CAAC,CAAC,eAAe,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,WAAmB,EAAE,QAAmB,EAAE,KAAK,GAAG,CAAC;QACpE,OAAO,QAAQ;aACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;aACxE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;aACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,WAAmB,EAAE,QAAmB;QAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEvE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,KAAK,CACd,YAAY,WAAW,2CAA2C,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/F,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,KAAK,CACd,YAAY,WAAW,0DAA0D,CAClF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,eAAuB,EACvB,WAAgC;QAEhC,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC;YACtC,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,iDAAiD;QACjD,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,OAAO,CAAC,EAAE,CAAC;IACpB,CAAC;CACF;AA9ED,0CA8EC;AAED,8BAA8B;AACjB,QAAA,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC"}
|
|
@@ -29,4 +29,21 @@ export declare const API_LIMITS: {
|
|
|
29
29
|
MIN_MESSAGE_COUNT: number;
|
|
30
30
|
DEFAULT_MESSAGE_COUNT: number;
|
|
31
31
|
};
|
|
32
|
+
export declare const RATE_LIMIT: {
|
|
33
|
+
CONCURRENT_REQUESTS: number;
|
|
34
|
+
BATCH_SIZE: number;
|
|
35
|
+
BATCH_DELAY_MS: number;
|
|
36
|
+
RETRY_CONFIG: {
|
|
37
|
+
retries: number;
|
|
38
|
+
factor: number;
|
|
39
|
+
minTimeout: number;
|
|
40
|
+
maxTimeout: number;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
export declare const DEFAULTS: {
|
|
44
|
+
HISTORY_LIMIT: number;
|
|
45
|
+
CHANNELS_LIMIT: number;
|
|
46
|
+
UNREAD_DISPLAY_LIMIT: number;
|
|
47
|
+
};
|
|
48
|
+
export declare const TIME_FORMAT = "YYYY-MM-DD HH:mm:ss";
|
|
32
49
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAE9C,eAAO,MAAM,cAAc;sCAEA,MAAM;8CAEE,MAAM;;;;;gCASpB,MAAM;0CACI,MAAM;qCAGX,MAAM,SAAS,MAAM;oCACtB,MAAM;;6CAIG,MAAM;CAC9B,CAAC;AAEX,eAAO,MAAM,gBAAgB;wCACA,MAAM;6CACD,MAAM;4CACP,MAAM;qCACb,MAAM;CACtB,CAAC;AAGX,eAAO,MAAM,gBAAgB;;CAE5B,CAAC;AAGF,eAAO,MAAM,UAAU;;;;CAItB,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,oBAAoB,YAAY,CAAC;AAE9C,eAAO,MAAM,cAAc;sCAEA,MAAM;8CAEE,MAAM;;;;;gCASpB,MAAM;0CACI,MAAM;qCAGX,MAAM,SAAS,MAAM;oCACtB,MAAM;;6CAIG,MAAM;CAC9B,CAAC;AAEX,eAAO,MAAM,gBAAgB;wCACA,MAAM;6CACD,MAAM;4CACP,MAAM;qCACb,MAAM;CACtB,CAAC;AAGX,eAAO,MAAM,gBAAgB;;CAE5B,CAAC;AAGF,eAAO,MAAM,UAAU;;;;CAItB,CAAC;AAGF,eAAO,MAAM,UAAU;;;;;;;;;;CAUtB,CAAC;AAGF,eAAO,MAAM,QAAQ;;;;CAIpB,CAAC;AAGF,eAAO,MAAM,WAAW,wBAAwB,CAAC"}
|
package/dist/utils/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.API_LIMITS = exports.FILE_PERMISSIONS = exports.SUCCESS_MESSAGES = exports.ERROR_MESSAGES = exports.DEFAULT_PROFILE_NAME = exports.TOKEN_MIN_LENGTH = exports.TOKEN_MASK_LENGTH = void 0;
|
|
3
|
+
exports.TIME_FORMAT = exports.DEFAULTS = exports.RATE_LIMIT = exports.API_LIMITS = exports.FILE_PERMISSIONS = exports.SUCCESS_MESSAGES = exports.ERROR_MESSAGES = exports.DEFAULT_PROFILE_NAME = exports.TOKEN_MIN_LENGTH = exports.TOKEN_MASK_LENGTH = void 0;
|
|
4
4
|
exports.TOKEN_MASK_LENGTH = 4;
|
|
5
5
|
exports.TOKEN_MIN_LENGTH = 9;
|
|
6
6
|
exports.DEFAULT_PROFILE_NAME = 'default';
|
|
@@ -39,4 +39,24 @@ exports.API_LIMITS = {
|
|
|
39
39
|
MIN_MESSAGE_COUNT: 1,
|
|
40
40
|
DEFAULT_MESSAGE_COUNT: 10,
|
|
41
41
|
};
|
|
42
|
+
// API Rate Limiting Configuration
|
|
43
|
+
exports.RATE_LIMIT = {
|
|
44
|
+
CONCURRENT_REQUESTS: 3,
|
|
45
|
+
BATCH_SIZE: 10,
|
|
46
|
+
BATCH_DELAY_MS: 1000,
|
|
47
|
+
RETRY_CONFIG: {
|
|
48
|
+
retries: 3,
|
|
49
|
+
factor: 2,
|
|
50
|
+
minTimeout: 1000,
|
|
51
|
+
maxTimeout: 30000,
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
// Default values
|
|
55
|
+
exports.DEFAULTS = {
|
|
56
|
+
HISTORY_LIMIT: 20,
|
|
57
|
+
CHANNELS_LIMIT: 1000,
|
|
58
|
+
UNREAD_DISPLAY_LIMIT: 50,
|
|
59
|
+
};
|
|
60
|
+
// Time formats
|
|
61
|
+
exports.TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss';
|
|
42
62
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,CAAC,CAAC;AACtB,QAAA,gBAAgB,GAAG,CAAC,CAAC;AACrB,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAEjC,QAAA,cAAc,GAAG;IAC5B,uBAAuB;IACvB,SAAS,EAAE,CAAC,WAAmB,EAAE,EAAE,CACjC,uCAAuC,WAAW,0DAA0D,WAAW,cAAc;IACvI,iBAAiB,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,YAAY,WAAW,aAAa;IAChF,iBAAiB,EAAE,8EAA8E;IACjG,qBAAqB,EAAE,4BAA4B;IAEnD,oBAAoB;IACpB,kBAAkB,EAAE,6CAA6C;IACjE,qBAAqB,EAAE,sCAAsC;IAE7D,aAAa;IACb,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,cAAc,KAAK,EAAE;IACnD,iBAAiB,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,OAAO,EAAE;IAEvE,cAAc;IACd,eAAe,EAAE,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE,CAAC,sBAAsB,IAAI,KAAK,KAAK,EAAE;IACxF,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,mBAAmB,IAAI,EAAE;IAE3D,0BAA0B;IAC1B,iBAAiB,EAAE,mBAAmB;IACtC,sBAAsB,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,2BAA2B,KAAK,EAAE;CACrE,CAAC;AAEE,QAAA,gBAAgB,GAAG;IAC9B,WAAW,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,yCAAyC,WAAW,GAAG;IAC7F,gBAAgB,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,wBAAwB,WAAW,GAAG;IACjF,eAAe,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,YAAY,WAAW,wBAAwB;IACzF,YAAY,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,iCAAiC,OAAO,EAAE;CACrE,CAAC;AAEX,4BAA4B;AACf,QAAA,gBAAgB,GAAG;IAC9B,WAAW,EAAE,KAAK,EAAE,4BAA4B;CACjD,CAAC;AAEF,aAAa;AACA,QAAA,UAAU,GAAG;IACxB,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,CAAC;IACpB,qBAAqB,EAAE,EAAE;CAC1B,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,CAAC,CAAC;AACtB,QAAA,gBAAgB,GAAG,CAAC,CAAC;AACrB,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAEjC,QAAA,cAAc,GAAG;IAC5B,uBAAuB;IACvB,SAAS,EAAE,CAAC,WAAmB,EAAE,EAAE,CACjC,uCAAuC,WAAW,0DAA0D,WAAW,cAAc;IACvI,iBAAiB,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,YAAY,WAAW,aAAa;IAChF,iBAAiB,EAAE,8EAA8E;IACjG,qBAAqB,EAAE,4BAA4B;IAEnD,oBAAoB;IACpB,kBAAkB,EAAE,6CAA6C;IACjE,qBAAqB,EAAE,sCAAsC;IAE7D,aAAa;IACb,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,cAAc,KAAK,EAAE;IACnD,iBAAiB,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,OAAO,EAAE;IAEvE,cAAc;IACd,eAAe,EAAE,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE,CAAC,sBAAsB,IAAI,KAAK,KAAK,EAAE;IACxF,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,mBAAmB,IAAI,EAAE;IAE3D,0BAA0B;IAC1B,iBAAiB,EAAE,mBAAmB;IACtC,sBAAsB,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,2BAA2B,KAAK,EAAE;CACrE,CAAC;AAEE,QAAA,gBAAgB,GAAG;IAC9B,WAAW,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,yCAAyC,WAAW,GAAG;IAC7F,gBAAgB,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,wBAAwB,WAAW,GAAG;IACjF,eAAe,EAAE,CAAC,WAAmB,EAAE,EAAE,CAAC,YAAY,WAAW,wBAAwB;IACzF,YAAY,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,iCAAiC,OAAO,EAAE;CACrE,CAAC;AAEX,4BAA4B;AACf,QAAA,gBAAgB,GAAG;IAC9B,WAAW,EAAE,KAAK,EAAE,4BAA4B;CACjD,CAAC;AAEF,aAAa;AACA,QAAA,UAAU,GAAG;IACxB,iBAAiB,EAAE,IAAI;IACvB,iBAAiB,EAAE,CAAC;IACpB,qBAAqB,EAAE,EAAE;CAC1B,CAAC;AAEF,kCAAkC;AACrB,QAAA,UAAU,GAAG;IACxB,mBAAmB,EAAE,CAAC;IACtB,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,IAAI;IACpB,YAAY,EAAE;QACZ,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;KAClB;CACF,CAAC;AAEF,iBAAiB;AACJ,QAAA,QAAQ,GAAG;IACtB,aAAa,EAAE,EAAE;IACjB,cAAc,EAAE,IAAI;IACpB,oBAAoB,EAAE,EAAE;CACzB,CAAC;AAEF,eAAe;AACF,QAAA,WAAW,GAAG,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseFormatter } from './output-formatter';
|
|
2
|
+
import { Channel } from '../slack-api-client';
|
|
3
|
+
export declare class ChannelTableFormatter extends BaseFormatter<Channel> {
|
|
4
|
+
format(channels: Channel[]): void;
|
|
5
|
+
}
|
|
6
|
+
export declare class ChannelSimpleFormatter extends BaseFormatter<Channel> {
|
|
7
|
+
format(channels: Channel[]): void;
|
|
8
|
+
}
|
|
9
|
+
export declare class ChannelJsonFormatter extends BaseFormatter<Channel> {
|
|
10
|
+
format(channels: Channel[]): void;
|
|
11
|
+
}
|
|
12
|
+
export declare class ChannelCountFormatter extends BaseFormatter<Channel> {
|
|
13
|
+
format(channels: Channel[]): void;
|
|
14
|
+
}
|
|
15
|
+
export declare function createChannelFormatter(format: string, countOnly: boolean): BaseFormatter<Channel>;
|
|
16
|
+
//# sourceMappingURL=channel-formatters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-formatters.d.ts","sourceRoot":"","sources":["../../../src/utils/formatters/channel-formatters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAI9C,qBAAa,qBAAsB,SAAQ,aAAa,CAAC,OAAO,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;CAYlC;AAED,qBAAa,sBAAuB,SAAQ,aAAa,CAAC,OAAO,CAAC;IAChE,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;CAMlC;AAED,qBAAa,oBAAqB,SAAQ,aAAa,CAAC,OAAO,CAAC;IAC9D,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;CAQlC;AAED,qBAAa,qBAAsB,SAAQ,aAAa,CAAC,OAAO,CAAC;IAC/D,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;CAUlC;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAcjG"}
|
|
@@ -0,0 +1,73 @@
|
|
|
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.ChannelCountFormatter = exports.ChannelJsonFormatter = exports.ChannelSimpleFormatter = exports.ChannelTableFormatter = void 0;
|
|
7
|
+
exports.createChannelFormatter = createChannelFormatter;
|
|
8
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
+
const output_formatter_1 = require("./output-formatter");
|
|
10
|
+
const channel_formatter_1 = require("../channel-formatter");
|
|
11
|
+
const date_utils_1 = require("../date-utils");
|
|
12
|
+
class ChannelTableFormatter extends output_formatter_1.BaseFormatter {
|
|
13
|
+
format(channels) {
|
|
14
|
+
console.log(chalk_1.default.bold('Channel Unread Last Message'));
|
|
15
|
+
console.log('─'.repeat(50));
|
|
16
|
+
channels.forEach((channel) => {
|
|
17
|
+
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
18
|
+
const paddedName = channelName.padEnd(16);
|
|
19
|
+
const count = (channel.unread_count || 0).toString().padEnd(6);
|
|
20
|
+
const lastRead = channel.last_read ? (0, date_utils_1.formatSlackTimestamp)(channel.last_read) : 'Unknown';
|
|
21
|
+
console.log(`${paddedName} ${count} ${lastRead}`);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.ChannelTableFormatter = ChannelTableFormatter;
|
|
26
|
+
class ChannelSimpleFormatter extends output_formatter_1.BaseFormatter {
|
|
27
|
+
format(channels) {
|
|
28
|
+
channels.forEach((channel) => {
|
|
29
|
+
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
30
|
+
console.log(`${channelName} (${channel.unread_count || 0})`);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.ChannelSimpleFormatter = ChannelSimpleFormatter;
|
|
35
|
+
class ChannelJsonFormatter extends output_formatter_1.BaseFormatter {
|
|
36
|
+
format(channels) {
|
|
37
|
+
const output = channels.map((channel) => ({
|
|
38
|
+
channel: (0, channel_formatter_1.formatChannelName)(channel.name),
|
|
39
|
+
channelId: channel.id,
|
|
40
|
+
unreadCount: channel.unread_count || 0,
|
|
41
|
+
}));
|
|
42
|
+
console.log(JSON.stringify(output, null, 2));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.ChannelJsonFormatter = ChannelJsonFormatter;
|
|
46
|
+
class ChannelCountFormatter extends output_formatter_1.BaseFormatter {
|
|
47
|
+
format(channels) {
|
|
48
|
+
let totalUnread = 0;
|
|
49
|
+
channels.forEach((channel) => {
|
|
50
|
+
const count = channel.unread_count || 0;
|
|
51
|
+
totalUnread += count;
|
|
52
|
+
const channelName = (0, channel_formatter_1.formatChannelName)(channel.name);
|
|
53
|
+
console.log(`${channelName}: ${count}`);
|
|
54
|
+
});
|
|
55
|
+
console.log(chalk_1.default.bold(`Total: ${totalUnread} unread messages`));
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.ChannelCountFormatter = ChannelCountFormatter;
|
|
59
|
+
function createChannelFormatter(format, countOnly) {
|
|
60
|
+
if (countOnly) {
|
|
61
|
+
return new ChannelCountFormatter();
|
|
62
|
+
}
|
|
63
|
+
switch (format) {
|
|
64
|
+
case 'json':
|
|
65
|
+
return new ChannelJsonFormatter();
|
|
66
|
+
case 'simple':
|
|
67
|
+
return new ChannelSimpleFormatter();
|
|
68
|
+
case 'table':
|
|
69
|
+
default:
|
|
70
|
+
return new ChannelTableFormatter();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=channel-formatters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-formatters.js","sourceRoot":"","sources":["../../../src/utils/formatters/channel-formatters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-formatter.d.ts","sourceRoot":"","sources":["../../../src/utils/formatters/output-formatter.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC;CACzB;AAED,8BAAsB,aAAa,CAAC,CAAC,CAAE,YAAW,eAAe,CAAC,CAAC,CAAC;IAClE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-formatter.js","sourceRoot":"","sources":["../../../src/utils/formatters/output-formatter.ts"],"names":[],"mappings":";;;AAIA,MAAsB,aAAa;CAElC;AAFD,sCAEC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-config.d.ts","sourceRoot":"","sources":["../../src/utils/profile-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAe,OAAO,EAAE,MAAM,iBAAiB,CAAC;AASnF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,GAAE,aAAkB;IAKjC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxD,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOnD,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAWlC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1C,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BlD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;YAWlB,cAAc;IAsB5B,OAAO,CAAC,cAAc;
|
|
1
|
+
{"version":3,"file":"profile-config.d.ts","sourceRoot":"","sources":["../../src/utils/profile-config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAe,OAAO,EAAE,MAAM,iBAAiB,CAAC;AASnF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,GAAE,aAAkB;IAKjC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxD,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAOnD,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAWlC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1C,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BlD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;YAWlB,cAAc;IAsB5B,OAAO,CAAC,cAAc;YAKR,gBAAgB;YAiBhB,eAAe;CAO9B;AAED,eAAO,MAAM,aAAa;6BACD,MAAM;0BAGP,MAAM,KAAG,MAAM,GAAG,SAAS;CAKlD,CAAC"}
|
|
@@ -137,12 +137,14 @@ class ProfileConfigManager {
|
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
139
|
needsMigration(data) {
|
|
140
|
-
|
|
140
|
+
const configData = data;
|
|
141
|
+
return Boolean(configData.token && !configData.profiles);
|
|
141
142
|
}
|
|
142
143
|
async migrateOldConfig(oldData) {
|
|
144
|
+
const data = oldData;
|
|
143
145
|
const oldConfig = {
|
|
144
|
-
token:
|
|
145
|
-
updatedAt:
|
|
146
|
+
token: data.token,
|
|
147
|
+
updatedAt: data.updatedAt,
|
|
146
148
|
};
|
|
147
149
|
const newStore = {
|
|
148
150
|
profiles: { [constants_1.DEFAULT_PROFILE_NAME]: oldConfig },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-config.js","sourceRoot":"","sources":["../../src/utils/profile-config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"profile-config.js","sourceRoot":"","sources":["../../src/utils/profile-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,11 +61,13 @@ export interface ChannelUnreadResult {
|
|
|
61
61
|
}
|
|
62
62
|
export declare class SlackApiClient {
|
|
63
63
|
private client;
|
|
64
|
+
private rateLimiter;
|
|
64
65
|
constructor(token: string);
|
|
65
66
|
sendMessage(channel: string, text: string): Promise<ChatPostMessageResponse>;
|
|
66
67
|
listChannels(options: ListChannelsOptions): Promise<Channel[]>;
|
|
67
68
|
getHistory(channel: string, options: HistoryOptions): Promise<HistoryResult>;
|
|
68
69
|
listUnreadChannels(): Promise<Channel[]>;
|
|
70
|
+
private listUnreadChannelsFallback;
|
|
69
71
|
getChannelUnread(channelNameOrId: string): Promise<ChannelUnreadResult>;
|
|
70
72
|
}
|
|
71
73
|
export declare const slackApiClient: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-api-client.d.ts","sourceRoot":"","sources":["../../src/utils/slack-api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,uBAAuB,
|
|
1
|
+
{"version":3,"file":"slack-api-client.d.ts","sourceRoot":"","sources":["../../src/utils/slack-api-client.ts"],"names":[],"mappings":"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"}
|