@hardlydifficult/chat 1.1.27 → 1.1.29
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/README.md +74 -6
- package/dist/BatchStore.d.ts +39 -0
- package/dist/BatchStore.d.ts.map +1 -0
- package/dist/BatchStore.js +105 -0
- package/dist/BatchStore.js.map +1 -0
- package/dist/Channel.d.ts +51 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +105 -48
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelBatchHelpers.d.ts +38 -0
- package/dist/ChannelBatchHelpers.d.ts.map +1 -0
- package/dist/ChannelBatchHelpers.js +106 -0
- package/dist/ChannelBatchHelpers.js.map +1 -0
- package/dist/ChannelRuntimeFeatures.d.ts +16 -0
- package/dist/ChannelRuntimeFeatures.d.ts.map +1 -0
- package/dist/ChannelRuntimeFeatures.js +72 -0
- package/dist/ChannelRuntimeFeatures.js.map +1 -0
- package/dist/ChatClient.d.ts +7 -1
- package/dist/ChatClient.d.ts.map +1 -1
- package/dist/ChatClient.js +8 -0
- package/dist/ChatClient.js.map +1 -1
- package/dist/Message.d.ts +3 -3
- package/dist/Message.d.ts.map +1 -1
- package/dist/Message.js +2 -2
- package/dist/Message.js.map +1 -1
- package/dist/MessageBatch.d.ts +62 -0
- package/dist/MessageBatch.d.ts.map +1 -0
- package/dist/MessageBatch.js +129 -0
- package/dist/MessageBatch.js.map +1 -0
- package/dist/discord/DiscordChatClient.d.ts +3 -2
- package/dist/discord/DiscordChatClient.d.ts.map +1 -1
- package/dist/discord/DiscordChatClient.js +18 -2
- package/dist/discord/DiscordChatClient.js.map +1 -1
- package/dist/discord/getMessages.d.ts +7 -0
- package/dist/discord/getMessages.d.ts.map +1 -0
- package/dist/discord/getMessages.js +87 -0
- package/dist/discord/getMessages.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/memberMatching.d.ts +11 -0
- package/dist/memberMatching.d.ts.map +1 -0
- package/dist/memberMatching.js +114 -0
- package/dist/memberMatching.js.map +1 -0
- package/dist/slack/SlackChatClient.d.ts +5 -2
- package/dist/slack/SlackChatClient.d.ts.map +1 -1
- package/dist/slack/SlackChatClient.js +29 -2
- package/dist/slack/SlackChatClient.js.map +1 -1
- package/dist/slack/fetchChannelMembers.d.ts.map +1 -1
- package/dist/slack/fetchChannelMembers.js +3 -0
- package/dist/slack/fetchChannelMembers.js.map +1 -1
- package/dist/slack/getMessages.d.ts +12 -0
- package/dist/slack/getMessages.d.ts.map +1 -0
- package/dist/slack/getMessages.js +148 -0
- package/dist/slack/getMessages.js.map +1 -0
- package/dist/slack/messageOperations.d.ts +2 -2
- package/dist/slack/messageOperations.d.ts.map +1 -1
- package/dist/slack/messageOperations.js +16 -14
- package/dist/slack/messageOperations.js.map +1 -1
- package/dist/types.d.ts +79 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -6,6 +6,7 @@ const Channel_js_1 = require("../Channel.js");
|
|
|
6
6
|
const ChatClient_js_1 = require("../ChatClient.js");
|
|
7
7
|
const buildMessageEvent_js_1 = require("./buildMessageEvent.js");
|
|
8
8
|
const fetchChannelMembers_js_1 = require("./fetchChannelMembers.js");
|
|
9
|
+
const getMessages_js_1 = require("./getMessages.js");
|
|
9
10
|
const getThreads_js_1 = require("./getThreads.js");
|
|
10
11
|
const messageOperations_js_1 = require("./messageOperations.js");
|
|
11
12
|
const removeAllReactions_js_1 = require("./removeAllReactions.js");
|
|
@@ -14,6 +15,7 @@ const removeAllReactions_js_1 = require("./removeAllReactions.js");
|
|
|
14
15
|
*/
|
|
15
16
|
class SlackChatClient extends ChatClient_js_1.ChatClient {
|
|
16
17
|
app;
|
|
18
|
+
slackBotId = null;
|
|
17
19
|
reactionCallbacks = new Map();
|
|
18
20
|
messageCallbacks = new Map();
|
|
19
21
|
threadCallbacks = new Map();
|
|
@@ -114,8 +116,25 @@ class SlackChatClient extends ChatClient_js_1.ChatClient {
|
|
|
114
116
|
*/
|
|
115
117
|
async connect(channelId) {
|
|
116
118
|
await this.app.start();
|
|
119
|
+
await this.hydrateIdentity();
|
|
117
120
|
return new Channel_js_1.Channel(channelId, "slack", this);
|
|
118
121
|
}
|
|
122
|
+
async hydrateIdentity() {
|
|
123
|
+
const auth = await this.app.client.auth.test();
|
|
124
|
+
const userId = auth.user_id;
|
|
125
|
+
if (userId === undefined || userId === "") {
|
|
126
|
+
throw new Error("Slack auth.test did not return user_id");
|
|
127
|
+
}
|
|
128
|
+
const username = auth.user !== undefined && auth.user !== "" ? auth.user : userId;
|
|
129
|
+
this.meValue = {
|
|
130
|
+
id: userId,
|
|
131
|
+
username,
|
|
132
|
+
displayName: username,
|
|
133
|
+
mention: `<@${userId}>`,
|
|
134
|
+
};
|
|
135
|
+
this.slackBotId =
|
|
136
|
+
auth.bot_id !== undefined && auth.bot_id !== "" ? auth.bot_id : null;
|
|
137
|
+
}
|
|
119
138
|
/**
|
|
120
139
|
* Disconnect from Slack
|
|
121
140
|
*/
|
|
@@ -126,6 +145,8 @@ class SlackChatClient extends ChatClient_js_1.ChatClient {
|
|
|
126
145
|
this.threadCallbacks.clear();
|
|
127
146
|
this.disconnectCallbacks.clear();
|
|
128
147
|
this.errorCallbacks.clear();
|
|
148
|
+
this.meValue = null;
|
|
149
|
+
this.slackBotId = null;
|
|
129
150
|
}
|
|
130
151
|
/**
|
|
131
152
|
* Post a message to a Slack channel
|
|
@@ -142,8 +163,8 @@ class SlackChatClient extends ChatClient_js_1.ChatClient {
|
|
|
142
163
|
/**
|
|
143
164
|
* Delete a message and its thread replies from a Slack channel
|
|
144
165
|
*/
|
|
145
|
-
async deleteMessage(messageId, channelId) {
|
|
146
|
-
await (0, messageOperations_js_1.deleteMessage)(this.app, messageId, channelId);
|
|
166
|
+
async deleteMessage(messageId, channelId, options) {
|
|
167
|
+
await (0, messageOperations_js_1.deleteMessage)(this.app, messageId, channelId, options);
|
|
147
168
|
}
|
|
148
169
|
/**
|
|
149
170
|
* Add a reaction to a message
|
|
@@ -263,6 +284,12 @@ class SlackChatClient extends ChatClient_js_1.ChatClient {
|
|
|
263
284
|
}
|
|
264
285
|
return deleted;
|
|
265
286
|
}
|
|
287
|
+
async getMessages(channelId, options = {}) {
|
|
288
|
+
return (0, getMessages_js_1.getMessages)(this.app, channelId, options, {
|
|
289
|
+
meId: this.me?.id,
|
|
290
|
+
botId: this.slackBotId,
|
|
291
|
+
});
|
|
292
|
+
}
|
|
266
293
|
/**
|
|
267
294
|
* Get all threads in a Slack channel
|
|
268
295
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SlackChatClient.js","sourceRoot":"","sources":["../../src/slack/SlackChatClient.ts"],"names":[],"mappings":";;;AAAA,sCAAkC;AAElC,8CAAgE;AAChE,oDAA8C;
|
|
1
|
+
{"version":3,"file":"SlackChatClient.js","sourceRoot":"","sources":["../../src/slack/SlackChatClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchChannelMembers.d.ts","sourceRoot":"","sources":["../../src/slack/fetchChannelMembers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchChannelMembers.d.ts","sourceRoot":"","sources":["../../src/slack/fetchChannelMembers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CAoDnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchChannelMembers.js","sourceRoot":"","sources":["../../src/slack/fetchChannelMembers.ts"],"names":[],"mappings":";;AAQA,
|
|
1
|
+
{"version":3,"file":"fetchChannelMembers.js","sourceRoot":"","sources":["../../src/slack/fetchChannelMembers.ts"],"names":[],"mappings":";;AAQA,kDAuDC;AA3DD;;;GAGG;AACI,KAAK,UAAU,mBAAmB,CACvC,GAAQ,EACR,SAAiB;IAEjB,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,MAA0B,CAAC;IAE/B,GAAG,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC;YACpD,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,GAAG;YACV,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC;QACzD,MAAM;YACJ,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,CAAC,QAAQ,MAAM,KAAK,SAAS,EAAE;IAE/B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;YACpB,MAAM,OAAO,GAAG,CAAC,CAAC,OAEL,CAAC;YACd,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC;YAC9B,MAAM,cAAc,GAAG,OAAO,EAAE,YAAY,CAAC;YAC7C,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,CAAC;YAChC,MAAM,WAAW,GACf,CAAC,cAAc,KAAK,SAAS,IAAI,cAAc,KAAK,EAAE;gBACpD,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,SAAS,CAAC;gBACd,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,EAAE;oBAC9C,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,SAAS,CAAC;gBACd,IAAI,CAAC;YACP,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,MAAM;gBACV,QAAQ,EAAE,IAAI;gBACd,WAAW;gBACX,OAAO,EAAE,KAAK,MAAM,GAAG;gBACvB,GAAG,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE;oBACtD,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;oBAC1B,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { App } from "@slack/bolt";
|
|
2
|
+
import type { MessageData, MessageQueryOptions } from "../types";
|
|
3
|
+
interface MessageFilterContext {
|
|
4
|
+
meId?: string;
|
|
5
|
+
botId?: string | null;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Fetch and normalize recent Slack messages with optional filters.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getMessages(app: App, channelId: string, options?: MessageQueryOptions, context?: MessageFilterContext): Promise<MessageData[]>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=getMessages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMessages.d.ts","sourceRoot":"","sources":["../../src/slack/getMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EAEpB,MAAM,UAAU,CAAC;AAkBlB,UAAU,oBAAoB;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,EACjC,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,WAAW,EAAE,CAAC,CA4DxB"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getMessages = getMessages;
|
|
4
|
+
/**
|
|
5
|
+
* Fetch and normalize recent Slack messages with optional filters.
|
|
6
|
+
*/
|
|
7
|
+
async function getMessages(app, channelId, options = {}, context = {}) {
|
|
8
|
+
const limit = Math.min(Math.max(options.limit ?? 50, 1), 200);
|
|
9
|
+
const oldest = toSlackTimestamp(options.after);
|
|
10
|
+
const latest = toSlackTimestamp(options.before);
|
|
11
|
+
const afterDate = toDate(options.after);
|
|
12
|
+
const beforeDate = toDate(options.before);
|
|
13
|
+
const history = await app.client.conversations.history({
|
|
14
|
+
channel: channelId,
|
|
15
|
+
limit,
|
|
16
|
+
...(oldest !== undefined ? { oldest } : {}),
|
|
17
|
+
...(latest !== undefined ? { latest } : {}),
|
|
18
|
+
...(oldest !== undefined || latest !== undefined
|
|
19
|
+
? { inclusive: false }
|
|
20
|
+
: {}),
|
|
21
|
+
});
|
|
22
|
+
const messages = [];
|
|
23
|
+
for (const rawMessage of history.messages ?? []) {
|
|
24
|
+
const message = rawMessage;
|
|
25
|
+
if (message.ts === undefined || message.ts === "") {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
const timestamp = new Date(parseFloat(message.ts) * 1000);
|
|
29
|
+
if (!Number.isFinite(timestamp.getTime())) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
if (afterDate !== undefined && timestamp <= afterDate) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
if (beforeDate !== undefined && timestamp >= beforeDate) {
|
|
36
|
+
continue;
|
|
37
|
+
}
|
|
38
|
+
if (!matchesAuthorFilter(message, options.author, context)) {
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
const authorId = message.user ?? message.bot_id;
|
|
42
|
+
messages.push({
|
|
43
|
+
id: message.ts,
|
|
44
|
+
channelId,
|
|
45
|
+
platform: "slack",
|
|
46
|
+
content: message.text ?? "",
|
|
47
|
+
author: authorId !== undefined
|
|
48
|
+
? {
|
|
49
|
+
id: authorId,
|
|
50
|
+
username: message.username !== undefined && message.username !== ""
|
|
51
|
+
? message.username
|
|
52
|
+
: undefined,
|
|
53
|
+
}
|
|
54
|
+
: undefined,
|
|
55
|
+
timestamp,
|
|
56
|
+
attachments: extractSlackAttachments(message),
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
return messages;
|
|
60
|
+
}
|
|
61
|
+
function matchesAuthorFilter(message, author, context) {
|
|
62
|
+
if (author === undefined) {
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
if (author === "me") {
|
|
66
|
+
return ((context.meId !== undefined &&
|
|
67
|
+
context.meId !== "" &&
|
|
68
|
+
message.user === context.meId) ||
|
|
69
|
+
(context.botId !== undefined &&
|
|
70
|
+
context.botId !== null &&
|
|
71
|
+
context.botId !== "" &&
|
|
72
|
+
message.bot_id === context.botId));
|
|
73
|
+
}
|
|
74
|
+
const normalizedAuthor = normalizeAuthorFilter(author);
|
|
75
|
+
return ((message.user !== undefined && message.user === normalizedAuthor) ||
|
|
76
|
+
(message.bot_id !== undefined && message.bot_id === normalizedAuthor));
|
|
77
|
+
}
|
|
78
|
+
function toSlackTimestamp(input) {
|
|
79
|
+
if (input === undefined) {
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
if (input instanceof Date) {
|
|
83
|
+
return String(input.getTime() / 1000);
|
|
84
|
+
}
|
|
85
|
+
if (typeof input === "number") {
|
|
86
|
+
if (!Number.isFinite(input)) {
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
return String(input);
|
|
90
|
+
}
|
|
91
|
+
const trimmed = input.trim();
|
|
92
|
+
if (trimmed === "") {
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
if (/^\d+(\.\d+)?$/.test(trimmed)) {
|
|
96
|
+
return trimmed;
|
|
97
|
+
}
|
|
98
|
+
const date = new Date(trimmed);
|
|
99
|
+
if (Number.isNaN(date.getTime())) {
|
|
100
|
+
return undefined;
|
|
101
|
+
}
|
|
102
|
+
return String(date.getTime() / 1000);
|
|
103
|
+
}
|
|
104
|
+
function toDate(input) {
|
|
105
|
+
if (input === undefined) {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
if (input instanceof Date) {
|
|
109
|
+
return Number.isNaN(input.getTime()) ? undefined : input;
|
|
110
|
+
}
|
|
111
|
+
if (typeof input === "number") {
|
|
112
|
+
const ms = input > 10_000_000_000 ? input : input * 1000;
|
|
113
|
+
const date = new Date(ms);
|
|
114
|
+
return Number.isNaN(date.getTime()) ? undefined : date;
|
|
115
|
+
}
|
|
116
|
+
const trimmed = input.trim();
|
|
117
|
+
if (/^\d+(\.\d+)?$/.test(trimmed)) {
|
|
118
|
+
return toDate(Number(trimmed));
|
|
119
|
+
}
|
|
120
|
+
const date = new Date(trimmed);
|
|
121
|
+
return Number.isNaN(date.getTime()) ? undefined : date;
|
|
122
|
+
}
|
|
123
|
+
function normalizeAuthorFilter(author) {
|
|
124
|
+
const mentionMatch = /^<@([^>|]+)(?:\|[^>]+)?>$/.exec(author.trim());
|
|
125
|
+
if (mentionMatch?.[1] !== undefined && mentionMatch[1] !== "") {
|
|
126
|
+
return mentionMatch[1];
|
|
127
|
+
}
|
|
128
|
+
return author.trim().replace(/^@/, "");
|
|
129
|
+
}
|
|
130
|
+
function extractSlackAttachments(message) {
|
|
131
|
+
const attachments = [];
|
|
132
|
+
for (const file of message.files ?? []) {
|
|
133
|
+
const { url_private: url, name, mimetype, size } = file;
|
|
134
|
+
if (url === undefined || url === "" || name === undefined || name === "") {
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
attachments.push({
|
|
138
|
+
url,
|
|
139
|
+
name,
|
|
140
|
+
contentType: mimetype !== undefined && mimetype !== null && mimetype !== ""
|
|
141
|
+
? mimetype
|
|
142
|
+
: undefined,
|
|
143
|
+
size,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
return attachments;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=getMessages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMessages.js","sourceRoot":"","sources":["../../src/slack/getMessages.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { App } from "@slack/bolt";
|
|
2
|
-
import type { FileAttachment, MessageContent, MessageData } from "../types.js";
|
|
2
|
+
import type { DeleteMessageOptions, FileAttachment, MessageContent, MessageData } from "../types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Post a message to a Slack channel.
|
|
5
5
|
* Handles file attachments, oversized text (auto-uploads as file),
|
|
@@ -18,5 +18,5 @@ export declare function updateMessage(app: App, messageId: string, channelId: st
|
|
|
18
18
|
/**
|
|
19
19
|
* Delete a message and its thread replies.
|
|
20
20
|
*/
|
|
21
|
-
export declare function deleteMessage(app: App, messageId: string, channelId: string): Promise<void>;
|
|
21
|
+
export declare function deleteMessage(app: App, messageId: string, channelId: string, options?: DeleteMessageOptions): Promise<void>;
|
|
22
22
|
//# sourceMappingURL=messageOperations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageOperations.d.ts","sourceRoot":"","sources":["../../src/slack/messageOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAIvC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"messageOperations.d.ts","sourceRoot":"","sources":["../../src/slack/messageOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAIvC,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,WAAW,EACZ,MAAM,aAAa,CAAC;AAqBrB;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GACA,OAAO,CAAC,WAAW,CAAC,CAoHtB;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,IAAI,CAAC,CA0Bf"}
|
|
@@ -155,20 +155,22 @@ async function updateMessage(app, messageId, channelId, content) {
|
|
|
155
155
|
/**
|
|
156
156
|
* Delete a message and its thread replies.
|
|
157
157
|
*/
|
|
158
|
-
async function deleteMessage(app, messageId, channelId) {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
158
|
+
async function deleteMessage(app, messageId, channelId, options) {
|
|
159
|
+
if (options?.cascadeReplies !== false) {
|
|
160
|
+
// Fetch and delete thread replies first
|
|
161
|
+
const replies = await app.client.conversations.replies({
|
|
162
|
+
channel: channelId,
|
|
163
|
+
ts: messageId,
|
|
164
|
+
});
|
|
165
|
+
if (replies.messages && replies.messages.length > 1) {
|
|
166
|
+
// First message is the parent — delete replies (rest) in reverse order
|
|
167
|
+
for (const reply of replies.messages.slice(1).reverse()) {
|
|
168
|
+
if (reply.ts !== undefined && reply.ts !== "") {
|
|
169
|
+
await app.client.chat.delete({
|
|
170
|
+
channel: channelId,
|
|
171
|
+
ts: reply.ts,
|
|
172
|
+
});
|
|
173
|
+
}
|
|
172
174
|
}
|
|
173
175
|
}
|
|
174
176
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageOperations.js","sourceRoot":"","sources":["../../src/slack/messageOperations.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"messageOperations.js","sourceRoot":"","sources":["../../src/slack/messageOperations.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -28,6 +28,15 @@ export interface User {
|
|
|
28
28
|
id: string;
|
|
29
29
|
username?: string;
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Identity of the authenticated bot/client user.
|
|
33
|
+
*/
|
|
34
|
+
export interface ClientIdentity extends User {
|
|
35
|
+
/** Display name shown in the platform UI */
|
|
36
|
+
displayName: string;
|
|
37
|
+
/** Ready-to-use mention string (e.g., "<@USER_ID>") */
|
|
38
|
+
mention: string;
|
|
39
|
+
}
|
|
31
40
|
/**
|
|
32
41
|
* A member of a channel with mention support
|
|
33
42
|
*/
|
|
@@ -40,6 +49,8 @@ export interface Member {
|
|
|
40
49
|
displayName: string;
|
|
41
50
|
/** Ready-to-use mention string (e.g., "<@USER_ID>") — embed in messages to @mention */
|
|
42
51
|
mention: string;
|
|
52
|
+
/** Optional email address (platform-dependent; not always available) */
|
|
53
|
+
email?: string;
|
|
43
54
|
}
|
|
44
55
|
/**
|
|
45
56
|
* Data provided to reaction callbacks
|
|
@@ -137,4 +148,72 @@ export interface MessageData {
|
|
|
137
148
|
* Message content can be string or Document
|
|
138
149
|
*/
|
|
139
150
|
export type MessageContent = string | Document;
|
|
151
|
+
/** Timestamp input accepted by message query filters. */
|
|
152
|
+
export type TimestampInput = string | number | Date;
|
|
153
|
+
/**
|
|
154
|
+
* Options for deleting a message.
|
|
155
|
+
*/
|
|
156
|
+
export interface DeleteMessageOptions {
|
|
157
|
+
/**
|
|
158
|
+
* Whether to delete thread replies before deleting the parent message.
|
|
159
|
+
* Defaults to true.
|
|
160
|
+
*/
|
|
161
|
+
cascadeReplies?: boolean;
|
|
162
|
+
}
|
|
163
|
+
/** Author filter for message listing. */
|
|
164
|
+
export type MessageAuthorFilter = string;
|
|
165
|
+
/**
|
|
166
|
+
* Query options for listing channel messages.
|
|
167
|
+
*/
|
|
168
|
+
export interface MessageQueryOptions {
|
|
169
|
+
/** Maximum number of recent messages to fetch (platform limits apply) */
|
|
170
|
+
limit?: number;
|
|
171
|
+
/** Filter by author: "me" (the connected bot) or a user identifier/query */
|
|
172
|
+
author?: MessageAuthorFilter;
|
|
173
|
+
/** Only include messages after this timestamp */
|
|
174
|
+
after?: TimestampInput;
|
|
175
|
+
/** Only include messages before this timestamp */
|
|
176
|
+
before?: TimestampInput;
|
|
177
|
+
}
|
|
178
|
+
/** Message reference stored as part of a batch. */
|
|
179
|
+
export interface BatchMessageRef {
|
|
180
|
+
/** Message ID on the underlying platform. */
|
|
181
|
+
id: string;
|
|
182
|
+
/** Channel ID where the message was posted. */
|
|
183
|
+
channelId: string;
|
|
184
|
+
/** Origin platform. */
|
|
185
|
+
platform: Platform;
|
|
186
|
+
/** Posting timestamp captured by the batch API. */
|
|
187
|
+
postedAt: Date;
|
|
188
|
+
}
|
|
189
|
+
/** Options for creating a new batch. */
|
|
190
|
+
export interface BeginBatchOptions {
|
|
191
|
+
/** Optional grouping key (for example: "sprint-update"). */
|
|
192
|
+
key?: string;
|
|
193
|
+
/** Optional author label for retrieval filtering. Defaults to "me". */
|
|
194
|
+
author?: MessageAuthorFilter;
|
|
195
|
+
}
|
|
196
|
+
/** Query options for listing batches in a channel. */
|
|
197
|
+
export interface BatchQueryOptions {
|
|
198
|
+
/** Optional key filter. */
|
|
199
|
+
key?: string;
|
|
200
|
+
/** Optional author filter. */
|
|
201
|
+
author?: MessageAuthorFilter;
|
|
202
|
+
/** Maximum number of batches to return (newest first). */
|
|
203
|
+
limit?: number;
|
|
204
|
+
/** Include unfinished/open batches. Default: true. */
|
|
205
|
+
includeOpen?: boolean;
|
|
206
|
+
}
|
|
207
|
+
/** Summary returned by batch deletion helpers. */
|
|
208
|
+
export interface BatchDeleteSummary {
|
|
209
|
+
/** Number of successfully deleted messages. */
|
|
210
|
+
deleted: number;
|
|
211
|
+
/** Number of deletion attempts that failed. */
|
|
212
|
+
failed: number;
|
|
213
|
+
}
|
|
214
|
+
/** Summary returned by keepLatest(n). */
|
|
215
|
+
export interface BatchKeepLatestSummary extends BatchDeleteSummary {
|
|
216
|
+
/** Number of messages retained in the batch after pruning. */
|
|
217
|
+
kept: number;
|
|
218
|
+
}
|
|
140
219
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,WAAW,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hardlydifficult/chat",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.29",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"types": "./dist/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -19,12 +19,12 @@
|
|
|
19
19
|
"discord.js": "14.25.1"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
|
-
"@hardlydifficult/document-generator": "1.1.
|
|
22
|
+
"@hardlydifficult/document-generator": "1.1.7",
|
|
23
23
|
"@types/node": "25.2.3",
|
|
24
24
|
"typescript": "5.9.3",
|
|
25
25
|
"vitest": "4.0.18"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"@hardlydifficult/document-generator": "1.1.
|
|
28
|
+
"@hardlydifficult/document-generator": "1.1.7"
|
|
29
29
|
}
|
|
30
30
|
}
|