openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
29 lines (28 loc) • 1.57 kB
JavaScript
import { n as normalizeAccountId } from "./account-id-ifCOO7_9.mjs";
import "./account-core-B7vrlPUK.mjs";
import { a as mergeTelegramAccountConfig, i as resolveDefaultTelegramAccountSelection } from "./account-selection-B6bGjjlD.mjs";
import { d as mapAllowFromEntries } from "./channel-config-helpers-Bi1bDD1D.mjs";
import { i as createResolvedDirectoryEntriesLister } from "./directory-config-helpers-Dbn1ZmZO.mjs";
//#region extensions/telegram/src/directory-config.ts
function resolveTelegramDirectoryConfig(cfg, accountId) {
const resolvedAccountId = accountId?.trim() ? normalizeAccountId(accountId) : resolveDefaultTelegramAccountSelection(cfg).accountId;
return mergeTelegramAccountConfig(cfg, resolvedAccountId);
}
const listTelegramDirectoryPeersFromConfig = createResolvedDirectoryEntriesLister({
kind: "user",
resolveAccount: resolveTelegramDirectoryConfig,
resolveSources: (config) => [mapAllowFromEntries(config.allowFrom), Object.keys(config.dms ?? {})],
normalizeId: (entry) => {
const trimmed = entry.replace(/^(telegram|tg):/i, "").trim();
if (!trimmed) return null;
return /^-?\d+$/.test(trimmed) || trimmed.startsWith("@") ? trimmed : `@${trimmed}`;
}
});
const listTelegramDirectoryGroupsFromConfig = createResolvedDirectoryEntriesLister({
kind: "group",
resolveAccount: resolveTelegramDirectoryConfig,
resolveSources: (config) => [Object.keys(config.groups ?? {})],
normalizeId: (entry) => entry.trim() || null
});
//#endregion
export { listTelegramDirectoryPeersFromConfig as n, listTelegramDirectoryGroupsFromConfig as t };