@shopgate/engage
Version:
Shopgate's ENGAGE library.
29 lines (28 loc) • 618 B
JavaScript
import { FILTER_TYPE_RANGE } from '@shopgate/engage/filter/constants';
/**
* @param {Object} filters The available filters.
* @param {Object} activeFilters The selected filters.
* @returns {Object}
*/
export default function buildInitialFilters(filters, activeFilters) {
const defaults = {};
if (!filters) {
return defaults;
}
filters.forEach(filter => {
const {
id,
maximum,
minimum,
type
} = filter;
defaults[id] = {
type,
value: type === FILTER_TYPE_RANGE ? [minimum, maximum] : []
};
});
return {
...defaults,
...activeFilters
};
}