feat: implement TASK-WP1-02 login sessions

This commit is contained in:
suyx
2026-07-28 16:28:30 +08:00
parent f467e7c09f
commit ee70001d44
20 changed files with 2480 additions and 28 deletions
+16 -6
View File
@@ -1,8 +1,8 @@
import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import { ToolchainProbe } from "./toolchain-probe.js";
import { registerPublicAssetServiceWorker } from "./public-asset-cache.js";
import { UserAuthPage } from "./user-auth.js";
const root = document.getElementById("root");
@@ -13,8 +13,18 @@ if (!root) {
// Cache failure leaves public assets network-backed and must not create alternate persistence.
void registerPublicAssetServiceWorker().catch(() => undefined);
createRoot(root).render(
<StrictMode>
<ToolchainProbe />
</StrictMode>,
);
const appRoot = createRoot(root);
let authRevision = 0;
function renderAuthenticationEntry() {
authRevision += 1;
appRoot.render(
<StrictMode>
<UserAuthPage key={authRevision} />
</StrictMode>,
);
}
// Any authenticated surface can dispatch this after a revoked/invalid session response.
window.addEventListener("dada:session-invalid", renderAuthenticationEntry);
renderAuthenticationEntry();