- 阅读页新增阅读/历史模式切换 - 历史列表展示修订号、作者、摘要、时间与小修改标记 - 支持查看任意历史修订的渲染内容 - 与当前版本的逐行差异对比,新增/删除行高亮 - 支持撤销到指定修订,带二次确认 - 修复导航栈与修订列表变量重名 - 补充维基历史相关 API:历史列表、修订详情、差异对比、撤销 - 中英文各补 13 个文案
This commit is contained in:
1 parent
aaf394f790
commit
a325298eb6
4 files changed
+352
-9
No files matched your search
@@ -2539,3 +2539,69 @@ export function skinSiteWikiAttachment(
|
||||
export function skinSiteWikiAttachmentUrl(id: number): string {
|
||||
return `${SKIN_SITE_ORIGIN}${REQUEST_TYPE_PATH.starlight}/wiki/attachment/${id}/content`
|
||||
}
|
||||
|
||||
export interface SkinSiteWikiRevisionInfo {
|
||||
id: number
|
||||
authorName: string
|
||||
summary: string
|
||||
minor: boolean
|
||||
createdAt: number
|
||||
sourceWiki?: string | null
|
||||
sourceRevisionId?: number | null
|
||||
}
|
||||
|
||||
export interface SkinSiteWikiRevisionPage {
|
||||
items: SkinSiteWikiRevisionInfo[]
|
||||
nextCursor?: number | null
|
||||
}
|
||||
|
||||
export interface SkinSiteWikiRevisionDetail {
|
||||
revision: SkinSiteWikiRevisionInfo
|
||||
source: string
|
||||
nodes: SkinSiteWikiNode[]
|
||||
}
|
||||
|
||||
export interface SkinSiteWikiDiffLine {
|
||||
type: 'UNCHANGED' | 'REMOVED' | 'ADDED'
|
||||
oldLine?: number | null
|
||||
newLine?: number | null
|
||||
text: string
|
||||
}
|
||||
|
||||
export function skinSiteWikiHistory(
|
||||
title: string,
|
||||
before?: number,
|
||||
): Promise<SkinSiteResponse<SkinSiteWikiRevisionPage>> {
|
||||
const query = new URLSearchParams({ title })
|
||||
if (before) query.set('before', String(before))
|
||||
return skinSiteRequest<SkinSiteWikiRevisionPage>('wiki/history?' + query.toString())
|
||||
}
|
||||
|
||||
export function skinSiteWikiRevision(
|
||||
title: string,
|
||||
revisionId: number,
|
||||
): Promise<SkinSiteResponse<SkinSiteWikiRevisionDetail>> {
|
||||
return skinSiteRequest<SkinSiteWikiRevisionDetail>(
|
||||
'wiki/revision/' + revisionId + '?title=' + encodeURIComponent(title),
|
||||
)
|
||||
}
|
||||
|
||||
export function skinSiteWikiDiff(
|
||||
title: string,
|
||||
older: number,
|
||||
newer: number,
|
||||
): Promise<SkinSiteResponse<SkinSiteWikiDiffLine[]>> {
|
||||
const query = new URLSearchParams({ title, older: String(older), newer: String(newer) })
|
||||
return skinSiteRequest<SkinSiteWikiDiffLine[]>('wiki/diff?' + query.toString())
|
||||
}
|
||||
|
||||
export function skinSiteWikiRevert(data: {
|
||||
title: string
|
||||
revisionId: number
|
||||
baseRevisionId: number
|
||||
}): Promise<SkinSiteResponse<SkinSiteWikiPageDetail>> {
|
||||
return skinSiteRequest<SkinSiteWikiPageDetail>('wiki/revert', {
|
||||
method: 'POST',
|
||||
body: data,
|
||||
})
|
||||
}
|
||||
Reference in new issue
Block a user