UNPKG

@empathyco/x-components

Version:
25 lines (22 loc) 828 B
import { isFacetFilter } from '@empathyco/x-types'; import { map } from '@empathyco/x-utils'; import { groupItemsBy } from '../../../../utils/array.js'; import { UNKNOWN_FACET_KEY } from '../constants.js'; /** * Default implementation for the {@link FacetsGetters.facets} getter. * * @param state - Current {@link https://vuex.vuejs.org/guide/state.html | state} of the facets' * module. * @returns An array containing the facets with the filters. * * @public */ const facets = state => { const filtersByFacet = groupItemsBy(Object.values(state.filters), filter => isFacetFilter(filter) ? filter.facetId : UNKNOWN_FACET_KEY); return map(state.facets, (_id, facet) => ({ ...facet, filters: filtersByFacet[facet.id] ?? [], })); }; export { facets }; //# sourceMappingURL=facets.getter.js.map