refactor(telegram): tighten helper field readers

This commit is contained in:
Ayaan Zaidi 2026-03-28 09:57:21 +05:30
parent f9aa226d93
commit 8465ddc1cc
No known key found for this signature in database
2 changed files with 10 additions and 6 deletions

View File

@ -19,10 +19,10 @@ export type TelegramThreadSpec = {
};
export function extractTelegramForumFlag(value: unknown): boolean | undefined {
if (!value || typeof value !== "object") {
if (!value || typeof value !== "object" || !("is_forum" in value)) {
return undefined;
}
const forum = (value as { is_forum?: unknown }).is_forum;
const forum = value.is_forum;
return typeof forum === "boolean" ? forum : undefined;
}

View File

@ -21,13 +21,17 @@ function normalizeInlineButtonsScope(value: unknown): TelegramInlineButtonsScope
return undefined;
}
function readInlineButtonsCapability(value: unknown): unknown {
if (!value || Array.isArray(value) || typeof value !== "object" || !("inlineButtons" in value)) {
return undefined;
}
return value.inlineButtons;
}
export function resolveTelegramInlineButtonsConfigScope(
capabilities: unknown,
): TelegramInlineButtonsScope | undefined {
if (!capabilities || Array.isArray(capabilities) || typeof capabilities !== "object") {
return undefined;
}
return normalizeInlineButtonsScope((capabilities as { inlineButtons?: unknown }).inlineButtons);
return normalizeInlineButtonsScope(readInlineButtonsCapability(capabilities));
}
export function resolveTelegramInlineButtonsScopeFromCapabilities(