UNPKG

4nm

Version:

TypeScript reimplementation of Telegram's official library for communicating with Telegram Web Apps.

27 lines (26 loc) 947 B
import { ThemeParams } from '../ThemeParams'; import { createSearchParamsSchemaParser, parseSearchParamAsString, } from '../parsing'; import { InitData } from '../InitData'; /** * Parses value as web app init data. * @param value - parameter value. */ const parseInitData = value => { return InitData.fromRaw(parseSearchParamAsString(value)); }; /** * Parses value as web app theme params. * @param value - parameter value. */ const parseThemeParams = value => { return ThemeParams.fromJSONString(parseSearchParamAsString(value)); }; /** * Extracts WebApp meta information from specified search params. */ export const extractWebAppMeta = createSearchParamsSchemaParser({ initData: ['tgWebAppData', parseInitData], platform: ['tgWebAppPlatform', parseSearchParamAsString], version: ['tgWebAppVersion', parseSearchParamAsString], themeParams: ['tgWebAppThemeParams', parseThemeParams], });