2020-07-06 16:11:44 +08:00
|
|
|
import React, { Component } from 'react';
|
|
|
|
|
import { Link } from 'react-router-dom';
|
2020-03-16 14:12:11 +08:00
|
|
|
import './activity.css';
|
|
|
|
|
import { getImageUrl } from 'educoder';
|
2024-11-16 10:53:04 +08:00
|
|
|
import { truncateCommitId } from "../common/util";
|
2020-03-16 14:12:11 +08:00
|
|
|
|
|
|
|
|
|
2020-07-06 16:11:44 +08:00
|
|
|
class ActivityItem extends Component {
|
|
|
|
|
render() {
|
2020-08-12 18:13:18 +08:00
|
|
|
const { projectsId ,owner } = this.props.match.params;
|
2020-03-16 14:12:11 +08:00
|
|
|
const { item } = this.props;
|
2020-07-06 16:11:44 +08:00
|
|
|
return (
|
|
|
|
|
<div className="activity_item">
|
|
|
|
|
<div className="flex1">
|
2020-03-16 14:12:11 +08:00
|
|
|
{/* 如果是版本发布 */}
|
2020-07-06 16:11:44 +08:00
|
|
|
{item.trend_type === "VersionRelease" ?
|
|
|
|
|
<p className="itemLine">
|
2021-12-01 18:04:49 +08:00
|
|
|
<Link to={`/${owner}/${projectsId}/releases`} className="font-16">{item.name}</Link>
|
2020-07-06 16:11:44 +08:00
|
|
|
<span className="activity_type">{item.trend_type}</span>
|
2020-03-16 14:12:11 +08:00
|
|
|
</p >
|
|
|
|
|
:
|
2020-04-09 18:13:26 +08:00
|
|
|
// 如果是任务
|
2020-07-06 16:11:44 +08:00
|
|
|
item.trend_type === "Issue" ?
|
|
|
|
|
<p className="itemLine">
|
2021-12-01 18:04:49 +08:00
|
|
|
<Link to={`/${owner}/${projectsId}/issues/${item.trend_id}`} className="font-16">{item.name}</Link>
|
2020-07-06 16:11:44 +08:00
|
|
|
<span className="activity_type">{item.trend_type}</span>
|
|
|
|
|
</p >
|
|
|
|
|
:
|
2024-11-16 10:53:04 +08:00
|
|
|
// 如果是commit--CommitLog
|
|
|
|
|
item.trend_type === "CommitLog" ?
|
|
|
|
|
<p className="itemLine">
|
|
|
|
|
<Link to={`/${owner}/${projectsId}/commits/${item.commit_log && truncateCommitId(item.commit_log.commit_id)}`} className="font-16">{item.name}</Link>
|
|
|
|
|
<span className="activity_type">{item.trend_type}</span>
|
|
|
|
|
</p >
|
|
|
|
|
:
|
2020-07-06 16:11:44 +08:00
|
|
|
// 如果是合并请求
|
|
|
|
|
<p className="itemLine">
|
2024-11-16 10:53:04 +08:00
|
|
|
<Link to={`/${item.project && item.project.owner&& item.project.owner.login}/${item.project && item.project.identifier}/pulls/${item.trend_id}`} className="font-16">{item.name}</Link>
|
2020-07-06 16:11:44 +08:00
|
|
|
<span className="activity_type">{item.trend_type}</span>
|
|
|
|
|
</p >
|
2020-03-16 14:12:11 +08:00
|
|
|
}
|
2020-08-18 16:56:52 +08:00
|
|
|
<p className="itemLine mt10">
|
2024-10-15 10:49:45 +08:00
|
|
|
{
|
|
|
|
|
item && item.user_login ?
|
|
|
|
|
<Link to={`/${item.user_login}`} className="show-user-link">
|
|
|
|
|
<img alt="" src={getImageUrl(`/${item.user_avatar}`)} className="createImage" />
|
|
|
|
|
<span className="mr20">{item.user_name}</span>
|
|
|
|
|
</Link>
|
|
|
|
|
:
|
|
|
|
|
<span className="show-user-link">
|
|
|
|
|
<img alt="" src={getImageUrl(`/${item.user_avatar}`)} className="createImage" />
|
|
|
|
|
<span className="mr20 color-grey-6">{item.user_name}</span>
|
|
|
|
|
</span>
|
|
|
|
|
}
|
2020-07-06 16:11:44 +08:00
|
|
|
{item.created_at && <span className="color-grey-9">创建于<span className="ml2 color-grey-6">{item.created_at}</span></span>}
|
|
|
|
|
</p >
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2020-03-16 14:12:11 +08:00
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
export default ActivityItem;
|