UNPKG

umbot

Version:

Мультиплатформенный фреймворк для создания голосовых навыков и чат-ботов с единой бизнес-логикой. Встроенная поддержка ВКонтакте, Telegram, Viber, MAX, Яндекс Алисы, Маруси и Сбера SmartApp. Архитектура на адаптерах позволяет подключать любые другие платф

35 lines (34 loc) 1.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getQueryData = getQueryData; const DATA_REG = /`([^`]+)`\s*=\s*(?:"([^"]*)"|(\S+))/gim; /** * Парсит строку запроса в объект IQueryData * Поддерживает формат `field=value` с возможностью экранирования * * @example * ```ts * const query = QueryData.getQueryData('`id`=1 `name`="John Doe"'); * // Результат: { id: 1, name: 'John Doe' } * ``` * * @param str - Строка запроса для парсинга * @returns Объект с параметрами запроса или null */ function getQueryData(str) { if (str) { const matchAll = str.matchAll(DATA_REG); const regData = {}; let data = matchAll.next(); while (!data.done) { let val = data.value[2] ?? data.value[3]; if (!isNaN(+val)) { val = +val; } regData[data.value[1]] = val; data = matchAll.next(); } return regData; } return null; }