Commit 0c445a85 authored by Marek Veselý's avatar Marek Veselý
Browse files

Merge branch '276-instructor-add-more-info-about-e-mail-to-the-overview' into 'main'

feat: Add content for emails in To-do list

Closes inject-issues#276

See merge request inject/frontend!803
parents c7ce6df0 9eb7db57
Loading
Loading
Loading
Loading
+46 −2
Original line number Diff line number Diff line
@@ -21,11 +21,55 @@ const useToggleDone = (actionLog: ActionLogSimplified) => {
  }
}

const getContentInfo = (details: ActionLogSimplified['details']): string => {
  switch (details.__typename) {
    case 'TConfirmationDetailsType':
    case 'IConfirmationDetailsType':
      return ''
    case 'TInjectDetailsType':
    case 'IInjectDetailsType':
      return ''
    case 'TCustomInjectDetailsType':
    case 'ICustomInjectDetailsType':
      return ''
    case 'TEmailType':
    case 'IEmailType': {
      const recipients = details.thread.participants
        .filter(participant => participant.address !== details.sender.address)
        .map(participant => participant.address)
      return `${recipients.length > 1 ? 'Recipients:' : 'Recipient:'} ${recipients.join(', ')}`
    }
    case 'TToolDetailsType':
    case 'IToolDetailsType':
      return ''
    case 'TQuestionnaireReviewDetailsType':
    case 'IQuestionnaireReviewDetailsType':
      return ''
    case 'TQuestionnaireSubmissionType':
    case 'IQuestionnaireSubmissionType':
      return ''
    case 'TTeamQuestionnaireStateType':
    case 'ITeamQuestionnaireStateType':
      return ''
    case 'TFileDownloadDetailsType':
    case 'IFileDownloadDetailsType':
      return ''
    case 'TMilestoneModificationDetailsType':
    case 'IMilestoneModificationDetailsType':
      return ''
  }
}

const LogItemContent: FC<{
  actionLog: ActionLogSimplified
}> = ({ actionLog }) => (
  // TODO: 3.34.0 follow-up (add more info)
  <p>{getTitle(actionLog.details)}</p>
  <p
    className={css`
      white-space: pre-line;
    `}
  >
    {getContentInfo(actionLog.details)}
  </p>
)

const LogItemActions: React.FC<{