|
|
@@ -163,6 +163,13 @@ const setExportDocumentMode = (enabled: boolean) => {
|
|
|
document.documentElement.classList.toggle(EXPORT_DOCUMENT_CLASS, enabled)
|
|
|
document.documentElement.style.removeProperty(EXPORT_HEIGHT_PROPERTY)
|
|
|
delete document.documentElement.dataset.taskDetailExportReady
|
|
|
+ delete document.documentElement.dataset.taskDetailExportStatus
|
|
|
+ delete document.documentElement.dataset.taskDetailExportToken
|
|
|
+
|
|
|
+ if (enabled) {
|
|
|
+ document.documentElement.dataset.taskDetailExportStatus = 'loading'
|
|
|
+ document.documentElement.dataset.taskDetailExportToken = exportToken.value
|
|
|
+ }
|
|
|
|
|
|
if (enabled) window.scrollTo(0, 0)
|
|
|
}
|
|
|
@@ -187,7 +194,6 @@ const freezeExportDocumentHeight = async () => {
|
|
|
)
|
|
|
|
|
|
document.documentElement.style.setProperty(EXPORT_HEIGHT_PROPERTY, `${contentHeight}px`)
|
|
|
- document.documentElement.dataset.taskDetailExportReady = 'true'
|
|
|
await waitForPaint()
|
|
|
}
|
|
|
|
|
|
@@ -274,6 +280,10 @@ const notifyExportReadyOnce = (ok: boolean, timeout: boolean) => {
|
|
|
|
|
|
exportReadyNotified = true
|
|
|
|
|
|
+ // DOM 状态与 Redis 通知使用相同的成功条件;高度就绪不代表图片/数据加载成功。
|
|
|
+ document.documentElement.dataset.taskDetailExportReady = String(ok && !timeout)
|
|
|
+ document.documentElement.dataset.taskDetailExportStatus = timeout ? 'timeout' : ok ? 'ready' : 'error'
|
|
|
+
|
|
|
const data: UpdateScreenShotStatusParams = {
|
|
|
exportToken: exportToken.value,
|
|
|
ok: String(ok),
|