import { createSelector } from 'reselect' import { IComposeViewState, IComposeViewSelectorProps } from './interfaces' import * as _ from 'lodash' const root = (state: any): IComposeViewState => state.composeViews export const statusForComposeView = (state: any, props: IComposeViewSelectorProps) => _.get(root(state), [props.composeViewUUID, 'sendStatus'], false) export const recipientLengthForComposeView = (state: any, props: IComposeViewSelectorProps) => _.get(root(state), [props.composeViewUUID, 'recipientLength'], 0) export const calendarInjectionLoadingForComposeView = (state: any, props: IComposeViewSelectorProps) => _.get(root(state), [props.composeViewUUID, 'calendarInjectionLoading'], false) export const shouldTrackEmail = createSelector( [statusForComposeView, recipientLengthForComposeView], (statusForComposeView, recipientLengthForComposeView) => recipientLengthForComposeView <= 1 && statusForComposeView, )