import { createSelector } from 'reselect'; import { IContact } from '../../store/contacts/types'; const getSearchResults = (state: any) => state.search.contactsSearchResult; export const getFilteredRosterContacts = createSelector( [getSearchResults], (searchResult) => { if (searchResult) { return searchResult.filter( (contact: IContact) => contact.isRoster ); } } ); export const getFilteredLocalPhoneContacts = createSelector( [getSearchResults], (searchResult) => { if (searchResult) { return searchResult.filter( (contact: IContact) => contact.isLocalPhoneContact ); } } ); export const getFilteredEnterpriseContacts = createSelector( [getSearchResults], (searchResult) => { if (searchResult) { return searchResult.filter( (contact: IContact) => contact.isPhoneBook ); } } ); export const getFilteredDirectoryColleagueContacts = createSelector( [getSearchResults], (searchResult) => { if (searchResult) { return searchResult.filter( (contact: IContact) => contact.isCompanyDirectoryContact && !contact.isRoster ); } } ); export const getFilteredDirectoryContactsOfOtherCompanies = createSelector( [getSearchResults], (searchResult) => { if (searchResult) { return searchResult.filter( (contact: IContact) => !contact.isCompanyDirectoryContact && !contact.isPhoneBook && !contact.isLocalPhoneContact && !contact.isRoster ); } } );