codex-to-im 1.0.50 → 1.0.52
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/dist/daemon.mjs +15 -2
- package/package.json +1 -1
package/dist/daemon.mjs
CHANGED
|
@@ -1417,6 +1417,7 @@ var DEDUP_MAX = 1e3;
|
|
|
1417
1417
|
var MAX_FILE_SIZE = 20 * 1024 * 1024;
|
|
1418
1418
|
var COMPLETED_EMOJI = "DONE";
|
|
1419
1419
|
var ERROR_EMOJI = "ERROR";
|
|
1420
|
+
var CARD_TERMINAL_REACTION_DELAY_MS = 2e3;
|
|
1420
1421
|
var CARD_THROTTLE_MS = 1e3;
|
|
1421
1422
|
var CARD_REQUEST_TIMEOUT_MS = 15e3;
|
|
1422
1423
|
var CARD_FINALIZE_FLUSH_WAIT_EXTRA_MS = 1e3;
|
|
@@ -1496,6 +1497,7 @@ var FeishuAdapter = class extends BaseChannelAdapter {
|
|
|
1496
1497
|
cardRequestTimeoutMs = CARD_REQUEST_TIMEOUT_MS;
|
|
1497
1498
|
cardFinalizeFlushWaitExtraMs = CARD_FINALIZE_FLUSH_WAIT_EXTRA_MS;
|
|
1498
1499
|
cardFullRefreshIntervalMs = CARD_FULL_REFRESH_INTERVAL_MS;
|
|
1500
|
+
cardTerminalReactionDelayMs = CARD_TERMINAL_REACTION_DELAY_MS;
|
|
1499
1501
|
constructor(instance) {
|
|
1500
1502
|
super();
|
|
1501
1503
|
this.channelType = instance?.id || "feishu";
|
|
@@ -2004,11 +2006,13 @@ ${trimmedResponse}`;
|
|
|
2004
2006
|
sequence: state.sequence
|
|
2005
2007
|
}
|
|
2006
2008
|
}));
|
|
2009
|
+
this.activeCards.delete(cardKey);
|
|
2010
|
+
console.log(`[feishu-adapter] Card finalized: streamKey=${cardKey}, cardId=${state.cardId}, status=${status}, elapsed=${formatElapsed(elapsedMs)}`);
|
|
2007
2011
|
const terminalReactionEmoji = status === "completed" ? COMPLETED_EMOJI : status === "error" ? ERROR_EMOJI : null;
|
|
2008
|
-
if (terminalReactionEmoji) {
|
|
2012
|
+
if (terminalReactionEmoji && this.hasTerminalReactionApi()) {
|
|
2013
|
+
await this.waitBeforeTerminalReaction();
|
|
2009
2014
|
await this.addTerminalReaction(cardKey, state.messageId, terminalReactionEmoji);
|
|
2010
2015
|
}
|
|
2011
|
-
console.log(`[feishu-adapter] Card finalized: streamKey=${cardKey}, cardId=${state.cardId}, status=${status}, elapsed=${formatElapsed(elapsedMs)}`);
|
|
2012
2016
|
return true;
|
|
2013
2017
|
} catch (err) {
|
|
2014
2018
|
console.warn("[feishu-adapter] Card finalize failed:", err instanceof Error ? err.message : err);
|
|
@@ -2017,6 +2021,15 @@ ${trimmedResponse}`;
|
|
|
2017
2021
|
this.activeCards.delete(cardKey);
|
|
2018
2022
|
}
|
|
2019
2023
|
}
|
|
2024
|
+
hasTerminalReactionApi() {
|
|
2025
|
+
const messageReaction = this.restClient?.im?.messageReaction;
|
|
2026
|
+
return typeof messageReaction?.create === "function";
|
|
2027
|
+
}
|
|
2028
|
+
async waitBeforeTerminalReaction() {
|
|
2029
|
+
const delayMs = Math.max(0, this.cardTerminalReactionDelayMs);
|
|
2030
|
+
if (delayMs <= 0) return;
|
|
2031
|
+
await new Promise((resolve2) => setTimeout(resolve2, delayMs));
|
|
2032
|
+
}
|
|
2020
2033
|
async addTerminalReaction(streamKey, messageId, emojiType) {
|
|
2021
2034
|
const messageReaction = this.restClient?.im?.messageReaction;
|
|
2022
2035
|
if (typeof messageReaction?.create !== "function") return;
|
package/package.json
CHANGED