export default function ThreadEntityCreatedItem()

in src/views/inbox-threads/inbox-threads__item-issue-created.tsx [29:98]


export default function ThreadEntityCreatedItem({
  group,
  target,
  onNavigate,
}: Props) {
  const actualActivity = group.issue;
  const entity: Entity = actualActivity.issue || actualActivity.article;
  const assigneeFields: CustomField[] = (entity.customFields || []).map(
    (it: CustomField) => {
      return {
        ...it,
        projectCustomField: {
          ...it.projectCustomField,
          field: {
            id: it.id,
          },
        },
      };
    },
  );
  const added = assigneeFields
    .reduce((acc: CustomField[], it: CustomField) => acc.concat(it.value), [])
    .filter(Boolean);
  const activity = {
    category: {
      id: activityCategory.CUSTOM_FIELD,
    },
    added: added.length > 0 ? added : null,
    removed: [],
    field: {
      presentation: assigneeFields[0]?.name,
      customField: {
        id: assigneeFields[0]?.id,
        fieldType: {
          isMultiValue: assigneeFields.length > 1,
        },
      },
    },
  };
  const description: string = entity.description || entity.content;
  return (
    <ThreadItem
      author={actualActivity.author}
      avatar={<IconHistory size={20} color={styles.icon.color} />}
      change={
        <>
          {Boolean(description) && (
            <MarkdownViewChunks
              textStyle={markdownText}
              attachments={entity.attachments}
              chunkSize={3}
              maxChunks={1}
            >
              {description.trim()}
            </MarkdownViewChunks>
          )}
          <View style={styles.threadRelatedChange}>
            <StreamHistoryChange
              activity={activity}
              customFields={assigneeFields}
            />
          </View>
        </>
      }
      onNavigate={() => onNavigate(target)}
      reason={i18n('created')}
      timestamp={actualActivity.timestamp}
    />
  );
}