@songsid/agend 2.2.0 → 2.3.0-beta.2
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/agent-cli.js +248 -2
- package/dist/agent-cli.js.map +1 -1
- package/dist/agent-endpoint.d.ts +2 -0
- package/dist/agent-endpoint.js +25 -0
- package/dist/agent-endpoint.js.map +1 -1
- package/dist/agent-file-read.d.ts +35 -0
- package/dist/agent-file-read.js +144 -0
- package/dist/agent-file-read.js.map +1 -0
- package/dist/agent-whats-new.js +8 -0
- package/dist/agent-whats-new.js.map +1 -1
- package/dist/atomic-write.js +9 -1
- package/dist/atomic-write.js.map +1 -1
- package/dist/auth-api.js +17 -0
- package/dist/auth-api.js.map +1 -1
- package/dist/backend/antigravity.js +3 -3
- package/dist/backend/antigravity.js.map +1 -1
- package/dist/backend/claude-code.js +5 -1
- package/dist/backend/claude-code.js.map +1 -1
- package/dist/backend/launch-effort.js +1 -1
- package/dist/backend/launch-effort.js.map +1 -1
- package/dist/backend/muse.js +10 -2
- package/dist/backend/muse.js.map +1 -1
- package/dist/backend/types.d.ts +8 -0
- package/dist/backend/types.js +10 -0
- package/dist/backend/types.js.map +1 -1
- package/dist/cache-analysis.d.ts +47 -1
- package/dist/cache-analysis.js +68 -8
- package/dist/cache-analysis.js.map +1 -1
- package/dist/cache-report-tool.d.ts +17 -0
- package/dist/cache-report-tool.js +40 -0
- package/dist/cache-report-tool.js.map +1 -0
- package/dist/cache-service.d.ts +15 -0
- package/dist/cache-service.js +26 -1
- package/dist/cache-service.js.map +1 -1
- package/dist/channel/adapters/discord.d.ts +2 -0
- package/dist/channel/adapters/discord.js +17 -2
- package/dist/channel/adapters/discord.js.map +1 -1
- package/dist/channel/adapters/telegram.d.ts +8 -1
- package/dist/channel/adapters/telegram.js +74 -4
- package/dist/channel/adapters/telegram.js.map +1 -1
- package/dist/channel/mcp-tools.js +36 -0
- package/dist/channel/mcp-tools.js.map +1 -1
- package/dist/channel/types.d.ts +15 -0
- package/dist/cli.js +7 -3
- package/dist/cli.js.map +1 -1
- package/dist/config-validator.js +22 -2
- package/dist/config-validator.js.map +1 -1
- package/dist/daemon.js +244 -20
- package/dist/daemon.js.map +1 -1
- package/dist/fleet-context.d.ts +5 -0
- package/dist/fleet-manager.d.ts +92 -0
- package/dist/fleet-manager.js +410 -29
- package/dist/fleet-manager.js.map +1 -1
- package/dist/general-knowledge/skills/credential-profiles/SKILL.md +7 -0
- package/dist/general-knowledge/skills/web-appearance/SKILL.md +367 -0
- package/dist/instance-avatar.js +3 -0
- package/dist/instance-avatar.js.map +1 -1
- package/dist/instance-config-impact.js +3 -0
- package/dist/instance-config-impact.js.map +1 -1
- package/dist/instance-lifecycle.js +9 -4
- package/dist/instance-lifecycle.js.map +1 -1
- package/dist/needs-you-hub.d.ts +4 -0
- package/dist/needs-you-hub.js +31 -6
- package/dist/needs-you-hub.js.map +1 -1
- package/dist/needs-you.d.ts +1 -13
- package/dist/needs-you.js +3 -37
- package/dist/needs-you.js.map +1 -1
- package/dist/outbound-handlers.d.ts +7 -0
- package/dist/outbound-handlers.js +65 -10
- package/dist/outbound-handlers.js.map +1 -1
- package/dist/outbound-schemas.d.ts +74 -0
- package/dist/outbound-schemas.js +56 -0
- package/dist/outbound-schemas.js.map +1 -1
- package/dist/public-web-gateway.js +14 -0
- package/dist/public-web-gateway.js.map +1 -1
- package/dist/repo-worktree-guard.d.ts +36 -0
- package/dist/repo-worktree-guard.js +143 -0
- package/dist/repo-worktree-guard.js.map +1 -0
- package/dist/scheduler/scheduler.d.ts +70 -1
- package/dist/scheduler/scheduler.js +256 -17
- package/dist/scheduler/scheduler.js.map +1 -1
- package/dist/service-installer.d.ts +2 -1
- package/dist/service-installer.js +18 -3
- package/dist/service-installer.js.map +1 -1
- package/dist/settings-api.js +74 -1
- package/dist/settings-api.js.map +1 -1
- package/dist/settings-change.js +8 -0
- package/dist/settings-change.js.map +1 -1
- package/dist/settings-effect.js +16 -2
- package/dist/settings-effect.js.map +1 -1
- package/dist/settings-http-confirmation.js +5 -0
- package/dist/settings-http-confirmation.js.map +1 -1
- package/dist/tool-permissions.d.ts +5 -0
- package/dist/tool-permissions.js +61 -2
- package/dist/tool-permissions.js.map +1 -1
- package/dist/topic-commands.d.ts +10 -6
- package/dist/topic-commands.js +21 -17
- package/dist/topic-commands.js.map +1 -1
- package/dist/topic-link.d.ts +128 -0
- package/dist/topic-link.js +269 -0
- package/dist/topic-link.js.map +1 -0
- package/dist/types.d.ts +13 -0
- package/dist/ui/app-effects.js +187 -0
- package/dist/ui/chat-effect-posters.js +42 -0
- package/dist/ui/chat-effects.js +72 -0
- package/dist/ui/chat-live-replies.js +58 -0
- package/dist/ui/chat-render.js +4 -4
- package/dist/ui/chat-store.js +9 -3
- package/dist/ui/chat-strings.js +15 -0
- package/dist/ui/chat-thread.js +47 -21
- package/dist/ui/chat-tour.js +1 -1
- package/dist/ui/effect-trial-controller.js +119 -0
- package/dist/ui/effect-trial-offer.js +31 -0
- package/dist/ui/effect-trial-panel.js +37 -0
- package/dist/ui/fleet-cache.js +23 -1
- package/dist/ui/image-lightbox.js +1 -1
- package/dist/ui/panel-chat.js +85 -17
- package/dist/ui/panel-details.js +18 -5
- package/dist/ui/panel-fleet.js +3 -3
- package/dist/ui/panel-log.js +6 -6
- package/dist/ui/panel-needs.js +3 -3
- package/dist/ui/panel-settings.js +8 -5
- package/dist/ui/preview-panel.js +25 -9
- package/dist/ui/settings-appearance.js +325 -0
- package/dist/ui/settings-effects.js +201 -0
- package/dist/ui/settings-mods.js +257 -0
- package/dist/ui/settings-owner-effects.js +80 -0
- package/dist/ui/settings-strings.js +245 -0
- package/dist/ui/shared/agend-auth.js +27 -3
- package/dist/ui/shared/agent-widget.js +248 -0
- package/dist/ui/shared/app-i18n.js +2 -0
- package/dist/ui/shared/app-prefs.js +30 -10
- package/dist/ui/shared/app-route.js +23 -1
- package/dist/ui/shared/app-session.js +1 -1
- package/dist/ui/shared/app-shell.js +29 -16
- package/dist/ui/shared/app-store.js +2 -0
- package/dist/ui/shared/app-stream.js +12 -7
- package/dist/ui/shared/app-themes.js +188 -0
- package/dist/ui/shared/app.css +225 -3
- package/dist/ui/shared/app.js +6 -0
- package/dist/ui/shared/card-strings.js +28 -0
- package/dist/ui/shared/effect-app-runtime.js +248 -0
- package/dist/ui/shared/effect-baseline.js +64 -0
- package/dist/ui/shared/effect-chat-runtime.js +154 -0
- package/dist/ui/shared/effect-cursor.js +125 -0
- package/dist/ui/shared/effect-frame.js +127 -0
- package/dist/ui/shared/effect-geometry.js +122 -0
- package/dist/ui/shared/effect-host-style.js +10 -0
- package/dist/ui/shared/effect-owner-regions.js +74 -0
- package/dist/ui/shared/effect-owner-source.js +115 -0
- package/dist/ui/shared/effect-policy.js +137 -0
- package/dist/ui/shared/effect-poster-reader.js +98 -0
- package/dist/ui/shared/effect-posters.js +117 -0
- package/dist/ui/shared/effect-profiler.js +162 -0
- package/dist/ui/shared/effect-profiles.js +65 -0
- package/dist/ui/shared/effect-registry.js +496 -0
- package/dist/ui/shared/effect-runtime-loader.js +234 -0
- package/dist/ui/shared/effect-safety.js +153 -0
- package/dist/ui/shared/effect-stock-snapshot.js +34 -0
- package/dist/ui/shared/effect-stock-trust.js +165 -0
- package/dist/ui/shared/effect-trial-source.js +103 -0
- package/dist/ui/shared/effect-trial-stage.js +147 -0
- package/dist/ui/shared/header-tools.js +1 -1
- package/dist/ui/shared/identity-card.js +202 -0
- package/dist/ui/shared/identity-color.js +261 -0
- package/dist/ui/shared/instance-nav.js +37 -19
- package/dist/ui/shared/owner-css.js +221 -0
- package/dist/ui/shared/owner-effect-prefs.js +117 -0
- package/dist/ui/shared/panel-view.js +81 -8
- package/dist/ui/shared/signin.js +2 -0
- package/dist/ui/shared/ui-dialog.js +1 -1
- package/dist/ui/shared/ui-icons.js +2 -0
- package/dist/ui/shared/ui-menu.js +1 -1
- package/dist/ui/shared/ui-toast.js +1 -1
- package/dist/ui/shared/usage-dialog.js +14 -2
- package/dist/ui/shared/view-strings.js +36 -2
- package/dist/ui/signin.html +1 -0
- package/dist/usage/providers.d.ts +3 -0
- package/dist/usage/providers.js +4 -3
- package/dist/usage/providers.js.map +1 -1
- package/dist/view-api.d.ts +29 -0
- package/dist/view-api.js +188 -8
- package/dist/view-api.js.map +1 -1
- package/dist/web-api.d.ts +42 -0
- package/dist/web-api.js +898 -36
- package/dist/web-api.js.map +1 -1
- package/dist/web-appearance-limits.d.ts +82 -0
- package/dist/web-appearance-limits.js +83 -0
- package/dist/web-appearance-limits.js.map +1 -0
- package/dist/web-appearance-policy.d.ts +66 -0
- package/dist/web-appearance-policy.js +94 -0
- package/dist/web-appearance-policy.js.map +1 -0
- package/dist/web-appearance-tools.d.ts +50 -0
- package/dist/web-appearance-tools.js +105 -0
- package/dist/web-appearance-tools.js.map +1 -0
- package/dist/web-appearance-view.d.ts +99 -0
- package/dist/web-appearance-view.js +163 -0
- package/dist/web-appearance-view.js.map +1 -0
- package/dist/web-appearance.d.ts +79 -0
- package/dist/web-appearance.js +298 -0
- package/dist/web-appearance.js.map +1 -0
- package/dist/web-asset-parts.d.ts +93 -0
- package/dist/web-asset-parts.js +133 -0
- package/dist/web-asset-parts.js.map +1 -0
- package/dist/web-auth.js +17 -1
- package/dist/web-auth.js.map +1 -1
- package/dist/web-card.d.ts +96 -0
- package/dist/web-card.js +232 -0
- package/dist/web-card.js.map +1 -0
- package/dist/web-chat-history.d.ts +13 -0
- package/dist/web-chat-history.js +23 -2
- package/dist/web-chat-history.js.map +1 -1
- package/dist/web-effect-bundle.d.ts +28 -0
- package/dist/web-effect-bundle.js +126 -0
- package/dist/web-effect-bundle.js.map +1 -0
- package/dist/web-effect-canonical.d.ts +8 -0
- package/dist/web-effect-canonical.js +27 -0
- package/dist/web-effect-canonical.js.map +1 -0
- package/dist/web-effect-library.d.ts +114 -0
- package/dist/web-effect-library.js +530 -0
- package/dist/web-effect-library.js.map +1 -0
- package/dist/web-effect-poster.d.ts +8 -0
- package/dist/web-effect-poster.js +52 -0
- package/dist/web-effect-poster.js.map +1 -0
- package/dist/web-effect-profiles.d.ts +118 -0
- package/dist/web-effect-profiles.js +180 -0
- package/dist/web-effect-profiles.js.map +1 -0
- package/dist/web-effect-service.d.ts +86 -0
- package/dist/web-effect-service.js +314 -0
- package/dist/web-effect-service.js.map +1 -0
- package/dist/web-effect-tools.d.ts +47 -0
- package/dist/web-effect-tools.js +129 -0
- package/dist/web-effect-tools.js.map +1 -0
- package/dist/web-effect-trials.d.ts +86 -0
- package/dist/web-effect-trials.js +204 -0
- package/dist/web-effect-trials.js.map +1 -0
- package/dist/web-effect-upload.d.ts +27 -0
- package/dist/web-effect-upload.js +185 -0
- package/dist/web-effect-upload.js.map +1 -0
- package/dist/web-effect-worker.d.ts +8 -0
- package/dist/web-effect-worker.js +170 -0
- package/dist/web-effect-worker.js.map +1 -0
- package/dist/web-effect.d.ts +103 -0
- package/dist/web-effect.js +153 -0
- package/dist/web-effect.js.map +1 -0
- package/dist/web-identity-color.d.ts +87 -0
- package/dist/web-identity-color.js +209 -0
- package/dist/web-identity-color.js.map +1 -0
- package/dist/web-identity-palette.d.ts +113 -0
- package/dist/web-identity-palette.js +84 -0
- package/dist/web-identity-palette.js.map +1 -0
- package/dist/web-image-meta.d.ts +25 -0
- package/dist/web-image-meta.js +200 -0
- package/dist/web-image-meta.js.map +1 -0
- package/dist/web-mod-agent.d.ts +50 -0
- package/dist/web-mod-agent.js +205 -0
- package/dist/web-mod-agent.js.map +1 -0
- package/dist/web-mod-bundle.d.ts +149 -0
- package/dist/web-mod-bundle.js +470 -0
- package/dist/web-mod-bundle.js.map +1 -0
- package/dist/web-mod-export.d.ts +59 -0
- package/dist/web-mod-export.js +79 -0
- package/dist/web-mod-export.js.map +1 -0
- package/dist/web-mod-store.d.ts +283 -0
- package/dist/web-mod-store.js +625 -0
- package/dist/web-mod-store.js.map +1 -0
- package/dist/web-org.d.ts +3 -3
- package/dist/web-org.js +11 -17
- package/dist/web-org.js.map +1 -1
- package/dist/web-owner-css-store.d.ts +180 -0
- package/dist/web-owner-css-store.js +384 -0
- package/dist/web-owner-css-store.js.map +1 -0
- package/dist/web-owner-css.d.ts +58 -0
- package/dist/web-owner-css.js +552 -0
- package/dist/web-owner-css.js.map +1 -0
- package/dist/web-prefs.d.ts +48 -0
- package/dist/web-prefs.js +209 -33
- package/dist/web-prefs.js.map +1 -1
- package/dist/web-preview.d.ts +9 -1
- package/dist/web-preview.js +24 -7
- package/dist/web-preview.js.map +1 -1
- package/dist/web-settings-patch.d.ts +18 -0
- package/dist/web-settings-patch.js +51 -0
- package/dist/web-settings-patch.js.map +1 -1
- package/dist/web-shell-routes.d.ts +1 -1
- package/dist/web-shell-routes.js +1 -1
- package/dist/web-shell-routes.js.map +1 -1
- package/dist/web-theme-store.d.ts +218 -0
- package/dist/web-theme-store.js +516 -0
- package/dist/web-theme-store.js.map +1 -0
- package/dist/web-theme.d.ts +121 -0
- package/dist/web-theme.js +407 -0
- package/dist/web-theme.js.map +1 -0
- package/dist/web-widget.d.ts +72 -0
- package/dist/web-widget.js +245 -0
- package/dist/web-widget.js.map +1 -0
- package/package.json +1 -1
- package/templates/systemd.service.ejs +8 -0
|
@@ -14,6 +14,7 @@ import { Client, GatewayIntentBits, Partials, ActionRowBuilder, ButtonBuilder, B
|
|
|
14
14
|
import { downloadStickerImage } from "../sticker-download.js";
|
|
15
15
|
import { MessageQueue } from "../message-queue.js";
|
|
16
16
|
import { splitTextFenceAware, truncatePreview, fenceBlock } from "../markdown-chunk.js";
|
|
17
|
+
import { stripPlaceRefs } from "../../topic-link.js";
|
|
17
18
|
import { CROSS_INSTANCE_VISIBILITY_MODES } from "../../cross-instance-notice.js";
|
|
18
19
|
import { POLL_STATUS_CALLBACK } from "../../reply-polls.js";
|
|
19
20
|
const DISCORD_MAX_LENGTH = 2000;
|
|
@@ -1406,14 +1407,26 @@ export class DiscordAdapter extends EventEmitter {
|
|
|
1406
1407
|
}
|
|
1407
1408
|
return out;
|
|
1408
1409
|
}
|
|
1410
|
+
/** #1990: whether `userId` is in the guild now (one member read; an unknown member or any error rejects). */
|
|
1411
|
+
async isGroupMember(groupId, userId) {
|
|
1412
|
+
if (!/^\d{5,25}$/.test(userId) || !groupId || groupId !== this.guildId)
|
|
1413
|
+
return false;
|
|
1414
|
+
const guild = await (await this.readyClient()).guilds.fetch(this.guildId);
|
|
1415
|
+
// force: a read from Discord, never the member cache — without the GuildMembers intent a member who left can
|
|
1416
|
+
// stay cached, and each ten-minute recheck would confirm them again.
|
|
1417
|
+
await guild.members.fetch({ user: userId, force: true });
|
|
1418
|
+
return true;
|
|
1419
|
+
}
|
|
1409
1420
|
/** Private delivery: a DM to the user (fails if the user disallows DMs from this server). */
|
|
1410
1421
|
async sendDirect(userId, text, opts) {
|
|
1422
|
+
text = stripPlaceRefs(text);
|
|
1411
1423
|
const user = await this.client.users.fetch(userId);
|
|
1412
1424
|
const dm = await user.createDM();
|
|
1413
1425
|
const sent = await dm.send({ content: text, ...(opts?.disablePreview ? { flags: MessageFlags.SuppressEmbeds } : {}), ...(opts?.choices ? { components: buttonRows(opts.choices) } : {}), allowedMentions: { parse: [] } });
|
|
1414
1426
|
return { messageId: sent.id, chatId: dm.id };
|
|
1415
1427
|
}
|
|
1416
1428
|
async sendText(chatId, text, opts) {
|
|
1429
|
+
text = stripPlaceRefs(text);
|
|
1417
1430
|
const channelId = opts?.threadId ?? chatId;
|
|
1418
1431
|
const channel = await this._fetchTextChannel(channelId);
|
|
1419
1432
|
const chunkLimit = opts?.chunkLimit ?? DISCORD_MAX_LENGTH;
|
|
@@ -1483,6 +1496,7 @@ export class DiscordAdapter extends EventEmitter {
|
|
|
1483
1496
|
}
|
|
1484
1497
|
/** #1651: `_opts.format` changes nothing here — Discord always renders Markdown (as sendText ignores it too). */
|
|
1485
1498
|
async editMessage(chatId, messageId, text, threadId, _opts) {
|
|
1499
|
+
text = stripPlaceRefs(text);
|
|
1486
1500
|
// Prefer the exact channel (handles forum-topic threads, which a GuildText
|
|
1487
1501
|
// scan misses). chatId is the guild id in the channels topology, so the
|
|
1488
1502
|
// message actually lives in threadId (when set) or a specific text channel.
|
|
@@ -1535,6 +1549,7 @@ export class DiscordAdapter extends EventEmitter {
|
|
|
1535
1549
|
await msg.edit({ components: [] });
|
|
1536
1550
|
}
|
|
1537
1551
|
async editMessageRemoveButtons(chatId, messageId, text, threadId) {
|
|
1552
|
+
text = stripPlaceRefs(text);
|
|
1538
1553
|
// Prefer the exact channel (handles forum-topic threads, which a GuildText
|
|
1539
1554
|
// scan misses); fall back to scanning top-level text channels.
|
|
1540
1555
|
let exactError;
|
|
@@ -1908,7 +1923,7 @@ export class DiscordAdapter extends EventEmitter {
|
|
|
1908
1923
|
if (alert.choices && alert.choices.length > 0) {
|
|
1909
1924
|
const channelId = opts?.threadId ?? chatId;
|
|
1910
1925
|
const channel = await this._fetchTextChannel(channelId);
|
|
1911
|
-
const msg = await channel.send({ content: alert.message, components: buttonRows(alert.choices) });
|
|
1926
|
+
const msg = await channel.send({ content: stripPlaceRefs(alert.message), components: buttonRows(alert.choices) });
|
|
1912
1927
|
// The address this adapter's own callbacks report for these buttons
|
|
1913
1928
|
// (guild + channel as thread), not the caller's spelling of it (#1131).
|
|
1914
1929
|
// A native slash command addresses its channel as the chat; the button
|
|
@@ -1937,7 +1952,7 @@ export class DiscordAdapter extends EventEmitter {
|
|
|
1937
1952
|
const channel = await this._fetchTextChannel(opts?.threadId ?? chatId);
|
|
1938
1953
|
const msg = await channel.messages.fetch(messageId);
|
|
1939
1954
|
await msg.edit({
|
|
1940
|
-
content: truncatePreview(alert.message, DISCORD_MAX_LENGTH),
|
|
1955
|
+
content: truncatePreview(stripPlaceRefs(alert.message), DISCORD_MAX_LENGTH),
|
|
1941
1956
|
components: buttonRows(alert.choices ?? []),
|
|
1942
1957
|
});
|
|
1943
1958
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discord.js","sourceRoot":"","sources":["../../../src/channel/adapters/discord.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discord.js","sourceRoot":"","sources":["../../../src/channel/adapters/discord.ts"],"names":[],"mappings":"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"}
|
|
@@ -193,6 +193,13 @@ export declare class TelegramAdapter extends EventEmitter implements ChannelAdap
|
|
|
193
193
|
private lastChatId;
|
|
194
194
|
getChatId(): string | null;
|
|
195
195
|
setChatId(chatId: string): void;
|
|
196
|
+
private readonly groupUsernames;
|
|
197
|
+
private readonly groupUsernameReads;
|
|
198
|
+
private static readonly GROUP_USERNAME_TTL_MS;
|
|
199
|
+
/** #1990: the group's public @username as last read; a missing or stale one starts a background getChat. */
|
|
200
|
+
groupUsername(groupId: string): string | undefined;
|
|
201
|
+
/** #1990: whether `userId` is in the group now (getChatMember; an error rejects). */
|
|
202
|
+
isGroupMember(groupId: string, userId: string): Promise<boolean>;
|
|
196
203
|
/**
|
|
197
204
|
* Verify a prospective Telegram group/forum binding with the current bot
|
|
198
205
|
* token. This uses getChat/getMe/getChatMember only; it never starts a
|
|
@@ -233,7 +240,7 @@ export declare class TelegramAdapter extends EventEmitter implements ChannelAdap
|
|
|
233
240
|
* `editMessageRemoveButtons` works. Editing a cancel-button message with it would
|
|
234
241
|
* delete the cancel button.
|
|
235
242
|
*/
|
|
236
|
-
editAlert(chatId: string, messageId: string, alert: AlertData): Promise<void>;
|
|
243
|
+
editAlert(chatId: string, messageId: string, alert: AlertData, opts?: SendOpts): Promise<void>;
|
|
237
244
|
createTopic(name: string): Promise<number>;
|
|
238
245
|
deleteTopic(topicId: number | string): Promise<void>;
|
|
239
246
|
probeTopicPresence(topicId: number | string): Promise<TopicPresence>;
|
|
@@ -7,6 +7,7 @@ import { createReadStream, mkdirSync, readdirSync, statSync, unlinkSync } from "
|
|
|
7
7
|
import { join, extname, basename } from "node:path";
|
|
8
8
|
import { Bot, GrammyError, HttpError, InputFile } from "grammy";
|
|
9
9
|
import { InlineKeyboard } from "grammy";
|
|
10
|
+
import { stripPlaceRefs } from "../../topic-link.js";
|
|
10
11
|
import { downloadStickerImage } from "../sticker-download.js";
|
|
11
12
|
import { isTelegramParseRefusal, markdownToTelegramHtml } from "../telegram-markdown.js";
|
|
12
13
|
import { MessageQueue } from "../message-queue.js";
|
|
@@ -157,6 +158,18 @@ export function toThreadId(threadId) {
|
|
|
157
158
|
return undefined;
|
|
158
159
|
return Number(threadId);
|
|
159
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* #1990: `SendOpts.textLinks` as Telegram `text_link` entities, for a plain-text send (no parse mode) — undefined when
|
|
163
|
+
* there are none, the text is HTML/markdown, or a link does not lie inside the text.
|
|
164
|
+
*/
|
|
165
|
+
function plainTextLinks(text, opts) {
|
|
166
|
+
if (!opts?.textLinks?.length || (opts.format !== undefined && opts.format !== "text"))
|
|
167
|
+
return undefined;
|
|
168
|
+
const fits = (l) => Number.isInteger(l.offset) && Number.isInteger(l.length) && l.offset >= 0 && l.length > 0 && l.offset + l.length <= text.length && /^https:\/\/\S+$/.test(l.url);
|
|
169
|
+
if (!opts.textLinks.every(fits))
|
|
170
|
+
return undefined;
|
|
171
|
+
return opts.textLinks.map(l => ({ type: "text_link", offset: l.offset, length: l.length, url: l.url }));
|
|
172
|
+
}
|
|
160
173
|
function threadOptions(threadId) {
|
|
161
174
|
const id = toThreadId(threadId);
|
|
162
175
|
return id === undefined ? {} : { message_thread_id: id };
|
|
@@ -766,22 +779,35 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
766
779
|
* id). Telegram rejects this until the user has messaged the bot once.
|
|
767
780
|
*/
|
|
768
781
|
async sendDirect(userId, text, opts) {
|
|
782
|
+
text = stripPlaceRefs(text);
|
|
783
|
+
const links = plainTextLinks(text, opts);
|
|
769
784
|
const msg = await this.bot.api.sendMessage(Number(userId), text, {
|
|
770
785
|
...(opts?.choices ? { reply_markup: { inline_keyboard: opts.choices.map(c => [{ text: c.label, callback_data: c.id }]) } } : {}),
|
|
771
786
|
...(opts?.format === "html" ? { parse_mode: "HTML" } : {}),
|
|
772
|
-
...(opts?.disablePreview ? { link_preview_options: { is_disabled: true } } : {}),
|
|
787
|
+
...(opts?.disablePreview || links ? { link_preview_options: { is_disabled: true } } : {}),
|
|
788
|
+
...(links ? { entities: links } : {}),
|
|
773
789
|
});
|
|
774
790
|
return { messageId: String(msg.message_id), chatId: String(userId) };
|
|
775
791
|
}
|
|
776
792
|
/** #1266: this adapter puts a reply's buttons (an inline keyboard) on its last message. */
|
|
777
793
|
get supportsReplyButtons() { return true; }
|
|
778
794
|
async sendText(chatId, text, opts) {
|
|
795
|
+
text = stripPlaceRefs(text);
|
|
779
796
|
if (opts?.replyPoll)
|
|
780
797
|
return this.sendTextWithReplyButtons(chatId, text, opts, telegramPollKeyboard(opts.replyPoll, Date.now()));
|
|
781
798
|
if (opts?.replyButtons?.length)
|
|
782
799
|
return this.sendTextWithReplyButtons(chatId, text, opts, telegramReplyKeyboard(opts.replyButtons));
|
|
783
800
|
if (opts?.urlButtons?.length)
|
|
784
801
|
return this.sendTextWithUrlButtons(chatId, text, opts, opts.urlButtons);
|
|
802
|
+
// #1990: a notice whose place names are links — one plain message carrying them as entities (no parse mode, so
|
|
803
|
+
// nothing in the text needs escaping). A longer text is sent as below, without them.
|
|
804
|
+
const links = plainTextLinks(text, opts);
|
|
805
|
+
if (links && text.length <= (opts?.chunkLimit ?? 4096)) {
|
|
806
|
+
const msg = await this.bot.api.sendMessage(Number(chatId), text, {
|
|
807
|
+
...threadOptions(opts?.threadId), entities: links, link_preview_options: { is_disabled: true },
|
|
808
|
+
});
|
|
809
|
+
return { messageId: String(msg.message_id), chatId, threadId: opts?.threadId };
|
|
810
|
+
}
|
|
785
811
|
// Try rich message for content with tables, code blocks, headings, etc.
|
|
786
812
|
if (this.needsRichMessage(text)) {
|
|
787
813
|
const sendRichMessage = this.bot.api.raw?.sendRichMessage;
|
|
@@ -963,6 +989,7 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
963
989
|
}
|
|
964
990
|
/** #1651: render HTML/markdown like sendMessage, retaining the parse-refusal-only plain-text fallback. */
|
|
965
991
|
async editMessage(chatId, messageId, text, _threadId, opts) {
|
|
992
|
+
text = stripPlaceRefs(text);
|
|
966
993
|
if (opts?.format === "markdown") {
|
|
967
994
|
try {
|
|
968
995
|
await this.editText(Number(chatId), Number(messageId), markdownToTelegramHtml(text), { parse_mode: "HTML" });
|
|
@@ -979,6 +1006,7 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
979
1006
|
}
|
|
980
1007
|
/** Edit text and drop the inline keyboard (omitting reply_markup clears it). */
|
|
981
1008
|
async editMessageRemoveButtons(chatId, messageId, text, _threadId, urlButtons) {
|
|
1009
|
+
text = stripPlaceRefs(text);
|
|
982
1010
|
await this.editText(Number(chatId), Number(messageId), text, {
|
|
983
1011
|
reply_markup: { inline_keyboard: urlButtons?.map(b => [{ text: b.label, url: b.url }]) ?? [] },
|
|
984
1012
|
});
|
|
@@ -1222,6 +1250,42 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
1222
1250
|
lastChatId = null;
|
|
1223
1251
|
getChatId() { return this.lastChatId; }
|
|
1224
1252
|
setChatId(chatId) { this.lastChatId = chatId; }
|
|
1253
|
+
// #1990: each group's public @username, as last read (null: it has none), and the reads in flight.
|
|
1254
|
+
groupUsernames = new Map();
|
|
1255
|
+
groupUsernameReads = new Map();
|
|
1256
|
+
static GROUP_USERNAME_TTL_MS = 60 * 60_000;
|
|
1257
|
+
/** #1990: the group's public @username as last read; a missing or stale one starts a background getChat. */
|
|
1258
|
+
groupUsername(groupId) {
|
|
1259
|
+
const cached = this.groupUsernames.get(groupId);
|
|
1260
|
+
const now = performance.now();
|
|
1261
|
+
const reading = this.groupUsernameReads.get(groupId);
|
|
1262
|
+
// A read that has not answered in a minute no longer holds the next one back.
|
|
1263
|
+
if ((!cached || now - cached.at > TelegramAdapter.GROUP_USERNAME_TTL_MS) && (reading === undefined || now - reading > 60_000)) {
|
|
1264
|
+
const chatId = Number(groupId);
|
|
1265
|
+
if (Number.isSafeInteger(chatId) && groupId.startsWith("-100")) {
|
|
1266
|
+
this.groupUsernameReads.set(groupId, now);
|
|
1267
|
+
this.bot.api.getChat(chatId)
|
|
1268
|
+
.then(chat => {
|
|
1269
|
+
const name = "username" in chat && typeof chat.username === "string" ? chat.username : null;
|
|
1270
|
+
this.groupUsernames.set(groupId, { value: name, at: performance.now() });
|
|
1271
|
+
})
|
|
1272
|
+
.catch(() => { })
|
|
1273
|
+
.finally(() => { if (this.groupUsernameReads.get(groupId) === now)
|
|
1274
|
+
this.groupUsernameReads.delete(groupId); });
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
return cached?.value ?? undefined;
|
|
1278
|
+
}
|
|
1279
|
+
/** #1990: whether `userId` is in the group now (getChatMember; an error rejects). */
|
|
1280
|
+
async isGroupMember(groupId, userId) {
|
|
1281
|
+
const chatId = Number(groupId);
|
|
1282
|
+
const user = Number(userId);
|
|
1283
|
+
if (!Number.isSafeInteger(chatId) || !Number.isSafeInteger(user) || user <= 0)
|
|
1284
|
+
return false;
|
|
1285
|
+
const member = await this.bot.api.getChatMember(chatId, user);
|
|
1286
|
+
return member.status === "creator" || member.status === "administrator" || member.status === "member"
|
|
1287
|
+
|| (member.status === "restricted" && member.is_member === true);
|
|
1288
|
+
}
|
|
1225
1289
|
/**
|
|
1226
1290
|
* Verify a prospective Telegram group/forum binding with the current bot
|
|
1227
1291
|
* token. This uses getChat/getMe/getChatMember only; it never starts a
|
|
@@ -1378,9 +1442,12 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
1378
1442
|
for (const choice of alert.choices) {
|
|
1379
1443
|
keyboard.text(choice.label, choice.id);
|
|
1380
1444
|
}
|
|
1381
|
-
const
|
|
1445
|
+
const message = stripPlaceRefs(alert.message);
|
|
1446
|
+
const links = plainTextLinks(message, opts);
|
|
1447
|
+
const msg = await this.bot.api.sendMessage(Number(chatId), message, {
|
|
1382
1448
|
...threadOptions(threadId),
|
|
1383
1449
|
reply_markup: keyboard,
|
|
1450
|
+
...(links ? { entities: links, link_preview_options: { is_disabled: true } } : {}),
|
|
1384
1451
|
});
|
|
1385
1452
|
const deliveredThreadId = toThreadId(threadId);
|
|
1386
1453
|
return {
|
|
@@ -1402,12 +1469,15 @@ export class TelegramAdapter extends EventEmitter {
|
|
|
1402
1469
|
* `editMessageRemoveButtons` works. Editing a cancel-button message with it would
|
|
1403
1470
|
* delete the cancel button.
|
|
1404
1471
|
*/
|
|
1405
|
-
async editAlert(chatId, messageId, alert) {
|
|
1472
|
+
async editAlert(chatId, messageId, alert, opts) {
|
|
1406
1473
|
const keyboard = new InlineKeyboard();
|
|
1407
1474
|
for (const choice of alert.choices ?? [])
|
|
1408
1475
|
keyboard.text(choice.label, choice.id);
|
|
1409
|
-
|
|
1476
|
+
const message = stripPlaceRefs(alert.message);
|
|
1477
|
+
const links = plainTextLinks(message, opts);
|
|
1478
|
+
await this.editText(Number(chatId), Number(messageId), message, {
|
|
1410
1479
|
reply_markup: keyboard,
|
|
1480
|
+
...(links ? { entities: links, link_preview_options: { is_disabled: true } } : {}),
|
|
1411
1481
|
});
|
|
1412
1482
|
}
|
|
1413
1483
|
async createTopic(name) {
|