Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/main/core/src/lib/uri/ |
Upload File : |
import Type from '../type'; import { renderParam } from './render-param'; export default function buildQueryString(params = {}): string { const queryString = Object.keys(params) .reduce((acc, key) => { if (Type.isArray(params[key])) { if (Type.isArrayFilled(params[key])) { params[key].forEach((paramValue) => { acc.push(renderParam(`${key}[]`, paramValue)); }); } else { acc.push(renderParam(`${key}[]`, null)); } } if (Type.isPlainObject(params[key])) { Object.keys(params[key]).forEach((paramIndex) => { acc.push(renderParam(`${key}[${paramIndex}]`, params[key][paramIndex])); }); } if (!Type.isObject(params[key]) && !Type.isArray(params[key])) { acc.push(renderParam(key, params[key])); } return acc; }, []).join('&'); if (queryString.length > 0) { return `?${queryString}`; } return queryString; }