🐛 fix(vscode): 选工单不再重新加载整个看板,直接列看板上摆着的「审查」列工单,文件数一项项补上,每一步记进日志
This commit is contained in:
1 parent
4ec38cff12
commit
b3a829e658
10 files changed
+310
-112
No files matched your search
@@ -34,6 +34,23 @@ export function parseKanbanSnapshot(raw: unknown): KanbanSnapshot | null {
|
||||
}
|
||||
}
|
||||
|
||||
/** 看板上现在摆着的工单,和它从哪来:面板这次会话里加载好的(loaded)、上次存下的快照(saved)。 */
|
||||
export interface BoardIssues {
|
||||
issues: Issue[]
|
||||
from: 'loaded' | 'saved'
|
||||
}
|
||||
|
||||
/**
|
||||
* 看板上现在摆着的工单:面板这次会话里加载好了就用它最近一次加载的,否则用上次存下的快照
|
||||
* (重开窗口时看板先画的也是它);都没有时 undefined,看板还没加载过。
|
||||
*/
|
||||
export function boardIssues(loaded: Issue[] | undefined, persisted: unknown): BoardIssues | undefined {
|
||||
if (loaded)
|
||||
return { issues: loaded, from: 'loaded' }
|
||||
const snapshot = parseKanbanSnapshot(persisted)
|
||||
return snapshot ? { issues: snapshot.issues, from: 'saved' } : undefined
|
||||
}
|
||||
|
||||
/** 写入 HTML 的 JSON:小于号换成 \\u003c,避免 script 标签被提前关掉。 */
|
||||
export function snapshotToScriptJson(snapshot: KanbanSnapshot): string {
|
||||
return JSON.stringify(snapshot).replace(/</g, '\\u003c')
|
||||
|
||||
Reference in new issue
Block a user