mirror of
https://github.com/strapi/strapi.git
synced 2025-11-05 12:24:35 +00:00
34 lines
955 B
JavaScript
34 lines
955 B
JavaScript
import { isEmpty, toString } from 'lodash';
|
|
|
|
const generateStringParamsFromQuery = query => {
|
|
let params = '';
|
|
|
|
Object.keys(query)
|
|
.filter(key => !isEmpty(toString(query[key])))
|
|
.forEach(key => {
|
|
const value = query[key];
|
|
|
|
if (key === 'filters') {
|
|
value.forEach(item => {
|
|
if (item.name.includes('mime') && item.value === 'file') {
|
|
const revertedKey = item.filter.includes('_ncontains')
|
|
? 'mime_contains'
|
|
: 'mime_ncontains';
|
|
const filterValue = `${revertedKey}=image&${revertedKey}=video`;
|
|
|
|
params += `&${filterValue}`;
|
|
} else {
|
|
const name = item.filter === '=' ? item.name : `${item.name}${item.filter}`;
|
|
params += `&${name}=${item.value}`;
|
|
}
|
|
});
|
|
} else {
|
|
params += `&${key}=${value}`;
|
|
}
|
|
});
|
|
|
|
return params.substring(1);
|
|
};
|
|
|
|
export default generateStringParamsFromQuery;
|