UNPKG

tgsnake

Version:

Telegram MTProto framework for nodejs.

42 lines (41 loc) 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.filter = filter; const index_js_1 = require("../TL/Updates/index.js"); function filter(key, ctx) { const aliases = { cb: 'callbackQuery', msg: 'message', editMsg: 'editedMessage', editPost: 'editedChannelPost', }; if (Array.isArray(key)) { for (const k of key) { if (k === 'any' || (ctx[k] && ctx instanceof index_js_1.Update) || ('className' in ctx && k === ctx.className)) return true; const sk = k.split('.'); if (sk.length) { if (ctx[aliases[sk[0]]] && ctx[aliases[sk[0]]][sk[1]] !== undefined) { return true; } } } } else { if (key === 'any' || (ctx[key] && ctx instanceof index_js_1.Update) || ('className' in ctx && key === ctx.className)) return true; const sk = key.split('.'); if (sk.length) { if (ctx[aliases[sk[0]]] && ctx[aliases[sk[0]]][sk[1]] !== undefined) { return true; } } } return false; }