Initial commit
This commit is contained in:
22
.vitepress/theme/data/changelogs.data.ts
Normal file
22
.vitepress/theme/data/changelogs.data.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { defineLoader } from "vitepress"
|
||||
import { Octokit } from "@octokit/rest"
|
||||
import type { GetResponseDataTypeFromEndpointMethod } from "@octokit/types"
|
||||
|
||||
const octokit = new Octokit()
|
||||
|
||||
type GitHubReleaseList = GetResponseDataTypeFromEndpointMethod<typeof octokit.repos.listReleases>
|
||||
|
||||
declare const data: GitHubReleaseList
|
||||
export { data }
|
||||
|
||||
export default defineLoader({
|
||||
async load(): Promise<GitHubReleaseList> {
|
||||
const releases = await octokit.paginate(octokit.repos.listReleases, {
|
||||
owner: "KotatsuApp",
|
||||
repo: "Kotatsu",
|
||||
per_page: 100,
|
||||
})
|
||||
|
||||
return releases
|
||||
},
|
||||
})
|
||||
25
.vitepress/theme/data/release.data.ts
Normal file
25
.vitepress/theme/data/release.data.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
import { defineLoader } from "vitepress"
|
||||
import { Octokit } from "@octokit/rest"
|
||||
import type { GetResponseDataTypeFromEndpointMethod } from "@octokit/types"
|
||||
|
||||
const octokit = new Octokit()
|
||||
|
||||
type GitHubRelease = GetResponseDataTypeFromEndpointMethod<typeof octokit.repos.getLatestRelease>
|
||||
|
||||
export interface AppRelease {
|
||||
stable: GitHubRelease
|
||||
}
|
||||
|
||||
declare const data: AppRelease
|
||||
export { data }
|
||||
|
||||
export default defineLoader({
|
||||
async load(): Promise<AppRelease> {
|
||||
const { data: stable } = await octokit.repos.getLatestRelease({
|
||||
owner: "KotatsuApp",
|
||||
repo: "Kotatsu",
|
||||
})
|
||||
|
||||
return { stable }
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user