chore: 优化工作台最新动态

This commit is contained in:
2024-10-23 22:51:26 +08:00
parent 35d704fbc5
commit fd1dfcf3f4

View File

@@ -1,71 +1,105 @@
<template> <template>
<a-card class="general-card" title="最新动态" style="margin-bottom: 14px"> <a-card class="general-card" title="最新动态" style="margin-bottom: 14px">
<template #extra> <template #extra>
<a-link href="https://gitee.com/organizations/continew/events" target="_blank" rel="noopener">更多</a-link> <a-dropdown>
<a-link>更多</a-link>
<template #content>
<a-doption>
<a-link href="https://gitee.com/organizations/continew/events" target="_blank" rel="noopener">Gitee</a-link>
</a-doption>
<a-doption>
<a-link href="https://gitcode.com/org/continew/discussion" target="_blank" rel="noopener">GitCode</a-link>
</a-doption>
<a-doption>
<a-link href="https://github.com/orgs/continew-org/discussions" target="_blank" rel="noopener">GitHub</a-link>
</a-doption>
</template>
</a-dropdown>
</template> </template>
<a-empty v-if="dataList.length === 0">暂无动态</a-empty> <a-skeleton v-if="loading" :loading="loading" :animation="true">
<a-comment <a-skeleton-line :rows="10" />
v-for="(item, index) in dataList" </a-skeleton>
v-else <div v-else>
:key="index" <a-empty v-if="dataList.length === 0">暂无动态</a-empty>
:author="item.actor.nickname" <a-comment
align="right" v-for="(item, index) in dataList"
:class="`animated-fade-up-${index}`" v-else
> :key="index"
<template #avatar> :author="item.actor.nickname"
<a :href="item.actor.url" target="_blank" rel="noopener"> :class="`animated-fade-up-${index}`"
<a-avatar :size="30"> >
<img :src="item.actor.avatar" alt="avatar" /> <template #avatar>
</a-avatar> <a-badge>
</a> <template #content>
</template> <GiSvgIcon v-if="item.platform === 'GitHub'" name="github" :size="15" />
<template #datetime><span :title="item.createTime">{{ item.createTimeString }}</span></template> <GiSvgIcon v-else-if="item.platform === 'Gitee'" name="gitee" :size="15" />
<template #content> </template>
<div class="content"> <a :href="item.actor.url" target="_blank" rel="noopener">
<p v-if="item.type === 'PUSH'"> <a-avatar :size="30">
推送到了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> <img :src="item.actor.avatar" alt="avatar" />
{{ `${item.payload.branch} 分支 ${item.payload.commits.length} 个提交` }} </a-avatar>
<a-comment </a>
v-for="(commit, idx) in item.payload.commits" </a-badge>
:key="idx" </template>
class="commit" <template #datetime>
> <span :title="item.createTime">{{ item.createTimeString }}</span>
<template #content> </template>
<a-link :href="`${item.repo.url}${commit.url}`" target="_blank" rel="noopener" style="font-size: 12px">{{ commit.sha.substring(0, 7) }}</a-link> <template #content>
<a :href="`${item.repo.url}${commit.url}`" target="_blank" rel="noopener">{{ commit.message }}</a> <div class="content">
</template> <p v-if="item.type === 'PUSH'">
</a-comment> 推送到了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
</p> {{ `${item.payload.branch} 分支 ${item.payload.commits.length} 个提交` }}
<p v-else-if="item.type === 'ISSUE_OPEN'"> <a-comment
<a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> v-for="(commit, idx) in item.payload.commits"
创建了任务 <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link> :key="idx"
</p> class="commit"
<p v-else-if="item.type === 'ISSUE_CLOSE'"> >
更改了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> <template #content>
的任务 <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link> <a-link :href="commit.url" target="_blank" rel="noopener" style="font-size: 12px" :title="commit.message">{{ commit.sha.substring(0, 7) }}</a-link>
状态为 {{ item.payload.action === 'rejected' ? '已关闭' : '已完成' }} <a :href="commit.url" target="_blank" rel="noopener" :title="commit.message">{{ commit.message }}</a>
</p> </template>
<p v-else-if="item.type === 'ISSUE_COMMENT'"> </a-comment>
评论了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> </p>
的任务 <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link> <p v-else-if="item.type === 'ISSUE_OPEN'">
</p> <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
<p v-else-if="item.type === 'PULL_REQUEST'"> 创建了 Issue <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
<a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> </p>
创建了 Pull Request <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link> <p v-else-if="item.type === 'ISSUE_CLOSE'">
</p> 更改了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
<p v-else-if="item.type === 'CREATE'"> Issue <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
推送了新的 {{ item.payload.refType }} 状态为 {{ item.payload.stateString }}
<a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.ref }}</a-link> </p>
<a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> <p v-else-if="item.type === 'ISSUE_COMMENT'">
</p> 评论了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
<p v-else-if="item.type === 'DELETE'"> Issue <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
删除了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link> </p>
{{ item.payload.ref }} {{ item.payload.refType }} <p v-else-if="item.type === 'PULL_REQUEST_OPEN'">
</p> <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
<p v-else>暂无</p> 创建了 Pull Request <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
</div> </p>
</template> <p v-else-if="item.type === 'PULL_REQUEST_MERGE'">
</a-comment> 接受了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
Pull Request <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
</p>
<p v-else-if="item.type === 'PULL_REQUEST_CLOSE'">
更改了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
Pull Request <a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.title }}</a-link>
状态为 {{ item.payload.stateString }}
</p>
<p v-else-if="item.type === 'CREATE'">
推送了新的 {{ item.payload.refType }}
<a-link :href="item.payload.url" target="_blank" rel="noopener">{{ item.payload.ref }}</a-link>
<a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
</p>
<p v-else-if="item.type === 'DELETE'">
删除了 <a-link :href="item.repo.url" target="_blank" rel="noopener">{{ item.repo.alias }}</a-link>
{{ item.payload.ref }} {{ item.payload.refType }}
</p>
<p v-else>暂无</p>
</div>
</template>
</a-comment>
</div>
</a-card> </a-card>
</template> </template>
@@ -118,7 +152,7 @@ const loading = ref(false)
const getDataList = async () => { const getDataList = async () => {
try { try {
loading.value = true loading.value = true
const { data } = await get('https://api.charles7c.top/git/orgs/continew/events?limit=10') const { data } = await get('https://api.charles7c.top/git/orgs/continew/events')
data.forEach((item) => { data.forEach((item) => {
dataList.value.push({ dataList.value.push({
...item, ...item,