import { isEmpty, pathOr } from 'ramda'; import formatDateString from './formatDateString'; const getQueryParamsForPaginatedEndpoint = (lazyState, statuses) => { let sortBy = { columnName: 'applicationId', sortDesc: true }; if (lazyState.sortField) { sortBy = { columnName: lazyState.sortField, sortDesc: lazyState.sortOrder === -1 } } return { globalFilters: { page: lazyState.page ? lazyState.page + 1 : 1, limit: lazyState.rows, sortBy }, status: statuses, filters: Object.keys(lazyState.filters).reduce((acc, cur) => { const value = pathOr('', ['filters', cur, 'value'], lazyState); if (!isEmpty(value)) { acc[cur] = typeof value.getMonth === 'function' ? formatDateString(value) : lazyState.filters[cur]; } return acc; }, {}), } } export default getQueryParamsForPaginatedEndpoint;