@hardlydifficult/chat 1.1.15 → 1.1.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -124,6 +124,28 @@ msg.removeAllReactions();
124
124
 
125
125
  > **Slack note:** Slack only allows removing the bot's own reactions. `removeAllReactions()` removes the bot's reactions for every emoji on the message but cannot remove other users' reactions.
126
126
 
127
+ ### Declarative Reactions
128
+
129
+ `setReactions` manages the full reaction state on a message. It diffs against the previous `setReactions` call, removing stale emojis and adding new ones, and replaces any existing reaction handler.
130
+
131
+ ```typescript
132
+ const msg = await channel.postMessage("PR #42: open");
133
+
134
+ // Set initial reactions
135
+ msg.setReactions(["🟡"], (event) => handlePending(event));
136
+
137
+ // Later: update to merged state — removes 🟡, adds 🟢, swaps handler
138
+ msg.setReactions(["🟢"], (event) => handleMerged(event));
139
+ ```
140
+
141
+ ### Dismissable Messages
142
+
143
+ Post a message that the specified user can dismiss by clicking the trash reaction.
144
+
145
+ ```typescript
146
+ await channel.postDismissable("Build complete!", user.id);
147
+ ```
148
+
127
149
  ### Threads
128
150
 
129
151
  Create a thread from an existing message.
@@ -151,15 +173,23 @@ Each `Member` has `id`, `username`, `displayName`, and `mention` (a ready-to-use
151
173
 
152
174
  ## Typing Indicator
153
175
 
154
- Show a "typing" indicator while processing.
176
+ Show a "typing" indicator while processing. `withTyping` sends the indicator immediately, refreshes it every 8 seconds, and cleans up automatically when the function completes.
177
+
178
+ ```typescript
179
+ const result = await channel.withTyping(async () => {
180
+ // typing indicator stays active during this work
181
+ return await doExpensiveWork();
182
+ });
183
+ await channel.postMessage(result);
184
+ ```
185
+
186
+ For one-shot use, `sendTyping()` sends a single indicator without automatic refresh:
155
187
 
156
188
  ```typescript
157
189
  await channel.sendTyping();
158
- // ... do work ...
159
- await channel.postMessage("Done!");
160
190
  ```
161
191
 
162
- > **Slack note:** Slack does not support bot typing indicators. `sendTyping()` is a no-op on Slack.
192
+ > **Slack note:** Slack does not support bot typing indicators. Both methods are no-ops on Slack.
163
193
 
164
194
  ## Bulk Operations
165
195
 
@@ -217,14 +247,14 @@ Both callbacks return an unsubscribe function.
217
247
 
218
248
  ## Platform Differences
219
249
 
220
- | Feature | Discord | Slack |
221
- |---|---|---|
222
- | Incoming messages | Full support | Full support |
223
- | Typing indicator | Full support | No-op (unsupported by Slack bot API) |
224
- | File attachments | `AttachmentBuilder` | `filesUploadV2` |
225
- | Thread creation | Creates named thread on message | Returns message timestamp (threads are implicit) |
226
- | Bulk delete | Native `bulkDelete` API (fast) | One-by-one deletion (slower, may partially fail) |
227
- | Get threads | `fetchActive` + `fetchArchived` | Scans channel history for threaded messages |
228
- | Delete thread | `ThreadChannel.delete()` | Deletes parent message and all replies |
229
- | Get members | Guild members filtered by channel permissions | `conversations.members` + `users.info` |
230
- | Auto-reconnect | Handled by discord.js | Handled by `@slack/bolt` Socket Mode |
250
+ | Feature | Discord | Slack |
251
+ | ----------------- | --------------------------------------------- | ------------------------------------------------ |
252
+ | Incoming messages | Full support | Full support |
253
+ | Typing indicator | Full support | No-op (unsupported by Slack bot API) |
254
+ | File attachments | `AttachmentBuilder` | `filesUploadV2` |
255
+ | Thread creation | Creates named thread on message | Returns message timestamp (threads are implicit) |
256
+ | Bulk delete | Native `bulkDelete` API (fast) | One-by-one deletion (slower, may partially fail) |
257
+ | Get threads | `fetchActive` + `fetchArchived` | Scans channel history for threaded messages |
258
+ | Delete thread | `ThreadChannel.delete()` | Deletes parent message and all replies |
259
+ | Get members | Guild members filtered by channel permissions | `conversations.members` + `users.info` |
260
+ | Auto-reconnect | Handled by discord.js | Handled by `@slack/bolt` Socket Mode |
package/dist/Channel.d.ts CHANGED
@@ -69,6 +69,21 @@ export declare class Channel {
69
69
  * Send a typing indicator in this channel
70
70
  */
71
71
  sendTyping(): Promise<void>;
72
+ /**
73
+ * Show a typing indicator while executing a function.
74
+ * The indicator is sent immediately and refreshed every 8 seconds
75
+ * until the function completes. Cleanup is guaranteed even if fn throws.
76
+ * @param fn - Async function to execute while typing indicator is shown
77
+ * @returns The return value of fn
78
+ */
79
+ withTyping<T>(fn: () => Promise<T>): Promise<T>;
80
+ /**
81
+ * Post a message with a trash can reaction that the owner can click to dismiss.
82
+ * @param content - Message content (string or Document)
83
+ * @param ownerId - User ID of the person allowed to dismiss the message
84
+ * @returns Message object that callers can interact with before dismissal
85
+ */
86
+ postDismissable(content: MessageContent, ownerId: string): Promise<Message>;
72
87
  /**
73
88
  * Bulk delete messages in this channel
74
89
  * @param count - Number of recent messages to delete
@@ -1 +1 @@
1
- {"version":3,"file":"Channel.d.ts","sourceRoot":"","sources":["../src/Channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Channel.d.ts","sourceRoot":"","sources":["../src/Channel.ts"],"names":[],"mappings":"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"}
package/dist/Channel.js CHANGED
@@ -102,6 +102,46 @@ class Channel {
102
102
  async sendTyping() {
103
103
  await this.operations.sendTyping(this.id);
104
104
  }
105
+ /**
106
+ * Show a typing indicator while executing a function.
107
+ * The indicator is sent immediately and refreshed every 8 seconds
108
+ * until the function completes. Cleanup is guaranteed even if fn throws.
109
+ * @param fn - Async function to execute while typing indicator is shown
110
+ * @returns The return value of fn
111
+ */
112
+ async withTyping(fn) {
113
+ await this.operations.sendTyping(this.id);
114
+ const interval = setInterval(() => {
115
+ this.operations.sendTyping(this.id).catch(() => {
116
+ // Ignore errors from typing refresh
117
+ });
118
+ }, 8000);
119
+ try {
120
+ return await fn();
121
+ }
122
+ finally {
123
+ clearInterval(interval);
124
+ }
125
+ }
126
+ /**
127
+ * Post a message with a trash can reaction that the owner can click to dismiss.
128
+ * @param content - Message content (string or Document)
129
+ * @param ownerId - User ID of the person allowed to dismiss the message
130
+ * @returns Message object that callers can interact with before dismissal
131
+ */
132
+ async postDismissable(content, ownerId) {
133
+ const emoji = this.platform === "slack" ? ":wastebasket:" : "🗑️";
134
+ const emojiMatch = this.platform === "slack" ? "wastebasket" : "🗑️";
135
+ const msg = await this.postMessage(content);
136
+ msg.addReactions([emoji]).onReaction(async (event) => {
137
+ if (event.user.id !== ownerId || event.emoji !== emojiMatch) {
138
+ return;
139
+ }
140
+ msg.offReaction();
141
+ await msg.delete();
142
+ });
143
+ return msg;
144
+ }
105
145
  /**
106
146
  * Bulk delete messages in this channel
107
147
  * @param count - Number of recent messages to delete
@@ -148,6 +188,7 @@ exports.Channel = Channel;
148
188
  class PendingMessage extends Message_1.Message {
149
189
  postPromise;
150
190
  deferredReactionCallbacks = [];
191
+ resolved = false;
151
192
  constructor(postPromise, operations, platform) {
152
193
  // Initialize with placeholder data using the correct platform
153
194
  super({ id: "", channelId: "", platform }, operations);
@@ -164,6 +205,7 @@ class PendingMessage extends Message_1.Message {
164
205
  const unsubscribe = this.operations.subscribeToReactions(data.id, callback);
165
206
  this.reactionUnsubscribers.push(unsubscribe);
166
207
  }
208
+ this.resolved = true;
167
209
  })
168
210
  .catch(() => {
169
211
  // Errors surfaced when awaited via then()
@@ -205,9 +247,21 @@ class PendingMessage extends Message_1.Message {
205
247
  * Override onReaction to defer subscription until post completes
206
248
  */
207
249
  onReaction(callback) {
208
- this.deferredReactionCallbacks.push(callback);
250
+ if (this.resolved) {
251
+ super.onReaction(callback);
252
+ }
253
+ else {
254
+ this.deferredReactionCallbacks.push(callback);
255
+ }
209
256
  return this;
210
257
  }
258
+ /**
259
+ * Override offReaction to also clear deferred callbacks
260
+ */
261
+ offReaction() {
262
+ this.deferredReactionCallbacks = [];
263
+ super.offReaction();
264
+ }
211
265
  /**
212
266
  * Makes PendingMessage directly awaitable.
213
267
  * Resolves to a plain Message (not thenable) to prevent infinite await loops.
@@ -1 +1 @@
1
- {"version":3,"file":"Channel.js","sourceRoot":"","sources":["../src/Channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Channel.js","sourceRoot":"","sources":["../src/Channel.ts"],"names":[],"mappings":"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"}
package/dist/Message.d.ts CHANGED
@@ -28,6 +28,7 @@ export declare class Message {
28
28
  protected pendingReactions: Promise<void>;
29
29
  protected operations: MessageOperations;
30
30
  protected reactionUnsubscribers: (() => void)[];
31
+ private trackedEmojis;
31
32
  constructor(data: MessageData, operations: MessageOperations);
32
33
  /**
33
34
  * Create a plain Message snapshot, transferring reaction unsubscribers.
@@ -71,6 +72,15 @@ export declare class Message {
71
72
  * Stop listening for reactions on this message
72
73
  */
73
74
  offReaction(): void;
75
+ /**
76
+ * Declaratively set the reactions on this message.
77
+ * Computes the diff from the previous `setReactions` call, removing stale
78
+ * emojis and adding new ones. Replaces any existing reaction handler.
79
+ * @param emojis - The complete set of emojis that should be on this message
80
+ * @param handler - Optional callback for when users react to this message
81
+ * @returns this for chaining
82
+ */
83
+ setReactions(emojis: string[], handler?: ReactionCallback): this;
74
84
  /**
75
85
  * Reply in this message's thread
76
86
  * @param content - Reply content (string or Document)
@@ -113,6 +123,7 @@ export declare class Message {
113
123
  export declare class ReplyMessage extends Message implements PromiseLike<Message> {
114
124
  private replyPromise;
115
125
  private deferredReactionCallbacks;
126
+ private resolved;
116
127
  constructor(replyPromise: Promise<MessageData>, operations: MessageOperations, platform: Platform);
117
128
  /**
118
129
  * Override addReactions to wait for reply to complete first
@@ -130,6 +141,10 @@ export declare class ReplyMessage extends Message implements PromiseLike<Message
130
141
  * Override onReaction to defer subscription until reply completes
131
142
  */
132
143
  onReaction(callback: ReactionCallback): this;
144
+ /**
145
+ * Override offReaction to also clear deferred callbacks
146
+ */
147
+ offReaction(): void;
133
148
  /**
134
149
  * Makes ReplyMessage directly awaitable.
135
150
  * Resolves to a plain Message (not thenable) to prevent infinite await loops.
@@ -1 +1 @@
1
- {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../src/Message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Message.d.ts","sourceRoot":"","sources":["../src/Message.ts"],"names":[],"mappings":"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"}
package/dist/Message.js CHANGED
@@ -16,6 +16,7 @@ class Message {
16
16
  pendingReactions = Promise.resolve();
17
17
  operations;
18
18
  reactionUnsubscribers = [];
19
+ trackedEmojis = [];
19
20
  constructor(data, operations) {
20
21
  this.id = data.id;
21
22
  this.channelId = data.channelId;
@@ -41,6 +42,7 @@ class Message {
41
42
  attachments: this.attachments,
42
43
  }, this.operations);
43
44
  msg.reactionUnsubscribers = this.reactionUnsubscribers;
45
+ msg.trackedEmojis = this.trackedEmojis;
44
46
  return msg;
45
47
  }
46
48
  /**
@@ -102,6 +104,30 @@ class Message {
102
104
  }
103
105
  this.reactionUnsubscribers = [];
104
106
  }
107
+ /**
108
+ * Declaratively set the reactions on this message.
109
+ * Computes the diff from the previous `setReactions` call, removing stale
110
+ * emojis and adding new ones. Replaces any existing reaction handler.
111
+ * @param emojis - The complete set of emojis that should be on this message
112
+ * @param handler - Optional callback for when users react to this message
113
+ * @returns this for chaining
114
+ */
115
+ setReactions(emojis, handler) {
116
+ const toRemove = this.trackedEmojis.filter((e) => !emojis.includes(e));
117
+ const toAdd = emojis.filter((e) => !this.trackedEmojis.includes(e));
118
+ this.trackedEmojis = [...emojis];
119
+ if (toRemove.length > 0) {
120
+ this.removeReactions(toRemove);
121
+ }
122
+ if (toAdd.length > 0) {
123
+ this.addReactions(toAdd);
124
+ }
125
+ this.offReaction();
126
+ if (handler) {
127
+ this.onReaction(handler);
128
+ }
129
+ return this;
130
+ }
105
131
  /**
106
132
  * Reply in this message's thread
107
133
  * @param content - Reply content (string or Document)
@@ -157,6 +183,7 @@ exports.Message = Message;
157
183
  class ReplyMessage extends Message {
158
184
  replyPromise;
159
185
  deferredReactionCallbacks = [];
186
+ resolved = false;
160
187
  constructor(replyPromise, operations, platform) {
161
188
  // Initialize with placeholder data
162
189
  super({ id: "", channelId: "", platform }, operations);
@@ -172,6 +199,7 @@ class ReplyMessage extends Message {
172
199
  const unsubscribe = this.operations.subscribeToReactions(data.id, callback);
173
200
  this.reactionUnsubscribers.push(unsubscribe);
174
201
  }
202
+ this.resolved = true;
175
203
  })
176
204
  .catch(() => {
177
205
  // Errors surfaced when awaited via then()
@@ -213,9 +241,21 @@ class ReplyMessage extends Message {
213
241
  * Override onReaction to defer subscription until reply completes
214
242
  */
215
243
  onReaction(callback) {
216
- this.deferredReactionCallbacks.push(callback);
244
+ if (this.resolved) {
245
+ super.onReaction(callback);
246
+ }
247
+ else {
248
+ this.deferredReactionCallbacks.push(callback);
249
+ }
217
250
  return this;
218
251
  }
252
+ /**
253
+ * Override offReaction to also clear deferred callbacks
254
+ */
255
+ offReaction() {
256
+ this.deferredReactionCallbacks = [];
257
+ super.offReaction();
258
+ }
219
259
  /**
220
260
  * Makes ReplyMessage directly awaitable.
221
261
  * Resolves to a plain Message (not thenable) to prevent infinite await loops.
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sourceRoot":"","sources":["../src/Message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../src/Message.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.15",
3
+ "version": "1.1.16",
4
4
  "main": "./dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "files": [