From fc56cd135f4d974b5ebe64ee2176f5f00ae20617 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 20 Apr 2026 15:38:10 +0100 Subject: [PATCH] refactor: reuse telegram command keyboard helper --- extensions/telegram/src/command-ui.ts | 31 ++----------------------- package.json | 4 ++++ scripts/lib/plugin-sdk-entrypoints.json | 1 + 3 files changed, 7 insertions(+), 29 deletions(-) diff --git a/extensions/telegram/src/command-ui.ts b/extensions/telegram/src/command-ui.ts index bfd378a738a..4bd95ac8f69 100644 --- a/extensions/telegram/src/command-ui.ts +++ b/extensions/telegram/src/command-ui.ts @@ -1,4 +1,5 @@ import type { ReplyPayload } from "openclaw/plugin-sdk/reply-runtime"; +import { buildCommandsPaginationKeyboard } from "openclaw/plugin-sdk/telegram-command-ui"; import { buildBrowseProvidersButton, buildModelsKeyboard, @@ -6,35 +7,7 @@ import { type ProviderInfo, } from "./model-buttons.js"; -export function buildCommandsPaginationKeyboard( - currentPage: number, - totalPages: number, - agentId?: string, -): Array> { - const buttons: Array<{ text: string; callback_data: string }> = []; - const suffix = agentId ? `:${agentId}` : ""; - - if (currentPage > 1) { - buttons.push({ - text: "◀ Prev", - callback_data: `commands_page_${currentPage - 1}${suffix}`, - }); - } - - buttons.push({ - text: `${currentPage}/${totalPages}`, - callback_data: `commands_page_noop${suffix}`, - }); - - if (currentPage < totalPages) { - buttons.push({ - text: "Next ▶", - callback_data: `commands_page_${currentPage + 1}${suffix}`, - }); - } - - return [buttons]; -} +export { buildCommandsPaginationKeyboard }; export function buildTelegramCommandsListChannelData(params: { currentPage: number; diff --git a/package.json b/package.json index b1896ab1c77..47897a0b35f 100644 --- a/package.json +++ b/package.json @@ -1153,6 +1153,10 @@ "types": "./dist/plugin-sdk/telegram-command-config.d.ts", "default": "./dist/plugin-sdk/telegram-command-config.js" }, + "./plugin-sdk/telegram-command-ui": { + "types": "./dist/plugin-sdk/telegram-command-ui.d.ts", + "default": "./dist/plugin-sdk/telegram-command-ui.js" + }, "./plugin-sdk/text-autolink-runtime": { "types": "./dist/plugin-sdk/text-autolink-runtime.d.ts", "default": "./dist/plugin-sdk/text-autolink-runtime.js" diff --git a/scripts/lib/plugin-sdk-entrypoints.json b/scripts/lib/plugin-sdk-entrypoints.json index b16a16d3c70..bc06c53a014 100644 --- a/scripts/lib/plugin-sdk-entrypoints.json +++ b/scripts/lib/plugin-sdk-entrypoints.json @@ -274,6 +274,7 @@ "state-paths", "target-resolver-runtime", "telegram-command-config", + "telegram-command-ui", "text-autolink-runtime", "thread-ownership", "tlon",