/** * External dependencies */ import type { ItemSummary } from '@nelio-content/types'; /** * Internal dependencies */ import type { State } from '../../config'; export function filterOutInvalidAutoMessages( state: State, items: ReadonlyArray< ItemSummary > ): ReadonlyArray< ItemSummary > { return items.filter( ( sum ) => { if ( 'social' !== sum.type ) { return true; } const item = state.entities.messages.byId[ sum.id ]; if ( ! item ) { return false; } const profile = state.social.profiles.byId[ item.profileId ]; if ( ! profile ) { return false; } if ( 'publication' === item.auto && 0 >= profile.publicationFrequency ) { return false; } if ( [ 'timeline', 'reshare' ].includes( item.auto ?? '' ) && 0 >= profile.reshareFrequency ) { return false; } return true; } ); }