23 lines
693 B
TypeScript
23 lines
693 B
TypeScript
export function parseTelegramReplyToMessageId(replyToId?: string | null): number | undefined {
|
|
if (!replyToId) {
|
|
return undefined;
|
|
}
|
|
const parsed = Number.parseInt(replyToId, 10);
|
|
return Number.isFinite(parsed) ? parsed : undefined;
|
|
}
|
|
|
|
export function parseTelegramThreadId(threadId?: string | number | null): number | undefined {
|
|
if (threadId == null) {
|
|
return undefined;
|
|
}
|
|
if (typeof threadId === "number") {
|
|
return Number.isFinite(threadId) ? Math.trunc(threadId) : undefined;
|
|
}
|
|
const trimmed = threadId.trim();
|
|
if (!trimmed) {
|
|
return undefined;
|
|
}
|
|
const parsed = Number.parseInt(trimmed, 10);
|
|
return Number.isFinite(parsed) ? parsed : undefined;
|
|
}
|