UNPKG

shiqiyue-linkedin-private-api

Version:

![Build](https://github.com/eilonmore/linkedin-private-api/workflows/Build/badge.svg?branch=master)

59 lines 2.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.querySerializer = exports.paramsSerializer2 = exports.paramsSerializer = void 0; const lodash_1 = require("lodash"); const querystring_1 = require("querystring"); const encodeFilter = (value, key) => encodeURIComponent(`${key}->${lodash_1.castArray(value).join('|')}`); const encodeFilter2 = (value, key) => encodeURIComponent(`${key}:${lodash_1.castArray(value).join('|')}`); const encodeFilter3 = (value, key) => (`${key}:${lodash_1.castArray(value).join(',')}`); const paramsSerializer = (params) => { const encodedParams = lodash_1.mapValues(params, value => { if (!lodash_1.isArray(value) && !lodash_1.isPlainObject(value)) { return value.toString(); } if (lodash_1.isArray(value)) { return `List(${value.join(',')})`; } const encodedList = lodash_1.reduce(value, (res, filterVal, filterKey) => `${res}${res ? ',' : ''}${encodeFilter(filterVal, filterKey)}`, ''); return `List(${encodedList})`; }); return querystring_1.stringify(encodedParams, undefined, undefined, { encodeURIComponent: uri => uri, }); }; exports.paramsSerializer = paramsSerializer; const paramsSerializer2 = (params) => { const encodedParams = lodash_1.mapValues(params, value => { if (!lodash_1.isArray(value) && !lodash_1.isPlainObject(value)) { return value.toString(); } if (lodash_1.isArray(value)) { return `List(${value.join(',')})`; } const encodedList = lodash_1.reduce(value, (res, filterVal, filterKey) => `${res}${res ? ',' : ''}${encodeFilter2(filterVal, filterKey)}`, ''); return `(${encodedList})`; }); return querystring_1.stringify(encodedParams, undefined, undefined, { encodeURIComponent: uri => uri, }); }; exports.paramsSerializer2 = paramsSerializer2; const querySerializer = (params) => { const encodedParams = lodash_1.mapValues(params, value => { if (!lodash_1.isArray(value) && !lodash_1.isPlainObject(value)) { return value.toString(); } if (lodash_1.isArray(value)) { return `List(${value.join(',')})`; } const encodedList = exports.querySerializer(value); return `${encodedList}`; }); const rs = []; for (const encodedParamsKey in encodedParams) { rs.push(`${encodedParamsKey}:${lodash_1.castArray(encodedParams[encodedParamsKey]).join(',')}`); } return `(${rs.join(',')})`; }; exports.querySerializer = querySerializer; //# sourceMappingURL=paramsSerializer.js.map