📝 新增gitea数据

This commit is contained in:
远野千束 2024-09-02 21:26:11 +08:00
parent 7d91079500
commit da905d21bd
3 changed files with 62 additions and 33 deletions

View File

@ -13,55 +13,55 @@ const dataSections = {
total: { total: {
name: 'total', name: 'total',
color: '#00a6ff', color: '#00a6ff',
value: ref(2005), value: ref(-1),
link: StarMapUrl link: StarMapUrl
}, },
online: { online: {
name: 'online', name: 'online',
color: '#7eff7e', color: '#7eff7e',
value: ref(1145), value: ref(-1),
link: StarMapUrl link: StarMapUrl
}, },
stars: { stars: {
name: 'stars', name: 'stars',
color: '#ffcc00', color: '#ffcc00',
value: ref(1234), value: ref(-1),
link: `${RepoUrl}/stargazers` link: `${RepoUrl}/stargazers`
}, },
forks: { forks: {
name: 'forks', name: 'forks',
color: '#ff6600', color: '#ff6600',
value: ref(9420), value: ref(-1),
link: `${RepoUrl}/forks` link: `${RepoUrl}/forks`
}, },
issues: { issues: {
name: 'issues', name: 'issues',
color: '#ff0000', color: '#ff0000',
value: ref(1145), value: ref(-1),
link: `${RepoUrl}/issues` link: `${RepoUrl}/issues`
}, },
prs: { prs: {
name: 'prs', name: 'prs',
color: '#f15df1', color: '#f15df1',
value: ref(6543), value: ref(-1),
link: `${RepoUrl}/pulls` link: `${RepoUrl}/pulls`
}, },
plugins: { plugins: {
name: 'plugins', name: 'plugins',
color: '#a766ff', color: '#a766ff',
value: ref(1763), value: ref(-1),
link: './store/plugin' link: './store/plugin'
}, },
resources: { resources: {
name: 'resources', name: 'resources',
color: '#5a54fa', color: '#5a54fa',
value: ref(6789), value: ref(-1),
link: './store/resource' link: './store/resource'
}, },
visitors: { visitors: {
name: 'visitors', name: 'visitors',
color: '#00a6ff', color: '#00a6ff',
value: ref(1234), value: ref(-1),
link: RepoUrl link: RepoUrl
}, },
} }

View File

@ -29,8 +29,8 @@ const i18nData = {
offline: '离线', offline: '离线',
total: '实例', total: '实例',
fetching: '获取中', fetching: '获取中',
stars: '星', stars: '星',
forks: '', forks: '叉',
issues: '开启议题', issues: '开启议题',
prs: '合并请求', prs: '合并请求',
visitors: '访客', visitors: '访客',

View File

@ -2,6 +2,7 @@
export const OWNER = "LiteyukiStudio" export const OWNER = "LiteyukiStudio"
export const REPO = "LiteyukiBot" export const REPO = "LiteyukiBot"
const githubAPIUrl = "https://api.github.com" const githubAPIUrl = "https://api.github.com"
const giteaAPIUrl = "https://git.liteyuki.icu/api/v1"
const onlineFetchUrl = "https://api.liteyuki.icu/online"; const onlineFetchUrl = "https://api.liteyuki.icu/online";
const totalFetchUrl = "https://api.liteyuki.icu/count"; const totalFetchUrl = "https://api.liteyuki.icu/count";
const visitRecordUrl = "https://api.liteyuki.icu/visit"; const visitRecordUrl = "https://api.liteyuki.icu/visit";
@ -32,27 +33,33 @@ interface StatsApi {
export type {GithubStats}; export type {GithubStats};
// 实现接口 async function getGiteaStats() {
export const statsApi: StatsApi = {
getTotal: async () => {
try { try {
const res = await fetch(totalFetchUrl); const url = `${giteaAPIUrl}/repos/${OWNER}/${REPO}`;
console.log(url);
const res = await fetch(url);
const data = await res.json(); const data = await res.json();
return data.register; return {
stars: data.stars_count,
forks: data.forks_count,
watchers: data.watchers_count,
issues: 0,
prs: 0,
size: data.size,
};
} catch (e) { } catch (e) {
return -1; return {
stars: -1,
forks: -1,
watchers: -1,
issues: -1,
prs: -1,
size: -1,
};
} }
},
getOnline: async () => {
try {
const res = await fetch(onlineFetchUrl);
const data = await res.json();
return data.online;
} catch (e) {
return -1;
} }
},
getGithubStats: async () => { async function getGithubStats() {
try { try {
const res = await fetch(`${githubAPIUrl}/repos/${OWNER}/${REPO}`); const res = await fetch(`${githubAPIUrl}/repos/${OWNER}/${REPO}`);
const data = await res.json(); const data = await res.json();
@ -74,7 +81,29 @@ export const statsApi: StatsApi = {
size: -1, size: -1,
}; };
} }
}
// 实现接口
export const statsApi: StatsApi = {
getTotal: async () => {
try {
const res = await fetch(totalFetchUrl);
const data = await res.json();
return data.register;
} catch (e) {
return -1;
}
}, },
getOnline: async () => {
try {
const res = await fetch(onlineFetchUrl);
const data = await res.json();
return data.online;
} catch (e) {
return -1;
}
},
getGithubStats: getGiteaStats,
getPluginNum: async () => { getPluginNum: async () => {
try { try {
const res = await fetch('/plugins.json'); const res = await fetch('/plugins.json');